However, the top document node is still rendered as a div. I believe I can add the “role: textbox” attribute via editor props, but is there any way to change the top dom node?
That’s intentional—the document node just holds content, and that content is, unless you use the {mount: ...} argument format to EditorView, always rendered in a <div> created by the editor view.
Is there any other way to change the top-level element that is used? For my use-case, the editor view is created without a parent (new EditorView(null, ...)) and mounted to its parent afterward. Is there any way to either 1. (ideally) create the editor view without a top level element, and mount it to a parent later or 2. modify the top level element used when creating the editor?