UNPKG

@atlaskit/editor-plugin-date

Version:

Date plugin for @atlaskit/editor-core

36 lines 1.1 kB
import { SafePlugin } from '@atlaskit/editor-common/safe-plugin'; import { pluginFactory } from '@atlaskit/editor-common/utils'; import { DateNodeView } from '../nodeviews/DateNodeView'; import { pluginKey } from './plugin-key'; import { mapping, onSelectionChanged, reducer } from './utils'; const dest = pluginFactory(pluginKey, reducer, { mapping, onSelectionChanged }); const createPluginState = dest.createPluginState; const getPluginState = dest.getPluginState; const createPlugin = pmPluginFactoryParams => { const { dispatch } = pmPluginFactoryParams; const newPluginState = { showDatePickerAt: null, isNew: false, isDateEmpty: false, focusDateInput: false, isInitialised: true }; return new SafePlugin({ state: createPluginState(dispatch, newPluginState), key: pluginKey, props: { nodeViews: { date: (node, view, getPos, decorations) => { return new DateNodeView(node, view, getPos, pmPluginFactoryParams.getIntl(), decorations); } } } }); }; export { getPluginState }; export default createPlugin;