Skip to content

Commit

Permalink
prettier and version
Browse files Browse the repository at this point in the history
  • Loading branch information
Thomas Wang committed Feb 15, 2022
1 parent 05db900 commit 90b25b5
Show file tree
Hide file tree
Showing 4 changed files with 27 additions and 23 deletions.
44 changes: 24 additions & 20 deletions extension/content/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ const addTypefullyPlug = () => {
typefullyLink.addEventListener("click", () => {
let tweetTextAreaNumber = 0;
let typefullyContent = "";

while (true) {
if (
document.querySelector(
Expand All @@ -83,38 +83,42 @@ const addTypefullyPlug = () => {
if (tweetTextAreaNumber > 0) {
typefullyContent = `${typefullyContent}\n\n\n\n\n`;
}

let tweetTextItems = Array.from(
document.querySelectorAll(
`[data-testid="tweetTextarea_${tweetTextAreaNumber}"] [data-text="true"]`
)
);

// remove trailing newlines at end of tweets (there is always one last <br> on the first tweet DOM node)
tweetTextItems = tweetTextItems.filter((item, index) => !(item.tagName === "BR" && index === tweetTextItems.length-1));

tweetTextItems = tweetTextItems.filter(
(item, index) =>
!(item.tagName === "BR" && index === tweetTextItems.length - 1)
);

tweetTextItems.forEach((item, index) => {
const isLastItem = index === tweetTextItems.length - 1;
const isTagOrMention = item => !!item.parentElement.parentElement.attributes.style;

// handle hard break (2 newlines) within single tweet
if (item.tagName === "BR" && !isLastItem) {
typefullyContent += "\n\n";
}
// handle regular text (<span> elements)
else {
typefullyContent = `${typefullyContent}${item.innerText}`;
// this handles non-hard breaks (just one newline) within a single tweet
if (!isLastItem && !isTagOrMention(tweetTextItems[index+1])) {
typefullyContent += "\n"
}
const isLastItem = index === tweetTextItems.length - 1;
const isTagOrMention = (item) =>
!!item.parentElement.parentElement.attributes.style;

// handle hard break (2 newlines) within single tweet
if (item.tagName === "BR" && !isLastItem) {
typefullyContent += "\n\n";
}
// handle regular text (<span> elements)
else {
typefullyContent = `${typefullyContent}${item.innerText}`;

// this handles non-hard breaks (just one newline) within a single tweet
if (!isLastItem && !isTagOrMention(tweetTextItems[index + 1])) {
typefullyContent += "\n";
}
}
});
} else {
break;
}

tweetTextAreaNumber = tweetTextAreaNumber + 1;
}

Expand Down
2 changes: 1 addition & 1 deletion extension/manifest.firefox.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "Minimal Theme for Twitter",
"short_name": "Minimal Twitter",
"description": "Declutter the Twitter web experience.",
"version": "4.1.4",
"version": "4.1.5",
"manifest_version": 2,
"browser_specific_settings": {
"gecko": {
Expand Down
2 changes: 1 addition & 1 deletion extension/manifest.v2.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "Minimal Theme for Twitter",
"short_name": "Minimal Twitter",
"description": "Declutter the Twitter web experience.",
"version": "4.1.4",
"version": "4.1.5",
"manifest_version": 2,
"icons": {
"16": "images/MinimalTwitterIcon16.png",
Expand Down
2 changes: 1 addition & 1 deletion extension/manifest.v3.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "Minimal Theme for Twitter",
"short_name": "Minimal Twitter",
"description": "Declutter the Twitter web experience.",
"version": "4.1.4",
"version": "4.1.5",
"manifest_version": 3,
"icons": {
"16": "images/MinimalTwitterIcon16.png",
Expand Down

0 comments on commit 90b25b5

Please sign in to comment.