diff --git a/.gitignore b/.gitignore
index 23af634..2d8c654 100644
--- a/.gitignore
+++ b/.gitignore
@@ -193,3 +193,10 @@ temp/
design-system/
*.tsbuildinfo
settings.local.json
+
+# Graphify knowledge graph (local build artifacts; only the queryable graph
+# and its human-readable report are committed)
+# ==========================================================================
+graphify-out/*
+!graphify-out/graph.json
+!graphify-out/GRAPH_REPORT.md
diff --git a/.prettierignore b/.prettierignore
index c286e29..b2e7706 100644
--- a/.prettierignore
+++ b/.prettierignore
@@ -44,3 +44,8 @@ temp/
# Custom
# ===========
+
+# Graphify knowledge graph (large generated artifact re-included by .gitignore
+# negation; regenerated by `graphify update .`, never hand-formatted)
+# ==========================================================================
+graphify-out/
diff --git a/README.md b/README.md
index ecf8f07..d866421 100644
--- a/README.md
+++ b/README.md
@@ -402,6 +402,10 @@ SolarSim/
+### Documentation Hygiene
+
+`graphify-out/graph.json` and `graphify-out/GRAPH_REPORT.md` are a generated knowledge graph of this codebase, committed so contributors don't have to rebuild it — do not hand-edit them. Refresh after code changes with `graphify update .` (code-only, no LLM, free). A change that deletes a lot of source can trip its shrink guard; re-run with `--force` if that happens.
+
---
diff --git a/graphify-out/GRAPH_REPORT.md b/graphify-out/GRAPH_REPORT.md
new file mode 100644
index 0000000..3478a82
--- /dev/null
+++ b/graphify-out/GRAPH_REPORT.md
@@ -0,0 +1,516 @@
+# Graph Report - . (2026-07-29)
+
+## Corpus Check
+- cluster-only mode — file stats not available
+
+## Summary
+- 1630 nodes · 3624 edges · 128 communities (85 shown, 43 thin omitted)
+- Extraction: 100% EXTRACTED · 0% INFERRED · 0% AMBIGUOUS · INFERRED: 8 edges (avg confidence: 0.76)
+- Token cost: 0 input · 0 output
+
+## Graph Freshness
+- Built from commit: `5c2af1aa`
+- Run `git rev-parse HEAD` and compare to check if the graph is stale.
+- Run `graphify update .` after code changes (no API cost).
+
+## Community Hubs (Navigation)
+- Community 0
+- Community 1
+- Community 2
+- Community 3
+- Community 4
+- Community 5
+- Community 6
+- Community 7
+- Community 8
+- Community 9
+- Community 10
+- Community 11
+- Community 12
+- Community 13
+- Community 14
+- Community 15
+- Community 16
+- Community 17
+- Community 18
+- Community 19
+- Community 20
+- Community 21
+- Community 22
+- Community 23
+- Community 24
+- Community 25
+- Community 26
+- Community 27
+- Community 28
+- Community 29
+- Community 30
+- Community 31
+- Community 32
+- Community 33
+- Community 34
+- Community 35
+- Community 36
+- Community 37
+- Community 38
+- Community 39
+- Community 40
+- Community 41
+- Community 42
+- Community 43
+- Community 44
+- Community 45
+- Community 46
+- Community 47
+- Community 48
+- Community 49
+- Community 50
+- Community 51
+- Community 52
+- Community 53
+- Community 54
+- Community 55
+- Community 56
+- Community 57
+- Community 58
+- Community 59
+- Community 60
+- Community 61
+- Community 62
+- Community 63
+- Community 64
+- Community 65
+- Community 66
+- Community 67
+- Community 68
+- Community 69
+- Community 70
+- Community 71
+- Community 72
+- Community 73
+- Community 74
+- Community 75
+- Community 76
+- Community 77
+- Community 78
+- Community 79
+- Community 80
+- Community 81
+- Community 82
+- Community 83
+- Community 84
+- Community 85
+- Community 86
+- Community 87
+- Community 88
+- Community 89
+- Community 90
+- Community 91
+- Community 92
+- Community 93
+- Community 94
+- Community 95
+- Community 96
+- Community 97
+- Community 98
+- Community 99
+- Community 100
+- Community 101
+- Community 102
+- Community 103
+- Community 104
+- Community 105
+- Community 106
+- Community 107
+- Community 108
+- Community 109
+- Community 110
+- Community 111
+- Community 112
+- Community 113
+- Community 114
+- Community 115
+- Community 116
+- Community 117
+- Community 118
+- Community 119
+- Community 120
+- Community 121
+- Community 122
+- Community 123
+
+## God Nodes (most connected - your core abstractions)
+1. `cn()` - 39 edges
+2. `Button` - 32 edges
+3. `apiFetch()` - 23 edges
+4. `useAuth()` - 23 edges
+5. `formatCurrency()` - 23 edges
+6. `InfoTooltip()` - 20 edges
+7. `Card` - 19 edges
+8. `CardContent` - 19 edges
+9. `useTheme()` - 19 edges
+10. `WorkbenchPage()` - 19 edges
+
+## Surprising Connections (you probably didn't know these)
+- `ThemeProvider()` --indirect_call--> `handler()` [INFERRED]
+ frontend/src/hooks/useTheme.tsx → services/pdf-service/api/pdf-export.ts
+- `buildPdfAnalysisViewModel()` --calls--> `computeSystemCost()` [EXTRACTED]
+ frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts → shared/costModel.ts
+- `buildPdfAnalysisViewModel()` --calls--> `getPanelModel()` [EXTRACTED]
+ frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts → shared/panelModels.ts
+- `useAnalysisForm()` --calls--> `computeSystemCost()` [EXTRACTED]
+ frontend/src/hooks/useAnalysisForm.ts → shared/costModel.ts
+- `useAnalysisForm()` --calls--> `getPanelModel()` [EXTRACTED]
+ frontend/src/hooks/useAnalysisForm.ts → shared/panelModels.ts
+
+## Import Cycles
+- None detected.
+
+## Communities (128 total, 43 thin omitted)
+
+### Community 0 - "Community 0"
+Cohesion: 0.05
+Nodes (93): saveAnalysis(), AnalysisSidebar(), AnalysisSidebarProps, BillBreakdown(), BillBreakdownProps, SimulationMonth, BillComparisonChart(), BillComparisonChartProps (+85 more)
+
+### Community 1 - "Community 1"
+Cohesion: 0.07
+Nodes (53): LocationImageGeoTransform, PdfPageShell(), Props, PrintPage1Workbench(), Props, useCanvasInteractions(), UseCanvasInteractionsOptions, aabbsOverlap() (+45 more)
+
+### Community 2 - "Community 2"
+Cohesion: 0.07
+Nodes (38): calculateAverageFlux(), computeMonthlyEnergy(), computeMonthlyEnergyFromRasters(), pointInPolygon(), PreloadedFluxRasters, preloadFluxRasters(), getRotatedCorners(), rotatePoint() (+30 more)
+
+### Community 3 - "Community 3"
+Cohesion: 0.04
+Nodes (45): concurrently, eslint, @eslint/js, eslint-plugin-react-hooks, globals, dependencies, @prisma/client, devDependencies (+37 more)
+
+### Community 4 - "Community 4"
+Cohesion: 0.08
+Nodes (30): ChatLauncher(), ChatLauncherProps, ChatPanel(), ChatPanelProps, getPaybackYears(), ChatContext, ChatContextValue, ChatMessage (+22 more)
+
+### Community 5 - "Community 5"
+Cohesion: 0.05
+Nodes (36): autoprefixer, devDependencies, autoprefixer, jsdom, tailwindcss, @tailwindcss/vite, @testing-library/react, @types/google.maps (+28 more)
+
+### Community 6 - "Community 6"
+Cohesion: 0.12
+Nodes (31): parseBuildingInsights(), downloadLayer(), fetchLocationPipelineInputs(), getLayerUrl(), LAYER_FILENAMES, PipelineFetchResult, SolarLayerKey, persistLocationPipelineFailure() (+23 more)
+
+### Community 7 - "Community 7"
+Cohesion: 0.11
+Nodes (26): Badge(), BadgeProps, badgeVariants, Logo(), LogoProps, Separator, Skeleton(), TooltipContent (+18 more)
+
+### Community 8 - "Community 8"
+Cohesion: 0.13
+Nodes (28): roofSegments, solarPanels, roofSegments, setup(), solarPanels, getPanelAnnualEnergy(), getSortedPanelIds(), UndoRedoSnapshot (+20 more)
+
+### Community 9 - "Community 9"
+Cohesion: 0.12
+Nodes (30): createProject(), findOwnedProject(), getPdfProjectData(), getProject(), listProjects(), saveAnalysis(), saveLayout(), updateLayoutPreferences() (+22 more)
+
+### Community 10 - "Community 10"
+Cohesion: 0.12
+Nodes (23): formatDisplay(), TARIFF_FIELDS, TariffField, TariffParameterModal(), TariffParameterModalProps, CoverageNoticeModal(), Props, writeCoverageNoticeDismissed() (+15 more)
+
+### Community 11 - "Community 11"
+Cohesion: 0.16
+Nodes (26): buildPdfAnalysisViewModel(), PdfAnalysisViewModel, AnalysisDisclaimerKey, AnalysisMode, AnalysisChartDataPoint, isSeasonalProfile(), LayoutOrientationSummary, summarizeLayoutOrientation() (+18 more)
+
+### Community 12 - "Community 12"
+Cohesion: 0.11
+Nodes (21): LifecycleControlsProps, TariffControlsProps, DropdownMenu(), DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuRadioItem (+13 more)
+
+### Community 13 - "Community 13"
+Cohesion: 0.07
+Nodes (27): puppeteer-core, dependencies, puppeteer-core, @sparticuz/chromium, zod, description, devDependencies, @types/node (+19 more)
+
+### Community 14 - "Community 14"
+Cohesion: 0.14
+Nodes (22): filterByDirection(), PanelYieldEntry, RoofSegmentEntry, SIZING_GOAL_OFFSET, azimuthMatchesRoofDirection(), ROOF_DIRECTION_WINDOWS, segmentMatchesRoofDirection(), SegmentWithAzimuth (+14 more)
+
+### Community 15 - "Community 15"
+Cohesion: 0.08
+Nodes (24): dist, node_modules, compilerOptions, allowImportingTsExtensions, declaration, declarationMap, esModuleInterop, forceConsistentCasingInFileNames (+16 more)
+
+### Community 16 - "Community 16"
+Cohesion: 0.16
+Nodes (23): bucketByOrientation(), ChatPage, ChatProject, countActivePanels(), countSegmentsUsed(), describeInverterReplacements(), formatMaybeNumber(), formatNumber() (+15 more)
+
+### Community 17 - "Community 17"
+Cohesion: 0.08
+Nodes (23): compilerOptions, jsx, lib, noEmit, paths, rootDir, types, exclude (+15 more)
+
+### Community 18 - "Community 18"
+Cohesion: 0.16
+Nodes (18): ApiError, getLocationStatus(), createProject(), readCoverageNoticeDismissed(), LowerResolutionConsentModal(), ManualCoordinateModal(), ensureLoaded(), loader (+10 more)
+
+### Community 19 - "Community 19"
+Cohesion: 0.10
+Nodes (17): AnalysisPage, AnalyticsPage, DashboardPage, FAQPage, MapPage, NotFoundPage, PAGE_LOADING_HINTS, PdfPreviewPage (+9 more)
+
+### Community 20 - "Community 20"
+Cohesion: 0.13
+Nodes (17): GroupPanel, GroupRotationHandle(), GroupRotationHandleProps, getPanelColorByRatio(), panelAnnualEnergy(), PanelLayer(), PanelLayerProps, RenderPanel (+9 more)
+
+### Community 21 - "Community 21"
+Cohesion: 0.10
+Nodes (21): devDependencies, prisma, tsx, @types/compression, @types/cors, @types/express, @types/jsonwebtoken, @types/node (+13 more)
+
+### Community 22 - "Community 22"
+Cohesion: 0.17
+Nodes (14): asyncHandler(), AsyncRouteHandler, Express, Request, requireAuth(), validate(), chatRouter, locationsRouter (+6 more)
+
+### Community 23 - "Community 23"
+Cohesion: 0.20
+Nodes (15): listProjects(), formatRelativeDate(), PortfolioStats, projectRoute(), ProjectCard(), PageContainer(), PageContainerProps, VARIANTS (+7 more)
+
+### Community 24 - "Community 24"
+Cohesion: 0.11
+Nodes (19): dependencies, dotenv, express, @google/genai, jsonwebtoken, @prisma/client, proj4, @shared/types (+11 more)
+
+### Community 25 - "Community 25"
+Cohesion: 0.16
+Nodes (11): DEFAULT_HINTS, LoadingOverlay(), Slider, IrradianceGlowProps, MONTH_LABELS, MONTHLY_AZIMUTH, MONTHLY_IRRADIANCE, useCanvasZoom() (+3 more)
+
+### Community 26 - "Community 26"
+Cohesion: 0.19
+Nodes (16): getLocationDataForUser(), getLocationStatusForUser(), getLocationStatusResponseForUser(), getOverlayResponseForUser(), linkOwnedProjectToLocation(), probeLocation(), resolveLocation(), resolveLocationResponse() (+8 more)
+
+### Community 27 - "Community 27"
+Cohesion: 0.13
+Nodes (17): apiFetch(), probeLocation(), recomputeFlux(), recomputeFluxBatch(), resolveLocation(), deleteProject(), PdfExportToken, ProjectAnalysisConfig (+9 more)
+
+### Community 28 - "Community 28"
+Cohesion: 0.17
+Nodes (12): getQuota(), Notification, formatReset(), useQuota(), emit(), Listener, listeners, notifications (+4 more)
+
+### Community 29 - "Community 29"
+Cohesion: 0.22
+Nodes (14): getTariffConfig(), ConsumptionControlsProps, AnalysisFormState, ChartDataPoint, useAnalysisForm(), ConsumptionProfile, aggregateMonthlyGeneration(), applyPerformanceRatio() (+6 more)
+
+### Community 30 - "Community 30"
+Cohesion: 0.18
+Nodes (13): ClientMode, getGenAIClient(), invalidateForAuthFailure(), GuardResult, PATTERNS, validateChatInput(), buildContents(), ChatEvent (+5 more)
+
+### Community 31 - "Community 31"
+Cohesion: 0.15
+Nodes (14): ImageGeoTransform, RoofMaskResult, buildLocationDataResponse(), LocationDataRouteResponse, LocationDataWithGeoTransform, FluxRecomputeBatchRequest, FluxRecomputeBatchResponse, FluxRecomputeRequest (+6 more)
+
+### Community 32 - "Community 32"
+Cohesion: 0.13
+Nodes (14): ChatRequest, liveStateSchema, AnalysisConfigDto, analysisConfigSchema, AnalysisResultsDto, analysisResultsSchema, billBreakdownSchema, buildingInsightsSchema (+6 more)
+
+### Community 33 - "Community 33"
+Cohesion: 0.12
+Nodes (16): aliases, components, hooks, lib, ui, utils, rsc, $schema (+8 more)
+
+### Community 34 - "Community 34"
+Cohesion: 0.14
+Nodes (10): AppFooter(), AppLayoutProps, AppSidebar(), AppSidebarProps, NAV_SECTIONS, NavItem, NavSectionDef, Section (+2 more)
+
+### Community 35 - "Community 35"
+Cohesion: 0.14
+Nodes (7): HERO_PROFILES, HeroProfile, LandingPage(), PipelineStep, useHeroTicker(), useScrollY(), useAuthMock
+
+### Community 36 - "Community 36"
+Cohesion: 0.12
+Nodes (16): api/**/*.ts, ES2022, compilerOptions, allowSyntheticDefaultImports, esModuleInterop, isolatedModules, lib, module (+8 more)
+
+### Community 37 - "Community 37"
+Cohesion: 0.18
+Nodes (14): __dirname, KNOWLEDGE_PATH, loadKnowledgeBible(), parseSections(), renderKnowledgeForPrompt(), buildSystemInstruction(), ChatLanguage, ChatPage (+6 more)
+
+### Community 38 - "Community 38"
+Cohesion: 0.23
+Nodes (11): App(), AuthContext, AuthContextValue, AuthProvider(), LocaleContext, LocaleContextValue, LocaleProvider(), readInitialLocale() (+3 more)
+
+### Community 39 - "Community 39"
+Cohesion: 0.23
+Nodes (9): AppNav(), Crumb, useBreadcrumbs(), ThemeToggle(), Button, ButtonProps, buttonVariants, NotificationPopover() (+1 more)
+
+### Community 40 - "Community 40"
+Cohesion: 0.22
+Nodes (11): __dirname, env, envSchema, parsed, supabase, loadGeoTIFFWithFallback(), loadReferenceGeoTransform(), loadRoofMask() (+3 more)
+
+### Community 41 - "Community 41"
+Cohesion: 0.19
+Nodes (12): getProjectForPdf(), ProjectResponse, FooterProps, HeaderProps, PdfFixedFooter(), PdfFixedHeader(), PrintReport(), PrintReportProps (+4 more)
+
+### Community 42 - "Community 42"
+Cohesion: 0.13
+Nodes (14): devDependencies, typescript, exports, typescript, license, main, name, private (+6 more)
+
+### Community 43 - "Community 43"
+Cohesion: 0.20
+Nodes (7): prisma, AppError, BadRequestError, ForbiddenError, NotFoundError, tariffRouter, TariffConfigResponse
+
+### Community 44 - "Community 44"
+Cohesion: 0.21
+Nodes (8): GoogleSignInButton(), GoogleSignInButtonProps, ProtectedRoute(), useAuth(), SignInPage(), navigateMock, signInMock, useAuthMock
+
+### Community 45 - "Community 45"
+Cohesion: 0.21
+Nodes (8): allowedOrigins, app, __dirname, errorHandler(), requestLogger(), healthRouter, projectsRouter, HealthResponse
+
+### Community 46 - "Community 46"
+Cohesion: 0.22
+Nodes (10): hits, pdfTokenRateLimit(), createProjectSchema, saveAnalysisSchema, saveLayoutSchema, updateLayoutPreferencesSchema, createProjectRequestSchema, saveAnalysisRequestSchema (+2 more)
+
+### Community 47 - "Community 47"
+Cohesion: 0.21
+Nodes (10): Express, extractToken(), Request, requirePdfToken(), InvalidPdfTokenError, PdfTokenPayload, SignedPdfToken, signPdfToken() (+2 more)
+
+### Community 48 - "Community 48"
+Cohesion: 0.19
+Nodes (8): useWorkbenchKeyboard(), UseWorkbenchKeyboardOptions, billRangeToAnnualKwh(), describeLayoutPreset(), inferVisibleCount(), panels(), getPanelAnnualEnergy(), WorkbenchPage()
+
+### Community 49 - "Community 49"
+Cohesion: 0.29
+Nodes (12): AnalysisConfig, ConnectionPhase, getConnectionPhase(), getConsumptionProfile(), getNumber(), getRoofType(), getTariffRatesOverride(), isRecord() (+4 more)
+
+### Community 50 - "Community 50"
+Cohesion: 0.33
+Nodes (11): BillBreakdown, BillingConfig, computeBill(), computeNemMonth(), lookupEeiRebate(), round2(), round5sen(), runAnnualSimulation() (+3 more)
+
+### Community 51 - "Community 51"
+Cohesion: 0.17
+Nodes (11): compilerOptions, outDir, rootDir, exclude, extends, include, src/**/*.test.ts, src/**/*.ts (+3 more)
+
+### Community 52 - "Community 52"
+Cohesion: 0.31
+Nodes (9): categoriseError(), ChatLanguage, ErrorCategory, getErrorCode(), localiseErrorMessage(), redactErrorMessage(), generateWithRetry(), isRetryable() (+1 more)
+
+### Community 53 - "Community 53"
+Cohesion: 0.18
+Nodes (11): class-variance-authority, dependencies, class-variance-authority, @googlemaps/js-api-loader, i18next-browser-languagedetector, react-markdown, @tanstack/react-query, @googlemaps/js-api-loader (+3 more)
+
+### Community 54 - "Community 54"
+Cohesion: 0.24
+Nodes (8): MODEL_CELL_COLORS, ModelCard(), PanelModelDrawer(), PanelModelDrawerProps, PanelPreview3D, PANEL_MODELS, panelEditSchema, PanelModel
+
+### Community 55 - "Community 55"
+Cohesion: 0.33
+Nodes (9): BadgeVariant, getProjectStatusConfig(), getProjectStatusLabel(), getProjectStatusTooltip(), getProjectStatusVariant(), STATUS_CONFIGS, StatusConfig, ALL_STATUSES (+1 more)
+
+### Community 56 - "Community 56"
+Cohesion: 0.25
+Nodes (9): computeSystemCost(), CostInputs, costModelDefaults, electricalBosCost(), InverterSku, permitCost(), scaffoldingCost(), selectInverter() (+1 more)
+
+### Community 57 - "Community 57"
+Cohesion: 0.42
+Nodes (7): checkQuota(), { count, single, eq, select, from }, countProjectsSinceUtcMidnight(), getQuotaSummary(), getUserTier(), nextUtcMidnight(), startOfUtcDay()
+
+### Community 58 - "Community 58"
+Cohesion: 0.27
+Nodes (9): ColorStop, dsmStops, fluxStops, getOrGenerateOverlay(), getStopsForType(), lerpColor(), maskStops, OverlayType (+1 more)
+
+### Community 59 - "Community 59"
+Cohesion: 0.24
+Nodes (7): requestPdfExportToken(), BASE_STYLE, baseOptions, notify, buildPdfFileName(), sanitizeFileName(), notificationStore
+
+### Community 60 - "Community 60"
+Cohesion: 0.31
+Nodes (7): getOverlayUrl(), CanvasLegends(), CanvasLegendsProps, SegmentHull, OverlayMode, useLoadedImage(), useOverlayImages()
+
+### Community 61 - "Community 61"
+Cohesion: 0.33
+Nodes (7): LanguageToggle(), useLocale(), LOCALE_LABELS, LOCALE_TO_INTL, resources, SUPPORTED_LOCALES, SupportedLocale
+
+### Community 62 - "Community 62"
+Cohesion: 0.22
+Nodes (6): createProjectMock, getLocationStatusMock, getProjectMock, navigateMock, probeLocationMock, resolveLocationMock
+
+### Community 63 - "Community 63"
+Cohesion: 0.25
+Nodes (6): __dirname, EEI_TABLE, prisma, RATES, THRESHOLDS, TariffDefaults
+
+### Community 64 - "Community 64"
+Cohesion: 0.22
+Nodes (8): *.ts, compilerOptions, composite, outDir, rootDir, extends, include, ../tsconfig.json
+
+### Community 65 - "Community 65"
+Cohesion: 0.36
+Nodes (8): BodySchema, handler(), normalizeOrigin(), PAGE_MARGIN, parseAllowedOrigins(), resolveCorsOrigin(), setCorsHeaders(), VIEWPORT
+
+### Community 66 - "Community 66"
+Cohesion: 0.32
+Nodes (6): geotiff, convertRgbTiffToPng(), toArrayBuffer(), DownloadedLayer, StoredLocationAssets, geotiff
+
+### Community 67 - "Community 67"
+Cohesion: 0.29
+Nodes (4): LoadedStreamChatModule, loadStreamChat(), makeProject(), TEST_ENV
+
+### Community 68 - "Community 68"
+Cohesion: 0.32
+Nodes (7): globals, isOff(), prettier, reactHooks, tseslint, typescriptFiles, warnings()
+
+### Community 69 - "Community 69"
+Cohesion: 0.25
+Nodes (6): handleExportPdfMock, markProjectVisitedMock, navigateMock, notifyErrorMock, notifySuccessMock, saveAnalysisMock
+
+### Community 70 - "Community 70"
+Cohesion: 0.29
+Nodes (6): license, name, prisma, seed, private, type
+
+### Community 71 - "Community 71"
+Cohesion: 0.29
+Nodes (6): calculateRadiusMock, enrichBuildingInsightsMock, fetchBuildingInsightsMock, fetchDataLayersMock, parseBuildingInsightsMock, VALID_BI
+
+### Community 72 - "Community 72"
+Cohesion: 0.43
+Nodes (5): CardItem, loadOrder(), reconcile(), saveOrder(), SortableCardContainer()
+
+### Community 74 - "Community 74"
+Cohesion: 0.38
+Nodes (5): getModalPosition(), GuidedTour(), GuidedTourModal(), TourStep, getWorkbenchTourSteps()
+
+### Community 75 - "Community 75"
+Cohesion: 0.53
+Nodes (5): getLocationData(), getProject(), decodeBase64(), DecodedRoofMask, useWorkbenchData()
+
+### Community 76 - "Community 76"
+Cohesion: 0.33
+Nodes (4): listProjectsMock, navigateMock, useAuthMock, useQuotaMock
+
+### Community 77 - "Community 77"
+Cohesion: 0.33
+Nodes (4): deleteProjectMock, listProjectsMock, navigateMock, useQuotaMock
+
+### Community 78 - "Community 78"
+Cohesion: 0.33
+Nodes (5): maxDuration, memory, functions, api/pdf-export.ts, $schema
+
+### Community 79 - "Community 79"
+Cohesion: 0.40
+Nodes (5): scripts, build, dev, start, test
+
+### Community 80 - "Community 80"
+Cohesion: 0.60
+Nodes (4): Props, readPermanentDismiss(), WorkbenchHintOverlay(), writePermanentDismiss()
+
+### Community 81 - "Community 81"
+Cohesion: 0.60
+Nodes (4): getProjectLastVisitedAt(), markProjectVisited(), readEntries(), RecentProjectActivity
+
+## Knowledge Gaps
+- **568 isolated node(s):** `name`, `private`, `license`, `type`, `dev` (+563 more)
+ These have ≤1 connection - possible missing edges or undocumented components.
+- **43 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes.
+
+## Suggested Questions
+_Questions this graph is uniquely positioned to answer:_
+
+- **Why does `geotiff` connect `Community 66` to `Community 24`, `Community 2`, `Community 40`, `Community 58`?**
+ _High betweenness centrality (0.059) - this node is a cross-community bridge._
+- **Why does `dependencies` connect `Community 24` to `Community 66`, `Community 70`, `Community 86`, `Community 87`, `Community 88`, `Community 89`?**
+ _High betweenness centrality (0.057) - this node is a cross-community bridge._
+- **Why does `loadFluxData()` connect `Community 2` to `Community 40`, `Community 66`?**
+ _High betweenness centrality (0.048) - this node is a cross-community bridge._
+- **What connects `name`, `private`, `license` to the rest of the system?**
+ _568 weakly-connected nodes found - possible documentation gaps or missing edges._
+- **Should `Community 0` be split into smaller, more focused modules?**
+ _Cohesion score 0.050747442958300554 - nodes in this community are weakly interconnected._
+- **Should `Community 1` be split into smaller, more focused modules?**
+ _Cohesion score 0.07490079365079365 - nodes in this community are weakly interconnected._
+- **Should `Community 2` be split into smaller, more focused modules?**
+ _Cohesion score 0.07482993197278912 - nodes in this community are weakly interconnected._
\ No newline at end of file
diff --git a/graphify-out/graph.json b/graphify-out/graph.json
new file mode 100644
index 0000000..e46f778
--- /dev/null
+++ b/graphify-out/graph.json
@@ -0,0 +1,60179 @@
+{
+ "directed": false,
+ "multigraph": false,
+ "graph": {},
+ "nodes": [
+ {
+ "label": "backend/package.json",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 70,
+ "norm_label": "backend/package.json",
+ "id": "backend_package",
+ "community_name": "Community 70"
+ },
+ {
+ "label": "name",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 70,
+ "norm_label": "name",
+ "id": "backend_package_name",
+ "community_name": "Community 70"
+ },
+ {
+ "label": "private",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 70,
+ "norm_label": "private",
+ "id": "backend_package_private",
+ "community_name": "Community 70"
+ },
+ {
+ "label": "license",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 70,
+ "norm_label": "license",
+ "id": "backend_package_license",
+ "community_name": "Community 70"
+ },
+ {
+ "label": "type",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 70,
+ "norm_label": "type",
+ "id": "backend_package_type",
+ "community_name": "Community 70"
+ },
+ {
+ "label": "scripts",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 79,
+ "norm_label": "scripts",
+ "id": "backend_package_scripts",
+ "community_name": "Community 79"
+ },
+ {
+ "label": "dev",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 79,
+ "norm_label": "dev",
+ "id": "backend_package_scripts_dev",
+ "community_name": "Community 79"
+ },
+ {
+ "label": "build",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 79,
+ "norm_label": "build",
+ "id": "backend_package_scripts_build",
+ "community_name": "Community 79"
+ },
+ {
+ "label": "start",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 79,
+ "norm_label": "start",
+ "id": "backend_package_scripts_start",
+ "community_name": "Community 79"
+ },
+ {
+ "label": "test",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 79,
+ "norm_label": "test",
+ "id": "backend_package_scripts_test",
+ "community_name": "Community 79"
+ },
+ {
+ "label": "dependencies",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 24,
+ "norm_label": "dependencies",
+ "id": "backend_package_dependencies",
+ "community_name": "Community 24"
+ },
+ {
+ "label": "@google/genai",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 24,
+ "norm_label": "@google/genai",
+ "id": "backend_package_dependencies_google_genai",
+ "community_name": "Community 24"
+ },
+ {
+ "label": "@google/genai",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 24,
+ "norm_label": "@google/genai",
+ "id": "google_genai",
+ "community_name": "Community 24"
+ },
+ {
+ "label": "@prisma/client",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 24,
+ "norm_label": "@prisma/client",
+ "id": "backend_package_dependencies_prisma_client",
+ "community_name": "Community 24"
+ },
+ {
+ "label": "@prisma/client",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 24,
+ "norm_label": "@prisma/client",
+ "id": "backend_package_json_prisma_client",
+ "community_name": "Community 24"
+ },
+ {
+ "label": "@shared/types",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 24,
+ "norm_label": "@shared/types",
+ "id": "backend_package_dependencies_shared_types",
+ "community_name": "Community 24"
+ },
+ {
+ "label": "@shared/types",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 24,
+ "norm_label": "@shared/types",
+ "id": "backend_package_json_shared_types",
+ "community_name": "Community 24"
+ },
+ {
+ "label": "@supabase/supabase-js",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 88,
+ "norm_label": "@supabase/supabase-js",
+ "id": "backend_package_dependencies_supabase_supabase_js",
+ "community_name": "Community 88"
+ },
+ {
+ "label": "@supabase/supabase-js",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 88,
+ "norm_label": "@supabase/supabase-js",
+ "id": "backend_package_json_supabase_supabase_js",
+ "community_name": "Community 88"
+ },
+ {
+ "label": "compression",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 89,
+ "norm_label": "compression",
+ "id": "backend_package_dependencies_compression",
+ "community_name": "Community 89"
+ },
+ {
+ "label": "compression",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 89,
+ "norm_label": "compression",
+ "id": "compression",
+ "community_name": "Community 89"
+ },
+ {
+ "label": "cors",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 86,
+ "norm_label": "cors",
+ "id": "backend_package_dependencies_cors",
+ "community_name": "Community 86"
+ },
+ {
+ "label": "cors",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 86,
+ "norm_label": "cors",
+ "id": "cors",
+ "community_name": "Community 86"
+ },
+ {
+ "label": "dotenv",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 24,
+ "norm_label": "dotenv",
+ "id": "backend_package_dependencies_dotenv",
+ "community_name": "Community 24"
+ },
+ {
+ "label": "dotenv",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 24,
+ "norm_label": "dotenv",
+ "id": "dotenv",
+ "community_name": "Community 24"
+ },
+ {
+ "label": "dotenv-expand",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 87,
+ "norm_label": "dotenv-expand",
+ "id": "backend_package_dependencies_dotenv_expand",
+ "community_name": "Community 87"
+ },
+ {
+ "label": "dotenv-expand",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 87,
+ "norm_label": "dotenv-expand",
+ "id": "dotenv_expand",
+ "community_name": "Community 87"
+ },
+ {
+ "label": "express",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 24,
+ "norm_label": "express",
+ "id": "backend_package_dependencies_express",
+ "community_name": "Community 24"
+ },
+ {
+ "label": "express",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 24,
+ "norm_label": "express",
+ "id": "express",
+ "community_name": "Community 24"
+ },
+ {
+ "label": "geotiff",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 66,
+ "norm_label": "geotiff",
+ "id": "backend_package_dependencies_geotiff",
+ "community_name": "Community 66"
+ },
+ {
+ "label": "geotiff",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 66,
+ "norm_label": "geotiff",
+ "id": "geotiff",
+ "community_name": "Community 66"
+ },
+ {
+ "label": "jsonwebtoken",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L23",
+ "_origin": "ast",
+ "community": 24,
+ "norm_label": "jsonwebtoken",
+ "id": "backend_package_dependencies_jsonwebtoken",
+ "community_name": "Community 24"
+ },
+ {
+ "label": "jsonwebtoken",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L23",
+ "_origin": "ast",
+ "community": 24,
+ "norm_label": "jsonwebtoken",
+ "id": "jsonwebtoken",
+ "community_name": "Community 24"
+ },
+ {
+ "label": "proj4",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 24,
+ "norm_label": "proj4",
+ "id": "backend_package_dependencies_proj4",
+ "community_name": "Community 24"
+ },
+ {
+ "label": "proj4",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 24,
+ "norm_label": "proj4",
+ "id": "backend_package_json_proj4",
+ "community_name": "Community 24"
+ },
+ {
+ "label": "sharp",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 24,
+ "norm_label": "sharp",
+ "id": "backend_package_dependencies_sharp",
+ "community_name": "Community 24"
+ },
+ {
+ "label": "sharp",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 24,
+ "norm_label": "sharp",
+ "id": "sharp",
+ "community_name": "Community 24"
+ },
+ {
+ "label": "zod",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L26",
+ "_origin": "ast",
+ "community": 24,
+ "norm_label": "zod",
+ "id": "backend_package_dependencies_zod",
+ "community_name": "Community 24"
+ },
+ {
+ "label": "zod",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L26",
+ "_origin": "ast",
+ "community": 24,
+ "norm_label": "zod",
+ "id": "backend_package_json_zod",
+ "community_name": "Community 24"
+ },
+ {
+ "label": "prisma",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L28",
+ "_origin": "ast",
+ "community": 70,
+ "norm_label": "prisma",
+ "id": "backend_package_prisma",
+ "community_name": "Community 70"
+ },
+ {
+ "label": "seed",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L29",
+ "_origin": "ast",
+ "community": 70,
+ "norm_label": "seed",
+ "id": "backend_package_prisma_seed",
+ "community_name": "Community 70"
+ },
+ {
+ "label": "devDependencies",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L31",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "devdependencies",
+ "id": "backend_package_devdependencies",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "@types/compression",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L32",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "@types/compression",
+ "id": "backend_package_devdependencies_types_compression",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "@types/compression",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L32",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "@types/compression",
+ "id": "types_compression",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "@types/cors",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L33",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "@types/cors",
+ "id": "backend_package_devdependencies_types_cors",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "@types/cors",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L33",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "@types/cors",
+ "id": "types_cors",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "@types/express",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L34",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "@types/express",
+ "id": "backend_package_devdependencies_types_express",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "@types/express",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L34",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "@types/express",
+ "id": "types_express",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "@types/jsonwebtoken",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "@types/jsonwebtoken",
+ "id": "backend_package_devdependencies_types_jsonwebtoken",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "@types/jsonwebtoken",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "@types/jsonwebtoken",
+ "id": "types_jsonwebtoken",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "@types/node",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L36",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "@types/node",
+ "id": "backend_package_devdependencies_types_node",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "@types/node",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L36",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "@types/node",
+ "id": "backend_package_json_types_node",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "@types/proj4",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L37",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "@types/proj4",
+ "id": "backend_package_devdependencies_types_proj4",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "@types/proj4",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L37",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "@types/proj4",
+ "id": "types_proj4",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "prisma",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L38",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "prisma",
+ "id": "backend_package_devdependencies_prisma",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "prisma",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L38",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "prisma",
+ "id": "backend_package_json_prisma",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "tsx",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L39",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "tsx",
+ "id": "backend_package_devdependencies_tsx",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "tsx",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L39",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "tsx",
+ "id": "tsx",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "typescript",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L40",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "typescript",
+ "id": "backend_package_devdependencies_typescript",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "typescript",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L40",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "typescript",
+ "id": "backend_package_json_typescript",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "vitest",
+ "file_type": "code",
+ "source_file": "backend/package.json",
+ "source_location": "L41",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "vitest",
+ "id": "backend_package_devdependencies_vitest",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "vitest",
+ "file_type": "concept",
+ "source_file": "backend/package.json",
+ "source_location": "L41",
+ "_origin": "ast",
+ "community": 21,
+ "norm_label": "vitest",
+ "id": "backend_package_json_vitest",
+ "community_name": "Community 21"
+ },
+ {
+ "label": "app.ts",
+ "file_type": "code",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 45,
+ "norm_label": "app.ts",
+ "id": "backend_src_app",
+ "community_name": "Community 45"
+ },
+ {
+ "label": "__dirname",
+ "file_type": "code",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 45,
+ "norm_label": "__dirname",
+ "id": "backend_src_app_dirname",
+ "community_name": "Community 45"
+ },
+ {
+ "label": "allowedOrigins",
+ "file_type": "code",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 45,
+ "norm_label": "allowedorigins",
+ "id": "backend_src_app_allowedorigins",
+ "community_name": "Community 45"
+ },
+ {
+ "label": "app",
+ "file_type": "code",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L31",
+ "_origin": "ast",
+ "community": 45,
+ "norm_label": "app",
+ "id": "backend_src_app_app",
+ "community_name": "Community 45"
+ },
+ {
+ "label": "env.ts",
+ "file_type": "code",
+ "source_file": "backend/src/config/env.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 40,
+ "norm_label": "env.ts",
+ "id": "backend_src_config_env",
+ "community_name": "Community 40"
+ },
+ {
+ "label": "__dirname",
+ "file_type": "code",
+ "source_file": "backend/src/config/env.ts",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 40,
+ "norm_label": "__dirname",
+ "id": "backend_src_config_env_dirname",
+ "community_name": "Community 40"
+ },
+ {
+ "label": "envSchema",
+ "file_type": "code",
+ "source_file": "backend/src/config/env.ts",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 40,
+ "norm_label": "envschema",
+ "id": "backend_src_config_env_envschema",
+ "community_name": "Community 40"
+ },
+ {
+ "label": "parsed",
+ "file_type": "code",
+ "source_file": "backend/src/config/env.ts",
+ "source_location": "L47",
+ "_origin": "ast",
+ "community": 40,
+ "norm_label": "parsed",
+ "id": "backend_src_config_env_parsed",
+ "community_name": "Community 40"
+ },
+ {
+ "label": "env",
+ "file_type": "code",
+ "source_file": "backend/src/config/env.ts",
+ "source_location": "L55",
+ "_origin": "ast",
+ "community": 40,
+ "norm_label": "env",
+ "id": "backend_src_config_env_env",
+ "community_name": "Community 40"
+ },
+ {
+ "label": "prisma.ts",
+ "file_type": "code",
+ "source_file": "backend/src/config/prisma.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 43,
+ "norm_label": "prisma.ts",
+ "id": "backend_src_config_prisma",
+ "community_name": "Community 43"
+ },
+ {
+ "label": "prisma",
+ "file_type": "code",
+ "source_file": "backend/src/config/prisma.ts",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 43,
+ "norm_label": "prisma",
+ "id": "backend_src_config_prisma_prisma",
+ "community_name": "Community 43"
+ },
+ {
+ "label": "config/supabase.ts",
+ "file_type": "code",
+ "source_file": "backend/src/config/supabase.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 40,
+ "norm_label": "config/supabase.ts",
+ "id": "backend_src_config_supabase",
+ "community_name": "Community 40"
+ },
+ {
+ "label": "supabase",
+ "file_type": "code",
+ "source_file": "backend/src/config/supabase.ts",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 40,
+ "norm_label": "supabase",
+ "id": "backend_src_config_supabase_supabase",
+ "community_name": "Community 40"
+ },
+ {
+ "label": "src/errors.ts",
+ "file_type": "code",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 43,
+ "norm_label": "src/errors.ts",
+ "id": "backend_src_errors",
+ "community_name": "Community 43"
+ },
+ {
+ "label": "AppError",
+ "file_type": "code",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 43,
+ "norm_label": "apperror",
+ "id": "backend_src_errors_apperror",
+ "community_name": "Community 43"
+ },
+ {
+ "label": ".constructor()",
+ "file_type": "code",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 43,
+ "norm_label": ".constructor()",
+ "id": "backend_src_errors_apperror_constructor",
+ "community_name": "Community 43"
+ },
+ {
+ "label": "BadRequestError",
+ "file_type": "code",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 43,
+ "norm_label": "badrequesterror",
+ "id": "backend_src_errors_badrequesterror",
+ "community_name": "Community 43"
+ },
+ {
+ "label": ".constructor()",
+ "file_type": "code",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 43,
+ "norm_label": ".constructor()",
+ "id": "backend_src_errors_badrequesterror_constructor",
+ "community_name": "Community 43"
+ },
+ {
+ "label": "ForbiddenError",
+ "file_type": "code",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L26",
+ "_origin": "ast",
+ "community": 43,
+ "norm_label": "forbiddenerror",
+ "id": "backend_src_errors_forbiddenerror",
+ "community_name": "Community 43"
+ },
+ {
+ "label": ".constructor()",
+ "file_type": "code",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L27",
+ "_origin": "ast",
+ "community": 43,
+ "norm_label": ".constructor()",
+ "id": "backend_src_errors_forbiddenerror_constructor",
+ "community_name": "Community 43"
+ },
+ {
+ "label": "NotFoundError",
+ "file_type": "code",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 43,
+ "norm_label": "notfounderror",
+ "id": "backend_src_errors_notfounderror",
+ "community_name": "Community 43"
+ },
+ {
+ "label": ".constructor()",
+ "file_type": "code",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L36",
+ "_origin": "ast",
+ "community": 43,
+ "norm_label": ".constructor()",
+ "id": "backend_src_errors_notfounderror_constructor",
+ "community_name": "Community 43"
+ },
+ {
+ "label": "fluxSampler.test.ts",
+ "file_type": "code",
+ "source_file": "backend/src/geo/__tests__/fluxSampler.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "fluxsampler.test.ts",
+ "id": "backend_src_geo_tests_fluxsampler_test",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "panelGeometry.test.ts",
+ "file_type": "code",
+ "source_file": "backend/src/geo/__tests__/panelGeometry.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "panelgeometry.test.ts",
+ "id": "backend_src_geo_tests_panelgeometry_test",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "transforms.test.ts",
+ "file_type": "code",
+ "source_file": "backend/src/geo/__tests__/transforms.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "transforms.test.ts",
+ "id": "backend_src_geo_tests_transforms_test",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "mockGeo",
+ "file_type": "code",
+ "source_file": "backend/src/geo/__tests__/transforms.test.ts",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "mockgeo",
+ "id": "backend_src_geo_tests_transforms_test_mockgeo",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "fluxSampler.ts",
+ "file_type": "code",
+ "source_file": "backend/src/geo/fluxSampler.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "fluxsampler.ts",
+ "id": "backend_src_geo_fluxsampler",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "pointInPolygon()",
+ "file_type": "code",
+ "source_file": "backend/src/geo/fluxSampler.ts",
+ "source_location": "L36",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "pointinpolygon()",
+ "id": "backend_src_geo_fluxsampler_pointinpolygon",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "calculateAverageFlux()",
+ "file_type": "code",
+ "source_file": "backend/src/geo/fluxSampler.ts",
+ "source_location": "L76",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "calculateaverageflux()",
+ "id": "backend_src_geo_fluxsampler_calculateaverageflux",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "computeMonthlyEnergy()",
+ "file_type": "code",
+ "source_file": "backend/src/geo/fluxSampler.ts",
+ "source_location": "L121",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "computemonthlyenergy()",
+ "id": "backend_src_geo_fluxsampler_computemonthlyenergy",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "PreloadedFluxRasters",
+ "file_type": "code",
+ "source_file": "backend/src/geo/fluxSampler.ts",
+ "source_location": "L148",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "preloadedfluxrasters",
+ "id": "backend_src_geo_fluxsampler_preloadedfluxrasters",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "preloadFluxRasters()",
+ "file_type": "code",
+ "source_file": "backend/src/geo/fluxSampler.ts",
+ "source_location": "L167",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "preloadfluxrasters()",
+ "id": "backend_src_geo_fluxsampler_preloadfluxrasters",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "computeMonthlyEnergyFromRasters()",
+ "file_type": "code",
+ "source_file": "backend/src/geo/fluxSampler.ts",
+ "source_location": "L189",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "computemonthlyenergyfromrasters()",
+ "id": "backend_src_geo_fluxsampler_computemonthlyenergyfromrasters",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "panelGeometry.ts",
+ "file_type": "code",
+ "source_file": "backend/src/geo/panelGeometry.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "panelgeometry.ts",
+ "id": "backend_src_geo_panelgeometry",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "rotatePoint()",
+ "file_type": "code",
+ "source_file": "backend/src/geo/panelGeometry.ts",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "rotatepoint()",
+ "id": "backend_src_geo_panelgeometry_rotatepoint",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "getRotatedCorners()",
+ "file_type": "code",
+ "source_file": "backend/src/geo/panelGeometry.ts",
+ "source_location": "L45",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "getrotatedcorners()",
+ "id": "backend_src_geo_panelgeometry_getrotatedcorners",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "transforms.ts",
+ "file_type": "code",
+ "source_file": "backend/src/geo/transforms.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "transforms.ts",
+ "id": "backend_src_geo_transforms",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "GeoTransform",
+ "file_type": "code",
+ "source_file": "backend/src/geo/transforms.ts",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "geotransform",
+ "id": "backend_src_geo_transforms_geotransform",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "setupGeoTransform()",
+ "file_type": "code",
+ "source_file": "backend/src/geo/transforms.ts",
+ "source_location": "L50",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "setupgeotransform()",
+ "id": "backend_src_geo_transforms_setupgeotransform",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "latLngToPixel()",
+ "file_type": "code",
+ "source_file": "backend/src/geo/transforms.ts",
+ "source_location": "L79",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "latlngtopixel()",
+ "id": "backend_src_geo_transforms_latlngtopixel",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "pixelToLatLng()",
+ "file_type": "code",
+ "source_file": "backend/src/geo/transforms.ts",
+ "source_location": "L96",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "pixeltolatlng()",
+ "id": "backend_src_geo_transforms_pixeltolatlng",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "metersToPixels()",
+ "file_type": "code",
+ "source_file": "backend/src/geo/transforms.ts",
+ "source_location": "L114",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "meterstopixels()",
+ "id": "backend_src_geo_transforms_meterstopixels",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "asyncHandler.ts",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/asyncHandler.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "asynchandler.ts",
+ "id": "backend_src_middleware_asynchandler",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "AsyncRouteHandler",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/asyncHandler.ts",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "asyncroutehandler",
+ "id": "backend_src_middleware_asynchandler_asyncroutehandler",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "asyncHandler()",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/asyncHandler.ts",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "asynchandler()",
+ "id": "backend_src_middleware_asynchandler_asynchandler",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "auth.ts",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/auth.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "auth.ts",
+ "id": "backend_src_middleware_auth",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "Express",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/auth.ts",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "express",
+ "id": "backend_src_middleware_auth_express",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "Request",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/auth.ts",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "request",
+ "id": "backend_src_middleware_auth_request",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "requireAuth()",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/auth.ts",
+ "source_location": "L28",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "requireauth()",
+ "id": "backend_src_middleware_auth_requireauth",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "checkQuota.ts",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/checkQuota.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 57,
+ "norm_label": "checkquota.ts",
+ "id": "backend_src_middleware_checkquota",
+ "community_name": "Community 57"
+ },
+ {
+ "label": "checkQuota()",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/checkQuota.ts",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 57,
+ "norm_label": "checkquota()",
+ "id": "backend_src_middleware_checkquota_checkquota",
+ "community_name": "Community 57"
+ },
+ {
+ "label": "errorHandler.ts",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/errorHandler.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 45,
+ "norm_label": "errorhandler.ts",
+ "id": "backend_src_middleware_errorhandler",
+ "community_name": "Community 45"
+ },
+ {
+ "label": "errorHandler()",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/errorHandler.ts",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 45,
+ "norm_label": "errorhandler()",
+ "id": "backend_src_middleware_errorhandler_errorhandler",
+ "community_name": "Community 45"
+ },
+ {
+ "label": "pdfTokenRateLimit.ts",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/pdfTokenRateLimit.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 46,
+ "norm_label": "pdftokenratelimit.ts",
+ "id": "backend_src_middleware_pdftokenratelimit",
+ "community_name": "Community 46"
+ },
+ {
+ "label": "hits",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/pdfTokenRateLimit.ts",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 46,
+ "norm_label": "hits",
+ "id": "backend_src_middleware_pdftokenratelimit_hits",
+ "community_name": "Community 46"
+ },
+ {
+ "label": "pdfTokenRateLimit()",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/pdfTokenRateLimit.ts",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 46,
+ "norm_label": "pdftokenratelimit()",
+ "id": "backend_src_middleware_pdftokenratelimit_pdftokenratelimit",
+ "community_name": "Community 46"
+ },
+ {
+ "label": "requestLogger.ts",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/requestLogger.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 45,
+ "norm_label": "requestlogger.ts",
+ "id": "backend_src_middleware_requestlogger",
+ "community_name": "Community 45"
+ },
+ {
+ "label": "requestLogger()",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/requestLogger.ts",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 45,
+ "norm_label": "requestlogger()",
+ "id": "backend_src_middleware_requestlogger_requestlogger",
+ "community_name": "Community 45"
+ },
+ {
+ "label": "requirePdfToken.ts",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/requirePdfToken.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 47,
+ "norm_label": "requirepdftoken.ts",
+ "id": "backend_src_middleware_requirepdftoken",
+ "community_name": "Community 47"
+ },
+ {
+ "label": "Express",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/requirePdfToken.ts",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 47,
+ "norm_label": "express",
+ "id": "backend_src_middleware_requirepdftoken_express",
+ "community_name": "Community 47"
+ },
+ {
+ "label": "Request",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/requirePdfToken.ts",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 47,
+ "norm_label": "request",
+ "id": "backend_src_middleware_requirepdftoken_request",
+ "community_name": "Community 47"
+ },
+ {
+ "label": "extractToken()",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/requirePdfToken.ts",
+ "source_location": "L29",
+ "_origin": "ast",
+ "community": 47,
+ "norm_label": "extracttoken()",
+ "id": "backend_src_middleware_requirepdftoken_extracttoken",
+ "community_name": "Community 47"
+ },
+ {
+ "label": "requirePdfToken()",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/requirePdfToken.ts",
+ "source_location": "L45",
+ "_origin": "ast",
+ "community": 47,
+ "norm_label": "requirepdftoken()",
+ "id": "backend_src_middleware_requirepdftoken_requirepdftoken",
+ "community_name": "Community 47"
+ },
+ {
+ "label": "validate.ts",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/validate.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "validate.ts",
+ "id": "backend_src_middleware_validate",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "validate()",
+ "file_type": "code",
+ "source_file": "backend/src/middleware/validate.ts",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "validate()",
+ "id": "backend_src_middleware_validate_validate",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "routes/chat.ts",
+ "file_type": "code",
+ "source_file": "backend/src/routes/chat.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "routes/chat.ts",
+ "id": "backend_src_routes_chat",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "chatRouter",
+ "file_type": "code",
+ "source_file": "backend/src/routes/chat.ts",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "chatrouter",
+ "id": "backend_src_routes_chat_chatrouter",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "health.ts",
+ "file_type": "code",
+ "source_file": "backend/src/routes/health.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 45,
+ "norm_label": "health.ts",
+ "id": "backend_src_routes_health",
+ "community_name": "Community 45"
+ },
+ {
+ "label": "healthRouter",
+ "file_type": "code",
+ "source_file": "backend/src/routes/health.ts",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 45,
+ "norm_label": "healthrouter",
+ "id": "backend_src_routes_health_healthrouter",
+ "community_name": "Community 45"
+ },
+ {
+ "label": "routes/locations.ts",
+ "file_type": "code",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "routes/locations.ts",
+ "id": "backend_src_routes_locations",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "locationsRouter",
+ "file_type": "code",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L26",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "locationsrouter",
+ "id": "backend_src_routes_locations_locationsrouter",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "routes/projects.ts",
+ "file_type": "code",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 46,
+ "norm_label": "routes/projects.ts",
+ "id": "backend_src_routes_projects",
+ "community_name": "Community 46"
+ },
+ {
+ "label": "projectsRouter",
+ "file_type": "code",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L28",
+ "_origin": "ast",
+ "community": 45,
+ "norm_label": "projectsrouter",
+ "id": "backend_src_routes_projects_projectsrouter",
+ "community_name": "Community 45"
+ },
+ {
+ "label": "routes/quota.ts",
+ "file_type": "code",
+ "source_file": "backend/src/routes/quota.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "routes/quota.ts",
+ "id": "backend_src_routes_quota",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "quotaRouter",
+ "file_type": "code",
+ "source_file": "backend/src/routes/quota.ts",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "quotarouter",
+ "id": "backend_src_routes_quota_quotarouter",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "routes/tariff.ts",
+ "file_type": "code",
+ "source_file": "backend/src/routes/tariff.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 43,
+ "norm_label": "routes/tariff.ts",
+ "id": "backend_src_routes_tariff",
+ "community_name": "Community 43"
+ },
+ {
+ "label": "tariffRouter",
+ "file_type": "code",
+ "source_file": "backend/src/routes/tariff.ts",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 43,
+ "norm_label": "tariffrouter",
+ "id": "backend_src_routes_tariff_tariffrouter",
+ "community_name": "Community 43"
+ },
+ {
+ "label": "server.ts",
+ "file_type": "code",
+ "source_file": "backend/src/server.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 45,
+ "norm_label": "server.ts",
+ "id": "backend_src_server",
+ "community_name": "Community 45"
+ },
+ {
+ "label": "buildingInsightsService.test.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/buildingInsightsService.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "buildinginsightsservice.test.ts",
+ "id": "backend_src_services_tests_buildinginsightsservice_test",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "fluxRecomputeService.test.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "fluxrecomputeservice.test.ts",
+ "id": "backend_src_services_tests_fluxrecomputeservice_test",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "downloadFromStorageMock",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "downloadfromstoragemock",
+ "id": "backend_src_services_tests_fluxrecomputeservice_test_downloadfromstoragemock",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "fromArrayBufferMock",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "fromarraybuffermock",
+ "id": "backend_src_services_tests_fluxrecomputeservice_test_fromarraybuffermock",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "setupGeoTransformMock",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "setupgeotransformmock",
+ "id": "backend_src_services_tests_fluxrecomputeservice_test_setupgeotransformmock",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "latLngToPixelMock",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "latlngtopixelmock",
+ "id": "backend_src_services_tests_fluxrecomputeservice_test_latlngtopixelmock",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "metersToPixelsMock",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "meterstopixelsmock",
+ "id": "backend_src_services_tests_fluxrecomputeservice_test_meterstopixelsmock",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "getRotatedCornersMock",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "getrotatedcornersmock",
+ "id": "backend_src_services_tests_fluxrecomputeservice_test_getrotatedcornersmock",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "computeMonthlyEnergyMock",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "computemonthlyenergymock",
+ "id": "backend_src_services_tests_fluxrecomputeservice_test_computemonthlyenergymock",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "PANEL_SPECS",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L45",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "panel_specs",
+ "id": "backend_src_services_tests_fluxrecomputeservice_test_panel_specs",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "FAKE_GEO",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L51",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "fake_geo",
+ "id": "backend_src_services_tests_fluxrecomputeservice_test_fake_geo",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "FAKE_IMAGE",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L52",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "fake_image",
+ "id": "backend_src_services_tests_fluxrecomputeservice_test_fake_image",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "FAKE_BUFFER",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L53",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "fake_buffer",
+ "id": "backend_src_services_tests_fluxrecomputeservice_test_fake_buffer",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "setupHappyPath()",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L55",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "setuphappypath()",
+ "id": "backend_src_services_tests_fluxrecomputeservice_test_setuphappypath",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "locationPipeline.test.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/locationPipeline.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 71,
+ "norm_label": "locationpipeline.test.ts",
+ "id": "backend_src_services_tests_locationpipeline_test",
+ "community_name": "Community 71"
+ },
+ {
+ "label": "fetchBuildingInsightsMock",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/locationPipeline.test.ts",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 71,
+ "norm_label": "fetchbuildinginsightsmock",
+ "id": "backend_src_services_tests_locationpipeline_test_fetchbuildinginsightsmock",
+ "community_name": "Community 71"
+ },
+ {
+ "label": "fetchDataLayersMock",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/locationPipeline.test.ts",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 71,
+ "norm_label": "fetchdatalayersmock",
+ "id": "backend_src_services_tests_locationpipeline_test_fetchdatalayersmock",
+ "community_name": "Community 71"
+ },
+ {
+ "label": "calculateRadiusMock",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/locationPipeline.test.ts",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 71,
+ "norm_label": "calculateradiusmock",
+ "id": "backend_src_services_tests_locationpipeline_test_calculateradiusmock",
+ "community_name": "Community 71"
+ },
+ {
+ "label": "enrichBuildingInsightsMock",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/locationPipeline.test.ts",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 71,
+ "norm_label": "enrichbuildinginsightsmock",
+ "id": "backend_src_services_tests_locationpipeline_test_enrichbuildinginsightsmock",
+ "community_name": "Community 71"
+ },
+ {
+ "label": "parseBuildingInsightsMock",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/locationPipeline.test.ts",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 71,
+ "norm_label": "parsebuildinginsightsmock",
+ "id": "backend_src_services_tests_locationpipeline_test_parsebuildinginsightsmock",
+ "community_name": "Community 71"
+ },
+ {
+ "label": "VALID_BI",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/locationPipeline.test.ts",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 71,
+ "norm_label": "valid_bi",
+ "id": "backend_src_services_tests_locationpipeline_test_valid_bi",
+ "community_name": "Community 71"
+ },
+ {
+ "label": "locationService.test.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/locationService.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 26,
+ "norm_label": "locationservice.test.ts",
+ "id": "backend_src_services_tests_locationservice_test",
+ "community_name": "Community 26"
+ },
+ {
+ "label": "{ findFirst, update, create, projectUpdateMany }",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/locationService.test.ts",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 26,
+ "norm_label": "{ findfirst, update, create, projectupdatemany }",
+ "id": "backend_src_services_tests_locationservice_test_findfirst_update_create_projectupdatemany",
+ "community_name": "Community 26"
+ },
+ {
+ "label": "runLocationPipelineMock",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/locationService.test.ts",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 26,
+ "norm_label": "runlocationpipelinemock",
+ "id": "backend_src_services_tests_locationservice_test_runlocationpipelinemock",
+ "community_name": "Community 26"
+ },
+ {
+ "label": "pdfTokenService.test.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/pdfTokenService.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 124,
+ "norm_label": "pdftokenservice.test.ts",
+ "id": "backend_src_services_tests_pdftokenservice_test",
+ "community_name": "Community 124"
+ },
+ {
+ "label": "solarApiService.test.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/solarApiService.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "solarapiservice.test.ts",
+ "id": "backend_src_services_tests_solarapiservice_test",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "mockFetch",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/solarApiService.test.ts",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "mockfetch",
+ "id": "backend_src_services_tests_solarapiservice_test_mockfetch",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "userService.test.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/userService.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 57,
+ "norm_label": "userservice.test.ts",
+ "id": "backend_src_services_tests_userservice_test",
+ "community_name": "Community 57"
+ },
+ {
+ "label": "{ count, single, eq, select, from }",
+ "file_type": "code",
+ "source_file": "backend/src/services/__tests__/userService.test.ts",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 57,
+ "norm_label": "{ count, single, eq, select, from }",
+ "id": "backend_src_services_tests_userservice_test_count_single_eq_select_from",
+ "community_name": "Community 57"
+ },
+ {
+ "label": "buildingInsightsService.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/buildingInsightsService.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "buildinginsightsservice.ts",
+ "id": "backend_src_services_buildinginsightsservice",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "solarPanelSchema",
+ "file_type": "code",
+ "source_file": "backend/src/services/buildingInsightsService.ts",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "solarpanelschema",
+ "id": "backend_src_services_buildinginsightsservice_solarpanelschema",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "solarPotentialSchema",
+ "file_type": "code",
+ "source_file": "backend/src/services/buildingInsightsService.ts",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "solarpotentialschema",
+ "id": "backend_src_services_buildinginsightsservice_solarpotentialschema",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "latLngSchema",
+ "file_type": "code",
+ "source_file": "backend/src/services/buildingInsightsService.ts",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "latlngschema",
+ "id": "backend_src_services_buildinginsightsservice_latlngschema",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "buildingInsightsSchema",
+ "file_type": "code",
+ "source_file": "backend/src/services/buildingInsightsService.ts",
+ "source_location": "L26",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "buildinginsightsschema",
+ "id": "backend_src_services_buildinginsightsservice_buildinginsightsschema",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "PanelSpecs",
+ "file_type": "code",
+ "source_file": "backend/src/services/buildingInsightsService.ts",
+ "source_location": "L39",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "panelspecs",
+ "id": "backend_src_services_buildinginsightsservice_panelspecs",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "BuildingInsightsDto",
+ "file_type": "code",
+ "source_file": "backend/src/services/buildingInsightsService.ts",
+ "source_location": "L43",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "buildinginsightsdto",
+ "id": "backend_src_services_buildinginsightsservice_buildinginsightsdto",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "parseBuildingInsights()",
+ "file_type": "code",
+ "source_file": "backend/src/services/buildingInsightsService.ts",
+ "source_location": "L51",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "parsebuildinginsights()",
+ "id": "backend_src_services_buildinginsightsservice_parsebuildinginsights",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "parsePanelSpecs()",
+ "file_type": "code",
+ "source_file": "backend/src/services/buildingInsightsService.ts",
+ "source_location": "L65",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "parsepanelspecs()",
+ "id": "backend_src_services_buildinginsightsservice_parsepanelspecs",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "client.test.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/client.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 82,
+ "norm_label": "client.test.ts",
+ "id": "backend_src_services_chat_tests_client_test",
+ "community_name": "Community 82"
+ },
+ {
+ "label": "mockGoogleGenAI",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/client.test.ts",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 82,
+ "norm_label": "mockgooglegenai",
+ "id": "backend_src_services_chat_tests_client_test_mockgooglegenai",
+ "community_name": "Community 82"
+ },
+ {
+ "label": "envMock",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/client.test.ts",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 82,
+ "norm_label": "envmock",
+ "id": "backend_src_services_chat_tests_client_test_envmock",
+ "community_name": "Community 82"
+ },
+ {
+ "label": "env()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/client.test.ts",
+ "source_location": "L27",
+ "_origin": "ast",
+ "community": 82,
+ "norm_label": "env()",
+ "id": "backend_src_services_chat_tests_client_test_env",
+ "community_name": "Community 82"
+ },
+ {
+ "label": "digest.test.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/digest.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 83,
+ "norm_label": "digest.test.ts",
+ "id": "backend_src_services_chat_tests_digest_test",
+ "community_name": "Community 83"
+ },
+ {
+ "label": "TEST_ENV",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/digest.test.ts",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 83,
+ "norm_label": "test_env",
+ "id": "backend_src_services_chat_tests_digest_test_test_env",
+ "community_name": "Community 83"
+ },
+ {
+ "label": "ChatProject",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/digest.test.ts",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 83,
+ "norm_label": "chatproject",
+ "id": "backend_src_services_chat_tests_digest_test_chatproject",
+ "community_name": "Community 83"
+ },
+ {
+ "label": "makeProject()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/digest.test.ts",
+ "source_location": "L27",
+ "_origin": "ast",
+ "community": 83,
+ "norm_label": "makeproject()",
+ "id": "backend_src_services_chat_tests_digest_test_makeproject",
+ "community_name": "Community 83"
+ },
+ {
+ "label": "errors.test.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/errors.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 90,
+ "norm_label": "errors.test.ts",
+ "id": "backend_src_services_chat_tests_errors_test",
+ "community_name": "Community 90"
+ },
+ {
+ "label": "TEST_ENV",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/errors.test.ts",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 90,
+ "norm_label": "test_env",
+ "id": "backend_src_services_chat_tests_errors_test_test_env",
+ "community_name": "Community 90"
+ },
+ {
+ "label": "guardrails.test.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/guardrails.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 91,
+ "norm_label": "guardrails.test.ts",
+ "id": "backend_src_services_chat_tests_guardrails_test",
+ "community_name": "Community 91"
+ },
+ {
+ "label": "TEST_ENV",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/guardrails.test.ts",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 91,
+ "norm_label": "test_env",
+ "id": "backend_src_services_chat_tests_guardrails_test_test_env",
+ "community_name": "Community 91"
+ },
+ {
+ "label": "retry.test.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/retry.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 85,
+ "norm_label": "retry.test.ts",
+ "id": "backend_src_services_chat_tests_retry_test",
+ "community_name": "Community 85"
+ },
+ {
+ "label": "wallClockNow",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/retry.test.ts",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 85,
+ "norm_label": "wallclocknow",
+ "id": "backend_src_services_chat_tests_retry_test_wallclocknow",
+ "community_name": "Community 85"
+ },
+ {
+ "label": "TEST_ENV",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/retry.test.ts",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 85,
+ "norm_label": "test_env",
+ "id": "backend_src_services_chat_tests_retry_test_test_env",
+ "community_name": "Community 85"
+ },
+ {
+ "label": "streamChat.test.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/streamChat.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 67,
+ "norm_label": "streamchat.test.ts",
+ "id": "backend_src_services_chat_tests_streamchat_test",
+ "community_name": "Community 67"
+ },
+ {
+ "label": "TEST_ENV",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/streamChat.test.ts",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 67,
+ "norm_label": "test_env",
+ "id": "backend_src_services_chat_tests_streamchat_test_test_env",
+ "community_name": "Community 67"
+ },
+ {
+ "label": "LoadedStreamChatModule",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/streamChat.test.ts",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 67,
+ "norm_label": "loadedstreamchatmodule",
+ "id": "backend_src_services_chat_tests_streamchat_test_loadedstreamchatmodule",
+ "community_name": "Community 67"
+ },
+ {
+ "label": "makeProject()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/streamChat.test.ts",
+ "source_location": "L23",
+ "_origin": "ast",
+ "community": 67,
+ "norm_label": "makeproject()",
+ "id": "backend_src_services_chat_tests_streamchat_test_makeproject",
+ "community_name": "Community 67"
+ },
+ {
+ "label": "makeRequest()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/streamChat.test.ts",
+ "source_location": "L37",
+ "_origin": "ast",
+ "community": 67,
+ "norm_label": "makerequest()",
+ "id": "backend_src_services_chat_tests_streamchat_test_makerequest",
+ "community_name": "Community 67"
+ },
+ {
+ "label": "makeResponse()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/streamChat.test.ts",
+ "source_location": "L52",
+ "_origin": "ast",
+ "community": 67,
+ "norm_label": "makeresponse()",
+ "id": "backend_src_services_chat_tests_streamchat_test_makeresponse",
+ "community_name": "Community 67"
+ },
+ {
+ "label": "streamChunks()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/streamChat.test.ts",
+ "source_location": "L68",
+ "_origin": "ast",
+ "community": 67,
+ "norm_label": "streamchunks()",
+ "id": "backend_src_services_chat_tests_streamchat_test_streamchunks",
+ "community_name": "Community 67"
+ },
+ {
+ "label": "loadStreamChat()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/__tests__/streamChat.test.ts",
+ "source_location": "L74",
+ "_origin": "ast",
+ "community": 67,
+ "norm_label": "loadstreamchat()",
+ "id": "backend_src_services_chat_tests_streamchat_test_loadstreamchat",
+ "community_name": "Community 67"
+ },
+ {
+ "label": "chat/client.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/client.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 30,
+ "norm_label": "chat/client.ts",
+ "id": "backend_src_services_chat_client",
+ "community_name": "Community 30"
+ },
+ {
+ "label": "ClientMode",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/client.ts",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 30,
+ "norm_label": "clientmode",
+ "id": "backend_src_services_chat_client_clientmode",
+ "community_name": "Community 30"
+ },
+ {
+ "label": "getGenAIClient()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/client.ts",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 30,
+ "norm_label": "getgenaiclient()",
+ "id": "backend_src_services_chat_client_getgenaiclient",
+ "community_name": "Community 30"
+ },
+ {
+ "label": "invalidateForAuthFailure()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/client.ts",
+ "source_location": "L55",
+ "_origin": "ast",
+ "community": 30,
+ "norm_label": "invalidateforauthfailure()",
+ "id": "backend_src_services_chat_client_invalidateforauthfailure",
+ "community_name": "Community 30"
+ },
+ {
+ "label": "__resetClientForTests()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/client.ts",
+ "source_location": "L67",
+ "_origin": "ast",
+ "community": 30,
+ "norm_label": "__resetclientfortests()",
+ "id": "backend_src_services_chat_client_resetclientfortests",
+ "community_name": "Community 30"
+ },
+ {
+ "label": "digest.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "digest.ts",
+ "id": "backend_src_services_chat_digest",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "MONTH_LABELS",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "month_labels",
+ "id": "backend_src_services_chat_digest_month_labels",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "solarPanelSchema",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "solarpanelschema",
+ "id": "backend_src_services_chat_digest_solarpanelschema",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "ChatProject",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L32",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "chatproject",
+ "id": "backend_src_services_chat_digest_chatproject",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "ChatPage",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L33",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "chatpage",
+ "id": "backend_src_services_chat_digest_chatpage",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "renderProjectDigest()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L44",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "renderprojectdigest()",
+ "id": "backend_src_services_chat_digest_renderprojectdigest",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "renderProjectBlock()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L61",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "renderprojectblock()",
+ "id": "backend_src_services_chat_digest_renderprojectblock",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "renderLayoutBlock()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L84",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "renderlayoutblock()",
+ "id": "backend_src_services_chat_digest_renderlayoutblock",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "renderAnalysisBlock()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L99",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "renderanalysisblock()",
+ "id": "backend_src_services_chat_digest_renderanalysisblock",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "renderMonthlyBreakdownTable()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L153",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "rendermonthlybreakdowntable()",
+ "id": "backend_src_services_chat_digest_rendermonthlybreakdowntable",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "describeInverterReplacements()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L173",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "describeinverterreplacements()",
+ "id": "backend_src_services_chat_digest_describeinverterreplacements",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "parseAnalysisConfig()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L186",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "parseanalysisconfig()",
+ "id": "backend_src_services_chat_digest_parseanalysisconfig",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "parseAnalysisResults()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L191",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "parseanalysisresults()",
+ "id": "backend_src_services_chat_digest_parseanalysisresults",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "parseLayoutPreferences()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L196",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "parselayoutpreferences()",
+ "id": "backend_src_services_chat_digest_parselayoutpreferences",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "parseEditedLayout()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L201",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "parseeditedlayout()",
+ "id": "backend_src_services_chat_digest_parseeditedlayout",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "parseBuildingInsights()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L206",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "parsebuildinginsights()",
+ "id": "backend_src_services_chat_digest_parsebuildinginsights",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "countActivePanels()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L211",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "countactivepanels()",
+ "id": "backend_src_services_chat_digest_countactivepanels",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "bucketByOrientation()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L215",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "bucketbyorientation()",
+ "id": "backend_src_services_chat_digest_bucketbyorientation",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "countSegmentsUsed()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L250",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "countsegmentsused()",
+ "id": "backend_src_services_chat_digest_countsegmentsused",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "formatRm()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L269",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "formatrm()",
+ "id": "backend_src_services_chat_digest_formatrm",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "formatNumber()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L273",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "formatnumber()",
+ "id": "backend_src_services_chat_digest_formatnumber",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "formatMaybeNumber()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L277",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "formatmaybenumber()",
+ "id": "backend_src_services_chat_digest_formatmaybenumber",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "formatPercent()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L281",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "formatpercent()",
+ "id": "backend_src_services_chat_digest_formatpercent",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "formatRate()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L285",
+ "_origin": "ast",
+ "community": 16,
+ "norm_label": "formatrate()",
+ "id": "backend_src_services_chat_digest_formatrate",
+ "community_name": "Community 16"
+ },
+ {
+ "label": "chat/errors.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/errors.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 52,
+ "norm_label": "chat/errors.ts",
+ "id": "backend_src_services_chat_errors",
+ "community_name": "Community 52"
+ },
+ {
+ "label": "ErrorCategory",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/errors.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 52,
+ "norm_label": "errorcategory",
+ "id": "backend_src_services_chat_errors_errorcategory",
+ "community_name": "Community 52"
+ },
+ {
+ "label": "ChatLanguage",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/errors.ts",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 52,
+ "norm_label": "chatlanguage",
+ "id": "backend_src_services_chat_errors_chatlanguage",
+ "community_name": "Community 52"
+ },
+ {
+ "label": "getErrorCode()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/errors.ts",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 52,
+ "norm_label": "geterrorcode()",
+ "id": "backend_src_services_chat_errors_geterrorcode",
+ "community_name": "Community 52"
+ },
+ {
+ "label": "categoriseError()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/errors.ts",
+ "source_location": "L28",
+ "_origin": "ast",
+ "community": 52,
+ "norm_label": "categoriseerror()",
+ "id": "backend_src_services_chat_errors_categoriseerror",
+ "community_name": "Community 52"
+ },
+ {
+ "label": "redactErrorMessage()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/errors.ts",
+ "source_location": "L51",
+ "_origin": "ast",
+ "community": 52,
+ "norm_label": "redacterrormessage()",
+ "id": "backend_src_services_chat_errors_redacterrormessage",
+ "community_name": "Community 52"
+ },
+ {
+ "label": "localiseErrorMessage()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/errors.ts",
+ "source_location": "L61",
+ "_origin": "ast",
+ "community": 52,
+ "norm_label": "localiseerrormessage()",
+ "id": "backend_src_services_chat_errors_localiseerrormessage",
+ "community_name": "Community 52"
+ },
+ {
+ "label": "guardrails.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/guardrails.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 30,
+ "norm_label": "guardrails.ts",
+ "id": "backend_src_services_chat_guardrails",
+ "community_name": "Community 30"
+ },
+ {
+ "label": "PATTERNS",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/guardrails.ts",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 30,
+ "norm_label": "patterns",
+ "id": "backend_src_services_chat_guardrails_patterns",
+ "community_name": "Community 30"
+ },
+ {
+ "label": "GuardResult",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/guardrails.ts",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 30,
+ "norm_label": "guardresult",
+ "id": "backend_src_services_chat_guardrails_guardresult",
+ "community_name": "Community 30"
+ },
+ {
+ "label": "validateChatInput()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/guardrails.ts",
+ "source_location": "L33",
+ "_origin": "ast",
+ "community": 30,
+ "norm_label": "validatechatinput()",
+ "id": "backend_src_services_chat_guardrails_validatechatinput",
+ "community_name": "Community 30"
+ },
+ {
+ "label": "chat/index.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 30,
+ "norm_label": "chat/index.ts",
+ "id": "backend_src_services_chat_index",
+ "community_name": "Community 30"
+ },
+ {
+ "label": "ChatProject",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 30,
+ "norm_label": "chatproject",
+ "id": "backend_src_services_chat_index_chatproject",
+ "community_name": "Community 30"
+ },
+ {
+ "label": "ChatEvent",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 30,
+ "norm_label": "chatevent",
+ "id": "backend_src_services_chat_index_chatevent",
+ "community_name": "Community 30"
+ },
+ {
+ "label": "PROCESSING_MESSAGE",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 30,
+ "norm_label": "processing_message",
+ "id": "backend_src_services_chat_index_processing_message",
+ "community_name": "Community 30"
+ },
+ {
+ "label": "streamChat()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L28",
+ "_origin": "ast",
+ "community": 30,
+ "norm_label": "streamchat()",
+ "id": "backend_src_services_chat_index_streamchat",
+ "community_name": "Community 30"
+ },
+ {
+ "label": "setSseHeaders()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L157",
+ "_origin": "ast",
+ "community": 30,
+ "norm_label": "setsseheaders()",
+ "id": "backend_src_services_chat_index_setsseheaders",
+ "community_name": "Community 30"
+ },
+ {
+ "label": "writeSse()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L167",
+ "_origin": "ast",
+ "community": 30,
+ "norm_label": "writesse()",
+ "id": "backend_src_services_chat_index_writesse",
+ "community_name": "Community 30"
+ },
+ {
+ "label": "buildContents()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L171",
+ "_origin": "ast",
+ "community": 30,
+ "norm_label": "buildcontents()",
+ "id": "backend_src_services_chat_index_buildcontents",
+ "community_name": "Community 30"
+ },
+ {
+ "label": "knowledge.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/knowledge.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 37,
+ "norm_label": "knowledge.ts",
+ "id": "backend_src_services_chat_knowledge",
+ "community_name": "Community 37"
+ },
+ {
+ "label": "__dirname",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/knowledge.ts",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 37,
+ "norm_label": "__dirname",
+ "id": "backend_src_services_chat_knowledge_dirname",
+ "community_name": "Community 37"
+ },
+ {
+ "label": "KNOWLEDGE_PATH",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/knowledge.ts",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 37,
+ "norm_label": "knowledge_path",
+ "id": "backend_src_services_chat_knowledge_knowledge_path",
+ "community_name": "Community 37"
+ },
+ {
+ "label": "loadKnowledgeBible()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/knowledge.ts",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 37,
+ "norm_label": "loadknowledgebible()",
+ "id": "backend_src_services_chat_knowledge_loadknowledgebible",
+ "community_name": "Community 37"
+ },
+ {
+ "label": "renderKnowledgeForPrompt()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/knowledge.ts",
+ "source_location": "L32",
+ "_origin": "ast",
+ "community": 37,
+ "norm_label": "renderknowledgeforprompt()",
+ "id": "backend_src_services_chat_knowledge_renderknowledgeforprompt",
+ "community_name": "Community 37"
+ },
+ {
+ "label": "parseSections()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/knowledge.ts",
+ "source_location": "L36",
+ "_origin": "ast",
+ "community": 37,
+ "norm_label": "parsesections()",
+ "id": "backend_src_services_chat_knowledge_parsesections",
+ "community_name": "Community 37"
+ },
+ {
+ "label": "prompt.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 37,
+ "norm_label": "prompt.ts",
+ "id": "backend_src_services_chat_prompt",
+ "community_name": "Community 37"
+ },
+ {
+ "label": "ChatProject",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 37,
+ "norm_label": "chatproject",
+ "id": "backend_src_services_chat_prompt_chatproject",
+ "community_name": "Community 37"
+ },
+ {
+ "label": "ChatPage",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 37,
+ "norm_label": "chatpage",
+ "id": "backend_src_services_chat_prompt_chatpage",
+ "community_name": "Community 37"
+ },
+ {
+ "label": "ChatLanguage",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 37,
+ "norm_label": "chatlanguage",
+ "id": "backend_src_services_chat_prompt_chatlanguage",
+ "community_name": "Community 37"
+ },
+ {
+ "label": "LANGUAGE_META",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 37,
+ "norm_label": "language_meta",
+ "id": "backend_src_services_chat_prompt_language_meta",
+ "community_name": "Community 37"
+ },
+ {
+ "label": "buildSystemInstruction()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L59",
+ "_origin": "ast",
+ "community": 37,
+ "norm_label": "buildsysteminstruction()",
+ "id": "backend_src_services_chat_prompt_buildsysteminstruction",
+ "community_name": "Community 37"
+ },
+ {
+ "label": "renderLanguageLayer()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L79",
+ "_origin": "ast",
+ "community": 37,
+ "norm_label": "renderlanguagelayer()",
+ "id": "backend_src_services_chat_prompt_renderlanguagelayer",
+ "community_name": "Community 37"
+ },
+ {
+ "label": "renderPersonaLayer()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L91",
+ "_origin": "ast",
+ "community": 37,
+ "norm_label": "renderpersonalayer()",
+ "id": "backend_src_services_chat_prompt_renderpersonalayer",
+ "community_name": "Community 37"
+ },
+ {
+ "label": "renderRulesLayer()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L98",
+ "_origin": "ast",
+ "community": 37,
+ "norm_label": "renderruleslayer()",
+ "id": "backend_src_services_chat_prompt_renderruleslayer",
+ "community_name": "Community 37"
+ },
+ {
+ "label": "retry.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/retry.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 52,
+ "norm_label": "retry.ts",
+ "id": "backend_src_services_chat_retry",
+ "community_name": "Community 52"
+ },
+ {
+ "label": "generateWithRetry()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/retry.ts",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 52,
+ "norm_label": "generatewithretry()",
+ "id": "backend_src_services_chat_retry_generatewithretry",
+ "community_name": "Community 52"
+ },
+ {
+ "label": "isRetryable()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/retry.ts",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 52,
+ "norm_label": "isretryable()",
+ "id": "backend_src_services_chat_retry_isretryable",
+ "community_name": "Community 52"
+ },
+ {
+ "label": "sleep()",
+ "file_type": "code",
+ "source_file": "backend/src/services/chat/retry.ts",
+ "source_location": "L29",
+ "_origin": "ast",
+ "community": 52,
+ "norm_label": "sleep()",
+ "id": "backend_src_services_chat_retry_sleep",
+ "community_name": "Community 52"
+ },
+ {
+ "label": "fluxRecomputeService.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "fluxrecomputeservice.ts",
+ "id": "backend_src_services_fluxrecomputeservice",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "FluxLocationData",
+ "file_type": "code",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "fluxlocationdata",
+ "id": "backend_src_services_fluxrecomputeservice_fluxlocationdata",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "ValidatedLocation",
+ "file_type": "code",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L26",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "validatedlocation",
+ "id": "backend_src_services_fluxrecomputeservice_validatedlocation",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "validateFluxLocation()",
+ "file_type": "code",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "validatefluxlocation()",
+ "id": "backend_src_services_fluxrecomputeservice_validatefluxlocation",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "loadFluxData()",
+ "file_type": "code",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L62",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "loadfluxdata()",
+ "id": "backend_src_services_fluxrecomputeservice_loadfluxdata",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "recomputeSinglePanel()",
+ "file_type": "code",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L78",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "recomputesinglepanel()",
+ "id": "backend_src_services_fluxrecomputeservice_recomputesinglepanel",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "recomputeBatchPanels()",
+ "file_type": "code",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L112",
+ "_origin": "ast",
+ "community": 2,
+ "norm_label": "recomputebatchpanels()",
+ "id": "backend_src_services_fluxrecomputeservice_recomputebatchpanels",
+ "community_name": "Community 2"
+ },
+ {
+ "label": "geoTiffService.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 40,
+ "norm_label": "geotiffservice.ts",
+ "id": "backend_src_services_geotiffservice",
+ "community_name": "Community 40"
+ },
+ {
+ "label": "ImageGeoTransform",
+ "file_type": "code",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 31,
+ "norm_label": "imagegeotransform",
+ "id": "backend_src_services_geotiffservice_imagegeotransform",
+ "community_name": "Community 31"
+ },
+ {
+ "label": "RoofMaskResult",
+ "file_type": "code",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L29",
+ "_origin": "ast",
+ "community": 31,
+ "norm_label": "roofmaskresult",
+ "id": "backend_src_services_geotiffservice_roofmaskresult",
+ "community_name": "Community 31"
+ },
+ {
+ "label": "loadGeoTIFFWithFallback()",
+ "file_type": "code",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L45",
+ "_origin": "ast",
+ "community": 40,
+ "norm_label": "loadgeotiffwithfallback()",
+ "id": "backend_src_services_geotiffservice_loadgeotiffwithfallback",
+ "community_name": "Community 40"
+ },
+ {
+ "label": "uniquePaths()",
+ "file_type": "code",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L79",
+ "_origin": "ast",
+ "community": 40,
+ "norm_label": "uniquepaths()",
+ "id": "backend_src_services_geotiffservice_uniquepaths",
+ "community_name": "Community 40"
+ },
+ {
+ "label": "loadReferenceGeoTransform()",
+ "file_type": "code",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L89",
+ "_origin": "ast",
+ "community": 40,
+ "norm_label": "loadreferencegeotransform()",
+ "id": "backend_src_services_geotiffservice_loadreferencegeotransform",
+ "community_name": "Community 40"
+ },
+ {
+ "label": "loadRoofMask()",
+ "file_type": "code",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L111",
+ "_origin": "ast",
+ "community": 40,
+ "norm_label": "loadroofmask()",
+ "id": "backend_src_services_geotiffservice_loadroofmask",
+ "community_name": "Community 40"
+ },
+ {
+ "label": "locationPipeline.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "locationpipeline.ts",
+ "id": "backend_src_services_locationpipeline",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "runLocationPipeline()",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline.ts",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "runlocationpipeline()",
+ "id": "backend_src_services_locationpipeline_runlocationpipeline",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "convert.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline/convert.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 66,
+ "norm_label": "convert.ts",
+ "id": "backend_src_services_locationpipeline_convert",
+ "community_name": "Community 66"
+ },
+ {
+ "label": "toArrayBuffer()",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline/convert.ts",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 66,
+ "norm_label": "toarraybuffer()",
+ "id": "backend_src_services_locationpipeline_convert_toarraybuffer",
+ "community_name": "Community 66"
+ },
+ {
+ "label": "convertRgbTiffToPng()",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline/convert.ts",
+ "source_location": "L30",
+ "_origin": "ast",
+ "community": 66,
+ "norm_label": "convertrgbtifftopng()",
+ "id": "backend_src_services_locationpipeline_convert_convertrgbtifftopng",
+ "community_name": "Community 66"
+ },
+ {
+ "label": "fetch.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "fetch.ts",
+ "id": "backend_src_services_locationpipeline_fetch",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "LAYER_FILENAMES",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L27",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "layer_filenames",
+ "id": "backend_src_services_locationpipeline_fetch_layer_filenames",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "SolarLayerKey",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L38",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "solarlayerkey",
+ "id": "backend_src_services_locationpipeline_fetch_solarlayerkey",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "DownloadedLayer",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L43",
+ "_origin": "ast",
+ "community": 66,
+ "norm_label": "downloadedlayer",
+ "id": "backend_src_services_locationpipeline_fetch_downloadedlayer",
+ "community_name": "Community 66"
+ },
+ {
+ "label": "PipelineFetchResult",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L52",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "pipelinefetchresult",
+ "id": "backend_src_services_locationpipeline_fetch_pipelinefetchresult",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "downloadLayer()",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L65",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "downloadlayer()",
+ "id": "backend_src_services_locationpipeline_fetch_downloadlayer",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "fetchLocationPipelineInputs()",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L90",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "fetchlocationpipelineinputs()",
+ "id": "backend_src_services_locationpipeline_fetch_fetchlocationpipelineinputs",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "getLayerUrl()",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L129",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "getlayerurl()",
+ "id": "backend_src_services_locationpipeline_fetch_getlayerurl",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "persist.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline/persist.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "persist.ts",
+ "id": "backend_src_services_locationpipeline_persist",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "serializeJsonValue()",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline/persist.ts",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "serializejsonvalue()",
+ "id": "backend_src_services_locationpipeline_persist_serializejsonvalue",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "persistLocationPipelineSuccess()",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline/persist.ts",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "persistlocationpipelinesuccess()",
+ "id": "backend_src_services_locationpipeline_persist_persistlocationpipelinesuccess",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "persistLocationPipelineFailure()",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline/persist.ts",
+ "source_location": "L50",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "persistlocationpipelinefailure()",
+ "id": "backend_src_services_locationpipeline_persist_persistlocationpipelinefailure",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "store.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline/store.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 66,
+ "norm_label": "store.ts",
+ "id": "backend_src_services_locationpipeline_store",
+ "community_name": "Community 66"
+ },
+ {
+ "label": "StoredLocationAssets",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline/store.ts",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 66,
+ "norm_label": "storedlocationassets",
+ "id": "backend_src_services_locationpipeline_store_storedlocationassets",
+ "community_name": "Community 66"
+ },
+ {
+ "label": "storeLocationPipelineAssets()",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationPipeline/store.ts",
+ "source_location": "L30",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "storelocationpipelineassets()",
+ "id": "backend_src_services_locationpipeline_store_storelocationpipelineassets",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "locationService.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 26,
+ "norm_label": "locationservice.ts",
+ "id": "backend_src_services_locationservice",
+ "community_name": "Community 26"
+ },
+ {
+ "label": "ResolveLocationResult",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 26,
+ "norm_label": "resolvelocationresult",
+ "id": "backend_src_services_locationservice_resolvelocationresult",
+ "community_name": "Community 26"
+ },
+ {
+ "label": "linkOwnedProjectToLocation()",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L51",
+ "_origin": "ast",
+ "community": 26,
+ "norm_label": "linkownedprojecttolocation()",
+ "id": "backend_src_services_locationservice_linkownedprojecttolocation",
+ "community_name": "Community 26"
+ },
+ {
+ "label": "resolveLocation()",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L70",
+ "_origin": "ast",
+ "community": 26,
+ "norm_label": "resolvelocation()",
+ "id": "backend_src_services_locationservice_resolvelocation",
+ "community_name": "Community 26"
+ },
+ {
+ "label": "resolveLocationResponse()",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L144",
+ "_origin": "ast",
+ "community": 26,
+ "norm_label": "resolvelocationresponse()",
+ "id": "backend_src_services_locationservice_resolvelocationresponse",
+ "community_name": "Community 26"
+ },
+ {
+ "label": "probeLocation()",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L163",
+ "_origin": "ast",
+ "community": 26,
+ "norm_label": "probelocation()",
+ "id": "backend_src_services_locationservice_probelocation",
+ "community_name": "Community 26"
+ },
+ {
+ "label": "getLocationStatusForUser()",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L175",
+ "_origin": "ast",
+ "community": 26,
+ "norm_label": "getlocationstatusforuser()",
+ "id": "backend_src_services_locationservice_getlocationstatusforuser",
+ "community_name": "Community 26"
+ },
+ {
+ "label": "getLocationStatusResponseForUser()",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L198",
+ "_origin": "ast",
+ "community": 26,
+ "norm_label": "getlocationstatusresponseforuser()",
+ "id": "backend_src_services_locationservice_getlocationstatusresponseforuser",
+ "community_name": "Community 26"
+ },
+ {
+ "label": "getLocationDataForUser()",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L210",
+ "_origin": "ast",
+ "community": 26,
+ "norm_label": "getlocationdataforuser()",
+ "id": "backend_src_services_locationservice_getlocationdataforuser",
+ "community_name": "Community 26"
+ },
+ {
+ "label": "getLocationDataResponseForUser()",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L223",
+ "_origin": "ast",
+ "community": 40,
+ "norm_label": "getlocationdataresponseforuser()",
+ "id": "backend_src_services_locationservice_getlocationdataresponseforuser",
+ "community_name": "Community 40"
+ },
+ {
+ "label": "getOverlayResponseForUser()",
+ "file_type": "code",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L250",
+ "_origin": "ast",
+ "community": 26,
+ "norm_label": "getoverlayresponseforuser()",
+ "id": "backend_src_services_locationservice_getoverlayresponseforuser",
+ "community_name": "Community 26"
+ },
+ {
+ "label": "overlayService.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 58,
+ "norm_label": "overlayservice.ts",
+ "id": "backend_src_services_overlayservice",
+ "community_name": "Community 58"
+ },
+ {
+ "label": "OverlayType",
+ "file_type": "code",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L31",
+ "_origin": "ast",
+ "community": 58,
+ "norm_label": "overlaytype",
+ "id": "backend_src_services_overlayservice_overlaytype",
+ "community_name": "Community 58"
+ },
+ {
+ "label": "ColorStop",
+ "file_type": "code",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L34",
+ "_origin": "ast",
+ "community": 58,
+ "norm_label": "colorstop",
+ "id": "backend_src_services_overlayservice_colorstop",
+ "community_name": "Community 58"
+ },
+ {
+ "label": "lerpColor()",
+ "file_type": "code",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L49",
+ "_origin": "ast",
+ "community": 58,
+ "norm_label": "lerpcolor()",
+ "id": "backend_src_services_overlayservice_lerpcolor",
+ "community_name": "Community 58"
+ },
+ {
+ "label": "fluxStops",
+ "file_type": "code",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L71",
+ "_origin": "ast",
+ "community": 58,
+ "norm_label": "fluxstops",
+ "id": "backend_src_services_overlayservice_fluxstops",
+ "community_name": "Community 58"
+ },
+ {
+ "label": "dsmStops",
+ "file_type": "code",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L85",
+ "_origin": "ast",
+ "community": 58,
+ "norm_label": "dsmstops",
+ "id": "backend_src_services_overlayservice_dsmstops",
+ "community_name": "Community 58"
+ },
+ {
+ "label": "maskStops",
+ "file_type": "code",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L99",
+ "_origin": "ast",
+ "community": 58,
+ "norm_label": "maskstops",
+ "id": "backend_src_services_overlayservice_maskstops",
+ "community_name": "Community 58"
+ },
+ {
+ "label": "getStopsForType()",
+ "file_type": "code",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L104",
+ "_origin": "ast",
+ "community": 58,
+ "norm_label": "getstopsfortype()",
+ "id": "backend_src_services_overlayservice_getstopsfortype",
+ "community_name": "Community 58"
+ },
+ {
+ "label": "resolveTifPath()",
+ "file_type": "code",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L117",
+ "_origin": "ast",
+ "community": 26,
+ "norm_label": "resolvetifpath()",
+ "id": "backend_src_services_overlayservice_resolvetifpath",
+ "community_name": "Community 26"
+ },
+ {
+ "label": "getOrGenerateOverlay()",
+ "file_type": "code",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L151",
+ "_origin": "ast",
+ "community": 58,
+ "norm_label": "getorgenerateoverlay()",
+ "id": "backend_src_services_overlayservice_getorgenerateoverlay",
+ "community_name": "Community 58"
+ },
+ {
+ "label": "pdfTokenService.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/pdfTokenService.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 47,
+ "norm_label": "pdftokenservice.ts",
+ "id": "backend_src_services_pdftokenservice",
+ "community_name": "Community 47"
+ },
+ {
+ "label": "TOKEN_TYPE",
+ "file_type": "code",
+ "source_file": "backend/src/services/pdfTokenService.ts",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 47,
+ "norm_label": "token_type",
+ "id": "backend_src_services_pdftokenservice_token_type",
+ "community_name": "Community 47"
+ },
+ {
+ "label": "PdfTokenPayload",
+ "file_type": "code",
+ "source_file": "backend/src/services/pdfTokenService.ts",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 47,
+ "norm_label": "pdftokenpayload",
+ "id": "backend_src_services_pdftokenservice_pdftokenpayload",
+ "community_name": "Community 47"
+ },
+ {
+ "label": "SignedPdfToken",
+ "file_type": "code",
+ "source_file": "backend/src/services/pdfTokenService.ts",
+ "source_location": "L26",
+ "_origin": "ast",
+ "community": 47,
+ "norm_label": "signedpdftoken",
+ "id": "backend_src_services_pdftokenservice_signedpdftoken",
+ "community_name": "Community 47"
+ },
+ {
+ "label": "signPdfToken()",
+ "file_type": "code",
+ "source_file": "backend/src/services/pdfTokenService.ts",
+ "source_location": "L38",
+ "_origin": "ast",
+ "community": 47,
+ "norm_label": "signpdftoken()",
+ "id": "backend_src_services_pdftokenservice_signpdftoken",
+ "community_name": "Community 47"
+ },
+ {
+ "label": "InvalidPdfTokenError",
+ "file_type": "code",
+ "source_file": "backend/src/services/pdfTokenService.ts",
+ "source_location": "L50",
+ "_origin": "ast",
+ "community": 47,
+ "norm_label": "invalidpdftokenerror",
+ "id": "backend_src_services_pdftokenservice_invalidpdftokenerror",
+ "community_name": "Community 47"
+ },
+ {
+ "label": ".constructor()",
+ "file_type": "code",
+ "source_file": "backend/src/services/pdfTokenService.ts",
+ "source_location": "L51",
+ "_origin": "ast",
+ "community": 47,
+ "norm_label": ".constructor()",
+ "id": "backend_src_services_pdftokenservice_invalidpdftokenerror_constructor",
+ "community_name": "Community 47"
+ },
+ {
+ "label": "verifyPdfToken()",
+ "file_type": "code",
+ "source_file": "backend/src/services/pdfTokenService.ts",
+ "source_location": "L63",
+ "_origin": "ast",
+ "community": 47,
+ "norm_label": "verifypdftoken()",
+ "id": "backend_src_services_pdftokenservice_verifypdftoken",
+ "community_name": "Community 47"
+ },
+ {
+ "label": "projectService.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "projectservice.ts",
+ "id": "backend_src_services_projectservice",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "findOwnedProject()",
+ "file_type": "code",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "findownedproject()",
+ "id": "backend_src_services_projectservice_findownedproject",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "createProject()",
+ "file_type": "code",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L39",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "createproject()",
+ "id": "backend_src_services_projectservice_createproject",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "listProjects()",
+ "file_type": "code",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L58",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "listprojects()",
+ "id": "backend_src_services_projectservice_listprojects",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "getProject()",
+ "file_type": "code",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L74",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "getproject()",
+ "id": "backend_src_services_projectservice_getproject",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "saveLayout()",
+ "file_type": "code",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L88",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "savelayout()",
+ "id": "backend_src_services_projectservice_savelayout",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "deleteProject()",
+ "file_type": "code",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L123",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "deleteproject()",
+ "id": "backend_src_services_projectservice_deleteproject",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "updateLayoutPreferences()",
+ "file_type": "code",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L138",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "updatelayoutpreferences()",
+ "id": "backend_src_services_projectservice_updatelayoutpreferences",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "saveAnalysis()",
+ "file_type": "code",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L159",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "saveanalysis()",
+ "id": "backend_src_services_projectservice_saveanalysis",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "getPdfProjectData()",
+ "file_type": "code",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L187",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "getpdfprojectdata()",
+ "id": "backend_src_services_projectservice_getpdfprojectdata",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "solarApiService.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "solarapiservice.ts",
+ "id": "backend_src_services_solarapiservice",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "fetchWithTimeout()",
+ "file_type": "code",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L32",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "fetchwithtimeout()",
+ "id": "backend_src_services_solarapiservice_fetchwithtimeout",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "ImageryQuality",
+ "file_type": "code",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L54",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "imageryquality",
+ "id": "backend_src_services_solarapiservice_imageryquality",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "SolarApiOpts",
+ "file_type": "code",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L59",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "solarapiopts",
+ "id": "backend_src_services_solarapiservice_solarapiopts",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "SolarCoordinate",
+ "file_type": "code",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L69",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "solarcoordinate",
+ "id": "backend_src_services_solarapiservice_solarcoordinate",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "SolarBoundingBox",
+ "file_type": "code",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L77",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "solarboundingbox",
+ "id": "backend_src_services_solarapiservice_solarboundingbox",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "BuildingInsightsApiResponse",
+ "file_type": "code",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L89",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "buildinginsightsapiresponse",
+ "id": "backend_src_services_solarapiservice_buildinginsightsapiresponse",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "DataLayersApiResponse",
+ "file_type": "code",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L102",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "datalayersapiresponse",
+ "id": "backend_src_services_solarapiservice_datalayersapiresponse",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "isRecord()",
+ "file_type": "code",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L111",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "isrecord()",
+ "id": "backend_src_services_solarapiservice_isrecord",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "buildSolarParams()",
+ "file_type": "code",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L119",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "buildsolarparams()",
+ "id": "backend_src_services_solarapiservice_buildsolarparams",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "fetchBuildingInsights()",
+ "file_type": "code",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L140",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "fetchbuildinginsights()",
+ "id": "backend_src_services_solarapiservice_fetchbuildinginsights",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "fetchDataLayers()",
+ "file_type": "code",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L171",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "fetchdatalayers()",
+ "id": "backend_src_services_solarapiservice_fetchdatalayers",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "ProbeResult",
+ "file_type": "code",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L211",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "proberesult",
+ "id": "backend_src_services_solarapiservice_proberesult",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "findBestQualityForLocation()",
+ "file_type": "code",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L234",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "findbestqualityforlocation()",
+ "id": "backend_src_services_solarapiservice_findbestqualityforlocation",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "probeFullChain()",
+ "file_type": "code",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L262",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "probefullchain()",
+ "id": "backend_src_services_solarapiservice_probefullchain",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "probeEndpoint()",
+ "file_type": "code",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L271",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "probeendpoint()",
+ "id": "backend_src_services_solarapiservice_probeendpoint",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "calculateRadius()",
+ "file_type": "code",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L299",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "calculateradius()",
+ "id": "backend_src_services_solarapiservice_calculateradius",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "haversineDistance()",
+ "file_type": "code",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L313",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "haversinedistance()",
+ "id": "backend_src_services_solarapiservice_haversinedistance",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "enrichBuildingInsights()",
+ "file_type": "code",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L334",
+ "_origin": "ast",
+ "community": 6,
+ "norm_label": "enrichbuildinginsights()",
+ "id": "backend_src_services_solarapiservice_enrichbuildinginsights",
+ "community_name": "Community 6"
+ },
+ {
+ "label": "storageService.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/storageService.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 40,
+ "norm_label": "storageservice.ts",
+ "id": "backend_src_services_storageservice",
+ "community_name": "Community 40"
+ },
+ {
+ "label": "uploadToStorage()",
+ "file_type": "code",
+ "source_file": "backend/src/services/storageService.ts",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 58,
+ "norm_label": "uploadtostorage()",
+ "id": "backend_src_services_storageservice_uploadtostorage",
+ "community_name": "Community 58"
+ },
+ {
+ "label": "downloadFromStorage()",
+ "file_type": "code",
+ "source_file": "backend/src/services/storageService.ts",
+ "source_location": "L30",
+ "_origin": "ast",
+ "community": 40,
+ "norm_label": "downloadfromstorage()",
+ "id": "backend_src_services_storageservice_downloadfromstorage",
+ "community_name": "Community 40"
+ },
+ {
+ "label": "getSignedUrl()",
+ "file_type": "code",
+ "source_file": "backend/src/services/storageService.ts",
+ "source_location": "L43",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "getsignedurl()",
+ "id": "backend_src_services_storageservice_getsignedurl",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "userService.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 57,
+ "norm_label": "userservice.ts",
+ "id": "backend_src_services_userservice",
+ "community_name": "Community 57"
+ },
+ {
+ "label": "startOfUtcDay()",
+ "file_type": "code",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 57,
+ "norm_label": "startofutcday()",
+ "id": "backend_src_services_userservice_startofutcday",
+ "community_name": "Community 57"
+ },
+ {
+ "label": "nextUtcMidnight()",
+ "file_type": "code",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L30",
+ "_origin": "ast",
+ "community": 57,
+ "norm_label": "nextutcmidnight()",
+ "id": "backend_src_services_userservice_nextutcmidnight",
+ "community_name": "Community 57"
+ },
+ {
+ "label": "getUserTier()",
+ "file_type": "code",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L42",
+ "_origin": "ast",
+ "community": 57,
+ "norm_label": "getusertier()",
+ "id": "backend_src_services_userservice_getusertier",
+ "community_name": "Community 57"
+ },
+ {
+ "label": "countProjectsSinceUtcMidnight()",
+ "file_type": "code",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L58",
+ "_origin": "ast",
+ "community": 57,
+ "norm_label": "countprojectssinceutcmidnight()",
+ "id": "backend_src_services_userservice_countprojectssinceutcmidnight",
+ "community_name": "Community 57"
+ },
+ {
+ "label": "getQuotaSummary()",
+ "file_type": "code",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L74",
+ "_origin": "ast",
+ "community": 57,
+ "norm_label": "getquotasummary()",
+ "id": "backend_src_services_userservice_getquotasummary",
+ "community_name": "Community 57"
+ },
+ {
+ "label": "locationResponse.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 31,
+ "norm_label": "locationresponse.ts",
+ "id": "backend_src_services_viewmodels_locationresponse",
+ "community_name": "Community 31"
+ },
+ {
+ "label": "LocationDataRouteResponse",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L23",
+ "_origin": "ast",
+ "community": 31,
+ "norm_label": "locationdatarouteresponse",
+ "id": "backend_src_services_viewmodels_locationresponse_locationdatarouteresponse",
+ "community_name": "Community 31"
+ },
+ {
+ "label": "buildResolveLocationResponse()",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 26,
+ "norm_label": "buildresolvelocationresponse()",
+ "id": "backend_src_services_viewmodels_locationresponse_buildresolvelocationresponse",
+ "community_name": "Community 26"
+ },
+ {
+ "label": "buildLocationStatusResponse()",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L45",
+ "_origin": "ast",
+ "community": 26,
+ "norm_label": "buildlocationstatusresponse()",
+ "id": "backend_src_services_viewmodels_locationresponse_buildlocationstatusresponse",
+ "community_name": "Community 26"
+ },
+ {
+ "label": "buildProbeLocationResponse()",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L55",
+ "_origin": "ast",
+ "community": 26,
+ "norm_label": "buildprobelocationresponse()",
+ "id": "backend_src_services_viewmodels_locationresponse_buildprobelocationresponse",
+ "community_name": "Community 26"
+ },
+ {
+ "label": "buildLocationDataResponse()",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L69",
+ "_origin": "ast",
+ "community": 31,
+ "norm_label": "buildlocationdataresponse()",
+ "id": "backend_src_services_viewmodels_locationresponse_buildlocationdataresponse",
+ "community_name": "Community 31"
+ },
+ {
+ "label": "buildOverlayResponse()",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L91",
+ "_origin": "ast",
+ "community": 26,
+ "norm_label": "buildoverlayresponse()",
+ "id": "backend_src_services_viewmodels_locationresponse_buildoverlayresponse",
+ "community_name": "Community 26"
+ },
+ {
+ "label": "buildFluxRecomputeBatchResponse()",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L101",
+ "_origin": "ast",
+ "community": 31,
+ "norm_label": "buildfluxrecomputebatchresponse()",
+ "id": "backend_src_services_viewmodels_locationresponse_buildfluxrecomputebatchresponse",
+ "community_name": "Community 31"
+ },
+ {
+ "label": "projectResponse.ts",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "projectresponse.ts",
+ "id": "backend_src_services_viewmodels_projectresponse",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "billBreakdownSchema",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L40",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "billbreakdownschema",
+ "id": "backend_src_services_viewmodels_projectresponse_billbreakdownschema",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "monthlyBreakdownSchema",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L62",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "monthlybreakdownschema",
+ "id": "backend_src_services_viewmodels_projectresponse_monthlybreakdownschema",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "analysisConfigSchema",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L80",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "analysisconfigschema",
+ "id": "backend_src_services_viewmodels_projectresponse_analysisconfigschema",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "analysisResultsSchema",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L96",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "analysisresultsschema",
+ "id": "backend_src_services_viewmodels_projectresponse_analysisresultsschema",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "layoutPreferencesSchema",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L122",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "layoutpreferencesschema",
+ "id": "backend_src_services_viewmodels_projectresponse_layoutpreferencesschema",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "AnalysisConfigDto",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L132",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "analysisconfigdto",
+ "id": "backend_src_services_viewmodels_projectresponse_analysisconfigdto",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "AnalysisResultsDto",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L134",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "analysisresultsdto",
+ "id": "backend_src_services_viewmodels_projectresponse_analysisresultsdto",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "LayoutPreferencesDto",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L136",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "layoutpreferencesdto",
+ "id": "backend_src_services_viewmodels_projectresponse_layoutpreferencesdto",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "JsonFieldsProject",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L142",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "jsonfieldsproject",
+ "id": "backend_src_services_viewmodels_projectresponse_jsonfieldsproject",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "PdfProjectResponse",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L153",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "pdfprojectresponse",
+ "id": "backend_src_services_viewmodels_projectresponse_pdfprojectresponse",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "isJsonObject()",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L158",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "isjsonobject()",
+ "id": "backend_src_services_viewmodels_projectresponse_isjsonobject",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "parseWithSchema()",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L162",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "parsewithschema()",
+ "id": "backend_src_services_viewmodels_projectresponse_parsewithschema",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "parseAnalysisConfig()",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L171",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "parseanalysisconfig()",
+ "id": "backend_src_services_viewmodels_projectresponse_parseanalysisconfig",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "parseAnalysisResults()",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L179",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "parseanalysisresults()",
+ "id": "backend_src_services_viewmodels_projectresponse_parseanalysisresults",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "parseLayoutPreferences()",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L188",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "parselayoutpreferences()",
+ "id": "backend_src_services_viewmodels_projectresponse_parselayoutpreferences",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "mergeAnalysisConfig()",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L198",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "mergeanalysisconfig()",
+ "id": "backend_src_services_viewmodels_projectresponse_mergeanalysisconfig",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "mergeLayoutPreferences()",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L208",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "mergelayoutpreferences()",
+ "id": "backend_src_services_viewmodels_projectresponse_mergelayoutpreferences",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "serializeJsonValue()",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L217",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "serializejsonvalue()",
+ "id": "backend_src_services_viewmodels_projectresponse_serializejsonvalue",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "normalizeProjectResponse()",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L234",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "normalizeprojectresponse()",
+ "id": "backend_src_services_viewmodels_projectresponse_normalizeprojectresponse",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "buildPdfProjectResponse()",
+ "file_type": "code",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L259",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "buildpdfprojectresponse()",
+ "id": "backend_src_services_viewmodels_projectresponse_buildpdfprojectresponse",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "NOTE: currently a pass-through that shallow-copies the project \u2014 both",
+ "file_type": "rationale",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L224",
+ "_origin": "ast",
+ "community": 9,
+ "norm_label": "note: currently a pass-through that shallow-copies the project \u2014 both",
+ "id": "backend_src_services_viewmodels_projectresponse_rationale_224",
+ "community_name": "Community 9"
+ },
+ {
+ "label": "validators/chat.ts",
+ "file_type": "code",
+ "source_file": "backend/src/validators/chat.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 32,
+ "norm_label": "validators/chat.ts",
+ "id": "backend_src_validators_chat",
+ "community_name": "Community 32"
+ },
+ {
+ "label": "liveStateSchema",
+ "file_type": "code",
+ "source_file": "backend/src/validators/chat.ts",
+ "source_location": "L27",
+ "_origin": "ast",
+ "community": 32,
+ "norm_label": "livestateschema",
+ "id": "backend_src_validators_chat_livestateschema",
+ "community_name": "Community 32"
+ },
+ {
+ "label": "chatRequestSchema",
+ "file_type": "code",
+ "source_file": "backend/src/validators/chat.ts",
+ "source_location": "L42",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "chatrequestschema",
+ "id": "backend_src_validators_chat_chatrequestschema",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "ChatRequest",
+ "file_type": "code",
+ "source_file": "backend/src/validators/chat.ts",
+ "source_location": "L61",
+ "_origin": "ast",
+ "community": 32,
+ "norm_label": "chatrequest",
+ "id": "backend_src_validators_chat_chatrequest",
+ "community_name": "Community 32"
+ },
+ {
+ "label": "ChatLiveState",
+ "file_type": "code",
+ "source_file": "backend/src/validators/chat.ts",
+ "source_location": "L62",
+ "_origin": "ast",
+ "community": 37,
+ "norm_label": "chatlivestate",
+ "id": "backend_src_validators_chat_chatlivestate",
+ "community_name": "Community 37"
+ },
+ {
+ "label": "validators/locations.ts",
+ "file_type": "code",
+ "source_file": "backend/src/validators/locations.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "validators/locations.ts",
+ "id": "backend_src_validators_locations",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "resolveLocationSchema",
+ "file_type": "code",
+ "source_file": "backend/src/validators/locations.ts",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "resolvelocationschema",
+ "id": "backend_src_validators_locations_resolvelocationschema",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "probeLocationSchema",
+ "file_type": "code",
+ "source_file": "backend/src/validators/locations.ts",
+ "source_location": "L29",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "probelocationschema",
+ "id": "backend_src_validators_locations_probelocationschema",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "fluxRecomputeSchema",
+ "file_type": "code",
+ "source_file": "backend/src/validators/locations.ts",
+ "source_location": "L40",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "fluxrecomputeschema",
+ "id": "backend_src_validators_locations_fluxrecomputeschema",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "fluxRecomputeBatchSchema",
+ "file_type": "code",
+ "source_file": "backend/src/validators/locations.ts",
+ "source_location": "L58",
+ "_origin": "ast",
+ "community": 22,
+ "norm_label": "fluxrecomputebatchschema",
+ "id": "backend_src_validators_locations_fluxrecomputebatchschema",
+ "community_name": "Community 22"
+ },
+ {
+ "label": "validators/projects.ts",
+ "file_type": "code",
+ "source_file": "backend/src/validators/projects.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 46,
+ "norm_label": "validators/projects.ts",
+ "id": "backend_src_validators_projects",
+ "community_name": "Community 46"
+ },
+ {
+ "label": "backend/tsconfig.json",
+ "file_type": "code",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 51,
+ "norm_label": "backend/tsconfig.json",
+ "id": "backend_tsconfig",
+ "community_name": "Community 51"
+ },
+ {
+ "label": "extends",
+ "file_type": "code",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 51,
+ "norm_label": "extends",
+ "id": "backend_tsconfig_extends",
+ "community_name": "Community 51"
+ },
+ {
+ "label": "../tsconfig.json",
+ "file_type": "concept",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 51,
+ "norm_label": "../tsconfig.json",
+ "id": "backend_tsconfig_json_ref_tsconfig_json",
+ "community_name": "Community 51"
+ },
+ {
+ "label": "compilerOptions",
+ "file_type": "code",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 51,
+ "norm_label": "compileroptions",
+ "id": "backend_tsconfig_compileroptions",
+ "community_name": "Community 51"
+ },
+ {
+ "label": "outDir",
+ "file_type": "code",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 51,
+ "norm_label": "outdir",
+ "id": "backend_tsconfig_compileroptions_outdir",
+ "community_name": "Community 51"
+ },
+ {
+ "label": "rootDir",
+ "file_type": "code",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 51,
+ "norm_label": "rootdir",
+ "id": "backend_tsconfig_compileroptions_rootdir",
+ "community_name": "Community 51"
+ },
+ {
+ "label": "include",
+ "file_type": "code",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 51,
+ "norm_label": "include",
+ "id": "backend_tsconfig_include",
+ "community_name": "Community 51"
+ },
+ {
+ "label": "src/**/*.ts",
+ "file_type": "concept",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 51,
+ "norm_label": "src/**/*.ts",
+ "id": "backend_tsconfig_json_ref_src_ts",
+ "community_name": "Community 51"
+ },
+ {
+ "label": "exclude",
+ "file_type": "code",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 51,
+ "norm_label": "exclude",
+ "id": "backend_tsconfig_exclude",
+ "community_name": "Community 51"
+ },
+ {
+ "label": "src/**/*.test.ts",
+ "file_type": "concept",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 51,
+ "norm_label": "src/**/*.test.ts",
+ "id": "backend_tsconfig_json_ref_src_test_ts",
+ "community_name": "Community 51"
+ },
+ {
+ "label": "src/**/__tests__/**",
+ "file_type": "concept",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 51,
+ "norm_label": "src/**/__tests__/**",
+ "id": "ref_src_tests",
+ "community_name": "Community 51"
+ },
+ {
+ "label": "references",
+ "file_type": "code",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 51,
+ "norm_label": "references",
+ "id": "backend_tsconfig_references",
+ "community_name": "Community 51"
+ },
+ {
+ "label": "eslint.config.js",
+ "file_type": "code",
+ "source_file": "eslint.config.js",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 68,
+ "norm_label": "eslint.config.js",
+ "id": "eslint_config",
+ "community_name": "Community 68"
+ },
+ {
+ "label": "prettier",
+ "file_type": "code",
+ "source_file": "eslint.config.js",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 68,
+ "norm_label": "prettier",
+ "id": "eslint_config_js_eslint_config_prettier",
+ "community_name": "Community 68"
+ },
+ {
+ "label": "reactHooks",
+ "file_type": "code",
+ "source_file": "eslint.config.js",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 68,
+ "norm_label": "reacthooks",
+ "id": "eslint_config_reacthooks",
+ "community_name": "Community 68"
+ },
+ {
+ "label": "tseslint",
+ "file_type": "code",
+ "source_file": "eslint.config.js",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 68,
+ "norm_label": "tseslint",
+ "id": "eslint_config_tseslint",
+ "community_name": "Community 68"
+ },
+ {
+ "label": "globals",
+ "file_type": "code",
+ "source_file": "eslint.config.js",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 68,
+ "norm_label": "globals",
+ "id": "eslint_config_globals",
+ "community_name": "Community 68"
+ },
+ {
+ "label": "typescriptFiles",
+ "file_type": "code",
+ "source_file": "eslint.config.js",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 68,
+ "norm_label": "typescriptfiles",
+ "id": "eslint_config_typescriptfiles",
+ "community_name": "Community 68"
+ },
+ {
+ "label": "isOff()",
+ "file_type": "code",
+ "source_file": "eslint.config.js",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 68,
+ "norm_label": "isoff()",
+ "id": "eslint_config_isoff",
+ "community_name": "Community 68"
+ },
+ {
+ "label": "warnings()",
+ "file_type": "code",
+ "source_file": "eslint.config.js",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 68,
+ "norm_label": "warnings()",
+ "id": "eslint_config_warnings",
+ "community_name": "Community 68"
+ },
+ {
+ "label": "components.json",
+ "file_type": "code",
+ "source_file": "frontend/components.json",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 33,
+ "norm_label": "components.json",
+ "id": "frontend_components",
+ "community_name": "Community 33"
+ },
+ {
+ "label": "$schema",
+ "file_type": "code",
+ "source_file": "frontend/components.json",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 33,
+ "norm_label": "$schema",
+ "id": "frontend_components_schema",
+ "community_name": "Community 33"
+ },
+ {
+ "label": "style",
+ "file_type": "code",
+ "source_file": "frontend/components.json",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 33,
+ "norm_label": "style",
+ "id": "frontend_components_style",
+ "community_name": "Community 33"
+ },
+ {
+ "label": "rsc",
+ "file_type": "code",
+ "source_file": "frontend/components.json",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 33,
+ "norm_label": "rsc",
+ "id": "frontend_components_rsc",
+ "community_name": "Community 33"
+ },
+ {
+ "label": "tsx",
+ "file_type": "code",
+ "source_file": "frontend/components.json",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 33,
+ "norm_label": "tsx",
+ "id": "frontend_components_tsx",
+ "community_name": "Community 33"
+ },
+ {
+ "label": "tailwind",
+ "file_type": "code",
+ "source_file": "frontend/components.json",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 33,
+ "norm_label": "tailwind",
+ "id": "frontend_components_tailwind",
+ "community_name": "Community 33"
+ },
+ {
+ "label": "config",
+ "file_type": "code",
+ "source_file": "frontend/components.json",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 33,
+ "norm_label": "config",
+ "id": "frontend_components_tailwind_config",
+ "community_name": "Community 33"
+ },
+ {
+ "label": "css",
+ "file_type": "code",
+ "source_file": "frontend/components.json",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 33,
+ "norm_label": "css",
+ "id": "frontend_components_tailwind_css",
+ "community_name": "Community 33"
+ },
+ {
+ "label": "baseColor",
+ "file_type": "code",
+ "source_file": "frontend/components.json",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 33,
+ "norm_label": "basecolor",
+ "id": "frontend_components_tailwind_basecolor",
+ "community_name": "Community 33"
+ },
+ {
+ "label": "cssVariables",
+ "file_type": "code",
+ "source_file": "frontend/components.json",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 33,
+ "norm_label": "cssvariables",
+ "id": "frontend_components_tailwind_cssvariables",
+ "community_name": "Community 33"
+ },
+ {
+ "label": "prefix",
+ "file_type": "code",
+ "source_file": "frontend/components.json",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 33,
+ "norm_label": "prefix",
+ "id": "frontend_components_tailwind_prefix",
+ "community_name": "Community 33"
+ },
+ {
+ "label": "aliases",
+ "file_type": "code",
+ "source_file": "frontend/components.json",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 33,
+ "norm_label": "aliases",
+ "id": "frontend_components_aliases",
+ "community_name": "Community 33"
+ },
+ {
+ "label": "components",
+ "file_type": "code",
+ "source_file": "frontend/components.json",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 33,
+ "norm_label": "components",
+ "id": "frontend_components_aliases_components",
+ "community_name": "Community 33"
+ },
+ {
+ "label": "utils",
+ "file_type": "code",
+ "source_file": "frontend/components.json",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 33,
+ "norm_label": "utils",
+ "id": "frontend_components_aliases_utils",
+ "community_name": "Community 33"
+ },
+ {
+ "label": "ui",
+ "file_type": "code",
+ "source_file": "frontend/components.json",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 33,
+ "norm_label": "ui",
+ "id": "frontend_components_aliases_ui",
+ "community_name": "Community 33"
+ },
+ {
+ "label": "lib",
+ "file_type": "code",
+ "source_file": "frontend/components.json",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 33,
+ "norm_label": "lib",
+ "id": "frontend_components_aliases_lib",
+ "community_name": "Community 33"
+ },
+ {
+ "label": "hooks",
+ "file_type": "code",
+ "source_file": "frontend/components.json",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 33,
+ "norm_label": "hooks",
+ "id": "frontend_components_aliases_hooks",
+ "community_name": "Community 33"
+ },
+ {
+ "label": "frontend/package.json",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "frontend/package.json",
+ "id": "frontend_package",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "name",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "name",
+ "id": "frontend_package_name",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "private",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "private",
+ "id": "frontend_package_private",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "license",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "license",
+ "id": "frontend_package_license",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "type",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "type",
+ "id": "frontend_package_type",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "scripts",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "scripts",
+ "id": "frontend_package_scripts",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "dev",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "dev",
+ "id": "frontend_package_scripts_dev",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "build",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "build",
+ "id": "frontend_package_scripts_build",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "preview",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "preview",
+ "id": "frontend_package_scripts_preview",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "test",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "test",
+ "id": "frontend_package_scripts_test",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "dependencies",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 53,
+ "norm_label": "dependencies",
+ "id": "frontend_package_dependencies",
+ "community_name": "Community 53"
+ },
+ {
+ "label": "@dnd-kit/core",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 93,
+ "norm_label": "@dnd-kit/core",
+ "id": "frontend_package_dependencies_dnd_kit_core",
+ "community_name": "Community 93"
+ },
+ {
+ "label": "@dnd-kit/core",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 93,
+ "norm_label": "@dnd-kit/core",
+ "id": "dnd_kit_core",
+ "community_name": "Community 93"
+ },
+ {
+ "label": "@dnd-kit/sortable",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 94,
+ "norm_label": "@dnd-kit/sortable",
+ "id": "frontend_package_dependencies_dnd_kit_sortable",
+ "community_name": "Community 94"
+ },
+ {
+ "label": "@dnd-kit/sortable",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 94,
+ "norm_label": "@dnd-kit/sortable",
+ "id": "dnd_kit_sortable",
+ "community_name": "Community 94"
+ },
+ {
+ "label": "@dnd-kit/utilities",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 95,
+ "norm_label": "@dnd-kit/utilities",
+ "id": "frontend_package_dependencies_dnd_kit_utilities",
+ "community_name": "Community 95"
+ },
+ {
+ "label": "@dnd-kit/utilities",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 95,
+ "norm_label": "@dnd-kit/utilities",
+ "id": "dnd_kit_utilities",
+ "community_name": "Community 95"
+ },
+ {
+ "label": "@googlemaps/js-api-loader",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 53,
+ "norm_label": "@googlemaps/js-api-loader",
+ "id": "frontend_package_dependencies_googlemaps_js_api_loader",
+ "community_name": "Community 53"
+ },
+ {
+ "label": "@googlemaps/js-api-loader",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 53,
+ "norm_label": "@googlemaps/js-api-loader",
+ "id": "googlemaps_js_api_loader",
+ "community_name": "Community 53"
+ },
+ {
+ "label": "@radix-ui/react-dialog",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 102,
+ "norm_label": "@radix-ui/react-dialog",
+ "id": "frontend_package_dependencies_radix_ui_react_dialog",
+ "community_name": "Community 102"
+ },
+ {
+ "label": "@radix-ui/react-dialog",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 102,
+ "norm_label": "@radix-ui/react-dialog",
+ "id": "radix_ui_react_dialog",
+ "community_name": "Community 102"
+ },
+ {
+ "label": "@radix-ui/react-dropdown-menu",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 103,
+ "norm_label": "@radix-ui/react-dropdown-menu",
+ "id": "frontend_package_dependencies_radix_ui_react_dropdown_menu",
+ "community_name": "Community 103"
+ },
+ {
+ "label": "@radix-ui/react-dropdown-menu",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 103,
+ "norm_label": "@radix-ui/react-dropdown-menu",
+ "id": "radix_ui_react_dropdown_menu",
+ "community_name": "Community 103"
+ },
+ {
+ "label": "@radix-ui/react-label",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 104,
+ "norm_label": "@radix-ui/react-label",
+ "id": "frontend_package_dependencies_radix_ui_react_label",
+ "community_name": "Community 104"
+ },
+ {
+ "label": "@radix-ui/react-label",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 104,
+ "norm_label": "@radix-ui/react-label",
+ "id": "radix_ui_react_label",
+ "community_name": "Community 104"
+ },
+ {
+ "label": "@radix-ui/react-separator",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 105,
+ "norm_label": "@radix-ui/react-separator",
+ "id": "frontend_package_dependencies_radix_ui_react_separator",
+ "community_name": "Community 105"
+ },
+ {
+ "label": "@radix-ui/react-separator",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 105,
+ "norm_label": "@radix-ui/react-separator",
+ "id": "radix_ui_react_separator",
+ "community_name": "Community 105"
+ },
+ {
+ "label": "@radix-ui/react-slider",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 106,
+ "norm_label": "@radix-ui/react-slider",
+ "id": "frontend_package_dependencies_radix_ui_react_slider",
+ "community_name": "Community 106"
+ },
+ {
+ "label": "@radix-ui/react-slider",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 106,
+ "norm_label": "@radix-ui/react-slider",
+ "id": "radix_ui_react_slider",
+ "community_name": "Community 106"
+ },
+ {
+ "label": "@radix-ui/react-slot",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 107,
+ "norm_label": "@radix-ui/react-slot",
+ "id": "frontend_package_dependencies_radix_ui_react_slot",
+ "community_name": "Community 107"
+ },
+ {
+ "label": "@radix-ui/react-slot",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 107,
+ "norm_label": "@radix-ui/react-slot",
+ "id": "radix_ui_react_slot",
+ "community_name": "Community 107"
+ },
+ {
+ "label": "@radix-ui/react-tooltip",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L23",
+ "_origin": "ast",
+ "community": 108,
+ "norm_label": "@radix-ui/react-tooltip",
+ "id": "frontend_package_dependencies_radix_ui_react_tooltip",
+ "community_name": "Community 108"
+ },
+ {
+ "label": "@radix-ui/react-tooltip",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L23",
+ "_origin": "ast",
+ "community": 108,
+ "norm_label": "@radix-ui/react-tooltip",
+ "id": "radix_ui_react_tooltip",
+ "community_name": "Community 108"
+ },
+ {
+ "label": "@react-three/drei",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 115,
+ "norm_label": "@react-three/drei",
+ "id": "frontend_package_dependencies_react_three_drei",
+ "community_name": "Community 115"
+ },
+ {
+ "label": "@react-three/drei",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 115,
+ "norm_label": "@react-three/drei",
+ "id": "react_three_drei",
+ "community_name": "Community 115"
+ },
+ {
+ "label": "@react-three/fiber",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 116,
+ "norm_label": "@react-three/fiber",
+ "id": "frontend_package_dependencies_react_three_fiber",
+ "community_name": "Community 116"
+ },
+ {
+ "label": "@react-three/fiber",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 116,
+ "norm_label": "@react-three/fiber",
+ "id": "react_three_fiber",
+ "community_name": "Community 116"
+ },
+ {
+ "label": "@shared/types",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L26",
+ "_origin": "ast",
+ "community": 118,
+ "norm_label": "@shared/types",
+ "id": "frontend_package_dependencies_shared_types",
+ "community_name": "Community 118"
+ },
+ {
+ "label": "@shared/types",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L26",
+ "_origin": "ast",
+ "community": 118,
+ "norm_label": "@shared/types",
+ "id": "frontend_package_json_shared_types",
+ "community_name": "Community 118"
+ },
+ {
+ "label": "@supabase/supabase-js",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L27",
+ "_origin": "ast",
+ "community": 119,
+ "norm_label": "@supabase/supabase-js",
+ "id": "frontend_package_dependencies_supabase_supabase_js",
+ "community_name": "Community 119"
+ },
+ {
+ "label": "@supabase/supabase-js",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L27",
+ "_origin": "ast",
+ "community": 119,
+ "norm_label": "@supabase/supabase-js",
+ "id": "frontend_package_json_supabase_supabase_js",
+ "community_name": "Community 119"
+ },
+ {
+ "label": "@tanstack/react-query",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L28",
+ "_origin": "ast",
+ "community": 53,
+ "norm_label": "@tanstack/react-query",
+ "id": "frontend_package_dependencies_tanstack_react_query",
+ "community_name": "Community 53"
+ },
+ {
+ "label": "@tanstack/react-query",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L28",
+ "_origin": "ast",
+ "community": 53,
+ "norm_label": "@tanstack/react-query",
+ "id": "tanstack_react_query",
+ "community_name": "Community 53"
+ },
+ {
+ "label": "class-variance-authority",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L29",
+ "_origin": "ast",
+ "community": 53,
+ "norm_label": "class-variance-authority",
+ "id": "frontend_package_dependencies_class_variance_authority",
+ "community_name": "Community 53"
+ },
+ {
+ "label": "class-variance-authority",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L29",
+ "_origin": "ast",
+ "community": 53,
+ "norm_label": "class-variance-authority",
+ "id": "class_variance_authority",
+ "community_name": "Community 53"
+ },
+ {
+ "label": "clsx",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L30",
+ "_origin": "ast",
+ "community": 92,
+ "norm_label": "clsx",
+ "id": "frontend_package_dependencies_clsx",
+ "community_name": "Community 92"
+ },
+ {
+ "label": "clsx",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L30",
+ "_origin": "ast",
+ "community": 92,
+ "norm_label": "clsx",
+ "id": "clsx",
+ "community_name": "Community 92"
+ },
+ {
+ "label": "framer-motion",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L31",
+ "_origin": "ast",
+ "community": 96,
+ "norm_label": "framer-motion",
+ "id": "frontend_package_dependencies_framer_motion",
+ "community_name": "Community 96"
+ },
+ {
+ "label": "framer-motion",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L31",
+ "_origin": "ast",
+ "community": 96,
+ "norm_label": "framer-motion",
+ "id": "framer_motion",
+ "community_name": "Community 96"
+ },
+ {
+ "label": "i18next",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L32",
+ "_origin": "ast",
+ "community": 97,
+ "norm_label": "i18next",
+ "id": "frontend_package_dependencies_i18next",
+ "community_name": "Community 97"
+ },
+ {
+ "label": "i18next",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L32",
+ "_origin": "ast",
+ "community": 97,
+ "norm_label": "i18next",
+ "id": "i18next",
+ "community_name": "Community 97"
+ },
+ {
+ "label": "i18next-browser-languagedetector",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L33",
+ "_origin": "ast",
+ "community": 53,
+ "norm_label": "i18next-browser-languagedetector",
+ "id": "frontend_package_dependencies_i18next_browser_languagedetector",
+ "community_name": "Community 53"
+ },
+ {
+ "label": "i18next-browser-languagedetector",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L33",
+ "_origin": "ast",
+ "community": 53,
+ "norm_label": "i18next-browser-languagedetector",
+ "id": "i18next_browser_languagedetector",
+ "community_name": "Community 53"
+ },
+ {
+ "label": "konva",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L34",
+ "_origin": "ast",
+ "community": 98,
+ "norm_label": "konva",
+ "id": "frontend_package_dependencies_konva",
+ "community_name": "Community 98"
+ },
+ {
+ "label": "konva",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L34",
+ "_origin": "ast",
+ "community": 98,
+ "norm_label": "konva",
+ "id": "konva",
+ "community_name": "Community 98"
+ },
+ {
+ "label": "lucide-react",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 99,
+ "norm_label": "lucide-react",
+ "id": "frontend_package_dependencies_lucide_react",
+ "community_name": "Community 99"
+ },
+ {
+ "label": "lucide-react",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 99,
+ "norm_label": "lucide-react",
+ "id": "lucide_react",
+ "community_name": "Community 99"
+ },
+ {
+ "label": "next-themes",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L36",
+ "_origin": "ast",
+ "community": 100,
+ "norm_label": "next-themes",
+ "id": "frontend_package_dependencies_next_themes",
+ "community_name": "Community 100"
+ },
+ {
+ "label": "next-themes",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L36",
+ "_origin": "ast",
+ "community": 100,
+ "norm_label": "next-themes",
+ "id": "next_themes",
+ "community_name": "Community 100"
+ },
+ {
+ "label": "proj4",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L37",
+ "_origin": "ast",
+ "community": 101,
+ "norm_label": "proj4",
+ "id": "frontend_package_dependencies_proj4",
+ "community_name": "Community 101"
+ },
+ {
+ "label": "proj4",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L37",
+ "_origin": "ast",
+ "community": 101,
+ "norm_label": "proj4",
+ "id": "frontend_package_json_proj4",
+ "community_name": "Community 101"
+ },
+ {
+ "label": "react",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L38",
+ "_origin": "ast",
+ "community": 109,
+ "norm_label": "react",
+ "id": "frontend_package_dependencies_react",
+ "community_name": "Community 109"
+ },
+ {
+ "label": "react",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L38",
+ "_origin": "ast",
+ "community": 109,
+ "norm_label": "react",
+ "id": "react",
+ "community_name": "Community 109"
+ },
+ {
+ "label": "react-dom",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L39",
+ "_origin": "ast",
+ "community": 110,
+ "norm_label": "react-dom",
+ "id": "frontend_package_dependencies_react_dom",
+ "community_name": "Community 110"
+ },
+ {
+ "label": "react-dom",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L39",
+ "_origin": "ast",
+ "community": 110,
+ "norm_label": "react-dom",
+ "id": "react_dom",
+ "community_name": "Community 110"
+ },
+ {
+ "label": "react-hot-toast",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L40",
+ "_origin": "ast",
+ "community": 111,
+ "norm_label": "react-hot-toast",
+ "id": "frontend_package_dependencies_react_hot_toast",
+ "community_name": "Community 111"
+ },
+ {
+ "label": "react-hot-toast",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L40",
+ "_origin": "ast",
+ "community": 111,
+ "norm_label": "react-hot-toast",
+ "id": "react_hot_toast",
+ "community_name": "Community 111"
+ },
+ {
+ "label": "react-i18next",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L41",
+ "_origin": "ast",
+ "community": 112,
+ "norm_label": "react-i18next",
+ "id": "frontend_package_dependencies_react_i18next",
+ "community_name": "Community 112"
+ },
+ {
+ "label": "react-i18next",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L41",
+ "_origin": "ast",
+ "community": 112,
+ "norm_label": "react-i18next",
+ "id": "react_i18next",
+ "community_name": "Community 112"
+ },
+ {
+ "label": "react-konva",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L42",
+ "_origin": "ast",
+ "community": 113,
+ "norm_label": "react-konva",
+ "id": "frontend_package_dependencies_react_konva",
+ "community_name": "Community 113"
+ },
+ {
+ "label": "react-konva",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L42",
+ "_origin": "ast",
+ "community": 113,
+ "norm_label": "react-konva",
+ "id": "react_konva",
+ "community_name": "Community 113"
+ },
+ {
+ "label": "react-markdown",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L43",
+ "_origin": "ast",
+ "community": 53,
+ "norm_label": "react-markdown",
+ "id": "frontend_package_dependencies_react_markdown",
+ "community_name": "Community 53"
+ },
+ {
+ "label": "react-markdown",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L43",
+ "_origin": "ast",
+ "community": 53,
+ "norm_label": "react-markdown",
+ "id": "react_markdown",
+ "community_name": "Community 53"
+ },
+ {
+ "label": "react-router-dom",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L44",
+ "_origin": "ast",
+ "community": 114,
+ "norm_label": "react-router-dom",
+ "id": "frontend_package_dependencies_react_router_dom",
+ "community_name": "Community 114"
+ },
+ {
+ "label": "react-router-dom",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L44",
+ "_origin": "ast",
+ "community": 114,
+ "norm_label": "react-router-dom",
+ "id": "react_router_dom",
+ "community_name": "Community 114"
+ },
+ {
+ "label": "recharts",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L45",
+ "_origin": "ast",
+ "community": 117,
+ "norm_label": "recharts",
+ "id": "frontend_package_dependencies_recharts",
+ "community_name": "Community 117"
+ },
+ {
+ "label": "recharts",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L45",
+ "_origin": "ast",
+ "community": 117,
+ "norm_label": "recharts",
+ "id": "recharts",
+ "community_name": "Community 117"
+ },
+ {
+ "label": "tailwind-merge",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L46",
+ "_origin": "ast",
+ "community": 120,
+ "norm_label": "tailwind-merge",
+ "id": "frontend_package_dependencies_tailwind_merge",
+ "community_name": "Community 120"
+ },
+ {
+ "label": "tailwind-merge",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L46",
+ "_origin": "ast",
+ "community": 120,
+ "norm_label": "tailwind-merge",
+ "id": "tailwind_merge",
+ "community_name": "Community 120"
+ },
+ {
+ "label": "tailwindcss-animate",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L47",
+ "_origin": "ast",
+ "community": 121,
+ "norm_label": "tailwindcss-animate",
+ "id": "frontend_package_dependencies_tailwindcss_animate",
+ "community_name": "Community 121"
+ },
+ {
+ "label": "tailwindcss-animate",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L47",
+ "_origin": "ast",
+ "community": 121,
+ "norm_label": "tailwindcss-animate",
+ "id": "tailwindcss_animate",
+ "community_name": "Community 121"
+ },
+ {
+ "label": "three",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L48",
+ "_origin": "ast",
+ "community": 122,
+ "norm_label": "three",
+ "id": "frontend_package_dependencies_three",
+ "community_name": "Community 122"
+ },
+ {
+ "label": "three",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L48",
+ "_origin": "ast",
+ "community": 122,
+ "norm_label": "three",
+ "id": "three",
+ "community_name": "Community 122"
+ },
+ {
+ "label": "vaul",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L49",
+ "_origin": "ast",
+ "community": 123,
+ "norm_label": "vaul",
+ "id": "frontend_package_dependencies_vaul",
+ "community_name": "Community 123"
+ },
+ {
+ "label": "vaul",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L49",
+ "_origin": "ast",
+ "community": 123,
+ "norm_label": "vaul",
+ "id": "vaul",
+ "community_name": "Community 123"
+ },
+ {
+ "label": "devDependencies",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L51",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "devdependencies",
+ "id": "frontend_package_devdependencies",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "@tailwindcss/vite",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L52",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "@tailwindcss/vite",
+ "id": "frontend_package_devdependencies_tailwindcss_vite",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "@tailwindcss/vite",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L52",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "@tailwindcss/vite",
+ "id": "tailwindcss_vite",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "@testing-library/react",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L53",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "@testing-library/react",
+ "id": "frontend_package_devdependencies_testing_library_react",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "@testing-library/react",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L53",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "@testing-library/react",
+ "id": "testing_library_react",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "@types/google.maps",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L54",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "@types/google.maps",
+ "id": "frontend_package_devdependencies_types_google_maps",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "@types/google.maps",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L54",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "@types/google.maps",
+ "id": "types_google_maps",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "@types/react",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L55",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "@types/react",
+ "id": "frontend_package_devdependencies_types_react",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "@types/react",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L55",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "@types/react",
+ "id": "types_react",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "@types/react-dom",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L56",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "@types/react-dom",
+ "id": "frontend_package_devdependencies_types_react_dom",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "@types/react-dom",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L56",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "@types/react-dom",
+ "id": "types_react_dom",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "@types/three",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L57",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "@types/three",
+ "id": "frontend_package_devdependencies_types_three",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "@types/three",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L57",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "@types/three",
+ "id": "types_three",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "@vitejs/plugin-react",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L58",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "@vitejs/plugin-react",
+ "id": "frontend_package_devdependencies_vitejs_plugin_react",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "@vitejs/plugin-react",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L58",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "@vitejs/plugin-react",
+ "id": "vitejs_plugin_react",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "autoprefixer",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L59",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "autoprefixer",
+ "id": "frontend_package_devdependencies_autoprefixer",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "autoprefixer",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L59",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "autoprefixer",
+ "id": "autoprefixer",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "jsdom",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L60",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "jsdom",
+ "id": "frontend_package_devdependencies_jsdom",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "jsdom",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L60",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "jsdom",
+ "id": "jsdom",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "tailwindcss",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L61",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "tailwindcss",
+ "id": "frontend_package_devdependencies_tailwindcss",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "tailwindcss",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L61",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "tailwindcss",
+ "id": "tailwindcss",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "typescript",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L62",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "typescript",
+ "id": "frontend_package_devdependencies_typescript",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "typescript",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L62",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "typescript",
+ "id": "frontend_package_json_typescript",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "vite",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L63",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "vite",
+ "id": "frontend_package_devdependencies_vite",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "vite",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L63",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "vite",
+ "id": "vite",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "vitest",
+ "file_type": "code",
+ "source_file": "frontend/package.json",
+ "source_location": "L64",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "vitest",
+ "id": "frontend_package_devdependencies_vitest",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "vitest",
+ "file_type": "concept",
+ "source_file": "frontend/package.json",
+ "source_location": "L64",
+ "_origin": "ast",
+ "community": 5,
+ "norm_label": "vitest",
+ "id": "frontend_package_json_vitest",
+ "community_name": "Community 5"
+ },
+ {
+ "label": "postcss.config.js",
+ "file_type": "code",
+ "source_file": "frontend/postcss.config.js",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 125,
+ "norm_label": "postcss.config.js",
+ "id": "frontend_postcss_config",
+ "community_name": "Community 125"
+ },
+ {
+ "label": "App.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "app.tsx",
+ "id": "frontend_src_app",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "DashboardPage",
+ "file_type": "code",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "dashboardpage",
+ "id": "frontend_src_app_dashboardpage",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "ProjectsPage",
+ "file_type": "code",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "projectspage",
+ "id": "frontend_src_app_projectspage",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "FAQPage",
+ "file_type": "code",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "faqpage",
+ "id": "frontend_src_app_faqpage",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "SettingsPage",
+ "file_type": "code",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "settingspage",
+ "id": "frontend_src_app_settingspage",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "MapPage",
+ "file_type": "code",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "mappage",
+ "id": "frontend_src_app_mappage",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "NotFoundPage",
+ "file_type": "code",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "notfoundpage",
+ "id": "frontend_src_app_notfoundpage",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "WorkbenchPage",
+ "file_type": "code",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "workbenchpage",
+ "id": "frontend_src_app_workbenchpage",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "AnalysisPage",
+ "file_type": "code",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L23",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "analysispage",
+ "id": "frontend_src_app_analysispage",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "AnalyticsPage",
+ "file_type": "code",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "analyticspage",
+ "id": "frontend_src_app_analyticspage",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "PdfPreviewPage",
+ "file_type": "code",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "pdfpreviewpage",
+ "id": "frontend_src_app_pdfpreviewpage",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "PrivacyPage",
+ "file_type": "code",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L26",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "privacypage",
+ "id": "frontend_src_app_privacypage",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "PAGE_LOADING_HINTS",
+ "file_type": "code",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L29",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "page_loading_hints",
+ "id": "frontend_src_app_page_loading_hints",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "App()",
+ "file_type": "code",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 38,
+ "norm_label": "app()",
+ "id": "frontend_src_app_app",
+ "community_name": "Community 38"
+ },
+ {
+ "label": "api/client.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/api/client.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 38,
+ "norm_label": "api/client.ts",
+ "id": "frontend_src_api_client",
+ "community_name": "Community 38"
+ },
+ {
+ "label": "ApiError",
+ "file_type": "code",
+ "source_file": "frontend/src/api/client.ts",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "apierror",
+ "id": "frontend_src_api_client_apierror",
+ "community_name": "Community 18"
+ },
+ {
+ "label": ".constructor()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/client.ts",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": ".constructor()",
+ "id": "frontend_src_api_client_apierror_constructor",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "apiFetch()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/client.ts",
+ "source_location": "L39",
+ "_origin": "ast",
+ "community": 27,
+ "norm_label": "apifetch()",
+ "id": "frontend_src_api_client_apifetch",
+ "community_name": "Community 27"
+ },
+ {
+ "label": "api/locations.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 31,
+ "norm_label": "api/locations.ts",
+ "id": "frontend_src_api_locations",
+ "community_name": "Community 31"
+ },
+ {
+ "label": "LocationImageGeoTransform",
+ "file_type": "code",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L37",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "locationimagegeotransform",
+ "id": "frontend_src_api_locations_locationimagegeotransform",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "LocationDataWithGeoTransform",
+ "file_type": "code",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L54",
+ "_origin": "ast",
+ "community": 31,
+ "norm_label": "locationdatawithgeotransform",
+ "id": "frontend_src_api_locations_locationdatawithgeotransform",
+ "community_name": "Community 31"
+ },
+ {
+ "label": "resolveLocation()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L66",
+ "_origin": "ast",
+ "community": 27,
+ "norm_label": "resolvelocation()",
+ "id": "frontend_src_api_locations_resolvelocation",
+ "community_name": "Community 27"
+ },
+ {
+ "label": "probeLocation()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L77",
+ "_origin": "ast",
+ "community": 27,
+ "norm_label": "probelocation()",
+ "id": "frontend_src_api_locations_probelocation",
+ "community_name": "Community 27"
+ },
+ {
+ "label": "getLocationStatus()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L86",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "getlocationstatus()",
+ "id": "frontend_src_api_locations_getlocationstatus",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "getLocationData()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L95",
+ "_origin": "ast",
+ "community": 75,
+ "norm_label": "getlocationdata()",
+ "id": "frontend_src_api_locations_getlocationdata",
+ "community_name": "Community 75"
+ },
+ {
+ "label": "recomputeFlux()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L103",
+ "_origin": "ast",
+ "community": 27,
+ "norm_label": "recomputeflux()",
+ "id": "frontend_src_api_locations_recomputeflux",
+ "community_name": "Community 27"
+ },
+ {
+ "label": "recomputeFluxBatch()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L115",
+ "_origin": "ast",
+ "community": 27,
+ "norm_label": "recomputefluxbatch()",
+ "id": "frontend_src_api_locations_recomputefluxbatch",
+ "community_name": "Community 27"
+ },
+ {
+ "label": "getOverlayUrl()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L127",
+ "_origin": "ast",
+ "community": 60,
+ "norm_label": "getoverlayurl()",
+ "id": "frontend_src_api_locations_getoverlayurl",
+ "community_name": "Community 60"
+ },
+ {
+ "label": "api/projects.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 27,
+ "norm_label": "api/projects.ts",
+ "id": "frontend_src_api_projects",
+ "community_name": "Community 27"
+ },
+ {
+ "label": "ProjectAnalysisConfig",
+ "file_type": "code",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L34",
+ "_origin": "ast",
+ "community": 27,
+ "norm_label": "projectanalysisconfig",
+ "id": "frontend_src_api_projects_projectanalysisconfig",
+ "community_name": "Community 27"
+ },
+ {
+ "label": "ProjectResponse",
+ "file_type": "code",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L47",
+ "_origin": "ast",
+ "community": 41,
+ "norm_label": "projectresponse",
+ "id": "frontend_src_api_projects_projectresponse",
+ "community_name": "Community 41"
+ },
+ {
+ "label": "createProject()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L75",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "createproject()",
+ "id": "frontend_src_api_projects_createproject",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "listProjects()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L83",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "listprojects()",
+ "id": "frontend_src_api_projects_listprojects",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "getProject()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L88",
+ "_origin": "ast",
+ "community": 75,
+ "norm_label": "getproject()",
+ "id": "frontend_src_api_projects_getproject",
+ "community_name": "Community 75"
+ },
+ {
+ "label": "deleteProject()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L93",
+ "_origin": "ast",
+ "community": 27,
+ "norm_label": "deleteproject()",
+ "id": "frontend_src_api_projects_deleteproject",
+ "community_name": "Community 27"
+ },
+ {
+ "label": "saveLayout()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L103",
+ "_origin": "ast",
+ "community": 27,
+ "norm_label": "savelayout()",
+ "id": "frontend_src_api_projects_savelayout",
+ "community_name": "Community 27"
+ },
+ {
+ "label": "saveAnalysis()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L115",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "saveanalysis()",
+ "id": "frontend_src_api_projects_saveanalysis",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "saveLayoutPreferences()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L126",
+ "_origin": "ast",
+ "community": 27,
+ "norm_label": "savelayoutpreferences()",
+ "id": "frontend_src_api_projects_savelayoutpreferences",
+ "community_name": "Community 27"
+ },
+ {
+ "label": "PdfExportToken",
+ "file_type": "code",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L134",
+ "_origin": "ast",
+ "community": 27,
+ "norm_label": "pdfexporttoken",
+ "id": "frontend_src_api_projects_pdfexporttoken",
+ "community_name": "Community 27"
+ },
+ {
+ "label": "requestPdfExportToken()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L140",
+ "_origin": "ast",
+ "community": 59,
+ "norm_label": "requestpdfexporttoken()",
+ "id": "frontend_src_api_projects_requestpdfexporttoken",
+ "community_name": "Community 59"
+ },
+ {
+ "label": "getProjectForPdf()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L145",
+ "_origin": "ast",
+ "community": 41,
+ "norm_label": "getprojectforpdf()",
+ "id": "frontend_src_api_projects_getprojectforpdf",
+ "community_name": "Community 41"
+ },
+ {
+ "label": "api/quota.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/api/quota.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 28,
+ "norm_label": "api/quota.ts",
+ "id": "frontend_src_api_quota",
+ "community_name": "Community 28"
+ },
+ {
+ "label": "getQuota()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/quota.ts",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 28,
+ "norm_label": "getquota()",
+ "id": "frontend_src_api_quota_getquota",
+ "community_name": "Community 28"
+ },
+ {
+ "label": "api/tariff.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/api/tariff.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 29,
+ "norm_label": "api/tariff.ts",
+ "id": "frontend_src_api_tariff",
+ "community_name": "Community 29"
+ },
+ {
+ "label": "getTariffConfig()",
+ "file_type": "code",
+ "source_file": "frontend/src/api/tariff.ts",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 29,
+ "norm_label": "gettariffconfig()",
+ "id": "frontend_src_api_tariff_gettariffconfig",
+ "community_name": "Community 29"
+ },
+ {
+ "label": "AnalysisSidebar.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "analysissidebar.tsx",
+ "id": "frontend_src_components_analysis_analysissidebar",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "AnalysisSidebarProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "analysissidebarprops",
+ "id": "frontend_src_components_analysis_analysissidebar_analysissidebarprops",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "AnalysisSidebar()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L44",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "analysissidebar()",
+ "id": "frontend_src_components_analysis_analysissidebar_analysissidebar",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "BillBreakdown.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "billbreakdown.tsx",
+ "id": "frontend_src_components_analysis_billbreakdown",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SimulationMonth",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "simulationmonth",
+ "id": "frontend_src_components_analysis_billbreakdown_simulationmonth",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "BillBreakdownProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "billbreakdownprops",
+ "id": "frontend_src_components_analysis_billbreakdown_billbreakdownprops",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "BillBreakdown()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L27",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "billbreakdown()",
+ "id": "frontend_src_components_analysis_billbreakdown_billbreakdown",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "BillComparisonChart.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "billcomparisonchart.tsx",
+ "id": "frontend_src_components_analysis_billcomparisonchart",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "BillComparisonChartProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "billcomparisonchartprops",
+ "id": "frontend_src_components_analysis_billcomparisonchart_billcomparisonchartprops",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "BillComparisonChart()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "billcomparisonchart()",
+ "id": "frontend_src_components_analysis_billcomparisonchart_billcomparisonchart",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "ChartTooltipContent.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/ChartTooltipContent.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "charttooltipcontent.tsx",
+ "id": "frontend_src_components_analysis_charttooltipcontent",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "TooltipEntry",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/ChartTooltipContent.tsx",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "tooltipentry",
+ "id": "frontend_src_components_analysis_charttooltipcontent_tooltipentry",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "ChartTooltipContentProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/ChartTooltipContent.tsx",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "charttooltipcontentprops",
+ "id": "frontend_src_components_analysis_charttooltipcontent_charttooltipcontentprops",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "ChartTooltipContent()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/ChartTooltipContent.tsx",
+ "source_location": "L28",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "charttooltipcontent()",
+ "id": "frontend_src_components_analysis_charttooltipcontent_charttooltipcontent",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "FinancialRoadmap.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "financialroadmap.tsx",
+ "id": "frontend_src_components_analysis_financialroadmap",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "FinancialRoadmapProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "financialroadmapprops",
+ "id": "frontend_src_components_analysis_financialroadmap_financialroadmapprops",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "Milestone",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L31",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "milestone",
+ "id": "frontend_src_components_analysis_financialroadmap_milestone",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "FinancialRoadmap()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L41",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "financialroadmap()",
+ "id": "frontend_src_components_analysis_financialroadmap_financialroadmap",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "MonthTable.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "monthtable.tsx",
+ "id": "frontend_src_components_analysis_monthtable",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "MonthTableProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "monthtableprops",
+ "id": "frontend_src_components_analysis_monthtable_monthtableprops",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "MonthTable()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "monthtable()",
+ "id": "frontend_src_components_analysis_monthtable_monthtable",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "NetBenefitChart.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "netbenefitchart.tsx",
+ "id": "frontend_src_components_analysis_netbenefitchart",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "NetBenefitChartProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L26",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "netbenefitchartprops",
+ "id": "frontend_src_components_analysis_netbenefitchart_netbenefitchartprops",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "YEAR_RANGES",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L45",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "year_ranges",
+ "id": "frontend_src_components_analysis_netbenefitchart_year_ranges",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "YearRange",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L46",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "yearrange",
+ "id": "frontend_src_components_analysis_netbenefitchart_yearrange",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "NetBenefitChart()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L52",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "netbenefitchart()",
+ "id": "frontend_src_components_analysis_netbenefitchart_netbenefitchart",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SolarVerdict.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "solarverdict.tsx",
+ "id": "frontend_src_components_analysis_solarverdict",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SolarVerdictProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "solarverdictprops",
+ "id": "frontend_src_components_analysis_solarverdict_solarverdictprops",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "StarRating()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "starrating()",
+ "id": "frontend_src_components_analysis_solarverdict_starrating",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SolarVerdict()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L44",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "solarverdict()",
+ "id": "frontend_src_components_analysis_solarverdict_solarverdict",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SortableCardContainer.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/SortableCardContainer.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 72,
+ "norm_label": "sortablecardcontainer.tsx",
+ "id": "frontend_src_components_analysis_sortablecardcontainer",
+ "community_name": "Community 72"
+ },
+ {
+ "label": "CardItem",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/SortableCardContainer.tsx",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 72,
+ "norm_label": "carditem",
+ "id": "frontend_src_components_analysis_sortablecardcontainer_carditem",
+ "community_name": "Community 72"
+ },
+ {
+ "label": "loadOrder()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/SortableCardContainer.tsx",
+ "source_location": "L27",
+ "_origin": "ast",
+ "community": 72,
+ "norm_label": "loadorder()",
+ "id": "frontend_src_components_analysis_sortablecardcontainer_loadorder",
+ "community_name": "Community 72"
+ },
+ {
+ "label": "saveOrder()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/SortableCardContainer.tsx",
+ "source_location": "L36",
+ "_origin": "ast",
+ "community": 72,
+ "norm_label": "saveorder()",
+ "id": "frontend_src_components_analysis_sortablecardcontainer_saveorder",
+ "community_name": "Community 72"
+ },
+ {
+ "label": "reconcile()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/SortableCardContainer.tsx",
+ "source_location": "L41",
+ "_origin": "ast",
+ "community": 72,
+ "norm_label": "reconcile()",
+ "id": "frontend_src_components_analysis_sortablecardcontainer_reconcile",
+ "community_name": "Community 72"
+ },
+ {
+ "label": "SortableCard()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/SortableCardContainer.tsx",
+ "source_location": "L54",
+ "_origin": "ast",
+ "community": 72,
+ "norm_label": "sortablecard()",
+ "id": "frontend_src_components_analysis_sortablecardcontainer_sortablecard",
+ "community_name": "Community 72"
+ },
+ {
+ "label": "SortableCardContainer()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/SortableCardContainer.tsx",
+ "source_location": "L83",
+ "_origin": "ast",
+ "community": 72,
+ "norm_label": "sortablecardcontainer()",
+ "id": "frontend_src_components_analysis_sortablecardcontainer_sortablecardcontainer",
+ "community_name": "Community 72"
+ },
+ {
+ "label": "SystemAssumptions.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/SystemAssumptions.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "systemassumptions.tsx",
+ "id": "frontend_src_components_analysis_systemassumptions",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SystemAssumptionsProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/SystemAssumptions.tsx",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "systemassumptionsprops",
+ "id": "frontend_src_components_analysis_systemassumptions_systemassumptionsprops",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SystemAssumptions()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/SystemAssumptions.tsx",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "systemassumptions()",
+ "id": "frontend_src_components_analysis_systemassumptions_systemassumptions",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SystemCostCard.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "systemcostcard.tsx",
+ "id": "frontend_src_components_analysis_systemcostcard",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SystemCostCardProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "systemcostcardprops",
+ "id": "frontend_src_components_analysis_systemcostcard_systemcostcardprops",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SEGMENT_COLORS",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "segment_colors",
+ "id": "frontend_src_components_analysis_systemcostcard_segment_colors",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "Segment",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L36",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "segment",
+ "id": "frontend_src_components_analysis_systemcostcard_segment",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SystemCostCard()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L42",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "systemcostcard()",
+ "id": "frontend_src_components_analysis_systemcostcard_systemcostcard",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "TariffParameterModal.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "tariffparametermodal.tsx",
+ "id": "frontend_src_components_analysis_tariffparametermodal",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "TariffField",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "tarifffield",
+ "id": "frontend_src_components_analysis_tariffparametermodal_tarifffield",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "TARIFF_FIELDS",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L28",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "tariff_fields",
+ "id": "frontend_src_components_analysis_tariffparametermodal_tariff_fields",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "TariffParameterModalProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L49",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "tariffparametermodalprops",
+ "id": "frontend_src_components_analysis_tariffparametermodal_tariffparametermodalprops",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "formatDisplay()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L60",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "formatdisplay()",
+ "id": "frontend_src_components_analysis_tariffparametermodal_formatdisplay",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "parseInputToRate()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L65",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "parseinputtorate()",
+ "id": "frontend_src_components_analysis_tariffparametermodal_parseinputtorate",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "TariffParameterModal()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L77",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "tariffparametermodal()",
+ "id": "frontend_src_components_analysis_tariffparametermodal_tariffparametermodal",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "analysis/formatters.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/formatters.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "analysis/formatters.ts",
+ "id": "frontend_src_components_analysis_formatters",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "roiVerdict.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/roiVerdict.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "roiverdict.ts",
+ "id": "frontend_src_components_analysis_roiverdict",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "RoiCondition",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/roiVerdict.ts",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "roicondition",
+ "id": "frontend_src_components_analysis_roiverdict_roicondition",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "getRoiCondition()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/roiVerdict.ts",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "getroicondition()",
+ "id": "frontend_src_components_analysis_roiverdict_getroicondition",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "ConsumptionControls.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/sidebar/ConsumptionControls.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 29,
+ "norm_label": "consumptioncontrols.tsx",
+ "id": "frontend_src_components_analysis_sidebar_consumptioncontrols",
+ "community_name": "Community 29"
+ },
+ {
+ "label": "ConsumptionControlsProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/sidebar/ConsumptionControls.tsx",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 29,
+ "norm_label": "consumptioncontrolsprops",
+ "id": "frontend_src_components_analysis_sidebar_consumptioncontrols_consumptioncontrolsprops",
+ "community_name": "Community 29"
+ },
+ {
+ "label": "ConsumptionControls()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/sidebar/ConsumptionControls.tsx",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "consumptioncontrols()",
+ "id": "frontend_src_components_analysis_sidebar_consumptioncontrols_consumptioncontrols",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "LifecycleControls.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "lifecyclecontrols.tsx",
+ "id": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "LifecycleControlsProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L27",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "lifecyclecontrolsprops",
+ "id": "frontend_src_components_analysis_sidebar_lifecyclecontrols_lifecyclecontrolsprops",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "LifecycleControls()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L36",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "lifecyclecontrols()",
+ "id": "frontend_src_components_analysis_sidebar_lifecyclecontrols_lifecyclecontrols",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SystemMetaCard.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/sidebar/SystemMetaCard.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "systemmetacard.tsx",
+ "id": "frontend_src_components_analysis_sidebar_systemmetacard",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SystemMetaCardProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/sidebar/SystemMetaCard.tsx",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "systemmetacardprops",
+ "id": "frontend_src_components_analysis_sidebar_systemmetacard_systemmetacardprops",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SystemMetaCard()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/sidebar/SystemMetaCard.tsx",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "systemmetacard()",
+ "id": "frontend_src_components_analysis_sidebar_systemmetacard_systemmetacard",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "TariffControls.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "tariffcontrols.tsx",
+ "id": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "PercentageInput()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "percentageinput()",
+ "id": "frontend_src_components_analysis_sidebar_tariffcontrols_percentageinput",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "TariffControlsProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L67",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "tariffcontrolsprops",
+ "id": "frontend_src_components_analysis_sidebar_tariffcontrols_tariffcontrolsprops",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "TariffControls()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L81",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "tariffcontrols()",
+ "id": "frontend_src_components_analysis_sidebar_tariffcontrols_tariffcontrols",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "GoogleSignInButton.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/auth/GoogleSignInButton.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 44,
+ "norm_label": "googlesigninbutton.tsx",
+ "id": "frontend_src_components_auth_googlesigninbutton",
+ "community_name": "Community 44"
+ },
+ {
+ "label": "GoogleSignInButtonProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/auth/GoogleSignInButton.tsx",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 44,
+ "norm_label": "googlesigninbuttonprops",
+ "id": "frontend_src_components_auth_googlesigninbutton_googlesigninbuttonprops",
+ "community_name": "Community 44"
+ },
+ {
+ "label": "GoogleSignInButton()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/auth/GoogleSignInButton.tsx",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 44,
+ "norm_label": "googlesigninbutton()",
+ "id": "frontend_src_components_auth_googlesigninbutton_googlesigninbutton",
+ "community_name": "Community 44"
+ },
+ {
+ "label": "ChatLauncher.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/ChatLauncher.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "chatlauncher.tsx",
+ "id": "frontend_src_components_chat_chatlauncher",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "ChatLauncherProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/ChatLauncher.tsx",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "chatlauncherprops",
+ "id": "frontend_src_components_chat_chatlauncher_chatlauncherprops",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "ChatLauncher()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/ChatLauncher.tsx",
+ "source_location": "L23",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "chatlauncher()",
+ "id": "frontend_src_components_chat_chatlauncher_chatlauncher",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "ChatPanel.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "chatpanel.tsx",
+ "id": "frontend_src_components_chat_chatpanel",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "ChatPanelProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "chatpanelprops",
+ "id": "frontend_src_components_chat_chatpanel_chatpanelprops",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "getPaybackYears()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "getpaybackyears()",
+ "id": "frontend_src_components_chat_chatpanel_getpaybackyears",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "ChatPanel()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L32",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "chatpanel()",
+ "id": "frontend_src_components_chat_chatpanel_chatpanel",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "ChatProvider.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/ChatProvider.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "chatprovider.tsx",
+ "id": "frontend_src_components_chat_chatprovider",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "ChatMessage",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/ChatProvider.tsx",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "chatmessage",
+ "id": "frontend_src_components_chat_chatprovider_chatmessage",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "ProjectChatState",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/ChatProvider.tsx",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "projectchatstate",
+ "id": "frontend_src_components_chat_chatprovider_projectchatstate",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "ChatContextValue",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/ChatProvider.tsx",
+ "source_location": "L27",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "chatcontextvalue",
+ "id": "frontend_src_components_chat_chatprovider_chatcontextvalue",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "EMPTY_CHAT_STATE",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/ChatProvider.tsx",
+ "source_location": "L34",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "empty_chat_state",
+ "id": "frontend_src_components_chat_chatprovider_empty_chat_state",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "ChatContext",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/ChatProvider.tsx",
+ "source_location": "L46",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "chatcontext",
+ "id": "frontend_src_components_chat_chatprovider_chatcontext",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "ChatProvider()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/ChatProvider.tsx",
+ "source_location": "L57",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "chatprovider()",
+ "id": "frontend_src_components_chat_chatprovider_chatprovider",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "MessageBubble.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/MessageBubble.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "messagebubble.tsx",
+ "id": "frontend_src_components_chat_messagebubble",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "MessageBubbleProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/MessageBubble.tsx",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "messagebubbleprops",
+ "id": "frontend_src_components_chat_messagebubble_messagebubbleprops",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "MessageBubble()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/MessageBubble.tsx",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "messagebubble()",
+ "id": "frontend_src_components_chat_messagebubble_messagebubble",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "SuggestedQuestions.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/SuggestedQuestions.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "suggestedquestions.tsx",
+ "id": "frontend_src_components_chat_suggestedquestions",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "SuggestedQuestionsProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/SuggestedQuestions.tsx",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "suggestedquestionsprops",
+ "id": "frontend_src_components_chat_suggestedquestions_suggestedquestionsprops",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "samplePool()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/SuggestedQuestions.tsx",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "samplepool()",
+ "id": "frontend_src_components_chat_suggestedquestions_samplepool",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "SuggestedQuestions()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/SuggestedQuestions.tsx",
+ "source_location": "L33",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "suggestedquestions()",
+ "id": "frontend_src_components_chat_suggestedquestions_suggestedquestions",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "ChatLauncher.test.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/__tests__/ChatLauncher.test.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "chatlauncher.test.tsx",
+ "id": "frontend_src_components_chat_tests_chatlauncher_test",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "renderLauncher()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/__tests__/ChatLauncher.test.tsx",
+ "source_location": "L40",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "renderlauncher()",
+ "id": "frontend_src_components_chat_tests_chatlauncher_test_renderlauncher",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "ChatProvider.test.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/__tests__/ChatProvider.test.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "chatprovider.test.tsx",
+ "id": "frontend_src_components_chat_tests_chatprovider_test",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "wrapper()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/chat/__tests__/ChatProvider.test.tsx",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "wrapper()",
+ "id": "frontend_src_components_chat_tests_chatprovider_test_wrapper",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "ProjectCard.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/dashboard/ProjectCard.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "projectcard.tsx",
+ "id": "frontend_src_components_dashboard_projectcard",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "ProjectCard()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/dashboard/ProjectCard.tsx",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "projectcard()",
+ "id": "frontend_src_components_dashboard_projectcard_projectcard",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "StatCard.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/dashboard/StatCard.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "statcard.tsx",
+ "id": "frontend_src_components_dashboard_statcard",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "StatCard()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/dashboard/StatCard.tsx",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "statcard()",
+ "id": "frontend_src_components_dashboard_statcard_statcard",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "helpers.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/components/dashboard/helpers.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "helpers.ts",
+ "id": "frontend_src_components_dashboard_helpers",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "PortfolioStats",
+ "file_type": "code",
+ "source_file": "frontend/src/components/dashboard/helpers.ts",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "portfoliostats",
+ "id": "frontend_src_components_dashboard_helpers_portfoliostats",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "aggregatePortfolio()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/dashboard/helpers.ts",
+ "source_location": "L37",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "aggregateportfolio()",
+ "id": "frontend_src_components_dashboard_helpers_aggregateportfolio",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "projectRoute()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/dashboard/helpers.ts",
+ "source_location": "L101",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "projectroute()",
+ "id": "frontend_src_components_dashboard_helpers_projectroute",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "formatRelativeDate()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/dashboard/helpers.ts",
+ "source_location": "L117",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "formatrelativedate()",
+ "id": "frontend_src_components_dashboard_helpers_formatrelativedate",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "AppErrorBoundary.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "apperrorboundary.tsx",
+ "id": "frontend_src_components_layout_apperrorboundary",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "AppErrorBoundaryProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "apperrorboundaryprops",
+ "id": "frontend_src_components_layout_apperrorboundary_apperrorboundaryprops",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "AppErrorBoundaryState",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "apperrorboundarystate",
+ "id": "frontend_src_components_layout_apperrorboundary_apperrorboundarystate",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "isChunkLoadError()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 73,
+ "norm_label": "ischunkloaderror()",
+ "id": "frontend_src_components_layout_apperrorboundary_ischunkloaderror",
+ "community_name": "Community 73"
+ },
+ {
+ "label": "AppErrorBoundary",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L32",
+ "_origin": "ast",
+ "community": 73,
+ "norm_label": "apperrorboundary",
+ "id": "frontend_src_components_layout_apperrorboundary_apperrorboundary",
+ "community_name": "Community 73"
+ },
+ {
+ "label": ".getDerivedStateFromError()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L37",
+ "_origin": "ast",
+ "community": 73,
+ "norm_label": ".getderivedstatefromerror()",
+ "id": "frontend_src_components_layout_apperrorboundary_apperrorboundary_getderivedstatefromerror",
+ "community_name": "Community 73"
+ },
+ {
+ "label": ".componentDidCatch()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L41",
+ "_origin": "ast",
+ "community": 73,
+ "norm_label": ".componentdidcatch()",
+ "id": "frontend_src_components_layout_apperrorboundary_apperrorboundary_componentdidcatch",
+ "community_name": "Community 73"
+ },
+ {
+ "label": ".handleReload()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L61",
+ "_origin": "ast",
+ "community": 73,
+ "norm_label": ".handlereload()",
+ "id": "frontend_src_components_layout_apperrorboundary_apperrorboundary_handlereload",
+ "community_name": "Community 73"
+ },
+ {
+ "label": ".handleDashboardRedirect()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L65",
+ "_origin": "ast",
+ "community": 73,
+ "norm_label": ".handledashboardredirect()",
+ "id": "frontend_src_components_layout_apperrorboundary_apperrorboundary_handledashboardredirect",
+ "community_name": "Community 73"
+ },
+ {
+ "label": ".render()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L69",
+ "_origin": "ast",
+ "community": 73,
+ "norm_label": ".render()",
+ "id": "frontend_src_components_layout_apperrorboundary_apperrorboundary_render",
+ "community_name": "Community 73"
+ },
+ {
+ "label": "AppFooter.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppFooter.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 34,
+ "norm_label": "appfooter.tsx",
+ "id": "frontend_src_components_layout_appfooter",
+ "community_name": "Community 34"
+ },
+ {
+ "label": "AppFooter()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppFooter.tsx",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 34,
+ "norm_label": "appfooter()",
+ "id": "frontend_src_components_layout_appfooter_appfooter",
+ "community_name": "Community 34"
+ },
+ {
+ "label": "AppLayout.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppLayout.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 34,
+ "norm_label": "applayout.tsx",
+ "id": "frontend_src_components_layout_applayout",
+ "community_name": "Community 34"
+ },
+ {
+ "label": "AppLayoutProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppLayout.tsx",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 34,
+ "norm_label": "applayoutprops",
+ "id": "frontend_src_components_layout_applayout_applayoutprops",
+ "community_name": "Community 34"
+ },
+ {
+ "label": "AppLayout()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppLayout.tsx",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "applayout()",
+ "id": "frontend_src_components_layout_applayout_applayout",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "AppNav.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 39,
+ "norm_label": "appnav.tsx",
+ "id": "frontend_src_components_layout_appnav",
+ "community_name": "Community 39"
+ },
+ {
+ "label": "Crumb",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 39,
+ "norm_label": "crumb",
+ "id": "frontend_src_components_layout_appnav_crumb",
+ "community_name": "Community 39"
+ },
+ {
+ "label": "useBreadcrumbs()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 39,
+ "norm_label": "usebreadcrumbs()",
+ "id": "frontend_src_components_layout_appnav_usebreadcrumbs",
+ "community_name": "Community 39"
+ },
+ {
+ "label": "AppNav()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L79",
+ "_origin": "ast",
+ "community": 39,
+ "norm_label": "appnav()",
+ "id": "frontend_src_components_layout_appnav_appnav",
+ "community_name": "Community 39"
+ },
+ {
+ "label": "AppSidebar.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppSidebar.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 34,
+ "norm_label": "appsidebar.tsx",
+ "id": "frontend_src_components_layout_appsidebar",
+ "community_name": "Community 34"
+ },
+ {
+ "label": "NavItem",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppSidebar.tsx",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 34,
+ "norm_label": "navitem",
+ "id": "frontend_src_components_layout_appsidebar_navitem",
+ "community_name": "Community 34"
+ },
+ {
+ "label": "SectionHeading()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppSidebar.tsx",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 34,
+ "norm_label": "sectionheading()",
+ "id": "frontend_src_components_layout_appsidebar_sectionheading",
+ "community_name": "Community 34"
+ },
+ {
+ "label": "NavLink()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppSidebar.tsx",
+ "source_location": "L52",
+ "_origin": "ast",
+ "community": 34,
+ "norm_label": "navlink()",
+ "id": "frontend_src_components_layout_appsidebar_navlink",
+ "community_name": "Community 34"
+ },
+ {
+ "label": "NavSectionDef",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppSidebar.tsx",
+ "source_location": "L97",
+ "_origin": "ast",
+ "community": 34,
+ "norm_label": "navsectiondef",
+ "id": "frontend_src_components_layout_appsidebar_navsectiondef",
+ "community_name": "Community 34"
+ },
+ {
+ "label": "NAV_SECTIONS",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppSidebar.tsx",
+ "source_location": "L102",
+ "_origin": "ast",
+ "community": 34,
+ "norm_label": "nav_sections",
+ "id": "frontend_src_components_layout_appsidebar_nav_sections",
+ "community_name": "Community 34"
+ },
+ {
+ "label": "AppSidebarProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppSidebar.tsx",
+ "source_location": "L120",
+ "_origin": "ast",
+ "community": 34,
+ "norm_label": "appsidebarprops",
+ "id": "frontend_src_components_layout_appsidebar_appsidebarprops",
+ "community_name": "Community 34"
+ },
+ {
+ "label": "AppSidebar()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/AppSidebar.tsx",
+ "source_location": "L131",
+ "_origin": "ast",
+ "community": 34,
+ "norm_label": "appsidebar()",
+ "id": "frontend_src_components_layout_appsidebar_appsidebar",
+ "community_name": "Community 34"
+ },
+ {
+ "label": "DashboardLayout.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/DashboardLayout.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "dashboardlayout.tsx",
+ "id": "frontend_src_components_layout_dashboardlayout",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "DashboardLayout()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/DashboardLayout.tsx",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "dashboardlayout()",
+ "id": "frontend_src_components_layout_dashboardlayout_dashboardlayout",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "LanguageToggle.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/LanguageToggle.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 61,
+ "norm_label": "languagetoggle.tsx",
+ "id": "frontend_src_components_layout_languagetoggle",
+ "community_name": "Community 61"
+ },
+ {
+ "label": "LanguageToggle()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/LanguageToggle.tsx",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 61,
+ "norm_label": "languagetoggle()",
+ "id": "frontend_src_components_layout_languagetoggle_languagetoggle",
+ "community_name": "Community 61"
+ },
+ {
+ "label": "PageContainer.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/PageContainer.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "pagecontainer.tsx",
+ "id": "frontend_src_components_layout_pagecontainer",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "PageContainerProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/PageContainer.tsx",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "pagecontainerprops",
+ "id": "frontend_src_components_layout_pagecontainer_pagecontainerprops",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "VARIANTS",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/PageContainer.tsx",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "variants",
+ "id": "frontend_src_components_layout_pagecontainer_variants",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "PageContainer()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/PageContainer.tsx",
+ "source_location": "L30",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "pagecontainer()",
+ "id": "frontend_src_components_layout_pagecontainer_pagecontainer",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "PageHeaderCard.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/PageHeaderCard.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "pageheadercard.tsx",
+ "id": "frontend_src_components_layout_pageheadercard",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "PageHeaderCardProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/PageHeaderCard.tsx",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "pageheadercardprops",
+ "id": "frontend_src_components_layout_pageheadercard_pageheadercardprops",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "PageHeaderCard()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/PageHeaderCard.tsx",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "pageheadercard()",
+ "id": "frontend_src_components_layout_pageheadercard_pageheadercard",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "ProtectedRoute.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/ProtectedRoute.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 44,
+ "norm_label": "protectedroute.tsx",
+ "id": "frontend_src_components_layout_protectedroute",
+ "community_name": "Community 44"
+ },
+ {
+ "label": "ProtectedRoute()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/ProtectedRoute.tsx",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 44,
+ "norm_label": "protectedroute()",
+ "id": "frontend_src_components_layout_protectedroute_protectedroute",
+ "community_name": "Community 44"
+ },
+ {
+ "label": "ThemeToggle.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/ThemeToggle.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 39,
+ "norm_label": "themetoggle.tsx",
+ "id": "frontend_src_components_layout_themetoggle",
+ "community_name": "Community 39"
+ },
+ {
+ "label": "ThemeToggle()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/layout/ThemeToggle.tsx",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 39,
+ "norm_label": "themetoggle()",
+ "id": "frontend_src_components_layout_themetoggle_themetoggle",
+ "community_name": "Community 39"
+ },
+ {
+ "label": "CoverageNoticeModal.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/map/CoverageNoticeModal.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "coveragenoticemodal.tsx",
+ "id": "frontend_src_components_map_coveragenoticemodal",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "readCoverageNoticeDismissed()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/map/CoverageNoticeModal.tsx",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "readcoveragenoticedismissed()",
+ "id": "frontend_src_components_map_coveragenoticemodal_readcoveragenoticedismissed",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "writeCoverageNoticeDismissed()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/map/CoverageNoticeModal.tsx",
+ "source_location": "L30",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "writecoveragenoticedismissed()",
+ "id": "frontend_src_components_map_coveragenoticemodal_writecoveragenoticedismissed",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "Props",
+ "file_type": "code",
+ "source_file": "frontend/src/components/map/CoverageNoticeModal.tsx",
+ "source_location": "L43",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "props",
+ "id": "frontend_src_components_map_coveragenoticemodal_props",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "CoverageNoticeModal()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/map/CoverageNoticeModal.tsx",
+ "source_location": "L52",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "coveragenoticemodal()",
+ "id": "frontend_src_components_map_coveragenoticemodal_coveragenoticemodal",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "LowerResolutionConsentModal.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/map/LowerResolutionConsentModal.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "lowerresolutionconsentmodal.tsx",
+ "id": "frontend_src_components_map_lowerresolutionconsentmodal",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "Props",
+ "file_type": "code",
+ "source_file": "frontend/src/components/map/LowerResolutionConsentModal.tsx",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "props",
+ "id": "frontend_src_components_map_lowerresolutionconsentmodal_props",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "LowerResolutionConsentModal()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/map/LowerResolutionConsentModal.tsx",
+ "source_location": "L30",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "lowerresolutionconsentmodal()",
+ "id": "frontend_src_components_map_lowerresolutionconsentmodal_lowerresolutionconsentmodal",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "ManualCoordinateModal.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/map/ManualCoordinateModal.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "manualcoordinatemodal.tsx",
+ "id": "frontend_src_components_map_manualcoordinatemodal",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "Bounds",
+ "file_type": "code",
+ "source_file": "frontend/src/components/map/ManualCoordinateModal.tsx",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "bounds",
+ "id": "frontend_src_components_map_manualcoordinatemodal_bounds",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "Props",
+ "file_type": "code",
+ "source_file": "frontend/src/components/map/ManualCoordinateModal.tsx",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "props",
+ "id": "frontend_src_components_map_manualcoordinatemodal_props",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "ManualCoordinateModal()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/map/ManualCoordinateModal.tsx",
+ "source_location": "L28",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "manualcoordinatemodal()",
+ "id": "frontend_src_components_map_manualcoordinatemodal_manualcoordinatemodal",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "PdfFixedChrome.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/PdfFixedChrome.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 41,
+ "norm_label": "pdffixedchrome.tsx",
+ "id": "frontend_src_components_pdf_pdffixedchrome",
+ "community_name": "Community 41"
+ },
+ {
+ "label": "HeaderProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/PdfFixedChrome.tsx",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 41,
+ "norm_label": "headerprops",
+ "id": "frontend_src_components_pdf_pdffixedchrome_headerprops",
+ "community_name": "Community 41"
+ },
+ {
+ "label": "PdfFixedHeader()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/PdfFixedChrome.tsx",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 41,
+ "norm_label": "pdffixedheader()",
+ "id": "frontend_src_components_pdf_pdffixedchrome_pdffixedheader",
+ "community_name": "Community 41"
+ },
+ {
+ "label": "FooterProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/PdfFixedChrome.tsx",
+ "source_location": "L39",
+ "_origin": "ast",
+ "community": 41,
+ "norm_label": "footerprops",
+ "id": "frontend_src_components_pdf_pdffixedchrome_footerprops",
+ "community_name": "Community 41"
+ },
+ {
+ "label": "PdfFixedFooter()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/PdfFixedChrome.tsx",
+ "source_location": "L47",
+ "_origin": "ast",
+ "community": 41,
+ "norm_label": "pdffixedfooter()",
+ "id": "frontend_src_components_pdf_pdffixedchrome_pdffixedfooter",
+ "community_name": "Community 41"
+ },
+ {
+ "label": "PdfPageShell.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/PdfPageShell.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "pdfpageshell.tsx",
+ "id": "frontend_src_components_pdf_pdfpageshell",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "Props",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/PdfPageShell.tsx",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "props",
+ "id": "frontend_src_components_pdf_pdfpageshell_props",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "PdfPageShell()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/PdfPageShell.tsx",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "pdfpageshell()",
+ "id": "frontend_src_components_pdf_pdfpageshell_pdfpageshell",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "PrintPage1Workbench.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "printpage1workbench.tsx",
+ "id": "frontend_src_components_pdf_printpage1workbench",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "Props",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "props",
+ "id": "frontend_src_components_pdf_printpage1workbench_props",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "PrintPage1Workbench()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "printpage1workbench()",
+ "id": "frontend_src_components_pdf_printpage1workbench_printpage1workbench",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "StatTile()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L116",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "stattile()",
+ "id": "frontend_src_components_pdf_printpage1workbench_stattile",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "PrintPage2Analysis.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "printpage2analysis.tsx",
+ "id": "frontend_src_components_pdf_printpage2analysis",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "Props",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "props",
+ "id": "frontend_src_components_pdf_printpage2analysis_props",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "PrintPage2Analysis()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L33",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "printpage2analysis()",
+ "id": "frontend_src_components_pdf_printpage2analysis_printpage2analysis",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "PrintReport.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/PrintReport.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 41,
+ "norm_label": "printreport.tsx",
+ "id": "frontend_src_components_pdf_printreport",
+ "community_name": "Community 41"
+ },
+ {
+ "label": "PrintReportProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/PrintReport.tsx",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 41,
+ "norm_label": "printreportprops",
+ "id": "frontend_src_components_pdf_printreport_printreportprops",
+ "community_name": "Community 41"
+ },
+ {
+ "label": "PrintReport()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/PrintReport.tsx",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 41,
+ "norm_label": "printreport()",
+ "id": "frontend_src_components_pdf_printreport_printreport",
+ "community_name": "Community 41"
+ },
+ {
+ "label": "PrintPage1Workbench.test.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/__tests__/PrintPage1Workbench.test.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "printpage1workbench.test.tsx",
+ "id": "frontend_src_components_pdf_tests_printpage1workbench_test",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "PdfAnalysisCharts.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "pdfanalysischarts.tsx",
+ "id": "frontend_src_components_pdf_analysis_pdfanalysischarts",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "TooltipStyle",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "tooltipstyle",
+ "id": "frontend_src_components_pdf_analysis_pdfanalysischarts_tooltipstyle",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "PdfBillComparisonChart()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L30",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "pdfbillcomparisonchart()",
+ "id": "frontend_src_components_pdf_analysis_pdfanalysischarts_pdfbillcomparisonchart",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "PdfCumulativeSavingsChart()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L111",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "pdfcumulativesavingschart()",
+ "id": "frontend_src_components_pdf_analysis_pdfanalysischarts_pdfcumulativesavingschart",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "PdfSummaryCards.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSummaryCards.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "pdfsummarycards.tsx",
+ "id": "frontend_src_components_pdf_analysis_pdfsummarycards",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SummaryTile()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSummaryCards.tsx",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "summarytile()",
+ "id": "frontend_src_components_pdf_analysis_pdfsummarycards_summarytile",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SummaryCard()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSummaryCards.tsx",
+ "source_location": "L26",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "summarycard()",
+ "id": "frontend_src_components_pdf_analysis_pdfsummarycards_summarycard",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "PdfSystemCost.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "pdfsystemcost.tsx",
+ "id": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "Segment",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "segment",
+ "id": "frontend_src_components_pdf_analysis_pdfsystemcost_segment",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SEGMENT_COLORS",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "segment_colors",
+ "id": "frontend_src_components_pdf_analysis_pdfsystemcost_segment_colors",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "PdfSystemCost()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L33",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "pdfsystemcost()",
+ "id": "frontend_src_components_pdf_analysis_pdfsystemcost_pdfsystemcost",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "pdfAnalysisViewModel.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "pdfanalysisviewmodel.ts",
+ "id": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "PdfAnalysisViewModel",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "pdfanalysisviewmodel",
+ "id": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel_pdfanalysisviewmodel",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "buildPdfAnalysisViewModel()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L56",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "buildpdfanalysisviewmodel()",
+ "id": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel_buildpdfanalysisviewmodel",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "DropdownMenu.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "dropdownmenu.tsx",
+ "id": "frontend_src_components_ui_dropdownmenu",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "DropdownMenu()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "dropdownmenu()",
+ "id": "frontend_src_components_ui_dropdownmenu_dropdownmenu",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "DropdownMenuSubTrigger",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "dropdownmenusubtrigger",
+ "id": "frontend_src_components_ui_dropdownmenu_dropdownmenusubtrigger",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "DropdownMenuSubContent",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L45",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "dropdownmenusubcontent",
+ "id": "frontend_src_components_ui_dropdownmenu_dropdownmenusubcontent",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "DropdownMenuContent",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L60",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "dropdownmenucontent",
+ "id": "frontend_src_components_ui_dropdownmenu_dropdownmenucontent",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "DropdownMenuItem",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L82",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "dropdownmenuitem",
+ "id": "frontend_src_components_ui_dropdownmenu_dropdownmenuitem",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "DropdownMenuCheckboxItem",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L100",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "dropdownmenucheckboxitem",
+ "id": "frontend_src_components_ui_dropdownmenu_dropdownmenucheckboxitem",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "DropdownMenuRadioItem",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L123",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "dropdownmenuradioitem",
+ "id": "frontend_src_components_ui_dropdownmenu_dropdownmenuradioitem",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "DropdownMenuLabel",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L145",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "dropdownmenulabel",
+ "id": "frontend_src_components_ui_dropdownmenu_dropdownmenulabel",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "DropdownMenuSeparator",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L159",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "dropdownmenuseparator",
+ "id": "frontend_src_components_ui_dropdownmenu_dropdownmenuseparator",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "DropdownMenuShortcut()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L167",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "dropdownmenushortcut()",
+ "id": "frontend_src_components_ui_dropdownmenu_dropdownmenushortcut",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "GuidedTour.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/GuidedTour.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 74,
+ "norm_label": "guidedtour.tsx",
+ "id": "frontend_src_components_ui_guidedtour",
+ "community_name": "Community 74"
+ },
+ {
+ "label": "TourStep",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/GuidedTour.tsx",
+ "source_location": "L27",
+ "_origin": "ast",
+ "community": 74,
+ "norm_label": "tourstep",
+ "id": "frontend_src_components_ui_guidedtour_tourstep",
+ "community_name": "Community 74"
+ },
+ {
+ "label": "getModalPosition()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/GuidedTour.tsx",
+ "source_location": "L34",
+ "_origin": "ast",
+ "community": 74,
+ "norm_label": "getmodalposition()",
+ "id": "frontend_src_components_ui_guidedtour_getmodalposition",
+ "community_name": "Community 74"
+ },
+ {
+ "label": "GuidedTourModal()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/GuidedTour.tsx",
+ "source_location": "L84",
+ "_origin": "ast",
+ "community": 74,
+ "norm_label": "guidedtourmodal()",
+ "id": "frontend_src_components_ui_guidedtour_guidedtourmodal",
+ "community_name": "Community 74"
+ },
+ {
+ "label": "GuidedTour()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/GuidedTour.tsx",
+ "source_location": "L175",
+ "_origin": "ast",
+ "community": 74,
+ "norm_label": "guidedtour()",
+ "id": "frontend_src_components_ui_guidedtour_guidedtour",
+ "community_name": "Community 74"
+ },
+ {
+ "label": "ImagePopup.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/ImagePopup.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "imagepopup.tsx",
+ "id": "frontend_src_components_ui_imagepopup",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "ImagePopupProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/ImagePopup.tsx",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "imagepopupprops",
+ "id": "frontend_src_components_ui_imagepopup_imagepopupprops",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "ImagePopup()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/ImagePopup.tsx",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "imagepopup()",
+ "id": "frontend_src_components_ui_imagepopup_imagepopup",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "InfoTooltip.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/InfoTooltip.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "infotooltip.tsx",
+ "id": "frontend_src_components_ui_infotooltip",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "InfoTooltip()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/InfoTooltip.tsx",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "infotooltip()",
+ "id": "frontend_src_components_ui_infotooltip_infotooltip",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "LoadingOverlay.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/LoadingOverlay.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 25,
+ "norm_label": "loadingoverlay.tsx",
+ "id": "frontend_src_components_ui_loadingoverlay",
+ "community_name": "Community 25"
+ },
+ {
+ "label": "DEFAULT_HINTS",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/LoadingOverlay.tsx",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 25,
+ "norm_label": "default_hints",
+ "id": "frontend_src_components_ui_loadingoverlay_default_hints",
+ "community_name": "Community 25"
+ },
+ {
+ "label": "LoadingOverlay()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/LoadingOverlay.tsx",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 25,
+ "norm_label": "loadingoverlay()",
+ "id": "frontend_src_components_ui_loadingoverlay_loadingoverlay",
+ "community_name": "Community 25"
+ },
+ {
+ "label": "Logo.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/Logo.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "logo.tsx",
+ "id": "frontend_src_components_ui_logo",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "LogoProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/Logo.tsx",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "logoprops",
+ "id": "frontend_src_components_ui_logo_logoprops",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "Logo()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/Logo.tsx",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "logo()",
+ "id": "frontend_src_components_ui_logo_logo",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "NotificationPopover.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/NotificationPopover.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 39,
+ "norm_label": "notificationpopover.tsx",
+ "id": "frontend_src_components_ui_notificationpopover",
+ "community_name": "Community 39"
+ },
+ {
+ "label": "Notification",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/NotificationPopover.tsx",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 28,
+ "norm_label": "notification",
+ "id": "frontend_src_components_ui_notificationpopover_notification",
+ "community_name": "Community 28"
+ },
+ {
+ "label": "useNotifications()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/NotificationPopover.tsx",
+ "source_location": "L31",
+ "_origin": "ast",
+ "community": 39,
+ "norm_label": "usenotifications()",
+ "id": "frontend_src_components_ui_notificationpopover_usenotifications",
+ "community_name": "Community 39"
+ },
+ {
+ "label": "NotificationPopover()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/NotificationPopover.tsx",
+ "source_location": "L49",
+ "_origin": "ast",
+ "community": 39,
+ "norm_label": "notificationpopover()",
+ "id": "frontend_src_components_ui_notificationpopover_notificationpopover",
+ "community_name": "Community 39"
+ },
+ {
+ "label": "badge.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/badge.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "badge.tsx",
+ "id": "frontend_src_components_ui_badge",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "badgeVariants",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/badge.tsx",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "badgevariants",
+ "id": "frontend_src_components_ui_badge_badgevariants",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "BadgeProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/badge.tsx",
+ "source_location": "L23",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "badgeprops",
+ "id": "frontend_src_components_ui_badge_badgeprops",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "Badge()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/badge.tsx",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "badge()",
+ "id": "frontend_src_components_ui_badge_badge",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "button.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/button.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 39,
+ "norm_label": "button.tsx",
+ "id": "frontend_src_components_ui_button",
+ "community_name": "Community 39"
+ },
+ {
+ "label": "buttonVariants",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/button.tsx",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 39,
+ "norm_label": "buttonvariants",
+ "id": "frontend_src_components_ui_button_buttonvariants",
+ "community_name": "Community 39"
+ },
+ {
+ "label": "ButtonProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/button.tsx",
+ "source_location": "L34",
+ "_origin": "ast",
+ "community": 39,
+ "norm_label": "buttonprops",
+ "id": "frontend_src_components_ui_button_buttonprops",
+ "community_name": "Community 39"
+ },
+ {
+ "label": "Button",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/button.tsx",
+ "source_location": "L39",
+ "_origin": "ast",
+ "community": 39,
+ "norm_label": "button",
+ "id": "frontend_src_components_ui_button_button",
+ "community_name": "Community 39"
+ },
+ {
+ "label": "card.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/card.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "card.tsx",
+ "id": "frontend_src_components_ui_card",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "Card",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/card.tsx",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "card",
+ "id": "frontend_src_components_ui_card_card",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "CardHeader",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/card.tsx",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "cardheader",
+ "id": "frontend_src_components_ui_card_cardheader",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "CardTitle",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/card.tsx",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "cardtitle",
+ "id": "frontend_src_components_ui_card_cardtitle",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "CardDescription",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/card.tsx",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "carddescription",
+ "id": "frontend_src_components_ui_card_carddescription",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "CardContent",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/card.tsx",
+ "source_location": "L31",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "cardcontent",
+ "id": "frontend_src_components_ui_card_cardcontent",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "CardFooter",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/card.tsx",
+ "source_location": "L36",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "cardfooter",
+ "id": "frontend_src_components_ui_card_cardfooter",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "dialog.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/dialog.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "dialog.tsx",
+ "id": "frontend_src_components_ui_dialog",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "DialogOverlay",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/dialog.tsx",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "dialogoverlay",
+ "id": "frontend_src_components_ui_dialog_dialogoverlay",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "DialogContent",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/dialog.tsx",
+ "source_location": "L34",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "dialogcontent",
+ "id": "frontend_src_components_ui_dialog_dialogcontent",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "DialogHeader()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/dialog.tsx",
+ "source_location": "L61",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "dialogheader()",
+ "id": "frontend_src_components_ui_dialog_dialogheader",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "DialogFooter()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/dialog.tsx",
+ "source_location": "L66",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "dialogfooter()",
+ "id": "frontend_src_components_ui_dialog_dialogfooter",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "DialogTitle",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/dialog.tsx",
+ "source_location": "L71",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "dialogtitle",
+ "id": "frontend_src_components_ui_dialog_dialogtitle",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "DialogDescription",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/dialog.tsx",
+ "source_location": "L83",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "dialogdescription",
+ "id": "frontend_src_components_ui_dialog_dialogdescription",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "input.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/input.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "input.tsx",
+ "id": "frontend_src_components_ui_input",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "Input",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/input.tsx",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "input",
+ "id": "frontend_src_components_ui_input_input",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "label.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/label.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "label.tsx",
+ "id": "frontend_src_components_ui_label",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "labelVariants",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/label.tsx",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "labelvariants",
+ "id": "frontend_src_components_ui_label_labelvariants",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "Label",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/label.tsx",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "label",
+ "id": "frontend_src_components_ui_label_label",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "separator.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/separator.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "separator.tsx",
+ "id": "frontend_src_components_ui_separator",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "Separator",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/separator.tsx",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "separator",
+ "id": "frontend_src_components_ui_separator_separator",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "skeleton.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/skeleton.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "skeleton.tsx",
+ "id": "frontend_src_components_ui_skeleton",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "Skeleton()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/skeleton.tsx",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "skeleton()",
+ "id": "frontend_src_components_ui_skeleton_skeleton",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "slider.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/slider.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 25,
+ "norm_label": "slider.tsx",
+ "id": "frontend_src_components_ui_slider",
+ "community_name": "Community 25"
+ },
+ {
+ "label": "Slider",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/slider.tsx",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 25,
+ "norm_label": "slider",
+ "id": "frontend_src_components_ui_slider_slider",
+ "community_name": "Community 25"
+ },
+ {
+ "label": "toastConfig.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/toastConfig.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 59,
+ "norm_label": "toastconfig.tsx",
+ "id": "frontend_src_components_ui_toastconfig",
+ "community_name": "Community 59"
+ },
+ {
+ "label": "BASE_STYLE",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/toastConfig.tsx",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 59,
+ "norm_label": "base_style",
+ "id": "frontend_src_components_ui_toastconfig_base_style",
+ "community_name": "Community 59"
+ },
+ {
+ "label": "baseOptions",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/toastConfig.tsx",
+ "source_location": "L31",
+ "_origin": "ast",
+ "community": 59,
+ "norm_label": "baseoptions",
+ "id": "frontend_src_components_ui_toastconfig_baseoptions",
+ "community_name": "Community 59"
+ },
+ {
+ "label": "notify",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/toastConfig.tsx",
+ "source_location": "L42",
+ "_origin": "ast",
+ "community": 59,
+ "norm_label": "notify",
+ "id": "frontend_src_components_ui_toastconfig_notify",
+ "community_name": "Community 59"
+ },
+ {
+ "label": "tooltip.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/tooltip.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "tooltip.tsx",
+ "id": "frontend_src_components_ui_tooltip",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "TooltipContent",
+ "file_type": "code",
+ "source_file": "frontend/src/components/ui/tooltip.tsx",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "tooltipcontent",
+ "id": "frontend_src_components_ui_tooltip_tooltipcontent",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "CanvasControls.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "canvascontrols.tsx",
+ "id": "frontend_src_components_workbench_canvascontrols",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "CanvasControlsProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "canvascontrolsprops",
+ "id": "frontend_src_components_workbench_canvascontrols_canvascontrolsprops",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "CanvasControls()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L55",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "canvascontrols()",
+ "id": "frontend_src_components_workbench_canvascontrols_canvascontrols",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "CanvasLegends.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/CanvasLegends.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 60,
+ "norm_label": "canvaslegends.tsx",
+ "id": "frontend_src_components_workbench_canvaslegends",
+ "community_name": "Community 60"
+ },
+ {
+ "label": "SegmentHull",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/CanvasLegends.tsx",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 60,
+ "norm_label": "segmenthull",
+ "id": "frontend_src_components_workbench_canvaslegends_segmenthull",
+ "community_name": "Community 60"
+ },
+ {
+ "label": "CanvasLegendsProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/CanvasLegends.tsx",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 60,
+ "norm_label": "canvaslegendsprops",
+ "id": "frontend_src_components_workbench_canvaslegends_canvaslegendsprops",
+ "community_name": "Community 60"
+ },
+ {
+ "label": "CanvasLegends()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/CanvasLegends.tsx",
+ "source_location": "L29",
+ "_origin": "ast",
+ "community": 60,
+ "norm_label": "canvaslegends()",
+ "id": "frontend_src_components_workbench_canvaslegends_canvaslegends",
+ "community_name": "Community 60"
+ },
+ {
+ "label": "GroupRotationHandle.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/GroupRotationHandle.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "grouprotationhandle.tsx",
+ "id": "frontend_src_components_workbench_grouprotationhandle",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "GroupPanel",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/GroupRotationHandle.tsx",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "grouppanel",
+ "id": "frontend_src_components_workbench_grouprotationhandle_grouppanel",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "GroupRotationHandleProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/GroupRotationHandle.tsx",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "grouprotationhandleprops",
+ "id": "frontend_src_components_workbench_grouprotationhandle_grouprotationhandleprops",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "GroupRotationHandle()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/GroupRotationHandle.tsx",
+ "source_location": "L32",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "grouprotationhandle()",
+ "id": "frontend_src_components_workbench_grouprotationhandle_grouprotationhandle",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "IrradianceGlow.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/IrradianceGlow.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 25,
+ "norm_label": "irradianceglow.tsx",
+ "id": "frontend_src_components_workbench_irradianceglow",
+ "community_name": "Community 25"
+ },
+ {
+ "label": "MONTH_LABELS",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/IrradianceGlow.tsx",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 25,
+ "norm_label": "month_labels",
+ "id": "frontend_src_components_workbench_irradianceglow_month_labels",
+ "community_name": "Community 25"
+ },
+ {
+ "label": "MONTHLY_IRRADIANCE",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/IrradianceGlow.tsx",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 25,
+ "norm_label": "monthly_irradiance",
+ "id": "frontend_src_components_workbench_irradianceglow_monthly_irradiance",
+ "community_name": "Community 25"
+ },
+ {
+ "label": "MONTHLY_AZIMUTH",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/IrradianceGlow.tsx",
+ "source_location": "L30",
+ "_origin": "ast",
+ "community": 25,
+ "norm_label": "monthly_azimuth",
+ "id": "frontend_src_components_workbench_irradianceglow_monthly_azimuth",
+ "community_name": "Community 25"
+ },
+ {
+ "label": "IrradianceGlowProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/IrradianceGlow.tsx",
+ "source_location": "L47",
+ "_origin": "ast",
+ "community": 25,
+ "norm_label": "irradianceglowprops",
+ "id": "frontend_src_components_workbench_irradianceglow_irradianceglowprops",
+ "community_name": "Community 25"
+ },
+ {
+ "label": "IrradianceGlow()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/IrradianceGlow.tsx",
+ "source_location": "L55",
+ "_origin": "ast",
+ "community": 25,
+ "norm_label": "irradianceglow()",
+ "id": "frontend_src_components_workbench_irradianceglow_irradianceglow",
+ "community_name": "Community 25"
+ },
+ {
+ "label": "LayoutPresetModal.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "layoutpresetmodal.tsx",
+ "id": "frontend_src_components_workbench_layoutpresetmodal",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "billLabel()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L38",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "billlabel()",
+ "id": "frontend_src_components_workbench_layoutpresetmodal_billlabel",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "Goal",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L43",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "goal",
+ "id": "frontend_src_components_workbench_layoutpresetmodal_goal",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "LayoutPresetModalProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L45",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "layoutpresetmodalprops",
+ "id": "frontend_src_components_workbench_layoutpresetmodal_layoutpresetmodalprops",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "LayoutPresetModal()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L57",
+ "_origin": "ast",
+ "community": 10,
+ "norm_label": "layoutpresetmodal()",
+ "id": "frontend_src_components_workbench_layoutpresetmodal_layoutpresetmodal",
+ "community_name": "Community 10"
+ },
+ {
+ "label": "PanelLayer.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "panellayer.tsx",
+ "id": "frontend_src_components_workbench_panellayer",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "RenderPanel",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "renderpanel",
+ "id": "frontend_src_components_workbench_panellayer_renderpanel",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "PanelLayerProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "panellayerprops",
+ "id": "frontend_src_components_workbench_panellayer_panellayerprops",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "panelAnnualEnergy()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L41",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "panelannualenergy()",
+ "id": "frontend_src_components_workbench_panellayer_panelannualenergy",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "getPanelColorByRatio()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L49",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "getpanelcolorbyratio()",
+ "id": "frontend_src_components_workbench_panellayer_getpanelcolorbyratio",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "PanelLayer()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L61",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "panellayer()",
+ "id": "frontend_src_components_workbench_panellayer_panellayer",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "PanelModelDrawer.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 54,
+ "norm_label": "panelmodeldrawer.tsx",
+ "id": "frontend_src_components_workbench_panelmodeldrawer",
+ "community_name": "Community 54"
+ },
+ {
+ "label": "PanelPreview3D",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 54,
+ "norm_label": "panelpreview3d",
+ "id": "frontend_src_components_workbench_panelmodeldrawer_panelpreview3d",
+ "community_name": "Community 54"
+ },
+ {
+ "label": "MODEL_CELL_COLORS",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 54,
+ "norm_label": "model_cell_colors",
+ "id": "frontend_src_components_workbench_panelmodeldrawer_model_cell_colors",
+ "community_name": "Community 54"
+ },
+ {
+ "label": "PanelModelDrawerProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 54,
+ "norm_label": "panelmodeldrawerprops",
+ "id": "frontend_src_components_workbench_panelmodeldrawer_panelmodeldrawerprops",
+ "community_name": "Community 54"
+ },
+ {
+ "label": "PanelModelDrawer()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 54,
+ "norm_label": "panelmodeldrawer()",
+ "id": "frontend_src_components_workbench_panelmodeldrawer_panelmodeldrawer",
+ "community_name": "Community 54"
+ },
+ {
+ "label": "ModelCard()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L107",
+ "_origin": "ast",
+ "community": 54,
+ "norm_label": "modelcard()",
+ "id": "frontend_src_components_workbench_panelmodeldrawer_modelcard",
+ "community_name": "Community 54"
+ },
+ {
+ "label": "PanelPreview3D.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelPreview3D.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 84,
+ "norm_label": "panelpreview3d.tsx",
+ "id": "frontend_src_components_workbench_panelpreview3d",
+ "community_name": "Community 84"
+ },
+ {
+ "label": "PanelPreview3DProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelPreview3D.tsx",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 84,
+ "norm_label": "panelpreview3dprops",
+ "id": "frontend_src_components_workbench_panelpreview3d_panelpreview3dprops",
+ "community_name": "Community 84"
+ },
+ {
+ "label": "PanelMesh()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelPreview3D.tsx",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 84,
+ "norm_label": "panelmesh()",
+ "id": "frontend_src_components_workbench_panelpreview3d_panelmesh",
+ "community_name": "Community 84"
+ },
+ {
+ "label": "PanelPreview3D()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelPreview3D.tsx",
+ "source_location": "L108",
+ "_origin": "ast",
+ "community": 84,
+ "norm_label": "panelpreview3d()",
+ "id": "frontend_src_components_workbench_panelpreview3d_panelpreview3d",
+ "community_name": "Community 84"
+ },
+ {
+ "label": "PanelRect.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelRect.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "panelrect.tsx",
+ "id": "frontend_src_components_workbench_panelrect",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "PanelRectProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelRect.tsx",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "panelrectprops",
+ "id": "frontend_src_components_workbench_panelrect_panelrectprops",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "getCursor()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelRect.tsx",
+ "source_location": "L30",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "getcursor()",
+ "id": "frontend_src_components_workbench_panelrect_getcursor",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "PanelRectInternal()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelRect.tsx",
+ "source_location": "L40",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "panelrectinternal()",
+ "id": "frontend_src_components_workbench_panelrect_panelrectinternal",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "PanelRect",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/PanelRect.tsx",
+ "source_location": "L128",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "panelrect",
+ "id": "frontend_src_components_workbench_panelrect_panelrect",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "RotationHandle.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/RotationHandle.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "rotationhandle.tsx",
+ "id": "frontend_src_components_workbench_rotationhandle",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "RotationHandleProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/RotationHandle.tsx",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "rotationhandleprops",
+ "id": "frontend_src_components_workbench_rotationhandle_rotationhandleprops",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "RotationHandle()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/RotationHandle.tsx",
+ "source_location": "L26",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "rotationhandle()",
+ "id": "frontend_src_components_workbench_rotationhandle_rotationhandle",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "ToolButton.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/ToolButton.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "toolbutton.tsx",
+ "id": "frontend_src_components_workbench_toolbutton",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "TooltipState",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/ToolButton.tsx",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "tooltipstate",
+ "id": "frontend_src_components_workbench_toolbutton_tooltipstate",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "ToolButtonProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/ToolButton.tsx",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "toolbuttonprops",
+ "id": "frontend_src_components_workbench_toolbutton_toolbuttonprops",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "ToolButton()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/ToolButton.tsx",
+ "source_location": "L28",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "toolbutton()",
+ "id": "frontend_src_components_workbench_toolbutton_toolbutton",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "SwatchButtonProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/ToolButton.tsx",
+ "source_location": "L81",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "swatchbuttonprops",
+ "id": "frontend_src_components_workbench_toolbutton_swatchbuttonprops",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "SwatchButton()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/ToolButton.tsx",
+ "source_location": "L94",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "swatchbutton()",
+ "id": "frontend_src_components_workbench_toolbutton_swatchbutton",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "ToolbarIcons.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "toolbaricons.tsx",
+ "id": "frontend_src_components_workbench_toolbaricons",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "svgProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "svgprops",
+ "id": "frontend_src_components_workbench_toolbaricons_svgprops",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "CollapseIcon()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "collapseicon()",
+ "id": "frontend_src_components_workbench_toolbaricons_collapseicon",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "ExpandIcon()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L30",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "expandicon()",
+ "id": "frontend_src_components_workbench_toolbaricons_expandicon",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "UndoIcon()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L42",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "undoicon()",
+ "id": "frontend_src_components_workbench_toolbaricons_undoicon",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "RedoIcon()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L52",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "redoicon()",
+ "id": "frontend_src_components_workbench_toolbaricons_redoicon",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "MarqueeIcon()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L62",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "marqueeicon()",
+ "id": "frontend_src_components_workbench_toolbaricons_marqueeicon",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "SnapIcon()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L86",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "snapicon()",
+ "id": "frontend_src_components_workbench_toolbaricons_snapicon",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "DeleteIcon()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L99",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "deleteicon()",
+ "id": "frontend_src_components_workbench_toolbaricons_deleteicon",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "RotateIcon()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L110",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "rotateicon()",
+ "id": "frontend_src_components_workbench_toolbaricons_rotateicon",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "LayersIcon()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L120",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "layersicon()",
+ "id": "frontend_src_components_workbench_toolbaricons_layersicon",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "WorkbenchHintOverlay.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/WorkbenchHintOverlay.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 80,
+ "norm_label": "workbenchhintoverlay.tsx",
+ "id": "frontend_src_components_workbench_workbenchhintoverlay",
+ "community_name": "Community 80"
+ },
+ {
+ "label": "readPermanentDismiss()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/WorkbenchHintOverlay.tsx",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 80,
+ "norm_label": "readpermanentdismiss()",
+ "id": "frontend_src_components_workbench_workbenchhintoverlay_readpermanentdismiss",
+ "community_name": "Community 80"
+ },
+ {
+ "label": "writePermanentDismiss()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/WorkbenchHintOverlay.tsx",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 80,
+ "norm_label": "writepermanentdismiss()",
+ "id": "frontend_src_components_workbench_workbenchhintoverlay_writepermanentdismiss",
+ "community_name": "Community 80"
+ },
+ {
+ "label": "Props",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/WorkbenchHintOverlay.tsx",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 80,
+ "norm_label": "props",
+ "id": "frontend_src_components_workbench_workbenchhintoverlay_props",
+ "community_name": "Community 80"
+ },
+ {
+ "label": "WorkbenchHintOverlay()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/WorkbenchHintOverlay.tsx",
+ "source_location": "L48",
+ "_origin": "ast",
+ "community": 80,
+ "norm_label": "workbenchhintoverlay()",
+ "id": "frontend_src_components_workbench_workbenchhintoverlay_workbenchhintoverlay",
+ "community_name": "Community 80"
+ },
+ {
+ "label": "WorkbenchSidebar.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "workbenchsidebar.tsx",
+ "id": "frontend_src_components_workbench_workbenchsidebar",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "UiMessage",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "uimessage",
+ "id": "frontend_src_components_workbench_workbenchsidebar_uimessage",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SelectedPanelData",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "selectedpaneldata",
+ "id": "frontend_src_components_workbench_workbenchsidebar_selectedpaneldata",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "WorkbenchSidebarProps",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L31",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "workbenchsidebarprops",
+ "id": "frontend_src_components_workbench_workbenchsidebar_workbenchsidebarprops",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "WorkbenchSidebar()",
+ "file_type": "code",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L65",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "workbenchsidebar()",
+ "id": "frontend_src_components_workbench_workbenchsidebar_workbenchsidebar",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "useChat.test.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/__tests__/useChat.test.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "usechat.test.tsx",
+ "id": "frontend_src_hooks_tests_usechat_test",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "getSessionMock",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/__tests__/useChat.test.tsx",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "getsessionmock",
+ "id": "frontend_src_hooks_tests_usechat_test_getsessionmock",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "installFetchMock()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/__tests__/useChat.test.tsx",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "installfetchmock()",
+ "id": "frontend_src_hooks_tests_usechat_test_installfetchmock",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "buildSseResponse()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/__tests__/useChat.test.tsx",
+ "source_location": "L47",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "buildsseresponse()",
+ "id": "frontend_src_hooks_tests_usechat_test_buildsseresponse",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "wrapper()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/__tests__/useChat.test.tsx",
+ "source_location": "L68",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "wrapper()",
+ "id": "frontend_src_hooks_tests_usechat_test_wrapper",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "usePanelState.test.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/__tests__/usePanelState.test.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "usepanelstate.test.tsx",
+ "id": "frontend_src_hooks_tests_usepanelstate_test",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "solarPanels",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/__tests__/usePanelState.test.tsx",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "solarpanels",
+ "id": "frontend_src_hooks_tests_usepanelstate_test_solarpanels",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "roofSegments",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/__tests__/usePanelState.test.tsx",
+ "source_location": "L50",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "roofsegments",
+ "id": "frontend_src_hooks_tests_usepanelstate_test_roofsegments",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "usePanelStateUndoRedo.test.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/__tests__/usePanelStateUndoRedo.test.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "usepanelstateundoredo.test.tsx",
+ "id": "frontend_src_hooks_tests_usepanelstateundoredo_test",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "solarPanels",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/__tests__/usePanelStateUndoRedo.test.tsx",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "solarpanels",
+ "id": "frontend_src_hooks_tests_usepanelstateundoredo_test_solarpanels",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "roofSegments",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/__tests__/usePanelStateUndoRedo.test.tsx",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "roofsegments",
+ "id": "frontend_src_hooks_tests_usepanelstateundoredo_test_roofsegments",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "setup()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/__tests__/usePanelStateUndoRedo.test.tsx",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "setup()",
+ "id": "frontend_src_hooks_tests_usepanelstateundoredo_test_setup",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "useAnalysisForm.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 29,
+ "norm_label": "useanalysisform.ts",
+ "id": "frontend_src_hooks_useanalysisform",
+ "community_name": "Community 29"
+ },
+ {
+ "label": "AnalysisFormState",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L40",
+ "_origin": "ast",
+ "community": 29,
+ "norm_label": "analysisformstate",
+ "id": "frontend_src_hooks_useanalysisform_analysisformstate",
+ "community_name": "Community 29"
+ },
+ {
+ "label": "ChartDataPoint",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L43",
+ "_origin": "ast",
+ "community": 29,
+ "norm_label": "chartdatapoint",
+ "id": "frontend_src_hooks_useanalysisform_chartdatapoint",
+ "community_name": "Community 29"
+ },
+ {
+ "label": "useAnalysisForm()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L58",
+ "_origin": "ast",
+ "community": 29,
+ "norm_label": "useanalysisform()",
+ "id": "frontend_src_hooks_useanalysisform_useanalysisform",
+ "community_name": "Community 29"
+ },
+ {
+ "label": "useAnalysisPdf.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 59,
+ "norm_label": "useanalysispdf.ts",
+ "id": "frontend_src_hooks_useanalysispdf",
+ "community_name": "Community 59"
+ },
+ {
+ "label": "sanitizeFileName()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 59,
+ "norm_label": "sanitizefilename()",
+ "id": "frontend_src_hooks_useanalysispdf_sanitizefilename",
+ "community_name": "Community 59"
+ },
+ {
+ "label": "buildPdfFileName()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L32",
+ "_origin": "ast",
+ "community": 59,
+ "norm_label": "buildpdffilename()",
+ "id": "frontend_src_hooks_useanalysispdf_buildpdffilename",
+ "community_name": "Community 59"
+ },
+ {
+ "label": "triggerDownload()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L38",
+ "_origin": "ast",
+ "community": 59,
+ "norm_label": "triggerdownload()",
+ "id": "frontend_src_hooks_useanalysispdf_triggerdownload",
+ "community_name": "Community 59"
+ },
+ {
+ "label": "useAnalysisPdf()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L54",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "useanalysispdf()",
+ "id": "frontend_src_hooks_useanalysispdf_useanalysispdf",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "useAuth.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useAuth.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 38,
+ "norm_label": "useauth.tsx",
+ "id": "frontend_src_hooks_useauth",
+ "community_name": "Community 38"
+ },
+ {
+ "label": "AuthContextValue",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useAuth.tsx",
+ "source_location": "L31",
+ "_origin": "ast",
+ "community": 38,
+ "norm_label": "authcontextvalue",
+ "id": "frontend_src_hooks_useauth_authcontextvalue",
+ "community_name": "Community 38"
+ },
+ {
+ "label": "AuthContext",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useAuth.tsx",
+ "source_location": "L41",
+ "_origin": "ast",
+ "community": 38,
+ "norm_label": "authcontext",
+ "id": "frontend_src_hooks_useauth_authcontext",
+ "community_name": "Community 38"
+ },
+ {
+ "label": "AuthProvider()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useAuth.tsx",
+ "source_location": "L47",
+ "_origin": "ast",
+ "community": 38,
+ "norm_label": "authprovider()",
+ "id": "frontend_src_hooks_useauth_authprovider",
+ "community_name": "Community 38"
+ },
+ {
+ "label": "useAuth()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useAuth.tsx",
+ "source_location": "L135",
+ "_origin": "ast",
+ "community": 44,
+ "norm_label": "useauth()",
+ "id": "frontend_src_hooks_useauth_useauth",
+ "community_name": "Community 44"
+ },
+ {
+ "label": "useCanvasInteractions.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "usecanvasinteractions.ts",
+ "id": "frontend_src_hooks_usecanvasinteractions",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "getPlacementErrorMessage()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L58",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "getplacementerrormessage()",
+ "id": "frontend_src_hooks_usecanvasinteractions_getplacementerrormessage",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "UseCanvasInteractionsOptions",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L69",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "usecanvasinteractionsoptions",
+ "id": "frontend_src_hooks_usecanvasinteractions_usecanvasinteractionsoptions",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "useCanvasInteractions()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L104",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "usecanvasinteractions()",
+ "id": "frontend_src_hooks_usecanvasinteractions_usecanvasinteractions",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "useCanvasZoom.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useCanvasZoom.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 25,
+ "norm_label": "usecanvaszoom.ts",
+ "id": "frontend_src_hooks_usecanvaszoom",
+ "community_name": "Community 25"
+ },
+ {
+ "label": "useCanvasZoom()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useCanvasZoom.ts",
+ "source_location": "L27",
+ "_origin": "ast",
+ "community": 25,
+ "norm_label": "usecanvaszoom()",
+ "id": "frontend_src_hooks_usecanvaszoom_usecanvaszoom",
+ "community_name": "Community 25"
+ },
+ {
+ "label": "useChat.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "usechat.ts",
+ "id": "frontend_src_hooks_usechat",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "ChatPage",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "chatpage",
+ "id": "frontend_src_hooks_usechat_chatpage",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "ChatEvent",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "chatevent",
+ "id": "frontend_src_hooks_usechat_chatevent",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "ChatLiveState",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "chatlivestate",
+ "id": "frontend_src_hooks_usechat_chatlivestate",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "hasLiveState()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L28",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "haslivestate()",
+ "id": "frontend_src_hooks_usechat_haslivestate",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "samplePool()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L39",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "samplepool()",
+ "id": "frontend_src_hooks_usechat_samplepool",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "parseSseEventBlock()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L52",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "parsesseeventblock()",
+ "id": "frontend_src_hooks_usechat_parsesseeventblock",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "drainSseBuffer()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L64",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "drainssebuffer()",
+ "id": "frontend_src_hooks_usechat_drainssebuffer",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "buildAuthHeaders()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L77",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "buildauthheaders()",
+ "id": "frontend_src_hooks_usechat_buildauthheaders",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "UseChatReturn",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L90",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "usechatreturn",
+ "id": "frontend_src_hooks_usechat_usechatreturn",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "normaliseLanguage()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L101",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "normaliselanguage()",
+ "id": "frontend_src_hooks_usechat_normaliselanguage",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "buildHistory()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L108",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "buildhistory()",
+ "id": "frontend_src_hooks_usechat_buildhistory",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "readErrorMessage()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L119",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "readerrormessage()",
+ "id": "frontend_src_hooks_usechat_readerrormessage",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "useChat()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L133",
+ "_origin": "ast",
+ "community": 4,
+ "norm_label": "usechat()",
+ "id": "frontend_src_hooks_usechat_usechat",
+ "community_name": "Community 4"
+ },
+ {
+ "label": "useGoogleMaps.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useGoogleMaps.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "usegooglemaps.ts",
+ "id": "frontend_src_hooks_usegooglemaps",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "loader",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useGoogleMaps.ts",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "loader",
+ "id": "frontend_src_hooks_usegooglemaps_loader",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "ensureLoaded()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useGoogleMaps.ts",
+ "source_location": "L30",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "ensureloaded()",
+ "id": "frontend_src_hooks_usegooglemaps_ensureloaded",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "useGoogleMaps()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useGoogleMaps.ts",
+ "source_location": "L51",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "usegooglemaps()",
+ "id": "frontend_src_hooks_usegooglemaps_usegooglemaps",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "useIrradiance.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useIrradiance.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 25,
+ "norm_label": "useirradiance.ts",
+ "id": "frontend_src_hooks_useirradiance",
+ "community_name": "Community 25"
+ },
+ {
+ "label": "useIrradiance()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useIrradiance.ts",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 25,
+ "norm_label": "useirradiance()",
+ "id": "frontend_src_hooks_useirradiance_useirradiance",
+ "community_name": "Community 25"
+ },
+ {
+ "label": "useLocale.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 38,
+ "norm_label": "uselocale.tsx",
+ "id": "frontend_src_hooks_uselocale",
+ "community_name": "Community 38"
+ },
+ {
+ "label": "LocaleContextValue",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 38,
+ "norm_label": "localecontextvalue",
+ "id": "frontend_src_hooks_uselocale_localecontextvalue",
+ "community_name": "Community 38"
+ },
+ {
+ "label": "LocaleContext",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 38,
+ "norm_label": "localecontext",
+ "id": "frontend_src_hooks_uselocale_localecontext",
+ "community_name": "Community 38"
+ },
+ {
+ "label": "readInitialLocale()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L32",
+ "_origin": "ast",
+ "community": 38,
+ "norm_label": "readinitiallocale()",
+ "id": "frontend_src_hooks_uselocale_readinitiallocale",
+ "community_name": "Community 38"
+ },
+ {
+ "label": "LocaleProvider()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L46",
+ "_origin": "ast",
+ "community": 38,
+ "norm_label": "localeprovider()",
+ "id": "frontend_src_hooks_uselocale_localeprovider",
+ "community_name": "Community 38"
+ },
+ {
+ "label": "useLocale()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L101",
+ "_origin": "ast",
+ "community": 61,
+ "norm_label": "uselocale()",
+ "id": "frontend_src_hooks_uselocale_uselocale",
+ "community_name": "Community 61"
+ },
+ {
+ "label": "useOverlayImages.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useOverlayImages.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 60,
+ "norm_label": "useoverlayimages.ts",
+ "id": "frontend_src_hooks_useoverlayimages",
+ "community_name": "Community 60"
+ },
+ {
+ "label": "useLoadedImage()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useOverlayImages.ts",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 60,
+ "norm_label": "useloadedimage()",
+ "id": "frontend_src_hooks_useoverlayimages_useloadedimage",
+ "community_name": "Community 60"
+ },
+ {
+ "label": "OverlayMode",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useOverlayImages.ts",
+ "source_location": "L61",
+ "_origin": "ast",
+ "community": 60,
+ "norm_label": "overlaymode",
+ "id": "frontend_src_hooks_useoverlayimages_overlaymode",
+ "community_name": "Community 60"
+ },
+ {
+ "label": "useOverlayImages()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useOverlayImages.ts",
+ "source_location": "L71",
+ "_origin": "ast",
+ "community": 60,
+ "norm_label": "useoverlayimages()",
+ "id": "frontend_src_hooks_useoverlayimages_useoverlayimages",
+ "community_name": "Community 60"
+ },
+ {
+ "label": "usePanelState.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "usepanelstate.ts",
+ "id": "frontend_src_hooks_usepanelstate",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "UndoRedoSnapshot",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "undoredosnapshot",
+ "id": "frontend_src_hooks_usepanelstate_undoredosnapshot",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "WorkbenchPanelState",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L41",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "workbenchpanelstate",
+ "id": "frontend_src_hooks_usepanelstate_workbenchpanelstate",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "BatchRecomputeStatus",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L53",
+ "_origin": "ast",
+ "community": 25,
+ "norm_label": "batchrecomputestatus",
+ "id": "frontend_src_hooks_usepanelstate_batchrecomputestatus",
+ "community_name": "Community 25"
+ },
+ {
+ "label": "UsePanelStateArgs",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L55",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "usepanelstateargs",
+ "id": "frontend_src_hooks_usepanelstate_usepanelstateargs",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "WORKBENCH_CONFIG",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L81",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "workbench_config",
+ "id": "frontend_src_hooks_usepanelstate_workbench_config",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "getPanelAnnualEnergy()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L89",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "getpanelannualenergy()",
+ "id": "frontend_src_hooks_usepanelstate_getpanelannualenergy",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "getSortedPanelIds()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L95",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "getsortedpanelids()",
+ "id": "frontend_src_hooks_usepanelstate_getsortedpanelids",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "usePanelState()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L118",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "usepanelstate()",
+ "id": "frontend_src_hooks_usepanelstate_usepanelstate",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "useQuota.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useQuota.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 28,
+ "norm_label": "usequota.ts",
+ "id": "frontend_src_hooks_usequota",
+ "community_name": "Community 28"
+ },
+ {
+ "label": "formatReset()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useQuota.ts",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 28,
+ "norm_label": "formatreset()",
+ "id": "frontend_src_hooks_usequota_formatreset",
+ "community_name": "Community 28"
+ },
+ {
+ "label": "useQuota()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useQuota.ts",
+ "source_location": "L31",
+ "_origin": "ast",
+ "community": 28,
+ "norm_label": "usequota()",
+ "id": "frontend_src_hooks_usequota_usequota",
+ "community_name": "Community 28"
+ },
+ {
+ "label": "useStageSize.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useStageSize.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 25,
+ "norm_label": "usestagesize.ts",
+ "id": "frontend_src_hooks_usestagesize",
+ "community_name": "Community 25"
+ },
+ {
+ "label": "useStageSize()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useStageSize.ts",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 25,
+ "norm_label": "usestagesize()",
+ "id": "frontend_src_hooks_usestagesize_usestagesize",
+ "community_name": "Community 25"
+ },
+ {
+ "label": "useTheme.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useTheme.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "usetheme.tsx",
+ "id": "frontend_src_hooks_usetheme",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "Theme",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useTheme.tsx",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "theme",
+ "id": "frontend_src_hooks_usetheme_theme",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "ThemeContextValue",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useTheme.tsx",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "themecontextvalue",
+ "id": "frontend_src_hooks_usetheme_themecontextvalue",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "ThemeContext",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useTheme.tsx",
+ "source_location": "L29",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "themecontext",
+ "id": "frontend_src_hooks_usetheme_themecontext",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "getSystemTheme()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useTheme.tsx",
+ "source_location": "L32",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "getsystemtheme()",
+ "id": "frontend_src_hooks_usetheme_getsystemtheme",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "resolveTheme()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useTheme.tsx",
+ "source_location": "L37",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "resolvetheme()",
+ "id": "frontend_src_hooks_usetheme_resolvetheme",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "ThemeProvider()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useTheme.tsx",
+ "source_location": "L44",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "themeprovider()",
+ "id": "frontend_src_hooks_usetheme_themeprovider",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "useTheme()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useTheme.tsx",
+ "source_location": "L99",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "usetheme()",
+ "id": "frontend_src_hooks_usetheme_usetheme",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "useUndoRedo.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useUndoRedo.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "useundoredo.ts",
+ "id": "frontend_src_hooks_useundoredo",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "UndoRedoOptions",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useUndoRedo.ts",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "undoredooptions",
+ "id": "frontend_src_hooks_useundoredo_undoredooptions",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "UndoRedoControls",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useUndoRedo.ts",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "undoredocontrols",
+ "id": "frontend_src_hooks_useundoredo_undoredocontrols",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "useUndoRedo()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useUndoRedo.ts",
+ "source_location": "L29",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "useundoredo()",
+ "id": "frontend_src_hooks_useundoredo_useundoredo",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "useWorkbenchData.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useWorkbenchData.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 75,
+ "norm_label": "useworkbenchdata.ts",
+ "id": "frontend_src_hooks_useworkbenchdata",
+ "community_name": "Community 75"
+ },
+ {
+ "label": "DecodedRoofMask",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useWorkbenchData.ts",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 75,
+ "norm_label": "decodedroofmask",
+ "id": "frontend_src_hooks_useworkbenchdata_decodedroofmask",
+ "community_name": "Community 75"
+ },
+ {
+ "label": "decodeBase64()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useWorkbenchData.ts",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 75,
+ "norm_label": "decodebase64()",
+ "id": "frontend_src_hooks_useworkbenchdata_decodebase64",
+ "community_name": "Community 75"
+ },
+ {
+ "label": "useWorkbenchData()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useWorkbenchData.ts",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 75,
+ "norm_label": "useworkbenchdata()",
+ "id": "frontend_src_hooks_useworkbenchdata_useworkbenchdata",
+ "community_name": "Community 75"
+ },
+ {
+ "label": "useWorkbenchKeyboard.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useWorkbenchKeyboard.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 48,
+ "norm_label": "useworkbenchkeyboard.ts",
+ "id": "frontend_src_hooks_useworkbenchkeyboard",
+ "community_name": "Community 48"
+ },
+ {
+ "label": "UseWorkbenchKeyboardOptions",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useWorkbenchKeyboard.ts",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 48,
+ "norm_label": "useworkbenchkeyboardoptions",
+ "id": "frontend_src_hooks_useworkbenchkeyboard_useworkbenchkeyboardoptions",
+ "community_name": "Community 48"
+ },
+ {
+ "label": "isTypingInElement()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useWorkbenchKeyboard.ts",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 48,
+ "norm_label": "istypinginelement()",
+ "id": "frontend_src_hooks_useworkbenchkeyboard_istypinginelement",
+ "community_name": "Community 48"
+ },
+ {
+ "label": "useWorkbenchKeyboard()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useWorkbenchKeyboard.ts",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 48,
+ "norm_label": "useworkbenchkeyboard()",
+ "id": "frontend_src_hooks_useworkbenchkeyboard_useworkbenchkeyboard",
+ "community_name": "Community 48"
+ },
+ {
+ "label": "useWorkbenchSave.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useWorkbenchSave.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 27,
+ "norm_label": "useworkbenchsave.ts",
+ "id": "frontend_src_hooks_useworkbenchsave",
+ "community_name": "Community 27"
+ },
+ {
+ "label": "UseWorkbenchSaveOptions",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useWorkbenchSave.ts",
+ "source_location": "L33",
+ "_origin": "ast",
+ "community": 27,
+ "norm_label": "useworkbenchsaveoptions",
+ "id": "frontend_src_hooks_useworkbenchsave_useworkbenchsaveoptions",
+ "community_name": "Community 27"
+ },
+ {
+ "label": "useWorkbenchSave()",
+ "file_type": "code",
+ "source_file": "frontend/src/hooks/useWorkbenchSave.ts",
+ "source_location": "L48",
+ "_origin": "ast",
+ "community": 27,
+ "norm_label": "useworkbenchsave()",
+ "id": "frontend_src_hooks_useworkbenchsave_useworkbenchsave",
+ "community_name": "Community 27"
+ },
+ {
+ "label": "analysis.test.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "analysis.test.ts",
+ "id": "frontend_src_lib_tests_analysis_test",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "monthResult",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "monthresult",
+ "id": "frontend_src_lib_tests_analysis_test_monthresult",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "baselineSimulation",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L349",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "baselinesimulation",
+ "id": "frontend_src_lib_tests_analysis_test_baselinesimulation",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "billingEngine.test.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/__tests__/billingEngine.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 50,
+ "norm_label": "billingengine.test.ts",
+ "id": "frontend_src_lib_tests_billingengine_test",
+ "community_name": "Community 50"
+ },
+ {
+ "label": "config",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/__tests__/billingEngine.test.ts",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 50,
+ "norm_label": "config",
+ "id": "frontend_src_lib_tests_billingengine_test_config",
+ "community_name": "Community 50"
+ },
+ {
+ "label": "buildingInsights.test.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/__tests__/buildingInsights.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "buildinginsights.test.ts",
+ "id": "frontend_src_lib_tests_buildinginsights_test",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "canvasTransforms.test.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/__tests__/canvasTransforms.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "canvastransforms.test.ts",
+ "id": "frontend_src_lib_tests_canvastransforms_test",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "imageGeoTransform",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/__tests__/canvasTransforms.test.ts",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "imagegeotransform",
+ "id": "frontend_src_lib_tests_canvastransforms_test_imagegeotransform",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "costModel.test.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/__tests__/costModel.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 56,
+ "norm_label": "costmodel.test.ts",
+ "id": "frontend_src_lib_tests_costmodel_test",
+ "community_name": "Community 56"
+ },
+ {
+ "label": "projectStatus.test.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/__tests__/projectStatus.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 55,
+ "norm_label": "projectstatus.test.ts",
+ "id": "frontend_src_lib_tests_projectstatus_test",
+ "community_name": "Community 55"
+ },
+ {
+ "label": "ALL_STATUSES",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/__tests__/projectStatus.test.ts",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 55,
+ "norm_label": "all_statuses",
+ "id": "frontend_src_lib_tests_projectstatus_test_all_statuses",
+ "community_name": "Community 55"
+ },
+ {
+ "label": "snapAlignment.test.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/__tests__/snapAlignment.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "snapalignment.test.ts",
+ "id": "frontend_src_lib_tests_snapalignment_test",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "snap()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/__tests__/snapAlignment.test.ts",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "snap()",
+ "id": "frontend_src_lib_tests_snapalignment_test_snap",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "analysis.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "analysis.ts",
+ "id": "frontend_src_lib_analysis",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "ANALYSIS_DISCLAIMER_KEYS",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L45",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "analysis_disclaimer_keys",
+ "id": "frontend_src_lib_analysis_analysis_disclaimer_keys",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "AnalysisDisclaimerKey",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L56",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "analysisdisclaimerkey",
+ "id": "frontend_src_lib_analysis_analysisdisclaimerkey",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "config.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 49,
+ "norm_label": "config.ts",
+ "id": "frontend_src_lib_analysis_config",
+ "community_name": "Community 49"
+ },
+ {
+ "label": "ConnectionPhase",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 49,
+ "norm_label": "connectionphase",
+ "id": "frontend_src_lib_analysis_config_connectionphase",
+ "community_name": "Community 49"
+ },
+ {
+ "label": "AnalysisMode",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "analysismode",
+ "id": "frontend_src_lib_analysis_config_analysismode",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "ConsumptionProfile",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 29,
+ "norm_label": "consumptionprofile",
+ "id": "frontend_src_lib_analysis_config_consumptionprofile",
+ "community_name": "Community 29"
+ },
+ {
+ "label": "InverterReplacement",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "inverterreplacement",
+ "id": "frontend_src_lib_analysis_config_inverterreplacement",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "DEFAULT_INVERTER_REPLACEMENT",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "default_inverter_replacement",
+ "id": "frontend_src_lib_analysis_config_default_inverter_replacement",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "AnalysisConfig",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 49,
+ "norm_label": "analysisconfig",
+ "id": "frontend_src_lib_analysis_config_analysisconfig",
+ "community_name": "Community 49"
+ },
+ {
+ "label": "round2()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L46",
+ "_origin": "ast",
+ "community": 49,
+ "norm_label": "round2()",
+ "id": "frontend_src_lib_analysis_config_round2",
+ "community_name": "Community 49"
+ },
+ {
+ "label": "isRecord()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L50",
+ "_origin": "ast",
+ "community": 49,
+ "norm_label": "isrecord()",
+ "id": "frontend_src_lib_analysis_config_isrecord",
+ "community_name": "Community 49"
+ },
+ {
+ "label": "getNumber()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L54",
+ "_origin": "ast",
+ "community": 49,
+ "norm_label": "getnumber()",
+ "id": "frontend_src_lib_analysis_config_getnumber",
+ "community_name": "Community 49"
+ },
+ {
+ "label": "getConnectionPhase()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L58",
+ "_origin": "ast",
+ "community": 49,
+ "norm_label": "getconnectionphase()",
+ "id": "frontend_src_lib_analysis_config_getconnectionphase",
+ "community_name": "Community 49"
+ },
+ {
+ "label": "getRoofType()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L62",
+ "_origin": "ast",
+ "community": 49,
+ "norm_label": "getrooftype()",
+ "id": "frontend_src_lib_analysis_config_getrooftype",
+ "community_name": "Community 49"
+ },
+ {
+ "label": "getConsumptionProfile()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L66",
+ "_origin": "ast",
+ "community": 49,
+ "norm_label": "getconsumptionprofile()",
+ "id": "frontend_src_lib_analysis_config_getconsumptionprofile",
+ "community_name": "Community 49"
+ },
+ {
+ "label": "TARIFF_RATE_KEYS",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L70",
+ "_origin": "ast",
+ "community": 49,
+ "norm_label": "tariff_rate_keys",
+ "id": "frontend_src_lib_analysis_config_tariff_rate_keys",
+ "community_name": "Community 49"
+ },
+ {
+ "label": "getTariffRatesOverride()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L81",
+ "_origin": "ast",
+ "community": 49,
+ "norm_label": "gettariffratesoverride()",
+ "id": "frontend_src_lib_analysis_config_gettariffratesoverride",
+ "community_name": "Community 49"
+ },
+ {
+ "label": "parseInverterReplacements()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L93",
+ "_origin": "ast",
+ "community": 49,
+ "norm_label": "parseinverterreplacements()",
+ "id": "frontend_src_lib_analysis_config_parseinverterreplacements",
+ "community_name": "Community 49"
+ },
+ {
+ "label": "parseSavedAnalysisConfig()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L128",
+ "_origin": "ast",
+ "community": 49,
+ "norm_label": "parsesavedanalysisconfig()",
+ "id": "frontend_src_lib_analysis_config_parsesavedanalysisconfig",
+ "community_name": "Community 49"
+ },
+ {
+ "label": "presentation.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 29,
+ "norm_label": "presentation.ts",
+ "id": "frontend_src_lib_analysis_presentation",
+ "community_name": "Community 29"
+ },
+ {
+ "label": "MONTH_LABELS",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "month_labels",
+ "id": "frontend_src_lib_analysis_presentation_month_labels",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SEASONAL_MULTIPLIERS",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 29,
+ "norm_label": "seasonal_multipliers",
+ "id": "frontend_src_lib_analysis_presentation_seasonal_multipliers",
+ "community_name": "Community 29"
+ },
+ {
+ "label": "AnalysisChartDataPoint",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "analysischartdatapoint",
+ "id": "frontend_src_lib_analysis_presentation_analysischartdatapoint",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "LayoutOrientationSummary",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L27",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "layoutorientationsummary",
+ "id": "frontend_src_lib_analysis_presentation_layoutorientationsummary",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "round2()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 29,
+ "norm_label": "round2()",
+ "id": "frontend_src_lib_analysis_presentation_round2",
+ "community_name": "Community 29"
+ },
+ {
+ "label": "applySeasonalProfile()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L45",
+ "_origin": "ast",
+ "community": 29,
+ "norm_label": "applyseasonalprofile()",
+ "id": "frontend_src_lib_analysis_presentation_applyseasonalprofile",
+ "community_name": "Community 29"
+ },
+ {
+ "label": "aggregateMonthlyGeneration()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L55",
+ "_origin": "ast",
+ "community": 29,
+ "norm_label": "aggregatemonthlygeneration()",
+ "id": "frontend_src_lib_analysis_presentation_aggregatemonthlygeneration",
+ "community_name": "Community 29"
+ },
+ {
+ "label": "COMPASS_8",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L67",
+ "_origin": "ast",
+ "community": 29,
+ "norm_label": "compass_8",
+ "id": "frontend_src_lib_analysis_presentation_compass_8",
+ "community_name": "Community 29"
+ },
+ {
+ "label": "azimuthToCompass()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L75",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "azimuthtocompass()",
+ "id": "frontend_src_lib_analysis_presentation_azimuthtocompass",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "summarizeLayoutOrientation()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L88",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "summarizelayoutorientation()",
+ "id": "frontend_src_lib_analysis_presentation_summarizelayoutorientation",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "applyPerformanceRatio()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L153",
+ "_origin": "ast",
+ "community": 29,
+ "norm_label": "applyperformanceratio()",
+ "id": "frontend_src_lib_analysis_presentation_applyperformanceratio",
+ "community_name": "Community 29"
+ },
+ {
+ "label": "buildMonthlyBillChartData()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L164",
+ "_origin": "ast",
+ "community": 29,
+ "norm_label": "buildmonthlybillchartdata()",
+ "id": "frontend_src_lib_analysis_presentation_buildmonthlybillchartdata",
+ "community_name": "Community 29"
+ },
+ {
+ "label": "isSeasonalProfile()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L185",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "isseasonalprofile()",
+ "id": "frontend_src_lib_analysis_presentation_isseasonalprofile",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "projections.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/projections.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "projections.ts",
+ "id": "frontend_src_lib_analysis_projections",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "NetBenefitPoint",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/projections.ts",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "netbenefitpoint",
+ "id": "frontend_src_lib_analysis_projections_netbenefitpoint",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "round2()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/projections.ts",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "round2()",
+ "id": "frontend_src_lib_analysis_projections_round2",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "computeDegradedSavings()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/projections.ts",
+ "source_location": "L26",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "computedegradedsavings()",
+ "id": "frontend_src_lib_analysis_projections_computedegradedsavings",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "normalizeInverterReplacements()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/projections.ts",
+ "source_location": "L49",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "normalizeinverterreplacements()",
+ "id": "frontend_src_lib_analysis_projections_normalizeinverterreplacements",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "buildNetBenefitSeries()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/projections.ts",
+ "source_location": "L88",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "buildnetbenefitseries()",
+ "id": "frontend_src_lib_analysis_projections_buildnetbenefitseries",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "results.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "results.ts",
+ "id": "frontend_src_lib_analysis_results",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "AnalysisResultsRecord",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "analysisresultsrecord",
+ "id": "frontend_src_lib_analysis_results_analysisresultsrecord",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "NemFit",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L37",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "nemfit",
+ "id": "frontend_src_lib_analysis_results_nemfit",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "NemFitClassification",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L40",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "nemfitclassification",
+ "id": "frontend_src_lib_analysis_results_nemfitclassification",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "NemFitMetrics",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L49",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "nemfitmetrics",
+ "id": "frontend_src_lib_analysis_results_nemfitmetrics",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "round2()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L60",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "round2()",
+ "id": "frontend_src_lib_analysis_results_round2",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "computeNemFitMetrics()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L70",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "computenemfitmetrics()",
+ "id": "frontend_src_lib_analysis_results_computenemfitmetrics",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "classifyNemFit()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L103",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "classifynemfit()",
+ "id": "frontend_src_lib_analysis_results_classifynemfit",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "computeSimplePaybackYears()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L123",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "computesimplepaybackyears()",
+ "id": "frontend_src_lib_analysis_results_computesimplepaybackyears",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "computeLifecyclePaybackYears()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L145",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "computelifecyclepaybackyears()",
+ "id": "frontend_src_lib_analysis_results_computelifecyclepaybackyears",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "buildAnalysisResults()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L196",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "buildanalysisresults()",
+ "id": "frontend_src_lib_analysis_results_buildanalysisresults",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "buildThresholdWarnings()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L302",
+ "_origin": "ast",
+ "community": 29,
+ "norm_label": "buildthresholdwarnings()",
+ "id": "frontend_src_lib_analysis_results_buildthresholdwarnings",
+ "community_name": "Community 29"
+ },
+ {
+ "label": "billingEngine.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 50,
+ "norm_label": "billingengine.ts",
+ "id": "frontend_src_lib_billingengine",
+ "community_name": "Community 50"
+ },
+ {
+ "label": "BillBreakdown",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 50,
+ "norm_label": "billbreakdown",
+ "id": "frontend_src_lib_billingengine_billbreakdown",
+ "community_name": "Community 50"
+ },
+ {
+ "label": "NemMonthResult",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "nemmonthresult",
+ "id": "frontend_src_lib_billingengine_nemmonthresult",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "AnnualSimulationResult",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L33",
+ "_origin": "ast",
+ "community": 11,
+ "norm_label": "annualsimulationresult",
+ "id": "frontend_src_lib_billingengine_annualsimulationresult",
+ "community_name": "Community 11"
+ },
+ {
+ "label": "BillingConfig",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L44",
+ "_origin": "ast",
+ "community": 50,
+ "norm_label": "billingconfig",
+ "id": "frontend_src_lib_billingengine_billingconfig",
+ "community_name": "Community 50"
+ },
+ {
+ "label": "round2()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L51",
+ "_origin": "ast",
+ "community": 50,
+ "norm_label": "round2()",
+ "id": "frontend_src_lib_billingengine_round2",
+ "community_name": "Community 50"
+ },
+ {
+ "label": "round5sen()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L55",
+ "_origin": "ast",
+ "community": 50,
+ "norm_label": "round5sen()",
+ "id": "frontend_src_lib_billingengine_round5sen",
+ "community_name": "Community 50"
+ },
+ {
+ "label": "lookupEeiRebate()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L67",
+ "_origin": "ast",
+ "community": 50,
+ "norm_label": "lookupeeirebate()",
+ "id": "frontend_src_lib_billingengine_lookupeeirebate",
+ "community_name": "Community 50"
+ },
+ {
+ "label": "computeBill()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L84",
+ "_origin": "ast",
+ "community": 50,
+ "norm_label": "computebill()",
+ "id": "frontend_src_lib_billingengine_computebill",
+ "community_name": "Community 50"
+ },
+ {
+ "label": "computeNemMonth()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L161",
+ "_origin": "ast",
+ "community": 50,
+ "norm_label": "computenemmonth()",
+ "id": "frontend_src_lib_billingengine_computenemmonth",
+ "community_name": "Community 50"
+ },
+ {
+ "label": "runAnnualSimulation()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L224",
+ "_origin": "ast",
+ "community": 50,
+ "norm_label": "runannualsimulation()",
+ "id": "frontend_src_lib_billingengine_runannualsimulation",
+ "community_name": "Community 50"
+ },
+ {
+ "label": "buildingInsights.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "buildinginsights.ts",
+ "id": "frontend_src_lib_buildinginsights",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "BoundingBox",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "boundingbox",
+ "id": "frontend_src_lib_buildinginsights_boundingbox",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "RoofSegment",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "roofsegment",
+ "id": "frontend_src_lib_buildinginsights_roofsegment",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "SolarPanel",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "solarpanel",
+ "id": "frontend_src_lib_buildinginsights_solarpanel",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "ParsedBuildingInsights",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "parsedbuildinginsights",
+ "id": "frontend_src_lib_buildinginsights_parsedbuildinginsights",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "isRecord()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L39",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "isrecord()",
+ "id": "frontend_src_lib_buildinginsights_isrecord",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "getNumber()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L43",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "getnumber()",
+ "id": "frontend_src_lib_buildinginsights_getnumber",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "getString()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L47",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "getstring()",
+ "id": "frontend_src_lib_buildinginsights_getstring",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "getCoordinate()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L51",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "getcoordinate()",
+ "id": "frontend_src_lib_buildinginsights_getcoordinate",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "getPanelCenter()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L67",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "getpanelcenter()",
+ "id": "frontend_src_lib_buildinginsights_getpanelcenter",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "parseBuildingInsights()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L88",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "parsebuildinginsights()",
+ "id": "frontend_src_lib_buildinginsights_parsebuildinginsights",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "parsePanelEdits()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L168",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "parsepaneledits()",
+ "id": "frontend_src_lib_buildinginsights_parsepaneledits",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "normalizeRotation()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L204",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "normalizerotation()",
+ "id": "frontend_src_lib_buildinginsights_normalizerotation",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "getInitialPanelRotation()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L215",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "getinitialpanelrotation()",
+ "id": "frontend_src_lib_buildinginsights_getinitialpanelrotation",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "annualEnergyFromMonthly()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L229",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "annualenergyfrommonthly()",
+ "id": "frontend_src_lib_buildinginsights_annualenergyfrommonthly",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "canvasTransforms.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "canvastransforms.ts",
+ "id": "frontend_src_lib_canvastransforms",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "CanvasGeo",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "canvasgeo",
+ "id": "frontend_src_lib_canvastransforms_canvasgeo",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "PixelPoint",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "pixelpoint",
+ "id": "frontend_src_lib_canvastransforms_pixelpoint",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "RectAabb",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "rectaabb",
+ "id": "frontend_src_lib_canvastransforms_rectaabb",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "RasterMask",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L27",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "rastermask",
+ "id": "frontend_src_lib_canvastransforms_rastermask",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "createCanvasGeo()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L41",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "createcanvasgeo()",
+ "id": "frontend_src_lib_canvastransforms_createcanvasgeo",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "latLngToPixel()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L63",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "latlngtopixel()",
+ "id": "frontend_src_lib_canvastransforms_latlngtopixel",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "pixelToLatLng()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L82",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "pixeltolatlng()",
+ "id": "frontend_src_lib_canvastransforms_pixeltolatlng",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "panelMetersToPixels()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L101",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "panelmeterstopixels()",
+ "id": "frontend_src_lib_canvastransforms_panelmeterstopixels",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "getRotatedRectPoints()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L126",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "getrotatedrectpoints()",
+ "id": "frontend_src_lib_canvastransforms_getrotatedrectpoints",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "getRectAabb()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L159",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "getrectaabb()",
+ "id": "frontend_src_lib_canvastransforms_getrectaabb",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "aabbsOverlap()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L175",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "aabbsoverlap()",
+ "id": "frontend_src_lib_canvastransforms_aabbsoverlap",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "satProjectionsOverlap()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L182",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "satprojectionsoverlap()",
+ "id": "frontend_src_lib_canvastransforms_satprojectionsoverlap",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "getEdgeNormals()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L200",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "getedgenormals()",
+ "id": "frontend_src_lib_canvastransforms_getedgenormals",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "obbsOverlap()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L221",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "obbsoverlap()",
+ "id": "frontend_src_lib_canvastransforms_obbsoverlap",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "MinSeparationResult",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L230",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "minseparationresult",
+ "id": "frontend_src_lib_canvastransforms_minseparationresult",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "obbsOverlapWithMinSeparation()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L243",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "obbsoverlapwithminseparation()",
+ "id": "frontend_src_lib_canvastransforms_obbsoverlapwithminseparation",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "isAabbInsideStage()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L289",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "isaabbinsidestage()",
+ "id": "frontend_src_lib_canvastransforms_isaabbinsidestage",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "pointInPolygon()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L301",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "pointinpolygon()",
+ "id": "frontend_src_lib_canvastransforms_pointinpolygon",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "isPolygonInsideRasterMask()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L328",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "ispolygoninsiderastermask()",
+ "id": "frontend_src_lib_canvastransforms_ispolygoninsiderastermask",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "constants.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/constants.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "constants.ts",
+ "id": "frontend_src_lib_constants",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "COLORS",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/constants.ts",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "colors",
+ "id": "frontend_src_lib_constants_colors",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "ThemeMode",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/constants.ts",
+ "source_location": "L27",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "thememode",
+ "id": "frontend_src_lib_constants_thememode",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "getChartTooltipStyle()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/constants.ts",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "getcharttooltipstyle()",
+ "id": "frontend_src_lib_constants_getcharttooltipstyle",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "CHART_TOOLTIP_STYLE",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/constants.ts",
+ "source_location": "L58",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "chart_tooltip_style",
+ "id": "frontend_src_lib_constants_chart_tooltip_style",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "lib/formatters.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/formatters.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "lib/formatters.ts",
+ "id": "frontend_src_lib_formatters",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "currencyFormatter",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/formatters.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "currencyformatter",
+ "id": "frontend_src_lib_formatters_currencyformatter",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "numberFormatter",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/formatters.ts",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "numberformatter",
+ "id": "frontend_src_lib_formatters_numberformatter",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "formatCurrency()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/formatters.ts",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "formatcurrency()",
+ "id": "frontend_src_lib_formatters_formatcurrency",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "formatNumber()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/formatters.ts",
+ "source_location": "L28",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "formatnumber()",
+ "id": "frontend_src_lib_formatters_formatnumber",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "formatTooltipCurrency()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/formatters.ts",
+ "source_location": "L40",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "formattooltipcurrency()",
+ "id": "frontend_src_lib_formatters_formattooltipcurrency",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "BILL_TOOLTIPS",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/formatters.ts",
+ "source_location": "L54",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "bill_tooltips",
+ "id": "frontend_src_lib_formatters_bill_tooltips",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "NEM_TOOLTIPS",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/formatters.ts",
+ "source_location": "L66",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "nem_tooltips",
+ "id": "frontend_src_lib_formatters_nem_tooltips",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "i18n.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/i18n.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 61,
+ "norm_label": "i18n.ts",
+ "id": "frontend_src_lib_i18n",
+ "community_name": "Community 61"
+ },
+ {
+ "label": "SUPPORTED_LOCALES",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/i18n.ts",
+ "source_location": "L54",
+ "_origin": "ast",
+ "community": 61,
+ "norm_label": "supported_locales",
+ "id": "frontend_src_lib_i18n_supported_locales",
+ "community_name": "Community 61"
+ },
+ {
+ "label": "SupportedLocale",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/i18n.ts",
+ "source_location": "L57",
+ "_origin": "ast",
+ "community": 61,
+ "norm_label": "supportedlocale",
+ "id": "frontend_src_lib_i18n_supportedlocale",
+ "community_name": "Community 61"
+ },
+ {
+ "label": "LOCALE_LABELS",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/i18n.ts",
+ "source_location": "L66",
+ "_origin": "ast",
+ "community": 61,
+ "norm_label": "locale_labels",
+ "id": "frontend_src_lib_i18n_locale_labels",
+ "community_name": "Community 61"
+ },
+ {
+ "label": "LOCALE_TO_INTL",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/i18n.ts",
+ "source_location": "L76",
+ "_origin": "ast",
+ "community": 61,
+ "norm_label": "locale_to_intl",
+ "id": "frontend_src_lib_i18n_locale_to_intl",
+ "community_name": "Community 61"
+ },
+ {
+ "label": "resources",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/i18n.ts",
+ "source_location": "L82",
+ "_origin": "ast",
+ "community": 61,
+ "norm_label": "resources",
+ "id": "frontend_src_lib_i18n_resources",
+ "community_name": "Community 61"
+ },
+ {
+ "label": "isSupportedLocale()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/i18n.ts",
+ "source_location": "L142",
+ "_origin": "ast",
+ "community": 38,
+ "norm_label": "issupportedlocale()",
+ "id": "frontend_src_lib_i18n_issupportedlocale",
+ "community_name": "Community 38"
+ },
+ {
+ "label": "layoutPreset.test.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/layoutPreset.test.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 48,
+ "norm_label": "layoutpreset.test.ts",
+ "id": "frontend_src_lib_layoutpreset_test",
+ "community_name": "Community 48"
+ },
+ {
+ "label": "panels()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/layoutPreset.test.ts",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 48,
+ "norm_label": "panels()",
+ "id": "frontend_src_lib_layoutpreset_test_panels",
+ "community_name": "Community 48"
+ },
+ {
+ "label": "layoutPreset.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "layoutpreset.ts",
+ "id": "frontend_src_lib_layoutpreset",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "PanelYieldEntry",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L26",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "panelyieldentry",
+ "id": "frontend_src_lib_layoutpreset_panelyieldentry",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "RoofSegmentEntry",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L32",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "roofsegmententry",
+ "id": "frontend_src_lib_layoutpreset_roofsegmententry",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "SIZING_GOAL_OFFSET",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L43",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "sizing_goal_offset",
+ "id": "frontend_src_lib_layoutpreset_sizing_goal_offset",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "billRangeToAnnualKwh()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L57",
+ "_origin": "ast",
+ "community": 48,
+ "norm_label": "billrangetoannualkwh()",
+ "id": "frontend_src_lib_layoutpreset_billrangetoannualkwh",
+ "community_name": "Community 48"
+ },
+ {
+ "label": "filterByDirection()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L62",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "filterbydirection()",
+ "id": "frontend_src_lib_layoutpreset_filterbydirection",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "inferVisibleCount()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L88",
+ "_origin": "ast",
+ "community": 48,
+ "norm_label": "infervisiblecount()",
+ "id": "frontend_src_lib_layoutpreset_infervisiblecount",
+ "community_name": "Community 48"
+ },
+ {
+ "label": "describeLayoutPreset()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L120",
+ "_origin": "ast",
+ "community": 48,
+ "norm_label": "describelayoutpreset()",
+ "id": "frontend_src_lib_layoutpreset_describelayoutpreset",
+ "community_name": "Community 48"
+ },
+ {
+ "label": "notificationStore.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/notificationStore.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 28,
+ "norm_label": "notificationstore.ts",
+ "id": "frontend_src_lib_notificationstore",
+ "community_name": "Community 28"
+ },
+ {
+ "label": "loadNotifications()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/notificationStore.ts",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 28,
+ "norm_label": "loadnotifications()",
+ "id": "frontend_src_lib_notificationstore_loadnotifications",
+ "community_name": "Community 28"
+ },
+ {
+ "label": "saveNotifications()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/notificationStore.ts",
+ "source_location": "L28",
+ "_origin": "ast",
+ "community": 28,
+ "norm_label": "savenotifications()",
+ "id": "frontend_src_lib_notificationstore_savenotifications",
+ "community_name": "Community 28"
+ },
+ {
+ "label": "Listener",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/notificationStore.ts",
+ "source_location": "L33",
+ "_origin": "ast",
+ "community": 28,
+ "norm_label": "listener",
+ "id": "frontend_src_lib_notificationstore_listener",
+ "community_name": "Community 28"
+ },
+ {
+ "label": "notifications",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/notificationStore.ts",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 28,
+ "norm_label": "notifications",
+ "id": "frontend_src_lib_notificationstore_notifications",
+ "community_name": "Community 28"
+ },
+ {
+ "label": "listeners",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/notificationStore.ts",
+ "source_location": "L36",
+ "_origin": "ast",
+ "community": 28,
+ "norm_label": "listeners",
+ "id": "frontend_src_lib_notificationstore_listeners",
+ "community_name": "Community 28"
+ },
+ {
+ "label": "emit()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/notificationStore.ts",
+ "source_location": "L39",
+ "_origin": "ast",
+ "community": 28,
+ "norm_label": "emit()",
+ "id": "frontend_src_lib_notificationstore_emit",
+ "community_name": "Community 28"
+ },
+ {
+ "label": "notificationStore",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/notificationStore.ts",
+ "source_location": "L48",
+ "_origin": "ast",
+ "community": 59,
+ "norm_label": "notificationstore",
+ "id": "frontend_src_lib_notificationstore_notificationstore",
+ "community_name": "Community 59"
+ },
+ {
+ "label": "projectDraftStorage.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/projectDraftStorage.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "projectdraftstorage.ts",
+ "id": "frontend_src_lib_projectdraftstorage",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "NewProjectDraft",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/projectDraftStorage.ts",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "newprojectdraft",
+ "id": "frontend_src_lib_projectdraftstorage_newprojectdraft",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "canUseSessionStorage()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/projectDraftStorage.ts",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "canusesessionstorage()",
+ "id": "frontend_src_lib_projectdraftstorage_canusesessionstorage",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "readNewProjectDraft()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/projectDraftStorage.ts",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "readnewprojectdraft()",
+ "id": "frontend_src_lib_projectdraftstorage_readnewprojectdraft",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "writeNewProjectDraft()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/projectDraftStorage.ts",
+ "source_location": "L47",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "writenewprojectdraft()",
+ "id": "frontend_src_lib_projectdraftstorage_writenewprojectdraft",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "clearNewProjectDraft()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/projectDraftStorage.ts",
+ "source_location": "L62",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "clearnewprojectdraft()",
+ "id": "frontend_src_lib_projectdraftstorage_clearnewprojectdraft",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "projectStatus.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 55,
+ "norm_label": "projectstatus.ts",
+ "id": "frontend_src_lib_projectstatus",
+ "community_name": "Community 55"
+ },
+ {
+ "label": "BadgeVariant",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 55,
+ "norm_label": "badgevariant",
+ "id": "frontend_src_lib_projectstatus_badgevariant",
+ "community_name": "Community 55"
+ },
+ {
+ "label": "StatusConfig",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 55,
+ "norm_label": "statusconfig",
+ "id": "frontend_src_lib_projectstatus_statusconfig",
+ "community_name": "Community 55"
+ },
+ {
+ "label": "STATUS_CONFIGS",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 55,
+ "norm_label": "status_configs",
+ "id": "frontend_src_lib_projectstatus_status_configs",
+ "community_name": "Community 55"
+ },
+ {
+ "label": "getProjectStatusConfig()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L50",
+ "_origin": "ast",
+ "community": 55,
+ "norm_label": "getprojectstatusconfig()",
+ "id": "frontend_src_lib_projectstatus_getprojectstatusconfig",
+ "community_name": "Community 55"
+ },
+ {
+ "label": "getProjectStatusLabel()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L55",
+ "_origin": "ast",
+ "community": 55,
+ "norm_label": "getprojectstatuslabel()",
+ "id": "frontend_src_lib_projectstatus_getprojectstatuslabel",
+ "community_name": "Community 55"
+ },
+ {
+ "label": "getProjectStatusVariant()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L60",
+ "_origin": "ast",
+ "community": 55,
+ "norm_label": "getprojectstatusvariant()",
+ "id": "frontend_src_lib_projectstatus_getprojectstatusvariant",
+ "community_name": "Community 55"
+ },
+ {
+ "label": "getProjectStatusTooltip()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L65",
+ "_origin": "ast",
+ "community": 55,
+ "norm_label": "getprojectstatustooltip()",
+ "id": "frontend_src_lib_projectstatus_getprojectstatustooltip",
+ "community_name": "Community 55"
+ },
+ {
+ "label": "recentProjectActivity.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/recentProjectActivity.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 81,
+ "norm_label": "recentprojectactivity.ts",
+ "id": "frontend_src_lib_recentprojectactivity",
+ "community_name": "Community 81"
+ },
+ {
+ "label": "RecentProjectActivity",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/recentProjectActivity.ts",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 81,
+ "norm_label": "recentprojectactivity",
+ "id": "frontend_src_lib_recentprojectactivity_recentprojectactivity",
+ "community_name": "Community 81"
+ },
+ {
+ "label": "readEntries()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/recentProjectActivity.ts",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 81,
+ "norm_label": "readentries()",
+ "id": "frontend_src_lib_recentprojectactivity_readentries",
+ "community_name": "Community 81"
+ },
+ {
+ "label": "markProjectVisited()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/recentProjectActivity.ts",
+ "source_location": "L26",
+ "_origin": "ast",
+ "community": 81,
+ "norm_label": "markprojectvisited()",
+ "id": "frontend_src_lib_recentprojectactivity_markprojectvisited",
+ "community_name": "Community 81"
+ },
+ {
+ "label": "getProjectLastVisitedAt()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/recentProjectActivity.ts",
+ "source_location": "L41",
+ "_origin": "ast",
+ "community": 81,
+ "norm_label": "getprojectlastvisitedat()",
+ "id": "frontend_src_lib_recentprojectactivity_getprojectlastvisitedat",
+ "community_name": "Community 81"
+ },
+ {
+ "label": "segmentVisualization.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/segmentVisualization.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "segmentvisualization.ts",
+ "id": "frontend_src_lib_segmentvisualization",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "SegmentHull",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/segmentVisualization.ts",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "segmenthull",
+ "id": "frontend_src_lib_segmentvisualization_segmenthull",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "azimuthColor()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/segmentVisualization.ts",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "azimuthcolor()",
+ "id": "frontend_src_lib_segmentvisualization_azimuthcolor",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "convexHull()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/segmentVisualization.ts",
+ "source_location": "L46",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "convexhull()",
+ "id": "frontend_src_lib_segmentvisualization_convexhull",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "computeSegmentHulls()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/segmentVisualization.ts",
+ "source_location": "L93",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "computesegmenthulls()",
+ "id": "frontend_src_lib_segmentvisualization_computesegmenthulls",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "snapAlignment.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "snapalignment.ts",
+ "id": "frontend_src_lib_snapalignment",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "SnapGuide",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L32",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "snapguide",
+ "id": "frontend_src_lib_snapalignment_snapguide",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "SnapResult",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L40",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "snapresult",
+ "id": "frontend_src_lib_snapalignment_snapresult",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "OverlapSnapResult",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L47",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "overlapsnapresult",
+ "id": "frontend_src_lib_snapalignment_overlapsnapresult",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "Pose",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L49",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "pose",
+ "id": "frontend_src_lib_snapalignment_pose",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "Translation",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L55",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "translation",
+ "id": "frontend_src_lib_snapalignment_translation",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "OverlapEscapeResult",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L61",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "overlapescaperesult",
+ "id": "frontend_src_lib_snapalignment_overlapescaperesult",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "PanelInfo",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L68",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "panelinfo",
+ "id": "frontend_src_lib_snapalignment_panelinfo",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "SNAP_CONFIG",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L75",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "snap_config",
+ "id": "frontend_src_lib_snapalignment_snap_config",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "computeSnap()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L99",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "computesnap()",
+ "id": "frontend_src_lib_snapalignment_computesnap",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "computeOverlapSnap()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L181",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "computeoverlapsnap()",
+ "id": "frontend_src_lib_snapalignment_computeoverlapsnap",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "normalizeVector()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L203",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "normalizevector()",
+ "id": "frontend_src_lib_snapalignment_normalizevector",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "getPosePolygon()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L209",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "getposepolygon()",
+ "id": "frontend_src_lib_snapalignment_getposepolygon",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "clampValue()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L213",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "clampvalue()",
+ "id": "frontend_src_lib_snapalignment_clampvalue",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "clampTranslationToStage()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L218",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "clamptranslationtostage()",
+ "id": "frontend_src_lib_snapalignment_clamptranslationtostage",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "needsStageClamp()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L237",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "needsstageclamp()",
+ "id": "frontend_src_lib_snapalignment_needsstageclamp",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "hasOverlapAt()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L251",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "hasoverlapat()",
+ "id": "frontend_src_lib_snapalignment_hasoverlapat",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "computeOverlapEscapeVector()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L277",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "computeoverlapescapevector()",
+ "id": "frontend_src_lib_snapalignment_computeoverlapescapevector",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "resolveOverlapTranslation()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L387",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "resolveoverlaptranslation()",
+ "id": "frontend_src_lib_snapalignment_resolveoverlaptranslation",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "resolveOverlapEscape()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L446",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "resolveoverlapescape()",
+ "id": "frontend_src_lib_snapalignment_resolveoverlapescape",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "resolveGroupOverlapEscape()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L481",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "resolvegroupoverlapescape()",
+ "id": "frontend_src_lib_snapalignment_resolvegroupoverlapescape",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "lib/supabase.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/supabase.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 38,
+ "norm_label": "lib/supabase.ts",
+ "id": "frontend_src_lib_supabase",
+ "community_name": "Community 38"
+ },
+ {
+ "label": "getSupabase()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/supabase.ts",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 38,
+ "norm_label": "getsupabase()",
+ "id": "frontend_src_lib_supabase_getsupabase",
+ "community_name": "Community 38"
+ },
+ {
+ "label": "utils.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/utils.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "utils.ts",
+ "id": "frontend_src_lib_utils",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "cn()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/utils.ts",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 7,
+ "norm_label": "cn()",
+ "id": "frontend_src_lib_utils_cn",
+ "community_name": "Community 7"
+ },
+ {
+ "label": "handleMetrics.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/workbench/handleMetrics.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "handlemetrics.ts",
+ "id": "frontend_src_lib_workbench_handlemetrics",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "ROTATION_HANDLE_METRICS",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/workbench/handleMetrics.ts",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "rotation_handle_metrics",
+ "id": "frontend_src_lib_workbench_handlemetrics_rotation_handle_metrics",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "GROUP_ROTATION_HANDLE_METRICS",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/workbench/handleMetrics.ts",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 20,
+ "norm_label": "group_rotation_handle_metrics",
+ "id": "frontend_src_lib_workbench_handlemetrics_group_rotation_handle_metrics",
+ "community_name": "Community 20"
+ },
+ {
+ "label": "roofDirection.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/workbench/roofDirection.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "roofdirection.ts",
+ "id": "frontend_src_lib_workbench_roofdirection",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "SegmentWithAzimuth",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/workbench/roofDirection.ts",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "segmentwithazimuth",
+ "id": "frontend_src_lib_workbench_roofdirection_segmentwithazimuth",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "ROOF_DIRECTION_WINDOWS",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/workbench/roofDirection.ts",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "roof_direction_windows",
+ "id": "frontend_src_lib_workbench_roofdirection_roof_direction_windows",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "azimuthMatchesRoofDirection()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/workbench/roofDirection.ts",
+ "source_location": "L23",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "azimuthmatchesroofdirection()",
+ "id": "frontend_src_lib_workbench_roofdirection_azimuthmatchesroofdirection",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "segmentMatchesRoofDirection()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/workbench/roofDirection.ts",
+ "source_location": "L37",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "segmentmatchesroofdirection()",
+ "id": "frontend_src_lib_workbench_roofdirection_segmentmatchesroofdirection",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "workbenchTour.ts",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/workbenchTour.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 74,
+ "norm_label": "workbenchtour.ts",
+ "id": "frontend_src_lib_workbenchtour",
+ "community_name": "Community 74"
+ },
+ {
+ "label": "getWorkbenchTourSteps()",
+ "file_type": "code",
+ "source_file": "frontend/src/lib/workbenchTour.ts",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 74,
+ "norm_label": "getworkbenchtoursteps()",
+ "id": "frontend_src_lib_workbenchtour_getworkbenchtoursteps",
+ "community_name": "Community 74"
+ },
+ {
+ "label": "main.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/main.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 38,
+ "norm_label": "main.tsx",
+ "id": "frontend_src_main",
+ "community_name": "Community 38"
+ },
+ {
+ "label": "queryClient",
+ "file_type": "code",
+ "source_file": "frontend/src/main.tsx",
+ "source_location": "L39",
+ "_origin": "ast",
+ "community": 38,
+ "norm_label": "queryclient",
+ "id": "frontend_src_main_queryclient",
+ "community_name": "Community 38"
+ },
+ {
+ "label": "AnalysisPage.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "analysispage.tsx",
+ "id": "frontend_src_pages_analysispage",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "buildSavePayload()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L51",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "buildsavepayload()",
+ "id": "frontend_src_pages_analysispage_buildsavepayload",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "AnalysisPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L62",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "analysispage()",
+ "id": "frontend_src_pages_analysispage_analysispage",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "AnalyticsPage.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "analyticspage.tsx",
+ "id": "frontend_src_pages_analyticspage",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "ComparisonMetric",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L27",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "comparisonmetric",
+ "id": "frontend_src_pages_analyticspage_comparisonmetric",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "METRIC_FORMATTERS",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L29",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "metric_formatters",
+ "id": "frontend_src_pages_analyticspage_metric_formatters",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "AnalyticsPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L56",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "analyticspage()",
+ "id": "frontend_src_pages_analyticspage_analyticspage",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "DashboardPage.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "dashboardpage.tsx",
+ "id": "frontend_src_pages_dashboardpage",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "getGreeting()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L34",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "getgreeting()",
+ "id": "frontend_src_pages_dashboardpage_getgreeting",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "formatResetTime()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L42",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "formatresettime()",
+ "id": "frontend_src_pages_dashboardpage_formatresettime",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "DashboardPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L48",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "dashboardpage()",
+ "id": "frontend_src_pages_dashboardpage_dashboardpage",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "FAQPage.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "faqpage.tsx",
+ "id": "frontend_src_pages_faqpage",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "FaqCategory",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "faqcategory",
+ "id": "frontend_src_pages_faqpage_faqcategory",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "FaqItem",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L23",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "faqitem",
+ "id": "frontend_src_pages_faqpage_faqitem",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "FAQ_IDS",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L33",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "faq_ids",
+ "id": "frontend_src_pages_faqpage_faq_ids",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "countWords()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L67",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "countwords()",
+ "id": "frontend_src_pages_faqpage_countwords",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "FaqCard()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L71",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "faqcard()",
+ "id": "frontend_src_pages_faqpage_faqcard",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "FAQPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L115",
+ "_origin": "ast",
+ "community": 12,
+ "norm_label": "faqpage()",
+ "id": "frontend_src_pages_faqpage_faqpage",
+ "community_name": "Community 12"
+ },
+ {
+ "label": "LandingPage.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 35,
+ "norm_label": "landingpage.tsx",
+ "id": "frontend_src_pages_landingpage",
+ "community_name": "Community 35"
+ },
+ {
+ "label": "LandingPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L33",
+ "_origin": "ast",
+ "community": 35,
+ "norm_label": "landingpage()",
+ "id": "frontend_src_pages_landingpage_landingpage",
+ "community_name": "Community 35"
+ },
+ {
+ "label": "useScrollY()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L462",
+ "_origin": "ast",
+ "community": 35,
+ "norm_label": "usescrolly()",
+ "id": "frontend_src_pages_landingpage_usescrolly",
+ "community_name": "Community 35"
+ },
+ {
+ "label": "HeroProfile",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L494",
+ "_origin": "ast",
+ "community": 35,
+ "norm_label": "heroprofile",
+ "id": "frontend_src_pages_landingpage_heroprofile",
+ "community_name": "Community 35"
+ },
+ {
+ "label": "HERO_PROFILES",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L502",
+ "_origin": "ast",
+ "community": 35,
+ "norm_label": "hero_profiles",
+ "id": "frontend_src_pages_landingpage_hero_profiles",
+ "community_name": "Community 35"
+ },
+ {
+ "label": "useHeroTicker()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L540",
+ "_origin": "ast",
+ "community": 35,
+ "norm_label": "useheroticker()",
+ "id": "frontend_src_pages_landingpage_useheroticker",
+ "community_name": "Community 35"
+ },
+ {
+ "label": "HeroSubtitle()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L575",
+ "_origin": "ast",
+ "community": 35,
+ "norm_label": "herosubtitle()",
+ "id": "frontend_src_pages_landingpage_herosubtitle",
+ "community_name": "Community 35"
+ },
+ {
+ "label": "TrustItem()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L596",
+ "_origin": "ast",
+ "community": 35,
+ "norm_label": "trustitem()",
+ "id": "frontend_src_pages_landingpage_trustitem",
+ "community_name": "Community 35"
+ },
+ {
+ "label": "PipelineStep",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L605",
+ "_origin": "ast",
+ "community": 35,
+ "norm_label": "pipelinestep",
+ "id": "frontend_src_pages_landingpage_pipelinestep",
+ "community_name": "Community 35"
+ },
+ {
+ "label": "PipelineSection()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L618",
+ "_origin": "ast",
+ "community": 35,
+ "norm_label": "pipelinesection()",
+ "id": "frontend_src_pages_landingpage_pipelinesection",
+ "community_name": "Community 35"
+ },
+ {
+ "label": "PipelineMock()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L777",
+ "_origin": "ast",
+ "community": 35,
+ "norm_label": "pipelinemock()",
+ "id": "frontend_src_pages_landingpage_pipelinemock",
+ "community_name": "Community 35"
+ },
+ {
+ "label": "FeatureCard()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L823",
+ "_origin": "ast",
+ "community": 35,
+ "norm_label": "featurecard()",
+ "id": "frontend_src_pages_landingpage_featurecard",
+ "community_name": "Community 35"
+ },
+ {
+ "label": "FaqItem()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L847",
+ "_origin": "ast",
+ "community": 35,
+ "norm_label": "faqitem()",
+ "id": "frontend_src_pages_landingpage_faqitem",
+ "community_name": "Community 35"
+ },
+ {
+ "label": "PricingCard()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L871",
+ "_origin": "ast",
+ "community": 35,
+ "norm_label": "pricingcard()",
+ "id": "frontend_src_pages_landingpage_pricingcard",
+ "community_name": "Community 35"
+ },
+ {
+ "label": "MapPage.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "mappage.tsx",
+ "id": "frontend_src_pages_mappage",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "Phase",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L27",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "phase",
+ "id": "frontend_src_pages_mappage_phase",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "MALAYSIA_CENTER",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L33",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "malaysia_center",
+ "id": "frontend_src_pages_mappage_malaysia_center",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "MY_BOUNDS",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "my_bounds",
+ "id": "frontend_src_pages_mappage_my_bounds",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "MapPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L38",
+ "_origin": "ast",
+ "community": 18,
+ "norm_label": "mappage()",
+ "id": "frontend_src_pages_mappage_mappage",
+ "community_name": "Community 18"
+ },
+ {
+ "label": "NotFoundPage.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/NotFoundPage.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 39,
+ "norm_label": "notfoundpage.tsx",
+ "id": "frontend_src_pages_notfoundpage",
+ "community_name": "Community 39"
+ },
+ {
+ "label": "NotFoundPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/NotFoundPage.tsx",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 39,
+ "norm_label": "notfoundpage()",
+ "id": "frontend_src_pages_notfoundpage_notfoundpage",
+ "community_name": "Community 39"
+ },
+ {
+ "label": "PdfPreviewPage.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/PdfPreviewPage.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 41,
+ "norm_label": "pdfpreviewpage.tsx",
+ "id": "frontend_src_pages_pdfpreviewpage",
+ "community_name": "Community 41"
+ },
+ {
+ "label": "Window",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/PdfPreviewPage.tsx",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 41,
+ "norm_label": "window",
+ "id": "frontend_src_pages_pdfpreviewpage_window",
+ "community_name": "Community 41"
+ },
+ {
+ "label": "applyThemeFromParam()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/PdfPreviewPage.tsx",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 41,
+ "norm_label": "applythemefromparam()",
+ "id": "frontend_src_pages_pdfpreviewpage_applythemefromparam",
+ "community_name": "Community 41"
+ },
+ {
+ "label": "PdfPreviewPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/PdfPreviewPage.tsx",
+ "source_location": "L28",
+ "_origin": "ast",
+ "community": 41,
+ "norm_label": "pdfpreviewpage()",
+ "id": "frontend_src_pages_pdfpreviewpage_pdfpreviewpage",
+ "community_name": "Community 41"
+ },
+ {
+ "label": "PrivacyPage.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/PrivacyPage.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 34,
+ "norm_label": "privacypage.tsx",
+ "id": "frontend_src_pages_privacypage",
+ "community_name": "Community 34"
+ },
+ {
+ "label": "SECTION_ORDER",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/PrivacyPage.tsx",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 34,
+ "norm_label": "section_order",
+ "id": "frontend_src_pages_privacypage_section_order",
+ "community_name": "Community 34"
+ },
+ {
+ "label": "SectionKey",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/PrivacyPage.tsx",
+ "source_location": "L29",
+ "_origin": "ast",
+ "community": 34,
+ "norm_label": "sectionkey",
+ "id": "frontend_src_pages_privacypage_sectionkey",
+ "community_name": "Community 34"
+ },
+ {
+ "label": "Section",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/PrivacyPage.tsx",
+ "source_location": "L30",
+ "_origin": "ast",
+ "community": 34,
+ "norm_label": "section",
+ "id": "frontend_src_pages_privacypage_section",
+ "community_name": "Community 34"
+ },
+ {
+ "label": "PrivacyPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/PrivacyPage.tsx",
+ "source_location": "L33",
+ "_origin": "ast",
+ "community": 34,
+ "norm_label": "privacypage()",
+ "id": "frontend_src_pages_privacypage_privacypage",
+ "community_name": "Community 34"
+ },
+ {
+ "label": "ProjectsPage.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "projectspage.tsx",
+ "id": "frontend_src_pages_projectspage",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "formatResetTime()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L44",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "formatresettime()",
+ "id": "frontend_src_pages_projectspage_formatresettime",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "ProjectsPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L50",
+ "_origin": "ast",
+ "community": 23,
+ "norm_label": "projectspage()",
+ "id": "frontend_src_pages_projectspage_projectspage",
+ "community_name": "Community 23"
+ },
+ {
+ "label": "SettingsPage.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 28,
+ "norm_label": "settingspage.tsx",
+ "id": "frontend_src_pages_settingspage",
+ "community_name": "Community 28"
+ },
+ {
+ "label": "TOUR_KEYS",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 28,
+ "norm_label": "tour_keys",
+ "id": "frontend_src_pages_settingspage_tour_keys",
+ "community_name": "Community 28"
+ },
+ {
+ "label": "SettingCard()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L23",
+ "_origin": "ast",
+ "community": 28,
+ "norm_label": "settingcard()",
+ "id": "frontend_src_pages_settingspage_settingcard",
+ "community_name": "Community 28"
+ },
+ {
+ "label": "useNotifications()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L50",
+ "_origin": "ast",
+ "community": 28,
+ "norm_label": "usenotifications()",
+ "id": "frontend_src_pages_settingspage_usenotifications",
+ "community_name": "Community 28"
+ },
+ {
+ "label": "SettingsPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L64",
+ "_origin": "ast",
+ "community": 28,
+ "norm_label": "settingspage()",
+ "id": "frontend_src_pages_settingspage_settingspage",
+ "community_name": "Community 28"
+ },
+ {
+ "label": "SignInPage.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 44,
+ "norm_label": "signinpage.tsx",
+ "id": "frontend_src_pages_signinpage",
+ "community_name": "Community 44"
+ },
+ {
+ "label": "SignInPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L23",
+ "_origin": "ast",
+ "community": 44,
+ "norm_label": "signinpage()",
+ "id": "frontend_src_pages_signinpage_signinpage",
+ "community_name": "Community 44"
+ },
+ {
+ "label": "SignUpPage.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 39,
+ "norm_label": "signuppage.tsx",
+ "id": "frontend_src_pages_signuppage",
+ "community_name": "Community 39"
+ },
+ {
+ "label": "SignUpPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "signuppage()",
+ "id": "frontend_src_pages_signuppage_signuppage",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "WorkbenchPage.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 25,
+ "norm_label": "workbenchpage.tsx",
+ "id": "frontend_src_pages_workbenchpage",
+ "community_name": "Community 25"
+ },
+ {
+ "label": "getPanelAnnualEnergy()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L50",
+ "_origin": "ast",
+ "community": 48,
+ "norm_label": "getpanelannualenergy()",
+ "id": "frontend_src_pages_workbenchpage_getpanelannualenergy",
+ "community_name": "Community 48"
+ },
+ {
+ "label": "WorkbenchPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L55",
+ "_origin": "ast",
+ "community": 48,
+ "norm_label": "workbenchpage()",
+ "id": "frontend_src_pages_workbenchpage_workbenchpage",
+ "community_name": "Community 48"
+ },
+ {
+ "label": "AnalysisPage.test.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/AnalysisPage.test.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 69,
+ "norm_label": "analysispage.test.tsx",
+ "id": "frontend_src_pages_tests_analysispage_test",
+ "community_name": "Community 69"
+ },
+ {
+ "label": "navigateMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/AnalysisPage.test.tsx",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 69,
+ "norm_label": "navigatemock",
+ "id": "frontend_src_pages_tests_analysispage_test_navigatemock",
+ "community_name": "Community 69"
+ },
+ {
+ "label": "saveAnalysisMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/AnalysisPage.test.tsx",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 69,
+ "norm_label": "saveanalysismock",
+ "id": "frontend_src_pages_tests_analysispage_test_saveanalysismock",
+ "community_name": "Community 69"
+ },
+ {
+ "label": "handleExportPdfMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/AnalysisPage.test.tsx",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 69,
+ "norm_label": "handleexportpdfmock",
+ "id": "frontend_src_pages_tests_analysispage_test_handleexportpdfmock",
+ "community_name": "Community 69"
+ },
+ {
+ "label": "notifySuccessMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/AnalysisPage.test.tsx",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 69,
+ "norm_label": "notifysuccessmock",
+ "id": "frontend_src_pages_tests_analysispage_test_notifysuccessmock",
+ "community_name": "Community 69"
+ },
+ {
+ "label": "notifyErrorMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/AnalysisPage.test.tsx",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 69,
+ "norm_label": "notifyerrormock",
+ "id": "frontend_src_pages_tests_analysispage_test_notifyerrormock",
+ "community_name": "Community 69"
+ },
+ {
+ "label": "markProjectVisitedMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/AnalysisPage.test.tsx",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 69,
+ "norm_label": "markprojectvisitedmock",
+ "id": "frontend_src_pages_tests_analysispage_test_markprojectvisitedmock",
+ "community_name": "Community 69"
+ },
+ {
+ "label": "renderPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/AnalysisPage.test.tsx",
+ "source_location": "L177",
+ "_origin": "ast",
+ "community": 69,
+ "norm_label": "renderpage()",
+ "id": "frontend_src_pages_tests_analysispage_test_renderpage",
+ "community_name": "Community 69"
+ },
+ {
+ "label": "AnalyticsPage.test.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/AnalyticsPage.test.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "analyticspage.test.tsx",
+ "id": "frontend_src_pages_tests_analyticspage_test",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "navigateMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/AnalyticsPage.test.tsx",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "navigatemock",
+ "id": "frontend_src_pages_tests_analyticspage_test_navigatemock",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "listProjectsMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/AnalyticsPage.test.tsx",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "listprojectsmock",
+ "id": "frontend_src_pages_tests_analyticspage_test_listprojectsmock",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "renderPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/AnalyticsPage.test.tsx",
+ "source_location": "L94",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "renderpage()",
+ "id": "frontend_src_pages_tests_analyticspage_test_renderpage",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "DashboardPage.test.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/DashboardPage.test.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 76,
+ "norm_label": "dashboardpage.test.tsx",
+ "id": "frontend_src_pages_tests_dashboardpage_test",
+ "community_name": "Community 76"
+ },
+ {
+ "label": "navigateMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/DashboardPage.test.tsx",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 76,
+ "norm_label": "navigatemock",
+ "id": "frontend_src_pages_tests_dashboardpage_test_navigatemock",
+ "community_name": "Community 76"
+ },
+ {
+ "label": "listProjectsMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/DashboardPage.test.tsx",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 76,
+ "norm_label": "listprojectsmock",
+ "id": "frontend_src_pages_tests_dashboardpage_test_listprojectsmock",
+ "community_name": "Community 76"
+ },
+ {
+ "label": "useAuthMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/DashboardPage.test.tsx",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 76,
+ "norm_label": "useauthmock",
+ "id": "frontend_src_pages_tests_dashboardpage_test_useauthmock",
+ "community_name": "Community 76"
+ },
+ {
+ "label": "useQuotaMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/DashboardPage.test.tsx",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 76,
+ "norm_label": "usequotamock",
+ "id": "frontend_src_pages_tests_dashboardpage_test_usequotamock",
+ "community_name": "Community 76"
+ },
+ {
+ "label": "renderPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/DashboardPage.test.tsx",
+ "source_location": "L63",
+ "_origin": "ast",
+ "community": 76,
+ "norm_label": "renderpage()",
+ "id": "frontend_src_pages_tests_dashboardpage_test_renderpage",
+ "community_name": "Community 76"
+ },
+ {
+ "label": "LandingPage.test.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/LandingPage.test.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 35,
+ "norm_label": "landingpage.test.tsx",
+ "id": "frontend_src_pages_tests_landingpage_test",
+ "community_name": "Community 35"
+ },
+ {
+ "label": "useAuthMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/LandingPage.test.tsx",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 35,
+ "norm_label": "useauthmock",
+ "id": "frontend_src_pages_tests_landingpage_test_useauthmock",
+ "community_name": "Community 35"
+ },
+ {
+ "label": "renderPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/LandingPage.test.tsx",
+ "source_location": "L30",
+ "_origin": "ast",
+ "community": 35,
+ "norm_label": "renderpage()",
+ "id": "frontend_src_pages_tests_landingpage_test_renderpage",
+ "community_name": "Community 35"
+ },
+ {
+ "label": "MapPage.test.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/MapPage.test.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 62,
+ "norm_label": "mappage.test.tsx",
+ "id": "frontend_src_pages_tests_mappage_test",
+ "community_name": "Community 62"
+ },
+ {
+ "label": "navigateMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/MapPage.test.tsx",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 62,
+ "norm_label": "navigatemock",
+ "id": "frontend_src_pages_tests_mappage_test_navigatemock",
+ "community_name": "Community 62"
+ },
+ {
+ "label": "resolveLocationMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/MapPage.test.tsx",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 62,
+ "norm_label": "resolvelocationmock",
+ "id": "frontend_src_pages_tests_mappage_test_resolvelocationmock",
+ "community_name": "Community 62"
+ },
+ {
+ "label": "probeLocationMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/MapPage.test.tsx",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 62,
+ "norm_label": "probelocationmock",
+ "id": "frontend_src_pages_tests_mappage_test_probelocationmock",
+ "community_name": "Community 62"
+ },
+ {
+ "label": "getLocationStatusMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/MapPage.test.tsx",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 62,
+ "norm_label": "getlocationstatusmock",
+ "id": "frontend_src_pages_tests_mappage_test_getlocationstatusmock",
+ "community_name": "Community 62"
+ },
+ {
+ "label": "getProjectMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/MapPage.test.tsx",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 62,
+ "norm_label": "getprojectmock",
+ "id": "frontend_src_pages_tests_mappage_test_getprojectmock",
+ "community_name": "Community 62"
+ },
+ {
+ "label": "createProjectMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/MapPage.test.tsx",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 62,
+ "norm_label": "createprojectmock",
+ "id": "frontend_src_pages_tests_mappage_test_createprojectmock",
+ "community_name": "Community 62"
+ },
+ {
+ "label": "constructor()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/MapPage.test.tsx",
+ "source_location": "L50",
+ "_origin": "ast",
+ "community": 62,
+ "norm_label": "constructor()",
+ "id": "frontend_src_pages_tests_mappage_test_constructor",
+ "community_name": "Community 62"
+ },
+ {
+ "label": "renderPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/MapPage.test.tsx",
+ "source_location": "L95",
+ "_origin": "ast",
+ "community": 62,
+ "norm_label": "renderpage()",
+ "id": "frontend_src_pages_tests_mappage_test_renderpage",
+ "community_name": "Community 62"
+ },
+ {
+ "label": "ProjectsPage.test.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/ProjectsPage.test.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 77,
+ "norm_label": "projectspage.test.tsx",
+ "id": "frontend_src_pages_tests_projectspage_test",
+ "community_name": "Community 77"
+ },
+ {
+ "label": "navigateMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/ProjectsPage.test.tsx",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 77,
+ "norm_label": "navigatemock",
+ "id": "frontend_src_pages_tests_projectspage_test_navigatemock",
+ "community_name": "Community 77"
+ },
+ {
+ "label": "listProjectsMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/ProjectsPage.test.tsx",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 77,
+ "norm_label": "listprojectsmock",
+ "id": "frontend_src_pages_tests_projectspage_test_listprojectsmock",
+ "community_name": "Community 77"
+ },
+ {
+ "label": "deleteProjectMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/ProjectsPage.test.tsx",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 77,
+ "norm_label": "deleteprojectmock",
+ "id": "frontend_src_pages_tests_projectspage_test_deleteprojectmock",
+ "community_name": "Community 77"
+ },
+ {
+ "label": "useQuotaMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/ProjectsPage.test.tsx",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 77,
+ "norm_label": "usequotamock",
+ "id": "frontend_src_pages_tests_projectspage_test_usequotamock",
+ "community_name": "Community 77"
+ },
+ {
+ "label": "renderPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/ProjectsPage.test.tsx",
+ "source_location": "L64",
+ "_origin": "ast",
+ "community": 77,
+ "norm_label": "renderpage()",
+ "id": "frontend_src_pages_tests_projectspage_test_renderpage",
+ "community_name": "Community 77"
+ },
+ {
+ "label": "SignInPage.test.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/SignInPage.test.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 44,
+ "norm_label": "signinpage.test.tsx",
+ "id": "frontend_src_pages_tests_signinpage_test",
+ "community_name": "Community 44"
+ },
+ {
+ "label": "navigateMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/SignInPage.test.tsx",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 44,
+ "norm_label": "navigatemock",
+ "id": "frontend_src_pages_tests_signinpage_test_navigatemock",
+ "community_name": "Community 44"
+ },
+ {
+ "label": "signInMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/SignInPage.test.tsx",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 44,
+ "norm_label": "signinmock",
+ "id": "frontend_src_pages_tests_signinpage_test_signinmock",
+ "community_name": "Community 44"
+ },
+ {
+ "label": "useAuthMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/SignInPage.test.tsx",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 44,
+ "norm_label": "useauthmock",
+ "id": "frontend_src_pages_tests_signinpage_test_useauthmock",
+ "community_name": "Community 44"
+ },
+ {
+ "label": "setAuth()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/SignInPage.test.tsx",
+ "source_location": "L41",
+ "_origin": "ast",
+ "community": 44,
+ "norm_label": "setauth()",
+ "id": "frontend_src_pages_tests_signinpage_test_setauth",
+ "community_name": "Community 44"
+ },
+ {
+ "label": "renderPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/SignInPage.test.tsx",
+ "source_location": "L49",
+ "_origin": "ast",
+ "community": 44,
+ "norm_label": "renderpage()",
+ "id": "frontend_src_pages_tests_signinpage_test_renderpage",
+ "community_name": "Community 44"
+ },
+ {
+ "label": "SignUpPage.test.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/SignUpPage.test.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "signuppage.test.tsx",
+ "id": "frontend_src_pages_tests_signuppage_test",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "signUpMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/SignUpPage.test.tsx",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "signupmock",
+ "id": "frontend_src_pages_tests_signuppage_test_signupmock",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "useAuthMock",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/SignUpPage.test.tsx",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "useauthmock",
+ "id": "frontend_src_pages_tests_signuppage_test_useauthmock",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "setAuth()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/SignUpPage.test.tsx",
+ "source_location": "L30",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "setauth()",
+ "id": "frontend_src_pages_tests_signuppage_test_setauth",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "renderPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/SignUpPage.test.tsx",
+ "source_location": "L34",
+ "_origin": "ast",
+ "community": 19,
+ "norm_label": "renderpage()",
+ "id": "frontend_src_pages_tests_signuppage_test_renderpage",
+ "community_name": "Community 19"
+ },
+ {
+ "label": "WorkbenchPage.test.tsx",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/WorkbenchPage.test.tsx",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 48,
+ "norm_label": "workbenchpage.test.tsx",
+ "id": "frontend_src_pages_tests_workbenchpage_test",
+ "community_name": "Community 48"
+ },
+ {
+ "label": "renderPage()",
+ "file_type": "code",
+ "source_file": "frontend/src/pages/__tests__/WorkbenchPage.test.tsx",
+ "source_location": "L242",
+ "_origin": "ast",
+ "community": 48,
+ "norm_label": "renderpage()",
+ "id": "frontend_src_pages_tests_workbenchpage_test_renderpage",
+ "community_name": "Community 48"
+ },
+ {
+ "label": "tailwind.config.js",
+ "file_type": "code",
+ "source_file": "frontend/tailwind.config.js",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 126,
+ "norm_label": "tailwind.config.js",
+ "id": "frontend_tailwind_config",
+ "community_name": "Community 126"
+ },
+ {
+ "label": "frontend/tsconfig.json",
+ "file_type": "code",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "frontend/tsconfig.json",
+ "id": "frontend_tsconfig",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "extends",
+ "file_type": "code",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "extends",
+ "id": "frontend_tsconfig_extends",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "../tsconfig.json",
+ "file_type": "concept",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "../tsconfig.json",
+ "id": "frontend_tsconfig_json_ref_tsconfig_json",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "compilerOptions",
+ "file_type": "code",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "compileroptions",
+ "id": "frontend_tsconfig_compileroptions",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "lib",
+ "file_type": "code",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "lib",
+ "id": "frontend_tsconfig_compileroptions_lib",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "ES2020",
+ "file_type": "concept",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "es2020",
+ "id": "frontend_tsconfig_json_ref_es2020",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "DOM",
+ "file_type": "concept",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "dom",
+ "id": "ref_dom",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "DOM.Iterable",
+ "file_type": "concept",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "dom.iterable",
+ "id": "ref_dom_iterable",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "jsx",
+ "file_type": "code",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "jsx",
+ "id": "frontend_tsconfig_compileroptions_jsx",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "noEmit",
+ "file_type": "code",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "noemit",
+ "id": "frontend_tsconfig_compileroptions_noemit",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "rootDir",
+ "file_type": "code",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "rootdir",
+ "id": "frontend_tsconfig_compileroptions_rootdir",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "types",
+ "file_type": "code",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "types",
+ "id": "frontend_tsconfig_compileroptions_types",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "vite/client",
+ "file_type": "concept",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "vite/client",
+ "id": "ref_vite_client",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "google.maps",
+ "file_type": "concept",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "google.maps",
+ "id": "ref_google_maps",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "paths",
+ "file_type": "code",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "paths",
+ "id": "frontend_tsconfig_compileroptions_paths",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "@shared/types",
+ "file_type": "code",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "@shared/types",
+ "id": "frontend_tsconfig_paths_shared_types",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "../shared/index.ts",
+ "file_type": "concept",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "../shared/index.ts",
+ "id": "frontend_tsconfig_json_ref_shared_index_ts",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "include",
+ "file_type": "code",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "include",
+ "id": "frontend_tsconfig_include",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "src/**/*.ts",
+ "file_type": "concept",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "src/**/*.ts",
+ "id": "frontend_tsconfig_json_ref_src_ts",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "src/**/*.tsx",
+ "file_type": "concept",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "src/**/*.tsx",
+ "id": "ref_src_tsx",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "exclude",
+ "file_type": "code",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "exclude",
+ "id": "frontend_tsconfig_exclude",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "src/**/*.test.ts",
+ "file_type": "concept",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "src/**/*.test.ts",
+ "id": "frontend_tsconfig_json_ref_src_test_ts",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "src/**/*.test.tsx",
+ "file_type": "concept",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "src/**/*.test.tsx",
+ "id": "ref_src_test_tsx",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "references",
+ "file_type": "code",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 17,
+ "norm_label": "references",
+ "id": "frontend_tsconfig_references",
+ "community_name": "Community 17"
+ },
+ {
+ "label": "vite.config.ts",
+ "file_type": "code",
+ "source_file": "frontend/vite.config.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 127,
+ "norm_label": "vite.config.ts",
+ "id": "frontend_vite_config",
+ "community_name": "Community 127"
+ },
+ {
+ "label": "package.json",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "package.json",
+ "id": "package",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "name",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "name",
+ "id": "package_name",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "private",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "private",
+ "id": "package_private",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "license",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "license",
+ "id": "package_license",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "packageManager",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "packagemanager",
+ "id": "package_packagemanager",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "engines",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "engines",
+ "id": "package_engines",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "node",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "node",
+ "id": "package_engines_node",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "prisma",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "prisma",
+ "id": "package_prisma",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "seed",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "seed",
+ "id": "package_prisma_seed",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "scripts",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "scripts",
+ "id": "package_scripts",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "dev",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "dev",
+ "id": "package_scripts_dev",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "dev:backend",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "dev:backend",
+ "id": "package_scripts_dev_backend",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "dev:frontend",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "dev:frontend",
+ "id": "package_scripts_dev_frontend",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "db:migrate",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "db:migrate",
+ "id": "package_scripts_db_migrate",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "db:migrate:deploy",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "db:migrate:deploy",
+ "id": "package_scripts_db_migrate_deploy",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "db:seed",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "db:seed",
+ "id": "package_scripts_db_seed",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "prisma:generate",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "prisma:generate",
+ "id": "package_scripts_prisma_generate",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "format",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "format",
+ "id": "package_scripts_format",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "lint",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "lint",
+ "id": "package_scripts_lint",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "typecheck",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "typecheck",
+ "id": "package_scripts_typecheck",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "test",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L23",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "test",
+ "id": "package_scripts_test",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "build",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "build",
+ "id": "package_scripts_build",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "start",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "start",
+ "id": "package_scripts_start",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "heroku-postbuild",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L26",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "heroku-postbuild",
+ "id": "package_scripts_heroku_postbuild",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "dependencies",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L28",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "dependencies",
+ "id": "package_dependencies",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "@prisma/client",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L29",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "@prisma/client",
+ "id": "package_dependencies_prisma_client",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "@prisma/client",
+ "file_type": "concept",
+ "source_file": "package.json",
+ "source_location": "L29",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "@prisma/client",
+ "id": "package_json_prisma_client",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "devDependencies",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L31",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "devdependencies",
+ "id": "package_devdependencies",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "@eslint/js",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L32",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "@eslint/js",
+ "id": "package_devdependencies_eslint_js",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "@eslint/js",
+ "file_type": "concept",
+ "source_file": "package.json",
+ "source_location": "L32",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "@eslint/js",
+ "id": "eslint_js",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "concurrently",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L33",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "concurrently",
+ "id": "package_devdependencies_concurrently",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "concurrently",
+ "file_type": "concept",
+ "source_file": "package.json",
+ "source_location": "L33",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "concurrently",
+ "id": "concurrently",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "eslint",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L34",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "eslint",
+ "id": "package_devdependencies_eslint",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "eslint",
+ "file_type": "concept",
+ "source_file": "package.json",
+ "source_location": "L34",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "eslint",
+ "id": "eslint",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "eslint-config-prettier",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "eslint-config-prettier",
+ "id": "package_devdependencies_eslint_config_prettier",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "eslint-config-prettier",
+ "file_type": "concept",
+ "source_file": "package.json",
+ "source_location": "L35",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "eslint-config-prettier",
+ "id": "package_json_eslint_config_prettier",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "eslint-plugin-react-hooks",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L36",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "eslint-plugin-react-hooks",
+ "id": "package_devdependencies_eslint_plugin_react_hooks",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "eslint-plugin-react-hooks",
+ "file_type": "concept",
+ "source_file": "package.json",
+ "source_location": "L36",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "eslint-plugin-react-hooks",
+ "id": "eslint_plugin_react_hooks",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "globals",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L37",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "globals",
+ "id": "package_devdependencies_globals",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "globals",
+ "file_type": "concept",
+ "source_file": "package.json",
+ "source_location": "L37",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "globals",
+ "id": "globals",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "prettier",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L38",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "prettier",
+ "id": "package_devdependencies_prettier",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "prettier",
+ "file_type": "concept",
+ "source_file": "package.json",
+ "source_location": "L38",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "prettier",
+ "id": "prettier",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "prisma",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L39",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "prisma",
+ "id": "package_devdependencies_prisma",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "prisma",
+ "file_type": "concept",
+ "source_file": "package.json",
+ "source_location": "L39",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "prisma",
+ "id": "package_json_prisma",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "typescript-eslint",
+ "file_type": "code",
+ "source_file": "package.json",
+ "source_location": "L40",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "typescript-eslint",
+ "id": "package_devdependencies_typescript_eslint",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "typescript-eslint",
+ "file_type": "concept",
+ "source_file": "package.json",
+ "source_location": "L40",
+ "_origin": "ast",
+ "community": 3,
+ "norm_label": "typescript-eslint",
+ "id": "typescript_eslint",
+ "community_name": "Community 3"
+ },
+ {
+ "label": "seed.ts",
+ "file_type": "code",
+ "source_file": "prisma/seed.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 63,
+ "norm_label": "seed.ts",
+ "id": "prisma_seed",
+ "community_name": "Community 63"
+ },
+ {
+ "label": "__dirname",
+ "file_type": "code",
+ "source_file": "prisma/seed.ts",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 63,
+ "norm_label": "__dirname",
+ "id": "prisma_seed_dirname",
+ "community_name": "Community 63"
+ },
+ {
+ "label": "prisma",
+ "file_type": "code",
+ "source_file": "prisma/seed.ts",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 63,
+ "norm_label": "prisma",
+ "id": "prisma_seed_prisma",
+ "community_name": "Community 63"
+ },
+ {
+ "label": "main()",
+ "file_type": "code",
+ "source_file": "prisma/seed.ts",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 63,
+ "norm_label": "main()",
+ "id": "prisma_seed_main",
+ "community_name": "Community 63"
+ },
+ {
+ "label": "RATES",
+ "file_type": "code",
+ "source_file": "prisma/seed.ts",
+ "source_location": "L47",
+ "_origin": "ast",
+ "community": 63,
+ "norm_label": "rates",
+ "id": "prisma_seed_rates",
+ "community_name": "Community 63"
+ },
+ {
+ "label": "THRESHOLDS",
+ "file_type": "code",
+ "source_file": "prisma/seed.ts",
+ "source_location": "L58",
+ "_origin": "ast",
+ "community": 63,
+ "norm_label": "thresholds",
+ "id": "prisma_seed_thresholds",
+ "community_name": "Community 63"
+ },
+ {
+ "label": "EEI_TABLE",
+ "file_type": "code",
+ "source_file": "prisma/seed.ts",
+ "source_location": "L69",
+ "_origin": "ast",
+ "community": 63,
+ "norm_label": "eei_table",
+ "id": "prisma_seed_eei_table",
+ "community_name": "Community 63"
+ },
+ {
+ "label": "pdf-export.ts",
+ "file_type": "code",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 65,
+ "norm_label": "pdf-export.ts",
+ "id": "services_pdf_service_api_pdf_export",
+ "community_name": "Community 65"
+ },
+ {
+ "label": "BodySchema",
+ "file_type": "code",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 65,
+ "norm_label": "bodyschema",
+ "id": "services_pdf_service_api_pdf_export_bodyschema",
+ "community_name": "Community 65"
+ },
+ {
+ "label": "VIEWPORT",
+ "file_type": "code",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 65,
+ "norm_label": "viewport",
+ "id": "services_pdf_service_api_pdf_export_viewport",
+ "community_name": "Community 65"
+ },
+ {
+ "label": "PAGE_MARGIN",
+ "file_type": "code",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 65,
+ "norm_label": "page_margin",
+ "id": "services_pdf_service_api_pdf_export_page_margin",
+ "community_name": "Community 65"
+ },
+ {
+ "label": "parseAllowedOrigins()",
+ "file_type": "code",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 65,
+ "norm_label": "parseallowedorigins()",
+ "id": "services_pdf_service_api_pdf_export_parseallowedorigins",
+ "community_name": "Community 65"
+ },
+ {
+ "label": "normalizeOrigin()",
+ "file_type": "code",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L27",
+ "_origin": "ast",
+ "community": 65,
+ "norm_label": "normalizeorigin()",
+ "id": "services_pdf_service_api_pdf_export_normalizeorigin",
+ "community_name": "Community 65"
+ },
+ {
+ "label": "resolveCorsOrigin()",
+ "file_type": "code",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L31",
+ "_origin": "ast",
+ "community": 65,
+ "norm_label": "resolvecorsorigin()",
+ "id": "services_pdf_service_api_pdf_export_resolvecorsorigin",
+ "community_name": "Community 65"
+ },
+ {
+ "label": "setCorsHeaders()",
+ "file_type": "code",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L39",
+ "_origin": "ast",
+ "community": 65,
+ "norm_label": "setcorsheaders()",
+ "id": "services_pdf_service_api_pdf_export_setcorsheaders",
+ "community_name": "Community 65"
+ },
+ {
+ "label": "handler()",
+ "file_type": "code",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L46",
+ "_origin": "ast",
+ "community": 65,
+ "norm_label": "handler()",
+ "id": "services_pdf_service_api_pdf_export_handler",
+ "community_name": "Community 65"
+ },
+ {
+ "label": "pdf-service/package.json",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "pdf-service/package.json",
+ "id": "services_pdf_service_package",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "name",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "name",
+ "id": "services_pdf_service_package_name",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "version",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "version",
+ "id": "services_pdf_service_package_version",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "private",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "private",
+ "id": "services_pdf_service_package_private",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "license",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "license",
+ "id": "services_pdf_service_package_license",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "description",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "description",
+ "id": "services_pdf_service_package_description",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "type",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "type",
+ "id": "services_pdf_service_package_type",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "engines",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "engines",
+ "id": "services_pdf_service_package_engines",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "node",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "node",
+ "id": "services_pdf_service_package_engines_node",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "scripts",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "scripts",
+ "id": "services_pdf_service_package_scripts",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "dev",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "dev",
+ "id": "services_pdf_service_package_scripts_dev",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "deploy:preview",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "deploy:preview",
+ "id": "services_pdf_service_package_scripts_deploy_preview",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "deploy",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "deploy",
+ "id": "services_pdf_service_package_scripts_deploy",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "typecheck",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "typecheck",
+ "id": "services_pdf_service_package_scripts_typecheck",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "dependencies",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "dependencies",
+ "id": "services_pdf_service_package_dependencies",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "@sparticuz/chromium",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "@sparticuz/chromium",
+ "id": "services_pdf_service_package_dependencies_sparticuz_chromium",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "@sparticuz/chromium",
+ "file_type": "concept",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "@sparticuz/chromium",
+ "id": "sparticuz_chromium",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "puppeteer-core",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "puppeteer-core",
+ "id": "services_pdf_service_package_dependencies_puppeteer_core",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "puppeteer-core",
+ "file_type": "concept",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "puppeteer-core",
+ "id": "puppeteer_core",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "zod",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "zod",
+ "id": "services_pdf_service_package_dependencies_zod",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "zod",
+ "file_type": "concept",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "zod",
+ "id": "services_pdf_service_package_json_zod",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "devDependencies",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "devdependencies",
+ "id": "services_pdf_service_package_devdependencies",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "@types/node",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L23",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "@types/node",
+ "id": "services_pdf_service_package_devdependencies_types_node",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "@types/node",
+ "file_type": "concept",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L23",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "@types/node",
+ "id": "services_pdf_service_package_json_types_node",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "@vercel/node",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "@vercel/node",
+ "id": "services_pdf_service_package_devdependencies_vercel_node",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "@vercel/node",
+ "file_type": "concept",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L24",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "@vercel/node",
+ "id": "vercel_node",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "typescript",
+ "file_type": "code",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "typescript",
+ "id": "services_pdf_service_package_devdependencies_typescript",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "typescript",
+ "file_type": "concept",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 13,
+ "norm_label": "typescript",
+ "id": "services_pdf_service_package_json_typescript",
+ "community_name": "Community 13"
+ },
+ {
+ "label": "pdf-service/tsconfig.json",
+ "file_type": "code",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 36,
+ "norm_label": "pdf-service/tsconfig.json",
+ "id": "services_pdf_service_tsconfig",
+ "community_name": "Community 36"
+ },
+ {
+ "label": "compilerOptions",
+ "file_type": "code",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 36,
+ "norm_label": "compileroptions",
+ "id": "services_pdf_service_tsconfig_compileroptions",
+ "community_name": "Community 36"
+ },
+ {
+ "label": "target",
+ "file_type": "code",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 36,
+ "norm_label": "target",
+ "id": "services_pdf_service_tsconfig_compileroptions_target",
+ "community_name": "Community 36"
+ },
+ {
+ "label": "module",
+ "file_type": "code",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 36,
+ "norm_label": "module",
+ "id": "services_pdf_service_tsconfig_compileroptions_module",
+ "community_name": "Community 36"
+ },
+ {
+ "label": "moduleResolution",
+ "file_type": "code",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 36,
+ "norm_label": "moduleresolution",
+ "id": "services_pdf_service_tsconfig_compileroptions_moduleresolution",
+ "community_name": "Community 36"
+ },
+ {
+ "label": "lib",
+ "file_type": "code",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 36,
+ "norm_label": "lib",
+ "id": "services_pdf_service_tsconfig_compileroptions_lib",
+ "community_name": "Community 36"
+ },
+ {
+ "label": "ES2022",
+ "file_type": "concept",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 36,
+ "norm_label": "es2022",
+ "id": "ref_es2022",
+ "community_name": "Community 36"
+ },
+ {
+ "label": "esModuleInterop",
+ "file_type": "code",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 36,
+ "norm_label": "esmoduleinterop",
+ "id": "services_pdf_service_tsconfig_compileroptions_esmoduleinterop",
+ "community_name": "Community 36"
+ },
+ {
+ "label": "allowSyntheticDefaultImports",
+ "file_type": "code",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 36,
+ "norm_label": "allowsyntheticdefaultimports",
+ "id": "services_pdf_service_tsconfig_compileroptions_allowsyntheticdefaultimports",
+ "community_name": "Community 36"
+ },
+ {
+ "label": "strict",
+ "file_type": "code",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 36,
+ "norm_label": "strict",
+ "id": "services_pdf_service_tsconfig_compileroptions_strict",
+ "community_name": "Community 36"
+ },
+ {
+ "label": "noUncheckedIndexedAccess",
+ "file_type": "code",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 36,
+ "norm_label": "nouncheckedindexedaccess",
+ "id": "services_pdf_service_tsconfig_compileroptions_nouncheckedindexedaccess",
+ "community_name": "Community 36"
+ },
+ {
+ "label": "skipLibCheck",
+ "file_type": "code",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 36,
+ "norm_label": "skiplibcheck",
+ "id": "services_pdf_service_tsconfig_compileroptions_skiplibcheck",
+ "community_name": "Community 36"
+ },
+ {
+ "label": "resolveJsonModule",
+ "file_type": "code",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 36,
+ "norm_label": "resolvejsonmodule",
+ "id": "services_pdf_service_tsconfig_compileroptions_resolvejsonmodule",
+ "community_name": "Community 36"
+ },
+ {
+ "label": "isolatedModules",
+ "file_type": "code",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 36,
+ "norm_label": "isolatedmodules",
+ "id": "services_pdf_service_tsconfig_compileroptions_isolatedmodules",
+ "community_name": "Community 36"
+ },
+ {
+ "label": "noEmit",
+ "file_type": "code",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 36,
+ "norm_label": "noemit",
+ "id": "services_pdf_service_tsconfig_compileroptions_noemit",
+ "community_name": "Community 36"
+ },
+ {
+ "label": "include",
+ "file_type": "code",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 36,
+ "norm_label": "include",
+ "id": "services_pdf_service_tsconfig_include",
+ "community_name": "Community 36"
+ },
+ {
+ "label": "api/**/*.ts",
+ "file_type": "concept",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 36,
+ "norm_label": "api/**/*.ts",
+ "id": "ref_api_ts",
+ "community_name": "Community 36"
+ },
+ {
+ "label": "vercel.json",
+ "file_type": "code",
+ "source_file": "services/pdf-service/vercel.json",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 78,
+ "norm_label": "vercel.json",
+ "id": "services_pdf_service_vercel",
+ "community_name": "Community 78"
+ },
+ {
+ "label": "$schema",
+ "file_type": "code",
+ "source_file": "services/pdf-service/vercel.json",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 78,
+ "norm_label": "$schema",
+ "id": "services_pdf_service_vercel_schema",
+ "community_name": "Community 78"
+ },
+ {
+ "label": "functions",
+ "file_type": "code",
+ "source_file": "services/pdf-service/vercel.json",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 78,
+ "norm_label": "functions",
+ "id": "services_pdf_service_vercel_functions",
+ "community_name": "Community 78"
+ },
+ {
+ "label": "api/pdf-export.ts",
+ "file_type": "code",
+ "source_file": "services/pdf-service/vercel.json",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 78,
+ "norm_label": "api/pdf-export.ts",
+ "id": "services_pdf_service_vercel_functions_api_pdf_export_ts",
+ "community_name": "Community 78"
+ },
+ {
+ "label": "maxDuration",
+ "file_type": "code",
+ "source_file": "services/pdf-service/vercel.json",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 78,
+ "norm_label": "maxduration",
+ "id": "services_pdf_service_vercel_api_pdf_export_ts_maxduration",
+ "community_name": "Community 78"
+ },
+ {
+ "label": "memory",
+ "file_type": "code",
+ "source_file": "services/pdf-service/vercel.json",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 78,
+ "norm_label": "memory",
+ "id": "services_pdf_service_vercel_api_pdf_export_ts_memory",
+ "community_name": "Community 78"
+ },
+ {
+ "label": "costModel.ts",
+ "file_type": "code",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 56,
+ "norm_label": "costmodel.ts",
+ "id": "shared_costmodel",
+ "community_name": "Community 56"
+ },
+ {
+ "label": "RoofType",
+ "file_type": "code",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "rooftype",
+ "id": "shared_costmodel_rooftype",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "SupplyPhase",
+ "file_type": "code",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 56,
+ "norm_label": "supplyphase",
+ "id": "shared_costmodel_supplyphase",
+ "community_name": "Community 56"
+ },
+ {
+ "label": "CostBreakdown",
+ "file_type": "code",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L28",
+ "_origin": "ast",
+ "community": 0,
+ "norm_label": "costbreakdown",
+ "id": "shared_costmodel_costbreakdown",
+ "community_name": "Community 0"
+ },
+ {
+ "label": "CostInputs",
+ "file_type": "code",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L45",
+ "_origin": "ast",
+ "community": 56,
+ "norm_label": "costinputs",
+ "id": "shared_costmodel_costinputs",
+ "community_name": "Community 56"
+ },
+ {
+ "label": "InverterSku",
+ "file_type": "code",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L53",
+ "_origin": "ast",
+ "community": 56,
+ "norm_label": "invertersku",
+ "id": "shared_costmodel_invertersku",
+ "community_name": "Community 56"
+ },
+ {
+ "label": "costModelDefaults",
+ "file_type": "code",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L64",
+ "_origin": "ast",
+ "community": 56,
+ "norm_label": "costmodeldefaults",
+ "id": "shared_costmodel_costmodeldefaults",
+ "community_name": "Community 56"
+ },
+ {
+ "label": "permitCost()",
+ "file_type": "code",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L105",
+ "_origin": "ast",
+ "community": 56,
+ "norm_label": "permitcost()",
+ "id": "shared_costmodel_permitcost",
+ "community_name": "Community 56"
+ },
+ {
+ "label": "electricalBosCost()",
+ "file_type": "code",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L116",
+ "_origin": "ast",
+ "community": 56,
+ "norm_label": "electricalboscost()",
+ "id": "shared_costmodel_electricalboscost",
+ "community_name": "Community 56"
+ },
+ {
+ "label": "scaffoldingCost()",
+ "file_type": "code",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L121",
+ "_origin": "ast",
+ "community": 56,
+ "norm_label": "scaffoldingcost()",
+ "id": "shared_costmodel_scaffoldingcost",
+ "community_name": "Community 56"
+ },
+ {
+ "label": "selectInverter()",
+ "file_type": "code",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L131",
+ "_origin": "ast",
+ "community": 56,
+ "norm_label": "selectinverter()",
+ "id": "shared_costmodel_selectinverter",
+ "community_name": "Community 56"
+ },
+ {
+ "label": "computeSystemCost()",
+ "file_type": "code",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L150",
+ "_origin": "ast",
+ "community": 56,
+ "norm_label": "computesystemcost()",
+ "id": "shared_costmodel_computesystemcost",
+ "community_name": "Community 56"
+ },
+ {
+ "label": "shared/index.ts",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "shared/index.ts",
+ "id": "shared_index",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "LocationStatus",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "locationstatus",
+ "id": "shared_index_locationstatus",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "ImageryQuality",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 41,
+ "norm_label": "imageryquality",
+ "id": "shared_index_imageryquality",
+ "community_name": "Community 41"
+ },
+ {
+ "label": "ProjectStatus",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L23",
+ "_origin": "ast",
+ "community": 55,
+ "norm_label": "projectstatus",
+ "id": "shared_index_projectstatus",
+ "community_name": "Community 55"
+ },
+ {
+ "label": "ResolveLocationRequest",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L39",
+ "_origin": "ast",
+ "community": 31,
+ "norm_label": "resolvelocationrequest",
+ "id": "shared_index_resolvelocationrequest",
+ "community_name": "Community 31"
+ },
+ {
+ "label": "ResolveLocationResponse",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L48",
+ "_origin": "ast",
+ "community": 31,
+ "norm_label": "resolvelocationresponse",
+ "id": "shared_index_resolvelocationresponse",
+ "community_name": "Community 31"
+ },
+ {
+ "label": "LocationStatusResponse",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L54",
+ "_origin": "ast",
+ "community": 31,
+ "norm_label": "locationstatusresponse",
+ "id": "shared_index_locationstatusresponse",
+ "community_name": "Community 31"
+ },
+ {
+ "label": "LocationDataResponse",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L59",
+ "_origin": "ast",
+ "community": 31,
+ "norm_label": "locationdataresponse",
+ "id": "shared_index_locationdataresponse",
+ "community_name": "Community 31"
+ },
+ {
+ "label": "ProbeLocationResponse",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L66",
+ "_origin": "ast",
+ "community": 31,
+ "norm_label": "probelocationresponse",
+ "id": "shared_index_probelocationresponse",
+ "community_name": "Community 31"
+ },
+ {
+ "label": "FluxRecomputeRequest",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L73",
+ "_origin": "ast",
+ "community": 31,
+ "norm_label": "fluxrecomputerequest",
+ "id": "shared_index_fluxrecomputerequest",
+ "community_name": "Community 31"
+ },
+ {
+ "label": "FluxRecomputeResponse",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L83",
+ "_origin": "ast",
+ "community": 31,
+ "norm_label": "fluxrecomputeresponse",
+ "id": "shared_index_fluxrecomputeresponse",
+ "community_name": "Community 31"
+ },
+ {
+ "label": "FluxRecomputeBatchRequest",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L89",
+ "_origin": "ast",
+ "community": 31,
+ "norm_label": "fluxrecomputebatchrequest",
+ "id": "shared_index_fluxrecomputebatchrequest",
+ "community_name": "Community 31"
+ },
+ {
+ "label": "FluxRecomputeBatchResponse",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L94",
+ "_origin": "ast",
+ "community": 31,
+ "norm_label": "fluxrecomputebatchresponse",
+ "id": "shared_index_fluxrecomputebatchresponse",
+ "community_name": "Community 31"
+ },
+ {
+ "label": "CreateProjectRequest",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L99",
+ "_origin": "ast",
+ "community": 27,
+ "norm_label": "createprojectrequest",
+ "id": "shared_index_createprojectrequest",
+ "community_name": "Community 27"
+ },
+ {
+ "label": "SaveLayoutRequest",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L105",
+ "_origin": "ast",
+ "community": 27,
+ "norm_label": "savelayoutrequest",
+ "id": "shared_index_savelayoutrequest",
+ "community_name": "Community 27"
+ },
+ {
+ "label": "UpdateLayoutPreferencesRequest",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L111",
+ "_origin": "ast",
+ "community": 27,
+ "norm_label": "updatelayoutpreferencesrequest",
+ "id": "shared_index_updatelayoutpreferencesrequest",
+ "community_name": "Community 27"
+ },
+ {
+ "label": "SaveAnalysisRequest",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L116",
+ "_origin": "ast",
+ "community": 27,
+ "norm_label": "saveanalysisrequest",
+ "id": "shared_index_saveanalysisrequest",
+ "community_name": "Community 27"
+ },
+ {
+ "label": "TariffRates",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L125",
+ "_origin": "ast",
+ "community": 50,
+ "norm_label": "tariffrates",
+ "id": "shared_index_tariffrates",
+ "community_name": "Community 50"
+ },
+ {
+ "label": "TariffThresholds",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L146",
+ "_origin": "ast",
+ "community": 50,
+ "norm_label": "tariffthresholds",
+ "id": "shared_index_tariffthresholds",
+ "community_name": "Community 50"
+ },
+ {
+ "label": "TariffConfigResponse",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L160",
+ "_origin": "ast",
+ "community": 43,
+ "norm_label": "tariffconfigresponse",
+ "id": "shared_index_tariffconfigresponse",
+ "community_name": "Community 43"
+ },
+ {
+ "label": "HealthResponse",
+ "file_type": "code",
+ "source_file": "shared/index.ts",
+ "source_location": "L175",
+ "_origin": "ast",
+ "community": 45,
+ "norm_label": "healthresponse",
+ "id": "shared_index_healthresponse",
+ "community_name": "Community 45"
+ },
+ {
+ "label": "layoutPreferences.ts",
+ "file_type": "code",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "layoutpreferences.ts",
+ "id": "shared_layoutpreferences",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "billRangeSchema",
+ "file_type": "code",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "billrangeschema",
+ "id": "shared_layoutpreferences_billrangeschema",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "sizingGoalSchema",
+ "file_type": "code",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "sizinggoalschema",
+ "id": "shared_layoutpreferences_sizinggoalschema",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "roofDirectionSchema",
+ "file_type": "code",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "roofdirectionschema",
+ "id": "shared_layoutpreferences_roofdirectionschema",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "BillRange",
+ "file_type": "code",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "billrange",
+ "id": "shared_layoutpreferences_billrange",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "SizingGoal",
+ "file_type": "code",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L23",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "sizinggoal",
+ "id": "shared_layoutpreferences_sizinggoal",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "RoofDirection",
+ "file_type": "code",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "roofdirection",
+ "id": "shared_layoutpreferences_roofdirection",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "layoutPreferencesSchema",
+ "file_type": "code",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L32",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "layoutpreferencesschema",
+ "id": "shared_layoutpreferences_layoutpreferencesschema",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "layoutPreferencesPartialSchema",
+ "file_type": "code",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L42",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "layoutpreferencespartialschema",
+ "id": "shared_layoutpreferences_layoutpreferencespartialschema",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "LayoutPreferences",
+ "file_type": "code",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L45",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "layoutpreferences",
+ "id": "shared_layoutpreferences_layoutpreferences",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "BILL_RANGE_TO_KWH_PER_MONTH",
+ "file_type": "code",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L54",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "bill_range_to_kwh_per_month",
+ "id": "shared_layoutpreferences_bill_range_to_kwh_per_month",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "shared/package.json",
+ "file_type": "code",
+ "source_file": "shared/package.json",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 42,
+ "norm_label": "shared/package.json",
+ "id": "shared_package",
+ "community_name": "Community 42"
+ },
+ {
+ "label": "name",
+ "file_type": "code",
+ "source_file": "shared/package.json",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 42,
+ "norm_label": "name",
+ "id": "shared_package_name",
+ "community_name": "Community 42"
+ },
+ {
+ "label": "version",
+ "file_type": "code",
+ "source_file": "shared/package.json",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 42,
+ "norm_label": "version",
+ "id": "shared_package_version",
+ "community_name": "Community 42"
+ },
+ {
+ "label": "private",
+ "file_type": "code",
+ "source_file": "shared/package.json",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 42,
+ "norm_label": "private",
+ "id": "shared_package_private",
+ "community_name": "Community 42"
+ },
+ {
+ "label": "license",
+ "file_type": "code",
+ "source_file": "shared/package.json",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 42,
+ "norm_label": "license",
+ "id": "shared_package_license",
+ "community_name": "Community 42"
+ },
+ {
+ "label": "type",
+ "file_type": "code",
+ "source_file": "shared/package.json",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 42,
+ "norm_label": "type",
+ "id": "shared_package_type",
+ "community_name": "Community 42"
+ },
+ {
+ "label": "scripts",
+ "file_type": "code",
+ "source_file": "shared/package.json",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 42,
+ "norm_label": "scripts",
+ "id": "shared_package_scripts",
+ "community_name": "Community 42"
+ },
+ {
+ "label": "build",
+ "file_type": "code",
+ "source_file": "shared/package.json",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 42,
+ "norm_label": "build",
+ "id": "shared_package_scripts_build",
+ "community_name": "Community 42"
+ },
+ {
+ "label": "dev",
+ "file_type": "code",
+ "source_file": "shared/package.json",
+ "source_location": "L9",
+ "_origin": "ast",
+ "community": 42,
+ "norm_label": "dev",
+ "id": "shared_package_scripts_dev",
+ "community_name": "Community 42"
+ },
+ {
+ "label": "main",
+ "file_type": "code",
+ "source_file": "shared/package.json",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 42,
+ "norm_label": "main",
+ "id": "shared_package_main",
+ "community_name": "Community 42"
+ },
+ {
+ "label": "types",
+ "file_type": "code",
+ "source_file": "shared/package.json",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 42,
+ "norm_label": "types",
+ "id": "shared_package_types",
+ "community_name": "Community 42"
+ },
+ {
+ "label": "exports",
+ "file_type": "code",
+ "source_file": "shared/package.json",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 42,
+ "norm_label": "exports",
+ "id": "shared_package_exports",
+ "community_name": "Community 42"
+ },
+ {
+ "label": "devDependencies",
+ "file_type": "code",
+ "source_file": "shared/package.json",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 42,
+ "norm_label": "devdependencies",
+ "id": "shared_package_devdependencies",
+ "community_name": "Community 42"
+ },
+ {
+ "label": "typescript",
+ "file_type": "code",
+ "source_file": "shared/package.json",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 42,
+ "norm_label": "typescript",
+ "id": "shared_package_devdependencies_typescript",
+ "community_name": "Community 42"
+ },
+ {
+ "label": "typescript",
+ "file_type": "concept",
+ "source_file": "shared/package.json",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 42,
+ "norm_label": "typescript",
+ "id": "shared_package_json_typescript",
+ "community_name": "Community 42"
+ },
+ {
+ "label": "panelModels.ts",
+ "file_type": "code",
+ "source_file": "shared/panelModels.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 54,
+ "norm_label": "panelmodels.ts",
+ "id": "shared_panelmodels",
+ "community_name": "Community 54"
+ },
+ {
+ "label": "PANEL_MODELS",
+ "file_type": "code",
+ "source_file": "shared/panelModels.ts",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 54,
+ "norm_label": "panel_models",
+ "id": "shared_panelmodels_panel_models",
+ "community_name": "Community 54"
+ },
+ {
+ "label": "getPanelModel()",
+ "file_type": "code",
+ "source_file": "shared/panelModels.ts",
+ "source_location": "L96",
+ "_origin": "ast",
+ "community": 1,
+ "norm_label": "getpanelmodel()",
+ "id": "shared_panelmodels_getpanelmodel",
+ "community_name": "Community 1"
+ },
+ {
+ "label": "panelTypes.ts",
+ "file_type": "code",
+ "source_file": "shared/panelTypes.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 54,
+ "norm_label": "paneltypes.ts",
+ "id": "shared_paneltypes",
+ "community_name": "Community 54"
+ },
+ {
+ "label": "panelEditSchema",
+ "file_type": "code",
+ "source_file": "shared/panelTypes.ts",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 54,
+ "norm_label": "paneleditschema",
+ "id": "shared_paneltypes_paneleditschema",
+ "community_name": "Community 54"
+ },
+ {
+ "label": "PanelEdit",
+ "file_type": "code",
+ "source_file": "shared/panelTypes.ts",
+ "source_location": "L36",
+ "_origin": "ast",
+ "community": 8,
+ "norm_label": "paneledit",
+ "id": "shared_paneltypes_paneledit",
+ "community_name": "Community 8"
+ },
+ {
+ "label": "PanelModel",
+ "file_type": "code",
+ "source_file": "shared/panelTypes.ts",
+ "source_location": "L44",
+ "_origin": "ast",
+ "community": 54,
+ "norm_label": "panelmodel",
+ "id": "shared_paneltypes_panelmodel",
+ "community_name": "Community 54"
+ },
+ {
+ "label": "projectDtos.ts",
+ "file_type": "code",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 32,
+ "norm_label": "projectdtos.ts",
+ "id": "shared_projectdtos",
+ "community_name": "Community 32"
+ },
+ {
+ "label": "latLngSchema",
+ "file_type": "code",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 32,
+ "norm_label": "latlngschema",
+ "id": "shared_projectdtos_latlngschema",
+ "community_name": "Community 32"
+ },
+ {
+ "label": "buildingInsightsSchema",
+ "file_type": "code",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L31",
+ "_origin": "ast",
+ "community": 32,
+ "norm_label": "buildinginsightsschema",
+ "id": "shared_projectdtos_buildinginsightsschema",
+ "community_name": "Community 32"
+ },
+ {
+ "label": "tariffRatesSchema",
+ "file_type": "code",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L64",
+ "_origin": "ast",
+ "community": 32,
+ "norm_label": "tariffratesschema",
+ "id": "shared_projectdtos_tariffratesschema",
+ "community_name": "Community 32"
+ },
+ {
+ "label": "billBreakdownSchema",
+ "file_type": "code",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L93",
+ "_origin": "ast",
+ "community": 32,
+ "norm_label": "billbreakdownschema",
+ "id": "shared_projectdtos_billbreakdownschema",
+ "community_name": "Community 32"
+ },
+ {
+ "label": "monthlyBreakdownSchema",
+ "file_type": "code",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L118",
+ "_origin": "ast",
+ "community": 32,
+ "norm_label": "monthlybreakdownschema",
+ "id": "shared_projectdtos_monthlybreakdownschema",
+ "community_name": "Community 32"
+ },
+ {
+ "label": "inverterReplacementSchema",
+ "file_type": "code",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L138",
+ "_origin": "ast",
+ "community": 32,
+ "norm_label": "inverterreplacementschema",
+ "id": "shared_projectdtos_inverterreplacementschema",
+ "community_name": "Community 32"
+ },
+ {
+ "label": "analysisConfigSchema",
+ "file_type": "code",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L153",
+ "_origin": "ast",
+ "community": 32,
+ "norm_label": "analysisconfigschema",
+ "id": "shared_projectdtos_analysisconfigschema",
+ "community_name": "Community 32"
+ },
+ {
+ "label": "storedAnalysisConfigSchema",
+ "file_type": "code",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L182",
+ "_origin": "ast",
+ "community": 32,
+ "norm_label": "storedanalysisconfigschema",
+ "id": "shared_projectdtos_storedanalysisconfigschema",
+ "community_name": "Community 32"
+ },
+ {
+ "label": "analysisResultsSchema",
+ "file_type": "code",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L193",
+ "_origin": "ast",
+ "community": 32,
+ "norm_label": "analysisresultsschema",
+ "id": "shared_projectdtos_analysisresultsschema",
+ "community_name": "Community 32"
+ },
+ {
+ "label": "createProjectRequestSchema",
+ "file_type": "code",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L223",
+ "_origin": "ast",
+ "community": 46,
+ "norm_label": "createprojectrequestschema",
+ "id": "shared_projectdtos_createprojectrequestschema",
+ "community_name": "Community 46"
+ },
+ {
+ "label": "saveLayoutRequestSchema",
+ "file_type": "code",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L231",
+ "_origin": "ast",
+ "community": 46,
+ "norm_label": "savelayoutrequestschema",
+ "id": "shared_projectdtos_savelayoutrequestschema",
+ "community_name": "Community 46"
+ },
+ {
+ "label": "saveAnalysisRequestSchema",
+ "file_type": "code",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L239",
+ "_origin": "ast",
+ "community": 46,
+ "norm_label": "saveanalysisrequestschema",
+ "id": "shared_projectdtos_saveanalysisrequestschema",
+ "community_name": "Community 46"
+ },
+ {
+ "label": "updateLayoutPreferencesRequestSchema",
+ "file_type": "code",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L247",
+ "_origin": "ast",
+ "community": 46,
+ "norm_label": "updatelayoutpreferencesrequestschema",
+ "id": "shared_projectdtos_updatelayoutpreferencesrequestschema",
+ "community_name": "Community 46"
+ },
+ {
+ "label": "BuildingInsightsDto",
+ "file_type": "code",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L254",
+ "_origin": "ast",
+ "community": 27,
+ "norm_label": "buildinginsightsdto",
+ "id": "shared_projectdtos_buildinginsightsdto",
+ "community_name": "Community 27"
+ },
+ {
+ "label": "AnalysisConfigDto",
+ "file_type": "code",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L256",
+ "_origin": "ast",
+ "community": 32,
+ "norm_label": "analysisconfigdto",
+ "id": "shared_projectdtos_analysisconfigdto",
+ "community_name": "Community 32"
+ },
+ {
+ "label": "StoredAnalysisConfigDto",
+ "file_type": "code",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L258",
+ "_origin": "ast",
+ "community": 32,
+ "norm_label": "storedanalysisconfigdto",
+ "id": "shared_projectdtos_storedanalysisconfigdto",
+ "community_name": "Community 32"
+ },
+ {
+ "label": "AnalysisResultsDto",
+ "file_type": "code",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L260",
+ "_origin": "ast",
+ "community": 32,
+ "norm_label": "analysisresultsdto",
+ "id": "shared_projectdtos_analysisresultsdto",
+ "community_name": "Community 32"
+ },
+ {
+ "label": "shared/quota.ts",
+ "file_type": "code",
+ "source_file": "shared/quota.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "shared/quota.ts",
+ "id": "shared_quota",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "UserTier",
+ "file_type": "code",
+ "source_file": "shared/quota.ts",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "usertier",
+ "id": "shared_quota_usertier",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "TIER_DAILY_LIMITS",
+ "file_type": "code",
+ "source_file": "shared/quota.ts",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "tier_daily_limits",
+ "id": "shared_quota_tier_daily_limits",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "QuotaSummary",
+ "file_type": "code",
+ "source_file": "shared/quota.ts",
+ "source_location": "L38",
+ "_origin": "ast",
+ "community": 14,
+ "norm_label": "quotasummary",
+ "id": "shared_quota_quotasummary",
+ "community_name": "Community 14"
+ },
+ {
+ "label": "tariffDefaults.ts",
+ "file_type": "code",
+ "source_file": "shared/tariffDefaults.ts",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 63,
+ "norm_label": "tariffdefaults.ts",
+ "id": "shared_tariffdefaults",
+ "community_name": "Community 63"
+ },
+ {
+ "label": "TariffDefaults",
+ "file_type": "code",
+ "source_file": "shared/tariffDefaults.ts",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 63,
+ "norm_label": "tariffdefaults",
+ "id": "shared_tariffdefaults_tariffdefaults",
+ "community_name": "Community 63"
+ },
+ {
+ "label": "shared/tsconfig.json",
+ "file_type": "code",
+ "source_file": "shared/tsconfig.json",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 64,
+ "norm_label": "shared/tsconfig.json",
+ "id": "shared_tsconfig",
+ "community_name": "Community 64"
+ },
+ {
+ "label": "extends",
+ "file_type": "code",
+ "source_file": "shared/tsconfig.json",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 64,
+ "norm_label": "extends",
+ "id": "shared_tsconfig_extends",
+ "community_name": "Community 64"
+ },
+ {
+ "label": "../tsconfig.json",
+ "file_type": "concept",
+ "source_file": "shared/tsconfig.json",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 64,
+ "norm_label": "../tsconfig.json",
+ "id": "shared_tsconfig_json_ref_tsconfig_json",
+ "community_name": "Community 64"
+ },
+ {
+ "label": "compilerOptions",
+ "file_type": "code",
+ "source_file": "shared/tsconfig.json",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 64,
+ "norm_label": "compileroptions",
+ "id": "shared_tsconfig_compileroptions",
+ "community_name": "Community 64"
+ },
+ {
+ "label": "composite",
+ "file_type": "code",
+ "source_file": "shared/tsconfig.json",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 64,
+ "norm_label": "composite",
+ "id": "shared_tsconfig_compileroptions_composite",
+ "community_name": "Community 64"
+ },
+ {
+ "label": "outDir",
+ "file_type": "code",
+ "source_file": "shared/tsconfig.json",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 64,
+ "norm_label": "outdir",
+ "id": "shared_tsconfig_compileroptions_outdir",
+ "community_name": "Community 64"
+ },
+ {
+ "label": "rootDir",
+ "file_type": "code",
+ "source_file": "shared/tsconfig.json",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 64,
+ "norm_label": "rootdir",
+ "id": "shared_tsconfig_compileroptions_rootdir",
+ "community_name": "Community 64"
+ },
+ {
+ "label": "include",
+ "file_type": "code",
+ "source_file": "shared/tsconfig.json",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 64,
+ "norm_label": "include",
+ "id": "shared_tsconfig_include",
+ "community_name": "Community 64"
+ },
+ {
+ "label": "*.ts",
+ "file_type": "concept",
+ "source_file": "shared/tsconfig.json",
+ "source_location": "L8",
+ "_origin": "ast",
+ "community": 64,
+ "norm_label": "*.ts",
+ "id": "ref_ts",
+ "community_name": "Community 64"
+ },
+ {
+ "label": "tsconfig.json",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L1",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "tsconfig.json",
+ "id": "tsconfig",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "compilerOptions",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L2",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "compileroptions",
+ "id": "tsconfig_compileroptions",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "target",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L3",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "target",
+ "id": "tsconfig_compileroptions_target",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "module",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L4",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "module",
+ "id": "tsconfig_compileroptions_module",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "moduleResolution",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L5",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "moduleresolution",
+ "id": "tsconfig_compileroptions_moduleresolution",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "lib",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "lib",
+ "id": "tsconfig_compileroptions_lib",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "ES2020",
+ "file_type": "concept",
+ "source_file": "tsconfig.json",
+ "source_location": "L6",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "es2020",
+ "id": "tsconfig_json_ref_es2020",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "strict",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L7",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "strict",
+ "id": "tsconfig_compileroptions_strict",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "noUncheckedIndexedAccess",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L10",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "nouncheckedindexedaccess",
+ "id": "tsconfig_compileroptions_nouncheckedindexedaccess",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "esModuleInterop",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L11",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "esmoduleinterop",
+ "id": "tsconfig_compileroptions_esmoduleinterop",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "skipLibCheck",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L12",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "skiplibcheck",
+ "id": "tsconfig_compileroptions_skiplibcheck",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "forceConsistentCasingInFileNames",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L13",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "forceconsistentcasinginfilenames",
+ "id": "tsconfig_compileroptions_forceconsistentcasinginfilenames",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "resolveJsonModule",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L14",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "resolvejsonmodule",
+ "id": "tsconfig_compileroptions_resolvejsonmodule",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "isolatedModules",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L15",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "isolatedmodules",
+ "id": "tsconfig_compileroptions_isolatedmodules",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "allowImportingTsExtensions",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L16",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "allowimportingtsextensions",
+ "id": "tsconfig_compileroptions_allowimportingtsextensions",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "rewriteRelativeImportExtensions",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L17",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "rewriterelativeimportextensions",
+ "id": "tsconfig_compileroptions_rewriterelativeimportextensions",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "declaration",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L18",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "declaration",
+ "id": "tsconfig_compileroptions_declaration",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "declarationMap",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L19",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "declarationmap",
+ "id": "tsconfig_compileroptions_declarationmap",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "sourceMap",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "sourcemap",
+ "id": "tsconfig_compileroptions_sourcemap",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "paths",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L21",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "paths",
+ "id": "tsconfig_compileroptions_paths",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "@shared/types",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "@shared/types",
+ "id": "tsconfig_paths_shared_types",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "./shared/index.ts",
+ "file_type": "concept",
+ "source_file": "tsconfig.json",
+ "source_location": "L22",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "./shared/index.ts",
+ "id": "tsconfig_json_ref_shared_index_ts",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "exclude",
+ "file_type": "code",
+ "source_file": "tsconfig.json",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "exclude",
+ "id": "tsconfig_exclude",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "node_modules",
+ "file_type": "concept",
+ "source_file": "tsconfig.json",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "node_modules",
+ "id": "ref_node_modules",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "dist",
+ "file_type": "concept",
+ "source_file": "tsconfig.json",
+ "source_location": "L25",
+ "_origin": "ast",
+ "community": 15,
+ "norm_label": "dist",
+ "id": "ref_dist",
+ "community_name": "Community 15"
+ },
+ {
+ "label": "createProjectSchema",
+ "file_type": "code",
+ "source_file": "backend/src/validators/projects.ts",
+ "source_location": "L20",
+ "_origin": "ast",
+ "community": 46,
+ "norm_label": "createprojectschema",
+ "id": "backend_src_validators_projects_createprojectschema",
+ "community_name": "Community 46"
+ },
+ {
+ "label": "saveLayoutSchema",
+ "file_type": "code",
+ "source_file": "backend/src/validators/projects.ts",
+ "source_location": "L26",
+ "_origin": "ast",
+ "community": 46,
+ "norm_label": "savelayoutschema",
+ "id": "backend_src_validators_projects_savelayoutschema",
+ "community_name": "Community 46"
+ },
+ {
+ "label": "saveAnalysisSchema",
+ "file_type": "code",
+ "source_file": "backend/src/validators/projects.ts",
+ "source_location": "L32",
+ "_origin": "ast",
+ "community": 46,
+ "norm_label": "saveanalysisschema",
+ "id": "backend_src_validators_projects_saveanalysisschema",
+ "community_name": "Community 46"
+ },
+ {
+ "label": "updateLayoutPreferencesSchema",
+ "file_type": "code",
+ "source_file": "backend/src/validators/projects.ts",
+ "source_location": "L38",
+ "_origin": "ast",
+ "community": 46,
+ "norm_label": "updatelayoutpreferencesschema",
+ "id": "backend_src_validators_projects_updatelayoutpreferencesschema",
+ "community_name": "Community 46"
+ }
+ ],
+ "links": [
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package",
+ "target": "backend_package_dependencies"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package",
+ "target": "backend_package_devdependencies"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package",
+ "target": "backend_package_license"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package",
+ "target": "backend_package_name"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package",
+ "target": "backend_package_prisma"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package",
+ "target": "backend_package_private"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package",
+ "target": "backend_package_scripts"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package",
+ "target": "backend_package_type"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_scripts",
+ "target": "backend_package_scripts_build"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_scripts",
+ "target": "backend_package_scripts_dev"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_scripts",
+ "target": "backend_package_scripts_start"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_scripts",
+ "target": "backend_package_scripts_test"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies",
+ "target": "backend_package_dependencies_compression"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies",
+ "target": "backend_package_dependencies_cors"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies",
+ "target": "backend_package_dependencies_dotenv"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies",
+ "target": "backend_package_dependencies_dotenv_expand"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies",
+ "target": "backend_package_dependencies_express"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies",
+ "target": "backend_package_dependencies_geotiff"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies",
+ "target": "backend_package_dependencies_google_genai"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies",
+ "target": "backend_package_dependencies_jsonwebtoken"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies",
+ "target": "backend_package_dependencies_prisma_client"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies",
+ "target": "backend_package_dependencies_proj4"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies",
+ "target": "backend_package_dependencies_shared_types"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies",
+ "target": "backend_package_dependencies_sharp"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies",
+ "target": "backend_package_dependencies_supabase_supabase_js"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies",
+ "target": "backend_package_dependencies_zod"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L13",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies_google_genai",
+ "target": "google_genai"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L14",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies_prisma_client",
+ "target": "backend_package_json_prisma_client"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L15",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies_shared_types",
+ "target": "backend_package_json_shared_types"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L16",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies_supabase_supabase_js",
+ "target": "backend_package_json_supabase_supabase_js"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L17",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies_compression",
+ "target": "compression"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L18",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies_cors",
+ "target": "cors"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L19",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies_dotenv",
+ "target": "dotenv"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L20",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies_dotenv_expand",
+ "target": "dotenv_expand"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L21",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies_express",
+ "target": "express"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L22",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies_geotiff",
+ "target": "geotiff"
+ },
+ {
+ "relation": "references",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L64",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_fluxrecomputeservice_loadfluxdata",
+ "target": "backend_package_dependencies_geotiff"
+ },
+ {
+ "relation": "references",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L56",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_geotiffservice_loadgeotiffwithfallback",
+ "target": "backend_package_dependencies_geotiff"
+ },
+ {
+ "relation": "references",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationPipeline/convert.ts",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationpipeline_convert_convertrgbtifftopng",
+ "target": "backend_package_dependencies_geotiff"
+ },
+ {
+ "relation": "references",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L166",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_overlayservice_getorgenerateoverlay",
+ "target": "backend_package_dependencies_geotiff"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L23",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies_jsonwebtoken",
+ "target": "jsonwebtoken"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L24",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies_proj4",
+ "target": "backend_package_json_proj4"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L25",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies_sharp",
+ "target": "sharp"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L26",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_dependencies_zod",
+ "target": "backend_package_json_zod"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_prisma",
+ "target": "backend_package_prisma_seed"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies",
+ "target": "backend_package_devdependencies_prisma"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies",
+ "target": "backend_package_devdependencies_tsx"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies",
+ "target": "backend_package_devdependencies_types_compression"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies",
+ "target": "backend_package_devdependencies_types_cors"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies",
+ "target": "backend_package_devdependencies_types_express"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies",
+ "target": "backend_package_devdependencies_types_jsonwebtoken"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies",
+ "target": "backend_package_devdependencies_types_node"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies",
+ "target": "backend_package_devdependencies_types_proj4"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L40",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies",
+ "target": "backend_package_devdependencies_typescript"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L41",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies",
+ "target": "backend_package_devdependencies_vitest"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L32",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies_types_compression",
+ "target": "types_compression"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L33",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies_types_cors",
+ "target": "types_cors"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L34",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies_types_express",
+ "target": "types_express"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L35",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies_types_jsonwebtoken",
+ "target": "types_jsonwebtoken"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L36",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies_types_node",
+ "target": "backend_package_json_types_node"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L37",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies_types_proj4",
+ "target": "types_proj4"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L38",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies_prisma",
+ "target": "backend_package_json_prisma"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L39",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies_tsx",
+ "target": "tsx"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L40",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies_typescript",
+ "target": "backend_package_json_typescript"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/package.json",
+ "source_location": "L41",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_package_devdependencies_vitest",
+ "target": "backend_package_json_vitest"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_app_allowedorigins"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_app_app"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_app_dirname"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_config_env"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_config_env_env"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_middleware_errorhandler"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_middleware_errorhandler_errorhandler"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_middleware_requestlogger"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_middleware_requestlogger_requestlogger"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_routes_chat"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_routes_chat_chatrouter"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_routes_health"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_routes_health_healthrouter"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_routes_locations"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_routes_locations_locationsrouter"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_routes_projects"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_routes_projects_projectsrouter"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_routes_quota"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_routes_quota_quotarouter"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_routes_tariff"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/app.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_app",
+ "target": "backend_src_routes_tariff_tariffrouter"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/server.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_server",
+ "target": "backend_src_app"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/server.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_server",
+ "target": "backend_src_app_app"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/config/env.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_config_env",
+ "target": "backend_src_config_env_dirname"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/config/env.ts",
+ "source_location": "L55",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_config_env",
+ "target": "backend_src_config_env_env"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/config/env.ts",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_config_env",
+ "target": "backend_src_config_env_envschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/config/env.ts",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_config_env",
+ "target": "backend_src_config_env_parsed"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/config/supabase.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_config_supabase",
+ "target": "backend_src_config_env"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/server.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_server",
+ "target": "backend_src_config_env"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/client.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_client",
+ "target": "backend_src_config_env"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_config_env"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_config_env"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/pdfTokenService.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_pdftokenservice",
+ "target": "backend_src_config_env"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_config_env"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/config/supabase.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_config_supabase",
+ "target": "backend_src_config_env_env"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/server.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_server",
+ "target": "backend_src_config_env_env"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/client.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_client",
+ "target": "backend_src_config_env_env"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_config_env_env"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_config_env_env"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/pdfTokenService.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_pdftokenservice",
+ "target": "backend_src_config_env_env"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_config_env_env"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/config/prisma.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_config_prisma",
+ "target": "backend_src_config_prisma_prisma"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/tariff.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_tariff",
+ "target": "backend_src_config_prisma"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/persist.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_persist",
+ "target": "backend_src_config_prisma"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_config_prisma"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_config_prisma"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_userservice",
+ "target": "backend_src_config_prisma"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/tariff.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_tariff",
+ "target": "backend_src_config_prisma_prisma"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/persist.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_persist",
+ "target": "backend_src_config_prisma_prisma"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_config_prisma_prisma"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_config_prisma_prisma"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_userservice",
+ "target": "backend_src_config_prisma_prisma"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/config/supabase.ts",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_config_supabase",
+ "target": "backend_src_config_supabase_supabase"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/auth.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_auth",
+ "target": "backend_src_config_supabase"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/storageService.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_storageservice",
+ "target": "backend_src_config_supabase"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_userservice",
+ "target": "backend_src_config_supabase"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/auth.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_auth",
+ "target": "backend_src_config_supabase_supabase"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/storageService.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_storageservice",
+ "target": "backend_src_config_supabase_supabase"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_userservice",
+ "target": "backend_src_config_supabase_supabase"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_errors",
+ "target": "backend_src_errors_apperror"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_errors",
+ "target": "backend_src_errors_badrequesterror"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_errors",
+ "target": "backend_src_errors_forbiddenerror"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_errors",
+ "target": "backend_src_errors_notfounderror"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/errorHandler.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_errorhandler",
+ "target": "backend_src_errors"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_errors"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_errors"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/tariff.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_tariff",
+ "target": "backend_src_errors"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_errors"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "deferred": true,
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/streamChat.test.ts",
+ "source_location": "L123",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_streamchat_test_loadstreamchat",
+ "target": "backend_src_errors"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_errors"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_errors"
+ },
+ {
+ "relation": "method",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_errors_apperror",
+ "target": "backend_src_errors_apperror_constructor"
+ },
+ {
+ "relation": "inherits",
+ "context": "type",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_errors_badrequesterror",
+ "target": "backend_src_errors_apperror"
+ },
+ {
+ "relation": "inherits",
+ "context": "type",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_errors_forbiddenerror",
+ "target": "backend_src_errors_apperror"
+ },
+ {
+ "relation": "inherits",
+ "context": "type",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_errors_notfounderror",
+ "target": "backend_src_errors_apperror"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/errorHandler.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_errorhandler",
+ "target": "backend_src_errors_apperror"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_errors_apperror"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_errors_apperror"
+ },
+ {
+ "relation": "method",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_errors_badrequesterror",
+ "target": "backend_src_errors_badrequesterror_constructor"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_errors_badrequesterror"
+ },
+ {
+ "relation": "method",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_errors_forbiddenerror",
+ "target": "backend_src_errors_forbiddenerror_constructor"
+ },
+ {
+ "relation": "method",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/errors.ts",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_errors_notfounderror",
+ "target": "backend_src_errors_notfounderror_constructor"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_errors_notfounderror"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_errors_notfounderror"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/tariff.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_tariff",
+ "target": "backend_src_errors_notfounderror"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_errors_notfounderror"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_errors_notfounderror"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_errors_notfounderror"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/__tests__/fluxSampler.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_tests_fluxsampler_test",
+ "target": "backend_src_geo_fluxsampler"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/__tests__/fluxSampler.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_tests_fluxsampler_test",
+ "target": "backend_src_geo_fluxsampler_calculateaverageflux"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/__tests__/fluxSampler.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_tests_fluxsampler_test",
+ "target": "backend_src_geo_fluxsampler_pointinpolygon"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/__tests__/panelGeometry.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_tests_panelgeometry_test",
+ "target": "backend_src_geo_panelgeometry"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/__tests__/panelGeometry.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_tests_panelgeometry_test",
+ "target": "backend_src_geo_panelgeometry_getrotatedcorners"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/__tests__/panelGeometry.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_tests_panelgeometry_test",
+ "target": "backend_src_geo_panelgeometry_rotatepoint"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/__tests__/transforms.test.ts",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_tests_transforms_test",
+ "target": "backend_src_geo_tests_transforms_test_mockgeo"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/__tests__/transforms.test.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_tests_transforms_test",
+ "target": "backend_src_geo_transforms"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/__tests__/transforms.test.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_tests_transforms_test",
+ "target": "backend_src_geo_transforms_geotransform"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/__tests__/transforms.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_tests_transforms_test",
+ "target": "backend_src_geo_transforms_latlngtopixel"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/__tests__/transforms.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_tests_transforms_test",
+ "target": "backend_src_geo_transforms_meterstopixels"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/__tests__/transforms.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_tests_transforms_test",
+ "target": "backend_src_geo_transforms_pixeltolatlng"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/__tests__/transforms.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_tests_transforms_test",
+ "target": "backend_src_geo_transforms_setupgeotransform"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/fluxSampler.ts",
+ "source_location": "L76",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_fluxsampler",
+ "target": "backend_src_geo_fluxsampler_calculateaverageflux"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/fluxSampler.ts",
+ "source_location": "L121",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_fluxsampler",
+ "target": "backend_src_geo_fluxsampler_computemonthlyenergy"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/fluxSampler.ts",
+ "source_location": "L189",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_fluxsampler",
+ "target": "backend_src_geo_fluxsampler_computemonthlyenergyfromrasters"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/fluxSampler.ts",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_fluxsampler",
+ "target": "backend_src_geo_fluxsampler_pointinpolygon"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/fluxSampler.ts",
+ "source_location": "L148",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_fluxsampler",
+ "target": "backend_src_geo_fluxsampler_preloadedfluxrasters"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/fluxSampler.ts",
+ "source_location": "L167",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_fluxsampler",
+ "target": "backend_src_geo_fluxsampler_preloadfluxrasters"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_geo_fluxsampler"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/fluxSampler.ts",
+ "source_location": "L99",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_fluxsampler_calculateaverageflux",
+ "target": "backend_src_geo_fluxsampler_pointinpolygon"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/fluxSampler.ts",
+ "source_location": "L134",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_fluxsampler_computemonthlyenergy",
+ "target": "backend_src_geo_fluxsampler_calculateaverageflux"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/fluxSampler.ts",
+ "source_location": "L197",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_fluxsampler_computemonthlyenergyfromrasters",
+ "target": "backend_src_geo_fluxsampler_calculateaverageflux"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_geo_fluxsampler_computemonthlyenergy"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L96",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_fluxrecomputeservice_recomputesinglepanel",
+ "target": "backend_src_geo_fluxsampler_computemonthlyenergy"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_geo_fluxsampler_preloadfluxrasters"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L125",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_fluxrecomputeservice_recomputebatchpanels",
+ "target": "backend_src_geo_fluxsampler_preloadfluxrasters"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_geo_fluxsampler_computemonthlyenergyfromrasters"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L135",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_fluxrecomputeservice_recomputebatchpanels",
+ "target": "backend_src_geo_fluxsampler_computemonthlyenergyfromrasters"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/panelGeometry.ts",
+ "source_location": "L45",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_panelgeometry",
+ "target": "backend_src_geo_panelgeometry_getrotatedcorners"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/panelGeometry.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_panelgeometry",
+ "target": "backend_src_geo_panelgeometry_rotatepoint"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_geo_panelgeometry"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/panelGeometry.ts",
+ "source_location": "L60",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_panelgeometry_getrotatedcorners",
+ "target": "backend_src_geo_panelgeometry_rotatepoint"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_geo_panelgeometry_getrotatedcorners"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L134",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_fluxrecomputeservice_recomputebatchpanels",
+ "target": "backend_src_geo_panelgeometry_getrotatedcorners"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L95",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_fluxrecomputeservice_recomputesinglepanel",
+ "target": "backend_src_geo_panelgeometry_getrotatedcorners"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/transforms.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_transforms",
+ "target": "backend_src_geo_transforms_geotransform"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/transforms.ts",
+ "source_location": "L79",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_transforms",
+ "target": "backend_src_geo_transforms_latlngtopixel"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/transforms.ts",
+ "source_location": "L114",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_transforms",
+ "target": "backend_src_geo_transforms_meterstopixels"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/transforms.ts",
+ "source_location": "L96",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_transforms",
+ "target": "backend_src_geo_transforms_pixeltolatlng"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/geo/transforms.ts",
+ "source_location": "L50",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_geo_transforms",
+ "target": "backend_src_geo_transforms_setupgeotransform"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_geo_transforms"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_geotiffservice",
+ "target": "backend_src_geo_transforms"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_geo_transforms_geotransform"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_geo_transforms_setupgeotransform"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L66",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice_loadfluxdata",
+ "target": "backend_src_geo_transforms_setupgeotransform"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_geotiffservice",
+ "target": "backend_src_geo_transforms_setupgeotransform"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L96",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_geotiffservice_loadreferencegeotransform",
+ "target": "backend_src_geo_transforms_setupgeotransform"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L115",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_geotiffservice_loadroofmask",
+ "target": "backend_src_geo_transforms_setupgeotransform"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_geo_transforms_latlngtopixel"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L130",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_fluxrecomputeservice_recomputebatchpanels",
+ "target": "backend_src_geo_transforms_latlngtopixel"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L91",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_fluxrecomputeservice_recomputesinglepanel",
+ "target": "backend_src_geo_transforms_latlngtopixel"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_geo_transforms_meterstopixels"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L126",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_fluxrecomputeservice_recomputebatchpanels",
+ "target": "backend_src_geo_transforms_meterstopixels"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L92",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_fluxrecomputeservice_recomputesinglepanel",
+ "target": "backend_src_geo_transforms_meterstopixels"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/asyncHandler.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_asynchandler",
+ "target": "backend_src_middleware_asynchandler_asynchandler"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/asyncHandler.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_asynchandler",
+ "target": "backend_src_middleware_asynchandler_asyncroutehandler"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/chat.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_chat",
+ "target": "backend_src_middleware_asynchandler"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_middleware_asynchandler"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_middleware_asynchandler"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/quota.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_quota",
+ "target": "backend_src_middleware_asynchandler"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/tariff.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_tariff",
+ "target": "backend_src_middleware_asynchandler"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/chat.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_chat",
+ "target": "backend_src_middleware_asynchandler_asynchandler"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_middleware_asynchandler_asynchandler"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_middleware_asynchandler_asynchandler"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/quota.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_quota",
+ "target": "backend_src_middleware_asynchandler_asynchandler"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/tariff.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_tariff",
+ "target": "backend_src_middleware_asynchandler_asynchandler"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/auth.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_auth",
+ "target": "backend_src_middleware_auth_express"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/auth.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_auth",
+ "target": "backend_src_middleware_auth_request"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/auth.ts",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_auth",
+ "target": "backend_src_middleware_auth_requireauth"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/chat.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_chat",
+ "target": "backend_src_middleware_auth"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_middleware_auth"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_middleware_auth"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/quota.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_quota",
+ "target": "backend_src_middleware_auth"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/chat.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_chat",
+ "target": "backend_src_middleware_auth_requireauth"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_middleware_auth_requireauth"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_middleware_auth_requireauth"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/quota.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_quota",
+ "target": "backend_src_middleware_auth_requireauth"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/checkQuota.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_checkquota",
+ "target": "backend_src_middleware_checkquota_checkquota"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/checkQuota.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_checkquota",
+ "target": "backend_src_services_userservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/checkQuota.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_checkquota",
+ "target": "backend_src_services_userservice_getquotasummary"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_middleware_checkquota"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/middleware/checkQuota.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_middleware_checkquota_checkquota",
+ "target": "backend_src_services_userservice_getquotasummary"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_middleware_checkquota_checkquota"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/errorHandler.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_errorhandler",
+ "target": "backend_src_middleware_errorhandler_errorhandler"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/pdfTokenRateLimit.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_pdftokenratelimit",
+ "target": "backend_src_middleware_pdftokenratelimit_hits"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/pdfTokenRateLimit.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_pdftokenratelimit",
+ "target": "backend_src_middleware_pdftokenratelimit_pdftokenratelimit"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_middleware_pdftokenratelimit"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_middleware_pdftokenratelimit_pdftokenratelimit"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/requestLogger.ts",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_requestlogger",
+ "target": "backend_src_middleware_requestlogger_requestlogger"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/requirePdfToken.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_requirepdftoken",
+ "target": "backend_src_middleware_requirepdftoken_express"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/requirePdfToken.ts",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_requirepdftoken",
+ "target": "backend_src_middleware_requirepdftoken_extracttoken"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/requirePdfToken.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_requirepdftoken",
+ "target": "backend_src_middleware_requirepdftoken_request"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/requirePdfToken.ts",
+ "source_location": "L45",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_requirepdftoken",
+ "target": "backend_src_middleware_requirepdftoken_requirepdftoken"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/requirePdfToken.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_requirepdftoken",
+ "target": "backend_src_services_pdftokenservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/requirePdfToken.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_requirepdftoken",
+ "target": "backend_src_services_pdftokenservice_invalidpdftokenerror"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/requirePdfToken.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_requirepdftoken",
+ "target": "backend_src_services_pdftokenservice_verifypdftoken"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_middleware_requirepdftoken"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/requirePdfToken.ts",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_requirepdftoken_requirepdftoken",
+ "target": "backend_src_middleware_requirepdftoken_extracttoken"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/middleware/requirePdfToken.ts",
+ "source_location": "L54",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_middleware_requirepdftoken_requirepdftoken",
+ "target": "backend_src_services_pdftokenservice_verifypdftoken"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_middleware_requirepdftoken_requirepdftoken"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/middleware/validate.ts",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_middleware_validate",
+ "target": "backend_src_middleware_validate_validate"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/chat.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_chat",
+ "target": "backend_src_middleware_validate"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_middleware_validate"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_middleware_validate"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/chat.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_chat",
+ "target": "backend_src_middleware_validate_validate"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_middleware_validate_validate"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_middleware_validate_validate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/chat.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_chat",
+ "target": "backend_src_routes_chat_chatrouter"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/chat.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_chat",
+ "target": "backend_src_services_chat_index"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/chat.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_chat",
+ "target": "backend_src_validators_chat"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/chat.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_chat",
+ "target": "backend_src_validators_chat_chatrequestschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/health.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_health",
+ "target": "backend_src_routes_health_healthrouter"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/health.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_health",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/health.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_health",
+ "target": "shared_index_healthresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_routes_locations_locationsrouter"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_services_fluxrecomputeservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_services_fluxrecomputeservice_recomputebatchpanels"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_services_fluxrecomputeservice_recomputesinglepanel"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_services_fluxrecomputeservice_validatefluxlocation"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_services_locationservice"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_services_overlayservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_services_overlayservice_overlaytype"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_validators_locations"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_validators_locations_fluxrecomputebatchschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_validators_locations_fluxrecomputeschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_validators_locations_probelocationschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/locations.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_locations",
+ "target": "backend_src_validators_locations_resolvelocationschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_routes_projects_projectsrouter"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_services_pdftokenservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_services_pdftokenservice_signpdftoken"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_services_projectservice"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_validators_projects"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_validators_projects_createprojectschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_validators_projects_saveanalysisschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_validators_projects_savelayoutschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "backend_src_validators_projects_updatelayoutpreferencesschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "shared_projectdtos_createprojectrequestschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "shared_projectdtos_saveanalysisrequestschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "shared_projectdtos_savelayoutrequestschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/projects.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_projects",
+ "target": "shared_projectdtos_updatelayoutpreferencesrequestschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/quota.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_quota",
+ "target": "backend_src_routes_quota_quotarouter"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/quota.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_quota",
+ "target": "backend_src_services_userservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/quota.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_quota",
+ "target": "backend_src_services_userservice_getquotasummary"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/tariff.ts",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_tariff",
+ "target": "backend_src_routes_tariff_tariffrouter"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/tariff.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_tariff",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/tariff.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_tariff",
+ "target": "shared_index_tariffconfigresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/routes/tariff.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_routes_tariff",
+ "target": "shared_tariffdefaults_tariffdefaults"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/buildingInsightsService.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_buildinginsightsservice_test",
+ "target": "backend_src_services_buildinginsightsservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/buildingInsightsService.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_buildinginsightsservice_test",
+ "target": "backend_src_services_buildinginsightsservice_parsepanelspecs"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L43",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_fluxrecomputeservice_test",
+ "target": "backend_src_services_buildinginsightsservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L43",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_fluxrecomputeservice_test",
+ "target": "backend_src_services_buildinginsightsservice_panelspecs"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L42",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_fluxrecomputeservice_test",
+ "target": "backend_src_services_fluxrecomputeservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L42",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_fluxrecomputeservice_test",
+ "target": "backend_src_services_fluxrecomputeservice_recomputesinglepanel"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_fluxrecomputeservice_test",
+ "target": "backend_src_services_tests_fluxrecomputeservice_test_computemonthlyenergymock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_fluxrecomputeservice_test",
+ "target": "backend_src_services_tests_fluxrecomputeservice_test_downloadfromstoragemock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L53",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_fluxrecomputeservice_test",
+ "target": "backend_src_services_tests_fluxrecomputeservice_test_fake_buffer"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_fluxrecomputeservice_test",
+ "target": "backend_src_services_tests_fluxrecomputeservice_test_fake_geo"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L52",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_fluxrecomputeservice_test",
+ "target": "backend_src_services_tests_fluxrecomputeservice_test_fake_image"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_fluxrecomputeservice_test",
+ "target": "backend_src_services_tests_fluxrecomputeservice_test_fromarraybuffermock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_fluxrecomputeservice_test",
+ "target": "backend_src_services_tests_fluxrecomputeservice_test_getrotatedcornersmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_fluxrecomputeservice_test",
+ "target": "backend_src_services_tests_fluxrecomputeservice_test_latlngtopixelmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_fluxrecomputeservice_test",
+ "target": "backend_src_services_tests_fluxrecomputeservice_test_meterstopixelsmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L45",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_fluxrecomputeservice_test",
+ "target": "backend_src_services_tests_fluxrecomputeservice_test_panel_specs"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_fluxrecomputeservice_test",
+ "target": "backend_src_services_tests_fluxrecomputeservice_test_setupgeotransformmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/fluxRecomputeService.test.ts",
+ "source_location": "L55",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_fluxrecomputeservice_test",
+ "target": "backend_src_services_tests_fluxrecomputeservice_test_setuphappypath"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/locationPipeline.test.ts",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_locationpipeline_test",
+ "target": "backend_src_services_locationpipeline_fetch"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/locationPipeline.test.ts",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_locationpipeline_test",
+ "target": "backend_src_services_locationpipeline_fetch_fetchlocationpipelineinputs"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/locationPipeline.test.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_locationpipeline_test",
+ "target": "backend_src_services_tests_locationpipeline_test_calculateradiusmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/locationPipeline.test.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_locationpipeline_test",
+ "target": "backend_src_services_tests_locationpipeline_test_enrichbuildinginsightsmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/locationPipeline.test.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_locationpipeline_test",
+ "target": "backend_src_services_tests_locationpipeline_test_fetchbuildinginsightsmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/locationPipeline.test.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_locationpipeline_test",
+ "target": "backend_src_services_tests_locationpipeline_test_fetchdatalayersmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/locationPipeline.test.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_locationpipeline_test",
+ "target": "backend_src_services_tests_locationpipeline_test_parsebuildinginsightsmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/locationPipeline.test.ts",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_locationpipeline_test",
+ "target": "backend_src_services_tests_locationpipeline_test_valid_bi"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/locationService.test.ts",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_locationservice_test",
+ "target": "backend_src_services_locationservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/locationService.test.ts",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_locationservice_test",
+ "target": "backend_src_services_locationservice_getlocationdataforuser"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/locationService.test.ts",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_locationservice_test",
+ "target": "backend_src_services_locationservice_getlocationstatusforuser"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/locationService.test.ts",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_locationservice_test",
+ "target": "backend_src_services_locationservice_resolvelocation"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/locationService.test.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_locationservice_test",
+ "target": "backend_src_services_tests_locationservice_test_findfirst_update_create_projectupdatemany"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/locationService.test.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_locationservice_test",
+ "target": "backend_src_services_tests_locationservice_test_runlocationpipelinemock"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/solarApiService.test.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_solarapiservice_test",
+ "target": "backend_src_services_solarapiservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/solarApiService.test.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_solarapiservice_test",
+ "target": "backend_src_services_solarapiservice_fetchbuildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/solarApiService.test.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_solarapiservice_test",
+ "target": "backend_src_services_solarapiservice_fetchdatalayers"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/solarApiService.test.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_solarapiservice_test",
+ "target": "backend_src_services_solarapiservice_findbestqualityforlocation"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/solarApiService.test.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_solarapiservice_test",
+ "target": "backend_src_services_tests_solarapiservice_test_mockfetch"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/userService.test.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_userservice_test",
+ "target": "backend_src_services_tests_userservice_test_count_single_eq_select_from"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/userService.test.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_userservice_test",
+ "target": "backend_src_services_userservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/userService.test.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_userservice_test",
+ "target": "backend_src_services_userservice_getquotasummary"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/userService.test.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_userservice_test",
+ "target": "backend_src_services_userservice_nextutcmidnight"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/__tests__/userService.test.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_tests_userservice_test",
+ "target": "backend_src_services_userservice_startofutcday"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/buildingInsightsService.ts",
+ "source_location": "L43",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_buildinginsightsservice",
+ "target": "backend_src_services_buildinginsightsservice_buildinginsightsdto"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/buildingInsightsService.ts",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_buildinginsightsservice",
+ "target": "backend_src_services_buildinginsightsservice_buildinginsightsschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/buildingInsightsService.ts",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_buildinginsightsservice",
+ "target": "backend_src_services_buildinginsightsservice_latlngschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/buildingInsightsService.ts",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_buildinginsightsservice",
+ "target": "backend_src_services_buildinginsightsservice_panelspecs"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/buildingInsightsService.ts",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_buildinginsightsservice",
+ "target": "backend_src_services_buildinginsightsservice_parsebuildinginsights"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/buildingInsightsService.ts",
+ "source_location": "L65",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_buildinginsightsservice",
+ "target": "backend_src_services_buildinginsightsservice_parsepanelspecs"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/buildingInsightsService.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_buildinginsightsservice",
+ "target": "backend_src_services_buildinginsightsservice_solarpanelschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/buildingInsightsService.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_buildinginsightsservice",
+ "target": "backend_src_services_buildinginsightsservice_solarpotentialschema"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_services_buildinginsightsservice"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_services_buildinginsightsservice"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_buildinginsightsservice"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_locationresponse",
+ "target": "backend_src_services_buildinginsightsservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_services_buildinginsightsservice_panelspecs"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_locationresponse",
+ "target": "backend_src_services_buildinginsightsservice_buildinginsightsdto"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_services_buildinginsightsservice_parsebuildinginsights"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L98",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationpipeline_fetch_fetchlocationpipelineinputs",
+ "target": "backend_src_services_buildinginsightsservice_parsebuildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_buildinginsightsservice_parsebuildinginsights"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L231",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationservice_getlocationdataresponseforuser",
+ "target": "backend_src_services_buildinginsightsservice_parsebuildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_services_buildinginsightsservice_parsepanelspecs"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_fluxrecomputeservice_validatefluxlocation",
+ "target": "backend_src_services_buildinginsightsservice_parsepanelspecs"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/client.test.ts",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_client_test",
+ "target": "backend_src_services_chat_tests_client_test_env"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/client.test.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_client_test",
+ "target": "backend_src_services_chat_tests_client_test_envmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/client.test.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_client_test",
+ "target": "backend_src_services_chat_tests_client_test_mockgooglegenai"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/digest.test.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_digest_test",
+ "target": "backend_src_services_chat_tests_digest_test_chatproject"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/digest.test.ts",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_digest_test",
+ "target": "backend_src_services_chat_tests_digest_test_makeproject"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/digest.test.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_digest_test",
+ "target": "backend_src_services_chat_tests_digest_test_test_env"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/errors.test.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_errors_test",
+ "target": "backend_src_services_chat_tests_errors_test_test_env"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/guardrails.test.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_guardrails_test",
+ "target": "backend_src_services_chat_tests_guardrails_test_test_env"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/retry.test.ts",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_retry_test",
+ "target": "backend_src_services_chat_tests_retry_test_test_env"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/retry.test.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_retry_test",
+ "target": "backend_src_services_chat_tests_retry_test_wallclocknow"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/streamChat.test.ts",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_streamchat_test",
+ "target": "backend_src_services_chat_tests_streamchat_test_loadedstreamchatmodule"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/streamChat.test.ts",
+ "source_location": "L74",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_streamchat_test",
+ "target": "backend_src_services_chat_tests_streamchat_test_loadstreamchat"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/streamChat.test.ts",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_streamchat_test",
+ "target": "backend_src_services_chat_tests_streamchat_test_makeproject"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/streamChat.test.ts",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_streamchat_test",
+ "target": "backend_src_services_chat_tests_streamchat_test_makerequest"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/streamChat.test.ts",
+ "source_location": "L52",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_streamchat_test",
+ "target": "backend_src_services_chat_tests_streamchat_test_makeresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/streamChat.test.ts",
+ "source_location": "L68",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_streamchat_test",
+ "target": "backend_src_services_chat_tests_streamchat_test_streamchunks"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/streamChat.test.ts",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_streamchat_test",
+ "target": "backend_src_services_chat_tests_streamchat_test_test_env"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/streamChat.test.ts",
+ "source_location": "L83",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_streamchat_test_loadstreamchat",
+ "target": "backend_src_services_chat_tests_streamchat_test_makeproject"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "deferred": true,
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/__tests__/streamChat.test.ts",
+ "source_location": "L122",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_tests_streamchat_test_loadstreamchat",
+ "target": "backend_src_services_chat_index"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/client.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_client",
+ "target": "backend_src_services_chat_client_clientmode"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/client.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_client",
+ "target": "backend_src_services_chat_client_getgenaiclient"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/client.ts",
+ "source_location": "L55",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_client",
+ "target": "backend_src_services_chat_client_invalidateforauthfailure"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/client.ts",
+ "source_location": "L67",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_client",
+ "target": "backend_src_services_chat_client_resetclientfortests"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_client"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_client_getgenaiclient"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_client_invalidateforauthfailure"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L120",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_chat_index_streamchat",
+ "target": "backend_src_services_chat_client_invalidateforauthfailure"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L215",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_bucketbyorientation"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_chatpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_chatproject"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L211",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_countactivepanels"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L250",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_countsegmentsused"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L173",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_describeinverterreplacements"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L277",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_formatmaybenumber"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L273",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_formatnumber"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L281",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_formatpercent"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L285",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_formatrate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L269",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_formatrm"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_month_labels"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L186",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_parseanalysisconfig"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L191",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_parseanalysisresults"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L206",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_parsebuildinginsights"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L201",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_parseeditedlayout"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L196",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_parselayoutpreferences"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L99",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_renderanalysisblock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L84",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_renderlayoutblock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L153",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_rendermonthlybreakdowntable"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L61",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_renderprojectblock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_renderprojectdigest"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_chat_digest_solarpanelschema"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_services_projectservice"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_validators_chat"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "backend_src_validators_chat_chatlivestate"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "shared_layoutpreferences_layoutpreferences"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "shared_layoutpreferences_layoutpreferencesschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "shared_paneltypes_paneledit"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "shared_paneltypes_paneleditschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "shared_projectdtos_analysisresultsdto"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "shared_projectdtos_analysisresultsschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "shared_projectdtos_buildinginsightsdto"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "shared_projectdtos_buildinginsightsschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "shared_projectdtos_storedanalysisconfigdto"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest",
+ "target": "shared_projectdtos_storedanalysisconfigschema"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_prompt",
+ "target": "backend_src_services_chat_digest"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L45",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_renderprojectdigest",
+ "target": "backend_src_services_chat_digest_parseanalysisconfig"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_renderprojectdigest",
+ "target": "backend_src_services_chat_digest_parseanalysisresults"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L49",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_renderprojectdigest",
+ "target": "backend_src_services_chat_digest_parsebuildinginsights"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L48",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_renderprojectdigest",
+ "target": "backend_src_services_chat_digest_parseeditedlayout"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_renderprojectdigest",
+ "target": "backend_src_services_chat_digest_parselayoutpreferences"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L55",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_renderprojectdigest",
+ "target": "backend_src_services_chat_digest_renderanalysisblock"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L54",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_renderprojectdigest",
+ "target": "backend_src_services_chat_digest_renderlayoutblock"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_renderprojectdigest",
+ "target": "backend_src_services_chat_digest_renderprojectblock"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_prompt",
+ "target": "backend_src_services_chat_digest_renderprojectdigest"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L75",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_chat_prompt_buildsysteminstruction",
+ "target": "backend_src_services_chat_digest_renderprojectdigest"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L76",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_renderprojectblock",
+ "target": "backend_src_services_chat_digest_countactivepanels"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L75",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_renderprojectblock",
+ "target": "backend_src_services_chat_digest_formatmaybenumber"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L94",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_renderlayoutblock",
+ "target": "backend_src_services_chat_digest_bucketbyorientation"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L95",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_renderlayoutblock",
+ "target": "backend_src_services_chat_digest_countsegmentsused"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L140",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_renderanalysisblock",
+ "target": "backend_src_services_chat_digest_describeinverterreplacements"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L132",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_renderanalysisblock",
+ "target": "backend_src_services_chat_digest_formatmaybenumber"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L114",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_renderanalysisblock",
+ "target": "backend_src_services_chat_digest_formatnumber"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L118",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_renderanalysisblock",
+ "target": "backend_src_services_chat_digest_formatpercent"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L130",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_renderanalysisblock",
+ "target": "backend_src_services_chat_digest_formatrate"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L115",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_renderanalysisblock",
+ "target": "backend_src_services_chat_digest_formatrm"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L144",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_renderanalysisblock",
+ "target": "backend_src_services_chat_digest_rendermonthlybreakdowntable"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L158",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_rendermonthlybreakdowntable",
+ "target": "backend_src_services_chat_digest_formatnumber"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L160",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_rendermonthlybreakdowntable",
+ "target": "backend_src_services_chat_digest_formatrm"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/digest.ts",
+ "source_location": "L176",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_digest_describeinverterreplacements",
+ "target": "backend_src_services_chat_digest_formatrm"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/errors.ts",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_errors",
+ "target": "backend_src_services_chat_errors_categoriseerror"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/errors.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_errors",
+ "target": "backend_src_services_chat_errors_chatlanguage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/errors.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_errors",
+ "target": "backend_src_services_chat_errors_errorcategory"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/errors.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_errors",
+ "target": "backend_src_services_chat_errors_geterrorcode"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/errors.ts",
+ "source_location": "L61",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_errors",
+ "target": "backend_src_services_chat_errors_localiseerrormessage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/errors.ts",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_errors",
+ "target": "backend_src_services_chat_errors_redacterrormessage"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_errors"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/retry.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_retry",
+ "target": "backend_src_services_chat_errors"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_errors_errorcategory"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/errors.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_errors_categoriseerror",
+ "target": "backend_src_services_chat_errors_geterrorcode"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_errors_geterrorcode"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L117",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_chat_index_streamchat",
+ "target": "backend_src_services_chat_errors_geterrorcode"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/retry.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_retry",
+ "target": "backend_src_services_chat_errors_geterrorcode"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/retry.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_retry_isretryable",
+ "target": "backend_src_services_chat_errors_geterrorcode"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/errors.ts",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_errors_categoriseerror",
+ "target": "backend_src_services_chat_errors_localiseerrormessage"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/errors.ts",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_errors_categoriseerror",
+ "target": "backend_src_services_chat_errors_redacterrormessage"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_errors_categoriseerror"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L48",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_chat_index_streamchat",
+ "target": "backend_src_services_chat_errors_categoriseerror"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/guardrails.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_guardrails",
+ "target": "backend_src_services_chat_guardrails_guardresult"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/guardrails.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_guardrails",
+ "target": "backend_src_services_chat_guardrails_patterns"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/guardrails.ts",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_guardrails",
+ "target": "backend_src_services_chat_guardrails_validatechatinput"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_guardrails"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_guardrails_validatechatinput"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_chat_index_streamchat",
+ "target": "backend_src_services_chat_guardrails_validatechatinput"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L171",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_index_buildcontents"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_index_chatevent"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_index_chatproject"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_index_processing_message"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L157",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_index_setsseheaders"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_index_streamchat"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L167",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_index_writesse"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_prompt"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_prompt_buildsysteminstruction"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_retry"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_chat_retry_generatewithretry"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_services_projectservice"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_validators_chat"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index",
+ "target": "backend_src_validators_chat_chatrequest"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L58",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index_streamchat",
+ "target": "backend_src_services_chat_index_buildcontents"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index_streamchat",
+ "target": "backend_src_services_chat_index_setsseheaders"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L49",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_index_streamchat",
+ "target": "backend_src_services_chat_index_writesse"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L57",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_chat_index_streamchat",
+ "target": "backend_src_services_chat_prompt_buildsysteminstruction"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/chat/index.ts",
+ "source_location": "L115",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_chat_index_streamchat",
+ "target": "backend_src_services_chat_retry_generatewithretry"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/knowledge.ts",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_knowledge",
+ "target": "backend_src_services_chat_knowledge_dirname"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/knowledge.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_knowledge",
+ "target": "backend_src_services_chat_knowledge_knowledge_path"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/knowledge.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_knowledge",
+ "target": "backend_src_services_chat_knowledge_loadknowledgebible"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/knowledge.ts",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_knowledge",
+ "target": "backend_src_services_chat_knowledge_parsesections"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/knowledge.ts",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_knowledge",
+ "target": "backend_src_services_chat_knowledge_renderknowledgeforprompt"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_prompt",
+ "target": "backend_src_services_chat_knowledge"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/knowledge.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_knowledge_loadknowledgebible",
+ "target": "backend_src_services_chat_knowledge_parsesections"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/knowledge.ts",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_knowledge_renderknowledgeforprompt",
+ "target": "backend_src_services_chat_knowledge_loadknowledgebible"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_prompt",
+ "target": "backend_src_services_chat_knowledge_renderknowledgeforprompt"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L74",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_chat_prompt_buildsysteminstruction",
+ "target": "backend_src_services_chat_knowledge_renderknowledgeforprompt"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L59",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_prompt",
+ "target": "backend_src_services_chat_prompt_buildsysteminstruction"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_prompt",
+ "target": "backend_src_services_chat_prompt_chatlanguage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_prompt",
+ "target": "backend_src_services_chat_prompt_chatpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_prompt",
+ "target": "backend_src_services_chat_prompt_chatproject"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_prompt",
+ "target": "backend_src_services_chat_prompt_language_meta"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L79",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_prompt",
+ "target": "backend_src_services_chat_prompt_renderlanguagelayer"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L91",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_prompt",
+ "target": "backend_src_services_chat_prompt_renderpersonalayer"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L98",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_prompt",
+ "target": "backend_src_services_chat_prompt_renderruleslayer"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_prompt",
+ "target": "backend_src_services_projectservice"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_prompt",
+ "target": "backend_src_validators_chat"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_prompt",
+ "target": "backend_src_validators_chat_chatlivestate"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L71",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_prompt_buildsysteminstruction",
+ "target": "backend_src_services_chat_prompt_renderlanguagelayer"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L72",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_prompt_buildsysteminstruction",
+ "target": "backend_src_services_chat_prompt_renderpersonalayer"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/prompt.ts",
+ "source_location": "L73",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_prompt_buildsysteminstruction",
+ "target": "backend_src_services_chat_prompt_renderruleslayer"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/retry.ts",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_retry",
+ "target": "backend_src_services_chat_retry_generatewithretry"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/retry.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_retry",
+ "target": "backend_src_services_chat_retry_isretryable"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/retry.ts",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_retry",
+ "target": "backend_src_services_chat_retry_sleep"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/retry.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_retry_generatewithretry",
+ "target": "backend_src_services_chat_retry_isretryable"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/chat/retry.ts",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_chat_retry_generatewithretry",
+ "target": "backend_src_services_chat_retry_sleep"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_services_fluxrecomputeservice_fluxlocationdata"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L62",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_services_fluxrecomputeservice_loadfluxdata"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L112",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_services_fluxrecomputeservice_recomputebatchpanels"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L78",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_services_fluxrecomputeservice_recomputesinglepanel"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_services_fluxrecomputeservice_validatedlocation"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_services_fluxrecomputeservice_validatefluxlocation"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_services_locationservice"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_services_storageservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "backend_src_services_storageservice_downloadfromstorage"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice",
+ "target": "shared_index_fluxrecomputeresponse"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L63",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice_loadfluxdata",
+ "target": "backend_src_services_storageservice_downloadfromstorage"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L124",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice_recomputebatchpanels",
+ "target": "backend_src_services_fluxrecomputeservice_loadfluxdata"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/fluxRecomputeService.ts",
+ "source_location": "L90",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_fluxrecomputeservice_recomputesinglepanel",
+ "target": "backend_src_services_fluxrecomputeservice_loadfluxdata"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_geotiffservice",
+ "target": "backend_src_services_geotiffservice_imagegeotransform"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L45",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_geotiffservice",
+ "target": "backend_src_services_geotiffservice_loadgeotiffwithfallback"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L89",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_geotiffservice",
+ "target": "backend_src_services_geotiffservice_loadreferencegeotransform"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L111",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_geotiffservice",
+ "target": "backend_src_services_geotiffservice_loadroofmask"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_geotiffservice",
+ "target": "backend_src_services_geotiffservice_roofmaskresult"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L79",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_geotiffservice",
+ "target": "backend_src_services_geotiffservice_uniquepaths"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_geotiffservice",
+ "target": "backend_src_services_storageservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_geotiffservice",
+ "target": "backend_src_services_storageservice_downloadfromstorage"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_geotiffservice"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_geotiffservice"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_locationresponse",
+ "target": "backend_src_services_geotiffservice"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_geotiffservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_locationresponse",
+ "target": "backend_src_services_geotiffservice_imagegeotransform"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_geotiffservice_imagegeotransform"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_locationresponse",
+ "target": "backend_src_services_geotiffservice_roofmaskresult"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L55",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_geotiffservice_loadgeotiffwithfallback",
+ "target": "backend_src_services_storageservice_downloadfromstorage"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L95",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_geotiffservice_loadreferencegeotransform",
+ "target": "backend_src_services_geotiffservice_loadgeotiffwithfallback"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L114",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_geotiffservice_loadroofmask",
+ "target": "backend_src_services_geotiffservice_loadgeotiffwithfallback"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L93",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_geotiffservice_loadreferencegeotransform",
+ "target": "backend_src_services_geotiffservice_uniquepaths"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/geoTiffService.ts",
+ "source_location": "L112",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_geotiffservice_loadroofmask",
+ "target": "backend_src_services_geotiffservice_uniquepaths"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_geotiffservice_loadreferencegeotransform"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L237",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationservice_getlocationdataresponseforuser",
+ "target": "backend_src_services_geotiffservice_loadreferencegeotransform"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_geotiffservice_loadreferencegeotransform"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L194",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_projectservice_getpdfprojectdata",
+ "target": "backend_src_services_geotiffservice_loadreferencegeotransform"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_geotiffservice_loadroofmask"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L237",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationservice_getlocationdataresponseforuser",
+ "target": "backend_src_services_geotiffservice_loadroofmask"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline",
+ "target": "backend_src_services_locationpipeline_fetch"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline",
+ "target": "backend_src_services_locationpipeline_fetch_fetchlocationpipelineinputs"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline",
+ "target": "backend_src_services_locationpipeline_persist"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline",
+ "target": "backend_src_services_locationpipeline_persist_persistlocationpipelinefailure"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline",
+ "target": "backend_src_services_locationpipeline_persist_persistlocationpipelinesuccess"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline",
+ "target": "backend_src_services_locationpipeline_runlocationpipeline"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline",
+ "target": "backend_src_services_locationpipeline_store"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline",
+ "target": "backend_src_services_locationpipeline_store_storelocationpipelineassets"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline",
+ "target": "backend_src_services_solarapiservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline",
+ "target": "backend_src_services_solarapiservice_imageryquality"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_locationpipeline"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationPipeline.ts",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationpipeline_runlocationpipeline",
+ "target": "backend_src_services_locationpipeline_fetch_fetchlocationpipelineinputs"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationPipeline.ts",
+ "source_location": "L50",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationpipeline_runlocationpipeline",
+ "target": "backend_src_services_locationpipeline_persist_persistlocationpipelinefailure"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationPipeline.ts",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationpipeline_runlocationpipeline",
+ "target": "backend_src_services_locationpipeline_persist_persistlocationpipelinesuccess"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationPipeline.ts",
+ "source_location": "L40",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationpipeline_runlocationpipeline",
+ "target": "backend_src_services_locationpipeline_store_storelocationpipelineassets"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_locationpipeline_runlocationpipeline"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L126",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationservice_resolvelocation",
+ "target": "backend_src_services_locationpipeline_runlocationpipeline"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/convert.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_convert",
+ "target": "backend_src_services_locationpipeline_convert_convertrgbtifftopng"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/convert.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_convert",
+ "target": "backend_src_services_locationpipeline_convert_toarraybuffer"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/store.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_store",
+ "target": "backend_src_services_locationpipeline_convert"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/convert.ts",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_convert_convertrgbtifftopng",
+ "target": "backend_src_services_locationpipeline_convert_toarraybuffer"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/store.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_store",
+ "target": "backend_src_services_locationpipeline_convert_convertrgbtifftopng"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationPipeline/store.ts",
+ "source_location": "L58",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationpipeline_store_storelocationpipelineassets",
+ "target": "backend_src_services_locationpipeline_convert_convertrgbtifftopng"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L43",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_services_locationpipeline_fetch_downloadedlayer"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L65",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_services_locationpipeline_fetch_downloadlayer"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L90",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_services_locationpipeline_fetch_fetchlocationpipelineinputs"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L129",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_services_locationpipeline_fetch_getlayerurl"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_services_locationpipeline_fetch_layer_filenames"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L52",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_services_locationpipeline_fetch_pipelinefetchresult"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_services_locationpipeline_fetch_solarlayerkey"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_services_solarapiservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_services_solarapiservice_buildinginsightsapiresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_services_solarapiservice_calculateradius"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_services_solarapiservice_datalayersapiresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_services_solarapiservice_enrichbuildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_services_solarapiservice_fetchbuildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_services_solarapiservice_fetchdatalayers"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_services_solarapiservice_fetchwithtimeout"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch",
+ "target": "backend_src_services_solarapiservice_imageryquality"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/store.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_store",
+ "target": "backend_src_services_locationpipeline_fetch"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/store.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_store",
+ "target": "backend_src_services_locationpipeline_fetch_downloadedlayer"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L69",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch_downloadlayer",
+ "target": "backend_src_services_solarapiservice_fetchwithtimeout"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L111",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch_fetchlocationpipelineinputs",
+ "target": "backend_src_services_locationpipeline_fetch_downloadlayer"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L108",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_fetch_fetchlocationpipelineinputs",
+ "target": "backend_src_services_locationpipeline_fetch_getlayerurl"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L103",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationpipeline_fetch_fetchlocationpipelineinputs",
+ "target": "backend_src_services_solarapiservice_calculateradius"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L102",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationpipeline_fetch_fetchlocationpipelineinputs",
+ "target": "backend_src_services_solarapiservice_enrichbuildinginsights"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L97",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationpipeline_fetch_fetchlocationpipelineinputs",
+ "target": "backend_src_services_solarapiservice_fetchbuildinginsights"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationPipeline/fetch.ts",
+ "source_location": "L104",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationpipeline_fetch_fetchlocationpipelineinputs",
+ "target": "backend_src_services_solarapiservice_fetchdatalayers"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/persist.ts",
+ "source_location": "L50",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_persist",
+ "target": "backend_src_services_locationpipeline_persist_persistlocationpipelinefailure"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/persist.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_persist",
+ "target": "backend_src_services_locationpipeline_persist_persistlocationpipelinesuccess"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/persist.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_persist",
+ "target": "backend_src_services_locationpipeline_persist_serializejsonvalue"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/persist.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_persist",
+ "target": "backend_src_services_locationpipeline_store"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/persist.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_persist",
+ "target": "backend_src_services_locationpipeline_store_storedlocationassets"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/persist.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_persist",
+ "target": "backend_src_services_solarapiservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/persist.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_persist",
+ "target": "backend_src_services_solarapiservice_buildinginsightsapiresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/persist.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_persist",
+ "target": "backend_src_services_solarapiservice_imageryquality"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/persist.ts",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_persist_persistlocationpipelinesuccess",
+ "target": "backend_src_services_locationpipeline_persist_serializejsonvalue"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/store.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_store",
+ "target": "backend_src_services_locationpipeline_store_storedlocationassets"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/store.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_store",
+ "target": "backend_src_services_locationpipeline_store_storelocationpipelineassets"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/store.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_store",
+ "target": "backend_src_services_storageservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationPipeline/store.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationpipeline_store",
+ "target": "backend_src_services_storageservice_uploadtostorage"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationPipeline/store.ts",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationpipeline_store_storelocationpipelineassets",
+ "target": "backend_src_services_storageservice_uploadtostorage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L210",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_locationservice_getlocationdataforuser"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L223",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_locationservice_getlocationdataresponseforuser"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L175",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_locationservice_getlocationstatusforuser"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L198",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_locationservice_getlocationstatusresponseforuser"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L250",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_locationservice_getoverlayresponseforuser"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_locationservice_linkownedprojecttolocation"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L163",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_locationservice_probelocation"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L70",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_locationservice_resolvelocation"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L144",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_locationservice_resolvelocationresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_locationservice_resolvelocationresult"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_overlayservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_overlayservice_getorgenerateoverlay"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_overlayservice_overlaytype"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_overlayservice_resolvetifpath"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_solarapiservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_solarapiservice_findbestqualityforlocation"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_solarapiservice_imageryquality"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_storageservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_storageservice_getsignedurl"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_viewmodels_locationresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_viewmodels_locationresponse_buildlocationdataresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_viewmodels_locationresponse_buildlocationstatusresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_viewmodels_locationresponse_buildoverlayresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_viewmodels_locationresponse_buildprobelocationresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice",
+ "target": "backend_src_services_viewmodels_locationresponse_buildresolvelocationresponse"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L99",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice_resolvelocation",
+ "target": "backend_src_services_locationservice_linkownedprojecttolocation"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L152",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice_resolvelocationresponse",
+ "target": "backend_src_services_locationservice_resolvelocation"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L153",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationservice_resolvelocationresponse",
+ "target": "backend_src_services_viewmodels_locationresponse_buildresolvelocationresponse"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L164",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationservice_probelocation",
+ "target": "backend_src_services_solarapiservice_findbestqualityforlocation"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L165",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationservice_probelocation",
+ "target": "backend_src_services_viewmodels_locationresponse_buildprobelocationresponse"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L199",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice_getlocationstatusresponseforuser",
+ "target": "backend_src_services_locationservice_getlocationstatusforuser"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L200",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationservice_getlocationstatusresponseforuser",
+ "target": "backend_src_services_viewmodels_locationresponse_buildlocationstatusresponse"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L224",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice_getlocationdataresponseforuser",
+ "target": "backend_src_services_locationservice_getlocationdataforuser"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L251",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_locationservice_getoverlayresponseforuser",
+ "target": "backend_src_services_locationservice_getlocationdataforuser"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L236",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationservice_getlocationdataresponseforuser",
+ "target": "backend_src_services_storageservice_getsignedurl"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L239",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationservice_getlocationdataresponseforuser",
+ "target": "backend_src_services_viewmodels_locationresponse_buildlocationdataresponse"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L261",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationservice_getoverlayresponseforuser",
+ "target": "backend_src_services_overlayservice_getorgenerateoverlay"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L256",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationservice_getoverlayresponseforuser",
+ "target": "backend_src_services_overlayservice_resolvetifpath"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/locationService.ts",
+ "source_location": "L262",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_locationservice_getoverlayresponseforuser",
+ "target": "backend_src_services_viewmodels_locationresponse_buildoverlayresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_overlayservice",
+ "target": "backend_src_services_overlayservice_colorstop"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L85",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_overlayservice",
+ "target": "backend_src_services_overlayservice_dsmstops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L71",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_overlayservice",
+ "target": "backend_src_services_overlayservice_fluxstops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L151",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_overlayservice",
+ "target": "backend_src_services_overlayservice_getorgenerateoverlay"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L104",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_overlayservice",
+ "target": "backend_src_services_overlayservice_getstopsfortype"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L49",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_overlayservice",
+ "target": "backend_src_services_overlayservice_lerpcolor"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L99",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_overlayservice",
+ "target": "backend_src_services_overlayservice_maskstops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_overlayservice",
+ "target": "backend_src_services_overlayservice_overlaytype"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L117",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_overlayservice",
+ "target": "backend_src_services_overlayservice_resolvetifpath"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_overlayservice",
+ "target": "backend_src_services_storageservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_overlayservice",
+ "target": "backend_src_services_storageservice_downloadfromstorage"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_overlayservice",
+ "target": "backend_src_services_storageservice_getsignedurl"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_overlayservice",
+ "target": "backend_src_services_storageservice_uploadtostorage"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L199",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_overlayservice_getorgenerateoverlay",
+ "target": "backend_src_services_overlayservice_lerpcolor"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L187",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_overlayservice_getorgenerateoverlay",
+ "target": "backend_src_services_overlayservice_getstopsfortype"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L165",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_overlayservice_getorgenerateoverlay",
+ "target": "backend_src_services_storageservice_downloadfromstorage"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L159",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_overlayservice_getorgenerateoverlay",
+ "target": "backend_src_services_storageservice_getsignedurl"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/overlayService.ts",
+ "source_location": "L232",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_overlayservice_getorgenerateoverlay",
+ "target": "backend_src_services_storageservice_uploadtostorage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/pdfTokenService.ts",
+ "source_location": "L50",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_pdftokenservice",
+ "target": "backend_src_services_pdftokenservice_invalidpdftokenerror"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/pdfTokenService.ts",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_pdftokenservice",
+ "target": "backend_src_services_pdftokenservice_pdftokenpayload"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/pdfTokenService.ts",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_pdftokenservice",
+ "target": "backend_src_services_pdftokenservice_signedpdftoken"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/pdfTokenService.ts",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_pdftokenservice",
+ "target": "backend_src_services_pdftokenservice_signpdftoken"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/pdfTokenService.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_pdftokenservice",
+ "target": "backend_src_services_pdftokenservice_token_type"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/pdfTokenService.ts",
+ "source_location": "L63",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_pdftokenservice",
+ "target": "backend_src_services_pdftokenservice_verifypdftoken"
+ },
+ {
+ "relation": "method",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/pdfTokenService.ts",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_pdftokenservice_invalidpdftokenerror",
+ "target": "backend_src_services_pdftokenservice_invalidpdftokenerror_constructor"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_projectservice_createproject"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L123",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_projectservice_deleteproject"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_projectservice_findownedproject"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L187",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_projectservice_getpdfprojectdata"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L74",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_projectservice_getproject"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L58",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_projectservice_listprojects"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L159",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_projectservice_saveanalysis"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L88",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_projectservice_savelayout"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L138",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_projectservice_updatelayoutpreferences"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_storageservice"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_storageservice_getsignedurl"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_viewmodels_projectresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_viewmodels_projectresponse_analysisconfigdto"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_viewmodels_projectresponse_analysisresultsdto"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_viewmodels_projectresponse_buildpdfprojectresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_viewmodels_projectresponse_layoutpreferencesdto"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_viewmodels_projectresponse_mergeanalysisconfig"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_viewmodels_projectresponse_mergelayoutpreferences"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_viewmodels_projectresponse_normalizeprojectresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "backend_src_services_viewmodels_projectresponse_serializejsonvalue"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice",
+ "target": "shared_paneltypes_paneledit"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L188",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice_getpdfprojectdata",
+ "target": "backend_src_services_projectservice_findownedproject"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L75",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice_getproject",
+ "target": "backend_src_services_projectservice_findownedproject"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L165",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice_saveanalysis",
+ "target": "backend_src_services_projectservice_findownedproject"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L94",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice_savelayout",
+ "target": "backend_src_services_projectservice_findownedproject"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L139",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_projectservice_updatelayoutpreferences",
+ "target": "backend_src_services_projectservice_findownedproject"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L48",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_projectservice_createproject",
+ "target": "backend_src_services_viewmodels_projectresponse_normalizeprojectresponse"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L64",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_projectservice_listprojects",
+ "target": "backend_src_services_viewmodels_projectresponse_normalizeprojectresponse"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L76",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_projectservice_getproject",
+ "target": "backend_src_services_viewmodels_projectresponse_normalizeprojectresponse"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L97",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_projectservice_savelayout",
+ "target": "backend_src_services_viewmodels_projectresponse_mergeanalysisconfig"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L113",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_projectservice_savelayout",
+ "target": "backend_src_services_viewmodels_projectresponse_normalizeprojectresponse"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L107",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_projectservice_savelayout",
+ "target": "backend_src_services_viewmodels_projectresponse_serializejsonvalue"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L141",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_projectservice_updatelayoutpreferences",
+ "target": "backend_src_services_viewmodels_projectresponse_mergelayoutpreferences"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L147",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_projectservice_updatelayoutpreferences",
+ "target": "backend_src_services_viewmodels_projectresponse_normalizeprojectresponse"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L144",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_projectservice_updatelayoutpreferences",
+ "target": "backend_src_services_viewmodels_projectresponse_serializejsonvalue"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L167",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_projectservice_saveanalysis",
+ "target": "backend_src_services_viewmodels_projectresponse_mergeanalysisconfig"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L177",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_projectservice_saveanalysis",
+ "target": "backend_src_services_viewmodels_projectresponse_normalizeprojectresponse"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L171",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_projectservice_saveanalysis",
+ "target": "backend_src_services_viewmodels_projectresponse_serializejsonvalue"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L192",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_projectservice_getpdfprojectdata",
+ "target": "backend_src_services_storageservice_getsignedurl"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "backend/src/services/projectService.ts",
+ "source_location": "L200",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "backend_src_services_projectservice_getpdfprojectdata",
+ "target": "backend_src_services_viewmodels_projectresponse_buildpdfprojectresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L89",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_services_solarapiservice_buildinginsightsapiresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L119",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_services_solarapiservice_buildsolarparams"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L299",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_services_solarapiservice_calculateradius"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L102",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_services_solarapiservice_datalayersapiresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L334",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_services_solarapiservice_enrichbuildinginsights"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L140",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_services_solarapiservice_fetchbuildinginsights"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L171",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_services_solarapiservice_fetchdatalayers"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_services_solarapiservice_fetchwithtimeout"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L234",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_services_solarapiservice_findbestqualityforlocation"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L313",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_services_solarapiservice_haversinedistance"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L54",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_services_solarapiservice_imageryquality"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L111",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_services_solarapiservice_isrecord"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L271",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_services_solarapiservice_probeendpoint"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L262",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_services_solarapiservice_probefullchain"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L211",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_services_solarapiservice_proberesult"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L59",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_services_solarapiservice_solarapiopts"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L77",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_services_solarapiservice_solarboundingbox"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L69",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice",
+ "target": "backend_src_services_solarapiservice_solarcoordinate"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L146",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice_fetchbuildinginsights",
+ "target": "backend_src_services_solarapiservice_fetchwithtimeout"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L188",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice_fetchdatalayers",
+ "target": "backend_src_services_solarapiservice_fetchwithtimeout"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L284",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice_probeendpoint",
+ "target": "backend_src_services_solarapiservice_fetchwithtimeout"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L335",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice_enrichbuildinginsights",
+ "target": "backend_src_services_solarapiservice_isrecord"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L151",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice_fetchbuildinginsights",
+ "target": "backend_src_services_solarapiservice_isrecord"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L145",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice_fetchbuildinginsights",
+ "target": "backend_src_services_solarapiservice_buildsolarparams"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L278",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice_probeendpoint",
+ "target": "backend_src_services_solarapiservice_buildsolarparams"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L239",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice_findbestqualityforlocation",
+ "target": "backend_src_services_solarapiservice_probefullchain"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L263",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice_probefullchain",
+ "target": "backend_src_services_solarapiservice_probeendpoint"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/solarApiService.ts",
+ "source_location": "L300",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_solarapiservice_calculateradius",
+ "target": "backend_src_services_solarapiservice_haversinedistance"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/storageService.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_storageservice",
+ "target": "backend_src_services_storageservice_downloadfromstorage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/storageService.ts",
+ "source_location": "L43",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_storageservice",
+ "target": "backend_src_services_storageservice_getsignedurl"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/storageService.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_storageservice",
+ "target": "backend_src_services_storageservice_uploadtostorage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L58",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_userservice",
+ "target": "backend_src_services_userservice_countprojectssinceutcmidnight"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L74",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_userservice",
+ "target": "backend_src_services_userservice_getquotasummary"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L42",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_userservice",
+ "target": "backend_src_services_userservice_getusertier"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_userservice",
+ "target": "backend_src_services_userservice_nextutcmidnight"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_userservice",
+ "target": "backend_src_services_userservice_startofutcday"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_userservice",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_userservice",
+ "target": "shared_quota_quotasummary"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_userservice",
+ "target": "shared_quota_tier_daily_limits"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_userservice",
+ "target": "shared_quota_usertier"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L62",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_userservice_countprojectssinceutcmidnight",
+ "target": "backend_src_services_userservice_startofutcday"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_userservice_nextutcmidnight",
+ "target": "backend_src_services_userservice_startofutcday"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L82",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_userservice_getquotasummary",
+ "target": "backend_src_services_userservice_nextutcmidnight"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L75",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_userservice_getquotasummary",
+ "target": "backend_src_services_userservice_getusertier"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/userService.ts",
+ "source_location": "L75",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_userservice_getquotasummary",
+ "target": "backend_src_services_userservice_countprojectssinceutcmidnight"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L101",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_locationresponse",
+ "target": "backend_src_services_viewmodels_locationresponse_buildfluxrecomputebatchresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L69",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_locationresponse",
+ "target": "backend_src_services_viewmodels_locationresponse_buildlocationdataresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L45",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_locationresponse",
+ "target": "backend_src_services_viewmodels_locationresponse_buildlocationstatusresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L91",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_locationresponse",
+ "target": "backend_src_services_viewmodels_locationresponse_buildoverlayresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L55",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_locationresponse",
+ "target": "backend_src_services_viewmodels_locationresponse_buildprobelocationresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_locationresponse",
+ "target": "backend_src_services_viewmodels_locationresponse_buildresolvelocationresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_locationresponse",
+ "target": "backend_src_services_viewmodels_locationresponse_locationdatarouteresponse"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_locationresponse",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_locationresponse",
+ "target": "shared_index_fluxrecomputebatchresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_locationresponse",
+ "target": "shared_index_fluxrecomputeresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_locationresponse",
+ "target": "shared_index_locationdataresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_locationresponse",
+ "target": "shared_index_locationstatusresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_locationresponse",
+ "target": "shared_index_probelocationresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/locationResponse.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_locationresponse",
+ "target": "shared_index_resolvelocationresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L132",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_analysisconfigdto"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L80",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_analysisconfigschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L134",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_analysisresultsdto"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L96",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_analysisresultsschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L40",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_billbreakdownschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L259",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_buildpdfprojectresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L158",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_isjsonobject"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L142",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_jsonfieldsproject"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L136",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_layoutpreferencesdto"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L122",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_layoutpreferencesschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L198",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_mergeanalysisconfig"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L208",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_mergelayoutpreferences"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L62",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_monthlybreakdownschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L234",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_normalizeprojectresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L171",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_parseanalysisconfig"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L179",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_parseanalysisresults"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L188",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_parselayoutpreferences"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L162",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_parsewithschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L153",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_pdfprojectresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L217",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_serializejsonvalue"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse",
+ "target": "shared_layoutpreferences_layoutpreferences"
+ },
+ {
+ "relation": "rationale_for",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L224",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse_rationale_224",
+ "target": "backend_src_services_viewmodels_projectresponse"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L235",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse_normalizeprojectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_isjsonobject"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L172",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse_parseanalysisconfig",
+ "target": "backend_src_services_viewmodels_projectresponse_parsewithschema"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L180",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse_parseanalysisresults",
+ "target": "backend_src_services_viewmodels_projectresponse_parsewithschema"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L189",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse_parselayoutpreferences",
+ "target": "backend_src_services_viewmodels_projectresponse_parsewithschema"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L199",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse_mergeanalysisconfig",
+ "target": "backend_src_services_viewmodels_projectresponse_parseanalysisconfig"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L209",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse_mergelayoutpreferences",
+ "target": "backend_src_services_viewmodels_projectresponse_parselayoutpreferences"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/services/viewModels/projectResponse.ts",
+ "source_location": "L265",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_services_viewmodels_projectresponse_buildpdfprojectresponse",
+ "target": "backend_src_services_viewmodels_projectresponse_normalizeprojectresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/validators/chat.ts",
+ "source_location": "L62",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_validators_chat",
+ "target": "backend_src_validators_chat_chatlivestate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/validators/chat.ts",
+ "source_location": "L61",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_validators_chat",
+ "target": "backend_src_validators_chat_chatrequest"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/validators/chat.ts",
+ "source_location": "L42",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_validators_chat",
+ "target": "backend_src_validators_chat_chatrequestschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/validators/chat.ts",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_validators_chat",
+ "target": "backend_src_validators_chat_livestateschema"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/validators/chat.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_validators_chat",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/validators/chat.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_validators_chat",
+ "target": "shared_layoutpreferences_layoutpreferencesschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/validators/chat.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_validators_chat",
+ "target": "shared_paneltypes_paneleditschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/validators/chat.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_validators_chat",
+ "target": "shared_projectdtos_analysisresultsschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/validators/chat.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_validators_chat",
+ "target": "shared_projectdtos_storedanalysisconfigschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/validators/locations.ts",
+ "source_location": "L58",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_validators_locations",
+ "target": "backend_src_validators_locations_fluxrecomputebatchschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/validators/locations.ts",
+ "source_location": "L40",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_validators_locations",
+ "target": "backend_src_validators_locations_fluxrecomputeschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/validators/locations.ts",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_validators_locations",
+ "target": "backend_src_validators_locations_probelocationschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/validators/locations.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_validators_locations",
+ "target": "backend_src_validators_locations_resolvelocationschema"
+ },
+ {
+ "relation": "re_exports",
+ "context": "export",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/validators/projects.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_validators_projects",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/validators/projects.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_validators_projects",
+ "target": "shared_projectdtos_createprojectrequestschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/validators/projects.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_validators_projects",
+ "target": "shared_projectdtos_saveanalysisrequestschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/validators/projects.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_validators_projects",
+ "target": "shared_projectdtos_savelayoutrequestschema"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/src/validators/projects.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_src_validators_projects",
+ "target": "shared_projectdtos_updatelayoutpreferencesrequestschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_tsconfig",
+ "target": "backend_tsconfig_compileroptions"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_tsconfig",
+ "target": "backend_tsconfig_exclude"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_tsconfig",
+ "target": "backend_tsconfig_extends"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_tsconfig",
+ "target": "backend_tsconfig_include"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L2",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_tsconfig",
+ "target": "backend_tsconfig_json_ref_tsconfig_json"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_tsconfig",
+ "target": "backend_tsconfig_references"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_tsconfig_compileroptions",
+ "target": "backend_tsconfig_compileroptions_outdir"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_tsconfig_compileroptions",
+ "target": "backend_tsconfig_compileroptions_rootdir"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L7",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_tsconfig_include",
+ "target": "backend_tsconfig_json_ref_src_ts"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L8",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_tsconfig_exclude",
+ "target": "backend_tsconfig_json_ref_src_test_ts"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "backend/tsconfig.json",
+ "source_location": "L8",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "backend_tsconfig_exclude",
+ "target": "ref_src_tests"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "eslint.config.js",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "eslint_config",
+ "target": "eslint_config"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "eslint.config.js",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "eslint_config",
+ "target": "eslint_config_globals"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "eslint.config.js",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "eslint_config",
+ "target": "eslint_config_isoff"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "eslint.config.js",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "eslint_config",
+ "target": "eslint_config_js_eslint_config_prettier"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "eslint.config.js",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "eslint_config",
+ "target": "eslint_config_reacthooks"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "eslint.config.js",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "eslint_config",
+ "target": "eslint_config_tseslint"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "eslint.config.js",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "eslint_config",
+ "target": "eslint_config_typescriptfiles"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "eslint.config.js",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "eslint_config",
+ "target": "eslint_config_warnings"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "eslint.config.js",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "eslint_config_warnings",
+ "target": "eslint_config_isoff"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/components.json",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_components",
+ "target": "frontend_components_aliases"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/components.json",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_components",
+ "target": "frontend_components_rsc"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/components.json",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_components",
+ "target": "frontend_components_schema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/components.json",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_components",
+ "target": "frontend_components_style"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/components.json",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_components",
+ "target": "frontend_components_tailwind"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/components.json",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_components",
+ "target": "frontend_components_tsx"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/components.json",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_components_tailwind",
+ "target": "frontend_components_tailwind_basecolor"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/components.json",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_components_tailwind",
+ "target": "frontend_components_tailwind_config"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/components.json",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_components_tailwind",
+ "target": "frontend_components_tailwind_css"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/components.json",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_components_tailwind",
+ "target": "frontend_components_tailwind_cssvariables"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/components.json",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_components_tailwind",
+ "target": "frontend_components_tailwind_prefix"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/components.json",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_components_aliases",
+ "target": "frontend_components_aliases_components"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/components.json",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_components_aliases",
+ "target": "frontend_components_aliases_hooks"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/components.json",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_components_aliases",
+ "target": "frontend_components_aliases_lib"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/components.json",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_components_aliases",
+ "target": "frontend_components_aliases_ui"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/components.json",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_components_aliases",
+ "target": "frontend_components_aliases_utils"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package",
+ "target": "frontend_package_dependencies"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package",
+ "target": "frontend_package_devdependencies"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package",
+ "target": "frontend_package_license"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package",
+ "target": "frontend_package_name"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package",
+ "target": "frontend_package_private"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package",
+ "target": "frontend_package_scripts"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package",
+ "target": "frontend_package_type"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_scripts",
+ "target": "frontend_package_scripts_build"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_scripts",
+ "target": "frontend_package_scripts_dev"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_scripts",
+ "target": "frontend_package_scripts_preview"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_scripts",
+ "target": "frontend_package_scripts_test"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_class_variance_authority"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_clsx"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_dnd_kit_core"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_dnd_kit_sortable"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_dnd_kit_utilities"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_framer_motion"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_googlemaps_js_api_loader"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_i18next"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_i18next_browser_languagedetector"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_konva"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_lucide_react"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_next_themes"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_proj4"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_radix_ui_react_dialog"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_radix_ui_react_dropdown_menu"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_radix_ui_react_label"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_radix_ui_react_separator"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_radix_ui_react_slider"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_radix_ui_react_slot"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_radix_ui_react_tooltip"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_react"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_react_dom"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L40",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_react_hot_toast"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L41",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_react_i18next"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L42",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_react_konva"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L43",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_react_markdown"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_react_router_dom"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_react_three_drei"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_react_three_fiber"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L45",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_recharts"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_shared_types"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_supabase_supabase_js"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_tailwind_merge"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_tailwindcss_animate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_tanstack_react_query"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L48",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_three"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L49",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies",
+ "target": "frontend_package_dependencies_vaul"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L13",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_dnd_kit_core",
+ "target": "dnd_kit_core"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L14",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_dnd_kit_sortable",
+ "target": "dnd_kit_sortable"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L15",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_dnd_kit_utilities",
+ "target": "dnd_kit_utilities"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L16",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_googlemaps_js_api_loader",
+ "target": "googlemaps_js_api_loader"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L17",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_radix_ui_react_dialog",
+ "target": "radix_ui_react_dialog"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L18",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_radix_ui_react_dropdown_menu",
+ "target": "radix_ui_react_dropdown_menu"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L19",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_radix_ui_react_label",
+ "target": "radix_ui_react_label"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L20",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_radix_ui_react_separator",
+ "target": "radix_ui_react_separator"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L21",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_radix_ui_react_slider",
+ "target": "radix_ui_react_slider"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L22",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_radix_ui_react_slot",
+ "target": "radix_ui_react_slot"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L23",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_radix_ui_react_tooltip",
+ "target": "radix_ui_react_tooltip"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L24",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_react_three_drei",
+ "target": "react_three_drei"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L25",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_react_three_fiber",
+ "target": "react_three_fiber"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L26",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_shared_types",
+ "target": "frontend_package_json_shared_types"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L27",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_supabase_supabase_js",
+ "target": "frontend_package_json_supabase_supabase_js"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L28",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_tanstack_react_query",
+ "target": "tanstack_react_query"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L29",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_class_variance_authority",
+ "target": "class_variance_authority"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L30",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_clsx",
+ "target": "clsx"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L31",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_framer_motion",
+ "target": "framer_motion"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L32",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_i18next",
+ "target": "i18next"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L33",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_i18next_browser_languagedetector",
+ "target": "i18next_browser_languagedetector"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L34",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_konva",
+ "target": "konva"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L35",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_lucide_react",
+ "target": "lucide_react"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L36",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_next_themes",
+ "target": "next_themes"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L37",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_proj4",
+ "target": "frontend_package_json_proj4"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L38",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_react",
+ "target": "react"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L39",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_react_dom",
+ "target": "react_dom"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L40",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_react_hot_toast",
+ "target": "react_hot_toast"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L41",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_react_i18next",
+ "target": "react_i18next"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L42",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_react_konva",
+ "target": "react_konva"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L43",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_react_markdown",
+ "target": "react_markdown"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L44",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_react_router_dom",
+ "target": "react_router_dom"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L45",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_recharts",
+ "target": "recharts"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L46",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_tailwind_merge",
+ "target": "tailwind_merge"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L47",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_tailwindcss_animate",
+ "target": "tailwindcss_animate"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L48",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_three",
+ "target": "three"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L49",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_dependencies_vaul",
+ "target": "vaul"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L59",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies",
+ "target": "frontend_package_devdependencies_autoprefixer"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L60",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies",
+ "target": "frontend_package_devdependencies_jsdom"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L61",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies",
+ "target": "frontend_package_devdependencies_tailwindcss"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L52",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies",
+ "target": "frontend_package_devdependencies_tailwindcss_vite"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L53",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies",
+ "target": "frontend_package_devdependencies_testing_library_react"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L54",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies",
+ "target": "frontend_package_devdependencies_types_google_maps"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L55",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies",
+ "target": "frontend_package_devdependencies_types_react"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L56",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies",
+ "target": "frontend_package_devdependencies_types_react_dom"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L57",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies",
+ "target": "frontend_package_devdependencies_types_three"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L62",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies",
+ "target": "frontend_package_devdependencies_typescript"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L63",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies",
+ "target": "frontend_package_devdependencies_vite"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L58",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies",
+ "target": "frontend_package_devdependencies_vitejs_plugin_react"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L64",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies",
+ "target": "frontend_package_devdependencies_vitest"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L52",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies_tailwindcss_vite",
+ "target": "tailwindcss_vite"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L53",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies_testing_library_react",
+ "target": "testing_library_react"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L54",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies_types_google_maps",
+ "target": "types_google_maps"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L55",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies_types_react",
+ "target": "types_react"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L56",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies_types_react_dom",
+ "target": "types_react_dom"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L57",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies_types_three",
+ "target": "types_three"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L58",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies_vitejs_plugin_react",
+ "target": "vitejs_plugin_react"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L59",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies_autoprefixer",
+ "target": "autoprefixer"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L60",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies_jsdom",
+ "target": "jsdom"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L61",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies_tailwindcss",
+ "target": "tailwindcss"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L62",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies_typescript",
+ "target": "frontend_package_json_typescript"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L63",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies_vite",
+ "target": "vite"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/package.json",
+ "source_location": "L64",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_package_devdependencies_vitest",
+ "target": "frontend_package_json_vitest"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_app_analysispage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_app_analyticspage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_app_app"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_app_dashboardpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_app_faqpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_app_mappage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_app_notfoundpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_app_page_loading_hints"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_app_pdfpreviewpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_app_privacypage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_app_projectspage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_app_settingspage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_app_workbenchpage"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_components_layout_applayout"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_components_layout_applayout_applayout"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_components_layout_dashboardlayout"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_components_layout_dashboardlayout_dashboardlayout"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_components_layout_protectedroute"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_components_layout_protectedroute_protectedroute"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_components_ui_loadingoverlay"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_components_ui_loadingoverlay_loadingoverlay"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_pages_landingpage"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_pages_landingpage_landingpage"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_pages_signinpage"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_pages_signinpage_signinpage"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_pages_signuppage"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/App.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_app",
+ "target": "frontend_src_pages_signuppage_signuppage"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/main.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_main",
+ "target": "frontend_src_app"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/main.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_main",
+ "target": "frontend_src_app_app"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/client.ts",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_client",
+ "target": "frontend_src_api_client_apierror"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/client.ts",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_client",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/client.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_client",
+ "target": "frontend_src_lib_supabase"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/client.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_client",
+ "target": "frontend_src_lib_supabase_getsupabase"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "frontend_src_api_client"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "frontend_src_api_client"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/quota.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_quota",
+ "target": "frontend_src_api_client"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/tariff.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_tariff",
+ "target": "frontend_src_api_client"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_api_client"
+ },
+ {
+ "relation": "method",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/client.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_client_apierror",
+ "target": "frontend_src_api_client_apierror_constructor"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_api_client_apierror"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/api/client.ts",
+ "source_location": "L40",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_api_client_apifetch",
+ "target": "frontend_src_lib_supabase_getsupabase"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L96",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_api_locations_getlocationdata",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L87",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_api_locations_getlocationstatus",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L128",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_api_locations_getoverlayurl",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L79",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_api_locations_probelocation",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L104",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_api_locations_recomputeflux",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L116",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_api_locations_recomputefluxbatch",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L67",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_api_locations_resolvelocation",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L76",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_api_projects_createproject",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L94",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_api_projects_deleteproject",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L89",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_api_projects_getproject",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L84",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_api_projects_listprojects",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L141",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_api_projects_requestpdfexporttoken",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L116",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_api_projects_saveanalysis",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L104",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_api_projects_savelayout",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L127",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_api_projects_savelayoutpreferences",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/quota.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_quota",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/api/quota.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_api_quota_getquota",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/tariff.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_tariff",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/api/tariff.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_api_tariff_gettariffconfig",
+ "target": "frontend_src_api_client_apifetch"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L95",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "frontend_src_api_locations_getlocationdata"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L86",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "frontend_src_api_locations_getlocationstatus"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L127",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "frontend_src_api_locations_getoverlayurl"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L54",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "frontend_src_api_locations_locationdatawithgeotransform"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "frontend_src_api_locations_locationimagegeotransform"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L77",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "frontend_src_api_locations_probelocation"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L103",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "frontend_src_api_locations_recomputeflux"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L115",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "frontend_src_api_locations_recomputefluxbatch"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L66",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "frontend_src_api_locations_resolvelocation"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "shared_index_fluxrecomputebatchrequest"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "shared_index_fluxrecomputebatchresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "shared_index_fluxrecomputerequest"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "shared_index_fluxrecomputeresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "shared_index_locationdataresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "shared_index_locationstatusresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "shared_index_probelocationresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "shared_index_resolvelocationrequest"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/locations.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_locations",
+ "target": "shared_index_resolvelocationresponse"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "frontend_src_api_locations"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_api_locations"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_api_locations"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useOverlayImages.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useoverlayimages",
+ "target": "frontend_src_api_locations"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_api_locations"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchData.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchdata",
+ "target": "frontend_src_api_locations"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchSave.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchsave",
+ "target": "frontend_src_api_locations"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_api_locations"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_api_locations"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "frontend_src_api_locations_locationimagegeotransform"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_api_locations_locationimagegeotransform"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchData.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchdata",
+ "target": "frontend_src_api_locations_locationimagegeotransform"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_api_locations_locationimagegeotransform"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_api_locations_resolvelocation"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_api_locations_probelocation"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_api_locations_getlocationstatus"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L112",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_mappage_mappage",
+ "target": "frontend_src_api_locations_getlocationstatus"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_api_locations_getlocationdata"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L80",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useanalysisform_useanalysisform",
+ "target": "frontend_src_api_locations_getlocationdata"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchData.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchdata",
+ "target": "frontend_src_api_locations_getlocationdata"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useWorkbenchData.ts",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useworkbenchdata_useworkbenchdata",
+ "target": "frontend_src_api_locations_getlocationdata"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_api_locations_recomputeflux"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_api_locations_recomputefluxbatch"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_api_locations_recomputefluxbatch"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchSave.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchsave",
+ "target": "frontend_src_api_locations_recomputefluxbatch"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useOverlayImages.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useoverlayimages",
+ "target": "frontend_src_api_locations_getoverlayurl"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useOverlayImages.ts",
+ "source_location": "L90",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useoverlayimages_useoverlayimages",
+ "target": "frontend_src_api_locations_getoverlayurl"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L75",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "frontend_src_api_projects_createproject"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L93",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "frontend_src_api_projects_deleteproject"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L88",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "frontend_src_api_projects_getproject"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L145",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "frontend_src_api_projects_getprojectforpdf"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L83",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "frontend_src_api_projects_listprojects"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L134",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "frontend_src_api_projects_pdfexporttoken"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "frontend_src_api_projects_projectanalysisconfig"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "frontend_src_api_projects_projectresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L140",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "frontend_src_api_projects_requestpdfexporttoken"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L115",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "frontend_src_api_projects_saveanalysis"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L103",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "frontend_src_api_projects_savelayout"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L126",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "frontend_src_api_projects_savelayoutpreferences"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "shared_index_createprojectrequest"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "shared_index_imageryquality"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "shared_index_projectstatus"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "shared_index_saveanalysisrequest"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "shared_index_savelayoutrequest"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "shared_index_updatelayoutpreferencesrequest"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "shared_layoutpreferences_layoutpreferences"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "shared_paneltypes_paneledit"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "shared_projectdtos_analysisresultsdto"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "shared_projectdtos_buildinginsightsdto"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/projects.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_projects",
+ "target": "shared_projectdtos_storedanalysisconfigdto"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatpanel",
+ "target": "frontend_src_api_projects"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/dashboard/helpers.ts",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_dashboard_helpers",
+ "target": "frontend_src_api_projects"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/dashboard/ProjectCard.tsx",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_dashboard_projectcard",
+ "target": "frontend_src_api_projects"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "frontend_src_api_projects"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage1workbench",
+ "target": "frontend_src_api_projects"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_api_projects"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintReport.tsx",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printreport",
+ "target": "frontend_src_api_projects"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_api_projects"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysispdf",
+ "target": "frontend_src_api_projects"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchData.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchdata",
+ "target": "frontend_src_api_projects"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchSave.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchsave",
+ "target": "frontend_src_api_projects"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_api_projects"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_api_projects"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_api_projects"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_api_projects"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PdfPreviewPage.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_pdfpreviewpage",
+ "target": "frontend_src_api_projects"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_api_projects"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L43",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_api_projects"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatpanel",
+ "target": "frontend_src_api_projects_projectresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/dashboard/helpers.ts",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_dashboard_helpers",
+ "target": "frontend_src_api_projects_projectresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/dashboard/ProjectCard.tsx",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_dashboard_projectcard",
+ "target": "frontend_src_api_projects_projectresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "frontend_src_api_projects_projectresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage1workbench",
+ "target": "frontend_src_api_projects_projectresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_api_projects_projectresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintReport.tsx",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printreport",
+ "target": "frontend_src_api_projects_projectresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PdfPreviewPage.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_pdfpreviewpage",
+ "target": "frontend_src_api_projects_projectresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_api_projects_projectresponse"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_api_projects_createproject"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L137",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_mappage_mappage",
+ "target": "frontend_src_api_projects_createproject"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_api_projects_listprojects"
+ },
+ {
+ "relation": "indirect_call",
+ "context": "collection",
+ "confidence": "INFERRED",
+ "confidence_score": 0.8,
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L61",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_analyticspage_analyticspage",
+ "target": "frontend_src_api_projects_listprojects"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_api_projects_listprojects"
+ },
+ {
+ "relation": "indirect_call",
+ "context": "collection",
+ "confidence": "INFERRED",
+ "confidence_score": 0.8,
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L53",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_dashboardpage_dashboardpage",
+ "target": "frontend_src_api_projects_listprojects"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_api_projects_listprojects"
+ },
+ {
+ "relation": "indirect_call",
+ "context": "collection",
+ "confidence": "INFERRED",
+ "confidence_score": 0.8,
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L60",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_projectspage_projectspage",
+ "target": "frontend_src_api_projects_listprojects"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_api_projects_getproject"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L68",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useanalysisform_useanalysisform",
+ "target": "frontend_src_api_projects_getproject"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchData.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchdata",
+ "target": "frontend_src_api_projects_getproject"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useWorkbenchData.ts",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useworkbenchdata_useworkbenchdata",
+ "target": "frontend_src_api_projects_getproject"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_api_projects_getproject"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L94",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_mappage_mappage",
+ "target": "frontend_src_api_projects_getproject"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_api_projects_deleteproject"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchSave.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchsave",
+ "target": "frontend_src_api_projects_savelayout"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_api_projects_saveanalysis"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L164",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_analysispage_analysispage",
+ "target": "frontend_src_api_projects_saveanalysis"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L43",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_api_projects_savelayoutpreferences"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L125",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_workbenchpage_workbenchpage",
+ "target": "frontend_src_api_projects_savelayoutpreferences"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysispdf",
+ "target": "frontend_src_api_projects_requestpdfexporttoken"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PdfPreviewPage.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_pdfpreviewpage",
+ "target": "frontend_src_api_projects_getprojectforpdf"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/PdfPreviewPage.tsx",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_pdfpreviewpage_pdfpreviewpage",
+ "target": "frontend_src_api_projects_getprojectforpdf"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/quota.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_quota",
+ "target": "frontend_src_api_quota_getquota"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/quota.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_quota",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/quota.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_quota",
+ "target": "shared_quota_quotasummary"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useQuota.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usequota",
+ "target": "frontend_src_api_quota"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useQuota.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usequota",
+ "target": "frontend_src_api_quota_getquota"
+ },
+ {
+ "relation": "indirect_call",
+ "context": "collection",
+ "confidence": "INFERRED",
+ "confidence_score": 0.8,
+ "source_file": "frontend/src/hooks/useQuota.ts",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_usequota_usequota",
+ "target": "frontend_src_api_quota_getquota"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/tariff.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_tariff",
+ "target": "frontend_src_api_tariff_gettariffconfig"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/tariff.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_tariff",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/api/tariff.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_api_tariff",
+ "target": "shared_index_tariffconfigresponse"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_api_tariff"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PdfPreviewPage.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_pdfpreviewpage",
+ "target": "frontend_src_api_tariff"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_api_tariff_gettariffconfig"
+ },
+ {
+ "relation": "indirect_call",
+ "context": "collection",
+ "confidence": "INFERRED",
+ "confidence_score": 0.8,
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L74",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useanalysisform_useanalysisform",
+ "target": "frontend_src_api_tariff_gettariffconfig"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PdfPreviewPage.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_pdfpreviewpage",
+ "target": "frontend_src_api_tariff_gettariffconfig"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/PdfPreviewPage.tsx",
+ "source_location": "L53",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_pdfpreviewpage_pdfpreviewpage",
+ "target": "frontend_src_api_tariff_gettariffconfig"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "frontend_src_components_analysis_analysissidebar_analysissidebar"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "frontend_src_components_analysis_analysissidebar_analysissidebarprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "frontend_src_components_analysis_sidebar_consumptioncontrols"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "frontend_src_components_analysis_sidebar_consumptioncontrols_consumptioncontrols"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "frontend_src_components_analysis_sidebar_lifecyclecontrols"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "frontend_src_components_analysis_sidebar_lifecyclecontrols_lifecyclecontrols"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "frontend_src_components_analysis_sidebar_systemmetacard"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "frontend_src_components_analysis_sidebar_systemmetacard_systemmetacard"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "frontend_src_components_analysis_sidebar_tariffcontrols"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "frontend_src_components_analysis_sidebar_tariffcontrols_tariffcontrols"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "frontend_src_components_ui_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "frontend_src_components_ui_card_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "frontend_src_components_ui_card_cardcontent"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "frontend_src_hooks_useanalysisform"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "frontend_src_hooks_useanalysisform_analysisformstate"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "frontend_src_lib_buildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "frontend_src_lib_buildinginsights_parsedbuildinginsights"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "shared_index_tariffrates"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/AnalysisSidebar.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_analysissidebar",
+ "target": "shared_paneltypes_panelmodel"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_analysissidebar"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_analysissidebar_analysissidebar"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_components_analysis_billbreakdown_billbreakdown"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_components_analysis_billbreakdown_billbreakdownprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_components_analysis_billbreakdown_simulationmonth"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_components_analysis_formatters"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_components_ui_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_components_ui_card_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_components_ui_card_cardcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_components_ui_card_carddescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_components_ui_card_cardheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_components_ui_card_cardtitle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_components_ui_infotooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_components_ui_infotooltip_infotooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_lib_analysis"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_lib_analysis_presentation_month_labels"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_lib_billingengine"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_lib_billingengine_runannualsimulation"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_lib_formatters_bill_tooltips"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_lib_formatters_formatnumber"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billbreakdown",
+ "target": "frontend_src_lib_formatters_nem_tooltips"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_billbreakdown"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L98",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_billbreakdown_billbreakdown",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/BillBreakdown.tsx",
+ "source_location": "L164",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_billbreakdown_billbreakdown",
+ "target": "frontend_src_lib_formatters_formatnumber"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_billbreakdown_billbreakdown"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billcomparisonchart",
+ "target": "frontend_src_components_analysis_billcomparisonchart_billcomparisonchart"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billcomparisonchart",
+ "target": "frontend_src_components_analysis_billcomparisonchart_billcomparisonchartprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billcomparisonchart",
+ "target": "frontend_src_components_analysis_charttooltipcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billcomparisonchart",
+ "target": "frontend_src_components_analysis_charttooltipcontent_charttooltipcontent"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billcomparisonchart",
+ "target": "frontend_src_components_ui_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billcomparisonchart",
+ "target": "frontend_src_components_ui_card_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billcomparisonchart",
+ "target": "frontend_src_components_ui_card_cardcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billcomparisonchart",
+ "target": "frontend_src_components_ui_card_carddescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billcomparisonchart",
+ "target": "frontend_src_components_ui_card_cardheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billcomparisonchart",
+ "target": "frontend_src_components_ui_card_cardtitle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billcomparisonchart",
+ "target": "frontend_src_components_ui_infotooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billcomparisonchart",
+ "target": "frontend_src_components_ui_infotooltip_infotooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billcomparisonchart",
+ "target": "frontend_src_hooks_usetheme"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billcomparisonchart",
+ "target": "frontend_src_hooks_usetheme_usetheme"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billcomparisonchart",
+ "target": "frontend_src_lib_constants"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billcomparisonchart",
+ "target": "frontend_src_lib_constants_colors"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_billcomparisonchart",
+ "target": "frontend_src_lib_constants_getcharttooltipstyle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_billcomparisonchart"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_billcomparisonchart_billcomparisonchart",
+ "target": "frontend_src_hooks_usetheme_usetheme"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/BillComparisonChart.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_billcomparisonchart_billcomparisonchart",
+ "target": "frontend_src_lib_constants_getcharttooltipstyle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_billcomparisonchart_billcomparisonchart"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/ChartTooltipContent.tsx",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_charttooltipcontent",
+ "target": "frontend_src_components_analysis_charttooltipcontent_charttooltipcontent"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/ChartTooltipContent.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_charttooltipcontent",
+ "target": "frontend_src_components_analysis_charttooltipcontent_charttooltipcontentprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/ChartTooltipContent.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_charttooltipcontent",
+ "target": "frontend_src_components_analysis_charttooltipcontent_tooltipentry"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/ChartTooltipContent.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_charttooltipcontent",
+ "target": "frontend_src_components_analysis_formatters"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/ChartTooltipContent.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_charttooltipcontent",
+ "target": "frontend_src_lib_formatters_formattooltipcurrency"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_analysis_charttooltipcontent"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_components_analysis_charttooltipcontent"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysischarts",
+ "target": "frontend_src_components_analysis_charttooltipcontent"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "frontend_src_components_analysis_charttooltipcontent"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_charttooltipcontent"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_components_analysis_charttooltipcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_analysis_charttooltipcontent_charttooltipcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_components_analysis_charttooltipcontent_charttooltipcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysischarts",
+ "target": "frontend_src_components_analysis_charttooltipcontent_charttooltipcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "frontend_src_components_analysis_charttooltipcontent_charttooltipcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_charttooltipcontent_charttooltipcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_components_analysis_charttooltipcontent_charttooltipcontent"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L41",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_financialroadmap",
+ "target": "frontend_src_components_analysis_financialroadmap_financialroadmap"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_financialroadmap",
+ "target": "frontend_src_components_analysis_financialroadmap_financialroadmapprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_financialroadmap",
+ "target": "frontend_src_components_analysis_financialroadmap_milestone"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_financialroadmap",
+ "target": "frontend_src_components_analysis_formatters"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_financialroadmap",
+ "target": "frontend_src_components_ui_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_financialroadmap",
+ "target": "frontend_src_components_ui_card_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_financialroadmap",
+ "target": "frontend_src_components_ui_card_cardcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_financialroadmap",
+ "target": "frontend_src_components_ui_card_carddescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_financialroadmap",
+ "target": "frontend_src_components_ui_card_cardheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_financialroadmap",
+ "target": "frontend_src_components_ui_card_cardtitle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_financialroadmap",
+ "target": "frontend_src_components_ui_infotooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_financialroadmap",
+ "target": "frontend_src_components_ui_infotooltip_infotooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_financialroadmap",
+ "target": "frontend_src_lib_analysis"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_financialroadmap",
+ "target": "frontend_src_lib_analysis_config_inverterreplacement"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_financialroadmap",
+ "target": "frontend_src_lib_analysis_projections_normalizeinverterreplacements"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_financialroadmap",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_analysis_financialroadmap"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_financialroadmap"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L58",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_financialroadmap_financialroadmap",
+ "target": "frontend_src_lib_analysis_projections_normalizeinverterreplacements"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/FinancialRoadmap.tsx",
+ "source_location": "L70",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_financialroadmap_financialroadmap",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_analysis_financialroadmap_financialroadmap"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_financialroadmap_financialroadmap"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_monthtable",
+ "target": "frontend_src_components_analysis_formatters"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_monthtable",
+ "target": "frontend_src_components_analysis_monthtable_monthtable"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_monthtable",
+ "target": "frontend_src_components_analysis_monthtable_monthtableprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_monthtable",
+ "target": "frontend_src_components_ui_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_monthtable",
+ "target": "frontend_src_components_ui_card_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_monthtable",
+ "target": "frontend_src_components_ui_card_cardcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_monthtable",
+ "target": "frontend_src_components_ui_card_carddescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_monthtable",
+ "target": "frontend_src_components_ui_card_cardheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_monthtable",
+ "target": "frontend_src_components_ui_card_cardtitle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_monthtable",
+ "target": "frontend_src_components_ui_infotooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_monthtable",
+ "target": "frontend_src_components_ui_infotooltip_infotooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_monthtable",
+ "target": "frontend_src_lib_analysis"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_monthtable",
+ "target": "frontend_src_lib_analysis_presentation_month_labels"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_monthtable",
+ "target": "frontend_src_lib_billingengine"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_monthtable",
+ "target": "frontend_src_lib_billingengine_runannualsimulation"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_monthtable",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_monthtable",
+ "target": "frontend_src_lib_formatters_formatnumber"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_analysis_monthtable"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_monthtable"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L70",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_monthtable_monthtable",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/MonthTable.tsx",
+ "source_location": "L65",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_monthtable_monthtable",
+ "target": "frontend_src_lib_formatters_formatnumber"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_analysis_monthtable_monthtable"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_monthtable_monthtable"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_analysis_formatters"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L52",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_analysis_netbenefitchart_netbenefitchart"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_analysis_netbenefitchart_netbenefitchartprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L45",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_analysis_netbenefitchart_year_ranges"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_analysis_netbenefitchart_yearrange"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_ui_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_ui_card_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_ui_card_cardcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_ui_card_carddescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_ui_card_cardheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_ui_card_cardtitle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_ui_dropdownmenu"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenu"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenucontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenuradioitem"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_ui_infotooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_components_ui_infotooltip_infotooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_hooks_usetheme"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_hooks_usetheme_usetheme"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_lib_analysis"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_lib_analysis_config_inverterreplacement"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_lib_analysis_projections_buildnetbenefitseries"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_lib_constants"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_lib_constants_colors"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_lib_constants_getcharttooltipstyle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_netbenefitchart",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_analysis_netbenefitchart"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_netbenefitchart"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L65",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_netbenefitchart_netbenefitchart",
+ "target": "frontend_src_hooks_usetheme_usetheme"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L71",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_netbenefitchart_netbenefitchart",
+ "target": "frontend_src_lib_analysis_projections_buildnetbenefitseries"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L66",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_netbenefitchart_netbenefitchart",
+ "target": "frontend_src_lib_constants_getcharttooltipstyle"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/NetBenefitChart.tsx",
+ "source_location": "L156",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_netbenefitchart_netbenefitchart",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_analysis_netbenefitchart_netbenefitchart"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_netbenefitchart_netbenefitchart"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_components_analysis_formatters"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_components_analysis_roiverdict"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_components_analysis_roiverdict_getroicondition"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_components_analysis_solarverdict_solarverdict"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_components_analysis_solarverdict_solarverdictprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_components_analysis_solarverdict_starrating"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_components_ui_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_components_ui_card_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_components_ui_card_cardcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_components_ui_card_carddescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_components_ui_card_cardheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_components_ui_card_cardtitle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_components_ui_infotooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_components_ui_infotooltip_infotooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_lib_analysis"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_lib_analysis_results_analysisresultsrecord"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_lib_analysis_results_classifynemfit"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_lib_analysis_results_computenemfitmetrics"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_solarverdict",
+ "target": "frontend_src_lib_formatters_formatnumber"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_analysis_solarverdict"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_solarverdict"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_solarverdict_solarverdict",
+ "target": "frontend_src_components_analysis_roiverdict_getroicondition"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L63",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_solarverdict_solarverdict",
+ "target": "frontend_src_lib_analysis_results_classifynemfit"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L62",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_solarverdict_solarverdict",
+ "target": "frontend_src_lib_analysis_results_computenemfitmetrics"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L54",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_solarverdict_solarverdict",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/SolarVerdict.tsx",
+ "source_location": "L119",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_solarverdict_solarverdict",
+ "target": "frontend_src_lib_formatters_formatnumber"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_analysis_solarverdict_solarverdict"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_solarverdict_solarverdict"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SortableCardContainer.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sortablecardcontainer",
+ "target": "frontend_src_components_analysis_sortablecardcontainer_carditem"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SortableCardContainer.tsx",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sortablecardcontainer",
+ "target": "frontend_src_components_analysis_sortablecardcontainer_loadorder"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SortableCardContainer.tsx",
+ "source_location": "L41",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sortablecardcontainer",
+ "target": "frontend_src_components_analysis_sortablecardcontainer_reconcile"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SortableCardContainer.tsx",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sortablecardcontainer",
+ "target": "frontend_src_components_analysis_sortablecardcontainer_saveorder"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SortableCardContainer.tsx",
+ "source_location": "L54",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sortablecardcontainer",
+ "target": "frontend_src_components_analysis_sortablecardcontainer_sortablecard"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SortableCardContainer.tsx",
+ "source_location": "L83",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sortablecardcontainer",
+ "target": "frontend_src_components_analysis_sortablecardcontainer_sortablecardcontainer"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_sortablecardcontainer"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SortableCardContainer.tsx",
+ "source_location": "L92",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sortablecardcontainer_sortablecardcontainer",
+ "target": "frontend_src_components_analysis_sortablecardcontainer_loadorder"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SortableCardContainer.tsx",
+ "source_location": "L108",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sortablecardcontainer_sortablecardcontainer",
+ "target": "frontend_src_components_analysis_sortablecardcontainer_saveorder"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SortableCardContainer.tsx",
+ "source_location": "L93",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sortablecardcontainer_sortablecardcontainer",
+ "target": "frontend_src_components_analysis_sortablecardcontainer_reconcile"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_sortablecardcontainer_sortablecardcontainer"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemAssumptions.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemassumptions",
+ "target": "frontend_src_components_analysis_systemassumptions_systemassumptions"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemAssumptions.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemassumptions",
+ "target": "frontend_src_components_analysis_systemassumptions_systemassumptionsprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemAssumptions.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemassumptions",
+ "target": "frontend_src_components_ui_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemAssumptions.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemassumptions",
+ "target": "frontend_src_components_ui_card_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemAssumptions.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemassumptions",
+ "target": "frontend_src_components_ui_card_cardcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemAssumptions.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemassumptions",
+ "target": "frontend_src_components_ui_card_carddescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemAssumptions.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemassumptions",
+ "target": "frontend_src_components_ui_card_cardheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemAssumptions.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemassumptions",
+ "target": "frontend_src_components_ui_card_cardtitle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemAssumptions.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemassumptions",
+ "target": "frontend_src_components_ui_infotooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemAssumptions.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemassumptions",
+ "target": "frontend_src_components_ui_infotooltip_infotooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemAssumptions.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemassumptions",
+ "target": "frontend_src_lib_analysis"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemAssumptions.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemassumptions",
+ "target": "frontend_src_lib_analysis_presentation_azimuthtocompass"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemAssumptions.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemassumptions",
+ "target": "frontend_src_lib_analysis_presentation_layoutorientationsummary"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_systemassumptions"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/SystemAssumptions.tsx",
+ "source_location": "L89",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_systemassumptions_systemassumptions",
+ "target": "frontend_src_lib_analysis_presentation_azimuthtocompass"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_systemassumptions_systemassumptions"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_components_analysis_formatters"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_components_analysis_systemcostcard_segment"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_components_analysis_systemcostcard_segment_colors"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L42",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_components_analysis_systemcostcard_systemcostcard"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_components_analysis_systemcostcard_systemcostcardprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_components_ui_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_components_ui_card_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_components_ui_card_cardcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_components_ui_card_carddescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_components_ui_card_cardheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_components_ui_card_cardtitle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_components_ui_infotooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_components_ui_infotooltip_infotooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_hooks_usetheme"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_hooks_usetheme_usetheme"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_lib_constants"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_lib_constants_getcharttooltipstyle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "shared_costmodel_costbreakdown"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "shared_costmodel_rooftype"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_systemcostcard",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_systemcostcard"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L50",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_systemcostcard_systemcostcard",
+ "target": "frontend_src_hooks_usetheme_usetheme"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_systemcostcard_systemcostcard",
+ "target": "frontend_src_lib_constants_getcharttooltipstyle"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/SystemCostCard.tsx",
+ "source_location": "L142",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_systemcostcard_systemcostcard",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_systemcostcard_systemcostcard"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_components_analysis_tariffparametermodal"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L60",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_analysis_tariffparametermodal_formatdisplay"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L65",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_analysis_tariffparametermodal_parseinputtorate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_analysis_tariffparametermodal_tariff_fields"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_analysis_tariffparametermodal_tarifffield"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L77",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_analysis_tariffparametermodal_tariffparametermodal"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L49",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_analysis_tariffparametermodal_tariffparametermodalprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_ui_dialog"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_ui_dialog_dialogcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_ui_dialog_dialogdescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_ui_dialog_dialogfooter"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_ui_dialog_dialogheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_ui_dialog_dialogtitle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_ui_infotooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_ui_infotooltip_infotooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_ui_input"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_ui_input_input"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_ui_label"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "frontend_src_components_ui_label_label"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal",
+ "target": "shared_index_tariffrates"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/TariffParameterModal.tsx",
+ "source_location": "L85",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_tariffparametermodal_tariffparametermodal",
+ "target": "frontend_src_components_analysis_tariffparametermodal_formatdisplay"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_components_analysis_tariffparametermodal_tariffparametermodal"
+ },
+ {
+ "relation": "re_exports",
+ "context": "export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/formatters.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_formatters",
+ "target": "frontend_src_lib_formatters"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/formatters.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_formatters",
+ "target": "frontend_src_lib_formatters_bill_tooltips"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/formatters.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_formatters",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/formatters.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_formatters",
+ "target": "frontend_src_lib_formatters_formatnumber"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/formatters.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_formatters",
+ "target": "frontend_src_lib_formatters_formattooltipcurrency"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/formatters.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_formatters",
+ "target": "frontend_src_lib_formatters_nem_tooltips"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/SystemMetaCard.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_systemmetacard",
+ "target": "frontend_src_components_analysis_formatters"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "frontend_src_components_analysis_formatters"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_analysis_formatters"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_analysis_formatters"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/roiVerdict.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_roiverdict",
+ "target": "frontend_src_components_analysis_roiverdict_getroicondition"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/roiVerdict.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_roiverdict",
+ "target": "frontend_src_components_analysis_roiverdict_roicondition"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/ConsumptionControls.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_consumptioncontrols",
+ "target": "frontend_src_components_analysis_sidebar_consumptioncontrols_consumptioncontrols"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/ConsumptionControls.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_consumptioncontrols",
+ "target": "frontend_src_components_analysis_sidebar_consumptioncontrols_consumptioncontrolsprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/ConsumptionControls.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_consumptioncontrols",
+ "target": "frontend_src_components_ui_imagepopup"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/ConsumptionControls.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_consumptioncontrols",
+ "target": "frontend_src_components_ui_imagepopup_imagepopup"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/ConsumptionControls.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_consumptioncontrols",
+ "target": "frontend_src_components_ui_infotooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/ConsumptionControls.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_consumptioncontrols",
+ "target": "frontend_src_components_ui_infotooltip_infotooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/ConsumptionControls.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_consumptioncontrols",
+ "target": "frontend_src_components_ui_input"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/ConsumptionControls.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_consumptioncontrols",
+ "target": "frontend_src_components_ui_input_input"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/ConsumptionControls.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_consumptioncontrols",
+ "target": "frontend_src_components_ui_label"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/ConsumptionControls.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_consumptioncontrols",
+ "target": "frontend_src_components_ui_label_label"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/ConsumptionControls.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_consumptioncontrols",
+ "target": "frontend_src_hooks_useanalysisform"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/ConsumptionControls.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_consumptioncontrols",
+ "target": "frontend_src_hooks_useanalysisform_analysisformstate"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/ConsumptionControls.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_consumptioncontrols",
+ "target": "frontend_src_lib_analysis"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/ConsumptionControls.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_consumptioncontrols",
+ "target": "frontend_src_lib_analysis_config_consumptionprofile"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/ConsumptionControls.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_consumptioncontrols",
+ "target": "frontend_src_lib_analysis_presentation_seasonal_multipliers"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_components_analysis_sidebar_lifecyclecontrols_lifecyclecontrols"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_components_analysis_sidebar_lifecyclecontrols_lifecyclecontrolsprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_components_ui_dropdownmenu"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenu"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenucontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenuradioitem"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_components_ui_infotooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_components_ui_infotooltip_infotooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_components_ui_input"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_components_ui_input_input"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_components_ui_label"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_components_ui_label_label"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_hooks_useanalysisform"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_hooks_useanalysisform_analysisformstate"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_lib_analysis"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_lib_analysis_config_analysismode"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_lib_analysis_config_default_inverter_replacement"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/LifecycleControls.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_lifecyclecontrols",
+ "target": "frontend_src_lib_analysis_config_inverterreplacement"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/SystemMetaCard.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_systemmetacard",
+ "target": "frontend_src_components_analysis_sidebar_systemmetacard_systemmetacard"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/SystemMetaCard.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_systemmetacard",
+ "target": "frontend_src_components_analysis_sidebar_systemmetacard_systemmetacardprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/SystemMetaCard.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_systemmetacard",
+ "target": "frontend_src_components_ui_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/SystemMetaCard.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_systemmetacard",
+ "target": "frontend_src_components_ui_card_cardheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/SystemMetaCard.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_systemmetacard",
+ "target": "frontend_src_components_ui_card_cardtitle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/SystemMetaCard.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_systemmetacard",
+ "target": "frontend_src_components_ui_infotooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/SystemMetaCard.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_systemmetacard",
+ "target": "frontend_src_components_ui_infotooltip_infotooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/SystemMetaCard.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_systemmetacard",
+ "target": "frontend_src_lib_buildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/SystemMetaCard.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_systemmetacard",
+ "target": "frontend_src_lib_buildinginsights_parsedbuildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/SystemMetaCard.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_systemmetacard",
+ "target": "frontend_src_lib_formatters_formatnumber"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/SystemMetaCard.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_systemmetacard",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/SystemMetaCard.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_systemmetacard",
+ "target": "shared_paneltypes_panelmodel"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/analysis/sidebar/SystemMetaCard.tsx",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_analysis_sidebar_systemmetacard_systemmetacard",
+ "target": "frontend_src_lib_formatters_formatnumber"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_components_analysis_sidebar_tariffcontrols_percentageinput"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L81",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_components_analysis_sidebar_tariffcontrols_tariffcontrols"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L67",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_components_analysis_sidebar_tariffcontrols_tariffcontrolsprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_components_ui_dropdownmenu"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenu"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenucontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenuradioitem"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_components_ui_infotooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_components_ui_infotooltip_infotooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_components_ui_input"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_components_ui_input_input"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_components_ui_label"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_components_ui_label_label"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_hooks_useanalysisform"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_hooks_useanalysisform_analysisformstate"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_lib_analysis"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "frontend_src_lib_analysis_config_connectionphase"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "shared_costmodel_rooftype"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/analysis/sidebar/TariffControls.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_analysis_sidebar_tariffcontrols",
+ "target": "shared_index_tariffrates"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/auth/GoogleSignInButton.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_auth_googlesigninbutton",
+ "target": "frontend_src_components_auth_googlesigninbutton_googlesigninbutton"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/auth/GoogleSignInButton.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_auth_googlesigninbutton",
+ "target": "frontend_src_components_auth_googlesigninbutton_googlesigninbuttonprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/auth/GoogleSignInButton.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_auth_googlesigninbutton",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/auth/GoogleSignInButton.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_auth_googlesigninbutton",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/auth/GoogleSignInButton.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_auth_googlesigninbutton",
+ "target": "frontend_src_hooks_useauth"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/auth/GoogleSignInButton.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_auth_googlesigninbutton",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signinpage",
+ "target": "frontend_src_components_auth_googlesigninbutton"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signuppage",
+ "target": "frontend_src_components_auth_googlesigninbutton"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/auth/GoogleSignInButton.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_auth_googlesigninbutton_googlesigninbutton",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signinpage",
+ "target": "frontend_src_components_auth_googlesigninbutton_googlesigninbutton"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signuppage",
+ "target": "frontend_src_components_auth_googlesigninbutton_googlesigninbutton"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatLauncher.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatlauncher",
+ "target": "frontend_src_components_chat_chatlauncher_chatlauncher"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatLauncher.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatlauncher",
+ "target": "frontend_src_components_chat_chatlauncher_chatlauncherprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatLauncher.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatlauncher",
+ "target": "frontend_src_components_chat_chatpanel"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatLauncher.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatlauncher",
+ "target": "frontend_src_components_chat_chatpanel_chatpanel"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatLauncher.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatlauncher",
+ "target": "frontend_src_components_chat_chatprovider"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatLauncher.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatlauncher",
+ "target": "frontend_src_components_chat_chatprovider_chatcontext"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatLauncher.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatlauncher",
+ "target": "frontend_src_hooks_usechat"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatLauncher.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatlauncher",
+ "target": "frontend_src_hooks_usechat_chatlivestate"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/__tests__/ChatLauncher.test.tsx",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_tests_chatlauncher_test",
+ "target": "frontend_src_components_chat_chatlauncher"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L41",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_chat_chatlauncher"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L41",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_chat_chatlauncher"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/__tests__/ChatLauncher.test.tsx",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_tests_chatlauncher_test",
+ "target": "frontend_src_components_chat_chatlauncher_chatlauncher"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L41",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_chat_chatlauncher_chatlauncher"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L41",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_chat_chatlauncher_chatlauncher"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatpanel",
+ "target": "frontend_src_components_chat_chatpanel_chatpanel"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatpanel",
+ "target": "frontend_src_components_chat_chatpanel_chatpanelprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatpanel",
+ "target": "frontend_src_components_chat_chatpanel_getpaybackyears"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatpanel",
+ "target": "frontend_src_components_chat_chatprovider"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatpanel",
+ "target": "frontend_src_components_chat_chatprovider_chatcontext"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatpanel",
+ "target": "frontend_src_components_chat_messagebubble"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatpanel",
+ "target": "frontend_src_components_chat_messagebubble_messagebubble"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatpanel",
+ "target": "frontend_src_components_chat_suggestedquestions"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatpanel",
+ "target": "frontend_src_components_chat_suggestedquestions_suggestedquestions"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatpanel",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatpanel",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatpanel",
+ "target": "frontend_src_hooks_usechat"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatpanel",
+ "target": "frontend_src_hooks_usechat_chatlivestate"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatpanel",
+ "target": "frontend_src_hooks_usechat_usechat"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L53",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatpanel_chatpanel",
+ "target": "frontend_src_components_chat_chatpanel_getpaybackyears"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/chat/ChatPanel.tsx",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_chat_chatpanel_chatpanel",
+ "target": "frontend_src_hooks_usechat_usechat"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatProvider.tsx",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatprovider",
+ "target": "frontend_src_components_chat_chatprovider_chatcontext"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatProvider.tsx",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatprovider",
+ "target": "frontend_src_components_chat_chatprovider_chatcontextvalue"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatProvider.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatprovider",
+ "target": "frontend_src_components_chat_chatprovider_chatmessage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatProvider.tsx",
+ "source_location": "L57",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatprovider",
+ "target": "frontend_src_components_chat_chatprovider_chatprovider"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatProvider.tsx",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatprovider",
+ "target": "frontend_src_components_chat_chatprovider_empty_chat_state"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatProvider.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatprovider",
+ "target": "frontend_src_components_chat_chatprovider_projectchatstate"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatProvider.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatprovider",
+ "target": "frontend_src_hooks_useauth"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/ChatProvider.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_chatprovider",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/MessageBubble.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_messagebubble",
+ "target": "frontend_src_components_chat_chatprovider"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/__tests__/ChatLauncher.test.tsx",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_tests_chatlauncher_test",
+ "target": "frontend_src_components_chat_chatprovider"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/__tests__/ChatProvider.test.tsx",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_tests_chatprovider_test",
+ "target": "frontend_src_components_chat_chatprovider"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/__tests__/useChat.test.tsx",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_tests_usechat_test",
+ "target": "frontend_src_components_chat_chatprovider"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "frontend_src_components_chat_chatprovider"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/main.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_main",
+ "target": "frontend_src_components_chat_chatprovider"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L40",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_chat_chatprovider"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L40",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_chat_chatprovider"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/MessageBubble.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_messagebubble",
+ "target": "frontend_src_components_chat_chatprovider_chatmessage"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "frontend_src_components_chat_chatprovider_chatmessage"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/__tests__/ChatLauncher.test.tsx",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_tests_chatlauncher_test",
+ "target": "frontend_src_components_chat_chatprovider_chatcontext"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/__tests__/ChatProvider.test.tsx",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_tests_chatprovider_test",
+ "target": "frontend_src_components_chat_chatprovider_chatcontext"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "frontend_src_components_chat_chatprovider_chatcontext"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L40",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_chat_chatprovider_chatcontext"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L40",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_chat_chatprovider_chatcontext"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/chat/ChatProvider.tsx",
+ "source_location": "L58",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_chat_chatprovider_chatprovider",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/__tests__/ChatLauncher.test.tsx",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_tests_chatlauncher_test",
+ "target": "frontend_src_components_chat_chatprovider_chatprovider"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/__tests__/ChatProvider.test.tsx",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_tests_chatprovider_test",
+ "target": "frontend_src_components_chat_chatprovider_chatprovider"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/__tests__/useChat.test.tsx",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_tests_usechat_test",
+ "target": "frontend_src_components_chat_chatprovider_chatprovider"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/main.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_main",
+ "target": "frontend_src_components_chat_chatprovider_chatprovider"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/MessageBubble.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_messagebubble",
+ "target": "frontend_src_components_chat_messagebubble_messagebubble"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/MessageBubble.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_messagebubble",
+ "target": "frontend_src_components_chat_messagebubble_messagebubbleprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/MessageBubble.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_messagebubble",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/MessageBubble.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_messagebubble",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/chat/MessageBubble.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_chat_messagebubble_messagebubble",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/SuggestedQuestions.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_suggestedquestions",
+ "target": "frontend_src_components_chat_suggestedquestions_samplepool"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/SuggestedQuestions.tsx",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_suggestedquestions",
+ "target": "frontend_src_components_chat_suggestedquestions_suggestedquestions"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/SuggestedQuestions.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_suggestedquestions",
+ "target": "frontend_src_components_chat_suggestedquestions_suggestedquestionsprops"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/SuggestedQuestions.tsx",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_suggestedquestions_suggestedquestions",
+ "target": "frontend_src_components_chat_suggestedquestions_samplepool"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/__tests__/ChatLauncher.test.tsx",
+ "source_location": "L40",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_tests_chatlauncher_test",
+ "target": "frontend_src_components_chat_tests_chatlauncher_test_renderlauncher"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/chat/__tests__/ChatProvider.test.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_chat_tests_chatprovider_test",
+ "target": "frontend_src_components_chat_tests_chatprovider_test_wrapper"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/dashboard/ProjectCard.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_dashboard_projectcard",
+ "target": "frontend_src_components_dashboard_helpers"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/dashboard/ProjectCard.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_dashboard_projectcard",
+ "target": "frontend_src_components_dashboard_helpers_formatrelativedate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/dashboard/ProjectCard.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_dashboard_projectcard",
+ "target": "frontend_src_components_dashboard_projectcard_projectcard"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/dashboard/ProjectCard.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_dashboard_projectcard",
+ "target": "frontend_src_components_ui_badge"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/dashboard/ProjectCard.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_dashboard_projectcard",
+ "target": "frontend_src_components_ui_badge_badge"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/dashboard/ProjectCard.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_dashboard_projectcard",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/dashboard/ProjectCard.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_dashboard_projectcard",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/dashboard/ProjectCard.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_dashboard_projectcard",
+ "target": "frontend_src_lib_projectstatus"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/dashboard/ProjectCard.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_dashboard_projectcard",
+ "target": "frontend_src_lib_projectstatus_getprojectstatusconfig"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_dashboard_projectcard"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/dashboard/ProjectCard.tsx",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_dashboard_projectcard_projectcard",
+ "target": "frontend_src_components_dashboard_helpers_formatrelativedate"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/dashboard/ProjectCard.tsx",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_dashboard_projectcard_projectcard",
+ "target": "frontend_src_lib_projectstatus_getprojectstatusconfig"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_dashboard_projectcard_projectcard"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/dashboard/StatCard.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_dashboard_statcard",
+ "target": "frontend_src_components_dashboard_statcard_statcard"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_components_dashboard_statcard"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_components_dashboard_statcard_statcard"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/dashboard/helpers.ts",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_dashboard_helpers",
+ "target": "frontend_src_components_dashboard_helpers_aggregateportfolio"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/dashboard/helpers.ts",
+ "source_location": "L117",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_dashboard_helpers",
+ "target": "frontend_src_components_dashboard_helpers_formatrelativedate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/dashboard/helpers.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_dashboard_helpers",
+ "target": "frontend_src_components_dashboard_helpers_portfoliostats"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/dashboard/helpers.ts",
+ "source_location": "L101",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_dashboard_helpers",
+ "target": "frontend_src_components_dashboard_helpers_projectroute"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_components_dashboard_helpers"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_dashboard_helpers"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L40",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_dashboard_helpers"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_components_dashboard_helpers_aggregateportfolio"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L65",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_analyticspage_analyticspage",
+ "target": "frontend_src_components_dashboard_helpers_aggregateportfolio"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_dashboard_helpers_projectroute"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L234",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_dashboardpage_dashboardpage",
+ "target": "frontend_src_components_dashboard_helpers_projectroute"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L40",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_dashboard_helpers_projectroute"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L236",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_projectspage_projectspage",
+ "target": "frontend_src_components_dashboard_helpers_projectroute"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_dashboard_helpers_formatrelativedate"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L242",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_dashboardpage_dashboardpage",
+ "target": "frontend_src_components_dashboard_helpers_formatrelativedate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_apperrorboundary",
+ "target": "frontend_src_components_layout_apperrorboundary_apperrorboundary"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_apperrorboundary",
+ "target": "frontend_src_components_layout_apperrorboundary_apperrorboundaryprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_apperrorboundary",
+ "target": "frontend_src_components_layout_apperrorboundary_apperrorboundarystate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_apperrorboundary",
+ "target": "frontend_src_components_layout_apperrorboundary_ischunkloaderror"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_apperrorboundary",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_apperrorboundary",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_apperrorboundary",
+ "target": "frontend_src_components_ui_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_apperrorboundary",
+ "target": "frontend_src_components_ui_card_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_apperrorboundary",
+ "target": "frontend_src_components_ui_card_cardcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_apperrorboundary",
+ "target": "frontend_src_components_ui_card_carddescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_apperrorboundary",
+ "target": "frontend_src_components_ui_card_cardheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_apperrorboundary",
+ "target": "frontend_src_components_ui_card_cardtitle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/main.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_main",
+ "target": "frontend_src_components_layout_apperrorboundary"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L48",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_apperrorboundary_apperrorboundary_componentdidcatch",
+ "target": "frontend_src_components_layout_apperrorboundary_ischunkloaderror"
+ },
+ {
+ "relation": "method",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L41",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_apperrorboundary_apperrorboundary",
+ "target": "frontend_src_components_layout_apperrorboundary_apperrorboundary_componentdidcatch"
+ },
+ {
+ "relation": "method",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_apperrorboundary_apperrorboundary",
+ "target": "frontend_src_components_layout_apperrorboundary_apperrorboundary_getderivedstatefromerror"
+ },
+ {
+ "relation": "method",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L65",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_apperrorboundary_apperrorboundary",
+ "target": "frontend_src_components_layout_apperrorboundary_apperrorboundary_handledashboardredirect"
+ },
+ {
+ "relation": "method",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L61",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_apperrorboundary_apperrorboundary",
+ "target": "frontend_src_components_layout_apperrorboundary_apperrorboundary_handlereload"
+ },
+ {
+ "relation": "method",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppErrorBoundary.tsx",
+ "source_location": "L69",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_apperrorboundary_apperrorboundary",
+ "target": "frontend_src_components_layout_apperrorboundary_apperrorboundary_render"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/main.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_main",
+ "target": "frontend_src_components_layout_apperrorboundary_apperrorboundary"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppFooter.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appfooter",
+ "target": "frontend_src_components_layout_appfooter_appfooter"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppFooter.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appfooter",
+ "target": "frontend_src_components_ui_logo"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppFooter.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appfooter",
+ "target": "frontend_src_components_ui_logo_logo"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppLayout.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_applayout",
+ "target": "frontend_src_components_layout_appfooter"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_components_layout_appfooter"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PrivacyPage.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_privacypage",
+ "target": "frontend_src_components_layout_appfooter"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppLayout.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_applayout",
+ "target": "frontend_src_components_layout_appfooter_appfooter"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_components_layout_appfooter_appfooter"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PrivacyPage.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_privacypage",
+ "target": "frontend_src_components_layout_appfooter_appfooter"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppLayout.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_applayout",
+ "target": "frontend_src_components_layout_applayout_applayout"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppLayout.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_applayout",
+ "target": "frontend_src_components_layout_applayout_applayoutprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppLayout.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_applayout",
+ "target": "frontend_src_components_layout_appnav"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppLayout.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_applayout",
+ "target": "frontend_src_components_layout_appnav_appnav"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppLayout.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_applayout",
+ "target": "frontend_src_components_layout_appsidebar"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppLayout.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_applayout",
+ "target": "frontend_src_components_layout_appsidebar_appsidebar"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/DashboardLayout.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_dashboardlayout",
+ "target": "frontend_src_components_layout_applayout"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_layout_applayout"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_components_layout_applayout"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_layout_applayout"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/DashboardLayout.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_dashboardlayout",
+ "target": "frontend_src_components_layout_applayout_applayout"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_layout_applayout_applayout"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_components_layout_applayout_applayout"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_layout_applayout_applayout"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L79",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appnav",
+ "target": "frontend_src_components_layout_appnav_appnav"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appnav",
+ "target": "frontend_src_components_layout_appnav_crumb"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appnav",
+ "target": "frontend_src_components_layout_appnav_usebreadcrumbs"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appnav",
+ "target": "frontend_src_components_layout_languagetoggle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appnav",
+ "target": "frontend_src_components_layout_languagetoggle_languagetoggle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appnav",
+ "target": "frontend_src_components_layout_themetoggle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appnav",
+ "target": "frontend_src_components_layout_themetoggle_themetoggle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appnav",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appnav",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appnav",
+ "target": "frontend_src_components_ui_notificationpopover"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appnav",
+ "target": "frontend_src_components_ui_notificationpopover_notificationpopover"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appnav",
+ "target": "frontend_src_hooks_useauth"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appnav",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appnav",
+ "target": "frontend_src_hooks_usequota"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appnav",
+ "target": "frontend_src_hooks_usequota_usequota"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L82",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appnav_appnav",
+ "target": "frontend_src_components_layout_appnav_usebreadcrumbs"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L81",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_layout_appnav_appnav",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/layout/AppNav.tsx",
+ "source_location": "L85",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_layout_appnav_appnav",
+ "target": "frontend_src_hooks_usequota_usequota"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppSidebar.tsx",
+ "source_location": "L131",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appsidebar",
+ "target": "frontend_src_components_layout_appsidebar_appsidebar"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppSidebar.tsx",
+ "source_location": "L120",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appsidebar",
+ "target": "frontend_src_components_layout_appsidebar_appsidebarprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppSidebar.tsx",
+ "source_location": "L102",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appsidebar",
+ "target": "frontend_src_components_layout_appsidebar_nav_sections"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppSidebar.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appsidebar",
+ "target": "frontend_src_components_layout_appsidebar_navitem"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppSidebar.tsx",
+ "source_location": "L52",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appsidebar",
+ "target": "frontend_src_components_layout_appsidebar_navlink"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppSidebar.tsx",
+ "source_location": "L97",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appsidebar",
+ "target": "frontend_src_components_layout_appsidebar_navsectiondef"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppSidebar.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appsidebar",
+ "target": "frontend_src_components_layout_appsidebar_sectionheading"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppSidebar.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appsidebar",
+ "target": "frontend_src_components_ui_logo"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/AppSidebar.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_appsidebar",
+ "target": "frontend_src_components_ui_logo_logo"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/DashboardLayout.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_dashboardlayout",
+ "target": "frontend_src_components_layout_dashboardlayout_dashboardlayout"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/LanguageToggle.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_languagetoggle",
+ "target": "frontend_src_components_layout_languagetoggle_languagetoggle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/LanguageToggle.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_languagetoggle",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/LanguageToggle.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_languagetoggle",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/LanguageToggle.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_languagetoggle",
+ "target": "frontend_src_components_ui_dropdownmenu"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/LanguageToggle.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_languagetoggle",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenu"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/LanguageToggle.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_languagetoggle",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenucontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/LanguageToggle.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_languagetoggle",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenuitem"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/LanguageToggle.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_languagetoggle",
+ "target": "frontend_src_hooks_uselocale"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/LanguageToggle.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_languagetoggle",
+ "target": "frontend_src_hooks_uselocale_uselocale"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/LanguageToggle.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_languagetoggle",
+ "target": "frontend_src_lib_i18n"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/LanguageToggle.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_languagetoggle",
+ "target": "frontend_src_lib_i18n_locale_labels"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/LanguageToggle.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_languagetoggle",
+ "target": "frontend_src_lib_i18n_supported_locales"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/LanguageToggle.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_languagetoggle",
+ "target": "frontend_src_lib_i18n_supportedlocale"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_components_layout_languagetoggle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PrivacyPage.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_privacypage",
+ "target": "frontend_src_components_layout_languagetoggle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signinpage",
+ "target": "frontend_src_components_layout_languagetoggle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signuppage",
+ "target": "frontend_src_components_layout_languagetoggle"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/layout/LanguageToggle.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_layout_languagetoggle_languagetoggle",
+ "target": "frontend_src_hooks_uselocale_uselocale"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_components_layout_languagetoggle_languagetoggle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PrivacyPage.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_privacypage",
+ "target": "frontend_src_components_layout_languagetoggle_languagetoggle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signinpage",
+ "target": "frontend_src_components_layout_languagetoggle_languagetoggle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signuppage",
+ "target": "frontend_src_components_layout_languagetoggle_languagetoggle"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/PageContainer.tsx",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_pagecontainer",
+ "target": "frontend_src_components_layout_pagecontainer_pagecontainer"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/PageContainer.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_pagecontainer",
+ "target": "frontend_src_components_layout_pagecontainer_pagecontainerprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/PageContainer.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_pagecontainer",
+ "target": "frontend_src_components_layout_pagecontainer_variants"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/PageContainer.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_pagecontainer",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/PageContainer.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_pagecontainer",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_layout_pagecontainer"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_components_layout_pagecontainer"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_layout_pagecontainer"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_faqpage",
+ "target": "frontend_src_components_layout_pagecontainer"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_layout_pagecontainer"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_components_layout_pagecontainer"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_layout_pagecontainer"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/layout/PageContainer.tsx",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_layout_pagecontainer_pagecontainer",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_layout_pagecontainer_pagecontainer"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_components_layout_pagecontainer_pagecontainer"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_layout_pagecontainer_pagecontainer"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_faqpage",
+ "target": "frontend_src_components_layout_pagecontainer_pagecontainer"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_layout_pagecontainer_pagecontainer"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_components_layout_pagecontainer_pagecontainer"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_layout_pagecontainer_pagecontainer"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/PageHeaderCard.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_pageheadercard",
+ "target": "frontend_src_components_layout_pageheadercard_pageheadercard"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/PageHeaderCard.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_pageheadercard",
+ "target": "frontend_src_components_layout_pageheadercard_pageheadercardprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/PageHeaderCard.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_pageheadercard",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/PageHeaderCard.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_pageheadercard",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_components_layout_pageheadercard"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_layout_pageheadercard"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_faqpage",
+ "target": "frontend_src_components_layout_pageheadercard"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_layout_pageheadercard"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_components_layout_pageheadercard"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/layout/PageHeaderCard.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_layout_pageheadercard_pageheadercard",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_components_layout_pageheadercard_pageheadercard"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_layout_pageheadercard_pageheadercard"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_faqpage",
+ "target": "frontend_src_components_layout_pageheadercard_pageheadercard"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_layout_pageheadercard_pageheadercard"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_components_layout_pageheadercard_pageheadercard"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/ProtectedRoute.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_protectedroute",
+ "target": "frontend_src_components_layout_protectedroute_protectedroute"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/ProtectedRoute.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_protectedroute",
+ "target": "frontend_src_hooks_useauth"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/ProtectedRoute.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_protectedroute",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/layout/ProtectedRoute.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_layout_protectedroute_protectedroute",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/ThemeToggle.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_themetoggle",
+ "target": "frontend_src_components_layout_themetoggle_themetoggle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/ThemeToggle.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_themetoggle",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/ThemeToggle.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_themetoggle",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/ThemeToggle.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_themetoggle",
+ "target": "frontend_src_hooks_usetheme"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/layout/ThemeToggle.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_layout_themetoggle",
+ "target": "frontend_src_hooks_usetheme_usetheme"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_components_layout_themetoggle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PrivacyPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_privacypage",
+ "target": "frontend_src_components_layout_themetoggle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signinpage",
+ "target": "frontend_src_components_layout_themetoggle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signuppage",
+ "target": "frontend_src_components_layout_themetoggle"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/layout/ThemeToggle.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_layout_themetoggle_themetoggle",
+ "target": "frontend_src_hooks_usetheme_usetheme"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_components_layout_themetoggle_themetoggle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PrivacyPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_privacypage",
+ "target": "frontend_src_components_layout_themetoggle_themetoggle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signinpage",
+ "target": "frontend_src_components_layout_themetoggle_themetoggle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signuppage",
+ "target": "frontend_src_components_layout_themetoggle_themetoggle"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/CoverageNoticeModal.tsx",
+ "source_location": "L52",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_coveragenoticemodal",
+ "target": "frontend_src_components_map_coveragenoticemodal_coveragenoticemodal"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/CoverageNoticeModal.tsx",
+ "source_location": "L43",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_coveragenoticemodal",
+ "target": "frontend_src_components_map_coveragenoticemodal_props"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/CoverageNoticeModal.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_coveragenoticemodal",
+ "target": "frontend_src_components_map_coveragenoticemodal_readcoveragenoticedismissed"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/CoverageNoticeModal.tsx",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_coveragenoticemodal",
+ "target": "frontend_src_components_map_coveragenoticemodal_writecoveragenoticedismissed"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/CoverageNoticeModal.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_coveragenoticemodal",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/CoverageNoticeModal.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_coveragenoticemodal",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/CoverageNoticeModal.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_coveragenoticemodal",
+ "target": "frontend_src_components_ui_dialog"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/CoverageNoticeModal.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_coveragenoticemodal",
+ "target": "frontend_src_components_ui_dialog_dialogcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/CoverageNoticeModal.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_coveragenoticemodal",
+ "target": "frontend_src_components_ui_dialog_dialogdescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/CoverageNoticeModal.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_coveragenoticemodal",
+ "target": "frontend_src_components_ui_dialog_dialogfooter"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/CoverageNoticeModal.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_coveragenoticemodal",
+ "target": "frontend_src_components_ui_dialog_dialogheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/CoverageNoticeModal.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_coveragenoticemodal",
+ "target": "frontend_src_components_ui_dialog_dialogtitle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_components_map_coveragenoticemodal"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_components_map_coveragenoticemodal_readcoveragenoticedismissed"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L292",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_mappage_mappage",
+ "target": "frontend_src_components_map_coveragenoticemodal_readcoveragenoticedismissed"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/CoverageNoticeModal.tsx",
+ "source_location": "L62",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_coveragenoticemodal_coveragenoticemodal",
+ "target": "frontend_src_components_map_coveragenoticemodal_writecoveragenoticedismissed"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_components_map_coveragenoticemodal_coveragenoticemodal"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/LowerResolutionConsentModal.tsx",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_lowerresolutionconsentmodal",
+ "target": "frontend_src_components_map_lowerresolutionconsentmodal_lowerresolutionconsentmodal"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/LowerResolutionConsentModal.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_lowerresolutionconsentmodal",
+ "target": "frontend_src_components_map_lowerresolutionconsentmodal_props"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/LowerResolutionConsentModal.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_lowerresolutionconsentmodal",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/LowerResolutionConsentModal.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_lowerresolutionconsentmodal",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/LowerResolutionConsentModal.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_lowerresolutionconsentmodal",
+ "target": "frontend_src_components_ui_dialog"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/LowerResolutionConsentModal.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_lowerresolutionconsentmodal",
+ "target": "frontend_src_components_ui_dialog_dialogcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/LowerResolutionConsentModal.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_lowerresolutionconsentmodal",
+ "target": "frontend_src_components_ui_dialog_dialogdescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/LowerResolutionConsentModal.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_lowerresolutionconsentmodal",
+ "target": "frontend_src_components_ui_dialog_dialogfooter"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/LowerResolutionConsentModal.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_lowerresolutionconsentmodal",
+ "target": "frontend_src_components_ui_dialog_dialogheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/LowerResolutionConsentModal.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_lowerresolutionconsentmodal",
+ "target": "frontend_src_components_ui_dialog_dialogtitle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_components_map_lowerresolutionconsentmodal"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_components_map_lowerresolutionconsentmodal_lowerresolutionconsentmodal"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/ManualCoordinateModal.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_manualcoordinatemodal",
+ "target": "frontend_src_components_map_manualcoordinatemodal_bounds"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/ManualCoordinateModal.tsx",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_manualcoordinatemodal",
+ "target": "frontend_src_components_map_manualcoordinatemodal_manualcoordinatemodal"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/ManualCoordinateModal.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_manualcoordinatemodal",
+ "target": "frontend_src_components_map_manualcoordinatemodal_props"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/ManualCoordinateModal.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_manualcoordinatemodal",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/ManualCoordinateModal.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_manualcoordinatemodal",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/ManualCoordinateModal.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_manualcoordinatemodal",
+ "target": "frontend_src_components_ui_dialog"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/ManualCoordinateModal.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_manualcoordinatemodal",
+ "target": "frontend_src_components_ui_dialog_dialogcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/ManualCoordinateModal.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_manualcoordinatemodal",
+ "target": "frontend_src_components_ui_dialog_dialogdescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/ManualCoordinateModal.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_manualcoordinatemodal",
+ "target": "frontend_src_components_ui_dialog_dialogheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/map/ManualCoordinateModal.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_map_manualcoordinatemodal",
+ "target": "frontend_src_components_ui_dialog_dialogtitle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_components_map_manualcoordinatemodal"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_components_map_manualcoordinatemodal_manualcoordinatemodal"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PdfFixedChrome.tsx",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_pdffixedchrome",
+ "target": "frontend_src_components_pdf_pdffixedchrome_footerprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PdfFixedChrome.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_pdffixedchrome",
+ "target": "frontend_src_components_pdf_pdffixedchrome_headerprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PdfFixedChrome.tsx",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_pdffixedchrome",
+ "target": "frontend_src_components_pdf_pdffixedchrome_pdffixedfooter"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PdfFixedChrome.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_pdffixedchrome",
+ "target": "frontend_src_components_pdf_pdffixedchrome_pdffixedheader"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PdfFixedChrome.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_pdffixedchrome",
+ "target": "frontend_src_components_ui_logo"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PdfFixedChrome.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_pdffixedchrome",
+ "target": "frontend_src_components_ui_logo_logo"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PdfFixedChrome.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_pdffixedchrome",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PdfFixedChrome.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_pdffixedchrome",
+ "target": "shared_index_imageryquality"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintReport.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printreport",
+ "target": "frontend_src_components_pdf_pdffixedchrome"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintReport.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printreport",
+ "target": "frontend_src_components_pdf_pdffixedchrome_pdffixedheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintReport.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printreport",
+ "target": "frontend_src_components_pdf_pdffixedchrome_pdffixedfooter"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PdfPageShell.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_pdfpageshell",
+ "target": "frontend_src_components_pdf_pdfpageshell_pdfpageshell"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PdfPageShell.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_pdfpageshell",
+ "target": "frontend_src_components_pdf_pdfpageshell_props"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage1workbench",
+ "target": "frontend_src_components_pdf_pdfpageshell"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_pdf_pdfpageshell"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage1workbench",
+ "target": "frontend_src_components_pdf_pdfpageshell_pdfpageshell"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_pdf_pdfpageshell_pdfpageshell"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage1workbench",
+ "target": "frontend_src_components_pdf_printpage1workbench_printpage1workbench"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage1workbench",
+ "target": "frontend_src_components_pdf_printpage1workbench_props"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L116",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage1workbench",
+ "target": "frontend_src_components_pdf_printpage1workbench_stattile"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage1workbench",
+ "target": "frontend_src_lib_buildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage1workbench",
+ "target": "frontend_src_lib_buildinginsights_parsepaneledits"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage1workbench",
+ "target": "frontend_src_lib_canvastransforms"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage1workbench",
+ "target": "frontend_src_lib_canvastransforms_createcanvasgeo"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage1workbench",
+ "target": "frontend_src_lib_canvastransforms_latlngtopixel"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage1workbench",
+ "target": "frontend_src_lib_canvastransforms_panelmeterstopixels"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage1workbench",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage1workbench",
+ "target": "shared_panelmodels_getpanelmodel"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintReport.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printreport",
+ "target": "frontend_src_components_pdf_printpage1workbench"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/__tests__/PrintPage1Workbench.test.tsx",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_tests_printpage1workbench_test",
+ "target": "frontend_src_components_pdf_printpage1workbench"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_pdf_printpage1workbench_printpage1workbench",
+ "target": "frontend_src_lib_buildinginsights_parsepaneledits"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_pdf_printpage1workbench_printpage1workbench",
+ "target": "frontend_src_lib_canvastransforms_createcanvasgeo"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L41",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_pdf_printpage1workbench_printpage1workbench",
+ "target": "frontend_src_lib_canvastransforms_latlngtopixel"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_pdf_printpage1workbench_printpage1workbench",
+ "target": "frontend_src_lib_canvastransforms_panelmeterstopixels"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/pdf/PrintPage1Workbench.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_pdf_printpage1workbench_printpage1workbench",
+ "target": "shared_panelmodels_getpanelmodel"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintReport.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printreport",
+ "target": "frontend_src_components_pdf_printpage1workbench_printpage1workbench"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/__tests__/PrintPage1Workbench.test.tsx",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_tests_printpage1workbench_test",
+ "target": "frontend_src_components_pdf_printpage1workbench_printpage1workbench"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_pdf_analysis_pdfanalysischarts"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_pdf_analysis_pdfanalysischarts_pdfbillcomparisonchart"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_pdf_analysis_pdfanalysischarts_pdfcumulativesavingschart"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel_buildpdfanalysisviewmodel"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_pdf_analysis_pdfsummarycards"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_pdf_analysis_pdfsummarycards_summarycard"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_pdf_analysis_pdfsystemcost"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_pdf_analysis_pdfsystemcost_pdfsystemcost"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_pdf_printpage2analysis_printpage2analysis"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_pdf_printpage2analysis_props"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_ui_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_ui_card_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_components_ui_card_cardcontent"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_hooks_usetheme"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_hooks_usetheme_usetheme"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_lib_analysis"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_lib_analysis_analysis_disclaimer_keys"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_lib_analysis_presentation_azimuthtocompass"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_lib_analysis_presentation_month_labels"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_lib_constants"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_lib_constants_getcharttooltipstyle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printpage2analysis",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintReport.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printreport",
+ "target": "frontend_src_components_pdf_printpage2analysis"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_pdf_printpage2analysis_printpage2analysis",
+ "target": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel_buildpdfanalysisviewmodel"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_pdf_printpage2analysis_printpage2analysis",
+ "target": "frontend_src_hooks_usetheme_usetheme"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L112",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_pdf_printpage2analysis_printpage2analysis",
+ "target": "frontend_src_lib_analysis_presentation_azimuthtocompass"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_pdf_printpage2analysis_printpage2analysis",
+ "target": "frontend_src_lib_constants_getcharttooltipstyle"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/pdf/PrintPage2Analysis.tsx",
+ "source_location": "L84",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_pdf_printpage2analysis_printpage2analysis",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintReport.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printreport",
+ "target": "frontend_src_components_pdf_printpage2analysis_printpage2analysis"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintReport.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printreport",
+ "target": "frontend_src_components_pdf_printreport_printreport"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/PrintReport.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_printreport",
+ "target": "frontend_src_components_pdf_printreport_printreportprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PdfPreviewPage.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_pdfpreviewpage",
+ "target": "frontend_src_components_pdf_printreport"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PdfPreviewPage.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_pdfpreviewpage",
+ "target": "frontend_src_components_pdf_printreport_printreport"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysischarts",
+ "target": "frontend_src_components_pdf_analysis_pdfanalysischarts_pdfbillcomparisonchart"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L111",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysischarts",
+ "target": "frontend_src_components_pdf_analysis_pdfanalysischarts_pdfcumulativesavingschart"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysischarts",
+ "target": "frontend_src_components_pdf_analysis_pdfanalysischarts_tooltipstyle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysischarts",
+ "target": "frontend_src_components_ui_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysischarts",
+ "target": "frontend_src_components_ui_card_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysischarts",
+ "target": "frontend_src_components_ui_card_cardcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysischarts",
+ "target": "frontend_src_components_ui_card_carddescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysischarts",
+ "target": "frontend_src_components_ui_card_cardheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysischarts",
+ "target": "frontend_src_components_ui_card_cardtitle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysischarts",
+ "target": "frontend_src_lib_analysis"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysischarts",
+ "target": "frontend_src_lib_analysis_presentation_analysischartdatapoint"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysischarts",
+ "target": "frontend_src_lib_constants"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysischarts",
+ "target": "frontend_src_lib_constants_colors"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfAnalysisCharts.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysischarts",
+ "target": "frontend_src_lib_constants_getcharttooltipstyle"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSummaryCards.tsx",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsummarycards",
+ "target": "frontend_src_components_pdf_analysis_pdfsummarycards_summarycard"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSummaryCards.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsummarycards",
+ "target": "frontend_src_components_pdf_analysis_pdfsummarycards_summarytile"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSummaryCards.tsx",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsummarycards",
+ "target": "frontend_src_components_ui_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSummaryCards.tsx",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsummarycards",
+ "target": "frontend_src_components_ui_card_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSummaryCards.tsx",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsummarycards",
+ "target": "frontend_src_components_ui_card_cardcontent"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "frontend_src_components_pdf_analysis_pdfsummarycards"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "frontend_src_components_pdf_analysis_pdfsummarycards_summarytile"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "frontend_src_components_pdf_analysis_pdfsystemcost_pdfsystemcost"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "frontend_src_components_pdf_analysis_pdfsystemcost_segment"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "frontend_src_components_pdf_analysis_pdfsystemcost_segment_colors"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "frontend_src_components_ui_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "frontend_src_components_ui_card_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "frontend_src_components_ui_card_cardcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "frontend_src_components_ui_card_carddescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "frontend_src_components_ui_card_cardheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "frontend_src_components_ui_card_cardtitle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "frontend_src_lib_constants"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "frontend_src_lib_constants_getcharttooltipstyle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "shared_costmodel_costbreakdown"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "shared_costmodel_rooftype"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost",
+ "target": "shared_index"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/pdf/analysis/PdfSystemCost.tsx",
+ "source_location": "L131",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_pdf_analysis_pdfsystemcost_pdfsystemcost",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L56",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel_buildpdfanalysisviewmodel"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel_pdfanalysisviewmodel"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "frontend_src_lib_analysis"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "frontend_src_lib_analysis_config_analysismode"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "frontend_src_lib_analysis_config_inverterreplacement"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "frontend_src_lib_analysis_presentation_analysischartdatapoint"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "frontend_src_lib_analysis_presentation_buildmonthlybillchartdata"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "frontend_src_lib_analysis_presentation_layoutorientationsummary"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "frontend_src_lib_analysis_presentation_summarizelayoutorientation"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "frontend_src_lib_analysis_projections_computedegradedsavings"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "frontend_src_lib_analysis_projections_normalizeinverterreplacements"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "frontend_src_lib_analysis_results_analysisresultsrecord"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "frontend_src_lib_buildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "frontend_src_lib_buildinginsights_parsebuildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "frontend_src_lib_buildinginsights_parsepaneledits"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "shared_costmodel_computesystemcost"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "shared_costmodel_costbreakdown"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "shared_costmodel_rooftype"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel",
+ "target": "shared_panelmodels_getpanelmodel"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L93",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel_buildpdfanalysisviewmodel",
+ "target": "frontend_src_lib_analysis_presentation_buildmonthlybillchartdata"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L86",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel_buildpdfanalysisviewmodel",
+ "target": "frontend_src_lib_analysis_presentation_summarizelayoutorientation"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L112",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel_buildpdfanalysisviewmodel",
+ "target": "frontend_src_lib_analysis_projections_computedegradedsavings"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L75",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel_buildpdfanalysisviewmodel",
+ "target": "frontend_src_lib_analysis_projections_normalizeinverterreplacements"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L82",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel_buildpdfanalysisviewmodel",
+ "target": "frontend_src_lib_buildinginsights_parsebuildinginsights"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L60",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel_buildpdfanalysisviewmodel",
+ "target": "frontend_src_lib_buildinginsights_parsepaneledits"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L96",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel_buildpdfanalysisviewmodel",
+ "target": "shared_costmodel_computesystemcost"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/pdf/analysis/pdfAnalysisViewModel.ts",
+ "source_location": "L61",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_pdf_analysis_pdfanalysisviewmodel_buildpdfanalysisviewmodel",
+ "target": "shared_panelmodels_getpanelmodel"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dropdownmenu",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenu"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L100",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dropdownmenu",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenucheckboxitem"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L60",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dropdownmenu",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenucontent"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L82",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dropdownmenu",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenuitem"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L145",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dropdownmenu",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenulabel"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L123",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dropdownmenu",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenuradioitem"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L159",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dropdownmenu",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenuseparator"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L167",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dropdownmenu",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenushortcut"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L45",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dropdownmenu",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenusubcontent"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dropdownmenu",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenusubtrigger"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dropdownmenu",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dropdownmenu",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_ui_dropdownmenu"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_faqpage",
+ "target": "frontend_src_components_ui_dropdownmenu"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenu"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_faqpage",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenu"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenucontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_faqpage",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenucontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenuradioitem"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_faqpage",
+ "target": "frontend_src_components_ui_dropdownmenu_dropdownmenuradioitem"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/ui/DropdownMenu.tsx",
+ "source_location": "L168",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_ui_dropdownmenu_dropdownmenushortcut",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/GuidedTour.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_guidedtour",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/GuidedTour.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_guidedtour",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/GuidedTour.tsx",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_guidedtour",
+ "target": "frontend_src_components_ui_guidedtour_getmodalposition"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/GuidedTour.tsx",
+ "source_location": "L175",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_guidedtour",
+ "target": "frontend_src_components_ui_guidedtour_guidedtour"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/GuidedTour.tsx",
+ "source_location": "L84",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_guidedtour",
+ "target": "frontend_src_components_ui_guidedtour_guidedtourmodal"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/GuidedTour.tsx",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_guidedtour",
+ "target": "frontend_src_components_ui_guidedtour_tourstep"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/workbenchTour.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_workbenchtour",
+ "target": "frontend_src_components_ui_guidedtour"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_ui_guidedtour"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_components_ui_guidedtour"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_ui_guidedtour"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/workbenchTour.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_workbenchtour",
+ "target": "frontend_src_components_ui_guidedtour_tourstep"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_ui_guidedtour_tourstep"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/GuidedTour.tsx",
+ "source_location": "L94",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_guidedtour_guidedtourmodal",
+ "target": "frontend_src_components_ui_guidedtour_getmodalposition"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_ui_guidedtour_guidedtour"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_components_ui_guidedtour_guidedtour"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_ui_guidedtour_guidedtour"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/ImagePopup.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_imagepopup",
+ "target": "frontend_src_components_ui_imagepopup_imagepopup"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/ImagePopup.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_imagepopup",
+ "target": "frontend_src_components_ui_imagepopup_imagepopupprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_ui_imagepopup"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_ui_imagepopup_imagepopup"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/InfoTooltip.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_infotooltip",
+ "target": "frontend_src_components_ui_infotooltip_infotooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/InfoTooltip.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_infotooltip",
+ "target": "frontend_src_components_ui_tooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/InfoTooltip.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_infotooltip",
+ "target": "frontend_src_components_ui_tooltip_tooltipcontent"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/InfoTooltip.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_infotooltip",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/InfoTooltip.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_infotooltip",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_ui_infotooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panelmodeldrawer",
+ "target": "frontend_src_components_ui_infotooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_ui_infotooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_ui_infotooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_ui_infotooltip"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/ui/InfoTooltip.tsx",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_ui_infotooltip_infotooltip",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_ui_infotooltip_infotooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panelmodeldrawer",
+ "target": "frontend_src_components_ui_infotooltip_infotooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_ui_infotooltip_infotooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_ui_infotooltip_infotooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_ui_infotooltip_infotooltip"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/LoadingOverlay.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_loadingoverlay",
+ "target": "frontend_src_components_ui_loadingoverlay_default_hints"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/LoadingOverlay.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_loadingoverlay",
+ "target": "frontend_src_components_ui_loadingoverlay_loadingoverlay"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_ui_loadingoverlay"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_components_ui_loadingoverlay"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_ui_loadingoverlay"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_ui_loadingoverlay_loadingoverlay"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_components_ui_loadingoverlay_loadingoverlay"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_ui_loadingoverlay_loadingoverlay"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/Logo.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_logo",
+ "target": "frontend_src_components_ui_logo_logo"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/Logo.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_logo",
+ "target": "frontend_src_components_ui_logo_logoprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/Logo.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_logo",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/Logo.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_logo",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_components_ui_logo"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PrivacyPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_privacypage",
+ "target": "frontend_src_components_ui_logo"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signinpage",
+ "target": "frontend_src_components_ui_logo"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signuppage",
+ "target": "frontend_src_components_ui_logo"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/ui/Logo.tsx",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_ui_logo_logo",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_components_ui_logo_logo"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PrivacyPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_privacypage",
+ "target": "frontend_src_components_ui_logo_logo"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signinpage",
+ "target": "frontend_src_components_ui_logo_logo"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signuppage",
+ "target": "frontend_src_components_ui_logo_logo"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/NotificationPopover.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_notificationpopover",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/NotificationPopover.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_notificationpopover",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/NotificationPopover.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_notificationpopover",
+ "target": "frontend_src_components_ui_notificationpopover_notification"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/NotificationPopover.tsx",
+ "source_location": "L49",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_notificationpopover",
+ "target": "frontend_src_components_ui_notificationpopover_notificationpopover"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/NotificationPopover.tsx",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_notificationpopover",
+ "target": "frontend_src_components_ui_notificationpopover_usenotifications"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/NotificationPopover.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_notificationpopover",
+ "target": "frontend_src_lib_notificationstore"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/NotificationPopover.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_notificationpopover",
+ "target": "frontend_src_lib_notificationstore_notificationstore"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_components_ui_notificationpopover"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/notificationStore.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_notificationstore",
+ "target": "frontend_src_components_ui_notificationpopover_notification"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_components_ui_notificationpopover_notification"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/NotificationPopover.tsx",
+ "source_location": "L52",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_notificationpopover_notificationpopover",
+ "target": "frontend_src_components_ui_notificationpopover_usenotifications"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/badge.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_badge",
+ "target": "frontend_src_components_ui_badge_badge"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/badge.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_badge",
+ "target": "frontend_src_components_ui_badge_badgeprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/badge.tsx",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_badge",
+ "target": "frontend_src_components_ui_badge_badgevariants"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/badge.tsx",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_badge",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/badge.tsx",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_badge",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_ui_badge"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/badge.tsx",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_badge_badge",
+ "target": "frontend_src_components_ui_badge_badgevariants"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/ui/badge.tsx",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_ui_badge_badge",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_ui_badge_badge"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/button.tsx",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_button",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/button.tsx",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_button",
+ "target": "frontend_src_components_ui_button_buttonprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/button.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_button",
+ "target": "frontend_src_components_ui_button_buttonvariants"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/button.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_button",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/button.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_button",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_faqpage",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/NotFoundPage.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_notfoundpage",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signinpage",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signuppage",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_ui_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_faqpage",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/NotFoundPage.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_notfoundpage",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signinpage",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signuppage",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_ui_button_button"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/card.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_card",
+ "target": "frontend_src_components_ui_card_card"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/card.tsx",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_card",
+ "target": "frontend_src_components_ui_card_cardcontent"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/card.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_card",
+ "target": "frontend_src_components_ui_card_carddescription"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/card.tsx",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_card",
+ "target": "frontend_src_components_ui_card_cardfooter"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/card.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_card",
+ "target": "frontend_src_components_ui_card_cardheader"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/card.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_card",
+ "target": "frontend_src_components_ui_card_cardtitle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/card.tsx",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_card",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/card.tsx",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_card",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_ui_card"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_ui_card"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_components_ui_card"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_ui_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_ui_card_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_ui_card_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_components_ui_card_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_ui_card_card"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_ui_card_cardheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_ui_card_cardheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_components_ui_card_cardheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_ui_card_cardheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_ui_card_cardtitle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_ui_card_cardtitle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_components_ui_card_cardtitle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_ui_card_cardtitle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_ui_card_carddescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_ui_card_carddescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_components_ui_card_carddescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_ui_card_carddescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_ui_card_cardcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_ui_card_cardcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_components_ui_card_cardcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_ui_card_cardcontent"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/dialog.tsx",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dialog",
+ "target": "frontend_src_components_ui_dialog_dialogcontent"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/dialog.tsx",
+ "source_location": "L83",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dialog",
+ "target": "frontend_src_components_ui_dialog_dialogdescription"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/dialog.tsx",
+ "source_location": "L66",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dialog",
+ "target": "frontend_src_components_ui_dialog_dialogfooter"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/dialog.tsx",
+ "source_location": "L61",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dialog",
+ "target": "frontend_src_components_ui_dialog_dialogheader"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/dialog.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dialog",
+ "target": "frontend_src_components_ui_dialog_dialogoverlay"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/dialog.tsx",
+ "source_location": "L71",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dialog",
+ "target": "frontend_src_components_ui_dialog_dialogtitle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/dialog.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dialog",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/dialog.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_dialog",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_ui_dialog"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_ui_dialog"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_ui_dialog"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_ui_dialog_dialogcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_ui_dialog_dialogcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_ui_dialog_dialogcontent"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/ui/dialog.tsx",
+ "source_location": "L62",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_ui_dialog_dialogheader",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_ui_dialog_dialogheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_ui_dialog_dialogheader"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_ui_dialog_dialogheader"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/ui/dialog.tsx",
+ "source_location": "L67",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_ui_dialog_dialogfooter",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_ui_dialog_dialogfooter"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_ui_dialog_dialogfooter"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_ui_dialog_dialogfooter"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_ui_dialog_dialogtitle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_ui_dialog_dialogtitle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_ui_dialog_dialogtitle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_ui_dialog_dialogdescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_ui_dialog_dialogdescription"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_ui_dialog_dialogdescription"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/input.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_input",
+ "target": "frontend_src_components_ui_input_input"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/input.tsx",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_input",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/input.tsx",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_input",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_ui_input"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_faqpage",
+ "target": "frontend_src_components_ui_input"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_ui_input"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signinpage",
+ "target": "frontend_src_components_ui_input"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signuppage",
+ "target": "frontend_src_components_ui_input"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_ui_input_input"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_faqpage",
+ "target": "frontend_src_components_ui_input_input"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_ui_input_input"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signinpage",
+ "target": "frontend_src_components_ui_input_input"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signuppage",
+ "target": "frontend_src_components_ui_input_input"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/label.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_label",
+ "target": "frontend_src_components_ui_label_label"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/label.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_label",
+ "target": "frontend_src_components_ui_label_labelvariants"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/label.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_label",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/label.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_label",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_ui_label"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_ui_label"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_ui_label"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_ui_label"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signinpage",
+ "target": "frontend_src_components_ui_label"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signuppage",
+ "target": "frontend_src_components_ui_label"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_ui_label_label"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_ui_label_label"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_ui_label_label"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_ui_label_label"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signinpage",
+ "target": "frontend_src_components_ui_label_label"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signuppage",
+ "target": "frontend_src_components_ui_label_label"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/separator.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_separator",
+ "target": "frontend_src_components_ui_separator_separator"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/separator.tsx",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_separator",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/separator.tsx",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_separator",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/skeleton.tsx",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_skeleton",
+ "target": "frontend_src_components_ui_skeleton_skeleton"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/skeleton.tsx",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_skeleton",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/skeleton.tsx",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_skeleton",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_ui_skeleton"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/ui/skeleton.tsx",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_ui_skeleton_skeleton",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_ui_skeleton_skeleton"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/slider.tsx",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_slider",
+ "target": "frontend_src_components_ui_slider_slider"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/slider.tsx",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_slider",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/slider.tsx",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_slider",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_ui_slider"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_ui_slider"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_ui_slider_slider"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_ui_slider_slider"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/toastConfig.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_toastconfig",
+ "target": "frontend_src_components_ui_toastconfig_base_style"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/toastConfig.tsx",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_toastconfig",
+ "target": "frontend_src_components_ui_toastconfig_baseoptions"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/toastConfig.tsx",
+ "source_location": "L42",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_toastconfig",
+ "target": "frontend_src_components_ui_toastconfig_notify"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/toastConfig.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_toastconfig",
+ "target": "frontend_src_lib_notificationstore"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/toastConfig.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_toastconfig",
+ "target": "frontend_src_lib_notificationstore_notificationstore"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysispdf",
+ "target": "frontend_src_components_ui_toastconfig"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAuth.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useauth",
+ "target": "frontend_src_components_ui_toastconfig"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L43",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_components_ui_toastconfig"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useOverlayImages.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useoverlayimages",
+ "target": "frontend_src_components_ui_toastconfig"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchSave.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchsave",
+ "target": "frontend_src_components_ui_toastconfig"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_ui_toastconfig"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_components_ui_toastconfig"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_ui_toastconfig"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysispdf",
+ "target": "frontend_src_components_ui_toastconfig_notify"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAuth.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useauth",
+ "target": "frontend_src_components_ui_toastconfig_notify"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L43",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_components_ui_toastconfig_notify"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useOverlayImages.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useoverlayimages",
+ "target": "frontend_src_components_ui_toastconfig_notify"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchSave.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchsave",
+ "target": "frontend_src_components_ui_toastconfig_notify"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_components_ui_toastconfig_notify"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_components_ui_toastconfig_notify"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_components_ui_toastconfig_notify"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/tooltip.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_tooltip",
+ "target": "frontend_src_components_ui_tooltip_tooltipcontent"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/tooltip.tsx",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_tooltip",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/ui/tooltip.tsx",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_ui_tooltip",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_components_ui_tooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/ToolButton.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_toolbutton",
+ "target": "frontend_src_components_ui_tooltip"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_ui_tooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/ToolButton.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_toolbutton",
+ "target": "frontend_src_components_ui_tooltip_tooltipcontent"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_components_ui_tooltip_tooltipcontent"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L55",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_components_workbench_canvascontrols_canvascontrols"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_components_workbench_canvascontrols_canvascontrolsprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_components_workbench_toolbaricons"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_components_workbench_toolbaricons_collapseicon"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_components_workbench_toolbaricons_deleteicon"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_components_workbench_toolbaricons_expandicon"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_components_workbench_toolbaricons_layersicon"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_components_workbench_toolbaricons_marqueeicon"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_components_workbench_toolbaricons_redoicon"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_components_workbench_toolbaricons_rotateicon"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_components_workbench_toolbaricons_snapicon"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_components_workbench_toolbaricons_undoicon"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_components_workbench_toolbutton"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_components_workbench_toolbutton_swatchbutton"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_components_workbench_toolbutton_toolbutton"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_components_workbench_toolbutton_tooltipstate"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_lib_constants"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_lib_constants_colors"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvascontrols",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_workbench_canvascontrols"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/workbench/CanvasControls.tsx",
+ "source_location": "L183",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_workbench_canvascontrols_canvascontrols",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_workbench_canvascontrols_canvascontrols"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasLegends.tsx",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvaslegends",
+ "target": "frontend_src_components_workbench_canvaslegends_canvaslegends"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasLegends.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvaslegends",
+ "target": "frontend_src_components_workbench_canvaslegends_canvaslegendsprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasLegends.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvaslegends",
+ "target": "frontend_src_components_workbench_canvaslegends_segmenthull"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasLegends.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvaslegends",
+ "target": "frontend_src_hooks_useoverlayimages"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasLegends.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvaslegends",
+ "target": "frontend_src_hooks_useoverlayimages_overlaymode"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasLegends.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvaslegends",
+ "target": "frontend_src_lib_constants"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/CanvasLegends.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_canvaslegends",
+ "target": "frontend_src_lib_constants_colors"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_workbench_canvaslegends"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_workbench_canvaslegends_canvaslegends"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/GroupRotationHandle.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_grouprotationhandle",
+ "target": "frontend_src_components_workbench_grouprotationhandle_grouppanel"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/GroupRotationHandle.tsx",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_grouprotationhandle",
+ "target": "frontend_src_components_workbench_grouprotationhandle_grouprotationhandle"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/GroupRotationHandle.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_grouprotationhandle",
+ "target": "frontend_src_components_workbench_grouprotationhandle_grouprotationhandleprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/GroupRotationHandle.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_grouprotationhandle",
+ "target": "frontend_src_lib_workbench_handlemetrics"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/GroupRotationHandle.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_grouprotationhandle",
+ "target": "frontend_src_lib_workbench_handlemetrics_group_rotation_handle_metrics"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panellayer",
+ "target": "frontend_src_components_workbench_grouprotationhandle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panellayer",
+ "target": "frontend_src_components_workbench_grouprotationhandle_grouprotationhandle"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/IrradianceGlow.tsx",
+ "source_location": "L55",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_irradianceglow",
+ "target": "frontend_src_components_workbench_irradianceglow_irradianceglow"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/IrradianceGlow.tsx",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_irradianceglow",
+ "target": "frontend_src_components_workbench_irradianceglow_irradianceglowprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/IrradianceGlow.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_irradianceglow",
+ "target": "frontend_src_components_workbench_irradianceglow_month_labels"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/IrradianceGlow.tsx",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_irradianceglow",
+ "target": "frontend_src_components_workbench_irradianceglow_monthly_azimuth"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/IrradianceGlow.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_irradianceglow",
+ "target": "frontend_src_components_workbench_irradianceglow_monthly_irradiance"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useIrradiance.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useirradiance",
+ "target": "frontend_src_components_workbench_irradianceglow"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_workbench_irradianceglow"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_workbench_irradianceglow_month_labels"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useIrradiance.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useirradiance",
+ "target": "frontend_src_components_workbench_irradianceglow_monthly_irradiance"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useIrradiance.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useirradiance",
+ "target": "frontend_src_components_workbench_irradianceglow_monthly_azimuth"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_workbench_irradianceglow_monthly_azimuth"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_workbench_layoutpresetmodal_billlabel"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L43",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_workbench_layoutpresetmodal_goal"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L57",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_workbench_layoutpresetmodal_layoutpresetmodal"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L45",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_components_workbench_layoutpresetmodal_layoutpresetmodalprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "shared_layoutpreferences_bill_range_to_kwh_per_month"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "shared_layoutpreferences_billrange"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "shared_layoutpreferences_layoutpreferences"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "shared_layoutpreferences_roofdirection"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal",
+ "target": "shared_layoutpreferences_sizinggoal"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_workbench_layoutpresetmodal"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L61",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_layoutpresetmodal_layoutpresetmodal",
+ "target": "frontend_src_components_workbench_layoutpresetmodal_billlabel"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/workbench/LayoutPresetModal.tsx",
+ "source_location": "L246",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_workbench_layoutpresetmodal_layoutpresetmodal",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_workbench_layoutpresetmodal_layoutpresetmodal"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L49",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panellayer",
+ "target": "frontend_src_components_workbench_panellayer_getpanelcolorbyratio"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L41",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panellayer",
+ "target": "frontend_src_components_workbench_panellayer_panelannualenergy"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L61",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panellayer",
+ "target": "frontend_src_components_workbench_panellayer_panellayer"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panellayer",
+ "target": "frontend_src_components_workbench_panellayer_panellayerprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panellayer",
+ "target": "frontend_src_components_workbench_panellayer_renderpanel"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panellayer",
+ "target": "frontend_src_components_workbench_panelrect"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panellayer",
+ "target": "frontend_src_components_workbench_panelrect_panelrect"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panellayer",
+ "target": "frontend_src_components_workbench_rotationhandle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panellayer",
+ "target": "frontend_src_components_workbench_rotationhandle_rotationhandle"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panellayer",
+ "target": "frontend_src_hooks_usepanelstate"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panellayer",
+ "target": "frontend_src_hooks_usepanelstate_workbenchpanelstate"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panellayer",
+ "target": "frontend_src_lib_buildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panellayer",
+ "target": "frontend_src_lib_buildinginsights_annualenergyfrommonthly"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_workbench_panellayer"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L43",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panellayer_panelannualenergy",
+ "target": "frontend_src_lib_buildinginsights_annualenergyfrommonthly"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L85",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panellayer_panellayer",
+ "target": "frontend_src_components_workbench_panellayer_panelannualenergy"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelLayer.tsx",
+ "source_location": "L108",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panellayer_panellayer",
+ "target": "frontend_src_components_workbench_panellayer_getpanelcolorbyratio"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_workbench_panellayer_panellayer"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panelmodeldrawer",
+ "target": "frontend_src_components_workbench_panelmodeldrawer_model_cell_colors"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L107",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panelmodeldrawer",
+ "target": "frontend_src_components_workbench_panelmodeldrawer_modelcard"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panelmodeldrawer",
+ "target": "frontend_src_components_workbench_panelmodeldrawer_panelmodeldrawer"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panelmodeldrawer",
+ "target": "frontend_src_components_workbench_panelmodeldrawer_panelmodeldrawerprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panelmodeldrawer",
+ "target": "frontend_src_components_workbench_panelmodeldrawer_panelpreview3d"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panelmodeldrawer",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panelmodeldrawer",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panelmodeldrawer",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panelmodeldrawer",
+ "target": "shared_panelmodels_panel_models"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panelmodeldrawer",
+ "target": "shared_paneltypes_panelmodel"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_workbench_panelmodeldrawer"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L49",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_workbench_panelmodeldrawer_panelmodeldrawer",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "references",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_workbench_panelmodeldrawer_panelmodeldrawer",
+ "target": "shared_panelmodels_panel_models"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_workbench_panelmodeldrawer_panelmodeldrawer"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/workbench/PanelModelDrawer.tsx",
+ "source_location": "L120",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_workbench_panelmodeldrawer_modelcard",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelPreview3D.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panelpreview3d",
+ "target": "frontend_src_components_workbench_panelpreview3d_panelmesh"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelPreview3D.tsx",
+ "source_location": "L108",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panelpreview3d",
+ "target": "frontend_src_components_workbench_panelpreview3d_panelpreview3d"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelPreview3D.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panelpreview3d",
+ "target": "frontend_src_components_workbench_panelpreview3d_panelpreview3dprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelRect.tsx",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panelrect",
+ "target": "frontend_src_components_workbench_panelrect_getcursor"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelRect.tsx",
+ "source_location": "L128",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panelrect",
+ "target": "frontend_src_components_workbench_panelrect_panelrect"
+ },
+ {
+ "relation": "indirect_call",
+ "confidence": "INFERRED",
+ "source_file": "frontend/src/components/workbench/PanelRect.tsx",
+ "source_location": "L128",
+ "weight": 1.0,
+ "_origin": "ast",
+ "context": "argument",
+ "confidence_score": 0.5,
+ "source": "frontend_src_components_workbench_panelrect",
+ "target": "frontend_src_components_workbench_panelrect_panelrectinternal"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelRect.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panelrect",
+ "target": "frontend_src_components_workbench_panelrect_panelrectprops"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/PanelRect.tsx",
+ "source_location": "L98",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_panelrect_panelrectinternal",
+ "target": "frontend_src_components_workbench_panelrect_getcursor"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/RotationHandle.tsx",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_rotationhandle",
+ "target": "frontend_src_components_workbench_rotationhandle_rotationhandle"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/RotationHandle.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_rotationhandle",
+ "target": "frontend_src_components_workbench_rotationhandle_rotationhandleprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/RotationHandle.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_rotationhandle",
+ "target": "frontend_src_lib_workbench_handlemetrics"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/RotationHandle.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_rotationhandle",
+ "target": "frontend_src_lib_workbench_handlemetrics_rotation_handle_metrics"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/ToolButton.tsx",
+ "source_location": "L94",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_toolbutton",
+ "target": "frontend_src_components_workbench_toolbutton_swatchbutton"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/ToolButton.tsx",
+ "source_location": "L81",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_toolbutton",
+ "target": "frontend_src_components_workbench_toolbutton_swatchbuttonprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/ToolButton.tsx",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_toolbutton",
+ "target": "frontend_src_components_workbench_toolbutton_toolbutton"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/ToolButton.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_toolbutton",
+ "target": "frontend_src_components_workbench_toolbutton_toolbuttonprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/ToolButton.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_toolbutton",
+ "target": "frontend_src_components_workbench_toolbutton_tooltipstate"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/ToolButton.tsx",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_toolbutton",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/ToolButton.tsx",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_toolbutton",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/workbench/ToolButton.tsx",
+ "source_location": "L58",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_workbench_toolbutton_toolbutton",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/workbench/ToolButton.tsx",
+ "source_location": "L116",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_workbench_toolbutton_swatchbutton",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_toolbaricons",
+ "target": "frontend_src_components_workbench_toolbaricons_collapseicon"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L99",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_toolbaricons",
+ "target": "frontend_src_components_workbench_toolbaricons_deleteicon"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_toolbaricons",
+ "target": "frontend_src_components_workbench_toolbaricons_expandicon"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L120",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_toolbaricons",
+ "target": "frontend_src_components_workbench_toolbaricons_layersicon"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L62",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_toolbaricons",
+ "target": "frontend_src_components_workbench_toolbaricons_marqueeicon"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L52",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_toolbaricons",
+ "target": "frontend_src_components_workbench_toolbaricons_redoicon"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L110",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_toolbaricons",
+ "target": "frontend_src_components_workbench_toolbaricons_rotateicon"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L86",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_toolbaricons",
+ "target": "frontend_src_components_workbench_toolbaricons_snapicon"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_toolbaricons",
+ "target": "frontend_src_components_workbench_toolbaricons_svgprops"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/ToolbarIcons.tsx",
+ "source_location": "L42",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_toolbaricons",
+ "target": "frontend_src_components_workbench_toolbaricons_undoicon"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchHintOverlay.tsx",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchhintoverlay",
+ "target": "frontend_src_components_workbench_workbenchhintoverlay_props"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchHintOverlay.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchhintoverlay",
+ "target": "frontend_src_components_workbench_workbenchhintoverlay_readpermanentdismiss"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchHintOverlay.tsx",
+ "source_location": "L48",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchhintoverlay",
+ "target": "frontend_src_components_workbench_workbenchhintoverlay_workbenchhintoverlay"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchHintOverlay.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchhintoverlay",
+ "target": "frontend_src_components_workbench_workbenchhintoverlay_writepermanentdismiss"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_workbench_workbenchhintoverlay"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchHintOverlay.tsx",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchhintoverlay_workbenchhintoverlay",
+ "target": "frontend_src_components_workbench_workbenchhintoverlay_readpermanentdismiss"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchHintOverlay.tsx",
+ "source_location": "L122",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchhintoverlay_workbenchhintoverlay",
+ "target": "frontend_src_components_workbench_workbenchhintoverlay_writepermanentdismiss"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_workbench_workbenchhintoverlay_workbenchhintoverlay"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_workbench_workbenchsidebar_selectedpaneldata"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_workbench_workbenchsidebar_uimessage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L65",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_workbench_workbenchsidebar_workbenchsidebar"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_components_workbench_workbenchsidebar_workbenchsidebarprops"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_hooks_usepanelstate"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_hooks_usepanelstate_batchrecomputestatus"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_lib_formatters"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_lib_formatters_formatnumber"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_lib_utils"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "shared_index_imageryquality"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_components_workbench_workbenchsidebar",
+ "target": "shared_paneltypes_panelmodel"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_workbench_workbenchsidebar"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L137",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_workbench_workbenchsidebar_workbenchsidebar",
+ "target": "frontend_src_lib_formatters_formatnumber"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/components/workbench/WorkbenchSidebar.tsx",
+ "source_location": "L194",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_components_workbench_workbenchsidebar_workbenchsidebar",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_components_workbench_workbenchsidebar_workbenchsidebar"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/__tests__/useChat.test.tsx",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_tests_usechat_test",
+ "target": "frontend_src_hooks_tests_usechat_test_buildsseresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/__tests__/useChat.test.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_tests_usechat_test",
+ "target": "frontend_src_hooks_tests_usechat_test_getsessionmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/__tests__/useChat.test.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_tests_usechat_test",
+ "target": "frontend_src_hooks_tests_usechat_test_installfetchmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/__tests__/useChat.test.tsx",
+ "source_location": "L68",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_tests_usechat_test",
+ "target": "frontend_src_hooks_tests_usechat_test_wrapper"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/__tests__/useChat.test.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_tests_usechat_test",
+ "target": "frontend_src_hooks_usechat"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/__tests__/useChat.test.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_tests_usechat_test",
+ "target": "frontend_src_hooks_usechat_usechat"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/__tests__/usePanelState.test.tsx",
+ "source_location": "L50",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_tests_usepanelstate_test",
+ "target": "frontend_src_hooks_tests_usepanelstate_test_roofsegments"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/__tests__/usePanelState.test.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_tests_usepanelstate_test",
+ "target": "frontend_src_hooks_tests_usepanelstate_test_solarpanels"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/__tests__/usePanelState.test.tsx",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_tests_usepanelstate_test",
+ "target": "frontend_src_hooks_usepanelstate"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/__tests__/usePanelState.test.tsx",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_tests_usepanelstate_test",
+ "target": "frontend_src_hooks_usepanelstate_usepanelstate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/__tests__/usePanelStateUndoRedo.test.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_tests_usepanelstateundoredo_test",
+ "target": "frontend_src_hooks_tests_usepanelstateundoredo_test_roofsegments"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/__tests__/usePanelStateUndoRedo.test.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_tests_usepanelstateundoredo_test",
+ "target": "frontend_src_hooks_tests_usepanelstateundoredo_test_setup"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/__tests__/usePanelStateUndoRedo.test.tsx",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_tests_usepanelstateundoredo_test",
+ "target": "frontend_src_hooks_tests_usepanelstateundoredo_test_solarpanels"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/__tests__/usePanelStateUndoRedo.test.tsx",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_tests_usepanelstateundoredo_test",
+ "target": "frontend_src_hooks_usepanelstate"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/__tests__/usePanelStateUndoRedo.test.tsx",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_tests_usepanelstateundoredo_test",
+ "target": "frontend_src_hooks_usepanelstate_usepanelstate"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/__tests__/usePanelStateUndoRedo.test.tsx",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_tests_usepanelstateundoredo_test_setup",
+ "target": "frontend_src_hooks_usepanelstate_usepanelstate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L40",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_hooks_useanalysisform_analysisformstate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L43",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_hooks_useanalysisform_chartdatapoint"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L58",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_hooks_useanalysisform_useanalysisform"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_lib_analysis"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_lib_analysis_config_analysisconfig"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_lib_analysis_config_parsesavedanalysisconfig"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_lib_analysis_presentation_aggregatemonthlygeneration"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_lib_analysis_presentation_applyperformanceratio"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_lib_analysis_presentation_applyseasonalprofile"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_lib_analysis_presentation_buildmonthlybillchartdata"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_lib_analysis_results_buildanalysisresults"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_lib_analysis_results_buildthresholdwarnings"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_lib_billingengine"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_lib_billingengine_runannualsimulation"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_lib_buildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_lib_buildinginsights_parsebuildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "frontend_src_lib_buildinginsights_parsepaneledits"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "shared_costmodel_computesystemcost"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "shared_layoutpreferences_bill_range_to_kwh_per_month"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysisform",
+ "target": "shared_panelmodels_getpanelmodel"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L43",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_hooks_useanalysisform"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L43",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_hooks_useanalysisform_analysisformstate"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L121",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useanalysisform_useanalysisform",
+ "target": "frontend_src_lib_analysis_config_parsesavedanalysisconfig"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L96",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useanalysisform_useanalysisform",
+ "target": "frontend_src_lib_analysis_presentation_aggregatemonthlygeneration"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L98",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useanalysisform_useanalysisform",
+ "target": "frontend_src_lib_analysis_presentation_applyperformanceratio"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L201",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useanalysisform_useanalysisform",
+ "target": "frontend_src_lib_analysis_presentation_applyseasonalprofile"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L225",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useanalysisform_useanalysisform",
+ "target": "frontend_src_lib_analysis_presentation_buildmonthlybillchartdata"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L212",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useanalysisform_useanalysisform",
+ "target": "frontend_src_lib_analysis_results_buildanalysisresults"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L229",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useanalysisform_useanalysisform",
+ "target": "frontend_src_lib_analysis_results_buildthresholdwarnings"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L207",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useanalysisform_useanalysisform",
+ "target": "frontend_src_lib_billingengine_runannualsimulation"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L85",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useanalysisform_useanalysisform",
+ "target": "frontend_src_lib_buildinginsights_parsebuildinginsights"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L89",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useanalysisform_useanalysisform",
+ "target": "frontend_src_lib_buildinginsights_parsepaneledits"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L129",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useanalysisform_useanalysisform",
+ "target": "shared_costmodel_computesystemcost"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useAnalysisForm.ts",
+ "source_location": "L109",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useanalysisform_useanalysisform",
+ "target": "shared_panelmodels_getpanelmodel"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L43",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_hooks_useanalysisform_useanalysisform"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L135",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_analysispage_analysispage",
+ "target": "frontend_src_hooks_useanalysisform_useanalysisform"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysispdf",
+ "target": "frontend_src_hooks_useanalysispdf_buildpdffilename"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysispdf",
+ "target": "frontend_src_hooks_useanalysispdf_sanitizefilename"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysispdf",
+ "target": "frontend_src_hooks_useanalysispdf_triggerdownload"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L54",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysispdf",
+ "target": "frontend_src_hooks_useanalysispdf_useanalysispdf"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysispdf",
+ "target": "frontend_src_hooks_uselocale"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysispdf",
+ "target": "frontend_src_hooks_uselocale_uselocale"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysispdf",
+ "target": "frontend_src_hooks_usetheme"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysispdf",
+ "target": "frontend_src_hooks_usetheme_usetheme"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_hooks_useanalysispdf"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useanalysispdf_buildpdffilename",
+ "target": "frontend_src_hooks_useanalysispdf_sanitizefilename"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L57",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useanalysispdf_useanalysispdf",
+ "target": "frontend_src_hooks_uselocale_uselocale"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useAnalysisPdf.ts",
+ "source_location": "L56",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useanalysispdf_useanalysispdf",
+ "target": "frontend_src_hooks_usetheme_usetheme"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_hooks_useanalysispdf_useanalysispdf"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L137",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_analysispage_analysispage",
+ "target": "frontend_src_hooks_useanalysispdf_useanalysispdf"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAuth.tsx",
+ "source_location": "L41",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useauth",
+ "target": "frontend_src_hooks_useauth_authcontext"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAuth.tsx",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useauth",
+ "target": "frontend_src_hooks_useauth_authcontextvalue"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAuth.tsx",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useauth",
+ "target": "frontend_src_hooks_useauth_authprovider"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAuth.tsx",
+ "source_location": "L135",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useauth",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAuth.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useauth",
+ "target": "frontend_src_lib_supabase"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useAuth.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useauth",
+ "target": "frontend_src_lib_supabase_getsupabase"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_uselocale",
+ "target": "frontend_src_hooks_useauth"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useQuota.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usequota",
+ "target": "frontend_src_hooks_useauth"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/main.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_main",
+ "target": "frontend_src_hooks_useauth"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_hooks_useauth"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_hooks_useauth"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_hooks_useauth"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signinpage",
+ "target": "frontend_src_hooks_useauth"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signuppage",
+ "target": "frontend_src_hooks_useauth"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useAuth.tsx",
+ "source_location": "L48",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useauth_authprovider",
+ "target": "frontend_src_lib_supabase_getsupabase"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/main.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_main",
+ "target": "frontend_src_hooks_useauth_authprovider"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_uselocale",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_uselocale_localeprovider",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useQuota.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usequota",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useQuota.ts",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_usequota_usequota",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L50",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_dashboardpage_dashboardpage",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_landingpage_landingpage",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L66",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_settingspage_settingspage",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signinpage",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_signinpage_signinpage",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signuppage",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_signuppage_signuppage",
+ "target": "frontend_src_hooks_useauth_useauth"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L58",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_hooks_usecanvasinteractions_getplacementerrormessage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L104",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_hooks_usecanvasinteractions_usecanvasinteractions"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L69",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_hooks_usecanvasinteractions_usecanvasinteractionsoptions"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L53",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_hooks_usepanelstate"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L53",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_hooks_usepanelstate_workbenchpanelstate"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L52",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_hooks_useworkbenchdata"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L52",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_hooks_useworkbenchdata_decodedroofmask"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L55",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_buildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L55",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_buildinginsights_roofsegment"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L55",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_buildinginsights_solarpanel"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_canvastransforms"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_canvastransforms_canvasgeo"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_canvastransforms_createcanvasgeo"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_canvastransforms_getrectaabb"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_canvastransforms_getrotatedrectpoints"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_canvastransforms_isaabbinsidestage"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_canvastransforms_ispolygoninsiderastermask"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_canvastransforms_latlngtopixel"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_canvastransforms_obbsoverlap"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_canvastransforms_obbsoverlapwithminseparation"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_canvastransforms_panelmeterstopixels"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_canvastransforms_pixeltolatlng"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L54",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_segmentvisualization"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L54",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_segmentvisualization_computesegmenthulls"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_snapalignment"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_snapalignment_computeoverlapsnap"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_snapalignment_computesnap"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_snapalignment_resolvegroupoverlapescape"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_snapalignment_resolveoverlapescape"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "frontend_src_lib_snapalignment_snapguide"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L56",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L56",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "shared_panelmodels_getpanelmodel"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L56",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "shared_panelmodels_panel_models"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L56",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvasinteractions",
+ "target": "shared_paneltypes_panelmodel"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_usecanvasinteractions"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L161",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_usecanvasinteractions_usecanvasinteractions",
+ "target": "frontend_src_lib_canvastransforms_createcanvasgeo"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L168",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_usecanvasinteractions_usecanvasinteractions",
+ "target": "frontend_src_lib_canvastransforms_latlngtopixel"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L174",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_usecanvasinteractions_usecanvasinteractions",
+ "target": "frontend_src_lib_canvastransforms_panelmeterstopixels"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L195",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_usecanvasinteractions_usecanvasinteractions",
+ "target": "frontend_src_lib_segmentvisualization_computesegmenthulls"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useCanvasInteractions.ts",
+ "source_location": "L328",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_usecanvasinteractions_usecanvasinteractions",
+ "target": "frontend_src_lib_snapalignment_computesnap"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_usecanvasinteractions_usecanvasinteractions"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L218",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_workbenchpage_workbenchpage",
+ "target": "frontend_src_hooks_usecanvasinteractions_usecanvasinteractions"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useCanvasZoom.ts",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usecanvaszoom",
+ "target": "frontend_src_hooks_usecanvaszoom_usecanvaszoom"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_usecanvaszoom"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_usecanvaszoom_usecanvaszoom"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L249",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_workbenchpage_workbenchpage",
+ "target": "frontend_src_hooks_usecanvaszoom_usecanvaszoom"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L77",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "frontend_src_hooks_usechat_buildauthheaders"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L108",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "frontend_src_hooks_usechat_buildhistory"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "frontend_src_hooks_usechat_chatevent"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "frontend_src_hooks_usechat_chatlivestate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "frontend_src_hooks_usechat_chatpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L64",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "frontend_src_hooks_usechat_drainssebuffer"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "frontend_src_hooks_usechat_haslivestate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L101",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "frontend_src_hooks_usechat_normaliselanguage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L52",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "frontend_src_hooks_usechat_parsesseeventblock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L119",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "frontend_src_hooks_usechat_readerrormessage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "frontend_src_hooks_usechat_samplepool"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L133",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "frontend_src_hooks_usechat_usechat"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L90",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "frontend_src_hooks_usechat_usechatreturn"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "frontend_src_lib_supabase"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "frontend_src_lib_supabase_getsupabase"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "shared_layoutpreferences_layoutpreferences"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "shared_paneltypes_paneledit"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "shared_projectdtos_analysisresultsdto"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat",
+ "target": "shared_projectdtos_storedanalysisconfigdto"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L42",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_hooks_usechat"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L42",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_usechat"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L42",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_hooks_usechat_chatlivestate"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L42",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_usechat_chatlivestate"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L226",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat_usechat",
+ "target": "frontend_src_hooks_usechat_haslivestate"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L263",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat_usechat",
+ "target": "frontend_src_hooks_usechat_samplepool"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L71",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat_drainssebuffer",
+ "target": "frontend_src_hooks_usechat_parsesseeventblock"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L307",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat_usechat",
+ "target": "frontend_src_hooks_usechat_parsesseeventblock"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L300",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat_usechat",
+ "target": "frontend_src_hooks_usechat_drainssebuffer"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L78",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat_buildauthheaders",
+ "target": "frontend_src_lib_supabase_getsupabase"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L217",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat_usechat",
+ "target": "frontend_src_hooks_usechat_buildauthheaders"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L223",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat_usechat",
+ "target": "frontend_src_hooks_usechat_normaliselanguage"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L199",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat_usechat",
+ "target": "frontend_src_hooks_usechat_buildhistory"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useChat.ts",
+ "source_location": "L239",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usechat_usechat",
+ "target": "frontend_src_hooks_usechat_readerrormessage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useGoogleMaps.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usegooglemaps",
+ "target": "frontend_src_hooks_usegooglemaps_ensureloaded"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useGoogleMaps.ts",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usegooglemaps",
+ "target": "frontend_src_hooks_usegooglemaps_loader"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useGoogleMaps.ts",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usegooglemaps",
+ "target": "frontend_src_hooks_usegooglemaps_usegooglemaps"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_hooks_usegooglemaps"
+ },
+ {
+ "relation": "references",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useGoogleMaps.ts",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_usegooglemaps_ensureloaded",
+ "target": "frontend_src_hooks_usegooglemaps_loader"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useGoogleMaps.ts",
+ "source_location": "L58",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usegooglemaps_usegooglemaps",
+ "target": "frontend_src_hooks_usegooglemaps_ensureloaded"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_hooks_usegooglemaps_usegooglemaps"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_mappage_mappage",
+ "target": "frontend_src_hooks_usegooglemaps_usegooglemaps"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useIrradiance.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useirradiance",
+ "target": "frontend_src_hooks_useirradiance_useirradiance"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_useirradiance"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_useirradiance_useirradiance"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L84",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_workbenchpage_workbenchpage",
+ "target": "frontend_src_hooks_useirradiance_useirradiance"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_uselocale",
+ "target": "frontend_src_hooks_uselocale_localecontext"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_uselocale",
+ "target": "frontend_src_hooks_uselocale_localecontextvalue"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_uselocale",
+ "target": "frontend_src_hooks_uselocale_localeprovider"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_uselocale",
+ "target": "frontend_src_hooks_uselocale_readinitiallocale"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L101",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_uselocale",
+ "target": "frontend_src_hooks_uselocale_uselocale"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_uselocale",
+ "target": "frontend_src_lib_i18n"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_uselocale",
+ "target": "frontend_src_lib_i18n_issupportedlocale"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_uselocale",
+ "target": "frontend_src_lib_i18n_supportedlocale"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_uselocale",
+ "target": "frontend_src_lib_supabase"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_uselocale",
+ "target": "frontend_src_lib_supabase_getsupabase"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/main.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_main",
+ "target": "frontend_src_hooks_uselocale"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L48",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_uselocale_localeprovider",
+ "target": "frontend_src_hooks_uselocale_readinitiallocale"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_uselocale_readinitiallocale",
+ "target": "frontend_src_lib_i18n_issupportedlocale"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L71",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_uselocale_localeprovider",
+ "target": "frontend_src_lib_i18n_issupportedlocale"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useLocale.tsx",
+ "source_location": "L84",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_uselocale_localeprovider",
+ "target": "frontend_src_lib_supabase_getsupabase"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/main.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_main",
+ "target": "frontend_src_hooks_uselocale_localeprovider"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useOverlayImages.ts",
+ "source_location": "L61",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useoverlayimages",
+ "target": "frontend_src_hooks_useoverlayimages_overlaymode"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useOverlayImages.ts",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useoverlayimages",
+ "target": "frontend_src_hooks_useoverlayimages_useloadedimage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useOverlayImages.ts",
+ "source_location": "L71",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useoverlayimages",
+ "target": "frontend_src_hooks_useoverlayimages_useoverlayimages"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_useoverlayimages"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useOverlayImages.ts",
+ "source_location": "L79",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useoverlayimages_useoverlayimages",
+ "target": "frontend_src_hooks_useoverlayimages_useloadedimage"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_useoverlayimages_overlaymode"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_useoverlayimages_useoverlayimages"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L138",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_workbenchpage_workbenchpage",
+ "target": "frontend_src_hooks_useoverlayimages_useoverlayimages"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L53",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_hooks_usepanelstate_batchrecomputestatus"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L89",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_hooks_usepanelstate_getpanelannualenergy"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L95",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_hooks_usepanelstate_getsortedpanelids"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_hooks_usepanelstate_undoredosnapshot"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L118",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_hooks_usepanelstate_usepanelstate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L55",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_hooks_usepanelstate_usepanelstateargs"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L81",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_hooks_usepanelstate_workbench_config"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L41",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_hooks_usepanelstate_workbenchpanelstate"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_hooks_useundoredo"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_hooks_useundoredo_useundoredo"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_lib_buildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_lib_buildinginsights_annualenergyfrommonthly"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_lib_buildinginsights_getinitialpanelrotation"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_lib_buildinginsights_normalizerotation"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_lib_buildinginsights_parsepaneledits"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_lib_buildinginsights_roofsegment"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_lib_buildinginsights_solarpanel"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_lib_workbench_roofdirection"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "frontend_src_lib_workbench_roofdirection_segmentmatchesroofdirection"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "shared_layoutpreferences_roofdirection"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate",
+ "target": "shared_paneltypes_paneledit"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_usepanelstate"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_usepanelstate_batchrecomputestatus"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L91",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_usepanelstate_getpanelannualenergy",
+ "target": "frontend_src_lib_buildinginsights_annualenergyfrommonthly"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L112",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate_getsortedpanelids",
+ "target": "frontend_src_hooks_usepanelstate_getpanelannualenergy"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L266",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate_usepanelstate",
+ "target": "frontend_src_hooks_usepanelstate_getpanelannualenergy"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L108",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate_getsortedpanelids",
+ "target": "frontend_src_lib_workbench_roofdirection_segmentmatchesroofdirection"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L191",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usepanelstate_usepanelstate",
+ "target": "frontend_src_hooks_usepanelstate_getsortedpanelids"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L147",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_usepanelstate_usepanelstate",
+ "target": "frontend_src_hooks_useundoredo_useundoredo"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L175",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_usepanelstate_usepanelstate",
+ "target": "frontend_src_lib_buildinginsights_getinitialpanelrotation"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L182",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_usepanelstate_usepanelstate",
+ "target": "frontend_src_lib_buildinginsights_normalizerotation"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/usePanelState.ts",
+ "source_location": "L153",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_usepanelstate_usepanelstate",
+ "target": "frontend_src_lib_buildinginsights_parsepaneledits"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_usepanelstate_usepanelstate"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L169",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_workbenchpage_workbenchpage",
+ "target": "frontend_src_hooks_usepanelstate_usepanelstate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useQuota.ts",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usequota",
+ "target": "frontend_src_hooks_usequota_formatreset"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useQuota.ts",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usequota",
+ "target": "frontend_src_hooks_usequota_usequota"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useQuota.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usequota",
+ "target": "frontend_src_lib_notificationstore"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useQuota.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usequota",
+ "target": "frontend_src_lib_notificationstore_notificationstore"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useQuota.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usequota",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_hooks_usequota"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L41",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_hooks_usequota"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_hooks_usequota"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useQuota.ts",
+ "source_location": "L57",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usequota_usequota",
+ "target": "frontend_src_hooks_usequota_formatreset"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_hooks_usequota_usequota"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L52",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_dashboardpage_dashboardpage",
+ "target": "frontend_src_hooks_usequota_usequota"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L41",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_hooks_usequota_usequota"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L61",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_projectspage_projectspage",
+ "target": "frontend_src_hooks_usequota_usequota"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_hooks_usequota_usequota"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L67",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_settingspage_settingspage",
+ "target": "frontend_src_hooks_usequota_usequota"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useStageSize.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usestagesize",
+ "target": "frontend_src_hooks_usestagesize_usestagesize"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_usestagesize"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_usestagesize_usestagesize"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L145",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_workbenchpage_workbenchpage",
+ "target": "frontend_src_hooks_usestagesize_usestagesize"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useTheme.tsx",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usetheme",
+ "target": "frontend_src_hooks_usetheme_getsystemtheme"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useTheme.tsx",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usetheme",
+ "target": "frontend_src_hooks_usetheme_resolvetheme"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useTheme.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usetheme",
+ "target": "frontend_src_hooks_usetheme_theme"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useTheme.tsx",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usetheme",
+ "target": "frontend_src_hooks_usetheme_themecontext"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useTheme.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usetheme",
+ "target": "frontend_src_hooks_usetheme_themecontextvalue"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useTheme.tsx",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usetheme",
+ "target": "frontend_src_hooks_usetheme_themeprovider"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useTheme.tsx",
+ "source_location": "L99",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usetheme",
+ "target": "frontend_src_hooks_usetheme_usetheme"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/main.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_main",
+ "target": "frontend_src_hooks_usetheme"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_hooks_usetheme"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_hooks_usetheme"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_hooks_usetheme"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useTheme.tsx",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usetheme_resolvetheme",
+ "target": "frontend_src_hooks_usetheme_getsystemtheme"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useTheme.tsx",
+ "source_location": "L87",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usetheme_themeprovider",
+ "target": "frontend_src_hooks_usetheme_getsystemtheme"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useTheme.tsx",
+ "source_location": "L50",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_usetheme_themeprovider",
+ "target": "frontend_src_hooks_usetheme_resolvetheme"
+ },
+ {
+ "relation": "indirect_call",
+ "context": "argument",
+ "confidence": "INFERRED",
+ "confidence_score": 0.8,
+ "source_file": "frontend/src/hooks/useTheme.tsx",
+ "source_location": "L88",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_usetheme_themeprovider",
+ "target": "services_pdf_service_api_pdf_export_handler"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/main.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_main",
+ "target": "frontend_src_hooks_usetheme_themeprovider"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_hooks_usetheme_usetheme"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L68",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_analysispage_analysispage",
+ "target": "frontend_src_hooks_usetheme_usetheme"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_hooks_usetheme_usetheme"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L59",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_analyticspage_analyticspage",
+ "target": "frontend_src_hooks_usetheme_usetheme"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_hooks_usetheme_usetheme"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L68",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_settingspage_settingspage",
+ "target": "frontend_src_hooks_usetheme_usetheme"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useUndoRedo.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useundoredo",
+ "target": "frontend_src_hooks_useundoredo_undoredocontrols"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useUndoRedo.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useundoredo",
+ "target": "frontend_src_hooks_useundoredo_undoredooptions"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useUndoRedo.ts",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useundoredo",
+ "target": "frontend_src_hooks_useundoredo_useundoredo"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchData.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchdata",
+ "target": "frontend_src_hooks_useworkbenchdata_decodebase64"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchData.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchdata",
+ "target": "frontend_src_hooks_useworkbenchdata_decodedroofmask"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchData.ts",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchdata",
+ "target": "frontend_src_hooks_useworkbenchdata_useworkbenchdata"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchData.ts",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchdata",
+ "target": "frontend_src_lib_buildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchData.ts",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchdata",
+ "target": "frontend_src_lib_buildinginsights_parsebuildinginsights"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_useworkbenchdata"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchData.ts",
+ "source_location": "L62",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchdata_useworkbenchdata",
+ "target": "frontend_src_hooks_useworkbenchdata_decodebase64"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/hooks/useWorkbenchData.ts",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_hooks_useworkbenchdata_useworkbenchdata",
+ "target": "frontend_src_lib_buildinginsights_parsebuildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_useworkbenchdata_useworkbenchdata"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L94",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_workbenchpage_workbenchpage",
+ "target": "frontend_src_hooks_useworkbenchdata_useworkbenchdata"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchKeyboard.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchkeyboard",
+ "target": "frontend_src_hooks_useworkbenchkeyboard_istypinginelement"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchKeyboard.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchkeyboard",
+ "target": "frontend_src_hooks_useworkbenchkeyboard_useworkbenchkeyboard"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchKeyboard.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchkeyboard",
+ "target": "frontend_src_hooks_useworkbenchkeyboard_useworkbenchkeyboardoptions"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_useworkbenchkeyboard"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_useworkbenchkeyboard_useworkbenchkeyboard"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L251",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_workbenchpage_workbenchpage",
+ "target": "frontend_src_hooks_useworkbenchkeyboard_useworkbenchkeyboard"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchSave.ts",
+ "source_location": "L48",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchsave",
+ "target": "frontend_src_hooks_useworkbenchsave_useworkbenchsave"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchSave.ts",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchsave",
+ "target": "frontend_src_hooks_useworkbenchsave_useworkbenchsaveoptions"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchSave.ts",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchsave",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchSave.ts",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchsave",
+ "target": "shared_paneltypes_paneledit"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/hooks/useWorkbenchSave.ts",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_hooks_useworkbenchsave",
+ "target": "shared_paneltypes_panelmodel"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_useworkbenchsave"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_hooks_useworkbenchsave_useworkbenchsave"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L240",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_workbenchpage_workbenchpage",
+ "target": "frontend_src_hooks_useworkbenchsave_useworkbenchsave"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "frontend_src_lib_analysis"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "frontend_src_lib_analysis_config_parsesavedanalysisconfig"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "frontend_src_lib_analysis_presentation_aggregatemonthlygeneration"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "frontend_src_lib_analysis_presentation_applyperformanceratio"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "frontend_src_lib_analysis_presentation_summarizelayoutorientation"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "frontend_src_lib_analysis_projections_computedegradedsavings"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "frontend_src_lib_analysis_results_buildanalysisresults"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "frontend_src_lib_analysis_results_buildthresholdwarnings"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "frontend_src_lib_analysis_results_classifynemfit"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "frontend_src_lib_analysis_results_computenemfitmetrics"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "frontend_src_lib_billingengine"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "frontend_src_lib_billingengine_annualsimulationresult"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "frontend_src_lib_billingengine_nemmonthresult"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "frontend_src_lib_buildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "frontend_src_lib_buildinginsights_roofsegment"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "frontend_src_lib_buildinginsights_solarpanel"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L349",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "frontend_src_lib_tests_analysis_test_baselinesimulation"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "frontend_src_lib_tests_analysis_test_monthresult"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/analysis.test.ts",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_analysis_test",
+ "target": "shared_paneltypes_paneledit"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/billingEngine.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_billingengine_test",
+ "target": "frontend_src_lib_billingengine"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/billingEngine.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_billingengine_test",
+ "target": "frontend_src_lib_billingengine_billingconfig"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/billingEngine.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_billingengine_test",
+ "target": "frontend_src_lib_billingengine_computebill"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/billingEngine.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_billingengine_test",
+ "target": "frontend_src_lib_billingengine_computenemmonth"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/billingEngine.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_billingengine_test",
+ "target": "frontend_src_lib_billingengine_lookupeeirebate"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/billingEngine.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_billingengine_test",
+ "target": "frontend_src_lib_billingengine_runannualsimulation"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/billingEngine.test.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_billingengine_test",
+ "target": "frontend_src_lib_tests_billingengine_test_config"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/buildingInsights.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_buildinginsights_test",
+ "target": "frontend_src_lib_buildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/buildingInsights.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_buildinginsights_test",
+ "target": "frontend_src_lib_buildinginsights_annualenergyfrommonthly"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/buildingInsights.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_buildinginsights_test",
+ "target": "frontend_src_lib_buildinginsights_getinitialpanelrotation"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/buildingInsights.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_buildinginsights_test",
+ "target": "frontend_src_lib_buildinginsights_normalizerotation"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/buildingInsights.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_buildinginsights_test",
+ "target": "frontend_src_lib_buildinginsights_parsebuildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/buildingInsights.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_buildinginsights_test",
+ "target": "frontend_src_lib_buildinginsights_parsepaneledits"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/canvasTransforms.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_canvastransforms_test",
+ "target": "frontend_src_lib_canvastransforms"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/canvasTransforms.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_canvastransforms_test",
+ "target": "frontend_src_lib_canvastransforms_aabbsoverlap"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/canvasTransforms.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_canvastransforms_test",
+ "target": "frontend_src_lib_canvastransforms_createcanvasgeo"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/canvasTransforms.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_canvastransforms_test",
+ "target": "frontend_src_lib_canvastransforms_getrectaabb"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/canvasTransforms.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_canvastransforms_test",
+ "target": "frontend_src_lib_canvastransforms_getrotatedrectpoints"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/canvasTransforms.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_canvastransforms_test",
+ "target": "frontend_src_lib_canvastransforms_isaabbinsidestage"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/canvasTransforms.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_canvastransforms_test",
+ "target": "frontend_src_lib_canvastransforms_ispolygoninsiderastermask"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/canvasTransforms.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_canvastransforms_test",
+ "target": "frontend_src_lib_canvastransforms_latlngtopixel"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/canvasTransforms.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_canvastransforms_test",
+ "target": "frontend_src_lib_canvastransforms_obbsoverlap"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/canvasTransforms.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_canvastransforms_test",
+ "target": "frontend_src_lib_canvastransforms_obbsoverlapwithminseparation"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/canvasTransforms.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_canvastransforms_test",
+ "target": "frontend_src_lib_canvastransforms_panelmeterstopixels"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/canvasTransforms.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_canvastransforms_test",
+ "target": "frontend_src_lib_canvastransforms_pixeltolatlng"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/canvasTransforms.test.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_canvastransforms_test",
+ "target": "frontend_src_lib_tests_canvastransforms_test_imagegeotransform"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/costModel.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_costmodel_test",
+ "target": "shared_costmodel_computesystemcost"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/costModel.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_costmodel_test",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/projectStatus.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_projectstatus_test",
+ "target": "frontend_src_lib_projectstatus"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/projectStatus.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_projectstatus_test",
+ "target": "frontend_src_lib_projectstatus_getprojectstatusconfig"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/projectStatus.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_projectstatus_test",
+ "target": "frontend_src_lib_projectstatus_getprojectstatuslabel"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/projectStatus.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_projectstatus_test",
+ "target": "frontend_src_lib_projectstatus_getprojectstatustooltip"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/projectStatus.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_projectstatus_test",
+ "target": "frontend_src_lib_projectstatus_getprojectstatusvariant"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/projectStatus.test.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_projectstatus_test",
+ "target": "frontend_src_lib_tests_projectstatus_test_all_statuses"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/projectStatus.test.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_projectstatus_test",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/projectStatus.test.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_projectstatus_test",
+ "target": "shared_index_projectstatus"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/snapAlignment.test.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_snapalignment_test",
+ "target": "frontend_src_lib_canvastransforms"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/snapAlignment.test.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_snapalignment_test",
+ "target": "frontend_src_lib_canvastransforms_getrectaabb"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/snapAlignment.test.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_snapalignment_test",
+ "target": "frontend_src_lib_canvastransforms_getrotatedrectpoints"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/snapAlignment.test.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_snapalignment_test",
+ "target": "frontend_src_lib_canvastransforms_isaabbinsidestage"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/snapAlignment.test.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_snapalignment_test",
+ "target": "frontend_src_lib_canvastransforms_obbsoverlap"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/snapAlignment.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_snapalignment_test",
+ "target": "frontend_src_lib_snapalignment"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/snapAlignment.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_snapalignment_test",
+ "target": "frontend_src_lib_snapalignment_computeoverlapsnap"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/snapAlignment.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_snapalignment_test",
+ "target": "frontend_src_lib_snapalignment_computesnap"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/snapAlignment.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_snapalignment_test",
+ "target": "frontend_src_lib_snapalignment_resolvegroupoverlapescape"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/snapAlignment.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_snapalignment_test",
+ "target": "frontend_src_lib_snapalignment_resolveoverlapescape"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/snapAlignment.test.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_snapalignment_test",
+ "target": "frontend_src_lib_tests_snapalignment_test_snap"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/__tests__/snapAlignment.test.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_tests_snapalignment_test_snap",
+ "target": "frontend_src_lib_snapalignment_computesnap"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L45",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_analysis_disclaimer_keys"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L56",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_analysisdisclaimerkey"
+ },
+ {
+ "relation": "re_exports",
+ "context": "export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_config"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_config_analysisconfig"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_config_analysismode"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_config_connectionphase"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_config_consumptionprofile"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_config_default_inverter_replacement"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_config_inverterreplacement"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_config_parsesavedanalysisconfig"
+ },
+ {
+ "relation": "re_exports",
+ "context": "export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_presentation"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_presentation_aggregatemonthlygeneration"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_presentation_analysischartdatapoint"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_presentation_applyperformanceratio"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_presentation_applyseasonalprofile"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_presentation_azimuthtocompass"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_presentation_buildmonthlybillchartdata"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_presentation_isseasonalprofile"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_presentation_layoutorientationsummary"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_presentation_month_labels"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_presentation_seasonal_multipliers"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_presentation_summarizelayoutorientation"
+ },
+ {
+ "relation": "re_exports",
+ "context": "export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_projections"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_projections_buildnetbenefitseries"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_projections_computedegradedsavings"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_projections_netbenefitpoint"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_projections_normalizeinverterreplacements"
+ },
+ {
+ "relation": "re_exports",
+ "context": "export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_results"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_results_analysisresultsrecord"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_results_buildanalysisresults"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_results_buildthresholdwarnings"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_results_classifynemfit"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_results_computenemfitmetrics"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_results_nemfit"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_results_nemfitclassification"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis",
+ "target": "frontend_src_lib_analysis_results_nemfitmetrics"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L45",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_lib_analysis"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_lib_analysis_analysis_disclaimer_keys"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config",
+ "target": "frontend_src_lib_analysis_config_analysisconfig"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config",
+ "target": "frontend_src_lib_analysis_config_analysismode"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config",
+ "target": "frontend_src_lib_analysis_config_connectionphase"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config",
+ "target": "frontend_src_lib_analysis_config_consumptionprofile"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config",
+ "target": "frontend_src_lib_analysis_config_default_inverter_replacement"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L58",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config",
+ "target": "frontend_src_lib_analysis_config_getconnectionphase"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L66",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config",
+ "target": "frontend_src_lib_analysis_config_getconsumptionprofile"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L54",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config",
+ "target": "frontend_src_lib_analysis_config_getnumber"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L62",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config",
+ "target": "frontend_src_lib_analysis_config_getrooftype"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L81",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config",
+ "target": "frontend_src_lib_analysis_config_gettariffratesoverride"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config",
+ "target": "frontend_src_lib_analysis_config_inverterreplacement"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L50",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config",
+ "target": "frontend_src_lib_analysis_config_isrecord"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L93",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config",
+ "target": "frontend_src_lib_analysis_config_parseinverterreplacements"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L128",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config",
+ "target": "frontend_src_lib_analysis_config_parsesavedanalysisconfig"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config",
+ "target": "frontend_src_lib_analysis_config_round2"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L70",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config",
+ "target": "frontend_src_lib_analysis_config_tariff_rate_keys"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config",
+ "target": "shared_costmodel_rooftype"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config",
+ "target": "shared_index_tariffrates"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_analysis_config"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/projections.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_projections",
+ "target": "frontend_src_lib_analysis_config"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_analysis_config"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/projections.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_projections",
+ "target": "frontend_src_lib_analysis_config_analysismode"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_analysis_config_analysismode"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_analysis_config_consumptionprofile"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/projections.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_projections",
+ "target": "frontend_src_lib_analysis_config_inverterreplacement"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_analysis_config_inverterreplacement"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_lib_analysis_config_analysisconfig"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L106",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config_parseinverterreplacements",
+ "target": "frontend_src_lib_analysis_config_round2"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L82",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config_gettariffratesoverride",
+ "target": "frontend_src_lib_analysis_config_isrecord"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L101",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config_parseinverterreplacements",
+ "target": "frontend_src_lib_analysis_config_isrecord"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L129",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config_parsesavedanalysisconfig",
+ "target": "frontend_src_lib_analysis_config_isrecord"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L102",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config_parseinverterreplacements",
+ "target": "frontend_src_lib_analysis_config_getnumber"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L131",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config_parsesavedanalysisconfig",
+ "target": "frontend_src_lib_analysis_config_getnumber"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L132",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config_parsesavedanalysisconfig",
+ "target": "frontend_src_lib_analysis_config_getconnectionphase"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L133",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config_parsesavedanalysisconfig",
+ "target": "frontend_src_lib_analysis_config_getrooftype"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L140",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config_parsesavedanalysisconfig",
+ "target": "frontend_src_lib_analysis_config_getconsumptionprofile"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L139",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config_parsesavedanalysisconfig",
+ "target": "frontend_src_lib_analysis_config_gettariffratesoverride"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/config.ts",
+ "source_location": "L149",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_config_parsesavedanalysisconfig",
+ "target": "frontend_src_lib_analysis_config_parseinverterreplacements"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L55",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_analysis_presentation_aggregatemonthlygeneration"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_analysis_presentation_analysischartdatapoint"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L153",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_analysis_presentation_applyperformanceratio"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L45",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_analysis_presentation_applyseasonalprofile"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L75",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_analysis_presentation_azimuthtocompass"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L164",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_analysis_presentation_buildmonthlybillchartdata"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L67",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_analysis_presentation_compass_8"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L185",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_analysis_presentation_isseasonalprofile"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_analysis_presentation_layoutorientationsummary"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_analysis_presentation_month_labels"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_analysis_presentation_round2"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_analysis_presentation_seasonal_multipliers"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L88",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_analysis_presentation_summarizelayoutorientation"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_billingengine"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_billingengine_nemmonthresult"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_buildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_buildinginsights_roofsegment"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "frontend_src_lib_buildinginsights_solarpanel"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation",
+ "target": "shared_paneltypes_paneledit"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L64",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation_aggregatemonthlygeneration",
+ "target": "frontend_src_lib_analysis_presentation_round2"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L154",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation_applyperformanceratio",
+ "target": "frontend_src_lib_analysis_presentation_round2"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation_applyseasonalprofile",
+ "target": "frontend_src_lib_analysis_presentation_round2"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L174",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation_buildmonthlybillchartdata",
+ "target": "frontend_src_lib_analysis_presentation_round2"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/presentation.ts",
+ "source_location": "L138",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_presentation_summarizelayoutorientation",
+ "target": "frontend_src_lib_analysis_presentation_round2"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L45",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_lib_analysis_presentation_summarizelayoutorientation"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L142",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_analysispage_analysispage",
+ "target": "frontend_src_lib_analysis_presentation_summarizelayoutorientation"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/projections.ts",
+ "source_location": "L88",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_projections",
+ "target": "frontend_src_lib_analysis_projections_buildnetbenefitseries"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/projections.ts",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_projections",
+ "target": "frontend_src_lib_analysis_projections_computedegradedsavings"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/projections.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_projections",
+ "target": "frontend_src_lib_analysis_projections_netbenefitpoint"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/projections.ts",
+ "source_location": "L49",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_projections",
+ "target": "frontend_src_lib_analysis_projections_normalizeinverterreplacements"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/projections.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_projections",
+ "target": "frontend_src_lib_analysis_projections_round2"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_analysis_projections"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/projections.ts",
+ "source_location": "L133",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_projections_buildnetbenefitseries",
+ "target": "frontend_src_lib_analysis_projections_round2"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/projections.ts",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_projections_computedegradedsavings",
+ "target": "frontend_src_lib_analysis_projections_round2"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/projections.ts",
+ "source_location": "L66",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_projections_normalizeinverterreplacements",
+ "target": "frontend_src_lib_analysis_projections_round2"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/projections.ts",
+ "source_location": "L119",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_projections_buildnetbenefitseries",
+ "target": "frontend_src_lib_analysis_projections_computedegradedsavings"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_analysis_projections_computedegradedsavings"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L249",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_lib_analysis_results_buildanalysisresults",
+ "target": "frontend_src_lib_analysis_projections_computedegradedsavings"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/projections.ts",
+ "source_location": "L111",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_projections_buildnetbenefitseries",
+ "target": "frontend_src_lib_analysis_projections_normalizeinverterreplacements"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_analysis_projections_normalizeinverterreplacements"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L221",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_lib_analysis_results_buildanalysisresults",
+ "target": "frontend_src_lib_analysis_projections_normalizeinverterreplacements"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_lib_analysis_projections_buildnetbenefitseries"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L243",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_analysispage_analysispage",
+ "target": "frontend_src_lib_analysis_projections_buildnetbenefitseries"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_analysis_results_analysisresultsrecord"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L196",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_analysis_results_buildanalysisresults"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L302",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_analysis_results_buildthresholdwarnings"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L103",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_analysis_results_classifynemfit"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L145",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_analysis_results_computelifecyclepaybackyears"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L70",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_analysis_results_computenemfitmetrics"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L123",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_analysis_results_computesimplepaybackyears"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_analysis_results_nemfit"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L40",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_analysis_results_nemfitclassification"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L49",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_analysis_results_nemfitmetrics"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L60",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_analysis_results_round2"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_billingengine"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_billingengine_annualsimulationresult"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "frontend_src_lib_billingengine_nemmonthresult"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results",
+ "target": "shared_index_tariffthresholds"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_lib_analysis_results_analysisresultsrecord"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L228",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results_buildanalysisresults",
+ "target": "frontend_src_lib_analysis_results_round2"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L181",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results_computelifecyclepaybackyears",
+ "target": "frontend_src_lib_analysis_results_round2"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L85",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results_computenemfitmetrics",
+ "target": "frontend_src_lib_analysis_results_round2"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L138",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results_computesimplepaybackyears",
+ "target": "frontend_src_lib_analysis_results_round2"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L232",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results_buildanalysisresults",
+ "target": "frontend_src_lib_analysis_results_computesimplepaybackyears"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/analysis/results.ts",
+ "source_location": "L239",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_analysis_results_buildanalysisresults",
+ "target": "frontend_src_lib_analysis_results_computelifecyclepaybackyears"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine",
+ "target": "frontend_src_lib_billingengine_annualsimulationresult"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine",
+ "target": "frontend_src_lib_billingengine_billbreakdown"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine",
+ "target": "frontend_src_lib_billingengine_billingconfig"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L84",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine",
+ "target": "frontend_src_lib_billingengine_computebill"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L161",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine",
+ "target": "frontend_src_lib_billingengine_computenemmonth"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L67",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine",
+ "target": "frontend_src_lib_billingengine_lookupeeirebate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine",
+ "target": "frontend_src_lib_billingengine_nemmonthresult"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine",
+ "target": "frontend_src_lib_billingengine_round2"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L55",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine",
+ "target": "frontend_src_lib_billingengine_round5sen"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L224",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine",
+ "target": "frontend_src_lib_billingengine_runannualsimulation"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine",
+ "target": "shared_index_tariffrates"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine",
+ "target": "shared_index_tariffthresholds"
+ },
+ {
+ "relation": "references",
+ "context": "field",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L45",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine_billingconfig",
+ "target": "shared_index_tariffrates"
+ },
+ {
+ "relation": "references",
+ "context": "field",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine_billingconfig",
+ "target": "shared_index_tariffthresholds"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L117",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine_computebill",
+ "target": "frontend_src_lib_billingengine_round2"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L193",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine_computenemmonth",
+ "target": "frontend_src_lib_billingengine_round2"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L244",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine_runannualsimulation",
+ "target": "frontend_src_lib_billingengine_round2"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L131",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine_computebill",
+ "target": "frontend_src_lib_billingengine_round5sen"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L114",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine_computebill",
+ "target": "frontend_src_lib_billingengine_lookupeeirebate"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L190",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine_computenemmonth",
+ "target": "frontend_src_lib_billingengine_computebill"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/billingEngine.ts",
+ "source_location": "L239",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_billingengine_runannualsimulation",
+ "target": "frontend_src_lib_billingengine_computenemmonth"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L229",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights",
+ "target": "frontend_src_lib_buildinginsights_annualenergyfrommonthly"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights",
+ "target": "frontend_src_lib_buildinginsights_boundingbox"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights",
+ "target": "frontend_src_lib_buildinginsights_getcoordinate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L215",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights",
+ "target": "frontend_src_lib_buildinginsights_getinitialpanelrotation"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L43",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights",
+ "target": "frontend_src_lib_buildinginsights_getnumber"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L67",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights",
+ "target": "frontend_src_lib_buildinginsights_getpanelcenter"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights",
+ "target": "frontend_src_lib_buildinginsights_getstring"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights",
+ "target": "frontend_src_lib_buildinginsights_isrecord"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L204",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights",
+ "target": "frontend_src_lib_buildinginsights_normalizerotation"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L88",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights",
+ "target": "frontend_src_lib_buildinginsights_parsebuildinginsights"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights",
+ "target": "frontend_src_lib_buildinginsights_parsedbuildinginsights"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L168",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights",
+ "target": "frontend_src_lib_buildinginsights_parsepaneledits"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights",
+ "target": "frontend_src_lib_buildinginsights_roofsegment"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights",
+ "target": "frontend_src_lib_buildinginsights_solarpanel"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights",
+ "target": "shared_paneltypes_paneledit"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/segmentVisualization.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_segmentvisualization",
+ "target": "frontend_src_lib_buildinginsights"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_lib_buildinginsights"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/segmentVisualization.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_segmentvisualization",
+ "target": "frontend_src_lib_buildinginsights_roofsegment"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/segmentVisualization.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_segmentvisualization",
+ "target": "frontend_src_lib_buildinginsights_solarpanel"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L55",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights_getcoordinate",
+ "target": "frontend_src_lib_buildinginsights_isrecord"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L68",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights_getpanelcenter",
+ "target": "frontend_src_lib_buildinginsights_isrecord"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L89",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights_parsebuildinginsights",
+ "target": "frontend_src_lib_buildinginsights_isrecord"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L173",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights_parsepaneledits",
+ "target": "frontend_src_lib_buildinginsights_isrecord"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L57",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights_getcoordinate",
+ "target": "frontend_src_lib_buildinginsights_getnumber"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L70",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights_getpanelcenter",
+ "target": "frontend_src_lib_buildinginsights_getnumber"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L101",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights_parsebuildinginsights",
+ "target": "frontend_src_lib_buildinginsights_getnumber"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L178",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights_parsepaneledits",
+ "target": "frontend_src_lib_buildinginsights_getnumber"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L125",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights_parsebuildinginsights",
+ "target": "frontend_src_lib_buildinginsights_getstring"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L175",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights_parsepaneledits",
+ "target": "frontend_src_lib_buildinginsights_getstring"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L98",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights_parsebuildinginsights",
+ "target": "frontend_src_lib_buildinginsights_getcoordinate"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L126",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights_parsebuildinginsights",
+ "target": "frontend_src_lib_buildinginsights_getpanelcenter"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L177",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights_parsepaneledits",
+ "target": "frontend_src_lib_buildinginsights_getpanelcenter"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/buildingInsights.ts",
+ "source_location": "L220",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_buildinginsights_getinitialpanelrotation",
+ "target": "frontend_src_lib_buildinginsights_normalizerotation"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_lib_buildinginsights_annualenergyfrommonthly"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage_getpanelannualenergy",
+ "target": "frontend_src_lib_buildinginsights_annualenergyfrommonthly"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L175",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_lib_canvastransforms_aabbsoverlap"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_lib_canvastransforms_canvasgeo"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L41",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_lib_canvastransforms_createcanvasgeo"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L200",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_lib_canvastransforms_getedgenormals"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L159",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_lib_canvastransforms_getrectaabb"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L126",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_lib_canvastransforms_getrotatedrectpoints"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L289",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_lib_canvastransforms_isaabbinsidestage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L328",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_lib_canvastransforms_ispolygoninsiderastermask"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L63",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_lib_canvastransforms_latlngtopixel"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L230",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_lib_canvastransforms_minseparationresult"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L221",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_lib_canvastransforms_obbsoverlap"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L243",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_lib_canvastransforms_obbsoverlapwithminseparation"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L101",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_lib_canvastransforms_panelmeterstopixels"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_lib_canvastransforms_pixelpoint"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L82",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_lib_canvastransforms_pixeltolatlng"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L301",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_lib_canvastransforms_pointinpolygon"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_lib_canvastransforms_rastermask"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_lib_canvastransforms_rectaabb"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L182",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms",
+ "target": "frontend_src_lib_canvastransforms_satprojectionsoverlap"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_canvastransforms"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_canvastransforms_getrotatedrectpoints"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L299",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment_computeoverlapescapevector",
+ "target": "frontend_src_lib_canvastransforms_getrotatedrectpoints"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L187",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_lib_snapalignment_computeoverlapsnap",
+ "target": "frontend_src_lib_canvastransforms_getrotatedrectpoints"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L210",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment_getposepolygon",
+ "target": "frontend_src_lib_canvastransforms_getrotatedrectpoints"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L261",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment_hasoverlapat",
+ "target": "frontend_src_lib_canvastransforms_getrotatedrectpoints"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L333",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms_ispolygoninsiderastermask",
+ "target": "frontend_src_lib_canvastransforms_getrectaabb"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_canvastransforms_getrectaabb"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L246",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment_needsstageclamp",
+ "target": "frontend_src_lib_canvastransforms_getrectaabb"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L224",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms_obbsoverlap",
+ "target": "frontend_src_lib_canvastransforms_satprojectionsoverlap"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L222",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms_obbsoverlap",
+ "target": "frontend_src_lib_canvastransforms_getedgenormals"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L244",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms_obbsoverlapwithminseparation",
+ "target": "frontend_src_lib_canvastransforms_getedgenormals"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_canvastransforms_obbsoverlap"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L306",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment_computeoverlapescapevector",
+ "target": "frontend_src_lib_canvastransforms_obbsoverlap"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L268",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment_hasoverlapat",
+ "target": "frontend_src_lib_canvastransforms_obbsoverlap"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_canvastransforms_obbsoverlapwithminseparation"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L308",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment_computeoverlapescapevector",
+ "target": "frontend_src_lib_canvastransforms_obbsoverlapwithminseparation"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L190",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_lib_snapalignment_computeoverlapsnap",
+ "target": "frontend_src_lib_canvastransforms_obbsoverlapwithminseparation"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_canvastransforms_isaabbinsidestage"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L247",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment_needsstageclamp",
+ "target": "frontend_src_lib_canvastransforms_isaabbinsidestage"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/canvasTransforms.ts",
+ "source_location": "L350",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_canvastransforms_ispolygoninsiderastermask",
+ "target": "frontend_src_lib_canvastransforms_pointinpolygon"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/constants.ts",
+ "source_location": "L58",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_constants",
+ "target": "frontend_src_lib_constants_chart_tooltip_style"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/constants.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_constants",
+ "target": "frontend_src_lib_constants_colors"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/constants.ts",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_constants",
+ "target": "frontend_src_lib_constants_getcharttooltipstyle"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/constants.ts",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_constants",
+ "target": "frontend_src_lib_constants_thememode"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_lib_constants"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_lib_constants"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_lib_constants"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_lib_constants_colors"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_lib_constants_colors"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_lib_constants_getcharttooltipstyle"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L69",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_analysispage_analysispage",
+ "target": "frontend_src_lib_constants_getcharttooltipstyle"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_lib_constants_getcharttooltipstyle"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L60",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_analyticspage_analyticspage",
+ "target": "frontend_src_lib_constants_getcharttooltipstyle"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/formatters.ts",
+ "source_location": "L54",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_formatters",
+ "target": "frontend_src_lib_formatters_bill_tooltips"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/formatters.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_formatters",
+ "target": "frontend_src_lib_formatters_currencyformatter"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/formatters.ts",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_formatters",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/formatters.ts",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_formatters",
+ "target": "frontend_src_lib_formatters_formatnumber"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/formatters.ts",
+ "source_location": "L40",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_formatters",
+ "target": "frontend_src_lib_formatters_formattooltipcurrency"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/formatters.ts",
+ "source_location": "L66",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_formatters",
+ "target": "frontend_src_lib_formatters_nem_tooltips"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/formatters.ts",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_formatters",
+ "target": "frontend_src_lib_formatters_numberformatter"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_lib_formatters"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/formatters.ts",
+ "source_location": "L42",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_formatters_formattooltipcurrency",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L263",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_analysispage_analysispage",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L369",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_analyticspage_analyticspage",
+ "target": "frontend_src_lib_formatters_formatcurrency"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/i18n.ts",
+ "source_location": "L142",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_i18n",
+ "target": "frontend_src_lib_i18n_issupportedlocale"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/i18n.ts",
+ "source_location": "L66",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_i18n",
+ "target": "frontend_src_lib_i18n_locale_labels"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/i18n.ts",
+ "source_location": "L76",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_i18n",
+ "target": "frontend_src_lib_i18n_locale_to_intl"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/i18n.ts",
+ "source_location": "L82",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_i18n",
+ "target": "frontend_src_lib_i18n_resources"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/i18n.ts",
+ "source_location": "L54",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_i18n",
+ "target": "frontend_src_lib_i18n_supported_locales"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/i18n.ts",
+ "source_location": "L57",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_i18n",
+ "target": "frontend_src_lib_i18n_supportedlocale"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/main.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_main",
+ "target": "frontend_src_lib_i18n"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset_test",
+ "target": "frontend_src_lib_layoutpreset"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset_test",
+ "target": "frontend_src_lib_layoutpreset_billrangetoannualkwh"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset_test",
+ "target": "frontend_src_lib_layoutpreset_describelayoutpreset"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.test.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset_test",
+ "target": "frontend_src_lib_layoutpreset_infervisiblecount"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.test.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset_test",
+ "target": "frontend_src_lib_layoutpreset_test_panels"
+ },
+ {
+ "relation": "indirect_call",
+ "context": "argument",
+ "confidence": "INFERRED",
+ "confidence_score": 0.8,
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L199",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_workbenchpage_workbenchpage",
+ "target": "frontend_src_lib_layoutpreset_test_panels"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L57",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset",
+ "target": "frontend_src_lib_layoutpreset_billrangetoannualkwh"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L120",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset",
+ "target": "frontend_src_lib_layoutpreset_describelayoutpreset"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L62",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset",
+ "target": "frontend_src_lib_layoutpreset_filterbydirection"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L88",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset",
+ "target": "frontend_src_lib_layoutpreset_infervisiblecount"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset",
+ "target": "frontend_src_lib_layoutpreset_panelyieldentry"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset",
+ "target": "frontend_src_lib_layoutpreset_roofsegmententry"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L43",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset",
+ "target": "frontend_src_lib_layoutpreset_sizing_goal_offset"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset",
+ "target": "frontend_src_lib_workbench_roofdirection"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset",
+ "target": "frontend_src_lib_workbench_roofdirection_azimuthmatchesroofdirection"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset",
+ "target": "shared_layoutpreferences_bill_range_to_kwh_per_month"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset",
+ "target": "shared_layoutpreferences_billrange"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset",
+ "target": "shared_layoutpreferences_layoutpreferences"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset",
+ "target": "shared_layoutpreferences_roofdirection"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset",
+ "target": "shared_layoutpreferences_sizinggoal"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_lib_layoutpreset"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L101",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset_infervisiblecount",
+ "target": "frontend_src_lib_layoutpreset_billrangetoannualkwh"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L72",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset_filterbydirection",
+ "target": "frontend_src_lib_workbench_roofdirection_azimuthmatchesroofdirection"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/layoutPreset.ts",
+ "source_location": "L96",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_layoutpreset_infervisiblecount",
+ "target": "frontend_src_lib_layoutpreset_filterbydirection"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_lib_layoutpreset_infervisiblecount"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L199",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_workbenchpage_workbenchpage",
+ "target": "frontend_src_lib_layoutpreset_infervisiblecount"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_lib_layoutpreset_describelayoutpreset"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L347",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_workbenchpage_workbenchpage",
+ "target": "frontend_src_lib_layoutpreset_describelayoutpreset"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/notificationStore.ts",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_notificationstore",
+ "target": "frontend_src_lib_notificationstore_emit"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/notificationStore.ts",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_notificationstore",
+ "target": "frontend_src_lib_notificationstore_listener"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/notificationStore.ts",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_notificationstore",
+ "target": "frontend_src_lib_notificationstore_listeners"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/notificationStore.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_notificationstore",
+ "target": "frontend_src_lib_notificationstore_loadnotifications"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/notificationStore.ts",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_notificationstore",
+ "target": "frontend_src_lib_notificationstore_notifications"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/notificationStore.ts",
+ "source_location": "L48",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_notificationstore",
+ "target": "frontend_src_lib_notificationstore_notificationstore"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/notificationStore.ts",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_notificationstore",
+ "target": "frontend_src_lib_notificationstore_savenotifications"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_lib_notificationstore"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/notificationStore.ts",
+ "source_location": "L40",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_notificationstore_emit",
+ "target": "frontend_src_lib_notificationstore_savenotifications"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_lib_notificationstore_notificationstore"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectDraftStorage.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectdraftstorage",
+ "target": "frontend_src_lib_projectdraftstorage_canusesessionstorage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectDraftStorage.ts",
+ "source_location": "L62",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectdraftstorage",
+ "target": "frontend_src_lib_projectdraftstorage_clearnewprojectdraft"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectDraftStorage.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectdraftstorage",
+ "target": "frontend_src_lib_projectdraftstorage_newprojectdraft"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectDraftStorage.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectdraftstorage",
+ "target": "frontend_src_lib_projectdraftstorage_readnewprojectdraft"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectDraftStorage.ts",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectdraftstorage",
+ "target": "frontend_src_lib_projectdraftstorage_writenewprojectdraft"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_lib_projectdraftstorage"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_lib_projectdraftstorage"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_lib_projectdraftstorage"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectDraftStorage.ts",
+ "source_location": "L63",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectdraftstorage_clearnewprojectdraft",
+ "target": "frontend_src_lib_projectdraftstorage_canusesessionstorage"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectDraftStorage.ts",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectdraftstorage_readnewprojectdraft",
+ "target": "frontend_src_lib_projectdraftstorage_canusesessionstorage"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectDraftStorage.ts",
+ "source_location": "L48",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectdraftstorage_writenewprojectdraft",
+ "target": "frontend_src_lib_projectdraftstorage_canusesessionstorage"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_lib_projectdraftstorage_readnewprojectdraft"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_mappage_mappage",
+ "target": "frontend_src_lib_projectdraftstorage_readnewprojectdraft"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_lib_projectdraftstorage_writenewprojectdraft"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_lib_projectdraftstorage_writenewprojectdraft"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L85",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_mappage_mappage",
+ "target": "frontend_src_lib_projectdraftstorage_writenewprojectdraft"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_lib_projectdraftstorage_writenewprojectdraft"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_lib_projectdraftstorage_clearnewprojectdraft"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L138",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_mappage_mappage",
+ "target": "frontend_src_lib_projectdraftstorage_clearnewprojectdraft"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectstatus",
+ "target": "frontend_src_lib_projectstatus_badgevariant"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L50",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectstatus",
+ "target": "frontend_src_lib_projectstatus_getprojectstatusconfig"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L55",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectstatus",
+ "target": "frontend_src_lib_projectstatus_getprojectstatuslabel"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L65",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectstatus",
+ "target": "frontend_src_lib_projectstatus_getprojectstatustooltip"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L60",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectstatus",
+ "target": "frontend_src_lib_projectstatus_getprojectstatusvariant"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectstatus",
+ "target": "frontend_src_lib_projectstatus_status_configs"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectstatus",
+ "target": "frontend_src_lib_projectstatus_statusconfig"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectstatus",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectstatus",
+ "target": "shared_index_projectstatus"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_lib_projectstatus"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L56",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectstatus_getprojectstatuslabel",
+ "target": "frontend_src_lib_projectstatus_getprojectstatusconfig"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L66",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectstatus_getprojectstatustooltip",
+ "target": "frontend_src_lib_projectstatus_getprojectstatusconfig"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/projectStatus.ts",
+ "source_location": "L61",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_projectstatus_getprojectstatusvariant",
+ "target": "frontend_src_lib_projectstatus_getprojectstatusconfig"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_lib_projectstatus_getprojectstatusconfig"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L229",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_dashboardpage_dashboardpage",
+ "target": "frontend_src_lib_projectstatus_getprojectstatusconfig"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/recentProjectActivity.ts",
+ "source_location": "L41",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_recentprojectactivity",
+ "target": "frontend_src_lib_recentprojectactivity_getprojectlastvisitedat"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/recentProjectActivity.ts",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_recentprojectactivity",
+ "target": "frontend_src_lib_recentprojectactivity_markprojectvisited"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/recentProjectActivity.ts",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_recentprojectactivity",
+ "target": "frontend_src_lib_recentprojectactivity_readentries"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/recentProjectActivity.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_recentprojectactivity",
+ "target": "frontend_src_lib_recentprojectactivity_recentprojectactivity"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_lib_recentprojectactivity"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_lib_recentprojectactivity"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_lib_recentprojectactivity"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L45",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_lib_recentprojectactivity"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/recentProjectActivity.ts",
+ "source_location": "L42",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_recentprojectactivity_getprojectlastvisitedat",
+ "target": "frontend_src_lib_recentprojectactivity_readentries"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/recentProjectActivity.ts",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_recentprojectactivity_markprojectvisited",
+ "target": "frontend_src_lib_recentprojectactivity_readentries"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_lib_recentprojectactivity_markprojectvisited"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L159",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_analysispage_analysispage",
+ "target": "frontend_src_lib_recentprojectactivity_markprojectvisited"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_lib_recentprojectactivity_markprojectvisited"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L100",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_mappage_mappage",
+ "target": "frontend_src_lib_recentprojectactivity_markprojectvisited"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L45",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_lib_recentprojectactivity_markprojectvisited"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L98",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_workbenchpage_workbenchpage",
+ "target": "frontend_src_lib_recentprojectactivity_markprojectvisited"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_lib_recentprojectactivity_getprojectlastvisitedat"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L102",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_dashboardpage_dashboardpage",
+ "target": "frontend_src_lib_recentprojectactivity_getprojectlastvisitedat"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/segmentVisualization.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_segmentvisualization",
+ "target": "frontend_src_lib_segmentvisualization_azimuthcolor"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/segmentVisualization.ts",
+ "source_location": "L93",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_segmentvisualization",
+ "target": "frontend_src_lib_segmentvisualization_computesegmenthulls"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/segmentVisualization.ts",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_segmentvisualization",
+ "target": "frontend_src_lib_segmentvisualization_convexhull"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/segmentVisualization.ts",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_segmentvisualization",
+ "target": "frontend_src_lib_segmentvisualization_segmenthull"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/segmentVisualization.ts",
+ "source_location": "L154",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_segmentvisualization_computesegmenthulls",
+ "target": "frontend_src_lib_segmentvisualization_azimuthcolor"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/segmentVisualization.ts",
+ "source_location": "L145",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_segmentvisualization_computesegmenthulls",
+ "target": "frontend_src_lib_segmentvisualization_convexhull"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L218",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_clamptranslationtostage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L213",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_clampvalue"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L277",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_computeoverlapescapevector"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L181",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_computeoverlapsnap"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L99",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_computesnap"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L209",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_getposepolygon"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L251",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_hasoverlapat"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L237",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_needsstageclamp"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L203",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_normalizevector"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L61",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_overlapescaperesult"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_overlapsnapresult"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L68",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_panelinfo"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L49",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_pose"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L481",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_resolvegroupoverlapescape"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L446",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_resolveoverlapescape"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L387",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_resolveoverlaptranslation"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L75",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_snap_config"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_snapguide"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L40",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_snapresult"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L55",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment",
+ "target": "frontend_src_lib_snapalignment_translation"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L312",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment_computeoverlapescapevector",
+ "target": "frontend_src_lib_snapalignment_normalizevector"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L296",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment_computeoverlapescapevector",
+ "target": "frontend_src_lib_snapalignment_getposepolygon"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L259",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment_hasoverlapat",
+ "target": "frontend_src_lib_snapalignment_getposepolygon"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L246",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment_needsstageclamp",
+ "target": "frontend_src_lib_snapalignment_getposepolygon"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L232",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment_clamptranslationtostage",
+ "target": "frontend_src_lib_snapalignment_clampvalue"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L420",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment_resolveoverlaptranslation",
+ "target": "frontend_src_lib_snapalignment_clamptranslationtostage"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L419",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment_resolveoverlaptranslation",
+ "target": "frontend_src_lib_snapalignment_needsstageclamp"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L402",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment_resolveoverlaptranslation",
+ "target": "frontend_src_lib_snapalignment_hasoverlapat"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L408",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment_resolveoverlaptranslation",
+ "target": "frontend_src_lib_snapalignment_computeoverlapescapevector"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L489",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment_resolvegroupoverlapescape",
+ "target": "frontend_src_lib_snapalignment_resolveoverlaptranslation"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/snapAlignment.ts",
+ "source_location": "L453",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_snapalignment_resolveoverlapescape",
+ "target": "frontend_src_lib_snapalignment_resolveoverlaptranslation"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/supabase.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_supabase",
+ "target": "frontend_src_lib_supabase_getsupabase"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/utils.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_utils",
+ "target": "frontend_src_lib_utils_cn"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/workbench/handleMetrics.ts",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_workbench_handlemetrics",
+ "target": "frontend_src_lib_workbench_handlemetrics_group_rotation_handle_metrics"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/workbench/handleMetrics.ts",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_workbench_handlemetrics",
+ "target": "frontend_src_lib_workbench_handlemetrics_rotation_handle_metrics"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/workbench/roofDirection.ts",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_workbench_roofdirection",
+ "target": "frontend_src_lib_workbench_roofdirection_azimuthmatchesroofdirection"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/workbench/roofDirection.ts",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_workbench_roofdirection",
+ "target": "frontend_src_lib_workbench_roofdirection_roof_direction_windows"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/workbench/roofDirection.ts",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_workbench_roofdirection",
+ "target": "frontend_src_lib_workbench_roofdirection_segmentmatchesroofdirection"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/workbench/roofDirection.ts",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_workbench_roofdirection",
+ "target": "frontend_src_lib_workbench_roofdirection_segmentwithazimuth"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/workbench/roofDirection.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_workbench_roofdirection",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/workbench/roofDirection.ts",
+ "source_location": "L1",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_workbench_roofdirection",
+ "target": "shared_layoutpreferences_roofdirection"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/workbench/roofDirection.ts",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_workbench_roofdirection_segmentmatchesroofdirection",
+ "target": "frontend_src_lib_workbench_roofdirection_azimuthmatchesroofdirection"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/lib/workbenchTour.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_lib_workbenchtour",
+ "target": "frontend_src_lib_workbenchtour_getworkbenchtoursteps"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_lib_workbenchtour"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_lib_workbenchtour_getworkbenchtoursteps"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L320",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_workbenchpage_workbenchpage",
+ "target": "frontend_src_lib_workbenchtour_getworkbenchtoursteps"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/main.tsx",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_main",
+ "target": "frontend_src_main_queryclient"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L62",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_pages_analysispage_analysispage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalysisPage.tsx",
+ "source_location": "L51",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analysispage",
+ "target": "frontend_src_pages_analysispage_buildsavepayload"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/AnalysisPage.test.tsx",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_analysispage_test",
+ "target": "frontend_src_pages_analysispage"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/AnalysisPage.test.tsx",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_analysispage_test",
+ "target": "frontend_src_pages_analysispage_analysispage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L56",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_pages_analyticspage_analyticspage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_pages_analyticspage_comparisonmetric"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/AnalyticsPage.tsx",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_analyticspage",
+ "target": "frontend_src_pages_analyticspage_metric_formatters"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/AnalyticsPage.test.tsx",
+ "source_location": "L92",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_analyticspage_test",
+ "target": "frontend_src_pages_analyticspage"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/AnalyticsPage.test.tsx",
+ "source_location": "L92",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_analyticspage_test",
+ "target": "frontend_src_pages_analyticspage_analyticspage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L48",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_pages_dashboardpage_dashboardpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L42",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_pages_dashboardpage_formatresettime"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage",
+ "target": "frontend_src_pages_dashboardpage_getgreeting"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/DashboardPage.test.tsx",
+ "source_location": "L61",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_dashboardpage_test",
+ "target": "frontend_src_pages_dashboardpage"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L59",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage_dashboardpage",
+ "target": "frontend_src_pages_dashboardpage_getgreeting"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/DashboardPage.tsx",
+ "source_location": "L175",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_dashboardpage_dashboardpage",
+ "target": "frontend_src_pages_dashboardpage_formatresettime"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/DashboardPage.test.tsx",
+ "source_location": "L61",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_dashboardpage_test",
+ "target": "frontend_src_pages_dashboardpage_dashboardpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L67",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_faqpage",
+ "target": "frontend_src_pages_faqpage_countwords"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_faqpage",
+ "target": "frontend_src_pages_faqpage_faq_ids"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L71",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_faqpage",
+ "target": "frontend_src_pages_faqpage_faqcard"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_faqpage",
+ "target": "frontend_src_pages_faqpage_faqcategory"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_faqpage",
+ "target": "frontend_src_pages_faqpage_faqitem"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L115",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_faqpage",
+ "target": "frontend_src_pages_faqpage_faqpage"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/FAQPage.tsx",
+ "source_location": "L74",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_faqpage_faqcard",
+ "target": "frontend_src_pages_faqpage_countwords"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L847",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_pages_landingpage_faqitem"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L823",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_pages_landingpage_featurecard"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L502",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_pages_landingpage_hero_profiles"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L494",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_pages_landingpage_heroprofile"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L575",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_pages_landingpage_herosubtitle"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_pages_landingpage_landingpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L777",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_pages_landingpage_pipelinemock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L618",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_pages_landingpage_pipelinesection"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L605",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_pages_landingpage_pipelinestep"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L871",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_pages_landingpage_pricingcard"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L596",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_pages_landingpage_trustitem"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L540",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_pages_landingpage_useheroticker"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L462",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage",
+ "target": "frontend_src_pages_landingpage_usescrolly"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/LandingPage.test.tsx",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_landingpage_test",
+ "target": "frontend_src_pages_landingpage"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage_landingpage",
+ "target": "frontend_src_pages_landingpage_useheroticker"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/LandingPage.tsx",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_landingpage_landingpage",
+ "target": "frontend_src_pages_landingpage_usescrolly"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/LandingPage.test.tsx",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_landingpage_test",
+ "target": "frontend_src_pages_landingpage_landingpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_pages_mappage_malaysia_center"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_pages_mappage_mappage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_pages_mappage_my_bounds"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "frontend_src_pages_mappage_phase"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/MapPage.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_mappage",
+ "target": "shared_index_imageryquality"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/MapPage.test.tsx",
+ "source_location": "L93",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_mappage_test",
+ "target": "frontend_src_pages_mappage"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/MapPage.test.tsx",
+ "source_location": "L93",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_mappage_test",
+ "target": "frontend_src_pages_mappage_mappage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/NotFoundPage.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_notfoundpage",
+ "target": "frontend_src_pages_notfoundpage_notfoundpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PdfPreviewPage.tsx",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_pdfpreviewpage",
+ "target": "frontend_src_pages_pdfpreviewpage_applythemefromparam"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PdfPreviewPage.tsx",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_pdfpreviewpage",
+ "target": "frontend_src_pages_pdfpreviewpage_pdfpreviewpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PdfPreviewPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_pdfpreviewpage",
+ "target": "frontend_src_pages_pdfpreviewpage_window"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PdfPreviewPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_pdfpreviewpage",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PdfPreviewPage.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_pdfpreviewpage",
+ "target": "shared_index_tariffconfigresponse"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PdfPreviewPage.tsx",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_pdfpreviewpage_pdfpreviewpage",
+ "target": "frontend_src_pages_pdfpreviewpage_applythemefromparam"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PrivacyPage.tsx",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_privacypage",
+ "target": "frontend_src_pages_privacypage_privacypage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PrivacyPage.tsx",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_privacypage",
+ "target": "frontend_src_pages_privacypage_section"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PrivacyPage.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_privacypage",
+ "target": "frontend_src_pages_privacypage_section_order"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/PrivacyPage.tsx",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_privacypage",
+ "target": "frontend_src_pages_privacypage_sectionkey"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_pages_projectspage_formatresettime"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L50",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage",
+ "target": "frontend_src_pages_projectspage_projectspage"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/ProjectsPage.test.tsx",
+ "source_location": "L62",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_projectspage_test",
+ "target": "frontend_src_pages_projectspage"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/ProjectsPage.tsx",
+ "source_location": "L71",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_projectspage_projectspage",
+ "target": "frontend_src_pages_projectspage_formatresettime"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/ProjectsPage.test.tsx",
+ "source_location": "L62",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_projectspage_test",
+ "target": "frontend_src_pages_projectspage_projectspage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_pages_settingspage_settingcard"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L64",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_pages_settingspage_settingspage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_pages_settingspage_tour_keys"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L50",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage",
+ "target": "frontend_src_pages_settingspage_usenotifications"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SettingsPage.tsx",
+ "source_location": "L69",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_settingspage_settingspage",
+ "target": "frontend_src_pages_settingspage_usenotifications"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignInPage.tsx",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signinpage",
+ "target": "frontend_src_pages_signinpage_signinpage"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/SignInPage.test.tsx",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_signinpage_test",
+ "target": "frontend_src_pages_signinpage"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/SignInPage.test.tsx",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_signinpage_test",
+ "target": "frontend_src_pages_signinpage_signinpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/SignUpPage.tsx",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_signuppage",
+ "target": "frontend_src_pages_signuppage_signuppage"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/SignUpPage.test.tsx",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_signuppage_test",
+ "target": "frontend_src_pages_signuppage"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/SignUpPage.test.tsx",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_signuppage_test",
+ "target": "frontend_src_pages_signuppage_signuppage"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/WorkbenchPage.test.tsx",
+ "source_location": "L240",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_workbenchpage_test",
+ "target": "frontend_src_pages_workbenchpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L50",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_pages_workbenchpage_getpanelannualenergy"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L55",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "frontend_src_pages_workbenchpage_workbenchpage"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "shared_index"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "shared_layoutpreferences_layoutpreferences"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "shared_panelmodels_getpanelmodel"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage",
+ "target": "shared_panelmodels_panel_models"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L312",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_workbenchpage_workbenchpage",
+ "target": "frontend_src_pages_workbenchpage_getpanelannualenergy"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/WorkbenchPage.test.tsx",
+ "source_location": "L240",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_workbenchpage_test",
+ "target": "frontend_src_pages_workbenchpage_workbenchpage"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "frontend/src/pages/WorkbenchPage.tsx",
+ "source_location": "L68",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "frontend_src_pages_workbenchpage_workbenchpage",
+ "target": "shared_panelmodels_getpanelmodel"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/AnalysisPage.test.tsx",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_analysispage_test",
+ "target": "frontend_src_pages_tests_analysispage_test_handleexportpdfmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/AnalysisPage.test.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_analysispage_test",
+ "target": "frontend_src_pages_tests_analysispage_test_markprojectvisitedmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/AnalysisPage.test.tsx",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_analysispage_test",
+ "target": "frontend_src_pages_tests_analysispage_test_navigatemock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/AnalysisPage.test.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_analysispage_test",
+ "target": "frontend_src_pages_tests_analysispage_test_notifyerrormock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/AnalysisPage.test.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_analysispage_test",
+ "target": "frontend_src_pages_tests_analysispage_test_notifysuccessmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/AnalysisPage.test.tsx",
+ "source_location": "L177",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_analysispage_test",
+ "target": "frontend_src_pages_tests_analysispage_test_renderpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/AnalysisPage.test.tsx",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_analysispage_test",
+ "target": "frontend_src_pages_tests_analysispage_test_saveanalysismock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/AnalyticsPage.test.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_analyticspage_test",
+ "target": "frontend_src_pages_tests_analyticspage_test_listprojectsmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/AnalyticsPage.test.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_analyticspage_test",
+ "target": "frontend_src_pages_tests_analyticspage_test_navigatemock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/AnalyticsPage.test.tsx",
+ "source_location": "L94",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_analyticspage_test",
+ "target": "frontend_src_pages_tests_analyticspage_test_renderpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/DashboardPage.test.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_dashboardpage_test",
+ "target": "frontend_src_pages_tests_dashboardpage_test_listprojectsmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/DashboardPage.test.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_dashboardpage_test",
+ "target": "frontend_src_pages_tests_dashboardpage_test_navigatemock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/DashboardPage.test.tsx",
+ "source_location": "L63",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_dashboardpage_test",
+ "target": "frontend_src_pages_tests_dashboardpage_test_renderpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/DashboardPage.test.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_dashboardpage_test",
+ "target": "frontend_src_pages_tests_dashboardpage_test_useauthmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/DashboardPage.test.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_dashboardpage_test",
+ "target": "frontend_src_pages_tests_dashboardpage_test_usequotamock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/LandingPage.test.tsx",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_landingpage_test",
+ "target": "frontend_src_pages_tests_landingpage_test_renderpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/LandingPage.test.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_landingpage_test",
+ "target": "frontend_src_pages_tests_landingpage_test_useauthmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/MapPage.test.tsx",
+ "source_location": "L50",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_mappage_test",
+ "target": "frontend_src_pages_tests_mappage_test_constructor"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/MapPage.test.tsx",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_mappage_test",
+ "target": "frontend_src_pages_tests_mappage_test_createprojectmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/MapPage.test.tsx",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_mappage_test",
+ "target": "frontend_src_pages_tests_mappage_test_getlocationstatusmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/MapPage.test.tsx",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_mappage_test",
+ "target": "frontend_src_pages_tests_mappage_test_getprojectmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/MapPage.test.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_mappage_test",
+ "target": "frontend_src_pages_tests_mappage_test_navigatemock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/MapPage.test.tsx",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_mappage_test",
+ "target": "frontend_src_pages_tests_mappage_test_probelocationmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/MapPage.test.tsx",
+ "source_location": "L95",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_mappage_test",
+ "target": "frontend_src_pages_tests_mappage_test_renderpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/MapPage.test.tsx",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_mappage_test",
+ "target": "frontend_src_pages_tests_mappage_test_resolvelocationmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/ProjectsPage.test.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_projectspage_test",
+ "target": "frontend_src_pages_tests_projectspage_test_deleteprojectmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/ProjectsPage.test.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_projectspage_test",
+ "target": "frontend_src_pages_tests_projectspage_test_listprojectsmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/ProjectsPage.test.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_projectspage_test",
+ "target": "frontend_src_pages_tests_projectspage_test_navigatemock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/ProjectsPage.test.tsx",
+ "source_location": "L64",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_projectspage_test",
+ "target": "frontend_src_pages_tests_projectspage_test_renderpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/ProjectsPage.test.tsx",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_projectspage_test",
+ "target": "frontend_src_pages_tests_projectspage_test_usequotamock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/SignInPage.test.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_signinpage_test",
+ "target": "frontend_src_pages_tests_signinpage_test_navigatemock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/SignInPage.test.tsx",
+ "source_location": "L49",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_signinpage_test",
+ "target": "frontend_src_pages_tests_signinpage_test_renderpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/SignInPage.test.tsx",
+ "source_location": "L41",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_signinpage_test",
+ "target": "frontend_src_pages_tests_signinpage_test_setauth"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/SignInPage.test.tsx",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_signinpage_test",
+ "target": "frontend_src_pages_tests_signinpage_test_signinmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/SignInPage.test.tsx",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_signinpage_test",
+ "target": "frontend_src_pages_tests_signinpage_test_useauthmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/SignUpPage.test.tsx",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_signuppage_test",
+ "target": "frontend_src_pages_tests_signuppage_test_renderpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/SignUpPage.test.tsx",
+ "source_location": "L30",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_signuppage_test",
+ "target": "frontend_src_pages_tests_signuppage_test_setauth"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/SignUpPage.test.tsx",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_signuppage_test",
+ "target": "frontend_src_pages_tests_signuppage_test_signupmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/SignUpPage.test.tsx",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_signuppage_test",
+ "target": "frontend_src_pages_tests_signuppage_test_useauthmock"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/src/pages/__tests__/WorkbenchPage.test.tsx",
+ "source_location": "L242",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_src_pages_tests_workbenchpage_test",
+ "target": "frontend_src_pages_tests_workbenchpage_test_renderpage"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig",
+ "target": "frontend_tsconfig_compileroptions"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig",
+ "target": "frontend_tsconfig_exclude"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig",
+ "target": "frontend_tsconfig_extends"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig",
+ "target": "frontend_tsconfig_include"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L2",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig",
+ "target": "frontend_tsconfig_json_ref_tsconfig_json"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig",
+ "target": "frontend_tsconfig_references"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig_compileroptions",
+ "target": "frontend_tsconfig_compileroptions_jsx"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig_compileroptions",
+ "target": "frontend_tsconfig_compileroptions_lib"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig_compileroptions",
+ "target": "frontend_tsconfig_compileroptions_noemit"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig_compileroptions",
+ "target": "frontend_tsconfig_compileroptions_paths"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig_compileroptions",
+ "target": "frontend_tsconfig_compileroptions_rootdir"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig_compileroptions",
+ "target": "frontend_tsconfig_compileroptions_types"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L4",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig_compileroptions_lib",
+ "target": "frontend_tsconfig_json_ref_es2020"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L4",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig_compileroptions_lib",
+ "target": "ref_dom"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L4",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig_compileroptions_lib",
+ "target": "ref_dom_iterable"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L8",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig_compileroptions_types",
+ "target": "ref_google_maps"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L8",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig_compileroptions_types",
+ "target": "ref_vite_client"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig_compileroptions_paths",
+ "target": "frontend_tsconfig_paths_shared_types"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L11",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig_paths_shared_types",
+ "target": "frontend_tsconfig_json_ref_shared_index_ts"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L14",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig_include",
+ "target": "frontend_tsconfig_json_ref_src_ts"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L14",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig_include",
+ "target": "ref_src_tsx"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L15",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig_exclude",
+ "target": "frontend_tsconfig_json_ref_src_test_ts"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "frontend/tsconfig.json",
+ "source_location": "L15",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "frontend_tsconfig_exclude",
+ "target": "ref_src_test_tsx"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package",
+ "target": "package_dependencies"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package",
+ "target": "package_devdependencies"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package",
+ "target": "package_engines"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package",
+ "target": "package_license"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package",
+ "target": "package_name"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package",
+ "target": "package_packagemanager"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package",
+ "target": "package_prisma"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package",
+ "target": "package_private"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package",
+ "target": "package_scripts"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_engines",
+ "target": "package_engines_node"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_prisma",
+ "target": "package_prisma_seed"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_scripts",
+ "target": "package_scripts_build"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_scripts",
+ "target": "package_scripts_db_migrate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_scripts",
+ "target": "package_scripts_db_migrate_deploy"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_scripts",
+ "target": "package_scripts_db_seed"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_scripts",
+ "target": "package_scripts_dev"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_scripts",
+ "target": "package_scripts_dev_backend"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_scripts",
+ "target": "package_scripts_dev_frontend"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_scripts",
+ "target": "package_scripts_format"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L26",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_scripts",
+ "target": "package_scripts_heroku_postbuild"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_scripts",
+ "target": "package_scripts_lint"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_scripts",
+ "target": "package_scripts_prisma_generate"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_scripts",
+ "target": "package_scripts_start"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_scripts",
+ "target": "package_scripts_test"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_scripts",
+ "target": "package_scripts_typecheck"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L29",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_dependencies",
+ "target": "package_dependencies_prisma_client"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L29",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_dependencies_prisma_client",
+ "target": "package_json_prisma_client"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_devdependencies",
+ "target": "package_devdependencies_concurrently"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_devdependencies",
+ "target": "package_devdependencies_eslint"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_devdependencies",
+ "target": "package_devdependencies_eslint_config_prettier"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_devdependencies",
+ "target": "package_devdependencies_eslint_js"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_devdependencies",
+ "target": "package_devdependencies_eslint_plugin_react_hooks"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L37",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_devdependencies",
+ "target": "package_devdependencies_globals"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_devdependencies",
+ "target": "package_devdependencies_prettier"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_devdependencies",
+ "target": "package_devdependencies_prisma"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L40",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_devdependencies",
+ "target": "package_devdependencies_typescript_eslint"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L32",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_devdependencies_eslint_js",
+ "target": "eslint_js"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L33",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_devdependencies_concurrently",
+ "target": "concurrently"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L34",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_devdependencies_eslint",
+ "target": "eslint"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L35",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_devdependencies_eslint_config_prettier",
+ "target": "package_json_eslint_config_prettier"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L36",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_devdependencies_eslint_plugin_react_hooks",
+ "target": "eslint_plugin_react_hooks"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L37",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_devdependencies_globals",
+ "target": "globals"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L38",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_devdependencies_prettier",
+ "target": "prettier"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L39",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_devdependencies_prisma",
+ "target": "package_json_prisma"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "package.json",
+ "source_location": "L40",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "package_devdependencies_typescript_eslint",
+ "target": "typescript_eslint"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "prisma/seed.ts",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "prisma_seed",
+ "target": "prisma_seed_dirname"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "prisma/seed.ts",
+ "source_location": "L69",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "prisma_seed",
+ "target": "prisma_seed_eei_table"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "prisma/seed.ts",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "prisma_seed",
+ "target": "prisma_seed_main"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "prisma/seed.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "prisma_seed",
+ "target": "prisma_seed_prisma"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "prisma/seed.ts",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "prisma_seed",
+ "target": "prisma_seed_rates"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "prisma/seed.ts",
+ "source_location": "L58",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "prisma_seed",
+ "target": "prisma_seed_thresholds"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "prisma/seed.ts",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "prisma_seed",
+ "target": "shared_tariffdefaults"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "prisma/seed.ts",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "prisma_seed",
+ "target": "shared_tariffdefaults_tariffdefaults"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_api_pdf_export",
+ "target": "services_pdf_service_api_pdf_export_bodyschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L46",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_api_pdf_export",
+ "target": "services_pdf_service_api_pdf_export_handler"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_api_pdf_export",
+ "target": "services_pdf_service_api_pdf_export_normalizeorigin"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_api_pdf_export",
+ "target": "services_pdf_service_api_pdf_export_page_margin"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_api_pdf_export",
+ "target": "services_pdf_service_api_pdf_export_parseallowedorigins"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_api_pdf_export",
+ "target": "services_pdf_service_api_pdf_export_resolvecorsorigin"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_api_pdf_export",
+ "target": "services_pdf_service_api_pdf_export_setcorsheaders"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_api_pdf_export",
+ "target": "services_pdf_service_api_pdf_export_viewport"
+ },
+ {
+ "relation": "references",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L73",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "services_pdf_service_api_pdf_export_handler",
+ "target": "services_pdf_service_api_pdf_export_bodyschema"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L47",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_api_pdf_export_handler",
+ "target": "services_pdf_service_api_pdf_export_parseallowedorigins"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L34",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_api_pdf_export_resolvecorsorigin",
+ "target": "services_pdf_service_api_pdf_export_normalizeorigin"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L53",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_api_pdf_export_handler",
+ "target": "services_pdf_service_api_pdf_export_resolvecorsorigin"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/api/pdf-export.ts",
+ "source_location": "L63",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_api_pdf_export_handler",
+ "target": "services_pdf_service_api_pdf_export_setcorsheaders"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package",
+ "target": "services_pdf_service_package_dependencies"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package",
+ "target": "services_pdf_service_package_description"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package",
+ "target": "services_pdf_service_package_devdependencies"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package",
+ "target": "services_pdf_service_package_engines"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package",
+ "target": "services_pdf_service_package_license"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package",
+ "target": "services_pdf_service_package_name"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package",
+ "target": "services_pdf_service_package_private"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package",
+ "target": "services_pdf_service_package_scripts"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package",
+ "target": "services_pdf_service_package_type"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package",
+ "target": "services_pdf_service_package_version"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package_engines",
+ "target": "services_pdf_service_package_engines_node"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package_scripts",
+ "target": "services_pdf_service_package_scripts_deploy"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package_scripts",
+ "target": "services_pdf_service_package_scripts_deploy_preview"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package_scripts",
+ "target": "services_pdf_service_package_scripts_dev"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package_scripts",
+ "target": "services_pdf_service_package_scripts_typecheck"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package_dependencies",
+ "target": "services_pdf_service_package_dependencies_puppeteer_core"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package_dependencies",
+ "target": "services_pdf_service_package_dependencies_sparticuz_chromium"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package_dependencies",
+ "target": "services_pdf_service_package_dependencies_zod"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L18",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package_dependencies_sparticuz_chromium",
+ "target": "sparticuz_chromium"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L19",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package_dependencies_puppeteer_core",
+ "target": "puppeteer_core"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L20",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package_dependencies_zod",
+ "target": "services_pdf_service_package_json_zod"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package_devdependencies",
+ "target": "services_pdf_service_package_devdependencies_types_node"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package_devdependencies",
+ "target": "services_pdf_service_package_devdependencies_typescript"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L24",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package_devdependencies",
+ "target": "services_pdf_service_package_devdependencies_vercel_node"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L23",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package_devdependencies_types_node",
+ "target": "services_pdf_service_package_json_types_node"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L24",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package_devdependencies_vercel_node",
+ "target": "vercel_node"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/package.json",
+ "source_location": "L25",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_package_devdependencies_typescript",
+ "target": "services_pdf_service_package_json_typescript"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_tsconfig",
+ "target": "services_pdf_service_tsconfig_compileroptions"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_tsconfig",
+ "target": "services_pdf_service_tsconfig_include"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_tsconfig_compileroptions",
+ "target": "services_pdf_service_tsconfig_compileroptions_allowsyntheticdefaultimports"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_tsconfig_compileroptions",
+ "target": "services_pdf_service_tsconfig_compileroptions_esmoduleinterop"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_tsconfig_compileroptions",
+ "target": "services_pdf_service_tsconfig_compileroptions_isolatedmodules"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_tsconfig_compileroptions",
+ "target": "services_pdf_service_tsconfig_compileroptions_lib"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_tsconfig_compileroptions",
+ "target": "services_pdf_service_tsconfig_compileroptions_module"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_tsconfig_compileroptions",
+ "target": "services_pdf_service_tsconfig_compileroptions_moduleresolution"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_tsconfig_compileroptions",
+ "target": "services_pdf_service_tsconfig_compileroptions_noemit"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_tsconfig_compileroptions",
+ "target": "services_pdf_service_tsconfig_compileroptions_nouncheckedindexedaccess"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_tsconfig_compileroptions",
+ "target": "services_pdf_service_tsconfig_compileroptions_resolvejsonmodule"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_tsconfig_compileroptions",
+ "target": "services_pdf_service_tsconfig_compileroptions_skiplibcheck"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_tsconfig_compileroptions",
+ "target": "services_pdf_service_tsconfig_compileroptions_strict"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_tsconfig_compileroptions",
+ "target": "services_pdf_service_tsconfig_compileroptions_target"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L6",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_tsconfig_compileroptions_lib",
+ "target": "ref_es2022"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/tsconfig.json",
+ "source_location": "L18",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_tsconfig_include",
+ "target": "ref_api_ts"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/vercel.json",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_vercel",
+ "target": "services_pdf_service_vercel_functions"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/vercel.json",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_vercel",
+ "target": "services_pdf_service_vercel_schema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/vercel.json",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_vercel_functions",
+ "target": "services_pdf_service_vercel_functions_api_pdf_export_ts"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/vercel.json",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_vercel_functions_api_pdf_export_ts",
+ "target": "services_pdf_service_vercel_api_pdf_export_ts_maxduration"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "services/pdf-service/vercel.json",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "services_pdf_service_vercel_functions_api_pdf_export_ts",
+ "target": "services_pdf_service_vercel_api_pdf_export_ts_memory"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L150",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_costmodel",
+ "target": "shared_costmodel_computesystemcost"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L28",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_costmodel",
+ "target": "shared_costmodel_costbreakdown"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L45",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_costmodel",
+ "target": "shared_costmodel_costinputs"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L64",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_costmodel",
+ "target": "shared_costmodel_costmodeldefaults"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L116",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_costmodel",
+ "target": "shared_costmodel_electricalboscost"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L53",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_costmodel",
+ "target": "shared_costmodel_invertersku"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L105",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_costmodel",
+ "target": "shared_costmodel_permitcost"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_costmodel",
+ "target": "shared_costmodel_rooftype"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L121",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_costmodel",
+ "target": "shared_costmodel_scaffoldingcost"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L131",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_costmodel",
+ "target": "shared_costmodel_selectinverter"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_costmodel",
+ "target": "shared_costmodel_supplyphase"
+ },
+ {
+ "relation": "re_exports",
+ "context": "export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L199",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_costmodel"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L200",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_costmodel_rooftype"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L200",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_costmodel_supplyphase"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L200",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_costmodel_costbreakdown"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L200",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_costmodel_costinputs"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L158",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_costmodel_computesystemcost",
+ "target": "shared_costmodel_permitcost"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L156",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_costmodel_computesystemcost",
+ "target": "shared_costmodel_electricalboscost"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L157",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_costmodel_computesystemcost",
+ "target": "shared_costmodel_scaffoldingcost"
+ },
+ {
+ "relation": "calls",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/costModel.ts",
+ "source_location": "L154",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_costmodel_computesystemcost",
+ "target": "shared_costmodel_selectinverter"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L199",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_costmodel_computesystemcost"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L99",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_createprojectrequest"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L89",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_fluxrecomputebatchrequest"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L94",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_fluxrecomputebatchresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L73",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_fluxrecomputerequest"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L83",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_fluxrecomputeresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L175",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_healthresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_imageryquality"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L59",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_locationdataresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_locationstatus"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L54",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_locationstatusresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L66",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_probelocationresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_projectstatus"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L39",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_resolvelocationrequest"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L48",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_resolvelocationresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L116",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_saveanalysisrequest"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L105",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_savelayoutrequest"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L160",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_tariffconfigresponse"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L125",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_tariffrates"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L146",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_tariffthresholds"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L111",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_index_updatelayoutpreferencesrequest"
+ },
+ {
+ "relation": "re_exports",
+ "context": "export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_layoutpreferences"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_layoutpreferences_bill_range_to_kwh_per_month"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_layoutpreferences_billrange"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_layoutpreferences_billrangeschema"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_layoutpreferences_layoutpreferences"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_layoutpreferences_layoutpreferencespartialschema"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_layoutpreferences_layoutpreferencesschema"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_layoutpreferences_roofdirection"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_layoutpreferences_roofdirectionschema"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L33",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_layoutpreferences_sizinggoal"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_layoutpreferences_sizinggoalschema"
+ },
+ {
+ "relation": "re_exports",
+ "context": "export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L197",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_panelmodels"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L197",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_panelmodels_getpanelmodel"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L197",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_panelmodels_panel_models"
+ },
+ {
+ "relation": "re_exports",
+ "context": "export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_paneltypes"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_paneltypes_paneledit"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L35",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_paneltypes_paneleditschema"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L196",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_paneltypes_panelmodel"
+ },
+ {
+ "relation": "re_exports",
+ "context": "export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L179",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_projectdtos"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L189",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_projectdtos_analysisconfigdto"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L179",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_projectdtos_analysisconfigschema"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L189",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_projectdtos_analysisresultsdto"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L179",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_projectdtos_analysisresultsschema"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L189",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_projectdtos_buildinginsightsdto"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L179",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_projectdtos_buildinginsightsschema"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L179",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_projectdtos_createprojectrequestschema"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L179",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_projectdtos_saveanalysisrequestschema"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L179",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_projectdtos_savelayoutrequestschema"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L189",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_projectdtos_storedanalysisconfigdto"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L179",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_projectdtos_storedanalysisconfigschema"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L179",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_projectdtos_updatelayoutpreferencesrequestschema"
+ },
+ {
+ "relation": "re_exports",
+ "context": "export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L202",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_quota"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L203",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_quota_quotasummary"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L202",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_quota_tier_daily_limits"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L203",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_quota_usertier"
+ },
+ {
+ "relation": "re_exports",
+ "context": "export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L205",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_tariffdefaults"
+ },
+ {
+ "relation": "re_exports",
+ "context": "re-export",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/index.ts",
+ "source_location": "L206",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_index",
+ "target": "shared_tariffdefaults_tariffdefaults"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L54",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_layoutpreferences",
+ "target": "shared_layoutpreferences_bill_range_to_kwh_per_month"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_layoutpreferences",
+ "target": "shared_layoutpreferences_billrange"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_layoutpreferences",
+ "target": "shared_layoutpreferences_billrangeschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L45",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_layoutpreferences",
+ "target": "shared_layoutpreferences_layoutpreferences"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L42",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_layoutpreferences",
+ "target": "shared_layoutpreferences_layoutpreferencespartialschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L32",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_layoutpreferences",
+ "target": "shared_layoutpreferences_layoutpreferencesschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_layoutpreferences",
+ "target": "shared_layoutpreferences_roofdirection"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_layoutpreferences",
+ "target": "shared_layoutpreferences_roofdirectionschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L23",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_layoutpreferences",
+ "target": "shared_layoutpreferences_sizinggoal"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/layoutPreferences.ts",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_layoutpreferences",
+ "target": "shared_layoutpreferences_sizinggoalschema"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_layoutpreferences"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_layoutpreferences_layoutpreferencespartialschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/package.json",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_package",
+ "target": "shared_package_devdependencies"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/package.json",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_package",
+ "target": "shared_package_exports"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/package.json",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_package",
+ "target": "shared_package_license"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/package.json",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_package",
+ "target": "shared_package_main"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/package.json",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_package",
+ "target": "shared_package_name"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/package.json",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_package",
+ "target": "shared_package_private"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/package.json",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_package",
+ "target": "shared_package_scripts"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/package.json",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_package",
+ "target": "shared_package_type"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/package.json",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_package",
+ "target": "shared_package_types"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/package.json",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_package",
+ "target": "shared_package_version"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/package.json",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_package_scripts",
+ "target": "shared_package_scripts_build"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/package.json",
+ "source_location": "L9",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_package_scripts",
+ "target": "shared_package_scripts_dev"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/package.json",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_package_devdependencies",
+ "target": "shared_package_devdependencies_typescript"
+ },
+ {
+ "relation": "imports",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/package.json",
+ "source_location": "L21",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_package_devdependencies_typescript",
+ "target": "shared_package_json_typescript"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/panelModels.ts",
+ "source_location": "L96",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_panelmodels",
+ "target": "shared_panelmodels_getpanelmodel"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/panelModels.ts",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_panelmodels",
+ "target": "shared_panelmodels_panel_models"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/panelModels.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_panelmodels",
+ "target": "shared_paneltypes"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/panelModels.ts",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_panelmodels",
+ "target": "shared_paneltypes_panelmodel"
+ },
+ {
+ "relation": "references",
+ "context": "call",
+ "confidence": "EXTRACTED",
+ "confidence_score": 1.0,
+ "source_file": "shared/panelModels.ts",
+ "source_location": "L97",
+ "weight": 1.0,
+ "_origin": "ast",
+ "source": "shared_panelmodels_getpanelmodel",
+ "target": "shared_panelmodels_panel_models"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/panelTypes.ts",
+ "source_location": "L36",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_paneltypes",
+ "target": "shared_paneltypes_paneledit"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/panelTypes.ts",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_paneltypes",
+ "target": "shared_paneltypes_paneleditschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/panelTypes.ts",
+ "source_location": "L44",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_paneltypes",
+ "target": "shared_paneltypes_panelmodel"
+ },
+ {
+ "relation": "imports_from",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_paneltypes"
+ },
+ {
+ "relation": "imports",
+ "context": "import",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_paneltypes_paneleditschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L256",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_projectdtos_analysisconfigdto"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L153",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_projectdtos_analysisconfigschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L260",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_projectdtos_analysisresultsdto"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L193",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_projectdtos_analysisresultsschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L93",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_projectdtos_billbreakdownschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L254",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_projectdtos_buildinginsightsdto"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L31",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_projectdtos_buildinginsightsschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L223",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_projectdtos_createprojectrequestschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L138",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_projectdtos_inverterreplacementschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_projectdtos_latlngschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L118",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_projectdtos_monthlybreakdownschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L239",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_projectdtos_saveanalysisrequestschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L231",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_projectdtos_savelayoutrequestschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L258",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_projectdtos_storedanalysisconfigdto"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L182",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_projectdtos_storedanalysisconfigschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L64",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_projectdtos_tariffratesschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/projectDtos.ts",
+ "source_location": "L247",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_projectdtos",
+ "target": "shared_projectdtos_updatelayoutpreferencesrequestschema"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/quota.ts",
+ "source_location": "L38",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_quota",
+ "target": "shared_quota_quotasummary"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/quota.ts",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_quota",
+ "target": "shared_quota_tier_daily_limits"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/quota.ts",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_quota",
+ "target": "shared_quota_usertier"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/tariffDefaults.ts",
+ "source_location": "L27",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_tariffdefaults",
+ "target": "shared_tariffdefaults_tariffdefaults"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/tsconfig.json",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_tsconfig",
+ "target": "shared_tsconfig_compileroptions"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/tsconfig.json",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_tsconfig",
+ "target": "shared_tsconfig_extends"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/tsconfig.json",
+ "source_location": "L8",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_tsconfig",
+ "target": "shared_tsconfig_include"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/tsconfig.json",
+ "source_location": "L2",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_tsconfig",
+ "target": "shared_tsconfig_json_ref_tsconfig_json"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/tsconfig.json",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_tsconfig_compileroptions",
+ "target": "shared_tsconfig_compileroptions_composite"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/tsconfig.json",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_tsconfig_compileroptions",
+ "target": "shared_tsconfig_compileroptions_outdir"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/tsconfig.json",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_tsconfig_compileroptions",
+ "target": "shared_tsconfig_compileroptions_rootdir"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "shared/tsconfig.json",
+ "source_location": "L8",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "shared_tsconfig_include",
+ "target": "ref_ts"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L2",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig",
+ "target": "tsconfig_compileroptions"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L25",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig",
+ "target": "tsconfig_exclude"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L16",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_compileroptions",
+ "target": "tsconfig_compileroptions_allowimportingtsextensions"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L18",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_compileroptions",
+ "target": "tsconfig_compileroptions_declaration"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L19",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_compileroptions",
+ "target": "tsconfig_compileroptions_declarationmap"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L11",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_compileroptions",
+ "target": "tsconfig_compileroptions_esmoduleinterop"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L13",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_compileroptions",
+ "target": "tsconfig_compileroptions_forceconsistentcasinginfilenames"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L15",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_compileroptions",
+ "target": "tsconfig_compileroptions_isolatedmodules"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L6",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_compileroptions",
+ "target": "tsconfig_compileroptions_lib"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L4",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_compileroptions",
+ "target": "tsconfig_compileroptions_module"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L5",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_compileroptions",
+ "target": "tsconfig_compileroptions_moduleresolution"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L10",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_compileroptions",
+ "target": "tsconfig_compileroptions_nouncheckedindexedaccess"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L21",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_compileroptions",
+ "target": "tsconfig_compileroptions_paths"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L14",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_compileroptions",
+ "target": "tsconfig_compileroptions_resolvejsonmodule"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L17",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_compileroptions",
+ "target": "tsconfig_compileroptions_rewriterelativeimportextensions"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L12",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_compileroptions",
+ "target": "tsconfig_compileroptions_skiplibcheck"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L20",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_compileroptions",
+ "target": "tsconfig_compileroptions_sourcemap"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L7",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_compileroptions",
+ "target": "tsconfig_compileroptions_strict"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L3",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_compileroptions",
+ "target": "tsconfig_compileroptions_target"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L6",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_compileroptions_lib",
+ "target": "tsconfig_json_ref_es2020"
+ },
+ {
+ "relation": "contains",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L22",
+ "weight": 1.0,
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_compileroptions_paths",
+ "target": "tsconfig_paths_shared_types"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L22",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_paths_shared_types",
+ "target": "tsconfig_json_ref_shared_index_ts"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L25",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_exclude",
+ "target": "ref_dist"
+ },
+ {
+ "relation": "extends",
+ "confidence": "EXTRACTED",
+ "source_file": "tsconfig.json",
+ "source_location": "L25",
+ "weight": 1.0,
+ "context": "import",
+ "_origin": "ast",
+ "confidence_score": 1.0,
+ "source": "tsconfig_exclude",
+ "target": "ref_node_modules"
+ }
+ ],
+ "hyperedges": [],
+ "built_at_commit": "5c2af1aa08483460e48e17cc53a14fdf83d05a93"
+}
\ No newline at end of file