@uptime.link/statuspage 1.0.74 → 1.2.0

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 (96) hide show
  1. package/dist_bundle/bundle.js +5019 -519
  2. package/dist_bundle/bundle.js.map +4 -4
  3. package/dist_ts_web/00_commitinfo_data.js +2 -2
  4. package/dist_ts_web/elements/index.d.ts +3 -0
  5. package/dist_ts_web/elements/index.js +6 -1
  6. package/dist_ts_web/elements/internal/uplinternal-miniheading.d.ts +1 -0
  7. package/dist_ts_web/elements/internal/uplinternal-miniheading.js +78 -28
  8. package/dist_ts_web/elements/upl-statuspage-assetsselector.d.ts +14 -0
  9. package/dist_ts_web/elements/upl-statuspage-assetsselector.demo.d.ts +1 -0
  10. package/dist_ts_web/elements/upl-statuspage-assetsselector.demo.js +575 -0
  11. package/dist_ts_web/elements/upl-statuspage-assetsselector.js +679 -43
  12. package/dist_ts_web/elements/upl-statuspage-footer.d.ts +46 -2
  13. package/dist_ts_web/elements/upl-statuspage-footer.demo.d.ts +1 -0
  14. package/dist_ts_web/elements/upl-statuspage-footer.demo.js +679 -0
  15. package/dist_ts_web/elements/upl-statuspage-footer.js +846 -61
  16. package/dist_ts_web/elements/upl-statuspage-header.d.ts +5 -1
  17. package/dist_ts_web/elements/upl-statuspage-header.demo.d.ts +1 -0
  18. package/dist_ts_web/elements/upl-statuspage-header.demo.js +220 -0
  19. package/dist_ts_web/elements/upl-statuspage-header.js +373 -86
  20. package/dist_ts_web/elements/upl-statuspage-incidents.d.ts +22 -4
  21. package/dist_ts_web/elements/upl-statuspage-incidents.demo.d.ts +1 -0
  22. package/dist_ts_web/elements/upl-statuspage-incidents.demo.js +1147 -0
  23. package/dist_ts_web/elements/upl-statuspage-incidents.js +937 -74
  24. package/dist_ts_web/elements/upl-statuspage-pagetitle.d.ts +15 -0
  25. package/dist_ts_web/elements/upl-statuspage-pagetitle.demo.d.ts +1 -0
  26. package/dist_ts_web/elements/upl-statuspage-pagetitle.demo.js +25 -0
  27. package/dist_ts_web/elements/upl-statuspage-pagetitle.js +148 -0
  28. package/dist_ts_web/elements/upl-statuspage-statsgrid.d.ts +23 -0
  29. package/dist_ts_web/elements/upl-statuspage-statsgrid.demo.d.ts +1 -0
  30. package/dist_ts_web/elements/upl-statuspage-statsgrid.demo.js +295 -0
  31. package/dist_ts_web/elements/upl-statuspage-statsgrid.js +549 -0
  32. package/dist_ts_web/elements/upl-statuspage-statusbar.d.ts +4 -0
  33. package/dist_ts_web/elements/upl-statuspage-statusbar.demo.d.ts +1 -0
  34. package/dist_ts_web/elements/upl-statuspage-statusbar.demo.js +365 -0
  35. package/dist_ts_web/elements/upl-statuspage-statusbar.js +408 -44
  36. package/dist_ts_web/elements/upl-statuspage-statusdetails.d.ts +14 -0
  37. package/dist_ts_web/elements/upl-statuspage-statusdetails.demo.d.ts +1 -0
  38. package/dist_ts_web/elements/upl-statuspage-statusdetails.demo.js +706 -0
  39. package/dist_ts_web/elements/upl-statuspage-statusdetails.js +397 -62
  40. package/dist_ts_web/elements/upl-statuspage-statusmonth.d.ts +17 -0
  41. package/dist_ts_web/elements/upl-statuspage-statusmonth.demo.d.ts +1 -0
  42. package/dist_ts_web/elements/upl-statuspage-statusmonth.demo.js +798 -0
  43. package/dist_ts_web/elements/upl-statuspage-statusmonth.js +662 -103
  44. package/dist_ts_web/interfaces/index.d.ts +84 -0
  45. package/dist_ts_web/interfaces/index.js +4 -0
  46. package/dist_ts_web/pages/index.d.ts +4 -1
  47. package/dist_ts_web/pages/index.js +5 -2
  48. package/dist_ts_web/pages/statuspage-allgreen.d.ts +1 -0
  49. package/dist_ts_web/pages/statuspage-allgreen.js +386 -0
  50. package/dist_ts_web/pages/statuspage-demo.d.ts +1 -0
  51. package/dist_ts_web/pages/statuspage-demo.js +616 -0
  52. package/dist_ts_web/pages/statuspage-maintenance.d.ts +1 -0
  53. package/dist_ts_web/pages/statuspage-maintenance.js +544 -0
  54. package/dist_ts_web/pages/statuspage-outage.d.ts +1 -0
  55. package/dist_ts_web/pages/statuspage-outage.js +543 -0
  56. package/dist_ts_web/styles/shared.styles.d.ts +102 -0
  57. package/dist_ts_web/styles/shared.styles.js +494 -0
  58. package/dist_watch/bundle.js +52265 -32033
  59. package/dist_watch/bundle.js.map +4 -4
  60. package/dist_watch/index.html +1 -0
  61. package/npmextra.json +9 -3
  62. package/package.json +19 -19
  63. package/readme.hints.md +292 -0
  64. package/readme.md +326 -149
  65. package/readme.plan.md +261 -0
  66. package/ts_web/00_commitinfo_data.ts +1 -1
  67. package/ts_web/elements/index.ts +6 -0
  68. package/ts_web/elements/internal/uplinternal-miniheading.ts +24 -17
  69. package/ts_web/elements/upl-statuspage-assetsselector.demo.ts +607 -0
  70. package/ts_web/elements/upl-statuspage-assetsselector.ts +600 -18
  71. package/ts_web/elements/upl-statuspage-footer.demo.ts +744 -0
  72. package/ts_web/elements/upl-statuspage-footer.ts +662 -30
  73. package/ts_web/elements/upl-statuspage-header.demo.ts +241 -0
  74. package/ts_web/elements/upl-statuspage-header.ts +289 -52
  75. package/ts_web/elements/upl-statuspage-incidents.demo.ts +1216 -0
  76. package/ts_web/elements/upl-statuspage-incidents.ts +840 -26
  77. package/ts_web/elements/upl-statuspage-pagetitle.demo.ts +25 -0
  78. package/ts_web/elements/upl-statuspage-pagetitle.ts +89 -0
  79. package/ts_web/elements/upl-statuspage-statsgrid.demo.ts +315 -0
  80. package/ts_web/elements/upl-statuspage-statsgrid.ts +478 -0
  81. package/ts_web/elements/upl-statuspage-statusbar.demo.ts +393 -0
  82. package/ts_web/elements/upl-statuspage-statusbar.ts +332 -20
  83. package/ts_web/elements/upl-statuspage-statusdetails.demo.ts +754 -0
  84. package/ts_web/elements/upl-statuspage-statusdetails.ts +321 -37
  85. package/ts_web/elements/upl-statuspage-statusmonth.demo.ts +876 -0
  86. package/ts_web/elements/upl-statuspage-statusmonth.ts +584 -79
  87. package/ts_web/interfaces/index.ts +95 -0
  88. package/ts_web/pages/index.ts +4 -1
  89. package/ts_web/pages/statuspage-allgreen.ts +412 -0
  90. package/ts_web/pages/statuspage-demo.ts +653 -0
  91. package/ts_web/pages/statuspage-maintenance.ts +570 -0
  92. package/ts_web/pages/statuspage-outage.ts +568 -0
  93. package/ts_web/styles/shared.styles.ts +531 -0
  94. package/dist_ts_web/pages/page1.d.ts +0 -1
  95. package/dist_ts_web/pages/page1.js +0 -11
  96. package/ts_web/pages/page1.ts +0 -11
