split helpers and utilities

This commit is contained in:
Philipp Kühn
2020-11-30 09:42:53 +01:00
parent 8d38459289
commit f486ddf80a
56 changed files with 57 additions and 60 deletions

View File

@@ -0,0 +1,23 @@
import { EditorState } from 'prosemirror-state'
import { Node, NodeType } from 'prosemirror-model'
import getNodeType from './getNodeType'
export default function getNodeAttributes(state: EditorState, typeOrName: string | NodeType) {
const type = getNodeType(typeOrName, state.schema)
const { from, to } = state.selection
let nodes: Node[] = []
state.doc.nodesBetween(from, to, node => {
nodes = [...nodes, node]
})
const node = nodes
.reverse()
.find(nodeItem => nodeItem.type.name === type.name)
if (node) {
return { ...node.attrs }
}
return {}
}