aboutsummaryrefslogtreecommitdiff
path: root/input/example.ts
diff options
context:
space:
mode:
authorShulhan <ms@kilabit.info>2021-09-05 15:28:30 +0700
committerShulhan <ms@kilabit.info>2021-09-05 18:36:42 +0700
commit437cee56693f69b2a58f37f8a5ff5b931ea803a2 (patch)
tree540378dcb05d299644d4679db85e80a1731fb9bd /input/example.ts
parent865173ec06c86ebb900c22b066dcf210f2e0452d (diff)
downloadpakakeh.ts-437cee56693f69b2a58f37f8a5ff5b931ea803a2.tar.xz
input: implement class for input number
The WuiInputNumber create an HTML input that allow number only, with optional max and min options. The required options is "label" and "value". Format of generated HTML output, <div [id=${id}] class="${WUI_INPUT_NUMBER_CLASS}"> <div> <label class="${WUI_INPUT_NUMBER_CLASS_LABEL}">${label}</label> <input class="${WUI_INPUT_NUMBER_CLASS_INPUT}" [max=${max}] [min=${min}] [disabled=${is_disabled}] value=${value} > <span class="${WUI_INPUT_NUMBER_CLASS_HINT_TOGGLER}">i </span> </div> <div class="${WUI_INPUT_NUMBER_CLASS_HINT}">${hint}</div> </div> User can set onChangeHandler to receive new value when the value changes and valid; otherwise, if the value is invalid, the input background will changes accordingly.
Diffstat (limited to 'input/example.ts')
-rw-r--r--input/example.ts69
1 files changed, 69 insertions, 0 deletions
diff --git a/input/example.ts b/input/example.ts
new file mode 100644
index 0000000..3e68451
--- /dev/null
+++ b/input/example.ts
@@ -0,0 +1,69 @@
+import { WuiInputNumber, WuiInputNumberOpts } from "./number.js"
+
+function exampleInputNumber() {
+ let el_example = document.createElement("div")
+
+ let el_title = document.createElement("h3")
+ el_title.innerText = "Input number"
+ el_example.appendChild(el_title)
+
+ let opts: WuiInputNumberOpts = {
+ label: "Input number",
+ value: 100,
+ onChangeHandler: (val: number) => {
+ console.log("number changes to", val)
+ },
+ }
+ let input_num = new WuiInputNumber(opts)
+ el_example.appendChild(input_num.el)
+
+ opts = {
+ id: "my_input_number",
+ label: "Input number with ID",
+ value: 100,
+ hint: "The ID for this input is 'my_input_number'",
+ onChangeHandler: (val: number) => {
+ console.log("number changes to", val)
+ },
+ }
+ input_num = new WuiInputNumber(opts)
+ el_example.appendChild(input_num.el)
+
+ opts = {
+ label: "Input number disabled",
+ value: 100,
+ hint: "Input number with 'is_disabled' set to true",
+ is_disabled: true,
+ onChangeHandler: (val: number) => {
+ console.log("number changes to", val)
+ },
+ }
+ input_num = new WuiInputNumber(opts)
+ el_example.appendChild(input_num.el)
+
+ opts = {
+ label: "Input number with hint",
+ value: 100,
+ hint: "This is the <b>hint</b>",
+ onChangeHandler: (val: number) => {
+ console.log("number changes to", val)
+ },
+ }
+ input_num = new WuiInputNumber(opts)
+ el_example.appendChild(input_num.el)
+
+ opts = {
+ label: "Input number with max and min",
+ value: 10,
+ max: 12,
+ min: -20,
+ onChangeHandler: (val: number) => {
+ console.log("number changes to", val)
+ },
+ }
+ input_num = new WuiInputNumber(opts)
+ el_example.appendChild(input_num.el)
+ document.body.appendChild(el_example)
+}
+
+exampleInputNumber()