@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.
Files changed (29) hide show
  1. package/dist_bundle/bundle.js +1814 -917
  2. package/dist_bundle/bundle.js.map +3 -3
  3. package/dist_ts_web/00_commitinfo_data.js +1 -1
  4. package/dist_ts_web/elements/upl-statuspage-assetsselector.js +119 -45
  5. package/dist_ts_web/elements/upl-statuspage-footer.js +81 -27
  6. package/dist_ts_web/elements/upl-statuspage-header.js +79 -19
  7. package/dist_ts_web/elements/upl-statuspage-incidents.js +242 -55
  8. package/dist_ts_web/elements/upl-statuspage-statsgrid.d.ts +3 -0
  9. package/dist_ts_web/elements/upl-statuspage-statsgrid.js +239 -52
  10. package/dist_ts_web/elements/upl-statuspage-statusbar.js +58 -7
  11. package/dist_ts_web/elements/upl-statuspage-statusdetails.js +36 -11
  12. package/dist_ts_web/elements/upl-statuspage-statusmonth.d.ts +2 -0
  13. package/dist_ts_web/elements/upl-statuspage-statusmonth.js +415 -230
  14. package/dist_ts_web/styles/shared.styles.d.ts +22 -0
  15. package/dist_ts_web/styles/shared.styles.js +146 -3
  16. package/dist_watch/bundle.js +1425 -446
  17. package/dist_watch/bundle.js.map +3 -3
  18. package/dist_watch/index.html +1 -0
  19. package/package.json +1 -1
  20. package/ts_web/00_commitinfo_data.ts +1 -1
  21. package/ts_web/elements/upl-statuspage-assetsselector.ts +118 -44
  22. package/ts_web/elements/upl-statuspage-footer.ts +80 -26
  23. package/ts_web/elements/upl-statuspage-header.ts +87 -18
  24. package/ts_web/elements/upl-statuspage-incidents.ts +248 -56
  25. package/ts_web/elements/upl-statuspage-statsgrid.ts +235 -55
  26. package/ts_web/elements/upl-statuspage-statusbar.ts +57 -6
  27. package/ts_web/elements/upl-statuspage-statusdetails.ts +35 -10
  28. package/ts_web/elements/upl-statuspage-statusmonth.ts +436 -252
  29. package/ts_web/styles/shared.styles.ts +166 -2
