@preply/ds-web-core 0.49.0 → 0.51.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.
@@ -0,0 +1,8 @@
1
+ import type { InputPasswordProps } from '../../input';
2
+ import type { FieldLayoutProps, PasswordFieldProps } from '../types';
3
+ declare type UsePasswordFieldState = {
4
+ layoutProps: Omit<FieldLayoutProps, 'input' | 'className' | 'inputHandle'>;
5
+ inputProps: InputPasswordProps;
6
+ };
7
+ export declare const usePasswordField: (props: PasswordFieldProps) => UsePasswordFieldState;
8
+ export {};
@@ -0,0 +1,63 @@
1
+ import { makeTinyId } from '@preply/ds-core';
2
+ import { useState } from 'react';
3
+ import { makeDescId } from '../../accessibility/aria/utils.js';
4
+ import { AUTO_COMPLETE_TEXT_DEFAULT } from '../../input/constants.js';
5
+
6
+ const usePasswordField = (props) => {
7
+ const { id, value, label, hideLabel, preserveSpace, required, requiredLabel, additionalText, disabled, hasError, errorMessage, onFocus, onBlur, onChange, autoComplete = AUTO_COMPLETE_TEXT_DEFAULT, inputDataset, dataset, ...rest } = props;
8
+ const actualId = id || makeTinyId();
9
+ const [isFocused, setIsFocused] = useState(false);
10
+ const [isTouched, setIsTouched] = useState(false);
11
+ const [isChanged, setIsChanged] = useState(false);
12
+ const handleFocus = ev => {
13
+ setIsFocused(true);
14
+ setIsTouched(true);
15
+ onFocus === null || onFocus === void 0 ? void 0 : onFocus(ev);
16
+ };
17
+ const handleBlur = ev => {
18
+ setIsFocused(false);
19
+ onBlur === null || onBlur === void 0 ? void 0 : onBlur(ev);
20
+ };
21
+ const handleChange = ev => {
22
+ setIsChanged(false);
23
+ onChange === null || onChange === void 0 ? void 0 : onChange(ev);
24
+ };
25
+ const actualHasError = hasError || !!errorMessage;
26
+ const actualAdditionalText = errorMessage || additionalText;
27
+ const describeId = actualHasError || !!additionalText ? makeDescId(actualId) : undefined;
28
+ return {
29
+ layoutProps: {
30
+ id: actualId,
31
+ label,
32
+ hideLabel,
33
+ required,
34
+ requiredLabel,
35
+ additionalText: actualAdditionalText,
36
+ preserveSpace,
37
+ disabled,
38
+ isFocused,
39
+ isTouched,
40
+ isChanged,
41
+ hasValue: typeof value !== undefined,
42
+ hasError: actualHasError,
43
+ dataset,
44
+ },
45
+ inputProps: {
46
+ id: actualId,
47
+ value,
48
+ onChange: handleChange,
49
+ onFocus: handleFocus,
50
+ onBlur: handleBlur,
51
+ required,
52
+ disabled,
53
+ hasError: actualHasError,
54
+ autoComplete,
55
+ dataset: inputDataset,
56
+ 'aria-describedby': describeId,
57
+ ...rest,
58
+ },
59
+ };
60
+ };
61
+
62
+ export { usePasswordField };
63
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlUGFzc3dvcmRGaWVsZC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2ZpZWxkL2hvb2tzL3VzZVBhc3N3b3JkRmllbGQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbWFrZVRpbnlJZCB9IGZyb20gJ0BwcmVwbHkvZHMtY29yZSc7XG5pbXBvcnQgeyBDaGFuZ2VFdmVudEhhbmRsZXIsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBtYWtlRGVzY0lkIH0gZnJvbSAnLi4vLi4vYWNjZXNzaWJpbGl0eS9hcmlhL3V0aWxzJztcbmltcG9ydCB0eXBlIHsgRm9jdXNFdmVudEhhbmRsZXIgfSBmcm9tICcuLi8uLi9ldmVudHMnO1xuaW1wb3J0IHR5cGUgeyBJbnB1dFBhc3N3b3JkUHJvcHMgfSBmcm9tICcuLi8uLi9pbnB1dCc7XG5pbXBvcnQgeyBBVVRPX0NPTVBMRVRFX1RFWFRfREVGQVVMVCB9IGZyb20gJy4uLy4uL2lucHV0JztcbmltcG9ydCB0eXBlIHsgRmllbGRMYXlvdXRQcm9wcywgUGFzc3dvcmRGaWVsZFByb3BzIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG50eXBlIFVzZVBhc3N3b3JkRmllbGRTdGF0ZSA9IHtcbiAgICBsYXlvdXRQcm9wczogT21pdDxGaWVsZExheW91dFByb3BzLCAnaW5wdXQnIHwgJ2NsYXNzTmFtZScgfCAnaW5wdXRIYW5kbGUnPjtcbiAgICBpbnB1dFByb3BzOiBJbnB1dFBhc3N3b3JkUHJvcHM7XG59O1xuXG5leHBvcnQgY29uc3QgdXNlUGFzc3dvcmRGaWVsZCA9IChwcm9wczogUGFzc3dvcmRGaWVsZFByb3BzKTogVXNlUGFzc3dvcmRGaWVsZFN0YXRlID0+IHtcbiAgICBjb25zdCB7XG4gICAgICAgIGlkLFxuICAgICAgICB2YWx1ZSxcbiAgICAgICAgbGFiZWwsXG4gICAgICAgIGhpZGVMYWJlbCxcbiAgICAgICAgcHJlc2VydmVTcGFjZSxcbiAgICAgICAgcmVxdWlyZWQsXG4gICAgICAgIHJlcXVpcmVkTGFiZWwsXG4gICAgICAgIGFkZGl0aW9uYWxUZXh0LFxuICAgICAgICBkaXNhYmxlZCxcbiAgICAgICAgaGFzRXJyb3IsXG4gICAgICAgIGVycm9yTWVzc2FnZSxcbiAgICAgICAgb25Gb2N1cyxcbiAgICAgICAgb25CbHVyLFxuICAgICAgICBvbkNoYW5nZSxcbiAgICAgICAgYXV0b0NvbXBsZXRlID0gQVVUT19DT01QTEVURV9URVhUX0RFRkFVTFQsXG4gICAgICAgIGlucHV0RGF0YXNldCxcbiAgICAgICAgZGF0YXNldCxcbiAgICAgICAgLi4ucmVzdFxuICAgIH0gPSBwcm9wcztcblxuICAgIGNvbnN0IGFjdHVhbElkID0gaWQgfHwgbWFrZVRpbnlJZCgpO1xuICAgIGNvbnN0IFtpc0ZvY3VzZWQsIHNldElzRm9jdXNlZF0gPSB1c2VTdGF0ZTxib29sZWFuPihmYWxzZSk7XG4gICAgY29uc3QgW2lzVG91Y2hlZCwgc2V0SXNUb3VjaGVkXSA9IHVzZVN0YXRlPGJvb2xlYW4+KGZhbHNlKTtcbiAgICBjb25zdCBbaXNDaGFuZ2VkLCBzZXRJc0NoYW5nZWRdID0gdXNlU3RhdGU8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgY29uc3QgaGFuZGxlRm9jdXM6IEZvY3VzRXZlbnRIYW5kbGVyID0gZXYgPT4ge1xuICAgICAgICBzZXRJc0ZvY3VzZWQodHJ1ZSk7XG4gICAgICAgIHNldElzVG91Y2hlZCh0cnVlKTtcbiAgICAgICAgb25Gb2N1cz8uKGV2KTtcbiAgICB9O1xuICAgIGNvbnN0IGhhbmRsZUJsdXI6IEZvY3VzRXZlbnRIYW5kbGVyID0gZXYgPT4ge1xuICAgICAgICBzZXRJc0ZvY3VzZWQoZmFsc2UpO1xuICAgICAgICBvbkJsdXI/Lihldik7XG4gICAgfTtcbiAgICBjb25zdCBoYW5kbGVDaGFuZ2U6IENoYW5nZUV2ZW50SGFuZGxlciA9IGV2ID0+IHtcbiAgICAgICAgc2V0SXNDaGFuZ2VkKGZhbHNlKTtcbiAgICAgICAgb25DaGFuZ2U/Lihldik7XG4gICAgfTtcblxuICAgIGNvbnN0IGFjdHVhbEhhc0Vycm9yID0gaGFzRXJyb3IgfHwgISFlcnJvck1lc3NhZ2U7XG4gICAgY29uc3QgYWN0dWFsQWRkaXRpb25hbFRleHQgPSBlcnJvck1lc3NhZ2UgfHwgYWRkaXRpb25hbFRleHQ7XG4gICAgY29uc3QgZGVzY3JpYmVJZCA9IGFjdHVhbEhhc0Vycm9yIHx8ICEhYWRkaXRpb25hbFRleHQgPyBtYWtlRGVzY0lkKGFjdHVhbElkKSA6IHVuZGVmaW5lZDtcblxuICAgIHJldHVybiB7XG4gICAgICAgIGxheW91dFByb3BzOiB7XG4gICAgICAgICAgICBpZDogYWN0dWFsSWQsXG4gICAgICAgICAgICBsYWJlbCxcbiAgICAgICAgICAgIGhpZGVMYWJlbCxcbiAgICAgICAgICAgIHJlcXVpcmVkLFxuICAgICAgICAgICAgcmVxdWlyZWRMYWJlbCxcbiAgICAgICAgICAgIGFkZGl0aW9uYWxUZXh0OiBhY3R1YWxBZGRpdGlvbmFsVGV4dCxcbiAgICAgICAgICAgIHByZXNlcnZlU3BhY2UsXG4gICAgICAgICAgICBkaXNhYmxlZCxcbiAgICAgICAgICAgIGlzRm9jdXNlZCxcbiAgICAgICAgICAgIGlzVG91Y2hlZCxcbiAgICAgICAgICAgIGlzQ2hhbmdlZCxcbiAgICAgICAgICAgIGhhc1ZhbHVlOiB0eXBlb2YgdmFsdWUgIT09IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGhhc0Vycm9yOiBhY3R1YWxIYXNFcnJvcixcbiAgICAgICAgICAgIGRhdGFzZXQsXG4gICAgICAgIH0sXG4gICAgICAgIGlucHV0UHJvcHM6IHtcbiAgICAgICAgICAgIGlkOiBhY3R1YWxJZCxcbiAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgb25DaGFuZ2U6IGhhbmRsZUNoYW5nZSxcbiAgICAgICAgICAgIG9uRm9jdXM6IGhhbmRsZUZvY3VzLFxuICAgICAgICAgICAgb25CbHVyOiBoYW5kbGVCbHVyLFxuICAgICAgICAgICAgcmVxdWlyZWQsXG4gICAgICAgICAgICBkaXNhYmxlZCxcbiAgICAgICAgICAgIGhhc0Vycm9yOiBhY3R1YWxIYXNFcnJvcixcbiAgICAgICAgICAgIGF1dG9Db21wbGV0ZSxcbiAgICAgICAgICAgIGRhdGFzZXQ6IGlucHV0RGF0YXNldCxcbiAgICAgICAgICAgICdhcmlhLWRlc2NyaWJlZGJ5JzogZGVzY3JpYmVJZCxcbiAgICAgICAgICAgIC4uLnJlc3QsXG4gICAgICAgIH0sXG4gICAgfTtcbn07XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7TUFjYSxnQkFBZ0IsR0FBRyxDQUFDLEtBQXlCO0lBQ3RELE1BQU0sRUFDRixFQUFFLEVBQ0YsS0FBSyxFQUNMLEtBQUssRUFDTCxTQUFTLEVBQ1QsYUFBYSxFQUNiLFFBQVEsRUFDUixhQUFhLEVBQ2IsY0FBYyxFQUNkLFFBQVEsRUFDUixRQUFRLEVBQ1IsWUFBWSxFQUNaLE9BQU8sRUFDUCxNQUFNLEVBQ04sUUFBUSxFQUNSLFlBQVksR0FBRywwQkFBMEIsRUFDekMsWUFBWSxFQUNaLE9BQU8sRUFDUCxHQUFHLElBQUksRUFDVixHQUFHLEtBQUssQ0FBQztJQUVWLE1BQU0sUUFBUSxHQUFHLEVBQUUsSUFBSSxVQUFVLEVBQUUsQ0FBQztJQUNwQyxNQUFNLENBQUMsU0FBUyxFQUFFLFlBQVksQ0FBQyxHQUFHLFFBQVEsQ0FBVSxLQUFLLENBQUMsQ0FBQztJQUMzRCxNQUFNLENBQUMsU0FBUyxFQUFFLFlBQVksQ0FBQyxHQUFHLFFBQVEsQ0FBVSxLQUFLLENBQUMsQ0FBQztJQUMzRCxNQUFNLENBQUMsU0FBUyxFQUFFLFlBQVksQ0FBQyxHQUFHLFFBQVEsQ0FBVSxLQUFLLENBQUMsQ0FBQztJQUUzRCxNQUFNLFdBQVcsR0FBc0IsRUFBRTtRQUNyQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkIsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25CLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRyxFQUFFLEVBQUU7S0FDakIsQ0FBQztJQUNGLE1BQU0sVUFBVSxHQUFzQixFQUFFO1FBQ3BDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwQixNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUcsRUFBRSxFQUFFO0tBQ2hCLENBQUM7SUFDRixNQUFNLFlBQVksR0FBdUIsRUFBRTtRQUN2QyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEIsUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFHLEVBQUUsRUFBRTtLQUNsQixDQUFDO0lBRUYsTUFBTSxjQUFjLEdBQUcsUUFBUSxJQUFJLENBQUMsQ0FBQyxZQUFZLENBQUM7SUFDbEQsTUFBTSxvQkFBb0IsR0FBRyxZQUFZLElBQUksY0FBYyxDQUFDO0lBQzVELE1BQU0sVUFBVSxHQUFHLGNBQWMsSUFBSSxDQUFDLENBQUMsY0FBYyxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUMsR0FBRyxTQUFTLENBQUM7SUFFekYsT0FBTztRQUNILFdBQVcsRUFBRTtZQUNULEVBQUUsRUFBRSxRQUFRO1lBQ1osS0FBSztZQUNMLFNBQVM7WUFDVCxRQUFRO1lBQ1IsYUFBYTtZQUNiLGNBQWMsRUFBRSxvQkFBb0I7WUFDcEMsYUFBYTtZQUNiLFFBQVE7WUFDUixTQUFTO1lBQ1QsU0FBUztZQUNULFNBQVM7WUFDVCxRQUFRLEVBQUUsT0FBTyxLQUFLLEtBQUssU0FBUztZQUNwQyxRQUFRLEVBQUUsY0FBYztZQUN4QixPQUFPO1NBQ1Y7UUFDRCxVQUFVLEVBQUU7WUFDUixFQUFFLEVBQUUsUUFBUTtZQUNaLEtBQUs7WUFDTCxRQUFRLEVBQUUsWUFBWTtZQUN0QixPQUFPLEVBQUUsV0FBVztZQUNwQixNQUFNLEVBQUUsVUFBVTtZQUNsQixRQUFRO1lBQ1IsUUFBUTtZQUNSLFFBQVEsRUFBRSxjQUFjO1lBQ3hCLFlBQVk7WUFDWixPQUFPLEVBQUUsWUFBWTtZQUNyQixrQkFBa0IsRUFBRSxVQUFVO1lBQzlCLEdBQUcsSUFBSTtTQUNWO0tBQ0osQ0FBQztBQUNOOzs7OyJ9
@@ -1,4 +1,5 @@
1
1
  export * from './constants';
