calcite-react
Version:
Calcite components for React
80 lines (64 loc) • 3.56 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _ArcgisAccountStyled = require("./ArcgisAccount-styled");
var _ArcgisAccountContentInfo = _interopRequireDefault(require("./ArcgisAccountContentInfo"));
var _ArcgisAccountContentMenu = _interopRequireDefault(require("./ArcgisAccountContentMenu"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
// App components
// Third-party components (buttons, icons, etc.)
// JSON
// CSS
var ArcgisAccountMenu = function ArcgisAccountMenu(_ref) {
var children = _ref.children,
user = _ref.user,
portal = _ref.portal,
avatar = _ref.avatar,
hideSwitchAccount = _ref.hideSwitchAccount,
switchAccountLabel = _ref.switchAccountLabel,
signOutLabel = _ref.signOutLabel,
onRequestSwitchAccount = _ref.onRequestSwitchAccount,
onRequestSignOut = _ref.onRequestSignOut,
other = _objectWithoutProperties(_ref, ["children", "user", "portal", "avatar", "hideSwitchAccount", "switchAccountLabel", "signOutLabel", "onRequestSwitchAccount", "onRequestSignOut"]);
function getSwitchAccountBtn() {
if (!hideSwitchAccount) {
return _react.default.createElement(_ArcgisAccountStyled.StyledSwitchAccountButton, {
grouped: true,
extraLarge: true,
onClick: onRequestSwitchAccount
}, switchAccountLabel);
}
return;
}
return _react.default.createElement(_ArcgisAccountStyled.StyledArcgisAccountMenu, other, _react.default.createElement(_ArcgisAccountStyled.StyledArcgisAccountContent, null, _react.default.createElement(_ArcgisAccountContentInfo.default, {
user: user,
portal: portal,
avatar: avatar
}), _react.default.createElement(_ArcgisAccountContentMenu.default, null, children)), _react.default.createElement(_ArcgisAccountStyled.StyledArcgisAccountSignInMenu, null, getSwitchAccountBtn(), _react.default.createElement(_ArcgisAccountStyled.StyledSignOutButton, {
halo: true,
grouped: true,
extraLarge: true,
onClick: onRequestSignOut
}, signOutLabel)));
};
ArcgisAccountMenu.propTypes = {
/** AGOL user object. */
user: _propTypes.default.object,
/** Text label for the Switch Account button. */
switchAccountLabel: _propTypes.default.string,
/** Text label for the Sign Out button. */
signOutLabel: _propTypes.default.string
};
ArcgisAccountMenu.defaultProps = {
switchAccountLabel: 'Switch Account',
signOutLabel: 'Sign Out'
};
ArcgisAccountMenu.displayName = 'ArcgisAccountMenu';
var _default = ArcgisAccountMenu;
exports.default = _default;