@@ -0,0 +1,549 @@
1
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
2
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
3
+ var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
4
+ var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
5
+ var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
6
+ var _, done = false;
7
+ for (var i = decorators.length - 1; i >= 0; i--) {
8
+ var context = {};
9
+ for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
10
+ for (var p in contextIn.access) context.access[p] = contextIn.access[p];
11
+ context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
12
+ var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
13
+ if (kind === "accessor") {
14
+ if (result === void 0) continue;
15
+ if (result === null || typeof result !== "object") throw new TypeError("Object expected");
16
+ if (_ = accept(result.get)) descriptor.get = _;
17
+ if (_ = accept(result.set)) descriptor.set = _;
18
+ if (_ = accept(result.init)) initializers.unshift(_);
19
+ }
20
+ else if (_ = accept(result)) {
21
+ if (kind === "field") initializers.unshift(_);
22
+ else descriptor[key] = _;
23
+ }
24
+ }
25
+ if (target) Object.defineProperty(target, contextIn.name, descriptor);
26
+ done = true;
27
+ };
28
+ var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
29
+ var useValue = arguments.length > 2;
30
+ for (var i = 0; i < initializers.length; i++) {
31
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
32
+ }
33
+ return useValue ? value : void 0;
34
+ };
35
+ import { DeesElement, property, html, customElement, css, cssManager, unsafeCSS, } from '@design.estate/dees-element';
36
+ import * as domtools from '@design.estate/dees-domtools';
37
+ import * as sharedStyles from '../styles/shared.styles.js';
38
+ import './internal/uplinternal-miniheading.js';
39
+ import { demoFunc } from './upl-statuspage-statsgrid.demo.js';
40
+ let UplStatuspageStatsgrid = (() => {
41
+ let _classDecorators = [customElement('upl-statuspage-statsgrid')];
42
+ let _classDescriptor;
43
+ let _classExtraInitializers = [];
44
+ let _classThis;
45
+ let _classSuper = DeesElement;
46
+ let _uptime_decorators;
47
+ let _uptime_initializers = [];
48
+ let _uptime_extraInitializers = [];
49
+ let _avgResponseTime_decorators;
50
+ let _avgResponseTime_initializers = [];
51
+ let _avgResponseTime_extraInitializers = [];
52
+ let _totalIncidents_decorators;
53
+ let _totalIncidents_initializers = [];
54
+ let _totalIncidents_extraInitializers = [];
55
+ let _affectedServices_decorators;
56
+ let _affectedServices_initializers = [];
57
+ let _affectedServices_extraInitializers = [];
58
+ let _totalServices_decorators;
59
+ let _totalServices_initializers = [];
60
+ let _totalServices_extraInitializers = [];
61
+ let _currentStatus_decorators;
62
+ let _currentStatus_initializers = [];
63
+ let _currentStatus_extraInitializers = [];
64
+ let _loading_decorators;
65
+ let _loading_initializers = [];
66
+ let _loading_extraInitializers = [];
67
+ let _timePeriod_decorators;
68
+ let _timePeriod_initializers = [];
69
+ let _timePeriod_extraInitializers = [];
70
+ var UplStatuspageStatsgrid = class extends _classSuper {
71
+ static { _classThis = this; }
72
+ static {
73
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
74
+ _uptime_decorators = [property({ type: Number })];
75
+ _avgResponseTime_decorators = [property({ type: Number })];
76
+ _totalIncidents_decorators = [property({ type: Number })];
77
+ _affectedServices_decorators = [property({ type: Number })];
78
+ _totalServices_decorators = [property({ type: Number })];
79
+ _currentStatus_decorators = [property({ type: String })];
80
+ _loading_decorators = [property({ type: Boolean })];
81
+ _timePeriod_decorators = [property({ type: String })];
82
+ __esDecorate(this, null, _uptime_decorators, { kind: "accessor", name: "uptime", static: false, private: false, access: { has: obj => "uptime" in obj, get: obj => obj.uptime, set: (obj, value) => { obj.uptime = value; } }, metadata: _metadata }, _uptime_initializers, _uptime_extraInitializers);
83
+ __esDecorate(this, null, _avgResponseTime_decorators, { kind: "accessor", name: "avgResponseTime", static: false, private: false, access: { has: obj => "avgResponseTime" in obj, get: obj => obj.avgResponseTime, set: (obj, value) => { obj.avgResponseTime = value; } }, metadata: _metadata }, _avgResponseTime_initializers, _avgResponseTime_extraInitializers);
84
+ __esDecorate(this, null, _totalIncidents_decorators, { kind: "accessor", name: "totalIncidents", static: false, private: false, access: { has: obj => "totalIncidents" in obj, get: obj => obj.totalIncidents, set: (obj, value) => { obj.totalIncidents = value; } }, metadata: _metadata }, _totalIncidents_initializers, _totalIncidents_extraInitializers);
85
+ __esDecorate(this, null, _affectedServices_decorators, { kind: "accessor", name: "affectedServices", static: false, private: false, access: { has: obj => "affectedServices" in obj, get: obj => obj.affectedServices, set: (obj, value) => { obj.affectedServices = value; } }, metadata: _metadata }, _affectedServices_initializers, _affectedServices_extraInitializers);
86
+ __esDecorate(this, null, _totalServices_decorators, { kind: "accessor", name: "totalServices", static: false, private: false, access: { has: obj => "totalServices" in obj, get: obj => obj.totalServices, set: (obj, value) => { obj.totalServices = value; } }, metadata: _metadata }, _totalServices_initializers, _totalServices_extraInitializers);
87
+ __esDecorate(this, null, _currentStatus_decorators, { kind: "accessor", name: "currentStatus", static: false, private: false, access: { has: obj => "currentStatus" in obj, get: obj => obj.currentStatus, set: (obj, value) => { obj.currentStatus = value; } }, metadata: _metadata }, _currentStatus_initializers, _currentStatus_extraInitializers);
88
+ __esDecorate(this, null, _loading_decorators, { kind: "accessor", name: "loading", static: false, private: false, access: { has: obj => "loading" in obj, get: obj => obj.loading, set: (obj, value) => { obj.loading = value; } }, metadata: _metadata }, _loading_initializers, _loading_extraInitializers);
89
+ __esDecorate(this, null, _timePeriod_decorators, { kind: "accessor", name: "timePeriod", static: false, private: false, access: { has: obj => "timePeriod" in obj, get: obj => obj.timePeriod, set: (obj, value) => { obj.timePeriod = value; } }, metadata: _metadata }, _timePeriod_initializers, _timePeriod_extraInitializers);
90
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
91
+ UplStatuspageStatsgrid = _classThis = _classDescriptor.value;
92
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
93
+ }
94
+ static demo = demoFunc;
95
+ #uptime_accessor_storage = __runInitializers(this, _uptime_initializers, 99.99);
96
+ get uptime() { return this.#uptime_accessor_storage; }
97
+ set uptime(value) { this.#uptime_accessor_storage = value; }
98
+ #avgResponseTime_accessor_storage = (__runInitializers(this, _uptime_extraInitializers), __runInitializers(this, _avgResponseTime_initializers, 125));
99
+ get avgResponseTime() { return this.#avgResponseTime_accessor_storage; }
100
+ set avgResponseTime(value) { this.#avgResponseTime_accessor_storage = value; }
101
+ #totalIncidents_accessor_storage = (__runInitializers(this, _avgResponseTime_extraInitializers), __runInitializers(this, _totalIncidents_initializers, 0));
102
+ get totalIncidents() { return this.#totalIncidents_accessor_storage; }
103
+ set totalIncidents(value) { this.#totalIncidents_accessor_storage = value; }
104
+ #affectedServices_accessor_storage = (__runInitializers(this, _totalIncidents_extraInitializers), __runInitializers(this, _affectedServices_initializers, 0));
105
+ get affectedServices() { return this.#affectedServices_accessor_storage; }
106
+ set affectedServices(value) { this.#affectedServices_accessor_storage = value; }
107
+ #totalServices_accessor_storage = (__runInitializers(this, _affectedServices_extraInitializers), __runInitializers(this, _totalServices_initializers, 0));
108
+ get totalServices() { return this.#totalServices_accessor_storage; }
109
+ set totalServices(value) { this.#totalServices_accessor_storage = value; }
110
+ #currentStatus_accessor_storage = (__runInitializers(this, _totalServices_extraInitializers), __runInitializers(this, _currentStatus_initializers, 'operational'));
111
+ get currentStatus() { return this.#currentStatus_accessor_storage; }
112
+ set currentStatus(value) { this.#currentStatus_accessor_storage = value; }
113
+ #loading_accessor_storage = (__runInitializers(this, _currentStatus_extraInitializers), __runInitializers(this, _loading_initializers, false));
114
+ get loading() { return this.#loading_accessor_storage; }
115
+ set loading(value) { this.#loading_accessor_storage = value; }
116
+ #timePeriod_accessor_storage = (__runInitializers(this, _loading_extraInitializers), __runInitializers(this, _timePeriod_initializers, '90 days'));
117
+ get timePeriod() { return this.#timePeriod_accessor_storage; }
118
+ set timePeriod(value) { this.#timePeriod_accessor_storage = value; }
119
+ constructor() {
120
+ super();
121
+ __runInitializers(this, _timePeriod_extraInitializers);
122
+ }
123
+ static styles = [
124
+ domtools.elementBasic.staticStyles,
125
+ sharedStyles.commonStyles,
126
+ css `
127
+ :host {
128
+ display: block;
129
+ background: transparent;
130
+ font-family: ${unsafeCSS(sharedStyles.fonts.base)};
131
+ color: ${sharedStyles.colors.text.primary};
132
+ }
133
+
134
+ .container {
135
+ max-width: 1200px;
136
+ margin: 0 auto;
137
+ padding: 0 ${unsafeCSS(sharedStyles.spacing.lg)} ${unsafeCSS(sharedStyles.spacing.lg)} ${unsafeCSS(sharedStyles.spacing.lg)};
138
+ }
139
+
140
+ .stats-grid {
141
+ display: grid;
142
+ grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
143
+ gap: ${unsafeCSS(sharedStyles.spacing.md)};
144
+ }
145
+
146
+ .stat-card {
147
+ background: ${sharedStyles.colors.background.card};
148
+ border: 1px solid ${sharedStyles.colors.border.default};
149
+ border-radius: ${unsafeCSS(sharedStyles.borderRadius.lg)};
150
+ padding: ${unsafeCSS(sharedStyles.spacing.lg)};
151
+ transition: all ${unsafeCSS(sharedStyles.durations.normal)} ${unsafeCSS(sharedStyles.easings.default)};
152
+ position: relative;
153
+ overflow: hidden;
154
+ animation: fadeInUp 0.4s ${unsafeCSS(sharedStyles.easings.default)} both;
155
+ }
156
+
157
+ .stat-card:nth-child(1) { animation-delay: 0ms; }
158
+ .stat-card:nth-child(2) { animation-delay: 50ms; }
159
+ .stat-card:nth-child(3) { animation-delay: 100ms; }
160
+ .stat-card:nth-child(4) { animation-delay: 150ms; }
161
+
162
+ @keyframes fadeInUp {
163
+ from {
164
+ opacity: 0;
165
+ transform: translateY(12px);
166
+ }
167
+ to {
168
+ opacity: 1;
169
+ transform: translateY(0);
170
+ }
171
+ }
172
+
173
+ /* Status-colored top accent */
174
+ .stat-card::before {
175
+ content: '';
176
+ position: absolute;
177
+ top: 0;
178
+ left: 0;
179
+ right: 0;
180
+ height: 3px;
181
+ background: ${sharedStyles.colors.border.muted};
182
+ transition: all ${unsafeCSS(sharedStyles.durations.fast)} ${unsafeCSS(sharedStyles.easings.default)};
183
+ }
184
+
185
+ .stat-card.status-card::before {
186
+ background: ${sharedStyles.colors.status.operational};
187
+ }
188
+
189
+ .stat-card.status-card.degraded::before {
190
+ background: ${sharedStyles.colors.status.degraded};
191
+ }
192
+
193
+ .stat-card.status-card.partial_outage::before {
194
+ background: ${sharedStyles.colors.status.partial};
195
+ }
196
+
197
+ .stat-card.status-card.major_outage::before {
198
+ background: ${sharedStyles.colors.status.major};
199
+ }
200
+
201
+ .stat-card.status-card.maintenance::before {
202
+ background: ${sharedStyles.colors.status.maintenance};
203
+ }
204
+
205
+ .stat-card.uptime-card::before {
206
+ background: ${sharedStyles.colors.status.operational};
207
+ }
208
+
209
+ .stat-card.response-card::before {
210
+ background: ${sharedStyles.colors.status.maintenance};
211
+ }
212
+
213
+ .stat-card.incident-card::before {
214
+ background: ${sharedStyles.colors.status.partial};
215
+ }
216
+
217
+ .stat-card:hover {
218
+ border-color: ${sharedStyles.colors.border.muted};
219
+ box-shadow: ${unsafeCSS(sharedStyles.shadows.md)};
220
+ transform: translateY(-3px);
221
+ }
222
+
223
+ .stat-card:hover::before {
224
+ height: 4px;
225
+ }
226
+
227
+ .stat-label {
228
+ font-size: 11px;
229
+ color: ${sharedStyles.colors.text.muted};
230
+ text-transform: uppercase;
231
+ letter-spacing: 0.06em;
232
+ font-weight: 600;
233
+ margin-bottom: ${unsafeCSS(sharedStyles.spacing.sm)};
234
+ display: flex;
235
+ align-items: center;
236
+ gap: 6px;
237
+ }
238
+
239
+ .stat-label svg {
240
+ width: 14px;
241
+ height: 14px;
242
+ opacity: 0.7;
243
+ }
244
+
245
+ .stat-value {
246
+ font-size: 28px;
247
+ font-weight: 700;
248
+ color: ${sharedStyles.colors.text.primary};
249
+ font-variant-numeric: tabular-nums;
250
+ line-height: 1.2;
251
+ letter-spacing: -0.02em;
252
+ transition: transform ${unsafeCSS(sharedStyles.durations.fast)} ${unsafeCSS(sharedStyles.easings.default)};
253
+ }
254
+
255
+ .stat-card:hover .stat-value {
256
+ transform: scale(1.02);
257
+ }
258
+
259
+ .stat-unit {
260
+ font-size: 16px;
261
+ font-weight: 500;
262
+ color: ${sharedStyles.colors.text.secondary};
263
+ margin-left: 2px;
264
+ }
265
+
266
+ .stat-change {
267
+ font-size: 12px;
268
+ margin-top: ${unsafeCSS(sharedStyles.spacing.sm)};
269
+ display: flex;
270
+ align-items: center;
271
+ gap: 4px;
272
+ padding: 4px 8px;
273
+ border-radius: ${unsafeCSS(sharedStyles.borderRadius.sm)};
274
+ width: fit-content;
275
+ }
276
+
277
+ .stat-change.positive {
278
+ color: ${sharedStyles.colors.status.operational};
279
+ background: ${cssManager.bdTheme('rgba(22, 163, 74, 0.08)', 'rgba(34, 197, 94, 0.12)')};
280
+ }
281
+
282
+ .stat-change.negative {
283
+ color: ${sharedStyles.colors.status.partial};
284
+ background: ${cssManager.bdTheme('rgba(239, 68, 68, 0.08)', 'rgba(248, 113, 113, 0.12)')};
285
+ }
286
+
287
+ .stat-change.neutral {
288
+ color: ${sharedStyles.colors.text.muted};
289
+ background: ${sharedStyles.colors.background.muted};
290
+ }
291
+
292
+ /* Status text color variations */
293
+ .stat-value.operational {
294
+ color: ${sharedStyles.colors.status.operational};
295
+ }
296
+
297
+ .stat-value.degraded {
298
+ color: ${sharedStyles.colors.status.degraded};
299
+ }
300
+
301
+ .stat-value.partial_outage {
302
+ color: ${sharedStyles.colors.status.partial};
303
+ }
304
+
305
+ .stat-value.major_outage {
306
+ color: ${sharedStyles.colors.status.major};
307
+ }
308
+
309
+ .stat-value.maintenance {
310
+ color: ${sharedStyles.colors.status.maintenance};
311
+ }
312
+
313
+ .loading-skeleton {
314
+ display: grid;
315
+ grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
316
+ gap: ${unsafeCSS(sharedStyles.spacing.md)};
317
+ }
318
+
319
+ .skeleton-card {
320
+ background: ${sharedStyles.colors.background.card};
321
+ border: 1px solid ${sharedStyles.colors.border.default};
322
+ border-radius: ${unsafeCSS(sharedStyles.borderRadius.lg)};
323
+ padding: ${unsafeCSS(sharedStyles.spacing.lg)};
324
+ height: 110px;
325
+ position: relative;
326
+ overflow: hidden;
327
+ }
328
+
329
+ .skeleton-card::before {
330
+ content: '';
331
+ position: absolute;
332
+ top: 0;
333
+ left: 0;
334
+ right: 0;
335
+ height: 3px;
336
+ background: ${sharedStyles.colors.background.muted};
337
+ }
338
+
339
+ .skeleton-label {
340
+ height: 12px;
341
+ width: 80px;
342
+ background: ${sharedStyles.colors.background.muted};
343
+ border-radius: 4px;
344
+ margin-bottom: ${unsafeCSS(sharedStyles.spacing.sm)};
345
+ animation: shimmer 1.5s infinite;
346
+ }
347
+
348
+ .skeleton-value {
349
+ height: 32px;
350
+ width: 100px;
351
+ background: ${sharedStyles.colors.background.muted};
352
+ border-radius: 6px;
353
+ animation: shimmer 1.5s infinite;
354
+ animation-delay: 0.1s;
355
+ }
356
+
357
+ .skeleton-change {
358
+ height: 20px;
359
+ width: 70px;
360
+ background: ${sharedStyles.colors.background.muted};
361
+ border-radius: 4px;
362
+ margin-top: ${unsafeCSS(sharedStyles.spacing.sm)};
363
+ animation: shimmer 1.5s infinite;
364
+ animation-delay: 0.2s;
365
+ }
366
+
367
+ @keyframes shimmer {
368
+ 0% { opacity: 0.5; }
369
+ 50% { opacity: 1; }
370
+ 100% { opacity: 0.5; }
371
+ }
372
+
373
+ .status-indicator {
374
+ display: inline-block;
375
+ width: 8px;
376
+ height: 8px;
377
+ border-radius: 50%;
378
+ flex-shrink: 0;
379
+ }
380
+
381
+ .status-indicator.operational {
382
+ background: ${sharedStyles.colors.status.operational};
383
+ box-shadow: 0 0 0 2px ${cssManager.bdTheme('rgba(22, 163, 74, 0.2)', 'rgba(34, 197, 94, 0.25)')};
384
+ animation: statusPulse 2s ease-in-out infinite;
385
+ }
386
+
387
+ @keyframes statusPulse {
388
+ 0%, 100% { box-shadow: 0 0 0 2px ${cssManager.bdTheme('rgba(22, 163, 74, 0.2)', 'rgba(34, 197, 94, 0.25)')}; }
389
+ 50% { box-shadow: 0 0 0 4px ${cssManager.bdTheme('rgba(22, 163, 74, 0.1)', 'rgba(34, 197, 94, 0.15)')}; }
390
+ }
391
+
392
+ .status-indicator.degraded {
393
+ background: ${sharedStyles.colors.status.degraded};
394
+ box-shadow: 0 0 0 2px ${cssManager.bdTheme('rgba(217, 119, 6, 0.2)', 'rgba(251, 191, 36, 0.25)')};
395
+ }
396
+
397
+ .status-indicator.partial_outage {
398
+ background: ${sharedStyles.colors.status.partial};
399
+ box-shadow: 0 0 0 2px ${cssManager.bdTheme('rgba(239, 68, 68, 0.2)', 'rgba(248, 113, 113, 0.25)')};
400
+ }
401
+
402
+ .status-indicator.major_outage {
403
+ background: ${sharedStyles.colors.status.major};
404
+ box-shadow: 0 0 0 2px ${cssManager.bdTheme('rgba(185, 28, 28, 0.2)', 'rgba(239, 68, 68, 0.25)')};
405
+ animation: majorPulse 1s ease-in-out infinite;
406
+ }
407
+
408
+ @keyframes majorPulse {
409
+ 0%, 100% { opacity: 1; }
410
+ 50% { opacity: 0.6; }
411
+ }
412
+
413
+ .status-indicator.maintenance {
414
+ background: ${sharedStyles.colors.status.maintenance};
415
+ box-shadow: 0 0 0 2px ${cssManager.bdTheme('rgba(37, 99, 235, 0.2)', 'rgba(96, 165, 250, 0.25)')};
416
+ }
417
+
418
+ @media (max-width: 640px) {
419
+ .container {
420
+ padding: 0 ${unsafeCSS(sharedStyles.spacing.md)} ${unsafeCSS(sharedStyles.spacing.md)} ${unsafeCSS(sharedStyles.spacing.md)};
421
+ }
422
+
423
+ .stats-grid {
424
+ grid-template-columns: repeat(2, 1fr);
425
+ gap: ${unsafeCSS(sharedStyles.spacing.sm)};
426
+ }
427
+
428
+ .stat-card {
429
+ padding: ${unsafeCSS(sharedStyles.spacing.md)};
430
+ }
431
+
432
+ .stat-value {
433
+ font-size: 22px;
434
+ }
435
+
436
+ .stat-label {
437
+ font-size: 10px;
438
+ }
439
+
440
+ .stat-label svg {
441
+ width: 12px;
442
+ height: 12px;
443
+ }
444
+ }
445
+ `,
446
+ ];
447
+ render() {
448
+ return html `
449
+ <div class="container">
450
+ ${this.loading ? html `
451
+ <div class="loading-skeleton">
452
+ ${Array(4).fill(0).map(() => html `
453
+ <div class="skeleton-card">
454
+ <div class="skeleton-label"></div>
455
+ <div class="skeleton-value"></div>
456
+ </div>
457
+ `)}
458
+ </div>
459
+ ` : html `
460
+ <div class="stats-grid">
461
+ <div class="stat-card status-card ${this.currentStatus}">
462
+ <div class="stat-label">
463
+ <span class="status-indicator ${this.currentStatus}"></span>
464
+ Current Status
465
+ </div>
466
+ <div class="stat-value ${this.currentStatus}">
467
+ ${this.formatStatus(this.currentStatus)}
468
+ </div>
469
+ </div>
470
+
471
+ <div class="stat-card uptime-card">
472
+ <div class="stat-label">
473
+ <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
474
+ <polyline points="22 12 18 12 15 21 9 3 6 12 2 12"></polyline>
475
+ </svg>
476
+ Uptime
477
+ </div>
478
+ <div class="stat-value">
479
+ ${this.uptime.toFixed(2)}<span class="stat-unit">%</span>
480
+ </div>
481
+ <div class="stat-change neutral">
482
+ Last ${this.timePeriod}
483
+ </div>
484
+ </div>
485
+
486
+ <div class="stat-card response-card">
487
+ <div class="stat-label">
488
+ <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
489
+ <circle cx="12" cy="12" r="10"></circle>
490
+ <polyline points="12 6 12 12 16 14"></polyline>
491
+ </svg>
492
+ Avg Response
493
+ </div>
494
+ <div class="stat-value">
495
+ ${this.avgResponseTime}<span class="stat-unit">ms</span>
496
+ </div>
497
+ ${this.renderResponseChange()}
498
+ </div>
499
+
500
+ <div class="stat-card incident-card">
501
+ <div class="stat-label">
502
+ <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
503
+ <path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"></path>
504
+ <line x1="12" y1="9" x2="12" y2="13"></line>
505
+ <line x1="12" y1="17" x2="12.01" y2="17"></line>
506
+ </svg>
507
+ Incidents
508
+ </div>
509
+ <div class="stat-value">
510
+ ${this.totalIncidents}
511
+ </div>
512
+ <div class="stat-change neutral">
513
+ ${this.affectedServices} of ${this.totalServices} services
514
+ </div>
515
+ </div>
516
+ </div>
517
+ `}
518
+ </div>
519
+ `;
520
+ }
521
+ formatStatus(status) {
522
+ const statusMap = {
523
+ operational: 'Operational',
524
+ degraded: 'Degraded',
525
+ partial_outage: 'Partial Outage',
526
+ major_outage: 'Major Outage',
527
+ maintenance: 'Maintenance',
528
+ };
529
+ return statusMap[status] || 'Unknown';
530
+ }
531
+ renderResponseChange() {
532
+ // This could be enhanced with actual trend data
533
+ const trend = this.avgResponseTime < 200 ? 'positive' : this.avgResponseTime > 500 ? 'negative' : 'neutral';
534
+ const icon = trend === 'positive' ? '↓' : trend === 'negative' ? '↑' : '→';
535
+ return html `
536
+ <div class="stat-change ${trend}">
537
+ <span>${icon}</span>
538
+ <span>${trend === 'positive' ? 'Fast' : trend === 'negative' ? 'Slow' : 'Normal'}</span>
539
+ </div>
540
+ `;
541
+ }
542
+ static {
543
+ __runInitializers(_classThis, _classExtraInitializers);
544
+ }
545
+ };
546
+ return UplStatuspageStatsgrid = _classThis;
547
+ })();
548
+ export { UplStatuspageStatsgrid };
549
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsLXN0YXR1c3BhZ2Utc3RhdHNncmlkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdHNfd2ViL2VsZW1lbnRzL3VwbC1zdGF0dXNwYWdlLXN0YXRzZ3JpZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUNMLFdBQVcsRUFDWCxRQUFRLEVBQ1IsSUFBSSxFQUNKLGFBQWEsRUFFYixHQUFHLEVBQ0gsVUFBVSxFQUNWLFNBQVMsR0FDVixNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sS0FBSyxRQUFRLE1BQU0sOEJBQThCLENBQUM7QUFDekQsT0FBTyxLQUFLLFlBQVksTUFBTSw0QkFBNEIsQ0FBQztBQUUzRCxPQUFPLHVDQUF1QyxDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztJQVNqRCxzQkFBc0I7NEJBRGxDLGFBQWEsQ0FBQywwQkFBMEIsQ0FBQzs7OztzQkFDRSxXQUFXOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O3NDQUFuQixTQUFRLFdBQVc7Ozs7a0NBR3BELFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQzsyQ0FHMUIsUUFBUSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDOzBDQUcxQixRQUFRLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUM7NENBRzFCLFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQzt5Q0FHMUIsUUFBUSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDO3lDQUcxQixRQUFRLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUM7bUNBRzFCLFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQztzQ0FHM0IsUUFBUSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFB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
@@ -1,4 +1,5 @@
1
1
  import { DeesElement, type TemplateResult } from '@design.estate/dees-element';
2
+ import type { IOverallStatus } from '../interfaces/index.js';
2
3
  declare global {
3
4
  interface HTMLElementTagNameMap {
4
5
  'upl-statuspage-statusbar': UplStatuspageStatusbar;
@@ -6,6 +7,9 @@ declare global {
6
7
  }
7
8
  export declare class UplStatuspageStatusbar extends DeesElement {
8
9
  static demo: () => TemplateResult<1>;
10
+ accessor overallStatus: IOverallStatus;
11
+ accessor loading: boolean;
12
+ accessor expandable: boolean;
9
13
  constructor();
10
14
  static styles: import("@design.estate/dees-element").CSSResult[];
11
15
  render(): TemplateResult;
@@ -0,0 +1 @@
1
+ export declare const demoFunc: () => import("@design.estate/dees-element").TemplateResult<1>;