tbphp
50ac12b003
feat(credentials): add compact usage and quota trends (#678)
* feat(credentials): add usage and subscription quota history
* fix(credentials): simplify subscription quota chart
* fix(credentials): restore compact usage trend
* fix(credentials): restore existing window usage
* fix(credentials): simplify compact trend charts
* fix(credentials): use view details icon and tooltip
* fix(credentials): clean quota history and chart leftovers
* feat(credentials): filter short quota windows and reuse trends
* fix(credentials): space quota trend points and connect gaps
* fix(subscription): sample quota history hourly and retain rebounds
* feat(credentials): overlay usage trend metrics
* fix(credentials): replace purple cost trend with teal
* feat(credentials): arrange linked trends in a compact grid
* fix(credentials): unify chart styling and scope tooltips
* fix(credentials): shorten quota trend heading
* fix(credentials): compact trends into a unified stats block
* fix(credentials): place three usage charts in one row
* fix(web): keep chart tooltips stable across data points
* fix(credentials): place lower chart tooltips below grid
* fix(credentials): preserve quota observations across transports
* fix(subscription): preserve quota history across transports
* fix(subscription): normalize quota observations before sampling
* fix(subscription): defer history until quota sources resolve
2026-09-17 21:12:12 +08:00
..
2026-09-02 16:29:59 +08:00
2026-09-16 21:56:51 +08:00
2026-09-16 21:56:51 +08:00
2026-09-16 21:56:51 +08:00
2026-09-16 21:56:51 +08:00
2026-09-09 23:05:09 +08:00
2026-08-24 20:07:11 +08:00
2026-08-24 20:07:11 +08:00
2026-08-20 23:51:04 +08:00
2026-09-09 23:05:09 +08:00
2026-09-08 13:33:06 +08:00
2026-09-09 23:05:09 +08:00
2026-09-09 23:05:09 +08:00
2026-08-29 21:26:32 +08:00
2026-09-09 23:05:09 +08:00
2026-08-29 21:26:32 +08:00
2026-09-09 23:05:09 +08:00
2026-09-09 23:05:09 +08:00
2026-09-09 23:05:09 +08:00
2026-09-09 15:06:50 +08:00
2026-09-09 23:05:09 +08:00
2026-08-29 21:26:32 +08:00
2026-08-24 20:07:11 +08:00
2026-07-29 21:44:53 +08:00
2026-08-29 21:26:32 +08:00
2026-08-24 20:07:11 +08:00
2026-09-09 23:05:09 +08:00
2026-09-08 19:44:39 +08:00
2026-09-11 13:10:29 +08:00
2026-08-19 11:27:35 +08:00
2026-09-08 19:44:39 +08:00
2026-09-08 19:44:39 +08:00
2026-09-08 17:18:08 +08:00
2026-09-07 21:21:16 +08:00
2026-09-07 21:21:16 +08:00
2026-09-08 17:18:08 +08:00
2026-08-24 20:07:11 +08:00
2026-09-08 17:18:08 +08:00
2026-09-16 21:56:51 +08:00
2026-08-28 21:43:43 +08:00
2026-08-28 21:43:43 +08:00
2026-09-07 21:21:16 +08:00
2026-09-08 20:05:22 +08:00
2026-09-13 12:26:46 +08:00
2026-09-07 21:21:16 +08:00
2026-09-08 20:05:22 +08:00
2026-09-09 15:50:02 +08:00
2026-09-08 19:44:39 +08:00
2026-09-16 21:56:51 +08:00
2026-09-11 12:59:01 +08:00
2026-09-11 12:59:01 +08:00
2026-09-17 21:12:12 +08:00
2026-09-17 21:12:12 +08:00
2026-09-06 09:29:35 +08:00
2026-09-07 09:49:55 +08:00
2026-09-08 19:44:39 +08:00
2026-09-09 08:05:43 +08:00
2026-09-09 08:05:43 +08:00
2026-08-24 20:07:11 +08:00
2026-08-30 18:20:28 +08:00
2026-09-13 12:26:46 +08:00
2026-09-17 09:38:50 +08:00
2026-09-01 19:56:40 +08:00
2026-09-10 20:04:23 +08:00
2026-09-08 19:44:39 +08:00
2026-08-24 11:11:22 +08:00
2026-09-08 19:44:39 +08:00
2026-09-08 19:44:39 +08:00
2026-09-08 19:44:39 +08:00
2026-08-12 23:49:18 +08:00
2026-09-16 13:49:25 +08:00
2026-08-24 20:07:11 +08:00
2026-08-23 12:09:03 +08:00
2026-08-24 20:07:11 +08:00
2026-08-23 12:09:03 +08:00
2026-08-14 08:41:02 +08:00
2026-09-16 21:56:51 +08:00
2026-09-11 12:59:01 +08:00
2026-08-24 20:07:11 +08:00
2026-08-12 23:49:18 +08:00
2026-09-08 17:18:08 +08:00
2026-09-07 12:41:48 +08:00
2026-09-10 21:18:41 +08:00
2026-08-24 20:07:11 +08:00
2026-09-11 12:59:01 +08:00
2026-09-06 22:54:21 +08:00
2026-08-10 08:22:15 +08:00
2026-08-24 20:07:11 +08:00
2026-08-14 08:41:02 +08:00
2026-09-09 23:13:41 +08:00
2026-09-11 12:59:01 +08:00
2026-08-24 20:07:11 +08:00
2026-09-11 12:59:01 +08:00
2026-09-07 21:21:16 +08:00
2026-09-16 21:56:51 +08:00
2026-08-22 02:00:23 +08:00
2026-09-16 21:56:51 +08:00
2026-09-16 21:56:51 +08:00
2026-08-24 20:07:11 +08:00
2026-08-24 20:07:11 +08:00
2026-08-08 23:33:29 +08:00
2026-09-17 09:38:50 +08:00
2026-09-17 09:38:50 +08:00
2026-09-16 10:03:02 +08:00
2026-09-16 13:49:25 +08:00
2026-09-17 21:12:12 +08:00
2026-08-24 20:07:11 +08:00
2026-09-09 23:05:09 +08:00
2026-08-24 20:07:11 +08:00
2026-09-09 23:05:09 +08:00
2026-08-10 08:22:15 +08:00
2026-09-09 15:50:02 +08:00
2026-09-09 15:50:02 +08:00
2026-08-24 20:07:11 +08:00
2026-08-10 08:22:15 +08:00
2026-08-24 20:07:11 +08:00
2026-09-11 13:10:29 +08:00
2026-08-31 18:51:59 +08:00
2026-08-31 18:51:59 +08:00
2026-08-24 20:07:11 +08:00
2026-09-11 13:10:29 +08:00
2026-09-17 09:38:50 +08:00
2026-09-17 09:38:50 +08:00
2026-09-17 21:12:12 +08:00
2026-09-17 09:38:50 +08:00
2026-09-16 21:56:51 +08:00
2026-09-16 21:56:51 +08:00
2026-09-16 21:56:51 +08:00
2026-09-16 21:56:51 +08:00
2026-09-02 16:29:59 +08:00
2026-09-02 16:29:59 +08:00
2026-08-14 08:41:02 +08:00
2026-09-16 13:49:25 +08:00
2026-08-16 17:21:50 +08:00
2026-08-24 20:07:11 +08:00
2026-08-10 08:22:15 +08:00
2026-08-24 20:07:11 +08:00
2026-09-09 23:05:09 +08:00
2026-08-10 08:22:15 +08:00
2026-09-07 12:41:48 +08:00
2026-09-07 12:41:48 +08:00
2026-08-24 20:07:11 +08:00
2026-08-16 16:41:02 +08:00
2026-08-24 20:07:11 +08:00
2026-08-10 14:00:59 +08:00
2026-08-16 16:41:02 +08:00
2026-08-24 20:07:11 +08:00
2026-08-16 16:41:02 +08:00
2026-08-08 23:33:29 +08:00
2026-08-08 23:33:29 +08:00
2026-09-05 21:41:41 +08:00
2026-09-05 21:41:41 +08:00
2026-08-24 20:07:11 +08:00
2026-09-16 13:49:25 +08:00
2026-09-07 12:41:48 +08:00
2026-09-17 17:13:46 +08:00
2026-09-17 17:13:46 +08:00
2026-09-09 15:06:50 +08:00
2026-09-09 13:20:10 +08:00
2026-09-08 17:18:08 +08:00
2026-09-16 21:56:51 +08:00
2026-09-16 21:56:51 +08:00
2026-09-08 17:18:08 +08:00
2026-09-09 08:05:43 +08:00
2026-08-29 21:26:32 +08:00
2026-08-24 20:07:11 +08:00
2026-09-17 21:12:12 +08:00
2026-09-11 12:59:01 +08:00
2026-08-24 20:07:11 +08:00
2026-08-24 20:07:11 +08:00
2026-09-08 19:44:39 +08:00
2026-09-05 12:58:22 +08:00
2026-09-06 22:54:21 +08:00
2026-09-10 21:18:41 +08:00
2026-08-24 20:07:11 +08:00
2026-09-13 12:26:46 +08:00
2026-09-08 19:44:39 +08:00
2026-09-08 19:44:39 +08:00
2026-09-08 19:44:39 +08:00
2026-09-08 19:44:39 +08:00
2026-08-24 20:07:11 +08:00
2026-08-07 07:49:11 +08:00
2026-08-24 20:07:11 +08:00
2026-08-20 21:37:54 +08:00
2026-08-24 20:07:11 +08:00
2026-09-08 13:33:06 +08:00
2026-09-08 13:33:06 +08:00
2026-09-08 13:33:06 +08:00
2026-09-08 13:33:06 +08:00
2026-09-17 16:24:24 +08:00
2026-09-09 15:06:50 +08:00
2026-09-11 12:59:01 +08:00
2026-09-10 21:18:41 +08:00
2026-08-31 18:51:59 +08:00
2026-08-31 18:51:59 +08:00
2026-09-09 15:50:02 +08:00