@cloudscape-design/components-themeable 3.0.305 → 3.0.307
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/internal/manifest.json +1 -1
- package/lib/internal/scss/table/styles.scss +11 -2
- package/lib/internal/template/breadcrumb-group/index.d.ts +1 -1
- package/lib/internal/template/breadcrumb-group/index.d.ts.map +1 -1
- package/lib/internal/template/breadcrumb-group/index.js +2 -2
- package/lib/internal/template/breadcrumb-group/index.js.map +1 -1
- package/lib/internal/template/breadcrumb-group/internal.d.ts +1 -2
- package/lib/internal/template/breadcrumb-group/internal.d.ts.map +1 -1
- package/lib/internal/template/breadcrumb-group/internal.js +8 -1
- package/lib/internal/template/breadcrumb-group/internal.js.map +1 -1
- package/lib/internal/template/cards/index.d.ts.map +1 -1
- package/lib/internal/template/cards/index.js +6 -1
- package/lib/internal/template/cards/index.js.map +1 -1
- package/lib/internal/template/code-editor/index.d.ts.map +1 -1
- package/lib/internal/template/code-editor/index.js +18 -16
- package/lib/internal/template/code-editor/index.js.map +1 -1
- package/lib/internal/template/code-editor/interfaces.d.ts +1 -1
- package/lib/internal/template/code-editor/interfaces.d.ts.map +1 -1
- package/lib/internal/template/code-editor/interfaces.js.map +1 -1
- package/lib/internal/template/code-editor/pane.d.ts +2 -2
- package/lib/internal/template/code-editor/pane.d.ts.map +1 -1
- package/lib/internal/template/code-editor/pane.js +8 -5
- package/lib/internal/template/code-editor/pane.js.map +1 -1
- package/lib/internal/template/code-editor/preferences-modal.d.ts +7 -7
- package/lib/internal/template/code-editor/preferences-modal.d.ts.map +1 -1
- package/lib/internal/template/code-editor/preferences-modal.js.map +1 -1
- package/lib/internal/template/code-editor/status-bar.d.ts +2 -2
- package/lib/internal/template/code-editor/status-bar.d.ts.map +1 -1
- package/lib/internal/template/code-editor/status-bar.js +5 -3
- package/lib/internal/template/code-editor/status-bar.js.map +1 -1
- package/lib/internal/template/expandable-section/interfaces.d.ts +1 -1
- package/lib/internal/template/expandable-section/interfaces.js.map +1 -1
- package/lib/internal/template/help-panel/index.d.ts.map +1 -1
- package/lib/internal/template/help-panel/index.js +3 -1
- package/lib/internal/template/help-panel/index.js.map +1 -1
- package/lib/internal/template/internal/components/token-list/token-limit-toggle.d.ts.map +1 -1
- package/lib/internal/template/internal/components/token-list/token-limit-toggle.js +4 -2
- package/lib/internal/template/internal/components/token-list/token-limit-toggle.js.map +1 -1
- package/lib/internal/template/internal/environment.js +1 -1
- package/lib/internal/template/internal/generated/theming/index.cjs.d.ts +2 -2
- package/lib/internal/template/internal/generated/theming/index.d.ts +2 -2
- package/lib/internal/template/link/internal.d.ts.map +1 -1
- package/lib/internal/template/link/internal.js +4 -1
- package/lib/internal/template/link/internal.js.map +1 -1
- package/lib/internal/template/multiselect/internal.d.ts.map +1 -1
- package/lib/internal/template/multiselect/internal.js +3 -1
- package/lib/internal/template/multiselect/internal.js.map +1 -1
- package/lib/internal/template/table/styles.css.js +35 -34
- package/lib/internal/template/table/styles.scoped.css +49 -43
- package/lib/internal/template/table/styles.selectors.js +35 -34
- package/lib/internal/template/table/use-sticky-scrollbar.d.ts +1 -0
- package/lib/internal/template/table/use-sticky-scrollbar.d.ts.map +1 -1
- package/lib/internal/template/table/use-sticky-scrollbar.js +10 -36
- package/lib/internal/template/table/use-sticky-scrollbar.js.map +1 -1
- package/lib/internal/template/tabs/interfaces.d.ts +2 -2
- package/lib/internal/template/tabs/interfaces.d.ts.map +1 -1
- package/lib/internal/template/tabs/interfaces.js.map +1 -1
- package/lib/internal/template/tabs/tab-header-bar.d.ts.map +1 -1
- package/lib/internal/template/tabs/tab-header-bar.js +4 -2
- package/lib/internal/template/tabs/tab-header-bar.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internal.js","sourceRoot":"lib/default/","sources":["multiselect/internal.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useCallback, useEffect, useRef, useState } from 'react';\nimport clsx from 'clsx';\nimport { useMergeRefs } from '../internal/hooks/use-merge-refs';\n\nimport { InternalBaseComponentProps } from '../internal/hooks/use-base-component/index.js';\nimport { useFormFieldContext } from '../internal/context/form-field-context';\nimport { getBaseProps } from '../internal/base-component';\nimport { fireNonCancelableEvent } from '../internal/events';\nimport { useUniqueId } from '../internal/hooks/use-unique-id';\nimport { isGroup } from '../internal/components/option/utils/filter-options';\n\nimport DropdownFooter from '../internal/components/dropdown-footer/index.js';\nimport { prepareOptions } from '../internal/components/option/utils/prepare-options';\nimport { OptionDefinition, OptionGroup } from '../internal/components/option/interfaces';\nimport Dropdown from '../internal/components/dropdown';\nimport { useDropdownStatus } from '../internal/components/dropdown-status';\n\nimport { useSelect, MenuProps } from '../select/utils/use-select';\nimport { useNativeSearch } from '../select/utils/use-native-search';\nimport { useLoadItems } from '../select/utils/use-load-items';\nimport { useAnnouncement } from '../select/utils/use-announcement';\nimport { findOptionIndex } from '../select/utils/connect-options';\nimport PlainList, { SelectListProps } from '../select/parts/plain-list';\nimport VirtualList from '../select/parts/virtual-list';\nimport { checkOptionValueField } from '../select/utils/check-option-value-field.js';\nimport Filter from '../select/parts/filter';\nimport Trigger from '../select/parts/trigger';\n\nimport InternalTokenGroup from '../token-group/internal';\nimport { TokenGroupProps } from '../token-group/interfaces';\n\nimport { MultiselectProps } from './interfaces';\nimport styles from './styles.css.js';\nimport ScreenreaderOnly from '../internal/components/screenreader-only';\nimport { joinStrings } from '../internal/utils/strings';\n\ntype InternalMultiselectProps = MultiselectProps & InternalBaseComponentProps;\n\nconst InternalMultiselect = React.forwardRef(\n (\n {\n options = [],\n filteringType = 'none',\n filteringPlaceholder,\n filteringAriaLabel,\n filteringClearAriaLabel,\n filteringResultsText,\n ariaRequired,\n placeholder,\n disabled,\n ariaLabel,\n statusType = 'finished',\n empty,\n loadingText,\n finishedText,\n errorText,\n recoveryText,\n noMatch,\n selectedAriaLabel,\n renderHighlightedAriaLive,\n selectedOptions = [],\n deselectAriaLabel,\n keepOpen = true,\n tokenLimit,\n i18nStrings,\n onBlur,\n onFocus,\n onLoadItems,\n onChange,\n virtualScroll,\n hideTokens = false,\n expandToViewport,\n __internalRootRef = null,\n autoFocus,\n ...restProps\n }: InternalMultiselectProps,\n externalRef: React.Ref<MultiselectProps.Ref>\n ) => {\n checkOptionValueField('Multiselect', 'options', options);\n\n const baseProps = getBaseProps(restProps);\n const formFieldContext = useFormFieldContext(restProps);\n\n const { handleLoadMore, handleRecoveryClick, fireLoadItems } = useLoadItems({\n onLoadItems,\n options,\n statusType,\n });\n const useInteractiveGroups = true;\n const [filteringValue, setFilteringValue] = useState('');\n const { filteredOptions, parentMap, totalCount, matchesCount } = prepareOptions(\n options,\n filteringType,\n filteringValue\n );\n\n const updateSelectedOption = useCallback(\n (option: OptionDefinition | OptionGroup) => {\n const filtered = filteredOptions.filter(item => item.type !== 'parent').map(item => item.option);\n\n // switch between selection and deselection behavior, ignores disabled options to prevent\n // getting stuck on one behavior when an option is disabled and its state cannot be changed\n const isAllChildrenSelected = (optionsArray: OptionDefinition[]) =>\n optionsArray.every(item => findOptionIndex(selectedOptions, item) > -1 || item.disabled);\n const intersection = (visibleOptions: OptionDefinition[], options: OptionDefinition[]) =>\n visibleOptions.filter(item => findOptionIndex(options, item) > -1 && !item.disabled);\n const union = (visibleOptions: OptionDefinition[], options: OptionDefinition[]) =>\n visibleOptions.filter(item => findOptionIndex(options, item) === -1).concat(options);\n const select = (options: OptionDefinition[], selectedOptions: OptionDefinition[]) => {\n return union(selectedOptions, options);\n };\n const unselect = (options: OptionDefinition[], selectedOptions: OptionDefinition[]) => {\n return selectedOptions.filter(option => findOptionIndex(options, option) === -1);\n };\n let newSelectedOptions = [...selectedOptions];\n\n if (isGroup(option)) {\n const visibleOptions = intersection([...option.options], filtered);\n newSelectedOptions = isAllChildrenSelected(visibleOptions)\n ? unselect(visibleOptions, newSelectedOptions)\n : select(visibleOptions, newSelectedOptions);\n } else {\n newSelectedOptions = isAllChildrenSelected([option])\n ? unselect([option], newSelectedOptions)\n : select([option], newSelectedOptions);\n }\n\n fireNonCancelableEvent(onChange, {\n selectedOptions: newSelectedOptions,\n });\n },\n [onChange, selectedOptions, filteredOptions]\n );\n\n const rootRef = useRef<HTMLDivElement>(null);\n\n const selfControlId = useUniqueId('trigger');\n const controlId = formFieldContext.controlId ?? selfControlId;\n\n const multiSelectAriaLabelId = useUniqueId('multiselect-arialabel-');\n\n const footerId = useUniqueId('footer');\n\n const scrollToIndex = useRef<SelectListProps.SelectListRef>(null);\n const {\n isOpen,\n highlightType,\n highlightedOption,\n highlightedIndex,\n getTriggerProps,\n getDropdownProps,\n getFilterProps,\n getMenuProps,\n getOptionProps,\n highlightOption,\n announceSelected,\n } = useSelect({\n selectedOptions,\n updateSelectedOption,\n options: filteredOptions,\n filteringType,\n onFocus,\n onBlur,\n externalRef,\n keepOpen,\n fireLoadItems,\n setFilteringValue,\n useInteractiveGroups,\n statusType,\n });\n\n const handleNativeSearch = useNativeSearch({\n isEnabled: filteringType === 'none' && isOpen,\n options: filteredOptions,\n highlightOption: highlightOption,\n highlightedOption: highlightedOption?.option,\n useInteractiveGroups,\n });\n\n const isEmpty = !options || options.length === 0;\n const isNoMatch = filteredOptions && filteredOptions.length === 0;\n const isFiltered =\n filteringType !== 'none' && filteringValue.length > 0 && filteredOptions && filteredOptions.length > 0;\n const filteredText = isFiltered ? filteringResultsText?.(matchesCount, totalCount) : undefined;\n const dropdownStatus = useDropdownStatus({\n statusType,\n empty,\n loadingText,\n finishedText,\n errorText,\n recoveryText,\n isEmpty,\n isNoMatch,\n noMatch,\n isFiltered,\n filteringResultsText: filteredText,\n onRecoveryClick: handleRecoveryClick,\n errorIconAriaLabel: restProps.errorIconAriaLabel,\n });\n\n const filter = (\n <Filter\n clearAriaLabel={filteringClearAriaLabel}\n filteringType={filteringType}\n placeholder={filteringPlaceholder}\n ariaLabel={filteringAriaLabel}\n ariaRequired={ariaRequired}\n value={filteringValue}\n {...getFilterProps()}\n />\n );\n\n const trigger = (\n <Trigger\n placeholder={placeholder}\n disabled={disabled}\n triggerProps={getTriggerProps(disabled, autoFocus)}\n selectedOption={null}\n isOpen={isOpen}\n {...formFieldContext}\n controlId={controlId}\n ariaLabelledby={joinStrings(formFieldContext.ariaLabelledby, multiSelectAriaLabelId)}\n />\n );\n\n const menuProps: MenuProps = {\n ...getMenuProps(),\n onLoadMore: handleLoadMore,\n ariaLabelledby: joinStrings(multiSelectAriaLabelId, controlId),\n ariaDescribedby: dropdownStatus.content ? footerId : undefined,\n };\n\n const announcement = useAnnouncement({\n announceSelected,\n highlightedOption,\n getParent: option => parentMap.get(option)?.option as undefined | OptionGroup,\n selectedAriaLabel,\n renderHighlightedAriaLive,\n });\n\n const tokens: TokenGroupProps['items'] = selectedOptions.map(option => ({\n label: option.label,\n disabled: disabled || option.disabled,\n labelTag: option.labelTag,\n description: option.description,\n iconAlt: option.iconAlt,\n iconName: option.iconName,\n iconUrl: option.iconUrl,\n iconSvg: option.iconSvg,\n tags: option.tags,\n dismissLabel: deselectAriaLabel ? deselectAriaLabel(option) : undefined,\n }));\n\n useEffect(() => {\n scrollToIndex.current?.(highlightedIndex);\n }, [highlightedIndex]);\n\n const ListComponent = virtualScroll ? VirtualList : PlainList;\n\n const handleMouseDown = (event: React.MouseEvent) => {\n const target = event.target as HTMLElement;\n\n if (target !== document.activeElement) {\n // prevent currently focused element from losing it\n event.preventDefault();\n }\n };\n\n const showTokens = !hideTokens && tokens.length > 0;\n const handleTokenDismiss: TokenGroupProps['onDismiss'] = ({ detail }) => {\n const optionToDeselect = selectedOptions[detail.itemIndex];\n updateSelectedOption(optionToDeselect);\n const targetRef = getTriggerProps().ref;\n if (targetRef.current) {\n targetRef.current.focus();\n }\n };\n\n const tokenGroupI18nStrings: TokenGroupProps.I18nStrings = {\n limitShowFewer: i18nStrings?.tokenLimitShowFewer,\n limitShowMore: i18nStrings?.tokenLimitShowMore,\n };\n\n const mergedRef = useMergeRefs(rootRef, __internalRootRef);\n\n return (\n <div\n {...baseProps}\n ref={mergedRef}\n className={clsx(styles.root, baseProps.className)}\n onKeyPress={handleNativeSearch}\n >\n <Dropdown\n {...getDropdownProps()}\n open={isOpen}\n trigger={trigger}\n header={filter}\n onMouseDown={handleMouseDown}\n footer={\n dropdownStatus.isSticky ? (\n <DropdownFooter content={isOpen ? dropdownStatus.content : null} id={footerId} />\n ) : null\n }\n expandToViewport={expandToViewport}\n >\n <ListComponent\n listBottom={\n !dropdownStatus.isSticky ? (\n <DropdownFooter content={isOpen ? dropdownStatus.content : null} id={footerId} />\n ) : null\n }\n menuProps={menuProps}\n getOptionProps={getOptionProps}\n filteredOptions={filteredOptions}\n filteringValue={filteringValue}\n ref={scrollToIndex}\n hasDropdownStatus={dropdownStatus.content !== null}\n checkboxes={true}\n useInteractiveGroups={useInteractiveGroups}\n screenReaderContent={announcement}\n highlightType={highlightType}\n />\n </Dropdown>\n {showTokens && (\n <InternalTokenGroup\n alignment=\"horizontal\"\n limit={tokenLimit}\n items={tokens}\n onDismiss={handleTokenDismiss}\n i18nStrings={tokenGroupI18nStrings}\n />\n )}\n <ScreenreaderOnly id={multiSelectAriaLabelId}>{ariaLabel}</ScreenreaderOnly>\n </div>\n );\n }\n);\n\nexport default InternalMultiselect;\n"]}
|
|
1
|
+
{"version":3,"file":"internal.js","sourceRoot":"lib/default/","sources":["multiselect/internal.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useCallback, useEffect, useRef, useState } from 'react';\nimport clsx from 'clsx';\nimport { useMergeRefs } from '../internal/hooks/use-merge-refs';\n\nimport { InternalBaseComponentProps } from '../internal/hooks/use-base-component/index.js';\nimport { useFormFieldContext } from '../internal/context/form-field-context';\nimport { getBaseProps } from '../internal/base-component';\nimport { fireNonCancelableEvent } from '../internal/events';\nimport { useUniqueId } from '../internal/hooks/use-unique-id';\nimport { isGroup } from '../internal/components/option/utils/filter-options';\n\nimport DropdownFooter from '../internal/components/dropdown-footer/index.js';\nimport { prepareOptions } from '../internal/components/option/utils/prepare-options';\nimport { OptionDefinition, OptionGroup } from '../internal/components/option/interfaces';\nimport Dropdown from '../internal/components/dropdown';\nimport { useDropdownStatus } from '../internal/components/dropdown-status';\n\nimport { useSelect, MenuProps } from '../select/utils/use-select';\nimport { useNativeSearch } from '../select/utils/use-native-search';\nimport { useLoadItems } from '../select/utils/use-load-items';\nimport { useAnnouncement } from '../select/utils/use-announcement';\nimport { findOptionIndex } from '../select/utils/connect-options';\nimport PlainList, { SelectListProps } from '../select/parts/plain-list';\nimport VirtualList from '../select/parts/virtual-list';\nimport { checkOptionValueField } from '../select/utils/check-option-value-field.js';\nimport Filter from '../select/parts/filter';\nimport Trigger from '../select/parts/trigger';\n\nimport InternalTokenGroup from '../token-group/internal';\nimport { TokenGroupProps } from '../token-group/interfaces';\n\nimport { MultiselectProps } from './interfaces';\nimport styles from './styles.css.js';\nimport ScreenreaderOnly from '../internal/components/screenreader-only';\nimport { joinStrings } from '../internal/utils/strings';\nimport { useInternalI18n } from '../internal/i18n/context';\n\ntype InternalMultiselectProps = MultiselectProps & InternalBaseComponentProps;\n\nconst InternalMultiselect = React.forwardRef(\n (\n {\n options = [],\n filteringType = 'none',\n filteringPlaceholder,\n filteringAriaLabel,\n filteringClearAriaLabel,\n filteringResultsText,\n ariaRequired,\n placeholder,\n disabled,\n ariaLabel,\n statusType = 'finished',\n empty,\n loadingText,\n finishedText,\n errorText,\n recoveryText,\n noMatch,\n selectedAriaLabel,\n renderHighlightedAriaLive,\n selectedOptions = [],\n deselectAriaLabel,\n keepOpen = true,\n tokenLimit,\n i18nStrings,\n onBlur,\n onFocus,\n onLoadItems,\n onChange,\n virtualScroll,\n hideTokens = false,\n expandToViewport,\n __internalRootRef = null,\n autoFocus,\n ...restProps\n }: InternalMultiselectProps,\n externalRef: React.Ref<MultiselectProps.Ref>\n ) => {\n checkOptionValueField('Multiselect', 'options', options);\n\n const baseProps = getBaseProps(restProps);\n const formFieldContext = useFormFieldContext(restProps);\n const i18n = useInternalI18n('multiselect');\n\n const { handleLoadMore, handleRecoveryClick, fireLoadItems } = useLoadItems({\n onLoadItems,\n options,\n statusType,\n });\n const useInteractiveGroups = true;\n const [filteringValue, setFilteringValue] = useState('');\n const { filteredOptions, parentMap, totalCount, matchesCount } = prepareOptions(\n options,\n filteringType,\n filteringValue\n );\n\n const updateSelectedOption = useCallback(\n (option: OptionDefinition | OptionGroup) => {\n const filtered = filteredOptions.filter(item => item.type !== 'parent').map(item => item.option);\n\n // switch between selection and deselection behavior, ignores disabled options to prevent\n // getting stuck on one behavior when an option is disabled and its state cannot be changed\n const isAllChildrenSelected = (optionsArray: OptionDefinition[]) =>\n optionsArray.every(item => findOptionIndex(selectedOptions, item) > -1 || item.disabled);\n const intersection = (visibleOptions: OptionDefinition[], options: OptionDefinition[]) =>\n visibleOptions.filter(item => findOptionIndex(options, item) > -1 && !item.disabled);\n const union = (visibleOptions: OptionDefinition[], options: OptionDefinition[]) =>\n visibleOptions.filter(item => findOptionIndex(options, item) === -1).concat(options);\n const select = (options: OptionDefinition[], selectedOptions: OptionDefinition[]) => {\n return union(selectedOptions, options);\n };\n const unselect = (options: OptionDefinition[], selectedOptions: OptionDefinition[]) => {\n return selectedOptions.filter(option => findOptionIndex(options, option) === -1);\n };\n let newSelectedOptions = [...selectedOptions];\n\n if (isGroup(option)) {\n const visibleOptions = intersection([...option.options], filtered);\n newSelectedOptions = isAllChildrenSelected(visibleOptions)\n ? unselect(visibleOptions, newSelectedOptions)\n : select(visibleOptions, newSelectedOptions);\n } else {\n newSelectedOptions = isAllChildrenSelected([option])\n ? unselect([option], newSelectedOptions)\n : select([option], newSelectedOptions);\n }\n\n fireNonCancelableEvent(onChange, {\n selectedOptions: newSelectedOptions,\n });\n },\n [onChange, selectedOptions, filteredOptions]\n );\n\n const rootRef = useRef<HTMLDivElement>(null);\n\n const selfControlId = useUniqueId('trigger');\n const controlId = formFieldContext.controlId ?? selfControlId;\n\n const multiSelectAriaLabelId = useUniqueId('multiselect-arialabel-');\n\n const footerId = useUniqueId('footer');\n\n const scrollToIndex = useRef<SelectListProps.SelectListRef>(null);\n const {\n isOpen,\n highlightType,\n highlightedOption,\n highlightedIndex,\n getTriggerProps,\n getDropdownProps,\n getFilterProps,\n getMenuProps,\n getOptionProps,\n highlightOption,\n announceSelected,\n } = useSelect({\n selectedOptions,\n updateSelectedOption,\n options: filteredOptions,\n filteringType,\n onFocus,\n onBlur,\n externalRef,\n keepOpen,\n fireLoadItems,\n setFilteringValue,\n useInteractiveGroups,\n statusType,\n });\n\n const handleNativeSearch = useNativeSearch({\n isEnabled: filteringType === 'none' && isOpen,\n options: filteredOptions,\n highlightOption: highlightOption,\n highlightedOption: highlightedOption?.option,\n useInteractiveGroups,\n });\n\n const isEmpty = !options || options.length === 0;\n const isNoMatch = filteredOptions && filteredOptions.length === 0;\n const isFiltered =\n filteringType !== 'none' && filteringValue.length > 0 && filteredOptions && filteredOptions.length > 0;\n const filteredText = isFiltered ? filteringResultsText?.(matchesCount, totalCount) : undefined;\n const dropdownStatus = useDropdownStatus({\n statusType,\n empty,\n loadingText,\n finishedText,\n errorText,\n recoveryText,\n isEmpty,\n isNoMatch,\n noMatch,\n isFiltered,\n filteringResultsText: filteredText,\n onRecoveryClick: handleRecoveryClick,\n errorIconAriaLabel: restProps.errorIconAriaLabel,\n });\n\n const filter = (\n <Filter\n clearAriaLabel={filteringClearAriaLabel}\n filteringType={filteringType}\n placeholder={filteringPlaceholder}\n ariaLabel={filteringAriaLabel}\n ariaRequired={ariaRequired}\n value={filteringValue}\n {...getFilterProps()}\n />\n );\n\n const trigger = (\n <Trigger\n placeholder={placeholder}\n disabled={disabled}\n triggerProps={getTriggerProps(disabled, autoFocus)}\n selectedOption={null}\n isOpen={isOpen}\n {...formFieldContext}\n controlId={controlId}\n ariaLabelledby={joinStrings(formFieldContext.ariaLabelledby, multiSelectAriaLabelId)}\n />\n );\n\n const menuProps: MenuProps = {\n ...getMenuProps(),\n onLoadMore: handleLoadMore,\n ariaLabelledby: joinStrings(multiSelectAriaLabelId, controlId),\n ariaDescribedby: dropdownStatus.content ? footerId : undefined,\n };\n\n const announcement = useAnnouncement({\n announceSelected,\n highlightedOption,\n getParent: option => parentMap.get(option)?.option as undefined | OptionGroup,\n selectedAriaLabel,\n renderHighlightedAriaLive,\n });\n\n const tokens: TokenGroupProps['items'] = selectedOptions.map(option => ({\n label: option.label,\n disabled: disabled || option.disabled,\n labelTag: option.labelTag,\n description: option.description,\n iconAlt: option.iconAlt,\n iconName: option.iconName,\n iconUrl: option.iconUrl,\n iconSvg: option.iconSvg,\n tags: option.tags,\n dismissLabel: i18n('deselectAriaLabel', deselectAriaLabel?.(option), format =>\n format({ option__label: option.label ?? '' })\n ),\n }));\n\n useEffect(() => {\n scrollToIndex.current?.(highlightedIndex);\n }, [highlightedIndex]);\n\n const ListComponent = virtualScroll ? VirtualList : PlainList;\n\n const handleMouseDown = (event: React.MouseEvent) => {\n const target = event.target as HTMLElement;\n\n if (target !== document.activeElement) {\n // prevent currently focused element from losing it\n event.preventDefault();\n }\n };\n\n const showTokens = !hideTokens && tokens.length > 0;\n const handleTokenDismiss: TokenGroupProps['onDismiss'] = ({ detail }) => {\n const optionToDeselect = selectedOptions[detail.itemIndex];\n updateSelectedOption(optionToDeselect);\n const targetRef = getTriggerProps().ref;\n if (targetRef.current) {\n targetRef.current.focus();\n }\n };\n\n const tokenGroupI18nStrings: TokenGroupProps.I18nStrings = {\n limitShowFewer: i18nStrings?.tokenLimitShowFewer,\n limitShowMore: i18nStrings?.tokenLimitShowMore,\n };\n\n const mergedRef = useMergeRefs(rootRef, __internalRootRef);\n\n return (\n <div\n {...baseProps}\n ref={mergedRef}\n className={clsx(styles.root, baseProps.className)}\n onKeyPress={handleNativeSearch}\n >\n <Dropdown\n {...getDropdownProps()}\n open={isOpen}\n trigger={trigger}\n header={filter}\n onMouseDown={handleMouseDown}\n footer={\n dropdownStatus.isSticky ? (\n <DropdownFooter content={isOpen ? dropdownStatus.content : null} id={footerId} />\n ) : null\n }\n expandToViewport={expandToViewport}\n >\n <ListComponent\n listBottom={\n !dropdownStatus.isSticky ? (\n <DropdownFooter content={isOpen ? dropdownStatus.content : null} id={footerId} />\n ) : null\n }\n menuProps={menuProps}\n getOptionProps={getOptionProps}\n filteredOptions={filteredOptions}\n filteringValue={filteringValue}\n ref={scrollToIndex}\n hasDropdownStatus={dropdownStatus.content !== null}\n checkboxes={true}\n useInteractiveGroups={useInteractiveGroups}\n screenReaderContent={announcement}\n highlightType={highlightType}\n />\n </Dropdown>\n {showTokens && (\n <InternalTokenGroup\n alignment=\"horizontal\"\n limit={tokenLimit}\n items={tokens}\n onDismiss={handleTokenDismiss}\n i18nStrings={tokenGroupI18nStrings}\n />\n )}\n <ScreenreaderOnly id={multiSelectAriaLabelId}>{ariaLabel}</ScreenreaderOnly>\n </div>\n );\n }\n);\n\nexport default InternalMultiselect;\n"]}
|
|
@@ -1,39 +1,40 @@
|
|
|
1
1
|
|
|
2
2
|
import './styles.scoped.css';
|
|
3
3
|
export default {
|
|
4
|
-
"root": "
|
|
5
|
-
"tools": "
|
|
6
|
-
"tools-filtering": "awsui_tools-
|
|
7
|
-
"tools-align-right": "awsui_tools-align-
|
|
8
|
-
"tools-pagination": "awsui_tools-
|
|
9
|
-
"tools-preferences": "awsui_tools-
|
|
10
|
-
"tools-small": "awsui_tools-
|
|
11
|
-
"table": "
|
|
12
|
-
"table-layout-fixed": "awsui_table-layout-
|
|
13
|
-
"wrapper": "
|
|
14
|
-
"variant-stacked": "awsui_variant-
|
|
15
|
-
"variant-container": "awsui_variant-
|
|
16
|
-
"variant-embedded": "awsui_variant-
|
|
17
|
-
"variant-borderless": "awsui_variant-
|
|
18
|
-
"has-header": "awsui_has-
|
|
19
|
-
"has-footer": "awsui_has-
|
|
20
|
-
"cell-merged": "awsui_cell-
|
|
21
|
-
"cell-merged-content": "awsui_cell-merged-
|
|
22
|
-
"empty": "
|
|
23
|
-
"loading": "
|
|
24
|
-
"selection-control": "awsui_selection-
|
|
25
|
-
"selection-control-header": "awsui_selection-control-
|
|
26
|
-
"sticky-scrollbar": "awsui_sticky-
|
|
27
|
-
"sticky-scrollbar-content": "awsui_sticky-scrollbar-
|
|
28
|
-
"sticky-scrollbar-visible": "awsui_sticky-scrollbar-
|
|
29
|
-
"
|
|
30
|
-
"header
|
|
31
|
-
"
|
|
32
|
-
"header
|
|
33
|
-
"
|
|
34
|
-
"footer": "
|
|
35
|
-
"
|
|
36
|
-
"
|
|
37
|
-
"row
|
|
4
|
+
"root": "awsui_root_wih1l_1kbu7_97",
|
|
5
|
+
"tools": "awsui_tools_wih1l_1kbu7_108",
|
|
6
|
+
"tools-filtering": "awsui_tools-filtering_wih1l_1kbu7_114",
|
|
7
|
+
"tools-align-right": "awsui_tools-align-right_wih1l_1kbu7_128",
|
|
8
|
+
"tools-pagination": "awsui_tools-pagination_wih1l_1kbu7_132",
|
|
9
|
+
"tools-preferences": "awsui_tools-preferences_wih1l_1kbu7_132",
|
|
10
|
+
"tools-small": "awsui_tools-small_wih1l_1kbu7_138",
|
|
11
|
+
"table": "awsui_table_wih1l_1kbu7_144",
|
|
12
|
+
"table-layout-fixed": "awsui_table-layout-fixed_wih1l_1kbu7_150",
|
|
13
|
+
"wrapper": "awsui_wrapper_wih1l_1kbu7_154",
|
|
14
|
+
"variant-stacked": "awsui_variant-stacked_wih1l_1kbu7_163",
|
|
15
|
+
"variant-container": "awsui_variant-container_wih1l_1kbu7_163",
|
|
16
|
+
"variant-embedded": "awsui_variant-embedded_wih1l_1kbu7_167",
|
|
17
|
+
"variant-borderless": "awsui_variant-borderless_wih1l_1kbu7_167",
|
|
18
|
+
"has-header": "awsui_has-header_wih1l_1kbu7_170",
|
|
19
|
+
"has-footer": "awsui_has-footer_wih1l_1kbu7_173",
|
|
20
|
+
"cell-merged": "awsui_cell-merged_wih1l_1kbu7_190",
|
|
21
|
+
"cell-merged-content": "awsui_cell-merged-content_wih1l_1kbu7_201",
|
|
22
|
+
"empty": "awsui_empty_wih1l_1kbu7_216",
|
|
23
|
+
"loading": "awsui_loading_wih1l_1kbu7_220",
|
|
24
|
+
"selection-control": "awsui_selection-control_wih1l_1kbu7_229",
|
|
25
|
+
"selection-control-header": "awsui_selection-control-header_wih1l_1kbu7_236",
|
|
26
|
+
"sticky-scrollbar": "awsui_sticky-scrollbar_wih1l_1kbu7_241",
|
|
27
|
+
"sticky-scrollbar-content": "awsui_sticky-scrollbar-content_wih1l_1kbu7_250",
|
|
28
|
+
"sticky-scrollbar-visible": "awsui_sticky-scrollbar-visible_wih1l_1kbu7_253",
|
|
29
|
+
"sticky-scrollbar-native-invisible": "awsui_sticky-scrollbar-native-invisible_wih1l_1kbu7_256",
|
|
30
|
+
"dark-header": "awsui_dark-header_wih1l_1kbu7_264",
|
|
31
|
+
"header-secondary": "awsui_header-secondary_wih1l_1kbu7_269",
|
|
32
|
+
"table-has-header": "awsui_table-has-header_wih1l_1kbu7_285",
|
|
33
|
+
"header-controls": "awsui_header-controls_wih1l_1kbu7_289",
|
|
34
|
+
"footer-wrapper": "awsui_footer-wrapper_wih1l_1kbu7_303",
|
|
35
|
+
"footer": "awsui_footer_wih1l_1kbu7_303",
|
|
36
|
+
"thead-active": "awsui_thead-active_wih1l_1kbu7_312",
|
|
37
|
+
"row": "awsui_row_wih1l_1kbu7_313",
|
|
38
|
+
"row-selected": "awsui_row-selected_wih1l_1kbu7_314"
|
|
38
39
|
};
|
|
39
40
|
|
|
@@ -94,7 +94,7 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
94
94
|
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
95
95
|
SPDX-License-Identifier: Apache-2.0
|
|
96
96
|
*/
|
|
97
|
-
.
|
|
97
|
+
.awsui_root_wih1l_1kbu7_97:not(#\9) {
|
|
98
98
|
font-size: var(--font-body-m-size-i6yc1c, 14px);
|
|
99
99
|
line-height: var(--font-body-m-line-height-uf359w, 22px);
|
|
100
100
|
color: var(--color-text-body-default-v5bj0z, #16191f);
|
|
@@ -105,96 +105,100 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
|
|
|
105
105
|
width: 100%;
|
|
106
106
|
}
|
|
107
107
|
|
|
108
|
-
.
|
|
108
|
+
.awsui_tools_wih1l_1kbu7_108:not(#\9) {
|
|
109
109
|
display: flex;
|
|
110
110
|
align-items: flex-end;
|
|
111
111
|
flex-wrap: wrap;
|
|
112
112
|
padding: var(--space-scaled-xs-k3qrsg, 8px) 0 var(--space-scaled-xxs-4wuz2q, 4px);
|
|
113
113
|
}
|
|
114
|
-
.awsui_tools-
|
|
114
|
+
.awsui_tools-filtering_wih1l_1kbu7_114:not(#\9) {
|
|
115
115
|
max-width: 100%;
|
|
116
116
|
margin-right: var(--space-l-gcd1hj, 20px);
|
|
117
117
|
}
|
|
118
118
|
@supports (flex-basis: fit-content) {
|
|
119
|
-
.awsui_tools-
|
|
119
|
+
.awsui_tools-filtering_wih1l_1kbu7_114:not(#\9) {
|
|
120
120
|
flex: 1 1 fit-content;
|
|
121
121
|
}
|
|
122
122
|
}
|
|
123
123
|
@supports not (flex-basis: fit-content) {
|
|
124
|
-
.awsui_tools-
|
|
124
|
+
.awsui_tools-filtering_wih1l_1kbu7_114:not(#\9) {
|
|
125
125
|
flex: 1 1 auto;
|
|
126
126
|
}
|
|
127
127
|
}
|
|
128
|
-
.awsui_tools-align-
|
|
128
|
+
.awsui_tools-align-right_wih1l_1kbu7_128:not(#\9) {
|
|
129
129
|
display: flex;
|
|
130
130
|
margin-left: auto;
|
|
131
131
|
}
|
|
132
|
-
.awsui_tools-
|
|
132
|
+
.awsui_tools-pagination_wih1l_1kbu7_132 + .awsui_tools-preferences_wih1l_1kbu7_132:not(#\9) {
|
|
133
133
|
border-left: var(--border-divider-section-width-om0oy7, 1px) solid var(--color-border-divider-default-77o8t1, #eaeded);
|
|
134
134
|
box-sizing: border-box;
|
|
135
135
|
margin-left: var(--space-xs-70e4tc, 8px);
|
|
136
136
|
padding-left: var(--space-xs-70e4tc, 8px);
|
|
137
137
|
}
|
|
138
|
-
.awsui_tools-
|
|
138
|
+
.awsui_tools-small_wih1l_1kbu7_138 > .awsui_tools-filtering_wih1l_1kbu7_114:not(#\9) {
|
|
139
139
|
margin-right: 0;
|
|
140
140
|
margin-bottom: var(--space-scaled-xs-k3qrsg, 8px);
|
|
141
141
|
flex-basis: 100%;
|
|
142
142
|
}
|
|
143
143
|
|
|
144
|
-
.
|
|
144
|
+
.awsui_table_wih1l_1kbu7_144:not(#\9) {
|
|
145
145
|
width: 100%;
|
|
146
146
|
border-spacing: 0;
|
|
147
147
|
position: relative;
|
|
148
148
|
box-sizing: border-box;
|
|
149
149
|
}
|
|
150
|
-
.awsui_table-layout-
|
|
150
|
+
.awsui_table-layout-fixed_wih1l_1kbu7_150:not(#\9) {
|
|
151
151
|
table-layout: fixed;
|
|
152
152
|
}
|
|
153
153
|
|
|
154
|
-
.
|
|
154
|
+
.awsui_wrapper_wih1l_1kbu7_154:not(#\9) {
|
|
155
155
|
position: relative;
|
|
156
156
|
box-sizing: border-box;
|
|
157
157
|
width: 100%;
|
|
158
158
|
padding-top: var(--space-table-content-top-epi5um, 0px);
|
|
159
159
|
padding-bottom: var(--space-table-content-bottom-asfy0f, 0px);
|
|
160
160
|
overflow-x: auto;
|
|
161
|
+
scrollbar-width: none; /* Hide scrollbar in Firefox */
|
|
161
162
|
}
|
|
162
|
-
.
|
|
163
|
+
.awsui_wrapper_wih1l_1kbu7_154.awsui_variant-stacked_wih1l_1kbu7_163 > .awsui_table_wih1l_1kbu7_144:not(#\9), .awsui_wrapper_wih1l_1kbu7_154.awsui_variant-container_wih1l_1kbu7_163 > .awsui_table_wih1l_1kbu7_144:not(#\9) {
|
|
163
164
|
padding-left: var(--space-table-horizontal-8bjibn, 0px);
|
|
164
165
|
padding-right: var(--space-table-horizontal-8bjibn, 0px);
|
|
165
166
|
}
|
|
166
|
-
.
|
|
167
|
+
.awsui_wrapper_wih1l_1kbu7_154.awsui_variant-embedded_wih1l_1kbu7_167:not(#\9), .awsui_wrapper_wih1l_1kbu7_154.awsui_variant-borderless_wih1l_1kbu7_167:not(#\9) {
|
|
167
168
|
padding-bottom: var(--space-table-embedded-content-bottom-31yqun, 0px);
|
|
168
169
|
}
|
|
169
|
-
.
|
|
170
|
+
.awsui_wrapper_wih1l_1kbu7_154.awsui_has-header_wih1l_1kbu7_170:not(#\9) {
|
|
170
171
|
padding-top: 0px;
|
|
171
172
|
}
|
|
172
|
-
.
|
|
173
|
+
.awsui_wrapper_wih1l_1kbu7_154.awsui_has-footer_wih1l_1kbu7_173:not(#\9) {
|
|
173
174
|
padding-bottom: 0px;
|
|
174
175
|
}
|
|
175
|
-
.
|
|
176
|
+
.awsui_wrapper_wih1l_1kbu7_154:not(#\9):not(.awsui_has-header_wih1l_1kbu7_170) {
|
|
176
177
|
border-top-right-radius: var(--border-radius-container-y2o1gq, 0px);
|
|
177
178
|
border-top-left-radius: var(--border-radius-container-y2o1gq, 0px);
|
|
178
179
|
}
|
|
179
|
-
|
|
180
|
+
.awsui_wrapper_wih1l_1kbu7_154:not(#\9)::-webkit-scrollbar {
|
|
181
|
+
display: none; /* Hide scrollbar in Safari and Chrome */
|
|
182
|
+
}
|
|
183
|
+
body[data-awsui-focus-visible=true] .awsui_wrapper_wih1l_1kbu7_154:not(#\9):focus {
|
|
180
184
|
outline: 2px dotted transparent;
|
|
181
185
|
outline-offset: 2px;
|
|
182
186
|
border-radius: var(--border-radius-container-y2o1gq, 0px);
|
|
183
187
|
box-shadow: 0 0 0 2px var(--color-border-item-focused-oqg5wt, #0073bb);
|
|
184
188
|
}
|
|
185
189
|
|
|
186
|
-
.awsui_cell-
|
|
190
|
+
.awsui_cell-merged_wih1l_1kbu7_190:not(#\9) {
|
|
187
191
|
text-align: center;
|
|
188
192
|
padding: 0;
|
|
189
193
|
}
|
|
190
|
-
.awsui_cell-
|
|
194
|
+
.awsui_cell-merged_wih1l_1kbu7_190.awsui_has-footer_wih1l_1kbu7_173:not(#\9) {
|
|
191
195
|
/*
|
|
192
196
|
Add a bottom border to the body cell of an empty table as a separator between the
|
|
193
197
|
table and the footer
|
|
194
198
|
*/
|
|
195
199
|
border-bottom: var(--border-divider-section-width-om0oy7, 1px) solid var(--color-border-divider-default-77o8t1, #eaeded);
|
|
196
200
|
}
|
|
197
|
-
.awsui_cell-merged-
|
|
201
|
+
.awsui_cell-merged-content_wih1l_1kbu7_201:not(#\9) {
|
|
198
202
|
box-sizing: border-box;
|
|
199
203
|
width: 100%;
|
|
200
204
|
padding: var(--space-scaled-m-9r8o39, 16px) var(--space-l-gcd1hj, 20px) var(--space-scaled-l-pqbeny, 20px);
|
|
@@ -202,18 +206,18 @@ body[data-awsui-focus-visible=true] .awsui_wrapper_wih1l_1to4z_154:not(#\9):focu
|
|
|
202
206
|
/* stylelint-enable plugin/no-unsupported-browser-features */
|
|
203
207
|
}
|
|
204
208
|
@supports (position: sticky) {
|
|
205
|
-
.awsui_cell-merged-
|
|
209
|
+
.awsui_cell-merged-content_wih1l_1kbu7_201:not(#\9) {
|
|
206
210
|
position: sticky;
|
|
207
211
|
left: 0;
|
|
208
212
|
margin: 0 calc(-2 * var(--space-table-horizontal-8bjibn, 0px));
|
|
209
213
|
}
|
|
210
214
|
}
|
|
211
215
|
|
|
212
|
-
.
|
|
216
|
+
.awsui_empty_wih1l_1kbu7_216:not(#\9) {
|
|
213
217
|
color: var(--color-text-empty-xc2gsv, #687078);
|
|
214
218
|
}
|
|
215
219
|
|
|
216
|
-
.
|
|
220
|
+
.awsui_loading_wih1l_1kbu7_220:not(#\9) {
|
|
217
221
|
/* used in test-utils */
|
|
218
222
|
}
|
|
219
223
|
|
|
@@ -222,45 +226,47 @@ The min/max/width token values in Visual Refresh should align
|
|
|
222
226
|
the table header and body cells selection control with the table
|
|
223
227
|
filter search icon.
|
|
224
228
|
*/
|
|
225
|
-
.awsui_selection-
|
|
229
|
+
.awsui_selection-control_wih1l_1kbu7_229:not(#\9) {
|
|
226
230
|
box-sizing: border-box;
|
|
227
231
|
max-width: var(--size-table-selection-horizontal-1okkun, 54px);
|
|
228
232
|
min-width: var(--size-table-selection-horizontal-1okkun, 54px);
|
|
229
233
|
position: relative;
|
|
230
234
|
width: var(--size-table-selection-horizontal-1okkun, 54px);
|
|
231
235
|
}
|
|
232
|
-
.awsui_selection-
|
|
236
|
+
.awsui_selection-control_wih1l_1kbu7_229.awsui_selection-control-header_wih1l_1kbu7_236:not(#\9) {
|
|
233
237
|
padding: var(--space-scaled-xs-k3qrsg, 8px) var(--space-scaled-l-pqbeny, 20px);
|
|
234
238
|
border-left: var(--border-item-width-48kr2z, 1px) solid transparent;
|
|
235
239
|
}
|
|
236
240
|
|
|
237
|
-
.awsui_sticky-
|
|
241
|
+
.awsui_sticky-scrollbar_wih1l_1kbu7_241:not(#\9) {
|
|
238
242
|
height: 15px;
|
|
239
|
-
position:
|
|
243
|
+
position: sticky;
|
|
240
244
|
display: none;
|
|
241
245
|
overflow-x: auto;
|
|
242
246
|
overflow-y: hidden;
|
|
243
|
-
margin-top: -15px;
|
|
244
247
|
bottom: 0;
|
|
245
248
|
width: 100%;
|
|
246
249
|
}
|
|
247
|
-
.awsui_sticky-scrollbar-
|
|
250
|
+
.awsui_sticky-scrollbar-content_wih1l_1kbu7_250:not(#\9) {
|
|
248
251
|
height: 15px;
|
|
249
252
|
}
|
|
250
|
-
.awsui_sticky-scrollbar-
|
|
253
|
+
.awsui_sticky-scrollbar-visible_wih1l_1kbu7_253:not(#\9) {
|
|
251
254
|
display: block;
|
|
252
255
|
}
|
|
256
|
+
.awsui_sticky-scrollbar-native-invisible_wih1l_1kbu7_256:not(#\9) {
|
|
257
|
+
margin-top: -15px;
|
|
258
|
+
}
|
|
253
259
|
|
|
254
260
|
/*
|
|
255
261
|
The dynamic height dark header needs a background that will cover
|
|
256
262
|
the default white background of the container component.
|
|
257
263
|
*/
|
|
258
|
-
.awsui_dark-
|
|
264
|
+
.awsui_dark-header_wih1l_1kbu7_264:not(#\9) {
|
|
259
265
|
background-color: var(--color-background-layout-main-9oed31, #f2f3f3);
|
|
260
266
|
color: var(--color-text-body-default-v5bj0z, #16191f);
|
|
261
267
|
}
|
|
262
268
|
|
|
263
|
-
.awsui_header-
|
|
269
|
+
.awsui_header-secondary_wih1l_1kbu7_269:not(#\9) {
|
|
264
270
|
overflow: auto;
|
|
265
271
|
-ms-overflow-style: none; /* Internet Explorer 10+ */
|
|
266
272
|
scrollbar-width: none; /* Firefox */
|
|
@@ -269,42 +275,42 @@ the default white background of the container component.
|
|
|
269
275
|
border-radius: 0;
|
|
270
276
|
background: var(--color-background-table-header-9vjj68, #fafafa);
|
|
271
277
|
}
|
|
272
|
-
.awsui_header-
|
|
278
|
+
.awsui_header-secondary_wih1l_1kbu7_269.awsui_variant-stacked_wih1l_1kbu7_163 > .awsui_table_wih1l_1kbu7_144:not(#\9), .awsui_header-secondary_wih1l_1kbu7_269.awsui_variant-container_wih1l_1kbu7_163 > .awsui_table_wih1l_1kbu7_144:not(#\9) {
|
|
273
279
|
padding-left: var(--space-table-horizontal-8bjibn, 0px);
|
|
274
280
|
padding-right: var(--space-table-horizontal-8bjibn, 0px);
|
|
275
281
|
}
|
|
276
|
-
.awsui_header-
|
|
282
|
+
.awsui_header-secondary_wih1l_1kbu7_269:not(#\9)::-webkit-scrollbar {
|
|
277
283
|
display: none; /* Safari and Chrome */
|
|
278
284
|
}
|
|
279
|
-
.awsui_header-
|
|
285
|
+
.awsui_header-secondary_wih1l_1kbu7_269.awsui_table-has-header_wih1l_1kbu7_285:not(#\9) {
|
|
280
286
|
border-top: var(--border-divider-list-width-eoqsw5, 1px) solid var(--color-border-container-divider-t9c066, #eaeded);
|
|
281
287
|
}
|
|
282
288
|
|
|
283
|
-
.awsui_header-
|
|
289
|
+
.awsui_header-controls_wih1l_1kbu7_289:not(#\9) {
|
|
284
290
|
padding-top: var(--space-container-header-vertical-1whpnh, 12px);
|
|
285
291
|
padding-bottom: var(--space-container-header-vertical-1whpnh, 12px);
|
|
286
292
|
}
|
|
287
|
-
.awsui_header-
|
|
293
|
+
.awsui_header-controls_wih1l_1kbu7_289.awsui_variant-stacked_wih1l_1kbu7_163:not(#\9), .awsui_header-controls_wih1l_1kbu7_289.awsui_variant-container_wih1l_1kbu7_163:not(#\9) {
|
|
288
294
|
padding-left: calc(var(--space-table-horizontal-8bjibn, 0px) + var(--space-table-header-horizontal-wzq5fu, 20px));
|
|
289
295
|
padding-right: calc(var(--space-table-horizontal-8bjibn, 0px) + var(--space-table-header-horizontal-wzq5fu, 20px));
|
|
290
296
|
}
|
|
291
|
-
.awsui_header-
|
|
297
|
+
.awsui_header-controls_wih1l_1kbu7_289.awsui_variant-embedded_wih1l_1kbu7_167:not(#\9), .awsui_header-controls_wih1l_1kbu7_289.awsui_variant-borderless_wih1l_1kbu7_167:not(#\9) {
|
|
292
298
|
padding-left: var(--space-table-header-horizontal-wzq5fu, 20px);
|
|
293
299
|
padding-right: var(--space-table-header-horizontal-wzq5fu, 20px);
|
|
294
300
|
padding-top: var(--space-table-embedded-header-top-7v19l8, 12px);
|
|
295
301
|
}
|
|
296
302
|
|
|
297
|
-
.awsui_footer-
|
|
303
|
+
.awsui_footer-wrapper_wih1l_1kbu7_303.awsui_variant-stacked_wih1l_1kbu7_163:not(#\9), .awsui_footer-wrapper_wih1l_1kbu7_303.awsui_variant-container_wih1l_1kbu7_163:not(#\9) {
|
|
298
304
|
padding-left: var(--space-table-horizontal-8bjibn, 0px);
|
|
299
305
|
padding-right: var(--space-table-horizontal-8bjibn, 0px);
|
|
300
306
|
}
|
|
301
307
|
|
|
302
|
-
.
|
|
308
|
+
.awsui_footer_wih1l_1kbu7_303:not(#\9) {
|
|
303
309
|
padding: var(--space-scaled-s-mjpukd, 12px) var(--space-table-footer-horizontal-5bg1nk, 20px);
|
|
304
310
|
}
|
|
305
311
|
|
|
306
|
-
.awsui_thead-
|
|
307
|
-
.
|
|
308
|
-
.awsui_row-
|
|
312
|
+
.awsui_thead-active_wih1l_1kbu7_312:not(#\9),
|
|
313
|
+
.awsui_row_wih1l_1kbu7_313:not(#\9),
|
|
314
|
+
.awsui_row-selected_wih1l_1kbu7_314:not(#\9) {
|
|
309
315
|
/* used in test-utils */
|
|
310
316
|
}
|
|
@@ -2,39 +2,40 @@
|
|
|
2
2
|
// es-module interop with Babel and Typescript
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
module.exports.default = {
|
|
5
|
-
"root": "
|
|
6
|
-
"tools": "
|
|
7
|
-
"tools-filtering": "awsui_tools-
|
|
8
|
-
"tools-align-right": "awsui_tools-align-
|
|
9
|
-
"tools-pagination": "awsui_tools-
|
|
10
|
-
"tools-preferences": "awsui_tools-
|
|
11
|
-
"tools-small": "awsui_tools-
|
|
12
|
-
"table": "
|
|
13
|
-
"table-layout-fixed": "awsui_table-layout-
|
|
14
|
-
"wrapper": "
|
|
15
|
-
"variant-stacked": "awsui_variant-
|
|
16
|
-
"variant-container": "awsui_variant-
|
|
17
|
-
"variant-embedded": "awsui_variant-
|
|
18
|
-
"variant-borderless": "awsui_variant-
|
|
19
|
-
"has-header": "awsui_has-
|
|
20
|
-
"has-footer": "awsui_has-
|
|
21
|
-
"cell-merged": "awsui_cell-
|
|
22
|
-
"cell-merged-content": "awsui_cell-merged-
|
|
23
|
-
"empty": "
|
|
24
|
-
"loading": "
|
|
25
|
-
"selection-control": "awsui_selection-
|
|
26
|
-
"selection-control-header": "awsui_selection-control-
|
|
27
|
-
"sticky-scrollbar": "awsui_sticky-
|
|
28
|
-
"sticky-scrollbar-content": "awsui_sticky-scrollbar-
|
|
29
|
-
"sticky-scrollbar-visible": "awsui_sticky-scrollbar-
|
|
30
|
-
"
|
|
31
|
-
"header
|
|
32
|
-
"
|
|
33
|
-
"header
|
|
34
|
-
"
|
|
35
|
-
"footer": "
|
|
36
|
-
"
|
|
37
|
-
"
|
|
38
|
-
"row
|
|
5
|
+
"root": "awsui_root_wih1l_1kbu7_97",
|
|
6
|
+
"tools": "awsui_tools_wih1l_1kbu7_108",
|
|
7
|
+
"tools-filtering": "awsui_tools-filtering_wih1l_1kbu7_114",
|
|
8
|
+
"tools-align-right": "awsui_tools-align-right_wih1l_1kbu7_128",
|
|
9
|
+
"tools-pagination": "awsui_tools-pagination_wih1l_1kbu7_132",
|
|
10
|
+
"tools-preferences": "awsui_tools-preferences_wih1l_1kbu7_132",
|
|
11
|
+
"tools-small": "awsui_tools-small_wih1l_1kbu7_138",
|
|
12
|
+
"table": "awsui_table_wih1l_1kbu7_144",
|
|
13
|
+
"table-layout-fixed": "awsui_table-layout-fixed_wih1l_1kbu7_150",
|
|
14
|
+
"wrapper": "awsui_wrapper_wih1l_1kbu7_154",
|
|
15
|
+
"variant-stacked": "awsui_variant-stacked_wih1l_1kbu7_163",
|
|
16
|
+
"variant-container": "awsui_variant-container_wih1l_1kbu7_163",
|
|
17
|
+
"variant-embedded": "awsui_variant-embedded_wih1l_1kbu7_167",
|
|
18
|
+
"variant-borderless": "awsui_variant-borderless_wih1l_1kbu7_167",
|
|
19
|
+
"has-header": "awsui_has-header_wih1l_1kbu7_170",
|
|
20
|
+
"has-footer": "awsui_has-footer_wih1l_1kbu7_173",
|
|
21
|
+
"cell-merged": "awsui_cell-merged_wih1l_1kbu7_190",
|
|
22
|
+
"cell-merged-content": "awsui_cell-merged-content_wih1l_1kbu7_201",
|
|
23
|
+
"empty": "awsui_empty_wih1l_1kbu7_216",
|
|
24
|
+
"loading": "awsui_loading_wih1l_1kbu7_220",
|
|
25
|
+
"selection-control": "awsui_selection-control_wih1l_1kbu7_229",
|
|
26
|
+
"selection-control-header": "awsui_selection-control-header_wih1l_1kbu7_236",
|
|
27
|
+
"sticky-scrollbar": "awsui_sticky-scrollbar_wih1l_1kbu7_241",
|
|
28
|
+
"sticky-scrollbar-content": "awsui_sticky-scrollbar-content_wih1l_1kbu7_250",
|
|
29
|
+
"sticky-scrollbar-visible": "awsui_sticky-scrollbar-visible_wih1l_1kbu7_253",
|
|
30
|
+
"sticky-scrollbar-native-invisible": "awsui_sticky-scrollbar-native-invisible_wih1l_1kbu7_256",
|
|
31
|
+
"dark-header": "awsui_dark-header_wih1l_1kbu7_264",
|
|
32
|
+
"header-secondary": "awsui_header-secondary_wih1l_1kbu7_269",
|
|
33
|
+
"table-has-header": "awsui_table-has-header_wih1l_1kbu7_285",
|
|
34
|
+
"header-controls": "awsui_header-controls_wih1l_1kbu7_289",
|
|
35
|
+
"footer-wrapper": "awsui_footer-wrapper_wih1l_1kbu7_303",
|
|
36
|
+
"footer": "awsui_footer_wih1l_1kbu7_303",
|
|
37
|
+
"thead-active": "awsui_thead-active_wih1l_1kbu7_312",
|
|
38
|
+
"row": "awsui_row_wih1l_1kbu7_313",
|
|
39
|
+
"row-selected": "awsui_row-selected_wih1l_1kbu7_314"
|
|
39
40
|
};
|
|
40
41
|
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { RefObject } from 'react';
|
|
2
|
+
export declare const updatePosition: (tableEl: HTMLElement | null, wrapperEl: HTMLElement | null, scrollbarEl: HTMLElement | null, scrollbarContentEl: HTMLElement | null, hasContainingBlock: boolean, consideredFooterHeight: number) => void;
|
|
2
3
|
export declare function useStickyScrollbar(scrollbarRef: RefObject<HTMLDivElement>, scrollbarContentRef: RefObject<HTMLDivElement>, tableRef: RefObject<HTMLTableElement>, wrapperRef: RefObject<HTMLDivElement>, footerHeight: number): void;
|
|
3
4
|
//# sourceMappingURL=use-sticky-scrollbar.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-sticky-scrollbar.d.ts","sourceRoot":"lib/default/","sources":["table/use-sticky-scrollbar.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAuB,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"use-sticky-scrollbar.d.ts","sourceRoot":"lib/default/","sources":["table/use-sticky-scrollbar.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAuB,MAAM,OAAO,CAAC;AAOvD,eAAO,MAAM,cAAc,YAChB,WAAW,GAAG,IAAI,aAChB,WAAW,GAAG,IAAI,eAChB,WAAW,GAAG,IAAI,sBACX,WAAW,GAAG,IAAI,sBAClB,OAAO,0BACH,MAAM,SA8C/B,CAAC;AAEF,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,SAAS,CAAC,cAAc,CAAC,EACvC,mBAAmB,EAAE,SAAS,CAAC,cAAc,CAAC,EAC9C,QAAQ,EAAE,SAAS,CAAC,gBAAgB,CAAC,EACrC,UAAU,EAAE,SAAS,CAAC,cAAc,CAAC,EACrC,YAAY,EAAE,MAAM,QAiErB"}
|
|
@@ -3,33 +3,19 @@
|
|
|
3
3
|
import { ResizeObserver } from '@juggle/resize-observer';
|
|
4
4
|
import { useEffect, useState } from 'react';
|
|
5
5
|
import styles from './styles.css.js';
|
|
6
|
-
import {
|
|
6
|
+
import { getOverflowParents } from '../internal/utils/scrollable-containers';
|
|
7
7
|
import { browserScrollbarSize } from '../internal/utils/browser-scrollbar-size';
|
|
8
8
|
import { supportsStickyPosition, getContainingBlock } from '../internal/utils/dom';
|
|
9
|
-
const updatePosition = (tableEl, wrapperEl, scrollbarEl, scrollbarContentEl, hasContainingBlock, consideredFooterHeight) => {
|
|
9
|
+
export const updatePosition = (tableEl, wrapperEl, scrollbarEl, scrollbarContentEl, hasContainingBlock, consideredFooterHeight) => {
|
|
10
10
|
if (!tableEl || !scrollbarEl || !wrapperEl) {
|
|
11
11
|
return;
|
|
12
12
|
}
|
|
13
|
-
|
|
14
|
-
const parent = getOverflowParentDimensions(wrapperEl)[0];
|
|
15
|
-
const parentBottom = parent.top + parent.height;
|
|
16
|
-
// table bottom is visible when
|
|
17
|
-
// 1. table bottom reached end of the window
|
|
18
|
-
// 2. table bottom is not overlapped by footer
|
|
19
|
-
const { top: tableTop, bottom: tableBottom, width: tableWidth } = tableEl.getBoundingClientRect();
|
|
13
|
+
const { width: tableWidth } = tableEl.getBoundingClientRect();
|
|
20
14
|
const { width: wrapperWidth } = wrapperEl.getBoundingClientRect();
|
|
21
|
-
//scrollbar correction is needed for
|
|
22
|
-
// #1 when scrollbars are constantly visible,
|
|
23
|
-
// we want no visible break when switching between fake and real scrollbars
|
|
24
|
-
// #2 when scrollbars are visible only on scrolling and half transparent (on mac)
|
|
25
|
-
// we want to avoid any overlap between fake and real scrollbar
|
|
26
15
|
// using 15 px as a height of transparent scrollbar on mac
|
|
27
16
|
const scrollbarHeight = browserScrollbarSize().height;
|
|
28
|
-
const scrollBarCorrection = scrollbarHeight > 0 ? scrollbarHeight : -15 / 2;
|
|
29
|
-
const tableBottomIsVisible = parentBottom - consideredFooterHeight >= tableBottom + scrollBarCorrection;
|
|
30
|
-
const tableTopIsHidden = tableTop >= parentBottom - consideredFooterHeight - scrollBarCorrection;
|
|
31
17
|
const areaIsScrollable = tableWidth > wrapperWidth;
|
|
32
|
-
if (
|
|
18
|
+
if (!areaIsScrollable) {
|
|
33
19
|
scrollbarEl.classList.remove(styles['sticky-scrollbar-visible']);
|
|
34
20
|
}
|
|
35
21
|
else {
|
|
@@ -41,23 +27,23 @@ const updatePosition = (tableEl, wrapperEl, scrollbarEl, scrollbarContentEl, has
|
|
|
41
27
|
});
|
|
42
28
|
}
|
|
43
29
|
scrollbarEl.classList.add(styles['sticky-scrollbar-visible']);
|
|
30
|
+
if (!scrollbarHeight) {
|
|
31
|
+
/* istanbul ignore next: covered by screenshot tests */
|
|
32
|
+
scrollbarEl.classList.add(styles['sticky-scrollbar-native-invisible']);
|
|
33
|
+
}
|
|
44
34
|
}
|
|
45
35
|
if (scrollbarHeight && scrollbarEl && scrollbarContentEl) {
|
|
46
36
|
scrollbarEl.style.height = `${scrollbarHeight}px`;
|
|
47
37
|
scrollbarContentEl.style.height = `${scrollbarHeight}px`;
|
|
48
38
|
}
|
|
49
39
|
if (tableEl && wrapperEl && scrollbarContentEl && scrollbarEl) {
|
|
50
|
-
const parent = getOverflowParentDimensions(wrapperEl)[0];
|
|
51
40
|
const wrapperElRect = wrapperEl.getBoundingClientRect();
|
|
52
41
|
const tableElRect = tableEl.getBoundingClientRect();
|
|
53
42
|
scrollbarEl.style.width = `${wrapperElRect.width}px`;
|
|
54
43
|
scrollbarContentEl.style.width = `${tableElRect.width}px`;
|
|
55
44
|
// when using sticky scrollbars in containers
|
|
56
45
|
// we agreed to ignore dynamic bottom calculations for footer overlap
|
|
57
|
-
scrollbarEl.style.
|
|
58
|
-
scrollbarEl.style.top = hasContainingBlock
|
|
59
|
-
? '0px'
|
|
60
|
-
: `${Math.min(parent.top + parent.height, window.innerHeight - consideredFooterHeight)}px`;
|
|
46
|
+
scrollbarEl.style.bottom = hasContainingBlock ? '0px' : `${consideredFooterHeight}px`;
|
|
61
47
|
}
|
|
62
48
|
};
|
|
63
49
|
export function useStickyScrollbar(scrollbarRef, scrollbarContentRef, tableRef, wrapperRef, footerHeight) {
|
|
@@ -70,19 +56,6 @@ export function useStickyScrollbar(scrollbarRef, scrollbarContentRef, tableRef,
|
|
|
70
56
|
// Because in this case, we think the footer is outside the overflow parent.
|
|
71
57
|
const [hasOverflowParent, setHasOverflowParent] = useState(false);
|
|
72
58
|
const consideredFooterHeight = hasContainingBlock || hasOverflowParent ? 0 : footerHeight;
|
|
73
|
-
// Update scrollbar position on window scroll.
|
|
74
|
-
useEffect(() => {
|
|
75
|
-
if (supportsStickyPosition()) {
|
|
76
|
-
const scrollHandler = () => {
|
|
77
|
-
updatePosition(tableRef.current, wrapperRef.current, scrollbarRef.current, scrollbarContentRef.current, hasContainingBlock, consideredFooterHeight);
|
|
78
|
-
};
|
|
79
|
-
scrollHandler();
|
|
80
|
-
window.addEventListener('scroll', scrollHandler, true);
|
|
81
|
-
return () => {
|
|
82
|
-
window.removeEventListener('scroll', scrollHandler, true);
|
|
83
|
-
};
|
|
84
|
-
}
|
|
85
|
-
}, [scrollbarRef, tableRef, wrapperRef, consideredFooterHeight, scrollbarContentRef, hasContainingBlock]);
|
|
86
59
|
const wrapperEl = wrapperRef.current;
|
|
87
60
|
useEffect(() => {
|
|
88
61
|
if (wrapperEl && supportsStickyPosition()) {
|
|
@@ -113,6 +86,7 @@ export function useStickyScrollbar(scrollbarRef, scrollbarContentRef, tableRef,
|
|
|
113
86
|
const resizeHandler = () => {
|
|
114
87
|
updatePosition(tableRef.current, wrapperRef.current, scrollbarRef.current, scrollbarContentRef.current, hasContainingBlock, consideredFooterHeight);
|
|
115
88
|
};
|
|
89
|
+
resizeHandler();
|
|
116
90
|
window.addEventListener('resize', resizeHandler);
|
|
117
91
|
return () => {
|
|
118
92
|
window.removeEventListener('resize', resizeHandler);
|