|
@@ -60,7 +60,7 @@ const adornments = {
|
|
experimental: async () => getAdornHtml("bytm-experimental-icon", t("experimental_feature"), "icon-experimental"),
|
|
experimental: async () => getAdornHtml("bytm-experimental-icon", t("experimental_feature"), "icon-experimental"),
|
|
globe: async () => await resourceAsString("icon-globe_small") ?? "",
|
|
globe: async () => await resourceAsString("icon-globe_small") ?? "",
|
|
alert: async (title: string) => getAdornHtml("bytm-warning-icon", title, "icon-error", "role=\"alert\""),
|
|
alert: async (title: string) => getAdornHtml("bytm-warning-icon", title, "icon-error", "role=\"alert\""),
|
|
- reloadRequired: async () => getFeature("advancedMode") ? getAdornHtml("bytm-reload-icon", t("feature_requires_reload"), "icon-reload") : undefined,
|
|
|
|
|
|
+ reload: async () => getFeature("advancedMode") ? getAdornHtml("bytm-reload-icon", t("feature_requires_reload"), "icon-reload") : undefined,
|
|
} satisfies Record<string, AdornmentFunc>;
|
|
} satisfies Record<string, AdornmentFunc>;
|
|
|
|
|
|
/** Order of adornment elements in the {@linkcode combineAdornments()} function */
|
|
/** Order of adornment elements in the {@linkcode combineAdornments()} function */
|
|
@@ -68,7 +68,7 @@ const adornmentOrder = new Map<AdornmentFunc, number>();
|
|
adornmentOrder.set(adornments.alert, 0);
|
|
adornmentOrder.set(adornments.alert, 0);
|
|
adornmentOrder.set(adornments.experimental, 1);
|
|
adornmentOrder.set(adornments.experimental, 1);
|
|
adornmentOrder.set(adornments.globe, 2);
|
|
adornmentOrder.set(adornments.globe, 2);
|
|
-adornmentOrder.set(adornments.reloadRequired, 3);
|
|
|
|
|
|
+adornmentOrder.set(adornments.reload, 3);
|
|
adornmentOrder.set(adornments.advanced, 4);
|
|
adornmentOrder.set(adornments.advanced, 4);
|
|
|
|
|
|
//#region select options
|
|
//#region select options
|
|
@@ -165,13 +165,13 @@ export const featInfo = {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "layout",
|
|
category: "layout",
|
|
default: true,
|
|
default: true,
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
removeShareTrackingParam: {
|
|
removeShareTrackingParam: {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "layout",
|
|
category: "layout",
|
|
default: true,
|
|
default: true,
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
removeShareTrackingParamSites: {
|
|
removeShareTrackingParamSites: {
|
|
type: "select",
|
|
type: "select",
|
|
@@ -179,14 +179,14 @@ export const featInfo = {
|
|
options: options.siteSelection,
|
|
options: options.siteSelection,
|
|
default: "all",
|
|
default: "all",
|
|
advanced: true,
|
|
advanced: true,
|
|
- textAdornment: () => combineAdornments([adornments.advanced, adornments.reloadRequired]),
|
|
|
|
|
|
+ textAdornment: () => combineAdornments([adornments.advanced, adornments.reload]),
|
|
},
|
|
},
|
|
fixSpacing: {
|
|
fixSpacing: {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "layout",
|
|
category: "layout",
|
|
default: true,
|
|
default: true,
|
|
advanced: true,
|
|
advanced: true,
|
|
- textAdornment: () => combineAdornments([adornments.advanced, adornments.reloadRequired]),
|
|
|
|
|
|
+ textAdornment: () => combineAdornments([adornments.advanced, adornments.reload]),
|
|
},
|
|
},
|
|
thumbnailOverlayBehavior: {
|
|
thumbnailOverlayBehavior: {
|
|
type: "select",
|
|
type: "select",
|
|
@@ -205,13 +205,13 @@ export const featInfo = {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "layout",
|
|
category: "layout",
|
|
default: true,
|
|
default: true,
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
thumbnailOverlayShowIndicator: {
|
|
thumbnailOverlayShowIndicator: {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "layout",
|
|
category: "layout",
|
|
default: true,
|
|
default: true,
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
thumbnailOverlayIndicatorOpacity: {
|
|
thumbnailOverlayIndicatorOpacity: {
|
|
type: "slider",
|
|
type: "slider",
|
|
@@ -222,7 +222,7 @@ export const featInfo = {
|
|
default: 40,
|
|
default: 40,
|
|
unit: "%",
|
|
unit: "%",
|
|
advanced: true,
|
|
advanced: true,
|
|
- textAdornment: () => combineAdornments([adornments.advanced, adornments.reloadRequired]),
|
|
|
|
|
|
+ textAdornment: () => combineAdornments([adornments.advanced, adornments.reload]),
|
|
},
|
|
},
|
|
thumbnailOverlayImageFit: {
|
|
thumbnailOverlayImageFit: {
|
|
type: "select",
|
|
type: "select",
|
|
@@ -234,7 +234,7 @@ export const featInfo = {
|
|
],
|
|
],
|
|
default: "cover",
|
|
default: "cover",
|
|
advanced: true,
|
|
advanced: true,
|
|
- textAdornment: () => combineAdornments([adornments.advanced, adornments.reloadRequired]),
|
|
|
|
|
|
+ textAdornment: () => combineAdornments([adornments.advanced, adornments.reload]),
|
|
},
|
|
},
|
|
hideCursorOnIdle: {
|
|
hideCursorOnIdle: {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
@@ -261,13 +261,13 @@ export const featInfo = {
|
|
category: "layout",
|
|
category: "layout",
|
|
default: true,
|
|
default: true,
|
|
advanced: true,
|
|
advanced: true,
|
|
- textAdornment: () => combineAdornments([adornments.advanced, adornments.reloadRequired]),
|
|
|
|
|
|
+ textAdornment: () => combineAdornments([adornments.advanced, adornments.reload]),
|
|
},
|
|
},
|
|
showVotes: {
|
|
showVotes: {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "layout",
|
|
category: "layout",
|
|
default: true,
|
|
default: true,
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
// archived idea for future version
|
|
// archived idea for future version
|
|
// (shows a bar under the like/dislike buttons that shows the ratio of likes to dislikes)
|
|
// (shows a bar under the like/dislike buttons that shows the ratio of likes to dislikes)
|
|
@@ -280,7 +280,7 @@ export const featInfo = {
|
|
// { value: "blueGray", label: t("vote_ratio_blue_gray") },
|
|
// { value: "blueGray", label: t("vote_ratio_blue_gray") },
|
|
// ],
|
|
// ],
|
|
// default: "disabled",
|
|
// default: "disabled",
|
|
- // textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ // textAdornment: adornments.reload,
|
|
// },
|
|
// },
|
|
|
|
|
|
//#region cat:volume
|
|
//#region cat:volume
|
|
@@ -288,7 +288,7 @@ export const featInfo = {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "volume",
|
|
category: "volume",
|
|
default: true,
|
|
default: true,
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
volumeSliderSize: {
|
|
volumeSliderSize: {
|
|
type: "number",
|
|
type: "number",
|
|
@@ -298,7 +298,7 @@ export const featInfo = {
|
|
step: 5,
|
|
step: 5,
|
|
default: 150,
|
|
default: 150,
|
|
unit: "px",
|
|
unit: "px",
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
volumeSliderStep: {
|
|
volumeSliderStep: {
|
|
type: "slider",
|
|
type: "slider",
|
|
@@ -307,7 +307,7 @@ export const featInfo = {
|
|
max: 25,
|
|
max: 25,
|
|
default: 2,
|
|
default: 2,
|
|
unit: "%",
|
|
unit: "%",
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
volumeSliderScrollStep: {
|
|
volumeSliderScrollStep: {
|
|
type: "slider",
|
|
type: "slider",
|
|
@@ -316,21 +316,21 @@ export const featInfo = {
|
|
max: 25,
|
|
max: 25,
|
|
default: 4,
|
|
default: 4,
|
|
unit: "%",
|
|
unit: "%",
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
volumeSharedBetweenTabs: {
|
|
volumeSharedBetweenTabs: {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "volume",
|
|
category: "volume",
|
|
default: false,
|
|
default: false,
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
setInitialTabVolume: {
|
|
setInitialTabVolume: {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "volume",
|
|
category: "volume",
|
|
default: false,
|
|
default: false,
|
|
textAdornment: () => getFeature("volumeSharedBetweenTabs")
|
|
textAdornment: () => getFeature("volumeSharedBetweenTabs")
|
|
- ? combineAdornments([adornments.alert(t("feature_warning_setInitialTabVolume_volumeSharedBetweenTabs_incompatible").replace(/"/g, "'")), adornments.reloadRequired])
|
|
|
|
- : adornments.reloadRequired(),
|
|
|
|
|
|
+ ? combineAdornments([adornments.alert(t("feature_warning_setInitialTabVolume_volumeSharedBetweenTabs_incompatible").replace(/"/g, "'")), adornments.reload])
|
|
|
|
+ : adornments.reload(),
|
|
},
|
|
},
|
|
initialTabVolumeLevel: {
|
|
initialTabVolumeLevel: {
|
|
type: "slider",
|
|
type: "slider",
|
|
@@ -341,8 +341,8 @@ export const featInfo = {
|
|
default: 100,
|
|
default: 100,
|
|
unit: "%",
|
|
unit: "%",
|
|
textAdornment: () => getFeature("volumeSharedBetweenTabs")
|
|
textAdornment: () => getFeature("volumeSharedBetweenTabs")
|
|
- ? combineAdornments([adornments.alert(t("feature_warning_setInitialTabVolume_volumeSharedBetweenTabs_incompatible").replace(/"/g, "'")), adornments.reloadRequired])
|
|
|
|
- : adornments.reloadRequired(),
|
|
|
|
|
|
+ ? combineAdornments([adornments.alert(t("feature_warning_setInitialTabVolume_volumeSharedBetweenTabs_incompatible").replace(/"/g, "'")), adornments.reload])
|
|
|
|
+ : adornments.reload(),
|
|
reloadRequired: false,
|
|
reloadRequired: false,
|
|
enable: noop,
|
|
enable: noop,
|
|
},
|
|
},
|
|
@@ -352,13 +352,13 @@ export const featInfo = {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "songLists",
|
|
category: "songLists",
|
|
default: true,
|
|
default: true,
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
deleteFromQueueButton: {
|
|
deleteFromQueueButton: {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "songLists",
|
|
category: "songLists",
|
|
default: true,
|
|
default: true,
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
listButtonsPlacement: {
|
|
listButtonsPlacement: {
|
|
type: "select",
|
|
type: "select",
|
|
@@ -369,19 +369,19 @@ export const featInfo = {
|
|
],
|
|
],
|
|
default: "everywhere",
|
|
default: "everywhere",
|
|
advanced: true,
|
|
advanced: true,
|
|
- textAdornment: () => combineAdornments([adornments.advanced, adornments.reloadRequired]),
|
|
|
|
|
|
+ textAdornment: () => combineAdornments([adornments.advanced, adornments.reload]),
|
|
},
|
|
},
|
|
scrollToActiveSongBtn: {
|
|
scrollToActiveSongBtn: {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "songLists",
|
|
category: "songLists",
|
|
default: true,
|
|
default: true,
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
clearQueueBtn: {
|
|
clearQueueBtn: {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "songLists",
|
|
category: "songLists",
|
|
default: true,
|
|
default: true,
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
|
|
|
|
//#region cat:behavior
|
|
//#region cat:behavior
|
|
@@ -389,7 +389,7 @@ export const featInfo = {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "behavior",
|
|
category: "behavior",
|
|
default: false,
|
|
default: false,
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
closeToastsTimeout: {
|
|
closeToastsTimeout: {
|
|
type: "number",
|
|
type: "number",
|
|
@@ -407,14 +407,14 @@ export const featInfo = {
|
|
category: "behavior",
|
|
category: "behavior",
|
|
default: true,
|
|
default: true,
|
|
helpText: () => tp("feature_helptext_rememberSongTime", getFeature("rememberSongTimeMinPlayTime"), getFeature("rememberSongTimeMinPlayTime")),
|
|
helpText: () => tp("feature_helptext_rememberSongTime", getFeature("rememberSongTimeMinPlayTime"), getFeature("rememberSongTimeMinPlayTime")),
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
rememberSongTimeSites: {
|
|
rememberSongTimeSites: {
|
|
type: "select",
|
|
type: "select",
|
|
category: "behavior",
|
|
category: "behavior",
|
|
options: options.siteSelection,
|
|
options: options.siteSelection,
|
|
default: "all",
|
|
default: "all",
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
rememberSongTimeDuration: {
|
|
rememberSongTimeDuration: {
|
|
type: "number",
|
|
type: "number",
|
|
@@ -498,7 +498,7 @@ export const featInfo = {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "input",
|
|
category: "input",
|
|
default: true,
|
|
default: true,
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
numKeysSkipToTime: {
|
|
numKeysSkipToTime: {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
@@ -511,7 +511,7 @@ export const featInfo = {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "input",
|
|
category: "input",
|
|
default: true,
|
|
default: true,
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
autoLikeChannelToggleBtn: {
|
|
autoLikeChannelToggleBtn: {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
@@ -527,7 +527,7 @@ export const featInfo = {
|
|
// type: "toggle",
|
|
// type: "toggle",
|
|
// category: "input",
|
|
// category: "input",
|
|
// default: false,
|
|
// default: false,
|
|
- // textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ // textAdornment: adornments.reload,
|
|
// },
|
|
// },
|
|
autoLikeTimeout: {
|
|
autoLikeTimeout: {
|
|
type: "slider",
|
|
type: "slider",
|
|
@@ -562,7 +562,7 @@ export const featInfo = {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "lyrics",
|
|
category: "lyrics",
|
|
default: true,
|
|
default: true,
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
errorOnLyricsNotFound: {
|
|
errorOnLyricsNotFound: {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
@@ -651,27 +651,27 @@ export const featInfo = {
|
|
options: options.siteSelectionOrNone,
|
|
options: options.siteSelectionOrNone,
|
|
default: "all",
|
|
default: "all",
|
|
advanced: true,
|
|
advanced: true,
|
|
- textAdornment: () => combineAdornments([adornments.advanced, adornments.reloadRequired]),
|
|
|
|
|
|
+ textAdornment: () => combineAdornments([adornments.advanced, adornments.reload]),
|
|
},
|
|
},
|
|
sponsorBlockIntegration: {
|
|
sponsorBlockIntegration: {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "integrations",
|
|
category: "integrations",
|
|
default: true,
|
|
default: true,
|
|
advanced: true,
|
|
advanced: true,
|
|
- textAdornment: () => combineAdornments([adornments.advanced, adornments.reloadRequired]),
|
|
|
|
|
|
+ textAdornment: () => combineAdornments([adornments.advanced, adornments.reload]),
|
|
},
|
|
},
|
|
themeSongIntegration: {
|
|
themeSongIntegration: {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "integrations",
|
|
category: "integrations",
|
|
default: false,
|
|
default: false,
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
themeSongLightness: {
|
|
themeSongLightness: {
|
|
type: "select",
|
|
type: "select",
|
|
category: "integrations",
|
|
category: "integrations",
|
|
options: options.colorLightness,
|
|
options: options.colorLightness,
|
|
default: "darker",
|
|
default: "darker",
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
|
|
|
|
//#region cat:plugins
|
|
//#region cat:plugins
|
|
@@ -690,7 +690,7 @@ export const featInfo = {
|
|
step: 0.1,
|
|
step: 0.1,
|
|
unit: "s",
|
|
unit: "s",
|
|
advanced: true,
|
|
advanced: true,
|
|
- textAdornment: () => combineAdornments([adornments.advanced, adornments.reloadRequired]),
|
|
|
|
|
|
+ textAdornment: () => combineAdornments([adornments.advanced, adornments.reload]),
|
|
},
|
|
},
|
|
|
|
|
|
//#region cat:general
|
|
//#region cat:general
|
|
@@ -699,20 +699,20 @@ export const featInfo = {
|
|
category: "general",
|
|
category: "general",
|
|
options: options.locale,
|
|
options: options.locale,
|
|
default: getPreferredLocale(),
|
|
default: getPreferredLocale(),
|
|
- textAdornment: () => combineAdornments([adornments.globe, adornments.reloadRequired]),
|
|
|
|
|
|
+ textAdornment: () => combineAdornments([adornments.globe, adornments.reload]),
|
|
},
|
|
},
|
|
localeFallback: {
|
|
localeFallback: {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "general",
|
|
category: "general",
|
|
default: true,
|
|
default: true,
|
|
advanced: true,
|
|
advanced: true,
|
|
- textAdornment: () => combineAdornments([adornments.advanced, adornments.reloadRequired]),
|
|
|
|
|
|
+ textAdornment: () => combineAdornments([adornments.advanced, adornments.reload]),
|
|
},
|
|
},
|
|
versionCheck: {
|
|
versionCheck: {
|
|
type: "toggle",
|
|
type: "toggle",
|
|
category: "general",
|
|
category: "general",
|
|
default: true,
|
|
default: true,
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
checkVersionNow: {
|
|
checkVersionNow: {
|
|
type: "button",
|
|
type: "button",
|
|
@@ -752,13 +752,13 @@ export const featInfo = {
|
|
category: "general",
|
|
category: "general",
|
|
default: true,
|
|
default: true,
|
|
advanced: true,
|
|
advanced: true,
|
|
- textAdornment: () => combineAdornments([adornments.advanced, adornments.reloadRequired]),
|
|
|
|
|
|
+ textAdornment: () => combineAdornments([adornments.advanced, adornments.reload]),
|
|
},
|
|
},
|
|
resetConfig: {
|
|
resetConfig: {
|
|
type: "button",
|
|
type: "button",
|
|
category: "general",
|
|
category: "general",
|
|
click: promptResetConfig,
|
|
click: promptResetConfig,
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
logLevel: {
|
|
logLevel: {
|
|
type: "select",
|
|
type: "select",
|
|
@@ -768,7 +768,7 @@ export const featInfo = {
|
|
{ value: 1, label: t("log_level_info") },
|
|
{ value: 1, label: t("log_level_info") },
|
|
],
|
|
],
|
|
default: 1,
|
|
default: 1,
|
|
- textAdornment: adornments.reloadRequired,
|
|
|
|
|
|
+ textAdornment: adornments.reload,
|
|
},
|
|
},
|
|
advancedMode: {
|
|
advancedMode: {
|
|
type: "toggle",
|
|
type: "toggle",
|