@elliemae/ds-form-layout-autocomplete 3.17.0-next.2 → 3.17.0-next.20

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.
Files changed (31) hide show
  1. package/dist/types/ds-form-input-text/src/DSInputText.d.ts +4 -0
  2. package/dist/types/ds-form-input-text/src/config/useInputText.d.ts +13 -0
  3. package/dist/types/ds-form-input-text/src/exported-related/data-test-ids.d.ts +4 -0
  4. package/dist/types/ds-form-input-text/src/exported-related/index.d.ts +2 -0
  5. package/dist/types/ds-form-input-text/src/exported-related/theming.d.ts +6 -0
  6. package/dist/types/ds-form-input-text/src/react-desc-prop-types.d.ts +21 -0
  7. package/dist/types/ds-form-input-text/src/styled/borders.d.ts +10 -0
  8. package/dist/types/ds-form-input-text/src/styled/components.d.ts +12 -0
  9. package/dist/types/ds-form-layout-autocomplete/src/Autocomplete.d.ts +5 -0
  10. package/dist/types/ds-form-layout-autocomplete/src/AutocompleteCTX.d.ts +5 -0
  11. package/dist/types/ds-form-layout-autocomplete/src/AutocompleteDataTestids.d.ts +5 -0
  12. package/dist/types/ds-form-layout-autocomplete/src/DSAutocompleteDefinitions.d.ts +1 -0
  13. package/dist/types/ds-form-layout-autocomplete/src/config/useAutocomplete.d.ts +14 -0
  14. package/dist/types/ds-form-layout-autocomplete/src/config/usePopoverLogic.d.ts +12 -0
  15. package/dist/types/ds-form-layout-autocomplete/src/config/useRefs.d.ts +5 -0
  16. package/dist/types/ds-form-layout-autocomplete/src/index.d.ts +2 -0
  17. package/dist/types/ds-form-layout-autocomplete/src/parts/A11yFocusedOption.d.ts +5 -0
  18. package/dist/types/ds-form-layout-autocomplete/src/parts/container/Container.d.ts +2 -0
  19. package/dist/types/ds-form-layout-autocomplete/src/parts/container/index.d.ts +1 -0
  20. package/dist/types/ds-form-layout-autocomplete/src/parts/container/styled.d.ts +3 -0
  21. package/dist/types/ds-form-layout-autocomplete/src/parts/container/useKeyboardNavigation.d.ts +4 -0
  22. package/dist/types/ds-form-layout-autocomplete/src/parts/menu-list/MenuList.d.ts +2 -0
  23. package/dist/types/ds-form-layout-autocomplete/src/parts/menu-list/index.d.ts +1 -0
  24. package/dist/types/ds-form-layout-autocomplete/src/parts/menu-list/styled.d.ts +8 -0
  25. package/dist/types/ds-form-layout-autocomplete/src/parts/menu-list/useItemRenderer.d.ts +2 -0
  26. package/dist/types/ds-form-layout-autocomplete/src/react-desc-prop-types.d.ts +45 -0
  27. package/dist/types/ds-form-layout-autocomplete/src/tests/a11y/axe.test.d.ts +1 -0
  28. package/dist/types/ds-form-layout-autocomplete/src/tests/general.test.d.ts +1 -0
  29. package/dist/types/ds-form-layout-autocomplete/src/tests/utils.d.ts +5 -0
  30. package/dist/types/ds-form-layout-autocomplete/src/utils/listHelper.d.ts +7 -0
  31. package/package.json +9 -6
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import type { DSInputTextT } from './react-desc-prop-types.js';
3
+ export declare const DSInputText: React.ComponentType<DSInputTextT.Props>;
4
+ export declare const DSInputTextWithSchema: import("@elliemae/ds-props-helpers/dist/types/propTypes/types.js").DocumentedReactComponent<DSInputTextT.Props>;
@@ -0,0 +1,13 @@
1
+ import type React from 'react';
2
+ import type { DSInputTextT } from '../react-desc-prop-types.js';
3
+ export declare const useInputText: (props: DSInputTextT.Props) => {
4
+ globalAttributes: import("@elliemae/ds-props-helpers").GlobalAttributesT<Element>;
5
+ hasFocus: boolean;
6
+ handlers: {
7
+ onChange: React.ChangeEventHandler<HTMLInputElement>;
8
+ onFocus: React.FocusEventHandler<HTMLInputElement>;
9
+ onBlur: React.FocusEventHandler<HTMLInputElement>;
10
+ };
11
+ propsWithDefault: Required<DSInputTextT.IProps>;
12
+ xstyledProps: import("@elliemae/ds-props-helpers").XstyledProps;
13
+ };
@@ -0,0 +1,4 @@
1
+ export declare const DSInputTextDataTestIds: {
2
+ INPUT: string;
3
+ CLEAR_BUTTON: string;
4
+ };
@@ -0,0 +1,2 @@
1
+ export * from './data-test-ids.js';
2
+ export * from './theming.js';
@@ -0,0 +1,6 @@
1
+ export declare const DSInputTextName = "DSInputText";
2
+ export declare const DSInputTextSlots: {
3
+ INPUT_WRAPPER: string;
4
+ INPUT: string;
5
+ CLEAR_BUTTON: string;
6
+ };
@@ -0,0 +1,21 @@
1
+ import type { WeakValidationMap } from 'react';
2
+ import type React from 'react';
3
+ import type { GlobalAttributesT, XstyledProps } from '@elliemae/ds-props-helpers';
4
+ export declare namespace DSInputTextT {
5
+ interface IProps {
6
+ value?: string | number;
7
+ onValueChange?: (nextValue: string | number, e: React.ChangeEvent<HTMLInputElement>) => void;
8
+ onClear?: () => void;
9
+ placeholder?: string;
10
+ innerRef?: React.MutableRefObject<HTMLInputElement | null> | ((_ref: HTMLInputElement | null) => void);
11
+ disabled?: boolean;
12
+ readOnly?: boolean;
13
+ hasError?: boolean;
14
+ inputSize?: 's' | 'm';
15
+ clearable?: boolean;
16
+ }
17
+ interface Props extends IProps, Omit<GlobalAttributesT<HTMLInputElement>, keyof IProps>, XstyledProps {
18
+ }
19
+ }
20
+ export declare const defaultProps: DSInputTextT.Props;
21
+ export declare const DSInputTextPropTypes: WeakValidationMap<unknown>;
@@ -0,0 +1,10 @@
1
+ import type { FlattenSimpleInterpolation } from '@elliemae/ds-system';
2
+ interface BorderNecessaryProps {
3
+ isDisabled: boolean;
4
+ hasError: boolean;
5
+ isReadOnly: boolean;
6
+ hasFocus: boolean;
7
+ }
8
+ export declare const getBorderCss: (props: BorderNecessaryProps) => FlattenSimpleInterpolation;
9
+ export declare const getHoverBorderCss: (props: BorderNecessaryProps) => FlattenSimpleInterpolation;
10
+ export {};
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ interface StyledInputWrapperProps {
3
+ inputSize: string;
4
+ isDisabled: boolean;
5
+ hasError: boolean;
6
+ isReadOnly: boolean;
7
+ hasFocus: boolean;
8
+ }
9
+ export declare const StyledInputWrapper: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("@elliemae/ds-grid/dist/types/react-desc-prop-types.js").DSGridT.Props & import("react").RefAttributes<HTMLDivElement>>, import("@elliemae/ds-system").Theme, StyledInputWrapperProps, never>;
10
+ export declare const StyledInput: import("styled-components").StyledComponent<"input", import("@elliemae/ds-system").Theme, Record<string, unknown>, never>;
11
+ export declare const StyledClearButton: import("styled-components").StyledComponent<import("react").ComponentType<import("@elliemae/ds-button").DSButtonT.Props>, import("@elliemae/ds-system").Theme, object, never>;
12
+ export {};
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import type { DSAutocompleteT } from './react-desc-prop-types.js';
3
+ declare const DSAutocomplete: React.ComponentType<DSAutocompleteT.Props>;
4
+ declare const DSAutocompleteWithSchema: import("@elliemae/ds-props-helpers/dist/types/propTypes/types.js").DocumentedReactComponent<DSAutocompleteT.Props>;
5
+ export { DSAutocomplete, DSAutocompleteWithSchema };
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ import type { AutocompleteContextT } from './config/useAutocomplete.js';
3
+ /** Context for cross component communication */
4
+ export declare const AutocompleteContext: import("react").Context<AutocompleteContextT>;
5
+ export default AutocompleteContext;
@@ -0,0 +1,5 @@
1
+ export declare const AutocompleteDataTestid: {
2
+ LIST: string;
3
+ OPTION: string;
4
+ CONTAINER: string;
5
+ };
@@ -0,0 +1 @@
1
+ export declare const DSAutocompleteName = "DSAutocomplete";
@@ -0,0 +1,14 @@
1
+ import React from 'react';
2
+ import type { DSAutocompleteT } from '../react-desc-prop-types.js';
3
+ import { useRefs } from './useRefs.js';
4
+ import { useVirtualization } from './useVirtualization.js';
5
+ import { usePopoverLogic } from './usePopoverLogic.js';
6
+ export type AutocompleteContextT = ReturnType<typeof useRefs> & ReturnType<typeof useVirtualization> & ReturnType<typeof usePopoverLogic> & {
7
+ props: DSAutocompleteT.InternalProps;
8
+ referenceElement: HTMLElement | null;
9
+ focusOptionIdx: string;
10
+ autoCompleteId: string;
11
+ setCurrentOption: React.Dispatch<React.SetStateAction<string>>;
12
+ setReferenceElement: React.Dispatch<React.SetStateAction<HTMLElement | null>>;
13
+ };
14
+ export declare const useAutocomplete: (props: DSAutocompleteT.Props) => AutocompleteContextT;
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ import type { DSAutocompleteT } from '../react-desc-prop-types.js';
3
+ export declare const usePopoverLogic: (propsWithDefault: DSAutocompleteT.InternalProps) => {
4
+ isShowingPopover: boolean;
5
+ forceClosePopover: boolean;
6
+ setForceClosePopover: React.Dispatch<React.SetStateAction<boolean>>;
7
+ userTypedSomething: boolean;
8
+ setUserTypedSomething: React.Dispatch<React.SetStateAction<boolean>>;
9
+ setUserJustSelectedAnOption: React.Dispatch<React.SetStateAction<boolean>>;
10
+ setUserIsNavigatingWithArrows: React.Dispatch<React.SetStateAction<boolean>>;
11
+ trackUserInteractingViaKeyboard: React.KeyboardEventHandler<HTMLInputElement>;
12
+ };
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ export declare const useRefs: () => {
3
+ inputRef: React.RefObject<HTMLInputElement>;
4
+ listRef: React.RefObject<HTMLDivElement>;
5
+ };
@@ -0,0 +1,2 @@
1
+ export * from './Autocomplete.js';
2
+ export * from './AutocompleteDataTestids.js';
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import type { DSAutocompleteT } from '../react-desc-prop-types.js';
3
+ export declare const isSeparator: (el: DSAutocompleteT.OptionTypes | undefined) => el is DSAutocompleteT.ItemSeparatorOptions;
4
+ export declare const StyledA11ySelectedValues: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & object, never>;
5
+ export declare const A11yFocusedOption: React.ComponentType;
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare const Container: () => JSX.Element;
@@ -0,0 +1 @@
1
+ export { Container } from './Container.js';
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ export declare const StyledContainer: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & object, never>;
3
+ export declare const StyledPopperWrapper: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & object, never>;
@@ -0,0 +1,4 @@
1
+ import type React from 'react';
2
+ export declare const useKeyboardNavigation: () => {
3
+ onInputKeyDown: React.KeyboardEventHandler<HTMLInputElement>;
4
+ };
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare const MenuList: () => JSX.Element;
@@ -0,0 +1 @@
1
+ export { MenuList } from './MenuList.js';
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ export declare const StyledListWrapper: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & {
3
+ minWidth?: string | number | undefined;
4
+ }, never>;
5
+ export declare const StyledList: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & object, never>;
6
+ export declare const StyledVirtualListWrapper: import("styled-components").StyledComponent<keyof JSX.IntrinsicElements, import("@elliemae/ds-system").Theme, Record<string, unknown> & {
7
+ maxHeight: number;
8
+ }, never>;
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare const useItemRenderer: () => Array<JSX.Element> | null;
@@ -0,0 +1,45 @@
1
+ import type React from 'react';
2
+ export declare namespace DSAutocompleteT {
3
+ interface CommonItemOptions {
4
+ dsId: string;
5
+ disabled?: boolean;
6
+ render?: React.ComponentType<unknown>;
7
+ }
8
+ interface ItemSeparatorOptions extends CommonItemOptions {
9
+ type: 'separator';
10
+ }
11
+ interface ItemSectionOptions extends CommonItemOptions {
12
+ type: 'section';
13
+ label: string;
14
+ }
15
+ interface ItemOption extends CommonItemOptions {
16
+ value: string;
17
+ label: string;
18
+ type: 'option';
19
+ }
20
+ type OptionTypes = ItemOption | ItemSectionOptions | ItemSeparatorOptions;
21
+ type SelectedOptionsT = ItemOption[] | ItemOption | null;
22
+ interface RequiredProps {
23
+ options: OptionTypes[];
24
+ children: React.ReactChild;
25
+ filter: string;
26
+ onSelect: (suggestedValue: string | number, e: React.KeyboardEvent<HTMLInputElement> | React.MouseEvent<HTMLInputElement>) => void;
27
+ }
28
+ interface DefaultProps {
29
+ startPlacementPreference: string;
30
+ placementOrderPreference: string[];
31
+ withoutPortal: boolean;
32
+ zIndex: number;
33
+ }
34
+ interface Props extends Partial<DefaultProps>, RequiredProps {
35
+ }
36
+ interface InternalProps extends DefaultProps, RequiredProps {
37
+ }
38
+ }
39
+ export declare const defaultProps: DSAutocompleteT.DefaultProps;
40
+ export declare const propTypes: {
41
+ options: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
42
+ filter: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
43
+ onSelect: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
44
+ children: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
45
+ };
@@ -0,0 +1,5 @@
1
+ export declare const basicOptions: {
2
+ dsId: string;
3
+ type: string;
4
+ label: string;
5
+ }[];
@@ -0,0 +1,7 @@
1
+ import type { DSAutocompleteT } from '../react-desc-prop-types.js';
2
+ export declare const getSelectableOptions: (options: Array<DSAutocompleteT.OptionTypes>) => Array<DSAutocompleteT.OptionTypes>;
3
+ export declare const getOptions: (options: Array<DSAutocompleteT.OptionTypes>) => Array<DSAutocompleteT.OptionTypes>;
4
+ export declare const isSelectedValueEmpty: (value: DSAutocompleteT.OptionTypes | Array<DSAutocompleteT.OptionTypes>) => boolean;
5
+ export declare const isSelectedValueMultiple: (value: DSAutocompleteT.OptionTypes | Array<DSAutocompleteT.OptionTypes>) => boolean;
6
+ export declare const findInCircularList: (list: DSAutocompleteT.OptionTypes[], from: number, criteria: (item: DSAutocompleteT.OptionTypes) => boolean, step?: number) => number;
7
+ export declare const getFirstOption: (options: DSAutocompleteT.OptionTypes[]) => string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elliemae/ds-form-layout-autocomplete",
3
- "version": "3.17.0-next.2",
3
+ "version": "3.17.0-next.20",
4
4
  "license": "MIT",
