UNPKG

@randy.tarampi/jsx

Version:

Some common JSX components for www.randytarampi.ca

46 lines (34 loc) 1.78 kB
"use strict"; 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;