@uptime.link/statuspage 1.1.0 → 1.3.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.
- package/dist_bundle/bundle.js +1814 -917
- package/dist_bundle/bundle.js.map +3 -3
- package/dist_ts_web/00_commitinfo_data.js +1 -1
- package/dist_ts_web/elements/upl-statuspage-assetsselector.js +119 -45
- package/dist_ts_web/elements/upl-statuspage-footer.js +81 -27
- package/dist_ts_web/elements/upl-statuspage-header.js +79 -19
- package/dist_ts_web/elements/upl-statuspage-incidents.js +242 -55
- package/dist_ts_web/elements/upl-statuspage-statsgrid.d.ts +3 -0
- package/dist_ts_web/elements/upl-statuspage-statsgrid.js +239 -52
- package/dist_ts_web/elements/upl-statuspage-statusbar.js +58 -7
- package/dist_ts_web/elements/upl-statuspage-statusdetails.js +36 -11
- package/dist_ts_web/elements/upl-statuspage-statusmonth.d.ts +2 -0
- package/dist_ts_web/elements/upl-statuspage-statusmonth.js +415 -230
- package/dist_ts_web/styles/shared.styles.d.ts +22 -0
- package/dist_ts_web/styles/shared.styles.js +146 -3
- package/dist_watch/bundle.js +1425 -446
- package/dist_watch/bundle.js.map +3 -3
- package/dist_watch/index.html +1 -0
- package/package.json +1 -1
- package/ts_web/00_commitinfo_data.ts +1 -1
- package/ts_web/elements/upl-statuspage-assetsselector.ts +118 -44
- package/ts_web/elements/upl-statuspage-footer.ts +80 -26
- package/ts_web/elements/upl-statuspage-header.ts +87 -18
- package/ts_web/elements/upl-statuspage-incidents.ts +248 -56
- package/ts_web/elements/upl-statuspage-statsgrid.ts +235 -55
- package/ts_web/elements/upl-statuspage-statusbar.ts +57 -6
- package/ts_web/elements/upl-statuspage-statusdetails.ts +35 -10
- package/ts_web/elements/upl-statuspage-statusmonth.ts +436 -252
- package/ts_web/styles/shared.styles.ts +166 -2
|
@@ -84,15 +84,61 @@ export const easings = {
|
|
|
84
84
|
default: 'cubic-bezier(0.4, 0, 0.2, 1)',
|
|
85
85
|
smooth: 'cubic-bezier(0.4, 0, 0.6, 1)',
|
|
86
86
|
bounce: 'cubic-bezier(0.68, -0.55, 0.265, 1.55)',
|
|
87
|
-
snappy: 'cubic-bezier(0.2, 0, 0, 1)'
|
|
87
|
+
snappy: 'cubic-bezier(0.2, 0, 0, 1)',
|
|
88
|
+
spring: 'cubic-bezier(0.175, 0.885, 0.32, 1.275)'
|
|
88
89
|
};
|
|
89
90
|
|
|
90
91
|
// Durations
|
|
91
92
|
export const durations = {
|
|
93
|
+
instant: '50ms',
|
|
92
94
|
fast: '100ms',
|
|
93
95
|
normal: '200ms',
|
|
94
96
|
slow: '300ms',
|
|
95
|
-
slower: '500ms'
|
|
97
|
+
slower: '500ms',
|
|
98
|
+
slowest: '800ms'
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
// Status gradients for backgrounds
|
|
102
|
+
export const statusGradients = {
|
|
103
|
+
operational: cssManager.bdTheme(
|
|
104
|
+
'linear-gradient(135deg, rgba(22, 163, 74, 0.08) 0%, rgba(22, 163, 74, 0.02) 100%)',
|
|
105
|
+
'linear-gradient(135deg, rgba(34, 197, 94, 0.12) 0%, rgba(34, 197, 94, 0.03) 100%)'
|
|
106
|
+
),
|
|
107
|
+
degraded: cssManager.bdTheme(
|
|
108
|
+
'linear-gradient(135deg, rgba(217, 119, 6, 0.08) 0%, rgba(217, 119, 6, 0.02) 100%)',
|
|
109
|
+
'linear-gradient(135deg, rgba(251, 191, 36, 0.12) 0%, rgba(251, 191, 36, 0.03) 100%)'
|
|
110
|
+
),
|
|
111
|
+
partial: cssManager.bdTheme(
|
|
112
|
+
'linear-gradient(135deg, rgba(220, 38, 38, 0.08) 0%, rgba(220, 38, 38, 0.02) 100%)',
|
|
113
|
+
'linear-gradient(135deg, rgba(248, 113, 113, 0.12) 0%, rgba(248, 113, 113, 0.03) 100%)'
|
|
114
|
+
),
|
|
115
|
+
major: cssManager.bdTheme(
|
|
116
|
+
'linear-gradient(135deg, rgba(185, 28, 28, 0.10) 0%, rgba(185, 28, 28, 0.03) 100%)',
|
|
117
|
+
'linear-gradient(135deg, rgba(239, 68, 68, 0.15) 0%, rgba(239, 68, 68, 0.04) 100%)'
|
|
118
|
+
),
|
|
119
|
+
maintenance: cssManager.bdTheme(
|
|
120
|
+
'linear-gradient(135deg, rgba(37, 99, 235, 0.08) 0%, rgba(37, 99, 235, 0.02) 100%)',
|
|
121
|
+
'linear-gradient(135deg, rgba(96, 165, 250, 0.12) 0%, rgba(96, 165, 250, 0.03) 100%)'
|
|
122
|
+
)
|
|
123
|
+
};
|
|
124
|
+
|
|
125
|
+
// Glassmorphism styles
|
|
126
|
+
export const glass = {
|
|
127
|
+
light: 'background: rgba(255, 255, 255, 0.7); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);',
|
|
128
|
+
dark: 'background: rgba(9, 9, 11, 0.8); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);',
|
|
129
|
+
subtle: cssManager.bdTheme(
|
|
130
|
+
'background: rgba(255, 255, 255, 0.5); backdrop-filter: blur(8px);',
|
|
131
|
+
'background: rgba(9, 9, 11, 0.6); backdrop-filter: blur(8px);'
|
|
132
|
+
)
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
// Status glow shadows
|
|
136
|
+
export const statusGlows = {
|
|
137
|
+
operational: '0 0 20px -5px rgba(34, 197, 94, 0.4)',
|
|
138
|
+
degraded: '0 0 20px -5px rgba(251, 191, 36, 0.4)',
|
|
139
|
+
partial: '0 0 20px -5px rgba(248, 113, 113, 0.4)',
|
|
140
|
+
major: '0 0 20px -5px rgba(239, 68, 68, 0.5)',
|
|
141
|
+
maintenance: '0 0 20px -5px rgba(96, 165, 250, 0.4)'
|
|
96
142
|
};
|
|
97
143
|
|
|
98
144
|
export const commonStyles = css`
|
|
@@ -212,6 +258,28 @@ export const commonStyles = css`
|
|
|
212
258
|
50% { opacity: 0.5; }
|
|
213
259
|
}
|
|
214
260
|
|
|
261
|
+
/* Pulse ring animation for active status */
|
|
262
|
+
@keyframes pulse-ring {
|
|
263
|
+
0% {
|
|
264
|
+
transform: scale(1);
|
|
265
|
+
opacity: 0.8;
|
|
266
|
+
}
|
|
267
|
+
100% {
|
|
268
|
+
transform: scale(2.5);
|
|
269
|
+
opacity: 0;
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
/* Shimmer effect for loading states */
|
|
274
|
+
@keyframes shimmer {
|
|
275
|
+
0% {
|
|
276
|
+
background-position: -200% 0;
|
|
277
|
+
}
|
|
278
|
+
100% {
|
|
279
|
+
background-position: 200% 0;
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
|
|
215
283
|
/* Fade in animation */
|
|
216
284
|
@keyframes fadeIn {
|
|
217
285
|
from { opacity: 0; transform: translateY(4px); }
|
|
@@ -222,6 +290,22 @@ export const commonStyles = css`
|
|
|
222
290
|
animation: fadeIn ${unsafeCSS(durations.slow)} ${unsafeCSS(easings.default)} forwards;
|
|
223
291
|
}
|
|
224
292
|
|
|
293
|
+
/* Fade in up animation */
|
|
294
|
+
@keyframes fadeInUp {
|
|
295
|
+
from {
|
|
296
|
+
opacity: 0;
|
|
297
|
+
transform: translateY(16px);
|
|
298
|
+
}
|
|
299
|
+
to {
|
|
300
|
+
opacity: 1;
|
|
301
|
+
transform: translateY(0);
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
|
|
305
|
+
.fade-in-up {
|
|
306
|
+
animation: fadeInUp ${unsafeCSS(durations.slower)} ${unsafeCSS(easings.default)} forwards;
|
|
307
|
+
}
|
|
308
|
+
|
|
225
309
|
/* Scale in animation */
|
|
226
310
|
@keyframes scaleIn {
|
|
227
311
|
from { opacity: 0; transform: scale(0.95); }
|
|
@@ -232,6 +316,86 @@ export const commonStyles = css`
|
|
|
232
316
|
animation: scaleIn ${unsafeCSS(durations.slow)} ${unsafeCSS(easings.bounce)} forwards;
|
|
233
317
|
}
|
|
234
318
|
|
|
319
|
+
/* Slide down animation for expanding content */
|
|
320
|
+
@keyframes slideDown {
|
|
321
|
+
from {
|
|
322
|
+
opacity: 0;
|
|
323
|
+
transform: translateY(-8px);
|
|
324
|
+
}
|
|
325
|
+
to {
|
|
326
|
+
opacity: 1;
|
|
327
|
+
transform: translateY(0);
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
.slide-down {
|
|
332
|
+
animation: slideDown ${unsafeCSS(durations.slow)} ${unsafeCSS(easings.default)} forwards;
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
/* Stagger animation delay utilities */
|
|
336
|
+
.stagger-1 { animation-delay: 50ms; }
|
|
337
|
+
.stagger-2 { animation-delay: 100ms; }
|
|
338
|
+
.stagger-3 { animation-delay: 150ms; }
|
|
339
|
+
.stagger-4 { animation-delay: 200ms; }
|
|
340
|
+
.stagger-5 { animation-delay: 250ms; }
|
|
341
|
+
|
|
342
|
+
/* Status indicator with pulse ring */
|
|
343
|
+
.status-dot-animated {
|
|
344
|
+
position: relative;
|
|
345
|
+
width: 10px;
|
|
346
|
+
height: 10px;
|
|
347
|
+
border-radius: 50%;
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
.status-dot-animated::before {
|
|
351
|
+
content: '';
|
|
352
|
+
position: absolute;
|
|
353
|
+
inset: 0;
|
|
354
|
+
border-radius: 50%;
|
|
355
|
+
background: inherit;
|
|
356
|
+
animation: pulse-ring 2s ${unsafeCSS(easings.default)} infinite;
|
|
357
|
+
}
|
|
358
|
+
|
|
359
|
+
.status-dot-animated.operational::before {
|
|
360
|
+
background: ${colors.status.operational};
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
.status-dot-animated.degraded::before,
|
|
364
|
+
.status-dot-animated.partial_outage::before,
|
|
365
|
+
.status-dot-animated.major_outage::before {
|
|
366
|
+
animation: pulse-ring 1.5s ${unsafeCSS(easings.default)} infinite;
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
/* Hover lift effect */
|
|
370
|
+
.hover-lift {
|
|
371
|
+
transition: transform ${unsafeCSS(durations.normal)} ${unsafeCSS(easings.default)},
|
|
372
|
+
box-shadow ${unsafeCSS(durations.normal)} ${unsafeCSS(easings.default)};
|
|
373
|
+
}
|
|
374
|
+
|
|
375
|
+
.hover-lift:hover {
|
|
376
|
+
transform: translateY(-2px);
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
/* Icon animation */
|
|
380
|
+
.icon-spin {
|
|
381
|
+
animation: spin 1s linear infinite;
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
@keyframes spin {
|
|
385
|
+
from { transform: rotate(0deg); }
|
|
386
|
+
to { transform: rotate(360deg); }
|
|
387
|
+
}
|
|
388
|
+
|
|
389
|
+
/* Bounce animation for attention */
|
|
390
|
+
@keyframes bounce {
|
|
391
|
+
0%, 100% { transform: translateY(0); }
|
|
392
|
+
50% { transform: translateY(-4px); }
|
|
393
|
+
}
|
|
394
|
+
|
|
395
|
+
.bounce {
|
|
396
|
+
animation: bounce 1s ${unsafeCSS(easings.bounce)} infinite;
|
|
397
|
+
}
|
|
398
|
+
|
|
235
399
|
/* Container styles */
|
|
236
400
|
.container {
|
|
237
401
|
max-width: 1200px;
|