@hot-updater/console 1.0.0-rc.2 → 1.0.0-rc.4

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.
Files changed (126) hide show
  1. package/.output/nitro.json +1 -1
  2. package/.output/public/assets/InsightsPageHeader-C-Xc2MB9.js +1 -0
  3. package/.output/public/assets/api-keys-C1sgC6ko.js +1 -0
  4. package/.output/public/assets/{api-keys-api-BHcODB7q.js → api-keys-api-LchP65vQ.js} +1 -1
  5. package/.output/public/assets/badge-BuMDU0Rf.js +1 -0
  6. package/.output/public/assets/card-BEvx_QKh.js +1 -0
  7. package/.output/public/assets/{chart-no-axes-combined-Dy4WJv2U.js → chart-no-axes-combined-C0G0fQ3J.js} +1 -1
  8. package/.output/public/assets/{composite-Bp98A0Ld.js → composite-CHTH1Xhh.js} +1 -1
  9. package/.output/public/assets/createServerFn-DHc2erub.js +3 -0
  10. package/.output/public/assets/dialog-dyZ1SphZ.js +1 -0
  11. package/.output/public/assets/{dist-C_NydL0e.js → dist-Bh1gaDfB.js} +1 -1
  12. package/.output/public/assets/field-79SVH26s.js +1 -0
  13. package/.output/public/assets/index-BNkxg4jz.js +10 -0
  14. package/.output/public/assets/input-group-BbHfaBzQ.js +1 -0
  15. package/.output/public/assets/insights-D_7uSKfc.js +1 -0
  16. package/.output/public/assets/installations-BzoHWuXw.js +1 -0
  17. package/.output/public/assets/{installations-CE33wgbY.js → installations-DvjbUqd1.js} +2 -2
  18. package/.output/public/assets/{lazyRouteComponent-Ccp3bwBY.js → lazyRouteComponent-BN0MS05o.js} +1 -1
  19. package/.output/public/assets/{link-CI8idAUi.js → link-BG06whwB.js} +1 -1
  20. package/.output/public/assets/{loader-circle-BoxLrsOu.js → loader-circle-Bbp8LGVC.js} +1 -1
  21. package/.output/public/assets/{refresh-cw-Bqc72UZG.js → refresh-cw-DZgiAOMk.js} +1 -1
  22. package/.output/public/assets/routes-BFE-oRIT.js +1 -0
  23. package/.output/public/assets/{routes-DGVXdzpw.js → routes-DaPMY31P.js} +2 -2
  24. package/.output/public/assets/{shield-check-uK3MHWJZ.js → shield-check-DoIiaaXU.js} +1 -1
  25. package/.output/public/assets/signing-BTRhaF5D.js +1 -0
  26. package/.output/public/assets/styles-C7U0oVke.css +2 -0
  27. package/.output/public/assets/table-BBEzJ7Xl.js +1 -0
  28. package/.output/public/assets/useCompositeListItem-BkPDaqyj.js +42 -0
  29. package/.output/server/{__23tanstack-start-server-fn-resolver-B7ioJhtE.mjs → __23tanstack-start-server-fn-resolver-Dr2ixDgQ.mjs} +40 -32
  30. package/.output/server/_libs/@base-ui/react+[...].mjs +1 -1
  31. package/.output/server/_libs/@reduxjs/toolkit+[...].mjs +1554 -0
  32. package/.output/server/_libs/@tanstack/react-router+[...].mjs +1 -1
  33. package/.output/server/_libs/@tanstack/react-router-ssr-query+[...].mjs +1 -1
  34. package/.output/server/_libs/d3-array.mjs +231 -0
  35. package/.output/server/_libs/d3-color.mjs +330 -0
  36. package/.output/server/_libs/d3-format.mjs +252 -0
  37. package/.output/server/_libs/d3-interpolate.mjs +207 -0
  38. package/.output/server/_libs/d3-path.mjs +77 -0
  39. package/.output/server/_libs/d3-scale+[...].mjs +1907 -0
  40. package/.output/server/_libs/d3-shape.mjs +818 -0
  41. package/.output/server/_libs/decimal.js-light.mjs +884 -0
  42. package/.output/server/_libs/es-toolkit.mjs +1159 -0
  43. package/.output/server/_libs/eventemitter3.mjs +236 -0
  44. package/.output/server/_libs/immer.mjs +532 -0
  45. package/.output/server/_libs/lucide-react.mjs +9 -2
  46. package/.output/server/_libs/next-themes.mjs +1 -1
  47. package/.output/server/_libs/react-redux+[...].mjs +205 -0
  48. package/.output/server/_libs/recharts+[...].mjs +15054 -0
  49. package/.output/server/_libs/sonner.mjs +1 -1
  50. package/.output/server/_libs/tanstack__react-query.mjs +1 -1
  51. package/.output/server/_runtime.mjs +10 -1
  52. package/.output/server/_ssr/InsightsPageHeader-C5Has8Ry.mjs +60 -0
  53. package/.output/server/_ssr/{api-keys-CZeTPQys.mjs → api-keys-DJml_XoK.mjs} +10 -8
  54. package/.output/server/_ssr/{api-keys-api-BUPQVSpk.mjs → api-keys-api-CrCZyvnl.mjs} +2 -2
  55. package/.output/server/_ssr/{api-keys-rpc-Cs7tS5_j.mjs → api-keys-rpc-CFaNf-q0.mjs} +3 -3
  56. package/.output/server/_ssr/{api-rpc-tAupfGQm.mjs → api-rpc-B61KL3Eo.mjs} +25 -25
  57. package/.output/server/_ssr/{auth-rpc-DUaeOWKK.mjs → auth-rpc-D_hv52-J.mjs} +4 -4
  58. package/.output/server/_ssr/{auth.server-DW71WzsD.mjs → auth.server-DF_shCeq.mjs} +1 -1
  59. package/.output/server/_ssr/badge-BgsCP9Dp.mjs +28 -0
  60. package/.output/server/_ssr/{bundle-signing-rpc-BhnBw0-d.mjs → bundle-signing-rpc-BBipZnFs.mjs} +2 -2
  61. package/.output/server/_ssr/{bundle-signing.server-C4NW5mWx.mjs → bundle-signing.server-Co_zHdJx.mjs} +1 -1
  62. package/.output/server/_ssr/bundleActivity-D3_fIda2.mjs +27 -0
  63. package/.output/server/_ssr/{card-BRiPmi0C.mjs → card-DrbxCPtG.mjs} +3 -25
  64. package/.output/server/_ssr/chart-qxa-_30a.mjs +162 -0
  65. package/.output/server/_ssr/{config.server-afDuAwaG.mjs → config.server-CBr6PDj5.mjs} +5 -5
  66. package/.output/server/_ssr/{createSsrRpc-DjWNJ0uc.mjs → createSsrRpc-NHF2PxuK.mjs} +4 -4
  67. package/.output/server/_ssr/{deleteBundle-BTGwBgzx.mjs → deleteBundle-BAq3JuGr.mjs} +1 -1
  68. package/.output/server/_ssr/{dialog-DS-nw-pA.mjs → dialog-DUaIgpgd.mjs} +1 -1
  69. package/.output/server/_ssr/{downloadBundle-CNnYxYO2.mjs → downloadBundle-B3ert-pY.mjs} +1 -1
  70. package/.output/server/_ssr/{table-CnZmon_Z.mjs → field-CqNUlqUq.mjs} +4 -50
  71. package/.output/server/_ssr/{getBundleChildren-C0vh4ZvE.mjs → getBundleChildren-COMt16m_.mjs} +1 -1
  72. package/.output/server/_ssr/{input-group-BpsnmvZw.mjs → input-group-Bb8ueylQ.mjs} +51 -2
  73. package/.output/server/_ssr/insights-B-DUbksX.mjs +502 -0
  74. package/.output/server/_ssr/insights-recovery-DSFM-YTL.mjs +21 -0
  75. package/.output/server/_ssr/insights-recovery-rpc-P71FH66n.mjs +37 -0
  76. package/.output/server/_ssr/{insights-rpc-38DujK0G.mjs → insights-rpc-DrIQCjpD.mjs} +2 -2
  77. package/.output/server/_ssr/insightsRecovery-CqcosG7B.mjs +149 -0
  78. package/.output/server/_ssr/{installations-CtA59MQG.mjs → installations-BQrppti7.mjs} +2 -2
  79. package/.output/server/_ssr/{installations-DiVKEF5T.mjs → installations-YumqpNpa.mjs} +426 -11
  80. package/.output/server/_ssr/{router-B9wG_9f8.mjs → router-iP95Vqi2.mjs} +14 -14
  81. package/.output/server/_ssr/{routes-CKrrS2q2.mjs → routes-BDabsmc7.mjs} +2 -2
  82. package/.output/server/_ssr/{routes-D7Yh_jfj.mjs → routes-ivsV2TDu.mjs} +224 -13
  83. package/.output/server/_ssr/{runtime.server-DacU1TBV.mjs → runtime.server-jmZOKIQM.mjs} +1 -1
  84. package/.output/server/_ssr/{server-D_C2rMzf.mjs → server-p7yrVBfD.mjs} +3 -3
  85. package/.output/server/_ssr/{signing-Dz1WkZOf.mjs → signing-CxCbnFCt.mjs} +5 -4
  86. package/.output/server/_ssr/ssr.mjs +1 -1
  87. package/.output/server/_ssr/table-D1mL8fJu.mjs +53 -0
  88. package/.output/server/_tanstack-start-manifest_v-Cwpu0C9Q.mjs +100 -0
  89. package/.output/server/index.mjs +154 -154
  90. package/package.json +3 -3
  91. package/src/components/features/bundles/BundleActivityChart.tsx +95 -0
  92. package/src/components/features/bundles/BundleInsightsSummary.tsx +121 -0
  93. package/src/components/features/insights/InsightsControls.tsx +1 -15
  94. package/src/components/features/insights/InsightsOverview.tsx +368 -179
  95. package/src/components/features/releases/ReleaseEditorSheet.tsx +10 -0
  96. package/src/components/ui/empty.tsx +101 -0
  97. package/src/lib/bundle-activity.ts +21 -0
  98. package/src/lib/insights-recovery-rpc.ts +38 -0
  99. package/src/lib/insights-recovery.ts +59 -0
  100. package/src/lib/server/bundleActivity.ts +37 -0
  101. package/src/lib/server/insightsHistory.ts +52 -0
  102. package/src/lib/server/insightsRecovery.ts +186 -0
  103. package/src/routes/index.tsx +33 -3
  104. package/src/routes/insights.tsx +1 -42
  105. package/.output/public/assets/HashValueDisplay-CB0Eskit.js +0 -1
  106. package/.output/public/assets/InsightsPageHeader-Car5LNiZ.js +0 -1
  107. package/.output/public/assets/api-keys-BzKocqRy.js +0 -1
  108. package/.output/public/assets/card-Dhr_eFYj.js +0 -1
  109. package/.output/public/assets/createServerFn-CA8fs7QD.js +0 -3
  110. package/.output/public/assets/dialog-CUTrcPlB.js +0 -1
  111. package/.output/public/assets/index-DdAz-CXv.js +0 -10
  112. package/.output/public/assets/input-group-cSOG4wh_.js +0 -1
  113. package/.output/public/assets/insights-C0PBSZ-n.js +0 -1
  114. package/.output/public/assets/installations-CStZja8x.js +0 -1
  115. package/.output/public/assets/routes-DTlwOr8I.js +0 -1
  116. package/.output/public/assets/signing-CMf4aqDO.js +0 -1
  117. package/.output/public/assets/styles-BCvbtKsm.css +0 -2
  118. package/.output/public/assets/table-2vcV89QB.js +0 -1
  119. package/.output/public/assets/useCompositeListItem-CHLITE_4.js +0 -1
  120. package/.output/public/assets/x-DCd0j8c6.js +0 -1
  121. package/.output/server/_ssr/HashValueDisplay-DwpGLfrl.mjs +0 -55
  122. package/.output/server/_ssr/InsightsPageHeader-Df4Brj8u.mjs +0 -484
  123. package/.output/server/_ssr/insights-BdS364Xu.mjs +0 -460
  124. package/.output/server/_tanstack-start-manifest_v-2MjTyxil.mjs +0 -97
  125. package/src/components/features/insights/InsightsBundleReports.tsx +0 -51
  126. /package/.output/public/assets/{preload-helper-CQ36nxok.js → preload-helper-uTix4PVD.js} +0 -0
