194 lines
6.5 KiB
JavaScript
194 lines
6.5 KiB
JavaScript
"use strict";
|
|
|
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
|
|
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
|
|
exports.__esModule = true;
|
|
exports.default = void 0;
|
|
|
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
|
|
var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));
|
|
|
|
var _react = _interopRequireWildcard(require("react"));
|
|
|
|
var _reactTransitionGroup = require("react-transition-group");
|
|
|
|
var _router = require("@reach/router");
|
|
|
|
var _TransitionRenderer = _interopRequireDefault(require("./TransitionRenderer"));
|
|
|
|
var _Layout = require("./Layout");
|
|
|
|
var _delayTransitionRender = _interopRequireDefault(require("./delayTransitionRender"));
|
|
|
|
var _createTransitionContext = require("../context/createTransitionContext");
|
|
|
|
var _returnTransitionState = require("../utils/returnTransitionState");
|
|
|
|
var _onEnter2 = require("../functions/onEnter");
|
|
|
|
var _onExit2 = require("../functions/onExit");
|
|
|
|
var _secondsMs = require("../utils/secondsMs");
|
|
|
|
require("../style.css");
|
|
|
|
var _jsxFileName = "/Users/tylerbarnes/Documents/GitHub/transitionlink-workspace/gatsby-plugin-transition-link/src/components/TransitionHandler.js";
|
|
var DelayedTransition = (0, _delayTransitionRender.default)(_reactTransitionGroup.Transition);
|
|
|
|
var TransitionHandler =
|
|
/*#__PURE__*/
|
|
function (_Component) {
|
|
(0, _inheritsLoose2.default)(TransitionHandler, _Component);
|
|
|
|
function TransitionHandler() {
|
|
return _Component.apply(this, arguments) || this;
|
|
}
|
|
|
|
var _proto = TransitionHandler.prototype;
|
|
|
|
_proto.render = function render() {
|
|
var props = this.props;
|
|
var children = props.children;
|
|
return _react.default.createElement(_createTransitionContext.Consumer, {
|
|
__source: {
|
|
fileName: _jsxFileName,
|
|
lineNumber: 22
|
|
},
|
|
__self: this
|
|
}, function (_ref) {
|
|
var exitDelay = _ref.exitDelay,
|
|
exitLength = _ref.exitLength,
|
|
exitState = _ref.exitState,
|
|
entryDelay = _ref.entryDelay,
|
|
entryLength = _ref.entryLength,
|
|
entryState = _ref.entryState,
|
|
entryTrigger = _ref.entryTrigger,
|
|
entryProps = _ref.entryProps,
|
|
exitTrigger = _ref.exitTrigger,
|
|
exitProps = _ref.exitProps,
|
|
transitionIdHistory = _ref.transitionIdHistory,
|
|
inTransition = _ref.inTransition,
|
|
updateContext = _ref.updateContext,
|
|
triggerResolve = _ref.triggerResolve,
|
|
appearAfter = _ref.appearAfter,
|
|
e = _ref.e;
|
|
return _react.default.createElement(_router.Location, {
|
|
__source: {
|
|
fileName: _jsxFileName,
|
|
lineNumber: 42
|
|
},
|
|
__self: this
|
|
}, function (_ref2) {
|
|
var _ref2$location = _ref2.location,
|
|
action = _ref2$location.action,
|
|
pathname = _ref2$location.pathname;
|
|
return _react.default.createElement(_Layout.LayoutComponent, (0, _extends2.default)({}, props, {
|
|
__source: {
|
|
fileName: _jsxFileName,
|
|
lineNumber: 44
|
|
},
|
|
__self: this
|
|
}), _react.default.createElement("div", {
|
|
className: "tl-edges",
|
|
__source: {
|
|
fileName: _jsxFileName,
|
|
lineNumber: 45
|
|
},
|
|
__self: this
|
|
}, _react.default.createElement(_reactTransitionGroup.TransitionGroup, {
|
|
component: null,
|
|
__source: {
|
|
fileName: _jsxFileName,
|
|
lineNumber: 46
|
|
},
|
|
__self: this
|
|
}, _react.default.createElement(DelayedTransition, {
|
|
key: pathname // we're using seconds but transitiongroup uses ms
|
|
,
|
|
delay: (0, _secondsMs.getMs)(entryDelay),
|
|
timeout: {
|
|
enter: (0, _secondsMs.getMs)(entryLength),
|
|
exit: (0, _secondsMs.getMs)(exitLength)
|
|
},
|
|
onEnter: function onEnter(node) {
|
|
return !!node && !window.__tl_back_button_pressed && (0, _onEnter2.onEnter)({
|
|
node: node,
|
|
action: action,
|
|
inTransition: inTransition,
|
|
entryTrigger: entryTrigger,
|
|
entryProps: entryProps,
|
|
exitProps: exitProps,
|
|
pathname: pathname,
|
|
updateContext: updateContext,
|
|
triggerResolve: triggerResolve,
|
|
appearAfter: (0, _secondsMs.getMs)(appearAfter),
|
|
e: e
|
|
});
|
|
},
|
|
onExit: function onExit(node) {
|
|
return !!node && !window.__tl_back_button_pressed && (0, _onExit2.onExit)({
|
|
node: node,
|
|
inTransition: inTransition,
|
|
exitTrigger: exitTrigger,
|
|
entryProps: entryProps,
|
|
exitProps: exitProps,
|
|
triggerResolve: triggerResolve,
|
|
e: e
|
|
});
|
|
},
|
|
__source: {
|
|
fileName: _jsxFileName,
|
|
lineNumber: 47
|
|
},
|
|
__self: this
|
|
}, function (transitionStatus) {
|
|
var mount = transitionStatus === "entering" || transitionStatus === "entered";
|
|
var states = {
|
|
entry: {
|
|
state: entryState,
|
|
delay: entryDelay,
|
|
length: entryLength
|
|
},
|
|
exit: {
|
|
state: exitState,
|
|
delay: exitDelay,
|
|
length: exitLength
|
|
}
|
|
};
|
|
var current = mount ? states.entry : states.exit;
|
|
var transitionState = (0, _returnTransitionState.returnTransitionState)((0, _extends2.default)({
|
|
inTransition: inTransition,
|
|
location: props.location,
|
|
transitionIdHistory: transitionIdHistory,
|
|
transitionStatus: transitionStatus,
|
|
current: current,
|
|
mount: mount
|
|
}, states));
|
|
var exitZindex = exitProps.zIndex || 0;
|
|
var entryZindex = entryProps.zIndex || 1;
|
|
return _react.default.createElement(_TransitionRenderer.default, {
|
|
mount: mount,
|
|
entryZindex: entryZindex,
|
|
exitZindex: exitZindex,
|
|
transitionStatus: transitionStatus,
|
|
transitionState: transitionState,
|
|
children: children,
|
|
appearAfter: (0, _secondsMs.getMs)(appearAfter),
|
|
__source: {
|
|
fileName: _jsxFileName,
|
|
lineNumber: 119
|
|
},
|
|
__self: this
|
|
});
|
|
}))));
|
|
});
|
|
});
|
|
};
|
|
|
|
return TransitionHandler;
|
|
}(_react.Component);
|
|
|
|
exports.default = TransitionHandler; |