Skip to content

Commit

Permalink
feat: exclude filtering if span has class or id (#19)
Browse files Browse the repository at this point in the history
  • Loading branch information
kptdobe committed Mar 30, 2022
1 parent d6f5761 commit 9a1b525
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 3 deletions.
2 changes: 1 addition & 1 deletion package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions src/utils/DOMUtils.js
Original file line number Diff line number Diff line change
Expand Up @@ -144,8 +144,8 @@ export default class DOMUtils {
static removeSpans(document) {
// remove spans
document.querySelectorAll('span').forEach((span) => {
if (!span.querySelector('img')) {
// do not touch spans with images
// do not touch spans with images and span with a css class or an id
if (!span.querySelector('img') && span.classList.length === 0 && !span.id) {
if (span.textContent === '') {
span.remove();
} else {
Expand Down
2 changes: 2 additions & 0 deletions test/utils/DOMUtils.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -190,6 +190,8 @@ describe('DOMUtils#removeSpans tests', () => {
test('<p>Spacing<span> should</span> remain the <span>same even</span> with<span> multiple spans</span></p>', '<p>Spacing should remain the same even with multiple spans</p>');
test('<span><div><img src="animage.jpg"></div></span>', '<span><div><img src="animage.jpg"></div></span>');
test('<span>Some image here: <div><img src="animage.jpg"></div></span>', '<span>Some image here: <div><img src="animage.jpg"></div></span>');
test('<div>Spans potentially used to do layouting: <span class="tab1">tab1</span><span class="tab2">tab2</span></div>', '<div>Spans potentially used to do layouting: <span class="tab1">tab1</span><span class="tab2">tab2</span></div>');
test('<div>Spans potentially used to do layouting: <span id="tab1">tab1</span><span id="tab2">tab2</span></div>', '<div>Spans potentially used to do layouting: <span id="tab1">tab1</span><span id="tab2">tab2</span></div>');
});
});

Expand Down

0 comments on commit 9a1b525

Please sign in to comment.