@vivliostyle/react
Version:
React component for Vivliostyle
3 lines (2 loc) • 3.15 kB
JavaScript
var e=require("@emotion/styled"),n=require("@vivliostyle/core"),r=require("react");function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o,a=/*#__PURE__*/t(e),i=/*#__PURE__*/t(r);function u(){return u=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var t in r)({}).hasOwnProperty.call(r,t)&&(e[t]=r[t])}return e},u.apply(null,arguments)}var d,c,l=a.default.div(o||(d=["\n overflow: scroll;\n background: "," !important;\n"],c||(c=d.slice(0)),d.raw=c,o=d),function(e){return e.background});exports.Renderer=function(e){var t=e.source,o=e.page,a=void 0===o?1:o,d=e.zoom,c=void 0===d?1:d,s=e.bookMode,f=void 0===s||s,v=e.fontSize,g=void 0===v?16:v,p=e.background,S=void 0===p?"#ececec":p,y=e.renderAllPages,h=void 0===y||y,L=e.autoResize,m=void 0===L||L,b=e.pageViewMode,w=void 0===b?n.PageViewMode.SINGLE_PAGE:b,P=e.defaultPaperSize,z=e.pageBorderWidth,E=void 0===z?1:z,R=e.fitToScreen,k=void 0!==R&&R,A=e.userStyleSheet,M=e.authorStyleSheet,O=e.style,T=e.onMessage,V=e.onError,W=e.onReadyStateChange,j=e.onLoad,C=e.onNavigation,G=e.onHyperlink,N=e.children,q=r.useRef(null),x=r.useRef(),B=i.default.useRef();function D(){x.current.setOptions({fontSize:g,pageViewMode:w,renderAllPages:h,autoResize:m,defaultPaperSize:P,pageBorderWidth:E})}function I(){var e,n,r=x.current,o=u({},A?{userStyleSheet:[(e={},e[A.endsWith(".css")?"url":"text"]=A,e)]}:null,M?{authorStyleSheet:[(n={},n[M.endsWith(".css")?"url":"text"]=M,n)]}:null);f?r.loadPublication(t,o):r.loadDocument({url:t},o,{fontSize:g,pageViewMode:w,zoom:c,renderAllPages:h,autoResize:m,defaultPaperSize:P,pageBorderWidth:E,fitToScreen:k})}r.useEffect(function(){return x.current=new n.CoreViewer({viewportElement:q.current}),D(),function(){var e=function(e){var n,r;return null!=(n=null==(r=e.content.error)?void 0:r.toString())?n:e.content.messages.join("\n")};function r(n,r){T&&T(e(n),r)}var t=function(e){return r(e,"debug")},o=function(e){return r(e,"info")},a=function(e){return r(e,"warn")};function i(n){V&&V(e(n))}function u(){W&&W(x.current.readyState)}function d(){j&&j(B.current)}function c(e){var n={docTitle:e.docTitle,epageCount:e.epageCount,epage:e.epage,metadata:e.metadata};B.current=n,C&&C(n)}function l(e){G&&G(e)}var s=x.current;return s.addListener("debug",t),s.addListener("info",o),s.addListener("warn",a),s.addListener("error",i),s.addListener("readystatechange",u),s.addListener("loaded",d),s.addListener("nav",c),s.addListener("hyperlink",l),function(){W&&W(n.ReadyState.LOADING),s.removeListener("debug",t),s.removeListener("info",o),s.removeListener("warn",a),s.removeListener("error",i),s.removeListener("readystatechange",u),s.removeListener("loaded",d),s.removeListener("nav",c),s.removeListener("hyperlink",l)}}()},[]),r.useEffect(function(){I()},[t,M,A,c,k]),r.useEffect(function(){D()},[g,w,h,m,P,E]),r.useEffect(function(){var e;null==(e=x.current)||e.navigateToPage(n.Navigation.EPAGE,a-1)},[a]);var F=i.default.createElement(l,{ref:q,style:O,background:S});return"function"==typeof N&&N instanceof Function?N({container:F,reload:I}):F};
//# sourceMappingURL=react-vivliostyle.js.map