5
5
  "description": "ICE MT - Dimsum - Form Layout - Autocomplete",
6
6
  "files": [
@@ -37,10 +37,12 @@
37
37
  "dependencies": {
38
38
  "react-virtual": "~2.10.4",
39
39
  "styled-components": "~5.3.9",
40
- "@elliemae/ds-popperjs": "3.17.0-next.2",
41
- "@elliemae/ds-props-helpers": "3.17.0-next.2",
42
- "@elliemae/ds-menu-items": "3.17.0-next.2",
43
- "@elliemae/ds-system": "3.17.0-next.2"
40
+ "uid": "~2.0.1",
41
+ "@elliemae/ds-grid": "3.17.0-next.20",
42
+ "@elliemae/ds-popperjs": "3.17.0-next.20",
43
+ "@elliemae/ds-menu-items": "3.17.0-next.20",
44
+ "@elliemae/ds-system": "3.17.0-next.20",
45
+ "@elliemae/ds-props-helpers": "3.17.0-next.20"
44
46
  },
45
47
  "devDependencies": {
46
48
  "@elliemae/pui-theme": "~2.7.0",
@@ -48,9 +50,10 @@
48
50
  "@testing-library/jest-dom": "~5.16.5",
49
51
  "@testing-library/react": "~12.1.3",
50
52
  "@testing-library/user-event": "~13.5.0",
53
+ "jest-axe": "^7.0.1",
51
54
  "styled-components": "~5.3.9",
52
55
  "styled-system": "~5.1.5",
53
- "@elliemae/ds-form-input-text": "3.17.0-next.2"
56
+ "@elliemae/ds-form-input-text": "3.17.0-next.20"
54
57
  },
55
58
  "peerDependencies": {
56
59
  "@elliemae/pui-theme": "~2.7.0",