@atlaskit/editor-plugin-synced-block
Version:
SyncedBlock plugin for @atlaskit/editor-core
35 lines • 1.29 kB
JavaScript
import React from 'react';
import { INSERT_BLOCK_SECTION, INSERT_BLOCK_SECTION_RANK, SYNCED_BLOCK_BUTTON, SYNCED_BLOCK_GROUP, SYNCED_BLOCK_SECTION_RANK } from '@atlaskit/editor-common/toolbar';
import { Show, ToolbarButtonGroup } from '@atlaskit/editor-toolbar';
import { CreateSyncedBlockButton } from './CreateSyncedBlockButton';
const SYNCED_BLOCK_PRIMARY_TOOLBAR_GROUP = {
type: SYNCED_BLOCK_GROUP.type,
key: SYNCED_BLOCK_GROUP.key,
component: ({
children
}) => /*#__PURE__*/React.createElement(Show, {
above: "md"
}, /*#__PURE__*/React.createElement(ToolbarButtonGroup, null, children)),
parents: [{
type: INSERT_BLOCK_SECTION.type,
key: INSERT_BLOCK_SECTION.key,
rank: INSERT_BLOCK_SECTION_RANK[SYNCED_BLOCK_GROUP.key]
}]
};
export const getToolbarComponents = (api, enableSourceSyncedBlockCreation) => {
if (!enableSourceSyncedBlockCreation) {
return [];
}
return [SYNCED_BLOCK_PRIMARY_TOOLBAR_GROUP, {
type: SYNCED_BLOCK_BUTTON.type,
key: SYNCED_BLOCK_BUTTON.key,
component: () => /*#__PURE__*/React.createElement(CreateSyncedBlockButton, {
api: api
}),
parents: [{
type: SYNCED_BLOCK_GROUP.type,
key: SYNCED_BLOCK_GROUP.key,
rank: SYNCED_BLOCK_SECTION_RANK[SYNCED_BLOCK_BUTTON.key]
}]
}];
};