2
+ export * from './hooks/usePasswordField';
2
3
  export * from './hooks/useTextField';
3
4
  export * from './options';
4
5
  export * from './types';
@@ -1,4 +1,5 @@
1
1
  export { FIELD_ADDITIONAL_TEXT_VARIANT_DEFAULT, FIELD_TYPE_DEFAULT } from './constants.js';
2
+ export { usePasswordField } from './hooks/usePasswordField.js';
2
3
  export { useTextField } from './hooks/useTextField.js';
3
4
  export { ADDITIONAL_TEXT_VARIANT_OPTIONS } from './options.js';
4
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbXSwic291cmNlc0NvbnRlbnQiOltdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzsifQ==
5
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbXSwic291cmNlc0NvbnRlbnQiOltdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7In0=
@@ -1,8 +1,8 @@
1
1
  import type { Dataset } from '@preply/ds-core';
2
2
  import type { MouseEventHandler, ReactNode } from 'react';
3
3
  import { IconProps } from '../icon/types';
4
- import type { CombinableInputProps, InputType, SimpleTextInputType, SingleLineInputType } from '../input/private/types';
5
- import type { InputTextProps } from '../input/types';
4
+ import type { AutoCompletePasswordOptions, SimpleTextInputType, SingleLineInputType } from '../input/private/types';
5
+ import type { CombinableInputProps, InputPasswordProps, InputTextProps } from '../input/types';
6
6
  import { ReactSVGComponentType } from '../svg/types';
