@atlaskit/editor-plugin-selection-toolbar
Version:
@atlaskit/editor-plugin-selection-toolbar for @atlaskit/editor-core
75 lines (72 loc) • 5.54 kB
JavaScript
/* PrimaryToolbarComponent.tsx generated by @compiled/babel-plugin v0.39.1 */
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.PrimaryToolbarComponent = void 0;
require("./PrimaryToolbarComponent.compiled.css");
var React = _interopRequireWildcard(require("react"));
var _runtime = require("@compiled/react/runtime");
var _reactIntl = require("react-intl");
var _messages = require("@atlaskit/editor-common/messages");
var _uiMenu = require("@atlaskit/editor-common/ui-menu");
var _useSharedPluginStateSelector = require("@atlaskit/editor-common/use-shared-plugin-state-selector");
var _editorPluginConnectivity = require("@atlaskit/editor-plugin-connectivity");
var _pin = _interopRequireDefault(require("@atlaskit/icon/core/pin"));
var _pinFilled = _interopRequireDefault(require("@atlaskit/icon/core/pin-filled"));
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
var buttonStyles = null;
/**
* A component used to renderer a pin/unpin
* button to the toolbar to the or make it in-line.
*/
var PrimaryToolbarComponent = exports.PrimaryToolbarComponent = function PrimaryToolbarComponent(_ref) {
var _api$userPreferences, _api$selectionToolbar;
var api = _ref.api,
disabled = _ref.disabled;
var intl = (0, _reactIntl.useIntl)();
var mode = (0, _useSharedPluginStateSelector.useSharedPluginStateSelector)(api, 'connectivity.mode');
var isOffline = (0, _editorPluginConnectivity.isOfflineMode)(mode);
var isDockedToTop = (0, _platformFeatureFlags.fg)('platform_editor_use_preferences_plugin') ? (api === null || api === void 0 || (_api$userPreferences = api.userPreferences) === null || _api$userPreferences === void 0 || (_api$userPreferences = _api$userPreferences.sharedState.currentState()) === null || _api$userPreferences === void 0 || (_api$userPreferences = _api$userPreferences.preferences) === null || _api$userPreferences === void 0 ? void 0 : _api$userPreferences.toolbarDockingPosition) === 'top' : (api === null || api === void 0 || (_api$selectionToolbar = api.selectionToolbar.sharedState.currentState()) === null || _api$selectionToolbar === void 0 ? void 0 : _api$selectionToolbar.toolbarDocking) === 'top';
if (isDockedToTop) {
return /*#__PURE__*/React.createElement(_uiMenu.ToolbarButton, {
"aria-label": intl.formatMessage(_messages.selectionToolbarMessages.toolbarPositionPinedAtTop)
// eslint-disable-next-line @atlaskit/design-system/no-unsafe-style-overrides -- Ignored via go/DSP-18766
,
disabled: disabled || isOffline,
iconBefore: /*#__PURE__*/React.createElement(_pinFilled.default, {
label: "",
spacing: "spacious"
})
// eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
,
onClick: function onClick() {
var _api$core$actions$exe, _api$userPreferences2;
return (_api$core$actions$exe = 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$exe !== void 0 ? _api$core$actions$exe : false;
},
title: intl.formatMessage(_messages.selectionToolbarMessages.toolbarPositionPinedAtTop),
className: (0, _runtime.ax)(["_ca0q12x7 _n3td12x7 _19bv12x7 _u5f312x7"])
});
}
return /*#__PURE__*/React.createElement(_uiMenu.ToolbarButton, {
"aria-label": intl.formatMessage(_messages.selectionToolbarMessages.toolbarPositionUnpined)
// eslint-disable-next-line @atlaskit/design-system/no-unsafe-style-overrides -- Ignored via go/DSP-18766
,
disabled: disabled || isOffline,
iconBefore: /*#__PURE__*/React.createElement(_pin.default, {
label: "",
spacing: "spacious"
})
// eslint-disable-next-line @atlassian/perf-linting/no-unstable-inline-props -- Ignored via go/ees017 (to be fixed)
,
onClick: function onClick() {
var _api$core$actions$exe2, _api$userPreferences3;
return (_api$core$actions$exe2 = api === null || api === void 0 ? void 0 : api.core.actions.execute(api === null || api === void 0 || (_api$userPreferences3 = api.userPreferences) === null || _api$userPreferences3 === void 0 ? void 0 : _api$userPreferences3.actions.updateUserPreference('toolbarDockingPosition', 'top'))) !== null && _api$core$actions$exe2 !== void 0 ? _api$core$actions$exe2 : false;
},
title: intl.formatMessage(_messages.selectionToolbarMessages.toolbarPositionUnpined),
className: (0, _runtime.ax)(["_ca0q12x7 _n3td12x7 _19bv12x7 _u5f312x7"])
});
};