diff --git a/UNRELEASED.md b/UNRELEASED.md index 19c2b004794..d3c1640a1ac 100644 --- a/UNRELEASED.md +++ b/UNRELEASED.md @@ -32,7 +32,7 @@ Use [the changelog guidelines](/documentation/Versioning%20and%20changelog.md) t - Tightened up what absolute imports are allowed. Removed `baseUrl` from `tsconfig.json`. Attempting to do an absolute import from `src/X` or `components/X` now results in a error when type-checking. ([#4643](https://github.com/Shopify/polaris-react/pull/4643)) - Remove analyze custom properties check. ([#4718](https://github.com/Shopify/polaris-react/pull/4718)) -- Removed support for importing from `components` as it slows tests down ([#4735](https://github.com/Shopify/polaris-react/pull/4735)) +- Removed support for importing from `components` as it slows tests down ([#4735](https://github.com/Shopify/polaris-react/pull/4735), [#4739](https://github.com/Shopify/polaris-react/pull/4739)) ### Dependency upgrades diff --git a/src/components/index.ts b/src/components/index.ts deleted file mode 100644 index 81612830f62..00000000000 --- a/src/components/index.ts +++ /dev/null @@ -1,336 +0,0 @@ -// AppProvider contains CSS that affects element level CSS (e.g. `html`, `button`) -// It should be first to ensure its CSS is first in compiled output -// AppProvider contains CSS that affects element level CSS (e.g. `html`, `button`) -// It should be first to ensure its CSS is first in compiled output -export {AppProvider} from './AppProvider'; -export type {AppProviderProps} from './AppProvider'; - -export {AccountConnection} from './AccountConnection'; -export type {AccountConnectionProps} from './AccountConnection'; - -export {ActionList} from './ActionList'; -export type {ActionListProps} from './ActionList'; - -export {ActionMenu} from './ActionMenu'; -export type {ActionMenuProps} from './ActionMenu'; - -export {Autocomplete} from './Autocomplete'; -export type {AutocompleteProps} from './Autocomplete'; - -export {Avatar} from './Avatar'; -export type {AvatarProps} from './Avatar'; - -export {Backdrop} from './Backdrop'; -export type {BackdropProps} from './Backdrop'; - -export {Badge} from './Badge'; -export type {BadgeProps} from './Badge'; - -export {Banner} from './Banner'; -export type {BannerProps, BannerStatus, BannerHandles} from './Banner'; - -export {Breadcrumbs} from './Breadcrumbs'; -export type {BreadcrumbsProps} from './Breadcrumbs'; - -export {BulkActions as UnstableBulkActions} from './BulkActions'; -export type {BulkActionsProps as UnstableBulkActionsProps} from './BulkActions'; - -export {Button, buttonFrom, buttonsFrom} from './Button'; -export type {ButtonProps} from './Button'; - -export {ButtonGroup} from './ButtonGroup'; -export type {ButtonGroupProps} from './ButtonGroup'; - -export {CalloutCard} from './CalloutCard'; -export type {CalloutCardProps} from './CalloutCard'; - -export {Caption} from './Caption'; -export type {CaptionProps} from './Caption'; - -export {Card} from './Card'; -export type { - CardProps, - CardSectionProps, - CardHeaderProps, - CardSubsectionProps, -} from './Card'; - -export {Checkbox} from './Checkbox'; -export type {CheckboxProps} from './Checkbox'; - -export {ChoiceList} from './ChoiceList'; -export type {ChoiceListProps} from './ChoiceList'; - -export {Collapsible} from './Collapsible'; -export type {CollapsibleProps} from './Collapsible'; - -export {ColorPicker} from './ColorPicker'; -export type {ColorPickerProps} from './ColorPicker'; - -export {Combobox} from './Combobox'; -export type {ComboboxProps} from './Combobox'; - -export {Connected} from './Connected'; -export type {ConnectedProps} from './Connected'; - -export {ContextualSaveBar} from './ContextualSaveBar'; -export type {ContextualSaveBarProps} from './ContextualSaveBar'; - -export {DataTable} from './DataTable'; -export type { - DataTableProps, - TableData, - TableRow, - SortDirection, - ColumnContentType, -} from './DataTable'; - -export {DatePicker} from './DatePicker'; -export type {DatePickerProps, Range} from './DatePicker'; - -export {DescriptionList} from './DescriptionList'; -export type {DescriptionListProps} from './DescriptionList'; - -export {DisplayText} from './DisplayText'; -export type {DisplayTextProps} from './DisplayText'; - -export {DropZone} from './DropZone'; -export type {DropZoneProps} from './DropZone'; - -export {EmptySearchResult} from './EmptySearchResult'; -export type {EmptySearchResultProps} from './EmptySearchResult'; - -export {EmptyState} from './EmptyState'; -export type {EmptyStateProps} from './EmptyState'; - -export {EventListener} from './EventListener'; -export type {EventListenerProps} from './EventListener'; - -export {ExceptionList} from './ExceptionList'; -export type {ExceptionListProps} from './ExceptionList'; - -export {Filters} from './Filters'; -export type { - FiltersProps, - AppliedFilterInterface, - FilterInterface, -} from './Filters'; - -export {Focus} from './Focus'; -export type {FocusProps} from './Focus'; - -export {FooterHelp} from './FooterHelp'; -export type {FooterHelpProps} from './FooterHelp'; - -export {Form} from './Form'; -export type {FormProps} from './Form'; - -export {FormLayout} from './FormLayout'; -export type {FormLayoutProps} from './FormLayout'; - -export { - Frame, - DEFAULT_TOAST_DURATION, - DEFAULT_TOAST_DURATION_WITH_ACTION, -} from './Frame'; -export type {FrameProps} from './Frame'; - -export {Heading} from './Heading'; -export type {HeadingProps} from './Heading'; - -export {Icon} from './Icon'; -export type {IconProps} from './Icon'; - -export {Image} from './Image'; -export type {ImageProps} from './Image'; - -export {IndexTable} from './IndexTable'; -export type {IndexTableProps} from './IndexTable'; - -export {Indicator} from './Indicator'; -export type {IndicatorProps} from './Indicator'; - -export {InlineError, errorTextID} from './InlineError'; -export type {InlineErrorProps} from './InlineError'; - -export {KeyboardKey} from './KeyboardKey'; -export type {KeyboardKeyProps} from './KeyboardKey'; - -export {KeypressListener} from './KeypressListener'; -export type {KeypressListenerProps} from './KeypressListener'; - -export {KonamiCode} from './KonamiCode'; -export type {KonamiCodeProps} from './KonamiCode'; - -export {Label, labelID} from './Label'; -export type {LabelProps} from './Label'; - -export {Labelled} from './Labelled'; -export type {LabelledProps} from './Labelled'; - -export {Layout} from './Layout'; -export type {LayoutProps} from './Layout'; - -export {Link} from './Link'; -export type {LinkProps} from './Link'; - -export {List} from './List'; -export type {ListProps} from './List'; - -export {Listbox} from './Listbox'; -export type {ListboxProps} from './Listbox'; - -export {Loading} from './Loading'; -export type {LoadingProps} from './Loading'; - -export {MediaCard} from './MediaCard'; - -export {Modal} from './Modal'; -export type {ModalProps} from './Modal'; - -export {Navigation, isNavigationItemActive} from './Navigation'; -export type { - NavigationProps, - NavigationItemProps, - SubNavigationItem, -} from './Navigation'; - -export {OptionList} from './OptionList'; -export type {OptionListProps} from './OptionList'; - -export {Page} from './Page'; -export type {PageProps} from './Page'; - -export {PageActions} from './PageActions'; -export type {PageActionsProps} from './PageActions'; - -export {Pagination} from './Pagination'; -export type {PaginationProps} from './Pagination'; - -export {PolarisTestProvider} from './PolarisTestProvider'; -export type {WithPolarisTestProviderOptions} from './PolarisTestProvider'; - -export {Popover, PopoverCloseSource} from './Popover'; -export type { - PopoverProps, - PopoverAutofocusTarget, - PopoverPublicAPI, -} from './Popover'; - -export {Portal} from './Portal'; -export type {PortalProps} from './Portal'; - -export {PortalsManager} from './PortalsManager'; -export type {PortalsManagerProps} from './PortalsManager'; - -export {PositionedOverlay} from './PositionedOverlay'; -export type {PositionedOverlayProps} from './PositionedOverlay'; - -export {ProgressBar} from './ProgressBar'; -export type {ProgressBarProps} from './ProgressBar'; - -export {RadioButton} from './RadioButton'; -export type {RadioButtonProps} from './RadioButton'; - -export {RangeSlider} from './RangeSlider'; -export type {RangeSliderProps} from './RangeSlider'; - -export {ResourceItem} from './ResourceItem'; -export type {ResourceItemProps} from './ResourceItem'; - -export {ResourceList} from './ResourceList'; -export type {ResourceListProps} from './ResourceList'; - -// We want to delete this component, but there's one place in web -// that still relies on it so we have to keep it. -// We don't want anyone else using it though, use the Filters component instead -export {FilterControl as _SECRET_INTERNAL_FilterControl} from './ResourceList'; -export type {FilterControlProps as _SECRET_INTERNAL_FilterControlProps} from './ResourceList'; - -export type {ResourceListSelectedItems} from '../utilities/resource-list'; - -export {Scrollable} from './Scrollable'; -export type {ScrollableProps} from './Scrollable'; - -export {ScrollLock} from './ScrollLock'; - -export {Select} from './Select'; -export type {SelectProps, SelectOption, SelectGroup} from './Select'; - -export {SettingToggle} from './SettingToggle'; -export type {SettingToggleProps} from './SettingToggle'; - -export {DATA_ATTRIBUTE} from './shared'; - -export {Sheet} from './Sheet'; -export type {SheetProps} from './Sheet'; - -export {SkeletonBodyText} from './SkeletonBodyText'; -export type {SkeletonBodyTextProps} from './SkeletonBodyText'; - -export {SkeletonDisplayText} from './SkeletonDisplayText'; -export type {SkeletonDisplayTextProps} from './SkeletonDisplayText'; - -export {SkeletonPage} from './SkeletonPage'; -export type {SkeletonPageProps} from './SkeletonPage'; - -export {SkeletonThumbnail} from './SkeletonThumbnail'; -export type {SkeletonThumbnailProps} from './SkeletonThumbnail'; - -export {Spinner} from './Spinner'; -export type {SpinnerProps} from './Spinner'; - -export {Stack} from './Stack'; -export type {StackProps} from './Stack'; - -export {Sticky} from './Sticky'; -export type {StickyProps} from './Sticky'; - -export {Subheading} from './Subheading'; -export type {SubheadingProps} from './Subheading'; - -export {Tabs} from './Tabs'; -export type {TabsProps} from './Tabs'; - -export {Tag} from './Tag'; -export type {TagProps} from './Tag'; - -export {TextContainer} from './TextContainer'; -export type {TextContainerProps} from './TextContainer'; - -export {TextField} from './TextField'; -export type {TextFieldProps} from './TextField'; - -export {TextStyle} from './TextStyle'; -export type {TextStyleProps} from './TextStyle'; - -export {ThemeProvider} from './ThemeProvider'; - -export {Thumbnail} from './Thumbnail'; -export type {ThumbnailProps} from './Thumbnail'; - -export {Toast} from './Toast'; -export type {ToastProps} from './Toast'; - -export {Tooltip} from './Tooltip'; -export type {TooltipProps} from './Tooltip'; - -export {TopBar} from './TopBar'; -export type {TopBarProps} from './TopBar'; - -export {TrapFocus} from './TrapFocus'; -export type {TrapFocusProps} from './TrapFocus'; - -export {Truncate} from './Truncate'; -export type {TruncateProps} from './Truncate'; - -export {UnstyledButton, unstyledButtonFrom} from './UnstyledButton'; -export type {UnstyledButtonProps} from './UnstyledButton'; - -export {UnstyledLink} from './UnstyledLink'; -export type {UnstyledLinkProps} from './UnstyledLink'; - -export {VideoThumbnail} from './VideoThumbnail'; - -export {VisuallyHidden} from './VisuallyHidden'; -export type {VisuallyHiddenProps} from './VisuallyHidden'; diff --git a/src/index.ts b/src/index.ts index 952d9615435..63d86ddafb7 100644 --- a/src/index.ts +++ b/src/index.ts @@ -27,7 +27,344 @@ export type { CheckboxHandles, } from './types'; -export * from './components'; +// AppProvider contains CSS that affects element level CSS (e.g. `html`, `button`) +// It should be first to ensure its CSS is first in compiled output +// AppProvider contains CSS that affects element level CSS (e.g. `html`, `button`) +// It should be first to ensure its CSS is first in compiled output +export {AppProvider} from './components/AppProvider'; +export type {AppProviderProps} from './components/AppProvider'; + +export {AccountConnection} from './components/AccountConnection'; +export type {AccountConnectionProps} from './components/AccountConnection'; + +export {ActionList} from './components/ActionList'; +export type {ActionListProps} from './components/ActionList'; + +export {ActionMenu} from './components/ActionMenu'; +export type {ActionMenuProps} from './components/ActionMenu'; + +export {Autocomplete} from './components/Autocomplete'; +export type {AutocompleteProps} from './components/Autocomplete'; + +export {Avatar} from './components/Avatar'; +export type {AvatarProps} from './components/Avatar'; + +export {Backdrop} from './components/Backdrop'; +export type {BackdropProps} from './components/Backdrop'; + +export {Badge} from './components/Badge'; +export type {BadgeProps} from './components/Badge'; + +export {Banner} from './components/Banner'; +export type { + BannerProps, + BannerStatus, + BannerHandles, +} from './components/Banner'; + +export {Breadcrumbs} from './components/Breadcrumbs'; +export type {BreadcrumbsProps} from './components/Breadcrumbs'; + +export {BulkActions as UnstableBulkActions} from './components/BulkActions'; +export type {BulkActionsProps as UnstableBulkActionsProps} from './components/BulkActions'; + +export {Button, buttonFrom, buttonsFrom} from './components/Button'; +export type {ButtonProps} from './components/Button'; + +export {ButtonGroup} from './components/ButtonGroup'; +export type {ButtonGroupProps} from './components/ButtonGroup'; + +export {CalloutCard} from './components/CalloutCard'; +export type {CalloutCardProps} from './components/CalloutCard'; + +export {Caption} from './components/Caption'; +export type {CaptionProps} from './components/Caption'; + +export {Card} from './components/Card'; +export type { + CardProps, + CardSectionProps, + CardHeaderProps, + CardSubsectionProps, +} from './components/Card'; + +export {Checkbox} from './components/Checkbox'; +export type {CheckboxProps} from './components/Checkbox'; + +export {ChoiceList} from './components/ChoiceList'; +export type {ChoiceListProps} from './components/ChoiceList'; + +export {Collapsible} from './components/Collapsible'; +export type {CollapsibleProps} from './components/Collapsible'; + +export {ColorPicker} from './components/ColorPicker'; +export type {ColorPickerProps} from './components/ColorPicker'; + +export {Combobox} from './components/Combobox'; +export type {ComboboxProps} from './components/Combobox'; + +export {Connected} from './components/Connected'; +export type {ConnectedProps} from './components/Connected'; + +export {ContextualSaveBar} from './components/ContextualSaveBar'; +export type {ContextualSaveBarProps} from './components/ContextualSaveBar'; + +export {DataTable} from './components/DataTable'; +export type { + DataTableProps, + TableData, + TableRow, + SortDirection, + ColumnContentType, +} from './components/DataTable'; + +export {DatePicker} from './components/DatePicker'; +export type {DatePickerProps, Range} from './components/DatePicker'; + +export {DescriptionList} from './components/DescriptionList'; +export type {DescriptionListProps} from './components/DescriptionList'; + +export {DisplayText} from './components/DisplayText'; +export type {DisplayTextProps} from './components/DisplayText'; + +export {DropZone} from './components/DropZone'; +export type {DropZoneProps} from './components/DropZone'; + +export {EmptySearchResult} from './components/EmptySearchResult'; +export type {EmptySearchResultProps} from './components/EmptySearchResult'; + +export {EmptyState} from './components/EmptyState'; +export type {EmptyStateProps} from './components/EmptyState'; + +export {EventListener} from './components/EventListener'; +export type {EventListenerProps} from './components/EventListener'; + +export {ExceptionList} from './components/ExceptionList'; +export type {ExceptionListProps} from './components/ExceptionList'; + +export {Filters} from './components/Filters'; +export type { + FiltersProps, + AppliedFilterInterface, + FilterInterface, +} from './components/Filters'; + +export {Focus} from './components/Focus'; +export type {FocusProps} from './components/Focus'; + +export {FooterHelp} from './components/FooterHelp'; +export type {FooterHelpProps} from './components/FooterHelp'; + +export {Form} from './components/Form'; +export type {FormProps} from './components/Form'; + +export {FormLayout} from './components/FormLayout'; +export type {FormLayoutProps} from './components/FormLayout'; + +export { + Frame, + DEFAULT_TOAST_DURATION, + DEFAULT_TOAST_DURATION_WITH_ACTION, +} from './components/Frame'; +export type {FrameProps} from './components/Frame'; + +export {Heading} from './components/Heading'; +export type {HeadingProps} from './components/Heading'; + +export {Icon} from './components/Icon'; +export type {IconProps} from './components/Icon'; + +export {Image} from './components/Image'; +export type {ImageProps} from './components/Image'; + +export {IndexTable} from './components/IndexTable'; +export type {IndexTableProps} from './components/IndexTable'; + +export {Indicator} from './components/Indicator'; +export type {IndicatorProps} from './components/Indicator'; + +export {InlineError, errorTextID} from './components/InlineError'; +export type {InlineErrorProps} from './components/InlineError'; + +export {KeyboardKey} from './components/KeyboardKey'; +export type {KeyboardKeyProps} from './components/KeyboardKey'; + +export {KeypressListener} from './components/KeypressListener'; +export type {KeypressListenerProps} from './components/KeypressListener'; + +export {KonamiCode} from './components/KonamiCode'; +export type {KonamiCodeProps} from './components/KonamiCode'; + +export {Label, labelID} from './components/Label'; +export type {LabelProps} from './components/Label'; + +export {Labelled} from './components/Labelled'; +export type {LabelledProps} from './components/Labelled'; + +export {Layout} from './components/Layout'; +export type {LayoutProps} from './components/Layout'; + +export {Link} from './components/Link'; +export type {LinkProps} from './components/Link'; + +export {List} from './components/List'; +export type {ListProps} from './components/List'; + +export {Listbox} from './components/Listbox'; +export type {ListboxProps} from './components/Listbox'; + +export {Loading} from './components/Loading'; +export type {LoadingProps} from './components/Loading'; + +export {MediaCard} from './components/MediaCard'; + +export {Modal} from './components/Modal'; +export type {ModalProps} from './components/Modal'; + +export {Navigation, isNavigationItemActive} from './components/Navigation'; +export type { + NavigationProps, + NavigationItemProps, + SubNavigationItem, +} from './components/Navigation'; + +export {OptionList} from './components/OptionList'; +export type {OptionListProps} from './components/OptionList'; + +export {Page} from './components/Page'; +export type {PageProps} from './components/Page'; + +export {PageActions} from './components/PageActions'; +export type {PageActionsProps} from './components/PageActions'; + +export {Pagination} from './components/Pagination'; +export type {PaginationProps} from './components/Pagination'; + +export {PolarisTestProvider} from './components/PolarisTestProvider'; +export type {WithPolarisTestProviderOptions} from './components/PolarisTestProvider'; + +export {Popover, PopoverCloseSource} from './components/Popover'; +export type { + PopoverProps, + PopoverAutofocusTarget, + PopoverPublicAPI, +} from './components/Popover'; + +export {Portal} from './components/Portal'; +export type {PortalProps} from './components/Portal'; + +export {PortalsManager} from './components/PortalsManager'; +export type {PortalsManagerProps} from './components/PortalsManager'; + +export {PositionedOverlay} from './components/PositionedOverlay'; +export type {PositionedOverlayProps} from './components/PositionedOverlay'; + +export {ProgressBar} from './components/ProgressBar'; +export type {ProgressBarProps} from './components/ProgressBar'; + +export {RadioButton} from './components/RadioButton'; +export type {RadioButtonProps} from './components/RadioButton'; + +export {RangeSlider} from './components/RangeSlider'; +export type {RangeSliderProps} from './components/RangeSlider'; + +export {ResourceItem} from './components/ResourceItem'; +export type {ResourceItemProps} from './components/ResourceItem'; + +export {ResourceList} from './components/ResourceList'; +export type {ResourceListProps} from './components/ResourceList'; + +// We want to delete this component, but there's one place in web +// that still relies on it so we have to keep it. +// We don't want anyone else using it though, use the Filters component instead +export {FilterControl as _SECRET_INTERNAL_FilterControl} from './components/ResourceList'; +export type {FilterControlProps as _SECRET_INTERNAL_FilterControlProps} from './components/ResourceList'; + +export {Scrollable} from './components/Scrollable'; +export type {ScrollableProps} from './components/Scrollable'; + +export {ScrollLock} from './components/ScrollLock'; + +export {Select} from './components/Select'; +export type {SelectProps, SelectOption, SelectGroup} from './components/Select'; + +export {SettingToggle} from './components/SettingToggle'; +export type {SettingToggleProps} from './components/SettingToggle'; + +export {DATA_ATTRIBUTE} from './components/shared'; + +export {Sheet} from './components/Sheet'; +export type {SheetProps} from './components/Sheet'; + +export {SkeletonBodyText} from './components/SkeletonBodyText'; +export type {SkeletonBodyTextProps} from './components/SkeletonBodyText'; + +export {SkeletonDisplayText} from './components/SkeletonDisplayText'; +export type {SkeletonDisplayTextProps} from './components/SkeletonDisplayText'; + +export {SkeletonPage} from './components/SkeletonPage'; +export type {SkeletonPageProps} from './components/SkeletonPage'; + +export {SkeletonThumbnail} from './components/SkeletonThumbnail'; +export type {SkeletonThumbnailProps} from './components/SkeletonThumbnail'; + +export {Spinner} from './components/Spinner'; +export type {SpinnerProps} from './components/Spinner'; + +export {Stack} from './components/Stack'; +export type {StackProps} from './components/Stack'; + +export {Sticky} from './components/Sticky'; +export type {StickyProps} from './components/Sticky'; + +export {Subheading} from './components/Subheading'; +export type {SubheadingProps} from './components/Subheading'; + +export {Tabs} from './components/Tabs'; +export type {TabsProps} from './components/Tabs'; + +export {Tag} from './components/Tag'; +export type {TagProps} from './components/Tag'; + +export {TextContainer} from './components/TextContainer'; +export type {TextContainerProps} from './components/TextContainer'; + +export {TextField} from './components/TextField'; +export type {TextFieldProps} from './components/TextField'; + +export {TextStyle} from './components/TextStyle'; +export type {TextStyleProps} from './components/TextStyle'; + +export {ThemeProvider} from './components/ThemeProvider'; + +export {Thumbnail} from './components/Thumbnail'; +export type {ThumbnailProps} from './components/Thumbnail'; + +export {Toast} from './components/Toast'; +export type {ToastProps} from './components/Toast'; + +export {Tooltip} from './components/Tooltip'; +export type {TooltipProps} from './components/Tooltip'; + +export {TopBar} from './components/TopBar'; +export type {TopBarProps} from './components/TopBar'; + +export {TrapFocus} from './components/TrapFocus'; +export type {TrapFocusProps} from './components/TrapFocus'; + +export {Truncate} from './components/Truncate'; +export type {TruncateProps} from './components/Truncate'; + +export {UnstyledButton, unstyledButtonFrom} from './components/UnstyledButton'; +export type {UnstyledButtonProps} from './components/UnstyledButton'; + +export {UnstyledLink} from './components/UnstyledLink'; +export type {UnstyledLinkProps} from './components/UnstyledLink'; + +export {VideoThumbnail} from './components/VideoThumbnail'; + +export {VisuallyHidden} from './components/VisuallyHidden'; +export type {VisuallyHiddenProps} from './components/VisuallyHidden'; export type { RGBColor, @@ -58,6 +395,8 @@ export { useContainerScroll as useIndexTableContainerScroll, } from './utilities/index-table'; +export type {ResourceListSelectedItems} from './utilities/resource-list'; + export { toCssCustomPropertySyntax as UNSTABLE_toCssCustomPropertySyntax, Tokens as UNSTABLE_Tokens, diff --git a/src/types.ts b/src/types.ts index 1864c998251..6f1b6a253d2 100644 --- a/src/types.ts +++ b/src/types.ts @@ -1,4 +1,9 @@ -import type {AvatarProps, IconProps, ThumbnailProps} from './components'; +// eslint-disable-next-line @shopify/strict-component-boundaries +import type {AvatarProps} from './components/Avatar'; +// eslint-disable-next-line @shopify/strict-component-boundaries +import type {IconProps} from './components/Icon'; +// eslint-disable-next-line @shopify/strict-component-boundaries +import type {ThumbnailProps} from './components/Thumbnail'; export interface OptionDescriptor { /** Value of the option */