@htmlbricks/hb-form 0.66.21 → 0.66.24

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/manifest.json CHANGED
@@ -756,7 +756,7 @@
756
756
  }
757
757
  }
758
758
  ],
759
- "iifeIntegrity": "sha384-Paia6J6iwlC7MZTxrFC4jcMrZNL2L1cuNLANHvide2yW12sUWeauWxs7PtxEskC3",
759
+ "iifeIntegrity": "sha384-8I/X3WCo0zrfrNQY2W+7qf774jen8H6pGuk6j6oZ64RWukyGtnU2Q7tve25dkM/o",
760
760
  "screenshots": [],
761
761
  "licenses": [
762
762
  {
@@ -775,5 +775,5 @@
775
775
  "size": {},
776
776
  "iifePath": "main.iife.js",
777
777
  "repoName": "@htmlbricks/hb-form",
778
- "version": "0.66.21"
778
+ "version": "0.66.24"
779
779
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@htmlbricks/hb-form",
3
- "version": "0.66.21",
3
+ "version": "0.66.24",
4
4
  "contributors": [],
5
5
  "description": "JSON `schema`-driven form engine: each entry’s `type` maps to an `hb-input-*` web component (text, select, date, file, arrays, coords, etc.) or layout `row`. Handles grouping, conditional visibility, validation messages, disabled state, and dispatches rich `update` payloads (field values + `_valid`) plus submit lifecycle events for programmatic backends.",
6
6
  "licenses": [
@@ -12,6 +12,14 @@
12
12
  }
13
13
  ],
14
14
  "main": "main.iife.js",
15
+ "types": "./types/html-elements.d.ts",
16
+ "exports": {
17
+ ".": "./main.iife.js",
18
+ "./package.json": "./package.json",
19
+ "./types/html-elements": "./types/html-elements.d.ts",
20
+ "./types/svelte-elements": "./types/svelte-elements.d.ts",
21
+ "./types/webcomponent.type": "./types/webcomponent.type.d.ts"
22
+ },
15
23
  "dependencies": {},
16
24
  "publishConfig": {
17
25
  "access": "public"
@@ -0,0 +1,58 @@
1
+ /**
2
+ * DOM typings for `hb-form`. Attribute values are strings (objects/arrays as JSON strings).
3
+ * Generated — do not edit by hand.
4
+ */
5
+ import type { Component, Events } from "./webcomponent.type";
6
+
7
+ type DomKeys = keyof HTMLElement;
8
+ type HbComponentAttrs = {
9
+ [K in keyof Component as K extends DomKeys ? never : K]?: string;
10
+ };
11
+
12
+ /**
13
+ * Re-declare listener methods so custom `Events` overloads are compatible with
14
+ * `HTMLElement` (subclass methods must remain assignable to the base signatures).
15
+ */
16
+ export interface HbFormElement
17
+ extends Omit<HTMLElement, "addEventListener" | "removeEventListener">,
18
+ HbComponentAttrs {
19
+ addEventListener<K extends keyof HTMLElementEventMap>(
20
+ type: K,
21
+ listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any,
22
+ options?: boolean | AddEventListenerOptions
23
+ ): void;
24
+ addEventListener<K extends keyof Events & string>(
25
+ type: K,
26
+ listener: (this: this, ev: CustomEvent<Events[K]>) => void,
27
+ options?: boolean | AddEventListenerOptions
28
+ ): void;
29
+ addEventListener(
30
+ type: string,
31
+ listener: EventListenerOrEventListenerObject,
32
+ options?: boolean | AddEventListenerOptions
33
+ ): void;
34
+
35
+ removeEventListener<K extends keyof HTMLElementEventMap>(
36
+ type: K,
37
+ listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any,
38
+ options?: boolean | EventListenerOptions
39
+ ): void;
40
+ removeEventListener<K extends keyof Events & string>(
41
+ type: K,
42
+ listener: (this: this, ev: CustomEvent<Events[K]>) => void,
43
+ options?: boolean | EventListenerOptions
44
+ ): void;
45
+ removeEventListener(
46
+ type: string,
47
+ listener: EventListenerOrEventListenerObject,
48
+ options?: boolean | EventListenerOptions
49
+ ): void;
50
+ }
51
+
52
+ declare global {
53
+ interface HTMLElementTagNameMap {
54
+ "hb-form": HbFormElement;
55
+ }
56
+ }
57
+
58
+ export {};
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Svelte template typings for `hb-form` (`SvelteHTMLElements`).
3
+ * — Host attributes from `Component` (optional strings).
4
+ * — Custom events from `Events`: `on` + event key, optional `capture` suffix, or quoted `'on:'` + key (same pattern as built-in DOM events in Svelte).
5
+ * Generated — do not edit by hand.
6
+ * Requires dependency on `svelte` (for `svelte/elements`).
7
+ */
8
+ import type { HTMLAttributes } from "svelte/elements";
9
+ import type { Component, Events } from "./webcomponent.type";
10
+
11
+ type DomKeys = keyof HTMLElement;
12
+ type HbSvelteAttrs = {
13
+ [K in keyof Component as K extends DomKeys ? never : K]?: string;
14
+ };
15
+
16
+ /** `detail` matches `Events[K]`; `currentTarget` is the host element. */
17
+ type HbSvelteCustomEventHandler<TDetail> = (
18
+ event: CustomEvent<TDetail> & { currentTarget: EventTarget & HTMLElement }
19
+ ) => any;
20
+
21
+ type HbSvelteEventAttrs = {
22
+ [K in keyof Events & string as `on${K}`]?: HbSvelteCustomEventHandler<Events[K]>;
23
+ } & {
24
+ [K in keyof Events & string as `on${K}capture`]?: HbSvelteCustomEventHandler<Events[K]>;
25
+ } & {
26
+ [K in keyof Events & string as `on:${K}`]?: HbSvelteCustomEventHandler<Events[K]>;
27
+ };
28
+
29
+ declare module "svelte/elements" {
30
+ export interface SvelteHTMLElements {
31
+ "hb-form": HTMLAttributes<HTMLElement> & HbSvelteAttrs & HbSvelteEventAttrs;
32
+ }
33
+ }
34
+
35
+ export {};