UNPKG

@atlaskit/editor-plugin-selection-toolbar

Version:

@atlaskit/editor-plugin-selection-toolbar for @atlaskit/editor-core

49 lines 2.57 kB
import React from 'react'; import { selectionToolbarMessages } from '@atlaskit/editor-common/messages'; import { isOfflineMode } from '@atlaskit/editor-plugin-connectivity'; import PinIcon from '@atlaskit/icon/core/pin'; import PinFilledIcon from '@atlaskit/icon/core/pin-filled'; export var getPinOptionToolbarConfig = function getPinOptionToolbarConfig(_ref) { var _api$connectivity; var api = _ref.api, toolbarDocking = _ref.toolbarDocking, intl = _ref.intl; var isOffline = isOfflineMode(api === null || api === void 0 || (_api$connectivity = api.connectivity) === null || _api$connectivity === void 0 || (_api$connectivity = _api$connectivity.sharedState.currentState()) === null || _api$connectivity === void 0 ? void 0 : _api$connectivity.mode); var pinButton = { disabled: isOffline, id: 'editor.toolbar.unpined', icon: function icon() { return /*#__PURE__*/React.createElement(PinIcon, { label: "" }); }, onClick: function onClick() { var _api$core$actions$exe, _api$userPreferences; return (_api$core$actions$exe = api === null || api === void 0 ? void 0 : api.core.actions.execute(api === null || api === void 0 || (_api$userPreferences = api.userPreferences) === null || _api$userPreferences === void 0 ? void 0 : _api$userPreferences.actions.updateUserPreference('toolbarDockingPosition', 'top'))) !== null && _api$core$actions$exe !== void 0 ? _api$core$actions$exe : false; }, title: intl.formatMessage(selectionToolbarMessages.toolbarPositionUnpined), type: 'button' }; var isDockedToTop = toolbarDocking === 'top'; if (isDockedToTop) { pinButton = { disabled: isOffline, id: 'editor.toolbar.pinedToTop', icon: function icon() { return /*#__PURE__*/React.createElement(PinFilledIcon, { label: "" }); }, onClick: function onClick() { var _api$core$actions$exe2, _api$userPreferences2; return (_api$core$actions$exe2 = api === null || api === void 0 ? void 0 : api.core.actions.execute(api === null || api === void 0 || (_api$userPreferences2 = api.userPreferences) === null || _api$userPreferences2 === void 0 ? void 0 : _api$userPreferences2.actions.updateUserPreference('toolbarDockingPosition', 'none'))) !== null && _api$core$actions$exe2 !== void 0 ? _api$core$actions$exe2 : false; }, type: 'button', title: intl.formatMessage(selectionToolbarMessages.toolbarPositionPinedAtTop) }; } return [{ type: 'separator', fullHeight: true }, pinButton]; };