feat: warn on uncertain episode availability
This commit is contained in:
@@ -3,6 +3,7 @@ import "./toast";
|
||||
import "./htmx";
|
||||
import "./dropdown";
|
||||
import "./anime";
|
||||
import "./episode_availability_warning";
|
||||
import "./search";
|
||||
import "./dedupe";
|
||||
import "./watchlist";
|
||||
|
||||
23
static/episode_availability_warning.ts
Normal file
23
static/episode_availability_warning.ts
Normal file
@@ -0,0 +1,23 @@
|
||||
import { closestFocusable, onReady } from "./utils";
|
||||
|
||||
const initEpisodeAvailabilityWarning = (): void => {
|
||||
onReady(() => {
|
||||
const dialog = document.querySelector<HTMLElement>("[data-episode-availability-warning]");
|
||||
const continueButton = document.querySelector<HTMLButtonElement>(
|
||||
"[data-episode-availability-warning-continue]",
|
||||
);
|
||||
if (!dialog || !continueButton) {
|
||||
return;
|
||||
}
|
||||
|
||||
document.body.classList.add("overflow-hidden");
|
||||
closestFocusable(dialog)?.focus();
|
||||
|
||||
continueButton.addEventListener("click", () => {
|
||||
dialog.remove();
|
||||
document.body.classList.remove("overflow-hidden");
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
initEpisodeAvailabilityWarning();
|
||||
Reference in New Issue
Block a user