UNPKG

@atlaskit/editor-plugin-avatar-group

Version:

Avatar Group plugin for @atlaskit/editor-core.

62 lines (61 loc) 3.36 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.avatarGroupPlugin = void 0; var _react = _interopRequireDefault(require("react")); var _AvatarGroupPluginWrapper = _interopRequireDefault(require("./ui/AvatarGroupPluginWrapper")); var _avatarsWithPluginState = _interopRequireDefault(require("./ui/avatars-with-plugin-state")); var avatarGroupPlugin = exports.avatarGroupPlugin = function avatarGroupPlugin(_ref) { var _api$featureFlags; var props = _ref.config, api = _ref.api; var featureFlags = (api === null || api === void 0 || (_api$featureFlags = api.featureFlags) === null || _api$featureFlags === void 0 ? void 0 : _api$featureFlags.sharedState.currentState()) || {}; var primaryToolbarComponent = function primaryToolbarComponent(_ref2) { var _api$analytics; var editorView = _ref2.editorView, eventDispatcher = _ref2.eventDispatcher, dispatchAnalyticsEvent = _ref2.dispatchAnalyticsEvent; if (!editorView) { return null; } return /*#__PURE__*/_react.default.createElement(_AvatarGroupPluginWrapper.default, { dispatchAnalyticsEvent: dispatchAnalyticsEvent, editorView: editorView, eventDispatcher: eventDispatcher, collabEdit: props === null || props === void 0 ? void 0 : props.collabEdit, takeFullWidth: props === null || props === void 0 ? void 0 : props.takeFullWidth, featureFlags: featureFlags, editorAnalyticsAPI: api === null || api === void 0 || (_api$analytics = api.analytics) === null || _api$analytics === void 0 ? void 0 : _api$analytics.actions, editorAPI: api }); }; if (props.showAvatarGroup) { var _api$primaryToolbar; api === null || api === void 0 || (_api$primaryToolbar = api.primaryToolbar) === null || _api$primaryToolbar === void 0 || _api$primaryToolbar.actions.registerComponent({ name: 'avatarGroup', component: primaryToolbarComponent }); } return { name: 'avatarGroup', primaryToolbarComponent: !(api !== null && api !== void 0 && api.primaryToolbar) && props.showAvatarGroup ? primaryToolbarComponent : undefined, actions: { getToolbarItem: function getToolbarItem(_ref3) { var _api$featureFlags$sha, _api$featureFlags2, _api$analytics2; var inviteToEditHandler = _ref3.inviteToEditHandler, isInviteToEditButtonSelected = _ref3.isInviteToEditButtonSelected, inviteToEditComponent = _ref3.inviteToEditComponent; return /*#__PURE__*/_react.default.createElement(_avatarsWithPluginState.default, { featureFlags: (_api$featureFlags$sha = api === null || api === void 0 || (_api$featureFlags2 = api.featureFlags) === null || _api$featureFlags2 === void 0 ? void 0 : _api$featureFlags2.sharedState.currentState()) !== null && _api$featureFlags$sha !== void 0 ? _api$featureFlags$sha : {}, editorAnalyticsAPI: api === null || api === void 0 || (_api$analytics2 = api.analytics) === null || _api$analytics2 === void 0 ? void 0 : _api$analytics2.actions, editorAPI: api, inviteToEditHandler: inviteToEditHandler, isInviteToEditButtonSelected: isInviteToEditButtonSelected, inviteToEditComponent: inviteToEditComponent }); } } }; };