aboutsummaryrefslogtreecommitdiff
path: root/src/element.ts
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2023-10-01 11:53:27 +0200
committermetamuffin <metamuffin@disroot.org>2023-10-01 11:53:27 +0200
commit18cc95742b9e43f1739385ce3bb673c7095a66a1 (patch)
tree82502c65932730a6e98a69430b69ae33202f1909 /src/element.ts
parent4c6a395de093dce24c688276a8b04a93093fd118 (diff)
downloadjshelper-18cc95742b9e43f1739385ce3bb673c7095a66a1.tar
jshelper-18cc95742b9e43f1739385ce3bb673c7095a66a1.tar.bz2
jshelper-18cc95742b9e43f1739385ce3bb673c7095a66a1.tar.zst
specialize EEl
Diffstat (limited to 'src/element.ts')
-rw-r--r--src/element.ts22
1 files changed, 21 insertions, 1 deletions
diff --git a/src/element.ts b/src/element.ts
index 9880748..bee4ddb 100644
--- a/src/element.ts
+++ b/src/element.ts
@@ -27,7 +27,27 @@ function apply_opts<E extends HTMLElement>(e: E, o: Opts<E>): (() => unknown) |
if (typeof o?.class == "object") e.classList.add(...o.class)
}
-type EEl<K extends keyof HTMLElementTagNameMap> = string | HTMLElement | Opts<HTMLElementTagNameMap[K]> | OVar<Opts<HTMLElementTagNameMap[K]>> | OVar<string> | OVar<HTMLElement> | OVar<HTMLUListElement> | undefined;
+type EEl<K extends keyof HTMLElementTagNameMap> = string
+ | HTMLElement
+ | Opts<HTMLElementTagNameMap[K]>
+ | OVar<Opts<HTMLElementTagNameMap[K]>>
+ | OVar<string>
+ | OVar<HTMLElement>
+ | OVar<HTMLUListElement> // is this possible with dudplication?
+ | OVar<HTMLOListElement>
+ | OVar<HTMLInputElement>
+ | OVar<HTMLPreElement>
+ | OVar<HTMLCanvasElement>
+ | OVar<HTMLVideoElement>
+ | OVar<HTMLImageElement>
+ | OVar<HTMLDetailsElement>
+ | OVar<HTMLSpanElement>
+ | OVar<HTMLSelectElement>
+ | OVar<HTMLLabelElement>
+ | OVar<HTMLButtonElement>
+ | OVar<HTMLDivElement>
+ | OVar<HTMLParagraphElement>
+ | undefined;
export function e<K extends keyof HTMLElementTagNameMap>(name: K, ...children: EEl<K>[]): HTMLElementTagNameMap[K] {
const el = document.createElement(name)