Files
tiptap/packages/core/src/helpers/getAttributes.ts
Philipp Kühn e07a5b625d refactor: Use named exports instead of default exports (#2238)
* use named exports instead of default exports

* fix tests

Co-authored-by: Philipp Kühn <philippkuehn@MacBook-Pro-von-Philipp.local>
2021-12-06 12:00:09 +01:00

28 lines
760 B
TypeScript

import { MarkType, NodeType } from 'prosemirror-model'
import { EditorState } from 'prosemirror-state'
import { getSchemaTypeNameByName } from './getSchemaTypeNameByName'
import { getNodeAttributes } from './getNodeAttributes'
import { getMarkAttributes } from './getMarkAttributes'
export function getAttributes(
state: EditorState,
typeOrName: string | NodeType | MarkType,
): Record<string, any> {
const schemaType = getSchemaTypeNameByName(
typeof typeOrName === 'string'
? typeOrName
: typeOrName.name,
state.schema,
)
if (schemaType === 'node') {
return getNodeAttributes(state, typeOrName as NodeType)
}
if (schemaType === 'mark') {
return getMarkAttributes(state, typeOrName as MarkType)
}
return {}
}