@atlaskit/editor-plugin-layout
Version:
Layout plugin for @atlaskit/editor-core
93 lines (92 loc) • 3.69 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getLayoutQuickInsertComponents = void 0;
var _react = _interopRequireDefault(require("react"));
var _insertBlock = require("@atlaskit/editor-common/messages/insert-block");
var _layout = require("@atlaskit/editor-common/messages/layout");
var _createQuickInsertMatcher = require("@atlaskit/editor-common/quick-insert/create-quick-insert-matcher");
var _keys = require("@atlaskit/editor-common/quick-insert/keys");
var _rank = require("@atlaskit/editor-common/quick-insert/rank");
var _LayoutQuickInsertMenuItem = require("./LayoutQuickInsertMenuItem");
var layoutItems = [{
columnCount: 2,
description: _insertBlock.toolbarInsertBlockMessages.columnsDescriptionAdvancedLayout,
item: _keys.TWO_COLUMNS_LAYOUT_MENU_ITEM,
keyword: 'two column',
previewImageUrls: {
light: 'https://dam-cdn.atl.orangelogic.com/CDNLink/AT12OVMM.png',
dark: 'https://dam-cdn.atl.orangelogic.com/CDNLink/AT12OVJY.png'
},
title: _layout.toolbarMessages.twoColumnsAdvancedLayout
}, {
columnCount: 3,
description: _insertBlock.toolbarInsertBlockMessages.columnsDescriptionAdvancedLayout,
item: _keys.THREE_COLUMNS_LAYOUT_MENU_ITEM,
keyword: 'three column',
previewImageUrls: {
light: 'https://dam-cdn.atl.orangelogic.com/CDNLink/AT12OVNM.png',
dark: 'https://dam-cdn.atl.orangelogic.com/CDNLink/AT12OVK3.png'
},
title: _layout.toolbarMessages.threeColumnsAdvancedLayout
}, {
columnCount: 4,
description: _insertBlock.toolbarInsertBlockMessages.columnsDescriptionAdvancedLayout,
item: _keys.FOUR_COLUMNS_LAYOUT_MENU_ITEM,
keyword: 'four column',
previewImageUrls: {
light: 'https://dam-cdn.atl.orangelogic.com/CDNLink/AT12OVNI.png',
dark: 'https://dam-cdn.atl.orangelogic.com/CDNLink/AT12OVK5.png'
},
title: _layout.toolbarMessages.fourColumns
}, {
columnCount: 5,
description: _insertBlock.toolbarInsertBlockMessages.columnsDescriptionAdvancedLayout,
item: _keys.FIVE_COLUMNS_LAYOUT_MENU_ITEM,
keyword: 'five column',
previewImageUrls: {
light: 'https://dam-cdn.atl.orangelogic.com/CDNLink/AT12OVNO.png',
dark: 'https://dam-cdn.atl.orangelogic.com/CDNLink/AT12OVJV.png'
},
title: _layout.toolbarMessages.fiveColumns
}];
var getLayoutQuickInsertComponents = exports.getLayoutQuickInsertComponents = function getLayoutQuickInsertComponents(_ref) {
var api = _ref.api;
return layoutItems.map(function (_ref2) {
var columnCount = _ref2.columnCount,
description = _ref2.description,
item = _ref2.item,
keyword = _ref2.keyword,
previewImageUrls = _ref2.previewImageUrls,
title = _ref2.title;
return {
key: item.key,
type: item.type,
parents: [{
key: _keys.STRUCTURE_SECTION.key,
type: _keys.STRUCTURE_SECTION.type,
rank: _rank.STRUCTURE_SECTION_RANK[item.key]
}],
match: (0, _createQuickInsertMatcher.createQuickInsertMatcher)(function (_ref3) {
var formatMessage = _ref3.formatMessage;
return {
description: formatMessage(description, {
numberOfColumns: columnCount
}),
keywords: ['layout', 'column', 'section', 'col', keyword],
title: formatMessage(title)
};
}),
component: function component() {
return /*#__PURE__*/_react.default.createElement(_LayoutQuickInsertMenuItem.LayoutQuickInsertMenuItem, {
api: api,
columnCount: columnCount,
previewImageUrls: previewImageUrls,
title: title
});
}
};
});
};