UNPKG

gd-bs

Version:

Bootstrap JavaScript, TypeScript and Web Components library.

107 lines (100 loc) 3.22 kB
/** * <div id="demo"></div> * <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/gd-sprest-bs/5.0.3/gd-sprest-bs.min.js"></script> * <script type="text/javascript"> * // Wait for the window to be loaded * window.addEventListener("load", function() { * // Create the list box * $REST.Components.ListBox({ * el: document.querySelector("#demo"), * label: "Colors", * placeholder: "Search Colors", * items: [ * { * text: "Red", * value: "red" * }, * { * text: "Blue", * value: "blue" * }, * { * text: "Green", * value: "green" * }, * { * text: "Purple", * value: "purple" * }, * { * text: "Brown", * value: "brown" * }, * { * text: "Yellow", * value: "yellow" * }, * { * text: "Orange", * value: "orange" * } * ] * }); * }); * </script> */ /** * List Box * * ```ts * import { Components } from "gd-sprest-bs"; * * // Create the list box * let el = document.querySelector("#list-box"); * Components.Collapse({ * el: el, * label: "Colors", * placeholder: "Search Colors", * items: [ * { text: "Red", value: "red" }, * { text: "Blue", value: "blue" }, * { text: "Green", value: "green" }, * { text: "Purple", value: "purple" }, * { text: "Brown", value: "brown" }, * { text: "Yellow", value: "yellow" }, * { text: "Orange", value: "orange" } * ] * }); * ``` */ export const ListBox: (props: IListBoxProps, template?: string) => IListBox; import { IBase, IBaseProps } from "../types"; import { IDropdownItem } from "../dropdown/types"; /** * List Box */ export interface IListBox extends IBase<IListBoxProps> { /** The element. */ el: HTMLElement; /** The selected listbox items. */ getValue: () => IDropdownItem | Array<IDropdownItem>; /** Sets the options */ setOptions: (items: Array<IDropdownItem>) => void; /** Sets the listbox value. */ setValue: (value?: string | Array<string> | Array<IDropdownItem>) => void; } /** * List Box Properties */ export interface IListBoxProps extends IBaseProps<IListBox> { label?: string; id?: string; isReadonly?: boolean; items: Array<IDropdownItem>; multi?: boolean; onLoadData?: () => Array<IDropdownItem> | PromiseLike<Array<IDropdownItem>>; onChange?: (items: IDropdownItem | Array<IDropdownItem>, ev?: Event) => void; placeholder?: string; required?: boolean; value?: string | Array<string>; }