add Commands interface

This commit is contained in:
Philipp Kühn
2021-02-10 09:59:35 +01:00
parent 0ed368e9f4
commit 290ff76e37
100 changed files with 695 additions and 487 deletions

View File

@@ -1,9 +1,9 @@
import { Command } from '../types'
import { Command, Commands } from '../types'
/**
* Runs one command after the other and stops at the first which returns true.
*/
export const first = (commands: Command[] | ((props: Parameters<Command>[0]) => Command[])): Command => props => {
export const first: Commands['first'] = commands => props => {
const items = typeof commands === 'function'
? commands(props)
: commands
@@ -16,3 +16,9 @@ export const first = (commands: Command[] | ((props: Parameters<Command>[0]) =>
return false
}
declare module '@tiptap/core' {
interface Commands {
first: (commands: Command[] | ((props: Parameters<Command>[0]) => Command[])) => Command,
}
}