2023-10-10 23:06:12 +00:00
|
|
|
<!DOCTYPE html>
|
|
|
|
<html lang="en">
|
|
|
|
<head>
|
|
|
|
<meta charset="utf-8" />
|
|
|
|
<meta
|
|
|
|
id="viewport"
|
|
|
|
name="viewport"
|
2023-10-12 23:14:29 +00:00
|
|
|
content="width=device-width, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover"
|
2023-10-10 23:06:12 +00:00
|
|
|
/>
|
2023-10-13 01:16:57 +00:00
|
|
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
|
|
|
<meta
|
|
|
|
name="apple-mobile-web-app-status-bar-style"
|
|
|
|
content="black-translucent"
|
|
|
|
/>
|
|
|
|
<meta name="theme-color" content="#D2B48C" />
|
2023-10-25 23:52:01 +00:00
|
|
|
|
2023-10-29 00:07:24 +00:00
|
|
|
<title>Book Manager - Reader</title>
|
2023-10-25 23:52:01 +00:00
|
|
|
|
|
|
|
<link rel="manifest" href="/manifest.json" />
|
|
|
|
<link rel="stylesheet" href="/assets/style.css" />
|
|
|
|
|
2023-10-29 00:07:24 +00:00
|
|
|
<!-- Libraries -->
|
|
|
|
<script src="/assets/js/platform.js"></script>
|
|
|
|
<script src="/assets/js/jszip.min.js"></script>
|
|
|
|
<script src="/assets/js/epub.min.js"></script>
|
|
|
|
<script src="/assets/js/no-sleep.js"></script>
|
|
|
|
<script src="/assets/js/idb-keyval.js"></script>
|
|
|
|
|
|
|
|
<!-- Reader -->
|
|
|
|
<script src="/assets/reader/index.js"></script>
|
|
|
|
|
2023-10-10 23:06:12 +00:00
|
|
|
<style>
|
|
|
|
html,
|
|
|
|
body {
|
|
|
|
overscroll-behavior-y: none;
|
|
|
|
margin: 0px;
|
|
|
|
}
|
|
|
|
|
2023-10-13 01:16:57 +00:00
|
|
|
html {
|
|
|
|
min-height: calc(100% + env(safe-area-inset-top));
|
|
|
|
}
|
|
|
|
|
|
|
|
#viewer {
|
|
|
|
padding-top: env(safe-area-inset-top);
|
|
|
|
}
|
|
|
|
|
2023-10-10 23:06:12 +00:00
|
|
|
/* For Webkit-based browsers (Chrome, Safari and Opera) */
|
|
|
|
.no-scrollbar::-webkit-scrollbar {
|
|
|
|
display: none;
|
|
|
|
}
|
|
|
|
|
|
|
|
/* For IE, Edge and Firefox */
|
|
|
|
.no-scrollbar {
|
|
|
|
-ms-overflow-style: none; /* IE and Edge */
|
|
|
|
scrollbar-width: none; /* Firefox */
|
|
|
|
}
|
2023-10-12 23:14:29 +00:00
|
|
|
|
|
|
|
#bottom-bar {
|
|
|
|
padding-bottom: env(safe-area-inset-bottom);
|
|
|
|
}
|
2023-10-13 01:16:57 +00:00
|
|
|
|
|
|
|
#top-bar {
|
|
|
|
padding-top: env(safe-area-inset-top);
|
|
|
|
}
|
|
|
|
|
|
|
|
#top-bar:not(.top-0) {
|
|
|
|
top: calc((8em + env(safe-area-inset-top)) * -1);
|
|
|
|
}
|
2023-10-10 23:06:12 +00:00
|
|
|
</style>
|
|
|
|
</head>
|
2023-10-13 01:16:57 +00:00
|
|
|
<body class="bg-gray-100 dark:bg-gray-800">
|
2023-10-14 01:06:49 +00:00
|
|
|
<main class="relative overflow-hidden h-[100dvh]">
|
2023-10-10 23:06:12 +00:00
|
|
|
<div
|
|
|
|
id="top-bar"
|
2023-10-13 01:16:57 +00:00
|
|
|
class="transition-all duration-200 absolute z-10 bg-gray-100 dark:bg-gray-800 w-full px-2"
|
2023-10-10 23:06:12 +00:00
|
|
|
>
|
2023-10-13 01:16:57 +00:00
|
|
|
<div class="w-full h-32 flex items-center justify-around relative">
|
|
|
|
<div class="text-gray-500 absolute top-6 left-4 flex flex-col gap-4">
|
2023-10-29 00:07:24 +00:00
|
|
|
<a href="#">
|
2023-10-13 01:16:57 +00:00
|
|
|
<svg
|
|
|
|
width="32"
|
|
|
|
height="32"
|
|
|
|
class="cursor-pointer hover:text-gray-800 dark:hover:text-gray-100"
|
|
|
|
viewBox="0 0 24 24"
|
|
|
|
fill="currentColor"
|
|
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
|
|
>
|
|
|
|
<path
|
|
|
|
fill-rule="evenodd"
|
|
|
|
clip-rule="evenodd"
|
|
|
|
d="M20.5355 3.46447C19.0711 2 16.714 2 12 2C7.28595 2 4.92893 2 3.46447 3.46447C2 4.92893 2 7.28595 2 12C2 16.714 2 19.0711 3.46447 20.5355C4.92893 22 7.28595 22 12 22C16.714 22 19.0711 22 20.5355 20.5355C22 19.0711 22 16.714 22 12C22 7.28595 22 4.92893 20.5355 3.46447ZM14.0303 8.46967C14.3232 8.76256 14.3232 9.23744 14.0303 9.53033L11.5607 12L14.0303 14.4697C14.3232 14.7626 14.3232 15.2374 14.0303 15.5303C13.7374 15.8232 13.2626 15.8232 12.9697 15.5303L9.96967 12.5303C9.82902 12.3897 9.75 12.1989 9.75 12C9.75 11.8011 9.82902 11.6103 9.96967 11.4697L12.9697 8.46967C13.2626 8.17678 13.7374 8.17678 14.0303 8.46967Z"
|
|
|
|
/>
|
|
|
|
</svg>
|
|
|
|
</a>
|
|
|
|
|
2023-10-10 23:06:12 +00:00
|
|
|
<svg
|
|
|
|
width="32"
|
|
|
|
height="32"
|
2023-10-13 01:16:57 +00:00
|
|
|
class="cursor-pointer hover:text-gray-800 dark:hover:text-gray-100 close-top-bar"
|
2023-10-10 23:06:12 +00:00
|
|
|
viewBox="0 0 24 24"
|
|
|
|
fill="currentColor"
|
|
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
|
|
>
|
|
|
|
<path
|
|
|
|
fill-rule="evenodd"
|
|
|
|
clip-rule="evenodd"
|
2023-10-13 01:16:57 +00:00
|
|
|
d="M12 22C7.28595 22 4.92893 22 3.46447 20.5355C2 19.0711 2 16.714 2 12C2 7.28595 2 4.92893 3.46447 3.46447C4.92893 2 7.28595 2 12 2C16.714 2 19.0711 2 20.5355 3.46447C22 4.92893 22 7.28595 22 12C22 16.714 22 19.0711 20.5355 20.5355C19.0711 22 16.714 22 12 22ZM8.96965 8.96967C9.26254 8.67678 9.73742 8.67678 10.0303 8.96967L12 10.9394L13.9696 8.96969C14.2625 8.6768 14.7374 8.6768 15.0303 8.96969C15.3232 9.26258 15.3232 9.73746 15.0303 10.0303L13.0606 12L15.0303 13.9697C15.3232 14.2625 15.3232 14.7374 15.0303 15.0303C14.7374 15.3232 14.2625 15.3232 13.9696 15.0303L12 13.0607L10.0303 15.0303C9.73744 15.3232 9.26256 15.3232 8.96967 15.0303C8.67678 14.7374 8.67678 14.2626 8.96967 13.9697L10.9393 12L8.96965 10.0303C8.67676 9.73744 8.67676 9.26256 8.96965 8.96967Z"
|
2023-10-10 23:06:12 +00:00
|
|
|
/>
|
|
|
|
</svg>
|
|
|
|
</div>
|
2023-10-13 01:16:57 +00:00
|
|
|
|
|
|
|
<div class="flex gap-10 h-full p-4 pl-14 rounded">
|
|
|
|
<div class="h-full my-auto relative">
|
2023-10-29 00:07:24 +00:00
|
|
|
<a href="#">
|
|
|
|
<img
|
|
|
|
class="rounded object-cover h-full"
|
|
|
|
src="/assets/images/no-cover.jpg"
|
|
|
|
/>
|
2023-10-13 01:16:57 +00:00
|
|
|
</a>
|
|
|
|
</div>
|
|
|
|
<div class="flex gap-7 justify-around dark:text-white text-sm">
|
|
|
|
<div class="flex flex-col gap-4">
|
|
|
|
<div class="inline-flex shrink-0 items-center">
|
|
|
|
<div>
|
|
|
|
<p class="text-gray-400">Title</p>
|
|
|
|
<p
|
|
|
|
class="font-medium whitespace-nowrap text-ellipsis overflow-hidden max-w-[50dvw]"
|
|
|
|
>
|
2023-10-29 00:07:24 +00:00
|
|
|
"N/A"
|
2023-10-13 01:16:57 +00:00
|
|
|
</p>
|
|
|
|
</div>
|
2023-10-10 23:06:12 +00:00
|
|
|
</div>
|
2023-10-13 01:16:57 +00:00
|
|
|
<div class="inline-flex shrink-0 items-center">
|
|
|
|
<div>
|
|
|
|
<p class="text-gray-400">Author</p>
|
|
|
|
<p
|
|
|
|
class="font-medium whitespace-nowrap text-ellipsis overflow-hidden max-w-[50dvw]"
|
|
|
|
>
|
2023-10-29 00:07:24 +00:00
|
|
|
"N/A"
|
2023-10-13 01:16:57 +00:00
|
|
|
</p>
|
|
|
|
</div>
|
2023-10-10 23:06:12 +00:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div
|
|
|
|
id="bottom-bar"
|
2023-10-12 23:14:29 +00:00
|
|
|
class="-bottom-28 transition-all duration-200 absolute z-10 bg-gray-100 dark:bg-gray-800 items-center flex w-full overflow-y-scroll snap-x snap-mandatory no-scrollbar"
|
2023-10-10 23:06:12 +00:00
|
|
|
>
|
|
|
|
<div
|
|
|
|
class="items-center flex flex-col w-screen h-full flex-none snap-center p-2"
|
|
|
|
>
|
|
|
|
<div
|
|
|
|
class="flex flex-wrap gap-2 justify-around w-full dark:text-white pb-2"
|
|
|
|
>
|
|
|
|
<div class="flex justify-center gap-2 w-full md:w-fit">
|
|
|
|
<p class="text-gray-400 text-xs">Chapter:</p>
|
|
|
|
<p id="chapter-name-status" class="text-xs">N/A</p>
|
|
|
|
</div>
|
|
|
|
<div class="inline-flex gap-2">
|
|
|
|
<p class="text-gray-400 text-xs">Chapter Pages:</p>
|
|
|
|
<p id="chapter-status" class="text-xs">N/A</p>
|
|
|
|
</div>
|
|
|
|
<div class="inline-flex gap-2">
|
|
|
|
<p class="text-gray-400 text-xs">Progress:</p>
|
|
|
|
<p id="progress-status" class="text-xs">N/A</p>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="w-[90%] h-2 rounded border border-gray-500">
|
|
|
|
<div
|
|
|
|
id="progress-bar-status"
|
|
|
|
class="w-0 bg-green-200 h-full rounded-l"
|
|
|
|
></div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div
|
|
|
|
class="items-center flex flex-col w-screen h-full flex-none snap-center p-2"
|
|
|
|
>
|
|
|
|
<p class="text-gray-400">Theme</p>
|
|
|
|
<div class="flex justify-around w-full gap-4 p-2 text-sm">
|
|
|
|
<div
|
2023-10-25 23:52:01 +00:00
|
|
|
class="color-scheme cursor-pointer rounded border border-white bg-[#fff] text-[#000] grow text-center"
|
2023-10-10 23:06:12 +00:00
|
|
|
>
|
|
|
|
light
|
|
|
|
</div>
|
|
|
|
<div
|
2023-10-25 23:52:01 +00:00
|
|
|
class="color-scheme cursor-pointer rounded border border-white bg-[#d2b48c] text-[#333] grow text-center"
|
2023-10-10 23:06:12 +00:00
|
|
|
>
|
|
|
|
tan
|
|
|
|
</div>
|
|
|
|
<div
|
2023-10-25 23:52:01 +00:00
|
|
|
class="color-scheme cursor-pointer rounded border border-white bg-[#1f2937] text-[#fff] grow text-center"
|
2023-10-10 23:06:12 +00:00
|
|
|
>
|
|
|
|
blue
|
|
|
|
</div>
|
|
|
|
<div
|
2023-10-25 23:52:01 +00:00
|
|
|
class="color-scheme cursor-pointer rounded border border-white bg-[#232323] text-[#fff] grow text-center"
|
2023-10-10 23:06:12 +00:00
|
|
|
>
|
|
|
|
gray
|
|
|
|
</div>
|
|
|
|
<div
|
2023-10-25 23:52:01 +00:00
|
|
|
class="color-scheme cursor-pointer rounded border border-white bg-[#000] text-[#ccc] grow text-center"
|
2023-10-10 23:06:12 +00:00
|
|
|
>
|
|
|
|
black
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
2023-10-25 23:52:01 +00:00
|
|
|
<div
|
|
|
|
class="items-center flex flex-col w-screen h-full flex-none snap-center p-2"
|
|
|
|
>
|
|
|
|
<p class="text-gray-400">Font</p>
|
|
|
|
<div class="flex justify-around w-full gap-4 p-2 text-sm">
|
|
|
|
<div
|
|
|
|
class="font-family cursor-pointer rounded border border-white grow text-center dark:text-white"
|
|
|
|
>
|
|
|
|
Serif
|
|
|
|
</div>
|
|
|
|
<div
|
|
|
|
class="font-family cursor-pointer rounded border border-white grow text-center dark:text-white"
|
|
|
|
>
|
|
|
|
Open Sans
|
|
|
|
</div>
|
|
|
|
<div
|
|
|
|
class="font-family cursor-pointer rounded border border-white grow text-center dark:text-white"
|
|
|
|
>
|
|
|
|
Arbutus Slab
|
|
|
|
</div>
|
|
|
|
<div
|
|
|
|
class="font-family cursor-pointer rounded border border-white grow text-center dark:text-white"
|
|
|
|
>
|
|
|
|
Lato
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div
|
|
|
|
class="items-center flex flex-col w-screen h-full flex-none snap-center p-2"
|
|
|
|
>
|
|
|
|
<p class="text-gray-400">Font Size</p>
|
|
|
|
<div class="flex justify-around w-full gap-4 p-2 text-sm">
|
|
|
|
<div
|
|
|
|
class="font-size cursor-pointer rounded border border-white grow text-center dark:text-white"
|
|
|
|
>
|
|
|
|
-
|
|
|
|
</div>
|
|
|
|
<div
|
|
|
|
class="font-size cursor-pointer rounded border border-white grow text-center dark:text-white"
|
|
|
|
>
|
|
|
|
+
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
2023-10-10 23:06:12 +00:00
|
|
|
</div>
|
2023-10-29 00:07:24 +00:00
|
|
|
<div id="viewer" class="w-full h-full"></div>
|
2023-10-10 23:06:12 +00:00
|
|
|
</main>
|
|
|
|
</body>
|
|
|
|
</html>
|