@atlaskit/editor-plugin-local-id
Version:
LocalId plugin for @atlaskit/editor-core
37 lines • 1.35 kB
JavaScript
import { fg } from '@atlaskit/platform-feature-flags';
import { replaceNode, getNode } from './editor-actions';
import { createPlugin } from './pm-plugins/main';
import { createWatchmenPlugin, localIdWatchmenPluginKey } from './pm-plugins/watchmen';
export var localIdPlugin = function localIdPlugin(_ref) {
var api = _ref.api;
return {
name: 'localId',
actions: {
replaceNode: replaceNode(api),
getNode: getNode(api)
},
pmPlugins: function pmPlugins() {
return [{
name: 'localIdPlugin',
plugin: function plugin() {
return createPlugin(api);
}
}, {
name: 'localId-watchmen',
plugin: function plugin() {
return fg('platform_editor_ai_aifc_localid_error_reporting') ? createWatchmenPlugin(api) : undefined;
}
}];
},
getSharedState: function getSharedState(editorState) {
if (!editorState) {
return undefined;
}
var watchmentPluginState = localIdWatchmenPluginKey.getState(editorState);
return {
localIdWatchmenEnabled: !!(watchmentPluginState !== null && watchmentPluginState !== void 0 && watchmentPluginState.enabled),
localIdStatus: new Map(watchmentPluginState === null || watchmentPluginState === void 0 ? void 0 : watchmentPluginState.localIdStatus)
};
}
};
};