ultraviolet icon indicating copy to clipboard operation
ultraviolet copied to clipboard

feat(SelectInputV2): new select input

Open lisalupi opened this issue 1 year ago • 12 comments

Summary

Type

  • Feature

Summarise concisely:

What is expected?

New select input to replace the old one. Do not use react-select.

The following changes where made:

(Describe what you did)

  1. New component

  2. Tests & storybook

  3. Deprecated v1

Relevant logs and/or screenshots

Page Before After
url Capture d’écran 2024-04-09 à 15 44 54 Capture d’écran 2024-04-09 à 15 44 05

lisalupi avatar Apr 09 '24 13:04 lisalupi

🦋 Changeset detected

Latest commit: ba23dd765db48f9963cb4c368f617b4cebc55e96

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 3 packages
Name Type
@ultraviolet/ui Minor
@ultraviolet/form Patch
@ultraviolet/plus Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

changeset-bot[bot] avatar Apr 09 '24 13:04 changeset-bot[bot]

size-limit report 📦

Path Size
packages/form/dist/constants.js, packages/form/dist/index.js, packages/themes/dist/index.js, packages/form/dist/hooks/useField.js, packages/form/dist/hooks/useFieldArray.js, packages/form/dist/hooks/useForm.js, packages/form/dist/hooks/useFormState.js, packages/form/dist/hooks/useOnFieldChange.js, packages/form/dist/validators/maxDate.js, packages/form/dist/validators/minDate.js, packages/ui/dist/src/index.js, packages/form/dist/components/CheckboxField/index.js, packages/form/dist/components/CheckboxGroupField/index.js, packages/form/dist/components/DateField/index.js, packages/form/dist/components/Form/defaultErrors.js, packages/form/dist/components/Form/index.js, packages/form/dist/components/KeyValueField/index.js, packages/form/dist/components/NumberInputField/index.js, packages/form/dist/components/NumberInputFieldV2/index.js, packages/form/dist/components/RadioField/index.js, packages/form/dist/components/RadioGroupField/index.js, packages/form/dist/components/SelectInputField/index.js, packages/form/dist/components/SelectableCardField/index.js, packages/form/dist/components/SelectableCardGroupField/index.js, packages/form/dist/components/Submit/index.js, packages/form/dist/components/SubmitErrorAlert/index.js, packages/form/dist/components/TagInputField/index.js, packages/form/dist/components/TextAreaField/index.js, packages/form/dist/components/TextInputField/index.js, packages/form/dist/components/TextInputFieldV2/index.js, packages/form/dist/components/TimeField/index.js, packages/form/dist/components/ToggleField/index.js, packages/form/dist/providers/ErrorContext/index.js, packages/themes/dist/themes/console/dark.js, packages/themes/dist/themes/console/darker.js, packages/themes/dist/themes/console/index.js, packages/themes/dist/themes/console/light.js, packages/ui/dist/react-datepicker/dist/react-datepicker.min.css.js, packages/ui/dist/react-toastify/dist/ReactToastify.min.css.js, packages/ui/dist/src/helpers/isJSON.js, packages/ui/dist/src/helpers/legend.js, packages/ui/dist/src/helpers/recursivelyGetChildrenString.js, packages/ui/dist/src/hooks/useIsOverflowing.js, packages/ui/dist/src/theme/index.js, packages/ui/dist/src/utils/animations.js, packages/ui/dist/src/utils/capitalize.js, packages/ui/dist/src/utils/ids.js, packages/ui/dist/src/utils/normalize.js, packages/themes/dist/themes/console/deprecated/dark.js, packages/themes/dist/themes/console/deprecated/darker.js, packages/themes/dist/themes/console/deprecated/light.js, packages/ui/dist/src/components/ActionBar/index.js, packages/ui/dist/src/components/Alert/index.js, packages/ui/dist/src/components/Avatar/index.js, packages/ui/dist/src/components/Badge/index.js, packages/ui/dist/src/components/Banner/index.js, packages/ui/dist/src/components/BarChart/Tooltip.js, packages/ui/dist/src/components/BarChart/index.js, packages/ui/dist/src/components/BarStack/index.js, packages/ui/dist/src/components/Breadcrumbs/index.js, packages/ui/dist/src/components/Bullet/index.js, packages/ui/dist/src/components/Button/index.js, packages/ui/dist/src/components/Card/index.js, packages/ui/dist/src/components/Carousel/index.js, packages/ui/dist/src/components/Checkbox/index.js, packages/ui/dist/src/components/CheckboxGroup/index.js, packages/ui/dist/src/components/CopyButton/index.js, packages/ui/dist/src/components/DateInput/index.js, packages/ui/dist/src/components/EmptyState/index.js, packages/ui/dist/src/components/Expandable/index.js, packages/ui/dist/src/components/GlobalAlert/GlobalAlertLink.js, packages/ui/dist/src/components/GlobalAlert/index.js, packages/ui/dist/src/components/LineChart/CustomLegend.js, packages/ui/dist/src/components/LineChart/Tooltip.js, packages/ui/dist/src/components/LineChart/helpers.js, packages/ui/dist/src/components/LineChart/index.js, packages/ui/dist/src/components/Link/index.js, packages/ui/dist/src/components/List/Body.js, packages/ui/dist/src/components/List/Cell.js, packages/ui/dist/src/components/List/HeaderCell.js, packages/ui/dist/src/components/List/HeaderRow.js, packages/ui/dist/src/components/List/ListContext.js, packages/ui/dist/src/components/List/Row.js, packages/ui/dist/src/components/List/SelectBar.js, packages/ui/dist/src/components/List/SkeletonRows.js, packages/ui/dist/src/components/List/constants.js, packages/ui/dist/src/components/List/index.js, packages/ui/dist/src/components/Loader/index.js, packages/ui/dist/src/components/Menu/Item.js, packages/ui/dist/src/components/Menu/index.js, packages/ui/dist/src/components/MenuV2/Group.js, packages/ui/dist/src/components/MenuV2/Item.js, packages/ui/dist/src/components/MenuV2/index.js, packages/ui/dist/src/components/Meter/index.js, packages/ui/dist/src/components/Modal/Dialog.js, packages/ui/dist/src/components/Modal/Disclosure.js, packages/ui/dist/src/components/Modal/constants.js, packages/ui/dist/src/components/Modal/index.js, packages/ui/dist/src/components/Notice/index.js, packages/ui/dist/src/components/Notification/index.js, packages/ui/dist/src/components/NumberInput/helpers.js, packages/ui/dist/src/components/NumberInput/index.js, packages/ui/dist/src/components/NumberInputV2/index.js, packages/ui/dist/src/components/Pagination/getPageNumbers.js, packages/ui/dist/src/components/Pagination/index.js, packages/ui/dist/src/components/PasswordCheck/index.js, packages/ui/dist/src/components/PasswordStrengthMeter/index.js, packages/ui/dist/src/components/PieChart/Legends.js, packages/ui/dist/src/components/PieChart/Tooltip.js, packages/ui/dist/src/components/PieChart/index.js, packages/ui/dist/src/components/Popover/index.js, packages/ui/dist/src/components/Popup/animations.js, packages/ui/dist/src/components/Popup/helpers.js, packages/ui/dist/src/components/Popup/index.js, packages/ui/dist/src/components/ProgressBar/index.js, packages/ui/dist/src/components/Radio/index.js, packages/ui/dist/src/components/RadioGroup/index.js, packages/ui/dist/src/components/Row/index.js, packages/ui/dist/src/components/SelectInput/index.js, packages/ui/dist/src/components/SelectInputV2/Dropdown.js, packages/ui/dist/src/components/SelectInputV2/DropdownOption.js, packages/ui/dist/src/components/SelectInputV2/SearchBarDropdown.js, packages/ui/dist/src/components/SelectInputV2/SelectBar.js, packages/ui/dist/src/components/SelectInputV2/SelectInputProvider.js, packages/ui/dist/src/components/SelectInputV2/index.js, packages/ui/dist/src/components/SelectInputV2/types.js, packages/ui/dist/src/components/SelectableCard/index.js, packages/ui/dist/src/components/SelectableCardGroup/index.js, packages/ui/dist/src/components/Separator/index.js, packages/ui/dist/src/components/Skeleton/Block.js, packages/ui/dist/src/components/Skeleton/Blocks.js, packages/ui/dist/src/components/Skeleton/BoxWithIcon.js, packages/ui/dist/src/components/Skeleton/Donut.js, packages/ui/dist/src/components/Skeleton/IconSkeleton.js, packages/ui/dist/src/components/Skeleton/Line.js, packages/ui/dist/src/components/Skeleton/List.js, packages/ui/dist/src/components/Skeleton/Slider.js, packages/ui/dist/src/components/Skeleton/Square.js, packages/ui/dist/src/components/Skeleton/index.js, packages/ui/dist/src/components/Snippet/index.js, packages/ui/dist/src/components/Stack/index.js, packages/ui/dist/src/components/Status/index.js, packages/ui/dist/src/components/StepList/index.js, packages/ui/dist/src/components/Stepper/index.js, packages/ui/dist/src/components/SwitchButton/FocusOverlay.js, packages/ui/dist/src/components/SwitchButton/index.js, packages/ui/dist/src/components/Table/Body.js, packages/ui/dist/src/components/Table/Cell.js, packages/ui/dist/src/components/Table/Header.js, packages/ui/dist/src/components/Table/HeaderCell.js, packages/ui/dist/src/components/Table/HeaderRow.js, packages/ui/dist/src/components/Table/Row.js, packages/ui/dist/src/components/Table/SelectBar.js, packages/ui/dist/src/components/Table/SkeletonRows.js, packages/ui/dist/src/components/Table/TableContext.js, packages/ui/dist/src/components/Table/index.js, packages/ui/dist/src/components/Tabs/Tab.js, packages/ui/dist/src/components/Tabs/TabMenu.js, packages/ui/dist/src/components/Tabs/TabMenuItem.js, packages/ui/dist/src/components/Tabs/TabsContext.js, packages/ui/dist/src/components/Tabs/index.js, packages/ui/dist/src/components/Tag/index.js, packages/ui/dist/src/components/TagInput/index.js, packages/ui/dist/src/components/TagList/index.js, packages/ui/dist/src/components/Text/index.js, packages/ui/dist/src/components/TextArea/index.js, packages/ui/dist/src/components/TextInput/index.js, packages/ui/dist/src/components/TextInputV2/index.js, packages/ui/dist/src/components/TimeInput/index.js, packages/ui/dist/src/components/Toaster/index.js, packages/ui/dist/src/components/Toggle/index.js, packages/ui/dist/src/components/ToggleGroup/index.js, packages/ui/dist/src/components/Tooltip/index.js, packages/ui/dist/src/components/VerificationCode/index.js, packages/ui/dist/src/utils/responsive/Breakpoint.js, packages/ui/dist/src/utils/responsive/utilities.js, packages/ui/dist/src/components/Banner/assets/default-image-small.svg.js, packages/ui/dist/src/components/Banner/assets/default-image.svg.js 161.01 KB (+0.04% 🔺)