@@ -14,296 +14,296 @@ var public_assets_data_default = {
14
14
  "/apple-touch-icon.png": {
15
15
  "type": "image/png",
16
16
  "etag": "\"329e-uyxOmLQHjRnOIdaE3FE7O/uZ9l4\"",
17
- "mtime": "2026-09-07T08:27:01.039Z",
17
+ "mtime": "2026-09-07T15:33:14.452Z",
18
18
  "size": 12958,
19
19
  "path": "../public/apple-touch-icon.png"
20
20
  },
21
21
  "/favicon-16x16.png": {
22
22
  "type": "image/png",
23
23
  "etag": "\"240-h6ktCVLfjIcsDJuLwUXP4nCJxlI\"",
24
- "mtime": "2026-09-07T08:27:01.039Z",
24
+ "mtime": "2026-09-07T15:33:14.453Z",
25
25
  "size": 576,
26
26
  "path": "../public/favicon-16x16.png"
27
27
  },
28
28
  "/favicon-32x32.png": {
29
29
  "type": "image/png",
30
30
  "etag": "\"4f0-0qQrV3Eq3PzIigrp+8htf8vFCYA\"",
31
- "mtime": "2026-09-07T08:27:01.039Z",
31
+ "mtime": "2026-09-07T15:33:14.453Z",
32
32
  "size": 1264,
33
33
  "path": "../public/favicon-32x32.png"
34
34
  },
35
- "/logo.svg": {
36
- "type": "image/svg+xml",
37
- "etag": "\"478-zKvD9Jp5dDLCBmng0McewYMBxfs\"",
38
- "mtime": "2026-09-07T08:27:01.039Z",
39
- "size": 1144,
40
- "path": "../public/logo.svg"
41
- },
42
35
  "/favicon.ico": {
43
36
  "type": "image/vnd.microsoft.icon",
44
37
  "etag": "\"3c2e-eMwmbJNNg6G+Uu+rqWtuvtI2Om4\"",
45
- "mtime": "2026-09-07T08:27:01.039Z",
38
+ "mtime": "2026-09-07T15:33:14.453Z",
46
39
  "size": 15406,
47
40
  "path": "../public/favicon.ico"
48
41
  },
42
+ "/logo.svg": {
43
+ "type": "image/svg+xml",
44
+ "etag": "\"478-zKvD9Jp5dDLCBmng0McewYMBxfs\"",
45
+ "mtime": "2026-09-07T15:33:14.453Z",
46
+ "size": 1144,
47
+ "path": "../public/logo.svg"
48
+ },
49
49
  "/manifest.json": {
50
50
  "type": "application/json",
51
51
  "etag": "\"258-CQdbkGDhbZhU+yrcSXanXKWFEpw\"",
52
- "mtime": "2026-09-07T08:27:01.039Z",
52
+ "mtime": "2026-09-07T15:33:14.453Z",
53
53
  "size": 600,
54
54
  "path": "../public/manifest.json"
55
55
  },
56
56
  "/robots.txt": {
57
57
  "type": "text/plain; charset=utf-8",
58
58
  "etag": "\"43-BEzmj4PuhUNHX+oW9uOnPSihxtU\"",
59
- "mtime": "2026-09-07T08:27:01.039Z",
59
+ "mtime": "2026-09-07T15:33:14.453Z",
60
60
  "size": 67,
61
61
  "path": "../public/robots.txt"
62
62
  },
63
- "/assets/HashValueDisplay-CB0Eskit.js": {
64
- "type": "text/javascript; charset=utf-8",
65
- "etag": "\"68e-0j1QmSYwiREyfz1A/0oNtooUKWo\"",
66
- "mtime": "2026-09-07T08:26:59.607Z",
67
- "size": 1678,
68
- "path": "../public/assets/HashValueDisplay-CB0Eskit.js"
69
- },
70
- "/assets/InsightsPageHeader-Car5LNiZ.js": {
63
+ "/assets/InsightsPageHeader-C-Xc2MB9.js": {
71
64
  "type": "text/javascript; charset=utf-8",
72
- "etag": "\"2ec3-79bH6gj9leXPb3sDmd3Z5qQhBWY\"",
73
- "mtime": "2026-09-07T08:26:59.607Z",
74
- "size": 11971,
75
- "path": "../public/assets/InsightsPageHeader-Car5LNiZ.js"
65
+ "etag": "\"643-4KPnmV40erS3MquOF5L5nqAC8Rc\"",
66
+ "mtime": "2026-09-07T15:33:12.739Z",
67
+ "size": 1603,
68
+ "path": "../public/assets/InsightsPageHeader-C-Xc2MB9.js"
76
69
  },
77
- "/assets/api-keys-BzKocqRy.js": {
70
+ "/assets/api-keys-C1sgC6ko.js": {
78
71
  "type": "text/javascript; charset=utf-8",
79
- "etag": "\"1efa-91vf03PnhSD1awk/1l8EnxG+tB4\"",
80
- "mtime": "2026-09-07T08:26:59.607Z",
81
- "size": 7930,
82
- "path": "../public/assets/api-keys-BzKocqRy.js"
72
+ "etag": "\"1f41-biyklM7ZAyZy2tHg6I6z+EUZwFk\"",
73
+ "mtime": "2026-09-07T15:33:12.739Z",
74
+ "size": 8001,
75
+ "path": "../public/assets/api-keys-C1sgC6ko.js"
83
76
  },
84
- "/assets/api-keys-api-BHcODB7q.js": {
77
+ "/assets/api-keys-api-LchP65vQ.js": {
85
78
  "type": "text/javascript; charset=utf-8",
86
- "etag": "\"586-qtMeIghNpMRnTFNdZswrlYr4WeE\"",
87
- "mtime": "2026-09-07T08:26:59.607Z",
79
+ "etag": "\"586-ruafFelC6vTtYM+dmqPvw7t10Gg\"",
80
+ "mtime": "2026-09-07T15:33:12.739Z",
88
81
  "size": 1414,
89
- "path": "../public/assets/api-keys-api-BHcODB7q.js"
82
+ "path": "../public/assets/api-keys-api-LchP65vQ.js"
90
83
  },
91
- "/assets/card-Dhr_eFYj.js": {
84
+ "/assets/badge-BuMDU0Rf.js": {
92
85
  "type": "text/javascript; charset=utf-8",
93
- "etag": "\"c3b-UA0sGY3Lde1tRHl0CAbFLAMruxY\"",
94
- "mtime": "2026-09-07T08:26:59.607Z",
95
- "size": 3131,
96
- "path": "../public/assets/card-Dhr_eFYj.js"
86
+ "etag": "\"39f-kH5LmQoI1IJdcNwweOj+jovCsDE\"",
87
+ "mtime": "2026-09-07T15:33:12.739Z",
88
+ "size": 927,
89
+ "path": "../public/assets/badge-BuMDU0Rf.js"
97
90
  },
98
- "/assets/composite-Bp98A0Ld.js": {
91
+ "/assets/card-BEvx_QKh.js": {
99
92
  "type": "text/javascript; charset=utf-8",
100
- "etag": "\"8d7-Soe6X2hMcy1zQ1f22R3m5cYQD6E\"",
101
- "mtime": "2026-09-07T08:26:59.607Z",
102
- "size": 2263,
103
- "path": "../public/assets/composite-Bp98A0Ld.js"
93
+ "etag": "\"8e8-uOT46EzaPme00AFnwGE8HV4TOpA\"",
94
+ "mtime": "2026-09-07T15:33:12.739Z",
95
+ "size": 2280,
96
+ "path": "../public/assets/card-BEvx_QKh.js"
104
97
  },
105
- "/assets/chart-no-axes-combined-Dy4WJv2U.js": {
98
+ "/assets/chart-no-axes-combined-C0G0fQ3J.js": {
106
99
  "type": "text/javascript; charset=utf-8",
107
- "etag": "\"17b-pSSPy3Ds/6q+ebAuz559HDlwS6E\"",
108
- "mtime": "2026-09-07T08:26:59.607Z",
100
+ "etag": "\"17b-N4vaDOdvj5q4/tMHoDk6AZij7z4\"",
101
+ "mtime": "2026-09-07T15:33:12.739Z",
109
102
  "size": 379,
110
- "path": "../public/assets/chart-no-axes-combined-Dy4WJv2U.js"
103
+ "path": "../public/assets/chart-no-axes-combined-C0G0fQ3J.js"
111
104
  },
112
- "/assets/createServerFn-CA8fs7QD.js": {
105
+ "/assets/composite-CHTH1Xhh.js": {
113
106
  "type": "text/javascript; charset=utf-8",
114
- "etag": "\"3451d-09sELlEOUv1EZBzEZmiz9YuFX28\"",
115
- "mtime": "2026-09-07T08:26:59.607Z",
116
- "size": 214301,
117
- "path": "../public/assets/createServerFn-CA8fs7QD.js"
107
+ "etag": "\"8d7-3VIa1BkFb4doeMyaBW9eEkkkswM\"",
108
+ "mtime": "2026-09-07T15:33:12.739Z",
109
+ "size": 2263,
110
+ "path": "../public/assets/composite-CHTH1Xhh.js"
118
111
  },
119
- "/assets/dialog-CUTrcPlB.js": {
112
+ "/assets/createServerFn-DHc2erub.js": {
120
113
  "type": "text/javascript; charset=utf-8",
121
- "etag": "\"700f-OyD9E5LG1pF9kij7wojWeQA7SRY\"",
122
- "mtime": "2026-09-07T08:26:59.607Z",
123
- "size": 28687,
124
- "path": "../public/assets/dialog-CUTrcPlB.js"
114
+ "etag": "\"345af-j9ZU/oAoJhRyJ7JjpTzmFhDvRqY\"",
115
+ "mtime": "2026-09-07T15:33:12.739Z",
116
+ "size": 214447,
117
+ "path": "../public/assets/createServerFn-DHc2erub.js"
125
118
  },
126
- "/assets/dist-C_NydL0e.js": {
119
+ "/assets/dialog-dyZ1SphZ.js": {
127
120
  "type": "text/javascript; charset=utf-8",
128
- "etag": "\"7f24-L34uzAib1DLOmuxx9A7k2Gt+P18\"",
129
- "mtime": "2026-09-07T08:26:59.607Z",
121
+ "etag": "\"7017-kzpwG4ZocxomWGIVnXAB4NZv2qQ\"",
122
+ "mtime": "2026-09-07T15:33:12.739Z",
123
+ "size": 28695,
124
+ "path": "../public/assets/dialog-dyZ1SphZ.js"
125
+ },
126
+ "/assets/dist-Bh1gaDfB.js": {
127
+ "type": "text/javascript; charset=utf-8",
128
+ "etag": "\"7f24-0vT2MhcCn36/ABKcOQjcT26CcoI\"",
129
+ "mtime": "2026-09-07T15:33:12.739Z",
130
130
  "size": 32548,
131
- "path": "../public/assets/dist-C_NydL0e.js"
131
+ "path": "../public/assets/dist-Bh1gaDfB.js"
132
+ },
133
+ "/assets/field-79SVH26s.js": {
134
+ "type": "text/javascript; charset=utf-8",
135
+ "etag": "\"b7b-9UaB3NU2/pp5dhkCsRUlb55tIoc\"",
136
+ "mtime": "2026-09-07T15:33:12.739Z",
137
+ "size": 2939,
138
+ "path": "../public/assets/field-79SVH26s.js"
132
139
  },
133
- "/assets/index-DdAz-CXv.js": {
140
+ "/assets/index-BNkxg4jz.js": {
134
141
  "type": "text/javascript; charset=utf-8",
135
- "etag": "\"368fc-toWZrGdppILjl71lFjwIkJwm3DQ\"",
136
- "mtime": "2026-09-07T08:26:59.606Z",
137
- "size": 223484,
138
- "path": "../public/assets/index-DdAz-CXv.js"
142
+ "etag": "\"368f8-tot7eSjn6jkoOPl+Uf2Zs6lZQ8Y\"",
143
+ "mtime": "2026-09-07T15:33:12.737Z",
144
+ "size": 223480,
145
+ "path": "../public/assets/index-BNkxg4jz.js"
139
146
  },
140
- "/assets/input-group-cSOG4wh_.js": {
147
+ "/assets/input-group-BbHfaBzQ.js": {
141
148
  "type": "text/javascript; charset=utf-8",
142
- "etag": "\"e54-ChnsYrHspWFXuSp/jhXb/zIUp88\"",
143
- "mtime": "2026-09-07T08:26:59.607Z",
144
- "size": 3668,
145
- "path": "../public/assets/input-group-cSOG4wh_.js"
149
+ "etag": "\"1496-0LwS6or8MwXJEIUjbGkJfDB/pCg\"",
150
+ "mtime": "2026-09-07T15:33:12.739Z",
151
+ "size": 5270,
152
+ "path": "../public/assets/input-group-BbHfaBzQ.js"
146
153
  },
147
- "/assets/insights-C0PBSZ-n.js": {
154
+ "/assets/insights-D_7uSKfc.js": {
148
155
  "type": "text/javascript; charset=utf-8",
149
- "etag": "\"4589-40W3hI1u4dFsInWeP8b5pauSIQw\"",
150
- "mtime": "2026-09-07T08:26:59.607Z",
151
- "size": 17801,
152
- "path": "../public/assets/insights-C0PBSZ-n.js"
156
+ "etag": "\"8d66-qMA/1EX2K8yZm29QPvWEjK8sTy0\"",
157
+ "mtime": "2026-09-07T15:33:12.740Z",
158
+ "size": 36198,
159
+ "path": "../public/assets/insights-D_7uSKfc.js"
153
160
  },
154
- "/assets/installations-CE33wgbY.js": {
161
+ "/assets/installations-BzoHWuXw.js": {
155
162
  "type": "text/javascript; charset=utf-8",
156
- "etag": "\"abcb-eqj4t5yVdXbRXiHx3d5L+c4Wd78\"",
157
- "mtime": "2026-09-07T08:26:59.607Z",
158
- "size": 43979,
159
- "path": "../public/assets/installations-CE33wgbY.js"
163
+ "etag": "\"5d53-rDL0OwWmv2LN5UdmmLqhzywKQuk\"",
164
+ "mtime": "2026-09-07T15:33:12.740Z",
165
+ "size": 23891,
166
+ "path": "../public/assets/installations-BzoHWuXw.js"
160
167
  },
161
- "/assets/installations-CStZja8x.js": {
168
+ "/assets/installations-DvjbUqd1.js": {
162
169
  "type": "text/javascript; charset=utf-8",
163
- "etag": "\"36c2-2CUir5iLwXbv9tci2pVU63ZJmq4\"",
164
- "mtime": "2026-09-07T08:26:59.607Z",
165
- "size": 14018,
166
- "path": "../public/assets/installations-CStZja8x.js"
170
+ "etag": "\"abc4-YDBN5zSDwTG7rD7P24Ie+WhREYs\"",
171
+ "mtime": "2026-09-07T15:33:12.740Z",
172
+ "size": 43972,
173
+ "path": "../public/assets/installations-DvjbUqd1.js"
167
174
  },
168
175
  "/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2": {
169
176
  "type": "font/woff2",
170
177
  "etag": "\"6568-cF1iUGbboMFZ8TfnP5HiMgl9II0\"",
171
- "mtime": "2026-09-07T08:26:59.607Z",
178
+ "mtime": "2026-09-07T15:33:12.740Z",
172
179
  "size": 25960,
173
180
  "path": "../public/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2"
174
181
  },
175
182
  "/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2": {
176
183
  "type": "font/woff2",
177
184
  "etag": "\"493c-n3Oy9D6jvzfMjpClqox+Zo7ERQQ\"",
178
- "mtime": "2026-09-07T08:26:59.607Z",
185
+ "mtime": "2026-09-07T15:33:12.740Z",
179
186
  "size": 18748,
180
187
  "path": "../public/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2"
181
188
  },
182
189
  "/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2": {
183
190
  "type": "font/woff2",
184
191
  "etag": "\"2be0-BP5iTzJeB8nLqYAgKpWNi5o1Zm8\"",
185
- "mtime": "2026-09-07T08:26:59.607Z",
192
+ "mtime": "2026-09-07T15:33:12.740Z",
186
193
  "size": 11232,
187
194
  "path": "../public/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2"
188
195
  },
189
196
  "/assets/inter-greek-wght-normal-CkhJZR-_.woff2": {
190
197
  "type": "font/woff2",
191
198
  "etag": "\"4a34-xor/hj4YNqI52zFecXnUbzQ4Xs4\"",
192
- "mtime": "2026-09-07T08:26:59.607Z",
199
+ "mtime": "2026-09-07T15:33:12.740Z",
193
200
  "size": 18996,
194
201
  "path": "../public/assets/inter-greek-wght-normal-CkhJZR-_.woff2"
195
202
  },
196
203
  "/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2": {
197
204
  "type": "font/woff2",
198
205
  "etag": "\"14c4c-zz61D7IQFMB9QxHvTAOk/Vh4ibQ\"",
199
- "mtime": "2026-09-07T08:26:59.607Z",
206
+ "mtime": "2026-09-07T15:33:12.741Z",
200
207
  "size": 85068,
201
208
  "path": "../public/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2"
202
209
  },
203
210
  "/assets/inter-latin-wght-normal-Dx4kXJAl.woff2": {
204
211
  "type": "font/woff2",
205
212
  "etag": "\"bc80-8R1ym7Ck2DUNLqPQ/AYs9u8tUpg\"",
206
- "mtime": "2026-09-07T08:26:59.607Z",
213
+ "mtime": "2026-09-07T15:33:12.741Z",
207
214
  "size": 48256,
208
215
  "path": "../public/assets/inter-latin-wght-normal-Dx4kXJAl.woff2"
209
216
  },
210
217
  "/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2": {
211
218
  "type": "font/woff2",
212
219
  "etag": "\"280c-nBythjoDQ0+5wVAendJ6wU7Xz2M\"",
213
- "mtime": "2026-09-07T08:26:59.607Z",
220
+ "mtime": "2026-09-07T15:33:12.741Z",
214
221
  "size": 10252,
215
222
  "path": "../public/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2"
216
223
  },
217
- "/assets/lazyRouteComponent-Ccp3bwBY.js": {
224
+ "/assets/lazyRouteComponent-BN0MS05o.js": {
218
225
  "type": "text/javascript; charset=utf-8",
219
- "etag": "\"11d7-AWulwjFdV0v/EbtIPCZthv+9Zw4\"",
220
- "mtime": "2026-09-07T08:26:59.607Z",
226
+ "etag": "\"11d7-tN3E7R5DE7AOPjuLTGkb/Bk+5tk\"",
227
+ "mtime": "2026-09-07T15:33:12.740Z",
221
228
  "size": 4567,
222
- "path": "../public/assets/lazyRouteComponent-Ccp3bwBY.js"
229
+ "path": "../public/assets/lazyRouteComponent-BN0MS05o.js"
223
230
  },
224
- "/assets/link-CI8idAUi.js": {
231
+ "/assets/link-BG06whwB.js": {
225
232
  "type": "text/javascript; charset=utf-8",
226
- "etag": "\"549e-WFJVqJTVtOTNSLY8vlr0fZE5aDg\"",
227
- "mtime": "2026-09-07T08:26:59.607Z",
233
+ "etag": "\"549e-dzytoRLIPxVy/oMAInv4ZWWfD7o\"",
234
+ "mtime": "2026-09-07T15:33:12.740Z",
228
235
  "size": 21662,
229
- "path": "../public/assets/link-CI8idAUi.js"
236
+ "path": "../public/assets/link-BG06whwB.js"
230
237
  },
231
- "/assets/loader-circle-BoxLrsOu.js": {
238
+ "/assets/loader-circle-Bbp8LGVC.js": {
232
239
  "type": "text/javascript; charset=utf-8",
233
- "etag": "\"1604-aFdMEWPyn/bJRhd6/sGbyohQdXk\"",
234
- "mtime": "2026-09-07T08:26:59.607Z",
240
+ "etag": "\"1604-6mmWBlPBY8oykYEYMzoapGjmCEM\"",
241
+ "mtime": "2026-09-07T15:33:12.740Z",
235
242
  "size": 5636,
236
- "path": "../public/assets/loader-circle-BoxLrsOu.js"
243
+ "path": "../public/assets/loader-circle-Bbp8LGVC.js"
237
244
  },
238
- "/assets/preload-helper-CQ36nxok.js": {
245
+ "/assets/preload-helper-uTix4PVD.js": {
239
246
  "type": "text/javascript; charset=utf-8",
240
247
  "etag": "\"4a9-jUfFKCyfaRG0LCmrRFreK8BlWnM\"",
241
- "mtime": "2026-09-07T08:26:59.607Z",
248
+ "mtime": "2026-09-07T15:33:12.740Z",
242
249
  "size": 1193,
243
- "path": "../public/assets/preload-helper-CQ36nxok.js"
250
+ "path": "../public/assets/preload-helper-uTix4PVD.js"
244
251
  },
245
- "/assets/refresh-cw-Bqc72UZG.js": {
252
+ "/assets/refresh-cw-DZgiAOMk.js": {
246
253
  "type": "text/javascript; charset=utf-8",
247
- "etag": "\"140-i6m5FMNZNmf6nJ6d3hQCmpo1lmI\"",
248
- "mtime": "2026-09-07T08:26:59.607Z",
254
+ "etag": "\"140-63C5yxjxZo6m1eaDQZYjl7zHm20\"",
255
+ "mtime": "2026-09-07T15:33:12.740Z",
249
256
  "size": 320,
250
- "path": "../public/assets/refresh-cw-Bqc72UZG.js"
257
+ "path": "../public/assets/refresh-cw-DZgiAOMk.js"
251
258
  },
252
- "/assets/routes-DGVXdzpw.js": {
259
+ "/assets/routes-BFE-oRIT.js": {
253
260
  "type": "text/javascript; charset=utf-8",
254
- "etag": "\"716-E06dccAuyJxUB0eDQd3VcaNMdq0\"",
255
- "mtime": "2026-09-07T08:26:59.607Z",
256
- "size": 1814,
257
- "path": "../public/assets/routes-DGVXdzpw.js"
261
+ "etag": "\"26217-mLWAZSYIUZKnT+DyEO05+5iSaZ4\"",
262
+ "mtime": "2026-09-07T15:33:12.740Z",
263
+ "size": 156183,
264
+ "path": "../public/assets/routes-BFE-oRIT.js"
258
265
  },
259
- "/assets/routes-DTlwOr8I.js": {
266
+ "/assets/routes-DaPMY31P.js": {
260
267
  "type": "text/javascript; charset=utf-8",
261
- "etag": "\"21fb0-JT3c8MvFJ/GpmDMxzapmvlQdZNw\"",
262
- "mtime": "2026-09-07T08:26:59.607Z",
263
- "size": 139184,
264
- "path": "../public/assets/routes-DTlwOr8I.js"
268
+ "etag": "\"70f-CjxZQ/pWT/085eD7+NtrdXGCNX4\"",
269
+ "mtime": "2026-09-07T15:33:12.740Z",
270
+ "size": 1807,
271
+ "path": "../public/assets/routes-DaPMY31P.js"
265
272
  },
266
- "/assets/shield-check-uK3MHWJZ.js": {
273
+ "/assets/shield-check-DoIiaaXU.js": {
267
274
  "type": "text/javascript; charset=utf-8",
268
- "etag": "\"249-YPtEsFt8egunyFj9mMcimPRt6JE\"",
269
- "mtime": "2026-09-07T08:26:59.607Z",
275
+ "etag": "\"249-m5qLMXvvKDum4JaO7FTyuAdsg60\"",
276
+ "mtime": "2026-09-07T15:33:12.740Z",
270
277
  "size": 585,
271
- "path": "../public/assets/shield-check-uK3MHWJZ.js"
278
+ "path": "../public/assets/shield-check-DoIiaaXU.js"
272
279
  },
273
- "/assets/signing-CMf4aqDO.js": {
280
+ "/assets/signing-BTRhaF5D.js": {
274
281
  "type": "text/javascript; charset=utf-8",
275
- "etag": "\"10fc-qZmCyPpiWOX+y5PxiMoHFsGjd9E\"",
276
- "mtime": "2026-09-07T08:26:59.607Z",
277
- "size": 4348,
278
- "path": "../public/assets/signing-CMf4aqDO.js"
282
+ "etag": "\"111d-BzOajLtOB00Jc2zgdZdaPajYCro\"",
283
+ "mtime": "2026-09-07T15:33:12.740Z",
284
+ "size": 4381,
285
+ "path": "../public/assets/signing-BTRhaF5D.js"
279
286
  },
280
- "/assets/styles-BCvbtKsm.css": {
287
+ "/assets/styles-C7U0oVke.css": {
281
288
  "type": "text/css; charset=utf-8",
282
- "etag": "\"1d07a-UAmNjccnFupVd5lJdSPSL/eoW0Q\"",
283
- "mtime": "2026-09-07T08:26:59.608Z",
284
- "size": 118906,
285
- "path": "../public/assets/styles-BCvbtKsm.css"
286
- },
287
- "/assets/table-2vcV89QB.js": {
288
- "type": "text/javascript; charset=utf-8",
289
- "etag": "\"ffc-AjnVAjUI3JACw7Ap7gcoNoiZGvc\"",
290
- "mtime": "2026-09-07T08:26:59.607Z",
291
- "size": 4092,
292
- "path": "../public/assets/table-2vcV89QB.js"
289
+ "etag": "\"1d47c-zdzd5nUoYV9YGEIr7rIQrbIWX1Y\"",
290
+ "mtime": "2026-09-07T15:33:12.741Z",
291
+ "size": 119932,
292
+ "path": "../public/assets/styles-C7U0oVke.css"
293
293
  },
294
- "/assets/useCompositeListItem-CHLITE_4.js": {
294
+ "/assets/table-BBEzJ7Xl.js": {
295
295
  "type": "text/javascript; charset=utf-8",
296
- "etag": "\"b99-MFDegpE1l26DUmww4cdBjs4fKy4\"",
297
- "mtime": "2026-09-07T08:26:59.607Z",
298
- "size": 2969,
299
- "path": "../public/assets/useCompositeListItem-CHLITE_4.js"
296
+ "etag": "\"542-67kiR1mkC9fDJQ2RT5x3/D3EM6M\"",
297
+ "mtime": "2026-09-07T15:33:12.740Z",
298
+ "size": 1346,
299
+ "path": "../public/assets/table-BBEzJ7Xl.js"
300
300
  },
301
- "/assets/x-DCd0j8c6.js": {
301
+ "/assets/useCompositeListItem-BkPDaqyj.js": {
302
302
  "type": "text/javascript; charset=utf-8",
303
- "etag": "\"99-dckmauuKol/wTFRhVaW+6rWzHCA\"",
304
- "mtime": "2026-09-07T08:26:59.607Z",
305
- "size": 153,
306
- "path": "../public/assets/x-DCd0j8c6.js"
303
+ "etag": "\"52eb6-5/8QCED16Wgz7NJffZA4oNY38c4\"",
304
+ "mtime": "2026-09-07T15:33:12.740Z",
305
+ "size": 339638,
306
+ "path": "../public/assets/useCompositeListItem-BkPDaqyj.js"
307
307
  }
308
308
  };
309
309
  //#endregion
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@hot-updater/console",
3
3
  "type": "module",
4
- "version": "1.0.0-rc.2",
4
+ "version": "1.0.0-rc.4",
5
5
  "files": [
6
6
  ".output",
7
7
  "lib",
@@ -59,9 +59,9 @@
59
59
  "tw-animate-css": "^1.4.0",
60
60
  "verkit": "0.4.0",
61
61
  "@hot-updater/bsdiff": "1.0.0-rc.0",
62
- "@hot-updater/server": "1.0.0-rc.2",
62
+ "@hot-updater/core": "1.0.0-rc.0",
63
63
  "@hot-updater/plugin-core": "1.0.0-rc.2",
64
- "@hot-updater/core": "1.0.0-rc.0"
64
+ "@hot-updater/server": "1.0.0-rc.2"
65
65
  },
66
66
  "devDependencies": {
67
67
  "@tanstack/devtools-vite": "^0.6.0",
@@ -0,0 +1,95 @@
1
+ import { Area, AreaChart, CartesianGrid, XAxis, YAxis } from "recharts";
2
+
3
+ import {
4
+ ChartContainer,
5
+ ChartLegend,
6
+ ChartLegendContent,
7
+ ChartTooltip,
8
+ ChartTooltipContent,
9
+ } from "@/components/ui/chart";
10
+ import type { RecoverySeries } from "@/lib/insights-recovery";
11
+
12
+ const config = {
13
+ active: { label: "Active", color: "var(--chart-2)" },
14
+ recoveredInstallations: {
15
+ label: "Rollback",
16
+ color: "var(--muted-foreground)",
17
+ },
18
+ };
19
+ const formatDate = (ms: number) =>
20
+ new Intl.DateTimeFormat("en", {
21
+ month: "short",
22
+ day: "numeric",
23
+ timeZone: "UTC",
24
+ }).format(ms);
25
+
26
+ export function BundleActivityChart({
27
+ series,
28
+ }: {
29
+ readonly series?: RecoverySeries;
30
+ }) {
31
+ if (!series)
32
+ return (
33
+ <p className="flex h-16 items-center justify-center border-t text-xs text-muted-foreground sm:h-20">
34
+ No reports in 30 days. Check again after the app reports activity.
35
+ </p>
36
+ );
37
+ return (
38
+ <div className="border-t pt-3">
39
+ <ChartContainer
40
+ aria-label="Bundle activity over 30 days, UTC"
41
+ className="h-32 w-full aspect-auto sm:h-40"
42
+ config={config}
43
+ >
44
+ <AreaChart
45
+ accessibilityLayer
46
+ data={series.points}
47
+ margin={{ left: -16, right: 4, top: 4 }}
48
+ >
49
+ <CartesianGrid vertical={false} />
50
+ <XAxis
51
+ axisLine={false}
52
+ dataKey="startMs"
53
+ minTickGap={28}
54
+ tickFormatter={formatDate}
55
+ tickLine={false}
56
+ />
57
+ <YAxis
58
+ allowDecimals={false}
59
+ axisLine={false}
60
+ tickLine={false}
61
+ width={40}
62
+ />
63
+ <ChartLegend content={<ChartLegendContent />} />
64
+ <ChartTooltip
65
+ content={
66
+ <ChartTooltipContent
67
+ labelFormatter={(_, payload) =>
68
+ `${formatDate(payload[0]?.payload.startMs)} · UTC`
69
+ }
70
+ />
71
+ }
72
+ />
73
+ <Area
74
+ dataKey="active"
75
+ fill="var(--color-active)"
76
+ fillOpacity={0.12}
77
+ isAnimationActive={false}
78
+ stroke="var(--color-active)"
79
+ strokeWidth={2}
80
+ type="linear"
81
+ />
82
+ <Area
83
+ dataKey="recoveredInstallations"
84
+ fill="var(--color-recoveredInstallations)"
85
+ fillOpacity={0.04}
86
+ isAnimationActive={false}
87
+ stroke="var(--color-recoveredInstallations)"
88
+ strokeWidth={1.5}
89
+ type="linear"
90
+ />
91
+ </AreaChart>
92
+ </ChartContainer>
93
+ </div>
94
+ );
95
+ }