22 lines
559 B
JavaScript
22 lines
559 B
JavaScript
// @ts-check
|
|
import { formatNumber } from "./common.js";
|
|
import { registerElementAnnotatedBy } from "./userProfile.js";
|
|
|
|
const KC_NUMBER_FORMAT = "kcNumberFormat";
|
|
|
|
registerElementAnnotatedBy({
|
|
name: KC_NUMBER_FORMAT,
|
|
onAdd(element) {
|
|
const formatValue = () => {
|
|
const format = element.getAttribute(`data-${KC_NUMBER_FORMAT}`);
|
|
element.value = formatNumber(element.value, format);
|
|
};
|
|
|
|
element.addEventListener("keyup", formatValue);
|
|
|
|
formatValue();
|
|
|
|
return () => element.removeEventListener("keyup", formatValue);
|
|
},
|
|
});
|