@elliemae/ds-controlled-form 3.0.0-alpha.0 → 3.0.0-alpha.1
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/cjs/controlled-autocomplete/config/useAutocomplete.js +15 -1
- package/dist/cjs/controlled-autocomplete/config/useAutocomplete.js.map +1 -1
- package/dist/cjs/controlled-autocomplete/parts/menu-list/useItemRenderer.js +19 -3
- package/dist/cjs/controlled-autocomplete/parts/menu-list/useItemRenderer.js.map +1 -1
- package/dist/cjs/controlled-checkbox/react-desc-prop-types.js +63 -0
- package/dist/cjs/controlled-checkbox/react-desc-prop-types.js.map +7 -0
- package/dist/cjs/controlled-combobox/ComboBox.js +5 -7
- package/dist/cjs/controlled-combobox/ComboBox.js.map +2 -2
- package/dist/cjs/controlled-combobox/ComboBoxCTX.js +1 -4
- package/dist/cjs/controlled-combobox/ComboBoxCTX.js.map +2 -2
- package/dist/cjs/controlled-combobox/ComboboxDataTestids.js +2 -1
- package/dist/cjs/controlled-combobox/ComboboxDataTestids.js.map +2 -2
- package/dist/cjs/controlled-combobox/config/useComboBox.js +30 -51
- package/dist/cjs/controlled-combobox/config/useComboBox.js.map +2 -2
- package/dist/cjs/controlled-combobox/config/useCorrectOptions.js +77 -0
- package/dist/cjs/controlled-combobox/config/useCorrectOptions.js.map +7 -0
- package/dist/cjs/controlled-combobox/index.js.map +2 -2
- package/dist/cjs/controlled-combobox/parts/a11y-messages/{MultiAllyMessages.js → FocusMenuItem.js} +26 -17
- package/dist/cjs/controlled-combobox/parts/a11y-messages/FocusMenuItem.js.map +7 -0
- package/dist/cjs/controlled-combobox/parts/a11y-messages/{SingleAllyMessages.js → SelectedValuesAllyMsg.js} +24 -10
- package/dist/cjs/controlled-combobox/parts/a11y-messages/SelectedValuesAllyMsg.js.map +7 -0
- package/dist/cjs/controlled-combobox/parts/a11y-messages/index.js +4 -4
- package/dist/cjs/controlled-combobox/parts/a11y-messages/index.js.map +2 -2
- package/dist/cjs/controlled-combobox/parts/container/Container.js +34 -21
- package/dist/cjs/controlled-combobox/parts/container/Container.js.map +2 -2
- package/dist/cjs/controlled-combobox/parts/container/styled.js +6 -7
- package/dist/cjs/controlled-combobox/parts/container/styled.js.map +2 -2
- package/dist/cjs/controlled-combobox/parts/controls/Controls.js +18 -9
- package/dist/cjs/controlled-combobox/parts/controls/Controls.js.map +2 -2
- package/dist/cjs/controlled-combobox/parts/controls/styled.js +4 -9
- package/dist/cjs/controlled-combobox/parts/controls/styled.js.map +2 -2
- package/dist/cjs/controlled-combobox/parts/{single-selected-value-container/SingleSelectedValueContainer.js → controls/useOnPillsNavigation.js} +33 -17
- package/dist/cjs/controlled-combobox/parts/controls/useOnPillsNavigation.js.map +7 -0
- package/dist/cjs/controlled-combobox/parts/controls-input/ControlsInput.js +7 -7
- package/dist/cjs/controlled-combobox/parts/controls-input/ControlsInput.js.map +2 -2
- package/dist/cjs/controlled-combobox/parts/controls-input/useControlsInput.js +25 -9
- package/dist/cjs/controlled-combobox/parts/controls-input/useControlsInput.js.map +2 -2
- package/dist/cjs/controlled-combobox/parts/dropdown-indicator/DropdownIndicator.js +7 -4
- package/dist/cjs/controlled-combobox/parts/dropdown-indicator/DropdownIndicator.js.map +2 -2
- package/dist/cjs/controlled-combobox/parts/dropdown-indicator/styled.js +4 -3
- package/dist/cjs/controlled-combobox/parts/dropdown-indicator/styled.js.map +2 -2
- package/dist/cjs/controlled-combobox/parts/header-list/HeaderList.js +13 -9
- package/dist/cjs/controlled-combobox/parts/header-list/HeaderList.js.map +2 -2
- package/dist/cjs/controlled-combobox/parts/header-list/styled.js.map +2 -2
- package/dist/cjs/controlled-combobox/parts/header-list/useHeaderListHandlers.js +18 -6
- package/dist/cjs/controlled-combobox/parts/header-list/useHeaderListHandlers.js.map +2 -2
- package/dist/cjs/controlled-combobox/parts/menu-list/MenuList.js +19 -14
- package/dist/cjs/controlled-combobox/parts/menu-list/MenuList.js.map +2 -2
- package/dist/cjs/controlled-combobox/parts/menu-list/styled.js +5 -0
- package/dist/cjs/controlled-combobox/parts/menu-list/styled.js.map +2 -2
- package/dist/cjs/controlled-combobox/parts/menu-list/useItemRenderer.js +40 -28
- package/dist/cjs/controlled-combobox/parts/menu-list/useItemRenderer.js.map +2 -2
- package/dist/cjs/controlled-combobox/parts/menu-list/useMenuList.js +8 -10
- package/dist/cjs/controlled-combobox/parts/menu-list/useMenuList.js.map +2 -2
- package/dist/cjs/controlled-combobox/parts/multi-selected-values-container/MultiSelectedValuesContainer.js +25 -12
- package/dist/cjs/controlled-combobox/parts/multi-selected-values-container/MultiSelectedValuesContainer.js.map +2 -2
- package/dist/cjs/controlled-combobox/parts/multi-selected-values-container/useGroupPills.js +4 -5
- package/dist/cjs/controlled-combobox/parts/multi-selected-values-container/useGroupPills.js.map +2 -2
- package/dist/cjs/controlled-combobox/react-desc-prop-types.js +73 -0
- package/dist/cjs/controlled-combobox/react-desc-prop-types.js.map +7 -0
- package/dist/cjs/controlled-combobox/{index.d.js → sharedTypes.js} +3 -3
- package/dist/cjs/controlled-combobox/sharedTypes.js.map +7 -0
- package/dist/cjs/controlled-combobox/utils/hooks/useKeyboardNavigation.js +20 -31
- package/dist/cjs/controlled-combobox/utils/hooks/useKeyboardNavigation.js.map +2 -2
- package/dist/cjs/controlled-combobox/utils/listHelper.js +2 -2
- package/dist/cjs/controlled-combobox/utils/listHelper.js.map +2 -2
- package/dist/cjs/controlled-date-range-picker/config/useControlledDateRangePicker.js +18 -1
- package/dist/cjs/controlled-date-range-picker/config/useControlledDateRangePicker.js.map +1 -1
- package/dist/cjs/controlled-date-range-picker/config/useRangePickerLogic.js +21 -4
- package/dist/cjs/controlled-date-range-picker/config/useRangePickerLogic.js.map +1 -1
- package/dist/cjs/controlled-date-range-picker/parts/ControlledDateRangeContent.js +17 -4
- package/dist/cjs/controlled-date-range-picker/parts/ControlledDateRangeContent.js.map +1 -1
- package/dist/cjs/controlled-date-time-picker/config/useControlledDateTimePicker.js +42 -52
- package/dist/cjs/controlled-date-time-picker/config/useControlledDateTimePicker.js.map +1 -1
- package/dist/cjs/controlled-date-time-picker/parts/ControlledDateTimePickerContent.js +17 -4
- package/dist/cjs/controlled-date-time-picker/parts/ControlledDateTimePickerContent.js.map +1 -1
- package/dist/cjs/controlled-date-time-picker/parts/DateInputs/useDateInputs.js +23 -12
- package/dist/cjs/controlled-date-time-picker/parts/DateInputs/useDateInputs.js.map +1 -1
- package/dist/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarWrapper.js +21 -4
- package/dist/cjs/controlled-date-time-picker/parts/Pickers/Calendar/CalendarWrapper.js.map +1 -1
- package/dist/cjs/controlled-date-time-picker/parts/Pickers/Calendar/Day.js +21 -5
- package/dist/cjs/controlled-date-time-picker/parts/Pickers/Calendar/Day.js.map +1 -1
- package/dist/cjs/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelWrapper.js +21 -4
- package/dist/cjs/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelWrapper.js.map +1 -1
- package/dist/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/HoursList.js +17 -4
- package/dist/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/HoursList.js.map +1 -1
- package/dist/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/MinutesList.js +17 -4
- package/dist/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/MinutesList.js.map +1 -1
- package/dist/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/SecondsList.js +17 -4
- package/dist/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/SecondsList.js.map +1 -1
- package/dist/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelWrapper.js +21 -4
- package/dist/cjs/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelWrapper.js.map +1 -1
- package/dist/cjs/controlled-date-time-picker/utils/dateTimeHelpers.js +15 -4
- package/dist/cjs/controlled-date-time-picker/utils/dateTimeHelpers.js.map +1 -1
- package/dist/cjs/controlled-toggle/ControlledToggle.js +17 -4
- package/dist/cjs/controlled-toggle/ControlledToggle.js.map +1 -1
- package/dist/esm/controlled-autocomplete/config/useAutocomplete.js +17 -1
- package/dist/esm/controlled-autocomplete/config/useAutocomplete.js.map +1 -1
- package/dist/esm/controlled-autocomplete/parts/menu-list/useItemRenderer.js +21 -3
- package/dist/esm/controlled-autocomplete/parts/menu-list/useItemRenderer.js.map +1 -1
- package/dist/esm/controlled-checkbox/react-desc-prop-types.js +36 -0
- package/dist/esm/controlled-checkbox/react-desc-prop-types.js.map +7 -0
- package/dist/esm/controlled-combobox/ComboBox.js +6 -8
- package/dist/esm/controlled-combobox/ComboBox.js.map +2 -2
- package/dist/esm/controlled-combobox/ComboBoxCTX.js +1 -4
- package/dist/esm/controlled-combobox/ComboBoxCTX.js.map +2 -2
- package/dist/esm/controlled-combobox/ComboboxDataTestids.js +2 -1
- package/dist/esm/controlled-combobox/ComboboxDataTestids.js.map +2 -2
- package/dist/esm/controlled-combobox/config/useComboBox.js +32 -51
- package/dist/esm/controlled-combobox/config/useComboBox.js.map +2 -2
- package/dist/esm/controlled-combobox/config/useCorrectOptions.js +48 -0
- package/dist/esm/controlled-combobox/config/useCorrectOptions.js.map +7 -0
- package/dist/esm/controlled-combobox/index.js.map +2 -2
- package/dist/esm/controlled-combobox/parts/a11y-messages/FocusMenuItem.js +30 -0
- package/dist/esm/controlled-combobox/parts/a11y-messages/FocusMenuItem.js.map +7 -0
- package/dist/esm/controlled-combobox/parts/a11y-messages/SelectedValuesAllyMsg.js +33 -0
- package/dist/esm/controlled-combobox/parts/a11y-messages/SelectedValuesAllyMsg.js.map +7 -0
- package/dist/esm/controlled-combobox/parts/a11y-messages/index.js +4 -4
- package/dist/esm/controlled-combobox/parts/a11y-messages/index.js.map +1 -1
- package/dist/esm/controlled-combobox/parts/container/Container.js +36 -21
- package/dist/esm/controlled-combobox/parts/container/Container.js.map +2 -2
- package/dist/esm/controlled-combobox/parts/container/styled.js +6 -7
- package/dist/esm/controlled-combobox/parts/container/styled.js.map +2 -2
- package/dist/esm/controlled-combobox/parts/controls/Controls.js +18 -9
- package/dist/esm/controlled-combobox/parts/controls/Controls.js.map +2 -2
- package/dist/esm/controlled-combobox/parts/controls/styled.js +4 -9
- package/dist/esm/controlled-combobox/parts/controls/styled.js.map +2 -2
- package/dist/esm/controlled-combobox/parts/controls/useOnPillsNavigation.js +35 -0
- package/dist/esm/controlled-combobox/parts/controls/useOnPillsNavigation.js.map +7 -0
- package/dist/esm/controlled-combobox/parts/controls-input/ControlsInput.js +7 -7
- package/dist/esm/controlled-combobox/parts/controls-input/ControlsInput.js.map +2 -2
- package/dist/esm/controlled-combobox/parts/controls-input/useControlsInput.js +25 -9
- package/dist/esm/controlled-combobox/parts/controls-input/useControlsInput.js.map +2 -2
- package/dist/esm/controlled-combobox/parts/dropdown-indicator/DropdownIndicator.js +7 -4
- package/dist/esm/controlled-combobox/parts/dropdown-indicator/DropdownIndicator.js.map +2 -2
- package/dist/esm/controlled-combobox/parts/dropdown-indicator/styled.js +5 -4
- package/dist/esm/controlled-combobox/parts/dropdown-indicator/styled.js.map +2 -2
- package/dist/esm/controlled-combobox/parts/header-list/HeaderList.js +13 -9
- package/dist/esm/controlled-combobox/parts/header-list/HeaderList.js.map +2 -2
- package/dist/esm/controlled-combobox/parts/header-list/styled.js.map +2 -2
- package/dist/esm/controlled-combobox/parts/header-list/useHeaderListHandlers.js +18 -6
- package/dist/esm/controlled-combobox/parts/header-list/useHeaderListHandlers.js.map +2 -2
- package/dist/esm/controlled-combobox/parts/menu-list/MenuList.js +21 -16
- package/dist/esm/controlled-combobox/parts/menu-list/MenuList.js.map +2 -2
- package/dist/esm/controlled-combobox/parts/menu-list/styled.js +5 -0
- package/dist/esm/controlled-combobox/parts/menu-list/styled.js.map +2 -2
- package/dist/esm/controlled-combobox/parts/menu-list/useItemRenderer.js +42 -28
- package/dist/esm/controlled-combobox/parts/menu-list/useItemRenderer.js.map +2 -2
- package/dist/esm/controlled-combobox/parts/menu-list/useMenuList.js +8 -10
- package/dist/esm/controlled-combobox/parts/menu-list/useMenuList.js.map +2 -2
- package/dist/esm/controlled-combobox/parts/multi-selected-values-container/MultiSelectedValuesContainer.js +26 -13
- package/dist/esm/controlled-combobox/parts/multi-selected-values-container/MultiSelectedValuesContainer.js.map +2 -2
- package/dist/esm/controlled-combobox/parts/multi-selected-values-container/useGroupPills.js +4 -5
- package/dist/esm/controlled-combobox/parts/multi-selected-values-container/useGroupPills.js.map +2 -2
- package/dist/esm/controlled-combobox/{propTypes.js → react-desc-prop-types.js} +28 -8
- package/dist/esm/controlled-combobox/react-desc-prop-types.js.map +7 -0
- package/dist/esm/controlled-combobox/sharedTypes.js +2 -0
- package/dist/esm/{controlled-checkbox/index.d.js.map → controlled-combobox/sharedTypes.js.map} +0 -0
- package/dist/esm/controlled-combobox/utils/hooks/useKeyboardNavigation.js +20 -31
- package/dist/esm/controlled-combobox/utils/hooks/useKeyboardNavigation.js.map +2 -2
- package/dist/esm/controlled-combobox/utils/listHelper.js +2 -2
- package/dist/esm/controlled-combobox/utils/listHelper.js.map +2 -2
- package/dist/esm/controlled-date-range-picker/config/useControlledDateRangePicker.js +20 -1
- package/dist/esm/controlled-date-range-picker/config/useControlledDateRangePicker.js.map +1 -1
- package/dist/esm/controlled-date-range-picker/config/useRangePickerLogic.js +23 -4
- package/dist/esm/controlled-date-range-picker/config/useRangePickerLogic.js.map +1 -1
- package/dist/esm/controlled-date-range-picker/parts/ControlledDateRangeContent.js +19 -4
- package/dist/esm/controlled-date-range-picker/parts/ControlledDateRangeContent.js.map +1 -1
- package/dist/esm/controlled-date-time-picker/config/useControlledDateTimePicker.js +44 -52
- package/dist/esm/controlled-date-time-picker/config/useControlledDateTimePicker.js.map +1 -1
- package/dist/esm/controlled-date-time-picker/parts/ControlledDateTimePickerContent.js +19 -4
- package/dist/esm/controlled-date-time-picker/parts/ControlledDateTimePickerContent.js.map +1 -1
- package/dist/esm/controlled-date-time-picker/parts/DateInputs/useDateInputs.js +25 -12
- package/dist/esm/controlled-date-time-picker/parts/DateInputs/useDateInputs.js.map +1 -1
- package/dist/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarWrapper.js +23 -4
- package/dist/esm/controlled-date-time-picker/parts/Pickers/Calendar/CalendarWrapper.js.map +1 -1
- package/dist/esm/controlled-date-time-picker/parts/Pickers/Calendar/Day.js +23 -5
- package/dist/esm/controlled-date-time-picker/parts/Pickers/Calendar/Day.js.map +1 -1
- package/dist/esm/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelWrapper.js +23 -4
- package/dist/esm/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelWrapper.js.map +1 -1
- package/dist/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/HoursList.js +19 -4
- package/dist/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/HoursList.js.map +1 -1
- package/dist/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/MinutesList.js +19 -4
- package/dist/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/MinutesList.js.map +1 -1
- package/dist/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/SecondsList.js +19 -4
- package/dist/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/SecondsList.js.map +1 -1
- package/dist/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelWrapper.js +23 -4
- package/dist/esm/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelWrapper.js.map +1 -1
- package/dist/esm/controlled-date-time-picker/utils/dateTimeHelpers.js +17 -4
- package/dist/esm/controlled-date-time-picker/utils/dateTimeHelpers.js.map +1 -1
- package/dist/esm/controlled-toggle/ControlledToggle.js +19 -4
- package/dist/esm/controlled-toggle/ControlledToggle.js.map +1 -1
- package/package.json +15 -14
- package/dist/cjs/controlled-checkbox/index.d.js +0 -20
- package/dist/cjs/controlled-checkbox/index.d.js.map +0 -7
- package/dist/cjs/controlled-checkbox/propTypes.js +0 -20
- package/dist/cjs/controlled-checkbox/propTypes.js.map +0 -7
- package/dist/cjs/controlled-combobox/config/constants.js +0 -42
- package/dist/cjs/controlled-combobox/config/constants.js.map +0 -7
- package/dist/cjs/controlled-combobox/config/useGetPropsWithDefault.js +0 -37
- package/dist/cjs/controlled-combobox/config/useGetPropsWithDefault.js.map +0 -7
- package/dist/cjs/controlled-combobox/index.d.js.map +0 -7
- package/dist/cjs/controlled-combobox/parts/a11y-messages/MultiAllyMessages.js.map +0 -7
- package/dist/cjs/controlled-combobox/parts/a11y-messages/SingleAllyMessages.js.map +0 -7
- package/dist/cjs/controlled-combobox/parts/dropdown-indicator/index.js +0 -20
- package/dist/cjs/controlled-combobox/parts/dropdown-indicator/index.js.map +0 -7
- package/dist/cjs/controlled-combobox/parts/empty-state/index.js +0 -45
- package/dist/cjs/controlled-combobox/parts/empty-state/index.js.map +0 -7
- package/dist/cjs/controlled-combobox/parts/empty-state/styled.js +0 -40
- package/dist/cjs/controlled-combobox/parts/empty-state/styled.js.map +0 -7
- package/dist/cjs/controlled-combobox/parts/multi-selected-values-container/styled.js +0 -48
- package/dist/cjs/controlled-combobox/parts/multi-selected-values-container/styled.js.map +0 -7
- package/dist/cjs/controlled-combobox/parts/single-selected-value-container/SingleSelectedValueContainer.js.map +0 -7
- package/dist/cjs/controlled-combobox/parts/single-selected-value-container/index.js +0 -35
- package/dist/cjs/controlled-combobox/parts/single-selected-value-container/index.js.map +0 -7
- package/dist/cjs/controlled-combobox/parts/single-selected-value-container/styled.js +0 -40
- package/dist/cjs/controlled-combobox/parts/single-selected-value-container/styled.js.map +0 -7
- package/dist/cjs/controlled-combobox/propTypes.js +0 -55
- package/dist/cjs/controlled-combobox/propTypes.js.map +0 -7
- package/dist/esm/controlled-checkbox/index.d.js +0 -2
- package/dist/esm/controlled-checkbox/propTypes.js +0 -2
- package/dist/esm/controlled-checkbox/propTypes.js.map +0 -7
- package/dist/esm/controlled-combobox/config/constants.js +0 -13
- package/dist/esm/controlled-combobox/config/constants.js.map +0 -7
- package/dist/esm/controlled-combobox/config/useGetPropsWithDefault.js +0 -8
- package/dist/esm/controlled-combobox/config/useGetPropsWithDefault.js.map +0 -7
- package/dist/esm/controlled-combobox/index.d.js +0 -2
- package/dist/esm/controlled-combobox/index.d.js.map +0 -7
- package/dist/esm/controlled-combobox/parts/a11y-messages/MultiAllyMessages.js +0 -21
- package/dist/esm/controlled-combobox/parts/a11y-messages/MultiAllyMessages.js.map +0 -7
- package/dist/esm/controlled-combobox/parts/a11y-messages/SingleAllyMessages.js +0 -19
- package/dist/esm/controlled-combobox/parts/a11y-messages/SingleAllyMessages.js.map +0 -7
- package/dist/esm/controlled-combobox/parts/dropdown-indicator/index.js +0 -2
- package/dist/esm/controlled-combobox/parts/dropdown-indicator/index.js.map +0 -7
- package/dist/esm/controlled-combobox/parts/empty-state/index.js +0 -16
- package/dist/esm/controlled-combobox/parts/empty-state/index.js.map +0 -7
- package/dist/esm/controlled-combobox/parts/empty-state/styled.js +0 -11
- package/dist/esm/controlled-combobox/parts/empty-state/styled.js.map +0 -7
- package/dist/esm/controlled-combobox/parts/multi-selected-values-container/styled.js +0 -19
- package/dist/esm/controlled-combobox/parts/multi-selected-values-container/styled.js.map +0 -7
- package/dist/esm/controlled-combobox/parts/single-selected-value-container/SingleSelectedValueContainer.js +0 -19
- package/dist/esm/controlled-combobox/parts/single-selected-value-container/SingleSelectedValueContainer.js.map +0 -7
- package/dist/esm/controlled-combobox/parts/single-selected-value-container/index.js +0 -6
- package/dist/esm/controlled-combobox/parts/single-selected-value-container/index.js.map +0 -7
- package/dist/esm/controlled-combobox/parts/single-selected-value-container/styled.js +0 -11
- package/dist/esm/controlled-combobox/parts/single-selected-value-container/styled.js.map +0 -7
- package/dist/esm/controlled-combobox/propTypes.js.map +0 -7
- package/dist/types/controlled-autocomplete/Autocomplete.d.ts +0 -62
- package/dist/types/controlled-autocomplete/AutocompleteCTX.d.ts +0 -6
- package/dist/types/controlled-autocomplete/AutocompleteDataTestids.d.ts +0 -11
- package/dist/types/controlled-autocomplete/config/constants.d.ts +0 -8
- package/dist/types/controlled-autocomplete/config/useAutocomplete.d.ts +0 -2
- package/dist/types/controlled-autocomplete/config/useGetPropsWithDefault.d.ts +0 -2
- package/dist/types/controlled-autocomplete/index.d.ts +0 -1
- package/dist/types/controlled-autocomplete/parts/a11y-messages/MultiAllyMessages.d.ts +0 -3
- package/dist/types/controlled-autocomplete/parts/a11y-messages/SingleAllyMessages.d.ts +0 -3
- package/dist/types/controlled-autocomplete/parts/a11y-messages/index.d.ts +0 -2
- package/dist/types/controlled-autocomplete/parts/a11y-messages/styled.d.ts +0 -1
- package/dist/types/controlled-autocomplete/parts/container/Container.d.ts +0 -3
- package/dist/types/controlled-autocomplete/parts/container/index.d.ts +0 -1
- package/dist/types/controlled-autocomplete/parts/container/styled.d.ts +0 -3
- package/dist/types/controlled-autocomplete/parts/controls/Controls.d.ts +0 -3
- package/dist/types/controlled-autocomplete/parts/controls/index.d.ts +0 -1
- package/dist/types/controlled-autocomplete/parts/controls/styled.d.ts +0 -8
- package/dist/types/controlled-autocomplete/parts/controls/useControlsInput.d.ts +0 -9
- package/dist/types/controlled-autocomplete/parts/menu-list/MenuList.d.ts +0 -3
- package/dist/types/controlled-autocomplete/parts/menu-list/index.d.ts +0 -1
- package/dist/types/controlled-autocomplete/parts/menu-list/styled.d.ts +0 -10
- package/dist/types/controlled-autocomplete/parts/menu-list/useItemRenderer.d.ts +0 -3
- package/dist/types/controlled-autocomplete/parts/menu-list/useMenuList.d.ts +0 -2
- package/dist/types/controlled-autocomplete/propTypes.d.ts +0 -51
- package/dist/types/controlled-autocomplete/utils/hooks/useKeyboardNavigation.d.ts +0 -4
- package/dist/types/controlled-autocomplete/utils/hooks/useOnElementResize.d.ts +0 -3
- package/dist/types/controlled-autocomplete/utils/listHelper.d.ts +0 -7
- package/dist/types/controlled-checkbox/ControlledCheckbox.d.ts +0 -0
- package/dist/types/controlled-checkbox/config/useValidateProps.d.ts +0 -0
- package/dist/types/controlled-checkbox/index.d.d.ts +0 -0
- package/dist/types/controlled-checkbox/index.d.ts +0 -1
- package/dist/types/controlled-checkbox/propTypes.d.ts +0 -0
- package/dist/types/controlled-checkbox/styles.d.ts +0 -0
- package/dist/types/controlled-checkbox/tests/DSControlledCheckbox.keyboard.test.d.ts +0 -0
- package/dist/types/controlled-checkbox/tests/DSControlledCheckbox.test.d.ts +0 -0
- package/dist/types/controlled-checkbox/tests/DSControllledCheckbox.events.test.d.ts +0 -0
- package/dist/types/controlled-checkbox/utils/setMultipleRefs.d.ts +0 -0
- package/dist/types/controlled-checkbox/utils/styleHelpers.d.ts +0 -0
- package/dist/types/controlled-combobox/ComboBox.d.ts +0 -71
- package/dist/types/controlled-combobox/ComboBoxCTX.d.ts +0 -6
- package/dist/types/controlled-combobox/ComboboxDataTestids.d.ts +0 -11
- package/dist/types/controlled-combobox/config/constants.d.ts +0 -8
- package/dist/types/controlled-combobox/config/useComboBox.d.ts +0 -2
- package/dist/types/controlled-combobox/config/useGetPropsWithDefault.d.ts +0 -2
- package/dist/types/controlled-combobox/index.d.ts +0 -1
- package/dist/types/controlled-combobox/parts/a11y-messages/MultiAllyMessages.d.ts +0 -3
- package/dist/types/controlled-combobox/parts/a11y-messages/SingleAllyMessages.d.ts +0 -3
- package/dist/types/controlled-combobox/parts/a11y-messages/index.d.ts +0 -2
- package/dist/types/controlled-combobox/parts/a11y-messages/styled.d.ts +0 -1
- package/dist/types/controlled-combobox/parts/container/Container.d.ts +0 -3
- package/dist/types/controlled-combobox/parts/container/index.d.ts +0 -1
- package/dist/types/controlled-combobox/parts/container/styled.d.ts +0 -3
- package/dist/types/controlled-combobox/parts/controls/Controls.d.ts +0 -3
- package/dist/types/controlled-combobox/parts/controls/index.d.ts +0 -1
- package/dist/types/controlled-combobox/parts/controls/styled.d.ts +0 -6
- package/dist/types/controlled-combobox/parts/controls-input/ControlsInput.d.ts +0 -3
- package/dist/types/controlled-combobox/parts/controls-input/styled.d.ts +0 -4
- package/dist/types/controlled-combobox/parts/controls-input/useControlsInput.d.ts +0 -12
- package/dist/types/controlled-combobox/parts/dropdown-indicator/DropdownIndicator.d.ts +0 -4
- package/dist/types/controlled-combobox/parts/dropdown-indicator/index.d.ts +0 -0
- package/dist/types/controlled-combobox/parts/dropdown-indicator/styled.d.ts +0 -1
- package/dist/types/controlled-combobox/parts/empty-state/index.d.ts +0 -3
- package/dist/types/controlled-combobox/parts/empty-state/styled.d.ts +0 -2
- package/dist/types/controlled-combobox/parts/header-list/HeaderList.d.ts +0 -3
- package/dist/types/controlled-combobox/parts/header-list/index.d.ts +0 -1
- package/dist/types/controlled-combobox/parts/header-list/styled.d.ts +0 -5
- package/dist/types/controlled-combobox/parts/header-list/useHeaderListHandlers.d.ts +0 -10
- package/dist/types/controlled-combobox/parts/menu-list/MenuList.d.ts +0 -3
- package/dist/types/controlled-combobox/parts/menu-list/index.d.ts +0 -1
- package/dist/types/controlled-combobox/parts/menu-list/styled.d.ts +0 -11
- package/dist/types/controlled-combobox/parts/menu-list/useItemRenderer.d.ts +0 -3
- package/dist/types/controlled-combobox/parts/menu-list/useMenuList.d.ts +0 -2
- package/dist/types/controlled-combobox/parts/multi-selected-values-container/MultiSelectedValuesContainer.d.ts +0 -3
- package/dist/types/controlled-combobox/parts/multi-selected-values-container/index.d.ts +0 -1
- package/dist/types/controlled-combobox/parts/multi-selected-values-container/styled.d.ts +0 -3
- package/dist/types/controlled-combobox/parts/multi-selected-values-container/useGroupPills.d.ts +0 -2
- package/dist/types/controlled-combobox/parts/single-selected-value-container/SingleSelectedValueContainer.d.ts +0 -3
- package/dist/types/controlled-combobox/parts/single-selected-value-container/index.d.ts +0 -1
- package/dist/types/controlled-combobox/parts/single-selected-value-container/styled.d.ts +0 -1
- package/dist/types/controlled-combobox/propTypes.d.ts +0 -60
- package/dist/types/controlled-combobox/tests/combobox-general.test.d.ts +0 -1
- package/dist/types/controlled-combobox/tests/combobox-multi-select.test.d.ts +0 -1
- package/dist/types/controlled-combobox/tests/combobox-single-select.test.d.ts +0 -1
- package/dist/types/controlled-combobox/tests/combobox-special-keys.test.d.ts +0 -1
- package/dist/types/controlled-combobox/tests/utils.d.ts +0 -22
- package/dist/types/controlled-combobox/utils/hooks/useKeyboardNavigation.d.ts +0 -4
- package/dist/types/controlled-combobox/utils/hooks/useOnElementResize.d.ts +0 -3
- package/dist/types/controlled-combobox/utils/listHelper.d.ts +0 -7
- package/dist/types/controlled-date-range-picker/ControlledDateRangePicker.d.ts +0 -20
- package/dist/types/controlled-date-range-picker/ControlledDateRangePickerCTX.d.ts +0 -6
- package/dist/types/controlled-date-range-picker/ControlledDateRangePickerDatatestid.d.ts +0 -3
- package/dist/types/controlled-date-range-picker/ControlledDateRangePickerTypes.d.ts +0 -6
- package/dist/types/controlled-date-range-picker/config/useControlledDateRangePicker.d.ts +0 -2
- package/dist/types/controlled-date-range-picker/config/useGetPropsWithDefault.d.ts +0 -2
- package/dist/types/controlled-date-range-picker/config/useRangePickerLogic.d.ts +0 -2
- package/dist/types/controlled-date-range-picker/config/useValidateProps.d.ts +0 -2
- package/dist/types/controlled-date-range-picker/index.d.ts +0 -3
- package/dist/types/controlled-date-range-picker/parts/ControlledDateRangeCalendar.d.ts +0 -2
- package/dist/types/controlled-date-range-picker/parts/ControlledDateRangeContent.d.ts +0 -2
- package/dist/types/controlled-date-range-picker/parts/ControlledDateRangeFromDate.d.ts +0 -2
- package/dist/types/controlled-date-range-picker/parts/ControlledDateRangeToDate.d.ts +0 -2
- package/dist/types/controlled-date-range-picker/propTypes.d.ts +0 -9
- package/dist/types/controlled-date-range-picker/tests/date-range-picker.auto-advance.test.d.ts +0 -1
- package/dist/types/controlled-date-range-picker/tests/date-range-picker.classes.test.d.ts +0 -1
- package/dist/types/controlled-date-range-picker/tests/date-range-picker.clear-button.test.d.ts +0 -1
- package/dist/types/controlled-date-range-picker/tests/date-range-picker.keyboard-focus.test.d.ts +0 -1
- package/dist/types/controlled-date-range-picker/tests/date-range-picker.manual-delete-values.test.d.ts +0 -1
- package/dist/types/controlled-date-range-picker/tests/date-range-picker.types-dom.test.d.ts +0 -1
- package/dist/types/controlled-date-time-picker/ControlledDateTimePicker.d.ts +0 -92
- package/dist/types/controlled-date-time-picker/ControlledDateTimePickerCTX.d.ts +0 -6
- package/dist/types/controlled-date-time-picker/ControlledDateTimePickerDatatestid.d.ts +0 -55
- package/dist/types/controlled-date-time-picker/ControlledDateTimePickerTypes.d.ts +0 -20
- package/dist/types/controlled-date-time-picker/config/useControlledDateTimePicker.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/config/useGetDestructuredValues.d.ts +0 -4
- package/dist/types/controlled-date-time-picker/config/useGetPropsWithDefault.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/config/useValidateProps.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/index.d.ts +0 -7
- package/dist/types/controlled-date-time-picker/parts/ClearButton/ClearButton.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/ClearButton/useClearButton.d.ts +0 -11
- package/dist/types/controlled-date-time-picker/parts/ControlledDateTimePickerContent.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/DateInputs/DDInput.d.ts +0 -15
- package/dist/types/controlled-date-time-picker/parts/DateInputs/DateInputs.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/DateInputs/MMInput.d.ts +0 -16
- package/dist/types/controlled-date-time-picker/parts/DateInputs/YYYYInput.d.ts +0 -15
- package/dist/types/controlled-date-time-picker/parts/DateInputs/useDateInputs.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/Calendar/Calendar.d.ts +0 -3
- package/dist/types/controlled-date-time-picker/parts/Pickers/Calendar/CalendarBody.d.ts +0 -6
- package/dist/types/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContent.d.ts +0 -4
- package/dist/types/controlled-date-time-picker/parts/Pickers/Calendar/CalendarContext.d.ts +0 -66
- package/dist/types/controlled-date-time-picker/parts/Pickers/Calendar/CalendarDaysList.d.ts +0 -9
- package/dist/types/controlled-date-time-picker/parts/Pickers/Calendar/CalendarFooter.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/Calendar/CalendarHead.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/Calendar/CalendarIconTrigger.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/Calendar/CalendarMonthDays.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/Calendar/CalendarWeekDays.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/Calendar/CalendarWrapper.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/Calendar/Day.d.ts +0 -9
- package/dist/types/controlled-date-time-picker/parts/Pickers/Calendar/Styleds.d.ts +0 -22
- package/dist/types/controlled-date-time-picker/parts/Pickers/Calendar/useConfigCalendarCTX.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/Calendar/useCurrentDisplayedMonthYearLogic.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/Calendar/useFocusLogic.d.ts +0 -8
- package/dist/types/controlled-date-time-picker/parts/Pickers/Calendar/useKeyboardHandlers.d.ts +0 -13
- package/dist/types/controlled-date-time-picker/parts/Pickers/Calendar/usePopperTriggerLogic.d.ts +0 -12
- package/dist/types/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheel.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContent.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelContext.d.ts +0 -21
- package/dist/types/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelFooter.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelIconTrigger.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/CalendarWithTimeWheelWrapper.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/Styleds.d.ts +0 -12
- package/dist/types/controlled-date-time-picker/parts/Pickers/CalendarWithTimeWheel/useConfigCalendarWithTimeWheelCTX.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/PickersIcons.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/TimeWheel/HoursList.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/TimeWheel/MeridiemList.d.ts +0 -3
- package/dist/types/controlled-date-time-picker/parts/Pickers/TimeWheel/MinutesList.d.ts +0 -3
- package/dist/types/controlled-date-time-picker/parts/Pickers/TimeWheel/SecondsList.d.ts +0 -3
- package/dist/types/controlled-date-time-picker/parts/Pickers/TimeWheel/Styleds.d.ts +0 -28
- package/dist/types/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheel.d.ts +0 -3
- package/dist/types/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContent.d.ts +0 -4
- package/dist/types/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelContext.d.ts +0 -65
- package/dist/types/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelFooter.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelIconTrigger.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/TimeWheel/TimeWheelWrapper.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/TimeWheel/useConfigTimePickerCTX.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Pickers/TimeWheel/useCurrentDisplayedWheelsLogic.d.ts +0 -6
- package/dist/types/controlled-date-time-picker/parts/Pickers/TimeWheel/useKeyboardHandlers.d.ts +0 -4
- package/dist/types/controlled-date-time-picker/parts/Pickers/TimeWheel/usePopperTriggerLogic.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/Styleds.d.ts +0 -16
- package/dist/types/controlled-date-time-picker/parts/TimeInputs/HHInput.d.ts +0 -16
- package/dist/types/controlled-date-time-picker/parts/TimeInputs/MeridiemInput.d.ts +0 -15
- package/dist/types/controlled-date-time-picker/parts/TimeInputs/MinutesInput.d.ts +0 -15
- package/dist/types/controlled-date-time-picker/parts/TimeInputs/TimeInputs.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/TimeInputs/useTimeInputs.d.ts +0 -2
- package/dist/types/controlled-date-time-picker/parts/config.d.ts +0 -5
- package/dist/types/controlled-date-time-picker/propTypes.d.ts +0 -81
- package/dist/types/controlled-date-time-picker/tests/date-time-picker.auto-advance.test.d.ts +0 -1
- package/dist/types/controlled-date-time-picker/tests/date-time-picker.clear-button.test.d.ts +0 -1
- package/dist/types/controlled-date-time-picker/tests/date-time-picker.keyboard-focus.test.d.ts +0 -1
- package/dist/types/controlled-date-time-picker/tests/date-time-picker.keyboard.data-entry-typing.test.d.ts +0 -1
- package/dist/types/controlled-date-time-picker/tests/date-time-picker.keyboard.fill-with-now.test.d.ts +0 -1
- package/dist/types/controlled-date-time-picker/tests/date-time-picker.keyboard.regressive-backspace.test.d.ts +0 -1
- package/dist/types/controlled-date-time-picker/tests/date-time-picker.keyboard.shortcut-clear.test.d.ts +0 -1
- package/dist/types/controlled-date-time-picker/tests/date-time-picker.manual-delete-values.test.d.ts +0 -1
- package/dist/types/controlled-date-time-picker/tests/date-time-picker.onChange-meta-info.test.d.ts +0 -1
- package/dist/types/controlled-date-time-picker/tests/date-time-picker.types-dom.test.d.ts +0 -1
- package/dist/types/controlled-date-time-picker/utils/constants.d.ts +0 -44
- package/dist/types/controlled-date-time-picker/utils/dateHelpers.d.ts +0 -39
- package/dist/types/controlled-date-time-picker/utils/dateTimeHelpers.d.ts +0 -8
- package/dist/types/controlled-date-time-picker/utils/hooks/useGetDayFromDateString.d.ts +0 -1
- package/dist/types/controlled-date-time-picker/utils/hooks/useGetMonthYearFromDateStringOrEmptyStartingMonth.d.ts +0 -5
- package/dist/types/controlled-date-time-picker/utils/hooks/useGetStartingFocusedDay.d.ts +0 -8
- package/dist/types/controlled-date-time-picker/utils/hooks/useOnClickOutside.d.ts +0 -1
- package/dist/types/controlled-date-time-picker/utils/numberHelpers.d.ts +0 -1
- package/dist/types/controlled-date-time-picker/utils/stringHelpers.d.ts +0 -36
- package/dist/types/controlled-date-time-picker/utils/timeHelpers.d.ts +0 -2
- package/dist/types/controlled-toggle/ControlledToggle.d.ts +0 -98
- package/dist/types/controlled-toggle/defaultProps.d.ts +0 -12
- package/dist/types/controlled-toggle/index.d.ts +0 -1
- package/dist/types/controlled-toggle/propTypes.d.ts +0 -75
- package/dist/types/controlled-toggle/styles.d.ts +0 -8
- package/dist/types/controlled-toggle/tests/DSControlledToggle.keyboard.test.d.ts +0 -1
- package/dist/types/controlled-toggle/tests/DSControlledToggle.test.d.ts +0 -1
- package/dist/types/controlled-toggle/utils/addTooltipOnReadOnly.d.ts +0 -2
- package/dist/types/controlled-toggle/utils/styleHelpers.d.ts +0 -36
- package/dist/types/index.d.ts +0 -6
|
@@ -5,18 +5,21 @@ import { ComboBoxContext } from "../../ComboBoxCTX";
|
|
|
5
5
|
import { StyledDropDownButton } from "./styled";
|
|
6
6
|
import { ComboboxDataTestid } from "../../ComboboxDataTestids";
|
|
7
7
|
const DropdownIndicator = () => {
|
|
8
|
-
const {
|
|
8
|
+
const {
|
|
9
|
+
props: { disabled },
|
|
10
|
+
showPopover
|
|
11
|
+
} = useContext(ComboBoxContext);
|
|
9
12
|
return /* @__PURE__ */ React2.createElement(StyledDropDownButton, {
|
|
10
13
|
"data-testid": ComboboxDataTestid.DROPDOWN,
|
|
11
14
|
"aria-controls": "combo-listbox",
|
|
12
15
|
"aria-labelledby": "combo-label",
|
|
16
|
+
disabled,
|
|
13
17
|
"aria-expanded": showPopover,
|
|
14
18
|
"aria-haspopup": "listbox",
|
|
15
19
|
"aria-hidden": true,
|
|
16
|
-
buttonType: "
|
|
17
|
-
icon: /* @__PURE__ */ React2.createElement(ChevronSmallDown, null),
|
|
20
|
+
buttonType: "icon",
|
|
18
21
|
tabIndex: -1
|
|
19
|
-
});
|
|
22
|
+
}, /* @__PURE__ */ React2.createElement(ChevronSmallDown, null));
|
|
20
23
|
};
|
|
21
24
|
var DropdownIndicator_default = DropdownIndicator;
|
|
22
25
|
export {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/controlled-combobox/parts/dropdown-indicator/DropdownIndicator.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/prop-types */\n/* eslint-disable import/no-cycle */\nimport React, { useContext } from 'react';\nimport { ChevronSmallDown } from '@elliemae/ds-icons';\nimport { ComboBoxContext } from '../../ComboBoxCTX';\nimport { StyledDropDownButton } from './styled';\nimport { ComboboxDataTestid } from '../../ComboboxDataTestids';\nconst DropdownIndicator = (): JSX.Element => {\n const {
|
|
5
|
-
"mappings": "AAAA;ACEA;AACA;AACA;AACA;AACA;AACA,MAAM,oBAAoB,MAAmB;AAC3C,QAAM,EAAE,
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/prop-types */\n/* eslint-disable import/no-cycle */\nimport React, { useContext } from 'react';\nimport { ChevronSmallDown } from '@elliemae/ds-icons';\nimport { ComboBoxContext } from '../../ComboBoxCTX';\nimport { StyledDropDownButton } from './styled';\nimport { ComboboxDataTestid } from '../../ComboboxDataTestids';\nconst DropdownIndicator = (): JSX.Element => {\n const {\n props: { disabled },\n showPopover,\n } = useContext(ComboBoxContext);\n return (\n <StyledDropDownButton\n data-testid={ComboboxDataTestid.DROPDOWN}\n aria-controls=\"combo-listbox\"\n aria-labelledby=\"combo-label\"\n disabled={disabled}\n aria-expanded={showPopover}\n aria-haspopup=\"listbox\"\n aria-hidden\n buttonType=\"icon\"\n tabIndex={-1}\n >\n <ChevronSmallDown />\n </StyledDropDownButton>\n );\n};\n\nexport { DropdownIndicator };\nexport default DropdownIndicator;\n"],
|
|
5
|
+
"mappings": "AAAA;ACEA;AACA;AACA;AACA;AACA;AACA,MAAM,oBAAoB,MAAmB;AAC3C,QAAM;AAAA,IACJ,OAAO,EAAE;AAAA,IACT;AAAA,MACE,WAAW;AACf,SACE,qCAAC,sBAAD;AAAA,IACE,eAAa,mBAAmB;AAAA,IAChC,iBAAc;AAAA,IACd,mBAAgB;AAAA,IAChB;AAAA,IACA,iBAAe;AAAA,IACf,iBAAc;AAAA,IACd,eAAW;AAAA,IACX,YAAW;AAAA,IACX,UAAU;AAAA,KAEV,qCAAC,kBAAD;AAAA;AAMN,IAAO,4BAAQ;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import styled from "styled-components";
|
|
3
|
-
import {
|
|
4
|
-
const StyledDropDownButton = styled(
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
import { DSButtonV2 } from "@elliemae/ds-button";
|
|
4
|
+
const StyledDropDownButton = styled(DSButtonV2)`
|
|
5
|
+
&:focus::after {
|
|
6
|
+
border: none;
|
|
7
|
+
}
|
|
7
8
|
& svg {
|
|
8
9
|
fill: ${(props) => props.theme.colors.brand["700"]};
|
|
9
10
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/controlled-combobox/parts/dropdown-indicator/styled.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import styled from 'styled-components';\nimport {
|
|
5
|
-
"mappings": "AAAA;ACAA;AACA;AAEO,MAAM,uBAAuB,OAAO;AAAA;AAAA;AAAA;AAAA,
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import styled from 'styled-components';\nimport { DSButtonV2 } from '@elliemae/ds-button';\n\nexport const StyledDropDownButton = styled(DSButtonV2)`\n &:focus::after {\n border: none;\n }\n & svg {\n fill: ${(props) => props.theme.colors.brand['700']};\n }\n`;\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AACA;AAEO,MAAM,uBAAuB,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,YAK/B,CAAC,UAAU,MAAM,MAAM,OAAO,MAAM;AAAA;AAAA;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -14,37 +14,41 @@ import { ComboboxDataTestid } from "../../ComboboxDataTestids";
|
|
|
14
14
|
import { useHeaderListHandlers } from "./useHeaderListHandlers";
|
|
15
15
|
const HeaderList = () => {
|
|
16
16
|
const {
|
|
17
|
-
props: { onSelectAll, onClearAll, selectedValues },
|
|
17
|
+
props: { onSelectAll, onClearAll, selectedValues, innerRef },
|
|
18
18
|
showSelectedOptions,
|
|
19
|
-
inputRef,
|
|
20
19
|
selectAllCheckboxRef,
|
|
21
20
|
toggleSelectionButtonRef
|
|
22
21
|
} = useContext(ComboBoxContext);
|
|
23
22
|
const isSelectAllSupplied = onSelectAll !== noop;
|
|
24
23
|
const isClearAllSupplied = onClearAll !== noop;
|
|
25
24
|
const multiSelectedValues = selectedValues;
|
|
26
|
-
const {
|
|
25
|
+
const {
|
|
26
|
+
handleKeyDown,
|
|
27
|
+
handleOnMouseDown,
|
|
28
|
+
handleFilterSelectionBtnOnBlur,
|
|
29
|
+
handleToggle,
|
|
30
|
+
checkboxStatus,
|
|
31
|
+
handleSelectAllCheckboxChange
|
|
32
|
+
} = useHeaderListHandlers();
|
|
27
33
|
return /* @__PURE__ */ React2.createElement(StyledHeaderListWrapper, {
|
|
28
34
|
onKeyDown: handleKeyDown,
|
|
29
35
|
onMouseDown: handleOnMouseDown
|
|
30
36
|
}, /* @__PURE__ */ React2.createElement(StyledSelectAllCheckbox, null, isSelectAllSupplied && isClearAllSupplied && /* @__PURE__ */ React2.createElement(DSControlledCheckbox, {
|
|
31
37
|
checked: checkboxStatus,
|
|
32
|
-
|
|
38
|
+
"aria-controls": checkboxStatus === "mixed" ? multiSelectedValues.map((item) => item.dsId).join(" ") : "",
|
|
33
39
|
name: "select-all-checkbox",
|
|
34
|
-
|
|
40
|
+
"aria-label": "Select/Unselect All Items",
|
|
35
41
|
id: "select-all-checkbox",
|
|
36
42
|
onChange: handleSelectAllCheckboxChange,
|
|
37
43
|
"data-testid": ComboboxDataTestid.SELECT_ALL_CHECKBOX,
|
|
38
44
|
onBlur: () => {
|
|
39
45
|
if (multiSelectedValues.length === 0) {
|
|
40
|
-
setTimeout(() =>
|
|
46
|
+
setTimeout(() => innerRef.current?.focus());
|
|
41
47
|
}
|
|
42
48
|
},
|
|
43
49
|
innerRef: selectAllCheckboxRef
|
|
44
50
|
})), /* @__PURE__ */ React2.createElement(StyledSelectedItems, null, multiSelectedValues.length > 0 ? /* @__PURE__ */ React2.createElement(StyledButtonSelection, {
|
|
45
|
-
onBlur:
|
|
46
|
-
setTimeout(() => inputRef.current?.focus());
|
|
47
|
-
},
|
|
51
|
+
onBlur: handleFilterSelectionBtnOnBlur,
|
|
48
52
|
buttonType: "text",
|
|
49
53
|
onClick: handleToggle,
|
|
50
54
|
labelText: !showSelectedOptions ? `SHOW SELECTED [${multiSelectedValues.length}]` : "SHOW ALL",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/controlled-combobox/parts/header-list/HeaderList.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\n/* eslint-disable max-lines */\n/* eslint-disable jsx-a11y/click-events-have-key-events */\nimport React, { useContext } from 'react';\nimport { noop } from 'lodash';\nimport { DSControlledCheckbox } from '../../../controlled-checkbox';\nimport { ComboBoxContext } from '../../ComboBoxCTX';\nimport {\n StyledHeaderListWrapper,\n StyledButtonSelection,\n StyledSelectedItems,\n StyledSelectAllCheckbox,\n StyledNoOptionsSelected,\n} from './styled';\nimport {
|
|
5
|
-
"mappings": "AAAA;ACGA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA;AACA;AACA,MAAM,aAAa,MAAmB;AACpC,QAAM;AAAA,IACJ,OAAO,EAAE,aAAa,YAAY
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\n/* eslint-disable max-lines */\n/* eslint-disable jsx-a11y/click-events-have-key-events */\nimport React, { useContext } from 'react';\nimport { noop } from 'lodash';\nimport { DSControlledCheckbox } from '../../../controlled-checkbox';\nimport { ComboBoxContext } from '../../ComboBoxCTX';\nimport {\n StyledHeaderListWrapper,\n StyledButtonSelection,\n StyledSelectedItems,\n StyledSelectAllCheckbox,\n StyledNoOptionsSelected,\n} from './styled';\nimport { DSComboboxT } from '../../react-desc-prop-types';\nimport { ComboboxDataTestid } from '../../ComboboxDataTestids';\nimport { useHeaderListHandlers } from './useHeaderListHandlers';\nconst HeaderList = (): JSX.Element => {\n const {\n props: { onSelectAll, onClearAll, selectedValues, innerRef },\n showSelectedOptions,\n selectAllCheckboxRef,\n toggleSelectionButtonRef,\n } = useContext(ComboBoxContext);\n\n const isSelectAllSupplied = onSelectAll !== noop;\n const isClearAllSupplied = onClearAll !== noop;\n\n const multiSelectedValues = selectedValues as DSComboboxT.ItemOption[];\n const {\n handleKeyDown,\n handleOnMouseDown,\n handleFilterSelectionBtnOnBlur,\n handleToggle,\n checkboxStatus,\n handleSelectAllCheckboxChange,\n } = useHeaderListHandlers();\n\n return (\n <StyledHeaderListWrapper onKeyDown={handleKeyDown} onMouseDown={handleOnMouseDown}>\n <StyledSelectAllCheckbox>\n {isSelectAllSupplied && isClearAllSupplied && (\n <DSControlledCheckbox\n checked={checkboxStatus}\n aria-controls={checkboxStatus === 'mixed' ? multiSelectedValues.map((item) => item.dsId).join(' ') : ''}\n name=\"select-all-checkbox\"\n aria-label=\"Select/Unselect All Items\"\n id=\"select-all-checkbox\"\n onChange={handleSelectAllCheckboxChange}\n data-testid={ComboboxDataTestid.SELECT_ALL_CHECKBOX}\n onBlur={() => {\n if (multiSelectedValues.length === 0) {\n setTimeout(() => innerRef.current?.focus());\n }\n }}\n innerRef={selectAllCheckboxRef}\n />\n )}\n </StyledSelectAllCheckbox>\n <StyledSelectedItems>\n {multiSelectedValues.length > 0 ? (\n <StyledButtonSelection\n onBlur={handleFilterSelectionBtnOnBlur}\n buttonType=\"text\"\n onClick={handleToggle}\n labelText={!showSelectedOptions ? `SHOW SELECTED [${multiSelectedValues.length}]` : 'SHOW ALL'}\n size=\"s\"\n data-testid={ComboboxDataTestid.SHOW_SELECTED_OPTIONS_TOGGLE}\n innerRef={toggleSelectionButtonRef}\n />\n ) : (\n <StyledNoOptionsSelected>0 SELECTED</StyledNoOptionsSelected>\n )}\n </StyledSelectedItems>\n </StyledHeaderListWrapper>\n );\n};\n\nexport { HeaderList };\n"],
|
|
5
|
+
"mappings": "AAAA;ACGA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA;AACA;AACA,MAAM,aAAa,MAAmB;AACpC,QAAM;AAAA,IACJ,OAAO,EAAE,aAAa,YAAY,gBAAgB;AAAA,IAClD;AAAA,IACA;AAAA,IACA;AAAA,MACE,WAAW;AAEf,QAAM,sBAAsB,gBAAgB;AAC5C,QAAM,qBAAqB,eAAe;AAE1C,QAAM,sBAAsB;AAC5B,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,MACE;AAEJ,SACE,qCAAC,yBAAD;AAAA,IAAyB,WAAW;AAAA,IAAe,aAAa;AAAA,KAC9D,qCAAC,yBAAD,MACG,uBAAuB,sBACtB,qCAAC,sBAAD;AAAA,IACE,SAAS;AAAA,IACT,iBAAe,mBAAmB,UAAU,oBAAoB,IAAI,CAAC,SAAS,KAAK,MAAM,KAAK,OAAO;AAAA,IACrG,MAAK;AAAA,IACL,cAAW;AAAA,IACX,IAAG;AAAA,IACH,UAAU;AAAA,IACV,eAAa,mBAAmB;AAAA,IAChC,QAAQ,MAAM;AACZ,UAAI,oBAAoB,WAAW,GAAG;AACpC,mBAAW,MAAM,SAAS,SAAS;AAAA;AAAA;AAAA,IAGvC,UAAU;AAAA,OAIhB,qCAAC,qBAAD,MACG,oBAAoB,SAAS,IAC5B,qCAAC,uBAAD;AAAA,IACE,QAAQ;AAAA,IACR,YAAW;AAAA,IACX,SAAS;AAAA,IACT,WAAW,CAAC,sBAAsB,kBAAkB,oBAAoB,YAAY;AAAA,IACpF,MAAK;AAAA,IACL,eAAa,mBAAmB;AAAA,IAChC,UAAU;AAAA,OAGZ,qCAAC,yBAAD,MAAyB;AAAA;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/controlled-combobox/parts/header-list/styled.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-len */\nimport styled from 'styled-components';\nimport {
|
|
5
|
-
"mappings": "AAAA;ACCA;
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-len */\nimport styled from 'styled-components';\nimport { DSButton } from '@elliemae/ds-button';\n\nexport const StyledHeaderListWrapper = styled.div`\n display: flex;\n position: fixed;\n top: 0;\n z-index: 10;\n justify-content: space-between;\n padding: 0px 12px 0px 16px;\n width: 100%;\n height: 28px;\n background-color: #fff;\n box-shadow: 0 4px 2px -4px ${(props) => props.theme.colors.neutral[700]};\n overflow-x: hidden;\n\n & button {\n font-size: 13px;\n }\n`;\n\nexport const StyledButtonSelection = styled(DSButton)`\n border-radius: 0px;\n padding: 0 ${(props) => props.theme.space.xxs};\n margin: 0;\n align-items: center;\n transition: unset;\n &:hover:not([disabled]) {\n background-color: transparent;\n color: ${(props) => props.theme.colors.brand['700']};\n }\n`;\n\nexport const StyledSelectedItems = styled.div`\n display: flex;\n align-items: center;\n`;\n\nexport const StyledNoOptionsSelected = styled.div`\n padding: 0 ${(props) => props.theme.space.xxs};\n`;\n\nexport const StyledSelectAllCheckbox = styled.div`\n display: flex;\n align-items: center;\n`;\n"],
|
|
5
|
+
"mappings": "AAAA;ACCA;AACA;AAEO,MAAM,0BAA0B,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+BAUf,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQ9D,MAAM,wBAAwB,OAAO;AAAA;AAAA,eAE7B,CAAC,UAAU,MAAM,MAAM,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aAM/B,CAAC,UAAU,MAAM,MAAM,OAAO,MAAM;AAAA;AAAA;AAI1C,MAAM,sBAAsB,OAAO;AAAA;AAAA;AAAA;AAKnC,MAAM,0BAA0B,OAAO;AAAA,eAC/B,CAAC,UAAU,MAAM,MAAM,MAAM;AAAA;AAGrC,MAAM,0BAA0B,OAAO;AAAA;AAAA;AAAA;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -4,8 +4,7 @@ import { getSelectableOptions } from "../../utils/listHelper";
|
|
|
4
4
|
import { ComboBoxContext } from "../../ComboBoxCTX";
|
|
5
5
|
const useHeaderListHandlers = () => {
|
|
6
6
|
const {
|
|
7
|
-
props: { onFilter, selectedValues, options, onSelectAll, onClearAll },
|
|
8
|
-
inputRef,
|
|
7
|
+
props: { onFilter, selectedValues, options, onSelectAll, onClearAll, innerRef },
|
|
9
8
|
showSelectedOptions,
|
|
10
9
|
setShowSelectedOptions,
|
|
11
10
|
setShowPopover
|
|
@@ -32,16 +31,21 @@ const useHeaderListHandlers = () => {
|
|
|
32
31
|
}
|
|
33
32
|
}, [checkboxStatus, onSelectAll, onClearAll]);
|
|
34
33
|
const handleToggle = useCallback(() => {
|
|
35
|
-
if (
|
|
36
|
-
|
|
34
|
+
if (innerRef.current)
|
|
35
|
+
innerRef.current.value = "";
|
|
37
36
|
onFilter("");
|
|
38
37
|
setShowSelectedOptions(!showSelectedOptions);
|
|
39
|
-
}, [setShowSelectedOptions,
|
|
38
|
+
}, [setShowSelectedOptions, innerRef, onFilter, showSelectedOptions]);
|
|
40
39
|
const handleKeyDown = useCallback((e) => {
|
|
41
40
|
if (e.key === "Escape") {
|
|
42
41
|
setShowPopover(false);
|
|
43
42
|
}
|
|
44
43
|
}, [setShowPopover]);
|
|
44
|
+
const handleFilterSelectionBtnOnBlur = useCallback(() => {
|
|
45
|
+
if (showSelectedOptions)
|
|
46
|
+
setShowSelectedOptions(false);
|
|
47
|
+
innerRef.current?.focus();
|
|
48
|
+
}, [setShowSelectedOptions, showSelectedOptions, innerRef]);
|
|
45
49
|
useEffect(() => {
|
|
46
50
|
if (multiSelectedValues.length === 0) {
|
|
47
51
|
setShowSelectedOptions(false);
|
|
@@ -50,10 +54,18 @@ const useHeaderListHandlers = () => {
|
|
|
50
54
|
return useMemo(() => ({
|
|
51
55
|
handleKeyDown,
|
|
52
56
|
handleToggle,
|
|
57
|
+
handleFilterSelectionBtnOnBlur,
|
|
53
58
|
handleOnMouseDown,
|
|
54
59
|
handleSelectAllCheckboxChange,
|
|
55
60
|
checkboxStatus
|
|
56
|
-
}), [
|
|
61
|
+
}), [
|
|
62
|
+
handleKeyDown,
|
|
63
|
+
handleFilterSelectionBtnOnBlur,
|
|
64
|
+
handleToggle,
|
|
65
|
+
handleOnMouseDown,
|
|
66
|
+
checkboxStatus,
|
|
67
|
+
handleSelectAllCheckboxChange
|
|
68
|
+
]);
|
|
57
69
|
};
|
|
58
70
|
export {
|
|
59
71
|
useHeaderListHandlers
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/controlled-combobox/parts/header-list/useHeaderListHandlers.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useMemo,
|
|
5
|
-
"mappings": "AAAA;ACAA;AAEA;AACA;
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useMemo, useEffect, useContext, useCallback } from 'react';\nimport { DSComboboxT } from '../../react-desc-prop-types';\nimport { getSelectableOptions } from '../../utils/listHelper';\nimport { ComboBoxContext } from '../../ComboBoxCTX';\n\ninterface UseHeaderListHandlersT {\n handleKeyDown: (e: React.KeyboardEvent) => void;\n handleToggle: () => void;\n handleOnMouseDown: (e: React.MouseEvent) => void;\n handleSelectAllCheckboxChange: React.ChangeEventHandler<HTMLInputElement>;\n handleFilterSelectionBtnOnBlur: React.FocusEventHandler<HTMLButtonElement>;\n checkboxStatus: boolean | 'mixed';\n}\n\nconst useHeaderListHandlers = (): UseHeaderListHandlersT => {\n const {\n props: { onFilter, selectedValues, options, onSelectAll, onClearAll, innerRef },\n showSelectedOptions,\n setShowSelectedOptions,\n setShowPopover,\n } = useContext(ComboBoxContext);\n\n const multiSelectedValues = selectedValues as DSComboboxT.ItemOption[];\n const selectableOptions = getSelectableOptions(options);\n\n const checkboxStatus = useMemo(() => {\n if (selectableOptions?.length === multiSelectedValues?.length) {\n return true;\n }\n if (multiSelectedValues?.length === 0) {\n return false;\n }\n return 'mixed';\n }, [multiSelectedValues, selectableOptions]);\n\n const handleOnMouseDown = useCallback((e: React.MouseEvent) => {\n e.preventDefault();\n }, []);\n\n const handleSelectAllCheckboxChange = useCallback(() => {\n if (!checkboxStatus || checkboxStatus === 'mixed') {\n onSelectAll();\n } else {\n onClearAll();\n }\n }, [checkboxStatus, onSelectAll, onClearAll]);\n\n const handleToggle = useCallback(() => {\n if (innerRef.current) innerRef.current.value = '';\n onFilter('');\n setShowSelectedOptions(!showSelectedOptions);\n }, [setShowSelectedOptions, innerRef, onFilter, showSelectedOptions]);\n\n const handleKeyDown = useCallback(\n (e: React.KeyboardEvent) => {\n if (e.key === 'Escape') {\n setShowPopover(false);\n }\n },\n [setShowPopover],\n );\n\n const handleFilterSelectionBtnOnBlur = useCallback(() => {\n if (showSelectedOptions) setShowSelectedOptions(false);\n innerRef.current?.focus();\n }, [setShowSelectedOptions, showSelectedOptions, innerRef]);\n\n useEffect(() => {\n if (multiSelectedValues.length === 0) {\n setShowSelectedOptions(false);\n }\n }, [multiSelectedValues, setShowSelectedOptions]);\n\n return useMemo(\n () => ({\n handleKeyDown,\n handleToggle,\n handleFilterSelectionBtnOnBlur,\n handleOnMouseDown,\n handleSelectAllCheckboxChange,\n checkboxStatus,\n }),\n [\n handleKeyDown,\n handleFilterSelectionBtnOnBlur,\n handleToggle,\n handleOnMouseDown,\n checkboxStatus,\n handleSelectAllCheckboxChange,\n ],\n );\n};\n\nexport { useHeaderListHandlers };\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AAEA;AACA;AAWA,MAAM,wBAAwB,MAA8B;AAC1D,QAAM;AAAA,IACJ,OAAO,EAAE,UAAU,gBAAgB,SAAS,aAAa,YAAY;AAAA,IACrE;AAAA,IACA;AAAA,IACA;AAAA,MACE,WAAW;AAEf,QAAM,sBAAsB;AAC5B,QAAM,oBAAoB,qBAAqB;AAE/C,QAAM,iBAAiB,QAAQ,MAAM;AACnC,QAAI,mBAAmB,WAAW,qBAAqB,QAAQ;AAC7D,aAAO;AAAA;AAET,QAAI,qBAAqB,WAAW,GAAG;AACrC,aAAO;AAAA;AAET,WAAO;AAAA,KACN,CAAC,qBAAqB;AAEzB,QAAM,oBAAoB,YAAY,CAAC,MAAwB;AAC7D,MAAE;AAAA,KACD;AAEH,QAAM,gCAAgC,YAAY,MAAM;AACtD,QAAI,CAAC,kBAAkB,mBAAmB,SAAS;AACjD;AAAA,WACK;AACL;AAAA;AAAA,KAED,CAAC,gBAAgB,aAAa;AAEjC,QAAM,eAAe,YAAY,MAAM;AACrC,QAAI,SAAS;AAAS,eAAS,QAAQ,QAAQ;AAC/C,aAAS;AACT,2BAAuB,CAAC;AAAA,KACvB,CAAC,wBAAwB,UAAU,UAAU;AAEhD,QAAM,gBAAgB,YACpB,CAAC,MAA2B;AAC1B,QAAI,EAAE,QAAQ,UAAU;AACtB,qBAAe;AAAA;AAAA,KAGnB,CAAC;AAGH,QAAM,iCAAiC,YAAY,MAAM;AACvD,QAAI;AAAqB,6BAAuB;AAChD,aAAS,SAAS;AAAA,KACjB,CAAC,wBAAwB,qBAAqB;AAEjD,YAAU,MAAM;AACd,QAAI,oBAAoB,WAAW,GAAG;AACpC,6BAAuB;AAAA;AAAA,KAExB,CAAC,qBAAqB;AAEzB,SAAO,QACL,MAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,MAEF;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,36 +1,30 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import React2, { useContext, useMemo
|
|
2
|
+
import React2, { useContext, useMemo } from "react";
|
|
3
3
|
import { noop } from "lodash";
|
|
4
|
-
import { StyledListWrapper, StyledList, StyledVirtualListWrapper } from "./styled";
|
|
4
|
+
import { StyledListWrapper, StyledNoResultsWrapper, StyledList, StyledVirtualListWrapper } from "./styled";
|
|
5
5
|
import { ComboboxDataTestid } from "../../ComboboxDataTestids";
|
|
6
6
|
import { ComboBoxContext } from "../../ComboBoxCTX";
|
|
7
7
|
import { HeaderList } from "../header-list";
|
|
8
8
|
import { useOnElementResize } from "../../utils/hooks/useOnElementResize";
|
|
9
|
-
import { EmptyState } from "../empty-state";
|
|
10
9
|
import { useItemRenderer } from "./useItemRenderer";
|
|
11
10
|
import { useMenuList } from "./useMenuList";
|
|
12
11
|
const MenuList = () => {
|
|
13
12
|
const {
|
|
14
|
-
props: { menuMinWidth, menuMaxHeight, onCreate, inline, options, selectedValues },
|
|
13
|
+
props: { menuMinWidth, menuMaxHeight, onCreate, inline, options, selectedValues, innerRef },
|
|
15
14
|
referenceElement,
|
|
16
|
-
inputRef,
|
|
17
15
|
listRef,
|
|
18
|
-
showPopover,
|
|
19
16
|
wrapperListRef,
|
|
20
17
|
controlsWrapperRef,
|
|
21
18
|
virtualListHelpers
|
|
22
19
|
} = useContext(ComboBoxContext);
|
|
23
|
-
const { totalSize } = virtualListHelpers;
|
|
24
20
|
const isOnCreatedSupplied = onCreate !== noop;
|
|
25
21
|
const multiple = Array.isArray(selectedValues);
|
|
26
|
-
const withHeader = !inline && multiple && options.length > 0 &&
|
|
22
|
+
const withHeader = !inline && multiple && options.length > 0 && innerRef.current?.value === "";
|
|
27
23
|
const ItemRenderer = useItemRenderer();
|
|
28
24
|
useMenuList();
|
|
29
25
|
const { width } = useOnElementResize(controlsWrapperRef);
|
|
30
26
|
const listWidth = useMemo(() => menuMinWidth || `${referenceElement?.offsetWidth}`, [menuMinWidth, referenceElement, width]);
|
|
31
|
-
const
|
|
32
|
-
}, [inputRef]);
|
|
33
|
-
return /* @__PURE__ */ React2.createElement(StyledListWrapper, {
|
|
27
|
+
const list = useMemo(() => /* @__PURE__ */ React2.createElement(StyledListWrapper, {
|
|
34
28
|
ref: wrapperListRef,
|
|
35
29
|
inline,
|
|
36
30
|
onMouseDown: (e) => e.preventDefault(),
|
|
@@ -43,12 +37,23 @@ const MenuList = () => {
|
|
|
43
37
|
}, /* @__PURE__ */ React2.createElement(StyledList, {
|
|
44
38
|
id: "combo-listbox",
|
|
45
39
|
role: "listbox",
|
|
46
|
-
tabIndex: -1,
|
|
47
|
-
"aria-expanded": showPopover,
|
|
48
|
-
onFocus: handleOnFocus,
|
|
49
40
|
"data-testid": ComboboxDataTestid.LIST,
|
|
50
|
-
style: { height: totalSize, margin: inline ? "0px" : "8px 0px" }
|
|
51
|
-
}, ItemRenderer)) : /* @__PURE__ */ React2.createElement(
|
|
41
|
+
style: { height: virtualListHelpers?.totalSize, margin: inline ? "0px" : "8px 0px" }
|
|
42
|
+
}, ItemRenderer)) : /* @__PURE__ */ React2.createElement(StyledNoResultsWrapper, {
|
|
43
|
+
id: "id-no-results"
|
|
44
|
+
}, "No matches found")), [
|
|
45
|
+
ItemRenderer,
|
|
46
|
+
inline,
|
|
47
|
+
isOnCreatedSupplied,
|
|
48
|
+
listRef,
|
|
49
|
+
listWidth,
|
|
50
|
+
menuMaxHeight,
|
|
51
|
+
options.length,
|
|
52
|
+
virtualListHelpers?.totalSize,
|
|
53
|
+
withHeader,
|
|
54
|
+
wrapperListRef
|
|
55
|
+
]);
|
|
56
|
+
return /* @__PURE__ */ React2.createElement(React2.Fragment, null, list);
|
|
52
57
|
};
|
|
53
58
|
export {
|
|
54
59
|
MenuList
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/controlled-combobox/parts/menu-list/MenuList.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useContext, useMemo
|
|
5
|
-
"mappings": "AAAA;ACAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useContext, useMemo } from 'react';\nimport { noop } from 'lodash';\n\nimport { StyledListWrapper, StyledNoResultsWrapper, StyledList, StyledVirtualListWrapper } from './styled';\nimport { ComboboxDataTestid } from '../../ComboboxDataTestids';\nimport { ComboBoxContext } from '../../ComboBoxCTX';\nimport { HeaderList } from '../header-list';\nimport { useOnElementResize } from '../../utils/hooks/useOnElementResize';\nimport { useItemRenderer } from './useItemRenderer';\nimport { useMenuList } from './useMenuList';\n\nconst MenuList = (): JSX.Element => {\n const {\n props: { menuMinWidth, menuMaxHeight, onCreate, inline, options, selectedValues, innerRef },\n referenceElement,\n listRef,\n wrapperListRef,\n controlsWrapperRef,\n virtualListHelpers,\n } = useContext(ComboBoxContext);\n\n const isOnCreatedSupplied = onCreate !== noop;\n const multiple = Array.isArray(selectedValues);\n const withHeader = !inline && multiple && options.length > 0 && innerRef.current?.value === '';\n const ItemRenderer = useItemRenderer();\n useMenuList();\n const { width } = useOnElementResize(controlsWrapperRef);\n\n const listWidth = useMemo(\n () => menuMinWidth || `${referenceElement?.offsetWidth as number}`,\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [menuMinWidth, referenceElement, width],\n );\n\n const list = useMemo(\n () => (\n <StyledListWrapper\n ref={wrapperListRef}\n inline={inline}\n onMouseDown={(e) => e.preventDefault()}\n minWidth={listWidth}\n >\n {withHeader && <HeaderList />}\n {options.length > 0 || isOnCreatedSupplied ? (\n <StyledVirtualListWrapper\n inline={inline}\n maxHeight={menuMaxHeight as number}\n ref={listRef}\n withHeader={withHeader}\n >\n <StyledList\n id=\"combo-listbox\"\n role=\"listbox\"\n data-testid={ComboboxDataTestid.LIST}\n style={{ height: virtualListHelpers?.totalSize, margin: inline ? '0px' : '8px 0px' }}\n >\n {ItemRenderer}\n </StyledList>\n </StyledVirtualListWrapper>\n ) : (\n <StyledNoResultsWrapper id=\"id-no-results\">No matches found</StyledNoResultsWrapper>\n )}\n </StyledListWrapper>\n ),\n [\n ItemRenderer,\n inline,\n isOnCreatedSupplied,\n listRef,\n listWidth,\n menuMaxHeight,\n options.length,\n virtualListHelpers?.totalSize,\n withHeader,\n wrapperListRef,\n ],\n );\n\n return <>{list}</>;\n};\n\nexport { MenuList };\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,MAAM,WAAW,MAAmB;AAClC,QAAM;AAAA,IACJ,OAAO,EAAE,cAAc,eAAe,UAAU,QAAQ,SAAS,gBAAgB;AAAA,IACjF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,MACE,WAAW;AAEf,QAAM,sBAAsB,aAAa;AACzC,QAAM,WAAW,MAAM,QAAQ;AAC/B,QAAM,aAAa,CAAC,UAAU,YAAY,QAAQ,SAAS,KAAK,SAAS,SAAS,UAAU;AAC5F,QAAM,eAAe;AACrB;AACA,QAAM,EAAE,UAAU,mBAAmB;AAErC,QAAM,YAAY,QAChB,MAAM,gBAAgB,GAAG,kBAAkB,eAE3C,CAAC,cAAc,kBAAkB;AAGnC,QAAM,OAAO,QACX,MACE,qCAAC,mBAAD;AAAA,IACE,KAAK;AAAA,IACL;AAAA,IACA,aAAa,CAAC,MAAM,EAAE;AAAA,IACtB,UAAU;AAAA,KAET,cAAc,qCAAC,YAAD,OACd,QAAQ,SAAS,KAAK,sBACrB,qCAAC,0BAAD;AAAA,IACE;AAAA,IACA,WAAW;AAAA,IACX,KAAK;AAAA,IACL;AAAA,KAEA,qCAAC,YAAD;AAAA,IACE,IAAG;AAAA,IACH,MAAK;AAAA,IACL,eAAa,mBAAmB;AAAA,IAChC,OAAO,EAAE,QAAQ,oBAAoB,WAAW,QAAQ,SAAS,QAAQ;AAAA,KAExE,iBAIL,qCAAC,wBAAD;AAAA,IAAwB,IAAG;AAAA,KAAgB,sBAIjD;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,QAAQ;AAAA,IACR,oBAAoB;AAAA,IACpB;AAAA,IACA;AAAA;AAIJ,SAAO,4DAAG;AAAA;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -2,6 +2,7 @@ import * as React from "react";
|
|
|
2
2
|
import styled from "styled-components";
|
|
3
3
|
const StyledListWrapper = styled.div`
|
|
4
4
|
min-width: ${(props) => props.inline ? "100%" : `${props.minWidth}px`};
|
|
5
|
+
background-color: #ffffff;
|
|
5
6
|
`;
|
|
6
7
|
const StyledList = styled.ul`
|
|
7
8
|
position: relative;
|
|
@@ -17,10 +18,14 @@ const StyledCreatableLabel = styled.span`
|
|
|
17
18
|
font-weight: bold;
|
|
18
19
|
font-style: italic;
|
|
19
20
|
`;
|
|
21
|
+
const StyledNoResultsWrapper = styled.div`
|
|
22
|
+
padding: 16px;
|
|
23
|
+
`;
|
|
20
24
|
export {
|
|
21
25
|
StyledCreatableLabel,
|
|
22
26
|
StyledList,
|
|
23
27
|
StyledListWrapper,
|
|
28
|
+
StyledNoResultsWrapper,
|
|
24
29
|
StyledVirtualListWrapper
|
|
25
30
|
};
|
|
26
31
|
//# sourceMappingURL=styled.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/controlled-combobox/parts/menu-list/styled.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import styled from 'styled-components';\n\nexport const StyledListWrapper = styled.div<{ inline: boolean | undefined; minWidth: string | number }>`\n min-width: ${(props) => (props.inline ? '100%' : `${props.minWidth}px`)};\n`;\n\nexport const StyledList = styled.ul`\n position: relative;\n padding: 0;\n`;\n\nexport const StyledVirtualListWrapper = styled.div<{\n inline: boolean | undefined;\n maxHeight: number;\n withHeader: boolean;\n}>`\n overflow-y: auto;\n margin-top: ${({ withHeader }) => (withHeader ? '28px' : '')};\n\n max-height: ${({ maxHeight }) => (!maxHeight ? '400px' : `${maxHeight}px`)};\n`;\n\nexport const StyledCreatableLabel = styled.span`\n font-weight: bold;\n font-style: italic;\n`;\n"],
|
|
5
|
-
"mappings": "AAAA;ACAA;AAEO,MAAM,oBAAoB,OAAO;AAAA,eACzB,CAAC,UAAW,MAAM,SAAS,SAAS,GAAG,MAAM;AAAA;
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import styled from 'styled-components';\n\nexport const StyledListWrapper = styled.div<{ inline: boolean | undefined; minWidth: string | number }>`\n min-width: ${(props) => (props.inline ? '100%' : `${props.minWidth}px`)};\n background-color: #ffffff;\n`;\n\nexport const StyledList = styled.ul`\n position: relative;\n padding: 0;\n`;\n\nexport const StyledVirtualListWrapper = styled.div<{\n inline: boolean | undefined;\n maxHeight: number;\n withHeader: boolean;\n}>`\n overflow-y: auto;\n margin-top: ${({ withHeader }) => (withHeader ? '28px' : '')};\n\n max-height: ${({ maxHeight }) => (!maxHeight ? '400px' : `${maxHeight}px`)};\n`;\n\nexport const StyledCreatableLabel = styled.span`\n font-weight: bold;\n font-style: italic;\n`;\n\nexport const StyledNoResultsWrapper = styled.div`\n padding: 16px;\n`;\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AAEO,MAAM,oBAAoB,OAAO;AAAA,eACzB,CAAC,UAAW,MAAM,SAAS,SAAS,GAAG,MAAM;AAAA;AAAA;AAIrD,MAAM,aAAa,OAAO;AAAA;AAAA;AAAA;AAK1B,MAAM,2BAA2B,OAAO;AAAA;AAAA,gBAM/B,CAAC,EAAE,iBAAkB,aAAa,SAAS;AAAA;AAAA,gBAE3C,CAAC,EAAE,gBAAiB,CAAC,YAAY,UAAU,GAAG;AAAA;AAGvD,MAAM,uBAAuB,OAAO;AAAA;AAAA;AAAA;AAKpC,MAAM,yBAAyB,OAAO;AAAA;AAAA;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,3 +1,22 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defProps = Object.defineProperties;
|
|
3
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
4
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
7
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
|
+
var __spreadValues = (a, b) => {
|
|
9
|
+
for (var prop in b || (b = {}))
|
|
10
|
+
if (__hasOwnProp.call(b, prop))
|
|
11
|
+
__defNormalProp(a, prop, b[prop]);
|
|
12
|
+
if (__getOwnPropSymbols)
|
|
13
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
14
|
+
if (__propIsEnum.call(b, prop))
|
|
15
|
+
__defNormalProp(a, prop, b[prop]);
|
|
16
|
+
}
|
|
17
|
+
return a;
|
|
18
|
+
};
|
|
19
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
1
20
|
import * as React from "react";
|
|
2
21
|
import React2, { useMemo, useContext, useCallback } from "react";
|
|
3
22
|
import { Grid } from "@elliemae/ds-grid";
|
|
@@ -8,39 +27,38 @@ import { isSelected } from "../../utils/listHelper";
|
|
|
8
27
|
import { ComboboxDataTestid } from "../../ComboboxDataTestids";
|
|
9
28
|
const useItemRenderer = () => {
|
|
10
29
|
const {
|
|
11
|
-
props: { options, onCreate, onChange, selectedValues, onFilter },
|
|
12
|
-
inputRef,
|
|
30
|
+
props: { options, onCreate, onChange, selectedValues, onFilter, innerRef },
|
|
13
31
|
setShowPopover,
|
|
14
32
|
focusOptionIdx,
|
|
15
33
|
virtualListHelpers
|
|
16
34
|
} = useContext(ComboBoxContext);
|
|
17
|
-
const { virtualItems } = virtualListHelpers;
|
|
18
35
|
const multiple = Array.isArray(selectedValues);
|
|
19
36
|
const CBItem = multiple ? MultiMenuItem : SingleMenuItem;
|
|
20
37
|
const handleClick = useCallback((option, e) => {
|
|
21
38
|
if (option.type === "creatable") {
|
|
22
|
-
if (
|
|
23
|
-
onCreate(
|
|
24
|
-
|
|
39
|
+
if (innerRef.current) {
|
|
40
|
+
onCreate(innerRef.current.value);
|
|
41
|
+
innerRef.current.value = "";
|
|
25
42
|
onFilter("");
|
|
26
43
|
}
|
|
27
44
|
return;
|
|
28
45
|
}
|
|
29
46
|
if (!multiple) {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
47
|
+
if (!option.disabled)
|
|
48
|
+
setShowPopover(false);
|
|
49
|
+
if (innerRef.current)
|
|
50
|
+
innerRef.current.value = "";
|
|
51
|
+
} else if (innerRef.current) {
|
|
52
|
+
onFilter(innerRef.current.value);
|
|
35
53
|
}
|
|
36
54
|
onChange(option);
|
|
37
55
|
e.stopPropagation();
|
|
38
56
|
e.preventDefault();
|
|
39
|
-
}, [onFilter, onChange, setShowPopover, multiple,
|
|
57
|
+
}, [onFilter, onChange, setShowPopover, multiple, innerRef]);
|
|
40
58
|
const handleOnMouseDown = useCallback((e) => {
|
|
41
59
|
e.preventDefault();
|
|
42
60
|
}, []);
|
|
43
|
-
const ItemRenderer = useMemo(() => virtualItems.map((vItem) => {
|
|
61
|
+
const ItemRenderer = useMemo(() => virtualListHelpers?.virtualItems.map((vItem) => {
|
|
44
62
|
const option = options[vItem.index];
|
|
45
63
|
const generalProps = {
|
|
46
64
|
wrapperStyles: { position: "absolute", top: vItem.start, left: 0, width: "100%" },
|
|
@@ -48,19 +66,15 @@ const useItemRenderer = () => {
|
|
|
48
66
|
innerRef: vItem.measureRef
|
|
49
67
|
};
|
|
50
68
|
if (option.type === "section") {
|
|
51
|
-
return /* @__PURE__ */ React2.createElement(Section, {
|
|
52
|
-
label: option.label
|
|
53
|
-
|
|
54
|
-
});
|
|
69
|
+
return /* @__PURE__ */ React2.createElement(Section, __spreadValues({
|
|
70
|
+
label: option.label
|
|
71
|
+
}, generalProps));
|
|
55
72
|
}
|
|
56
73
|
if (option.type === "separator") {
|
|
57
|
-
return /* @__PURE__ */ React2.createElement(Separator, {
|
|
58
|
-
...generalProps
|
|
59
|
-
});
|
|
74
|
+
return /* @__PURE__ */ React2.createElement(Separator, __spreadValues({}, generalProps));
|
|
60
75
|
}
|
|
61
76
|
if (option.type === "option") {
|
|
62
|
-
return /* @__PURE__ */ React2.createElement(CBItem, {
|
|
63
|
-
...generalProps,
|
|
77
|
+
return /* @__PURE__ */ React2.createElement(CBItem, __spreadProps(__spreadValues({}, generalProps), {
|
|
64
78
|
value: option.value,
|
|
65
79
|
label: option.label,
|
|
66
80
|
dataTestid: ComboboxDataTestid.OPTION,
|
|
@@ -70,13 +84,13 @@ const useItemRenderer = () => {
|
|
|
70
84
|
isActive: option.dsId === focusOptionIdx,
|
|
71
85
|
isSelected: isSelected(selectedValues, option),
|
|
72
86
|
tabIndex: -1
|
|
73
|
-
});
|
|
87
|
+
}));
|
|
74
88
|
}
|
|
75
89
|
if (option.type === "creatable") {
|
|
76
|
-
return /* @__PURE__ */ React2.createElement(SingleMenuItem, {
|
|
90
|
+
return /* @__PURE__ */ React2.createElement(SingleMenuItem, __spreadProps(__spreadValues({
|
|
77
91
|
dataTestid: ComboboxDataTestid.OPTION,
|
|
78
|
-
isActive: option.dsId === focusOptionIdx
|
|
79
|
-
|
|
92
|
+
isActive: option.dsId === focusOptionIdx
|
|
93
|
+
}, generalProps), {
|
|
80
94
|
render: ({ label }) => /* @__PURE__ */ React2.createElement(Grid, {
|
|
81
95
|
cols: ["min-content", "auto"],
|
|
82
96
|
height: "16px",
|
|
@@ -85,10 +99,10 @@ const useItemRenderer = () => {
|
|
|
85
99
|
}, /* @__PURE__ */ React2.createElement(StyledCreatableLabel, null, "Add:"), /* @__PURE__ */ React2.createElement("span", null, label)),
|
|
86
100
|
label: option.label,
|
|
87
101
|
onClick: (e) => handleClick(option, e)
|
|
88
|
-
});
|
|
102
|
+
}));
|
|
89
103
|
}
|
|
90
104
|
return /* @__PURE__ */ React2.createElement(React2.Fragment, null);
|
|
91
|
-
}), [options, focusOptionIdx, selectedValues,
|
|
105
|
+
}), [options, focusOptionIdx, selectedValues, innerRef, virtualListHelpers?.virtualItems]);
|
|
92
106
|
return ItemRenderer;
|
|
93
107
|
};
|
|
94
108
|
export {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/controlled-combobox/parts/menu-list/useItemRenderer.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useMemo, useContext, useCallback } from 'react';\nimport {
|
|
5
|
-
"mappings": "AAAA;ACCA;
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useMemo, useContext, useCallback } from 'react';\nimport { Grid } from '@elliemae/ds-grid';\nimport { SingleMenuItem, MultiMenuItem, Section, Separator } from '@elliemae/ds-common/MenuItem';\nimport { ComboBoxContext } from '../../ComboBoxCTX';\nimport { StyledCreatableLabel } from './styled';\nimport { isSelected } from '../../utils/listHelper';\nimport { ComboboxDataTestid } from '../../ComboboxDataTestids';\nimport { DSComboboxT } from '../../react-desc-prop-types';\n\nconst useItemRenderer = (): Array<JSX.Element> | undefined => {\n const {\n props: { options, onCreate, onChange, selectedValues, onFilter, innerRef },\n setShowPopover,\n focusOptionIdx,\n virtualListHelpers,\n } = useContext(ComboBoxContext);\n\n const multiple = Array.isArray(selectedValues);\n const CBItem = multiple ? MultiMenuItem : SingleMenuItem;\n\n const handleClick = useCallback(\n (option: DSComboboxT.ItemOption | DSComboboxT.ItemCreatableOption, e: Event) => {\n if (option.type === 'creatable') {\n if (innerRef.current) {\n onCreate(innerRef.current.value);\n innerRef.current.value = '';\n onFilter('');\n }\n return;\n }\n if (!multiple) {\n if (!option.disabled) setShowPopover(false);\n if (innerRef.current) innerRef.current.value = '';\n } else if (innerRef.current) {\n onFilter(innerRef.current.value);\n }\n onChange(option);\n e.stopPropagation();\n e.preventDefault();\n },\n [onFilter, onChange, setShowPopover, multiple, innerRef],\n );\n\n const handleOnMouseDown = useCallback((e: React.MouseEvent<HTMLLIElement>) => {\n e.preventDefault();\n }, []);\n\n const ItemRenderer = useMemo(\n (): Array<JSX.Element> | undefined =>\n virtualListHelpers?.virtualItems.map((vItem) => {\n const option = options[vItem.index];\n const generalProps = {\n wrapperStyles: { position: 'absolute', top: vItem.start, left: 0, width: '100%' },\n key: `${option.dsId}`,\n innerRef: vItem.measureRef,\n };\n if (option.type === 'section') {\n return <Section label={option.label} {...generalProps} />;\n }\n if (option.type === 'separator') {\n return <Separator {...generalProps} />;\n }\n if (option.type === 'option') {\n return (\n <CBItem\n {...generalProps}\n value={option.value}\n label={option.label}\n dataTestid={ComboboxDataTestid.OPTION}\n disabled={option.disabled}\n onClick={(e: Event) => handleClick(option, e)}\n onMouseDown={handleOnMouseDown}\n isActive={option.dsId === focusOptionIdx}\n isSelected={isSelected(selectedValues, option)}\n tabIndex={-1}\n />\n );\n }\n if (option.type === 'creatable') {\n return (\n <SingleMenuItem\n dataTestid={ComboboxDataTestid.OPTION}\n isActive={option.dsId === focusOptionIdx}\n {...generalProps}\n render={({ label }: { label: string }) => (\n <Grid cols={['min-content', 'auto']} height=\"16px\" gutter=\"xxs\" alignItems=\"center\">\n <StyledCreatableLabel>Add:</StyledCreatableLabel>\n <span>{label}</span>\n </Grid>\n )}\n label={option.label}\n onClick={(e: Event) => handleClick(option, e)}\n />\n );\n }\n return <></>;\n }),\n [options, focusOptionIdx, selectedValues, innerRef, virtualListHelpers?.virtualItems],\n );\n\n return ItemRenderer;\n};\n\nexport { useItemRenderer };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;AAAA;ACCA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA,MAAM,kBAAkB,MAAsC;AAC5D,QAAM;AAAA,IACJ,OAAO,EAAE,SAAS,UAAU,UAAU,gBAAgB,UAAU;AAAA,IAChE;AAAA,IACA;AAAA,IACA;AAAA,MACE,WAAW;AAEf,QAAM,WAAW,MAAM,QAAQ;AAC/B,QAAM,SAAS,WAAW,gBAAgB;AAE1C,QAAM,cAAc,YAClB,CAAC,QAAkE,MAAa;AAC9E,QAAI,OAAO,SAAS,aAAa;AAC/B,UAAI,SAAS,SAAS;AACpB,iBAAS,SAAS,QAAQ;AAC1B,iBAAS,QAAQ,QAAQ;AACzB,iBAAS;AAAA;AAEX;AAAA;AAEF,QAAI,CAAC,UAAU;AACb,UAAI,CAAC,OAAO;AAAU,uBAAe;AACrC,UAAI,SAAS;AAAS,iBAAS,QAAQ,QAAQ;AAAA,eACtC,SAAS,SAAS;AAC3B,eAAS,SAAS,QAAQ;AAAA;AAE5B,aAAS;AACT,MAAE;AACF,MAAE;AAAA,KAEJ,CAAC,UAAU,UAAU,gBAAgB,UAAU;AAGjD,QAAM,oBAAoB,YAAY,CAAC,MAAuC;AAC5E,MAAE;AAAA,KACD;AAEH,QAAM,eAAe,QACnB,MACE,oBAAoB,aAAa,IAAI,CAAC,UAAU;AAC9C,UAAM,SAAS,QAAQ,MAAM;AAC7B,UAAM,eAAe;AAAA,MACnB,eAAe,EAAE,UAAU,YAAY,KAAK,MAAM,OAAO,MAAM,GAAG,OAAO;AAAA,MACzE,KAAK,GAAG,OAAO;AAAA,MACf,UAAU,MAAM;AAAA;AAElB,QAAI,OAAO,SAAS,WAAW;AAC7B,aAAO,qCAAC,SAAD;AAAA,QAAS,OAAO,OAAO;AAAA,SAAW;AAAA;AAE3C,QAAI,OAAO,SAAS,aAAa;AAC/B,aAAO,qCAAC,WAAD,mBAAe;AAAA;AAExB,QAAI,OAAO,SAAS,UAAU;AAC5B,aACE,qCAAC,QAAD,iCACM,eADN;AAAA,QAEE,OAAO,OAAO;AAAA,QACd,OAAO,OAAO;AAAA,QACd,YAAY,mBAAmB;AAAA,QAC/B,UAAU,OAAO;AAAA,QACjB,SAAS,CAAC,MAAa,YAAY,QAAQ;AAAA,QAC3C,aAAa;AAAA,QACb,UAAU,OAAO,SAAS;AAAA,QAC1B,YAAY,WAAW,gBAAgB;AAAA,QACvC,UAAU;AAAA;AAAA;AAIhB,QAAI,OAAO,SAAS,aAAa;AAC/B,aACE,qCAAC,gBAAD;AAAA,QACE,YAAY,mBAAmB;AAAA,QAC/B,UAAU,OAAO,SAAS;AAAA,SACtB,eAHN;AAAA,QAIE,QAAQ,CAAC,EAAE,YACT,qCAAC,MAAD;AAAA,UAAM,MAAM,CAAC,eAAe;AAAA,UAAS,QAAO;AAAA,UAAO,QAAO;AAAA,UAAM,YAAW;AAAA,WACzE,qCAAC,sBAAD,MAAsB,SACtB,qCAAC,QAAD,MAAO;AAAA,QAGX,OAAO,OAAO;AAAA,QACd,SAAS,CAAC,MAAa,YAAY,QAAQ;AAAA;AAAA;AAIjD,WAAO;AAAA,MAEX,CAAC,SAAS,gBAAgB,gBAAgB,UAAU,oBAAoB;AAG1E,SAAO;AAAA;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -3,8 +3,7 @@ import { useEffect, useContext } from "react";
|
|
|
3
3
|
import { ComboBoxContext } from "../../ComboBoxCTX";
|
|
4
4
|
const useMenuList = () => {
|
|
5
5
|
const {
|
|
6
|
-
props: { inline, selectedValues, onMenuOpen, options },
|
|
7
|
-
inputRef,
|
|
6
|
+
props: { inline, selectedValues, onMenuOpen, options, innerRef },
|
|
8
7
|
setCurrentOption,
|
|
9
8
|
scrollOptionIntoView,
|
|
10
9
|
hasFocus,
|
|
@@ -21,27 +20,26 @@ const useMenuList = () => {
|
|
|
21
20
|
if (showPopover || inline) {
|
|
22
21
|
if (onMenuOpen)
|
|
23
22
|
onMenuOpen();
|
|
24
|
-
if (
|
|
23
|
+
if (innerRef.current?.value !== "") {
|
|
25
24
|
getFirstOption();
|
|
26
25
|
} else if (Array.isArray(selectedValues)) {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
scrollOptionIntoView(multiSelectedValues[multiSelectedValues.length - 1].dsId);
|
|
26
|
+
if (selectedValues && selectedValues.length > 0) {
|
|
27
|
+
setCurrentOption(selectedValues[selectedValues.length - 1].dsId);
|
|
28
|
+
scrollOptionIntoView(selectedValues[selectedValues.length - 1].dsId);
|
|
31
29
|
} else {
|
|
32
30
|
getFirstOption();
|
|
33
31
|
}
|
|
34
32
|
} else {
|
|
35
33
|
const singleSelectedValue = selectedValues;
|
|
36
34
|
if (singleSelectedValue) {
|
|
37
|
-
setCurrentOption(
|
|
38
|
-
scrollOptionIntoView(
|
|
35
|
+
setCurrentOption(singleSelectedValue.dsId);
|
|
36
|
+
scrollOptionIntoView(singleSelectedValue.dsId);
|
|
39
37
|
} else {
|
|
40
38
|
getFirstOption();
|
|
41
39
|
}
|
|
42
40
|
}
|
|
43
41
|
}
|
|
44
|
-
}, [showPopover, inline, hasFocus,
|
|
42
|
+
}, [showPopover, inline, hasFocus, innerRef.current?.value]);
|
|
45
43
|
};
|
|
46
44
|
export {
|
|
47
45
|
useMenuList
|