mirror of
https://github.com/ueberdosis/tiptap.git
synced 2024-11-28 15:49:23 +08:00
feat: add setMeta command
This commit is contained in:
parent
b3b297f5ce
commit
36dad2bbae
21
docs/src/docPages/api/commands/set-meta.md
Normal file
21
docs/src/docPages/api/commands/set-meta.md
Normal file
@ -0,0 +1,21 @@
|
||||
# setMeta
|
||||
Store a metadata property in the current transaction.
|
||||
|
||||
## Parameters
|
||||
`key: string`
|
||||
|
||||
The name of your metadata. You can get its value at any time with [getMeta](https://prosemirror.net/docs/ref/#state.Transaction.getMeta).
|
||||
|
||||
`value: any`
|
||||
|
||||
Store any value within your metadata.
|
||||
|
||||
## Usage
|
||||
```js
|
||||
// Prevent the update event from being triggered
|
||||
editor.commands.setMeta('preventUpdate', true)
|
||||
|
||||
// Store any value in the current transaction.
|
||||
// You can get this value at any time with tr.getMeta('foo').
|
||||
editor.commands.setMeta('foo', 'bar')
|
||||
```
|
@ -208,6 +208,8 @@
|
||||
- title: setMark
|
||||
link: /api/commands/set-mark
|
||||
type: draft
|
||||
- title: setMeta
|
||||
link: /api/commands/set-meta
|
||||
- title: setNode
|
||||
link: /api/commands/set-node
|
||||
type: draft
|
||||
|
18
packages/core/src/commands/setMeta.ts
Normal file
18
packages/core/src/commands/setMeta.ts
Normal file
@ -0,0 +1,18 @@
|
||||
import { Command, RawCommands } from '../types'
|
||||
|
||||
declare module '@tiptap/core' {
|
||||
interface Commands {
|
||||
setMeta: {
|
||||
/**
|
||||
* Store a metadata property in the current transaction.
|
||||
*/
|
||||
setMeta: (key: string, value: any) => Command,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export const setMeta: RawCommands['setMeta'] = (key, value) => ({ tr }) => {
|
||||
tr.setMeta(key, value)
|
||||
|
||||
return true
|
||||
}
|
@ -30,6 +30,7 @@ import * as selectNodeForward from '../commands/selectNodeForward'
|
||||
import * as selectParentNode from '../commands/selectParentNode'
|
||||
import * as setContent from '../commands/setContent'
|
||||
import * as setMark from '../commands/setMark'
|
||||
import * as setMeta from '../commands/setMeta'
|
||||
import * as setNode from '../commands/setNode'
|
||||
import * as setNodeSelection from '../commands/setNodeSelection'
|
||||
import * as setTextSelection from '../commands/setTextSelection'
|
||||
@ -78,6 +79,7 @@ export { selectNodeForward }
|
||||
export { selectParentNode }
|
||||
export { setContent }
|
||||
export { setMark }
|
||||
export { setMeta }
|
||||
export { setNode }
|
||||
export { setNodeSelection }
|
||||
export { setTextSelection }
|
||||
@ -131,6 +133,7 @@ export const Commands = Extension.create({
|
||||
...selectParentNode,
|
||||
...setContent,
|
||||
...setMark,
|
||||
...setMeta,
|
||||
...setNode,
|
||||
...setNodeSelection,
|
||||
...setTextSelection,
|
||||
|
Loading…
Reference in New Issue
Block a user