@virtuous/react-conductor
Version:
React bindings for Conductor
51 lines (38 loc) • 1.17 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _conductor = require("@virtuous/conductor");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
function Pop(_ref) {
var children = _ref.children,
className = _ref.className,
state = _ref.state,
steps = _ref.steps;
var targetIndex = _conductor.router.routeIndex - steps;
var _ref2 = _conductor.stack.getByIndex(targetIndex) || {},
_ref2$location = _ref2.location,
location = _ref2$location === void 0 ? null : _ref2$location;
function handleClick(event) {
event.preventDefault();
_conductor.router.pop({
state: state,
steps: steps
});
}
return _react["default"].createElement("a", {
className: className,
href: location,
onClick: handleClick
}, children);
}
Pop.defaultProps = {
className: null,
state: {},
steps: 1
};
var _default = _react["default"].memo(Pop);
exports["default"] = _default;