@atlaskit/editor-plugin-table
Version:
Table plugin for the @atlaskit/editor
222 lines (221 loc) • 7.85 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getColumnMenuComponents = void 0;
var _react = _interopRequireDefault(require("react"));
var _editorToolbar = require("@atlaskit/editor-toolbar");
var _AddColumnLeftItem = require("./items/AddColumnLeftItem");
var _AddColumnRightItem = require("./items/AddColumnRightItem");
var _ColumnBackgroundSection = require("./items/ColumnBackgroundSection");
var _ColumnToggleSection = require("./items/ColumnToggleSection");
var _DeleteColumnItem = require("./items/DeleteColumnItem");
var _DistributeColumnsItem = require("./items/DistributeColumnsItem");
var _HeaderColumnToggleItem = require("./items/HeaderColumnToggleItem");
var _MoveColumnLeftItem = require("./items/MoveColumnLeftItem");
var _MoveColumnRightItem = require("./items/MoveColumnRightItem");
var _SortDecreasingItem = require("./items/SortDecreasingItem");
var _SortIncreasingItem = require("./items/SortIncreasingItem");
var _keys = require("./keys");
var getColumnMenuComponents = exports.getColumnMenuComponents = function getColumnMenuComponents(_ref) {
var api = _ref.api;
return [
// --- Menu surface ---
{
type: _keys.COLUMN_MENU.type,
key: _keys.COLUMN_MENU.key
},
// --- Toggle section (Header column) ---
{
type: _keys.COLUMN_TOGGLE_SECTION.type,
key: _keys.COLUMN_TOGGLE_SECTION.key,
parents: [{
type: _keys.COLUMN_MENU.type,
key: _keys.COLUMN_MENU.key,
rank: _keys.COLUMN_SECTION_RANK[_keys.COLUMN_TOGGLE_SECTION.key]
}],
component: function component(props) {
return /*#__PURE__*/_react.default.createElement(_ColumnToggleSection.ColumnToggleSection, {
api: api
}, props.children);
}
}, {
type: _keys.HEADER_COLUMN_TOGGLE_ITEM.type,
key: _keys.HEADER_COLUMN_TOGGLE_ITEM.key,
parents: [{
type: _keys.COLUMN_TOGGLE_SECTION.type,
key: _keys.COLUMN_TOGGLE_SECTION.key,
rank: _keys.COLUMN_TOGGLE_SECTION_RANK[_keys.HEADER_COLUMN_TOGGLE_ITEM.key]
}],
component: function component() {
return /*#__PURE__*/_react.default.createElement(_HeaderColumnToggleItem.HeaderColumnToggleItem, {
api: api
});
}
},
// --- Background color section ---
{
type: _keys.COLUMN_BACKGROUND_SECTION.type,
key: _keys.COLUMN_BACKGROUND_SECTION.key,
parents: [{
type: _keys.COLUMN_MENU.type,
key: _keys.COLUMN_MENU.key,
rank: _keys.COLUMN_SECTION_RANK[_keys.COLUMN_BACKGROUND_SECTION.key]
}],
component: function component(props) {
return /*#__PURE__*/_react.default.createElement(_ColumnBackgroundSection.ColumnBackgroundSection, {
api: api
}, props.children);
}
},
// --- Sort section ---
{
type: _keys.COLUMN_SORT_SECTION.type,
key: _keys.COLUMN_SORT_SECTION.key,
parents: [{
type: _keys.COLUMN_MENU.type,
key: _keys.COLUMN_MENU.key,
rank: _keys.COLUMN_SECTION_RANK[_keys.COLUMN_SORT_SECTION.key]
}],
component: function component(props) {
return /*#__PURE__*/_react.default.createElement(_editorToolbar.ToolbarDropdownItemSection, {
hasSeparator: true
}, props.children);
}
}, {
type: _keys.SORT_INCREASING_ITEM.type,
key: _keys.SORT_INCREASING_ITEM.key,
parents: [{
type: _keys.COLUMN_SORT_SECTION.type,
key: _keys.COLUMN_SORT_SECTION.key,
rank: _keys.COLUMN_SORT_SECTION_RANK[_keys.SORT_INCREASING_ITEM.key]
}],
component: function component() {
return /*#__PURE__*/_react.default.createElement(_SortIncreasingItem.SortIncreasingItem, {
api: api
});
}
}, {
type: _keys.SORT_DECREASING_ITEM.type,
key: _keys.SORT_DECREASING_ITEM.key,
parents: [{
type: _keys.COLUMN_SORT_SECTION.type,
key: _keys.COLUMN_SORT_SECTION.key,
rank: _keys.COLUMN_SORT_SECTION_RANK[_keys.SORT_DECREASING_ITEM.key]
}],
component: function component() {
return /*#__PURE__*/_react.default.createElement(_SortDecreasingItem.SortDecreasingItem, {
api: api
});
}
},
// --- Add / Move section ---
{
type: _keys.COLUMN_ADD_SECTION.type,
key: _keys.COLUMN_ADD_SECTION.key,
parents: [{
type: _keys.COLUMN_MENU.type,
key: _keys.COLUMN_MENU.key,
rank: _keys.COLUMN_SECTION_RANK[_keys.COLUMN_ADD_SECTION.key]
}],
component: function component(props) {
return /*#__PURE__*/_react.default.createElement(_editorToolbar.ToolbarDropdownItemSection, {
hasSeparator: true
}, props.children);
}
}, {
type: _keys.ADD_COLUMN_LEFT_ITEM.type,
key: _keys.ADD_COLUMN_LEFT_ITEM.key,
parents: [{
type: _keys.COLUMN_ADD_SECTION.type,
key: _keys.COLUMN_ADD_SECTION.key,
rank: _keys.COLUMN_ADD_SECTION_RANK[_keys.ADD_COLUMN_LEFT_ITEM.key]
}],
component: function component() {
return /*#__PURE__*/_react.default.createElement(_AddColumnLeftItem.AddColumnLeftItem, {
api: api
});
}
}, {
type: _keys.ADD_COLUMN_RIGHT_ITEM.type,
key: _keys.ADD_COLUMN_RIGHT_ITEM.key,
parents: [{
type: _keys.COLUMN_ADD_SECTION.type,
key: _keys.COLUMN_ADD_SECTION.key,
rank: _keys.COLUMN_ADD_SECTION_RANK[_keys.ADD_COLUMN_RIGHT_ITEM.key]
}],
component: function component() {
return /*#__PURE__*/_react.default.createElement(_AddColumnRightItem.AddColumnRightItem, {
api: api
});
}
}, {
type: _keys.MOVE_COLUMN_LEFT_ITEM.type,
key: _keys.MOVE_COLUMN_LEFT_ITEM.key,
parents: [{
type: _keys.COLUMN_ADD_SECTION.type,
key: _keys.COLUMN_ADD_SECTION.key,
rank: _keys.COLUMN_ADD_SECTION_RANK[_keys.MOVE_COLUMN_LEFT_ITEM.key]
}],
component: function component() {
return /*#__PURE__*/_react.default.createElement(_MoveColumnLeftItem.MoveColumnLeftItem, {
api: api
});
}
}, {
type: _keys.MOVE_COLUMN_RIGHT_ITEM.type,
key: _keys.MOVE_COLUMN_RIGHT_ITEM.key,
parents: [{
type: _keys.COLUMN_ADD_SECTION.type,
key: _keys.COLUMN_ADD_SECTION.key,
rank: _keys.COLUMN_ADD_SECTION_RANK[_keys.MOVE_COLUMN_RIGHT_ITEM.key]
}],
component: function component() {
return /*#__PURE__*/_react.default.createElement(_MoveColumnRightItem.MoveColumnRightItem, {
api: api
});
}
}, {
type: _keys.DISTRIBUTE_COLUMNS_ITEM.type,
key: _keys.DISTRIBUTE_COLUMNS_ITEM.key,
parents: [{
type: _keys.COLUMN_ADD_SECTION.type,
key: _keys.COLUMN_ADD_SECTION.key,
rank: _keys.COLUMN_ADD_SECTION_RANK[_keys.DISTRIBUTE_COLUMNS_ITEM.key]
}],
component: function component() {
return /*#__PURE__*/_react.default.createElement(_DistributeColumnsItem.DistributeColumnsItem, {
api: api
});
}
},
// --- Danger section (Clear cells, Delete column) ---
{
type: _keys.COLUMN_DANGER_SECTION.type,
key: _keys.COLUMN_DANGER_SECTION.key,
parents: [{
type: _keys.COLUMN_MENU.type,
key: _keys.COLUMN_MENU.key,
rank: _keys.COLUMN_SECTION_RANK[_keys.COLUMN_DANGER_SECTION.key]
}],
component: function component(props) {
return /*#__PURE__*/_react.default.createElement(_editorToolbar.ToolbarDropdownItemSection, {
hasSeparator: true
}, props.children);
}
}, {
type: _keys.DELETE_COLUMN_ITEM.type,
key: _keys.DELETE_COLUMN_ITEM.key,
parents: [{
type: _keys.COLUMN_DANGER_SECTION.type,
key: _keys.COLUMN_DANGER_SECTION.key,
rank: _keys.COLUMN_DANGER_SECTION_RANK[_keys.DELETE_COLUMN_ITEM.key]
}],
component: function component() {
return /*#__PURE__*/_react.default.createElement(_DeleteColumnItem.DeleteColumnItem, {
api: api
});
}
}];
};