github-actions[bot] avatar Apr 09 '24 13:04 github-actions[bot]

Capture d’écran 2024-04-09 à 16 03 14

Need to have a 4px spacing between field and helper text.

mhervouet avatar Apr 09 '24 14:04 mhervouet

Capture d’écran 2024-04-09 à 16 04 52

Badges looks to have a too much padding on sides (16px instead of 8px)

mhervouet avatar Apr 09 '24 14:04 mhervouet

Capture d’écran 2024-04-09 à 16 05 33

Group name must be left aligned

mhervouet avatar Apr 09 '24 14:04 mhervouet

Capture d’écran 2024-04-09 à 16 06 15

On some versions the dropdown is not aligned with the field

mhervouet avatar Apr 09 '24 14:04 mhervouet

Capture d’écran 2024-04-09 à 16 06 21

In empty state the link should be center aligned

mhervouet avatar Apr 09 '24 14:04 mhervouet

Capture d’écran 2024-04-09 à 16 06 44

Issue with the tags in multiselect inputs

mhervouet avatar Apr 09 '24 14:04 mhervouet

Capture d’écran 2024-04-09 à 16 09 06

There was an update on spacing to match Menu. Check the new spacing here : https://ultraviolet.scaleway.com/6dd9b5c45/p/3882cf-selectinput/t/29563b

