@atlaskit/editor-plugin-alignment
Version:
Alignment plugin for @atlaskit/editor-core
85 lines (84 loc) • 3.2 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getToolbarComponents = void 0;
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
var _react = _interopRequireDefault(require("react"));
var _toolbar = require("@atlaskit/editor-common/toolbar");
var _AlignmentMenu = require("./Toolbar/AlignmentMenu");
var _AlignmentMenuItem = require("./Toolbar/AlignmentMenuItem");
var _MenuSection = require("./Toolbar/MenuSection");
var _options = require("./Toolbar/options");
var getAlignmentMenuItems = function getAlignmentMenuItems(api) {
return Object.entries((0, _options.alignmentOptions)()).map(function (_ref) {
var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
alignment = _ref2[0],
item = _ref2[1];
var key = item.key,
type = item.type,
rank = item.rank;
return {
type: type,
key: key,
parents: [{
type: _toolbar.ALIGNMENT_MENU_SECTION.type,
key: _toolbar.ALIGNMENT_MENU_SECTION.key,
rank: rank
}],
component: function component(_ref3) {
var parents = _ref3.parents;
return /*#__PURE__*/_react.default.createElement(_AlignmentMenuItem.AlignmentMenuItem, {
api: api,
option: item,
alignment: alignment,
parents: parents
});
}
};
});
};
var getToolbarComponents = exports.getToolbarComponents = function getToolbarComponents(api) {
return [{
type: _toolbar.ALIGNMENT_GROUP.type,
key: _toolbar.ALIGNMENT_GROUP.key,
parents: [{
type: _toolbar.TEXT_SECTION.type,
key: _toolbar.TEXT_SECTION.key,
rank: _toolbar.TEXT_SECTION_RANK[_toolbar.ALIGNMENT_GROUP.key]
}, {
type: _toolbar.TEXT_SECTION_PRIMARY_TOOLBAR.type,
key: _toolbar.TEXT_SECTION_PRIMARY_TOOLBAR.key,
rank: _toolbar.TEXT_SECTION_PRIMARY_TOOLBAR_RANK[_toolbar.ALIGNMENT_GROUP.key]
}]
}, {
type: _toolbar.ALIGNMENT_MENU.type,
key: _toolbar.ALIGNMENT_MENU.key,
parents: [{
type: _toolbar.ALIGNMENT_GROUP.type,
key: _toolbar.ALIGNMENT_GROUP.key,
rank: _toolbar.ALIGNMENT_GROUP_RANK[_toolbar.ALIGNMENT_MENU.key]
}],
component: function component(_ref4) {
var children = _ref4.children;
return /*#__PURE__*/_react.default.createElement(_AlignmentMenu.AlignmentMenu, {
api: api
}, children);
}
}, {
type: _toolbar.ALIGNMENT_MENU_SECTION.type,
key: _toolbar.ALIGNMENT_MENU_SECTION.key,
parents: [{
type: _toolbar.ALIGNMENT_MENU.type,
key: _toolbar.ALIGNMENT_MENU.key,
rank: _toolbar.ALIGNMENT_MENU_RANK[_toolbar.ALIGNMENT_MENU_SECTION.key]
}, {
type: _toolbar.TEXT_COLLAPSED_MENU.type,
key: _toolbar.TEXT_COLLAPSED_MENU.key,
rank: _toolbar.TEXT_COLLAPSED_MENU_RANK[_toolbar.ALIGNMENT_MENU_SECTION.key]
}],
component: _MenuSection.MenuSection
}].concat((0, _toConsumableArray2.default)(getAlignmentMenuItems(api)));
};