@atlaskit/editor-plugin-panel
Version:
Panel plugin for @atlaskit/editor-core.
76 lines (75 loc) • 2.91 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getPanelQuickInsertComponents = void 0;
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
var _react = _interopRequireDefault(require("react"));
var _panel = require("@atlaskit/adf-schema/panel");
var _messages = require("@atlaskit/editor-common/messages");
var _quickInsert = require("@atlaskit/editor-common/quick-insert");
var _keys = require("@atlaskit/editor-common/quick-insert/keys");
var _rank = require("@atlaskit/editor-common/quick-insert/rank");
var _PanelQuickInsertMenuItem = require("./PanelQuickInsertMenuItem");
var standardPanelItems = [{
icon: _quickInsert.IconPanel,
menuItem: _keys.INFO_PANEL_MENU_ITEM,
panelType: _panel.PanelType.INFO,
title: _messages.blockTypeMessages.infoPanel
}, {
icon: _quickInsert.IconPanelNote,
menuItem: _keys.NOTE_PANEL_MENU_ITEM,
panelType: _panel.PanelType.NOTE,
title: _messages.blockTypeMessages.notePanel
}, {
icon: _quickInsert.IconPanelSuccess,
menuItem: _keys.SUCCESS_PANEL_MENU_ITEM,
panelType: _panel.PanelType.SUCCESS,
title: _messages.blockTypeMessages.successPanel
}, {
icon: _quickInsert.IconPanelWarning,
menuItem: _keys.WARNING_PANEL_MENU_ITEM,
panelType: _panel.PanelType.WARNING,
title: _messages.blockTypeMessages.warningPanel
}, {
icon: _quickInsert.IconPanelError,
menuItem: _keys.ERROR_PANEL_MENU_ITEM,
panelType: _panel.PanelType.ERROR,
title: _messages.blockTypeMessages.errorPanel
}];
var customPanelItem = {
icon: _quickInsert.IconCustomPanel,
menuItem: _keys.CUSTOM_PANEL_MENU_ITEM,
panelType: _panel.PanelType.CUSTOM,
title: _messages.blockTypeMessages.customPanel
};
var getPanelQuickInsertComponents = exports.getPanelQuickInsertComponents = function getPanelQuickInsertComponents(_ref) {
var api = _ref.api,
allowCustomPanel = _ref.allowCustomPanel,
allowCustomPanelEdit = _ref.allowCustomPanelEdit;
var allPanelItems = [].concat(standardPanelItems, (0, _toConsumableArray2.default)(allowCustomPanel && allowCustomPanelEdit ? [customPanelItem] : []));
return allPanelItems.map(function (_ref2) {
var icon = _ref2.icon,
menuItem = _ref2.menuItem,
panelType = _ref2.panelType,
title = _ref2.title;
return {
key: menuItem.key,
type: menuItem.type,
parents: [{
key: _keys.STRUCTURE_SECTION.key,
type: _keys.STRUCTURE_SECTION.type,
rank: _rank.STRUCTURE_SECTION_RANK[menuItem.key]
}],
component: function component() {
return /*#__PURE__*/_react.default.createElement(_PanelQuickInsertMenuItem.PanelQuickInsertMenuItem, {
api: api,
icon: icon,
panelType: panelType,
title: title
});
}
};
});
};