UNPKG

@vivliostyle/react

Version:

React component for Vivliostyle

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