@onepercentio/one-ui 0.29.8 → 1.0.0
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/AdaptiveDialog/AdaptiveDialog.d.ts +2 -1
- package/dist/components/AdaptiveDialog/AdaptiveDialog.js +1 -1
- package/dist/components/Button/Button.d.ts +3 -2
- package/dist/components/Button/Button.js +1 -1
- package/dist/components/EmailInput/EmailInput.d.ts +0 -1
- package/dist/components/Form/Form.d.ts +15 -49
- package/dist/components/Form/{v2/Form.hook.d.ts → Form.hook.d.ts} +1 -1
- package/dist/components/Form/Form.hook.js +233 -0
- package/dist/components/Form/Form.js +67 -123
- package/{dist-ts/components/Form/v2 → dist/components/Form}/Form.types.d.ts +1 -0
- package/dist/components/Form/Form.types.js +40 -0
- package/{dist-ts/components/Form/v2 → dist/components/Form}/FormField/Extensions/DateField/DateField.d.ts +3 -1
- package/dist/components/Form/FormField/Extensions/DateField/DateField.js +71 -0
- package/dist/components/Form/FormField/Extensions/DateField/index.js +26 -0
- package/dist/components/Form/FormField/Extensions/PhoneField/PhoneField.js +90 -0
- package/dist/components/Form/FormField/Extensions/PhoneField/index.js +26 -0
- package/dist/components/Form/FormField/FormField.js +276 -0
- package/{dist-ts/components/Form/v2 → dist/components/Form}/FormField/FormField.types.d.ts +8 -6
- package/dist/components/Form/FormField/FormField.types.js +12 -0
- package/dist/components/Form/FormField/index.js +26 -0
- package/dist/components/Form/index.js +1 -1
- package/dist/components/Input/Input.d.ts +0 -6
- package/dist/components/Input/Input.js +9 -20
- package/dist/components/Input/Input.module.scss +0 -32
- package/dist/components/LinkToId/LinkToId.d.ts +3 -2
- package/dist/components/LinkToId/LinkToId.js +1 -1
- package/dist/components/PasswordInput/PasswordInput.d.ts +0 -1
- package/dist/components/Radio/Radio.d.ts +1 -0
- package/dist/components/Radio/Radio.js +2 -1
- package/dist/components/SectionContainer/SectionContainer.js +1 -1
- package/dist/components/Select/Select.js +1 -2
- package/dist/components/Spacing/Spacing.d.ts +2 -1
- package/dist/components/Spacing/Spacing.js +1 -1
- package/dist/components/Tabs/Tabs.js +5 -3
- package/dist/components/Text/Text.d.ts +5 -4
- package/dist/components/Text/Text.js +2 -2
- package/dist/components/Text/Text.module.scss +3 -71
- package/dist/context/AsyncProcess.d.ts +5 -4
- package/dist/context/AsyncProcess.js +1 -1
- package/dist/context/OneUIProvider.d.ts +37 -22
- package/dist/context/OneUIProvider.js +1 -1
- package/dist/hooks/useShortIntl.d.ts +2 -1
- package/dist/hooks/useShortIntl.js +1 -1
- package/dist/index.d.ts +6 -10
- package/dist/index.js +143 -181
- package/dist/type-utils.d.ts +12 -2
- package/dist/type-utils.js +1 -1
- package/dist/utility.d.js +1 -17
- package/dist-ts/components/AdaptiveDialog/AdaptiveDialog.d.ts +2 -1
- package/dist-ts/components/AdaptiveDialog/AdaptiveDialog.js.map +1 -1
- package/dist-ts/components/Button/Button.d.ts +3 -2
- package/dist-ts/components/Button/Button.js.map +1 -1
- package/dist-ts/components/EmailInput/EmailInput.d.ts +0 -1
- package/dist-ts/components/Form/Form.d.ts +15 -49
- package/dist-ts/components/Form/{v2/Form.hook.d.ts → Form.hook.d.ts} +1 -1
- package/dist-ts/components/Form/{v2/Form.hook.js → Form.hook.js} +9 -5
- package/dist-ts/components/Form/Form.hook.js.map +1 -0
- package/dist-ts/components/Form/Form.js +37 -66
- package/dist-ts/components/Form/Form.js.map +1 -1
- package/{dist/components/Form/v2 → dist-ts/components/Form}/Form.types.d.ts +1 -0
- package/dist-ts/components/Form/Form.types.js.map +1 -0
- package/{dist/components/Form/v2 → dist-ts/components/Form}/FormField/Extensions/DateField/DateField.d.ts +3 -1
- package/dist-ts/components/Form/{v2/FormField → FormField}/Extensions/DateField/DateField.js +6 -6
- package/dist-ts/components/Form/FormField/Extensions/DateField/DateField.js.map +1 -0
- package/dist-ts/components/Form/FormField/Extensions/DateField/index.js.map +1 -0
- package/dist-ts/components/Form/{v2/FormField → FormField}/Extensions/PhoneField/PhoneField.js +4 -4
- package/dist-ts/components/Form/FormField/Extensions/PhoneField/PhoneField.js.map +1 -0
- package/dist-ts/components/Form/FormField/Extensions/PhoneField/index.js.map +1 -0
- package/dist-ts/components/Form/{v2/FormField → FormField}/FormField.js +15 -16
- package/dist-ts/components/Form/FormField/FormField.js.map +1 -0
- package/{dist/components/Form/v2 → dist-ts/components/Form}/FormField/FormField.types.d.ts +8 -6
- package/dist-ts/components/Form/FormField/FormField.types.js.map +1 -0
- package/dist-ts/components/Form/FormField/index.js.map +1 -0
- package/dist-ts/components/Form/index.js.map +1 -1
- package/dist-ts/components/Input/Input.d.ts +0 -6
- package/dist-ts/components/Input/Input.js +4 -15
- package/dist-ts/components/Input/Input.js.map +1 -1
- package/dist-ts/components/Input/Input.module.scss +0 -32
- package/dist-ts/components/LinkToId/LinkToId.d.ts +3 -2
- package/dist-ts/components/LinkToId/LinkToId.js.map +1 -1
- package/dist-ts/components/PasswordInput/PasswordInput.d.ts +0 -1
- package/dist-ts/components/Radio/Radio.d.ts +1 -0
- package/dist-ts/components/Radio/Radio.js +1 -1
- package/dist-ts/components/Radio/Radio.js.map +1 -1
- package/dist-ts/components/SectionContainer/SectionContainer.js.map +1 -1
- package/dist-ts/components/Select/Select.js +1 -1
- package/dist-ts/components/Select/Select.js.map +1 -1
- package/dist-ts/components/Spacing/Spacing.d.ts +2 -1
- package/dist-ts/components/Spacing/Spacing.js.map +1 -1
- package/dist-ts/components/Tabs/Tabs.js +4 -2
- package/dist-ts/components/Tabs/Tabs.js.map +1 -1
- package/dist-ts/components/Text/Text.d.ts +5 -4
- package/dist-ts/components/Text/Text.js +1 -1
- package/dist-ts/components/Text/Text.js.map +1 -1
- package/dist-ts/components/Text/Text.module.scss +3 -71
- package/dist-ts/context/AsyncProcess.d.ts +5 -4
- package/dist-ts/context/AsyncProcess.js.map +1 -1
- package/dist-ts/context/OneUIProvider.d.ts +37 -22
- package/dist-ts/context/OneUIProvider.js.map +1 -1
- package/dist-ts/hooks/useShortIntl.d.ts +2 -1
- package/dist-ts/hooks/useShortIntl.js.map +1 -1
- package/dist-ts/index.d.ts +6 -10
- package/dist-ts/index.js +6 -10
- package/dist-ts/index.js.map +1 -1
- package/dist-ts/type-utils.d.ts +12 -2
- package/package.json +8 -5
- package/tsconfig.prod.json +1 -0
- package/dist/components/Form/v2/Form.d.ts +0 -18
- package/dist/components/Form/v2/Form.hook.js +0 -230
- package/dist/components/Form/v2/Form.js +0 -63
- package/dist/components/Form/v2/Form.types.js +0 -40
- package/dist/components/Form/v2/FormField/Extensions/DateField/DateField.js +0 -68
- package/dist/components/Form/v2/FormField/Extensions/DateField/index.js +0 -26
- package/dist/components/Form/v2/FormField/Extensions/PhoneField/PhoneField.js +0 -90
- package/dist/components/Form/v2/FormField/Extensions/PhoneField/index.js +0 -26
- package/dist/components/Form/v2/FormField/FormField.js +0 -281
- package/dist/components/Form/v2/FormField/FormField.module.scss +0 -0
- package/dist/components/Form/v2/FormField/FormField.types.js +0 -12
- package/dist/components/Form/v2/FormField/index.js +0 -26
- package/dist/components/Form/v2/index.d.ts +0 -2
- package/dist/components/Form/v2/index.js +0 -26
- package/dist/hooks/useForm.d.ts +0 -16
- package/dist/hooks/useForm.js +0 -38
- package/dist-ts/components/Form/v2/Form.d.ts +0 -18
- package/dist-ts/components/Form/v2/Form.hook.js.map +0 -1
- package/dist-ts/components/Form/v2/Form.js +0 -31
- package/dist-ts/components/Form/v2/Form.js.map +0 -1
- package/dist-ts/components/Form/v2/Form.types.js.map +0 -1
- package/dist-ts/components/Form/v2/FormField/Extensions/DateField/DateField.js.map +0 -1
- package/dist-ts/components/Form/v2/FormField/Extensions/DateField/index.js.map +0 -1
- package/dist-ts/components/Form/v2/FormField/Extensions/PhoneField/PhoneField.js.map +0 -1
- package/dist-ts/components/Form/v2/FormField/Extensions/PhoneField/index.js.map +0 -1
- package/dist-ts/components/Form/v2/FormField/FormField.js.map +0 -1
- package/dist-ts/components/Form/v2/FormField/FormField.module.scss +0 -0
- package/dist-ts/components/Form/v2/FormField/FormField.types.js.map +0 -1
- package/dist-ts/components/Form/v2/FormField/index.js.map +0 -1
- package/dist-ts/components/Form/v2/index.d.ts +0 -2
- package/dist-ts/components/Form/v2/index.js +0 -3
- package/dist-ts/components/Form/v2/index.js.map +0 -1
- package/dist-ts/hooks/useForm.d.ts +0 -16
- package/dist-ts/hooks/useForm.js +0 -27
- package/dist-ts/hooks/useForm.js.map +0 -1
- /package/dist/components/Form/{v2/Form.module.scss → Form.module.scss} +0 -0
- /package/dist/components/Form/{v2/FormField → FormField}/Extensions/DateField/DateField.module.scss +0 -0
- /package/dist/components/Form/{v2/FormField → FormField}/Extensions/DateField/index.d.ts +0 -0
- /package/dist/components/Form/{v2/FormField → FormField}/Extensions/PhoneField/PhoneField.d.ts +0 -0
- /package/dist/components/Form/{v2/FormField → FormField}/Extensions/PhoneField/PhoneField.module.scss +0 -0
- /package/dist/components/Form/{v2/FormField → FormField}/Extensions/PhoneField/index.d.ts +0 -0
- /package/dist/components/Form/{v2/FormField → FormField}/FormField.d.ts +0 -0
- /package/dist/components/Form/{v2/FormField → FormField}/index.d.ts +0 -0
- /package/dist-ts/components/Form/{v2/Form.module.scss → Form.module.scss} +0 -0
- /package/dist-ts/components/Form/{v2/Form.types.js → Form.types.js} +0 -0
- /package/dist-ts/components/Form/{v2/FormField → FormField}/Extensions/DateField/DateField.module.scss +0 -0
- /package/dist-ts/components/Form/{v2/FormField → FormField}/Extensions/DateField/index.d.ts +0 -0
- /package/dist-ts/components/Form/{v2/FormField → FormField}/Extensions/DateField/index.js +0 -0
- /package/dist-ts/components/Form/{v2/FormField → FormField}/Extensions/PhoneField/PhoneField.d.ts +0 -0
- /package/dist-ts/components/Form/{v2/FormField → FormField}/Extensions/PhoneField/PhoneField.module.scss +0 -0
- /package/dist-ts/components/Form/{v2/FormField → FormField}/Extensions/PhoneField/index.d.ts +0 -0
- /package/dist-ts/components/Form/{v2/FormField → FormField}/Extensions/PhoneField/index.js +0 -0
- /package/dist-ts/components/Form/{v2/FormField → FormField}/FormField.d.ts +0 -0
- /package/dist-ts/components/Form/{v2/FormField → FormField}/FormField.types.js +0 -0
- /package/dist-ts/components/Form/{v2/FormField → FormField}/index.d.ts +0 -0
- /package/dist-ts/components/Form/{v2/FormField → FormField}/index.js +0 -0
package/dist/type-utils.d.ts
CHANGED
|
@@ -18,7 +18,7 @@ export declare type DeepMap<T, TValue> = {
|
|
|
18
18
|
[K in keyof T]?: IsAny<T[K]> extends true ? any : NonNullable<T[K]> extends NestedValue | Date | FileList | File ? TValue : NonUndefined<T[K]> extends object | null ? DeepMap<T[K], TValue> : NonUndefined<T[K]> extends Array<infer U> ? IsAny<U> extends true ? Array<any> : U extends NestedValue | Date | FileList ? Array<TValue> : U extends object ? Array<DeepMap<U, TValue>> : Array<TValue> : TValue;
|
|
19
19
|
};
|
|
20
20
|
export declare type IsFlatObject<T extends object> = Extract<Exclude<T[keyof T], NestedValue | Date | FileList>, any[] | object> extends never ? true : false;
|
|
21
|
-
declare type IsTuple<T extends ReadonlyArray<any>> = number extends T[
|
|
21
|
+
declare type IsTuple<T extends ReadonlyArray<any>> = number extends T["length"] ? false : true;
|
|
22
22
|
declare type TupleKey<T extends ReadonlyArray<any>> = Exclude<keyof T, keyof any[]>;
|
|
23
23
|
declare type ArrayKey = number;
|
|
24
24
|
declare type PathImpl<K extends string | number, V> = V extends Primitive ? `${K}` : `${K}` | `${K}.${Path<V>}`;
|
|
@@ -45,5 +45,15 @@ export declare type FieldPathValues<TFieldValues extends FieldValues, TPath exte
|
|
|
45
45
|
* Returns the type U when this type is resolved
|
|
46
46
|
* Or the fallback type F when type is no resolved
|
|
47
47
|
*/
|
|
48
|
-
export declare type UnresolvableOr<U, F> = keyof
|
|
48
|
+
export declare type UnresolvableOr<U, F> = keyof any extends keyof U ? F : U;
|
|
49
|
+
type ConsiderOptional<Obj, Next> = Partial<Obj> extends Obj ? {
|
|
50
|
+
[k in keyof Obj]?: Next;
|
|
51
|
+
} : {
|
|
52
|
+
[k in keyof Obj]: Next;
|
|
53
|
+
};
|
|
54
|
+
export declare type PathObject<T, P extends string> = P extends `${infer Key}.${infer Rest}` ? Key extends keyof T ? ConsiderOptional<Pick<T, Key>, PathObject<T[Key], Rest>> : never : P extends keyof T ? undefined extends T[P] ? {
|
|
55
|
+
[p in P]?: undefined;
|
|
56
|
+
} : ConsiderOptional<Pick<T, P>, T[P]> : never;
|
|
57
|
+
export declare type NamespaceAccessors = Path<OnepercentUtility>;
|
|
58
|
+
export declare type FromOnePercentUtility<P extends NamespaceAccessors> = keyof any extends import("type-fest").Get<OnepercentUtility, P> ? `To define this property you need to set OnepercentUtility.${P} globally` : import("type-fest").Get<OnepercentUtility, P>;
|
|
49
59
|
export {};
|
package/dist/type-utils.js
CHANGED
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
6
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL3R5cGUtdXRpbHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsidHlwZSBGaWVsZFZhbHVlcyA9IGFueTtcclxudHlwZSBOZXN0ZWRWYWx1ZSA9IGFueTtcclxuZXhwb3J0IGRlY2xhcmUgdHlwZSBQcmltaXRpdmUgPVxyXG4gIHwgbnVsbFxyXG4gIHwgdW5kZWZpbmVkXHJcbiAgfCBzdHJpbmdcclxuICB8IG51bWJlclxyXG4gIHwgYm9vbGVhblxyXG4gIHwgc3ltYm9sXHJcbiAgfCBiaWdpbnQ7XHJcbmV4cG9ydCBkZWNsYXJlIHR5cGUgRW1wdHlPYmplY3QgPSB7XHJcbiAgW0sgaW4gc3RyaW5nIHwgbnVtYmVyXTogbmV2ZXI7XHJcbn07XHJcbmV4cG9ydCBkZWNsYXJlIHR5cGUgTm9uVW5kZWZpbmVkPFQ+ID0gVCBleHRlbmRzIHVuZGVmaW5lZCA/IG5ldmVyIDogVDtcclxuZXhwb3J0IGRlY2xhcmUgdHlwZSBMaXRlcmFsVW5pb248VCBleHRlbmRzIFUsIFUgZXh0ZW5kcyBQcmltaXRpdmU+ID1cclxuICB8IFRcclxuICB8IChVICYge1xyXG4gICAgICBfPzogbmV2ZXI7XHJcbiAgICB9KTtcclxuZXhwb3J0IGRlY2xhcmUgdHlwZSBEZWVwUGFydGlhbDxUPiA9IFQgZXh0ZW5kcyBBcnJheTxpbmZlciBVPlxyXG4gID8gQXJyYXk8RGVlcFBhcnRpYWw8VT4+XHJcbiAgOiBUIGV4dGVuZHMgUmVhZG9ubHlBcnJheTxpbmZlciBVPlxyXG4gID8gUmVhZG9ubHlBcnJheTxEZWVwUGFydGlhbDxVPj5cclxuICA6IFQgZXh0ZW5kcyB7XHJcbiAgICAgIFtrZXkgaW4ga2V5b2YgVF06IFRba2V5XTtcclxuICAgIH1cclxuICA/IHtcclxuICAgICAgW0sgaW4ga2V5b2YgVF0/OiBEZWVwUGFydGlhbDxUW0tdPjtcclxuICAgIH1cclxuICA6IFQ7XHJcbmV4cG9ydCBkZWNsYXJlIHR5cGUgSXNBbnk8VD4gPSBib29sZWFuIGV4dGVuZHMgKFQgZXh0ZW5kcyBuZXZlciA/IHRydWUgOiBmYWxzZSlcclxuICA/IHRydWVcclxuICA6IGZhbHNlO1xyXG5leHBvcnQgZGVjbGFyZSB0eXBlIERlZXBNYXA8VCwgVFZhbHVlPiA9IHtcclxuICBbSyBpbiBrZXlvZiBUXT86IElzQW55PFRbS10+IGV4dGVuZHMgdHJ1ZVxyXG4gICAgPyBhbnlcclxuICAgIDogTm9uTnVsbGFibGU8VFtLXT4gZXh0ZW5kcyBOZXN0ZWRWYWx1ZSB8IERhdGUgfCBGaWxlTGlzdCB8IEZpbGVcclxuICAgID8gVFZhbHVlXHJcbiAgICA6IE5vblVuZGVmaW5lZDxUW0tdPiBleHRlbmRzIG9iamVjdCB8IG51bGxcclxuICAgID8gRGVlcE1hcDxUW0tdLCBUVmFsdWU+XHJcbiAgICA6IE5vblVuZGVmaW5lZDxUW0tdPiBleHRlbmRzIEFycmF5PGluZmVyIFU+XHJcbiAgICA/IElzQW55PFU+IGV4dGVuZHMgdHJ1ZVxyXG4gICAgICA/IEFycmF5PGFueT5cclxuICAgICAgOiBVIGV4dGVuZHMgTmVzdGVkVmFsdWUgfCBEYXRlIHwgRmlsZUxpc3RcclxuICAgICAgPyBBcnJheTxUVmFsdWU+XHJcbiAgICAgIDogVSBleHRlbmRzIG9iamVjdFxyXG4gICAgICA/IEFycmF5PERlZXBNYXA8VSwgVFZhbHVlPj5cclxuICAgICAgOiBBcnJheTxUVmFsdWU+XHJcbiAgICA6IFRWYWx1ZTtcclxufTtcclxuZXhwb3J0IGRlY2xhcmUgdHlwZSBJc0ZsYXRPYmplY3Q8VCBleHRlbmRzIG9iamVjdD4gPSBFeHRyYWN0PFxyXG4gIEV4Y2x1ZGU8VFtrZXlvZiBUXSwgTmVzdGVkVmFsdWUgfCBEYXRlIHwgRmlsZUxpc3Q+LFxyXG4gIGFueVtdIHwgb2JqZWN0XHJcbj4gZXh0ZW5kcyBuZXZlclxyXG4gID8gdHJ1ZVxyXG4gIDogZmFsc2U7XHJcbmRlY2xhcmUgdHlwZSBJc1R1cGxlPFQgZXh0ZW5kcyBSZWFkb25seUFycmF5PGFueT4+ID0gbnVtYmVyIGV4dGVuZHMgVFtcImxlbmd0aFwiXVxyXG4gID8gZmFsc2VcclxuICA6IHRydWU7XHJcbmRlY2xhcmUgdHlwZSBUdXBsZUtleTxUIGV4dGVuZHMgUmVhZG9ubHlBcnJheTxhbnk+PiA9IEV4Y2x1ZGU8XHJcbiAga2V5b2YgVCxcclxuICBrZXlvZiBhbnlbXVxyXG4+O1xyXG5kZWNsYXJlIHR5cGUgQXJyYXlLZXkgPSBudW1iZXI7XHJcbmRlY2xhcmUgdHlwZSBQYXRoSW1wbDxLIGV4dGVuZHMgc3RyaW5nIHwgbnVtYmVyLCBWPiA9IFYgZXh0ZW5kcyBQcmltaXRpdmVcclxuICA/IGAke0t9YFxyXG4gIDogYCR7S31gIHwgYCR7S30uJHtQYXRoPFY+fWA7XHJcbmV4cG9ydCBkZWNsYXJlIHR5cGUgUGF0aDxUPiA9IFQgZXh0ZW5kcyBSZWFkb25seUFycmF5PGluZmVyIFY+XHJcbiAgPyBJc1R1cGxlPFQ+IGV4dGVuZHMgdHJ1ZVxyXG4gICAgPyB7XHJcbiAgICAgICAgW0sgaW4gVHVwbGVLZXk8VD5dLT86IFBhdGhJbXBsPEsgJiBzdHJpbmcsIFRbS10+O1xyXG4gICAgICB9W1R1cGxlS2V5PFQ+XVxyXG4gICAgOiBQYXRoSW1wbDxBcnJheUtleSwgVj5cclxuICA6IHtcclxuICAgICAgW0sgaW4ga2V5b2YgVF0tPzogUGF0aEltcGw8SyAmIHN0cmluZywgVFtLXT47XHJcbiAgICB9W2tleW9mIFRdO1xyXG5leHBvcnQgZGVjbGFyZSB0eXBlIEZpZWxkUGF0aDxURmllbGRWYWx1ZXMgZXh0ZW5kcyBGaWVsZFZhbHVlcz4gPVxyXG4gIFBhdGg8VEZpZWxkVmFsdWVzPjtcclxuZGVjbGFyZSB0eXBlIEFycmF5UGF0aEltcGw8SyBleHRlbmRzIHN0cmluZyB8IG51bWJlciwgVj4gPSBWIGV4dGVuZHMgUHJpbWl0aXZlXHJcbiAgPyBuZXZlclxyXG4gIDogViBleHRlbmRzIFJlYWRvbmx5QXJyYXk8aW5mZXIgVT5cclxuICA/IFUgZXh0ZW5kcyBQcmltaXRpdmVcclxuICAgID8gbmV2ZXJcclxuICAgIDogYCR7S31gIHwgYCR7S30uJHtBcnJheVBhdGg8Vj59YFxyXG4gIDogYCR7S30uJHtBcnJheVBhdGg8Vj59YDtcclxuZXhwb3J0IGRlY2xhcmUgdHlwZSBBcnJheVBhdGg8VD4gPSBUIGV4dGVuZHMgUmVhZG9ubHlBcnJheTxpbmZlciBWPlxyXG4gID8gSXNUdXBsZTxUPiBleHRlbmRzIHRydWVcclxuICAgID8ge1xyXG4gICAgICAgIFtLIGluIFR1cGxlS2V5PFQ+XS0/OiBBcnJheVBhdGhJbXBsPEsgJiBzdHJpbmcsIFRbS10+O1xyXG4gICAgICB9W1R1cGxlS2V5PFQ+XVxyXG4gICAgOiBBcnJheVBhdGhJbXBsPEFycmF5S2V5LCBWPlxyXG4gIDoge1xyXG4gICAgICBbSyBpbiBrZXlvZiBUXS0/OiBBcnJheVBhdGhJbXBsPEsgJiBzdHJpbmcsIFRbS10+O1xyXG4gICAgfVtrZXlvZiBUXTtcclxuZXhwb3J0IGRlY2xhcmUgdHlwZSBGaWVsZEFycmF5UGF0aDxURmllbGRWYWx1ZXMgZXh0ZW5kcyBGaWVsZFZhbHVlcz4gPVxyXG4gIEFycmF5UGF0aDxURmllbGRWYWx1ZXM+O1xyXG5leHBvcnQgZGVjbGFyZSB0eXBlIFBhdGhWYWx1ZTxcclxuICBULFxyXG4gIFAgZXh0ZW5kcyBQYXRoPFQ+IHwgQXJyYXlQYXRoPFQ+XHJcbj4gPSBQIGV4dGVuZHMgYCR7aW5mZXIgS30uJHtpbmZlciBSfWBcclxuICA/IEsgZXh0ZW5kcyBrZXlvZiBUXHJcbiAgICA/IFIgZXh0ZW5kcyBQYXRoPFRbS10+XHJcbiAgICAgID8gUGF0aFZhbHVlPFRbS10sIFI+XHJcbiAgICAgIDogbmV2ZXJcclxuICAgIDogSyBleHRlbmRzIGAke0FycmF5S2V5fWBcclxuICAgID8gVCBleHRlbmRzIFJlYWRvbmx5QXJyYXk8aW5mZXIgVj5cclxuICAgICAgPyBQYXRoVmFsdWU8ViwgUiAmIFBhdGg8Vj4+XHJcbiAgICAgIDogbmV2ZXJcclxuICAgIDogbmV2ZXJcclxuICA6IFAgZXh0ZW5kcyBrZXlvZiBUXHJcbiAgPyBUW1BdXHJcbiAgOiBQIGV4dGVuZHMgYCR7QXJyYXlLZXl9YFxyXG4gID8gVCBleHRlbmRzIFJlYWRvbmx5QXJyYXk8aW5mZXIgVj5cclxuICAgID8gVlxyXG4gICAgOiBuZXZlclxyXG4gIDogbmV2ZXI7XHJcbmV4cG9ydCBkZWNsYXJlIHR5cGUgRmllbGRQYXRoVmFsdWU8XHJcbiAgVEZpZWxkVmFsdWVzIGV4dGVuZHMgRmllbGRWYWx1ZXMsXHJcbiAgVEZpZWxkUGF0aCBleHRlbmRzIEZpZWxkUGF0aDxURmllbGRWYWx1ZXM+XHJcbj4gPSBQYXRoVmFsdWU8VEZpZWxkVmFsdWVzLCBURmllbGRQYXRoPjtcclxuZXhwb3J0IGRlY2xhcmUgdHlwZSBGaWVsZEFycmF5UGF0aFZhbHVlPFxyXG4gIFRGaWVsZFZhbHVlcyBleHRlbmRzIEZpZWxkVmFsdWVzLFxyXG4gIFRGaWVsZEFycmF5UGF0aCBleHRlbmRzIEZpZWxkQXJyYXlQYXRoPFRGaWVsZFZhbHVlcz5cclxuPiA9IFBhdGhWYWx1ZTxURmllbGRWYWx1ZXMsIFRGaWVsZEFycmF5UGF0aD47XHJcbmV4cG9ydCBkZWNsYXJlIHR5cGUgRmllbGRQYXRoVmFsdWVzPFxyXG4gIFRGaWVsZFZhbHVlcyBleHRlbmRzIEZpZWxkVmFsdWVzLFxyXG4gIFRQYXRoIGV4dGVuZHMgRmllbGRQYXRoPFRGaWVsZFZhbHVlcz5bXSB8IHJlYWRvbmx5IEZpZWxkUGF0aDxURmllbGRWYWx1ZXM+W11cclxuPiA9IHt9ICYge1xyXG4gIFtLIGluIGtleW9mIFRQYXRoXTogRmllbGRQYXRoVmFsdWU8XHJcbiAgICBURmllbGRWYWx1ZXMsXHJcbiAgICBUUGF0aFtLXSAmIEZpZWxkUGF0aDxURmllbGRWYWx1ZXM+XHJcbiAgPjtcclxufTtcclxuLyoqXHJcbiAqIFJldHVybnMgdGhlIHR5cGUgVSB3aGVuIHRoaXMgdHlwZSBpcyByZXNvbHZlZFxyXG4gKiBPciB0aGUgZmFsbGJhY2sgdHlwZSBGIHdoZW4gdHlwZSBpcyBubyByZXNvbHZlZFxyXG4gKi9cclxuZXhwb3J0IGRlY2xhcmUgdHlwZSBVbnJlc29sdmFibGVPcjxVLCBGPiA9IGtleW9mIGFueSBleHRlbmRzIGtleW9mIFUgPyBGIDogVTtcclxudHlwZSBDb25zaWRlck9wdGlvbmFsPE9iaiwgTmV4dD4gPSBQYXJ0aWFsPE9iaj4gZXh0ZW5kcyBPYmpcclxuICA/IHsgW2sgaW4ga2V5b2YgT2JqXT86IE5leHQgfVxyXG4gIDogeyBbayBpbiBrZXlvZiBPYmpdOiBOZXh0IH07XHJcbmV4cG9ydCBkZWNsYXJlIHR5cGUgUGF0aE9iamVjdDxcclxuICBULFxyXG4gIFAgZXh0ZW5kcyBzdHJpbmdcclxuPiA9IFAgZXh0ZW5kcyBgJHtpbmZlciBLZXl9LiR7aW5mZXIgUmVzdH1gXHJcbiAgPyBLZXkgZXh0ZW5kcyBrZXlvZiBUXHJcbiAgICA/IENvbnNpZGVyT3B0aW9uYWw8UGljazxULCBLZXk+LCBQYXRoT2JqZWN0PFRbS2V5XSwgUmVzdD4+XHJcbiAgICA6IG5ldmVyXHJcbiAgOiBQIGV4dGVuZHMga2V5b2YgVFxyXG4gID8gdW5kZWZpbmVkIGV4dGVuZHMgVFtQXVxyXG4gICAgPyB7IFtwIGluIFBdPzogdW5kZWZpbmVkIH1cclxuICAgIDogQ29uc2lkZXJPcHRpb25hbDxQaWNrPFQsIFA+LCBUW1BdPlxyXG4gIDogbmV2ZXI7XHJcblxyXG5leHBvcnQgZGVjbGFyZSB0eXBlIE5hbWVzcGFjZUFjY2Vzc29ycyA9IFBhdGg8T25lcGVyY2VudFV0aWxpdHk+O1xyXG5leHBvcnQgZGVjbGFyZSB0eXBlIEZyb21PbmVQZXJjZW50VXRpbGl0eTxQIGV4dGVuZHMgTmFtZXNwYWNlQWNjZXNzb3JzPiA9XHJcbiAga2V5b2YgYW55IGV4dGVuZHMgaW1wb3J0KFwidHlwZS1mZXN0XCIpLkdldDxPbmVwZXJjZW50VXRpbGl0eSwgUD5cclxuICAgID8gYFRvIGRlZmluZSB0aGlzIHByb3BlcnR5IHlvdSBuZWVkIHRvIHNldCBPbmVwZXJjZW50VXRpbGl0eS4ke1B9IGdsb2JhbGx5YFxyXG4gICAgOiBpbXBvcnQoXCJ0eXBlLWZlc3RcIikuR2V0PE9uZXBlcmNlbnRVdGlsaXR5LCBQPjtcclxuZXhwb3J0IHt9O1xyXG4iXSwibWFwcGluZ3MiOiIiLCJpZ25vcmVMaXN0IjpbXX0=
|
package/dist/utility.d.js
CHANGED
|
@@ -1,18 +1,2 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* These are typings made to support separated function and prevent excessive Generics usage accross the application
|
|
5
|
-
*
|
|
6
|
-
* Redeclare this namespace with the usefull typings for your project and enjoy intelisense :)
|
|
7
|
-
*/
|
|
8
|
-
let OnepercentUtility;
|
|
9
|
-
(function (_OnepercentUtility) {
|
|
10
|
-
/** The ids used by the useShortIntl hooks */
|
|
11
|
-
/** A type hint to bind the LinkToId action and the SectionContainer identifier */
|
|
12
|
-
/** A type hint to autocomplete functions related to the AsyncProcess context */
|
|
13
|
-
let AsyncQueue;
|
|
14
|
-
(function (_AsyncQueue) {})(AsyncQueue || (AsyncQueue = {}));
|
|
15
|
-
let UIElements;
|
|
16
|
-
(function (_UIElements) {})(UIElements || (UIElements = {}));
|
|
17
|
-
})(OnepercentUtility || (OnepercentUtility = {}));
|
|
18
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJPbmVwZXJjZW50VXRpbGl0eSIsIl9PbmVwZXJjZW50VXRpbGl0eSIsIkFzeW5jUXVldWUiLCJfQXN5bmNRdWV1ZSIsIlVJRWxlbWVudHMiLCJfVUlFbGVtZW50cyJdLCJzb3VyY2VzIjpbIi4uL3NyYy91dGlsaXR5LmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBUaGVzZSBhcmUgdHlwaW5ncyBtYWRlIHRvIHN1cHBvcnQgc2VwYXJhdGVkIGZ1bmN0aW9uIGFuZCBwcmV2ZW50IGV4Y2Vzc2l2ZSBHZW5lcmljcyB1c2FnZSBhY2Nyb3NzIHRoZSBhcHBsaWNhdGlvblxuICpcbiAqIFJlZGVjbGFyZSB0aGlzIG5hbWVzcGFjZSB3aXRoIHRoZSB1c2VmdWxsIHR5cGluZ3MgZm9yIHlvdXIgcHJvamVjdCBhbmQgZW5qb3kgaW50ZWxpc2Vuc2UgOilcbiAqL1xubmFtZXNwYWNlIE9uZXBlcmNlbnRVdGlsaXR5IHtcbiAgLyoqIFRoZSBpZHMgdXNlZCBieSB0aGUgdXNlU2hvcnRJbnRsIGhvb2tzICovXG4gIHR5cGUgSW50bElkcyA9IFwiZ2VuZXJpYy5pZFwiO1xuICAvKiogQSB0eXBlIGhpbnQgdG8gYmluZCB0aGUgTGlua1RvSWQgYWN0aW9uIGFuZCB0aGUgU2VjdGlvbkNvbnRhaW5lciBpZGVudGlmaWVyICovXG4gIHR5cGUgUGFnZVNlY3Rpb25zID0gXCJleGFtcGxlLXNlY3Rpb24tMVwiO1xuICAvKiogQSB0eXBlIGhpbnQgdG8gYXV0b2NvbXBsZXRlIGZ1bmN0aW9ucyByZWxhdGVkIHRvIHRoZSBBc3luY1Byb2Nlc3MgY29udGV4dCAqL1xuICBuYW1lc3BhY2UgQXN5bmNRdWV1ZSB7XG4gICAgLyoqIFRoZXNlIGFyZSB0aGUgcmVjb3ZlcnkgdHlwZXMgYXZhaWxhYmxlICovXG4gICAgdHlwZSBSZWNvdmVyeVR5cGVzID0ge1xuICAgICAgW1I6IHN0cmluZ106IGFueVtdO1xuICAgIH07XG5cbiAgICAvKiogVGhlc2UgYXJlIHRoZSBhdmFpbGFibGUgVUkgbW9kZWxzICovXG4gICAgdHlwZSBQcm9jZXNzZXMgPSB7XG4gICAgICBbayBpbiBcIndhaXRGb3JCdWlsZFwiXTogW3RoYXNoOiBzdHJpbmddO1xuICAgIH07XG4gIH1cbiAgLyoqIFRoZXNlIGFyZSB0aGUgZXh0ZW5zaWJsZSBwcm9wZXJ0aWVzIGZvciB0aGUgVUkgZWxlbWVudHMgKi9cbiAgbmFtZXNwYWNlIFVJRWxlbWVudHMge1xuICAgIHR5cGUgQWRhcHRpdmVEaWFsb2dWYXJpYW50cyA9IFwiZGVmYXVsdFwiO1xuICAgIHR5cGUgQnV0dG9uVmFyaWFudHMgPSBcInRyYW5zcGFyZW50XCIgfCBcImZpbGxlZFwiIHwgXCJvdXRsaW5lXCIgfCBcImxpbmtcIjtcbiAgICB0eXBlIFRleHRWYXJpYW50cyA9XG4gICAgICB8IFwidGl0bGVcIlxuICAgICAgfCBcImRlc2NyaXB0aW9uXCJcbiAgICAgIHwgXCJlcnJvclwiXG4gICAgICB8IFwiY2FwdGlvblwiXG4gICAgICB8IFwiaGlnaGxpZ2h0VGl0bGVcIlxuICAgICAgfCBcImhpZ2hsaWdodFwiXG4gICAgICB8IFwic3VidGl0bGVcIlxuICAgICAgfCBcImJvbGRUaXRsZVwiXG4gICAgICB8IFwibGlua1wiXG4gICAgICB8IFwiYm9sZFRpdGxlQmlnXCJcbiAgICAgIHwgXCJjb250ZW50XCI7XG4gICAgdHlwZSBTcGFjaW5nVmFyaWFudHMgPSBcImxhcmdlXCIgfCBcInNtYWxsXCI7XG4gICAgdHlwZSBUZXh0Q29sb3JzID0gXCJwcmltYXJ5XCIgfCBcImVycm9yXCIgfCB1bmRlZmluZWQ7XG4gICAgdHlwZSBGb3JtRXh0ZW5zaW9uID0ge1xuICAgICAgZmllbGRzOlxuICAgICAgICB8IHtcbiAgICAgICAgICAgIHR5cGU6IFwicGhvbmVcIjtcbiAgICAgICAgICAgIGNvdW50cnk6IHN0cmluZztcbiAgICAgICAgICB9XG4gICAgICAgIHwge1xuICAgICAgICAgICAgdHlwZTogXCJkYXRlXCI7XG4gICAgICAgICAgfTtcbiAgICAgIGZpZWxkQW5zd2VyOiB7XG4gICAgICAgIHBob25lOiBbXG4gICAgICAgICAgcGhvbmVOdW1iZXI6IHN0cmluZyxcbiAgICAgICAgICBpc1ZhbGlkOiBib29sZWFuLFxuICAgICAgICAgIGVycm9yOiBzdHJpbmcgfCB1bmRlZmluZWRcbiAgICAgICAgXTtcbiAgICAgICAgZGF0ZTogc3RyaW5nXG4gICAgICB9O1xuICAgIH07XG4gIH1cbn1cbmRlY2xhcmUgbW9kdWxlIFwidXNlLXdhbGxldFwiIHtcbiAgaW1wb3J0ICogYXMgVXNlV2FsbGV0IGZyb20gXCJ1c2Utd2FsbGV0XCI7XG4gIGV4cG9ydCBjb25zdCB1c2VXYWxsZXQ6IHR5cGVvZiBVc2VXYWxsZXRbXCJ1c2Utd2FsbGV0XCJdO1xuICBleHBvcnQgY29uc3QgVXNlV2FsbGV0UHJvdmlkZXI6IHR5cGVvZiBVc2VXYWxsZXRbXCJVc2VXYWxsZXRQcm92aWRlclwiXTtcbn1cblxuZGVjbGFyZSBtb2R1bGUgXCIqLm1wNFwiIHtcbiAgY29uc3Qgdjogc3RyaW5nO1xuICBleHBvcnQgZGVmYXVsdCB2O1xufVxuIl0sIm1hcHBpbmdzIjoiOztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFKQSxJQUFBQSxpQkFBQTtBQUFBLFdBQUFDLGtCQUFBO0VBTUU7RUFFQTtFQUVBO0VBQUEsSUFBQUMsVUFBQTtFQUFBLFdBQUFDLFdBQUEsTUFDVUQsVUFBVSxLQUFWQSxVQUFVO0VBQUEsSUFBQUUsVUFBQTtFQUFBLFdBQUFDLFdBQUEsTUFZVkQsVUFBVSxLQUFWQSxVQUFVO0FBQUEsR0FsQlpKLGlCQUFpQixLQUFqQkEsaUJBQWlCIiwiaWdub3JlTGlzdCI6W119
|
|
2
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL3V0aWxpdHkuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRoZXNlIGFyZSB0eXBpbmdzIG1hZGUgdG8gc3VwcG9ydCBzZXBhcmF0ZWQgZnVuY3Rpb24gYW5kIHByZXZlbnQgZXhjZXNzaXZlIEdlbmVyaWNzIHVzYWdlIGFjY3Jvc3MgdGhlIGFwcGxpY2F0aW9uXG4gKlxuICogUmVkZWNsYXJlIHRoaXMgbmFtZXNwYWNlIHdpdGggdGhlIHVzZWZ1bGwgdHlwaW5ncyBmb3IgeW91ciBwcm9qZWN0IGFuZCBlbmpveSBpbnRlbGlzZW5zZSA6KVxuICovXG50eXBlIE9uZXBlcmNlbnRVdGlsaXR5ID0ge1xuICAvKiogVGhlIGlkcyB1c2VkIGJ5IHRoZSB1c2VTaG9ydEludGwgaG9va3MgKi9cbiAgSW50bElkczogXCJnZW5lcmljLmlkXCI7XG4gIC8qKiBBIHR5cGUgaGludCB0byBiaW5kIHRoZSBMaW5rVG9JZCBhY3Rpb24gYW5kIHRoZSBTZWN0aW9uQ29udGFpbmVyIGlkZW50aWZpZXIgKi9cbiAgUGFnZVNlY3Rpb25zOiBcImV4YW1wbGUtc2VjdGlvbi0xXCI7XG4gIC8qKiBBIHR5cGUgaGludCB0byBhdXRvY29tcGxldGUgZnVuY3Rpb25zIHJlbGF0ZWQgdG8gdGhlIEFzeW5jUHJvY2VzcyBjb250ZXh0ICovXG4gIEFzeW5jUXVldWU6IHtcbiAgICAvKiogVGhlc2UgYXJlIHRoZSByZWNvdmVyeSB0eXBlcyBhdmFpbGFibGUgKi9cbiAgICBSZWNvdmVyeVR5cGVzOiB7XG4gICAgICBbUjogc3RyaW5nXTogYW55W107XG4gICAgfTtcblxuICAgIC8qKiBUaGVzZSBhcmUgdGhlIGF2YWlsYWJsZSBVSSBtb2RlbHMgKi9cbiAgICBQcm9jZXNzZXM6IHtcbiAgICAgIFtrIGluIFwid2FpdEZvckJ1aWxkXCJdOiBbdGhhc2g6IHN0cmluZ107XG4gICAgfTtcbiAgfVxuICAvKiogVGhlc2UgYXJlIHRoZSBleHRlbnNpYmxlIHByb3BlcnRpZXMgZm9yIHRoZSBVSSBlbGVtZW50cyAqL1xuICBVSUVsZW1lbnRzOiB7XG4gICAgQWRhcHRpdmVEaWFsb2dWYXJpYW50czogXCJkZWZhdWx0XCI7XG4gICAgQnV0dG9uVmFyaWFudHM6IFwidHJhbnNwYXJlbnRcIiB8IFwiZmlsbGVkXCIgfCBcIm91dGxpbmVcIiB8IFwibGlua1wiO1xuICAgIFRleHRWYXJpYW50czpcbiAgICAgIHwgXCJ0aXRsZVwiXG4gICAgICB8IFwiZGVzY3JpcHRpb25cIlxuICAgICAgfCBcImVycm9yXCJcbiAgICAgIHwgXCJjYXB0aW9uXCJcbiAgICAgIHwgXCJoaWdobGlnaHRUaXRsZVwiXG4gICAgICB8IFwiaGlnaGxpZ2h0XCJcbiAgICAgIHwgXCJzdWJ0aXRsZVwiXG4gICAgICB8IFwiYm9sZFRpdGxlXCJcbiAgICAgIHwgXCJsaW5rXCJcbiAgICAgIHwgXCJib2xkVGl0bGVCaWdcIlxuICAgICAgfCBcImNvbnRlbnRcIjtcbiAgICBTcGFjaW5nVmFyaWFudHM6IFwibGFyZ2VcIiB8IFwic21hbGxcIjtcbiAgICBUZXh0Q29sb3JzOiBcInByaW1hcnlcIiB8IFwiZXJyb3JcIiB8IHVuZGVmaW5lZDtcbiAgICBGb3JtRXh0ZW5zaW9uOiB7XG4gICAgICBmaWVsZHM6XG4gICAgICAgIHwge1xuICAgICAgICAgICAgdHlwZTogXCJwaG9uZVwiO1xuICAgICAgICAgICAgY291bnRyeTogc3RyaW5nO1xuICAgICAgICAgIH1cbiAgICAgICAgfCB7XG4gICAgICAgICAgICB0eXBlOiBcImRhdGVcIjtcbiAgICAgICAgICB9O1xuICAgICAgZmllbGRBbnN3ZXI6IHtcbiAgICAgICAgcGhvbmU6IFtcbiAgICAgICAgICBwaG9uZU51bWJlcjogc3RyaW5nLFxuICAgICAgICAgIGlzVmFsaWQ6IGJvb2xlYW4sXG4gICAgICAgICAgZXJyb3I6IHN0cmluZyB8IHVuZGVmaW5lZFxuICAgICAgICBdO1xuICAgICAgICBkYXRlOiBzdHJpbmdcbiAgICAgIH07XG4gICAgfTtcbiAgfVxufVxuZGVjbGFyZSBtb2R1bGUgXCJ1c2Utd2FsbGV0XCIge1xuICBpbXBvcnQgKiBhcyBVc2VXYWxsZXQgZnJvbSBcInVzZS13YWxsZXRcIjtcbiAgZXhwb3J0IGNvbnN0IHVzZVdhbGxldDogdHlwZW9mIFVzZVdhbGxldFtcInVzZS13YWxsZXRcIl07XG4gIGV4cG9ydCBjb25zdCBVc2VXYWxsZXRQcm92aWRlcjogdHlwZW9mIFVzZVdhbGxldFtcIlVzZVdhbGxldFByb3ZpZGVyXCJdO1xufVxuXG5kZWNsYXJlIG1vZHVsZSBcIioubXA0XCIge1xuICBjb25zdCB2OiBzdHJpbmc7XG4gIGV4cG9ydCBkZWZhdWx0IHY7XG59XG4iXSwibWFwcGluZ3MiOiIiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { PropsWithChildren } from "react";
|
|
2
|
+
import { FromOnePercentUtility } from "../../type-utils";
|
|
2
3
|
/**
|
|
3
4
|
* This component implements a generic drawer that displays it as a drawer on mobile and as a modal on desktop
|
|
4
5
|
**/
|
|
5
6
|
export default function AdaptiveDialog({ variant, onClose, open, className, onClickOut, children, onClosed, inline, }: PropsWithChildren<{
|
|
6
|
-
variant?:
|
|
7
|
+
variant?: FromOnePercentUtility<'UIElements.AdaptiveDialogVariants'>;
|
|
7
8
|
className?: string;
|
|
8
9
|
open: boolean;
|
|
9
10
|
onClose?: () => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdaptiveDialog.js","sourceRoot":"","sources":["../../../src/components/AdaptiveDialog/AdaptiveDialog.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAqB,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC9E,OAAO,QAAQ,MAAM,WAAW,CAAC;AACjC,OAAO,MAAM,MAAM,8BAA8B,CAAC;AAClD,OAAO,sBAAsB,MAAM,2BAA2B,CAAC;AAC/D,OAAO,kBAAkB,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"AdaptiveDialog.js","sourceRoot":"","sources":["../../../src/components/AdaptiveDialog/AdaptiveDialog.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import React, { ForwardedRef } from "react";
|
|
2
|
+
import { FromOnePercentUtility } from "../../type-utils";
|
|
2
3
|
type ButtonProps = React.PropsWithChildren<React.ButtonHTMLAttributes<HTMLButtonElement> & {
|
|
3
|
-
variant?:
|
|
4
|
+
variant?: FromOnePercentUtility<'UIElements.ButtonVariants'>;
|
|
4
5
|
}>;
|
|
5
6
|
export declare function _Button({ children, variant, className, ...otherProps }: ButtonProps, ref: ForwardedRef<HTMLButtonElement>): import("react/jsx-runtime").JSX.Element;
|
|
6
7
|
/**
|
|
7
8
|
* A simple button that can be customized via the provider
|
|
8
9
|
**/
|
|
9
10
|
declare const Button: React.ForwardRefExoticComponent<React.ButtonHTMLAttributes<HTMLButtonElement> & {
|
|
10
|
-
variant?:
|
|
11
|
+
variant?: "link" | "transparent" | "filled" | "outline" | undefined;
|
|
11
12
|
} & {
|
|
12
13
|
children?: React.ReactNode;
|
|
13
14
|
} & React.RefAttributes<HTMLButtonElement>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/components/Button/Button.tsx"],"names":[],"mappings":";AAAA,OAAc,EAA4B,UAAU,EAAE,MAAM,OAAO,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/components/Button/Button.tsx"],"names":[],"mappings":";AAAA,OAAc,EAA4B,UAAU,EAAE,MAAM,OAAO,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAS7D,MAAM,UAAU,OAAO,CACrB,EACE,QAAQ,EACR,OAAO,GAAG,aAAa,EACvB,SAAS,GAAG,EAAE,EACd,GAAG,UAAU,EACD,EACd,GAAoC;IAEpC,MAAM,aAAa,GAAG,cAAc,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC;IACvE,MAAM,SAAS,GAAG,cAAc,CAC9B,4BAA4B,EAC5B,QAAe,CAChB,CAAC;IACF,OAAO,CACL,KAAC,SAAS,IACR,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,GAAG,SAAS,IAAI,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,EACzD,OAAO,EAAE,OAAO,KACZ,UAAU,YAEb,QAAQ,GACC,CACb,CAAC;AACJ,CAAC;AAED;;IAEI;AACJ,MAAM,MAAM,GAAG,UAAU,CAAiC,OAAO,CAAC,CAAC;AACnE,eAAe,MAAM,CAAC"}
|
|
@@ -10,7 +10,6 @@ declare const EmailInput: React.ForwardRefExoticComponent<Omit<Omit<{
|
|
|
10
10
|
placeholder?: string | undefined;
|
|
11
11
|
disclaimer?: string | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | undefined;
|
|
12
12
|
multiline?: number | undefined;
|
|
13
|
-
border?: boolean | undefined;
|
|
14
13
|
icon?: ({
|
|
15
14
|
onClick?: (() => void) | undefined;
|
|
16
15
|
} & React.ClassAttributes<any> & React.ImgHTMLAttributes<HTMLImageElement>) | undefined;
|
|
@@ -1,49 +1,15 @@
|
|
|
1
|
-
import React
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
};
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
type: "select";
|
|
17
|
-
choices: ComponentProps<typeof import("../Select")["default"]>["items"];
|
|
18
|
-
} : T extends "email" ? {
|
|
19
|
-
type: "email";
|
|
20
|
-
messages: ComponentProps<typeof EmailInput>["messages"];
|
|
21
|
-
} : T extends "textarea" ? {
|
|
22
|
-
type: "textarea";
|
|
23
|
-
lines: number;
|
|
24
|
-
} : {
|
|
25
|
-
type: "text" | "number";
|
|
26
|
-
inputProps?: ComponentProps<typeof Input>;
|
|
27
|
-
});
|
|
28
|
-
export type ClassName = string;
|
|
29
|
-
export type FormInterface = {
|
|
30
|
-
clear: () => void;
|
|
31
|
-
};
|
|
32
|
-
export type FirebaseFormProps<M extends FormForm> = {
|
|
33
|
-
ref?: RefObject<FormInterface>;
|
|
34
|
-
submitting: boolean;
|
|
35
|
-
onSubmit: (data: M) => void;
|
|
36
|
-
submited?: boolean;
|
|
37
|
-
config: {
|
|
38
|
-
[k in keyof M]: FieldDefinition<M, k, FieldTypes>;
|
|
39
|
-
};
|
|
40
|
-
submitBtn: string | {
|
|
41
|
-
label: [FunctionComponent] | [FunctionComponent, ClassName];
|
|
42
|
-
loading: [FunctionComponent] | [FunctionComponent, ClassName];
|
|
43
|
-
error: [FunctionComponent] | [FunctionComponent, ClassName];
|
|
44
|
-
success: [FunctionComponent] | [FunctionComponent, ClassName];
|
|
45
|
-
};
|
|
46
|
-
btnProps?: ComponentProps<typeof Button>;
|
|
47
|
-
};
|
|
48
|
-
declare const FirebaseForm: React.ForwardRefExoticComponent<Omit<FirebaseFormProps<BaseForm>, "ref"> & React.RefAttributes<FormInterface>>;
|
|
49
|
-
export default FirebaseForm;
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { FormViewProps } from "./Form.types";
|
|
3
|
+
import { AnswerByField, FormFieldView } from "./FormField/FormField.types";
|
|
4
|
+
export type FormRef<Q extends FormFieldView[]> = {
|
|
5
|
+
setAnswer<I extends Q[number]["id"]>(questionId: I, ans: AnswerByField<Q[number] & {
|
|
6
|
+
id: I;
|
|
7
|
+
}>): void;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* A new and improved version of the one-ui design form
|
|
11
|
+
*
|
|
12
|
+
* Custom question types can be defined via @type {OnepercentUtility['UIElements']['FormExtension']['fields']}
|
|
13
|
+
**/
|
|
14
|
+
declare const _default: React.ForwardRefExoticComponent<FormViewProps<FormFieldView[]> & React.RefAttributes<FormRef<FormFieldView[]>>>;
|
|
15
|
+
export default _default;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import { OneUIContextSpecs } from "
|
|
2
|
+
import { OneUIContextSpecs } from "../../context/OneUIProvider";
|
|
3
3
|
import { AnswerAction, AnswerByField, FormField, FormFieldTypes, FormFieldView, FormMode } from "./FormField/FormField.types";
|
|
4
4
|
import { AnswersMap } from "./Form.types";
|
|
5
5
|
export declare function useFormAnswers<A extends AnswersMap<any> = AnswersMap>(defaultAnswers: A, mode: FormMode): {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useLayoutEffect, useMemo, useState } from "react";
|
|
2
|
-
import { useOneUIConfig
|
|
2
|
+
import { useOneUIConfig } from "../../context/OneUIProvider";
|
|
3
3
|
import { FormMode, } from "./FormField/FormField.types";
|
|
4
4
|
export function useFormAnswers(defaultAnswers, mode) {
|
|
5
5
|
const [answers, setAnswers] = useState(() => {
|
|
@@ -36,10 +36,14 @@ export function useFormState(currentQuestions, { answers, setAnswers }) {
|
|
|
36
36
|
});
|
|
37
37
|
break;
|
|
38
38
|
default:
|
|
39
|
-
setAnswers((prev) =>
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
39
|
+
setAnswers((prev) => {
|
|
40
|
+
if (prev[id] === answer)
|
|
41
|
+
return prev;
|
|
42
|
+
return {
|
|
43
|
+
...prev,
|
|
44
|
+
[id]: answer,
|
|
45
|
+
};
|
|
46
|
+
});
|
|
43
47
|
}
|
|
44
48
|
};
|
|
45
49
|
const isFilesUploaded = useFileUploads(currentQuestions, answers);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Form.hook.js","sourceRoot":"","sources":["../../../src/components/Form/Form.hook.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,69 +1,40 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
const salt = useMemo(() => Date.now(), [key]);
|
|
18
|
-
return (_jsx(AdaptiveButton, { variant: "filled", className: className, disabled: !isValid, onClick: onClick, ...btnProps, children: _jsx(Element, {}, key + salt) }));
|
|
19
|
-
}
|
|
20
|
-
function _FirebaseForm({ submitting, onSubmit, submited, config, submitBtn, btnProps = {}, }, ref) {
|
|
21
|
-
const [form, setform] = useState({});
|
|
22
|
-
const isValid = useMemo(() => !Object.keys(config).some((a) => typeof config[a].validator(form[a], form) === "string"), [form]);
|
|
23
|
-
async function sendContact(_form) {
|
|
24
|
-
onSubmit(_form);
|
|
25
|
-
}
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef, useEffect, useImperativeHandle, useMemo, } from "react";
|
|
3
|
+
import { FormMode } from "./Form.types";
|
|
4
|
+
import { useFieldErrors, useForm } from "./Form.hook";
|
|
5
|
+
import FormField from "./FormField";
|
|
6
|
+
import { useOneUIConfig } from "../../context/OneUIProvider";
|
|
7
|
+
function Form({ questions, initialAnswers = {}, ...props }, ref) {
|
|
8
|
+
const { mode = FormMode.WRITE } = props;
|
|
9
|
+
const { showAllErrors = false } = props;
|
|
10
|
+
const { answers, onAnswerAction, isQuestionsAnswered, isFilesUploaded } = useForm(questions, initialAnswers, mode);
|
|
11
|
+
const errors = useFieldErrors(questions, answers, showAllErrors);
|
|
12
|
+
useEffect(() => {
|
|
13
|
+
if (props.mode !== FormMode.READ_ONLY) {
|
|
14
|
+
props.onFormUpdate(answers, isQuestionsAnswered && isFilesUploaded);
|
|
15
|
+
}
|
|
16
|
+
}, [answers, isQuestionsAnswered, isFilesUploaded]);
|
|
26
17
|
useImperativeHandle(ref, () => ({
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
if (isNumber && Number.isNaN(_value)) {
|
|
43
|
-
_value = undefined;
|
|
44
|
-
}
|
|
45
|
-
setform({
|
|
46
|
-
...form,
|
|
47
|
-
[c]: _value,
|
|
48
|
-
});
|
|
49
|
-
} }));
|
|
50
|
-
case "email":
|
|
51
|
-
return (_jsx(EmailInput, { ...fieldConfig, name: c, hideError: "onfocus", error: form[c] && invalidMessage !== true
|
|
52
|
-
? invalidMessage
|
|
53
|
-
: undefined, placeholder: config[c].placeholder, value: form[c] || "", onChange: (email) => setform({
|
|
54
|
-
...form,
|
|
55
|
-
[c]: email,
|
|
56
|
-
}) }, c));
|
|
57
|
-
case "textarea":
|
|
58
|
-
return (_jsx(Input, { name: c, hideError: "onfocus", error: form[c] && invalidMessage !== true
|
|
59
|
-
? invalidMessage
|
|
60
|
-
: undefined, placeholder: config[c].placeholder, value: form[c] || "", onChange: ({ target: { value } }) => setform({
|
|
61
|
-
...form,
|
|
62
|
-
[c]: value,
|
|
63
|
-
}), multiline: fieldConfig.lines }, c));
|
|
64
|
-
}
|
|
65
|
-
}), typeof submitBtn === "string" ? (_jsxs(Button, { variant: "filled", disabled: submitting || !isValid || submited !== undefined, onClick: () => sendContact(form), ...btnProps, children: [submitBtn, "\u00A0", submitting && _jsx(Loader, {})] })) : (_jsx(AdvancedAction, { config: submitBtn, isValid: isValid, onClick: () => sendContact(form), submitting: submitting, submited: submited, btnProps: btnProps }))] }));
|
|
18
|
+
setAnswer(id, val) {
|
|
19
|
+
onAnswerAction(questions.find((q) => q.id === id).type, id, val);
|
|
20
|
+
},
|
|
21
|
+
}), []);
|
|
22
|
+
const wrapperClasses = useOneUIConfig("component.form.fieldWrapper", {});
|
|
23
|
+
return (_jsx(_Fragment, { children: questions.map((q) => {
|
|
24
|
+
const targetMode = q.readOnly ? FormMode.READ_ONLY : mode;
|
|
25
|
+
const classOrComponentWrapper = wrapperClasses[`${FormMode[targetMode]}-${q.type}`];
|
|
26
|
+
const WrapperComp = useMemo(() => typeof classOrComponentWrapper === "function"
|
|
27
|
+
? classOrComponentWrapper
|
|
28
|
+
: ({ children }) => {
|
|
29
|
+
return (_jsx("div", { className: `${classOrComponentWrapper || ""}`, children: children }, q.id));
|
|
30
|
+
}, [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) })) }));
|
|
32
|
+
}) }));
|
|
66
33
|
}
|
|
67
|
-
|
|
68
|
-
|
|
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);
|
|
69
40
|
//# sourceMappingURL=Form.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Form.js","sourceRoot":"","sources":["../../../src/components/Form/Form.tsx"],"names":[],"mappings":"
|
|
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,EAAE,QAAQ,EAAiB,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,SAAS,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAS7D,SAAS,IAAI,CACX,EAAE,SAAS,EAAE,cAAc,GAAG,EAAE,EAAE,GAAG,KAAK,EAAoB,EAC9D,GAA6B;IAE7B,MAAM,EAAE,IAAI,GAAG,QAAQ,CAAC,KAAK,EAAE,GAAG,KAAK,CAAC;IACxC,MAAM,EAAE,aAAa,GAAG,KAAK,EAAE,GAAG,KAEjC,CAAC;IACF,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,eAAe,EAAE,GACrE,OAAO,CAAC,SAAS,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAG,cAAc,CAAC,SAAS,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IAEjE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,SAAS,EAAE,CAAC;YACtC,KAAK,CAAC,YAAY,CAChB,OAAc,EACd,mBAAmB,IAAI,eAAe,CACvC,CAAC;QACJ,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,mBAAmB,EAAE,eAAe,CAAC,CAAC,CAAC;IAEpD,mBAAmB,CACjB,GAAG,EACH,GAAG,EAAE,CAAC,CAAC;QACL,SAAS,CAAC,EAAE,EAAE,GAAG;YACf,cAAc,CACZ,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAE,CAAC,IAAI,EACxC,EAAE,EACF,GAAU,CACX,CAAC;QACJ,CAAC;KACF,CAAC,EACF,EAAE,CACH,CAAC;IAEF,MAAM,cAAc,GAAG,cAAc,CAAC,6BAA6B,EAAE,EAAE,CAAC,CAAC;IAEzE,OAAO,CACL,4BACG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACnB,MAAM,UAAU,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;YAC1D,MAAM,uBAAuB,GAC3B,cAAc,CACZ,GAAG,QAAQ,CAAC,UAAU,CAA0B,IAAI,CAAC,CAAC,IAAI,EAAE,CAC7D,CAAC;YACJ,MAAM,WAAW,GAAG,OAAO,CACzB,GAAG,EAAE,CACH,OAAO,uBAAuB,KAAK,UAAU;gBAC3C,CAAC,CAAC,uBAAuB;gBACzB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAqB,EAAE,EAAE;oBAClC,OAAO,CACL,cAEE,SAAS,EAAE,GAAG,uBAAuB,IAAI,EAAE,EAAE,YAE5C,QAAQ,IAHJ,CAAC,CAAC,EAAE,CAIL,CACP,CAAC;gBACJ,CAAC,EACP,CAAC,uBAAuB,CAAC,CAC1B,CAAC;YACF,OAAO,CACL,KAAC,WAAW,OAAK,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,YACrC,UAAU,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAC/B,KAAC,SAAS,IACR,MAAM,EAAE,CAAC,EACT,QAAQ,EAAE,cAAc,EACxB,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAQ,EAC3B,KAAK,EAAG,MAAc,CAAC,CAAC,CAAC,EAAE,CAAC,EAC5B,IAAI,EAAE,UAAU,iBACH,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GACzC,CACH,CAAC,CAAC,CAAC,CACF,KAAC,SAAS,IACR,MAAM,EAAE,CAAC,EACT,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAQ,EAC3B,IAAI,EAAE,QAAQ,CAAC,SAAS,iBACX,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GACzC,CACH,GACW,CACf,CAAC;QACJ,CAAC,CAAC,GACD,CACJ,CAAC;AACJ,CAAC;AAED;;;;IAII;AACJ,eAAe,UAAU,CAAC,IAAI,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Form.types.js","sourceRoot":"","sources":["../../../src/components/Form/Form.types.ts"],"names":[],"mappings":"AAgBA,MAAM,CAAN,IAAY,UASX;AATD,WAAY,UAAU;IACpB,oBAAoB;IACpB,iDAAO,CAAA;IACP,+BAA+B;IAC/B,uDAAU,CAAA;IACV,wBAAwB;IACxB,mDAAQ,CAAA;IACR,qBAAqB;IACrB,6CAAK,CAAA;AACP,CAAC,EATW,UAAU,KAAV,UAAU,QASrB;AAED,MAAM,CAAN,IAAY,UASX;AATD,WAAY,UAAU;IACpB,oDAAoD;IACpD,uDAAU,CAAA;IACV,wCAAwC;IACxC,qDAAS,CAAA;IACT,4CAA4C;IAC5C,iDAAO,CAAA;IACP,8BAA8B;IAC9B,6CAAK,CAAA;AACP,CAAC,EATW,UAAU,KAAV,UAAU,QASrB;AAED,MAAM,CAAN,IAAY,QAMX;AAND,WAAY,QAAQ;IAClB,yDAAa,CAAA;IACb,6DAAe,CAAA;IACf,iDAAS,CAAA;IACT,2DAAc,CAAA;IACd,iDAAS,CAAA;AACX,CAAC,EANW,QAAQ,KAAR,QAAQ,QAMnB;AAED,MAAM,CAAN,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,iDAAS,CAAA;IACT,yCAAK,CAAA;AACP,CAAC,EAHW,QAAQ,KAAR,QAAQ,QAGnB;AAsDD,MAAM,CAAN,IAAY,gBAaX;AAbD,WAAY,gBAAgB;IAC1B;;OAEG;IACH,mEAAU,CAAA;IACV;;OAEG;IACH,6DAAO,CAAA;IACP;;OAEG;IACH,iEAAS,CAAA;AACX,CAAC,EAbW,gBAAgB,KAAhB,gBAAgB,QAa3B"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
import { ComponentProps } from "react";
|
|
1
2
|
import { AnswerByField, GenericFormFieldProps } from "../../FormField.types";
|
|
3
|
+
import Input from "../../../../Input";
|
|
2
4
|
/**
|
|
3
5
|
* Allows inputing a date
|
|
4
6
|
**/
|
|
5
|
-
export default function dateFieldFactory(dateFormat: string): ({ onAnswer, question, value, error, }: GenericFormFieldProps<"date">) => import("react/jsx-runtime").JSX.Element;
|
|
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;
|
|
6
8
|
export declare const dateFieldValidatorFactory: (invalidDateLabel: string, requiredFieldLabel: string) => (answer: AnswerByField<{
|
|
7
9
|
type: "date";
|
|
8
10
|
}>) => {
|
package/dist-ts/components/Form/{v2/FormField → FormField}/Extensions/DateField/DateField.js
RENAMED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import InputMask from "react-input-mask";
|
|
3
|
-
import Text from "
|
|
4
|
-
import { useOneUIConfig } from "
|
|
5
|
-
import Input from "
|
|
2
|
+
import InputMask from "@mona-health/react-input-mask";
|
|
3
|
+
import Text from "../../../../Text";
|
|
4
|
+
import { useOneUIConfig } from "../../../../../context/OneUIProvider";
|
|
5
|
+
import Input from "../../../../Input";
|
|
6
6
|
import { isValidated } from "../../../Form.hook";
|
|
7
7
|
/**
|
|
8
8
|
* Allows inputing a date
|
|
9
9
|
**/
|
|
10
10
|
export default function dateFieldFactory(dateFormat) {
|
|
11
|
-
return function DateField({ onAnswer, question, value, error, }) {
|
|
11
|
+
return function DateField({ onAnswer, question, value, error, ...input }) {
|
|
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:
|
|
15
|
+
}, children: _jsx(Input, { placeholder: question.title, error: error, "data-testid": input["data-testid"] }) })] }));
|
|
16
16
|
};
|
|
17
17
|
}
|
|
18
18
|
const parseDate = (formattedDate) => {
|
|
@@ -0,0 +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,EAC0E;QAClF,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,QAAQ,CAAC,KAAK,EAC3B,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,EAAE;IAC1C,MAAM,YAAY,GAAG,aAAa,CAAC;IACnC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACtD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IACvC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,SAAS,CAAC;IACrC,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,EAAE,CACvD,CAAC,MAAuC,EAAE,EAAE;IAC1C,MAAM,YAAY,GAAG,MAAM,IAAI,EAAE,CAAC;IAClC,MAAM,UAAU,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC;IAC3C,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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/components/Form/FormField/Extensions/DateField/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,cAAc,aAAa,CAAC"}
|
package/dist-ts/components/Form/{v2/FormField → FormField}/Extensions/PhoneField/PhoneField.js
RENAMED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useEffect, useMemo } from "react";
|
|
3
|
-
import useModule from "
|
|
4
|
-
import Text from "
|
|
5
|
-
import Input from "
|
|
6
|
-
import { useOneUIConfig } from "
|
|
3
|
+
import useModule from "../../../../../hooks/utility/useModule";
|
|
4
|
+
import Text from "../../../../Text";
|
|
5
|
+
import Input from "../../../../Input";
|
|
6
|
+
import { useOneUIConfig } from "../../../../../context/OneUIProvider";
|
|
7
7
|
/**
|
|
8
8
|
* An extra form field that enables the user to input a phone number
|
|
9
9
|
**/
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PhoneField.js","sourceRoot":"","sources":["../../../../../../src/components/Form/FormField/Extensions/PhoneField/PhoneField.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAQlD,OAAO,SAAS,MAAM,wCAAwC,CAAC;AAC/D,OAAO,IAAI,MAAM,kBAAkB,CAAC;AACpC,OAAO,KAAK,MAAM,mBAAmB,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAEtE;;IAEI;AACJ,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,iBAAyB;IACjE,OAAO,UAAU,EACf,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,KAAK,GAC0B;QAC/B,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;QAC7B,MAAM,EAAE,YAAY,EAAE,GAAG,cAAc,CAAC,gBAAgB,CAAC,CAAC;QAC1D,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACrC,MAAM,cAAc,GAAG,SAAS,CAAC,GAAG,EAAE,CACpC,MAAM,CAAC,uBAAuB,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YAC3C,OAAO,GAAG,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;QAC3C,CAAC,CAAC,CACH,CAAC;QACF,MAAM,EACJ,WAAW,EACX,KAAK,EACL,KAAK,EAAE,UAAU,GAClB,GAAG,OAAO,CAAC,GAAG,EAAE;YACf,IAAI,CAAC,cAAc;gBACjB,OAAO;oBACL,WAAW,EAAE,KAAK;oBAClB,KAAK,EAAE,KAAK;oBACZ,KAAK,EAAE,EAAE;iBACV,CAAC;YACJ,IAAI,CAAC;gBACH,MAAM,aAAa,GAAG,cAAc,CAAC,oBAAoB,CACvD,KAAK,EACL,OAAO,CACR,CAAC;gBACF,MAAM,YAAY,GAAG,cAAc,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;gBACjE,OAAO;oBACL,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC;oBACpD,KAAK,EAAE,YAAY;oBACnB,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB;iBAC7C,CAAC;YACJ,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO;oBACL,WAAW,EAAE,KAAK;oBAClB,KAAK,EAAE,KAAK;oBACZ,KAAK,EAAE,iBAAiB;iBACzB,CAAC;YACJ,CAAC;QACH,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC;QAE5B,SAAS,CAAC,GAAG,EAAE;YACb,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,WAAW,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;QACnE,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;QAEzB,OAAO,CACL,8BACE,KAAC,IAAI,IAAC,IAAI,EAAE,YAAY,YAAG,QAAQ,CAAC,KAAK,GAAQ,EACjD,KAAC,KAAK,IACJ,WAAW,EAAE,QAAQ,CAAC,KAAK,EAC3B,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;wBAClC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;oBAC7D,CAAC,EACD,KAAK,EAAE,KAAe,GACtB,IACD,CACJ,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,MAAwC,EACxC,EAAE;IACF,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACxC,OAAO;QACL,OAAO;QACP,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;KACjB,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/components/Form/FormField/Extensions/PhoneField/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,cAAc,cAAc,CAAC"}
|
|
@@ -1,18 +1,17 @@
|
|
|
1
1
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useEffect, useState } from "react";
|
|
3
3
|
import debounce from "lodash/debounce";
|
|
4
|
-
import Styles from "./FormField.module.scss";
|
|
5
4
|
import { FormMode, } from "./FormField.types";
|
|
6
|
-
import Select from "
|
|
7
|
-
import Input from "
|
|
8
|
-
import OneText from "
|
|
9
|
-
import Button from "
|
|
10
|
-
import Radio from "
|
|
11
|
-
import { AnchoredTooltipAlignment } from "
|
|
12
|
-
import FileInput from "
|
|
13
|
-
import CheckBox from "
|
|
14
|
-
import Spacing from "
|
|
15
|
-
import { useOneUIConfig } from "
|
|
5
|
+
import Select from "../../Select/Select";
|
|
6
|
+
import Input from "../../Input";
|
|
7
|
+
import OneText from "../../Text";
|
|
8
|
+
import Button from "../../Button";
|
|
9
|
+
import Radio from "../../Radio";
|
|
10
|
+
import { AnchoredTooltipAlignment } from "../../AnchoredTooltip/AnchoredTooltip";
|
|
11
|
+
import FileInput from "../../FileInput/FileInput";
|
|
12
|
+
import CheckBox from "../../CheckBox/CheckBox";
|
|
13
|
+
import Spacing from "../../Spacing";
|
|
14
|
+
import { useOneUIConfig } from "../../../context/OneUIProvider";
|
|
16
15
|
// import InputMask from "react-input-mask";
|
|
17
16
|
/**
|
|
18
17
|
* The logic for a field of the form
|
|
@@ -41,14 +40,14 @@ export default function FormField({ config: c, value, ...props }) {
|
|
|
41
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" })] }));
|
|
42
41
|
default:
|
|
43
42
|
const answer = val();
|
|
44
|
-
return (_jsxs(_Fragment, { children: [_jsx(OneText, { type: titleVariant, children: c.title }), _jsx(OneText, { type: labelVariant,
|
|
43
|
+
return (_jsxs(_Fragment, { children: [_jsx(OneText, { type: titleVariant, children: c.title }), _jsx(OneText, { type: labelVariant, "data-testid": props["data-testid"], children: answer || "-" })] }));
|
|
45
44
|
}
|
|
46
45
|
}
|
|
47
46
|
const { onAnswer, error } = props;
|
|
48
47
|
switch (type) {
|
|
49
48
|
case "accept":
|
|
50
49
|
const checks = val() || [];
|
|
51
|
-
return (_jsxs(_Fragment, { children: [_jsxs("div", {
|
|
50
|
+
return (_jsxs(_Fragment, { children: [_jsxs("div", { children: [_jsxs("div", { children: [_jsx(OneText, { type: titleVariant, children: c.title }), _jsx("br", {}), _jsx(Button, { variant: "link", color: "primary", onClick: c.contract.action, children: c.contract.label })] }), error && (_jsxs("div", { children: [_jsx(OneText, { type: "caption", color: "error", children: error }), _jsx("br", {})] })), _jsx("div", { children: c.accept.map((a, i) => (_jsx(OneText, { type: labelVariant, children: _jsx(CheckBox, { label: _jsx("span", { children: _jsxs(_Fragment, { children: [a.label, a.optional ? (_jsxs(_Fragment, { children: [_jsx("br", {}), _jsx(OneText, { type: "caption", children: optionalLabel })] })) : ("")] }) }), checked: checks[i], onToggle: (checked) => {
|
|
52
51
|
const clone = [...checks];
|
|
53
52
|
clone[i] = checked;
|
|
54
53
|
onAnswer(type, c.id, ans(clone));
|
|
@@ -93,7 +92,7 @@ export default function FormField({ config: c, value, ...props }) {
|
|
|
93
92
|
}, file: upload, progress: upload ? progress || 0 : undefined, accept: c.extensions.map((x) => `.${x}`).join(",") }), error ? (_jsx(OneText, { type: "caption", color: "error", children: error })) : null, _jsx(Spacing, { size: "large" })] }));
|
|
94
93
|
case "radio":
|
|
95
94
|
const selected = val();
|
|
96
|
-
return (_jsxs(_Fragment, { children: [_jsx(OneText, { type: titleVariant, children: c.title }), error && (_jsx(OneText, { type: "caption", color: "error", children: error })), _jsx("br", {}), c.options.map((el) => (_jsxs(_Fragment, { children: [_jsx(OneText, { type: labelVariant, children: _jsx(Radio, { checked: selected === el.value, label: el.label, onToggle: () => onAnswer(type, c.id, el.value), groupId: c.id, value: el.value }) }), _jsx("br", {})] })))] }));
|
|
95
|
+
return (_jsxs(_Fragment, { children: [_jsx(OneText, { type: titleVariant, children: c.title }), error && (_jsx(OneText, { type: "caption", color: "error", children: error })), _jsx("br", {}), c.options.map((el) => (_jsxs(_Fragment, { children: [_jsx(OneText, { type: labelVariant, children: _jsx(Radio, { checked: selected === el.value, label: el.label, onToggle: () => onAnswer(type, c.id, el.value), groupId: c.id, value: el.value, "data-testid": props["data-testid"] }) }), _jsx("br", {})] })))] }));
|
|
97
96
|
case "check":
|
|
98
97
|
const checkError = typeof error === "string" ? c.options.map(() => error) : error;
|
|
99
98
|
const checkmarks = val() || [];
|
|
@@ -120,12 +119,12 @@ export default function FormField({ config: c, value, ...props }) {
|
|
|
120
119
|
: (val) => val;
|
|
121
120
|
return (_jsxs(_Fragment, { children: [_jsx(OneText, { type: titleVariant, children: c.title }), _jsx(Input, { multiline: "multiline" in c ? c.multiline : undefined, placeholder: c.title, value: val(), error: error, onChange: ({ target: { value } }) => {
|
|
122
121
|
onAnswer(type, c.id, filter(value));
|
|
123
|
-
} })] }));
|
|
122
|
+
}, "data-testid": props["data-testid"] })] }));
|
|
124
123
|
default:
|
|
125
124
|
const registeredExtension = extensions?.[type];
|
|
126
125
|
if (registeredExtension) {
|
|
127
126
|
const { Input } = registeredExtension;
|
|
128
|
-
return (_jsx(Input, { onAnswer: onAnswer, question: c, value: value, error: error }));
|
|
127
|
+
return (_jsx(Input, { onAnswer: onAnswer, question: c, value: value, error: error, "data-testid": props["data-testid"] }));
|
|
129
128
|
}
|
|
130
129
|
throw new Error(`The form field "${type}" is not implemented yet. Please provide it using OneUIProvider config options for form extensions`);
|
|
131
130
|
}
|