From db6f70600ff9190c619c29bdb813fdd65eaa0f65 Mon Sep 17 00:00:00 2001 From: Serraniel Date: Wed, 26 Aug 2020 18:29:40 +0200 Subject: [PATCH] #35 changed javascript to module logic --- src/javascript/enhancements/animeRequests.js | 12 ++++++++---- src/javascript/enhancements/lists.js | 7 +++++-- src/javascript/enhancements/quickSearch.js | 7 +++++-- src/javascript/utils/aniwatchCore.js | 6 +++--- src/javascript/utils/colors.js | 2 +- src/javascript/utils/helpers.js | 6 +++--- 6 files changed, 25 insertions(+), 15 deletions(-) diff --git a/src/javascript/enhancements/animeRequests.js b/src/javascript/enhancements/animeRequests.js index 066be38..d215e73 100644 --- a/src/javascript/enhancements/animeRequests.js +++ b/src/javascript/enhancements/animeRequests.js @@ -1,6 +1,10 @@ -registerScript(node => { +import * as core from '../utils/aniwatchCore'; +import * as color from '../utils/colors'; +import * as helper from '../utils/helpers'; + +core.registerScript(node => { // run the scripts - if (isHtmlElement(node)) { + if (helper.isHtmlElement(node)) { changeFollowedStarColor(node); changeBorderColorOwnRequests(node); removeUnknownUsers(node); @@ -14,7 +18,7 @@ function changeFollowedStarColor(node) { let followedItems = Array.from(node.querySelectorAll('i')).filter(i => i.innerText.trim() === starIcon); // change color - followedItems.forEach(item => item.style.color = aniBlue); + followedItems.forEach(item => item.style.color = color.aniBlue); } function changeBorderColorOwnRequests(node) { @@ -25,7 +29,7 @@ function changeBorderColorOwnRequests(node) { // highlight left border for own request if (profileLink.length > 0) { - item.style.borderColor = aniBlue + item.style.borderColor = color.aniBlue } } diff --git a/src/javascript/enhancements/lists.js b/src/javascript/enhancements/lists.js index 7939a00..72c33e8 100644 --- a/src/javascript/enhancements/lists.js +++ b/src/javascript/enhancements/lists.js @@ -1,6 +1,9 @@ -registerScript(node => { +import * as core from '../utils/aniwatchCore'; +import * as helper from '../utils/helpers'; + +core.registerScript(node => { // run the scripts - if (isHtmlElement(node)) { + if (helper.isHtmlElement(node)) { addListHorizontalSeparators(node) } }, ".*"); diff --git a/src/javascript/enhancements/quickSearch.js b/src/javascript/enhancements/quickSearch.js index 8468276..3ee615f 100644 --- a/src/javascript/enhancements/quickSearch.js +++ b/src/javascript/enhancements/quickSearch.js @@ -1,7 +1,10 @@ +import * as core from '../utils/aniwatchCore'; +import * as helper from '../utils/helpers'; + const quickSearchID = 'ea-quickSearch'; const quickSearchLink = 'ea-quickSearchLink'; -runAfterLoad(() => { +core.runAfterLoad(() => { initSearch(); }, ".*"); @@ -58,7 +61,7 @@ function handleQuickSearch(event) { } function handleSearchForShiftF(event) { - if (isShiftPressed) { + if (helper.isShiftPressed) { if (event.key === 'F') { event.preventDefault(); document.getElementById(quickSearchID).focus(); diff --git a/src/javascript/utils/aniwatchCore.js b/src/javascript/utils/aniwatchCore.js index 1951dc7..31f2f4b 100644 --- a/src/javascript/utils/aniwatchCore.js +++ b/src/javascript/utils/aniwatchCore.js @@ -1,11 +1,11 @@ let __scripts = []; let __afterLoadScripts = []; -function registerScript(func, pattern = '.*') { +export function registerScript(func, pattern = '.*') { __scripts.push({ "function": func, "pattern": pattern }); } -function runScripts(node) { +export function runScripts(node) { __scripts.forEach(script => { if (window.location.pathname.match(script.pattern)) { script.function(node); @@ -31,7 +31,7 @@ function findPreloader() { return document.getElementById('preloader'); } -function runAfterLoad(func, pattern = '.*') { +export function runAfterLoad(func, pattern = '.*') { let preloader = findPreloader(); if (typeof preloader !== undefined && preloader.style.display !== "none") { __afterLoadScripts.push({ "function": func, "pattern": pattern }); diff --git a/src/javascript/utils/colors.js b/src/javascript/utils/colors.js index 536b09f..e774d9e 100644 --- a/src/javascript/utils/colors.js +++ b/src/javascript/utils/colors.js @@ -1 +1 @@ -const aniBlue = '#348fff'; \ No newline at end of file +export const aniBlue = '#348fff'; \ No newline at end of file diff --git a/src/javascript/utils/helpers.js b/src/javascript/utils/helpers.js index ed73b4f..4d6f874 100644 --- a/src/javascript/utils/helpers.js +++ b/src/javascript/utils/helpers.js @@ -1,7 +1,7 @@ -var isShiftPressed = false; -var isCtrlPressed = false; +export var isShiftPressed = false; +export var isCtrlPressed = false; -function isHtmlElement(object) { +export function isHtmlElement(object) { return object instanceof HTMLElement; }