@htmlbricks/hb-input-select 0.66.21 → 0.66.25

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
@@ -257,5 +257,5 @@
257
257
  "size": {},
258
258
  "iifePath": "main.iife.js",
259
259
  "repoName": "@htmlbricks/hb-input-select",
260
- "version": "0.66.21"
260
+ "version": "0.66.25"
261
261
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@htmlbricks/hb-input-select",
3
- "version": "0.66.21",
3
+ "version": "0.66.25",
4
4
  "contributors": [],
5
5
  "description": "Native `<select>` bound to `schemaentry` options from `params.options` (each option has `id`, `value`, and optional `label`). Supports JSON string or object `schemaentry`, optional required state, and `show_validation` for Bootstrap `is-valid` / `is-invalid` classes plus `validationTip`. Dispatches `setVal` with `{ value, valid, id }` on every change.",
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-input-select`. 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 HbInputSelectElement
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-input-select": HbInputSelectElement;
55
+ }
56
+ }
57
+
58
+ export {};
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Svelte template typings for `hb-input-select` (`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-input-select": HTMLAttributes<HTMLElement> & HbSvelteAttrs & HbSvelteEventAttrs;
32
+ }
33
+ }
34
+
35
+ export {};