diff --git a/web/src/shared/ui/select.test.ts b/web/src/shared/ui/select.test.ts index 9da2727fa..3f3045007 100644 --- a/web/src/shared/ui/select.test.ts +++ b/web/src/shared/ui/select.test.ts @@ -48,6 +48,11 @@ describe('shared select contract', () => { expect(SELECT_CONTENT_CLASS_NAME).toContain('overflow-x-hidden') }) + it('does not move popper content with static translate utilities', () => { + expect(SELECT_CONTENT_CLASS_NAME).not.toContain('translate-y-1') + expect(SELECT_CONTENT_CLASS_NAME).not.toContain('translate-x-1') + }) + it('uses pointer cursors for expanded select interactions', () => { expect(SELECT_ITEM_CLASS_NAME).toContain('cursor-pointer') expect(SELECT_SCROLL_BUTTON_CLASS_NAME).toContain('cursor-pointer') diff --git a/web/src/shared/ui/select.tsx b/web/src/shared/ui/select.tsx index 3f0c72baf..102e42795 100644 --- a/web/src/shared/ui/select.tsx +++ b/web/src/shared/ui/select.tsx @@ -89,16 +89,15 @@ SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayNam const SelectContent = React.forwardRef< React.ElementRef, React.ComponentPropsWithoutRef ->(({ className, children, position = 'popper', ...props }, ref) => ( +>(({ className, children, position = 'popper', sideOffset = 4, ...props }, ref) => ( // No Portal: Content stays in the React tree with its trigger so route/Dialog // unmount cannot orphan a body/#skillhub-portals node (removeChild).