tiptap/packages/starter-kit/src/index.ts
2021-03-11 11:09:35 +01:00

58 lines
2.5 KiB
TypeScript

import Dropcursor, { DropcursorOptions } from '@tiptap/extension-dropcursor'
import Gapcursor from '@tiptap/extension-gapcursor'
import Document from '@tiptap/extension-document'
import Paragraph, { ParagraphOptions } from '@tiptap/extension-paragraph'
import Text from '@tiptap/extension-text'
import History, { HistoryOptions } from '@tiptap/extension-history'
import Bold, { BoldOptions } from '@tiptap/extension-bold'
import Italic, { ItalicOptions } from '@tiptap/extension-italic'
import Code, { CodeOptions } from '@tiptap/extension-code'
import CodeBlock, { CodeBlockOptions } from '@tiptap/extension-code-block'
import Heading, { HeadingOptions } from '@tiptap/extension-heading'
import HardBreak, { HardBreakOptions } from '@tiptap/extension-hard-break'
import Strike, { StrikeOptions } from '@tiptap/extension-strike'
import Blockquote, { BlockquoteOptions } from '@tiptap/extension-blockquote'
import HorizontalRule, { HorizontalRuleOptions } from '@tiptap/extension-horizontal-rule'
import BulletList, { BulletListOptions } from '@tiptap/extension-bullet-list'
import OrderedList, { OrderedListOptions } from '@tiptap/extension-ordered-list'
import ListItem, { ListItemOptions } from '@tiptap/extension-list-item'
export function defaultExtensions(options?: Partial<{
dropcursor: Partial<DropcursorOptions>,
paragraph: Partial<ParagraphOptions>,
history: Partial<HistoryOptions>,
bold: Partial<BoldOptions>,
italic: Partial<ItalicOptions>,
code: Partial<CodeOptions>,
codeBlock: Partial<CodeBlockOptions>,
heading: Partial<HeadingOptions>,
hardBreak: Partial<HardBreakOptions>,
strike: Partial<StrikeOptions>,
blockquote: Partial<BlockquoteOptions>,
horizontalRule: Partial<HorizontalRuleOptions>,
bulletList: Partial<BulletListOptions>,
orderedList: Partial<OrderedListOptions>,
listItem: Partial<ListItemOptions>,
}>) {
return [
Document,
Paragraph.configure(options?.paragraph),
Text,
Bold.configure(options?.bold),
Italic.configure(options?.italic),
Code.configure(options?.code),
Strike.configure(options?.strike),
HardBreak.configure(options?.hardBreak),
Heading.configure(options?.heading),
Blockquote.configure(options?.blockquote),
BulletList.configure(options?.bulletList),
OrderedList.configure(options?.orderedList),
ListItem.configure(options?.listItem),
HorizontalRule.configure(options?.horizontalRule),
CodeBlock.configure(options?.codeBlock),
History.configure(options?.history),
Dropcursor.configure(options?.dropcursor),
Gapcursor,
]
}