mhervouet avatar Apr 09 '24 15:04 mhervouet

Capture d’écran 2024-04-09 à 16 09 29

Need to use a shadow for fixed background instead of big border.

mhervouet avatar Apr 09 '24 15:04 mhervouet

Capture d’écran 2024-04-09 à 16 10 23 Capture d’écran 2024-04-09 à 16 10 44

Need to fix the vertical alignment icon / text

mhervouet avatar Apr 09 '24 15:04 mhervouet

Capture d’écran 2024-04-09 à 16 10 32

Is it possible to align the text and left blank under the icon ?

mhervouet avatar Apr 09 '24 15:04 mhervouet

Capture d’écran 2024-04-18 à 10 01 18 Items must have a 4px radius.

mhervouet avatar Apr 18 '24 08:04 mhervouet

Capture d’écran 2024-04-18 à 10 02 56 In this "Left" example, should the icon be at the left of the text ?

mhervouet avatar Apr 18 '24 08:04 mhervouet

Capture d’écran 2024-04-18 à 10 03 13 The button "Load more" must have the same padding than items (2px)

mhervouet avatar Apr 18 '24 08:04 mhervouet

Capture d’écran 2024-04-22 à 11 51 17 Issue on tag with badge.

mhervouet avatar Apr 22 '24 09:04 mhervouet