web-ui-pack
Version:
Web package with UI elements
66 lines (65 loc) • 2.23 kB
TypeScript
import WUPSwitchControl from "./switch";
declare const tagName = "wup-check";
declare global {
namespace WUP.Check {
interface EventMap extends WUP.Switch.EventMap {
}
interface ValidityMap extends WUP.Switch.ValidityMap {
}
interface Options<T = boolean, VM = ValidityMap> extends WUP.Switch.Options<T, VM> {
}
interface JSXProps<C = WUPCheckControl> extends WUP.Switch.JSXProps<C> {
}
}
interface HTMLElementTagNameMap {
[tagName]: WUPCheckControl;
}
}
declare module "react" {
namespace JSX {
interface IntrinsicElements {
/** Form-control with checkbox
* @see {@link WUPCheckControl} */
[tagName]: WUP.Base.ReactHTML<WUPCheckControl> & WUP.Check.JSXProps;
}
}
}
declare module "preact/jsx-runtime" {
namespace JSX {
interface HTMLAttributes<RefType> {
}
interface IntrinsicElements {
/** Form-control with checkbox
* @see {@link WUPCheckControl} */
[tagName]: HTMLAttributes<WUPCheckControl> & WUP.Check.JSXProps;
}
}
}
/** Form-control with checkbox
* @see demo {@link https://yegorich555.github.io/web-ui-pack/control/check}
* @example
const el = document.createElement("wup-check");
el.$options.name = "accepted";
el.$options.label = "Accept";
el.$initValue = false;
const form = document.body.appendChild(document.createElement("wup-form"));
form.appendChild(el);
// or HTML
<wup-form>
<wup-check w-name="accepted" w-label="Accept" w-initvalue="false"/>
</wup-form>;
* @tutorial innerHTML @example
* <label>
* <input type='checkbox'/>
* <strong>{$options.label}</strong>
* <span icon></span>
* </label> */
export default class WUPCheckControl<TOptions extends WUP.Check.Options = WUP.Check.Options, EventMap extends WUP.Check.EventMap = WUP.Check.EventMap> extends WUPSwitchControl<TOptions, EventMap> {
#private;
static get $styleRoot(): string;
/** NiceToHave: split to wup-icheck to result with wup-table etc. */
static get $style(): string;
static $defaults: WUP.Check.Options;
protected renderControl(): void;
}
export {};