Skip to content

fix(#1999): refactor to use SearchAutocomplete and v3 of AlgoliaSearch API#2

Open
majornista wants to merge 731 commits into
solimant:1999from
adobe:1999
Open

fix(#1999): refactor to use SearchAutocomplete and v3 of AlgoliaSearch API#2
majornista wants to merge 731 commits into
solimant:1999from
adobe:1999

Conversation

@majornista
Copy link
Copy Markdown

No description provided.

@majornista majornista force-pushed the 1999 branch 2 times, most recently from 5f61483 to a36cf36 Compare December 5, 2022 15:51
devongovett and others added 26 commits December 19, 2022 09:23
…3801)

* fix(#3800): MobileSearchAutocomplete: focused style persists on blur by making useFocus results chainable
* add checkbox to enable strict mode on a story by story basis

* checkbox for strict

* getting rid of storybook globals in favor of state

the globals are updating anymore for some reason...

* me dumb, me forget to convert to boolean

* removing style

Co-authored-by: Robert Snow <rsnow@adobe.com>
* add useTagGroupState

* update TagGroup to use useTagGroupState

* update useTagGroup

* cleanup useTag

* cleanup stories

* add comment

* remove private from package.json

* lint

* fix types

* lint

* fix types

* update removal string

* switch to focus row instead of cell

* fix types

* add test for focus after deleting

* set focusMode: 'cell'

* cleanup useTag

* lint

* update translation string punctuation

* fix type

* refactor to use useGridList

* update tests

* improve types

* lint

* update comments

* add test for clicking remove button

* update tests to check that onRemove is called once

* cleanup onPress and clearButtonProps type

* fix text overflow and cleanup styles

* update dependencies

* cleanup Tag

* update keyboard focus tests

* fix types and imports

* style fix

* update tests

* only restore focus if onRemove called

* cleanup chain

* formatting

* lint

* fix types

* lint

* lint

* lint

* formatting

* remove unnecessary export
* Remove need for onMove events
* Fix out of date yarn lock and bad lint ignore
* add checkbox to enable strict mode on a story by story basis

* checkbox for strict

* getting rid of storybook globals in favor of state

the globals are updating anymore for some reason...

* me dumb, me forget to convert to boolean

* removing style

* fix storybook crash when saving changes in FocusScope file

core issue is with react fast refresh in parcel, fix to be patched there eventually. For now this is a stopgap fix, see vitejs/vite#3301 for a similar issue

Co-authored-by: Robert Snow <rsnow@adobe.com>
* Update react-transition-group

* Pass nodeRef into Transition

* WIP

* fix docs build

* Remove a few ignores and explain the last remaining one

* fixing some overlay refs passed to Transition

got rid of clone children in tooltip also since it would break if wrapper existed around the tooltip component

* fixing transition for Modal and Tray

needed to provide an actual DOM ref to OpenTransition nodeRef

* actually use wrapper refs

* fixing actionbar ref to Transition

* adding wrapper to attach transition nodeRef

technically we could attach it to any DOM node in the Modal/Tray/Popover since we dont have a transition on enter, but for correctness with reflow/.scrollTop we want it as the wrapping element

* fixing rebase

* fix lint

* fix yarn.lock

* fix Tray and Modal types

* fix TS strict

For some reason, Ref doesnt break TS strict linter but RefObject does...

* adding comments

* remove ref from Underlay

Co-authored-by: Niklas Mischkulnig <mischnic@users.noreply.github.com>
Co-authored-by: Rob Snow <rsnow@adobe.com>
* update next.js and config in example

* update docs

* delete yarn.lock
* Match column resize aria hook interface to other interfaces
* tentative change to fix FocusScope strict mode

* cleanup

* step back some optimization until we fix all issues

* properly assign new top level scope parent

fix case where deleting a row via actionbar didnt restore focus to the new first row.

* fix table crud case

* add optimizations to fit assumptions

* fix ButtonGroup strictmode test

* fixing focuscope test for strict mode

* making DialogTrigger tests not fail due to strict mode

since strict mode unmounts and rerenders the dialog, we will always run into the "unmounted while open" error in the tests if defaultOpen or isOpen is true. Since I think we cant distingush a true unmount case vs strict modes unmount case, I opted to suppress the warning in the test instead

* ensure activeScope is accurate

in strict mode, the layouteffect cleanup triggers even when the focusscope hasnt unmounted. This makes activeScope inaccurate and breaks the parentScope for future nested focusscopes (e.g. nested dialog trigger case)

* fixing tabs tests

* removing extraneous parentScope calculation

* more cleanup

* updating test for strict mode and non strict mode consistency

the previous expect was relying on the fact that ButtonGroup first measurement happened before we mock the widths and positions of the buttons + buttongroups. That doesnt work well in strict mode and didnt feel reflective of browser behavior so I removed that expect

* Create FocusScope nodes top down and add them bottom up (#3898)

Co-authored-by: Devon Govett <devongovett@gmail.com>
* Improve Col resize performance
…de 'Show all' button (#3759)

* add defaultVisibleRows and initial functionality

* cleanup

* rename to maxRows

* switch to use quiet ActionButton

* include collapse button on last row

* revert cleanup

* update logic

* update to use generator

* include show all button on last row

* update story to fill width for resizing

* add test

* cleanup

* add FocusScope

* improve performance

* add function for making room for collapse button

* fix indention

* move into one function

* update test

* address review comments

* fix logic for showing button

* fix test

* condense getBoundingClientRect calls

* update test

* don't hide tags if all tags shown

* update mock values

* update to CSF3

* add test for not showing button

* handle case of container width smaller than tag

* update deps

* use custom keyboardDelegate when collapsed

* lint

* allow tabbing to collapse button

* lint

* fix button losing focus if focusedKey collapsed

* add story for onRemove + maxRows

* move button outside of grid

* lint

* fix refs for overflow detection

* add translation string

* remove extraneous style

* fix actionbutton style

* recalculate after fonts load
* Column header menu alignment
* ActionBar and ActionGroup CSF 3

* alert and breadcrumb csf 3

* CSF 3 button stories

* buttongroup CSF 3

* Calendar CSF 3 and reusing prev stories

* rangecalendar CSF3 and small fix to calendar

* fix lint

* Checkbox CSF 3 and remove default value for controls

* CheckboxGroup CSF3

* Color stories CSF 3 and consistency changes

* combobox CSF3

* DateField CSF 3

* Datepicker CSF3

* fixing lint

* hiding channel controls in color story

Co-authored-by: Robert Snow <rsnow@adobe.com>
Co-authored-by: Reid Barber <reid@reidbarber.com>
)

* make DialogTrigger use screen width to determine if mobile or not

* adjust test values to 700
LFDanLu and others added 28 commits April 5, 2023 15:32
Co-authored-by: Robert Snow <rsnow@adobe.com>
* progress for making aria table resizing example

* styling updates and addition of menu button for resizing

* fixing it so user doesnt focus the resizer immediately when using left/right arrows

still a bit iffy, cant seem to get focus to move between the columns, def something with the menutrigger...

* making column resize actually get called if provided

* fixing bugs, testing various cases, adding description to useTableColumnResizeState

* Fix crash if onColumnResize is undef

* figure out break

* fix docs build break, add rest of code

* fix docs example render issues

* remove onColumnResize/Start/End from useTableColumnResizeState

these are unecessary since the state returns the resizing column already and we have onResize handlers in useTableColumnResize

* docs first draft

* remove local test story for now

* small cleanup

* updating resizer in docs

* fixing talkback and Safari aria resizer focus issues

* fixing checkbox rendering in iOS Safari

* editing/proofreading

* move useTableColumnResizeState to useTableState docs

* moving resizable table section and addressing smaller changes

* simplifying example

* collapsing some parts of the code and trying to display the code blocks as is

* addressing review comments

* add tailwind example

* forgot to add some additional comments

* override native focus ring for button

* update copy as per review and re-collapse code blocks

collapsed code blocks feel better on mobile so I changed it back to that

* uncollapsing code blocks

* Rough example of press header to start resizing

* Updating column resize to support mode where resizer is always visible

split out from #4061, see that PR for more details and alternative approaches

* update to match latest changes to api

* mimic docs example

* forgot to clean up some things

* pulling in code changes from docs PR

get rid of inline styles and fix case where there isnt a separate trigger for starting column resize

* Add separate mode for triggering resizing manually via Enter (#4061)

* adding separate mode for enabling resize

this make it so the user would have to hit Enter to start resizing. This allows us to have the resizers always be visible and still preserve grid navigation between columns.

* skip test for now so build works for testing

* wrap useMove so it doesnt trigger keyboard handlers when edit mode isnt enabled

* update tableview so that it enters edit mode when choosing to resize via menu

still one bug where manager.isFocused is set to false for somereason after confirming the resize

* fixing bugs

fixes bug where selection manager would stop tracking if the manager is focused or not if keyboard nav was disabled. This was a bug where the user wouldnt be able to move table focus after confirming a resize operation. Adds new prop to useTableColumnResize for triggering resizeStart if resizer if focused. This is needed for our table since we dont have a way to call resizeStart programmatically out side of useTableColumnResize and we dont want to call it on focus for the aria example since that should require a manual trigger of Enter to enter resize mode

* updating description and missing logic

* getting rid of shouldResizeOnFocus prop

* fix skipped test

turns out the simulated resize operation was blurring before pressEnd finished

* updated docs to move inline css into classnames

also updates copy and handles case where trigger ref isnt provided

* remove sorting story and cleanup

* starting resize on press for indicator

this unfortunately causes a difference in behavior between starting a drag on menu (no resizestart until move) and starting a drag via mouse/touch (resizestart immediately on press)

* using triggerRef existance to determine if behavior is resize on focus

one test is still breaking, debugging

* fixing test

test would blur on rerender causing a column width update even though resizing wasnt happening. Changed conditonal so calling endResize only causes value updates if we are resizing

* make resizer single line for focus

* nit reorganizing

* update docs example for resizer styling

* mimic docs example

remove selection from example to mirror docs

* adding description for keyboard users for Enter to start resizing

this is for the aria table example where resizing is entered manually via Enter while focused on the resizer

* fixing issue where tab wasnt exiting the table when focused on the reizer

* adding min width for columns to avoid weirdness with trying to collapse 0

* fix lint

* avoid weirdness with width 0 by setting a min width

* propagate all keydown events if we arent in resize mode and have always visible resizers

forgot that we also have other keyboard combos like cmd + a or escape that should also be handled by useSelectableCollection

* removing ref read in render

* add aria description to input for virtual modality too

if the user enters the table using control+option+arrow keys in voiceover, they will be virtual modality so we want the description for press enter to resize to be audible there

* addressing review comments

* fix some copy

* prevent extraneous scrolling when keyboard navigating to the resizer

margin applied on the visually hidden input makes scrollIntoView think it needs to scroll it

* fixing extraneous scrolling behavior

* address review comments

* fix logic

* removing margin style in favor of hook provided style

* fix typescript lint

* make resize handle larger

* fix resizer style on drag

* Simplify aria table resizing docs example (#4253)

* update example to match updated hooks

* remove VisuallyHidden from resizer in favor of styles from hook

* adding version badge

---------

Co-authored-by: Robert Snow <rsnow@adobe.com>
Co-authored-by: Devon Govett <devongovett@gmail.com>
Co-authored-by: Robert Snow <rsnow@adobe.com>
* Stop dialog inside collection from closing due to typeahead
* Menu escape should not clear selection
This reverts commit 9ef1739.
This reverts commit 033bfbf.
* remove useTagGroup

* fix type

* remove deps

* lint

* remove from docs
@reidbarber reidbarber deleted the branch solimant:1999 January 16, 2026 18:16
@reidbarber reidbarber deleted the 1999 branch January 16, 2026 18:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.