Various CSS work
This commit is contained in:
parent
ef174af0e1
commit
15579acba8
52 changed files with 8001 additions and 944 deletions
776
PlanTempus.Application/reports/css-analysis-report.html
Normal file
776
PlanTempus.Application/reports/css-analysis-report.html
Normal file
|
|
@ -0,0 +1,776 @@
|
|||
|
||||
<!DOCTYPE html>
|
||||
<html lang="da">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>CSS Analysis Report - PlanTempus</title>
|
||||
<style>
|
||||
* { margin: 0; padding: 0; box-sizing: border-box; }
|
||||
body {
|
||||
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
||||
line-height: 1.6;
|
||||
color: #333;
|
||||
background: #f5f5f5;
|
||||
padding: 20px;
|
||||
}
|
||||
.container {
|
||||
max-width: 1200px;
|
||||
margin: 0 auto;
|
||||
background: white;
|
||||
padding: 40px;
|
||||
border-radius: 8px;
|
||||
box-shadow: 0 2px 8px rgba(0,0,0,0.1);
|
||||
}
|
||||
h1 {
|
||||
color: #14b8a6;
|
||||
margin-bottom: 10px;
|
||||
font-size: 2.5em;
|
||||
}
|
||||
.subtitle {
|
||||
color: #666;
|
||||
margin-bottom: 30px;
|
||||
font-size: 1.1em;
|
||||
}
|
||||
.summary {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
|
||||
gap: 20px;
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
.stat-card {
|
||||
background: linear-gradient(135deg, #14b8a6 0%, #0d9488 100%);
|
||||
color: white;
|
||||
padding: 20px;
|
||||
border-radius: 8px;
|
||||
box-shadow: 0 4px 6px rgba(0,0,0,0.1);
|
||||
}
|
||||
.stat-card.warning {
|
||||
background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
|
||||
}
|
||||
.stat-card.info {
|
||||
background: linear-gradient(135deg, #6366f1 0%, #4f46e5 100%);
|
||||
}
|
||||
.stat-card.success {
|
||||
background: linear-gradient(135deg, #22c55e 0%, #16a34a 100%);
|
||||
}
|
||||
.stat-value {
|
||||
font-size: 2.5em;
|
||||
font-weight: bold;
|
||||
margin: 10px 0;
|
||||
}
|
||||
.stat-label {
|
||||
font-size: 0.9em;
|
||||
opacity: 0.9;
|
||||
}
|
||||
section {
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
h2 {
|
||||
color: #333;
|
||||
margin-bottom: 20px;
|
||||
padding-bottom: 10px;
|
||||
border-bottom: 2px solid #14b8a6;
|
||||
}
|
||||
table {
|
||||
width: 100%;
|
||||
border-collapse: collapse;
|
||||
margin-top: 20px;
|
||||
}
|
||||
th, td {
|
||||
padding: 12px;
|
||||
text-align: left;
|
||||
border-bottom: 1px solid #ddd;
|
||||
}
|
||||
th {
|
||||
background: #f8f9fa;
|
||||
font-weight: 600;
|
||||
color: #555;
|
||||
}
|
||||
tr:hover {
|
||||
background: #f8f9fa;
|
||||
}
|
||||
.file-detail {
|
||||
background: #f8f9fa;
|
||||
padding: 15px;
|
||||
border-radius: 4px;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
.rejected-list {
|
||||
max-height: 200px;
|
||||
overflow-y: auto;
|
||||
background: white;
|
||||
padding: 10px;
|
||||
border-radius: 4px;
|
||||
margin-top: 10px;
|
||||
font-family: 'Courier New', monospace;
|
||||
font-size: 0.9em;
|
||||
}
|
||||
.badge {
|
||||
display: inline-block;
|
||||
padding: 4px 8px;
|
||||
border-radius: 4px;
|
||||
font-size: 0.85em;
|
||||
font-weight: 600;
|
||||
}
|
||||
.badge-danger { background: #ffebee; color: #c62828; }
|
||||
.badge-warning { background: #fff3e0; color: #ef6c00; }
|
||||
.badge-success { background: #e8f5e9; color: #2e7d32; }
|
||||
.timestamp {
|
||||
color: #999;
|
||||
font-size: 0.9em;
|
||||
margin-top: 30px;
|
||||
text-align: center;
|
||||
}
|
||||
.color-palette {
|
||||
display: flex;
|
||||
gap: 5px;
|
||||
flex-wrap: wrap;
|
||||
margin-top: 10px;
|
||||
}
|
||||
.color-swatch {
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
border-radius: 4px;
|
||||
border: 1px solid #ddd;
|
||||
}
|
||||
details {
|
||||
margin-top: 10px;
|
||||
}
|
||||
summary {
|
||||
cursor: pointer;
|
||||
color: #14b8a6;
|
||||
font-weight: 500;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="container">
|
||||
<h1>📊 CSS Analysis Report</h1>
|
||||
<p class="subtitle">PlanTempus - Production CSS Analysis</p>
|
||||
|
||||
<div class="summary">
|
||||
<div class="stat-card">
|
||||
<div class="stat-label">Total CSS Size</div>
|
||||
<div class="stat-value">132.81 KB</div>
|
||||
</div>
|
||||
<div class="stat-card info">
|
||||
<div class="stat-label">CSS Files</div>
|
||||
<div class="stat-value">21</div>
|
||||
</div>
|
||||
<div class="stat-card info">
|
||||
<div class="stat-label">Total Lines</div>
|
||||
<div class="stat-value">6.033</div>
|
||||
</div>
|
||||
<div class="stat-card warning">
|
||||
<div class="stat-label">Unused CSS Rules</div>
|
||||
<div class="stat-value">61</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<section>
|
||||
<h2>📈 CSS Statistics by File</h2>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>File</th>
|
||||
<th>Size</th>
|
||||
<th>Lines</th>
|
||||
<th>Rules</th>
|
||||
<th>Selectors</th>
|
||||
<th>Properties</th>
|
||||
<th>CSS Vars</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<tr>
|
||||
<td><strong>auth.css</strong></td>
|
||||
<td>23.66 KB</td>
|
||||
<td>1144</td>
|
||||
<td>169</td>
|
||||
<td>173</td>
|
||||
<td>571</td>
|
||||
<td>46</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>cash.css</strong></td>
|
||||
<td>19.38 KB</td>
|
||||
<td>898</td>
|
||||
<td>132</td>
|
||||
<td>135</td>
|
||||
<td>415</td>
|
||||
<td>42</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>employees.css</strong></td>
|
||||
<td>15.55 KB</td>
|
||||
<td>722</td>
|
||||
<td>105</td>
|
||||
<td>108</td>
|
||||
<td>345</td>
|
||||
<td>37</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>design-tokens.css</strong></td>
|
||||
<td>9.02 KB</td>
|
||||
<td>318</td>
|
||||
<td>35</td>
|
||||
<td>36</td>
|
||||
<td>192</td>
|
||||
<td>25</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>account.css</strong></td>
|
||||
<td>8.83 KB</td>
|
||||
<td>402</td>
|
||||
<td>60</td>
|
||||
<td>63</td>
|
||||
<td>173</td>
|
||||
<td>31</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>drawers.css</strong></td>
|
||||
<td>6.36 KB</td>
|
||||
<td>297</td>
|
||||
<td>38</td>
|
||||
<td>38</td>
|
||||
<td>159</td>
|
||||
<td>32</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>page.css</strong></td>
|
||||
<td>6.00 KB</td>
|
||||
<td>276</td>
|
||||
<td>38</td>
|
||||
<td>40</td>
|
||||
<td>117</td>
|
||||
<td>35</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>sidebar.css</strong></td>
|
||||
<td>5.72 KB</td>
|
||||
<td>247</td>
|
||||
<td>30</td>
|
||||
<td>30</td>
|
||||
<td>119</td>
|
||||
<td>24</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>waitlist.css</strong></td>
|
||||
<td>5.55 KB</td>
|
||||
<td>251</td>
|
||||
<td>30</td>
|
||||
<td>30</td>
|
||||
<td>131</td>
|
||||
<td>31</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>stats.css</strong></td>
|
||||
<td>5.18 KB</td>
|
||||
<td>232</td>
|
||||
<td>30</td>
|
||||
<td>32</td>
|
||||
<td>78</td>
|
||||
<td>27</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>bookings.css</strong></td>
|
||||
<td>4.27 KB</td>
|
||||
<td>176</td>
|
||||
<td>28</td>
|
||||
<td>28</td>
|
||||
<td>75</td>
|
||||
<td>27</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>topbar.css</strong></td>
|
||||
<td>3.79 KB</td>
|
||||
<td>181</td>
|
||||
<td>19</td>
|
||||
<td>19</td>
|
||||
<td>103</td>
|
||||
<td>20</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>controls.css</strong></td>
|
||||
<td>3.32 KB</td>
|
||||
<td>149</td>
|
||||
<td>19</td>
|
||||
<td>19</td>
|
||||
<td>79</td>
|
||||
<td>20</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>demo-banner.css</strong></td>
|
||||
<td>2.94 KB</td>
|
||||
<td>146</td>
|
||||
<td>19</td>
|
||||
<td>21</td>
|
||||
<td>66</td>
|
||||
<td>9</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>attentions.css</strong></td>
|
||||
<td>2.92 KB</td>
|
||||
<td>115</td>
|
||||
<td>15</td>
|
||||
<td>15</td>
|
||||
<td>45</td>
|
||||
<td>15</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>design-system.css</strong></td>
|
||||
<td>2.30 KB</td>
|
||||
<td>105</td>
|
||||
<td>20</td>
|
||||
<td>20</td>
|
||||
<td>37</td>
|
||||
<td>20</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>tabs.css</strong></td>
|
||||
<td>2.13 KB</td>
|
||||
<td>95</td>
|
||||
<td>11</td>
|
||||
<td>11</td>
|
||||
<td>42</td>
|
||||
<td>19</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>base.css</strong></td>
|
||||
<td>2.06 KB</td>
|
||||
<td>119</td>
|
||||
<td>15</td>
|
||||
<td>15</td>
|
||||
<td>47</td>
|
||||
<td>8</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>notifications.css</strong></td>
|
||||
<td>1.67 KB</td>
|
||||
<td>70</td>
|
||||
<td>8</td>
|
||||
<td>8</td>
|
||||
<td>27</td>
|
||||
<td>8</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>app-layout.css</strong></td>
|
||||
<td>1.28 KB</td>
|
||||
<td>51</td>
|
||||
<td>5</td>
|
||||
<td>5</td>
|
||||
<td>18</td>
|
||||
<td>6</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><strong>quick-stats.css</strong></td>
|
||||
<td>0.88 KB</td>
|
||||
<td>39</td>
|
||||
<td>4</td>
|
||||
<td>4</td>
|
||||
<td>15</td>
|
||||
<td>11</td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<h2>🗑️ Unused CSS by File</h2>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>design-tokens.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-warning">
|
||||
24 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 7917 | After purge: 7639
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<details>
|
||||
<summary>Show unused selectors</summary>
|
||||
<div class="rejected-list">
|
||||
.is-red<br>.is-pink<br>.is-magenta<br>.is-purple<br>.is-violet<br>.is-deep-purple<br>.is-indigo<br>.is-blue<br>.is-light-blue<br>.is-cyan<br>.is-teal<br>.is-green<br>.is-light-green<br>.is-lime<br>.is-yellow<br>.is-amber<br>.is-orange<br>.is-deep-orange<br>.status-confirmed<br>.status-pending<br>.status-inprogress<br>.status-error<br>.status-active<br>.status-inactive
|
||||
|
||||
</div>
|
||||
</details>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>design-system.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
11 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 2095 | After purge: 2056
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<details>
|
||||
<summary>Show unused selectors</summary>
|
||||
<div class="rejected-list">
|
||||
h2<br> h3<br> h4<br> h5<br> h6<br>h2<br>h3<br>h4<br>h5<br>h6<br>:focus-visible
|
||||
|
||||
</div>
|
||||
</details>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>bookings.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
6 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 3924 | After purge: 3756
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<details>
|
||||
<summary>Show unused selectors</summary>
|
||||
<div class="rejected-list">
|
||||
swp-booking-item.inprogress<br>swp-booking-indicator.green<br>swp-booking-status.confirmed<br>swp-booking-status.pending<br>swp-booking-status.inprogress<br>
|
||||
swp-booking-status.in-progress
|
||||
|
||||
</div>
|
||||
</details>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>attentions.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
5 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 2524 | After purge: 2359
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<details>
|
||||
<summary>Show unused selectors</summary>
|
||||
<div class="rejected-list">
|
||||
swp-attention-item.urgent<br>swp-attention-item.urgent:hover<br>swp-attention-item.info<br>swp-attention-item.urgent swp-attention-icon<br>swp-attention-item.info swp-attention-icon
|
||||
|
||||
</div>
|
||||
</details>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>base.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
4 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 1952 | After purge: 1930
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<details>
|
||||
<summary>Show unused selectors</summary>
|
||||
<div class="rejected-list">
|
||||
ul<br> ol<br>img<br>:focus-visible
|
||||
|
||||
</div>
|
||||
</details>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>auth.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
4 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 23887 | After purge: 23816
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<details>
|
||||
<summary>Show unused selectors</summary>
|
||||
<div class="rejected-list">
|
||||
swp-btn.social<br>swp-btn.social:hover<br>swp-btn.social img<br>swp-plan-badge.free
|
||||
|
||||
</div>
|
||||
</details>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>stats.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
3 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 5298 | After purge: 5229
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<details>
|
||||
<summary>Show unused selectors</summary>
|
||||
<div class="rejected-list">
|
||||
swp-stat-trend.up<br>swp-stat-trend.down<br>
|
||||
swp-stat-card.red swp-stat-value
|
||||
|
||||
</div>
|
||||
</details>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>account.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
2 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 8829 | After purge: 8777
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<details>
|
||||
<summary>Show unused selectors</summary>
|
||||
<div class="rejected-list">
|
||||
swp-invoice-status.pending<br>swp-invoice-status.overdue
|
||||
|
||||
</div>
|
||||
</details>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>drawers.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
1 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 6485 | After purge: 6467
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<details>
|
||||
<summary>Show unused selectors</summary>
|
||||
<div class="rejected-list">
|
||||
[data-drawer="xl"]
|
||||
|
||||
</div>
|
||||
</details>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>cash.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
1 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 19816 | After purge: 19778
|
||||
</span>
|
||||
</p>
|
||||
|
||||
<details>
|
||||
<summary>Show unused selectors</summary>
|
||||
<div class="rejected-list">
|
||||
swp-cash-stat.user swp-cash-stat-value
|
||||
|
||||
</div>
|
||||
</details>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>waitlist.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
0 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 5686 | After purge: 5686
|
||||
</span>
|
||||
</p>
|
||||
<p style="color: #2e7d32; margin-top: 10px;">✅ No unused CSS found!</p>
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>topbar.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
0 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 3885 | After purge: 3885
|
||||
</span>
|
||||
</p>
|
||||
<p style="color: #2e7d32; margin-top: 10px;">✅ No unused CSS found!</p>
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>tabs.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
0 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 2183 | After purge: 2183
|
||||
</span>
|
||||
</p>
|
||||
<p style="color: #2e7d32; margin-top: 10px;">✅ No unused CSS found!</p>
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>sidebar.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
0 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 5859 | After purge: 5859
|
||||
</span>
|
||||
</p>
|
||||
<p style="color: #2e7d32; margin-top: 10px;">✅ No unused CSS found!</p>
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>quick-stats.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
0 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 899 | After purge: 899
|
||||
</span>
|
||||
</p>
|
||||
<p style="color: #2e7d32; margin-top: 10px;">✅ No unused CSS found!</p>
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>page.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
0 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 6140 | After purge: 6140
|
||||
</span>
|
||||
</p>
|
||||
<p style="color: #2e7d32; margin-top: 10px;">✅ No unused CSS found!</p>
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>notifications.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
0 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 1712 | After purge: 1712
|
||||
</span>
|
||||
</p>
|
||||
<p style="color: #2e7d32; margin-top: 10px;">✅ No unused CSS found!</p>
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>employees.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
0 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 15923 | After purge: 15923
|
||||
</span>
|
||||
</p>
|
||||
<p style="color: #2e7d32; margin-top: 10px;">✅ No unused CSS found!</p>
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>demo-banner.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
0 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 3014 | After purge: 3014
|
||||
</span>
|
||||
</p>
|
||||
<p style="color: #2e7d32; margin-top: 10px;">✅ No unused CSS found!</p>
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>controls.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
0 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 3397 | After purge: 3397
|
||||
</span>
|
||||
</p>
|
||||
<p style="color: #2e7d32; margin-top: 10px;">✅ No unused CSS found!</p>
|
||||
</div>
|
||||
|
||||
<div class="file-detail">
|
||||
<h3>app-layout.css</h3>
|
||||
<p>
|
||||
<span class="badge badge-success">
|
||||
0 unused rules
|
||||
</span>
|
||||
<span style="margin-left: 10px; color: #666;">
|
||||
Original: 1306 | After purge: 1306
|
||||
</span>
|
||||
</p>
|
||||
<p style="color: #2e7d32; margin-top: 10px;">✅ No unused CSS found!</p>
|
||||
</div>
|
||||
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<h2>💡 Recommendations</h2>
|
||||
<ul style="line-height: 2;">
|
||||
<li>✅ CSS usage is relatively clean.</li>
|
||||
|
||||
<li>📦 Consider consolidating similar styles to reduce duplication.</li>
|
||||
<li>🎨 Review color usage - ensure all colors use CSS variables from design-tokens.css.</li>
|
||||
<li>📋 Reference COMPONENT-CATALOG.md when adding new components to avoid duplication.</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<p class="timestamp">Report generated: 12.1.2026, 21.57.11</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
437
PlanTempus.Application/reports/css-stats.json
Normal file
437
PlanTempus.Application/reports/css-stats.json
Normal file
|
|
@ -0,0 +1,437 @@
|
|||
{
|
||||
"account.css": {
|
||||
"lines": 402,
|
||||
"size": "8.83 KB",
|
||||
"sizeBytes": 9037,
|
||||
"rules": 60,
|
||||
"selectors": 63,
|
||||
"properties": 173,
|
||||
"uniqueColors": 13,
|
||||
"colors": [
|
||||
"var(--color-text)",
|
||||
"var(--color-teal)",
|
||||
"var(--color-background-alt)",
|
||||
"var(--color-text-secondary)",
|
||||
"var(--color-surface)",
|
||||
"var(--color-purple)",
|
||||
"var(--color-amber)",
|
||||
"rgba(0, 0, 0, 0.08)",
|
||||
"var(--color-border)",
|
||||
"var(--color-blue)"
|
||||
],
|
||||
"mediaQueries": 3,
|
||||
"cssVariables": 31
|
||||
},
|
||||
"app-layout.css": {
|
||||
"lines": 51,
|
||||
"size": "1.28 KB",
|
||||
"sizeBytes": 1306,
|
||||
"rules": 5,
|
||||
"selectors": 5,
|
||||
"properties": 18,
|
||||
"uniqueColors": 2,
|
||||
"colors": [
|
||||
"var(--color-background)",
|
||||
"rgba(0, 0, 0, 0.5)"
|
||||
],
|
||||
"mediaQueries": 0,
|
||||
"cssVariables": 6
|
||||
},
|
||||
"attentions.css": {
|
||||
"lines": 115,
|
||||
"size": "2.92 KB",
|
||||
"sizeBytes": 2992,
|
||||
"rules": 15,
|
||||
"selectors": 15,
|
||||
"properties": 45,
|
||||
"uniqueColors": 8,
|
||||
"colors": [
|
||||
"var(--color-background-alt)",
|
||||
"var(--color-border)",
|
||||
"var(--color-background-hover)",
|
||||
"var(--color-red)",
|
||||
"var(--color-amber)",
|
||||
"var(--color-blue)",
|
||||
"var(--color-text-secondary)",
|
||||
"var(--color-teal)"
|
||||
],
|
||||
"mediaQueries": 0,
|
||||
"cssVariables": 15
|
||||
},
|
||||
"auth.css": {
|
||||
"lines": 1144,
|
||||
"size": "23.66 KB",
|
||||
"sizeBytes": 24232,
|
||||
"rules": 169,
|
||||
"selectors": 173,
|
||||
"properties": 571,
|
||||
"uniqueColors": 17,
|
||||
"colors": [
|
||||
"var(--color-teal)",
|
||||
"#00695c",
|
||||
"rgba(255,255,255,0.1)",
|
||||
"rgba(255,255,255,0.08)",
|
||||
"var(--color-background)",
|
||||
"var(--color-text)",
|
||||
"var(--color-text-secondary)",
|
||||
"var(--color-surface)",
|
||||
"var(--color-border)",
|
||||
"var(--color-purple)"
|
||||
],
|
||||
"mediaQueries": 3,
|
||||
"cssVariables": 46
|
||||
},
|
||||
"base.css": {
|
||||
"lines": 119,
|
||||
"size": "2.06 KB",
|
||||
"sizeBytes": 2105,
|
||||
"rules": 15,
|
||||
"selectors": 15,
|
||||
"properties": 47,
|
||||
"uniqueColors": 4,
|
||||
"colors": [
|
||||
"var(--color-text)",
|
||||
"var(--color-background)",
|
||||
"var(--color-teal)",
|
||||
"var(--color-teal-light)"
|
||||
],
|
||||
"mediaQueries": 0,
|
||||
"cssVariables": 8
|
||||
},
|
||||
"bookings.css": {
|
||||
"lines": 176,
|
||||
"size": "4.27 KB",
|
||||
"sizeBytes": 4369,
|
||||
"rules": 28,
|
||||
"selectors": 28,
|
||||
"properties": 75,
|
||||
"uniqueColors": 10,
|
||||
"colors": [
|
||||
"var(--color-background-alt)",
|
||||
"var(--color-background-hover)",
|
||||
"var(--color-border)",
|
||||
"var(--color-teal)",
|
||||
"var(--color-text)",
|
||||
"var(--color-text-secondary)",
|
||||
"var(--color-blue)",
|
||||
"var(--color-purple)",
|
||||
"var(--color-amber)",
|
||||
"var(--color-green)"
|
||||
],
|
||||
"mediaQueries": 0,
|
||||
"cssVariables": 27
|
||||
},
|
||||
"cash.css": {
|
||||
"lines": 898,
|
||||
"size": "19.38 KB",
|
||||
"sizeBytes": 19850,
|
||||
"rules": 132,
|
||||
"selectors": 135,
|
||||
"properties": 415,
|
||||
"uniqueColors": 14,
|
||||
"colors": [
|
||||
"var(--color-surface)",
|
||||
"var(--color-border)",
|
||||
"var(--color-text-secondary)",
|
||||
"var(--color-teal)",
|
||||
"var(--color-background-alt)",
|
||||
"var(--color-text)",
|
||||
"var(--color-amber)",
|
||||
"var(--color-red)",
|
||||
"var(--color-blue)",
|
||||
"var(--color-background-hover)"
|
||||
],
|
||||
"mediaQueries": 3,
|
||||
"cssVariables": 42
|
||||
},
|
||||
"controls.css": {
|
||||
"lines": 149,
|
||||
"size": "3.32 KB",
|
||||
"sizeBytes": 3397,
|
||||
"rules": 19,
|
||||
"selectors": 19,
|
||||
"properties": 79,
|
||||
"uniqueColors": 8,
|
||||
"colors": [
|
||||
"var(--color-border)",
|
||||
"var(--color-text)",
|
||||
"var(--color-text-secondary)",
|
||||
"var(--color-background)",
|
||||
"var(--color-green)",
|
||||
"var(--color-red)",
|
||||
"var(--color-background-alt)",
|
||||
"var(--color-teal)"
|
||||
],
|
||||
"mediaQueries": 0,
|
||||
"cssVariables": 20
|
||||
},
|
||||
"demo-banner.css": {
|
||||
"lines": 146,
|
||||
"size": "2.94 KB",
|
||||
"sizeBytes": 3014,
|
||||
"rules": 19,
|
||||
"selectors": 21,
|
||||
"properties": 66,
|
||||
"uniqueColors": 7,
|
||||
"colors": [
|
||||
"var(--color-teal)",
|
||||
"#00796b",
|
||||
"rgba(255, 255, 255, 0.95)",
|
||||
"#00695c",
|
||||
"rgba(0, 0, 0, 0.15)",
|
||||
"rgba(255, 255, 255, 0.15)",
|
||||
"rgba(255, 255, 255, 0.25)"
|
||||
],
|
||||
"mediaQueries": 2,
|
||||
"cssVariables": 9
|
||||
},
|
||||
"design-system.css": {
|
||||
"lines": 105,
|
||||
"size": "2.30 KB",
|
||||
"sizeBytes": 2356,
|
||||
"rules": 20,
|
||||
"selectors": 20,
|
||||
"properties": 37,
|
||||
"uniqueColors": 7,
|
||||
"colors": [
|
||||
"var(--color-text)",
|
||||
"var(--color-background)",
|
||||
"var(--color-text-secondary)",
|
||||
"var(--color-teal)",
|
||||
"var(--color-primary)",
|
||||
"var(--color-border)",
|
||||
"var(--color-text-muted)"
|
||||
],
|
||||
"mediaQueries": 0,
|
||||
"cssVariables": 20
|
||||
},
|
||||
"design-tokens.css": {
|
||||
"lines": 318,
|
||||
"size": "9.02 KB",
|
||||
"sizeBytes": 9235,
|
||||
"rules": 35,
|
||||
"selectors": 36,
|
||||
"properties": 192,
|
||||
"uniqueColors": 54,
|
||||
"colors": [
|
||||
"#fff",
|
||||
"#f5f5f5",
|
||||
"#f0f0f0",
|
||||
"#fafafa",
|
||||
"#e0e0e0",
|
||||
"#333",
|
||||
"#666",
|
||||
"#999",
|
||||
"#1976d2",
|
||||
"#00897b"
|
||||
],
|
||||
"mediaQueries": 2,
|
||||
"cssVariables": 25
|
||||
},
|
||||
"drawers.css": {
|
||||
"lines": 297,
|
||||
"size": "6.36 KB",
|
||||
"sizeBytes": 6513,
|
||||
"rules": 38,
|
||||
"selectors": 38,
|
||||
"properties": 159,
|
||||
"uniqueColors": 9,
|
||||
"colors": [
|
||||
"var(--color-surface)",
|
||||
"var(--color-border)",
|
||||
"var(--color-text)",
|
||||
"var(--color-text-secondary)",
|
||||
"var(--color-background-alt)",
|
||||
"var(--color-background-hover)",
|
||||
"var(--color-teal)",
|
||||
"var(--color-background)",
|
||||
"var(--color-red)"
|
||||
],
|
||||
"mediaQueries": 0,
|
||||
"cssVariables": 32
|
||||
},
|
||||
"employees.css": {
|
||||
"lines": 722,
|
||||
"size": "15.55 KB",
|
||||
"sizeBytes": 15923,
|
||||
"rules": 105,
|
||||
"selectors": 108,
|
||||
"properties": 345,
|
||||
"uniqueColors": 15,
|
||||
"colors": [
|
||||
"var(--color-text-secondary)",
|
||||
"var(--color-text)",
|
||||
"var(--color-border)",
|
||||
"var(--color-teal)",
|
||||
"var(--color-surface)",
|
||||
"rgba(0, 0, 0, 0.08)",
|
||||
"var(--color-background-alt)",
|
||||
"var(--color-background-hover)",
|
||||
"var(--color-purple)",
|
||||
"var(--color-blue)"
|
||||
],
|
||||
"mediaQueries": 3,
|
||||
"cssVariables": 37
|
||||
},
|
||||
"notifications.css": {
|
||||
"lines": 70,
|
||||
"size": "1.67 KB",
|
||||
"sizeBytes": 1712,
|
||||
"rules": 8,
|
||||
"selectors": 8,
|
||||
"properties": 27,
|
||||
"uniqueColors": 4,
|
||||
"colors": [
|
||||
"var(--color-background-alt)",
|
||||
"var(--color-background-hover)",
|
||||
"var(--color-teal)",
|
||||
"var(--color-text-secondary)"
|
||||
],
|
||||
"mediaQueries": 0,
|
||||
"cssVariables": 8
|
||||
},
|
||||
"page.css": {
|
||||
"lines": 276,
|
||||
"size": "6.00 KB",
|
||||
"sizeBytes": 6141,
|
||||
"rules": 38,
|
||||
"selectors": 40,
|
||||
"properties": 117,
|
||||
"uniqueColors": 8,
|
||||
"colors": [
|
||||
"var(--color-surface)",
|
||||
"var(--color-border)",
|
||||
"var(--color-text)",
|
||||
"var(--color-text-secondary)",
|
||||
"var(--color-teal)",
|
||||
"var(--color-purple)",
|
||||
"var(--color-background)",
|
||||
"var(--color-background-hover)"
|
||||
],
|
||||
"mediaQueries": 2,
|
||||
"cssVariables": 35
|
||||
},
|
||||
"quick-stats.css": {
|
||||
"lines": 39,
|
||||
"size": "0.88 KB",
|
||||
"sizeBytes": 899,
|
||||
"rules": 4,
|
||||
"selectors": 4,
|
||||
"properties": 15,
|
||||
"uniqueColors": 3,
|
||||
"colors": [
|
||||
"var(--color-background-alt)",
|
||||
"var(--color-text)",
|
||||
"var(--color-text-secondary)"
|
||||
],
|
||||
"mediaQueries": 0,
|
||||
"cssVariables": 11
|
||||
},
|
||||
"sidebar.css": {
|
||||
"lines": 247,
|
||||
"size": "5.72 KB",
|
||||
"sizeBytes": 5859,
|
||||
"rules": 30,
|
||||
"selectors": 30,
|
||||
"properties": 119,
|
||||
"uniqueColors": 9,
|
||||
"colors": [
|
||||
"var(--color-surface)",
|
||||
"var(--color-border)",
|
||||
"var(--color-teal)",
|
||||
"var(--color-text)",
|
||||
"var(--color-text-secondary)",
|
||||
"var(--color-background-hover)",
|
||||
"var(--color-teal-light)",
|
||||
"var(--color-amber)",
|
||||
"var(--color-red)"
|
||||
],
|
||||
"mediaQueries": 0,
|
||||
"cssVariables": 24
|
||||
},
|
||||
"stats.css": {
|
||||
"lines": 232,
|
||||
"size": "5.18 KB",
|
||||
"sizeBytes": 5301,
|
||||
"rules": 30,
|
||||
"selectors": 32,
|
||||
"properties": 78,
|
||||
"uniqueColors": 14,
|
||||
"colors": [
|
||||
"var(--color-surface)",
|
||||
"var(--color-border)",
|
||||
"var(--color-text)",
|
||||
"var(--color-text-secondary)",
|
||||
"var(--color-text-muted)",
|
||||
"var(--color-green)",
|
||||
"var(--color-red)",
|
||||
"var(--color-teal)",
|
||||
"var(--color-amber)",
|
||||
"var(--color-purple)"
|
||||
],
|
||||
"mediaQueries": 2,
|
||||
"cssVariables": 27
|
||||
},
|
||||
"tabs.css": {
|
||||
"lines": 95,
|
||||
"size": "2.13 KB",
|
||||
"sizeBytes": 2183,
|
||||
"rules": 11,
|
||||
"selectors": 11,
|
||||
"properties": 42,
|
||||
"uniqueColors": 6,
|
||||
"colors": [
|
||||
"var(--color-surface)",
|
||||
"var(--color-border)",
|
||||
"var(--color-text-secondary)",
|
||||
"var(--color-text)",
|
||||
"var(--color-background-alt)",
|
||||
"var(--color-teal)"
|
||||
],
|
||||
"mediaQueries": 0,
|
||||
"cssVariables": 19
|
||||
},
|
||||
"topbar.css": {
|
||||
"lines": 181,
|
||||
"size": "3.79 KB",
|
||||
"sizeBytes": 3885,
|
||||
"rules": 19,
|
||||
"selectors": 19,
|
||||
"properties": 103,
|
||||
"uniqueColors": 8,
|
||||
"colors": [
|
||||
"var(--color-surface)",
|
||||
"var(--color-border)",
|
||||
"var(--color-background)",
|
||||
"var(--color-teal)",
|
||||
"var(--color-text-secondary)",
|
||||
"var(--color-text)",
|
||||
"var(--color-background-hover)",
|
||||
"var(--color-red)"
|
||||
],
|
||||
"mediaQueries": 0,
|
||||
"cssVariables": 20
|
||||
},
|
||||
"waitlist.css": {
|
||||
"lines": 251,
|
||||
"size": "5.55 KB",
|
||||
"sizeBytes": 5686,
|
||||
"rules": 30,
|
||||
"selectors": 30,
|
||||
"properties": 131,
|
||||
"uniqueColors": 9,
|
||||
"colors": [
|
||||
"var(--color-surface)",
|
||||
"var(--color-border)",
|
||||
"var(--color-teal)",
|
||||
"var(--color-text-secondary)",
|
||||
"var(--color-text)",
|
||||
"var(--color-background-alt)",
|
||||
"var(--color-background)",
|
||||
"var(--color-amber)",
|
||||
"var(--color-background-hover)"
|
||||
],
|
||||
"mediaQueries": 0,
|
||||
"cssVariables": 31
|
||||
}
|
||||
}
|
||||
209
PlanTempus.Application/reports/purgecss-report.json
Normal file
209
PlanTempus.Application/reports/purgecss-report.json
Normal file
|
|
@ -0,0 +1,209 @@
|
|||
{
|
||||
"summary": {
|
||||
"totalFiles": 21,
|
||||
"totalOriginalSize": 132731,
|
||||
"totalPurgedSize": 131811,
|
||||
"totalRejected": 61,
|
||||
"percentageRemoved": "0.05%",
|
||||
"potentialSavings": 920
|
||||
},
|
||||
"fileDetails": {
|
||||
"waitlist.css": {
|
||||
"originalSize": 5686,
|
||||
"purgedSize": 5686,
|
||||
"rejectedCount": 0,
|
||||
"rejected": []
|
||||
},
|
||||
"topbar.css": {
|
||||
"originalSize": 3885,
|
||||
"purgedSize": 3885,
|
||||
"rejectedCount": 0,
|
||||
"rejected": []
|
||||
},
|
||||
"tabs.css": {
|
||||
"originalSize": 2183,
|
||||
"purgedSize": 2183,
|
||||
"rejectedCount": 0,
|
||||
"rejected": []
|
||||
},
|
||||
"stats.css": {
|
||||
"originalSize": 5298,
|
||||
"purgedSize": 5229,
|
||||
"rejectedCount": 3,
|
||||
"rejected": [
|
||||
"swp-stat-trend.up",
|
||||
"swp-stat-trend.down",
|
||||
"\nswp-stat-card.red swp-stat-value"
|
||||
]
|
||||
},
|
||||
"sidebar.css": {
|
||||
"originalSize": 5859,
|
||||
"purgedSize": 5859,
|
||||
"rejectedCount": 0,
|
||||
"rejected": []
|
||||
},
|
||||
"quick-stats.css": {
|
||||
"originalSize": 899,
|
||||
"purgedSize": 899,
|
||||
"rejectedCount": 0,
|
||||
"rejected": []
|
||||
},
|
||||
"page.css": {
|
||||
"originalSize": 6140,
|
||||
"purgedSize": 6140,
|
||||
"rejectedCount": 0,
|
||||
"rejected": []
|
||||
},
|
||||
"notifications.css": {
|
||||
"originalSize": 1712,
|
||||
"purgedSize": 1712,
|
||||
"rejectedCount": 0,
|
||||
"rejected": []
|
||||
},
|
||||
"employees.css": {
|
||||
"originalSize": 15923,
|
||||
"purgedSize": 15923,
|
||||
"rejectedCount": 0,
|
||||
"rejected": []
|
||||
},
|
||||
"drawers.css": {
|
||||
"originalSize": 6485,
|
||||
"purgedSize": 6467,
|
||||
"rejectedCount": 1,
|
||||
"rejected": [
|
||||
"[data-drawer=\"xl\"]"
|
||||
]
|
||||
},
|
||||
"design-tokens.css": {
|
||||
"originalSize": 7917,
|
||||
"purgedSize": 7639,
|
||||
"rejectedCount": 24,
|
||||
"rejected": [
|
||||
".is-red",
|
||||
".is-pink",
|
||||
".is-magenta",
|
||||
".is-purple",
|
||||
".is-violet",
|
||||
".is-deep-purple",
|
||||
".is-indigo",
|
||||
".is-blue",
|
||||
".is-light-blue",
|
||||
".is-cyan",
|
||||
".is-teal",
|
||||
".is-green",
|
||||
".is-light-green",
|
||||
".is-lime",
|
||||
".is-yellow",
|
||||
".is-amber",
|
||||
".is-orange",
|
||||
".is-deep-orange",
|
||||
".status-confirmed",
|
||||
".status-pending",
|
||||
".status-inprogress",
|
||||
".status-error",
|
||||
".status-active",
|
||||
".status-inactive"
|
||||
]
|
||||
},
|
||||
"design-system.css": {
|
||||
"originalSize": 2095,
|
||||
"purgedSize": 2056,
|
||||
"rejectedCount": 11,
|
||||
"rejected": [
|
||||
" h2",
|
||||
" h3",
|
||||
" h4",
|
||||
" h5",
|
||||
" h6",
|
||||
"h2",
|
||||
"h3",
|
||||
"h4",
|
||||
"h5",
|
||||
"h6",
|
||||
":focus-visible"
|
||||
]
|
||||
},
|
||||
"demo-banner.css": {
|
||||
"originalSize": 3014,
|
||||
"purgedSize": 3014,
|
||||
"rejectedCount": 0,
|
||||
"rejected": []
|
||||
},
|
||||
"controls.css": {
|
||||
"originalSize": 3397,
|
||||
"purgedSize": 3397,
|
||||
"rejectedCount": 0,
|
||||
"rejected": []
|
||||
},
|
||||
"cash.css": {
|
||||
"originalSize": 19816,
|
||||
"purgedSize": 19778,
|
||||
"rejectedCount": 1,
|
||||
"rejected": [
|
||||
"swp-cash-stat.user swp-cash-stat-value"
|
||||
]
|
||||
},
|
||||
"bookings.css": {
|
||||
"originalSize": 3924,
|
||||
"purgedSize": 3756,
|
||||
"rejectedCount": 6,
|
||||
"rejected": [
|
||||
"swp-booking-item.inprogress",
|
||||
"swp-booking-indicator.green",
|
||||
"swp-booking-status.confirmed",
|
||||
"swp-booking-status.pending",
|
||||
"swp-booking-status.inprogress",
|
||||
"\nswp-booking-status.in-progress"
|
||||
]
|
||||
},
|
||||
"base.css": {
|
||||
"originalSize": 1952,
|
||||
"purgedSize": 1930,
|
||||
"rejectedCount": 4,
|
||||
"rejected": [
|
||||
"ul",
|
||||
" ol",
|
||||
"img",
|
||||
":focus-visible"
|
||||
]
|
||||
},
|
||||
"auth.css": {
|
||||
"originalSize": 23887,
|
||||
"purgedSize": 23816,
|
||||
"rejectedCount": 4,
|
||||
"rejected": [
|
||||
"swp-btn.social",
|
||||
"swp-btn.social:hover",
|
||||
"swp-btn.social img",
|
||||
"swp-plan-badge.free"
|
||||
]
|
||||
},
|
||||
"attentions.css": {
|
||||
"originalSize": 2524,
|
||||
"purgedSize": 2359,
|
||||
"rejectedCount": 5,
|
||||
"rejected": [
|
||||
"swp-attention-item.urgent",
|
||||
"swp-attention-item.urgent:hover",
|
||||
"swp-attention-item.info",
|
||||
"swp-attention-item.urgent swp-attention-icon",
|
||||
"swp-attention-item.info swp-attention-icon"
|
||||
]
|
||||
},
|
||||
"app-layout.css": {
|
||||
"originalSize": 1306,
|
||||
"purgedSize": 1306,
|
||||
"rejectedCount": 0,
|
||||
"rejected": []
|
||||
},
|
||||
"account.css": {
|
||||
"originalSize": 8829,
|
||||
"purgedSize": 8777,
|
||||
"rejectedCount": 2,
|
||||
"rejected": [
|
||||
"swp-invoice-status.pending",
|
||||
"swp-invoice-status.overdue"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue