@atlaskit/editor-plugin-table
Version:
Table plugin for the @atlaskit/editor
175 lines (174 loc) • 5.95 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getRowMenuComponents = void 0;
var _react = _interopRequireDefault(require("react"));
var _editorToolbar = require("@atlaskit/editor-toolbar");
var _AddRowAboveItem = require("./items/AddRowAboveItem");
var _AddRowBelowItem = require("./items/AddRowBelowItem");
var _DeleteRowItem = require("./items/DeleteRowItem");
var _HeaderRowToggleItem = require("./items/HeaderRowToggleItem");
var _MoveRowDownItem = require("./items/MoveRowDownItem");
var _MoveRowUpItem = require("./items/MoveRowUpItem");
var _NumberedRowsToggleItem = require("./items/NumberedRowsToggleItem");
var _keys = require("./keys");
var getRowMenuComponents = exports.getRowMenuComponents = function getRowMenuComponents(_ref) {
var api = _ref.api;
return [
// --- Menu surface ---
{
type: _keys.ROW_MENU.type,
key: _keys.ROW_MENU.key
},
// --- Toggle section (Header row, Numbered rows) ---
{
type: _keys.ROW_TOGGLE_SECTION.type,
key: _keys.ROW_TOGGLE_SECTION.key,
parents: [{
type: _keys.ROW_MENU.type,
key: _keys.ROW_MENU.key,
rank: _keys.ROW_MENU_SECTION_RANK[_keys.ROW_TOGGLE_SECTION.key]
}],
component: function component(props) {
return /*#__PURE__*/_react.default.createElement(_editorToolbar.ToolbarDropdownItemSection, null, props.children);
}
}, {
type: _keys.HEADER_ROW_TOGGLE_ITEM.type,
key: _keys.HEADER_ROW_TOGGLE_ITEM.key,
parents: [{
type: _keys.ROW_TOGGLE_SECTION.type,
key: _keys.ROW_TOGGLE_SECTION.key,
rank: _keys.ROW_TOGGLE_SECTION_RANK[_keys.HEADER_ROW_TOGGLE_ITEM.key]
}],
component: function component() {
return /*#__PURE__*/_react.default.createElement(_HeaderRowToggleItem.HeaderRowToggleItem, {
api: api
});
}
}, {
type: _keys.NUMBERED_ROWS_TOGGLE_ITEM.type,
key: _keys.NUMBERED_ROWS_TOGGLE_ITEM.key,
parents: [{
type: _keys.ROW_TOGGLE_SECTION.type,
key: _keys.ROW_TOGGLE_SECTION.key,
rank: _keys.ROW_TOGGLE_SECTION_RANK[_keys.NUMBERED_ROWS_TOGGLE_ITEM.key]
}],
component: function component() {
return /*#__PURE__*/_react.default.createElement(_NumberedRowsToggleItem.NumberedRowsToggleItem, {
api: api
});
}
},
// --- Background color section ---
{
type: _keys.ROW_BACKGROUND_SECTION.type,
key: _keys.ROW_BACKGROUND_SECTION.key,
parents: [{
type: _keys.ROW_MENU.type,
key: _keys.ROW_MENU.key,
rank: _keys.ROW_MENU_SECTION_RANK[_keys.ROW_BACKGROUND_SECTION.key]
}],
component: function component(props) {
return /*#__PURE__*/_react.default.createElement(_editorToolbar.ToolbarDropdownItemSection, {
hasSeparator: true
}, props.children);
}
},
// --- Add / Move section ---
{
type: _keys.ROW_ADD_SECTION.type,
key: _keys.ROW_ADD_SECTION.key,
parents: [{
type: _keys.ROW_MENU.type,
key: _keys.ROW_MENU.key,
rank: _keys.ROW_MENU_SECTION_RANK[_keys.ROW_ADD_SECTION.key]
}],
component: function component(props) {
return /*#__PURE__*/_react.default.createElement(_editorToolbar.ToolbarDropdownItemSection, {
hasSeparator: true
}, props.children);
}
}, {
type: _keys.ADD_ROW_ABOVE_ITEM.type,
key: _keys.ADD_ROW_ABOVE_ITEM.key,
parents: [{
type: _keys.ROW_ADD_SECTION.type,
key: _keys.ROW_ADD_SECTION.key,
rank: _keys.ROW_ADD_SECTION_RANK[_keys.ADD_ROW_ABOVE_ITEM.key]
}],
component: function component() {
return /*#__PURE__*/_react.default.createElement(_AddRowAboveItem.AddRowAboveItem, {
api: api
});
}
}, {
type: _keys.ADD_ROW_BELOW_ITEM.type,
key: _keys.ADD_ROW_BELOW_ITEM.key,
parents: [{
type: _keys.ROW_ADD_SECTION.type,
key: _keys.ROW_ADD_SECTION.key,
rank: _keys.ROW_ADD_SECTION_RANK[_keys.ADD_ROW_BELOW_ITEM.key]
}],
component: function component() {
return /*#__PURE__*/_react.default.createElement(_AddRowBelowItem.AddRowBelowItem, {
api: api
});
}
}, {
type: _keys.MOVE_ROW_UP_ITEM.type,
key: _keys.MOVE_ROW_UP_ITEM.key,
parents: [{
type: _keys.ROW_ADD_SECTION.type,
key: _keys.ROW_ADD_SECTION.key,
rank: _keys.ROW_ADD_SECTION_RANK[_keys.MOVE_ROW_UP_ITEM.key]
}],
component: function component() {
return /*#__PURE__*/_react.default.createElement(_MoveRowUpItem.MoveRowUpItem, {
api: api
});
}
}, {
type: _keys.MOVE_ROW_DOWN_ITEM.type,
key: _keys.MOVE_ROW_DOWN_ITEM.key,
parents: [{
type: _keys.ROW_ADD_SECTION.type,
key: _keys.ROW_ADD_SECTION.key,
rank: _keys.ROW_ADD_SECTION_RANK[_keys.MOVE_ROW_DOWN_ITEM.key]
}],
component: function component() {
return /*#__PURE__*/_react.default.createElement(_MoveRowDownItem.MoveRowDownItem, {
api: api
});
}
},
// --- Danger section (Clear cells, Delete row) ---
{
type: _keys.ROW_DANGER_SECTION.type,
key: _keys.ROW_DANGER_SECTION.key,
parents: [{
type: _keys.ROW_MENU.type,
key: _keys.ROW_MENU.key,
rank: _keys.ROW_MENU_SECTION_RANK[_keys.ROW_DANGER_SECTION.key]
}],
component: function component(props) {
return /*#__PURE__*/_react.default.createElement(_editorToolbar.ToolbarDropdownItemSection, {
hasSeparator: true
}, props.children);
}
}, {
type: _keys.DELETE_ROW_ITEM.type,
key: _keys.DELETE_ROW_ITEM.key,
parents: [{
type: _keys.ROW_DANGER_SECTION.type,
key: _keys.ROW_DANGER_SECTION.key,
rank: _keys.ROW_DANGER_SECTION_RANK[_keys.DELETE_ROW_ITEM.key]
}],
component: function component() {
return /*#__PURE__*/_react.default.createElement(_DeleteRowItem.DeleteRowItem, {
api: api
});
}
}];
};