@atlaskit/profilecard
Version:
A React component to display a card with user information.
55 lines (54 loc) • 3.32 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireWildcard(require("react"));
var _button = _interopRequireDefault(require("@atlaskit/button"));
var _new = _interopRequireDefault(require("@atlaskit/button/new"));
var _crossCircle = _interopRequireDefault(require("@atlaskit/icon/core/cross-circle"));
var _crossCircle2 = _interopRequireDefault(require("@atlaskit/icon/glyph/cross-circle"));
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
var _primitives = require("@atlaskit/primitives");
var _Error = require("../../styled/Error");
var _analytics = require("../../util/analytics");
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
var ErrorMessage = function ErrorMessage(props) {
var errorType = props.errorType || {
reason: 'default'
};
var errorReason = errorType.reason;
var fireAnalytics = props.fireAnalytics,
reload = props.reload;
var hasRetry = !!reload;
(0, _react.useEffect)(function () {
fireAnalytics((0, _analytics.profileCardRendered)('user', 'error', {
hasRetry: hasRetry,
errorType: errorReason
}));
}, [errorReason, fireAnalytics, hasRetry]);
var errorContent = function errorContent() {
if (errorReason === 'NotFound') {
return /*#__PURE__*/_react.default.createElement(_Error.ErrorTitle, null, "The user is no longer available for the site");
}
return /*#__PURE__*/_react.default.createElement(_Error.ErrorTitle, null, "Oops, looks like we\u2019re having issues", /*#__PURE__*/_react.default.createElement("br", null), reload && /*#__PURE__*/_react.default.createElement(_primitives.Text, {
color: "color.text.subtlest"
}, "Try again and we\u2019ll give it another shot"));
};
return /*#__PURE__*/_react.default.createElement(_Error.ErrorWrapper, {
testId: "profilecard-error"
}, /*#__PURE__*/_react.default.createElement(_crossCircle.default, {
label: "icon error",
LEGACY_fallbackIcon: _crossCircle2.default,
LEGACY_size: "xlarge"
}), errorContent(), reload && ((0, _platformFeatureFlags.fg)('ptc_migrate_buttons') ? /*#__PURE__*/_react.default.createElement(_new.default, {
onClick: reload
}, "Try again") : /*#__PURE__*/_react.default.createElement(_button.default, {
appearance: "link",
onClick: reload
}, "Try again")));
};
var _default = exports.default = ErrorMessage;