cspace-ui
Version:
CollectionSpace user interface for browsers
44 lines (42 loc) • 1.22 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = AuthorizePage;
var _react = require("react");
var _propTypes = _interopRequireDefault(require("prop-types"));
var _get = _interopRequireDefault(require("lodash/get"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/* global window */
const propTypes = {
config: _propTypes.default.shape({
serverUrl: _propTypes.default.string
}),
createAuthCodeUrl: _propTypes.default.func.isRequired,
location: _propTypes.default.shape({
state: _propTypes.default.object
}).isRequired
};
const contextTypes = {
config: _propTypes.default.shape({
recordTypes: _propTypes.default.object
}).isRequired
};
function AuthorizePage(props, context) {
const {
createAuthCodeUrl,
location
} = props;
const {
config
} = context;
const landingPath = (0, _get.default)(location, ['state', 'continuation']) || '';
(0, _react.useEffect)(() => {
createAuthCodeUrl(config, landingPath).then(url => {
window.location.replace(url);
});
}, []);
return null;
}
AuthorizePage.propTypes = propTypes;
AuthorizePage.contextTypes = contextTypes;
;