@@ -5,9 +5,6 @@ import Element from '@app/Render/Element.ts'
55import Layout from '@app/Render/Layout.ts'
66import Style from '@app/Render/Style.ts'
77
8- /** DOM Element type alias (avoid clash with imported Element class). */
9- type DomElement = InstanceType < typeof globalThis . Element >
10-
118/**
129 * Renders schema to DOM.
1310 * @description Builds elements from nodes and applies layout and style.
@@ -24,7 +21,7 @@ export default class Render {
2421 * @param element - Target DOM element
2522 * @param attrs - Attribute key-value map
2623 */
27- static applyAttrs ( element : DomElement , attrs : Types . Attrs ) : void {
24+ static applyAttrs ( element : Types . DomElement , attrs : Types . Attrs ) : void {
2825 Attrs . applyAttrs ( element , attrs )
2926 }
3027
@@ -66,7 +63,7 @@ export default class Render {
6663 * @param isSvg - Whether parent is SVG context
6764 * @returns Created DOM element
6865 */
69- static createElementForNode ( node : Types . Node , doc : Document , isSvg : boolean ) : DomElement {
66+ static createElementForNode ( node : Types . Node , doc : Document , isSvg : boolean ) : Types . DomElement {
7067 return Element . createElementForNode ( node , doc , isSvg )
7168 }
7269
@@ -81,9 +78,9 @@ export default class Render {
8178 const ownerDoc = container . ownerDocument ?? document
8279 let renderContext :
8380 | {
84- refs ?: Map < string , DomElement >
85- onNodeMount ?: ( node : Types . Node , element : DomElement ) => void
86- mounted ?: Array < { node : Types . Node ; element : DomElement } >
81+ refs ?: Map < string , Types . DomElement >
82+ onNodeMount ?: ( node : Types . Node , element : Types . DomElement ) => void
83+ mounted ?: Array < { node : Types . Node ; element : Types . DomElement } >
8784 }
8885 | undefined
8986 if ( options ) {
@@ -109,7 +106,7 @@ export default class Render {
109106 container . appendChild ( nodeResult )
110107 }
111108 if ( renderContext ?. refs && node . id ) {
112- renderContext . refs . set ( node . id , nodeResult as DomElement )
109+ renderContext . refs . set ( node . id , nodeResult as Types . DomElement )
113110 }
114111 }
115112 if ( renderContext ?. onNodeMount && renderContext . mounted ) {
@@ -133,18 +130,18 @@ export default class Render {
133130 doc : Document ,
134131 parentIsSvg : boolean ,
135132 renderContext ?: {
136- refs ?: Map < string , DomElement >
137- mounted ?: Array < { node : Types . Node ; element : DomElement } >
133+ refs ?: Map < string , Types . DomElement >
134+ mounted ?: Array < { node : Types . Node ; element : Types . DomElement } >
138135 }
139- ) : DomElement | DocumentFragment {
136+ ) : Types . DomElement | DocumentFragment {
140137 const tagName = node . type
141138 const isSvg = parentIsSvg || tagName === Render . svgTagName
142139 const element = Render . createElementForNode ( node , doc , isSvg )
143140 if ( renderContext ?. refs && node . id ) {
144- renderContext . refs . set ( node . id , element as DomElement )
141+ renderContext . refs . set ( node . id , element as Types . DomElement )
145142 }
146143 if ( renderContext ?. mounted ) {
147- renderContext . mounted . push ( { node, element : element as DomElement } )
144+ renderContext . mounted . push ( { node, element : element as Types . DomElement } )
148145 }
149146 if ( node . id && element instanceof HTMLElement ) {
150147 element . id = node . id
@@ -174,7 +171,7 @@ export default class Render {
174171 }
175172 }
176173 if ( ! Constant . voidTags . has ( tagName ) && node . children && node . children . length > 0 ) {
177- let appendTarget : DocumentFragment | DomElement
174+ let appendTarget : DocumentFragment | Types . DomElement
178175 if ( element instanceof HTMLTemplateElement ) {
179176 appendTarget = element . content
180177 } else {
@@ -190,10 +187,10 @@ export default class Render {
190187 appendTarget . appendChild ( childResult )
191188 }
192189 if ( renderContext ?. refs && child . id ) {
193- renderContext . refs . set ( child . id , childResult as DomElement )
190+ renderContext . refs . set ( child . id , childResult as Types . DomElement )
194191 }
195192 if ( renderContext ?. mounted ) {
196- renderContext . mounted . push ( { node : child , element : childResult as DomElement } )
193+ renderContext . mounted . push ( { node : child , element : childResult as Types . DomElement } )
197194 }
198195 }
199196 }
0 commit comments