7
7
  export declare type FieldValue = string | number | boolean;
8
8
  /**
@@ -57,8 +57,7 @@ export interface FieldAdditionalTextProps {
57
57
  /**
58
58
  * <Field*>
59
59
  */
60
- interface FieldCommonProps {
61
- type?: InputType;
60
+ export interface FieldCommonProps {
62
61
  id?: string;
63
62
  label: string;
64
63
  requiredLabel?: string;
@@ -81,4 +80,8 @@ export interface SingleLineFieldCommonProps extends FieldCommonProps {
81
80
  export declare type TextFieldProps = SingleLineFieldCommonProps & CombinableInputProps<InputTextProps> & {
82
81
  type?: SimpleTextInputType;
83
82
  };
84
- export {};
83
+ export declare type PasswordFieldProps = FieldCommonProps & CombinableInputProps<InputPasswordProps> & {
84
+ autoComplete?: AutoCompletePasswordOptions;
85
+ showIcon?: boolean;
86
+ revealValue?: boolean;
87
+ };
@@ -1,4 +1,4 @@
1
- /* AUTO GENERATED @Fri Dec 16 2022 13:10:31 GMT+0000 (Coordinated Universal Time) */
1
+ /* AUTO GENERATED @Tue Jan 03 2023 10:58:44 GMT+0000 (Coordinated Universal Time) */
2
2
 
3
3
  @breakpoints: {
4
4
  narrow-l: 400px;
@@ -1,6 +1,8 @@
1
- /* AUTO GENERATED @Fri Dec 16 2022 13:10:30 GMT+0000 (Coordinated Universal Time) */
1
+ /* AUTO GENERATED @Tue Jan 03 2023 10:58:44 GMT+0000 (Coordinated Universal Time) */
2
2
 
3
3
  @AVATAR_SIZE_OPTIONS: 2xs, xs, s, m, l, xl;
4
+ @BADGE_COLOR_OPTIONS: gray, teal, green, blue, yellow, red, magenta;
5
+ @BADGE_SIZE_OPTIONS: xs, s, m;
4
6
  @BOX_PADDING_OPTIONS: none, 3xs, 2xs, xs, s, m, l, xl;
5
7
  @BOX_RADIUS_OPTIONS: none, m, l;
6
8
  @BUTTON_SIZE_OPTIONS: xs, s, m, l, xl;
@@ -1,4 +1,4 @@
1
- /* AUTO GENERATED @Fri Dec 16 2022 13:10:30 GMT+0000 (Coordinated Universal Time) */
1
+ /* AUTO GENERATED @Tue Jan 03 2023 10:58:44 GMT+0000 (Coordinated Universal Time) */
2
2
 
3
3
  @scheme-color: var(--aface6);
4
4
  @scheme-bgColor: var(--786b9e);
@@ -181,6 +181,13 @@
181
181
  @avatar-size-m-size: var(--b51334);
182
182
  @avatar-size-l-size: var(--d318a5);
183
183
  @avatar-size-xl-size: var(--6eb1c7);
184
+ @badge-base-borderRadius: var(--93d4a2);
185
+ @badge-size-xs-verticalPadding: var(--8feee9);
186
+ @badge-size-s-verticalPadding: var(--25e959);
187
+ @badge-size-m-verticalPadding: var(--0d8aa3);
188
+ @badge-size-xs-horizontalPadding: var(--62f094);
189
+ @badge-size-s-horizontalPadding: var(--796ab1);
190
+ @badge-size-m-horizontalPadding: var(--3d1d33);
184
191
  @box-radius-none-borderRadius: var(--84e079);
185
192
  @box-radius-m-borderRadius: var(--1c37d5);
186
193
  @box-radius-l-borderRadius: var(--9e57e5);
package/dist/index.js CHANGED
@@ -11,6 +11,7 @@ export { withColorScheme } from './color-scheme/hocs/withColorScheme.js';
11
11
  export { booleanClassNames, globalClassNames, longhandClassNames, moduleClassName, moduleClassNames, moduleLocals, stringClassNames } from './css-module/classNames.js';
12
12
  export { useFocusEvents } from './events/hooks/useFocusEvents.js';
13
13
  export { FIELD_ADDITIONAL_TEXT_VARIANT_DEFAULT, FIELD_TYPE_DEFAULT } from './field/constants.js';
14
+ export { usePasswordField } from './field/hooks/usePasswordField.js';
14
15
  export { useTextField } from './field/hooks/useTextField.js';
15
16
  export { ADDITIONAL_TEXT_VARIANT_OPTIONS } from './field/options.js';
16
17
  export { AUTO_COMPLETE_DATE_DEFAULT, AUTO_COMPLETE_PASSWORD_DEFAULT, AUTO_COMPLETE_TEXT_DEFAULT, INPUT_TYPE_DEFAULT } from './input/constants.js';
@@ -49,4 +50,4 @@ export { withGetToken } from './token/hocs/withGetToken.js';
49
50
  export { useTextAccentClassnames } from './typography/module-text-accent/hooks/useTextAccentClassnames.js';
50
51
  export { useTextCenteredClassnames } from './typography/module-text-centered/hooks/useTextCenteredClassnames.js';
51
52
  export { useTextWeightClassNames } from './typography/module-text-weight/hooks/useTextWeightClassNames.js';
52
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbXSwic291cmNlc0NvbnRlbnQiOltdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsifQ==
53
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbXSwic291cmNlc0NvbnRlbnQiOltdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7In0=
@@ -25,6 +25,8 @@ const AUTO_COMPLETE_TEXT_OPTIONS = [
25
25
  { id: 'language' },
26
26
  { id: 'tel' },
27
27
  { id: 'url' },
28
+ { id: 'new-password' },
29
+ { id: 'current-password' },
28
30
  ];
29
31
  const AUTO_COMPLETE_DATE_OPTIONS = [
30
32
  { id: 'off' },
@@ -37,4 +39,4 @@ const AUTO_COMPLETE_PASSWORD_OPTIONS = [
37
39
  ];
38
40
 
39
41
  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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2lucHV0L29wdGlvbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBPcHRpb24gfSBmcm9tICdAcHJlcGx5L2RzLWNvcmUtdHlwZXMnO1xuXG5pbXBvcnQge1xuICAgIEF1dG9Db21wbGV0ZURhdGVPcHRpb25zLFxuICAgIEF1dG9Db21wbGV0ZVBhc3N3b3JkT3B0aW9ucyxcbiAgICBBdXRvQ29tcGxldGVUZXh0T3B0aW9ucyxcbiAgICBJbnB1dFR5cGUsXG59IGZyb20gJy4vcHJpdmF0ZS90eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBJTlBVVF9UWVBFX1NJTVBMRV9URVhUX09QVElPTlM6IE9wdGlvbjxJbnB1dFR5cGU+W10gPSBbXG4gICAgeyBpZDogJ3RleHQnIH0sXG4gICAgeyBpZDogJ3NlYXJjaCcgfSxcbiAgICB7IGlkOiAnZW1haWwnIH0sXG4gICAgeyBpZDogJ3RlbCcgfSxcbiAgICB7IGlkOiAndXJsJyB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IElOUFVUX1RZUEVfT1BUSU9OUzogT3B0aW9uPElucHV0VHlwZT5bXSA9IFtcbiAgICAuLi5JTlBVVF9UWVBFX1NJTVBMRV9URVhUX09QVElPTlMsXG4gICAgeyBpZDogJ3Bhc3N3b3JkJyB9LFxuICAgIHsgaWQ6ICdudW1iZXInIH0sXG4gICAgeyBpZDogJ2RhdGUnIH0sXG4gICAgeyBpZDogJ3RpbWUnIH0sXG4gICAgeyBpZDogJ2NoZWNrYm94JyB9LFxuICAgIHsgaWQ6ICdyYWRpbycgfSxcbiAgICB7IGlkOiAndGV4dGFyZWEnIH0sXG4gICAgeyBpZDogJ3NlbGVjdCcgfSxcbl07XG5cbmV4cG9ydCBjb25zdCBBVVRPX0NPTVBMRVRFX1RFWFRfT1BUSU9OUzogT3B0aW9uPEF1dG9Db21wbGV0ZVRleHRPcHRpb25zPltdID0gW1xuICAgIHsgaWQ6ICdvZmYnIH0sXG4gICAgeyBpZDogJ29uJyB9LFxuICAgIHsgaWQ6ICduYW1lJyB9LFxuICAgIHsgaWQ6ICdlbWFpbCcgfSxcbiAgICB7IGlkOiAndXNlcm5hbWUnIH0sXG4gICAgeyBpZDogJ2xhbmd1YWdlJyB9LFxuICAgIHsgaWQ6ICd0ZWwnIH0sXG4gICAgeyBpZDogJ3VybCcgfSxcbl07XG5cbmV4cG9ydCBjb25zdCBBVVRPX0NPTVBMRVRFX0RBVEVfT1BUSU9OUzogT3B0aW9uPEF1dG9Db21wbGV0ZURhdGVPcHRpb25zPltdID0gW1xuICAgIHsgaWQ6ICdvZmYnIH0sXG4gICAgeyBpZDogJ29uJyB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IEFVVE9fQ09NUExFVEVfUEFTU1dPUkRfT1BUSU9OUzogT3B0aW9uPEF1dG9Db21wbGV0ZVBhc3N3b3JkT3B0aW9ucz5bXSA9IFtcbiAgICB7IGlkOiAnb2ZmJyB9LFxuICAgIHsgaWQ6ICduZXctcGFzc3dvcmQnIH0sXG4gICAgeyBpZDogJ2N1cnJlbnQtcGFzc3dvcmQnIH0sXG5dO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJNQVNhLDhCQUE4QixHQUF3QjtJQUMvRCxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUU7SUFDZCxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUU7SUFDaEIsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFO0lBQ2YsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFO0lBQ2IsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFO0VBQ2Y7TUFFVyxrQkFBa0IsR0FBd0I7SUFDbkQsR0FBRyw4QkFBOEI7SUFDakMsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFO0lBQ2xCLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRTtJQUNoQixFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUU7SUFDZCxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUU7SUFDZCxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUU7SUFDbEIsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFO0lBQ2YsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFO0lBQ2xCLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRTtFQUNsQjtNQUVXLDBCQUEwQixHQUFzQztJQUN6RSxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUU7SUFDYixFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUU7SUFDWixFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUU7SUFDZCxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUU7SUFDZixFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUU7SUFDbEIsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFO0lBQ2xCLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRTtJQUNiLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRTtFQUNmO01BRVcsMEJBQTBCLEdBQXNDO0lBQ3pFLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRTtJQUNiLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRTtFQUNkO01BRVcsOEJBQThCLEdBQTBDO0lBQ2pGLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRTtJQUNiLEVBQUUsRUFBRSxFQUFFLGNBQWMsRUFBRTtJQUN0QixFQUFFLEVBQUUsRUFBRSxrQkFBa0IsRUFBRTs7Ozs7In0=
42
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2lucHV0L29wdGlvbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBPcHRpb24gfSBmcm9tICdAcHJlcGx5L2RzLWNvcmUtdHlwZXMnO1xuXG5pbXBvcnQge1xuICAgIEF1dG9Db21wbGV0ZURhdGVPcHRpb25zLFxuICAgIEF1dG9Db21wbGV0ZVBhc3N3b3JkT3B0aW9ucyxcbiAgICBBdXRvQ29tcGxldGVUZXh0T3B0aW9ucyxcbiAgICBJbnB1dFR5cGUsXG59IGZyb20gJy4vcHJpdmF0ZS90eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBJTlBVVF9UWVBFX1NJTVBMRV9URVhUX09QVElPTlM6IE9wdGlvbjxJbnB1dFR5cGU+W10gPSBbXG4gICAgeyBpZDogJ3RleHQnIH0sXG4gICAgeyBpZDogJ3NlYXJjaCcgfSxcbiAgICB7IGlkOiAnZW1haWwnIH0sXG4gICAgeyBpZDogJ3RlbCcgfSxcbiAgICB7IGlkOiAndXJsJyB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IElOUFVUX1RZUEVfT1BUSU9OUzogT3B0aW9uPElucHV0VHlwZT5bXSA9IFtcbiAgICAuLi5JTlBVVF9UWVBFX1NJTVBMRV9URVhUX09QVElPTlMsXG4gICAgeyBpZDogJ3Bhc3N3b3JkJyB9LFxuICAgIHsgaWQ6ICdudW1iZXInIH0sXG4gICAgeyBpZDogJ2RhdGUnIH0sXG4gICAgeyBpZDogJ3RpbWUnIH0sXG4gICAgeyBpZDogJ2NoZWNrYm94JyB9LFxuICAgIHsgaWQ6ICdyYWRpbycgfSxcbiAgICB7IGlkOiAndGV4dGFyZWEnIH0sXG4gICAgeyBpZDogJ3NlbGVjdCcgfSxcbl07XG5cbmV4cG9ydCBjb25zdCBBVVRPX0NPTVBMRVRFX1RFWFRfT1BUSU9OUzogT3B0aW9uPEF1dG9Db21wbGV0ZVRleHRPcHRpb25zPltdID0gW1xuICAgIHsgaWQ6ICdvZmYnIH0sXG4gICAgeyBpZDogJ29uJyB9LFxuICAgIHsgaWQ6ICduYW1lJyB9LFxuICAgIHsgaWQ6ICdlbWFpbCcgfSxcbiAgICB7IGlkOiAndXNlcm5hbWUnIH0sXG4gICAgeyBpZDogJ2xhbmd1YWdlJyB9LFxuICAgIHsgaWQ6ICd0ZWwnIH0sXG4gICAgeyBpZDogJ3VybCcgfSxcbiAgICB7IGlkOiAnbmV3LXBhc3N3b3JkJyB9LFxuICAgIHsgaWQ6ICdjdXJyZW50LXBhc3N3b3JkJyB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IEFVVE9fQ09NUExFVEVfREFURV9PUFRJT05TOiBPcHRpb248QXV0b0NvbXBsZXRlRGF0ZU9wdGlvbnM+W10gPSBbXG4gICAgeyBpZDogJ29mZicgfSxcbiAgICB7IGlkOiAnb24nIH0sXG5dO1xuXG5leHBvcnQgY29uc3QgQVVUT19DT01QTEVURV9QQVNTV09SRF9PUFRJT05TOiBPcHRpb248QXV0b0NvbXBsZXRlUGFzc3dvcmRPcHRpb25zPltdID0gW1xuICAgIHsgaWQ6ICdvZmYnIH0sXG4gICAgeyBpZDogJ25ldy1wYXNzd29yZCcgfSxcbiAgICB7IGlkOiAnY3VycmVudC1wYXNzd29yZCcgfSxcbl07XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ik1BU2EsOEJBQThCLEdBQXdCO0lBQy9ELEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRTtJQUNkLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRTtJQUNoQixFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUU7SUFDZixFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUU7SUFDYixFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUU7RUFDZjtNQUVXLGtCQUFrQixHQUF3QjtJQUNuRCxHQUFHLDhCQUE4QjtJQUNqQyxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUU7SUFDbEIsRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFO0lBQ2hCLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRTtJQUNkLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRTtJQUNkLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRTtJQUNsQixFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUU7SUFDZixFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUU7SUFDbEIsRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFO0VBQ2xCO01BRVcsMEJBQTBCLEdBQXNDO0lBQ3pFLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRTtJQUNiLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRTtJQUNaLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRTtJQUNkLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRTtJQUNmLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRTtJQUNsQixFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUU7SUFDbEIsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFO0lBQ2IsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFO0lBQ2IsRUFBRSxFQUFFLEVBQUUsY0FBYyxFQUFFO0lBQ3RCLEVBQUUsRUFBRSxFQUFFLGtCQUFrQixFQUFFO0VBQzVCO01BRVcsMEJBQTBCLEdBQXNDO0lBQ3pFLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRTtJQUNiLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRTtFQUNkO01BRVcsOEJBQThCLEdBQTBDO0lBQ2pGLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRTtJQUNiLEVBQUUsRUFBRSxFQUFFLGNBQWMsRUFBRTtJQUN0QixFQUFFLEVBQUUsRUFBRSxrQkFBa0IsRUFBRTs7Ozs7In0=
@@ -1,13 +1,13 @@
1
1
  import type { Dataset } from '@preply/ds-core';
2
2
  import { ChangeEventHandler, FocusEventHandler, KeyboardEventHandler, MouseEventHandler, ReactNode } from 'react';
3
- import type { ARIAAttributeNames, ARIAInputProps } from '../../accessibility/aria/types';
3
+ import type { ARIAInputProps } from '../../accessibility/aria/types';
4
4
  export declare type SimpleTextInputType = 'text' | 'search' | 'email' | 'tel' | 'url';
5
5
  export declare type SingleLineInputType = SimpleTextInputType | 'password' | 'number' | 'date' | 'time';
6
6
  export declare type HTMLInputType = SingleLineInputType | 'checkbox' | 'radio';
7
7
  export declare type InputType = HTMLInputType | 'textarea' | 'select';
8
- export declare type AutoCompleteTextOptions = 'off' | 'on' | 'name' | 'email' | 'username' | 'language' | 'tel' | 'url';
9
8
  export declare type AutoCompleteDateOptions = 'off' | 'on';
10
9
  export declare type AutoCompletePasswordOptions = 'off' | 'new-password' | 'current-password';
10
+ export declare type AutoCompleteTextOptions = 'off' | 'on' | 'name' | 'email' | 'username' | 'language' | 'tel' | 'url' | AutoCompletePasswordOptions;
11
11
  /**
12
12
  * native <input> props
13
13
  */
@@ -95,9 +95,3 @@ export interface InputTypeSelectProps extends InputCommonProps {
95
95
  }
96
96
  export declare type InputGenericTextProps = InputTypeTextProps | InputTypeSearchProps | InputTypeEmailProps | InputTypeTelProps | InputTypeUrlProps;
97
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
- };
@@ -1,3 +1,4 @@
1
+ import { ARIAAttributeNames } from '../accessibility/aria/types';
1
2
  import type { ValueChangeEventHandler } from '../events';
2
3
  import type { InputTypeCheckboxProps, InputTypeDateProps, InputTypeNumberProps, InputTypePasswordProps, InputTypeRadioProps, InputTypeSelectProps, InputTypeTextProps, InputTypeTextareaProps, InputTypeTimeProps, SimpleTextInputType, UnknownInputProps } from './private/types';
3
4
  /**
@@ -42,3 +43,11 @@ export declare type InputNumberProps = Omit<InputTypeNumberProps, 'type' | 'valu
42
43
  export declare type InputPasswordProps = Omit<InputTypePasswordProps, 'type'> & {
43
44
  onValueChange?: ValueChangeEventHandler<string>;
44
45
  };
46
+ /**
47
+ * allows merging <Input*> props onto <Field*> props
48
+ * - exposes all input props, except: id, type, aria-*
49
+ * - makes id optional
50
+ */
51
+ export declare type CombinableInputProps<T> = Omit<T, 'id' | 'type' | ARIAAttributeNames> & {
52
+ id?: string;
53
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@preply/ds-web-core",
3
- "version": "0.49.0",
3
+ "version": "0.51.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.49.0",
23
- "@preply/ds-core-types": "0.49.0"
22
+ "@preply/ds-core": "0.51.0",
23
+ "@preply/ds-core-types": "0.51.0"
24
24
  },
25
25
  "peerDependencies": {
26
- "@preply/ds-core": "0.49.0",
27
- "@preply/ds-core-types": "0.49.0",
26
+ "@preply/ds-core": "0.51.0",
27
+ "@preply/ds-core-types": "0.51.0",
28
28
  "react": "^16.8.3",
29
29
  "react-dom": "^16.8.3"
30
30
  },
31
- "gitHead": "3e8afea186374a22e2491bf687edd78b6ff99e60"
31
+ "gitHead": "04130ea22ee97e884b24d014e1c9d7650744c415"
32
32
  }