Skip to content

Commit 2ac9936

Browse files
RSS1102rschristian
andauthored
feat: add expandable <detail open> section per row in change table (preactjs#134)
* feat: add collapsible detail via `<detail open>` per row in `change table` * test: update snapshot * chore: Revert lockfile changes --------- Co-authored-by: Ryan Christian <rchristian@ryanchristian.dev>
1 parent 6cb3a84 commit 2ac9936

2 files changed

Lines changed: 46 additions & 5 deletions

File tree

src/utils.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,12 @@ export function diffTable(files, { showTotal, collapseUnchanged, omitUnchanged,
218218
}
219219
}
220220

221-
let out = markdownTable(changedRows);
221+
let out = '';
222+
223+
if (changedRows.length !== 0) {
224+
const outChanged = markdownTable(changedRows);
225+
out = `<details open><summary>📦 <strong>View Changed</strong></summary>\n\n${outChanged}\n\n</details>`;
226+
}
222227

223228
if (unChangedRows.length !== 0) {
224229
const outUnchanged = markdownTable(unChangedRows);

tests/__snapshots__/utils.spec.js.snap

Lines changed: 40 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,16 @@ exports[`diffTable 1`] = `
55
66
**Total Size:** 21.3 kB
77
8+
<details open><summary>📦 <strong>View Changed</strong></summary>
9+
810
| Filename | Size | Change | |
911
| :--- | :---: | :---: | :---: |
1012
| \`four.js\` | 4.5 kB | +9 B (+0.2%) | |
1113
| \`one.js\` | 5 kB | +2.5 kB (+100%) | 🆘 |
1214
| \`two.js\` | 5 kB | -2.5 kB (-33.33%) | 🎉 |
1315
16+
</details>
17+
1418
<details><summary>ℹ️ <strong>View Unchanged</strong></summary>
1519
1620
| Filename | Size |
@@ -24,12 +28,16 @@ exports[`diffTable 1`] = `
2428
`;
2529

2630
exports[`diffTable 2`] = `
27-
"| Filename | Size | Change | |
31+
"<details open><summary>📦 <strong>View Changed</strong></summary>
32+
33+
| Filename | Size | Change | |
2834
| :--- | :---: | :---: | :---: |
2935
| \`four.js\` | 4.5 kB | +9 B (+0.2%) | |
3036
| \`one.js\` | 5 kB | +2.5 kB (+100%) | 🆘 |
3137
| \`two.js\` | 5 kB | -2.5 kB (-33.33%) | 🎉 |
3238
39+
</details>
40+
3341
<details><summary>ℹ️ <strong>View Unchanged</strong></summary>
3442
3543
| Filename | Size |
@@ -47,37 +55,49 @@ exports[`diffTable 3`] = `
4755
4856
**Total Size:** 21.3 kB
4957
58+
<details open><summary>📦 <strong>View Changed</strong></summary>
59+
5060
| Filename | Size | Change | |
5161
| :--- | :---: | :---: | :---: |
5262
| \`five.js\` | 6.5 kB | 0 B | |
5363
| \`four.js\` | 4.5 kB | +9 B (+0.2%) | |
5464
| \`one.js\` | 5 kB | +2.5 kB (+100%) | 🆘 |
5565
| \`three.js\` | 300 B | 0 B | |
56-
| \`two.js\` | 5 kB | -2.5 kB (-33.33%) | 🎉 |"
66+
| \`two.js\` | 5 kB | -2.5 kB (-33.33%) | 🎉 |
67+
68+
</details>"
5769
`;
5870

5971
exports[`diffTable 4`] = `
6072
"**Size Change:** +9 B (+0.04%)
6173
6274
**Total Size:** 21.3 kB
6375
76+
<details open><summary>📦 <strong>View Changed</strong></summary>
77+
6478
| Filename | Size | Change | |
6579
| :--- | :---: | :---: | :---: |
6680
| \`four.js\` | 4.5 kB | +9 B (+0.2%) | |
6781
| \`one.js\` | 5 kB | +2.5 kB (+100%) | 🆘 |
68-
| \`two.js\` | 5 kB | -2.5 kB (-33.33%) | 🎉 |"
82+
| \`two.js\` | 5 kB | -2.5 kB (-33.33%) | 🎉 |
83+
84+
</details>"
6985
`;
7086

7187
exports[`diffTable 5`] = `
7288
"**Size Change:** +9 B (+0.04%)
7389
7490
**Total Size:** 21.3 kB
7591
92+
<details open><summary>📦 <strong>View Changed</strong></summary>
93+
7694
| Filename | Size | Change | |
7795
| :--- | :---: | :---: | :---: |
7896
| \`one.js\` | 5 kB | +2.5 kB (+100%) | 🆘 |
7997
| \`two.js\` | 5 kB | -2.5 kB (-33.33%) | 🎉 |
8098
99+
</details>
100+
81101
<details><summary>ℹ️ <strong>View Unchanged</strong></summary>
82102
83103
| Filename | Size | Change |
@@ -118,22 +138,30 @@ exports[`diffTable 7`] = `
118138
119139
**Total Size:** 5 kB
120140
141+
<details open><summary>📦 <strong>View Changed</strong></summary>
142+
121143
| Filename | Size | Change | |
122144
| :--- | :---: | :---: | :---: |
123-
| \`one.js\` | 5 kB | +2.5 kB (+100%) | 🆘 |"
145+
| \`one.js\` | 5 kB | +2.5 kB (+100%) | 🆘 |
146+
147+
</details>"
124148
`;
125149

126150
exports[`diffTable 8`] = `
127151
"**Size Change:** +9 B (+0.04%)
128152
129153
**Total Size:** 21.3 kB
130154
155+
<details open><summary>📦 <strong>View Changed</strong></summary>
156+
131157
| Filename | Size | Change | |
132158
| :--- | :---: | :---: | :---: |
133159
| \`two.js\` | 5 kB | -2.5 kB (-33.33%) | 🎉 |
134160
| \`one.js\` | 5 kB | +2.5 kB (+100%) | 🆘 |
135161
| \`four.js\` | 4.5 kB | +9 B (+0.2%) | |
136162
163+
</details>
164+
137165
<details><summary>ℹ️ <strong>View Unchanged</strong></summary>
138166
139167
| Filename | Size |
@@ -151,12 +179,16 @@ exports[`diffTable 9`] = `
151179
152180
**Total Size:** 21.3 kB
153181
182+
<details open><summary>📦 <strong>View Changed</strong></summary>
183+
154184
| Filename | Size | Change | |
155185
| :--- | :---: | :---: | :---: |
156186
| \`four.js\` | 4.5 kB | +9 B (+0.2%) | |
157187
| \`two.js\` | 5 kB | -2.5 kB (-33.33%) | 🎉 |
158188
| \`one.js\` | 5 kB | +2.5 kB (+100%) | 🆘 |
159189
190+
</details>
191+
160192
<details><summary>ℹ️ <strong>View Unchanged</strong></summary>
161193
162194
| Filename | Size |
@@ -174,12 +206,16 @@ exports[`diffTable 10`] = `
174206
175207
**Total Size:** 21.3 kB
176208
209+
<details open><summary>📦 <strong>View Changed</strong></summary>
210+
177211
| Filename | Size | Change | |
178212
| :--- | :---: | :---: | :---: |
179213
| \`one.js\` | 5 kB | +2.5 kB (+100%) | 🆘 |
180214
| \`four.js\` | 4.5 kB | +9 B (+0.2%) | |
181215
| \`two.js\` | 5 kB | -2.5 kB (-33.33%) | 🎉 |
182216
217+
</details>
218+
183219
<details><summary>ℹ️ <strong>View Unchanged</strong></summary>
184220
185221
| Filename | Size |

0 commit comments

Comments
 (0)