Implement HTMLDocument.createElement

Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
This commit is contained in:
Francis Bouvier
2023-03-16 18:22:46 +01:00
parent 081daa1245
commit 50ac87ed6a
12 changed files with 1325 additions and 134 deletions

View File

@@ -1,24 +1,91 @@
const Console = @import("jsruntime").Console;
pub const EventTarget = @import("dom/event_target.zig").EventTarget;
pub const Node = @import("dom/node.zig").Node;
// DOM
const EventTarget = @import("dom/event_target.zig").EventTarget;
const Node = @import("dom/node.zig").Node;
const Element = @import("dom/element.zig").Element;
const Document = @import("dom/document.zig").Document;
pub const Element = @import("dom/element.zig").Element;
pub const HTMLElement = @import("dom/element.zig").HTMLElement;
pub const HTMLBodyElement = @import("dom/element.zig").HTMLBodyElement;
// HTML
pub const HTMLDocument = @import("html/document.zig").HTMLDocument;
pub const Document = @import("dom/document.zig").Document;
pub const HTMLDocument = @import("dom/document.zig").HTMLDocument;
const E = @import("html/elements.zig");
// Interfaces
pub const Interfaces = .{
Console,
// DOM
EventTarget,
Node,
Element,
HTMLElement,
HTMLBodyElement,
Document,
// HTML
HTMLDocument,
E.HTMLElement,
E.HTMLMediaElement,
// TODO: generate HTMLElements comptime
E.HTMLUnknownElement,
E.HTMLAnchorElement,
E.HTMLAreaElement,
E.HTMLAudioElement,
E.HTMLBRElement,
E.HTMLBaseElement,
E.HTMLBodyElement,
E.HTMLButtonElement,
E.HTMLCanvasElement,
E.HTMLDListElement,
E.HTMLDialogElement,
E.HTMLDataElement,
E.HTMLDivElement,
E.HTMLEmbedElement,
E.HTMLFieldSetElement,
E.HTMLFormElement,
E.HTMLFrameSetElement,
E.HTMLHRElement,
E.HTMLHeadElement,
E.HTMLHeadingElement,
E.HTMLHtmlElement,
E.HTMLIFrameElement,
E.HTMLImageElement,
E.HTMLInputElement,
E.HTMLLIElement,
E.HTMLLabelElement,
E.HTMLLegendElement,
E.HTMLLinkElement,
E.HTMLMapElement,
E.HTMLMetaElement,
E.HTMLMeterElement,
E.HTMLModElement,
E.HTMLOListElement,
E.HTMLObjectElement,
E.HTMLOptGroupElement,
E.HTMLOptionElement,
E.HTMLOutputElement,
E.HTMLParagraphElement,
E.HTMLPictureElement,
E.HTMLPreElement,
E.HTMLProgressElement,
E.HTMLQuoteElement,
E.HTMLScriptElement,
E.HTMLSelectElement,
E.HTMLSourceElement,
E.HTMLSpanElement,
E.HTMLStyleElement,
E.HTMLTableElement,
E.HTMLTableCaptionElement,
E.HTMLTableCellElement,
E.HTMLTableColElement,
E.HTMLTableRowElement,
E.HTMLTableSectionElement,
E.HTMLTemplateElement,
E.HTMLTextAreaElement,
E.HTMLTimeElement,
E.HTMLTitleElement,
E.HTMLTrackElement,
E.HTMLUListElement,
E.HTMLVideoElement,
};