@uptime.link/statuspage 1.3.0 → 1.4.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.
@@ -50509,6 +50509,20 @@ var UplStatuspageIncidents = class extends (_a5 = DeesElement, _currentIncidents
50509
50509
  __privateAdd(this, _subscribedIncidentIds, __runInitializers(_init5, 28, this, [])), __runInitializers(_init5, 31, this);
50510
50510
  __privateAdd(this, _expandedIncidents, __runInitializers(_init5, 32, this, /* @__PURE__ */ new Set())), __runInitializers(_init5, 35, this);
50511
50511
  __privateAdd(this, _subscribedIncidents, __runInitializers(_init5, 36, this, /* @__PURE__ */ new Set())), __runInitializers(_init5, 39, this);
50512
+ __publicField(this, "statusIcons", {
50513
+ investigating: "lucide:Search",
50514
+ identified: "lucide:Target",
50515
+ monitoring: "lucide:Eye",
50516
+ resolved: "lucide:CheckCircle",
50517
+ postmortem: "lucide:FileText"
50518
+ });
50519
+ __publicField(this, "statusLabels", {
50520
+ investigating: "Investigating",
50521
+ identified: "Identified",
50522
+ monitoring: "Monitoring",
50523
+ resolved: "Resolved",
50524
+ postmortem: "Postmortem"
50525
+ });
50512
50526
  }
