@skyhook-io/radar-app 1.8.7 → 1.8.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +4 -4
- package/src/App.tsx +58 -50
- package/src/api/client.argoResourceSync.test.ts +69 -0
- package/src/api/client.rightsizing.test.ts +32 -0
- package/src/api/client.ts +1222 -234
- package/src/api/timelineSource.ts +4 -2
- package/src/components/applications/ApplicationsView.tsx +613 -219
- package/src/components/cost/ApplicationCostTab.test.ts +204 -0
- package/src/components/cost/ApplicationCostTab.tsx +571 -0
- package/src/components/cost/CostTrendChart.tsx +103 -72
- package/src/components/cost/CostView.test.ts +12 -0
- package/src/components/cost/CostView.tsx +494 -229
- package/src/components/cost/CostViewTabs.test.tsx +21 -0
- package/src/components/cost/CostViewTabs.tsx +40 -0
- package/src/components/cost/CurrentAllocationUse.test.ts +21 -0
- package/src/components/cost/CurrentAllocationUse.tsx +126 -0
- package/src/components/cost/WorkloadCostTab.test.ts +153 -0
- package/src/components/cost/WorkloadCostTab.tsx +372 -0
- package/src/components/cost/cloud-console.test.ts +39 -0
- package/src/components/cost/cloud-console.ts +81 -0
- package/src/components/cost/errors.ts +8 -0
- package/src/components/cost/format.test.ts +27 -0
- package/src/components/cost/format.ts +46 -0
- package/src/components/cost/kinds.ts +5 -0
- package/src/components/diagnose/AISettings.tsx +7 -12
- package/src/components/gitops/ArgoResourceDiffLoader.tsx +23 -0
- package/src/components/gitops/GitOpsView.tsx +81 -14
- package/src/components/gitops/RevisionMetaChip.tsx +63 -0
- package/src/components/helm/HelmCompareRoute.tsx +1 -2
- package/src/components/helm/ManifestDiffViewer.tsx +1 -31
- package/src/components/helm/ValuesDiffPreview.tsx +2 -3
- package/src/components/home/CostCard.tsx +21 -36
- package/src/components/resource/RightsizingStrip.test.ts +109 -0
- package/src/components/resource/RightsizingStrip.tsx +319 -123
- package/src/components/rightsizing/RightsizingScanView.tsx +938 -0
- package/src/components/rightsizing/copy.test.ts +56 -0
- package/src/components/rightsizing/model.test.ts +227 -0
- package/src/components/rightsizing/model.ts +158 -0
- package/src/components/rightsizing/presentation.test.ts +104 -0
- package/src/components/rightsizing/presentation.ts +94 -0
- package/src/components/settings/MyPermissionsDialog.tsx +66 -116
- package/src/components/settings/SettingsDialog.tsx +1268 -318
- package/src/components/timeline/TimelineList.tsx +35 -8
- package/src/components/timeline/TimelineView.tsx +156 -26
- package/src/components/timeline/TimelineView.urlparams.test.ts +43 -2
- package/src/components/workload/WorkloadView.tsx +711 -328
- package/src/index.css +5 -1
- package/src/main.tsx +1 -1
|
@@ -101,6 +101,7 @@ export interface TimelineOverviewResult {
|
|
|
101
101
|
export interface TimelineEventsResult {
|
|
102
102
|
data: TimelineEvent[] | undefined
|
|
103
103
|
isLoading: boolean
|
|
104
|
+
isFetching: boolean
|
|
104
105
|
isError: boolean
|
|
105
106
|
refetch: () => void
|
|
106
107
|
// Present only for sources that report coverage (retained).
|
|
@@ -142,7 +143,7 @@ function useLocalEvents(query: TimelineQuery): TimelineEventsResult {
|
|
|
142
143
|
// query and the list's windowed one): SSE-driven refetches then transfer only
|
|
143
144
|
// what arrived since the last full load. Dropdown-ranged (`since`) queries
|
|
144
145
|
// stay plain — they're small and their range moves with the clock.
|
|
145
|
-
const { data, isLoading, isError, refetch } = useChanges(
|
|
146
|
+
const { data, isLoading, isFetching, isError, refetch } = useChanges(
|
|
146
147
|
windowed
|
|
147
148
|
? { ...query, timeRange: 'all', limit: LOCAL_RING_LIMIT, deltaSync: true }
|
|
148
149
|
: { ...query, deltaSync: query.timeRange === 'all' },
|
|
@@ -165,7 +166,7 @@ function useLocalEvents(query: TimelineQuery): TimelineEventsResult {
|
|
|
165
166
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
166
167
|
[data, query.fromMs, query.toMs, query.limit, kindsKey, query.includeManaged],
|
|
167
168
|
)
|
|
168
|
-
return { data: events, isLoading, isError, refetch }
|
|
169
|
+
return { data: events, isLoading, isFetching, isError, refetch }
|
|
169
170
|
}
|
|
170
171
|
|
|
171
172
|
export const localSource: TimelineSource = {
|
|
@@ -517,6 +518,7 @@ function createRetainedEventsHook(
|
|
|
517
518
|
return {
|
|
518
519
|
data,
|
|
519
520
|
isLoading: base.isLoading,
|
|
521
|
+
isFetching: base.isFetching || live.isFetching,
|
|
520
522
|
// Base failure is a real error; a failing live poll must not blank an
|
|
521
523
|
// already-loaded range.
|
|
522
524
|
isError: base.isError,
|