html-flip-book-react 0.0.0-alpha.47 → 0.0.0-alpha.49
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/FlipBook.d.ts +5 -2
- package/dist/FlipBook.d.ts.map +1 -1
- package/dist/assets/html-flip-book.css +1 -1
- package/dist/flip-book.js +207 -158
- package/dist/flip-book.js.map +1 -1
- package/dist/toolbar/BookmarkToggleButton.d.ts +8 -0
- package/dist/toolbar/BookmarkToggleButton.d.ts.map +1 -0
- package/dist/toolbar/DownloadDropdown.d.ts.map +1 -1
- package/dist/toolbar/index.d.ts +2 -0
- package/dist/toolbar/index.d.ts.map +1 -1
- package/dist/toolbar/index.js +421 -389
- package/dist/toolbar/index.js.map +1 -1
- package/package.json +2 -2
package/dist/FlipBook.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { type HistoryMapper, type MouseMode, type PageFlipParams, type PageSemantics } from "html-flip-book-vanilla";
|
|
1
|
+
import { type BookmarkProvider as BaseBookmarkProvider, type HistoryMapper, type MouseMode, type PageFlipParams, type PageSemantics } from "html-flip-book-vanilla";
|
|
2
2
|
import "../../base/src/mouse-mode.scss";
|
|
3
3
|
import type { DownloadConfig } from "html-flip-book-vanilla/download";
|
|
4
4
|
import type React from "react";
|
|
5
|
+
export type BookmarkProvider = BaseBookmarkProvider<React.ReactNode>;
|
|
5
6
|
export interface FlipBookHandle {
|
|
6
7
|
flipNext: () => Promise<void>;
|
|
7
8
|
flipPrev: () => Promise<void>;
|
|
@@ -36,6 +37,8 @@ export interface FlipBookProps {
|
|
|
36
37
|
pages: React.ReactNode[];
|
|
37
38
|
className: string;
|
|
38
39
|
pageSemantics?: PageSemantics;
|
|
40
|
+
bookmarkProvider?: BookmarkProvider;
|
|
41
|
+
enableBookmarks?: boolean;
|
|
39
42
|
debug?: boolean;
|
|
40
43
|
direction?: "rtl" | "ltr";
|
|
41
44
|
mouseMode?: MouseMode;
|
|
@@ -64,7 +67,7 @@ export interface FlipBookProps {
|
|
|
64
67
|
}
|
|
65
68
|
declare const FlipBookReact: React.ForwardRefExoticComponent<FlipBookProps & React.RefAttributes<FlipBookHandle>>;
|
|
66
69
|
export { FlipBookReact as FlipBook };
|
|
67
|
-
export type { FlipPageSemantic, HistoryMapper, MouseMode, PageFlipParams, PageSemantics, } from "html-flip-book-vanilla";
|
|
70
|
+
export type { Bookmark, BookmarkContext, BookmarkPlacement, FlipPageSemantic, HistoryMapper, MouseMode, PageFlipParams, PageSemantics, } from "html-flip-book-vanilla";
|
|
68
71
|
export type { TocEntry, TocPageProps } from "./TocPage";
|
|
69
72
|
export { TocPage } from "./TocPage";
|
|
70
73
|
//# sourceMappingURL=FlipBook.d.ts.map
|
package/dist/FlipBook.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlipBook.d.ts","sourceRoot":"","sources":["../src/FlipBook.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"FlipBook.d.ts","sourceRoot":"","sources":["../src/FlipBook.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.flipbook--select-text .page:not(.page--flipping){-webkit-user-select:text;user-select:text}.toc-page{background-color:#fffef8;font-family:inherit;line-height:1.6;height:100%;box-sizing:border-box;container-type:inline-size;overflow:hidden;display:flex;flex-direction:column;padding:8% 6%}.toc-page__scroll{flex:1;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto}.toc-heading{text-align:center;overflow-wrap:anywhere;margin-bottom:24px;color:#2c1810;font-size:1.4rem;border-bottom:none}.toc-list{list-style:none;padding:0;margin:0}.toc-list li{margin-bottom:8px}.toc-link{display:flex;flex-direction:row;align-items:baseline;width:100%;box-sizing:border-box;padding:8px 4px;background:none;border:none;cursor:pointer;font-family:inherit;font-size:.75em;text-align:inherit;color:inherit;text-decoration:none;transition:background-color .15s ease}.toc-link:hover{background-color:#0000000d}.toc-link:focus{outline:2px solid #1a3a5c;outline-offset:2px}.toc-title{flex:0 1 auto;min-width:0;overflow-wrap:anywhere}.toc-dots{flex-grow:1;border-bottom:1px dotted #999;margin:0 8px;min-width:20px}.toc-page-num{flex-shrink:0;white-space:nowrap;font-weight:600;color:#1a3a5c}@container (max-width: 160px){.toc-link{flex-wrap:wrap}.toc-title{flex-basis:100%}.toc-dots{min-width:0;margin:0;margin-inline-end:8px}}.flipbook-toolbar-download-wrap{position:relative;display:inline-flex}.flipbook-toolbar-download-trigger{display:flex;align-items:center;justify-content:center}.flipbook-toolbar-download-menu{position:absolute;top:100%;inset-inline-end:0;inset-inline-start:auto;margin-top:6px;min-width:min(320px,90vw);width:max-content;max-width:min(400px,95vw);max-height:min(70vh,480px);overflow-y:auto;padding:8px 0;background-color:#18181cfa;border-radius:12px;box-shadow:0 8px 30px #00000059,0 1px 3px #00000026;z-index:10000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.flipbook-toolbar-download-menu--open-up{top:auto;bottom:100%;margin-top:0;margin-bottom:6px}.flipbook-toolbar-download-mode{display:flex;flex-direction:column;gap:2px;padding:4px 8px;border:none;margin:0;min-width:0}.flipbook-toolbar-download-radio-label{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;color:#ffffffeb;font-size:14px;cursor:pointer;transition:background-color .15s ease;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;min-width:0}.flipbook-toolbar-download-radio-label span{flex:0 1 auto;min-width:min-content;overflow:visible;white-space:nowrap}.flipbook-toolbar-download-radio-label:hover{background-color:#ffffff14}.flipbook-toolbar-download-radio-label:active{background-color:#ffffff1f}.flipbook-toolbar-download-radio{width:18px;height:18px;accent-color:#6ea8fe;flex-shrink:0}.flipbook-toolbar-download-range{display:flex;flex-wrap:wrap;flex-direction:row;align-items:center;gap:10px;padding:12px 16px;border-top:1px solid rgba(255,255,255,.1);margin-top:4px}.flipbook-toolbar-download-range-label{display:inline-flex;align-items:center;gap:8px;color:#ffffffbf;font-size:13px;font-weight:500;letter-spacing:.02em;text-transform:uppercase}.flipbook-toolbar-download-range-select{padding:8px 10px;border-radius:8px;border:1px solid rgba(255,255,255,.18);background:#ffffff0f;color:#fff;font-family:inherit;font-size:14px;min-width:5ch;text-align:start;direction:inherit;transition:border-color .15s ease;outline:none}.flipbook-toolbar-download-range-select:focus{border-color:#6ea8fe99}.flipbook-toolbar-download-range-select option{color:#000;background:#fff}.flipbook-toolbar-download-menuitem{display:block;width:calc(100% - 16px);margin:4px 8px 0;padding:12px 16px;border:none;background:#6ea8fe2e;color:#6ea8fe;font-family:inherit;font-size:14px;font-weight:600;text-align:center;cursor:pointer;border-radius:8px;transition:background-color .15s ease,transform .1s ease;-webkit-tap-highlight-color:transparent}.flipbook-toolbar-download-menuitem:hover:not(:disabled){background-color:#6ea8fe47}.flipbook-toolbar-download-menuitem:active:not(:disabled){transform:scale(.97);background-color:#6ea8fe59}.flipbook-toolbar-download-menuitem:disabled{opacity:.5;cursor:not-allowed}.flipbook-toolbar-download-primary{margin-top:8px}.flipbook-toolbar-download-range-download{padding:10px 16px;border:none;border-radius:8px;background:#ffffff26;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .15s ease}.flipbook-toolbar-download-range-download:hover:not(:disabled){background:#ffffff40}.flipbook-toolbar-download-range-download:disabled{opacity:.5;cursor:not-allowed}.flipbook-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 16px;min-height:48px;box-sizing:border-box;background-color:#000000b3;border-radius:8px;-webkit-user-select:none;user-select:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.flipbook-toolbar-start{display:flex;align-items:center;gap:8px;flex:1;justify-content:flex-start}.flipbook-toolbar-nav-cluster{display:flex;align-items:center;gap:8px;flex-shrink:0}.flipbook-toolbar--rtl .flipbook-toolbar-button>*{transform:scaleX(-1)}.flipbook-toolbar--rtl .flipbook-toolbar-mouse-mode>*{transform:none}.flipbook-toolbar-end{display:flex;align-items:center;gap:8px;flex:1;justify-content:flex-end}.flipbook-toolbar-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:none;border-radius:6px;background-color:transparent;color:#fff;font-size:20px;cursor:pointer;transition:background-color .2s ease,opacity .2s ease}.flipbook-toolbar-button:hover:not(:disabled){background-color:#ffffff26}.flipbook-toolbar-button:active:not(:disabled){background-color:#ffffff40}.flipbook-toolbar-button:focus-visible{outline:2px solid #fff;outline-offset:2px}.flipbook-toolbar-button:disabled{opacity:.4;cursor:not-allowed}.flipbook-toolbar-mouse-mode[aria-pressed=true]{background-color:#ffffff40}.flipbook-toolbar-mouse-mode-icon{display:inline-flex;align-items:center;gap:3px;font-size:15px;font-weight:600;line-height:1}.flipbook-toolbar-mouse-mode-caret{display:inline-block;width:9px;height:18px;background:currentColor;-webkit-mask:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAJhElEQVR4AeybbcjdcxjHzzBkaxYhRiuWCe9JvOAFtXgxUlprylMolBbl4Y2nSIuIF7LMQ0qNQk0hpWhee2Wb8QJtJDYbyTDfq+5jk3Ofh9//4Xf9ftdnXdf9/5/7/H+/67o+3/O977Nzzn3EgH8QgMC8BDDIvGi4AwKDAQbhUQCBMQQwyBg43AUBDMJjAAJjCHRokDFVuQsChRDAIIUIRZt5CGCQPNypWggBDFKIULSZhwAGycOdqoUQKNMgzeEu1Rb3KD9T7lce7DEPqNYO5XPK85TzxQLdcZXyLeVu5d/KPvu0WvtUc6tyvXKJMlxENMgqqbxd+YTyAuUiZZ9xlIqtUN6u/Fz5uPJI5eFxim58qHxHuVppt80wOu01Fqvahconlcbsch1DRTSDXC1131WepPQQxv9eNbJJOTTAyTr/RHmZ0lOYSbeoIfutpkOMMIFiTDoYLNegryg9zrxWfd2iNJNs1NF+w+jgLuw33WvqapkyRHh8sHQF/gFt3PfTKZWcOh7SlZcqr1R6Dvu/yH2eG2yztygGWSho1yknRsYL7KnVCxnrz1J6jS623yY61B1RDLJSMtp/OHVwHWe57u5Qc/YqYCm9Huo64SyKQU5IYMOS8QROHH93HfdGMcjeOuRyNcUeV9101EwUg2wTv9+VRDsE7M3VL9vZyvcuUQxi5ngzsxQ1ld+sYewTATrUHVEMYio+rC9/KIlmBOyHzSPNtihndSSD2NMs+3hHOer47NTe0Nzps7X2u4pkEKNn71Kv08mvSmI2AvbBRXsv6dXZlpV9dTSDmFomsL0vskE3vlYS4wl8pbvtw4rG7A2dh4qIBjGBv9MX+wj3mTrax09O1bGvfEm1UsM+Ij+iz0FX3zM29oag/WnArtSmS14X1SCHa/abbtjfW/SVVk8lk8JeXu2rT6vTpNekAb0twiDeFKEfVwQwiCs5aMYbAQziTRH6cUUAg7iSw2EzwVvCIMEfAIw/ngAGGc+He4MTwCDBHwCMP54ABhnPh3uDE8AgwR8AOccvoTYGKUElesxGAINkQ0/hEghgkBJUosdsBDBINvQULoEABilBJXqclUBr12OQ1lCyUY0EMEiNqjJTawQwSGso2ahGAhikRlWZqTUCGKQ1lGxUI4H/G6TGKZkJAokEMEgiOJbFIIBBYujMlIkEMEgiOJbFIIBBYujMlIkEejVIYo8sg0A2AhgkG3oKl0AAg5SgEj1mI4BBsqGncAkEMEgJKtFjNgK1GCQbQArXTQCD1K0v0zUkgEEaAmR53QQwSN36Ml1DAhikIUCW100Ag0zUlwsiE8AgkdVn9okEMMhERFwQmQAGiaw+s08kgEEmIuKCyAQwSE71qe2eAAZxLxEN5iSAQXLSp7Z7AhjEvUQ0mJMABslJn9ruCWAQ9xKlNciqdghgkHY4skulBDBIpcIyVjsEMEg7HNmlUgIYpFJhGasdAhikHY6Rdgk1KwYJJTfDzkoAg8xKjOtDEcAgoeRm2FkJYJBZiXF9KAIYJJTc3of11x8G8acJHTkigEEciUEr/ghgEH+a0JEjAhjEkRi04o8ABvGnCR11QSBxTwySCI5lMQhgkBg6M2UiAQySCI5lMQhgkBg6M2UiAQySCI5lMQhMY5AYJJgSAiMIYJARUPgWBIYEMMiQBEcIjCCAQUZA4VsQGBLAIEMSHCEwgkBmg4zoiG9BwBEBDOJIDFrxRwCD+NOEjhwRwCCOxKAVfwQwiD9N6MgRgXoN4ggyrZRLAIOUqx2d90AAg/QAmRLlEsAg5WpH5z0QwCA9QKZEuQQwSIJ2LIlDAIPE0ZpJEwhgkARoLIlDAIPE0ZpJEwhgkARoLIlDAIP40ppunBHAIM4EoR1fBDCILz3oxhkBDOJMENrxRQCD+NKDbpwRwCDOBOmuHXZOIYBBUqixJgwBDBJGagZNIYBBUqixJgwBDBJGagZNIYBBUqix5r8EKr6FQSoWl9GaE8AgzRmyQ8UEMEjF4jJacwIYpDlDdqiYAAapWNwaRss9AwbJrQD1XRPAIK7lobncBDBIbgWo75oABnEtD83lJoBBcitA/VwEpqqLQabCxEVRCWCQqMoz91QEMMhUmLgoKgEMElV55p6KAAaZChMXRSWQZpCotJg7HAEMEk5yBp6FAAaZhRbXhiOAQcJJzsCzEMAgs9Di2nAE3BkknAIM7JoABnEtD83lJoBBcitAfdcEMIhreWguNwEMklsB6rsmEMkgroWgOZ8EMIhPXejKCQEM4kQI2vBJAIP41IWunBDAIE6EoA2fBDBIK7qwSa0EMEityjJXKwQwSCsY2aRWAhikVmWZqxUCGKQVjGxSKwEM4l1Z+stKAINkxU9x7wQwiHeF6C8rAQySFT/FvRPAIN4Vor+sBDBIVvx5i1N9MgEMMpkRVwQmgEECi8/okwlgkMmMuCIwAQwSWHxGn0wAg0xmxBWzE6hmBQapRkoG6YIABumCKntWQwCDVCMlg3RBAIN0QZU9qyGAQaqRMsog/c6JQQaDpYPB4PQec7FqpcYSLeyz1+NVL3RENchyqf6M8lvlz8pveszrVSs1btPCPnvdM1fvaR3PUIaLiAa5USp/obxDuUxJjCdgv7Hu0iXGbJ2OoSKaQW6Vui8qj1USsxE4Tpe/rLxBGSYiGeRcqWpPq3QgGhB4XmvPVtYXIyaKZJAHNf9CJdGMwDFafr8yREQxiD2lWh1C0X6GvEZljlZWH1EMco6UtJ98OhAtEFikPVYoq48oBrH3D6oXs+cBQzCNYpCfen7wRCgXgmlbBvH+gNimBvcpvccO7w3O9Wfm2Dl3XvUhikEOSMXXlZ5jt5q7WVlCGMu/Smi0aY9RDGKcHtWX/UqvYS9Df6zm3lZ6jr1q7jFliIhkEPsM01qp6vEn3yb1tVFpcZO+bFd6jD/V1BrlLmWIiGQQE9R+Oq/SyfdKD2FmtZ/GZoqDcw39qOMlyg+UnsJMcYUa2qIMEwUYpHUt3teO9lGJ9TpuVf6i7DPs/0P2osGzKnq+0t6VNqPo9N/4QWf2YDQzb9a5PTiHBtLN3sLYfKpqdytXKj9ShoqIBjGBTfgNOrlIaX/zsEDHvtLegbY3Lu9UTfuErA4jwwzxnu65Vnma0rTqq8dhHWNzsWo/pSzhVUC12W4Y9HZ3ZDcIVEQAg1QkJqO0TwCDtM+UHSsiENsgFQnJKN0QwCDdcGXXSghgkEqEZIxuCGCQbriyayUEMEglQjJGNwQwSDdcB2xbB4F/AAAA//+MPdD+AAAABklEQVQDAIIYJKDEOaVYAAAAAElFTkSuQmCC) center / 18px 18px no-repeat;mask:url(data:image/png;base64,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) center / 18px 18px no-repeat}.flipbook-toolbar-prev,.flipbook-toolbar-next{font-size:28px;font-weight:700}.flipbook-toolbar-first,.flipbook-toolbar-last{font-size:16px}.flipbook-toolbar-fullscreen{font-size:18px}.flipbook-toolbar-fullscreen--active{background-color:#ffffff1a}.flipbook-toc-icon--flip-h{transform:scaleX(-1)}span.flipbook-toolbar-indicator{display:inline-flex;align-items:center;justify-content:center;color:inherit;font-size:14px;font-weight:500;text-align:center;padding:0 4px;white-space:nowrap}input.flipbook-toolbar-indicator{display:inline-block;font-family:inherit;font-size:14px;font-weight:500;text-align:center;box-sizing:border-box;border:1px solid transparent;border-radius:4px;padding:4px 8px;min-width:3ch;color:inherit;white-space:nowrap;transition:background-color .2s ease,color .2s ease}input.flipbook-toolbar-indicator--editing{background:#fff;color:#1a1a1a}input.flipbook-toolbar-indicator:focus{outline:2px solid currentColor;outline-offset:2px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
|
|
1
|
+
.flipbook--select-text .page:not(.page--flipping){-webkit-user-select:text;user-select:text}.toc-page{background-color:#fffef8;font-family:inherit;line-height:1.6;height:100%;box-sizing:border-box;container-type:inline-size;overflow:hidden;display:flex;flex-direction:column;padding:8% 6%}.toc-page__scroll{flex:1;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto}.flipbook-page-content .toc-page__scroll{flex:0 0 auto;overflow:visible}.toc-heading{text-align:center;overflow-wrap:anywhere;margin-bottom:24px;color:#2c1810;font-size:1.4rem;border-bottom:none}.toc-list{list-style:none;padding:0;margin:0}.toc-list li{margin-bottom:8px}.toc-link{display:flex;flex-direction:row;align-items:baseline;width:100%;box-sizing:border-box;padding:8px 4px;background:none;border:none;cursor:pointer;font-family:inherit;font-size:.75em;text-align:inherit;color:inherit;text-decoration:none;transition:background-color .15s ease}.toc-link:hover{background-color:#0000000d}.toc-link:focus{outline:2px solid #1a3a5c;outline-offset:2px}.toc-title{flex:0 1 auto;min-width:0;overflow-wrap:anywhere}.toc-dots{flex-grow:1;border-bottom:1px dotted #999;margin:0 8px;min-width:20px}.toc-page-num{flex-shrink:0;white-space:nowrap;font-weight:600;color:#1a3a5c}@container (max-width: 160px){.toc-link{flex-wrap:wrap}.toc-title{flex-basis:100%}.toc-dots{min-width:0;margin:0;margin-inline-end:8px}}.flipbook-toolbar-download-wrap{position:relative;display:inline-flex}.flipbook-toolbar-download-trigger{display:flex;align-items:center;justify-content:center}.flipbook-toolbar-download-menu{position:fixed;margin:0;box-sizing:border-box;min-width:min(320px,90vw);width:max-content;max-width:min(400px,95vw);max-height:min(70vh,480px);overflow-y:auto;padding:8px 0;background-color:#18181cfa;border-radius:12px;box-shadow:0 8px 30px #00000059,0 1px 3px #00000026;z-index:10000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.flipbook-toolbar-download-menu--open-up{margin:0}.flipbook-toolbar-download-mode{display:flex;flex-direction:column;gap:2px;padding:4px 8px;border:none;margin:0;min-width:0}.flipbook-toolbar-download-radio-label{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;color:#ffffffeb;font-size:14px;cursor:pointer;transition:background-color .15s ease;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;min-width:0}.flipbook-toolbar-download-radio-label span{flex:0 1 auto;min-width:min-content;overflow:visible;white-space:nowrap}.flipbook-toolbar-download-radio-label:hover{background-color:#ffffff14}.flipbook-toolbar-download-radio-label:active{background-color:#ffffff1f}.flipbook-toolbar-download-radio{width:18px;height:18px;accent-color:#6ea8fe;flex-shrink:0}.flipbook-toolbar-download-range{display:flex;flex-wrap:wrap;flex-direction:row;align-items:center;gap:10px;padding:12px 16px;border-top:1px solid rgba(255,255,255,.1);margin-top:4px}.flipbook-toolbar-download-range-label{display:inline-flex;align-items:center;gap:8px;color:#ffffffbf;font-size:13px;font-weight:500;letter-spacing:.02em;text-transform:uppercase}.flipbook-toolbar-download-range-select{padding:8px 10px;border-radius:8px;border:1px solid rgba(255,255,255,.18);background:#ffffff0f;color:#fff;font-family:inherit;font-size:14px;min-width:5ch;text-align:start;direction:inherit;transition:border-color .15s ease;outline:none}.flipbook-toolbar-download-range-select:focus{border-color:#6ea8fe99}.flipbook-toolbar-download-range-select option{color:#000;background:#fff}.flipbook-toolbar-download-menuitem{display:block;width:calc(100% - 16px);margin:4px 8px 0;padding:12px 16px;border:none;background:#6ea8fe2e;color:#6ea8fe;font-family:inherit;font-size:14px;font-weight:600;text-align:center;cursor:pointer;border-radius:8px;transition:background-color .15s ease,transform .1s ease;-webkit-tap-highlight-color:transparent}.flipbook-toolbar-download-menuitem:hover:not(:disabled){background-color:#6ea8fe47}.flipbook-toolbar-download-menuitem:active:not(:disabled){transform:scale(.97);background-color:#6ea8fe59}.flipbook-toolbar-download-menuitem:disabled{opacity:.5;cursor:not-allowed}.flipbook-toolbar-download-primary{margin-top:8px}.flipbook-toolbar-download-range-download{padding:10px 16px;border:none;border-radius:8px;background:#ffffff26;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .15s ease}.flipbook-toolbar-download-range-download:hover:not(:disabled){background:#ffffff40}.flipbook-toolbar-download-range-download:disabled{opacity:.5;cursor:not-allowed}.flipbook-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 16px;min-height:48px;box-sizing:border-box;background-color:#000000b3;border-radius:8px;-webkit-user-select:none;user-select:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.flipbook-toolbar-start{display:flex;align-items:center;gap:8px;flex:1;justify-content:flex-start}.flipbook-toolbar-nav-cluster{display:flex;align-items:center;gap:8px;flex-shrink:0}.flipbook-toolbar--rtl .flipbook-toolbar-button>*{transform:scaleX(-1)}.flipbook-toolbar--rtl .flipbook-toolbar-mouse-mode>*{transform:none}.flipbook-toolbar-end{display:flex;align-items:center;gap:8px;flex:1;justify-content:flex-end}.flipbook-toolbar-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:none;border-radius:6px;background-color:transparent;color:#fff;font-size:20px;cursor:pointer;transition:background-color .2s ease,opacity .2s ease}.flipbook-toolbar-button:hover:not(:disabled){background-color:#ffffff26}.flipbook-toolbar-button:active:not(:disabled){background-color:#ffffff40}.flipbook-toolbar-button:focus-visible{outline:2px solid #fff;outline-offset:2px}.flipbook-toolbar-button:disabled{opacity:.4;cursor:not-allowed}.flipbook-toolbar-mouse-mode[aria-pressed=true]{background-color:#ffffff40}.flipbook-toolbar-mouse-mode-icon{display:inline-flex;align-items:center;gap:3px;font-size:15px;font-weight:600;line-height:1}.flipbook-toolbar-mouse-mode-caret{display:inline-block;width:9px;height:18px;background:currentColor;-webkit-mask:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAJhElEQVR4AeybbcjdcxjHzzBkaxYhRiuWCe9JvOAFtXgxUlprylMolBbl4Y2nSIuIF7LMQ0qNQk0hpWhee2Wb8QJtJDYbyTDfq+5jk3Ofh9//4Xf9ftdnXdf9/5/7/H+/67o+3/O977Nzzn3EgH8QgMC8BDDIvGi4AwKDAQbhUQCBMQQwyBg43AUBDMJjAAJjCHRokDFVuQsChRDAIIUIRZt5CGCQPNypWggBDFKIULSZhwAGycOdqoUQKNMgzeEu1Rb3KD9T7lce7DEPqNYO5XPK85TzxQLdcZXyLeVu5d/KPvu0WvtUc6tyvXKJMlxENMgqqbxd+YTyAuUiZZ9xlIqtUN6u/Fz5uPJI5eFxim58qHxHuVppt80wOu01Fqvahconlcbsch1DRTSDXC1131WepPQQxv9eNbJJOTTAyTr/RHmZ0lOYSbeoIfutpkOMMIFiTDoYLNegryg9zrxWfd2iNJNs1NF+w+jgLuw33WvqapkyRHh8sHQF/gFt3PfTKZWcOh7SlZcqr1R6Dvu/yH2eG2yztygGWSho1yknRsYL7KnVCxnrz1J6jS623yY61B1RDLJSMtp/OHVwHWe57u5Qc/YqYCm9Huo64SyKQU5IYMOS8QROHH93HfdGMcjeOuRyNcUeV9101EwUg2wTv9+VRDsE7M3VL9vZyvcuUQxi5ngzsxQ1ld+sYewTATrUHVEMYio+rC9/KIlmBOyHzSPNtihndSSD2NMs+3hHOer47NTe0Nzps7X2u4pkEKNn71Kv08mvSmI2AvbBRXsv6dXZlpV9dTSDmFomsL0vskE3vlYS4wl8pbvtw4rG7A2dh4qIBjGBv9MX+wj3mTrax09O1bGvfEm1UsM+Ij+iz0FX3zM29oag/WnArtSmS14X1SCHa/abbtjfW/SVVk8lk8JeXu2rT6vTpNekAb0twiDeFKEfVwQwiCs5aMYbAQziTRH6cUUAg7iSw2EzwVvCIMEfAIw/ngAGGc+He4MTwCDBHwCMP54ABhnPh3uDE8AgwR8AOccvoTYGKUElesxGAINkQ0/hEghgkBJUosdsBDBINvQULoEABilBJXqclUBr12OQ1lCyUY0EMEiNqjJTawQwSGso2ahGAhikRlWZqTUCGKQ1lGxUI4H/G6TGKZkJAokEMEgiOJbFIIBBYujMlIkEMEgiOJbFIIBBYujMlIkEejVIYo8sg0A2AhgkG3oKl0AAg5SgEj1mI4BBsqGncAkEMEgJKtFjNgK1GCQbQArXTQCD1K0v0zUkgEEaAmR53QQwSN36Ml1DAhikIUCW100Ag0zUlwsiE8AgkdVn9okEMMhERFwQmQAGiaw+s08kgEEmIuKCyAQwSE71qe2eAAZxLxEN5iSAQXLSp7Z7AhjEvUQ0mJMABslJn9ruCWAQ9xKlNciqdghgkHY4skulBDBIpcIyVjsEMEg7HNmlUgIYpFJhGasdAhikHY6Rdgk1KwYJJTfDzkoAg8xKjOtDEcAgoeRm2FkJYJBZiXF9KAIYJJTc3of11x8G8acJHTkigEEciUEr/ghgEH+a0JEjAhjEkRi04o8ABvGnCR11QSBxTwySCI5lMQhgkBg6M2UiAQySCI5lMQhgkBg6M2UiAQySCI5lMQhMY5AYJJgSAiMIYJARUPgWBIYEMMiQBEcIjCCAQUZA4VsQGBLAIEMSHCEwgkBmg4zoiG9BwBEBDOJIDFrxRwCD+NOEjhwRwCCOxKAVfwQwiD9N6MgRgXoN4ggyrZRLAIOUqx2d90AAg/QAmRLlEsAg5WpH5z0QwCA9QKZEuQQwSIJ2LIlDAIPE0ZpJEwhgkARoLIlDAIPE0ZpJEwhgkARoLIlDAIP40ppunBHAIM4EoR1fBDCILz3oxhkBDOJMENrxRQCD+NKDbpwRwCDOBOmuHXZOIYBBUqixJgwBDBJGagZNIYBBUqixJgwBDBJGagZNIYBBUqix5r8EKr6FQSoWl9GaE8AgzRmyQ8UEMEjF4jJacwIYpDlDdqiYAAapWNwaRss9AwbJrQD1XRPAIK7lobncBDBIbgWo75oABnEtD83lJoBBcitA/VwEpqqLQabCxEVRCWCQqMoz91QEMMhUmLgoKgEMElV55p6KAAaZChMXRSWQZpCotJg7HAEMEk5yBp6FAAaZhRbXhiOAQcJJzsCzEMAgs9Di2nAE3BkknAIM7JoABnEtD83lJoBBcitAfdcEMIhreWguNwEMklsB6rsmEMkgroWgOZ8EMIhPXejKCQEM4kQI2vBJAIP41IWunBDAIE6EoA2fBDBIK7qwSa0EMEityjJXKwQwSCsY2aRWAhikVmWZqxUCGKQVjGxSKwEM4l1Z+stKAINkxU9x7wQwiHeF6C8rAQySFT/FvRPAIN4Vor+sBDBIVvx5i1N9MgEMMpkRVwQmgEECi8/okwlgkMmMuCIwAQwSWHxGn0wAg0xmxBWzE6hmBQapRkoG6YIABumCKntWQwCDVCMlg3RBAIN0QZU9qyGAQaqRMsog/c6JQQaDpYPB4PQec7FqpcYSLeyz1+NVL3RENchyqf6M8lvlz8pveszrVSs1btPCPnvdM1fvaR3PUIaLiAa5USp/obxDuUxJjCdgv7Hu0iXGbJ2OoSKaQW6Vui8qj1USsxE4Tpe/rLxBGSYiGeRcqWpPq3QgGhB4XmvPVtYXIyaKZJAHNf9CJdGMwDFafr8yREQxiD2lWh1C0X6GvEZljlZWH1EMco6UtJ98OhAtEFikPVYoq48oBrH3D6oXs+cBQzCNYpCfen7wRCgXgmlbBvH+gNimBvcpvccO7w3O9Wfm2Dl3XvUhikEOSMXXlZ5jt5q7WVlCGMu/Smi0aY9RDGKcHtWX/UqvYS9Df6zm3lZ6jr1q7jFliIhkEPsM01qp6vEn3yb1tVFpcZO+bFd6jD/V1BrlLmWIiGQQE9R+Oq/SyfdKD2FmtZ/GZoqDcw39qOMlyg+UnsJMcYUa2qIMEwUYpHUt3teO9lGJ9TpuVf6i7DPs/0P2osGzKnq+0t6VNqPo9N/4QWf2YDQzb9a5PTiHBtLN3sLYfKpqdytXKj9ShoqIBjGBTfgNOrlIaX/zsEDHvtLegbY3Lu9UTfuErA4jwwzxnu65Vnma0rTqq8dhHWNzsWo/pSzhVUC12W4Y9HZ3ZDcIVEQAg1QkJqO0TwCDtM+UHSsiENsgFQnJKN0QwCDdcGXXSghgkEqEZIxuCGCQbriyayUEMEglQjJGNwQwSDdcB2xbB4F/AAAA//+MPdD+AAAABklEQVQDAIIYJKDEOaVYAAAAAElFTkSuQmCC) center / 18px 18px no-repeat;mask:url(data:image/png;base64,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) center / 18px 18px no-repeat}.flipbook-toolbar-prev,.flipbook-toolbar-next{font-size:28px;font-weight:700}.flipbook-toolbar-first,.flipbook-toolbar-last{font-size:16px}.flipbook-toolbar-fullscreen{font-size:18px}.flipbook-toolbar-fullscreen--active{background-color:#ffffff1a}.flipbook-toc-icon--flip-h{transform:scaleX(-1)}span.flipbook-toolbar-indicator{display:inline-flex;align-items:center;justify-content:center;color:inherit;font-size:14px;font-weight:500;text-align:center;padding:0 4px;white-space:nowrap}input.flipbook-toolbar-indicator{display:inline-block;font-family:inherit;font-size:14px;font-weight:500;text-align:center;box-sizing:border-box;border:1px solid transparent;border-radius:4px;padding:4px 8px;min-width:3ch;color:inherit;white-space:nowrap;transition:background-color .2s ease,color .2s ease}input.flipbook-toolbar-indicator--editing{background:#fff;color:#1a1a1a}input.flipbook-toolbar-indicator:focus{outline:2px solid currentColor;outline-offset:2px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
|
package/dist/flip-book.js
CHANGED
|
@@ -1,129 +1,133 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import { FlipBook as
|
|
3
|
-
import { forwardRef as
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
1
|
+
import { jsx as c, jsxs as O, Fragment as ae } from "react/jsx-runtime";
|
|
2
|
+
import { FlipBook as ce } from "html-flip-book-vanilla";
|
|
3
|
+
import { forwardRef as le, useState as W, useRef as F, useEffect as S, useImperativeHandle as ie, Children as ue } from "react";
|
|
4
|
+
import { createPortal as de } from "react-dom";
|
|
5
|
+
const pe = (k) => k.title.length > 0, Ie = ({
|
|
6
|
+
onNavigate: k,
|
|
7
|
+
totalPages: d,
|
|
8
|
+
pageSemantics: T,
|
|
9
|
+
heading: B = "Table of Contents",
|
|
10
|
+
className: y,
|
|
11
|
+
direction: p = "ltr",
|
|
12
|
+
filter: $ = pe,
|
|
13
|
+
getHref: g,
|
|
14
|
+
renderEntry: f
|
|
14
15
|
}) => {
|
|
15
|
-
const
|
|
16
|
-
for (let n = 0; n <
|
|
17
|
-
const
|
|
18
|
-
|
|
16
|
+
const x = [];
|
|
17
|
+
for (let n = 0; n < d; n++) {
|
|
18
|
+
const u = T?.indexToTitle(n) ?? "", m = T?.indexToSemanticName(n) ?? "", N = { pageIndex: n, title: u, semanticName: m };
|
|
19
|
+
$(N, n) && x.push(N);
|
|
19
20
|
}
|
|
20
|
-
const
|
|
21
|
-
const
|
|
22
|
-
/* @__PURE__ */
|
|
23
|
-
/* @__PURE__ */
|
|
24
|
-
/* @__PURE__ */
|
|
21
|
+
const L = (n, u, m) => {
|
|
22
|
+
const N = n.title || n.semanticName || `Page ${n.pageIndex + 1}`, D = n.semanticName || String(n.pageIndex + 1), a = /* @__PURE__ */ O(ae, { children: [
|
|
23
|
+
/* @__PURE__ */ c("span", { className: "toc-title", children: N }),
|
|
24
|
+
/* @__PURE__ */ c("span", { className: "toc-dots", "aria-hidden": !0 }),
|
|
25
|
+
/* @__PURE__ */ c("span", { className: "toc-page-num", children: D })
|
|
25
26
|
] });
|
|
26
|
-
return /* @__PURE__ */
|
|
27
|
+
return /* @__PURE__ */ c("li", { children: m ? /* @__PURE__ */ c(
|
|
27
28
|
"a",
|
|
28
29
|
{
|
|
29
|
-
href:
|
|
30
|
+
href: m,
|
|
30
31
|
className: "toc-link",
|
|
31
|
-
onClick: (
|
|
32
|
-
|
|
32
|
+
onClick: (h) => {
|
|
33
|
+
h.button !== 0 || h.ctrlKey || h.metaKey || h.shiftKey || h.altKey || (h.preventDefault(), u());
|
|
33
34
|
},
|
|
34
|
-
children:
|
|
35
|
+
children: a
|
|
35
36
|
}
|
|
36
|
-
) : /* @__PURE__ */
|
|
37
|
+
) : /* @__PURE__ */ c("button", { type: "button", className: "toc-link", onClick: u, children: a }) }, n.pageIndex);
|
|
37
38
|
};
|
|
38
|
-
return /* @__PURE__ */
|
|
39
|
+
return /* @__PURE__ */ c(
|
|
39
40
|
"div",
|
|
40
41
|
{
|
|
41
|
-
className: `toc-page ${
|
|
42
|
-
style: { direction:
|
|
43
|
-
children: /* @__PURE__ */
|
|
44
|
-
/* @__PURE__ */
|
|
45
|
-
/* @__PURE__ */
|
|
46
|
-
const
|
|
47
|
-
return
|
|
42
|
+
className: `toc-page ${y ?? ""}`.trim(),
|
|
43
|
+
style: { direction: p, textAlign: p === "rtl" ? "right" : "left" },
|
|
44
|
+
children: /* @__PURE__ */ O("div", { className: "toc-page__scroll", children: [
|
|
45
|
+
/* @__PURE__ */ c("h2", { className: "toc-heading", children: B }),
|
|
46
|
+
/* @__PURE__ */ c("ul", { className: "toc-list", children: x.map((n) => {
|
|
47
|
+
const u = () => k(n.pageIndex), m = g?.(n) ?? void 0;
|
|
48
|
+
return f ? f(n, u, m) : L(n, u, m);
|
|
48
49
|
}) })
|
|
49
50
|
] })
|
|
50
51
|
}
|
|
51
52
|
);
|
|
52
|
-
},
|
|
53
|
+
}, ge = le(
|
|
53
54
|
({
|
|
54
|
-
pages:
|
|
55
|
-
className:
|
|
56
|
-
debug:
|
|
57
|
-
direction:
|
|
58
|
-
mouseMode:
|
|
59
|
-
mouseModeStorageKey:
|
|
60
|
-
pageSemantics:
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
55
|
+
pages: k,
|
|
56
|
+
className: d,
|
|
57
|
+
debug: T = !1,
|
|
58
|
+
direction: B = "ltr",
|
|
59
|
+
mouseMode: y = "turn",
|
|
60
|
+
mouseModeStorageKey: p,
|
|
61
|
+
pageSemantics: $ = void 0,
|
|
62
|
+
bookmarkProvider: g,
|
|
63
|
+
enableBookmarks: f = !1,
|
|
64
|
+
initialTurnedLeaves: x = [],
|
|
65
|
+
fastDeltaThreshold: L,
|
|
66
|
+
leavesBuffer: n,
|
|
67
|
+
pageShadow: u = !0,
|
|
68
|
+
snapshotDuringFlip: m = !0,
|
|
69
|
+
enableHistory: N,
|
|
70
|
+
enableDownload: D,
|
|
71
|
+
coverConfig: a,
|
|
72
|
+
of: h,
|
|
73
|
+
leafAspectRatio: z,
|
|
74
|
+
coverAspectRatio: G,
|
|
75
|
+
handlers: A,
|
|
76
|
+
historyMapper: J,
|
|
77
|
+
tocPageIndex: K,
|
|
78
|
+
downloadConfig: Q
|
|
79
|
+
}, X) => {
|
|
80
|
+
const [Y, _] = W(() => {
|
|
81
|
+
if (x && x.length > 0) {
|
|
82
|
+
const t = Math.max(...x) * 2 + 1;
|
|
83
|
+
return t >= k.length ? (Math.ceil(k.length / 2) - 1) * 2 : t;
|
|
81
84
|
}
|
|
82
85
|
return 0;
|
|
83
|
-
}),
|
|
84
|
-
|
|
85
|
-
const
|
|
86
|
-
|
|
87
|
-
const
|
|
88
|
-
|
|
86
|
+
}), w = F(_), [Z, U] = W([]);
|
|
87
|
+
w.current = _;
|
|
88
|
+
const j = F(h);
|
|
89
|
+
j.current = h;
|
|
90
|
+
const ee = 80, v = F(null), H = F((e) => {
|
|
91
|
+
w.current?.(e);
|
|
89
92
|
});
|
|
90
|
-
|
|
91
|
-
if (
|
|
92
|
-
|
|
93
|
+
H.current = (e) => {
|
|
94
|
+
if (v.current != null && clearTimeout(v.current), n == null) {
|
|
95
|
+
w.current?.(e);
|
|
93
96
|
return;
|
|
94
97
|
}
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
},
|
|
98
|
-
},
|
|
99
|
-
|
|
98
|
+
v.current = setTimeout(() => {
|
|
99
|
+
v.current = null, w.current?.(e);
|
|
100
|
+
}, ee);
|
|
101
|
+
}, S(() => () => {
|
|
102
|
+
v.current != null && clearTimeout(v.current);
|
|
100
103
|
}, []);
|
|
101
|
-
const s =
|
|
102
|
-
new
|
|
103
|
-
pageSemantics:
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
104
|
+
const s = F(
|
|
105
|
+
new ce({
|
|
106
|
+
pageSemantics: $,
|
|
107
|
+
enableBookmarks: f,
|
|
108
|
+
pagesCount: k.length,
|
|
109
|
+
direction: B,
|
|
110
|
+
mouseMode: y,
|
|
111
|
+
initialTurnedLeaves: x,
|
|
112
|
+
fastDeltaThreshold: L,
|
|
113
|
+
leavesBuffer: n,
|
|
114
|
+
leafAspectRatio: z,
|
|
115
|
+
coverAspectRatio: G,
|
|
116
|
+
coverPageIndices: a?.coverIndices,
|
|
117
|
+
onPageChanged: (e) => H.current(e),
|
|
118
|
+
onPageFlipping: A?.onPageFlipping,
|
|
119
|
+
onPageFlipped: A?.onPageFlipped,
|
|
120
|
+
historyMapper: J,
|
|
121
|
+
tocPageIndex: K ?? 4,
|
|
122
|
+
downloadConfig: Q,
|
|
123
|
+
pageShadow: u,
|
|
124
|
+
snapshotDuringFlip: m,
|
|
125
|
+
enableHistory: N,
|
|
126
|
+
enableDownload: D
|
|
123
127
|
})
|
|
124
128
|
);
|
|
125
|
-
|
|
126
|
-
|
|
129
|
+
ie(
|
|
130
|
+
X,
|
|
127
131
|
() => ({
|
|
128
132
|
flipNext: () => s.current.flipNext(),
|
|
129
133
|
flipPrev: () => s.current.flipPrev(),
|
|
@@ -131,96 +135,141 @@ const ae = (g) => g.title.length > 0, ge = ({
|
|
|
131
135
|
jumpToPage: (e) => s.current.jumpToPage(e),
|
|
132
136
|
restorePage: (e) => s.current.restorePage(e),
|
|
133
137
|
toggleDebugBar: () => {
|
|
134
|
-
const e =
|
|
135
|
-
|
|
138
|
+
const e = d.split(/\s+/)[0], r = document.querySelector(`.${e}`)?.querySelector(".flipbook-debug-bar");
|
|
139
|
+
r && r.classList.toggle("flipbook-debug-bar--hidden");
|
|
136
140
|
},
|
|
137
141
|
getCurrentPageIndex: () => s.current.currentPageIndex,
|
|
138
142
|
getTotalPages: () => s.current.totalPages,
|
|
139
|
-
getOf: () =>
|
|
143
|
+
getOf: () => j.current !== void 0 ? j.current : s.current.totalPages,
|
|
140
144
|
isFirstPage: () => s.current.isFirstPage,
|
|
141
145
|
isLastPage: () => s.current.isLastPage,
|
|
142
146
|
getDownloadConfig: () => s.current.getDownloadConfig(),
|
|
143
147
|
getTocPageIndex: () => s.current.getTocPageIndex(),
|
|
144
148
|
getMouseMode: () => s.current.getMouseMode(),
|
|
145
149
|
setMouseMode: (e) => {
|
|
146
|
-
if (s.current.setMouseMode(e),
|
|
150
|
+
if (s.current.setMouseMode(e), p)
|
|
147
151
|
try {
|
|
148
|
-
localStorage.setItem(
|
|
152
|
+
localStorage.setItem(p, e);
|
|
149
153
|
} catch {
|
|
150
154
|
}
|
|
151
155
|
}
|
|
152
156
|
}),
|
|
153
|
-
[
|
|
154
|
-
),
|
|
155
|
-
const e = s.current, t =
|
|
156
|
-
if (e.render(`.${t}`,
|
|
157
|
+
[d, p]
|
|
158
|
+
), S(() => {
|
|
159
|
+
const e = s.current, t = d.split(/\s+/)[0];
|
|
160
|
+
if (e.render(`.${t}`, T), p)
|
|
157
161
|
try {
|
|
158
|
-
const
|
|
159
|
-
(
|
|
162
|
+
const r = localStorage.getItem(p);
|
|
163
|
+
(r === "turn" || r === "select") && e.setMouseMode(r);
|
|
160
164
|
} catch {
|
|
161
165
|
}
|
|
162
|
-
return
|
|
166
|
+
return _(e.currentPageIndex), () => {
|
|
163
167
|
e.destroy();
|
|
164
168
|
};
|
|
165
|
-
}, [
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
169
|
+
}, [d, T, p]);
|
|
170
|
+
const V = F(f);
|
|
171
|
+
S(() => {
|
|
172
|
+
V.current !== f && (V.current = f, s.current.setBookmarksEnabled(f));
|
|
173
|
+
}, [f]), S(() => {
|
|
174
|
+
const e = s.current;
|
|
175
|
+
if (!g) {
|
|
176
|
+
U([]);
|
|
177
|
+
return;
|
|
178
|
+
}
|
|
179
|
+
let t = !0;
|
|
180
|
+
const r = /* @__PURE__ */ new Map(), l = (i, C) => {
|
|
181
|
+
const P = `${C ? "expanded" : "brief"}:${i.id}`;
|
|
182
|
+
let o = r.get(P);
|
|
183
|
+
return o || (o = {
|
|
184
|
+
key: P,
|
|
185
|
+
bookmark: i,
|
|
186
|
+
element: document.createElement("span"),
|
|
187
|
+
renderer: C ? g.renderExpandedBookmark : g.renderBookmark
|
|
188
|
+
}, r.set(P, o)), o.bookmark = i, o.element;
|
|
189
|
+
}, b = {
|
|
190
|
+
...g,
|
|
191
|
+
getBookmarks: (i) => {
|
|
192
|
+
const C = g.getBookmarks(i), P = new Set(C.map((o) => o.id));
|
|
193
|
+
for (const [o, I] of r)
|
|
194
|
+
P.has(I.bookmark.id) || r.delete(o);
|
|
195
|
+
return queueMicrotask(() => {
|
|
196
|
+
if (t) {
|
|
197
|
+
for (const [o, I] of r)
|
|
198
|
+
I.element.isConnected || r.delete(o);
|
|
199
|
+
U([...r.values()]);
|
|
200
|
+
}
|
|
201
|
+
}), C;
|
|
202
|
+
},
|
|
203
|
+
renderBookmark: (i) => l(i, !1),
|
|
204
|
+
renderExpandedBookmark: g.renderExpandedBookmark ? (i) => l(i, !0) : void 0
|
|
205
|
+
};
|
|
206
|
+
return e.setBookmarkProvider(b), () => {
|
|
207
|
+
t = !1, e.setBookmarkProvider(void 0);
|
|
208
|
+
};
|
|
209
|
+
}, [g]), S(() => {
|
|
210
|
+
const e = d.split(/\s+/)[0], t = document.querySelector(`.${e}`);
|
|
211
|
+
t && (u ? t.classList.remove("flipbook--no-page-shadow") : t.classList.add("flipbook--no-page-shadow"));
|
|
212
|
+
}, [d, u]);
|
|
213
|
+
const R = ue.toArray(k), M = R.length, E = new Set(
|
|
214
|
+
a?.coverIndices === "auto" ? [0, M - 1] : a?.coverIndices ?? [0]
|
|
215
|
+
), te = (e) => E.has(e), q = /* @__PURE__ */ new Map();
|
|
216
|
+
if (a?.interiorCoverClassName || a?.frontInteriorCoverClassName || a?.backInteriorCoverClassName)
|
|
217
|
+
for (const e of E) {
|
|
174
218
|
const t = e % 2 === 0 ? e + 1 : e - 1;
|
|
175
|
-
if (t >= 0 && t <
|
|
176
|
-
const
|
|
177
|
-
|
|
219
|
+
if (t >= 0 && t < M && !E.has(t)) {
|
|
220
|
+
const r = e === Math.min(...E) ? "front" : "back";
|
|
221
|
+
q.set(t, r);
|
|
178
222
|
}
|
|
179
223
|
}
|
|
180
|
-
const
|
|
224
|
+
const re = a?.coverInset ?? "5%", ne = (e) => {
|
|
181
225
|
const t = ["page"];
|
|
182
|
-
|
|
183
|
-
const
|
|
184
|
-
if (
|
|
226
|
+
te(e) && (t.push("page--cover"), a?.hardCovers && t.push("page--hard"), a?.noShadow && t.push("page--no-shadow"));
|
|
227
|
+
const r = q.get(e);
|
|
228
|
+
if (r) {
|
|
185
229
|
t.push("page--cover-interior");
|
|
186
|
-
const
|
|
187
|
-
|
|
230
|
+
const l = r === "front" ? a?.frontInteriorCoverClassName ?? a?.interiorCoverClassName : a?.backInteriorCoverClassName ?? a?.interiorCoverClassName;
|
|
231
|
+
l && t.push(l);
|
|
188
232
|
}
|
|
189
233
|
return t.join(" ");
|
|
190
|
-
},
|
|
191
|
-
const e = Math.floor(
|
|
192
|
-
Array.from({ length:
|
|
234
|
+
}, oe = n != null && M > 0 ? (() => {
|
|
235
|
+
const e = Math.floor(Y / 2), t = Math.ceil(M / 2), r = 2, l = Math.max(0, e - n - r), b = Math.min(t - 1, e + n + r), i = l * 2, C = Math.min(M - 1, b * 2 + 1), P = new Set(
|
|
236
|
+
Array.from({ length: C - i + 1 }, (o, I) => i + I)
|
|
193
237
|
);
|
|
194
|
-
for (const
|
|
195
|
-
|
|
196
|
-
const
|
|
197
|
-
|
|
238
|
+
for (const o of E) {
|
|
239
|
+
P.add(o);
|
|
240
|
+
const I = o % 2 === 0 ? o + 1 : o - 1;
|
|
241
|
+
I >= 0 && I < M && P.add(I);
|
|
198
242
|
}
|
|
199
|
-
return (
|
|
200
|
-
})() : (e) =>
|
|
201
|
-
const t =
|
|
202
|
-
if (
|
|
203
|
-
const
|
|
204
|
-
"--cover-inset":
|
|
205
|
-
...
|
|
243
|
+
return (o) => P.has(o) ? R[o] : null;
|
|
244
|
+
})() : (e) => R[e], se = (e) => {
|
|
245
|
+
const t = oe(e);
|
|
246
|
+
if (q.has(e)) {
|
|
247
|
+
const l = e % 2 === 1 !== (B === "rtl"), b = {
|
|
248
|
+
"--cover-inset": re,
|
|
249
|
+
...l ? { "--cover-inset-right": "0px" } : { "--cover-inset-left": "0px" }
|
|
206
250
|
};
|
|
207
|
-
return /* @__PURE__ */
|
|
251
|
+
return /* @__PURE__ */ c("div", { className: "page--cover-interior-inset", style: b, children: t });
|
|
208
252
|
}
|
|
209
253
|
return t;
|
|
210
254
|
};
|
|
211
|
-
return /* @__PURE__ */
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
255
|
+
return /* @__PURE__ */ O("div", { className: d, children: [
|
|
256
|
+
R.map((e, t) => /* @__PURE__ */ c(
|
|
257
|
+
"div",
|
|
258
|
+
{
|
|
259
|
+
className: ne(t),
|
|
260
|
+
children: /* @__PURE__ */ c("div", { className: "flipbook-page-scrollport", children: /* @__PURE__ */ c("div", { className: "flipbook-page-content", dir: B, children: se(t) }) })
|
|
261
|
+
},
|
|
262
|
+
`page-${t}`
|
|
263
|
+
)),
|
|
264
|
+
Z.map(
|
|
265
|
+
({ key: e, bookmark: t, element: r, renderer: l }) => de(l ? l(t) : t.label, r, e)
|
|
266
|
+
)
|
|
267
|
+
] });
|
|
219
268
|
}
|
|
220
269
|
);
|
|
221
|
-
|
|
270
|
+
ge.displayName = "FlipBook";
|
|
222
271
|
export {
|
|
223
|
-
|
|
224
|
-
|
|
272
|
+
ge as FlipBook,
|
|
273
|
+
Ie as TocPage
|
|
225
274
|
};
|
|
226
275
|
//# sourceMappingURL=flip-book.js.map
|