50513
50527
  async connectedCallback() {
50514
50528
  await super.connectedCallback();
@@ -50531,13 +50545,13 @@ var UplStatuspageIncidents = class extends (_a5 = DeesElement, _currentIncidents
50531
50545
  ` : this.currentIncidents.length ? x`
50532
50546
  ${this.currentIncidents.map((incident) => this.renderIncident(incident, true))}
50533
50547
  ` : x`<div class="noIncidentBox">No incidents ongoing.</div>`}
50534
-
50548
+
50535
50549
  <uplinternal-miniheading>Past Incidents</uplinternal-miniheading>
50536
50550
  ${this.loading ? x`
50537
50551
  <div class="loading-skeleton"></div>
50538
50552
  <div class="loading-skeleton"></div>
50539
50553
  ` : this.pastIncidents.length ? this.pastIncidents.slice(0, 5).map((incident) => this.renderIncident(incident, false)) : x`<div class="noIncidentBox">No past incidents in the last ${this.daysToShow} days.</div>`}
50540
-
50554
+
50541
50555
  ${this.pastIncidents.length > 5 && !this.loading ? x`
50542
50556
  <div class="show-more">
50543
50557
  <button class="show-more-button" @click=${this.handleShowMore}>
@@ -50552,73 +50566,53 @@ var UplStatuspageIncidents = class extends (_a5 = DeesElement, _currentIncidents
50552
50566
  const latestUpdate = incident.updates[incident.updates.length - 1];
50553
50567
  const duration = incident.endTime ? this.formatDuration(incident.endTime - incident.startTime) : this.formatDuration(Date.now() - incident.startTime);
50554
50568
  const isActive = isCurrent && latestUpdate?.status !== "resolved";
50569
+ const isExpanded = this.expandedIncidents.has(incident.id);
50555
50570
  return x`
50556
- <div class="incident-card ${this.expandedIncidents.has(incident.id) ? "expanded" : ""} ${isActive ? "active-incident" : ""}">
50557
- <div class="incident-header ${incident.severity}" @click=${() => this.toggleIncident(incident.id)}>
50558
- <div>
50559
- <h3 class="incident-title">${incident.title}</h3>
50560
- <div class="incident-meta">
50561
- <span>Started: ${this.formatDate(incident.startTime)}</span>
50562
- <span>Duration: ${duration}</span>
50563
- ${incident.endTime ? x`
50564
- <span>Ended: ${this.formatDate(incident.endTime)}</span>
50565
- ` : ""}
50566
- </div>
50567
- ${!this.expandedIncidents.has(incident.id) ? x`
50568
- <div style="
50569
- margin-top: ${r(spacing.sm)};
50570
- font-size: 13px;
50571
- color: ${colors.text.secondary};
50572
- display: flex;
50573
- align-items: center;
50574
- gap: ${r(spacing.md)};
50575
- ">
50576
- ${incident.impact ? x`
50577
- <span style="
50578
- overflow: hidden;
50579
- text-overflow: ellipsis;
50580
- white-space: nowrap;
50581
- max-width: 500px;
50582
- ">${incident.impact}</span>
50583
- ` : ""}
50584
- <span style="
50585
- font-size: 12px;
50586
- color: ${cssManager.bdTheme("#9ca3af", "#71717a")};
50587
- ">
50588
- ${incident.updates.length} update${incident.updates.length !== 1 ? "s" : ""}
50589
- </span>
50590
- </div>
50591
- ` : ""}
50592
- </div>
50593
- <div style="display: flex; align-items: center; gap: ${r(spacing.md)};">
50594
- <div class="incident-status ${latestUpdate.status}">
50595
- ${this.getStatusIcon(latestUpdate.status)}
50596
- ${latestUpdate.status.replace(/_/g, " ")}
50571
+ <div class="incident-card ${isExpanded ? "expanded" : ""} ${isActive ? "active-incident" : ""}">
50572
+ <div class="incident-header" @click=${() => this.toggleIncident(incident.id)}>
50573
+ <div class="incident-severity ${incident.severity}"></div>
50574
+
50575
+ <div class="incident-main">
50576
+ <div class="incident-title-row">
50577
+ <h3 class="incident-title">${incident.title}</h3>
50578
+ <span class="incident-status ${latestUpdate.status}">
50579
+ <dees-icon .icon=${this.statusIcons[latestUpdate.status]} .iconSize=${12}></dees-icon>
50580
+ ${this.statusLabels[latestUpdate.status] || latestUpdate.status}
50581
+ </span>
50597
50582
  </div>
50598
- <div class="expand-icon" style="
50599
- font-size: 10px;
50600
- color: ${cssManager.bdTheme("#6b7280", "#a1a1aa")};
50601
- transition: transform 0.2s ease;
50602
- display: flex;
50603
- align-items: center;
50604
- justify-content: center;
50605
- width: 24px;
50606
- height: 24px;
50607
- border-radius: 4px;
50608
- background: ${cssManager.bdTheme("#f3f4f6", "#27272a")};
50609
- ${this.expandedIncidents.has(incident.id) ? "transform: rotate(180deg);" : ""}
50610
- ">
50611
-
50583
+ <div class="incident-meta">
50584
+ <span class="incident-meta-item">
50585
+ <dees-icon .icon=${"lucide:Calendar"} .iconSize=${12}></dees-icon>
50586
+ ${this.formatDate(incident.startTime)}
50587
+ </span>
50588
+ <span class="incident-meta-item">
50589
+ <dees-icon .icon=${"lucide:Clock"} .iconSize=${12}></dees-icon>
50590
+ ${duration}
50591
+ </span>
50592
+ <span class="incident-meta-item">
50593
+ <dees-icon .icon=${"lucide:Server"} .iconSize=${12}></dees-icon>
50594
+ ${incident.affectedServices.length} service${incident.affectedServices.length !== 1 ? "s" : ""}
50595
+ </span>
50596
+ <span class="incident-meta-item">
50597
+ <dees-icon .icon=${"lucide:MessageSquare"} .iconSize=${12}></dees-icon>
50598
+ ${incident.updates.length} update${incident.updates.length !== 1 ? "s" : ""}
50599
+ </span>
50612
50600
  </div>
50613
50601
  </div>
50602
+
50603
+ <button class="incident-expand ${isExpanded ? "expanded" : ""}">
50604
+ <dees-icon .icon=${"lucide:ChevronDown"} .iconSize=${16}></dees-icon>
50605
+ </button>
50614
50606
  </div>
50615
-
50616
- ${this.expandedIncidents.has(incident.id) ? x`
50607
+
50608
+ ${isExpanded ? x`
50617
50609
  <div class="incident-body">
50618
- <div class="incident-impact">
50619
- <strong>Impact:</strong> ${incident.impact}
50620
- </div>
50621
-
50610
+ ${incident.impact ? x`
50611
+ <div class="incident-impact">
50612
+ <strong>Impact:</strong> ${incident.impact}
50613
+ </div>
50614
+ ` : ""}
50615
+
50622
50616
  ${incident.affectedServices.length > 0 ? x`
50623
50617
  <div class="affected-services">
50624
50618
  <div class="affected-services-title">Affected Services:</div>
@@ -50627,7 +50621,7 @@ var UplStatuspageIncidents = class extends (_a5 = DeesElement, _currentIncidents
50627
50621
  `)}
50628
50622
  </div>
50629
50623
  ` : ""}
50630
-
50624
+
50631
50625
  ${incident.updates.length > 0 ? x`
50632
50626
  <div class="incident-updates">
50633
50627
  <h4 class="updates-title">Updates</h4>
@@ -50636,21 +50630,21 @@ var UplStatuspageIncidents = class extends (_a5 = DeesElement, _currentIncidents
50636
50630
  </div>
50637
50631
  </div>
50638
50632
  ` : ""}
50639
-
50633
+
50640
50634
  ${incident.rootCause && isCurrent === false ? x`
50641
50635
  <div class="incident-impact" style="margin-top: 12px;">
50642
50636
  <strong>Root Cause:</strong> ${incident.rootCause}
50643
50637
  </div>
50644
50638
  ` : ""}
50645
-
50639
+
50646
50640
  ${incident.resolution && isCurrent === false ? x`
50647
50641
  <div class="incident-impact" style="margin-top: 12px;">
50648
50642
  <strong>Resolution:</strong> ${incident.resolution}
50649
50643
  </div>
50650
50644
  ` : ""}
50651
-
50645
+
50652
50646
  <div class="incident-actions">
50653
- <button
50647
+ <button
50654
50648
  class="subscribe-button ${this.isSubscribedToIncident(incident.id) ? "subscribed" : ""}"
50655
50649
  @click=${(e10) => {
50656
50650
  e10.stopPropagation();
@@ -50658,15 +50652,10 @@ var UplStatuspageIncidents = class extends (_a5 = DeesElement, _currentIncidents
50658
50652
  }}
50659
50653
  >
50660
50654
  ${this.isSubscribedToIncident(incident.id) ? x`
50661
- <svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
50662
- <path d="M11.6667 3.5L5.25 9.91667L2.33334 7" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
50663
- </svg>
50655
+ <dees-icon .icon=${"lucide:Check"} .iconSize=${14}></dees-icon>
50664
50656
  Subscribed to updates
50665
50657
  ` : x`
50666
- <svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
50667
- <path d="M10.5 5.25V8.75C10.5 9.34674 10.2629 9.91903 9.84099 10.341C9.41903 10.7629 8.84674 11 8.25 11L3.75 11C3.15326 11 2.58097 10.7629 2.15901 10.341C1.73705 9.91903 1.5 9.34674 1.5 8.75V4.25C1.5 3.65326 1.73705 3.08097 2.15901 2.65901C2.58097 2.23705 3.15326 2 3.75 2H7.25" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
50668
- <path d="M9 1.5H12.5M12.5 1.5V5M12.5 1.5L6 8" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
50669
- </svg>
50658
+ <dees-icon .icon=${"lucide:Bell"} .iconSize=${14}></dees-icon>
50670
50659
  Subscribe to updates
50671
50660
  `}
50672
50661
  </button>
@@ -50692,25 +50681,13 @@ var UplStatuspageIncidents = class extends (_a5 = DeesElement, _currentIncidents
50692
50681
  <div class="update-message">${update.message}</div>
50693
50682
  ${update.author ? x`
50694
50683
  <div class="update-author">
50695
- <svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
50696
- <path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"></path>
50697
- <circle cx="12" cy="7" r="4"></circle>
50698
- </svg>
50684
+ <dees-icon .icon=${"lucide:User"} .iconSize=${12}></dees-icon>
50699
50685
  ${update.author}
50700
50686
  </div>
50701
50687
  ` : ""}
50702
50688
  </div>
50703
50689
  `;
50704
50690
  }
50705
- getStatusIcon(status) {
50706
- return x`<span class="status-dot" style="
50707
- display: inline-block;
50708
- width: 6px;
50709
- height: 6px;
50710
- border-radius: 50%;
50711
- background: ${status === "resolved" ? colors.status.operational : status === "monitoring" ? colors.status.maintenance : status === "identified" ? colors.status.degraded : colors.status.partial};
50712
- "></span>`;
50713
- }
50714
50691
  formatDate(timestamp2) {
50715
50692
  const date = new Date(timestamp2);
50716
50693
  const now2 = Date.now();
@@ -50911,112 +50888,151 @@ __publicField(UplStatuspageIncidents, "styles", [
50911
50888
  }
50912
50889
  }
50913
50890
 
50891
+ /* New header layout matching admin catalog */
50914
50892
  .incident-header {
50915
- padding: ${r(spacing.lg)} ${r(spacing.xl)};
50916
- border-left: 4px solid;
50917
50893
  display: flex;
50918
- align-items: start;
50919
- justify-content: space-between;
50920
- gap: ${r(spacing.md)};
50894
+ align-items: flex-start;
50895
+ gap: 16px;
50896
+ padding: 16px;
50921
50897
  cursor: pointer;
50922
50898
  transition: background-color ${r(durations.fast)} ${r(easings.default)};
50923
- position: relative;
50924
50899
  }
50925
50900
 
50926
50901
  .incident-header:hover {
50927
50902
  background: ${cssManager.bdTheme("rgba(0, 0, 0, 0.02)", "rgba(255, 255, 255, 0.02)")};
50928
50903
  }
50929
50904
 
50930
- .incident-header.critical {
50931
- border-left-color: ${colors.status.major};
50905
+ /* Internal severity bar (replacing border-left) */
50906
+ .incident-severity {
50907
+ width: 4px;
50908
+ align-self: stretch;
50909
+ border-radius: 2px;
50910
+ flex-shrink: 0;
50932
50911
  }
50933
50912
 
50934
- .incident-header.major {
50935
- border-left-color: ${colors.status.partial};
50936
- }
50913
+ .incident-severity.critical { background: ${colors.status.major}; }
50914
+ .incident-severity.major { background: ${colors.status.partial}; }
50915
+ .incident-severity.minor { background: ${colors.status.degraded}; }
50916
+ .incident-severity.maintenance { background: ${colors.status.maintenance}; }
50937
50917
 
50938
- .incident-header.minor {
50939
- border-left-color: ${colors.status.degraded};
50918
+ .incident-main {
50919
+ flex: 1;
50920
+ min-width: 0;
50940
50921
  }
50941
50922
 
50942
- .incident-header.maintenance {
50943
- border-left-color: ${colors.status.maintenance};
50923
+ .incident-title-row {
50924
+ display: flex;
50925
+ align-items: center;
50926
+ gap: 8px;
50927
+ margin-bottom: 6px;
50928
+ flex-wrap: wrap;
50944
50929
  }
50945
50930
 
50946
50931
  .incident-title {
50947
- font-size: 17px;
50932
+ font-size: 15px;
50948
50933
  font-weight: 600;
50949
50934
  margin: 0;
50950
- line-height: 1.4;
50951
- letter-spacing: -0.01em;
50952
- }
50953
-
50954
- .incident-meta {
50955
- display: flex;
50956
- gap: ${r(spacing.lg)};
50957
- margin-top: ${r(spacing.sm)};
50958
- font-size: 13px;
50959
- color: ${colors.text.secondary};
50960
- flex-wrap: wrap;
50961
- }
50962
-
50963
- .incident-meta span {
50964
- display: flex;
50965
- align-items: center;
50966
- gap: 4px;
50935
+ color: ${colors.text.primary};
50967
50936
  }
50968
50937
 
50938
+ /* Status badge inline with title */
50969
50939
  .incident-status {
50970
50940
  display: inline-flex;
50971
50941
  align-items: center;
50972
50942
  gap: 6px;
50973
- padding: 6px 12px;
50974
- border-radius: ${r(borderRadius.full)};
50943
+ padding: 4px 10px;
50975
50944
  font-size: 11px;
50976
- font-weight: 600;
50945
+ font-weight: 500;
50946
+ border-radius: 9999px;
50977
50947
  text-transform: uppercase;
50978
- letter-spacing: 0.04em;
50979
50948
  flex-shrink: 0;
50980
- transition: all ${r(durations.fast)} ${r(easings.default)};
50949
+ }
50950
+
50951
+ .incident-status dees-icon {
50952
+ --icon-size: 12px;
50981
50953
  }
50982
50954
 
50983
50955
  .incident-status.investigating {
50984
- background: ${cssManager.bdTheme("#fef3c7", "#78350f")};
50985
- color: ${cssManager.bdTheme("#92400e", "#fbbf24")};
50956
+ background: ${cssManager.bdTheme("rgba(249, 115, 22, 0.1)", "rgba(249, 115, 22, 0.2)")};
50957
+ color: ${cssManager.bdTheme("#ea580c", "#fb923c")};
50958
+ --icon-color: ${cssManager.bdTheme("#ea580c", "#fb923c")};
50986
50959
  }
50987
50960
 
50988
50961
  .incident-status.identified {
50989
- background: ${cssManager.bdTheme("#e9d5ff", "#581c87")};
50990
- color: ${cssManager.bdTheme("#6b21a8", "#d8b4fe")};
50962
+ background: ${cssManager.bdTheme("rgba(234, 179, 8, 0.1)", "rgba(234, 179, 8, 0.2)")};
50963
+ color: ${cssManager.bdTheme("#ca8a04", "#facc15")};
50964
+ --icon-color: ${cssManager.bdTheme("#ca8a04", "#facc15")};
50991
50965
  }
50992
50966
 
50993
50967
  .incident-status.monitoring {
50994
- background: ${cssManager.bdTheme("#dbeafe", "#1e3a8a")};
50995
- color: ${cssManager.bdTheme("#1e40af", "#93c5fd")};
50968
+ background: ${cssManager.bdTheme("rgba(59, 130, 246, 0.1)", "rgba(59, 130, 246, 0.2)")};
50969
+ color: ${cssManager.bdTheme("#2563eb", "#60a5fa")};
50970
+ --icon-color: ${cssManager.bdTheme("#2563eb", "#60a5fa")};
50996
50971
  }
50997
50972
 
50998
50973
  .incident-status.resolved {
50999
- background: ${cssManager.bdTheme("#d1fae5", "#064e3b")};
51000
- color: ${cssManager.bdTheme("#047857", "#6ee7b7")};
50974
+ background: ${cssManager.bdTheme("rgba(34, 197, 94, 0.1)", "rgba(34, 197, 94, 0.2)")};
50975
+ color: ${cssManager.bdTheme("#16a34a", "#4ade80")};
50976
+ --icon-color: ${cssManager.bdTheme("#16a34a", "#4ade80")};
51001
50977
  }
51002
50978
 
51003
50979
  .incident-status.postmortem {
51004
- background: ${cssManager.bdTheme("#e5e7eb", "#374151")};
51005
- color: ${cssManager.bdTheme("#4b5563", "#d1d5db")};
50980
+ background: ${cssManager.bdTheme("rgba(168, 85, 247, 0.1)", "rgba(168, 85, 247, 0.2)")};
50981
+ color: ${cssManager.bdTheme("#9333ea", "#c084fc")};
50982
+ --icon-color: ${cssManager.bdTheme("#9333ea", "#c084fc")};
51006
50983
  }
51007
50984
 
51008
- /* Pulse for investigating status */
51009
- .incident-status.investigating .status-dot {
51010
- animation: status-pulse 1.5s ease-in-out infinite;
50985
+ .incident-meta {
50986
+ display: flex;
50987
+ align-items: center;
50988
+ gap: 16px;
50989
+ font-size: 12px;
50990
+ color: ${colors.text.secondary};
50991
+ flex-wrap: wrap;
51011
50992
  }
51012
50993
 
51013
- @keyframes status-pulse {
51014
- 0%, 100% { opacity: 1; transform: scale(1); }
51015
- 50% { opacity: 0.6; transform: scale(1.2); }
50994
+ .incident-meta-item {
50995
+ display: flex;
50996
+ align-items: center;
50997
+ gap: 6px;
50998
+ }
50999
+
51000
+ .incident-meta-item dees-icon {
51001
+ --icon-size: 12px;
51002
+ --icon-color: ${colors.text.muted};
51003
+ }
51004
+
51005
+ .incident-expand {
51006
+ width: 28px;
51007
+ height: 28px;
51008
+ display: flex;
51009
+ align-items: center;
51010
+ justify-content: center;
51011
+ background: transparent;
51012
+ border: none;
51013
+ border-radius: 4px;
51014
+ cursor: pointer;
51015
+ color: ${colors.text.muted};
51016
+ transition: all ${r(durations.fast)} ${r(easings.default)};
51017
+ flex-shrink: 0;
51018
+ }
51019
+
51020
+ .incident-expand:hover {
51021
+ background: ${colors.background.muted};
51022
+ color: ${colors.text.primary};
51023
+ }
51024
+
51025
+ .incident-expand dees-icon {
51026
+ --icon-size: 16px;
51027
+ transition: transform ${r(durations.fast)} ${r(easings.default)};
51028
+ }
51029
+
51030
+ .incident-expand.expanded dees-icon {
51031
+ transform: rotate(180deg);
51016
51032
  }
51017
51033
 
51018
51034
  .incident-body {
51019
- padding: 0 ${r(spacing.xl)} ${r(spacing.xl)} ${r(spacing.xl)};
51035
+ padding: 0 16px 16px 36px;
51020
51036
  animation: slideDown 0.3s ${r(easings.default)};
51021
51037
  }
51022
51038
 
@@ -51091,22 +51107,6 @@ __publicField(UplStatuspageIncidents, "styles", [
51091
51107
  padding-left: 24px;
51092
51108
  }
51093
51109
 
51094
- /* Vertical connector line */
51095
- .timeline::before {
51096
- content: '';
51097
- position: absolute;
51098
- left: 7px;
51099
- top: 10px;
51100
- bottom: calc(100% - 10px);
51101
- height: auto;
51102
- width: 2px;
51103
- background: ${cssManager.bdTheme(
51104
- "linear-gradient(to bottom, #e5e7eb 0%, #d1d5db 50%, #e5e7eb 100%)",
51105
- "linear-gradient(to bottom, #27272a 0%, #3f3f46 50%, #27272a 100%)"
51106
- )};
51107
- border-radius: 1px;
51108
- }
51109
-
51110
51110
  .update-item {
51111
51111
  position: relative;
51112
51112
  padding-left: ${r(spacing.lg)};
@@ -51118,7 +51118,16 @@ __publicField(UplStatuspageIncidents, "styles", [
51118
51118
  padding-bottom: 0;
51119
51119
  }
51120
51120
 
51121
- /* Timeline dot */
51121
+ .update-item:not(:last-child)::after {
51122
+ content: '';
51123
+ position: absolute;
51124
+ left: -15px;
51125
+ top: 18px;
51126
+ bottom: 0;
51127
+ width: 2px;
51128
+ background: ${colors.border.default};
51129
+ }
51130
+
51122
51131
  .update-item::before {
51123
51132
  content: '';
51124
51133
  position: absolute;
@@ -51272,54 +51281,39 @@ __publicField(UplStatuspageIncidents, "styles", [
51272
51281
  background: ${cssManager.bdTheme("#dcfce7", "#065f46")};
51273
51282
  }
51274
51283
 
51275
- .collapsed-hint {
51276
- font-size: 12px;
51277
- color: ${colors.text.secondary};
51278
- text-align: center;
51279
- margin-top: ${r(spacing.md)};
51280
- opacity: 0.8;
51281
- }
51282
-
51283
- /* Expand icon animation */
51284
- .expand-icon {
51285
- transition: transform ${r(durations.normal)} ${r(easings.default)};
51286
- }
51287
-
51288
- .expand-icon.rotated {
51289
- transform: rotate(180deg);
51290
- }
51291
-
51292
51284
  @media (max-width: 640px) {
51293
51285
  .container {
51294
51286
  padding: 0 ${r(spacing.md)} ${r(spacing.md)} ${r(spacing.md)};
51295
51287
  }
51296
51288
 
51297
51289
  .incident-header {
51298
- padding: ${r(spacing.md)};
51290
+ padding: 12px;
51299
51291
  }
51300
51292
 
51301
51293
  .incident-body {
51302
- padding: 0 ${r(spacing.md)} ${r(spacing.md)} ${r(spacing.md)};
51294
+ padding: 0 12px 12px 24px;
51303
51295
  }
51304
51296
 
51305
51297
  .incident-meta {
51306
51298
  flex-direction: column;
51307
- gap: ${r(spacing.xs)};
51299
+ align-items: flex-start;
51300
+ gap: 8px;
51308
51301
  }
51309
51302
 
51310
51303
  .timeline {
51311
51304
  padding-left: 20px;
51312
51305
  }
51313
51306
 
51314
- .timeline::before {
51315
- left: 4px;
51316
- }
51317
-
51318
51307
  .update-item::before {
51319
51308
  left: -18px;
51320
51309
  width: 10px;
51321
51310
  height: 10px;
51322
51311
  }
51312
+
51313
+ .update-item:not(:last-child)::after {
51314
+ left: -12px;
51315
+ top: 16px;
51316
+ }
51323
51317
  }
51324
51318
  `
51325
51319
  ]);