@@ -40,15 +40,21 @@ export class UplStatuspageHeader extends DeesElement {
40
40
  css`
41
41
  :host {
42
42
  display: block;
43
- background: ${sharedStyles.colors.background.primary};
43
+ background: ${cssManager.bdTheme(
44
+ 'rgba(255, 255, 255, 0.85)',
45
+ 'rgba(9, 9, 11, 0.85)'
46
+ )};
44
47
  font-family: ${unsafeCSS(sharedStyles.fonts.base)};
45
48
  color: ${sharedStyles.colors.text.primary};
46
- border-bottom: 1px solid ${sharedStyles.colors.border.default};
49
+ border-bottom: 1px solid ${cssManager.bdTheme(
50
+ 'rgba(0, 0, 0, 0.06)',
51
+ 'rgba(255, 255, 255, 0.06)'
52
+ )};
47
53
  position: sticky;
48
54
  top: 0;
49
55
  z-index: 40;
50
- backdrop-filter: blur(12px);
51
- -webkit-backdrop-filter: blur(12px);
56
+ backdrop-filter: blur(16px) saturate(180%);
57
+ -webkit-backdrop-filter: blur(16px) saturate(180%);
52
58
  }
53
59
 
54
60
  .header-container {
@@ -67,7 +73,7 @@ export class UplStatuspageHeader extends DeesElement {
67
73
  .header-left {
68
74
  display: flex;
69
75
  align-items: center;
70
- gap: ${unsafeCSS(sharedStyles.spacing.lg)};
76
+ gap: ${unsafeCSS(sharedStyles.spacing.md)};
71
77
  }
72
78
 
73
79
  .header-actions {
@@ -84,26 +90,47 @@ export class UplStatuspageHeader extends DeesElement {
84
90
  border-radius: ${unsafeCSS(sharedStyles.borderRadius.base)};
85
91
  cursor: pointer;
86
92
  user-select: none;
87
- transition: all ${unsafeCSS(sharedStyles.durations.normal)} ${unsafeCSS(sharedStyles.easings.default)};
93
+ transition: all ${unsafeCSS(sharedStyles.durations.fast)} ${unsafeCSS(sharedStyles.easings.default)};
88
94
  display: inline-flex;
89
95
  align-items: center;
90
96
  justify-content: center;
97
+ gap: 6px;
91
98
  height: 36px;
92
99
  background: transparent;
93
100
  border: 1px solid ${sharedStyles.colors.border.default};
94
101
  color: ${sharedStyles.colors.text.primary};
95
102
  letter-spacing: -0.01em;
103
+ position: relative;
104
+ overflow: hidden;
105
+ }
106
+
107
+ .actionButton::before {
108
+ content: '';
109
+ position: absolute;
110
+ inset: 0;
111
+ background: ${cssManager.bdTheme(
112
+ 'linear-gradient(135deg, rgba(0, 0, 0, 0.02) 0%, transparent 100%)',
113
+ 'linear-gradient(135deg, rgba(255, 255, 255, 0.03) 0%, transparent 100%)'
114
+ )};
115
+ opacity: 0;
116
+ transition: opacity ${unsafeCSS(sharedStyles.durations.fast)} ${unsafeCSS(sharedStyles.easings.default)};
96
117
  }
97
118
 
98
119
  .actionButton:hover {
99
120
  background: ${sharedStyles.colors.background.secondary};
100
121
  border-color: ${sharedStyles.colors.border.muted};
101
- box-shadow: ${unsafeCSS(sharedStyles.shadows.xs)};
122
+ box-shadow: ${unsafeCSS(sharedStyles.shadows.sm)};
123
+ transform: translateY(-1px);
124
+ }
125
+
126
+ .actionButton:hover::before {
127
+ opacity: 1;
102
128
  }
103
129
 
104
130
  .actionButton:active {
105
- transform: scale(0.98);
131
+ transform: translateY(0) scale(0.98);
106
132
  transition-duration: ${unsafeCSS(sharedStyles.durations.fast)};
133
+ box-shadow: none;
107
134
  }
108
135
 
109
136
  .actionButton:focus-visible {
@@ -111,22 +138,40 @@ export class UplStatuspageHeader extends DeesElement {
111
138
  outline-offset: 2px;
112
139
  }
113
140
 
141
+ /* Button icon styles */
142
+ .actionButton svg {
143
+ width: 14px;
144
+ height: 14px;
145
+ flex-shrink: 0;
146
+ transition: transform ${unsafeCSS(sharedStyles.durations.fast)} ${unsafeCSS(sharedStyles.easings.default)};
147
+ }
148
+
149
+ .actionButton:hover svg {
150
+ transform: scale(1.1);
151
+ }
152
+
114
153
  .site-title {
115
- font-size: 18px;
154
+ font-size: 17px;
116
155
  font-weight: 600;
117
156
  letter-spacing: -0.02em;
118
157
  color: ${sharedStyles.colors.text.primary};
158
+ transition: color ${unsafeCSS(sharedStyles.durations.fast)} ${unsafeCSS(sharedStyles.easings.default)};
159
+ }
160
+
161
+ .site-title:hover {
162
+ color: ${sharedStyles.colors.text.secondary};
119
163
  }
120
164
 
121
165
  .logo {
122
166
  height: 28px;
123
167
  width: auto;
124
168
  filter: ${cssManager.bdTheme('none', 'brightness(0) invert(1)')};
125
- transition: opacity ${unsafeCSS(sharedStyles.durations.normal)} ${unsafeCSS(sharedStyles.easings.default)};
169
+ transition: all ${unsafeCSS(sharedStyles.durations.normal)} ${unsafeCSS(sharedStyles.easings.default)};
126
170
  }
127
171
 
128
172
  .logo:hover {
129
173
  opacity: 0.8;
174
+ transform: scale(1.02);
130
175
  }
131
176
 
132
177
  .page-info {
@@ -154,11 +199,16 @@ export class UplStatuspageHeader extends DeesElement {
154
199
  background: ${sharedStyles.colors.accent.primary};
155
200
  color: ${sharedStyles.colors.background.primary};
156
201
  border-color: transparent;
202
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
203
+ }
204
+
205
+ .actionButton.primary::before {
206
+ background: linear-gradient(135deg, rgba(255, 255, 255, 0.15) 0%, transparent 100%);
157
207
  }
158
208
 
159
209
  .actionButton.primary:hover {
160
210
  background: ${sharedStyles.colors.accent.hover};
161
- box-shadow: ${unsafeCSS(sharedStyles.shadows.sm)};
211
+ box-shadow: ${unsafeCSS(sharedStyles.shadows.md)};
162
212
  }
163
213
 
164
214
  .loading-skeleton {
@@ -177,10 +227,10 @@ export class UplStatuspageHeader extends DeesElement {
177
227
  'linear-gradient(90deg, transparent 0%, rgba(0,0,0,0.04) 50%, transparent 100%)',
178
228
  'linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.04) 50%, transparent 100%)'
179
229
  )};
180
- animation: loading 1.5s ${unsafeCSS(sharedStyles.easings.default)} infinite;
230
+ animation: shimmer 1.5s ${unsafeCSS(sharedStyles.easings.default)} infinite;
181
231
  }
182
232
 
183
- @keyframes loading {
233
+ @keyframes shimmer {
184
234
  0% { transform: translateX(-100%); }
185
235
  100% { transform: translateX(200%); }
186
236
  }
@@ -195,11 +245,11 @@ export class UplStatuspageHeader extends DeesElement {
195
245
  }
196
246
 
197
247
  .header-left {
198
- gap: ${unsafeCSS(sharedStyles.spacing.md)};
248
+ gap: ${unsafeCSS(sharedStyles.spacing.sm)};
199
249
  }
200
250
 
201
251
  .site-title {
202
- font-size: 16px;
252
+ font-size: 15px;
203
253
  }
204
254
 
205
255
  .logo {
@@ -210,8 +260,18 @@ export class UplStatuspageHeader extends DeesElement {
210
260
  @media (max-width: 640px) {
211
261
  .actionButton {
212
262
  font-size: 12px;
213
- padding: 0 12px;
263
+ padding: 0 10px;
214
264
  height: 32px;
265
+ gap: 4px;
266
+ }
267
+
268
+ .actionButton svg {
269
+ width: 12px;
270
+ height: 12px;
271
+ }
272
+
273
+ .actionButton .button-text {
274
+ display: none;
215
275
  }
216
276
 
217
277
  .page-title {
@@ -249,12 +309,21 @@ export class UplStatuspageHeader extends DeesElement {
249
309
  <div class="header-actions">
250
310
  ${this.showReportButton ? html`
251
311
  <button class="actionButton" @click=${this.dispatchReportNewIncident}>
252
- Report Issue
312
+ <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">
313
+ <path d="M7.86 2h8.28L22 7.86v8.28L16.14 22H7.86L2 16.14V7.86L7.86 2z"></path>
314
+ <line x1="12" y1="8" x2="12" y2="12"></line>
315
+ <line x1="12" y1="16" x2="12.01" y2="16"></line>
316
+ </svg>
317
+ <span class="button-text">Report Issue</span>
253
318
  </button>
254
319
  ` : ''}
255
320
  ${this.showSubscribeButton ? html`
256
321
  <button class="actionButton primary" @click=${this.dispatchStatusSubscribe}>
257
- Subscribe
322
+ <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">
323
+ <path d="M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9"></path>
324
+ <path d="M10.3 21a1.94 1.94 0 0 0 3.4 0"></path>
325
+ </svg>
326
+ <span class="button-text">Subscribe</span>
258
327
  </button>
259
328
  ` : ''}
260
329
  </div>