MCPcopy
hub / github.com/marktext/marktext / createDomNode

Function createDomNode

packages/muya/src/utils/dom.ts:46–59  ·  view source on GitHub ↗
(tagName: string, { classList = [], attributes = {}, datasets = {} }: ICreateDomOptions = {} as ICreateDomOptions)

Source from the content-addressed store, hash-verified

44}
45
46export function createDomNode(tagName: string, { classList = [], attributes = {}, datasets = {} }: ICreateDomOptions = {} as ICreateDomOptions) {
47 const domNode = document.createElement(tagName);
48
49 for (const className of classList)
50 domNode.classList.add(className);
51
52 for (const [key, value] of Object.entries(attributes))
53 domNode.setAttribute(key, value.toString());
54
55 for (const [key, value] of Object.entries(datasets))
56 domNode.dataset[key] = value.toString();
57
58 return domNode;
59}
60
61/**
62 * [description `add` or `remove` className of element

Callers 1

createDomNodeMethod · 0.90

Calls 1

addMethod · 0.45

Tested by

no test coverage detected