UNPKG

r2-navigator-js

Version:

Readium 2 'navigator' for NodeJS (TypeScript)

67 lines 2.42 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.setReadiumCssJsonGetter = exports.adjustReadiumCssJsonMessageForFixedLayout = exports.obtainReadiumCss = exports.isFixedLayout = exports.isRTL = void 0; var win = global.window; var IS_DEV = (process.env.NODE_ENV === "development" || process.env.NODE_ENV === "dev"); function isRTL() { var publication = win.READIUM2.publication; if (publication && publication.Metadata && publication.Metadata.Direction) { return publication.Metadata.Direction.toLowerCase() === "rtl"; } return false; } exports.isRTL = isRTL; function isFixedLayout(link) { if (link && link.Properties) { if (link.Properties.Layout === "fixed") { return true; } if (typeof link.Properties.Layout !== "undefined") { return false; } } var publication = win.READIUM2.publication; if (publication && publication.Metadata && publication.Metadata.Rendition) { return publication.Metadata.Rendition.Layout === "fixed"; } return false; } exports.isFixedLayout = isFixedLayout; var _defaultReadiumCss = { setCSS: undefined, isFixedLayout: false }; function obtainReadiumCss(rcss) { var r = rcss ? rcss : (_computeReadiumCssJsonMessage ? _computeReadiumCssJsonMessage() : _defaultReadiumCss); if (IS_DEV) { console.log("ReadiumCSS obtain: ".concat(rcss ? "provided" : (_computeReadiumCssJsonMessage ? "pulled" : "default"))); console.log(r); } return r; } exports.obtainReadiumCss = obtainReadiumCss; function adjustReadiumCssJsonMessageForFixedLayout(webview, rcss) { if (!webview) { return rcss; } if (isFixedLayout(webview.READIUM2.link)) { return { fixedLayoutWebViewHeight: webview.clientHeight, fixedLayoutWebViewWidth: webview.clientWidth, fixedLayoutZoomPercent: win.READIUM2.fixedLayoutZoomPercent, isFixedLayout: true, setCSS: undefined, }; } return rcss; } exports.adjustReadiumCssJsonMessageForFixedLayout = adjustReadiumCssJsonMessageForFixedLayout; var _computeReadiumCssJsonMessage; function setReadiumCssJsonGetter(func) { _computeReadiumCssJsonMessage = func; } exports.setReadiumCssJsonGetter = setReadiumCssJsonGetter; //# sourceMappingURL=readium-css.js.map