@checkstack/healthcheck-frontend 0.6.0 → 0.7.1

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/CHANGELOG.md CHANGED
@@ -1,5 +1,97 @@
1
1
  # @checkstack/healthcheck-frontend
2
2
 
3
+ ## 0.7.1
4
+
5
+ ### Patch Changes
6
+
7
+ - deec10c: Fix production crash when opening health check accordion and enable sourcemaps
8
+
9
+ - Fixed TypeError in `HealthCheckLatencyChart` where recharts Tooltip content function was returning `undefined` instead of `null`, causing "can't access property 'value', o is undefined" error
10
+ - Enabled production sourcemaps in Vite config for better debugging of production errors
11
+
12
+ ## 0.7.0
13
+
14
+ ### Minor Changes
15
+
16
+ - 1f81b60: ### Clickable Run History with Deep Linking
17
+
18
+ **Backend (`healthcheck-backend`):**
19
+
20
+ - Added `getRunById` service method to fetch a single health check run by ID
21
+
22
+ **Schema (`healthcheck-common`):**
23
+
24
+ - Added `getRunById` RPC procedure for fetching individual runs
25
+ - Added `historyRun` route for deep linking to specific runs (`/history/:systemId/:configurationId/:runId`)
26
+
27
+ **Frontend (`healthcheck-frontend`):**
28
+
29
+ - Table rows in Recent Runs and Run History now navigate to detailed view instead of expanding inline
30
+ - Added "Selected Run" card that displays when navigating to a specific run
31
+ - Extracted `ExpandedResultView` into reusable component
32
+ - Fixed layout shift during table pagination by preserving previous data while loading
33
+ - Removed accordion expansion in favor of consistent navigation UX
34
+
35
+ ### Patch Changes
36
+
37
+ - 7a4c70e: Improved chart ordering consistency and status timeline readability
38
+
39
+ - **Chart ordering**: All charts now display data from left (oldest) to right (newest) for consistency
40
+ - Fixed `HealthCheckSparkline` to reverse status dots order
41
+ - Fixed `AutoChartGrid` `getAllValues()` to return values in chronological order
42
+ - Fixed `getLatestValue()` to return the newest run's value instead of the oldest
43
+ - **Status timeline redesign**: Replaced thin bar charts with readable equal-width segment strips
44
+ - Raw data: Each run gets equal visual space with 1px gaps between segments
45
+ - Aggregated data: Each bucket shows stacked proportional segments for healthy/degraded/unhealthy
46
+ - Added time span display in aggregated tooltips (e.g., "Jan 20, 09:00 - 10:00")
47
+ - Removed Recharts dependency for timeline, now uses pure CSS flexbox
48
+ - **Label update**: Renamed "Response Latency" chart to "Execution Duration" for accuracy
49
+ - **UI polish**: Added "~" prefix to duration formats in AggregatedDataBanner
50
+
51
+ - 090143b: ### Health Check Aggregation & UI Fixes
52
+
53
+ **Backend (`healthcheck-backend`):**
54
+
55
+ - Fixed tail-end bucket truncation where the last aggregated bucket was cut off at the interval boundary instead of extending to the query end date
56
+ - Added `rangeEnd` parameter to `reaggregateBuckets()` to properly extend the last bucket
57
+ - Fixed cross-tier merge logic (`mergeTieredBuckets`) to prevent hourly aggregates from blocking fresh raw data
58
+
59
+ **Schema (`healthcheck-common`):**
60
+
61
+ - Added `bucketEnd` field to `AggregatedBucketBaseSchema` so frontends know the actual end time of each bucket
62
+
63
+ **Frontend (`healthcheck-frontend`):**
64
+
65
+ - Updated all components to use `bucket.bucketEnd` instead of calculating from `bucketIntervalSeconds`
66
+ - Fixed aggregation mode detection: changed `>` to `>=` so 7-day queries use aggregated data when `rawRetentionDays` is 7
67
+ - Added ref-based memoization in `useHealthCheckData` to prevent layout shift during signal-triggered refetches
68
+ - Exposed `isFetching` state to show loading spinner during background refetches
69
+ - Added debounced custom date range with Apply button to prevent fetching on every field change
70
+ - Added validation preventing start date >= end date in custom ranges
71
+ - Added sparkline downsampling: when there are 60+ data points, they are aggregated into buckets with informative tooltips
72
+
73
+ **UI (`ui`):**
74
+
75
+ - Fixed `DateRangeFilter` presets to use true sliding windows (removed `startOfDay` from 7-day and 30-day ranges)
76
+ - Added `disabled` prop to `DateRangeFilter` and `DateTimePicker` components
77
+ - Added `onCustomChange` prop to `DateRangeFilter` for debounced custom date handling
78
+ - Improved layout: custom date pickers now inline with preset buttons on desktop
79
+ - Added responsive mobile layout: date pickers stack vertically with down arrow
80
+ - Added validation error display for invalid date ranges
81
+
82
+ - bc58c3f: ### Fix layout shift in paginated tables
83
+
84
+ - Preserve previous table data during loading to prevent layout shift
85
+ - Add inline loading spinner in table headers without affecting layout
86
+ - Add opacity to table rows during loading to indicate data refresh
87
+
88
+ - Updated dependencies [1f81b60]
89
+ - Updated dependencies [090143b]
90
+ - @checkstack/healthcheck-common@0.7.0
91
+ - @checkstack/ui@0.5.1
92
+ - @checkstack/dashboard-frontend@0.3.11
93
+ - @checkstack/auth-frontend@0.5.6
94
+
3
95
  ## 0.6.0
4
96
 
5
97
  ### Minor Changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@checkstack/healthcheck-frontend",
3
- "version": "0.6.0",
3
+ "version": "0.7.1",
4
4
  "type": "module",
5
5
  "main": "src/index.tsx",
6
6
  "scripts": {