Skip to content

Commit 8828703

Browse files
committed
fix: imports
1 parent 3c21a50 commit 8828703

File tree

3 files changed

+21
-3
lines changed

3 files changed

+21
-3
lines changed

build-tools/utils/pluralize.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ const pluralizationMap = {
2828
DatePicker: 'DatePickers',
2929
DateRangePicker: 'DateRangePickers',
3030
Drawer: 'Drawers',
31+
Dropdown: 'Dropdowns',
3132
ErrorBoundary: 'ErrorBoundaries',
3233
ExpandableSection: 'ExpandableSections',
3334
FileDropzone: 'FileDropzones',

src/dropdown/internal.tsx

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,13 @@ import clsx from 'clsx';
88
import { useMergeRefs, useResizeObserver, useUniqueId } from '@cloudscape-design/component-toolkit/internal';
99
import { getLogicalBoundingClientRect } from '@cloudscape-design/component-toolkit/internal';
1010

11+
import { getBaseProps } from '../internal/base-component';
1112
import { getFirstFocusable, getLastFocusable } from '../internal/components/focus-lock/utils.js';
1213
import TabTrap from '../internal/components/tab-trap/index.js';
1314
import { Transition, TransitionStatus } from '../internal/components/transition';
1415
import { fireNonCancelableEvent } from '../internal/events';
1516
import customCssProps from '../internal/generated/custom-css-properties';
17+
import { InternalBaseComponentProps } from '../internal/hooks/use-base-component';
1618
import { useMobile } from '../internal/hooks/use-mobile';
1719
import { usePortalModeClasses } from '../internal/hooks/use-portal-mode-classes';
1820
import { useVisualRefresh } from '../internal/hooks/use-visual-mode';
@@ -27,7 +29,7 @@ import {
2729
import { applyDropdownPositionRelativeToViewport, LogicalDOMRect } from './dropdown-position';
2830
import { DropdownProps } from './interfaces';
2931

30-
interface InternalDropdownProps extends DropdownProps {
32+
interface InternalDropdownProps extends DropdownProps, InternalBaseComponentProps {
3133
onMouseDown?: React.MouseEventHandler;
3234
contentKey?: string;
3335
dropdownId?: string;
@@ -210,8 +212,12 @@ const InternalDropdown = ({
210212
ariaLabel,
211213
ariaLabelledby,
212214
ariaDescribedby,
215+
__internalRootRef,
216+
...restProps
213217
}: InternalDropdownProps) => {
218+
const baseProps = getBaseProps(restProps);
214219
const wrapperRef = useRef<HTMLDivElement | null>(null);
220+
const mergedRef = useMergeRefs(wrapperRef, __internalRootRef);
215221
const triggerRef = useRef<HTMLDivElement | null>(null);
216222
const dropdownRef = useRef<HTMLDivElement | null>(null);
217223
const dropdownContainerRef = useRef<HTMLDivElement | null>(null);
@@ -500,12 +506,14 @@ const InternalDropdown = ({
500506

501507
return (
502508
<div
509+
{...baseProps}
503510
className={clsx(
504511
styles.root,
505512
interior && styles.interior,
506-
stretchTriggerHeight && styles['stretch-trigger-height']
513+
stretchTriggerHeight && styles['stretch-trigger-height'],
514+
baseProps.className
507515
)}
508-
ref={wrapperRef}
516+
ref={mergedRef}
509517
onFocus={focusHandler}
510518
onBlur={blurHandler}
511519
>
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
// SPDX-License-Identifier: Apache-2.0
3+
import { ComponentWrapper } from '@cloudscape-design/test-utils-core/dom';
4+
5+
import styles from '../../../dropdown/styles.selectors.js';
6+
7+
export default class DropdownComponentWrapper extends ComponentWrapper {
8+
static rootSelector: string = styles.root;
9+
}

0 commit comments

Comments
 (0)