@randy.tarampi/jsx
Version:
Some common JSX components for www.randytarampi.ca
46 lines (34 loc) • 1.78 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = exports.swipeableTabChangeIndex = exports.swipeableTabChangeIndexCreator = exports.SWIPEABLE_TAB_CHANGE_INDEX = void 0;
var _immutable = require("connected-react-router/immutable");
var _reduxActions = require("redux-actions");
var _selectors = _interopRequireDefault(require("../../data/selectors"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var SWIPEABLE_TAB_CHANGE_INDEX = "SWIPEABLE_TAB_CHANGE_INDEX";
exports.SWIPEABLE_TAB_CHANGE_INDEX = SWIPEABLE_TAB_CHANGE_INDEX;
var swipeableTabChangeIndexCreator = function swipeableTabChangeIndexCreator(onChangeEvent) {
return function (dispatch, getState) {
var tabIndex = onChangeEvent.currentTarget.getAttribute("href").match(/\d+/g)[0];
var passedTabIndex = Number(tabIndex); // NOTE-RT: We need the un`scoped` value here, per https://github.com/react-materialize/react-materialize/commit/f5d1e0d5b97ae4435d6a709b9fc030458fe30b9e#diff-f8f6138478fd4cda2a0f875f28829252R50.
var index = passedTabIndex % 10;
dispatch(swipeableTabChangeIndex({
index: index
}));
var state = getState();
var routeForIndex = _selectors["default"].getRouteForIndex(state, index);
var path = routeForIndex ? routeForIndex.path : null;
if (path) {
dispatch((0, _immutable.push)({
pathname: path.split(":")[0]
}));
}
};
};
exports.swipeableTabChangeIndexCreator = swipeableTabChangeIndexCreator;
var swipeableTabChangeIndex = (0, _reduxActions.createAction)(SWIPEABLE_TAB_CHANGE_INDEX);
exports.swipeableTabChangeIndex = swipeableTabChangeIndex;
var _default = swipeableTabChangeIndexCreator;
exports["default"] = _default;