@pyreon/core 0.7.6 → 0.7.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/analysis/index.js.html +1 -1
- package/lib/index.js +101 -1
- package/lib/index.js.map +1 -1
- package/lib/jsx-dev-runtime.js.map +1 -1
- package/lib/jsx-runtime.js.map +1 -1
- package/lib/types/index.d.ts +110 -61
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/jsx-dev-runtime.d.ts +70 -53
- package/lib/types/jsx-dev-runtime.d.ts.map +1 -1
- package/lib/types/jsx-runtime.d.ts +71 -54
- package/lib/types/jsx-runtime.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/index.ts +4 -1
- package/src/jsx-runtime.ts +71 -55
- package/src/props.ts +108 -0
- package/src/style.ts +42 -0
- package/src/tests/cx.test.ts +41 -0
- package/src/tests/props.test.ts +77 -0
package/lib/jsx-runtime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsx-runtime.js","names":[],"sources":["../src/h.ts","../src/jsx-runtime.ts"],"sourcesContent":["import type { ComponentFn, Props, VNode, VNodeChild } from \"./types\"\n\n/** Marker for fragment nodes — renders children without a wrapper element */\nexport const Fragment: unique symbol = Symbol(\"Pyreon.Fragment\")\n\n/**\n * Hyperscript function — the compiled output of JSX.\n * `<div class=\"x\">hello</div>` → `h(\"div\", { class: \"x\" }, \"hello\")`\n *\n * Generic on P so TypeScript validates props match the component's signature\n * at the call site, then stores the result in the loosely-typed VNode.\n */\n/** Shared empty props sentinel — identity-checked in mountElement to skip applyProps. */\nexport const EMPTY_PROPS: Props = {} as Props\n\n/** Makes `children` optional in P (if present) so it can be passed as rest args to h(). */\ntype PropsWithOptionalChildren<P extends Props> = Omit<P, \"children\"> &\n (\"children\" extends keyof P ? { children?: P[\"children\"] } : unknown)\n\n// Overload: component with typed props — children is optional in the props object\n// because it can be passed as rest args. Extra keys are allowed via `& Props`.\nexport function h<P extends Props>(\n type: ComponentFn<P>,\n props: (PropsWithOptionalChildren<P> & Props) | null,\n ...children: VNodeChild[]\n): VNode\n// Overload: intrinsic element, symbol, generic/dynamic component, or mixed union\nexport function h(\n type: string | ((p: any) => VNodeChild) | symbol,\n props: Props | null,\n ...children: VNodeChild[]\n): VNode\nexport function h<P extends Props>(\n type: string | ComponentFn<P> | symbol,\n props: P | null,\n ...children: VNodeChild[]\n): VNode {\n return {\n type: type as string | ComponentFn | symbol,\n props: (props ?? EMPTY_PROPS) as Props,\n children: normalizeChildren(children),\n key: (props?.key as string | number | null) ?? null,\n }\n}\n\nfunction normalizeChildren(children: VNodeChild[]): VNodeChild[] {\n // Fast path: no nested arrays — return as-is without allocating\n for (let i = 0; i < children.length; i++) {\n if (Array.isArray(children[i])) {\n return flattenChildren(children)\n }\n }\n return children\n}\n\nfunction flattenChildren(children: VNodeChild[]): VNodeChild[] {\n const result: VNodeChild[] = []\n for (const child of children) {\n if (Array.isArray(child)) {\n result.push(...flattenChildren(child as VNodeChild[]))\n } else {\n result.push(child)\n }\n }\n return result\n}\n","/**\n * JSX automatic runtime.\n *\n * When tsconfig has `\"jsxImportSource\": \"@pyreon/core\"`, the TS/bundler compiler\n * rewrites JSX to imports from this file automatically:\n * <div class=\"x\" /> → jsx(\"div\", { class: \"x\" })\n */\nimport { Fragment, h } from \"./h\"\nimport type { ComponentFn, Props, VNode, VNodeChild } from \"./types\"\n\nexport { Fragment }\n\nexport function jsx(\n type: string | ComponentFn | symbol,\n props: Props & { children?: VNodeChild | VNodeChild[] },\n key?: string | number | null,\n): VNode {\n const { children, ...rest } = props\n const propsWithKey = (key != null ? { ...rest, key } : rest) as Props\n\n if (typeof type === \"function\") {\n // Component: keep children in props.children so the component function can access them.\n // Children must NOT be spread as h() rest args because mountComponent only passes vnode.props.\n const componentProps = children !== undefined ? { ...propsWithKey, children } : propsWithKey\n return h(type, componentProps)\n }\n\n // DOM element or symbol (Fragment, ForSymbol): children go in vnode.children\n const childArray = children === undefined ? [] : Array.isArray(children) ? children : [children]\n return h(type, propsWithKey, ...(childArray as VNodeChild[]))\n}\n\n// jsxs is called when there are multiple static children — same signature\nexport const jsxs = jsx\n\n// ─── JSX types ────────────────────────────────────────────────────────────────\n\ntype Booleanish = boolean | \"true\" | \"false\"\nexport type CSSProperties = { [K in keyof CSSStyleDeclaration]?: string | number }\nexport type StyleValue = string | CSSProperties\n\n/** Common HTML attributes accepted by all Pyreon elements */\nexport interface PyreonHTMLAttributes<E extends Element = HTMLElement> {\n // Identity\n id?: string | undefined\n class?: string | (() => string) | undefined\n className?: string | (() => string) | undefined\n style?: StyleValue | (() => StyleValue) | undefined\n // Accessible\n role?: string | undefined\n tabIndex?: number | (() => number) | undefined\n title?: string | undefined\n lang?: string | undefined\n dir?: \"ltr\" | \"rtl\" | \"auto\" | undefined\n hidden?: boolean | (() => boolean) | undefined\n draggable?: Booleanish | undefined\n // ARIA\n \"aria-label\"?: string | (() => string) | undefined\n \"aria-hidden\"?: Booleanish | (() => Booleanish) | undefined\n \"aria-disabled\"?: Booleanish | (() => Booleanish) | undefined\n \"aria-expanded\"?: Booleanish | (() => Booleanish) | undefined\n \"aria-selected\"?: Booleanish | (() => Booleanish) | undefined\n \"aria-checked\"?: Booleanish | \"mixed\" | (() => Booleanish | \"mixed\") | undefined\n \"aria-current\"?: Booleanish | \"page\" | \"step\" | \"location\" | \"date\" | \"time\" | undefined\n \"aria-live\"?: \"off\" | \"assertive\" | \"polite\" | undefined\n \"aria-atomic\"?: Booleanish | undefined\n \"aria-busy\"?: Booleanish | undefined\n \"aria-controls\"?: string | undefined\n \"aria-describedby\"?: string | undefined\n \"aria-labelledby\"?: string | undefined\n \"aria-placeholder\"?: string | undefined\n \"aria-required\"?: Booleanish | (() => Booleanish) | undefined\n \"aria-invalid\"?: Booleanish | \"grammar\" | \"spelling\" | undefined\n \"aria-valuemin\"?: number | undefined\n \"aria-valuemax\"?: number | undefined\n \"aria-valuenow\"?: number | undefined\n \"aria-valuetext\"?: string | undefined\n \"aria-haspopup\"?: Booleanish | \"menu\" | \"listbox\" | \"tree\" | \"grid\" | \"dialog\" | undefined\n \"aria-posinset\"?: number | undefined\n \"aria-setsize\"?: number | undefined\n \"aria-level\"?: number | undefined\n \"aria-multiline\"?: Booleanish | undefined\n \"aria-multiselectable\"?: Booleanish | undefined\n \"aria-orientation\"?: \"horizontal\" | \"vertical\" | undefined\n \"aria-readonly\"?: Booleanish | (() => Booleanish) | undefined\n \"aria-sort\"?: \"none\" | \"ascending\" | \"descending\" | \"other\" | undefined\n \"aria-autocomplete\"?: \"none\" | \"inline\" | \"list\" | \"both\" | undefined\n \"aria-colcount\"?: number | undefined\n \"aria-colindex\"?: number | undefined\n \"aria-colspan\"?: number | undefined\n \"aria-rowcount\"?: number | undefined\n \"aria-rowindex\"?: number | undefined\n \"aria-rowspan\"?: number | undefined\n // DOM lifecycle ref — object ref or callback ref\n ref?: { current: E | null } | ((el: E | null) => void) | undefined\n // Key for list reconciliation\n key?: string | number | undefined\n // Children — allows null, undefined, boolean in JSX children positions\n children?: VNodeChild | VNodeChild[]\n // innerHTML\n innerHTML?: string | undefined\n dangerouslySetInnerHTML?: { __html: string } | undefined\n // Events\n onClick?: ((e: MouseEvent) => void) | undefined\n onDblClick?: ((e: MouseEvent) => void) | undefined\n onMouseDown?: ((e: MouseEvent) => void) | undefined\n onMouseUp?: ((e: MouseEvent) => void) | undefined\n onMouseEnter?: ((e: MouseEvent) => void) | undefined\n onMouseLeave?: ((e: MouseEvent) => void) | undefined\n onMouseMove?: ((e: MouseEvent) => void) | undefined\n onMouseOver?: ((e: MouseEvent) => void) | undefined\n onMouseOut?: ((e: MouseEvent) => void) | undefined\n onContextMenu?: ((e: MouseEvent) => void) | undefined\n onKeyDown?: ((e: KeyboardEvent) => void) | undefined\n onKeyUp?: ((e: KeyboardEvent) => void) | undefined\n onKeyPress?: ((e: KeyboardEvent) => void) | undefined\n onFocus?: ((e: FocusEvent) => void) | undefined\n onBlur?: ((e: FocusEvent) => void) | undefined\n onChange?: ((e: Event) => void) | undefined\n onInput?: ((e: InputEvent) => void) | undefined\n onSubmit?: ((e: SubmitEvent) => void) | undefined\n onReset?: ((e: Event) => void) | undefined\n onScroll?: ((e: Event) => void) | undefined\n onWheel?: ((e: WheelEvent) => void) | undefined\n onDragStart?: ((e: DragEvent) => void) | undefined\n onDragEnd?: ((e: DragEvent) => void) | undefined\n onDragOver?: ((e: DragEvent) => void) | undefined\n onDragEnter?: ((e: DragEvent) => void) | undefined\n onDragLeave?: ((e: DragEvent) => void) | undefined\n onDrop?: ((e: DragEvent) => void) | undefined\n onTouchStart?: ((e: TouchEvent) => void) | undefined\n onTouchEnd?: ((e: TouchEvent) => void) | undefined\n onTouchMove?: ((e: TouchEvent) => void) | undefined\n onPointerDown?: ((e: PointerEvent) => void) | undefined\n onPointerUp?: ((e: PointerEvent) => void) | undefined\n onPointerMove?: ((e: PointerEvent) => void) | undefined\n onPointerEnter?: ((e: PointerEvent) => void) | undefined\n onPointerLeave?: ((e: PointerEvent) => void) | undefined\n onPointerCancel?: ((e: PointerEvent) => void) | undefined\n onPointerOver?: ((e: PointerEvent) => void) | undefined\n onPointerOut?: ((e: PointerEvent) => void) | undefined\n onTransitionEnd?: ((e: TransitionEvent) => void) | undefined\n onAnimationStart?: ((e: AnimationEvent) => void) | undefined\n onAnimationEnd?: ((e: AnimationEvent) => void) | undefined\n onAnimationIteration?: ((e: AnimationEvent) => void) | undefined\n onLoad?: ((e: Event) => void) | undefined\n onError?: ((e: Event | string) => void) | undefined\n onAbort?: ((e: Event) => void) | undefined\n onSelect?: ((e: Event) => void) | undefined\n onCopy?: ((e: ClipboardEvent) => void) | undefined\n onCut?: ((e: ClipboardEvent) => void) | undefined\n onPaste?: ((e: ClipboardEvent) => void) | undefined\n // Catch-all for data-* and other arbitrary attributes\n [key: string]: unknown\n}\n\n/** Attributes specific to form inputs */\nexport interface InputAttributes extends PyreonHTMLAttributes<HTMLInputElement> {\n type?: string | (() => string) | undefined\n value?: string | number | (() => string | number) | undefined\n defaultValue?: string | number | undefined\n checked?: boolean | (() => boolean) | undefined\n defaultChecked?: boolean | undefined\n placeholder?: string | (() => string) | undefined\n disabled?: boolean | (() => boolean) | undefined\n readOnly?: boolean | undefined\n required?: boolean | (() => boolean) | undefined\n min?: string | number | undefined\n max?: string | number | undefined\n step?: string | number | undefined\n minLength?: number | undefined\n maxLength?: number | undefined\n pattern?: string | undefined\n multiple?: boolean | undefined\n name?: string | undefined\n accept?: string | undefined\n autoComplete?: string | undefined\n autoFocus?: boolean | undefined\n form?: string | undefined\n list?: string | undefined\n size?: number | undefined\n src?: string | (() => string) | undefined\n alt?: string | undefined\n width?: number | string | undefined\n height?: number | string | undefined\n}\n\nexport interface AnchorAttributes extends PyreonHTMLAttributes<HTMLAnchorElement> {\n href?: string | (() => string) | undefined\n target?: \"_blank\" | \"_self\" | \"_parent\" | \"_top\" | string | undefined\n rel?: string | undefined\n download?: string | boolean | undefined\n}\n\nexport interface ButtonAttributes extends PyreonHTMLAttributes<HTMLButtonElement> {\n type?: \"button\" | \"submit\" | \"reset\" | undefined\n disabled?: boolean | (() => boolean) | undefined\n name?: string | undefined\n value?: string | undefined\n form?: string | undefined\n formAction?: string | undefined\n formMethod?: string | undefined\n formEncType?: string | undefined\n formNoValidate?: boolean | undefined\n formTarget?: string | undefined\n}\n\nexport interface TextareaAttributes extends PyreonHTMLAttributes<HTMLTextAreaElement> {\n value?: string | (() => string) | undefined\n defaultValue?: string | undefined\n placeholder?: string | (() => string) | undefined\n disabled?: boolean | (() => boolean) | undefined\n readOnly?: boolean | undefined\n required?: boolean | (() => boolean) | undefined\n rows?: number | undefined\n cols?: number | undefined\n minLength?: number | undefined\n maxLength?: number | undefined\n name?: string | undefined\n autoFocus?: boolean | undefined\n form?: string | undefined\n wrap?: \"hard\" | \"soft\" | undefined\n}\n\nexport interface SelectAttributes extends PyreonHTMLAttributes<HTMLSelectElement> {\n value?: string | string[] | (() => string | string[]) | undefined\n defaultValue?: string | string[] | undefined\n disabled?: boolean | (() => boolean) | undefined\n required?: boolean | (() => boolean) | undefined\n multiple?: boolean | undefined\n name?: string | undefined\n size?: number | undefined\n form?: string | undefined\n autoFocus?: boolean | undefined\n}\n\ninterface OptionAttributes extends PyreonHTMLAttributes<HTMLOptionElement> {\n value?: string | number | (() => string | number) | undefined\n disabled?: boolean | (() => boolean) | undefined\n selected?: boolean | (() => boolean) | undefined\n label?: string | undefined\n}\n\nexport interface FormAttributes extends PyreonHTMLAttributes<HTMLFormElement> {\n action?: string | undefined\n method?: \"get\" | \"post\" | undefined\n encType?: string | undefined\n noValidate?: boolean | undefined\n target?: string | undefined\n name?: string | undefined\n autoComplete?: string | undefined\n}\n\nexport interface ImgAttributes extends PyreonHTMLAttributes<HTMLImageElement> {\n src?: string | (() => string) | undefined\n alt?: string | (() => string) | undefined\n width?: number | string | (() => number | string) | undefined\n height?: number | string | (() => number | string) | undefined\n loading?: \"lazy\" | \"eager\" | undefined\n decoding?: \"auto\" | \"async\" | \"sync\" | undefined\n crossOrigin?: \"anonymous\" | \"use-credentials\" | undefined\n referrerPolicy?: string | undefined\n srcSet?: string | undefined\n sizes?: string | undefined\n}\n\ninterface VideoAttributes extends PyreonHTMLAttributes<HTMLVideoElement> {\n src?: string | (() => string) | undefined\n width?: number | string | undefined\n height?: number | string | undefined\n controls?: boolean | undefined\n autoPlay?: boolean | undefined\n muted?: boolean | undefined\n loop?: boolean | undefined\n poster?: string | undefined\n preload?: \"none\" | \"metadata\" | \"auto\" | undefined\n playsInline?: boolean | undefined\n crossOrigin?: \"anonymous\" | \"use-credentials\" | undefined\n}\n\ninterface AudioAttributes extends PyreonHTMLAttributes<HTMLAudioElement> {\n src?: string | (() => string) | undefined\n controls?: boolean | undefined\n autoPlay?: boolean | undefined\n muted?: boolean | undefined\n loop?: boolean | undefined\n preload?: \"none\" | \"metadata\" | \"auto\" | undefined\n crossOrigin?: \"anonymous\" | \"use-credentials\" | undefined\n}\n\ninterface LabelAttributes extends PyreonHTMLAttributes<HTMLLabelElement> {\n htmlFor?: string | undefined\n for?: string | undefined\n form?: string | undefined\n}\n\ninterface ThAttributes extends PyreonHTMLAttributes<HTMLTableCellElement> {\n colSpan?: number | undefined\n rowSpan?: number | undefined\n scope?: \"col\" | \"row\" | \"colgroup\" | \"rowgroup\" | undefined\n abbr?: string | undefined\n headers?: string | undefined\n}\n\ninterface TdAttributes extends PyreonHTMLAttributes<HTMLTableCellElement> {\n colSpan?: number | undefined\n rowSpan?: number | undefined\n headers?: string | undefined\n}\n\ninterface ColAttributes extends PyreonHTMLAttributes<HTMLTableColElement> {\n span?: number | undefined\n}\n\ninterface IframeAttributes extends PyreonHTMLAttributes<HTMLIFrameElement> {\n src?: string | (() => string) | undefined\n width?: number | string | undefined\n height?: number | string | undefined\n allow?: string | undefined\n allowFullScreen?: boolean | undefined\n loading?: \"lazy\" | \"eager\" | undefined\n name?: string | undefined\n sandbox?: string | undefined\n referrerPolicy?: string | undefined\n title?: string | undefined\n}\n\ninterface LinkAttributes extends PyreonHTMLAttributes<HTMLLinkElement> {\n href?: string | (() => string) | undefined\n rel?: string | undefined\n type?: string | undefined\n as?: string | undefined\n media?: string | undefined\n crossOrigin?: \"anonymous\" | \"use-credentials\" | undefined\n integrity?: string | undefined\n referrerPolicy?: string | undefined\n}\n\ninterface MetaAttributes extends PyreonHTMLAttributes<HTMLMetaElement> {\n name?: string | undefined\n content?: string | (() => string) | undefined\n httpEquiv?: string | undefined\n charset?: string | undefined\n property?: string | undefined\n}\n\ninterface ScriptAttributes extends PyreonHTMLAttributes<HTMLScriptElement> {\n src?: string | (() => string) | undefined\n type?: string | undefined\n async?: boolean | undefined\n defer?: boolean | undefined\n crossOrigin?: \"anonymous\" | \"use-credentials\" | undefined\n integrity?: string | undefined\n noModule?: boolean | undefined\n referrerPolicy?: string | undefined\n}\n\ninterface SourceAttributes extends PyreonHTMLAttributes<HTMLSourceElement> {\n src?: string | (() => string) | undefined\n type?: string | undefined\n srcSet?: string | undefined\n sizes?: string | undefined\n media?: string | undefined\n}\n\ninterface ProgressAttributes extends PyreonHTMLAttributes<HTMLProgressElement> {\n value?: number | (() => number) | undefined\n max?: number | undefined\n}\n\ninterface MeterAttributes extends PyreonHTMLAttributes<HTMLMeterElement> {\n value?: number | (() => number) | undefined\n min?: number | undefined\n max?: number | undefined\n low?: number | undefined\n high?: number | undefined\n optimum?: number | undefined\n}\n\ninterface DetailsAttributes extends PyreonHTMLAttributes<HTMLDetailsElement> {\n open?: boolean | (() => boolean) | undefined\n}\n\ninterface DialogAttributes extends PyreonHTMLAttributes<HTMLDialogElement> {\n open?: boolean | (() => boolean) | undefined\n}\n\ninterface OlAttributes extends PyreonHTMLAttributes<HTMLOListElement> {\n start?: number | undefined\n reversed?: boolean | undefined\n type?: \"1\" | \"a\" | \"A\" | \"i\" | \"I\" | undefined\n}\n\nexport interface SvgAttributes extends PyreonHTMLAttributes<SVGElement> {\n viewBox?: string | undefined\n xmlns?: string | undefined\n fill?: string | (() => string) | undefined\n stroke?: string | (() => string) | undefined\n \"stroke-width\"?: string | number | undefined\n \"stroke-linecap\"?: \"butt\" | \"round\" | \"square\" | undefined\n \"stroke-linejoin\"?: \"miter\" | \"round\" | \"bevel\" | undefined\n \"fill-rule\"?: \"nonzero\" | \"evenodd\" | undefined\n \"clip-rule\"?: \"nonzero\" | \"evenodd\" | undefined\n \"clip-path\"?: string | undefined\n d?: string | undefined\n cx?: string | number | undefined\n cy?: string | number | undefined\n r?: string | number | undefined\n rx?: string | number | undefined\n ry?: string | number | undefined\n x?: string | number | undefined\n y?: string | number | undefined\n x1?: string | number | undefined\n y1?: string | number | undefined\n x2?: string | number | undefined\n y2?: string | number | undefined\n width?: string | number | undefined\n height?: string | number | undefined\n transform?: string | (() => string) | undefined\n opacity?: string | number | (() => string | number) | undefined\n points?: string | undefined\n \"font-size\"?: string | number | undefined\n \"text-anchor\"?: \"start\" | \"middle\" | \"end\" | undefined\n \"dominant-baseline\"?: string | undefined\n}\n\ndeclare global {\n namespace JSX {\n /** The type that JSX expressions evaluate to */\n type Element = import(\"./types\").VNode\n\n /**\n * Valid JSX tag types — intrinsic strings + component functions.\n * Components may return VNode, null, strings, functions (reactive getters), etc.\n * (TS 5.1+ feature)\n */\n type ElementType = keyof IntrinsicElements | ((props: any) => import(\"./types\").VNodeChild)\n\n /** Tells TS which prop name carries children in component calls */\n interface ElementChildrenAttribute {\n // biome-ignore lint/complexity/noBannedTypes: JSX spec requires {} for ElementChildrenAttribute\n children: {}\n }\n\n interface IntrinsicElements {\n // Document structure\n html: PyreonHTMLAttributes\n head: PyreonHTMLAttributes\n body: PyreonHTMLAttributes\n title: PyreonHTMLAttributes\n base: PyreonHTMLAttributes\n meta: MetaAttributes\n link: LinkAttributes\n script: ScriptAttributes\n style: PyreonHTMLAttributes\n noscript: PyreonHTMLAttributes\n // Sections\n main: PyreonHTMLAttributes\n header: PyreonHTMLAttributes\n footer: PyreonHTMLAttributes\n nav: PyreonHTMLAttributes\n aside: PyreonHTMLAttributes\n section: PyreonHTMLAttributes\n article: PyreonHTMLAttributes\n address: PyreonHTMLAttributes\n h1: PyreonHTMLAttributes\n h2: PyreonHTMLAttributes\n h3: PyreonHTMLAttributes\n h4: PyreonHTMLAttributes\n h5: PyreonHTMLAttributes\n h6: PyreonHTMLAttributes\n hgroup: PyreonHTMLAttributes\n // Block text\n p: PyreonHTMLAttributes\n pre: PyreonHTMLAttributes\n blockquote: PyreonHTMLAttributes\n figure: PyreonHTMLAttributes\n figcaption: PyreonHTMLAttributes\n div: PyreonHTMLAttributes\n hr: PyreonHTMLAttributes\n // Inline text\n span: PyreonHTMLAttributes\n a: AnchorAttributes\n em: PyreonHTMLAttributes\n strong: PyreonHTMLAttributes\n small: PyreonHTMLAttributes\n s: PyreonHTMLAttributes\n cite: PyreonHTMLAttributes\n q: PyreonHTMLAttributes\n abbr: PyreonHTMLAttributes\n time: PyreonHTMLAttributes\n code: PyreonHTMLAttributes\n var: PyreonHTMLAttributes\n samp: PyreonHTMLAttributes\n kbd: PyreonHTMLAttributes\n mark: PyreonHTMLAttributes\n sub: PyreonHTMLAttributes\n sup: PyreonHTMLAttributes\n i: PyreonHTMLAttributes\n b: PyreonHTMLAttributes\n u: PyreonHTMLAttributes\n bdi: PyreonHTMLAttributes\n bdo: PyreonHTMLAttributes\n br: PyreonHTMLAttributes\n wbr: PyreonHTMLAttributes\n ruby: PyreonHTMLAttributes\n rt: PyreonHTMLAttributes\n rp: PyreonHTMLAttributes\n // Lists\n ul: PyreonHTMLAttributes\n ol: OlAttributes\n li: PyreonHTMLAttributes\n dl: PyreonHTMLAttributes\n dt: PyreonHTMLAttributes\n dd: PyreonHTMLAttributes\n // Forms\n form: FormAttributes\n label: LabelAttributes\n input: InputAttributes\n button: ButtonAttributes\n select: SelectAttributes\n datalist: PyreonHTMLAttributes\n optgroup: PyreonHTMLAttributes\n option: OptionAttributes\n textarea: TextareaAttributes\n output: PyreonHTMLAttributes\n progress: ProgressAttributes\n meter: MeterAttributes\n fieldset: PyreonHTMLAttributes\n legend: PyreonHTMLAttributes\n // Tables\n table: PyreonHTMLAttributes\n caption: PyreonHTMLAttributes\n colgroup: PyreonHTMLAttributes\n col: ColAttributes\n thead: PyreonHTMLAttributes\n tbody: PyreonHTMLAttributes\n tfoot: PyreonHTMLAttributes\n tr: PyreonHTMLAttributes\n th: ThAttributes\n td: TdAttributes\n // Media\n img: ImgAttributes\n video: VideoAttributes\n audio: AudioAttributes\n source: SourceAttributes\n track: PyreonHTMLAttributes\n picture: PyreonHTMLAttributes\n canvas: PyreonHTMLAttributes\n svg: SvgAttributes\n path: SvgAttributes\n circle: SvgAttributes\n ellipse: SvgAttributes\n line: SvgAttributes\n polyline: SvgAttributes\n polygon: SvgAttributes\n rect: SvgAttributes\n text: SvgAttributes\n tspan: SvgAttributes\n g: SvgAttributes\n defs: SvgAttributes\n use: SvgAttributes & { href?: string }\n symbol: SvgAttributes\n clipPath: SvgAttributes\n mask: SvgAttributes\n marker: SvgAttributes\n pattern: SvgAttributes\n linearGradient: SvgAttributes\n radialGradient: SvgAttributes\n stop: SvgAttributes & {\n offset?: string | number\n \"stop-color\"?: string\n \"stop-opacity\"?: string | number\n }\n // Interactive / embedding\n details: DetailsAttributes\n summary: PyreonHTMLAttributes\n dialog: DialogAttributes\n iframe: IframeAttributes\n embed: PyreonHTMLAttributes\n object: PyreonHTMLAttributes\n param: PyreonHTMLAttributes\n // Semantic / misc\n menu: PyreonHTMLAttributes\n menuitem: PyreonHTMLAttributes\n template: PyreonHTMLAttributes\n slot: PyreonHTMLAttributes\n portal: PyreonHTMLAttributes\n // Catch-all for custom elements and data-* attrs\n [tagName: string]: PyreonHTMLAttributes<any>\n }\n }\n}\n"],"mappings":";;AAGA,MAAa,WAA0B,OAAO,kBAAkB;;;;;;;;;AAUhE,MAAa,cAAqB,EAAE;AAmBpC,SAAgB,EACd,MACA,OACA,GAAG,UACI;AACP,QAAO;EACC;EACN,OAAQ,SAAS;EACjB,UAAU,kBAAkB,SAAS;EACrC,KAAM,OAAO,OAAkC;EAChD;;AAGH,SAAS,kBAAkB,UAAsC;AAE/D,MAAK,IAAI,IAAI,GAAG,IAAI,SAAS,QAAQ,IACnC,KAAI,MAAM,QAAQ,SAAS,GAAG,CAC5B,QAAO,gBAAgB,SAAS;AAGpC,QAAO;;AAGT,SAAS,gBAAgB,UAAsC;CAC7D,MAAM,SAAuB,EAAE;AAC/B,MAAK,MAAM,SAAS,SAClB,KAAI,MAAM,QAAQ,MAAM,CACtB,QAAO,KAAK,GAAG,gBAAgB,MAAsB,CAAC;KAEtD,QAAO,KAAK,MAAM;AAGtB,QAAO;;;;;;;;;;;;ACpDT,SAAgB,IACd,MACA,OACA,KACO;CACP,MAAM,EAAE,UAAU,GAAG,SAAS;CAC9B,MAAM,eAAgB,OAAO,OAAO;EAAE,GAAG;EAAM;EAAK,GAAG;AAEvD,KAAI,OAAO,SAAS,WAIlB,QAAO,EAAE,MADc,aAAa,SAAY;EAAE,GAAG;EAAc;EAAU,GAAG,aAClD;AAKhC,QAAO,EAAE,MAAM,cAAc,GADV,aAAa,SAAY,EAAE,GAAG,MAAM,QAAQ,SAAS,GAAG,WAAW,CAAC,SAAS,CACnC;;AAI/D,MAAa,OAAO"}
|
|
1
|
+
{"version":3,"file":"jsx-runtime.js","names":[],"sources":["../src/h.ts","../src/jsx-runtime.ts"],"sourcesContent":["import type { ComponentFn, Props, VNode, VNodeChild } from \"./types\"\n\n/** Marker for fragment nodes — renders children without a wrapper element */\nexport const Fragment: unique symbol = Symbol(\"Pyreon.Fragment\")\n\n/**\n * Hyperscript function — the compiled output of JSX.\n * `<div class=\"x\">hello</div>` → `h(\"div\", { class: \"x\" }, \"hello\")`\n *\n * Generic on P so TypeScript validates props match the component's signature\n * at the call site, then stores the result in the loosely-typed VNode.\n */\n/** Shared empty props sentinel — identity-checked in mountElement to skip applyProps. */\nexport const EMPTY_PROPS: Props = {} as Props\n\n/** Makes `children` optional in P (if present) so it can be passed as rest args to h(). */\ntype PropsWithOptionalChildren<P extends Props> = Omit<P, \"children\"> &\n (\"children\" extends keyof P ? { children?: P[\"children\"] } : unknown)\n\n// Overload: component with typed props — children is optional in the props object\n// because it can be passed as rest args. Extra keys are allowed via `& Props`.\nexport function h<P extends Props>(\n type: ComponentFn<P>,\n props: (PropsWithOptionalChildren<P> & Props) | null,\n ...children: VNodeChild[]\n): VNode\n// Overload: intrinsic element, symbol, generic/dynamic component, or mixed union\nexport function h(\n type: string | ((p: any) => VNodeChild) | symbol,\n props: Props | null,\n ...children: VNodeChild[]\n): VNode\nexport function h<P extends Props>(\n type: string | ComponentFn<P> | symbol,\n props: P | null,\n ...children: VNodeChild[]\n): VNode {\n return {\n type: type as string | ComponentFn | symbol,\n props: (props ?? EMPTY_PROPS) as Props,\n children: normalizeChildren(children),\n key: (props?.key as string | number | null) ?? null,\n }\n}\n\nfunction normalizeChildren(children: VNodeChild[]): VNodeChild[] {\n // Fast path: no nested arrays — return as-is without allocating\n for (let i = 0; i < children.length; i++) {\n if (Array.isArray(children[i])) {\n return flattenChildren(children)\n }\n }\n return children\n}\n\nfunction flattenChildren(children: VNodeChild[]): VNodeChild[] {\n const result: VNodeChild[] = []\n for (const child of children) {\n if (Array.isArray(child)) {\n result.push(...flattenChildren(child as VNodeChild[]))\n } else {\n result.push(child)\n }\n }\n return result\n}\n","/**\n * JSX automatic runtime.\n *\n * When tsconfig has `\"jsxImportSource\": \"@pyreon/core\"`, the TS/bundler compiler\n * rewrites JSX to imports from this file automatically:\n * <div class=\"x\" /> → jsx(\"div\", { class: \"x\" })\n */\nimport { Fragment, h } from \"./h\"\nimport type { ClassValue } from \"./style\"\nimport type { ComponentFn, Props, VNode, VNodeChild } from \"./types\"\n\nexport { Fragment }\n\nexport function jsx(\n type: string | ComponentFn | symbol,\n props: Props & { children?: VNodeChild | VNodeChild[] },\n key?: string | number | null,\n): VNode {\n const { children, ...rest } = props\n const propsWithKey = (key != null ? { ...rest, key } : rest) as Props\n\n if (typeof type === \"function\") {\n // Component: keep children in props.children so the component function can access them.\n // Children must NOT be spread as h() rest args because mountComponent only passes vnode.props.\n const componentProps = children !== undefined ? { ...propsWithKey, children } : propsWithKey\n return h(type, componentProps)\n }\n\n // DOM element or symbol (Fragment, ForSymbol): children go in vnode.children\n const childArray = children === undefined ? [] : Array.isArray(children) ? children : [children]\n return h(type, propsWithKey, ...(childArray as VNodeChild[]))\n}\n\n// jsxs is called when there are multiple static children — same signature\nexport const jsxs = jsx\n\n// ─── JSX types ────────────────────────────────────────────────────────────────\n\ntype Booleanish = boolean | \"true\" | \"false\"\nexport type CSSProperties = { [K in keyof CSSStyleDeclaration]?: string | number }\nexport type StyleValue = string | CSSProperties\n\n/** Event with typed currentTarget — used in element-specific event handlers. */\nexport type TargetedEvent<T extends Element, E extends Event = Event> = E & {\n readonly currentTarget: T\n}\n\n/** Common HTML attributes accepted by all Pyreon elements */\nexport interface PyreonHTMLAttributes<E extends Element = HTMLElement> {\n // Identity\n id?: string | undefined\n class?: ClassValue | (() => ClassValue) | undefined\n className?: ClassValue | (() => ClassValue) | undefined\n style?: StyleValue | (() => StyleValue) | undefined\n // Accessible\n role?: string | undefined\n tabIndex?: number | (() => number) | undefined\n title?: string | undefined\n lang?: string | undefined\n dir?: \"ltr\" | \"rtl\" | \"auto\" | undefined\n hidden?: boolean | (() => boolean) | undefined\n draggable?: Booleanish | undefined\n // ARIA\n \"aria-label\"?: string | (() => string) | undefined\n \"aria-hidden\"?: Booleanish | (() => Booleanish) | undefined\n \"aria-disabled\"?: Booleanish | (() => Booleanish) | undefined\n \"aria-expanded\"?: Booleanish | (() => Booleanish) | undefined\n \"aria-selected\"?: Booleanish | (() => Booleanish) | undefined\n \"aria-checked\"?: Booleanish | \"mixed\" | (() => Booleanish | \"mixed\") | undefined\n \"aria-current\"?: Booleanish | \"page\" | \"step\" | \"location\" | \"date\" | \"time\" | undefined\n \"aria-live\"?: \"off\" | \"assertive\" | \"polite\" | undefined\n \"aria-atomic\"?: Booleanish | undefined\n \"aria-busy\"?: Booleanish | undefined\n \"aria-controls\"?: string | undefined\n \"aria-describedby\"?: string | undefined\n \"aria-labelledby\"?: string | undefined\n \"aria-placeholder\"?: string | undefined\n \"aria-required\"?: Booleanish | (() => Booleanish) | undefined\n \"aria-invalid\"?: Booleanish | \"grammar\" | \"spelling\" | undefined\n \"aria-valuemin\"?: number | undefined\n \"aria-valuemax\"?: number | undefined\n \"aria-valuenow\"?: number | undefined\n \"aria-valuetext\"?: string | undefined\n \"aria-haspopup\"?: Booleanish | \"menu\" | \"listbox\" | \"tree\" | \"grid\" | \"dialog\" | undefined\n \"aria-posinset\"?: number | undefined\n \"aria-setsize\"?: number | undefined\n \"aria-level\"?: number | undefined\n \"aria-multiline\"?: Booleanish | undefined\n \"aria-multiselectable\"?: Booleanish | undefined\n \"aria-orientation\"?: \"horizontal\" | \"vertical\" | undefined\n \"aria-readonly\"?: Booleanish | (() => Booleanish) | undefined\n \"aria-sort\"?: \"none\" | \"ascending\" | \"descending\" | \"other\" | undefined\n \"aria-autocomplete\"?: \"none\" | \"inline\" | \"list\" | \"both\" | undefined\n \"aria-colcount\"?: number | undefined\n \"aria-colindex\"?: number | undefined\n \"aria-colspan\"?: number | undefined\n \"aria-rowcount\"?: number | undefined\n \"aria-rowindex\"?: number | undefined\n \"aria-rowspan\"?: number | undefined\n // DOM lifecycle ref — object ref or callback ref\n ref?: { current: E | null } | ((el: E | null) => void) | undefined\n // Key for list reconciliation\n key?: string | number | undefined\n // Children — allows null, undefined, boolean in JSX children positions\n children?: VNodeChild | VNodeChild[]\n // innerHTML\n innerHTML?: string | undefined\n dangerouslySetInnerHTML?: { __html: string } | undefined\n // Events — typed currentTarget via generic E\n onClick?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined\n onDblClick?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined\n onMouseDown?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined\n onMouseUp?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined\n onMouseEnter?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined\n onMouseLeave?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined\n onMouseMove?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined\n onMouseOver?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined\n onMouseOut?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined\n onContextMenu?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined\n onKeyDown?: ((e: TargetedEvent<E, KeyboardEvent>) => void) | undefined\n onKeyUp?: ((e: TargetedEvent<E, KeyboardEvent>) => void) | undefined\n onKeyPress?: ((e: TargetedEvent<E, KeyboardEvent>) => void) | undefined\n onFocus?: ((e: TargetedEvent<E, FocusEvent>) => void) | undefined\n onBlur?: ((e: TargetedEvent<E, FocusEvent>) => void) | undefined\n onChange?: ((e: TargetedEvent<E>) => void) | undefined\n onInput?: ((e: TargetedEvent<E, InputEvent>) => void) | undefined\n onBeforeInput?: ((e: TargetedEvent<E, InputEvent>) => void) | undefined\n onSubmit?: ((e: TargetedEvent<E, SubmitEvent>) => void) | undefined\n onReset?: ((e: TargetedEvent<E>) => void) | undefined\n onInvalid?: ((e: TargetedEvent<E>) => void) | undefined\n onScroll?: ((e: TargetedEvent<E>) => void) | undefined\n onWheel?: ((e: TargetedEvent<E, WheelEvent>) => void) | undefined\n onResize?: ((e: TargetedEvent<E>) => void) | undefined\n onDragStart?: ((e: TargetedEvent<E, DragEvent>) => void) | undefined\n onDragEnd?: ((e: TargetedEvent<E, DragEvent>) => void) | undefined\n onDragOver?: ((e: TargetedEvent<E, DragEvent>) => void) | undefined\n onDragEnter?: ((e: TargetedEvent<E, DragEvent>) => void) | undefined\n onDragLeave?: ((e: TargetedEvent<E, DragEvent>) => void) | undefined\n onDrop?: ((e: TargetedEvent<E, DragEvent>) => void) | undefined\n onTouchStart?: ((e: TargetedEvent<E, TouchEvent>) => void) | undefined\n onTouchEnd?: ((e: TargetedEvent<E, TouchEvent>) => void) | undefined\n onTouchMove?: ((e: TargetedEvent<E, TouchEvent>) => void) | undefined\n onPointerDown?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined\n onPointerUp?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined\n onPointerMove?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined\n onPointerEnter?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined\n onPointerLeave?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined\n onPointerCancel?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined\n onPointerOver?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined\n onPointerOut?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined\n onTransitionEnd?: ((e: TargetedEvent<E, TransitionEvent>) => void) | undefined\n onAnimationStart?: ((e: TargetedEvent<E, AnimationEvent>) => void) | undefined\n onAnimationEnd?: ((e: TargetedEvent<E, AnimationEvent>) => void) | undefined\n onAnimationIteration?: ((e: TargetedEvent<E, AnimationEvent>) => void) | undefined\n onToggle?: ((e: TargetedEvent<E>) => void) | undefined\n onLoad?: ((e: TargetedEvent<E>) => void) | undefined\n onError?: ((e: TargetedEvent<E> | string) => void) | undefined\n onAbort?: ((e: TargetedEvent<E>) => void) | undefined\n onSelect?: ((e: TargetedEvent<E>) => void) | undefined\n onCopy?: ((e: TargetedEvent<E, ClipboardEvent>) => void) | undefined\n onCut?: ((e: TargetedEvent<E, ClipboardEvent>) => void) | undefined\n onPaste?: ((e: TargetedEvent<E, ClipboardEvent>) => void) | undefined\n // data-* and aria-* catch-all (typed attributes above catch typos)\n [key: `data-${string}`]: unknown\n [key: `aria-${string}`]: unknown\n}\n\n/** Attributes specific to form inputs */\nexport interface InputAttributes extends PyreonHTMLAttributes<HTMLInputElement> {\n type?: string | (() => string) | undefined\n value?: string | number | (() => string | number) | undefined\n defaultValue?: string | number | undefined\n checked?: boolean | (() => boolean) | undefined\n defaultChecked?: boolean | undefined\n placeholder?: string | (() => string) | undefined\n disabled?: boolean | (() => boolean) | undefined\n readOnly?: boolean | undefined\n required?: boolean | (() => boolean) | undefined\n min?: string | number | undefined\n max?: string | number | undefined\n step?: string | number | undefined\n minLength?: number | undefined\n maxLength?: number | undefined\n pattern?: string | undefined\n multiple?: boolean | undefined\n name?: string | undefined\n accept?: string | undefined\n autoComplete?: string | undefined\n autoFocus?: boolean | undefined\n form?: string | undefined\n list?: string | undefined\n size?: number | undefined\n src?: string | (() => string) | undefined\n alt?: string | undefined\n width?: number | string | undefined\n height?: number | string | undefined\n}\n\nexport interface AnchorAttributes extends PyreonHTMLAttributes<HTMLAnchorElement> {\n href?: string | (() => string) | undefined\n target?: \"_blank\" | \"_self\" | \"_parent\" | \"_top\" | string | undefined\n rel?: string | undefined\n download?: string | boolean | undefined\n}\n\nexport interface ButtonAttributes extends PyreonHTMLAttributes<HTMLButtonElement> {\n type?: \"button\" | \"submit\" | \"reset\" | undefined\n disabled?: boolean | (() => boolean) | undefined\n name?: string | undefined\n value?: string | undefined\n form?: string | undefined\n formAction?: string | undefined\n formMethod?: string | undefined\n formEncType?: string | undefined\n formNoValidate?: boolean | undefined\n formTarget?: string | undefined\n}\n\nexport interface TextareaAttributes extends PyreonHTMLAttributes<HTMLTextAreaElement> {\n value?: string | (() => string) | undefined\n defaultValue?: string | undefined\n placeholder?: string | (() => string) | undefined\n disabled?: boolean | (() => boolean) | undefined\n readOnly?: boolean | undefined\n required?: boolean | (() => boolean) | undefined\n rows?: number | undefined\n cols?: number | undefined\n minLength?: number | undefined\n maxLength?: number | undefined\n name?: string | undefined\n autoFocus?: boolean | undefined\n form?: string | undefined\n wrap?: \"hard\" | \"soft\" | undefined\n}\n\nexport interface SelectAttributes extends PyreonHTMLAttributes<HTMLSelectElement> {\n value?: string | string[] | (() => string | string[]) | undefined\n defaultValue?: string | string[] | undefined\n disabled?: boolean | (() => boolean) | undefined\n required?: boolean | (() => boolean) | undefined\n multiple?: boolean | undefined\n name?: string | undefined\n size?: number | undefined\n form?: string | undefined\n autoFocus?: boolean | undefined\n}\n\ninterface OptionAttributes extends PyreonHTMLAttributes<HTMLOptionElement> {\n value?: string | number | (() => string | number) | undefined\n disabled?: boolean | (() => boolean) | undefined\n selected?: boolean | (() => boolean) | undefined\n label?: string | undefined\n}\n\nexport interface FormAttributes extends PyreonHTMLAttributes<HTMLFormElement> {\n action?: string | undefined\n method?: \"get\" | \"post\" | undefined\n encType?: string | undefined\n noValidate?: boolean | undefined\n target?: string | undefined\n name?: string | undefined\n autoComplete?: string | undefined\n}\n\nexport interface ImgAttributes extends PyreonHTMLAttributes<HTMLImageElement> {\n src?: string | (() => string) | undefined\n alt?: string | (() => string) | undefined\n width?: number | string | (() => number | string) | undefined\n height?: number | string | (() => number | string) | undefined\n loading?: \"lazy\" | \"eager\" | undefined\n decoding?: \"auto\" | \"async\" | \"sync\" | undefined\n crossOrigin?: \"anonymous\" | \"use-credentials\" | undefined\n referrerPolicy?: string | undefined\n srcSet?: string | undefined\n sizes?: string | undefined\n}\n\ninterface VideoAttributes extends PyreonHTMLAttributes<HTMLVideoElement> {\n src?: string | (() => string) | undefined\n width?: number | string | undefined\n height?: number | string | undefined\n controls?: boolean | undefined\n autoPlay?: boolean | undefined\n muted?: boolean | undefined\n loop?: boolean | undefined\n poster?: string | undefined\n preload?: \"none\" | \"metadata\" | \"auto\" | undefined\n playsInline?: boolean | undefined\n crossOrigin?: \"anonymous\" | \"use-credentials\" | undefined\n}\n\ninterface AudioAttributes extends PyreonHTMLAttributes<HTMLAudioElement> {\n src?: string | (() => string) | undefined\n controls?: boolean | undefined\n autoPlay?: boolean | undefined\n muted?: boolean | undefined\n loop?: boolean | undefined\n preload?: \"none\" | \"metadata\" | \"auto\" | undefined\n crossOrigin?: \"anonymous\" | \"use-credentials\" | undefined\n}\n\ninterface LabelAttributes extends PyreonHTMLAttributes<HTMLLabelElement> {\n htmlFor?: string | undefined\n for?: string | undefined\n form?: string | undefined\n}\n\ninterface ThAttributes extends PyreonHTMLAttributes<HTMLTableCellElement> {\n colSpan?: number | undefined\n rowSpan?: number | undefined\n scope?: \"col\" | \"row\" | \"colgroup\" | \"rowgroup\" | undefined\n abbr?: string | undefined\n headers?: string | undefined\n}\n\ninterface TdAttributes extends PyreonHTMLAttributes<HTMLTableCellElement> {\n colSpan?: number | undefined\n rowSpan?: number | undefined\n headers?: string | undefined\n}\n\ninterface ColAttributes extends PyreonHTMLAttributes<HTMLTableColElement> {\n span?: number | undefined\n}\n\ninterface IframeAttributes extends PyreonHTMLAttributes<HTMLIFrameElement> {\n src?: string | (() => string) | undefined\n width?: number | string | undefined\n height?: number | string | undefined\n allow?: string | undefined\n allowFullScreen?: boolean | undefined\n loading?: \"lazy\" | \"eager\" | undefined\n name?: string | undefined\n sandbox?: string | undefined\n referrerPolicy?: string | undefined\n title?: string | undefined\n}\n\ninterface LinkAttributes extends PyreonHTMLAttributes<HTMLLinkElement> {\n href?: string | (() => string) | undefined\n rel?: string | undefined\n type?: string | undefined\n as?: string | undefined\n media?: string | undefined\n crossOrigin?: \"anonymous\" | \"use-credentials\" | undefined\n integrity?: string | undefined\n referrerPolicy?: string | undefined\n}\n\ninterface MetaAttributes extends PyreonHTMLAttributes<HTMLMetaElement> {\n name?: string | undefined\n content?: string | (() => string) | undefined\n httpEquiv?: string | undefined\n charset?: string | undefined\n property?: string | undefined\n}\n\ninterface ScriptAttributes extends PyreonHTMLAttributes<HTMLScriptElement> {\n src?: string | (() => string) | undefined\n type?: string | undefined\n async?: boolean | undefined\n defer?: boolean | undefined\n crossOrigin?: \"anonymous\" | \"use-credentials\" | undefined\n integrity?: string | undefined\n noModule?: boolean | undefined\n referrerPolicy?: string | undefined\n}\n\ninterface SourceAttributes extends PyreonHTMLAttributes<HTMLSourceElement> {\n src?: string | (() => string) | undefined\n type?: string | undefined\n srcSet?: string | undefined\n sizes?: string | undefined\n media?: string | undefined\n}\n\ninterface ProgressAttributes extends PyreonHTMLAttributes<HTMLProgressElement> {\n value?: number | (() => number) | undefined\n max?: number | undefined\n}\n\ninterface MeterAttributes extends PyreonHTMLAttributes<HTMLMeterElement> {\n value?: number | (() => number) | undefined\n min?: number | undefined\n max?: number | undefined\n low?: number | undefined\n high?: number | undefined\n optimum?: number | undefined\n}\n\ninterface DetailsAttributes extends PyreonHTMLAttributes<HTMLDetailsElement> {\n open?: boolean | (() => boolean) | undefined\n}\n\ninterface DialogAttributes extends PyreonHTMLAttributes<HTMLDialogElement> {\n open?: boolean | (() => boolean) | undefined\n}\n\ninterface OlAttributes extends PyreonHTMLAttributes<HTMLOListElement> {\n start?: number | undefined\n reversed?: boolean | undefined\n type?: \"1\" | \"a\" | \"A\" | \"i\" | \"I\" | undefined\n}\n\ninterface CanvasAttributes extends PyreonHTMLAttributes<HTMLCanvasElement> {\n width?: number | string | undefined\n height?: number | string | undefined\n}\n\nexport interface SvgAttributes extends PyreonHTMLAttributes<SVGElement> {\n viewBox?: string | undefined\n xmlns?: string | undefined\n fill?: string | (() => string) | undefined\n stroke?: string | (() => string) | undefined\n \"stroke-width\"?: string | number | undefined\n \"stroke-linecap\"?: \"butt\" | \"round\" | \"square\" | undefined\n \"stroke-linejoin\"?: \"miter\" | \"round\" | \"bevel\" | undefined\n \"fill-rule\"?: \"nonzero\" | \"evenodd\" | undefined\n \"clip-rule\"?: \"nonzero\" | \"evenodd\" | undefined\n \"clip-path\"?: string | undefined\n d?: string | undefined\n cx?: string | number | undefined\n cy?: string | number | undefined\n r?: string | number | undefined\n rx?: string | number | undefined\n ry?: string | number | undefined\n x?: string | number | undefined\n y?: string | number | undefined\n x1?: string | number | undefined\n y1?: string | number | undefined\n x2?: string | number | undefined\n y2?: string | number | undefined\n width?: string | number | undefined\n height?: string | number | undefined\n transform?: string | (() => string) | undefined\n opacity?: string | number | (() => string | number) | undefined\n points?: string | undefined\n \"font-size\"?: string | number | undefined\n \"text-anchor\"?: \"start\" | \"middle\" | \"end\" | undefined\n \"dominant-baseline\"?: string | undefined\n}\n\ndeclare global {\n namespace JSX {\n /** The type that JSX expressions evaluate to */\n type Element = import(\"./types\").VNode\n\n /**\n * Valid JSX tag types — intrinsic strings + component functions.\n * Components may return VNode, null, strings, functions (reactive getters), etc.\n * (TS 5.1+ feature)\n */\n type ElementType = keyof IntrinsicElements | ((props: any) => import(\"./types\").VNodeChild)\n\n /** Tells TS which prop name carries children in component calls */\n interface ElementChildrenAttribute {\n // biome-ignore lint/complexity/noBannedTypes: JSX spec requires {} for ElementChildrenAttribute\n children: {}\n }\n\n interface IntrinsicElements {\n // Document structure\n html: PyreonHTMLAttributes\n head: PyreonHTMLAttributes\n body: PyreonHTMLAttributes\n title: PyreonHTMLAttributes\n base: PyreonHTMLAttributes\n meta: MetaAttributes\n link: LinkAttributes\n script: ScriptAttributes\n style: PyreonHTMLAttributes\n noscript: PyreonHTMLAttributes\n // Sections\n main: PyreonHTMLAttributes\n header: PyreonHTMLAttributes\n footer: PyreonHTMLAttributes\n nav: PyreonHTMLAttributes\n aside: PyreonHTMLAttributes\n section: PyreonHTMLAttributes\n article: PyreonHTMLAttributes\n address: PyreonHTMLAttributes\n h1: PyreonHTMLAttributes\n h2: PyreonHTMLAttributes\n h3: PyreonHTMLAttributes\n h4: PyreonHTMLAttributes\n h5: PyreonHTMLAttributes\n h6: PyreonHTMLAttributes\n hgroup: PyreonHTMLAttributes\n // Block text\n p: PyreonHTMLAttributes\n pre: PyreonHTMLAttributes\n blockquote: PyreonHTMLAttributes\n figure: PyreonHTMLAttributes\n figcaption: PyreonHTMLAttributes\n div: PyreonHTMLAttributes\n hr: PyreonHTMLAttributes\n // Inline text\n span: PyreonHTMLAttributes\n a: AnchorAttributes\n em: PyreonHTMLAttributes\n strong: PyreonHTMLAttributes\n small: PyreonHTMLAttributes\n s: PyreonHTMLAttributes\n cite: PyreonHTMLAttributes\n q: PyreonHTMLAttributes\n abbr: PyreonHTMLAttributes\n time: PyreonHTMLAttributes\n code: PyreonHTMLAttributes\n var: PyreonHTMLAttributes\n samp: PyreonHTMLAttributes\n kbd: PyreonHTMLAttributes\n mark: PyreonHTMLAttributes\n sub: PyreonHTMLAttributes\n sup: PyreonHTMLAttributes\n i: PyreonHTMLAttributes\n b: PyreonHTMLAttributes\n u: PyreonHTMLAttributes\n bdi: PyreonHTMLAttributes\n bdo: PyreonHTMLAttributes\n br: PyreonHTMLAttributes\n wbr: PyreonHTMLAttributes\n ruby: PyreonHTMLAttributes\n rt: PyreonHTMLAttributes\n rp: PyreonHTMLAttributes\n // Lists\n ul: PyreonHTMLAttributes\n ol: OlAttributes\n li: PyreonHTMLAttributes\n dl: PyreonHTMLAttributes\n dt: PyreonHTMLAttributes\n dd: PyreonHTMLAttributes\n // Forms\n form: FormAttributes\n label: LabelAttributes\n input: InputAttributes\n button: ButtonAttributes\n select: SelectAttributes\n datalist: PyreonHTMLAttributes\n optgroup: PyreonHTMLAttributes\n option: OptionAttributes\n textarea: TextareaAttributes\n output: PyreonHTMLAttributes\n progress: ProgressAttributes\n meter: MeterAttributes\n fieldset: PyreonHTMLAttributes\n legend: PyreonHTMLAttributes\n // Tables\n table: PyreonHTMLAttributes\n caption: PyreonHTMLAttributes\n colgroup: PyreonHTMLAttributes\n col: ColAttributes\n thead: PyreonHTMLAttributes\n tbody: PyreonHTMLAttributes\n tfoot: PyreonHTMLAttributes\n tr: PyreonHTMLAttributes\n th: ThAttributes\n td: TdAttributes\n // Media\n img: ImgAttributes\n video: VideoAttributes\n audio: AudioAttributes\n source: SourceAttributes\n track: PyreonHTMLAttributes\n picture: PyreonHTMLAttributes\n canvas: CanvasAttributes\n svg: SvgAttributes\n path: SvgAttributes\n circle: SvgAttributes\n ellipse: SvgAttributes\n line: SvgAttributes\n polyline: SvgAttributes\n polygon: SvgAttributes\n rect: SvgAttributes\n text: SvgAttributes\n tspan: SvgAttributes\n g: SvgAttributes\n defs: SvgAttributes\n use: SvgAttributes & { href?: string }\n symbol: SvgAttributes\n clipPath: SvgAttributes\n mask: SvgAttributes\n marker: SvgAttributes\n pattern: SvgAttributes\n linearGradient: SvgAttributes\n radialGradient: SvgAttributes\n stop: SvgAttributes & {\n offset?: string | number\n \"stop-color\"?: string\n \"stop-opacity\"?: string | number\n }\n // Interactive / embedding\n details: DetailsAttributes\n summary: PyreonHTMLAttributes\n dialog: DialogAttributes\n iframe: IframeAttributes\n embed: PyreonHTMLAttributes\n object: PyreonHTMLAttributes\n param: PyreonHTMLAttributes\n // Semantic / misc\n menu: PyreonHTMLAttributes\n menuitem: PyreonHTMLAttributes\n template: PyreonHTMLAttributes\n slot: PyreonHTMLAttributes\n portal: PyreonHTMLAttributes\n // Catch-all for custom elements and data-* attrs\n [tagName: string]: PyreonHTMLAttributes<any>\n }\n }\n}\n"],"mappings":";;AAGA,MAAa,WAA0B,OAAO,kBAAkB;;;;;;;;;AAUhE,MAAa,cAAqB,EAAE;AAmBpC,SAAgB,EACd,MACA,OACA,GAAG,UACI;AACP,QAAO;EACC;EACN,OAAQ,SAAS;EACjB,UAAU,kBAAkB,SAAS;EACrC,KAAM,OAAO,OAAkC;EAChD;;AAGH,SAAS,kBAAkB,UAAsC;AAE/D,MAAK,IAAI,IAAI,GAAG,IAAI,SAAS,QAAQ,IACnC,KAAI,MAAM,QAAQ,SAAS,GAAG,CAC5B,QAAO,gBAAgB,SAAS;AAGpC,QAAO;;AAGT,SAAS,gBAAgB,UAAsC;CAC7D,MAAM,SAAuB,EAAE;AAC/B,MAAK,MAAM,SAAS,SAClB,KAAI,MAAM,QAAQ,MAAM,CACtB,QAAO,KAAK,GAAG,gBAAgB,MAAsB,CAAC;KAEtD,QAAO,KAAK,MAAM;AAGtB,QAAO;;;;;;;;;;;;ACnDT,SAAgB,IACd,MACA,OACA,KACO;CACP,MAAM,EAAE,UAAU,GAAG,SAAS;CAC9B,MAAM,eAAgB,OAAO,OAAO;EAAE,GAAG;EAAM;EAAK,GAAG;AAEvD,KAAI,OAAO,SAAS,WAIlB,QAAO,EAAE,MADc,aAAa,SAAY;EAAE,GAAG;EAAc;EAAU,GAAG,aAClD;AAKhC,QAAO,EAAE,MAAM,cAAc,GADV,aAAa,SAAY,EAAE,GAAG,MAAM,QAAQ,SAAS,GAAG,WAAW,CAAC,SAAS,CACnC;;AAI/D,MAAa,OAAO"}
|
package/lib/types/index.d.ts
CHANGED
|
@@ -198,15 +198,30 @@ type PropsWithOptionalChildren<P extends Props> = Omit<P, "children"> & ("childr
|
|
|
198
198
|
declare function h<P extends Props>(type: ComponentFn<P>, props: (PropsWithOptionalChildren<P> & Props) | null, ...children: VNodeChild[]): VNode;
|
|
199
199
|
declare function h(type: string | ((p: any) => VNodeChild) | symbol, props: Props | null, ...children: VNodeChild[]): VNode;
|
|
200
200
|
//#endregion
|
|
201
|
+
//#region src/style.d.ts
|
|
202
|
+
declare const CSS_UNITLESS: Set<string>;
|
|
203
|
+
/** Value accepted by the `class` prop — string, array, object, or nested mix. */
|
|
204
|
+
type ClassValue = string | number | boolean | null | undefined | ClassValue[] | Record<string, boolean | null | undefined | (() => boolean)>;
|
|
205
|
+
/** Resolve a ClassValue into a flat class string (like clsx/cx). */
|
|
206
|
+
declare function cx(value: ClassValue): string;
|
|
207
|
+
/** Convert a camelCase CSS property name to kebab-case. */
|
|
208
|
+
declare function toKebabCase(str: string): string;
|
|
209
|
+
/** Normalize a style value — appends "px" to numbers for non-unitless properties. */
|
|
210
|
+
declare function normalizeStyleValue(key: string, value: unknown): string;
|
|
211
|
+
//#endregion
|
|
201
212
|
//#region src/jsx-runtime.d.ts
|
|
202
213
|
type Booleanish = boolean | "true" | "false";
|
|
203
214
|
type CSSProperties = { [K in keyof CSSStyleDeclaration]?: string | number };
|
|
204
215
|
type StyleValue = string | CSSProperties;
|
|
216
|
+
/** Event with typed currentTarget — used in element-specific event handlers. */
|
|
217
|
+
type TargetedEvent<T extends Element, E extends Event = Event> = E & {
|
|
218
|
+
readonly currentTarget: T;
|
|
219
|
+
};
|
|
205
220
|
/** Common HTML attributes accepted by all Pyreon elements */
|
|
206
221
|
interface PyreonHTMLAttributes<E extends Element = HTMLElement> {
|
|
207
222
|
id?: string | undefined;
|
|
208
|
-
class?:
|
|
209
|
-
className?:
|
|
223
|
+
class?: ClassValue | (() => ClassValue) | undefined;
|
|
224
|
+
className?: ClassValue | (() => ClassValue) | undefined;
|
|
210
225
|
style?: StyleValue | (() => StyleValue) | undefined;
|
|
211
226
|
role?: string | undefined;
|
|
212
227
|
tabIndex?: number | (() => number) | undefined;
|
|
@@ -260,56 +275,61 @@ interface PyreonHTMLAttributes<E extends Element = HTMLElement> {
|
|
|
260
275
|
dangerouslySetInnerHTML?: {
|
|
261
276
|
__html: string;
|
|
262
277
|
} | undefined;
|
|
263
|
-
onClick?: ((e: MouseEvent) => void) | undefined;
|
|
264
|
-
onDblClick?: ((e: MouseEvent) => void) | undefined;
|
|
265
|
-
onMouseDown?: ((e: MouseEvent) => void) | undefined;
|
|
266
|
-
onMouseUp?: ((e: MouseEvent) => void) | undefined;
|
|
267
|
-
onMouseEnter?: ((e: MouseEvent) => void) | undefined;
|
|
268
|
-
onMouseLeave?: ((e: MouseEvent) => void) | undefined;
|
|
269
|
-
onMouseMove?: ((e: MouseEvent) => void) | undefined;
|
|
270
|
-
onMouseOver?: ((e: MouseEvent) => void) | undefined;
|
|
271
|
-
onMouseOut?: ((e: MouseEvent) => void) | undefined;
|
|
272
|
-
onContextMenu?: ((e: MouseEvent) => void) | undefined;
|
|
273
|
-
onKeyDown?: ((e: KeyboardEvent) => void) | undefined;
|
|
274
|
-
onKeyUp?: ((e: KeyboardEvent) => void) | undefined;
|
|
275
|
-
onKeyPress?: ((e: KeyboardEvent) => void) | undefined;
|
|
276
|
-
onFocus?: ((e: FocusEvent) => void) | undefined;
|
|
277
|
-
onBlur?: ((e: FocusEvent) => void) | undefined;
|
|
278
|
-
onChange?: ((e:
|
|
279
|
-
onInput?: ((e: InputEvent) => void) | undefined;
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
278
|
+
onClick?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
279
|
+
onDblClick?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
280
|
+
onMouseDown?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
281
|
+
onMouseUp?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
282
|
+
onMouseEnter?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
283
|
+
onMouseLeave?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
284
|
+
onMouseMove?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
285
|
+
onMouseOver?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
286
|
+
onMouseOut?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
287
|
+
onContextMenu?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
288
|
+
onKeyDown?: ((e: TargetedEvent<E, KeyboardEvent>) => void) | undefined;
|
|
289
|
+
onKeyUp?: ((e: TargetedEvent<E, KeyboardEvent>) => void) | undefined;
|
|
290
|
+
onKeyPress?: ((e: TargetedEvent<E, KeyboardEvent>) => void) | undefined;
|
|
291
|
+
onFocus?: ((e: TargetedEvent<E, FocusEvent>) => void) | undefined;
|
|
292
|
+
onBlur?: ((e: TargetedEvent<E, FocusEvent>) => void) | undefined;
|
|
293
|
+
onChange?: ((e: TargetedEvent<E>) => void) | undefined;
|
|
294
|
+
onInput?: ((e: TargetedEvent<E, InputEvent>) => void) | undefined;
|
|
295
|
+
onBeforeInput?: ((e: TargetedEvent<E, InputEvent>) => void) | undefined;
|
|
296
|
+
onSubmit?: ((e: TargetedEvent<E, SubmitEvent>) => void) | undefined;
|
|
297
|
+
onReset?: ((e: TargetedEvent<E>) => void) | undefined;
|
|
298
|
+
onInvalid?: ((e: TargetedEvent<E>) => void) | undefined;
|
|
299
|
+
onScroll?: ((e: TargetedEvent<E>) => void) | undefined;
|
|
300
|
+
onWheel?: ((e: TargetedEvent<E, WheelEvent>) => void) | undefined;
|
|
301
|
+
onResize?: ((e: TargetedEvent<E>) => void) | undefined;
|
|
302
|
+
onDragStart?: ((e: TargetedEvent<E, DragEvent>) => void) | undefined;
|
|
303
|
+
onDragEnd?: ((e: TargetedEvent<E, DragEvent>) => void) | undefined;
|
|
304
|
+
onDragOver?: ((e: TargetedEvent<E, DragEvent>) => void) | undefined;
|
|
305
|
+
onDragEnter?: ((e: TargetedEvent<E, DragEvent>) => void) | undefined;
|
|
306
|
+
onDragLeave?: ((e: TargetedEvent<E, DragEvent>) => void) | undefined;
|
|
307
|
+
onDrop?: ((e: TargetedEvent<E, DragEvent>) => void) | undefined;
|
|
308
|
+
onTouchStart?: ((e: TargetedEvent<E, TouchEvent>) => void) | undefined;
|
|
309
|
+
onTouchEnd?: ((e: TargetedEvent<E, TouchEvent>) => void) | undefined;
|
|
310
|
+
onTouchMove?: ((e: TargetedEvent<E, TouchEvent>) => void) | undefined;
|
|
311
|
+
onPointerDown?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined;
|
|
312
|
+
onPointerUp?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined;
|
|
313
|
+
onPointerMove?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined;
|
|
314
|
+
onPointerEnter?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined;
|
|
315
|
+
onPointerLeave?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined;
|
|
316
|
+
onPointerCancel?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined;
|
|
317
|
+
onPointerOver?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined;
|
|
318
|
+
onPointerOut?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined;
|
|
319
|
+
onTransitionEnd?: ((e: TargetedEvent<E, TransitionEvent>) => void) | undefined;
|
|
320
|
+
onAnimationStart?: ((e: TargetedEvent<E, AnimationEvent>) => void) | undefined;
|
|
321
|
+
onAnimationEnd?: ((e: TargetedEvent<E, AnimationEvent>) => void) | undefined;
|
|
322
|
+
onAnimationIteration?: ((e: TargetedEvent<E, AnimationEvent>) => void) | undefined;
|
|
323
|
+
onToggle?: ((e: TargetedEvent<E>) => void) | undefined;
|
|
324
|
+
onLoad?: ((e: TargetedEvent<E>) => void) | undefined;
|
|
325
|
+
onError?: ((e: TargetedEvent<E> | string) => void) | undefined;
|
|
326
|
+
onAbort?: ((e: TargetedEvent<E>) => void) | undefined;
|
|
327
|
+
onSelect?: ((e: TargetedEvent<E>) => void) | undefined;
|
|
328
|
+
onCopy?: ((e: TargetedEvent<E, ClipboardEvent>) => void) | undefined;
|
|
329
|
+
onCut?: ((e: TargetedEvent<E, ClipboardEvent>) => void) | undefined;
|
|
330
|
+
onPaste?: ((e: TargetedEvent<E, ClipboardEvent>) => void) | undefined;
|
|
331
|
+
[key: `data-${string}`]: unknown;
|
|
332
|
+
[key: `aria-${string}`]: unknown;
|
|
313
333
|
}
|
|
314
334
|
/** Attributes specific to form inputs */
|
|
315
335
|
interface InputAttributes extends PyreonHTMLAttributes<HTMLInputElement> {
|
|
@@ -524,6 +544,10 @@ interface OlAttributes extends PyreonHTMLAttributes<HTMLOListElement> {
|
|
|
524
544
|
reversed?: boolean | undefined;
|
|
525
545
|
type?: "1" | "a" | "A" | "i" | "I" | undefined;
|
|
526
546
|
}
|
|
547
|
+
interface CanvasAttributes extends PyreonHTMLAttributes<HTMLCanvasElement> {
|
|
548
|
+
width?: number | string | undefined;
|
|
549
|
+
height?: number | string | undefined;
|
|
550
|
+
}
|
|
527
551
|
interface SvgAttributes extends PyreonHTMLAttributes<SVGElement> {
|
|
528
552
|
viewBox?: string | undefined;
|
|
529
553
|
xmlns?: string | undefined;
|
|
@@ -666,7 +690,7 @@ declare global {
|
|
|
666
690
|
source: SourceAttributes;
|
|
667
691
|
track: PyreonHTMLAttributes;
|
|
668
692
|
picture: PyreonHTMLAttributes;
|
|
669
|
-
canvas:
|
|
693
|
+
canvas: CanvasAttributes;
|
|
670
694
|
svg: SvgAttributes;
|
|
671
695
|
path: SvgAttributes;
|
|
672
696
|
circle: SvgAttributes;
|
|
@@ -814,6 +838,38 @@ interface PortalProps {
|
|
|
814
838
|
*/
|
|
815
839
|
declare function Portal(props: PortalProps): VNode;
|
|
816
840
|
//#endregion
|
|
841
|
+
//#region src/props.d.ts
|
|
842
|
+
/**
|
|
843
|
+
* Split props into two groups: keys you want and the rest.
|
|
844
|
+
* Unlike destructuring, this preserves reactivity (getters on the original object).
|
|
845
|
+
*
|
|
846
|
+
* @example
|
|
847
|
+
* const [own, html] = splitProps(props, ["label", "icon"])
|
|
848
|
+
* return <button {...html}><Icon name={own.icon} /> {own.label}</button>
|
|
849
|
+
*/
|
|
850
|
+
declare function splitProps<T extends Record<string, unknown>, K extends (keyof T)[]>(props: T, keys: K): [Pick<T, K[number]>, Omit<T, K[number]>];
|
|
851
|
+
/**
|
|
852
|
+
* Merge default values with component props. Defaults are used when
|
|
853
|
+
* the prop is `undefined`. Preserves getter reactivity.
|
|
854
|
+
*
|
|
855
|
+
* @example
|
|
856
|
+
* const merged = mergeProps({ size: "md", variant: "primary" }, props)
|
|
857
|
+
* // merged.size is reactive — falls back to "md" when props.size is undefined
|
|
858
|
+
*/
|
|
859
|
+
declare function mergeProps<T extends Record<string, unknown>>(...sources: T[]): T;
|
|
860
|
+
/**
|
|
861
|
+
* Generate a unique ID string for accessibility attributes (htmlFor, aria-describedby, etc.).
|
|
862
|
+
* SSR-safe: uses a deterministic counter that resets per request context.
|
|
863
|
+
*
|
|
864
|
+
* @example
|
|
865
|
+
* const id = createUniqueId()
|
|
866
|
+
* return <>
|
|
867
|
+
* <label for={id}>Name</label>
|
|
868
|
+
* <input id={id} />
|
|
869
|
+
* </>
|
|
870
|
+
*/
|
|
871
|
+
declare function createUniqueId(): string;
|
|
872
|
+
//#endregion
|
|
817
873
|
//#region src/ref.d.ts
|
|
818
874
|
/**
|
|
819
875
|
* createRef — mutable container for a DOM element or component value.
|
|
@@ -873,13 +929,6 @@ interface SwitchProps extends Props {
|
|
|
873
929
|
declare function Switch(props: SwitchProps): VNode | null;
|
|
874
930
|
declare const MatchSymbol: unique symbol;
|
|
875
931
|
//#endregion
|
|
876
|
-
//#region src/style.d.ts
|
|
877
|
-
declare const CSS_UNITLESS: Set<string>;
|
|
878
|
-
/** Convert a camelCase CSS property name to kebab-case. */
|
|
879
|
-
declare function toKebabCase(str: string): string;
|
|
880
|
-
/** Normalize a style value — appends "px" to numbers for non-unitless properties. */
|
|
881
|
-
declare function normalizeStyleValue(key: string, value: unknown): string;
|
|
882
|
-
//#endregion
|
|
883
932
|
//#region src/telemetry.d.ts
|
|
884
933
|
/**
|
|
885
934
|
* Error telemetry — hook into Pyreon's error reporting for Sentry, Datadog, etc.
|
|
@@ -918,5 +967,5 @@ declare function registerErrorHandler(handler: ErrorHandler): () => void;
|
|
|
918
967
|
*/
|
|
919
968
|
declare function reportError(ctx: ErrorContext): void;
|
|
920
969
|
//#endregion
|
|
921
|
-
export { type AnchorAttributes, type ButtonAttributes, type CSSProperties, CSS_UNITLESS, type CleanupFn, type ComponentFn, type ComponentInstance, type Context, Dynamic, type DynamicProps, EMPTY_PROPS, ErrorBoundary, type ErrorContext, type ErrorHandler, type ExtractProps, For, type ForProps, ForSymbol, type FormAttributes, Fragment, type HigherOrderComponent, type ImgAttributes, type InputAttributes, type LazyComponent, type LifecycleHooks, Match, type MatchProps, MatchSymbol, type NativeItem, Portal, type PortalProps, PortalSymbol, type Props, type PyreonHTMLAttributes, type Ref, type SelectAttributes, Show, type ShowProps, type StyleValue, Suspense, type SvgAttributes, Switch, type SwitchProps, type TextareaAttributes, type VNode, type VNodeChild, type VNodeChildAtom, createContext, createRef, defineComponent, dispatchToErrorBoundary, h, lazy, mapArray, normalizeStyleValue, onErrorCaptured, onMount, onUnmount, onUpdate, popContext, propagateError, provide, pushContext, registerErrorHandler, reportError, runWithHooks, setContextStackProvider, toKebabCase, useContext, withContext };
|
|
970
|
+
export { type AnchorAttributes, type ButtonAttributes, type CSSProperties, CSS_UNITLESS, type ClassValue, type CleanupFn, type ComponentFn, type ComponentInstance, type Context, Dynamic, type DynamicProps, EMPTY_PROPS, ErrorBoundary, type ErrorContext, type ErrorHandler, type ExtractProps, For, type ForProps, ForSymbol, type FormAttributes, Fragment, type HigherOrderComponent, type ImgAttributes, type InputAttributes, type LazyComponent, type LifecycleHooks, Match, type MatchProps, MatchSymbol, type NativeItem, Portal, type PortalProps, PortalSymbol, type Props, type PyreonHTMLAttributes, type Ref, type SelectAttributes, Show, type ShowProps, type StyleValue, Suspense, type SvgAttributes, Switch, type SwitchProps, type TargetedEvent, type TextareaAttributes, type VNode, type VNodeChild, type VNodeChildAtom, createContext, createRef, createUniqueId, cx, defineComponent, dispatchToErrorBoundary, h, lazy, mapArray, mergeProps, normalizeStyleValue, onErrorCaptured, onMount, onUnmount, onUpdate, popContext, propagateError, provide, pushContext, registerErrorHandler, reportError, runWithHooks, setContextStackProvider, splitProps, toKebabCase, useContext, withContext };
|
|
922
971
|
//# sourceMappingURL=index2.d.ts.map
|
package/lib/types/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index2.d.ts","names":[],"sources":["../../../src/types.ts","../../../src/component.ts","../../../src/context.ts","../../../src/dynamic.ts","../../../src/error-boundary.ts","../../../src/for.ts","../../../src/h.ts","../../../src/jsx-runtime.ts","../../../src/suspense.ts","../../../src/lazy.ts","../../../src/lifecycle.ts","../../../src/map-array.ts","../../../src/portal.ts","../../../src/ref.ts","../../../src/show.ts","../../../src/style.ts","../../../src/telemetry.ts"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index2.d.ts","names":[],"sources":["../../../src/types.ts","../../../src/component.ts","../../../src/context.ts","../../../src/dynamic.ts","../../../src/error-boundary.ts","../../../src/for.ts","../../../src/h.ts","../../../src/style.ts","../../../src/jsx-runtime.ts","../../../src/suspense.ts","../../../src/lazy.ts","../../../src/lifecycle.ts","../../../src/map-array.ts","../../../src/portal.ts","../../../src/props.ts","../../../src/ref.ts","../../../src/show.ts","../../../src/telemetry.ts"],"mappings":"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"}
|
|
@@ -19,6 +19,10 @@ type ComponentFn<P extends Props = Props> = (props: P) => VNodeChild;
|
|
|
19
19
|
/** Marker for fragment nodes — renders children without a wrapper element */
|
|
20
20
|
declare const Fragment: unique symbol;
|
|
21
21
|
//#endregion
|
|
22
|
+
//#region src/style.d.ts
|
|
23
|
+
/** Value accepted by the `class` prop — string, array, object, or nested mix. */
|
|
24
|
+
type ClassValue = string | number | boolean | null | undefined | ClassValue[] | Record<string, boolean | null | undefined | (() => boolean)>;
|
|
25
|
+
//#endregion
|
|
22
26
|
//#region src/jsx-runtime.d.ts
|
|
23
27
|
declare function jsx(type: string | ComponentFn | symbol, props: Props & {
|
|
24
28
|
children?: VNodeChild | VNodeChild[];
|
|
@@ -27,11 +31,15 @@ declare const jsxs: typeof jsx;
|
|
|
27
31
|
type Booleanish = boolean | "true" | "false";
|
|
28
32
|
type CSSProperties = { [K in keyof CSSStyleDeclaration]?: string | number };
|
|
29
33
|
type StyleValue = string | CSSProperties;
|
|
34
|
+
/** Event with typed currentTarget — used in element-specific event handlers. */
|
|
35
|
+
type TargetedEvent<T extends Element, E extends Event = Event> = E & {
|
|
36
|
+
readonly currentTarget: T;
|
|
37
|
+
};
|
|
30
38
|
/** Common HTML attributes accepted by all Pyreon elements */
|
|
31
39
|
interface PyreonHTMLAttributes<E extends Element = HTMLElement> {
|
|
32
40
|
id?: string | undefined;
|
|
33
|
-
class?:
|
|
34
|
-
className?:
|
|
41
|
+
class?: ClassValue | (() => ClassValue) | undefined;
|
|
42
|
+
className?: ClassValue | (() => ClassValue) | undefined;
|
|
35
43
|
style?: StyleValue | (() => StyleValue) | undefined;
|
|
36
44
|
role?: string | undefined;
|
|
37
45
|
tabIndex?: number | (() => number) | undefined;
|
|
@@ -85,56 +93,61 @@ interface PyreonHTMLAttributes<E extends Element = HTMLElement> {
|
|
|
85
93
|
dangerouslySetInnerHTML?: {
|
|
86
94
|
__html: string;
|
|
87
95
|
} | undefined;
|
|
88
|
-
onClick?: ((e: MouseEvent) => void) | undefined;
|
|
89
|
-
onDblClick?: ((e: MouseEvent) => void) | undefined;
|
|
90
|
-
onMouseDown?: ((e: MouseEvent) => void) | undefined;
|
|
91
|
-
onMouseUp?: ((e: MouseEvent) => void) | undefined;
|
|
92
|
-
onMouseEnter?: ((e: MouseEvent) => void) | undefined;
|
|
93
|
-
onMouseLeave?: ((e: MouseEvent) => void) | undefined;
|
|
94
|
-
onMouseMove?: ((e: MouseEvent) => void) | undefined;
|
|
95
|
-
onMouseOver?: ((e: MouseEvent) => void) | undefined;
|
|
96
|
-
onMouseOut?: ((e: MouseEvent) => void) | undefined;
|
|
97
|
-
onContextMenu?: ((e: MouseEvent) => void) | undefined;
|
|
98
|
-
onKeyDown?: ((e: KeyboardEvent) => void) | undefined;
|
|
99
|
-
onKeyUp?: ((e: KeyboardEvent) => void) | undefined;
|
|
100
|
-
onKeyPress?: ((e: KeyboardEvent) => void) | undefined;
|
|
101
|
-
onFocus?: ((e: FocusEvent) => void) | undefined;
|
|
102
|
-
onBlur?: ((e: FocusEvent) => void) | undefined;
|
|
103
|
-
onChange?: ((e:
|
|
104
|
-
onInput?: ((e: InputEvent) => void) | undefined;
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
96
|
+
onClick?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
97
|
+
onDblClick?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
98
|
+
onMouseDown?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
99
|
+
onMouseUp?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
100
|
+
onMouseEnter?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
101
|
+
onMouseLeave?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
102
|
+
onMouseMove?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
103
|
+
onMouseOver?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
104
|
+
onMouseOut?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
105
|
+
onContextMenu?: ((e: TargetedEvent<E, MouseEvent>) => void) | undefined;
|
|
106
|
+
onKeyDown?: ((e: TargetedEvent<E, KeyboardEvent>) => void) | undefined;
|
|
107
|
+
onKeyUp?: ((e: TargetedEvent<E, KeyboardEvent>) => void) | undefined;
|
|
108
|
+
onKeyPress?: ((e: TargetedEvent<E, KeyboardEvent>) => void) | undefined;
|
|
109
|
+
onFocus?: ((e: TargetedEvent<E, FocusEvent>) => void) | undefined;
|
|
110
|
+
onBlur?: ((e: TargetedEvent<E, FocusEvent>) => void) | undefined;
|
|
111
|
+
onChange?: ((e: TargetedEvent<E>) => void) | undefined;
|
|
112
|
+
onInput?: ((e: TargetedEvent<E, InputEvent>) => void) | undefined;
|
|
113
|
+
onBeforeInput?: ((e: TargetedEvent<E, InputEvent>) => void) | undefined;
|
|
114
|
+
onSubmit?: ((e: TargetedEvent<E, SubmitEvent>) => void) | undefined;
|
|
115
|
+
onReset?: ((e: TargetedEvent<E>) => void) | undefined;
|
|
116
|
+
onInvalid?: ((e: TargetedEvent<E>) => void) | undefined;
|
|
117
|
+
onScroll?: ((e: TargetedEvent<E>) => void) | undefined;
|
|
118
|
+
onWheel?: ((e: TargetedEvent<E, WheelEvent>) => void) | undefined;
|
|
119
|
+
onResize?: ((e: TargetedEvent<E>) => void) | undefined;
|
|
120
|
+
onDragStart?: ((e: TargetedEvent<E, DragEvent>) => void) | undefined;
|
|
121
|
+
onDragEnd?: ((e: TargetedEvent<E, DragEvent>) => void) | undefined;
|
|
122
|
+
onDragOver?: ((e: TargetedEvent<E, DragEvent>) => void) | undefined;
|
|
123
|
+
onDragEnter?: ((e: TargetedEvent<E, DragEvent>) => void) | undefined;
|
|
124
|
+
onDragLeave?: ((e: TargetedEvent<E, DragEvent>) => void) | undefined;
|
|
125
|
+
onDrop?: ((e: TargetedEvent<E, DragEvent>) => void) | undefined;
|
|
126
|
+
onTouchStart?: ((e: TargetedEvent<E, TouchEvent>) => void) | undefined;
|
|
127
|
+
onTouchEnd?: ((e: TargetedEvent<E, TouchEvent>) => void) | undefined;
|
|
128
|
+
onTouchMove?: ((e: TargetedEvent<E, TouchEvent>) => void) | undefined;
|
|
129
|
+
onPointerDown?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined;
|
|
130
|
+
onPointerUp?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined;
|
|
131
|
+
onPointerMove?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined;
|
|
132
|
+
onPointerEnter?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined;
|
|
133
|
+
onPointerLeave?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined;
|
|
134
|
+
onPointerCancel?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined;
|
|
135
|
+
onPointerOver?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined;
|
|
136
|
+
onPointerOut?: ((e: TargetedEvent<E, PointerEvent>) => void) | undefined;
|
|
137
|
+
onTransitionEnd?: ((e: TargetedEvent<E, TransitionEvent>) => void) | undefined;
|
|
138
|
+
onAnimationStart?: ((e: TargetedEvent<E, AnimationEvent>) => void) | undefined;
|
|
139
|
+
onAnimationEnd?: ((e: TargetedEvent<E, AnimationEvent>) => void) | undefined;
|
|
140
|
+
onAnimationIteration?: ((e: TargetedEvent<E, AnimationEvent>) => void) | undefined;
|
|
141
|
+
onToggle?: ((e: TargetedEvent<E>) => void) | undefined;
|
|
142
|
+
onLoad?: ((e: TargetedEvent<E>) => void) | undefined;
|
|
143
|
+
onError?: ((e: TargetedEvent<E> | string) => void) | undefined;
|
|
144
|
+
onAbort?: ((e: TargetedEvent<E>) => void) | undefined;
|
|
145
|
+
onSelect?: ((e: TargetedEvent<E>) => void) | undefined;
|
|
146
|
+
onCopy?: ((e: TargetedEvent<E, ClipboardEvent>) => void) | undefined;
|
|
147
|
+
onCut?: ((e: TargetedEvent<E, ClipboardEvent>) => void) | undefined;
|
|
148
|
+
onPaste?: ((e: TargetedEvent<E, ClipboardEvent>) => void) | undefined;
|
|
149
|
+
[key: `data-${string}`]: unknown;
|
|
150
|
+
[key: `aria-${string}`]: unknown;
|
|
138
151
|
}
|
|
139
152
|
/** Attributes specific to form inputs */
|
|
140
153
|
interface InputAttributes extends PyreonHTMLAttributes<HTMLInputElement> {
|
|
@@ -349,6 +362,10 @@ interface OlAttributes extends PyreonHTMLAttributes<HTMLOListElement> {
|
|
|
349
362
|
reversed?: boolean | undefined;
|
|
350
363
|
type?: "1" | "a" | "A" | "i" | "I" | undefined;
|
|
351
364
|
}
|
|
365
|
+
interface CanvasAttributes extends PyreonHTMLAttributes<HTMLCanvasElement> {
|
|
366
|
+
width?: number | string | undefined;
|
|
367
|
+
height?: number | string | undefined;
|
|
368
|
+
}
|
|
352
369
|
interface SvgAttributes extends PyreonHTMLAttributes<SVGElement> {
|
|
353
370
|
viewBox?: string | undefined;
|
|
354
371
|
xmlns?: string | undefined;
|
|
@@ -491,7 +508,7 @@ declare global {
|
|
|
491
508
|
source: SourceAttributes;
|
|
492
509
|
track: PyreonHTMLAttributes;
|
|
493
510
|
picture: PyreonHTMLAttributes;
|
|
494
|
-
canvas:
|
|
511
|
+
canvas: CanvasAttributes;
|
|
495
512
|
svg: SvgAttributes;
|
|
496
513
|
path: SvgAttributes;
|
|
497
514
|
circle: SvgAttributes;
|