@preply/ds-web-core 0.48.0 → 0.49.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/accessibility/aria/types.d.ts +8 -0
- package/dist/accessibility/aria/types.js +2 -0
- package/dist/accessibility/aria/utils.d.ts +2 -2
- package/dist/accessibility/aria/utils.js +1 -1
- package/dist/field/hooks/useTextField.d.ts +8 -4
- package/dist/field/hooks/useTextField.js +8 -5
- package/dist/field/types.d.ts +31 -11
- package/dist/generated/breakpoints.less +1 -1
- package/dist/generated/options.less +3 -3
- package/dist/generated/tokens.less +16 -3
- package/dist/icon/index.d.ts +1 -0
- package/dist/icon/index.js +2 -0
- package/dist/icon/types.d.ts +10 -0
- package/dist/icon/types.js +2 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +4 -2
- package/dist/input/index.d.ts +2 -1
- package/dist/input/index.js +3 -2
- package/dist/input/options.d.ts +1 -1
- package/dist/input/options.js +1 -1
- package/dist/input/private/types.d.ts +103 -0
- package/dist/input/private/types.js +2 -0
- package/dist/input/private/utils.d.ts +9 -0
- package/dist/input/private/utils.js +87 -0
- package/dist/input/types.d.ts +38 -100
- package/dist/input/utils/getInputProps.d.ts +3 -0
- package/dist/input/utils/getInputProps.js +14 -0
- package/dist/input/{util.d.ts → utils/useForcedRef.d.ts} +0 -0
- package/dist/input/utils/useForcedRef.js +11 -0
- package/dist/layout/hooks/useLayoutFlexClassNames.js +11 -3
- package/dist/layout/hooks/useLayoutGridClassNames.js +11 -3
- package/dist/layout/index.d.ts +1 -0
- package/dist/layout/index.js +2 -1
- package/dist/layout/module-layout-relative/hooks/useLayoutRelativeClassnames.d.ts +3 -0
- package/dist/layout/module-layout-relative/hooks/useLayoutRelativeClassnames.js +14 -0
- package/dist/layout/module-layout-relative/index.d.ts +1 -0
- package/dist/layout/module-layout-relative/index.js +2 -0
- package/dist/layout/module-layout-relative/style/index.module.less +5 -0
- package/dist/layout/module-layout-relative/style/index.module.less.js +9 -0
- package/dist/layout/module-layout-relative/style/mixins.less +5 -0
- package/dist/layout/module-layout-relative/style/mixins.less.js +8 -0
- package/dist/svg/index.d.ts +1 -0
- package/dist/svg/index.js +2 -0
- package/dist/svg/types.d.ts +2 -0
- package/dist/svg/types.js +2 -0
- package/dist/theme/style/declarations.mixins.less +5 -0
- package/package.json +6 -6
- package/dist/input/util.js +0 -11
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export declare type ARIAAttributeNames = 'aria-describedby' | 'aria-disabled' | 'aria-invalid' | 'aria-required';
|
|
3
|
+
declare type WithRequired<T, K extends keyof T> = T & {
|
|
4
|
+
[P in K]-?: T[P];
|
|
5
|
+
};
|
|
6
|
+
export declare type ARIAInputPropsMap = WithRequired<ARIAInputProps, ARIAAttributeNames>;
|
|
7
|
+
export declare type ARIAInputProps = Pick<React.HTMLAttributes<HTMLInputElement>, ARIAAttributeNames>;
|
|
8
|
+
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import
|
|
2
|
+
import { InputCommonProps } from '../../input/private/types';
|
|
3
3
|
export declare const makeDescId: (id: string) => string;
|
|
4
|
-
export declare const getAriaProps: ({ "aria-describedby": ariaDescribedBy, "aria-disabled": ariaDisabled, "aria-invalid": ariaInvalid, "aria-required": ariaRequired, required, disabled, hasError, }: InputCommonProps) => Pick<import("react").HTMLAttributes<HTMLInputElement>, "
|
|
4
|
+
export declare const getAriaProps: ({ "aria-describedby": ariaDescribedBy, "aria-disabled": ariaDisabled, "aria-invalid": ariaInvalid, "aria-required": ariaRequired, required, disabled, hasError, }: InputCommonProps) => Pick<import("react").HTMLAttributes<HTMLInputElement>, import("./types").ARIAAttributeNames>;
|
|
@@ -19,4 +19,4 @@ const getAriaProps = ({ 'aria-describedby': ariaDescribedBy, 'aria-disabled': ar
|
|
|
19
19
|
};
|
|
20
20
|
|
|
21
21
|
export { getAriaProps, makeDescId };
|
|
22
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hY2Nlc3NpYmlsaXR5L2FyaWEvdXRpbHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5wdXRDb21tb25Qcm9wcyB9IGZyb20gJy4uLy4uL2lucHV0L3ByaXZhdGUvdHlwZXMnO1xuXG5pbXBvcnQgeyBBUklBSW5wdXRQcm9wcywgQVJJQUlucHV0UHJvcHNNYXAgfSBmcm9tICcuL3R5cGVzJztcblxuY29uc3QgU1VGSVggPSAnLWRlc2MnO1xuXG5jb25zdCByZW1vdmVGYWxzeVByb3BlcnRpZXMgPSAocHJvcHM6IEFSSUFJbnB1dFByb3BzTWFwKTogQVJJQUlucHV0UHJvcHMgPT4ge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyhwcm9wcykucmVkdWNlKChhY2MsIGtleSkgPT4ge1xuICAgICAgICBpZiAocHJvcHNba2V5XSkge1xuICAgICAgICAgICAgYWNjW2tleV0gPSBwcm9wc1trZXldO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgfSwge30pO1xufTtcblxuZXhwb3J0IGNvbnN0IG1ha2VEZXNjSWQgPSAoaWQ6IHN0cmluZyk6IHN0cmluZyA9PiBgJHtpZH0ke1NVRklYfWA7XG5cbmV4cG9ydCBjb25zdCBnZXRBcmlhUHJvcHMgPSAoe1xuICAgICdhcmlhLWRlc2NyaWJlZGJ5JzogYXJpYURlc2NyaWJlZEJ5LFxuICAgICdhcmlhLWRpc2FibGVkJzogYXJpYURpc2FibGVkLFxuICAgICdhcmlhLWludmFsaWQnOiBhcmlhSW52YWxpZCxcbiAgICAnYXJpYS1yZXF1aXJlZCc6IGFyaWFSZXF1aXJlZCxcbiAgICByZXF1aXJlZCxcbiAgICBkaXNhYmxlZCxcbiAgICBoYXNFcnJvcixcbn06IElucHV0Q29tbW9uUHJvcHMpOiBBUklBSW5wdXRQcm9wcyA9PiB7XG4gICAgY29uc3QgcHJvcHMgPSB7XG4gICAgICAgICdhcmlhLWRlc2NyaWJlZGJ5JzogYXJpYURlc2NyaWJlZEJ5IHx8ICcnLFxuICAgICAgICAnYXJpYS1kaXNhYmxlZCc6ICEhYXJpYURpc2FibGVkIHx8ICEhZGlzYWJsZWQsXG4gICAgICAgICdhcmlhLWludmFsaWQnOiAhIWFyaWFJbnZhbGlkIHx8ICEhaGFzRXJyb3IsXG4gICAgICAgICdhcmlhLXJlcXVpcmVkJzogISFhcmlhUmVxdWlyZWQgfHwgISFyZXF1aXJlZCxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHJlbW92ZUZhbHN5UHJvcGVydGllcyhwcm9wcyk7XG59O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQztBQUV0QixNQUFNLHFCQUFxQixHQUFHLENBQUMsS0FBd0I7SUFDbkQsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHO1FBQ3RDLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ1osR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUN6QjtRQUNELE9BQU8sR0FBRyxDQUFDO0tBQ2QsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUNYLENBQUMsQ0FBQztNQUVXLFVBQVUsR0FBRyxDQUFDLEVBQVUsS0FBYSxHQUFHLEVBQUUsR0FBRyxLQUFLLEdBQUc7TUFFckQsWUFBWSxHQUFHLENBQUMsRUFDekIsa0JBQWtCLEVBQUUsZUFBZSxFQUNuQyxlQUFlLEVBQUUsWUFBWSxFQUM3QixjQUFjLEVBQUUsV0FBVyxFQUMzQixlQUFlLEVBQUUsWUFBWSxFQUM3QixRQUFRLEVBQ1IsUUFBUSxFQUNSLFFBQVEsR0FDTztJQUNmLE1BQU0sS0FBSyxHQUFHO1FBQ1Ysa0JBQWtCLEVBQUUsZUFBZSxJQUFJLEVBQUU7UUFDekMsZUFBZSxFQUFFLENBQUMsQ0FBQyxZQUFZLElBQUksQ0FBQyxDQUFDLFFBQVE7UUFDN0MsY0FBYyxFQUFFLENBQUMsQ0FBQyxXQUFXLElBQUksQ0FBQyxDQUFDLFFBQVE7UUFDM0MsZUFBZSxFQUFFLENBQUMsQ0FBQyxZQUFZLElBQUksQ0FBQyxDQUFDLFFBQVE7S0FDaEQsQ0FBQztJQUVGLE9BQU8scUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDeEM7Ozs7In0=
|
|
@@ -1,8 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { FieldLayoutProps
|
|
1
|
+
import type { InputTextProps } from '../../input';
|
|
2
|
+
import type { FieldLayoutProps } from '../types';
|
|
3
3
|
declare type UseTextFieldState = {
|
|
4
4
|
layoutProps: Omit<FieldLayoutProps, 'input' | 'className' | 'inputHandle'>;
|
|
5
|
-
inputProps:
|
|
5
|
+
inputProps: InputTextProps;
|
|
6
6
|
};
|
|
7
|
-
export declare const useTextField: (props:
|
|
7
|
+
export declare const useTextField: (props: import("../types").SingleLineFieldCommonProps & Pick<InputTextProps, "required" | "disabled" | "hasError" | "dataset" | "autoComplete" | "placeholder" | "maxLength" | "name" | "value" | "defaultValue" | "onChange" | "onFocus" | "onBlur" | "onClick" | "onKeyDown" | "onKeyUp" | "onValueChange"> & {
|
|
8
|
+
id?: string | undefined;
|
|
9
|
+
} & {
|
|
10
|
+
type?: "email" | "tel" | "url" | "text" | "search" | undefined;
|
|
11
|
+
} & Pick<InputTextProps, "required" | "disabled" | "hasError" | "dataset" | "type" | "aria-describedby" | "aria-disabled" | "aria-invalid" | "aria-required" | "autoComplete" | "placeholder" | "maxLength" | "name" | "value" | "defaultValue" | "onChange" | "onFocus" | "onBlur" | "onClick" | "onKeyDown" | "onKeyUp" | "onValueChange">) => UseTextFieldState;
|
|
8
12
|
export {};
|
|
@@ -2,9 +2,10 @@ import { makeTinyId } from '@preply/ds-core';
|
|
|
2
2
|
import { useState } from 'react';
|
|
3
3
|
import { makeDescId } from '../../accessibility/aria/utils.js';
|
|
4
4
|
import { FIELD_TYPE_DEFAULT } from '../constants.js';
|
|
5
|
+
import { AUTO_COMPLETE_TEXT_DEFAULT } from '../../input/constants.js';
|
|
5
6
|
|
|
6
7
|
const useTextField = (props) => {
|
|
7
|
-
const { type, id, value, label, hideLabel,
|
|
8
|
+
const { type, id, value, label, hideLabel, preserveSpace, required, requiredLabel, additionalText, disabled, hasError, errorMessage, icon, button, onFocus, onBlur, onChange, autoComplete = AUTO_COMPLETE_TEXT_DEFAULT, inputDataset, dataset, ...rest } = props;
|
|
8
9
|
const actualId = id || makeTinyId();
|
|
9
10
|
const actualType = type !== null && type !== void 0 ? type : FIELD_TYPE_DEFAULT;
|
|
10
11
|
const [isFocused, setIsFocused] = useState(false);
|
|
@@ -31,15 +32,16 @@ const useTextField = (props) => {
|
|
|
31
32
|
id: actualId,
|
|
32
33
|
label,
|
|
33
34
|
hideLabel,
|
|
34
|
-
additionalText: actualAdditionalText,
|
|
35
35
|
required,
|
|
36
|
+
requiredLabel,
|
|
37
|
+
additionalText: actualAdditionalText,
|
|
38
|
+
preserveSpace,
|
|
36
39
|
disabled,
|
|
37
40
|
isFocused,
|
|
38
41
|
isTouched,
|
|
39
42
|
isChanged,
|
|
40
43
|
hasValue: typeof value !== undefined,
|
|
41
44
|
hasError: actualHasError,
|
|
42
|
-
preserveSpace,
|
|
43
45
|
icon,
|
|
44
46
|
button,
|
|
45
47
|
dataset,
|
|
@@ -48,13 +50,14 @@ const useTextField = (props) => {
|
|
|
48
50
|
type: actualType,
|
|
49
51
|
id: actualId,
|
|
50
52
|
value,
|
|
51
|
-
// assitiveText: hideVisualLabel ?? label : undefined,
|
|
52
53
|
onChange: handleChange,
|
|
53
54
|
onFocus: handleFocus,
|
|
54
55
|
onBlur: handleBlur,
|
|
55
56
|
required,
|
|
56
57
|
disabled,
|
|
57
58
|
hasError: actualHasError,
|
|
59
|
+
autoComplete,
|
|
60
|
+
dataset: inputDataset,
|
|
58
61
|
'aria-describedby': describeId,
|
|
59
62
|
...rest,
|
|
60
63
|
},
|
|
@@ -62,4 +65,4 @@ const useTextField = (props) => {
|
|
|
62
65
|
};
|
|
63
66
|
|
|
64
67
|
export { useTextField };
|
|
65
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
68
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlVGV4dEZpZWxkLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZmllbGQvaG9va3MvdXNlVGV4dEZpZWxkLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1ha2VUaW55SWQgfSBmcm9tICdAcHJlcGx5L2RzLWNvcmUnO1xuaW1wb3J0IHsgQ2hhbmdlRXZlbnRIYW5kbGVyLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IHsgbWFrZURlc2NJZCB9IGZyb20gJy4uLy4uL2FjY2Vzc2liaWxpdHkvYXJpYS91dGlscyc7XG5pbXBvcnQgdHlwZSB7IEZvY3VzRXZlbnRIYW5kbGVyIH0gZnJvbSAnLi4vLi4vZXZlbnRzJztcbmltcG9ydCB0eXBlIHsgSW5wdXRUZXh0UHJvcHMgfSBmcm9tICcuLi8uLi9pbnB1dCc7XG5pbXBvcnQgeyBBVVRPX0NPTVBMRVRFX1RFWFRfREVGQVVMVCB9IGZyb20gJy4uLy4uL2lucHV0JztcbmltcG9ydCB7IEZJRUxEX1RZUEVfREVGQVVMVCB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgdHlwZSB7IEZpZWxkTGF5b3V0UHJvcHMsIFRleHRGaWVsZFByb3BzIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG50eXBlIFVzZVRleHRGaWVsZFN0YXRlID0ge1xuICAgIGxheW91dFByb3BzOiBPbWl0PEZpZWxkTGF5b3V0UHJvcHMsICdpbnB1dCcgfCAnY2xhc3NOYW1lJyB8ICdpbnB1dEhhbmRsZSc+O1xuICAgIGlucHV0UHJvcHM6IElucHV0VGV4dFByb3BzO1xufTtcblxuZXhwb3J0IGNvbnN0IHVzZVRleHRGaWVsZCA9IChcbiAgICBwcm9wczogVGV4dEZpZWxkUHJvcHMgJiBPbWl0PElucHV0VGV4dFByb3BzLCAnaWQnPixcbik6IFVzZVRleHRGaWVsZFN0YXRlID0+IHtcbiAgICBjb25zdCB7XG4gICAgICAgIHR5cGUsXG4gICAgICAgIGlkLFxuICAgICAgICB2YWx1ZSxcbiAgICAgICAgbGFiZWwsXG4gICAgICAgIGhpZGVMYWJlbCxcbiAgICAgICAgcHJlc2VydmVTcGFjZSxcbiAgICAgICAgcmVxdWlyZWQsXG4gICAgICAgIHJlcXVpcmVkTGFiZWwsXG4gICAgICAgIGFkZGl0aW9uYWxUZXh0LFxuICAgICAgICBkaXNhYmxlZCxcbiAgICAgICAgaGFzRXJyb3IsXG4gICAgICAgIGVycm9yTWVzc2FnZSxcbiAgICAgICAgaWNvbixcbiAgICAgICAgYnV0dG9uLFxuICAgICAgICBvbkZvY3VzLFxuICAgICAgICBvbkJsdXIsXG4gICAgICAgIG9uQ2hhbmdlLFxuICAgICAgICBhdXRvQ29tcGxldGUgPSBBVVRPX0NPTVBMRVRFX1RFWFRfREVGQVVMVCxcbiAgICAgICAgaW5wdXREYXRhc2V0LFxuICAgICAgICBkYXRhc2V0LFxuICAgICAgICAuLi5yZXN0XG4gICAgfSA9IHByb3BzO1xuXG4gICAgY29uc3QgYWN0dWFsSWQgPSBpZCB8fCBtYWtlVGlueUlkKCk7XG4gICAgY29uc3QgYWN0dWFsVHlwZSA9IHR5cGUgPz8gRklFTERfVFlQRV9ERUZBVUxUO1xuICAgIGNvbnN0IFtpc0ZvY3VzZWQsIHNldElzRm9jdXNlZF0gPSB1c2VTdGF0ZTxib29sZWFuPihmYWxzZSk7XG4gICAgY29uc3QgW2lzVG91Y2hlZCwgc2V0SXNUb3VjaGVkXSA9IHVzZVN0YXRlPGJvb2xlYW4+KGZhbHNlKTtcbiAgICBjb25zdCBbaXNDaGFuZ2VkLCBzZXRJc0NoYW5nZWRdID0gdXNlU3RhdGU8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgY29uc3QgaGFuZGxlRm9jdXM6IEZvY3VzRXZlbnRIYW5kbGVyID0gZXYgPT4ge1xuICAgICAgICBzZXRJc0ZvY3VzZWQodHJ1ZSk7XG4gICAgICAgIHNldElzVG91Y2hlZCh0cnVlKTtcbiAgICAgICAgb25Gb2N1cz8uKGV2KTtcbiAgICB9O1xuICAgIGNvbnN0IGhhbmRsZUJsdXI6IEZvY3VzRXZlbnRIYW5kbGVyID0gZXYgPT4ge1xuICAgICAgICBzZXRJc0ZvY3VzZWQoZmFsc2UpO1xuICAgICAgICBvbkJsdXI/Lihldik7XG4gICAgfTtcbiAgICBjb25zdCBoYW5kbGVDaGFuZ2U6IENoYW5nZUV2ZW50SGFuZGxlciA9IGV2ID0+IHtcbiAgICAgICAgc2V0SXNDaGFuZ2VkKGZhbHNlKTtcbiAgICAgICAgb25DaGFuZ2U/Lihldik7XG4gICAgfTtcblxuICAgIGNvbnN0IGFjdHVhbEhhc0Vycm9yID0gaGFzRXJyb3IgfHwgISFlcnJvck1lc3NhZ2U7XG4gICAgY29uc3QgYWN0dWFsQWRkaXRpb25hbFRleHQgPSBlcnJvck1lc3NhZ2UgfHwgYWRkaXRpb25hbFRleHQ7XG4gICAgY29uc3QgZGVzY3JpYmVJZCA9IGFjdHVhbEhhc0Vycm9yIHx8ICEhYWRkaXRpb25hbFRleHQgPyBtYWtlRGVzY0lkKGFjdHVhbElkKSA6IHVuZGVmaW5lZDtcblxuICAgIHJldHVybiB7XG4gICAgICAgIGxheW91dFByb3BzOiB7XG4gICAgICAgICAgICBpZDogYWN0dWFsSWQsXG4gICAgICAgICAgICBsYWJlbCxcbiAgICAgICAgICAgIGhpZGVMYWJlbCxcbiAgICAgICAgICAgIHJlcXVpcmVkLFxuICAgICAgICAgICAgcmVxdWlyZWRMYWJlbCxcbiAgICAgICAgICAgIGFkZGl0aW9uYWxUZXh0OiBhY3R1YWxBZGRpdGlvbmFsVGV4dCxcbiAgICAgICAgICAgIHByZXNlcnZlU3BhY2UsXG4gICAgICAgICAgICBkaXNhYmxlZCxcbiAgICAgICAgICAgIGlzRm9jdXNlZCxcbiAgICAgICAgICAgIGlzVG91Y2hlZCxcbiAgICAgICAgICAgIGlzQ2hhbmdlZCxcbiAgICAgICAgICAgIGhhc1ZhbHVlOiB0eXBlb2YgdmFsdWUgIT09IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGhhc0Vycm9yOiBhY3R1YWxIYXNFcnJvcixcbiAgICAgICAgICAgIGljb24sXG4gICAgICAgICAgICBidXR0b24sXG4gICAgICAgICAgICBkYXRhc2V0LFxuICAgICAgICB9LFxuICAgICAgICBpbnB1dFByb3BzOiB7XG4gICAgICAgICAgICB0eXBlOiBhY3R1YWxUeXBlLFxuICAgICAgICAgICAgaWQ6IGFjdHVhbElkLFxuICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgICBvbkNoYW5nZTogaGFuZGxlQ2hhbmdlLFxuICAgICAgICAgICAgb25Gb2N1czogaGFuZGxlRm9jdXMsXG4gICAgICAgICAgICBvbkJsdXI6IGhhbmRsZUJsdXIsXG4gICAgICAgICAgICByZXF1aXJlZCxcbiAgICAgICAgICAgIGRpc2FibGVkLFxuICAgICAgICAgICAgaGFzRXJyb3I6IGFjdHVhbEhhc0Vycm9yLFxuICAgICAgICAgICAgYXV0b0NvbXBsZXRlLFxuICAgICAgICAgICAgZGF0YXNldDogaW5wdXREYXRhc2V0LFxuICAgICAgICAgICAgJ2FyaWEtZGVzY3JpYmVkYnknOiBkZXNjcmliZUlkLFxuICAgICAgICAgICAgLi4ucmVzdCxcbiAgICAgICAgfSxcbiAgICB9O1xufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7TUFlYSxZQUFZLEdBQUcsQ0FDeEIsS0FBa0Q7SUFFbEQsTUFBTSxFQUNGLElBQUksRUFDSixFQUFFLEVBQ0YsS0FBSyxFQUNMLEtBQUssRUFDTCxTQUFTLEVBQ1QsYUFBYSxFQUNiLFFBQVEsRUFDUixhQUFhLEVBQ2IsY0FBYyxFQUNkLFFBQVEsRUFDUixRQUFRLEVBQ1IsWUFBWSxFQUNaLElBQUksRUFDSixNQUFNLEVBQ04sT0FBTyxFQUNQLE1BQU0sRUFDTixRQUFRLEVBQ1IsWUFBWSxHQUFHLDBCQUEwQixFQUN6QyxZQUFZLEVBQ1osT0FBTyxFQUNQLEdBQUcsSUFBSSxFQUNWLEdBQUcsS0FBSyxDQUFDO0lBRVYsTUFBTSxRQUFRLEdBQUcsRUFBRSxJQUFJLFVBQVUsRUFBRSxDQUFDO0lBQ3BDLE1BQU0sVUFBVSxHQUFHLElBQUksYUFBSixJQUFJLGNBQUosSUFBSSxHQUFJLGtCQUFrQixDQUFDO0lBQzlDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsWUFBWSxDQUFDLEdBQUcsUUFBUSxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBQzNELE1BQU0sQ0FBQyxTQUFTLEVBQUUsWUFBWSxDQUFDLEdBQUcsUUFBUSxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBQzNELE1BQU0sQ0FBQyxTQUFTLEVBQUUsWUFBWSxDQUFDLEdBQUcsUUFBUSxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBRTNELE1BQU0sV0FBVyxHQUFzQixFQUFFO1FBQ3JDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQixZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkIsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFHLEVBQUUsRUFBRTtLQUNqQixDQUFDO0lBQ0YsTUFBTSxVQUFVLEdBQXNCLEVBQUU7UUFDcEMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BCLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRyxFQUFFLEVBQUU7S0FDaEIsQ0FBQztJQUNGLE1BQU0sWUFBWSxHQUF1QixFQUFFO1FBQ3ZDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwQixRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUcsRUFBRSxFQUFFO0tBQ2xCLENBQUM7SUFFRixNQUFNLGNBQWMsR0FBRyxRQUFRLElBQUksQ0FBQyxDQUFDLFlBQVksQ0FBQztJQUNsRCxNQUFNLG9CQUFvQixHQUFHLFlBQVksSUFBSSxjQUFjLENBQUM7SUFDNUQsTUFBTSxVQUFVLEdBQUcsY0FBYyxJQUFJLENBQUMsQ0FBQyxjQUFjLEdBQUcsVUFBVSxDQUFDLFFBQVEsQ0FBQyxHQUFHLFNBQVMsQ0FBQztJQUV6RixPQUFPO1FBQ0gsV0FBVyxFQUFFO1lBQ1QsRUFBRSxFQUFFLFFBQVE7WUFDWixLQUFLO1lBQ0wsU0FBUztZQUNULFFBQVE7WUFDUixhQUFhO1lBQ2IsY0FBYyxFQUFFLG9CQUFvQjtZQUNwQyxhQUFhO1lBQ2IsUUFBUTtZQUNSLFNBQVM7WUFDVCxTQUFTO1lBQ1QsU0FBUztZQUNULFFBQVEsRUFBRSxPQUFPLEtBQUssS0FBSyxTQUFTO1lBQ3BDLFFBQVEsRUFBRSxjQUFjO1lBQ3hCLElBQUk7WUFDSixNQUFNO1lBQ04sT0FBTztTQUNWO1FBQ0QsVUFBVSxFQUFFO1lBQ1IsSUFBSSxFQUFFLFVBQVU7WUFDaEIsRUFBRSxFQUFFLFFBQVE7WUFDWixLQUFLO1lBQ0wsUUFBUSxFQUFFLFlBQVk7WUFDdEIsT0FBTyxFQUFFLFdBQVc7WUFDcEIsTUFBTSxFQUFFLFVBQVU7WUFDbEIsUUFBUTtZQUNSLFFBQVE7WUFDUixRQUFRLEVBQUUsY0FBYztZQUN4QixZQUFZO1lBQ1osT0FBTyxFQUFFLFlBQVk7WUFDckIsa0JBQWtCLEVBQUUsVUFBVTtZQUM5QixHQUFHLElBQUk7U0FDVjtLQUNKLENBQUM7QUFDTjs7OzsifQ==
|
package/dist/field/types.d.ts
CHANGED
|
@@ -1,8 +1,20 @@
|
|
|
1
|
-
import { Dataset } from '@preply/ds-core';
|
|
2
|
-
import { MouseEventHandler, ReactNode
|
|
3
|
-
import {
|
|
1
|
+
import type { Dataset } from '@preply/ds-core';
|
|
2
|
+
import type { MouseEventHandler, ReactNode } from 'react';
|
|
3
|
+
import { IconProps } from '../icon/types';
|
|
4
|
+
import type { CombinableInputProps, InputType, SimpleTextInputType, SingleLineInputType } from '../input/private/types';
|
|
5
|
+
import type { InputTextProps } from '../input/types';
|
|
6
|
+
import { ReactSVGComponentType } from '../svg/types';
|
|
4
7
|
export declare type FieldValue = string | number | boolean;
|
|
5
|
-
|
|
8
|
+
/**
|
|
9
|
+
* <Field*> auxiliary component
|
|
10
|
+
*/
|
|
11
|
+
export interface FieldLabelProps {
|
|
12
|
+
id: string;
|
|
13
|
+
label?: string;
|
|
14
|
+
hideLabel?: boolean;
|
|
15
|
+
required?: boolean;
|
|
16
|
+
requiredLabel?: string;
|
|
17
|
+
}
|
|
6
18
|
export interface FieldButtonProps {
|
|
7
19
|
svg: ReactSVGComponentType;
|
|
8
20
|
assistiveText: string;
|
|
@@ -14,9 +26,10 @@ export interface FieldLayoutBaseProps {
|
|
|
14
26
|
className?: string;
|
|
15
27
|
label: string;
|
|
16
28
|
hideLabel?: boolean;
|
|
29
|
+
required?: boolean;
|
|
30
|
+
requiredLabel?: string;
|
|
17
31
|
additionalText?: string;
|
|
18
32
|
preserveSpace?: boolean;
|
|
19
|
-
required?: boolean;
|
|
20
33
|
disabled?: boolean;
|
|
21
34
|
isFocused?: boolean;
|
|
22
35
|
isTouched?: boolean;
|
|
@@ -27,12 +40,12 @@ export interface FieldLayoutBaseProps {
|
|
|
27
40
|
children: ReactNode;
|
|
28
41
|
}
|
|
29
42
|
export interface InputImperativeHandle {
|
|
30
|
-
|
|
43
|
+
setFocus: () => void;
|
|
31
44
|
}
|
|
32
45
|
export interface FieldLayoutProps extends Omit<FieldLayoutBaseProps, 'children'> {
|
|
33
46
|
input: React.ReactElement;
|
|
34
47
|
inputHandle: InputImperativeHandle | null;
|
|
35
|
-
icon?:
|
|
48
|
+
icon?: React.ReactElement<IconProps>;
|
|
36
49
|
button?: React.ReactElement<FieldButtonProps>;
|
|
37
50
|
}
|
|
38
51
|
export declare type FieldAdditionalTextVariant = 'normal' | 'error';
|
|
@@ -41,10 +54,14 @@ export interface FieldAdditionalTextProps {
|
|
|
41
54
|
id?: string;
|
|
42
55
|
children: ReactNode;
|
|
43
56
|
}
|
|
57
|
+
/**
|
|
58
|
+
* <Field*>
|
|
59
|
+
*/
|
|
44
60
|
interface FieldCommonProps {
|
|
45
61
|
type?: InputType;
|
|
46
62
|
id?: string;
|
|
47
63
|
label: string;
|
|
64
|
+
requiredLabel?: string;
|
|
48
65
|
hideLabel?: boolean;
|
|
49
66
|
additionalText?: string;
|
|
50
67
|
preserveSpace?: boolean;
|
|
@@ -53,12 +70,15 @@ interface FieldCommonProps {
|
|
|
53
70
|
dataset?: Dataset;
|
|
54
71
|
inputDataset?: Dataset;
|
|
55
72
|
}
|
|
56
|
-
interface SingleLineFieldCommonProps extends FieldCommonProps {
|
|
73
|
+
export interface SingleLineFieldCommonProps extends FieldCommonProps {
|
|
57
74
|
type?: SingleLineInputType;
|
|
58
|
-
icon?:
|
|
75
|
+
icon?: React.ReactElement<IconProps>;
|
|
59
76
|
button?: React.ReactElement<FieldButtonProps>;
|
|
60
77
|
}
|
|
61
|
-
|
|
78
|
+
/**
|
|
79
|
+
* public <*Field> props
|
|
80
|
+
*/
|
|
81
|
+
export declare type TextFieldProps = SingleLineFieldCommonProps & CombinableInputProps<InputTextProps> & {
|
|
62
82
|
type?: SimpleTextInputType;
|
|
63
|
-
}
|
|
83
|
+
};
|
|
64
84
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* AUTO GENERATED @Fri Dec
|
|
1
|
+
/* AUTO GENERATED @Fri Dec 16 2022 13:10:30 GMT+0000 (Coordinated Universal Time) */
|
|
2
2
|
|
|
3
3
|
@AVATAR_SIZE_OPTIONS: 2xs, xs, s, m, l, xl;
|
|
4
4
|
@BOX_PADDING_OPTIONS: none, 3xs, 2xs, xs, s, m, l, xl;
|
|
@@ -30,8 +30,8 @@
|
|
|
30
30
|
@TEXT_INLINE_TAG_OPTIONS: span, strong, em;
|
|
31
31
|
@TEXT_SIZE_OPTIONS: 2xs, xs, s, m, l, xl;
|
|
32
32
|
@TEXT_TAG_OPTIONS: p, div, span;
|
|
33
|
-
@TEXT_VARIANT_OPTIONS: xs, s, s-italic, s-medium, s-medium-italic, s-bold, s-bold-italic,
|
|
34
|
-
m-italic, m-medium, m-medium-italic, m-bold, m-bold-italic, l, l-italic, l-medium,
|
|
33
|
+
@TEXT_VARIANT_OPTIONS: xs, xs-medium, s, s-italic, s-medium, s-medium-italic, s-bold, s-bold-italic,
|
|
34
|
+
m, m-italic, m-medium, m-medium-italic, m-bold, m-bold-italic, l, l-italic, l-medium,
|
|
35
35
|
l-medium-italic, xl, xl-italic, xl-medium, xl-medium-italic;
|
|
36
36
|
@TEXT_WEIGHT_OPTIONS: 400, 500, 700, normal, medium, bold;
|
|
37
37
|
@THEME_OPTIONS: bold-ui, base-ui, preply-ui;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* AUTO GENERATED @Fri Dec
|
|
1
|
+
/* AUTO GENERATED @Fri Dec 16 2022 13:10:30 GMT+0000 (Coordinated Universal Time) */
|
|
2
2
|
|
|
3
3
|
@scheme-color: var(--aface6);
|
|
4
4
|
@scheme-bgColor: var(--786b9e);
|
|
@@ -87,12 +87,16 @@
|
|
|
87
87
|
@root-text-base-lineHeight: var(--d4313c);
|
|
88
88
|
@background-primary: var(--7271a6);
|
|
89
89
|
@background-secondary: var(--5836cb);
|
|
90
|
+
@background-error: var(--4ae8c9);
|
|
90
91
|
@background-overlay: var(--410fb7);
|
|
91
92
|
@content-primary-color: var(--e41135);
|
|
92
93
|
@content-secondary-color: var(--3d280d);
|
|
93
94
|
@content-branded-color: var(--4dadf3);
|
|
94
95
|
@content-positive-color: var(--318747);
|
|
95
96
|
@content-error-color: var(--9167e9);
|
|
97
|
+
@border-base-borderColor: var(--29cd58);
|
|
98
|
+
@border-focus-borderColor: var(--398094);
|
|
99
|
+
@border-error-borderColor: var(--eaf4a3);
|
|
96
100
|
@action-base-borderRadius: var(--8d5131);
|
|
97
101
|
@action-base-disabled-color: var(--a8b89c);
|
|
98
102
|
@action-base-disabled-bgColor: var(--04daeb);
|
|
@@ -102,6 +106,9 @@
|
|
|
102
106
|
@action-base-focus-outlineColor: var(--603ec6);
|
|
103
107
|
@action-base-gap: var(--0aee7b);
|
|
104
108
|
@action-inline-borderRadius: var(--5eeb28);
|
|
109
|
+
@action-inline-borderColor: var(--ea1746);
|
|
110
|
+
@action-inline-hover-bgColor: var(--0bbea4);
|
|
111
|
+
@action-inline-active-bgColor: var(--33e933);
|
|
105
112
|
@action-variant-primary-color: var(--d2baa6);
|
|
106
113
|
@action-variant-secondary-color: var(--1614c9);
|
|
107
114
|
@action-variant-tertiary-color: var(--937543);
|
|
@@ -248,6 +255,7 @@
|
|
|
248
255
|
@text-size-l-fontSize: var(--da41aa);
|
|
249
256
|
@text-size-xl-fontSize: var(--698b61);
|
|
250
257
|
@text-variant-xs-fontSize: var(--4c9f68);
|
|
258
|
+
@text-variant-xs-medium-fontSize: var(--547b8f);
|
|
251
259
|
@text-variant-s-fontSize: var(--a7cfda);
|
|
252
260
|
@text-variant-s-italic-fontSize: var(--79c03c);
|
|
253
261
|
@text-variant-s-medium-fontSize: var(--28e99e);
|
|
@@ -269,6 +277,7 @@
|
|
|
269
277
|
@text-variant-xl-medium-fontSize: var(--19e13e);
|
|
270
278
|
@text-variant-xl-medium-italic-fontSize: var(--88dc17);
|
|
271
279
|
@text-variant-xs-fontWeight: var(--71d69c);
|
|
280
|
+
@text-variant-xs-medium-fontWeight: var(--86a200);
|
|
272
281
|
@text-variant-s-fontWeight: var(--dc8b92);
|
|
273
282
|
@text-variant-s-italic-fontWeight: var(--5127dd);
|
|
274
283
|
@text-variant-s-medium-fontWeight: var(--ca04c0);
|
|
@@ -290,6 +299,7 @@
|
|
|
290
299
|
@text-variant-xl-medium-fontWeight: var(--6455e5);
|
|
291
300
|
@text-variant-xl-medium-italic-fontWeight: var(--cc6f61);
|
|
292
301
|
@text-variant-xs-lineHeight: var(--543571);
|
|
302
|
+
@text-variant-xs-medium-lineHeight: var(--e7e648);
|
|
293
303
|
@text-variant-s-lineHeight: var(--c552e7);
|
|
294
304
|
@text-variant-s-italic-lineHeight: var(--aeb64b);
|
|
295
305
|
@text-variant-s-medium-lineHeight: var(--af784d);
|
|
@@ -311,6 +321,7 @@
|
|
|
311
321
|
@text-variant-xl-medium-lineHeight: var(--85e4ac);
|
|
312
322
|
@text-variant-xl-medium-italic-lineHeight: var(--904c1e);
|
|
313
323
|
@text-variant-xs-letterSpacing: var(--29af86);
|
|
324
|
+
@text-variant-xs-medium-letterSpacing: var(--d7a1ad);
|
|
314
325
|
@text-variant-s-letterSpacing: var(--4d1d51);
|
|
315
326
|
@text-variant-s-italic-letterSpacing: var(--a50d8c);
|
|
316
327
|
@text-variant-s-medium-letterSpacing: var(--015e8c);
|
|
@@ -332,6 +343,7 @@
|
|
|
332
343
|
@text-variant-xl-medium-letterSpacing: var(--e76960);
|
|
333
344
|
@text-variant-xl-medium-italic-letterSpacing: var(--cf0e2c);
|
|
334
345
|
@text-variant-xs-fontStyle: var(--647b4d);
|
|
346
|
+
@text-variant-xs-medium-fontStyle: var(--abe371);
|
|
335
347
|
@text-variant-s-fontStyle: var(--b8dd4e);
|
|
336
348
|
@text-variant-s-italic-fontStyle: var(--c89e06);
|
|
337
349
|
@text-variant-s-medium-fontStyle: var(--e1d91f);
|
|
@@ -353,6 +365,7 @@
|
|
|
353
365
|
@text-variant-xl-medium-fontStyle: var(--0a5e67);
|
|
354
366
|
@text-variant-xl-medium-italic-fontStyle: var(--6fc949);
|
|
355
367
|
@text-variant-xs-variationSettings: var(--afe759);
|
|
368
|
+
@text-variant-xs-medium-variationSettings: var(--f65ebc);
|
|
356
369
|
@text-variant-s-variationSettings: var(--93fedc);
|
|
357
370
|
@text-variant-s-italic-variationSettings: var(--0557d4);
|
|
358
371
|
@text-variant-s-medium-variationSettings: var(--d7e46a);
|
|
@@ -380,8 +393,8 @@
|
|
|
380
393
|
@text-weight-normal-fontWeight: var(--5ea101);
|
|
381
394
|
@text-weight-medium-fontWeight: var(--2734e9);
|
|
382
395
|
@text-weight-bold-fontWeight: var(--800787);
|
|
383
|
-
@
|
|
384
|
-
@
|
|
396
|
+
@input-base-borderWidth: var(--d9baa3);
|
|
397
|
+
@input-base-borderRadius: var(--c4b051);
|
|
385
398
|
@root-size-none: var(--c12f10);
|
|
386
399
|
@root-size-25: var(--389aa7);
|
|
387
400
|
@root-size-50: var(--8848e0);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './types';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ColorName, Dataset, IconSize, TextAccent } from '@preply/ds-core';
|
|
2
|
+
import { ReactSVGComponentType } from '../svg/types';
|
|
3
|
+
export interface IconProps {
|
|
4
|
+
svg: ReactSVGComponentType;
|
|
5
|
+
size?: IconSize;
|
|
6
|
+
accent?: TextAccent;
|
|
7
|
+
color?: ColorName;
|
|
8
|
+
label?: string;
|
|
9
|
+
dataset?: Dataset;
|
|
10
|
+
}
|
package/dist/index.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export * from './css-module';
|
|
|
5
5
|
export * from './dom/props';
|
|
6
6
|
export * from './events';
|
|
7
7
|
export * from './field';
|
|
8
|
+
export * from './icon';
|
|
8
9
|
export * from './input';
|
|
9
10
|
export * from './instrument';
|
|
10
11
|
export * from './keyboard';
|
|
@@ -12,6 +13,7 @@ export * from './layout';
|
|
|
12
13
|
export * from './location';
|
|
13
14
|
export * from './responsive';
|
|
14
15
|
export * from './ssr';
|
|
16
|
+
export * from './svg';
|
|
15
17
|
export * from './theme';
|
|
16
18
|
export * from './token';
|
|
17
19
|
export * from './types';
|
package/dist/index.js
CHANGED
|
@@ -15,7 +15,8 @@ export { useTextField } from './field/hooks/useTextField.js';
|
|
|
15
15
|
export { ADDITIONAL_TEXT_VARIANT_OPTIONS } from './field/options.js';
|
|
16
16
|
export { AUTO_COMPLETE_DATE_DEFAULT, AUTO_COMPLETE_PASSWORD_DEFAULT, AUTO_COMPLETE_TEXT_DEFAULT, INPUT_TYPE_DEFAULT } from './input/constants.js';
|
|
17
17
|
export { AUTO_COMPLETE_DATE_OPTIONS, AUTO_COMPLETE_PASSWORD_OPTIONS, AUTO_COMPLETE_TEXT_OPTIONS, INPUT_TYPE_OPTIONS, INPUT_TYPE_SIMPLE_TEXT_OPTIONS } from './input/options.js';
|
|
18
|
-
export {
|
|
18
|
+
export { getInputProps } from './input/utils/getInputProps.js';
|
|
19
|
+
export { useForcedRef } from './input/utils/useForcedRef.js';
|
|
19
20
|
export { useInstrument } from './instrument/hooks/useInstrument.js';
|
|
20
21
|
export { InstrumentProvider } from './instrument/providers/Instrument.js';
|
|
21
22
|
export { useLayoutClassNames } from './layout/hooks/useLayoutClassNames.js';
|
|
@@ -25,6 +26,7 @@ export { useLayoutGridResponsiveColumns } from './layout/hooks/useLayoutGridResp
|
|
|
25
26
|
export { useLayoutHideClassnames } from './layout/module-layout-hide/hooks/useLayoutHideClassnames.js';
|
|
26
27
|
export { useAlignSelfClassNames } from './layout/module-align-self/hooks/useAlignSelfClassNames.js';
|
|
27
28
|
export { useLayoutPaddingClassnames } from './layout/module-layout-padding/hooks/useLayoutPaddingClassnames.js';
|
|
29
|
+
export { useLayoutRelativeClassnames } from './layout/module-layout-relative/hooks/useLayoutRelativeClassnames.js';
|
|
28
30
|
export { useLayoutGapClassnames } from './layout/module-layout-gap/hooks/useLayoutGapClassnames.js';
|
|
29
31
|
export { minWidth } from './responsive/sc/mixins.js';
|
|
30
32
|
export { ServerStyleSheet } from './ssr/classes/ServerStyleSheet.js';
|
|
@@ -47,4 +49,4 @@ export { withGetToken } from './token/hocs/withGetToken.js';
|
|
|
47
49
|
export { useTextAccentClassnames } from './typography/module-text-accent/hooks/useTextAccentClassnames.js';
|
|
48
50
|
export { useTextCenteredClassnames } from './typography/module-text-centered/hooks/useTextCenteredClassnames.js';
|
|
49
51
|
export { useTextWeightClassNames } from './typography/module-text-weight/hooks/useTextWeightClassNames.js';
|
|
50
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbXSwic291cmNlc0NvbnRlbnQiOltdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsifQ==
|
package/dist/input/index.d.ts
CHANGED
package/dist/input/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { AUTO_COMPLETE_DATE_DEFAULT, AUTO_COMPLETE_PASSWORD_DEFAULT, AUTO_COMPLETE_TEXT_DEFAULT, INPUT_TYPE_DEFAULT } from './constants.js';
|
|
2
2
|
export { AUTO_COMPLETE_DATE_OPTIONS, AUTO_COMPLETE_PASSWORD_OPTIONS, AUTO_COMPLETE_TEXT_OPTIONS, INPUT_TYPE_OPTIONS, INPUT_TYPE_SIMPLE_TEXT_OPTIONS } from './options.js';
|
|
3
|
-
export {
|
|
4
|
-
|
|
3
|
+
export { getInputProps } from './utils/getInputProps.js';
|
|
4
|
+
export { useForcedRef } from './utils/useForcedRef.js';
|
|
5
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbXSwic291cmNlc0NvbnRlbnQiOltdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7In0=
|
package/dist/input/options.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Option } from '@preply/ds-core-types';
|
|
2
|
-
import
|
|
2
|
+
import { AutoCompleteDateOptions, AutoCompletePasswordOptions, AutoCompleteTextOptions, InputType } from './private/types';
|
|
3
3
|
export declare const INPUT_TYPE_SIMPLE_TEXT_OPTIONS: Option<InputType>[];
|
|
4
4
|
export declare const INPUT_TYPE_OPTIONS: Option<InputType>[];
|
|
5
5
|
export declare const AUTO_COMPLETE_TEXT_OPTIONS: Option<AutoCompleteTextOptions>[];
|
package/dist/input/options.js
CHANGED
|
@@ -37,4 +37,4 @@ const AUTO_COMPLETE_PASSWORD_OPTIONS = [
|
|
|
37
37
|
];
|
|
38
38
|
|
|
39
39
|
export { AUTO_COMPLETE_DATE_OPTIONS, AUTO_COMPLETE_PASSWORD_OPTIONS, AUTO_COMPLETE_TEXT_OPTIONS, INPUT_TYPE_OPTIONS, INPUT_TYPE_SIMPLE_TEXT_OPTIONS };
|
|
40
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2lucHV0L29wdGlvbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBPcHRpb24gfSBmcm9tICdAcHJlcGx5L2RzLWNvcmUtdHlwZXMnO1xuXG5pbXBvcnQge1xuICAgIEF1dG9Db21wbGV0ZURhdGVPcHRpb25zLFxuICAgIEF1dG9Db21wbGV0ZVBhc3N3b3JkT3B0aW9ucyxcbiAgICBBdXRvQ29tcGxldGVUZXh0T3B0aW9ucyxcbiAgICBJbnB1dFR5cGUsXG59IGZyb20gJy4vcHJpdmF0ZS90eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBJTlBVVF9UWVBFX1NJTVBMRV9URVhUX09QVElPTlM6IE9wdGlvbjxJbnB1dFR5cGU+W10gPSBbXG4gICAgeyBpZDogJ3RleHQnIH0sXG4gICAgeyBpZDogJ3NlYXJjaCcgfSxcbiAgICB7IGlkOiAnZW1haWwnIH0sXG4gICAgeyBpZDogJ3RlbCcgfSxcbiAgICB7IGlkOiAndXJsJyB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IElOUFVUX1RZUEVfT1BUSU9OUzogT3B0aW9uPElucHV0VHlwZT5bXSA9IFtcbiAgICAuLi5JTlBVVF9UWVBFX1NJTVBMRV9URVhUX09QVElPTlMsXG4gICAgeyBpZDogJ3Bhc3N3b3JkJyB9LFxuICAgIHsgaWQ6ICdudW1iZXInIH0sXG4gICAgeyBpZDogJ2RhdGUnIH0sXG4gICAgeyBpZDogJ3RpbWUnIH0sXG4gICAgeyBpZDogJ2NoZWNrYm94JyB9LFxuICAgIHsgaWQ6ICdyYWRpbycgfSxcbiAgICB7IGlkOiAndGV4dGFyZWEnIH0sXG4gICAgeyBpZDogJ3NlbGVjdCcgfSxcbl07XG5cbmV4cG9ydCBjb25zdCBBVVRPX0NPTVBMRVRFX1RFWFRfT1BUSU9OUzogT3B0aW9uPEF1dG9Db21wbGV0ZVRleHRPcHRpb25zPltdID0gW1xuICAgIHsgaWQ6ICdvZmYnIH0sXG4gICAgeyBpZDogJ29uJyB9LFxuICAgIHsgaWQ6ICduYW1lJyB9LFxuICAgIHsgaWQ6ICdlbWFpbCcgfSxcbiAgICB7IGlkOiAndXNlcm5hbWUnIH0sXG4gICAgeyBpZDogJ2xhbmd1YWdlJyB9LFxuICAgIHsgaWQ6ICd0ZWwnIH0sXG4gICAgeyBpZDogJ3VybCcgfSxcbl07XG5cbmV4cG9ydCBjb25zdCBBVVRPX0NPTVBMRVRFX0RBVEVfT1BUSU9OUzogT3B0aW9uPEF1dG9Db21wbGV0ZURhdGVPcHRpb25zPltdID0gW1xuICAgIHsgaWQ6ICdvZmYnIH0sXG4gICAgeyBpZDogJ29uJyB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IEFVVE9fQ09NUExFVEVfUEFTU1dPUkRfT1BUSU9OUzogT3B0aW9uPEF1dG9Db21wbGV0ZVBhc3N3b3JkT3B0aW9ucz5bXSA9IFtcbiAgICB7IGlkOiAnb2ZmJyB9LFxuICAgIHsgaWQ6ICduZXctcGFzc3dvcmQnIH0sXG4gICAgeyBpZDogJ2N1cnJlbnQtcGFzc3dvcmQnIH0sXG5dO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJNQVNhLDhCQUE4QixHQUF3QjtJQUMvRCxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUU7SUFDZCxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUU7SUFDaEIsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFO0lBQ2YsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFO0lBQ2IsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFO0VBQ2Y7TUFFVyxrQkFBa0IsR0FBd0I7SUFDbkQsR0FBRyw4QkFBOEI7SUFDakMsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFO0lBQ2xCLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRTtJQUNoQixFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUU7SUFDZCxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUU7SUFDZCxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUU7SUFDbEIsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFO0lBQ2YsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFO0lBQ2xCLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRTtFQUNsQjtNQUVXLDBCQUEwQixHQUFzQztJQUN6RSxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUU7SUFDYixFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUU7SUFDWixFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUU7SUFDZCxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUU7SUFDZixFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUU7SUFDbEIsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFO0lBQ2xCLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRTtJQUNiLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRTtFQUNmO01BRVcsMEJBQTBCLEdBQXNDO0lBQ3pFLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRTtJQUNiLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRTtFQUNkO01BRVcsOEJBQThCLEdBQTBDO0lBQ2pGLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRTtJQUNiLEVBQUUsRUFBRSxFQUFFLGNBQWMsRUFBRTtJQUN0QixFQUFFLEVBQUUsRUFBRSxrQkFBa0IsRUFBRTs7Ozs7In0=
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import type { Dataset } from '@preply/ds-core';
|
|
2
|
+
import { ChangeEventHandler, FocusEventHandler, KeyboardEventHandler, MouseEventHandler, ReactNode } from 'react';
|
|
3
|
+
import type { ARIAAttributeNames, ARIAInputProps } from '../../accessibility/aria/types';
|
|
4
|
+
export declare type SimpleTextInputType = 'text' | 'search' | 'email' | 'tel' | 'url';
|
|
5
|
+
export declare type SingleLineInputType = SimpleTextInputType | 'password' | 'number' | 'date' | 'time';
|
|
6
|
+
export declare type HTMLInputType = SingleLineInputType | 'checkbox' | 'radio';
|
|
7
|
+
export declare type InputType = HTMLInputType | 'textarea' | 'select';
|
|
8
|
+
export declare type AutoCompleteTextOptions = 'off' | 'on' | 'name' | 'email' | 'username' | 'language' | 'tel' | 'url';
|
|
9
|
+
export declare type AutoCompleteDateOptions = 'off' | 'on';
|
|
10
|
+
export declare type AutoCompletePasswordOptions = 'off' | 'new-password' | 'current-password';
|
|
11
|
+
/**
|
|
12
|
+
* native <input> props
|
|
13
|
+
*/
|
|
14
|
+
export interface InputCommonProps extends ARIAInputProps {
|
|
15
|
+
type: InputType;
|
|
16
|
+
id: string;
|
|
17
|
+
name?: string;
|
|
18
|
+
value?: string;
|
|
19
|
+
defaultValue?: string;
|
|
20
|
+
onChange?: ChangeEventHandler;
|
|
21
|
+
onFocus?: FocusEventHandler;
|
|
22
|
+
onBlur?: FocusEventHandler;
|
|
23
|
+
onClick?: MouseEventHandler;
|
|
24
|
+
onKeyDown?: KeyboardEventHandler;
|
|
25
|
+
onKeyUp?: KeyboardEventHandler;
|
|
26
|
+
required?: boolean;
|
|
27
|
+
disabled?: boolean;
|
|
28
|
+
hasError?: boolean;
|
|
29
|
+
dataset?: Dataset;
|
|
30
|
+
}
|
|
31
|
+
export interface InputStringProps extends InputCommonProps {
|
|
32
|
+
type: SingleLineInputType | 'textarea';
|
|
33
|
+
placeholder?: string;
|
|
34
|
+
maxLength?: number;
|
|
35
|
+
}
|
|
36
|
+
export interface InputSingleLineProps extends InputStringProps {
|
|
37
|
+
type: SingleLineInputType;
|
|
38
|
+
}
|
|
39
|
+
export interface SimpleTextInputTypeProps extends InputSingleLineProps {
|
|
40
|
+
type: SimpleTextInputType;
|
|
41
|
+
autoComplete?: AutoCompleteTextOptions;
|
|
42
|
+
}
|
|
43
|
+
export interface InputTypeTextProps extends SimpleTextInputTypeProps {
|
|
44
|
+
type: 'text';
|
|
45
|
+
}
|
|
46
|
+
export interface InputTypeSearchProps extends SimpleTextInputTypeProps {
|
|
47
|
+
type: 'search';
|
|
48
|
+
}
|
|
49
|
+
export interface InputTypeEmailProps extends SimpleTextInputTypeProps {
|
|
50
|
+
type: 'email';
|
|
51
|
+
}
|
|
52
|
+
export interface InputTypeTelProps extends SimpleTextInputTypeProps {
|
|
53
|
+
type: 'tel';
|
|
54
|
+
}
|
|
55
|
+
export interface InputTypeUrlProps extends SimpleTextInputTypeProps {
|
|
56
|
+
type: 'url';
|
|
57
|
+
}
|
|
58
|
+
export interface InputTypePasswordProps extends InputSingleLineProps {
|
|
59
|
+
type: 'password';
|
|
60
|
+
autoComplete?: AutoCompletePasswordOptions;
|
|
61
|
+
}
|
|
62
|
+
export interface InputBoundedProps extends InputSingleLineProps {
|
|
63
|
+
type: 'number' | 'date' | 'time';
|
|
64
|
+
min?: string;
|
|
65
|
+
max?: string;
|
|
66
|
+
}
|
|
67
|
+
export interface InputTypeNumberProps extends InputBoundedProps {
|
|
68
|
+
type: 'number';
|
|
69
|
+
}
|
|
70
|
+
export interface InputTypeDateProps extends InputBoundedProps {
|
|
71
|
+
type: 'date';
|
|
72
|
+
autoComplete?: AutoCompleteDateOptions;
|
|
73
|
+
}
|
|
74
|
+
export interface InputTypeTimeProps extends InputBoundedProps {
|
|
75
|
+
type: 'time';
|
|
76
|
+
}
|
|
77
|
+
export interface InputCheckableProps extends InputCommonProps {
|
|
78
|
+
type: 'checkbox' | 'radio';
|
|
79
|
+
checked?: boolean;
|
|
80
|
+
}
|
|
81
|
+
export interface InputTypeCheckboxProps extends InputCheckableProps {
|
|
82
|
+
type: 'checkbox';
|
|
83
|
+
}
|
|
84
|
+
export interface InputTypeRadioProps extends InputCommonProps, InputCheckableProps {
|
|
85
|
+
type: 'radio';
|
|
86
|
+
name: string;
|
|
87
|
+
}
|
|
88
|
+
export interface InputTypeTextareaProps extends InputStringProps {
|
|
89
|
+
type: 'textarea';
|
|
90
|
+
rows?: number;
|
|
91
|
+
}
|
|
92
|
+
export interface InputTypeSelectProps extends InputCommonProps {
|
|
93
|
+
type: 'select';
|
|
94
|
+
children?: ReactNode;
|
|
95
|
+
}
|
|
96
|
+
export declare type InputGenericTextProps = InputTypeTextProps | InputTypeSearchProps | InputTypeEmailProps | InputTypeTelProps | InputTypeUrlProps;
|
|
97
|
+
export declare type UnknownInputProps = InputTypeTextProps | InputTypeSearchProps | InputTypeEmailProps | InputTypeTelProps | InputTypeUrlProps | InputTypePasswordProps | InputTypeNumberProps | InputTypeDateProps | InputTypeTimeProps | InputTypeCheckboxProps | InputTypeRadioProps | InputTypeTextareaProps | InputTypeSelectProps;
|
|
98
|
+
/**
|
|
99
|
+
* allows merging <Input*> props onto <Field*> props
|
|
100
|
+
*/
|
|
101
|
+
export declare type CombinableInputProps<T extends InputCommonProps> = Omit<T, 'id' | 'type' | ARIAAttributeNames> & {
|
|
102
|
+
id?: string;
|
|
103
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { InputHTMLAttributes, SelectHTMLAttributes, TextareaHTMLAttributes } from 'react';
|
|
2
|
+
import type { InputBaseProps } from '../types';
|
|
3
|
+
export declare const getTextProps: (props: InputBaseProps) => InputHTMLAttributes<HTMLInputElement>;
|
|
4
|
+
export declare const getDateTimeProps: (props: InputBaseProps) => InputHTMLAttributes<HTMLInputElement>;
|
|
5
|
+
export declare const getBoundedProps: (props: InputBaseProps) => InputHTMLAttributes<HTMLInputElement>;
|
|
6
|
+
export declare const getTextareaProps: (props: InputBaseProps) => TextareaHTMLAttributes<HTMLTextAreaElement>;
|
|
7
|
+
export declare const getCheckableProps: (props: InputBaseProps) => InputHTMLAttributes<HTMLInputElement>;
|
|
8
|
+
export declare const getRadioProps: (props: InputBaseProps) => InputHTMLAttributes<HTMLInputElement>;
|
|
9
|
+
export declare const getSelectProps: (props: InputBaseProps) => SelectHTMLAttributes<HTMLSelectElement>;
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
const isText = (props) => {
|
|
2
|
+
const { type } = props;
|
|
3
|
+
return (type === 'text' ||
|
|
4
|
+
type === 'search' ||
|
|
5
|
+
type === 'password' ||
|
|
6
|
+
type === 'email' ||
|
|
7
|
+
type === 'tel' ||
|
|
8
|
+
type === 'url' ||
|
|
9
|
+
type === 'number' ||
|
|
10
|
+
type === 'textarea');
|
|
11
|
+
};
|
|
12
|
+
const isDateTime = (props) => {
|
|
13
|
+
const { type } = props;
|
|
14
|
+
return type === 'date' || type === 'time';
|
|
15
|
+
};
|
|
16
|
+
const isBounded = (props) => {
|
|
17
|
+
const { type } = props;
|
|
18
|
+
return type === 'number' || type === 'date' || type === 'time';
|
|
19
|
+
};
|
|
20
|
+
const isCheckable = (props) => {
|
|
21
|
+
const { type } = props;
|
|
22
|
+
return type === 'checkbox';
|
|
23
|
+
};
|
|
24
|
+
const isRadio = (props) => {
|
|
25
|
+
const { type } = props;
|
|
26
|
+
return type === 'radio';
|
|
27
|
+
};
|
|
28
|
+
const isTextarea = (props) => {
|
|
29
|
+
const { type } = props;
|
|
30
|
+
return type === 'number' || type === 'date' || type === 'time';
|
|
31
|
+
};
|
|
32
|
+
const isSelect = (props) => {
|
|
33
|
+
const { type } = props;
|
|
34
|
+
return type === 'select';
|
|
35
|
+
};
|
|
36
|
+
const getTextProps = (props) => {
|
|
37
|
+
if (isText(props)) {
|
|
38
|
+
const { value, placeholder, maxLength, autoComplete } = props;
|
|
39
|
+
return { value, placeholder, maxLength, autoComplete };
|
|
40
|
+
}
|
|
41
|
+
return {};
|
|
42
|
+
};
|
|
43
|
+
const getDateTimeProps = (props) => {
|
|
44
|
+
if (isDateTime(props)) {
|
|
45
|
+
const { defaultValue, placeholder, maxLength, autoComplete } = props;
|
|
46
|
+
return { defaultValue, placeholder, maxLength, autoComplete };
|
|
47
|
+
}
|
|
48
|
+
return {};
|
|
49
|
+
};
|
|
50
|
+
const getBoundedProps = (props) => {
|
|
51
|
+
if (isBounded(props)) {
|
|
52
|
+
const { min, max } = props;
|
|
53
|
+
return { min, max };
|
|
54
|
+
}
|
|
55
|
+
return {};
|
|
56
|
+
};
|
|
57
|
+
const getTextareaProps = (props) => {
|
|
58
|
+
if (isTextarea(props)) {
|
|
59
|
+
const { rows } = props;
|
|
60
|
+
return { rows };
|
|
61
|
+
}
|
|
62
|
+
return {};
|
|
63
|
+
};
|
|
64
|
+
const getCheckableProps = (props) => {
|
|
65
|
+
if (isCheckable(props)) {
|
|
66
|
+
const { checked } = props;
|
|
67
|
+
return { checked };
|
|
68
|
+
}
|
|
69
|
+
return {};
|
|
70
|
+
};
|
|
71
|
+
const getRadioProps = (props) => {
|
|
72
|
+
if (isRadio(props)) {
|
|
73
|
+
const { checked, name } = props;
|
|
74
|
+
return { defaultChecked: checked, name };
|
|
75
|
+
}
|
|
76
|
+
return {};
|
|
77
|
+
};
|
|
78
|
+
const getSelectProps = (props) => {
|
|
79
|
+
if (isSelect(props)) {
|
|
80
|
+
const { value, children } = props;
|
|
81
|
+
return { value, children };
|
|
82
|
+
}
|
|
83
|
+
return {};
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
export { getBoundedProps, getCheckableProps, getDateTimeProps, getRadioProps, getSelectProps, getTextProps, getTextareaProps };
|
|
87
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbnB1dC9wcml2YXRlL3V0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElucHV0SFRNTEF0dHJpYnV0ZXMsIFNlbGVjdEhUTUxBdHRyaWJ1dGVzLCBUZXh0YXJlYUhUTUxBdHRyaWJ1dGVzIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgdHlwZSB7IElucHV0QmFzZVByb3BzIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5pbXBvcnQgdHlwZSB7XG4gICAgSW5wdXRCb3VuZGVkUHJvcHMsXG4gICAgSW5wdXRDaGVja2FibGVQcm9wcyxcbiAgICBJbnB1dENvbW1vblByb3BzLFxuICAgIElucHV0VHlwZVNlbGVjdFByb3BzLFxuICAgIElucHV0VHlwZVRleHRQcm9wcyxcbiAgICBJbnB1dFR5cGVUZXh0YXJlYVByb3BzLFxufSBmcm9tICcuL3R5cGVzJztcblxuY29uc3QgaXNUZXh0ID0gKHByb3BzOiBJbnB1dENvbW1vblByb3BzKTogcHJvcHMgaXMgSW5wdXRUeXBlVGV4dFByb3BzID0+IHtcbiAgICBjb25zdCB7IHR5cGUgfSA9IHByb3BzO1xuICAgIHJldHVybiAoXG4gICAgICAgIHR5cGUgPT09ICd0ZXh0JyB8fFxuICAgICAgICB0eXBlID09PSAnc2VhcmNoJyB8fFxuICAgICAgICB0eXBlID09PSAncGFzc3dvcmQnIHx8XG4gICAgICAgIHR5cGUgPT09ICdlbWFpbCcgfHxcbiAgICAgICAgdHlwZSA9PT0gJ3RlbCcgfHxcbiAgICAgICAgdHlwZSA9PT0gJ3VybCcgfHxcbiAgICAgICAgdHlwZSA9PT0gJ251bWJlcicgfHxcbiAgICAgICAgdHlwZSA9PT0gJ3RleHRhcmVhJ1xuICAgICk7XG59O1xuXG5jb25zdCBpc0RhdGVUaW1lID0gKHByb3BzOiBJbnB1dENvbW1vblByb3BzKTogcHJvcHMgaXMgSW5wdXRUeXBlVGV4dFByb3BzID0+IHtcbiAgICBjb25zdCB7IHR5cGUgfSA9IHByb3BzO1xuICAgIHJldHVybiB0eXBlID09PSAnZGF0ZScgfHwgdHlwZSA9PT0gJ3RpbWUnO1xufTtcblxuY29uc3QgaXNCb3VuZGVkID0gKHByb3BzOiBJbnB1dENvbW1vblByb3BzKTogcHJvcHMgaXMgSW5wdXRCb3VuZGVkUHJvcHMgPT4ge1xuICAgIGNvbnN0IHsgdHlwZSB9ID0gcHJvcHM7XG4gICAgcmV0dXJuIHR5cGUgPT09ICdudW1iZXInIHx8IHR5cGUgPT09ICdkYXRlJyB8fCB0eXBlID09PSAndGltZSc7XG59O1xuXG5jb25zdCBpc0NoZWNrYWJsZSA9IChwcm9wczogSW5wdXRDb21tb25Qcm9wcyk6IHByb3BzIGlzIElucHV0Q2hlY2thYmxlUHJvcHMgPT4ge1xuICAgIGNvbnN0IHsgdHlwZSB9ID0gcHJvcHM7XG4gICAgcmV0dXJuIHR5cGUgPT09ICdjaGVja2JveCc7XG59O1xuXG5jb25zdCBpc1JhZGlvID0gKHByb3BzOiBJbnB1dENvbW1vblByb3BzKTogcHJvcHMgaXMgSW5wdXRDaGVja2FibGVQcm9wcyA9PiB7XG4gICAgY29uc3QgeyB0eXBlIH0gPSBwcm9wcztcbiAgICByZXR1cm4gdHlwZSA9PT0gJ3JhZGlvJztcbn07XG5cbmNvbnN0IGlzVGV4dGFyZWEgPSAocHJvcHM6IElucHV0Q29tbW9uUHJvcHMpOiBwcm9wcyBpcyBJbnB1dFR5cGVUZXh0YXJlYVByb3BzID0+IHtcbiAgICBjb25zdCB7IHR5cGUgfSA9IHByb3BzO1xuICAgIHJldHVybiB0eXBlID09PSAnbnVtYmVyJyB8fCB0eXBlID09PSAnZGF0ZScgfHwgdHlwZSA9PT0gJ3RpbWUnO1xufTtcblxuY29uc3QgaXNTZWxlY3QgPSAocHJvcHM6IElucHV0Q29tbW9uUHJvcHMpOiBwcm9wcyBpcyBJbnB1dFR5cGVTZWxlY3RQcm9wcyA9PiB7XG4gICAgY29uc3QgeyB0eXBlIH0gPSBwcm9wcztcbiAgICByZXR1cm4gdHlwZSA9PT0gJ3NlbGVjdCc7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0VGV4dFByb3BzID0gKHByb3BzOiBJbnB1dEJhc2VQcm9wcyk6IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD4gPT4ge1xuICAgIGlmIChpc1RleHQocHJvcHMpKSB7XG4gICAgICAgIGNvbnN0IHsgdmFsdWUsIHBsYWNlaG9sZGVyLCBtYXhMZW5ndGgsIGF1dG9Db21wbGV0ZSB9ID0gcHJvcHM7XG4gICAgICAgIHJldHVybiB7IHZhbHVlLCBwbGFjZWhvbGRlciwgbWF4TGVuZ3RoLCBhdXRvQ29tcGxldGUgfTtcbiAgICB9XG4gICAgcmV0dXJuIHt9O1xufTtcblxuZXhwb3J0IGNvbnN0IGdldERhdGVUaW1lUHJvcHMgPSAocHJvcHM6IElucHV0QmFzZVByb3BzKTogSW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PiA9PiB7XG4gICAgaWYgKGlzRGF0ZVRpbWUocHJvcHMpKSB7XG4gICAgICAgIGNvbnN0IHsgZGVmYXVsdFZhbHVlLCBwbGFjZWhvbGRlciwgbWF4TGVuZ3RoLCBhdXRvQ29tcGxldGUgfSA9IHByb3BzO1xuICAgICAgICByZXR1cm4geyBkZWZhdWx0VmFsdWUsIHBsYWNlaG9sZGVyLCBtYXhMZW5ndGgsIGF1dG9Db21wbGV0ZSB9O1xuICAgIH1cbiAgICByZXR1cm4ge307XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0Qm91bmRlZFByb3BzID0gKHByb3BzOiBJbnB1dEJhc2VQcm9wcyk6IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD4gPT4ge1xuICAgIGlmIChpc0JvdW5kZWQocHJvcHMpKSB7XG4gICAgICAgIGNvbnN0IHsgbWluLCBtYXggfSA9IHByb3BzO1xuICAgICAgICByZXR1cm4geyBtaW4sIG1heCB9O1xuICAgIH1cbiAgICByZXR1cm4ge307XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0VGV4dGFyZWFQcm9wcyA9IChcbiAgICBwcm9wczogSW5wdXRCYXNlUHJvcHMsXG4pOiBUZXh0YXJlYUhUTUxBdHRyaWJ1dGVzPEhUTUxUZXh0QXJlYUVsZW1lbnQ+ID0+IHtcbiAgICBpZiAoaXNUZXh0YXJlYShwcm9wcykpIHtcbiAgICAgICAgY29uc3QgeyByb3dzIH0gPSBwcm9wcztcbiAgICAgICAgcmV0dXJuIHsgcm93cyB9O1xuICAgIH1cbiAgICByZXR1cm4ge307XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0Q2hlY2thYmxlUHJvcHMgPSAocHJvcHM6IElucHV0QmFzZVByb3BzKTogSW5wdXRIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50PiA9PiB7XG4gICAgaWYgKGlzQ2hlY2thYmxlKHByb3BzKSkge1xuICAgICAgICBjb25zdCB7IGNoZWNrZWQgfSA9IHByb3BzO1xuICAgICAgICByZXR1cm4geyBjaGVja2VkIH07XG4gICAgfVxuICAgIHJldHVybiB7fTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRSYWRpb1Byb3BzID0gKHByb3BzOiBJbnB1dEJhc2VQcm9wcyk6IElucHV0SFRNTEF0dHJpYnV0ZXM8SFRNTElucHV0RWxlbWVudD4gPT4ge1xuICAgIGlmIChpc1JhZGlvKHByb3BzKSkge1xuICAgICAgICBjb25zdCB7IGNoZWNrZWQsIG5hbWUgfSA9IHByb3BzO1xuICAgICAgICByZXR1cm4geyBkZWZhdWx0Q2hlY2tlZDogY2hlY2tlZCwgbmFtZSB9O1xuICAgIH1cbiAgICByZXR1cm4ge307XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0U2VsZWN0UHJvcHMgPSAocHJvcHM6IElucHV0QmFzZVByb3BzKTogU2VsZWN0SFRNTEF0dHJpYnV0ZXM8SFRNTFNlbGVjdEVsZW1lbnQ+ID0+IHtcbiAgICBpZiAoaXNTZWxlY3QocHJvcHMpKSB7XG4gICAgICAgIGNvbnN0IHsgdmFsdWUsIGNoaWxkcmVuIH0gPSBwcm9wcztcbiAgICAgICAgcmV0dXJuIHsgdmFsdWUsIGNoaWxkcmVuIH07XG4gICAgfVxuICAgIHJldHVybiB7fTtcbn07XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBYUEsTUFBTSxNQUFNLEdBQUcsQ0FBQyxLQUF1QjtJQUNuQyxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLFFBQ0ksSUFBSSxLQUFLLE1BQU07UUFDZixJQUFJLEtBQUssUUFBUTtRQUNqQixJQUFJLEtBQUssVUFBVTtRQUNuQixJQUFJLEtBQUssT0FBTztRQUNoQixJQUFJLEtBQUssS0FBSztRQUNkLElBQUksS0FBSyxLQUFLO1FBQ2QsSUFBSSxLQUFLLFFBQVE7UUFDakIsSUFBSSxLQUFLLFVBQVUsRUFDckI7QUFDTixDQUFDLENBQUM7QUFFRixNQUFNLFVBQVUsR0FBRyxDQUFDLEtBQXVCO0lBQ3ZDLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxLQUFLLENBQUM7SUFDdkIsT0FBTyxJQUFJLEtBQUssTUFBTSxJQUFJLElBQUksS0FBSyxNQUFNLENBQUM7QUFDOUMsQ0FBQyxDQUFDO0FBRUYsTUFBTSxTQUFTLEdBQUcsQ0FBQyxLQUF1QjtJQUN0QyxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLE9BQU8sSUFBSSxLQUFLLFFBQVEsSUFBSSxJQUFJLEtBQUssTUFBTSxJQUFJLElBQUksS0FBSyxNQUFNLENBQUM7QUFDbkUsQ0FBQyxDQUFDO0FBRUYsTUFBTSxXQUFXLEdBQUcsQ0FBQyxLQUF1QjtJQUN4QyxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLE9BQU8sSUFBSSxLQUFLLFVBQVUsQ0FBQztBQUMvQixDQUFDLENBQUM7QUFFRixNQUFNLE9BQU8sR0FBRyxDQUFDLEtBQXVCO0lBQ3BDLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxLQUFLLENBQUM7SUFDdkIsT0FBTyxJQUFJLEtBQUssT0FBTyxDQUFDO0FBQzVCLENBQUMsQ0FBQztBQUVGLE1BQU0sVUFBVSxHQUFHLENBQUMsS0FBdUI7SUFDdkMsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLEtBQUssQ0FBQztJQUN2QixPQUFPLElBQUksS0FBSyxRQUFRLElBQUksSUFBSSxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssTUFBTSxDQUFDO0FBQ25FLENBQUMsQ0FBQztBQUVGLE1BQU0sUUFBUSxHQUFHLENBQUMsS0FBdUI7SUFDckMsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLEtBQUssQ0FBQztJQUN2QixPQUFPLElBQUksS0FBSyxRQUFRLENBQUM7QUFDN0IsQ0FBQyxDQUFDO01BRVcsWUFBWSxHQUFHLENBQUMsS0FBcUI7SUFDOUMsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDZixNQUFNLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEdBQUcsS0FBSyxDQUFDO1FBQzlELE9BQU8sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsQ0FBQztLQUMxRDtJQUNELE9BQU8sRUFBRSxDQUFDO0FBQ2QsRUFBRTtNQUVXLGdCQUFnQixHQUFHLENBQUMsS0FBcUI7SUFDbEQsSUFBSSxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDbkIsTUFBTSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxHQUFHLEtBQUssQ0FBQztRQUNyRSxPQUFPLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLENBQUM7S0FDakU7SUFDRCxPQUFPLEVBQUUsQ0FBQztBQUNkLEVBQUU7TUFFVyxlQUFlLEdBQUcsQ0FBQyxLQUFxQjtJQUNqRCxJQUFJLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUNsQixNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEtBQUssQ0FBQztRQUMzQixPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDO0tBQ3ZCO0lBQ0QsT0FBTyxFQUFFLENBQUM7QUFDZCxFQUFFO01BRVcsZ0JBQWdCLEdBQUcsQ0FDNUIsS0FBcUI7SUFFckIsSUFBSSxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDbkIsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLEtBQUssQ0FBQztRQUN2QixPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUM7S0FDbkI7SUFDRCxPQUFPLEVBQUUsQ0FBQztBQUNkLEVBQUU7TUFFVyxpQkFBaUIsR0FBRyxDQUFDLEtBQXFCO0lBQ25ELElBQUksV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQ3BCLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxLQUFLLENBQUM7UUFDMUIsT0FBTyxFQUFFLE9BQU8sRUFBRSxDQUFDO0tBQ3RCO0lBQ0QsT0FBTyxFQUFFLENBQUM7QUFDZCxFQUFFO01BRVcsYUFBYSxHQUFHLENBQUMsS0FBcUI7SUFDL0MsSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDaEIsTUFBTSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsR0FBRyxLQUFLLENBQUM7UUFDaEMsT0FBTyxFQUFFLGNBQWMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUM7S0FDNUM7SUFDRCxPQUFPLEVBQUUsQ0FBQztBQUNkLEVBQUU7TUFFVyxjQUFjLEdBQUcsQ0FBQyxLQUFxQjtJQUNoRCxJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUNqQixNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxHQUFHLEtBQUssQ0FBQztRQUNsQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxDQUFDO0tBQzlCO0lBQ0QsT0FBTyxFQUFFLENBQUM7QUFDZDs7OzsifQ==
|
package/dist/input/types.d.ts
CHANGED
|
@@ -1,106 +1,44 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import type { ValueChangeEventHandler } from '../events';
|
|
2
|
+
import type { InputTypeCheckboxProps, InputTypeDateProps, InputTypeNumberProps, InputTypePasswordProps, InputTypeRadioProps, InputTypeSelectProps, InputTypeTextProps, InputTypeTextareaProps, InputTypeTimeProps, SimpleTextInputType, UnknownInputProps } from './private/types';
|
|
3
|
+
/**
|
|
4
|
+
* private <Input*> components
|
|
5
|
+
*/
|
|
6
|
+
export declare type InputBaseProps = UnknownInputProps & {
|
|
7
|
+
className?: string;
|
|
6
8
|
};
|
|
7
|
-
export declare type
|
|
8
|
-
export declare type ARIAInputProps = Pick<React.HTMLAttributes<HTMLInputElement>, ARIAAttributeNames>;
|
|
9
|
-
export declare type SimpleTextInputType = 'text' | 'search' | 'email' | 'tel' | 'url';
|
|
10
|
-
export declare type SingleLineInputType = SimpleTextInputType | 'password' | 'number' | 'date' | 'time';
|
|
11
|
-
export declare type HTMLInputType = SingleLineInputType | 'checkbox' | 'radio';
|
|
12
|
-
export declare type InputType = HTMLInputType | 'textarea' | 'select';
|
|
13
|
-
export declare type AutoCompleteTextOptions = 'off' | 'on' | 'name' | 'email' | 'username' | 'language' | 'tel' | 'url';
|
|
14
|
-
export declare type AutoCompleteDateOptions = 'off' | 'on';
|
|
15
|
-
export declare type AutoCompletePasswordOptions = 'off' | 'new-password' | 'current-password';
|
|
16
|
-
export interface InputCommonProps extends ARIAInputProps {
|
|
17
|
-
type: InputType;
|
|
18
|
-
id: string;
|
|
19
|
-
name?: string;
|
|
20
|
-
value?: string;
|
|
21
|
-
defaultValue?: string;
|
|
22
|
-
onChange?: ChangeEventHandler;
|
|
23
|
-
onFocus?: FocusEventHandler;
|
|
24
|
-
onBlur?: FocusEventHandler;
|
|
25
|
-
onClick?: MouseEventHandler;
|
|
26
|
-
onKeyDown?: KeyboardEventHandler;
|
|
27
|
-
onKeyUp?: KeyboardEventHandler;
|
|
28
|
-
required?: boolean;
|
|
29
|
-
disabled?: boolean;
|
|
30
|
-
hasError?: boolean;
|
|
31
|
-
dataset?: Dataset;
|
|
32
|
-
}
|
|
33
|
-
export interface InputStringProps extends InputCommonProps {
|
|
34
|
-
type: SingleLineInputType | 'textarea';
|
|
35
|
-
placeholder?: string;
|
|
36
|
-
maxLength?: number;
|
|
37
|
-
}
|
|
38
|
-
export interface InputSingleLineProps extends InputStringProps {
|
|
39
|
-
type: SingleLineInputType;
|
|
40
|
-
}
|
|
41
|
-
export interface SimpleTextInputTypeProps extends InputSingleLineProps {
|
|
9
|
+
export declare type InputTextProps = Omit<InputTypeTextProps, 'type'> & {
|
|
42
10
|
type: SimpleTextInputType;
|
|
43
|
-
|
|
44
|
-
}
|
|
45
|
-
export
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
}
|
|
51
|
-
export interface InputTypeEmailProps extends SimpleTextInputTypeProps {
|
|
52
|
-
type: 'email';
|
|
53
|
-
}
|
|
54
|
-
export interface InputTypeTelProps extends SimpleTextInputTypeProps {
|
|
55
|
-
type: 'tel';
|
|
56
|
-
}
|
|
57
|
-
export interface InputTypeUrlProps extends SimpleTextInputTypeProps {
|
|
58
|
-
type: 'url';
|
|
59
|
-
}
|
|
60
|
-
export interface InputTypePasswordProps extends InputSingleLineProps {
|
|
61
|
-
type: 'password';
|
|
62
|
-
autoComplete?: AutoCompletePasswordOptions;
|
|
63
|
-
}
|
|
64
|
-
export interface InputBoundedProps extends InputSingleLineProps {
|
|
65
|
-
type: 'number' | 'date' | 'time';
|
|
66
|
-
min?: string;
|
|
67
|
-
max?: string;
|
|
68
|
-
}
|
|
69
|
-
export interface InputTypeNumberProps extends InputBoundedProps {
|
|
70
|
-
type: 'number';
|
|
71
|
-
}
|
|
72
|
-
export interface InputTypeDateProps extends InputBoundedProps {
|
|
73
|
-
type: 'date';
|
|
74
|
-
autoComplete?: AutoCompleteDateOptions;
|
|
75
|
-
}
|
|
76
|
-
export interface InputTypeTimeProps extends InputBoundedProps {
|
|
77
|
-
type: 'time';
|
|
78
|
-
}
|
|
79
|
-
export interface InputCheckableProps extends InputCommonProps {
|
|
80
|
-
type: 'checkbox' | 'radio';
|
|
11
|
+
onValueChange?: ValueChangeEventHandler<string>;
|
|
12
|
+
};
|
|
13
|
+
export declare type InputTimeProps = Omit<InputTypeTimeProps, 'type' | 'value'> & {
|
|
14
|
+
defaultValue?: string;
|
|
15
|
+
onValueChange?: ValueChangeEventHandler<string>;
|
|
16
|
+
};
|
|
17
|
+
export declare type RadioProps = Omit<InputTypeRadioProps, 'type' | 'value'> & {
|
|
81
18
|
checked?: boolean;
|
|
82
|
-
}
|
|
83
|
-
export interface InputTypeCheckboxProps extends InputCheckableProps {
|
|
84
|
-
type: 'checkbox';
|
|
85
|
-
}
|
|
86
|
-
export interface InputTypeRadioProps extends InputCommonProps, InputCheckableProps {
|
|
87
|
-
type: 'radio';
|
|
88
19
|
name: string;
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
}
|
|
94
|
-
export
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
20
|
+
onValueChange?: ValueChangeEventHandler<boolean>;
|
|
21
|
+
};
|
|
22
|
+
export declare type SelectProps = Omit<InputTypeSelectProps, 'type'> & {
|
|
23
|
+
onValueChange?: ValueChangeEventHandler<string>;
|
|
24
|
+
};
|
|
25
|
+
export declare type TextareaProps = Omit<InputTypeTextareaProps, 'type'> & {
|
|
26
|
+
onValueChange?: ValueChangeEventHandler<string>;
|
|
27
|
+
};
|
|
28
|
+
export declare type CheckboxProps = Omit<InputTypeCheckboxProps, 'type' | 'value'> & {
|
|
29
|
+
checked?: boolean;
|
|
30
|
+
onValueChange?: ValueChangeEventHandler<boolean>;
|
|
31
|
+
};
|
|
32
|
+
export declare type InputDateProps = Omit<InputTypeDateProps, 'type' | 'value' | 'defaultValue'> & {
|
|
33
|
+
defaultValue?: Date;
|
|
34
|
+
onValueChange?: ValueChangeEventHandler<Date>;
|
|
35
|
+
};
|
|
36
|
+
export declare type InputNumberProps = Omit<InputTypeNumberProps, 'type' | 'value' | 'min' | 'max'> & {
|
|
37
|
+
value?: number;
|
|
38
|
+
min?: number;
|
|
39
|
+
max?: number;
|
|
40
|
+
onValueChange?: ValueChangeEventHandler<number>;
|
|
102
41
|
};
|
|
103
|
-
export declare type
|
|
104
|
-
|
|
42
|
+
export declare type InputPasswordProps = Omit<InputTypePasswordProps, 'type'> & {
|
|
43
|
+
onValueChange?: ValueChangeEventHandler<string>;
|
|
105
44
|
};
|
|
106
|
-
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { getTextProps, getDateTimeProps, getBoundedProps, getTextareaProps, getCheckableProps, getRadioProps, getSelectProps } from '../private/utils.js';
|
|
2
|
+
|
|
3
|
+
const getInputProps = (props) => ({
|
|
4
|
+
...getTextProps(props),
|
|
5
|
+
...getDateTimeProps(props),
|
|
6
|
+
...getBoundedProps(props),
|
|
7
|
+
...getTextareaProps(props),
|
|
8
|
+
...getCheckableProps(props),
|
|
9
|
+
...getRadioProps(props),
|
|
10
|
+
...getSelectProps(props),
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
export { getInputProps };
|
|
14
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0SW5wdXRQcm9wcy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2lucHV0L3V0aWxzL2dldElucHV0UHJvcHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSFRNTEF0dHJpYnV0ZXMgfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7XG4gICAgZ2V0Qm91bmRlZFByb3BzLFxuICAgIGdldENoZWNrYWJsZVByb3BzLFxuICAgIGdldERhdGVUaW1lUHJvcHMsXG4gICAgZ2V0UmFkaW9Qcm9wcyxcbiAgICBnZXRTZWxlY3RQcm9wcyxcbiAgICBnZXRUZXh0UHJvcHMsXG4gICAgZ2V0VGV4dGFyZWFQcm9wcyxcbn0gZnJvbSAnLi4vcHJpdmF0ZS91dGlscyc7XG5pbXBvcnQgdHlwZSB7IElucHV0QmFzZVByb3BzIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgZ2V0SW5wdXRQcm9wcyA9IChcbiAgICBwcm9wczogSW5wdXRCYXNlUHJvcHMsXG4pOiBIVE1MQXR0cmlidXRlczxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFNlbGVjdEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50PiA9PiAoe1xuICAgIC4uLmdldFRleHRQcm9wcyhwcm9wcyksXG4gICAgLi4uZ2V0RGF0ZVRpbWVQcm9wcyhwcm9wcyksXG4gICAgLi4uZ2V0Qm91bmRlZFByb3BzKHByb3BzKSxcbiAgICAuLi5nZXRUZXh0YXJlYVByb3BzKHByb3BzKSxcbiAgICAuLi5nZXRDaGVja2FibGVQcm9wcyhwcm9wcyksXG4gICAgLi4uZ2V0UmFkaW9Qcm9wcyhwcm9wcyksXG4gICAgLi4uZ2V0U2VsZWN0UHJvcHMocHJvcHMpLFxufSk7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7TUFhYSxhQUFhLEdBQUcsQ0FDekIsS0FBcUIsTUFDeUQ7SUFDOUUsR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDO0lBQ3RCLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxDQUFDO0lBQzFCLEdBQUcsZUFBZSxDQUFDLEtBQUssQ0FBQztJQUN6QixHQUFHLGdCQUFnQixDQUFDLEtBQUssQ0FBQztJQUMxQixHQUFHLGlCQUFpQixDQUFDLEtBQUssQ0FBQztJQUMzQixHQUFHLGFBQWEsQ0FBQyxLQUFLLENBQUM7SUFDdkIsR0FBRyxjQUFjLENBQUMsS0FBSyxDQUFDO0NBQzNCOzs7OyJ9
|
|
File without changes
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { useState, useEffect, useRef } from 'react';
|
|
2
|
+
|
|
3
|
+
function useForcedRef() {
|
|
4
|
+
const [init] = useState(true);
|
|
5
|
+
const [, setFauxState] = useState(false);
|
|
6
|
+
useEffect(() => setFauxState(init), [init]);
|
|
7
|
+
return useRef(null);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export { useForcedRef };
|
|
11
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlRm9yY2VkUmVmLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaW5wdXQvdXRpbHMvdXNlRm9yY2VkUmVmLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlZk9iamVjdCwgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuXG5leHBvcnQgZnVuY3Rpb24gdXNlRm9yY2VkUmVmPFQ+KCk6IFJlZk9iamVjdDxUPiB7XG4gICAgY29uc3QgW2luaXRdID0gdXNlU3RhdGU8Ym9vbGVhbj4odHJ1ZSk7XG4gICAgY29uc3QgWywgc2V0RmF1eFN0YXRlXSA9IHVzZVN0YXRlPGJvb2xlYW4+KGZhbHNlKTtcblxuICAgIHVzZUVmZmVjdCgoKSA9PiBzZXRGYXV4U3RhdGUoaW5pdCksIFtpbml0XSk7XG5cbiAgICByZXR1cm4gdXNlUmVmPFQ+KG51bGwpO1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O1NBRWdCLFlBQVk7SUFDeEIsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLFFBQVEsQ0FBVSxJQUFJLENBQUMsQ0FBQztJQUN2QyxNQUFNLEdBQUcsWUFBWSxDQUFDLEdBQUcsUUFBUSxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBRWxELFNBQVMsQ0FBQyxNQUFNLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFFNUMsT0FBTyxNQUFNLENBQUksSUFBSSxDQUFDLENBQUM7QUFDM0I7Ozs7In0=
|
|
@@ -5,11 +5,12 @@ import styles from '../style/index.module.less.js';
|
|
|
5
5
|
import { moduleClassNames, booleanClassNames, stringClassNames } from '../../css-module/classNames.js';
|
|
6
6
|
import { useLayoutPaddingClassnames } from '../module-layout-padding/hooks/useLayoutPaddingClassnames.js';
|
|
7
7
|
import { useLayoutHideClassnames } from '../module-layout-hide/hooks/useLayoutHideClassnames.js';
|
|
8
|
+
import { useLayoutRelativeClassnames } from '../module-layout-relative/hooks/useLayoutRelativeClassnames.js';
|
|
8
9
|
|
|
9
10
|
const LAYOUT_FLEX = 'LayoutFlex';
|
|
10
11
|
const useLayoutFlexClassNames = (layout, props) => {
|
|
11
12
|
useStyleExtract(styles);
|
|
12
|
-
const { gap = LAYOUT_GAP_DEFAULT, padding = LAYOUT_PADDING_DEFAULT, nowrap, column, reverse, direction, justifyContent, alignItems, hide, inline, } = props || {};
|
|
13
|
+
const { gap = LAYOUT_GAP_DEFAULT, padding = LAYOUT_PADDING_DEFAULT, nowrap, column, reverse, direction, justifyContent, alignItems, hide, relative, inline, } = props || {};
|
|
13
14
|
if (layout !== 'flex') {
|
|
14
15
|
return [];
|
|
15
16
|
}
|
|
@@ -28,8 +29,15 @@ const useLayoutFlexClassNames = (layout, props) => {
|
|
|
28
29
|
const paddingClassNames = useLayoutPaddingClassnames(padding);
|
|
29
30
|
const showClassName = inline ? 'inline-flex' : 'flex';
|
|
30
31
|
const hideClassNames = useLayoutHideClassnames(hide, showClassName);
|
|
31
|
-
|
|
32
|
+
const relativeClassNames = useLayoutRelativeClassnames(relative);
|
|
33
|
+
return [
|
|
34
|
+
...classNames,
|
|
35
|
+
...gapClassNames,
|
|
36
|
+
...paddingClassNames,
|
|
37
|
+
...hideClassNames,
|
|
38
|
+
...relativeClassNames,
|
|
39
|
+
];
|
|
32
40
|
};
|
|
33
41
|
|
|
34
42
|
export { useLayoutFlexClassNames };
|
|
35
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlTGF5b3V0RmxleENsYXNzTmFtZXMuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9sYXlvdXQvaG9va3MvdXNlTGF5b3V0RmxleENsYXNzTmFtZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBMYXlvdXRGbGV4UHJvcHMsIExheW91dFR5cGUgfSBmcm9tICdAcHJlcGx5L2RzLWNvcmUnO1xuaW1wb3J0IHtcbiAgICBMQVlPVVRfRkxFWF9ESVJFQ1RJT05fREVGQVVMVCxcbiAgICBMQVlPVVRfR0FQX0RFRkFVTFQsXG4gICAgTEFZT1VUX1BBRERJTkdfREVGQVVMVCxcbn0gZnJvbSAnQHByZXBseS9kcy1jb3JlJztcblxuaW1wb3J0IHsgYm9vbGVhbkNsYXNzTmFtZXMsIG1vZHVsZUNsYXNzTmFtZXMsIHN0cmluZ0NsYXNzTmFtZXMgfSBmcm9tICcuLi8uLi9jc3MtbW9kdWxlJztcbmltcG9ydCB7IHVzZVN0eWxlRXh0cmFjdCB9IGZyb20gJy4uLy4uL3Nzci9ob29rcy91c2VTdHlsZUV4dHJhY3QnO1xuaW1wb3J0IHsgdXNlTGF5b3V0R2FwQ2xhc3NuYW1lcyB9IGZyb20gJy4uL21vZHVsZS1sYXlvdXQtZ2FwL2hvb2tzL3VzZUxheW91dEdhcENsYXNzbmFtZXMnO1xuaW1wb3J0IHsgdXNlTGF5b3V0SGlkZUNsYXNzbmFtZXMgfSBmcm9tICcuLi9tb2R1bGUtbGF5b3V0LWhpZGUnO1xuaW1wb3J0IHsgdXNlTGF5b3V0UGFkZGluZ0NsYXNzbmFtZXMgfSBmcm9tICcuLi9tb2R1bGUtbGF5b3V0LXBhZGRpbmcnO1xuaW1wb3J0IHsgdXNlTGF5b3V0UmVsYXRpdmVDbGFzc25hbWVzIH0gZnJvbSAnLi4vbW9kdWxlLWxheW91dC1yZWxhdGl2ZSc7XG5pbXBvcnQgc3R5bGVzIGZyb20gJy4uL3N0eWxlL2luZGV4Lm1vZHVsZS5sZXNzJztcblxuY29uc3QgTEFZT1VUX0ZMRVggPSAnTGF5b3V0RmxleCc7XG5cbnR5cGUgSG9vayA9IChsYXlvdXQ/OiBMYXlvdXRUeXBlLCBwcm9wcz86IExheW91dEZsZXhQcm9wcykgPT4gc3RyaW5nW107XG5cbmV4cG9ydCBjb25zdCB1c2VMYXlvdXRGbGV4Q2xhc3NOYW1lczogSG9vayA9IChsYXlvdXQsIHByb3BzKSA9PiB7XG4gICAgdXNlU3R5bGVFeHRyYWN0KHN0eWxlcyk7XG5cbiAgICBjb25zdCB7XG4gICAgICAgIGdhcCA9IExBWU9VVF9HQVBfREVGQVVMVCxcbiAgICAgICAgcGFkZGluZyA9IExBWU9VVF9QQURESU5HX0RFRkFVTFQsXG4gICAgICAgIG5vd3JhcCxcbiAgICAgICAgY29sdW1uLFxuICAgICAgICByZXZlcnNlLFxuICAgICAgICBkaXJlY3Rpb24sXG4gICAgICAgIGp1c3RpZnlDb250ZW50LFxuICAgICAgICBhbGlnbkl0ZW1zLFxuICAgICAgICBoaWRlLFxuICAgICAgICByZWxhdGl2ZSxcbiAgICAgICAgaW5saW5lLFxuICAgIH0gPSBwcm9wcyB8fCB7fTtcblxuICAgIGlmIChsYXlvdXQgIT09ICdmbGV4Jykge1xuICAgICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgY29uc3QgYWN0dWFsRGlyZWN0aW9uID1cbiAgICAgICAgZGlyZWN0aW9uIHx8ICghcmV2ZXJzZSAmJiAhY29sdW1uID8gTEFZT1VUX0ZMRVhfRElSRUNUSU9OX0RFRkFVTFQgOiB1bmRlZmluZWQpO1xuXG4gICAgY29uc3QgY29sdW1uQ2xhc3NOYW1lID0gY29sdW1uID8gJ2NvbHVtbicgOiAncm93JztcbiAgICBjb25zdCByZXZlcnNlQ2xhc3NOYW1lID0gcmV2ZXJzZSA/ICdyZXYnIDogJ2Z3ZCc7XG4gICAgY29uc3QgY29sdW1uUmV2ZXJzZUNsYXNzTmFtZSA9IGAke2NvbHVtbkNsYXNzTmFtZX0tJHtyZXZlcnNlQ2xhc3NOYW1lfWA7XG5cbiAgICBjb25zdCBjbGFzc05hbWVzID0gbW9kdWxlQ2xhc3NOYW1lcyhzdHlsZXMsIExBWU9VVF9GTEVYLCBbXG4gICAgICAgIGJvb2xlYW5DbGFzc05hbWVzKCdub3dyYXAnLCB1bmRlZmluZWQsIG5vd3JhcCksXG4gICAgICAgIGNvbHVtblJldmVyc2VDbGFzc05hbWUsXG4gICAgICAgIHN0cmluZ0NsYXNzTmFtZXMoJ2RpcmVjdGlvbicsIGFjdHVhbERpcmVjdGlvbiksXG4gICAgICAgIHN0cmluZ0NsYXNzTmFtZXMoJ2p1c3RpZnktY29udGVudCcsIGp1c3RpZnlDb250ZW50KSxcbiAgICAgICAgc3RyaW5nQ2xhc3NOYW1lcygnYWxpZ24taXRlbXMnLCBhbGlnbkl0ZW1zKSxcbiAgICBdKTtcblxuICAgIGNvbnN0IGdhcENsYXNzTmFtZXMgPSB1c2VMYXlvdXRHYXBDbGFzc25hbWVzKGdhcCk7XG4gICAgY29uc3QgcGFkZGluZ0NsYXNzTmFtZXMgPSB1c2VMYXlvdXRQYWRkaW5nQ2xhc3NuYW1lcyhwYWRkaW5nKTtcbiAgICBjb25zdCBzaG93Q2xhc3NOYW1lID0gaW5saW5lID8gJ2lubGluZS1mbGV4JyA6ICdmbGV4JztcbiAgICBjb25zdCBoaWRlQ2xhc3NOYW1lcyA9IHVzZUxheW91dEhpZGVDbGFzc25hbWVzKGhpZGUsIHNob3dDbGFzc05hbWUpO1xuICAgIGNvbnN0IHJlbGF0aXZlQ2xhc3NOYW1lcyA9IHVzZUxheW91dFJlbGF0aXZlQ2xhc3NuYW1lcyhyZWxhdGl2ZSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgICAuLi5jbGFzc05hbWVzLFxuICAgICAgICAuLi5nYXBDbGFzc05hbWVzLFxuICAgICAgICAuLi5wYWRkaW5nQ2xhc3NOYW1lcyxcbiAgICAgICAgLi4uaGlkZUNsYXNzTmFtZXMsXG4gICAgICAgIC4uLnJlbGF0aXZlQ2xhc3NOYW1lcyxcbiAgICBdO1xufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFlQSxNQUFNLFdBQVcsR0FBRyxZQUFZLENBQUM7TUFJcEIsdUJBQXVCLEdBQVMsQ0FBQyxNQUFNLEVBQUUsS0FBSztJQUN2RCxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFeEIsTUFBTSxFQUNGLEdBQUcsR0FBRyxrQkFBa0IsRUFDeEIsT0FBTyxHQUFHLHNCQUFzQixFQUNoQyxNQUFNLEVBQ04sTUFBTSxFQUNOLE9BQU8sRUFDUCxTQUFTLEVBQ1QsY0FBYyxFQUNkLFVBQVUsRUFDVixJQUFJLEVBQ0osUUFBUSxFQUNSLE1BQU0sR0FDVCxHQUFHLEtBQUssSUFBSSxFQUFFLENBQUM7SUFFaEIsSUFBSSxNQUFNLEtBQUssTUFBTSxFQUFFO1FBQ25CLE9BQU8sRUFBRSxDQUFDO0tBQ2I7SUFFRCxNQUFNLGVBQWUsR0FDakIsU0FBUyxLQUFLLENBQUMsT0FBTyxJQUFJLENBQUMsTUFBTSxHQUFHLDZCQUE2QixHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBRW5GLE1BQU0sZUFBZSxHQUFHLE1BQU0sR0FBRyxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ2xELE1BQU0sZ0JBQWdCLEdBQUcsT0FBTyxHQUFHLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDakQsTUFBTSxzQkFBc0IsR0FBRyxHQUFHLGVBQWUsSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO0lBRXhFLE1BQU0sVUFBVSxHQUFHLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUU7UUFDckQsaUJBQWlCLENBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQUM7UUFDOUMsc0JBQXNCO1FBQ3RCLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxlQUFlLENBQUM7UUFDOUMsZ0JBQWdCLENBQUMsaUJBQWlCLEVBQUUsY0FBYyxDQUFDO1FBQ25ELGdCQUFnQixDQUFDLGFBQWEsRUFBRSxVQUFVLENBQUM7S0FDOUMsQ0FBQyxDQUFDO0lBRUgsTUFBTSxhQUFhLEdBQUcsc0JBQXNCLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEQsTUFBTSxpQkFBaUIsR0FBRywwQkFBMEIsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM5RCxNQUFNLGFBQWEsR0FBRyxNQUFNLEdBQUcsYUFBYSxHQUFHLE1BQU0sQ0FBQztJQUN0RCxNQUFNLGNBQWMsR0FBRyx1QkFBdUIsQ0FBQyxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDcEUsTUFBTSxrQkFBa0IsR0FBRywyQkFBMkIsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUVqRSxPQUFPO1FBQ0gsR0FBRyxVQUFVO1FBQ2IsR0FBRyxhQUFhO1FBQ2hCLEdBQUcsaUJBQWlCO1FBQ3BCLEdBQUcsY0FBYztRQUNqQixHQUFHLGtCQUFrQjtLQUN4QixDQUFDO0FBQ047Ozs7In0=
|
|
@@ -4,12 +4,13 @@ import { useLayoutGapClassnames } from '../module-layout-gap/hooks/useLayoutGapC
|
|
|
4
4
|
import styles from '../style/index.module.less.js';
|
|
5
5
|
import { useLayoutPaddingClassnames } from '../module-layout-padding/hooks/useLayoutPaddingClassnames.js';
|
|
6
6
|
import { useLayoutHideClassnames } from '../module-layout-hide/hooks/useLayoutHideClassnames.js';
|
|
7
|
+
import { useLayoutRelativeClassnames } from '../module-layout-relative/hooks/useLayoutRelativeClassnames.js';
|
|
7
8
|
import { moduleClassNames, stringClassNames } from '../../css-module/classNames.js';
|
|
8
9
|
|
|
9
10
|
const LAYOUT_GRID = 'LayoutGrid';
|
|
10
11
|
const useLayoutGridClassNames = (layout, props) => {
|
|
11
12
|
useStyleExtract(styles);
|
|
12
|
-
const { gap = LAYOUT_GAP_DEFAULT, padding = LAYOUT_PADDING_DEFAULT, justifyContent, alignItems, justifyItems, hide, } = props || {};
|
|
13
|
+
const { gap = LAYOUT_GAP_DEFAULT, padding = LAYOUT_PADDING_DEFAULT, justifyContent, alignItems, justifyItems, hide, relative, } = props || {};
|
|
13
14
|
if (layout !== 'grid') {
|
|
14
15
|
return [];
|
|
15
16
|
}
|
|
@@ -21,8 +22,15 @@ const useLayoutGridClassNames = (layout, props) => {
|
|
|
21
22
|
const gapClassNames = useLayoutGapClassnames(gap);
|
|
22
23
|
const paddingClassNames = useLayoutPaddingClassnames(padding);
|
|
23
24
|
const hideClassNames = useLayoutHideClassnames(hide, 'grid');
|
|
24
|
-
|
|
25
|
+
const relativeClassNames = useLayoutRelativeClassnames(relative);
|
|
26
|
+
return [
|
|
27
|
+
...classNames,
|
|
28
|
+
...gapClassNames,
|
|
29
|
+
...paddingClassNames,
|
|
30
|
+
...hideClassNames,
|
|
31
|
+
...relativeClassNames,
|
|
32
|
+
];
|
|
25
33
|
};
|
|
26
34
|
|
|
27
35
|
export { useLayoutGridClassNames };
|
|
28
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlTGF5b3V0R3JpZENsYXNzTmFtZXMuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9sYXlvdXQvaG9va3MvdXNlTGF5b3V0R3JpZENsYXNzTmFtZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBMYXlvdXRHcmlkUHJvcHMsIExheW91dFR5cGUgfSBmcm9tICdAcHJlcGx5L2RzLWNvcmUnO1xuaW1wb3J0IHsgTEFZT1VUX0dBUF9ERUZBVUxULCBMQVlPVVRfUEFERElOR19ERUZBVUxUIH0gZnJvbSAnQHByZXBseS9kcy1jb3JlJztcblxuaW1wb3J0IHsgbW9kdWxlQ2xhc3NOYW1lcywgc3RyaW5nQ2xhc3NOYW1lcyB9IGZyb20gJy4uLy4uL2Nzcy1tb2R1bGUnO1xuaW1wb3J0IHsgdXNlU3R5bGVFeHRyYWN0IH0gZnJvbSAnLi4vLi4vc3NyL2hvb2tzL3VzZVN0eWxlRXh0cmFjdCc7XG5pbXBvcnQgeyB1c2VMYXlvdXRHYXBDbGFzc25hbWVzIH0gZnJvbSAnLi4vbW9kdWxlLWxheW91dC1nYXAvaG9va3MvdXNlTGF5b3V0R2FwQ2xhc3NuYW1lcyc7XG5pbXBvcnQgeyB1c2VMYXlvdXRIaWRlQ2xhc3NuYW1lcyB9IGZyb20gJy4uL21vZHVsZS1sYXlvdXQtaGlkZSc7XG5pbXBvcnQgeyB1c2VMYXlvdXRQYWRkaW5nQ2xhc3NuYW1lcyB9IGZyb20gJy4uL21vZHVsZS1sYXlvdXQtcGFkZGluZyc7XG5pbXBvcnQgeyB1c2VMYXlvdXRSZWxhdGl2ZUNsYXNzbmFtZXMgfSBmcm9tICcuLi9tb2R1bGUtbGF5b3V0LXJlbGF0aXZlJztcbmltcG9ydCBzdHlsZXMgZnJvbSAnLi4vc3R5bGUvaW5kZXgubW9kdWxlLmxlc3MnO1xuXG5jb25zdCBMQVlPVVRfR1JJRCA9ICdMYXlvdXRHcmlkJztcblxudHlwZSBIb29rID0gKGxheW91dD86IExheW91dFR5cGUsIHByb3BzPzogTGF5b3V0R3JpZFByb3BzKSA9PiBzdHJpbmdbXTtcblxuZXhwb3J0IGNvbnN0IHVzZUxheW91dEdyaWRDbGFzc05hbWVzOiBIb29rID0gKGxheW91dCwgcHJvcHMpID0+IHtcbiAgICB1c2VTdHlsZUV4dHJhY3Qoc3R5bGVzKTtcblxuICAgIGNvbnN0IHtcbiAgICAgICAgZ2FwID0gTEFZT1VUX0dBUF9ERUZBVUxULFxuICAgICAgICBwYWRkaW5nID0gTEFZT1VUX1BBRERJTkdfREVGQVVMVCxcbiAgICAgICAganVzdGlmeUNvbnRlbnQsXG4gICAgICAgIGFsaWduSXRlbXMsXG4gICAgICAgIGp1c3RpZnlJdGVtcyxcbiAgICAgICAgaGlkZSxcbiAgICAgICAgcmVsYXRpdmUsXG4gICAgfSA9IHByb3BzIHx8IHt9O1xuXG4gICAgaWYgKGxheW91dCAhPT0gJ2dyaWQnKSB7XG4gICAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICBjb25zdCBjbGFzc05hbWVzID0gbW9kdWxlQ2xhc3NOYW1lcyhzdHlsZXMsIExBWU9VVF9HUklELCBbXG4gICAgICAgIHN0cmluZ0NsYXNzTmFtZXMoJ2p1c3RpZnktY29udGVudCcsIGp1c3RpZnlDb250ZW50KSxcbiAgICAgICAgc3RyaW5nQ2xhc3NOYW1lcygnYWxpZ24taXRlbXMnLCBhbGlnbkl0ZW1zKSxcbiAgICAgICAgc3RyaW5nQ2xhc3NOYW1lcygnanVzdGlmeS1pdGVtcycsIGp1c3RpZnlJdGVtcyksXG4gICAgXSk7XG5cbiAgICBjb25zdCBnYXBDbGFzc05hbWVzID0gdXNlTGF5b3V0R2FwQ2xhc3NuYW1lcyhnYXApO1xuICAgIGNvbnN0IHBhZGRpbmdDbGFzc05hbWVzID0gdXNlTGF5b3V0UGFkZGluZ0NsYXNzbmFtZXMocGFkZGluZyk7XG4gICAgY29uc3QgaGlkZUNsYXNzTmFtZXMgPSB1c2VMYXlvdXRIaWRlQ2xhc3NuYW1lcyhoaWRlLCAnZ3JpZCcpO1xuICAgIGNvbnN0IHJlbGF0aXZlQ2xhc3NOYW1lcyA9IHVzZUxheW91dFJlbGF0aXZlQ2xhc3NuYW1lcyhyZWxhdGl2ZSk7XG5cbiAgICByZXR1cm4gW1xuICAgICAgICAuLi5jbGFzc05hbWVzLFxuICAgICAgICAuLi5nYXBDbGFzc05hbWVzLFxuICAgICAgICAuLi5wYWRkaW5nQ2xhc3NOYW1lcyxcbiAgICAgICAgLi4uaGlkZUNsYXNzTmFtZXMsXG4gICAgICAgIC4uLnJlbGF0aXZlQ2xhc3NOYW1lcyxcbiAgICBdO1xufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFXQSxNQUFNLFdBQVcsR0FBRyxZQUFZLENBQUM7TUFJcEIsdUJBQXVCLEdBQVMsQ0FBQyxNQUFNLEVBQUUsS0FBSztJQUN2RCxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFeEIsTUFBTSxFQUNGLEdBQUcsR0FBRyxrQkFBa0IsRUFDeEIsT0FBTyxHQUFHLHNCQUFzQixFQUNoQyxjQUFjLEVBQ2QsVUFBVSxFQUNWLFlBQVksRUFDWixJQUFJLEVBQ0osUUFBUSxHQUNYLEdBQUcsS0FBSyxJQUFJLEVBQUUsQ0FBQztJQUVoQixJQUFJLE1BQU0sS0FBSyxNQUFNLEVBQUU7UUFDbkIsT0FBTyxFQUFFLENBQUM7S0FDYjtJQUVELE1BQU0sVUFBVSxHQUFHLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUU7UUFDckQsZ0JBQWdCLENBQUMsaUJBQWlCLEVBQUUsY0FBYyxDQUFDO1FBQ25ELGdCQUFnQixDQUFDLGFBQWEsRUFBRSxVQUFVLENBQUM7UUFDM0MsZ0JBQWdCLENBQUMsZUFBZSxFQUFFLFlBQVksQ0FBQztLQUNsRCxDQUFDLENBQUM7SUFFSCxNQUFNLGFBQWEsR0FBRyxzQkFBc0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNsRCxNQUFNLGlCQUFpQixHQUFHLDBCQUEwQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzlELE1BQU0sY0FBYyxHQUFHLHVCQUF1QixDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUM3RCxNQUFNLGtCQUFrQixHQUFHLDJCQUEyQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRWpFLE9BQU87UUFDSCxHQUFHLFVBQVU7UUFDYixHQUFHLGFBQWE7UUFDaEIsR0FBRyxpQkFBaUI7UUFDcEIsR0FBRyxjQUFjO1FBQ2pCLEdBQUcsa0JBQWtCO0tBQ3hCLENBQUM7QUFDTjs7OzsifQ==
|
package/dist/layout/index.d.ts
CHANGED
|
@@ -5,4 +5,5 @@ export { useLayoutGridResponsiveColumns } from './hooks/useLayoutGridResponsiveC
|
|
|
5
5
|
export { useLayoutHideClassnames } from './module-layout-hide';
|
|
6
6
|
export { useAlignSelfClassNames } from './module-align-self';
|
|
7
7
|
export { useLayoutPaddingClassnames } from './module-layout-padding';
|
|
8
|
+
export { useLayoutRelativeClassnames } from './module-layout-relative';
|
|
8
9
|
export * from './module-layout-gap';
|
package/dist/layout/index.js
CHANGED
|
@@ -5,5 +5,6 @@ export { useLayoutGridResponsiveColumns } from './hooks/useLayoutGridResponsiveC
|
|
|
5
5
|
export { useLayoutHideClassnames } from './module-layout-hide/hooks/useLayoutHideClassnames.js';
|
|
6
6
|
export { useAlignSelfClassNames } from './module-align-self/hooks/useAlignSelfClassNames.js';
|
|
7
7
|
export { useLayoutPaddingClassnames } from './module-layout-padding/hooks/useLayoutPaddingClassnames.js';
|
|
8
|
+
export { useLayoutRelativeClassnames } from './module-layout-relative/hooks/useLayoutRelativeClassnames.js';
|
|
8
9
|
export { useLayoutGapClassnames } from './module-layout-gap/hooks/useLayoutGapClassnames.js';
|
|
9
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbXSwic291cmNlc0NvbnRlbnQiOltdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OzsifQ==
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { useStyleExtract } from '../../../ssr/hooks/useStyleExtract.js';
|
|
2
|
+
import styles from '../style/index.module.less.js';
|
|
3
|
+
import { moduleLocals, booleanClassNames } from '../../../css-module/classNames.js';
|
|
4
|
+
|
|
5
|
+
const LAYOUT_RELATIVE = 'LayoutRelative';
|
|
6
|
+
const useLayoutRelativeClassnames = (relative) => {
|
|
7
|
+
useStyleExtract(styles);
|
|
8
|
+
return moduleLocals(styles, LAYOUT_RELATIVE, [
|
|
9
|
+
booleanClassNames('relative', undefined, relative),
|
|
10
|
+
]);
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export { useLayoutRelativeClassnames };
|
|
14
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlTGF5b3V0UmVsYXRpdmVDbGFzc25hbWVzLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGF5b3V0L21vZHVsZS1sYXlvdXQtcmVsYXRpdmUvaG9va3MvdXNlTGF5b3V0UmVsYXRpdmVDbGFzc25hbWVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUmVzcG9uc2l2ZSB9IGZyb20gJ0BwcmVwbHkvZHMtY29yZSc7XG5cbmltcG9ydCB7IGJvb2xlYW5DbGFzc05hbWVzLCBtb2R1bGVMb2NhbHMgfSBmcm9tICcuLi8uLi8uLi9jc3MtbW9kdWxlJztcbmltcG9ydCB7IHVzZVN0eWxlRXh0cmFjdCB9IGZyb20gJy4uLy4uLy4uL3Nzci9ob29rcy91c2VTdHlsZUV4dHJhY3QnO1xuaW1wb3J0IHN0eWxlcyBmcm9tICcuLi9zdHlsZS9pbmRleC5tb2R1bGUubGVzcyc7XG5cbmNvbnN0IExBWU9VVF9SRUxBVElWRSA9ICdMYXlvdXRSZWxhdGl2ZSc7XG5cbmV4cG9ydCBjb25zdCB1c2VMYXlvdXRSZWxhdGl2ZUNsYXNzbmFtZXMgPSAocmVsYXRpdmU/OiBSZXNwb25zaXZlPGJvb2xlYW4+KTogc3RyaW5nW10gPT4ge1xuICAgIHVzZVN0eWxlRXh0cmFjdChzdHlsZXMpO1xuXG4gICAgcmV0dXJuIG1vZHVsZUxvY2FscyhzdHlsZXMsIExBWU9VVF9SRUxBVElWRSwgW1xuICAgICAgICBib29sZWFuQ2xhc3NOYW1lcygncmVsYXRpdmUnLCB1bmRlZmluZWQsIHJlbGF0aXZlKSxcbiAgICBdKTtcbn07XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQU1BLE1BQU0sZUFBZSxHQUFHLGdCQUFnQixDQUFDO01BRTVCLDJCQUEyQixHQUFHLENBQUMsUUFBOEI7SUFDdEUsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRXhCLE9BQU8sWUFBWSxDQUFDLE1BQU0sRUFBRSxlQUFlLEVBQUU7UUFDekMsaUJBQWlCLENBQUMsVUFBVSxFQUFFLFNBQVMsRUFBRSxRQUFRLENBQUM7S0FDckQsQ0FBQyxDQUFDO0FBQ1A7Ozs7In0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { useLayoutRelativeClassnames } from './hooks/useLayoutRelativeClassnames';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import styleInject from '../../../external/style-inject/dist/style-inject.es.js';
|
|
2
|
+
|
|
3
|
+
var css_248z = "._3xRBBL{position:relative}";
|
|
4
|
+
var styles = {__id:"/home/jenkins/workspace/design-system_main/packages/web-core/src/layout/module-layout-relative/style/index.module.less",__css:css_248z,"LayoutRelative--relative":"_3xRBBL"};
|
|
5
|
+
var stylesheet=css_248z;
|
|
6
|
+
styleInject(css_248z);
|
|
7
|
+
|
|
8
|
+
export { styles as default, stylesheet };
|
|
9
|
+
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import styleInject from '../../../external/style-inject/dist/style-inject.es.js';
|
|
2
|
+
|
|
3
|
+
var css_248z = "";
|
|
4
|
+
var stylesheet="";
|
|
5
|
+
styleInject(css_248z);
|
|
6
|
+
|
|
7
|
+
export { css_248z as default, stylesheet };
|
|
8
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjpudWxsLCJzb3VyY2VzIjpbbnVsbF0sInNvdXJjZXNDb250ZW50IjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHdCQUF3Qix3REFBNEQ7QUFDcEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './types';
|
|
@@ -96,6 +96,11 @@
|
|
|
96
96
|
background-color: @@token;
|
|
97
97
|
}
|
|
98
98
|
|
|
99
|
+
.border-width(@namespace, @key) {
|
|
100
|
+
@token: '@{namespace}-@{key}-borderWidth';
|
|
101
|
+
border-width: @@token;
|
|
102
|
+
}
|
|
103
|
+
|
|
99
104
|
.border-color(@namespace, @key) {
|
|
100
105
|
@token: '@{namespace}-@{key}-borderColor';
|
|
101
106
|
border-color: @@token;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@preply/ds-web-core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.49.0",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -19,14 +19,14 @@
|
|
|
19
19
|
"dev": "run build:rollup -w"
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@preply/ds-core": "0.
|
|
23
|
-
"@preply/ds-core-types": "0.
|
|
22
|
+
"@preply/ds-core": "0.49.0",
|
|
23
|
+
"@preply/ds-core-types": "0.49.0"
|
|
24
24
|
},
|
|
25
25
|
"peerDependencies": {
|
|
26
|
-
"@preply/ds-core": "0.
|
|
27
|
-
"@preply/ds-core-types": "0.
|
|
26
|
+
"@preply/ds-core": "0.49.0",
|
|
27
|
+
"@preply/ds-core-types": "0.49.0",
|
|
28
28
|
"react": "^16.8.3",
|
|
29
29
|
"react-dom": "^16.8.3"
|
|
30
30
|
},
|
|
31
|
-
"gitHead": "
|
|
31
|
+
"gitHead": "3e8afea186374a22e2491bf687edd78b6ff99e60"
|
|
32
32
|
}
|
package/dist/input/util.js
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { useState, useEffect, useRef } from 'react';
|
|
2
|
-
|
|
3
|
-
function useForcedRef() {
|
|
4
|
-
const [init] = useState(true);
|
|
5
|
-
const [, setFauxState] = useState(false);
|
|
6
|
-
useEffect(() => setFauxState(init), [init]);
|
|
7
|
-
return useRef(null);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export { useForcedRef };
|
|
11
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2lucHV0L3V0aWwudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVmT2JqZWN0LCB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VGb3JjZWRSZWY8VD4oKTogUmVmT2JqZWN0PFQ+IHtcbiAgICBjb25zdCBbaW5pdF0gPSB1c2VTdGF0ZTxib29sZWFuPih0cnVlKTtcbiAgICBjb25zdCBbLCBzZXRGYXV4U3RhdGVdID0gdXNlU3RhdGU8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgdXNlRWZmZWN0KCgpID0+IHNldEZhdXhTdGF0ZShpbml0KSwgW2luaXRdKTtcblxuICAgIHJldHVybiB1c2VSZWY8VD4obnVsbCk7XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7U0FFZ0IsWUFBWTtJQUN4QixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsUUFBUSxDQUFVLElBQUksQ0FBQyxDQUFDO0lBQ3ZDLE1BQU0sR0FBRyxZQUFZLENBQUMsR0FBRyxRQUFRLENBQVUsS0FBSyxDQUFDLENBQUM7SUFFbEQsU0FBUyxDQUFDLE1BQU0sWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUU1QyxPQUFPLE1BQU0sQ0FBSSxJQUFJLENBQUMsQ0FBQztBQUMzQjs7OzsifQ==
|