@@ -141,6 +141,8 @@ export interface Serialized<%= node.name %> extends SerializedNode {
141141 <%= field . name %> : SerializedToken | null;
142142 <%- when Herb ::Template ::BooleanField -%>
143143 <%= field . name %> : boolean;
144+ <%- when Herb ::Template ::ElementSourceField -%>
145+ <%= field . name %> : string;
144146 <%- when Herb ::Template ::NodeField -%>
145147 <%- if field . specific_kind -%>
146148 <%= field . name %> : Serialized<%= field . specific_kind %> | null;
@@ -166,6 +168,8 @@ export interface <%= node.name %>Props extends BaseNodeProps {
166168 <%= field . name %> : Token | null;
167169 <%- when Herb ::Template ::BooleanField -%>
168170 <%= field . name %> : boolean;
171+ <%- when Herb ::Template ::ElementSourceField -%>
172+ <%= field . name %> : string;
169173 <%- when Herb ::Template ::NodeField -%>
170174 <%- if field . specific_kind -%>
171175 <%= field . name %> : <%= field . specific_kind %> | null;
@@ -195,6 +199,8 @@ export class <%= node.name %> extends Node {
195199 readonly <%= field . name %> : Token | null;
196200 <%- when Herb ::Template ::BooleanField -%>
197201 readonly <%= field . name %> : boolean;
202+ <%- when Herb ::Template ::ElementSourceField -%>
203+ readonly <%= field . name %> : string;
198204 <%- when Herb ::Template ::NodeField -%>
199205 <%- if field . specific_kind -%>
200206 readonly <%= field . name %> : <%= field . specific_kind %> | null;
@@ -231,6 +237,8 @@ export class <%= node.name %> extends Node {
231237 <%= field . name %> : data.<%= field . name %> ? Token.from(data.<%= field . name %> ) : null,
232238 <%- when Herb ::Template ::BooleanField -%>
233239 <%= field . name %> : data.<%= field . name %> ,
240+ <%- when Herb ::Template ::ElementSourceField -%>
241+ <%= field . name %> : data.<%= field . name %> ,
234242 <%- when Herb ::Template ::NodeField -%>
235243 <%= field . name %> : data.<%= field . name %> ? fromSerializedNode((data.<%= field . name %> )) : null,
236244 <%- when Herb ::Template ::ArrayField -%>
@@ -258,6 +266,8 @@ export class <%= node.name %> extends Node {
258266 this.<%= field . name %> = convertToUTF8(props.<%= field . name %> );
259267 <%- when Herb ::Template ::BooleanField -%>
260268 this.<%= field . name %> = props.<%= field . name %> ;
269+ <%- when Herb ::Template ::ElementSourceField -%>
270+ this.<%= field . name %> = props.<%= field . name %> ;
261271 <%- when Herb ::Template ::PrismNodeField , Herb ::Template ::AnalyzedRubyField -%>
262272 // no-op for <%= field . name %>
263273 <%- else -%>
@@ -313,6 +323,8 @@ export class <%= node.name %> extends Node {
313323 <%= field . name %> : this.<%= field . name %> ? this.<%= field . name %> .toJSON() : null,
314324 <%- when Herb ::Template ::BooleanField -%>
315325 <%= field . name %> : this.<%= field . name %> ,
326+ <%- when Herb ::Template ::ElementSourceField -%>
327+ <%= field . name %> : this.<%= field . name %> ,
316328 <%- when Herb ::Template ::NodeField -%>
317329 <%= field . name %> : this.<%= field . name %> ? this.<%= field . name %> .toJSON() : null,
318330 <%- when Herb ::Template ::ArrayField -%>
@@ -341,6 +353,8 @@ export class <%= node.name %> extends Node {
341353 output += `<%= name %> ${this.<%= field . name %> ? this.<%= field . name %> .treeInspect() : "∅"}\n`;
342354 <%- when Herb ::Template ::BooleanField -%>
343355 output += `<%= name %> ${typeof this.<%= field . name %> === 'boolean' ? String(this.<%= field . name %> ) : "∅"}\n`;
356+ <%- when Herb ::Template ::ElementSourceField -%>
357+ output += `<%= name %> ${this.<%= field . name %> ? JSON.stringify(this.<%= field . name %> ) : "∅"}\n`;
344358 <%- when Herb ::Template ::NodeField -%>
345359 output += `<%= name %> ${this.inspectNode(this.<%= field . name %> , "<%= ( node . fields . last == field ) ? " " : "│ " %> ")}`;
346360 <%- when Herb ::Template ::ArrayField -%>
0 commit comments