@react-pdf-viewer/full-screen
Advanced tools
Comparing version 2.3.0 to 2.3.1
@@ -110,3 +110,3 @@ 'use strict'; | ||
var EnterFullScreen = function (_a) { | ||
var children = _a.children, store = _a.store; | ||
var children = _a.children, store = _a.store, onEnterFullScreen = _a.onEnterFullScreen, onExitFullScreen = _a.onExitFullScreen; | ||
var pagesRef = React.useRef(store.get('getPagesContainer') ? store.get('getPagesContainer')() : null); | ||
@@ -134,3 +134,8 @@ var closeOtherFullScreen = function () { | ||
var ele = getFullScreenElement(); | ||
store.update('isFullScreen', ele === pagesRef.current); | ||
var isFullScreen = ele === pagesRef.current; | ||
store.update('isFullScreen', isFullScreen); | ||
var zoom = store.get('zoom'); | ||
if (zoom) { | ||
isFullScreen ? onEnterFullScreen(zoom) : onExitFullScreen(zoom); | ||
} | ||
}; | ||
@@ -188,6 +193,8 @@ var handlePagesContainer = function (getPagesContainer) { | ||
var fullScreenPlugin = function () { | ||
var fullScreenPlugin = function (props) { | ||
var store = React.useMemo(function () { return core.createStore({}); }, []); | ||
var EnterFullScreenDecorator = function (props) { return (React.createElement(EnterFullScreen, __assign({}, props, { store: store }))); }; | ||
var EnterFullScreenButtonDecorator = function () { return (React.createElement(EnterFullScreenDecorator, null, function (props) { return React.createElement(EnterFullScreenButton, __assign({}, props)); })); }; | ||
var onEnterFullScreen = props && props.onEnterFullScreen ? props.onEnterFullScreen : function () { }; | ||
var onExitFullScreen = props && props.onExitFullScreen ? props.onExitFullScreen : function () { }; | ||
var EnterFullScreenDecorator = function (props) { return (React.createElement(EnterFullScreen, __assign({}, props, { store: store, onEnterFullScreen: onEnterFullScreen, onExitFullScreen: onExitFullScreen }))); }; | ||
var EnterFullScreenButtonDecorator = function () { return (React.createElement(EnterFullScreenDecorator, null, function (renderProps) { return React.createElement(EnterFullScreenButton, __assign({}, renderProps)); })); }; | ||
var ExitFullScreenDecorator = function () { return (React.createElement(ExitFullScreenButton, { store: store })); }; | ||
@@ -206,2 +213,3 @@ var renderViewer = function (props) { | ||
store.update('getPagesContainer', pluginFunctions.getPagesContainer); | ||
store.update('zoom', pluginFunctions.zoom); | ||
}, | ||
@@ -208,0 +216,0 @@ renderViewer: renderViewer, |
@@ -1,1 +0,1 @@ | ||
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,n=require("react"),t=require("@react-pdf-viewer/core"),l=function(){return n.createElement(t.Icon,{size:16},n.createElement("path",{d:"M10.515,9.514h3c0.552,0,1,0.448,1,1v3c0,0.552-0.448,1-1,1h-3c-0.552,0-1-0.448-1-1v-3\n C9.515,9.962,9.963,9.514,10.515,9.514z\n M0.531,23.499l6.984-6.985\n M16.515,7.514L23.5,0.529\n M21.515,7.514h-5v-5\n M7.515,21.514v-5 h-5\n M0.523,0.521l6.992,6.993\n M16.515,16.514l6.985,6.985\n M16.515,21.514v-5h5\n M2.515,7.514h5v-5"}))},r=function(){return(r=Object.assign||function(e){for(var n,t=1,l=arguments.length;t<l;t++)for(var r in n=arguments[t])Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r]);return e}).apply(this,arguments)},u=function(){return n.createElement(t.Icon,{size:16},n.createElement("path",{d:"M15.5,8.499l8-8\n M0.5,23.499l8-8\n M5.5,23.499h-5v-5\n M23.5,5.499v-5h-5\n M15.5,15.499l8,8\n M0.5,0.499l8,8\n M0.5,5.499v-5h5\n M18.5,23.499h5v-5"}))},c={left:0,top:8},i=function(e){var l=e.onClick,r=n.useContext(t.LocalizationContext),i=r&&r.fullScreen?r.fullScreen.enterFullScreen:"Full screen";return n.createElement(t.Tooltip,{position:t.Position.BottomCenter,target:n.createElement(t.Button,{onClick:l},n.createElement(u,null)),content:function(){return i},offset:c})};!function(e){e[e.ExitFullScreen=0]="ExitFullScreen",e[e.FullScreenChange=1]="FullScreenChange",e[e.FullScreenElement=2]="FullScreenElement",e[e.FullScreenEnabled=3]="FullScreenEnabled",e[e.RequestFullScreen=4]="RequestFullScreen"}(e||(e={}));var o={ExitFullScreen:"exitFullscreen",FullScreenChange:"fullscreenchange",FullScreenElement:"fullscreenElement",FullScreenEnabled:"fullscreenEnabled",RequestFullScreen:"requestFullscreen"},a={ExitFullScreen:"webkitExitFullscreen",FullScreenChange:"webkitfullscreenchange",FullScreenElement:"webkitFullscreenElement",FullScreenEnabled:"webkitFullscreenEnabled",RequestFullScreen:"webkitRequestFullscreen"},s={ExitFullScreen:"msExitFullscreen",FullScreenChange:"MSFullscreenChange",FullScreenElement:"msFullscreenElement",FullScreenEnabled:"msFullscreenEnabled",RequestFullScreen:"msRequestFullscreen"},f="undefined"!=typeof window,F=f&&(e.FullScreenEnabled in document&&o||a.FullScreenEnabled in document&&a||s.FullScreenEnabled in document&&s)||o,E=function(e){return f?e[F.ExitFullScreen]():Promise.resolve({})},S=function(){return f?document[F.FullScreenElement]:null},m=function(e){var t=e.children,l=e.store,r=n.useRef(l.get("getPagesContainer")?l.get("getPagesContainer")():null),u=function(){var e=S();l.update("isFullScreen",e===r.current)},c=function(e){var n;r.current=e(),n=u,f&&document.addEventListener(F.FullScreenChange,n)};n.useEffect((function(){return l.subscribe("getPagesContainer",c),function(){l.unsubscribe("getPagesContainer",c)}}),[]);return(t||function(e){return n.createElement(i,{onClick:e.onClick})})({onClick:function(){var e=r.current;e&&function(){var e=r.current;if(!e)return Promise.resolve();var n=S();return n&&n!==e?E(n):Promise.resolve()}().then((function(){var n;n=e,f&&n[F.RequestFullScreen]()}))}})},v=function(e){var r=e.store,u=n.useState(!1),c=u[0],i=u[1],o=function(e){i(e)};return n.useEffect((function(){return r.subscribe("isFullScreen",o),function(){r.unsubscribe("isFullScreen",o)}}),[]),n.createElement(n.Fragment,null,c&&n.createElement("div",{className:"rpv-full-screen-exit-button"},n.createElement("div",{className:"rpv-full-screen-exit-button-inner"},n.createElement(t.Button,{onClick:function(){i(!1);var e=r.get("getPagesContainer");if(e){var n=e();if(n){var t=S();t&&t===n&&E(document)}}}},n.createElement(l,null)))))};exports.ExitFullScreenIcon=l,exports.FullScreenIcon=u,exports.fullScreenPlugin=function(){var e=n.useMemo((function(){return t.createStore({})}),[]),l=function(t){return n.createElement(m,r({},t,{store:e}))},u=function(){return n.createElement(v,{store:e})};return{install:function(n){e.update("getPagesContainer",n.getPagesContainer)},renderViewer:function(e){var t=e.slot;return t.subSlot&&(t.subSlot.children=n.createElement(n.Fragment,null,n.createElement(u,null),t.subSlot.children)),t},EnterFullScreen:l,EnterFullScreenButton:function(){return n.createElement(l,null,(function(e){return n.createElement(i,r({},e))}))}}}; | ||
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,n=require("react"),t=require("@react-pdf-viewer/core"),l=function(){return n.createElement(t.Icon,{size:16},n.createElement("path",{d:"M10.515,9.514h3c0.552,0,1,0.448,1,1v3c0,0.552-0.448,1-1,1h-3c-0.552,0-1-0.448-1-1v-3\n C9.515,9.962,9.963,9.514,10.515,9.514z\n M0.531,23.499l6.984-6.985\n M16.515,7.514L23.5,0.529\n M21.515,7.514h-5v-5\n M7.515,21.514v-5 h-5\n M0.523,0.521l6.992,6.993\n M16.515,16.514l6.985,6.985\n M16.515,21.514v-5h5\n M2.515,7.514h5v-5"}))},r=function(){return(r=Object.assign||function(e){for(var n,t=1,l=arguments.length;t<l;t++)for(var r in n=arguments[t])Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r]);return e}).apply(this,arguments)},u=function(){return n.createElement(t.Icon,{size:16},n.createElement("path",{d:"M15.5,8.499l8-8\n M0.5,23.499l8-8\n M5.5,23.499h-5v-5\n M23.5,5.499v-5h-5\n M15.5,15.499l8,8\n M0.5,0.499l8,8\n M0.5,5.499v-5h5\n M18.5,23.499h5v-5"}))},c={left:0,top:8},o=function(e){var l=e.onClick,r=n.useContext(t.LocalizationContext),o=r&&r.fullScreen?r.fullScreen.enterFullScreen:"Full screen";return n.createElement(t.Tooltip,{position:t.Position.BottomCenter,target:n.createElement(t.Button,{onClick:l},n.createElement(u,null)),content:function(){return o},offset:c})};!function(e){e[e.ExitFullScreen=0]="ExitFullScreen",e[e.FullScreenChange=1]="FullScreenChange",e[e.FullScreenElement=2]="FullScreenElement",e[e.FullScreenEnabled=3]="FullScreenEnabled",e[e.RequestFullScreen=4]="RequestFullScreen"}(e||(e={}));var i={ExitFullScreen:"exitFullscreen",FullScreenChange:"fullscreenchange",FullScreenElement:"fullscreenElement",FullScreenEnabled:"fullscreenEnabled",RequestFullScreen:"requestFullscreen"},a={ExitFullScreen:"webkitExitFullscreen",FullScreenChange:"webkitfullscreenchange",FullScreenElement:"webkitFullscreenElement",FullScreenEnabled:"webkitFullscreenEnabled",RequestFullScreen:"webkitRequestFullscreen"},s={ExitFullScreen:"msExitFullscreen",FullScreenChange:"MSFullscreenChange",FullScreenElement:"msFullscreenElement",FullScreenEnabled:"msFullscreenEnabled",RequestFullScreen:"msRequestFullscreen"},F="undefined"!=typeof window,E=F&&(e.FullScreenEnabled in document&&i||a.FullScreenEnabled in document&&a||s.FullScreenEnabled in document&&s)||i,f=function(e){return F?e[E.ExitFullScreen]():Promise.resolve({})},S=function(){return F?document[E.FullScreenElement]:null},m=function(e){var t=e.children,l=e.store,r=e.onEnterFullScreen,u=e.onExitFullScreen,c=n.useRef(l.get("getPagesContainer")?l.get("getPagesContainer")():null),i=function(){var e=S()===c.current;l.update("isFullScreen",e);var n=l.get("zoom");n&&(e?r(n):u(n))},a=function(e){var n;c.current=e(),n=i,F&&document.addEventListener(E.FullScreenChange,n)};n.useEffect((function(){return l.subscribe("getPagesContainer",a),function(){l.unsubscribe("getPagesContainer",a)}}),[]);return(t||function(e){return n.createElement(o,{onClick:e.onClick})})({onClick:function(){var e=c.current;e&&function(){var e=c.current;if(!e)return Promise.resolve();var n=S();return n&&n!==e?f(n):Promise.resolve()}().then((function(){var n;n=e,F&&n[E.RequestFullScreen]()}))}})},v=function(e){var r=e.store,u=n.useState(!1),c=u[0],o=u[1],i=function(e){o(e)};return n.useEffect((function(){return r.subscribe("isFullScreen",i),function(){r.unsubscribe("isFullScreen",i)}}),[]),n.createElement(n.Fragment,null,c&&n.createElement("div",{className:"rpv-full-screen-exit-button"},n.createElement("div",{className:"rpv-full-screen-exit-button-inner"},n.createElement(t.Button,{onClick:function(){o(!1);var e=r.get("getPagesContainer");if(e){var n=e();if(n){var t=S();t&&t===n&&f(document)}}}},n.createElement(l,null)))))};exports.ExitFullScreenIcon=l,exports.FullScreenIcon=u,exports.fullScreenPlugin=function(e){var l=n.useMemo((function(){return t.createStore({})}),[]),u=e&&e.onEnterFullScreen?e.onEnterFullScreen:function(){},c=e&&e.onExitFullScreen?e.onExitFullScreen:function(){},i=function(e){return n.createElement(m,r({},e,{store:l,onEnterFullScreen:u,onExitFullScreen:c}))},a=function(){return n.createElement(v,{store:l})};return{install:function(e){l.update("getPagesContainer",e.getPagesContainer),l.update("zoom",e.zoom)},renderViewer:function(e){var t=e.slot;return t.subSlot&&(t.subSlot.children=n.createElement(n.Fragment,null,n.createElement(a,null),t.subSlot.children)),t},EnterFullScreen:i,EnterFullScreenButton:function(){return n.createElement(i,null,(function(e){return n.createElement(o,r({},e))}))}}}; |
@@ -6,7 +6,7 @@ /** | ||
* @license https://react-pdf-viewer.dev/license | ||
* @copyright 2019-2020 Nguyen Huu Phuoc <me@phuoc.ng> | ||
* @copyright 2019-2021 Nguyen Huu Phuoc <me@phuoc.ng> | ||
*/ | ||
import * as React from 'react'; | ||
import { Plugin } from '@react-pdf-viewer/core'; | ||
import { Plugin, SpecialZoomLevel } from '@react-pdf-viewer/core'; | ||
@@ -26,5 +26,14 @@ export interface RenderEnterFullScreenProps { | ||
export function fullScreenPlugin(): FullScreenPlugin; | ||
export type Zoom = (scale: number | SpecialZoomLevel) => void; | ||
export interface FullScreenPluginProps { | ||
onEnterFullScreen?(zoom: Zoom): void; | ||
onExitFullScreen?(zoom: Zoom): void; | ||
} | ||
export function fullScreenPlugin( | ||
props?: FullScreenPluginProps | ||
): FullScreenPlugin; | ||
export class ExitFullScreenIcon extends React.Component {} | ||
export class FullScreenIcon extends React.Component {} |
@@ -6,3 +6,3 @@ /** | ||
* @license https://react-pdf-viewer.dev/license | ||
* @copyright 2019-2020 Nguyen Huu Phuoc <me@phuoc.ng> | ||
* @copyright 2019-2021 Nguyen Huu Phuoc <me@phuoc.ng> | ||
*/ | ||
@@ -9,0 +9,0 @@ |
{ | ||
"name": "@react-pdf-viewer/full-screen", | ||
"version": "2.3.0", | ||
"version": "2.3.1", | ||
"description": "A React component to view a PDF document", | ||
@@ -36,3 +36,3 @@ "license": "https://react-pdf-viewer.dev/license", | ||
"dependencies": { | ||
"@react-pdf-viewer/core": "2.3.0" | ||
"@react-pdf-viewer/core": "2.3.1" | ||
}, | ||
@@ -52,3 +52,3 @@ "peerDependencies": { | ||
}, | ||
"gitHead": "182a54c3c2cb7d0d77bb988e495b3e6853108b0a" | ||
"gitHead": "35c85e7e2a77a9fcc78faed723d3e719a07451af" | ||
} |
Sorry, the diff of this file is not supported yet
18027
283
+ Added@react-pdf-viewer/core@2.3.1(transitive)
- Removed@react-pdf-viewer/core@2.3.0(transitive)
Updated@react-pdf-viewer/core@2.3.1