mirror of
https://github.com/ueberdosis/tiptap.git
synced 2024-11-28 23:59:25 +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
|
- title: setMark
|
||||||
link: /api/commands/set-mark
|
link: /api/commands/set-mark
|
||||||
type: draft
|
type: draft
|
||||||
|
- title: setMeta
|
||||||
|
link: /api/commands/set-meta
|
||||||
- title: setNode
|
- title: setNode
|
||||||
link: /api/commands/set-node
|
link: /api/commands/set-node
|
||||||
type: draft
|
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 selectParentNode from '../commands/selectParentNode'
|
||||||
import * as setContent from '../commands/setContent'
|
import * as setContent from '../commands/setContent'
|
||||||
import * as setMark from '../commands/setMark'
|
import * as setMark from '../commands/setMark'
|
||||||
|
import * as setMeta from '../commands/setMeta'
|
||||||
import * as setNode from '../commands/setNode'
|
import * as setNode from '../commands/setNode'
|
||||||
import * as setNodeSelection from '../commands/setNodeSelection'
|
import * as setNodeSelection from '../commands/setNodeSelection'
|
||||||
import * as setTextSelection from '../commands/setTextSelection'
|
import * as setTextSelection from '../commands/setTextSelection'
|
||||||
@ -78,6 +79,7 @@ export { selectNodeForward }
|
|||||||
export { selectParentNode }
|
export { selectParentNode }
|
||||||
export { setContent }
|
export { setContent }
|
||||||
export { setMark }
|
export { setMark }
|
||||||
|
export { setMeta }
|
||||||
export { setNode }
|
export { setNode }
|
||||||
export { setNodeSelection }
|
export { setNodeSelection }
|
||||||
export { setTextSelection }
|
export { setTextSelection }
|
||||||
@ -131,6 +133,7 @@ export const Commands = Extension.create({
|
|||||||
...selectParentNode,
|
...selectParentNode,
|
||||||
...setContent,
|
...setContent,
|
||||||
...setMark,
|
...setMark,
|
||||||
|
...setMeta,
|
||||||
...setNode,
|
...setNode,
|
||||||
...setNodeSelection,
|
...setNodeSelection,
|
||||||
...setTextSelection,
|
...setTextSelection,
|
||||||
|
Loading…
Reference in New Issue
Block a user