@talend/react-containers
Version:
Provide connected components aka containers for @talend/react-cmf based on @talend/react-components.
49 lines (47 loc) • 1.39 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.REDIRECT_ACTION_TYPE = void 0;
var _propTypes = _interopRequireDefault(require("prop-types"));
var _react = require("react");
var _reactCmf = require("@talend/react-cmf");
var _reactComponents = require("@talend/react-components");
var _jsxRuntime = require("react/jsx-runtime");
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
const REDIRECT_ACTION_TYPE = exports.REDIRECT_ACTION_TYPE = 'REDIRECT';
/**
* @param {object} props react props
* @example
<Redirect name="Hello world"></Redirect>
*/
function Redirect({
path,
to,
dispatch,
componentId
}) {
(0, _react.useLayoutEffect)(() => {
dispatch({
type: REDIRECT_ACTION_TYPE,
componentId,
cmf: {
routerReplace: to || path
}
});
}, [dispatch, path, to, componentId]);
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactComponents.AppLoader, {});
}
Redirect.propTypes = {
path: _propTypes.default.string,
to: _propTypes.default.string,
dispatch: _propTypes.default.func,
componentId: _propTypes.default.string
};
Redirect.displayName = 'Redirect';
var _default = exports.default = (0, _reactCmf.cmfConnect)({
omitCMFProps: true,
withDispatch: true,
withComponentId: true
})(Redirect);
//# sourceMappingURL=Redirect.container.js.map