@atlaskit/editor-plugin-find-replace
Version:
find replace plugin for @atlaskit/editor-core
29 lines (28 loc) • 1.43 kB
TypeScript
import type { TRIGGER_METHOD } from '@atlaskit/editor-common/analytics';
import type { NextEditorPlugin, OptionalPlugin } from '@atlaskit/editor-common/types';
import type { AnalyticsPlugin } from '@atlaskit/editor-plugin-analytics';
import type { CardPlugin } from '@atlaskit/editor-plugin-card';
import type { ExpandPlugin } from '@atlaskit/editor-plugin-expand';
import type { MentionsPlugin } from '@atlaskit/editor-plugin-mentions';
import type { PrimaryToolbarPlugin } from '@atlaskit/editor-plugin-primary-toolbar';
import type { FindReplacePluginState, FindReplaceToolbarButtonActionProps } from './types';
export type FindReplacePluginOptions = {
takeFullWidth: boolean;
twoLineEditorToolbar: boolean;
};
export type FindReplacePluginDependencies = [
OptionalPlugin<AnalyticsPlugin>,
OptionalPlugin<PrimaryToolbarPlugin>,
OptionalPlugin<MentionsPlugin>,
OptionalPlugin<CardPlugin>,
OptionalPlugin<ExpandPlugin>
];
export type FindReplacePlugin = NextEditorPlugin<'findReplace', {
actions: {
activateFindReplace: (triggerMethod?: TRIGGER_METHOD.SHORTCUT | TRIGGER_METHOD.TOOLBAR | TRIGGER_METHOD.EXTERNAL) => boolean;
registerToolbarButton: (params: FindReplaceToolbarButtonActionProps) => React.ReactNode;
};
dependencies: FindReplacePluginDependencies;
pluginConfiguration: FindReplacePluginOptions;
sharedState: FindReplacePluginState | undefined;
}>;