@atlaskit/editor-plugin-text-color
Version:
Text color plugin for @atlaskit/editor-core
67 lines • 2.46 kB
JavaScript
import React from 'react';
import { TEXT_SECTION, TEXT_SECTION_RANK, TEXT_COLOR_HIGHLIGHT_GROUP, TEXT_COLOR_HIGHLIGHT_MENU, TEXT_COLOR_HIGHLIGHT_MENU_SECTION, TEXT_COLOR_MENU_ITEM, TEXT_COLOR_HIGHLIGHT_MENU_SECTION_RANK, TEXT_COLOR_HIGHLIGHT_GROUP_RANK, TEXT_COLOR_HIGHLIGHT_MENU_RANK, TEXT_COLLAPSED_MENU_RANK, TEXT_COLLAPSED_MENU, CLEAR_COLOR_MENU_ITEM, TEXT_SECTION_PRIMARY_TOOLBAR_RANK, TEXT_SECTION_PRIMARY_TOOLBAR } from '@atlaskit/editor-common/toolbar';
import { RemoveColorMenuItem } from './RemoveColorMenuItem';
import { TextColorHighlightMenu } from './TextColorHighlightMenu';
import { TextColorMenuItem } from './TextColorMenuItem';
import { TextMenuSection } from './TextMenuSection';
export const getToolbarComponents = api => {
return [{
...TEXT_COLOR_HIGHLIGHT_GROUP,
parents: [{
...TEXT_SECTION,
rank: TEXT_SECTION_RANK[TEXT_COLOR_HIGHLIGHT_GROUP.key]
}, {
type: TEXT_SECTION_PRIMARY_TOOLBAR.type,
key: TEXT_SECTION_PRIMARY_TOOLBAR.key,
rank: TEXT_SECTION_PRIMARY_TOOLBAR_RANK[TEXT_COLOR_HIGHLIGHT_GROUP.key]
}]
}, {
...TEXT_COLOR_HIGHLIGHT_MENU,
parents: [{
...TEXT_COLOR_HIGHLIGHT_GROUP,
rank: TEXT_COLOR_HIGHLIGHT_GROUP_RANK[TEXT_COLOR_HIGHLIGHT_MENU.key]
}],
component: ({
children
}) => /*#__PURE__*/React.createElement(TextColorHighlightMenu, {
api: api
}, children)
}, {
...TEXT_COLOR_HIGHLIGHT_MENU_SECTION,
parents: [{
...TEXT_COLOR_HIGHLIGHT_MENU,
rank: TEXT_COLOR_HIGHLIGHT_MENU_RANK[TEXT_COLOR_HIGHLIGHT_MENU_SECTION.key]
}, {
type: TEXT_COLLAPSED_MENU.type,
key: TEXT_COLLAPSED_MENU.key,
rank: TEXT_COLLAPSED_MENU_RANK[TEXT_COLOR_HIGHLIGHT_MENU_SECTION.key]
}],
component: TextMenuSection
}, {
...TEXT_COLOR_MENU_ITEM,
parents: [{
...TEXT_COLOR_HIGHLIGHT_MENU_SECTION,
rank: TEXT_COLOR_HIGHLIGHT_MENU_SECTION_RANK[TEXT_COLOR_MENU_ITEM.key]
}],
component: ({
parents
}) => /*#__PURE__*/React.createElement(TextColorMenuItem, {
api: api,
parents: parents
})
}, {
...CLEAR_COLOR_MENU_ITEM,
parents: [{
...TEXT_COLOR_HIGHLIGHT_MENU_SECTION,
rank: TEXT_COLOR_HIGHLIGHT_MENU_SECTION_RANK[CLEAR_COLOR_MENU_ITEM.key]
}],
component: ({
parents
}) => {
return /*#__PURE__*/React.createElement(RemoveColorMenuItem, {
api: api,
parents: parents
});
}
}];
};