@onepercentio/one-ui 1.0.5 → 1.0.7
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/dist/components/CurrencyInput/CurrencyInput.d.ts +1 -1
- package/dist/components/CurrencyInput/CurrencyInput.hook.d.ts +2 -1
- package/dist/components/CurrencyInput/CurrencyInput.hook.js +4 -5
- package/dist/components/CurrencyInput/CurrencyInput.js +5 -3
- package/dist/components/EmailInput/EmailInput.d.ts +1 -1
- package/dist/components/Form/Form.d.ts +10 -0
- package/dist/components/Form/Form.hook.js +3 -3
- package/dist/components/Form/Form.js +45 -18
- package/dist/components/Form/FormField/Extensions/DateField/DateField.d.ts +2 -2
- package/dist/components/Form/FormField/Extensions/DateField/DateField.js +12 -8
- package/dist/components/Form/FormField/FormField.js +7 -2
- package/dist/components/Form/FormField/FormField.types.d.ts +2 -0
- package/dist/components/Form/FormField/FormField.types.js +1 -1
- package/dist/components/Input/Input.d.ts +3 -3
- package/dist/components/Input/Input.js +5 -3
- package/dist/components/NumberInput/NumberInput.d.ts +6 -0
- package/dist/components/NumberInput/NumberInput.js +46 -0
- package/dist/components/NumberInput/index.d.ts +2 -0
- package/dist/components/NumberInput/index.js +26 -0
- package/dist/components/PasswordInput/PasswordInput.d.ts +1 -1
- package/dist/components/Table/Table.js +2 -2
- package/dist/context/OneUIProvider.d.ts +5 -0
- package/dist/context/OneUIProvider.js +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.js +53 -34
- package/dist/utils/formatters.d.ts +4 -0
- package/dist/utils/formatters.js +19 -2
- package/dist-ts/components/CurrencyInput/CurrencyInput.d.ts +1 -1
- package/dist-ts/components/CurrencyInput/CurrencyInput.hook.d.ts +2 -1
- package/dist-ts/components/CurrencyInput/CurrencyInput.hook.js +5 -4
- package/dist-ts/components/CurrencyInput/CurrencyInput.hook.js.map +1 -1
- package/dist-ts/components/CurrencyInput/CurrencyInput.js +4 -3
- package/dist-ts/components/CurrencyInput/CurrencyInput.js.map +1 -1
- package/dist-ts/components/EmailInput/EmailInput.d.ts +1 -1
- package/dist-ts/components/Form/Form.d.ts +10 -0
- package/dist-ts/components/Form/Form.hook.js +6 -2
- package/dist-ts/components/Form/Form.hook.js.map +1 -1
- package/dist-ts/components/Form/Form.js +23 -11
- package/dist-ts/components/Form/Form.js.map +1 -1
- package/dist-ts/components/Form/FormField/Extensions/DateField/DateField.d.ts +2 -2
- package/dist-ts/components/Form/FormField/Extensions/DateField/DateField.js +12 -7
- package/dist-ts/components/Form/FormField/Extensions/DateField/DateField.js.map +1 -1
- package/dist-ts/components/Form/FormField/FormField.js +3 -1
- package/dist-ts/components/Form/FormField/FormField.js.map +1 -1
- package/dist-ts/components/Form/FormField/FormField.types.d.ts +2 -0
- package/dist-ts/components/Input/Input.d.ts +3 -3
- package/dist-ts/components/Input/Input.js +2 -1
- package/dist-ts/components/Input/Input.js.map +1 -1
- package/dist-ts/components/NumberInput/NumberInput.d.ts +6 -0
- package/dist-ts/components/NumberInput/NumberInput.js +13 -0
- package/dist-ts/components/NumberInput/NumberInput.js.map +1 -0
- package/dist-ts/components/NumberInput/index.d.ts +2 -0
- package/dist-ts/components/NumberInput/index.js +3 -0
- package/dist-ts/components/NumberInput/index.js.map +1 -0
- package/dist-ts/components/PasswordInput/PasswordInput.d.ts +1 -1
- package/dist-ts/components/Table/Table.js +1 -1
- package/dist-ts/components/Table/Table.js.map +1 -1
- package/dist-ts/context/OneUIProvider.d.ts +5 -0
- package/dist-ts/context/OneUIProvider.js.map +1 -1
- package/dist-ts/index.d.ts +2 -0
- package/dist-ts/index.js +2 -0
- package/dist-ts/index.js.map +1 -1
- package/dist-ts/utils/formatters.d.ts +4 -0
- package/dist-ts/utils/formatters.js +17 -0
- package/dist-ts/utils/formatters.js.map +1 -1
- package/package.json +1 -1
|
@@ -15,3 +15,7 @@ export declare const currencyFormatterFactory: (langCode: string, currency?: str
|
|
|
15
15
|
value: string | undefined;
|
|
16
16
|
}[];
|
|
17
17
|
};
|
|
18
|
+
export declare const decimalFormatterFactory: (langCode: string) => Intl.NumberFormat | {
|
|
19
|
+
format: (num: number) => string;
|
|
20
|
+
formatToParts: (num: number) => Intl.NumberFormatPart[];
|
|
21
|
+
};
|
package/dist/utils/formatters.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.currencyNumberFormatter = exports.currencyFormatterFactory = void 0;
|
|
6
|
+
exports.decimalFormatterFactory = exports.currencyNumberFormatter = exports.currencyFormatterFactory = void 0;
|
|
7
7
|
/**
|
|
8
8
|
* A formatter to format to double decimal
|
|
9
9
|
*/
|
|
@@ -39,4 +39,21 @@ const currencyFormatterFactory = (langCode, currency) => {
|
|
|
39
39
|
}
|
|
40
40
|
};
|
|
41
41
|
exports.currencyFormatterFactory = currencyFormatterFactory;
|
|
42
|
-
|
|
42
|
+
const decimalFormatterFactory = langCode => {
|
|
43
|
+
try {
|
|
44
|
+
return new Intl.NumberFormat(langCode, {
|
|
45
|
+
style: "decimal"
|
|
46
|
+
});
|
|
47
|
+
} catch (e) {
|
|
48
|
+
const f = new Intl.NumberFormat(langCode, {
|
|
49
|
+
minimumFractionDigits: 2,
|
|
50
|
+
maximumFractionDigits: 2
|
|
51
|
+
});
|
|
52
|
+
return {
|
|
53
|
+
format: num => "".concat(currencyNumberFormatter(num)),
|
|
54
|
+
formatToParts: num => [...f.formatToParts(num)]
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
exports.decimalFormatterFactory = decimalFormatterFactory;
|
|
59
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjdXJyZW5jeU51bWJlckZvcm1hdHRlciIsImV4cG9ydHMiLCJJbnRsIiwiTnVtYmVyRm9ybWF0IiwibWluaW11bUZyYWN0aW9uRGlnaXRzIiwibWF4aW11bUZyYWN0aW9uRGlnaXRzIiwiZm9ybWF0IiwiY3VycmVuY3lGb3JtYXR0ZXJGYWN0b3J5IiwibGFuZ0NvZGUiLCJjdXJyZW5jeSIsInN0eWxlIiwiZSIsImYiLCJudW0iLCJjb25jYXQiLCJmb3JtYXRUb1BhcnRzIiwidHlwZSIsInZhbHVlIiwiZGVjaW1hbEZvcm1hdHRlckZhY3RvcnkiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvZm9ybWF0dGVycy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEEgZm9ybWF0dGVyIHRvIGZvcm1hdCB0byBkb3VibGUgZGVjaW1hbFxuICovXG5leHBvcnQgY29uc3QgY3VycmVuY3lOdW1iZXJGb3JtYXR0ZXIgPSBuZXcgSW50bC5OdW1iZXJGb3JtYXQoXCJwdC1CUlwiLCB7XG4gIG1pbmltdW1GcmFjdGlvbkRpZ2l0czogMixcbiAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiAyLFxufSkuZm9ybWF0O1xuXG4vKipcbiAqIEluc3RhbmNpYXRlIGEgY3VycmVuY3kgZm9ybWF0dGVyXG4gKi9cbmV4cG9ydCBjb25zdCBjdXJyZW5jeUZvcm1hdHRlckZhY3RvcnkgPSAoXG4gIGxhbmdDb2RlOiBzdHJpbmcsXG4gIGN1cnJlbmN5Pzogc3RyaW5nXG4pID0+IHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gbmV3IEludGwuTnVtYmVyRm9ybWF0KGxhbmdDb2RlLCB7XG4gICAgICBzdHlsZTogXCJjdXJyZW5jeVwiLFxuICAgICAgY3VycmVuY3k6IGN1cnJlbmN5LFxuICAgIH0pO1xuICB9IGNhdGNoIChlKSB7XG4gICAgY29uc3QgZiA9IG5ldyBJbnRsLk51bWJlckZvcm1hdChsYW5nQ29kZSwge1xuICAgICAgbWluaW11bUZyYWN0aW9uRGlnaXRzOiAyLFxuICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiAyLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGZvcm1hdDogKG51bTogbnVtYmVyKSA9PiBgJHtjdXJyZW5jeX0gJHtjdXJyZW5jeU51bWJlckZvcm1hdHRlcihudW0pfWAsXG4gICAgICBmb3JtYXRUb1BhcnRzOiAobnVtOiBudW1iZXIpID0+IFtcbiAgICAgICAgeyB0eXBlOiBcImN1cnJlbmN5XCIsIHZhbHVlOiBjdXJyZW5jeSB9LFxuICAgICAgICB7IHR5cGU6IFwibGl0ZXJhbFwiLCB2YWx1ZTogXCIgXCIgfSxcbiAgICAgICAgLi4uZi5mb3JtYXRUb1BhcnRzKG51bSksXG4gICAgICBdLFxuICAgIH07XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBkZWNpbWFsRm9ybWF0dGVyRmFjdG9yeSA9IChsYW5nQ29kZTogc3RyaW5nKSA9PiB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIG5ldyBJbnRsLk51bWJlckZvcm1hdChsYW5nQ29kZSwge1xuICAgICAgc3R5bGU6IFwiZGVjaW1hbFwiLFxuICAgIH0pO1xuICB9IGNhdGNoIChlKSB7XG4gICAgY29uc3QgZiA9IG5ldyBJbnRsLk51bWJlckZvcm1hdChsYW5nQ29kZSwge1xuICAgICAgbWluaW11bUZyYWN0aW9uRGlnaXRzOiAyLFxuICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiAyLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGZvcm1hdDogKG51bTogbnVtYmVyKSA9PiBgJHtjdXJyZW5jeU51bWJlckZvcm1hdHRlcihudW0pfWAsXG4gICAgICBmb3JtYXRUb1BhcnRzOiAobnVtOiBudW1iZXIpID0+IFsuLi5mLmZvcm1hdFRvUGFydHMobnVtKV0sXG4gICAgfTtcbiAgfVxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ08sTUFBTUEsdUJBQXVCLEdBQUFDLE9BQUEsQ0FBQUQsdUJBQUEsR0FBRyxJQUFJRSxJQUFJLENBQUNDLFlBQVksQ0FBQyxPQUFPLEVBQUU7RUFDcEVDLHFCQUFxQixFQUFFLENBQUM7RUFDeEJDLHFCQUFxQixFQUFFO0FBQ3pCLENBQUMsQ0FBQyxDQUFDQyxNQUFNOztBQUVUO0FBQ0E7QUFDQTtBQUNPLE1BQU1DLHdCQUF3QixHQUFHQSxDQUN0Q0MsUUFBZ0IsRUFDaEJDLFFBQWlCLEtBQ2Q7RUFDSCxJQUFJO0lBQ0YsT0FBTyxJQUFJUCxJQUFJLENBQUNDLFlBQVksQ0FBQ0ssUUFBUSxFQUFFO01BQ3JDRSxLQUFLLEVBQUUsVUFBVTtNQUNqQkQsUUFBUSxFQUFFQTtJQUNaLENBQUMsQ0FBQztFQUNKLENBQUMsQ0FBQyxPQUFPRSxDQUFDLEVBQUU7SUFDVixNQUFNQyxDQUFDLEdBQUcsSUFBSVYsSUFBSSxDQUFDQyxZQUFZLENBQUNLLFFBQVEsRUFBRTtNQUN4Q0oscUJBQXFCLEVBQUUsQ0FBQztNQUN4QkMscUJBQXFCLEVBQUU7SUFDekIsQ0FBQyxDQUFDO0lBRUYsT0FBTztNQUNMQyxNQUFNLEVBQUdPLEdBQVcsT0FBQUMsTUFBQSxDQUFRTCxRQUFRLE9BQUFLLE1BQUEsQ0FBSWQsdUJBQXVCLENBQUNhLEdBQUcsQ0FBQyxDQUFFO01BQ3RFRSxhQUFhLEVBQUdGLEdBQVcsSUFBSyxDQUM5QjtRQUFFRyxJQUFJLEVBQUUsVUFBVTtRQUFFQyxLQUFLLEVBQUVSO01BQVMsQ0FBQyxFQUNyQztRQUFFTyxJQUFJLEVBQUUsU0FBUztRQUFFQyxLQUFLLEVBQUU7TUFBSSxDQUFDLEVBQy9CLEdBQUdMLENBQUMsQ0FBQ0csYUFBYSxDQUFDRixHQUFHLENBQUM7SUFFM0IsQ0FBQztFQUNIO0FBQ0YsQ0FBQztBQUFDWixPQUFBLENBQUFNLHdCQUFBLEdBQUFBLHdCQUFBO0FBRUssTUFBTVcsdUJBQXVCLEdBQUlWLFFBQWdCLElBQUs7RUFDM0QsSUFBSTtJQUNGLE9BQU8sSUFBSU4sSUFBSSxDQUFDQyxZQUFZLENBQUNLLFFBQVEsRUFBRTtNQUNyQ0UsS0FBSyxFQUFFO0lBQ1QsQ0FBQyxDQUFDO0VBQ0osQ0FBQyxDQUFDLE9BQU9DLENBQUMsRUFBRTtJQUNWLE1BQU1DLENBQUMsR0FBRyxJQUFJVixJQUFJLENBQUNDLFlBQVksQ0FBQ0ssUUFBUSxFQUFFO01BQ3hDSixxQkFBcUIsRUFBRSxDQUFDO01BQ3hCQyxxQkFBcUIsRUFBRTtJQUN6QixDQUFDLENBQUM7SUFFRixPQUFPO01BQ0xDLE1BQU0sRUFBR08sR0FBVyxPQUFBQyxNQUFBLENBQVFkLHVCQUF1QixDQUFDYSxHQUFHLENBQUMsQ0FBRTtNQUMxREUsYUFBYSxFQUFHRixHQUFXLElBQUssQ0FBQyxHQUFHRCxDQUFDLENBQUNHLGFBQWEsQ0FBQ0YsR0FBRyxDQUFDO0lBQzFELENBQUM7RUFDSDtBQUNGLENBQUM7QUFBQ1osT0FBQSxDQUFBaUIsdUJBQUEsR0FBQUEsdUJBQUEiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ComponentProps } from "react";
|
|
2
2
|
import Input from "../Input";
|
|
3
|
-
export default function CurrencyInput({ locale, value: amount, currency, onChange, placeholder, error, ...props }: Omit<ComponentProps<typeof Input>,
|
|
3
|
+
export default function CurrencyInput({ locale, value: amount, currency, onChange, placeholder, error, ...props }: Omit<ComponentProps<typeof Input>, "onChange"> & {
|
|
4
4
|
currency: string;
|
|
5
5
|
onChange?: (formatted: string) => void;
|
|
6
6
|
locale: string;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
|
|
2
|
+
import { currencyFormatterFactory, decimalFormatterFactory } from "../../utils/formatters";
|
|
3
|
+
export declare function useCurrencyInput(amount: number | string | undefined, locale: string, currency: string, formatterFactory: typeof currencyFormatterFactory | typeof decimalFormatterFactory, onChange?: (formattedCurrency: string) => void): {
|
|
3
4
|
inputRef: import("react").RefObject<HTMLInputElement | null>;
|
|
4
5
|
moneyFormat: string;
|
|
5
6
|
lastPosition: import("react").RefObject<number>;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { useLayoutEffect, useMemo, useRef } from "react";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const
|
|
5
|
-
|
|
2
|
+
export function useCurrencyInput(amount, locale, currency, formatterFactory, onChange) {
|
|
3
|
+
const formatter = useMemo(() => formatterFactory(locale, currency), []);
|
|
4
|
+
const number = useMemo(() => typeof amount === "number"
|
|
5
|
+
? amount
|
|
6
|
+
: Number(amount?.replace(/[^0-9]/g, "") || 0) / 100, [amount]);
|
|
6
7
|
const moneyFormat = useMemo(() => {
|
|
7
8
|
return formatter.format(number);
|
|
8
9
|
}, [number, formatter]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CurrencyInput.hook.js","sourceRoot":"","sources":["../../../src/components/CurrencyInput/CurrencyInput.hook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"CurrencyInput.hook.js","sourceRoot":"","sources":["../../../src/components/CurrencyInput/CurrencyInput.hook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAMzD,MAAM,UAAU,gBAAgB,CAC9B,MAAmC,EACnC,MAAc,EACd,QAAgB,EAChB,gBAEkC,EAClC,QAA8C;IAE9C,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;IACxE,MAAM,MAAM,GAAG,OAAO,CACpB,GAAG,EAAE,CACH,OAAO,MAAM,KAAK,QAAQ;QACxB,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,EACvD,CAAC,MAAM,CAAC,CACT,CAAC;IACF,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE;QAC/B,OAAO,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;IAExB,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,QAAQ,GAAG,MAAM,CAAmB,IAAI,CAAC,CAAC;IAChD,eAAe,CAAC,GAAG,EAAE;QACnB,MAAM,EAAE,GAAG,QAAQ,CAAC,OAAQ,CAAC;QAC7B,MAAM,UAAU,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC;QAC1D,EAAE,CAAC,iBAAiB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAE7C,QAAQ,EAAE,CAAC,WAAW,CAAC,CAAC;IAC1B,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,OAAO;QACL,QAAQ;QACR,WAAW;QACX,YAAY;KACb,CAAC;AACJ,CAAC"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import Input from "../Input";
|
|
3
3
|
import { useCurrencyInput } from "./CurrencyInput.hook";
|
|
4
|
+
import { currencyFormatterFactory } from "../../utils/formatters";
|
|
4
5
|
export default function CurrencyInput({ locale, value: amount, currency, onChange, placeholder, error, ...props }) {
|
|
5
|
-
const { inputRef, moneyFormat, lastPosition } = useCurrencyInput(amount, locale, currency, onChange);
|
|
6
|
-
return (_jsx(_Fragment, { children: _jsx(Input, { ref: inputRef, placeholder: placeholder, value: moneyFormat, error: error, "data-testid": props[
|
|
6
|
+
const { inputRef, moneyFormat, lastPosition } = useCurrencyInput(amount, locale, currency, currencyFormatterFactory, onChange);
|
|
7
|
+
return (_jsx(_Fragment, { children: _jsx(Input, { ref: inputRef, placeholder: placeholder, value: moneyFormat, error: error, "data-testid": props["data-testid"], onChange: ({ target: { value, selectionStart = value.length } }) => {
|
|
7
8
|
const diffFromEndToStart = value.length - selectionStart;
|
|
8
9
|
lastPosition.current = diffFromEndToStart;
|
|
9
10
|
onChange?.(value);
|
|
10
|
-
} }) }));
|
|
11
|
+
}, disclaimer: props.disclaimer }) }));
|
|
11
12
|
}
|
|
12
13
|
//# sourceMappingURL=CurrencyInput.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CurrencyInput.js","sourceRoot":"","sources":["../../../src/components/CurrencyInput/CurrencyInput.tsx"],"names":[],"mappings":";AACA,OAAO,KAAK,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"CurrencyInput.js","sourceRoot":"","sources":["../../../src/components/CurrencyInput/CurrencyInput.tsx"],"names":[],"mappings":";AACA,OAAO,KAAK,MAAM,UAAU,CAAC;AAC7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,MAAM,EACN,KAAK,EAAE,MAAM,EACb,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,KAAK,EACL,GAAG,KAAK,EAKT;IACC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,gBAAgB,CAC9D,MAAM,EACN,MAAM,EACN,QAAQ,EACR,wBAAwB,EACxB,QAAQ,CACT,CAAC;IACF,OAAO,CACL,4BACE,KAAC,KAAK,IACJ,GAAG,EAAE,QAAQ,EACb,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,KAAe,iBACT,KAAK,CAAC,aAAa,CAAC,EACjC,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,cAAc,GAAG,KAAK,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE;gBACjE,MAAM,kBAAkB,GAAG,KAAK,CAAC,MAAM,GAAG,cAAe,CAAC;gBAC1D,YAAY,CAAC,OAAO,GAAG,kBAAkB,CAAC;gBAC1C,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC,EACD,UAAU,EAAE,KAAK,CAAC,UAAU,GAC5B,GACD,CACJ,CAAC;AACJ,CAAC"}
|
|
@@ -17,7 +17,7 @@ declare const EmailInput: React.ForwardRefExoticComponent<Omit<Omit<{
|
|
|
17
17
|
onChange?: React.ChangeEventHandler<HTMLInputElement | HTMLTextAreaElement> | undefined;
|
|
18
18
|
containerProps?: Omit<React.HTMLProps<HTMLDivElement>, "ref"> | undefined;
|
|
19
19
|
value?: string | undefined;
|
|
20
|
-
|
|
20
|
+
"data-testid"?: string | undefined;
|
|
21
21
|
} & Omit<React.HTMLProps<HTMLInputElement | HTMLTextAreaElement>, "ref" | "value" | "onChange"> & React.RefAttributes<any>, "value" | "onChange"> & {
|
|
22
22
|
onChange: (email: string, isValid: boolean) => void;
|
|
23
23
|
value: string;
|
|
@@ -13,3 +13,13 @@ export type FormRef<Q extends FormFieldView[]> = {
|
|
|
13
13
|
**/
|
|
14
14
|
declare const _default: React.ForwardRefExoticComponent<FormViewProps<FormFieldView[]> & React.RefAttributes<FormRef<FormFieldView[]>>>;
|
|
15
15
|
export default _default;
|
|
16
|
+
export declare const ControlledForm: React.ForwardRefExoticComponent<(FormViewProps<FormFieldView[]> & {
|
|
17
|
+
answers: {
|
|
18
|
+
answers: Partial<{
|
|
19
|
+
[x: string]: unknown;
|
|
20
|
+
}>;
|
|
21
|
+
setAnswers: React.Dispatch<React.SetStateAction<Partial<{
|
|
22
|
+
[x: string]: unknown;
|
|
23
|
+
}>>>;
|
|
24
|
+
};
|
|
25
|
+
}) & React.RefAttributes<FormRef<FormFieldView[]>>>;
|
|
@@ -130,7 +130,9 @@ export function useFieldErrors(currentQuestions, answers, showAllErrors) {
|
|
|
130
130
|
default:
|
|
131
131
|
const extendedSupport = extensions?.[question.type];
|
|
132
132
|
if (extendedSupport) {
|
|
133
|
-
const validationResultExtend = extendedSupport.validator
|
|
133
|
+
const validationResultExtend = extendedSupport.validator
|
|
134
|
+
? extendedSupport.validator(ans(question), question)
|
|
135
|
+
: _isValidated();
|
|
134
136
|
if (validationResultExtend.error)
|
|
135
137
|
errorsMap[question.id] = validationResultExtend.error;
|
|
136
138
|
}
|
|
@@ -178,7 +180,9 @@ export function areAllQuestionsAnswered(currentQuestions, answers, requiredLabel
|
|
|
178
180
|
default:
|
|
179
181
|
const extendedSupport = extensions?.[question.type];
|
|
180
182
|
if (extendedSupport) {
|
|
181
|
-
const validationResultExtend = extendedSupport.validator
|
|
183
|
+
const validationResultExtend = extendedSupport.validator
|
|
184
|
+
? extendedSupport.validator(ans(question), question)
|
|
185
|
+
: isValidated(ans(question), !!question.optional, question.validator, requiredLabel);
|
|
182
186
|
return validationResultExtend.isValid;
|
|
183
187
|
}
|
|
184
188
|
else
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Form.hook.js","sourceRoot":"","sources":["../../../src/components/Form/Form.hook.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Form.hook.js","sourceRoot":"","sources":["../../../src/components/Form/Form.hook.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +1,36 @@
|
|
|
1
1
|
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { forwardRef, useEffect, useImperativeHandle, useMemo, } from "react";
|
|
3
3
|
import { FormMode } from "./Form.types";
|
|
4
|
-
import { useFieldErrors,
|
|
4
|
+
import { useFieldErrors, useFormAnswers, useFormState, } from "./Form.hook";
|
|
5
5
|
import FormField from "./FormField";
|
|
6
6
|
import { useOneUIConfig } from "../../context/OneUIProvider";
|
|
7
7
|
function Form({ questions, initialAnswers = {}, ...props }, ref) {
|
|
8
|
+
const filterOutInitialAnswers = useMemo(() => {
|
|
9
|
+
const questionIds = questions.map((a) => a.id);
|
|
10
|
+
return Object.fromEntries(Object.entries(initialAnswers).filter(([id]) => questionIds.includes(id)));
|
|
11
|
+
}, [initialAnswers]);
|
|
12
|
+
const answers = useFormAnswers(filterOutInitialAnswers, props.mode);
|
|
13
|
+
return (_jsx(ControlledForm, { ref: ref, questions: questions, initialAnswers: initialAnswers, answers: answers, ...props }));
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* A new and improved version of the one-ui design form
|
|
17
|
+
*
|
|
18
|
+
* Custom question types can be defined via @type {OnepercentUtility['UIElements']['FormExtension']['fields']}
|
|
19
|
+
**/
|
|
20
|
+
export default forwardRef(Form);
|
|
21
|
+
function ControlledFormComp({ questions, initialAnswers = {}, answers: answersControl, ...props }, ref) {
|
|
8
22
|
const { mode = FormMode.WRITE } = props;
|
|
9
23
|
const { showAllErrors = false } = props;
|
|
10
|
-
const { answers, onAnswerAction, isQuestionsAnswered, isFilesUploaded } =
|
|
11
|
-
const errors = useFieldErrors(questions, answers, showAllErrors);
|
|
24
|
+
const { answers, onAnswerAction, isQuestionsAnswered, isFilesUploaded } = useFormState(questions, answersControl);
|
|
25
|
+
const errors = useFieldErrors(questions, answersControl.answers, showAllErrors);
|
|
26
|
+
const answersArray = useMemo(() => {
|
|
27
|
+
return questions.map((q) => answersControl.answers[q.id]);
|
|
28
|
+
}, [questions.map((a) => a.id), answersControl.answers]);
|
|
12
29
|
useEffect(() => {
|
|
13
30
|
if (props.mode !== FormMode.READ_ONLY) {
|
|
14
31
|
props.onFormUpdate(answers, isQuestionsAnswered && isFilesUploaded);
|
|
15
32
|
}
|
|
16
|
-
}, [
|
|
33
|
+
}, [...answersArray, isQuestionsAnswered, isFilesUploaded]);
|
|
17
34
|
useImperativeHandle(ref, () => ({
|
|
18
35
|
setAnswer(id, val) {
|
|
19
36
|
onAnswerAction(questions.find((q) => q.id === id).type, id, val);
|
|
@@ -28,13 +45,8 @@ function Form({ questions, initialAnswers = {}, ...props }, ref) {
|
|
|
28
45
|
: ({ children }) => {
|
|
29
46
|
return (_jsx("div", { className: `${classOrComponentWrapper || ""}`, children: children }, q.id));
|
|
30
47
|
}, [classOrComponentWrapper]);
|
|
31
|
-
return (_jsx(WrapperComp, { ...q, value: answers[q.id], children: targetMode === FormMode.WRITE ? (_jsx(FormField, { config: q, onAnswer: onAnswerAction, value: answers[q.id], error: errors[q.id], mode: targetMode, "data-testid": props["data-testid"]?.(q.id) })) : (_jsx(FormField, { config: q, value: answers[q.id], mode: FormMode.READ_ONLY, "data-testid": props["data-testid"]?.(q.id) })) }));
|
|
48
|
+
return (_jsx(WrapperComp, { ...q, value: answersControl.answers[q.id], children: targetMode === FormMode.WRITE ? (_jsx(FormField, { config: q, onAnswer: onAnswerAction, value: answersControl.answers[q.id], error: errors[q.id], mode: targetMode, "data-testid": props["data-testid"]?.(q.id) })) : (_jsx(FormField, { config: q, value: answersControl.answers[q.id], mode: FormMode.READ_ONLY, "data-testid": props["data-testid"]?.(q.id) })) }));
|
|
32
49
|
}) }));
|
|
33
50
|
}
|
|
34
|
-
|
|
35
|
-
* A new and improved version of the one-ui design form
|
|
36
|
-
*
|
|
37
|
-
* Custom question types can be defined via @type {OnepercentUtility['UIElements']['FormExtension']['fields']}
|
|
38
|
-
**/
|
|
39
|
-
export default forwardRef(Form);
|
|
51
|
+
export const ControlledForm = forwardRef(ControlledFormComp);
|
|
40
52
|
//# sourceMappingURL=Form.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Form.js","sourceRoot":"","sources":["../../../src/components/Form/Form.tsx"],"names":[],"mappings":";AAAA,OAAc,EAEZ,UAAU,EAEV,SAAS,EACT,mBAAmB,EACnB,OAAO,GACR,MAAM,OAAO,CAAC;AACf,OAAO,
|
|
1
|
+
{"version":3,"file":"Form.js","sourceRoot":"","sources":["../../../src/components/Form/Form.tsx"],"names":[],"mappings":"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"}
|
|
@@ -4,8 +4,8 @@ import Input from "../../../../Input";
|
|
|
4
4
|
/**
|
|
5
5
|
* Allows inputing a date
|
|
6
6
|
**/
|
|
7
|
-
export default function dateFieldFactory(dateFormat: string): ({ onAnswer, question, value, error, ...input }: GenericFormFieldProps<"date"> & Pick<ComponentProps<typeof Input>, "data-testid">) => import("react/jsx-runtime").JSX.Element;
|
|
8
|
-
export declare const dateFieldValidatorFactory: (invalidDateLabel: string, requiredFieldLabel: string) => (answer: AnswerByField<{
|
|
7
|
+
export default function dateFieldFactory(dateFormat: string): ({ onAnswer, question, value, error, ...input }: GenericFormFieldProps<"date"> & Pick<ComponentProps<typeof Input>, "data-testid" | "placeholder">) => import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export declare const dateFieldValidatorFactory: (invalidDateLabel: string, requiredFieldLabel: string, format: string) => (answer: AnswerByField<{
|
|
9
9
|
type: "date";
|
|
10
10
|
}>) => {
|
|
11
11
|
isValid: any;
|
|
@@ -12,21 +12,26 @@ export default function dateFieldFactory(dateFormat) {
|
|
|
12
12
|
const { titleVariant } = useOneUIConfig("component.form");
|
|
13
13
|
return (_jsxs(_Fragment, { children: [_jsx(Text, { type: titleVariant, children: question.title }), _jsx(InputMask, { mask: dateFormat, value: value, onChange: ({ target: { value } }) => {
|
|
14
14
|
onAnswer("date", question.id, value);
|
|
15
|
-
}, children: _jsx(Input, { placeholder: question.title, error: error, "data-testid": input["data-testid"] }) })] }));
|
|
15
|
+
}, children: _jsx(Input, { placeholder: input.placeholder ?? question.title, error: error, "data-testid": input["data-testid"] }) })] }));
|
|
16
16
|
};
|
|
17
17
|
}
|
|
18
|
-
const parseDate = (formattedDate) => {
|
|
18
|
+
const parseDate = (formattedDate, format) => {
|
|
19
|
+
const howManyParts = format.split("/");
|
|
19
20
|
const providedDate = formattedDate;
|
|
20
|
-
const dateParts = providedDate.split("/").map(Number);
|
|
21
|
-
if (dateParts.length <
|
|
21
|
+
const dateParts = providedDate.split("/").map(Number).reverse();
|
|
22
|
+
if (dateParts.length < howManyParts.length)
|
|
23
|
+
return false;
|
|
24
|
+
const [year, month, day = 1] = dateParts;
|
|
25
|
+
if (month > 12)
|
|
26
|
+
return false;
|
|
27
|
+
if (day > 31)
|
|
22
28
|
return false;
|
|
23
|
-
const [day, month, year] = dateParts;
|
|
24
29
|
const parsedDate = new Date(year, month - 1, day);
|
|
25
30
|
return parsedDate;
|
|
26
31
|
};
|
|
27
|
-
export const dateFieldValidatorFactory = (invalidDateLabel, requiredFieldLabel) => (answer) => {
|
|
32
|
+
export const dateFieldValidatorFactory = (invalidDateLabel, requiredFieldLabel, format) => (answer) => {
|
|
28
33
|
const providedDate = answer || "";
|
|
29
|
-
const parsedDate = parseDate(providedDate);
|
|
34
|
+
const parsedDate = parseDate(providedDate, format);
|
|
30
35
|
if (!parsedDate)
|
|
31
36
|
return {
|
|
32
37
|
isValid: false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateField.js","sourceRoot":"","sources":["../../../../../../src/components/Form/FormField/Extensions/DateField/DateField.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,+BAA+B,CAAC;AACtD,OAAO,IAAI,MAAM,kBAAkB,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAEtE,OAAO,KAAK,MAAM,mBAAmB,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;IAEI;AACJ,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,UAAkB;IACzD,OAAO,SAAS,SAAS,CAAC,EACxB,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,KAAK,EACL,GAAG,KAAK,
|
|
1
|
+
{"version":3,"file":"DateField.js","sourceRoot":"","sources":["../../../../../../src/components/Form/FormField/Extensions/DateField/DateField.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,+BAA+B,CAAC;AACtD,OAAO,IAAI,MAAM,kBAAkB,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAEtE,OAAO,KAAK,MAAM,mBAAmB,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;IAEI;AACJ,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,UAAkB;IACzD,OAAO,SAAS,SAAS,CAAC,EACxB,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,KAAK,EACL,GAAG,KAAK,EAEyD;QACjE,MAAM,EAAE,YAAY,EAAE,GAAG,cAAc,CAAC,gBAAgB,CAAC,CAAC;QAC1D,OAAO,CACL,8BACE,KAAC,IAAI,IAAC,IAAI,EAAE,YAAY,YAAG,QAAQ,CAAC,KAAK,GAAQ,EACjD,KAAC,SAAS,IACR,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAO,EAAE,EAAE;wBACvC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,EAAE,KAAe,CAAC,CAAC;oBACjD,CAAC,YAED,KAAC,KAAK,IACJ,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,QAAQ,CAAC,KAAK,EAChD,KAAK,EAAE,KAAK,iBACC,KAAK,CAAC,aAAa,CAAC,GACjC,GACQ,IACX,CACJ,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,SAAS,GAAG,CAAC,aAAqB,EAAE,MAAc,EAAE,EAAE;IAC1D,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACvC,MAAM,YAAY,GAAG,aAAa,CAAC;IACnC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;IAChE,IAAI,SAAS,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACzD,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC;IACzC,IAAI,KAAK,GAAG,EAAE;QAAE,OAAO,KAAK,CAAC;IAC7B,IAAI,GAAG,GAAG,EAAE;QAAE,OAAO,KAAK,CAAC;IAC3B,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IAElD,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GACpC,CAAC,gBAAwB,EAAE,kBAA0B,EAAE,MAAc,EAAE,EAAE,CACzE,CAAC,MAAuC,EAAE,EAAE;IAC1C,MAAM,YAAY,GAAG,MAAM,IAAI,EAAE,CAAC;IAClC,MAAM,UAAU,GAAG,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAEnD,IAAI,CAAC,UAAU;QACb,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,gBAAgB;SACxB,CAAC;IACJ,MAAM,cAAc,GAAG,WAAW,CAChC,YAAY,EACZ,KAAK,EACL,SAAS,EACT,kBAAkB,CACnB,CAAC;IACF,OAAO,cAAc,CAAC;AACxB,CAAC,CAAC"}
|
|
@@ -39,8 +39,10 @@ export default function FormField({ config: c, value, ...props }) {
|
|
|
39
39
|
},
|
|
40
40
|
}, footer: c.footer, onFile: () => { }, file: file === true ? {} : undefined, progress: file === true ? 100 : undefined, disabled: true }), _jsx(Spacing, { size: "small" }), file === true && (_jsx(Button, { variant: "link", color: "primary", onClick: c.openFile.action, children: c.openFile.label })), _jsx(Spacing, { size: "large" })] }));
|
|
41
41
|
default:
|
|
42
|
+
const CustomReadOnly = extensions?.[type]
|
|
43
|
+
?.ReadOnly;
|
|
42
44
|
const answer = val();
|
|
43
|
-
return (_jsxs(_Fragment, { children: [_jsx(OneText, { type: titleVariant, children: c.title }), _jsx(OneText, { type: labelVariant, "data-testid": props["data-testid"], children: answer || "-" })] }));
|
|
45
|
+
return (_jsxs(_Fragment, { children: [_jsx(OneText, { type: titleVariant, children: c.title }), _jsx(OneText, { type: labelVariant, "data-testid": props["data-testid"], children: CustomReadOnly ? (_jsx(CustomReadOnly, { question: c, value: value, "data-testid": props["data-testid"] })) : (answer || "-") })] }));
|
|
44
46
|
}
|
|
45
47
|
}
|
|
46
48
|
const { onAnswer, error } = props;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormField.js","sourceRoot":"","sources":["../../../../src/components/Form/FormField/FormField.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"FormField.js","sourceRoot":"","sources":["../../../../src/components/Form/FormField/FormField.tsx"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,8 @@ export type GenericFormFieldProps<T extends FormField["type"]> = {
|
|
|
16
16
|
};
|
|
17
17
|
error?: string;
|
|
18
18
|
disabled?: boolean;
|
|
19
|
+
} & FromOnePercentUtility<`UIElements.FormExtension.fields`> & {
|
|
20
|
+
type: T;
|
|
19
21
|
};
|
|
20
22
|
export type FormFieldProps<Q extends Pick<FormFieldView, "type">> = {
|
|
21
23
|
config: Q;
|
|
@@ -13,8 +13,8 @@ export type InputProps = {
|
|
|
13
13
|
onChange?: ChangeEventHandler<HTMLInputElement | HTMLTextAreaElement>;
|
|
14
14
|
containerProps?: Omit<React.HTMLProps<HTMLDivElement>, "ref">;
|
|
15
15
|
value?: string;
|
|
16
|
-
|
|
17
|
-
} & Omit<React.HTMLProps<HTMLInputElement | HTMLTextAreaElement>, "ref" | "onChange" |
|
|
16
|
+
"data-testid"?: string;
|
|
17
|
+
} & Omit<React.HTMLProps<HTMLInputElement | HTMLTextAreaElement>, "ref" | "onChange" | "value">;
|
|
18
18
|
/**
|
|
19
19
|
* A transparent input with some prebuilt states common to the application
|
|
20
20
|
**/
|
|
@@ -32,6 +32,6 @@ declare const Input: React.ForwardRefExoticComponent<{
|
|
|
32
32
|
onChange?: React.ChangeEventHandler<HTMLInputElement | HTMLTextAreaElement> | undefined;
|
|
33
33
|
containerProps?: Omit<React.HTMLProps<HTMLDivElement>, "ref"> | undefined;
|
|
34
34
|
value?: string | undefined;
|
|
35
|
-
|
|
35
|
+
"data-testid"?: string | undefined;
|
|
36
36
|
} & Omit<React.HTMLProps<HTMLInputElement | HTMLTextAreaElement>, "ref" | "value" | "onChange"> & React.RefAttributes<any>>;
|
|
37
37
|
export default Input;
|
|
@@ -5,6 +5,7 @@ import Text from "../Text";
|
|
|
5
5
|
import Styles from "./Input.module.scss";
|
|
6
6
|
function _Input({ error, placeholder = " ", hideError, icon, Icon, autoFocus, disclaimer, multiline, decoration = null, containerProps, className: localClassName, ...otherProps }, ref) {
|
|
7
7
|
const className = useOneUIConfig("component.input.className", {});
|
|
8
|
+
const variants = useOneUIConfig("component.input.labelVariants", {});
|
|
8
9
|
const [focused, setFocused] = useState(false);
|
|
9
10
|
const inputRef = useRef(null);
|
|
10
11
|
useImperativeHandle(ref, () => inputRef.current, []);
|
|
@@ -30,7 +31,7 @@ function _Input({ error, placeholder = " ", hideError, icon, Icon, autoFocus, di
|
|
|
30
31
|
setFocused(false);
|
|
31
32
|
if (otherProps.onBlur)
|
|
32
33
|
otherProps.onBlur(e);
|
|
33
|
-
} }), error && shouldShowError ? (_jsx(Text, { title: typeof error === "string" ? error : "", className: Styles.caption, type: "error", children: error })) : disclaimer ? (_jsx(Text, { title: typeof disclaimer === "string" ? disclaimer : "", type: "caption", className: Styles.caption, children: disclaimer })) : null, Icon && _jsx("div", { className: Styles.icon, children: Icon }), icon && _jsx("img", { className: Styles.icon, ...icon })] }));
|
|
34
|
+
} }), error && shouldShowError ? (_jsx(Text, { title: typeof error === "string" ? error : "", className: Styles.caption, type: variants.error ?? "error", children: error })) : disclaimer ? (_jsx(Text, { title: typeof disclaimer === "string" ? disclaimer : "", type: variants.disclaimer ?? "caption", className: Styles.caption, children: disclaimer })) : null, Icon && _jsx("div", { className: Styles.icon, children: Icon }), icon && _jsx("img", { className: Styles.icon, ...icon })] }));
|
|
34
35
|
}
|
|
35
36
|
/**
|
|
36
37
|
* A transparent input with some prebuilt states common to the application
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../src/components/Input/Input.tsx"],"names":[],"mappings":";AAAA,OAAc,EAIZ,UAAU,EAEV,SAAS,EACT,mBAAmB,EACnB,OAAO,EACP,MAAM,EACN,QAAQ,GACT,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,IAAI,MAAM,SAAS,CAAC;AAC3B,OAAO,MAAM,MAAM,qBAAqB,CAAC;AAqBzC,SAAS,MAAM,CACb,EACE,KAAK,EACL,WAAW,GAAG,GAAG,EACjB,SAAS,EACT,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,SAAS,EACT,UAAU,GAAG,IAAI,EACjB,cAAc,EACd,SAAS,EAAE,cAAc,EACzB,GAAG,UAAU,EACF,EACb,GAAsB;IAEtB,MAAM,SAAS,GAAG,cAAc,CAAC,2BAA2B,EAAE,EAAE,CAAC,CAAC;IAClE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,MAAM,CAAyC,IAAI,CAAC,CAAC;IACtE,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACrD,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE;QACnC,IAAI,SAAS,KAAK,SAAS;YAAE,OAAO,CAAC,OAAO,CAAC;QAC7C,OAAO,CAAC,CAAC,KAAK,CAAC;IACjB,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;IAChC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE;gBACxB,QAAQ,CAAC,OAAQ,CAAC,KAAK,EAAE,CAAC;YAC5B,CAAC,EAAE,GAAG,CAAC,CAAC;YACR,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAChB,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC;IACnD,OAAO,CACL,eACE,SAAS,EAAE,GAAG,MAAM,CAAC,cAAc,IAAI,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../src/components/Input/Input.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { ComponentProps } from "react";
|
|
2
|
+
import Input from "../Input";
|
|
3
|
+
export default function CurrencyInput({ locale, value: amount, onChange, placeholder, error, ...props }: Omit<ComponentProps<typeof Input>, "onChange"> & {
|
|
4
|
+
onChange?: (formatted: string) => void;
|
|
5
|
+
locale: string;
|
|
6
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import Input from "../Input";
|
|
3
|
+
import { useCurrencyInput } from "../CurrencyInput/CurrencyInput.hook";
|
|
4
|
+
import { decimalFormatterFactory } from "../../utils/formatters";
|
|
5
|
+
export default function CurrencyInput({ locale, value: amount, onChange, placeholder, error, ...props }) {
|
|
6
|
+
const { inputRef, moneyFormat, lastPosition } = useCurrencyInput(amount, locale, "", decimalFormatterFactory, onChange);
|
|
7
|
+
return (_jsx(_Fragment, { children: _jsx(Input, { ref: inputRef, placeholder: placeholder, value: moneyFormat, error: error, "data-testid": props["data-testid"], onChange: ({ target: { value, selectionStart = value.length } }) => {
|
|
8
|
+
const diffFromEndToStart = value.length - selectionStart;
|
|
9
|
+
lastPosition.current = diffFromEndToStart;
|
|
10
|
+
onChange?.(value);
|
|
11
|
+
} }) }));
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=NumberInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NumberInput.js","sourceRoot":"","sources":["../../../src/components/NumberInput/NumberInput.tsx"],"names":[],"mappings":";AACA,OAAO,KAAK,MAAM,UAAU,CAAC;AAC7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,MAAM,EACN,KAAK,EAAE,MAAM,EACb,QAAQ,EACR,WAAW,EACX,KAAK,EACL,GAAG,KAAK,EAIT;IACC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,gBAAgB,CAC9D,MAAM,EACN,MAAM,EACN,EAAE,EACF,uBAAuB,EACvB,QAAQ,CACT,CAAC;IACF,OAAO,CACL,4BACE,KAAC,KAAK,IACJ,GAAG,EAAE,QAAQ,EACb,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,KAAe,iBACT,KAAK,CAAC,aAAa,CAAC,EACjC,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,cAAc,GAAG,KAAK,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE;gBACjE,MAAM,kBAAkB,GAAG,KAAK,CAAC,MAAM,GAAG,cAAe,CAAC;gBAC1D,YAAY,CAAC,OAAO,GAAG,kBAAkB,CAAC;gBAC1C,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC,GACD,GACD,CACJ,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/NumberInput/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,cAAc,eAAe,CAAC"}
|
|
@@ -40,7 +40,7 @@ declare const PasswordInput: React.ForwardRefExoticComponent<(({
|
|
|
40
40
|
onChange?: React.ChangeEventHandler<HTMLInputElement | HTMLTextAreaElement> | undefined;
|
|
41
41
|
containerProps?: Omit<React.HTMLProps<HTMLDivElement>, "ref"> | undefined;
|
|
42
42
|
value?: string | undefined;
|
|
43
|
-
|
|
43
|
+
"data-testid"?: string | undefined;
|
|
44
44
|
} & Omit<React.HTMLProps<HTMLInputElement | HTMLTextAreaElement>, "ref" | "value" | "onChange"> & React.RefAttributes<any>, "ref" | "value" | "onChange">) & React.RefAttributes<{
|
|
45
45
|
validatePassword: (pass: string) => boolean;
|
|
46
46
|
}>>;
|
|
@@ -52,6 +52,6 @@ export default function Table({ paginable, heading, order, items, className = ""
|
|
|
52
52
|
const TableContext = createContext(null);
|
|
53
53
|
function TableComp({ className }) {
|
|
54
54
|
const { itemsToShow, keys, heading } = useContext(TableContext);
|
|
55
|
-
return (_jsxs("table", { className: `${Styles.container} ${className}`, children: [_jsx("thead", { children: _jsx("tr", { children: keys.map((key) => (_jsx("th", { children: heading[key] }, String(key)))) }) }), _jsx("tbody", { children: itemsToShow
|
|
55
|
+
return (_jsxs("table", { className: `${Styles.container} ${className}`, children: [_jsx("thead", { children: _jsx("tr", { children: keys.map((key) => (_jsx("th", { children: heading[key] }, String(key)))) }) }), _jsx("tbody", { children: itemsToShow?.map((i, index) => (_jsx("tr", { className: i.className, children: keys.map((key) => (_jsx("td", { children: i[key] }, String(key)))) }, String(index)))) })] }));
|
|
56
56
|
}
|
|
57
57
|
//# sourceMappingURL=Table.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.js","sourceRoot":"","sources":["../../../src/components/Table/Table.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Table.js","sourceRoot":"","sources":["../../../src/components/Table/Table.tsx"],"names":[],"mappings":"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"}
|
|
@@ -40,6 +40,7 @@ export type OneUIContextSpecs = {
|
|
|
40
40
|
onFileUpload(questionId: string, file: File): UploadTask;
|
|
41
41
|
extensions: IfUtilityHas<"UIElements.FormExtension", {
|
|
42
42
|
[K in FromOnePercentUtility<"UIElements.FormExtension">["fields"]["type"]]: {
|
|
43
|
+
ReadOnly?: (props: Omit<GenericFormFieldProps<K>, "onAnswer" | "error">) => ReactElement;
|
|
43
44
|
Input: (props: GenericFormFieldProps<K>) => ReactElement;
|
|
44
45
|
validator: (answer: AnswerByField<{
|
|
45
46
|
type: K;
|
|
@@ -73,6 +74,10 @@ export type OneUIContextSpecs = {
|
|
|
73
74
|
/** The input html tag */
|
|
74
75
|
input: string;
|
|
75
76
|
};
|
|
77
|
+
labelVariants: {
|
|
78
|
+
error?: FromOnePercentUtility<"UIElements.TextVariants">;
|
|
79
|
+
disclaimer?: FromOnePercentUtility<"UIElements.TextVariants">;
|
|
80
|
+
};
|
|
76
81
|
};
|
|
77
82
|
fileInput: {
|
|
78
83
|
View: (props: FileInputViewProps) => ReactElement;
|