| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- import {objectEach} from './../../helpers/object';
- import alignmentItem, {KEY as ALIGNMENT} from './predefinedItems/alignment';
- import clearColumnItem, {KEY as CLEAR_COLUMN} from './predefinedItems/clearColumn';
- import columnLeftItem, {KEY as COLUMN_LEFT} from './predefinedItems/columnLeft';
- import columnRightItem, {KEY as COLUMN_RIGHT} from './predefinedItems/columnRight';
- import readOnlyItem, {KEY as READ_ONLY} from './predefinedItems/readOnly';
- import redoItem, {KEY as REDO} from './predefinedItems/redo';
- import removeColumnItem, {KEY as REMOVE_COLUMN} from './predefinedItems/removeColumn';
- import removeRowItem, {KEY as REMOVE_ROW} from './predefinedItems/removeRow';
- import rowAboveItem, {KEY as ROW_ABOVE} from './predefinedItems/rowAbove';
- import rowBelowItem, {KEY as ROW_BELOW} from './predefinedItems/rowBelow';
- import separatorItem, {KEY as SEPARATOR} from './predefinedItems/separator';
- import undoItem, {KEY as UNDO} from './predefinedItems/undo';
- export {KEY as ALIGNMENT} from './predefinedItems/alignment';
- export {KEY as CLEAR_COLUMN} from './predefinedItems/clearColumn';
- export {KEY as COLUMN_LEFT} from './predefinedItems/columnLeft';
- export {KEY as COLUMN_RIGHT} from './predefinedItems/columnRight';
- export {KEY as READ_ONLY} from './predefinedItems/readOnly';
- export {KEY as REDO} from './predefinedItems/redo';
- export {KEY as REMOVE_COLUMN} from './predefinedItems/removeColumn';
- export {KEY as REMOVE_ROW} from './predefinedItems/removeRow';
- export {KEY as ROW_ABOVE} from './predefinedItems/rowAbove';
- export {KEY as ROW_BELOW} from './predefinedItems/rowBelow';
- export {KEY as SEPARATOR} from './predefinedItems/separator';
- export {KEY as UNDO} from './predefinedItems/undo';
- export const ITEMS = [
- ROW_ABOVE, ROW_BELOW, COLUMN_LEFT, COLUMN_RIGHT, CLEAR_COLUMN, REMOVE_ROW, REMOVE_COLUMN, UNDO, REDO, READ_ONLY,
- ALIGNMENT, SEPARATOR
- ];
- const _predefinedItems = {
- [SEPARATOR]: separatorItem,
- [ROW_ABOVE]: rowAboveItem,
- [ROW_BELOW]: rowBelowItem,
- [COLUMN_LEFT]: columnLeftItem,
- [COLUMN_RIGHT]: columnRightItem,
- [CLEAR_COLUMN]: clearColumnItem,
- [REMOVE_ROW]: removeRowItem,
- [REMOVE_COLUMN]: removeColumnItem,
- [UNDO]: undoItem,
- [REDO]: redoItem,
- [READ_ONLY]: readOnlyItem,
- [ALIGNMENT]: alignmentItem,
- };
- /**
- * Gets new object with all predefined menu items.
- *
- * @returns {Object}
- */
- export function predefinedItems() {
- const items = {};
- objectEach(_predefinedItems, (itemFactory, key) => {
- items[key] = itemFactory();
- });
- return items;
- }
- /**
- * Add new predefined menu item to the collection.
- *
- * @param {String} key Menu command id.
- * @param {Object} item Object command descriptor.
- */
- export function addItem(key, item) {
- if (ITEMS.indexOf(key) === -1) {
- _predefinedItems[key] = item;
- }
- }
|