@atlaskit/editor-plugin-tasks-and-decisions
Version:
Tasks and decisions plugin for @atlaskit/editor-core
47 lines (45 loc) • 2.34 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
var _reactIntl = require("react-intl");
var _messages = require("@atlaskit/editor-common/messages");
var _uiMenu = require("@atlaskit/editor-common/ui-menu");
var _checkboxChecked = _interopRequireDefault(require("@atlaskit/icon/core/checkbox-checked"));
var _insertCommands = require("../../pm-plugins/insert-commands");
var ToolbarTask = function ToolbarTask(_ref) {
var isDisabled = _ref.isDisabled,
isReducedSpacing = _ref.isReducedSpacing,
formatMessage = _ref.intl.formatMessage,
editorAPI = _ref.editorAPI,
editorView = _ref.editorView;
var label = formatMessage(_messages.toolbarInsertBlockMessages.action);
var handleInsertTask = function handleInsertTask() {
var _editorAPI$analytics;
if (!editorView) {
return false;
}
var getContextIdentifier = function getContextIdentifier() {
var _editorAPI$contextIde;
return editorAPI === null || editorAPI === void 0 || (_editorAPI$contextIde = editorAPI.contextIdentifier) === null || _editorAPI$contextIde === void 0 || (_editorAPI$contextIde = _editorAPI$contextIde.sharedState.currentState()) === null || _editorAPI$contextIde === void 0 ? void 0 : _editorAPI$contextIde.contextIdentifierProvider;
};
(0, _insertCommands.insertTaskDecisionCommand)(editorAPI === null || editorAPI === void 0 || (_editorAPI$analytics = editorAPI.analytics) === null || _editorAPI$analytics === void 0 ? void 0 : _editorAPI$analytics.actions, getContextIdentifier)('taskList')(editorView.state, editorView.dispatch);
return true;
};
return /*#__PURE__*/_react.default.createElement(_uiMenu.ToolbarButton, {
buttonId: _uiMenu.TOOLBAR_BUTTON.TASK_LIST,
onClick: handleInsertTask,
disabled: isDisabled,
spacing: isReducedSpacing ? 'none' : 'default',
title: "".concat(label, " []"),
iconBefore: /*#__PURE__*/_react.default.createElement(_checkboxChecked.default, {
label: label
})
});
};
// eslint-disable-next-line @typescript-eslint/ban-types
var _default_1 = (0, _reactIntl.injectIntl)(ToolbarTask);
var _default = exports.default = _default_1;