From b5053aa8eb3a194cc169af4772950220fb664ed6 Mon Sep 17 00:00:00 2001
From: ChunkyProgrammer <78101139+ChunkyProgrammer@users.noreply.github.com>
Date: Tue, 19 Dec 2023 18:27:43 -0500
Subject: [PATCH] Lint js and css files
---
assets/css/default.css | 12 +++++++++---
assets/css/player.css | 6 +++---
assets/js/_helpers.js | 10 +++++-----
assets/js/comments.js | 26 +++++++++++++-------------
assets/js/handlers.js | 3 ++-
assets/js/player.js | 39 ++++++++++++++++++++++-----------------
assets/js/watch.js | 14 +++++++-------
7 files changed, 61 insertions(+), 49 deletions(-)
diff --git a/assets/css/default.css b/assets/css/default.css
index 00881253..c827a8a9 100644
--- a/assets/css/default.css
+++ b/assets/css/default.css
@@ -83,8 +83,8 @@ body a.channel-owner {
.creator-heart-container {
display: inline-block;
- padding: 0px 7px 6px 0px;
- margin: 0px -7px -4px 0px;
+ padding: 0 7px 6px 0;
+ margin: 0 -7px -4px 0;
}
.creator-heart {
@@ -98,7 +98,7 @@ body a.channel-owner {
.creator-heart-background-hearted {
width: 16px;
height: 16px;
- padding: 0px;
+ padding: 0;
position: relative;
}
@@ -142,6 +142,12 @@ div {
animation: spin 2s linear infinite;
}
+@media screen and (prefers-reduced-motion: reduce) {
+ .loading {
+ animation: none;
+ }
+}
+
.playlist-restricted {
height: 20em;
padding-right: 10px;
diff --git a/assets/css/player.css b/assets/css/player.css
index 50c7a748..7864be9b 100644
--- a/assets/css/player.css
+++ b/assets/css/player.css
@@ -207,9 +207,9 @@ ul.vjs-menu-content::-webkit-scrollbar {
}
.video-js .vjs-time-divider {
- min-width: 0px;
- padding-left: 0px;
- padding-right: 0px;
+ min-width: 0;
+ padding-left: 0;
+ padding-right: 0;
}
.video-js .vjs-poster {
diff --git a/assets/js/_helpers.js b/assets/js/_helpers.js
index 8e18169e..9f79eb6a 100644
--- a/assets/js/_helpers.js
+++ b/assets/js/_helpers.js
@@ -147,7 +147,7 @@ window.helpers = window.helpers || {
* @param {callbackXhrError} [callbacks.onError]
* @param {callbackXhrError} [callbacks.onTotalFail] - if failed after all retries
*/
- xhr: function(method, url, options, callbacks) {
+ xhr: function(method, url, options, callbacks) {
if (!options.retries || options.retries <= 1) {
helpers._xhr(method, url, options, callbacks);
return;
@@ -202,7 +202,7 @@ window.helpers = window.helpers || {
if (localStorageIsUsable) {
return {
get: function (key) {
- let storageItem = localStorage.getItem(key)
+ let storageItem = localStorage.getItem(key);
if (!storageItem) return;
try {
return JSON.parse(decodeURIComponent(storageItem));
@@ -211,9 +211,9 @@ window.helpers = window.helpers || {
helpers.storage.remove(key);
}
},
- set: function (key, value) {
- let encoded_value = encodeURIComponent(JSON.stringify(value))
- localStorage.setItem(key, encoded_value);
+ set: function (key, value) {
+ let encoded_value = encodeURIComponent(JSON.stringify(value));
+ localStorage.setItem(key, encoded_value);
},
remove: function (key) { localStorage.removeItem(key); }
};
diff --git a/assets/js/comments.js b/assets/js/comments.js
index 35ffa96e..f969b508 100644
--- a/assets/js/comments.js
+++ b/assets/js/comments.js
@@ -4,7 +4,7 @@ var spinnerHTML = '
\
{contentHtml}
\
-
'
+
';
commentInnerHtml = commentInnerHtml.supplant({
contentHtml: response.contentHtml,
redditComments: video_data.reddit_comments_text,
@@ -125,7 +125,7 @@ function get_youtube_replies(target, load_more, load_replies) {
var body = target.parentNode.parentNode;
var fallback = body.innerHTML;
body.innerHTML = spinnerHTML;
- var baseUrl = video_data.base_url || '/api/v1/comments/'+ video_data.id
+ var baseUrl = video_data.base_url || '/api/v1/comments/'+ video_data.id;
var url = baseUrl +
'?format=html' +
'&hl=' + video_data.preferences.locale +
@@ -133,7 +133,7 @@ function get_youtube_replies(target, load_more, load_replies) {
'&continuation=' + continuation;
if (video_data.ucid) {
- url += '&ucid=' + video_data.ucid
+ url += '&ucid=' + video_data.ucid;
}
if (load_replies) url += '&action=action_get_comment_replies';
@@ -171,4 +171,4 @@ function get_youtube_replies(target, load_more, load_replies) {
body.innerHTML = fallback;
}
});
-}
\ No newline at end of file
+}
diff --git a/assets/js/handlers.js b/assets/js/handlers.js
index 539974fb..35423c7e 100644
--- a/assets/js/handlers.js
+++ b/assets/js/handlers.js
@@ -73,6 +73,7 @@
el.onclick = function () { remove_subscription(el); };
});
document.querySelectorAll('[data-onclick="notification_requestPermission"]').forEach(function (el) {
+ // eslint-disable-next-line compat/compat
el.onclick = function () { Notification.requestPermission(); };
});
@@ -132,7 +133,7 @@
// Ignore shortcuts if any text input is focused
let focused_tag = document.activeElement.tagName.toLowerCase();
- const allowed = /^(button|checkbox|file|radio|submit)$/;
+ const allowed = /^(?:button|checkbox|file|radio|submit)$/;
if (focused_tag === 'textarea') return;
if (focused_tag === 'input') {
diff --git a/assets/js/player.js b/assets/js/player.js
index 71c5e7da..112a96d8 100644
--- a/assets/js/player.js
+++ b/assets/js/player.js
@@ -188,8 +188,12 @@ if (location.pathname.startsWith('/embed/')) {
// Detection code taken from https://stackoverflow.com/a/20293441
function isMobile() {
- try{ document.createEvent('TouchEvent'); return true; }
- catch(e){ return false; }
+ try {
+ document.createEvent('TouchEvent');
+ return true;
+ } catch(e) {
+ return false;
+ }
}
if (isMobile()) {
@@ -203,8 +207,8 @@ if (isMobile()) {
// Create new control bar object for operation buttons
const ControlBar = videojs.getComponent('controlBar');
let operations_bar = new ControlBar(player, {
- children: [],
- playbackRates: [0.25, 0.5, 0.75, 1.0, 1.25, 1.5, 1.75, 2.0]
+ children: [],
+ playbackRates: [0.25, 0.5, 0.75, 1.0, 1.25, 1.5, 1.75, 2.0]
});
buttons.slice(1).forEach(function (child) {operations_bar.addChild(child);});
@@ -307,7 +311,7 @@ function updateCookie(newVolume, newSpeed) {
var date = new Date();
date.setFullYear(date.getFullYear() + 2);
- var ipRegex = /^((\d+\.){3}\d+|[\dA-Fa-f]*:[\d:A-Fa-f]*:[\d:A-Fa-f]+)$/;
+ var ipRegex = /^(?:(?:\d+\.){3}\d+|[\dA-F]*:[\dA-F]*:[\d:A-F]+)$/i;
var domainUsed = location.hostname;
// Fix for a bug in FF where the leading dot in the FQDN is not ignored
@@ -362,8 +366,9 @@ if (video_data.params.save_player_pos) {
lastUpdated = time;
}
});
+} else {
+ remove_all_video_times();
}
-else remove_all_video_times();
if (video_data.params.autoplay) {
var bpb = player.getChild('bigPlayButton');
@@ -427,8 +432,8 @@ if (!video_data.params.listen && video_data.params.annotations) {
addEventListener('load', function (e) {
addEventListener('__ar_annotation_click', function (e) {
const url = e.detail.url,
- target = e.detail.target,
- seconds = e.detail.seconds;
+ target = e.detail.target,
+ seconds = e.detail.seconds;
var path = new URL(url);
if (path.href.startsWith('https://www.youtube.com/watch?') && seconds) {
@@ -593,20 +598,20 @@ addEventListener('keydown', function (e) {
return;
}
// See https://github.com/ctd1500/videojs-hotkeys/blob/bb4a158b2e214ccab87c2e7b95f42bc45c6bfd87/videojs.hotkeys.js#L310-L313
- const isPlayerFocused = false
- || e.target === document.querySelector('.video-js')
- || e.target === document.querySelector('.vjs-tech')
- || e.target === document.querySelector('.iframeblocker')
- || e.target === document.querySelector('.vjs-control-bar')
+ const isPlayerFocused = false ||
+ e.target === document.querySelector('.video-js') ||
+ e.target === document.querySelector('.vjs-tech') ||
+ e.target === document.querySelector('.iframeblocker') ||
+ e.target === document.querySelector('.vjs-control-bar')
;
let action = null;
const code = e.keyCode;
const decoratedKey =
- e.key
- + (e.altKey ? '+alt' : '')
- + (e.ctrlKey ? '+ctrl' : '')
- + (e.metaKey ? '+meta' : '')
+ e.key +
+ (e.altKey ? '+alt' : '') +
+ (e.ctrlKey ? '+ctrl' : '') +
+ (e.metaKey ? '+meta' : '')
;
switch (decoratedKey) {
case ' ':
diff --git a/assets/js/watch.js b/assets/js/watch.js
index 26ad138f..7edf61f4 100644
--- a/assets/js/watch.js
+++ b/assets/js/watch.js
@@ -142,17 +142,17 @@ function get_reddit_comments() {
\
{contentHtml}
\
'.supplant({
- title: response.title,
- youtubeCommentsText: video_data.youtube_comments_text,
- redditPermalinkText: video_data.reddit_permalink_text,
- permalink: response.permalink,
- contentHtml: response.contentHtml
- });
+ title: response.title,
+ youtubeCommentsText: video_data.youtube_comments_text,
+ redditPermalinkText: video_data.reddit_permalink_text,
+ permalink: response.permalink,
+ contentHtml: response.contentHtml
+ });
comments.children[0].children[0].children[0].onclick = toggle_comments;
comments.children[0].children[1].children[0].onclick = swap_comments;
},
- onNon200: onNon200, // declared above
+ onNon200: onNon200 // declared above
});
}