@procore/core-react 12.44.0 → 12.45.0
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/CHANGELOG.md +20 -0
- package/dist/AnchorNavigation/AnchorNavigation.js +12 -8
- package/dist/AnchorNavigation/AnchorNavigation.js.map +1 -1
- package/dist/AnchorNavigation/AnchorNavigation.styles.js +5 -5
- package/dist/AnchorNavigation/AnchorNavigation.styles.js.map +1 -1
- package/dist/AnchorNavigation/AnchorNavigation.types.d.ts +1 -0
- package/dist/AnchorNavigation/AnchorNavigation.types.js.map +1 -1
- package/dist/Avatar/Avatar.styles.js +5 -5
- package/dist/AvatarStack/AvatarStack.js +3 -1
- package/dist/AvatarStack/AvatarStack.js.map +1 -1
- package/dist/AvatarStack/AvatarStack.styles.js +7 -7
- package/dist/Badge/Badge.styles.js +2 -2
- package/dist/BadgePill/BadgePill.styles.js +4 -4
- package/dist/Banner/Banner.styles.js +10 -10
- package/dist/Box/Box.styles.js +1 -1
- package/dist/Breadcrumbs/Breadcrumbs.styles.js +4 -4
- package/dist/Button/Button.styles.js +5 -5
- package/dist/Button/Button.types.d.ts +5 -0
- package/dist/Button/Button.types.js.map +1 -1
- package/dist/Calendar/Calendar.styles.js +9 -9
- package/dist/Card/Card.styles.js +1 -1
- package/dist/Checkbox/Checkbox.styles.js +6 -6
- package/dist/ContactItem/ContactItem.styles.js +5 -5
- package/dist/Content/Content.styles.js +2 -2
- package/dist/DateInput/DateInput.styles.js +6 -6
- package/dist/DetailPage/DetailPage.styles.js +7 -7
- package/dist/Dropdown/Dropdown.js +5 -2
- package/dist/Dropdown/Dropdown.js.map +1 -1
- package/dist/Dropdown/Dropdown.styles.js +3 -3
- package/dist/Dropdown/Dropdown.types.d.ts +1 -1
- package/dist/Dropdown/Dropdown.types.js.map +1 -1
- package/dist/DropdownFlyout/DropdownFlyout.styles.js +4 -4
- package/dist/Dropzone/Dropzone.js +1 -1
- package/dist/Dropzone/Dropzone.styles.js +9 -9
- package/dist/EmptyState/EmptyState.styles.js +6 -6
- package/dist/Field/Field.styles.js +3 -3
- package/dist/FileList/FileList.styles.js +3 -3
- package/dist/FileSelect/FileExplorer/FileExplorer.styles.js +9 -9
- package/dist/FileSelect/FileExplorer/FileExplorerSidebar.styles.js +3 -3
- package/dist/FileSelect/FileSelect.styles.js +2 -2
- package/dist/FileSelect/FileSelectDropzone/FileSelectDropzone.styles.js +3 -3
- package/dist/FileSelect/FileTokenList/FileTokenList.styles.js +2 -2
- package/dist/FileSelect/GridSource/GridSource.styles.js +6 -6
- package/dist/FileSelect/LocalSource/LocalSource.styles.js +4 -4
- package/dist/FileSelect/SourceItem/SourceItem.styles.js +3 -3
- package/dist/FileSelect/ThumbnailList/ThumbnailList.styles.js +6 -6
- package/dist/FileSelect/TreeSource/TreeSource.styles.js +1 -1
- package/dist/FileToken/FileToken.styles.js +6 -6
- package/dist/FilterToken/FilterToken.styles.js +5 -5
- package/dist/FlexList/FlexList.styles.js +1 -1
- package/dist/Form/Form.js +11 -4
- package/dist/Form/Form.js.map +1 -1
- package/dist/Form/Form.styles.d.ts +518 -8
- package/dist/Form/Form.styles.js +15 -15
- package/dist/Form/Form.styles.js.map +1 -1
- package/dist/Form/Form.types.d.ts +2 -3
- package/dist/Form/Form.types.js.map +1 -1
- package/dist/Form/StyledFormikForm.styles.js +2 -2
- package/dist/Form/stories/util.js +3 -14
- package/dist/Form/stories/util.js.map +1 -1
- package/dist/GhostPlaceholder/GhostPlaceholder.styles.js +2 -2
- package/dist/Grid/Grid.styles.js +2 -2
- package/dist/GroupSelect/GroupSelect.styles.js +1 -1
- package/dist/Input/Input.styles.js +1 -1
- package/dist/Link/Link.styles.js +1 -1
- package/dist/ListPage/ListPage.styles.js +8 -8
- package/dist/Loader/Loader.styles.js +2 -2
- package/dist/MenuImperative/MenuImperative.js +6 -4
- package/dist/MenuImperative/MenuImperative.js.map +1 -1
- package/dist/MenuImperative/MenuImperative.styles.js +13 -13
- package/dist/MenuImperative/MenuImperative.styles.js.map +1 -1
- package/dist/MenuImperative/MenuImperative.types.d.ts +2 -4
- package/dist/MenuImperative/MenuImperative.types.js.map +1 -1
- package/dist/Modal/Modal.styles.js +13 -13
- package/dist/MultiSelect/MultiSelect.js +0 -2
- package/dist/MultiSelect/MultiSelect.js.map +1 -1
- package/dist/MultiSelect/MultiSelect.styles.js +8 -8
- package/dist/NextMenu/NextMenu.styles.js +3 -3
- package/dist/Notation/Notation.js +1 -1
- package/dist/NumberInput/NumberInput.styles.js +7 -7
- package/dist/Overlay/OverlayArrow.styles.js +1 -1
- package/dist/OverlayTrigger/OverlayTrigger.js +6 -0
- package/dist/OverlayTrigger/OverlayTrigger.js.map +1 -1
- package/dist/PageLayout/PageLayout.styles.js +16 -16
- package/dist/PageTemplate/PageFooterTemplate/PageFooterTemplate.styles.js +1 -1
- package/dist/PageTemplate/PageHeaderTemplate/PageHeaderTemplate.styles.js +3 -3
- package/dist/PageTemplate/PagePaneTemplate/PagePaneTemplate.styles.js +2 -2
- package/dist/PageTemplate/PageTemplate/PageTemplate.styles.js +3 -3
- package/dist/Pagination/Pagination.styles.js +5 -5
- package/dist/Panel/Panel.styles.js +11 -11
- package/dist/Pill/Pill.styles.js +3 -3
- package/dist/PillSelect/PillSelect.js +0 -1
- package/dist/PillSelect/PillSelect.js.map +1 -1
- package/dist/PillSelect/PillSelect.styles.js +4 -4
- package/dist/Popover/Popover.styles.js +2 -2
- package/dist/Portal/Portal.styles.js +1 -1
- package/dist/ProgressBar/ProgressBar.styles.js +2 -2
- package/dist/RadioButton/RadioButton.styles.js +3 -3
- package/dist/Required/Required.styles.js +3 -3
- package/dist/Search/Search.styles.js +5 -5
- package/dist/Section/Section.styles.js +7 -7
- package/dist/SegmentedController/SegmentedController.styles.js +4 -4
- package/dist/Select/Select.js +2 -1
- package/dist/Select/Select.js.map +1 -1
- package/dist/Select/Select.styles.js +8 -8
- package/dist/Semantic/Semantic.styles.js +9 -9
- package/dist/Slider/Slider.js +4 -1
- package/dist/Slider/Slider.js.map +1 -1
- package/dist/Slider/Slider.styles.d.ts +5 -1
- package/dist/Slider/Slider.styles.js +16 -11
- package/dist/Slider/Slider.styles.js.map +1 -1
- package/dist/Spinner/Spinner.styles.js +7 -7
- package/dist/SplitViewCard/SplitViewCard.styles.js +8 -8
- package/dist/SuperSelect/SuperSelect.presets.styles.js +1 -1
- package/dist/SuperSelect/SuperSelect.styles.js +39 -39
- package/dist/Switch/Switch.styles.js +4 -4
- package/dist/Table/Table.js +19 -14
- package/dist/Table/Table.js.map +1 -1
- package/dist/Table/Table.styles.d.ts +10 -9
- package/dist/Table/Table.styles.js +43 -39
- package/dist/Table/Table.styles.js.map +1 -1
- package/dist/TableShelf/TableShelf.styles.js +5 -5
- package/dist/Tabs/Tabs.js +41 -28
- package/dist/Tabs/Tabs.js.map +1 -1
- package/dist/Tabs/Tabs.styles.d.ts +6 -0
- package/dist/Tabs/Tabs.styles.js +29 -20
- package/dist/Tabs/Tabs.styles.js.map +1 -1
- package/dist/Tabs/Tabs.types.d.ts +8 -0
- package/dist/Tabs/Tabs.types.js.map +1 -1
- package/dist/Tearsheet/Tearsheet.styles.js +5 -5
- package/dist/TextArea/TextArea.styles.js +1 -1
- package/dist/TextEditorOutput/TextEditorOutput.styles.js +1 -1
- package/dist/Thumbnail/Thumbnail.js +4 -0
- package/dist/Thumbnail/Thumbnail.js.map +1 -1
- package/dist/Thumbnail/Thumbnail.styles.js +17 -17
- package/dist/Thumbnail/Thumbnail.types.d.ts +12 -0
- package/dist/Thumbnail/Thumbnail.types.js.map +1 -1
- package/dist/Thumbnail/ThumbnailCaption.d.ts +1 -1
- package/dist/Thumbnail/ThumbnailCaption.js +15 -7
- package/dist/Thumbnail/ThumbnailCaption.js.map +1 -1
- package/dist/ThumbnailGrid/ThumbnailGrid.styles.js +7 -7
- package/dist/TieredSelect/TieredSelect.styles.js +9 -9
- package/dist/Tile/Tile.styles.js +8 -8
- package/dist/Title/Title.styles.js +7 -7
- package/dist/Toast/Toast.styles.js +3 -3
- package/dist/ToggleButton/ToggleButton.styles.js +1 -1
- package/dist/Token/Token.styles.js +3 -3
- package/dist/ToolHeader/ToolHeader.styles.js +6 -6
- package/dist/ToolLandingPage/ToolLandingPage.styles.js +3 -3
- package/dist/Tooltip/Tooltip.styles.js +3 -3
- package/dist/Tree/Tree.js +1 -1
- package/dist/Tree/Tree.styles.js +10 -10
- package/dist/Typeahead/Typeahead.styles.js +3 -3
- package/dist/Typography/Typography.styles.js +1 -1
- package/dist/Typography/Typography.table.story.js +2 -2
- package/dist/_hooks/I18n.d.ts +744 -30
- package/dist/_locales/de-DE.json +20 -2
- package/dist/_locales/en-AU.json +20 -2
- package/dist/_locales/en-CA.json +20 -2
- package/dist/_locales/en-GB.json +20 -2
- package/dist/_locales/en.json +1 -0
- package/dist/_locales/es-ES.json +21 -3
- package/dist/_locales/es.json +20 -2
- package/dist/_locales/fr-CA.json +21 -3
- package/dist/_locales/fr-FR.json +26 -8
- package/dist/_locales/is-IS.json +20 -2
- package/dist/_locales/it-IT.json +20 -2
- package/dist/_locales/ja-JP.json +21 -3
- package/dist/_locales/nb-NO.json +410 -1
- package/dist/_locales/pl-PL.json +20 -2
- package/dist/_locales/pseudo.json +1 -0
- package/dist/_locales/pt-BR.json +20 -2
- package/dist/_locales/pt-PT.json +23 -5
- package/dist/_locales/th-TH.json +20 -2
- package/dist/_locales/zh-SG.json +20 -2
- package/dist/_locales/zh-TW.json +23 -5
- package/dist/_storyHelpers_/components/Deprecation.styles.js +1 -1
- package/dist/_storyHelpers_/components/StoryGrid.js +3 -3
- package/dist/_typedoc/AnchorNavigation/AnchorNavigation.types.json +4 -4
- package/dist/_typedoc/Avatar/Avatar.types.json +20 -20
- package/dist/_typedoc/AvatarStack/AvatarStack.types.json +25 -25
- package/dist/_typedoc/Badge/Badge.types.json +6 -6
- package/dist/_typedoc/Banner/Banner.types.json +15 -15
- package/dist/_typedoc/Box/Box.types.json +68 -68
- package/dist/_typedoc/Breadcrumbs/Breadcrumbs.types.json +10 -10
- package/dist/_typedoc/Button/Button.types.json +24 -13
- package/dist/_typedoc/Calendar/Calendar.types.json +80 -80
- package/dist/_typedoc/Card/Card.types.json +6 -6
- package/dist/_typedoc/Checkbox/Checkbox.types.json +8 -8
- package/dist/_typedoc/ContactItem/ContactItem.types.json +9 -9
- package/dist/_typedoc/DateInput/DateInput.types.json +35 -35
- package/dist/_typedoc/DateSelect/DateSelect.types.json +13 -13
- package/dist/_typedoc/DetailPage/DetailPage.types.json +5 -5
- package/dist/_typedoc/Dropdown/Dropdown.types.json +50 -38
- package/dist/_typedoc/DropdownFlyout/DropdownFlyout.types.json +31 -31
- package/dist/_typedoc/Dropzone/Dropzone.types.json +44 -44
- package/dist/_typedoc/EmptyState/EmptyState.types.json +16 -16
- package/dist/_typedoc/FileList/FileList.types.json +9 -9
- package/dist/_typedoc/FileSelect/FileSelect.types.json +27 -27
- package/dist/_typedoc/FileSelect/GridSource/GridSource.types.json +20 -20
- package/dist/_typedoc/FileSelect/LocalSource/LocalSource.types.json +14 -14
- package/dist/_typedoc/FileSelect/TreeSource/TreeSource.types.json +9 -9
- package/dist/_typedoc/Flex/Flex.types.json +27 -27
- package/dist/_typedoc/FlexList/FlexList.types.json +30 -30
- package/dist/_typedoc/Form/Form.types.json +824 -824
- package/dist/_typedoc/GhostPlaceholder/GhostPlaceholder.types.json +12 -12
- package/dist/_typedoc/Grid/Grid.types.json +8 -8
- package/dist/_typedoc/GroupSelect/GroupSelect.types.json +54 -54
- package/dist/_typedoc/Input/Input.types.json +2 -2
- package/dist/_typedoc/Link/Link.types.json +1 -1
- package/dist/_typedoc/ListPage/ListPage.types.json +13 -13
- package/dist/_typedoc/Menu/Menu.types.json +62 -62
- package/dist/_typedoc/MenuImperative/MenuImperative.types.json +90 -88
- package/dist/_typedoc/Modal/Modal.types.json +48 -48
- package/dist/_typedoc/MultiSelect/MultiSelect.types.json +33 -33
- package/dist/_typedoc/NextTile/NextTile.types.json +32 -32
- package/dist/_typedoc/Notation/Notation.types.json +4 -4
- package/dist/_typedoc/NumberInput/NumberInput.types.json +48 -48
- package/dist/_typedoc/OverlayTrigger/OverlayTrigger.types.json +33 -33
- package/dist/_typedoc/PageLayout/PageLayout.types.json +28 -28
- package/dist/_typedoc/Pagination/Pagination.types.json +7 -7
- package/dist/_typedoc/Panel/Panel.types.json +38 -27
- package/dist/_typedoc/Pill/Pill.types.json +2 -2
- package/dist/_typedoc/PillSelect/PillSelect.types.json +49 -49
- package/dist/_typedoc/Popover/Popover.types.json +15 -15
- package/dist/_typedoc/ProgressBar/ProgressBar.types.json +7 -7
- package/dist/_typedoc/RadioButton/RadioButton.types.json +6 -6
- package/dist/_typedoc/Required/Required.types.json +5 -5
- package/dist/_typedoc/Search/Search.types.json +18 -18
- package/dist/_typedoc/Section/Section.types.json +15 -15
- package/dist/_typedoc/SegmentedController/SegmentedController.types.json +21 -21
- package/dist/_typedoc/Select/Select.types.json +67 -67
- package/dist/_typedoc/SettingsPage/SettingsPage.types.json +10 -10
- package/dist/_typedoc/Slider/Slider.types.json +6 -6
- package/dist/_typedoc/Spinner/Spinner.types.json +9 -9
- package/dist/_typedoc/SplitViewCard/SplitViewCard.types.json +14 -14
- package/dist/_typedoc/Table/Table.types.json +102 -102
- package/dist/_typedoc/Tabs/Tabs.types.json +23 -22
- package/dist/_typedoc/Tearsheet/Tearsheet.types.json +17 -17
- package/dist/_typedoc/TextArea/TextArea.types.json +3 -3
- package/dist/_typedoc/TextEditor/TextEditor.types.json +11 -11
- package/dist/_typedoc/TextEditorOutput/TextEditorOutput.types.json +4 -4
- package/dist/_typedoc/Thumbnail/Thumbnail.types.json +19 -19
- package/dist/_typedoc/TieredDropdown/TieredDropdown.types.json +43 -43
- package/dist/_typedoc/TieredSelect/TieredSelect.types.json +29 -29
- package/dist/_typedoc/Tile/Tile.types.json +8 -8
- package/dist/_typedoc/Title/Title.types.json +1 -1
- package/dist/_typedoc/Toast/Toast.types.json +4 -4
- package/dist/_typedoc/ToggleButton/ToggleButton.types.json +4 -4
- package/dist/_typedoc/Token/Token.types.json +7 -7
- package/dist/_typedoc/ToolHeader/ToolHeader.types.json +10 -10
- package/dist/_typedoc/ToolLandingPage/ToolLandingPage.types.json +8 -8
- package/dist/_typedoc/Tooltip/Tooltip.types.json +15 -15
- package/dist/_typedoc/Tree/Tree.types.json +88 -88
- package/dist/_typedoc/Typeahead/Typeahead.types.json +2 -2
- package/dist/_typedoc/Typography/Typography.types.json +9 -9
- package/dist/_typedoc/_utils/types.json +3 -3
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tabs.styles.js","names":["styled","css","Card","StyledItem","getTypographyIntent","colors","spacing","hiddenTab","visible","borderRadius","xs","StyledTabBase","div","withConfig","displayName","componentId","StyledTabInnerBase","StyledDropdownTabBase","getTabStyle","xl","_ref","$selected","gray15","_ref2","$dark","gray90","blue40","StyledTab","StyledTabInner","_ref3","_ref4","white","gray70","StyledDropdownTab","StyledDropdownTabInner","StyledLink","span","getHelixHeaderTabStyles","sm","blue70","_ref5","gray30","StyledGlobalNavigationTab","StyledGlobalNavigationDropdownTab","StyledGlobalNavigationDropdownTabInner","StyledGlobalNavigationLink","StyledOverlay","blue50","StyledTabList","StyledTabs","_ref6","_ref7","$index","_ref8","_ref8$$index","getStyledComponents","helixHeader","arguments","length","undefined","Tab","TabInner","Link","DropdownTab","DropdownTabInner"],"sources":["../../src/Tabs/Tabs.styles.ts"],"sourcesContent":["import styled, { css } from 'styled-components'\nimport { Card } from '../Card'\nimport { StyledItem } from '../MenuImperative/MenuImperative.styles'\nimport { getTypographyIntent } from '../Typography'\nimport { colors } from '../_styles/colors'\nimport { spacing } from '../_styles/spacing'\n\ntype TabStyleProps = {\n $selected?: boolean\n $dark?: boolean\n}\n\nconst hiddenTab = css`\n pointer-events: none;\n position: absolute;\n visibility: hidden;\n`\n\nconst visible = css`\n pointer-events: all;\n position: relative;\n visibility: visible;\n`\n\nconst borderRadius = css`\n border-radius: ${spacing.xs}px ${spacing.xs}px 0 0;\n`\n\n//// START BASE LAYOUT COMPONENTS FOR TABS ////\n\n/**\n * Elements to handle general layout and browser resets.\n * Will be the referencable element (class) other selectors\n * that need to target general layout references.\n */\nconst StyledTabBase = styled.div<TabStyleProps>`\n align-items: center;\n box-sizing: border-box;\n cursor: pointer;\n display: inline-flex;\n flex: 0 0 auto;\n justify-content: center;\n position: relative;\n white-space: nowrap;\n\n // Browser button and anchor style resets\n text-decoration: none;\n background-color: transparent;\n border: none;\n font-family: inherit;\n padding: 0;\n`\n\nconst StyledTabInnerBase = styled.div<TabStyleProps>`\n align-self: baseline;\n box-sizing: border-box;\n\n &,\n > a {\n display: flex;\n text-decoration: none;\n width: 100%;\n }\n`\n\n// This so that it can be visible/hidden via CSS down below\nconst StyledDropdownTabBase = styled(StyledTabBase)`\n ${hiddenTab}\n`\n\n//// END BASE LAYOUT COMPONENTS FOR TABS ////\n\n//// START TRADITIONAL DESIGN SYSTEM TAB STYLES ////\n\n/**\n * Styles specific to the Design System general cases (not Global nav)\n */\nfunction getTabStyle() {\n return css<TabStyleProps>`\n ${borderRadius};\n height: 26px;\n\n & + ${StyledTabBase} {\n margin-left: ${spacing.xl}px;\n }\n\n a& {\n ${borderRadius}\n }\n\n &,\n a&,\n button& {\n ${({ $selected }) => {\n if ($selected) {\n return css`\n border-bottom: 3px solid ${colors.gray15};\n `\n }\n }}\n }\n\n &:focus-visible,\n &:hover {\n background: ${({ $dark }) => ($dark ? 'transparent' : colors.gray90)};\n }\n\n &:focus-visible {\n box-shadow: inset 0 0 0 2px ${colors.blue40};\n outline: none;\n\n a {\n outline: none;\n }\n }\n `\n}\n\nconst StyledTab = styled(StyledTabBase)<TabStyleProps>`\n ${getTabStyle}\n`\n\nconst StyledTabInner = styled(StyledTabInnerBase)<TabStyleProps>`\n ${getTypographyIntent('body')}\n\n padding: 0 ${spacing.xs}px;\n font-weight: ${({ $selected }) => ($selected ? 600 : 400)};\n\n &,\n > a {\n ${borderRadius};\n color: ${colors.gray15};\n height: 23px;\n }\n\n & a:focus-visible {\n outline: 2px solid ${colors.blue40};\n outline-offset: -1px;\n border-radius: ${spacing.xs}px;\n }\n\n /* TODO: Dark mode was not considered for helix updates,\n * matching previous UX patterns - April 2nd 2024\n */\n ${({ $selected, $dark }) => {\n if ($dark) {\n return css`\n &,\n > a,\n button&,\n a& {\n color: ${$selected ? colors.white : colors.gray70};\n\n &:hover {\n color: white;\n }\n }\n `\n }\n }}\n`\n\nconst StyledDropdownTab = styled(StyledDropdownTabBase)`\n ${getTabStyle}\n`\n\nconst StyledDropdownTabInner = styled(StyledTabInner)`\n align-items: center;\n cursor: pointer;\n display: inline-flex;\n`\n\nconst StyledLink = styled.span`\n align-items: center;\n display: flex;\n height: 23px; // TODO one-off\n ${borderRadius};\n box-sizing: border-box;\n`\n\n//// END TRADITIONAL DESIGN SYSTEM TAB STYLES ////\n\n//// START HELIX GLOBAL NAVIGATION TAB STYLES ////\n\nfunction getHelixHeaderTabStyles() {\n return css<TabStyleProps>`\n border-radius: 4px;\n color: ${colors.white};\n height: 24px;\n overflow: hidden;\n padding: ${spacing.xs}px;\n text-align: center;\n\n ${getTypographyIntent('small')};\n font-weight: 600; // Different than typograhy intent small, must be defined after\n\n & + ${StyledTabBase} {\n margin-left: ${spacing.sm}px;\n }\n\n &:hover {\n background: rgba(117, 131, 138, 0.3);\n color: ${colors.white};\n text-decoration: none;\n }\n\n &:focus-visible {\n outline: 2px solid ${colors.blue70};\n outline-offset: -2px;\n background: rgba(117, 131, 138, 0.3);\n }\n\n ${({ $selected }) => {\n if ($selected) {\n return css`\n background: ${colors.gray30};\n `\n }\n }}\n `\n}\n\nconst StyledGlobalNavigationTab = styled(StyledTabBase)`\n ${getHelixHeaderTabStyles}\n`\n\nconst StyledGlobalNavigationDropdownTab = styled(StyledDropdownTabBase)`\n ${getHelixHeaderTabStyles}\n`\n\nconst StyledGlobalNavigationDropdownTabInner = styled(StyledTabInnerBase)`\n align-items: center;\n cursor: pointer;\n display: inline-flex;\n`\n\nconst StyledGlobalNavigationLink = styled.span`\n padding-left: 6px;\n padding-right: 6px;\n`\n\n//// END HELIX GLOBAL NAVIGATION TAB STYLES ////\n\nexport const StyledOverlay = styled(Card)`\n max-height: 40vh;\n\n ${StyledItem} {\n padding: 0;\n display: flex;\n justify-content: center;\n\n a {\n margin: unset;\n padding: unset;\n &:focus-visible {\n outline-offset: 1px;\n }\n }\n }\n\n ${StyledLink} {\n padding: 0;\n display: flex;\n }\n\n ${StyledTabInnerBase} {\n // unsure why top and bottom are not uniform\n // design docs show uniform 4px\n padding: 2px 16px 4px 16px;\n }\n\n ${StyledLink},\n ${StyledTabBase} {\n color: ${colors.gray15};\n border-radius: 0;\n display: flex;\n width: 100%;\n\n background: inherit;\n font-weight: inherit;\n font-size: inherit;\n padding: 0;\n }\n\n [data-selected='true'] {\n ${StyledLink}, ${StyledTabBase} {\n border-bottom-color: transparent;\n color: ${colors.blue50};\n }\n }\n`\n\nexport const StyledTabList = styled.div`\n display: flex;\n width: 100%;\n`\n\nexport const StyledTabs = styled.div<{\n $dark?: boolean\n $index?: number\n}>`\n background-color: ${({ $dark }) => $dark && colors.gray15};\n display: flex;\n overflow: hidden;\n width: 100%;\n\n ${StyledTabBase} {\n // we want to hide all tabs after overflow index\n &:nth-child(1n + ${({ $index }) => $index}) {\n // but not the \"More\" dropdown tab\n &:not(${StyledDropdownTabBase}) {\n ${hiddenTab}\n }\n }\n }\n\n ${({ $index = -1 }) =>\n $index >= 0 &&\n css`\n ${StyledDropdownTabBase} {\n ${visible}\n }\n `}\n`\n\n/**\n * Switches between different Tab styles of traditional and helix header navigation.\n * Allows separate style CSS without conditionals across all the components.\n * @returns Subcomponents to render\n */\nexport function getStyledComponents(helixHeader = false) {\n if (helixHeader) {\n return {\n Tab: StyledGlobalNavigationTab,\n TabInner: StyledTabInnerBase,\n Link: StyledGlobalNavigationLink,\n DropdownTab: StyledGlobalNavigationDropdownTab,\n DropdownTabInner: StyledGlobalNavigationDropdownTabInner,\n }\n }\n return {\n Tab: StyledTab,\n TabInner: StyledTabInner,\n Link: StyledLink,\n DropdownTab: StyledDropdownTab,\n DropdownTabInner: StyledDropdownTabInner,\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Tabs.styles.js","names":["styled","css","Card","StyledItem","getTypographyIntent","colors","spacing","hiddenTab","visible","borderRadius","xs","StyledTabBase","div","withConfig","displayName","componentId","StyledTabInnerBase","StyledDropdownTabBase","getTabStyle","xl","_ref","$selected","gray15","_ref2","$dark","gray90","blue40","StyledTab","StyledTabInner","_ref3","_ref4","white","gray70","StyledDropdownTab","StyledDropdownTabInner","StyledLink","span","getHelixHeaderTabStyles","sm","blue70","_ref5","gray30","StyledGlobalNavigationTab","StyledGlobalNavigationDropdownTab","StyledGlobalNavigationDropdownTabInner","StyledGlobalNavigationLink","StyledOverlay","blue50","StyledTabList","StyledTabs","_ref6","_ref7","$index","_ref8","_ref8$$index","StyledMoreLi","li","_ref9","$helix","getStyledComponents","helixHeader","arguments","length","undefined","Tab","TabInner","Link","DropdownTab","DropdownTabInner","MoreLi"],"sources":["../../src/Tabs/Tabs.styles.ts"],"sourcesContent":["import styled, { css } from 'styled-components'\nimport { Card } from '../Card'\nimport { StyledItem } from '../MenuImperative/MenuImperative.styles'\nimport { getTypographyIntent } from '../Typography'\nimport { colors } from '../_styles/colors'\nimport { spacing } from '../_styles/spacing'\n\ntype TabStyleProps = {\n $selected?: boolean\n $dark?: boolean\n}\n\nconst hiddenTab = css`\n pointer-events: none;\n position: absolute;\n visibility: hidden;\n`\n\nconst visible = css`\n pointer-events: all;\n position: relative;\n visibility: visible;\n`\n\nconst borderRadius = css`\n border-radius: ${spacing.xs}px ${spacing.xs}px 0 0;\n`\n\n//// START BASE LAYOUT COMPONENTS FOR TABS ////\n\n/**\n * Elements to handle general layout and browser resets.\n * Will be the referencable element (class) other selectors\n * that need to target general layout references.\n */\nconst StyledTabBase = styled.div<TabStyleProps>`\n align-items: center;\n box-sizing: border-box;\n cursor: pointer;\n display: inline-flex;\n flex: 0 0 auto;\n justify-content: center;\n position: relative;\n white-space: nowrap;\n\n // Browser button and anchor style resets\n text-decoration: none;\n background-color: transparent;\n border: none;\n font-family: inherit;\n padding: 0;\n`\n\nconst StyledTabInnerBase = styled.div<TabStyleProps>`\n align-self: baseline;\n box-sizing: border-box;\n\n &,\n > a {\n display: flex;\n text-decoration: none;\n width: 100%;\n }\n`\n\n// This so that it can be visible/hidden via CSS down below\nconst StyledDropdownTabBase = styled(StyledTabBase)`\n ${hiddenTab}\n`\n\n//// END BASE LAYOUT COMPONENTS FOR TABS ////\n\n//// START TRADITIONAL DESIGN SYSTEM TAB STYLES ////\n\n/**\n * Styles specific to the Design System general cases (not Global nav)\n */\nfunction getTabStyle() {\n return css<TabStyleProps>`\n ${borderRadius};\n height: 26px;\n\n & + ${StyledTabBase} {\n margin-left: ${spacing.xl}px;\n }\n\n a& {\n ${borderRadius}\n }\n\n &,\n a&,\n button& {\n ${({ $selected }) => {\n if ($selected) {\n return css`\n border-bottom: 3px solid ${colors.gray15};\n `\n }\n }}\n }\n\n &:focus-visible,\n &:hover {\n background: ${({ $dark }) => ($dark ? 'transparent' : colors.gray90)};\n }\n\n &:focus-visible {\n box-shadow: inset 0 0 0 2px ${colors.blue40};\n outline: none;\n\n a {\n outline: none;\n }\n }\n `\n}\n\nconst StyledTab = styled(StyledTabBase)<TabStyleProps>`\n ${getTabStyle}\n`\n\nconst StyledTabInner = styled(StyledTabInnerBase)<TabStyleProps>`\n ${getTypographyIntent('body')}\n\n padding: 0 ${spacing.xs}px;\n font-weight: ${({ $selected }) => ($selected ? 600 : 400)};\n\n &,\n > a {\n ${borderRadius};\n color: ${colors.gray15};\n height: 23px;\n }\n\n & a:focus-visible {\n outline: 2px solid ${colors.blue40};\n outline-offset: -1px;\n border-radius: ${spacing.xs}px;\n }\n\n /* TODO: Dark mode was not considered for helix updates,\n * matching previous UX patterns - April 2nd 2024\n */\n ${({ $selected, $dark }) => {\n if ($dark) {\n return css`\n &,\n > a,\n button&,\n a& {\n color: ${$selected ? colors.white : colors.gray70};\n\n &:hover {\n color: white;\n }\n }\n `\n }\n }}\n`\n\nconst StyledDropdownTab = styled(StyledDropdownTabBase)`\n ${getTabStyle}\n`\n\nconst StyledDropdownTabInner = styled(StyledTabInner)`\n align-items: center;\n cursor: pointer;\n display: inline-flex;\n`\n\nconst StyledLink = styled.span`\n align-items: center;\n display: flex;\n height: 23px; // TODO one-off\n ${borderRadius};\n box-sizing: border-box;\n`\n\n//// END TRADITIONAL DESIGN SYSTEM TAB STYLES ////\n\n//// START HELIX GLOBAL NAVIGATION TAB STYLES ////\n\nfunction getHelixHeaderTabStyles() {\n return css<TabStyleProps>`\n border-radius: 4px;\n color: ${colors.white};\n height: 24px;\n overflow: hidden;\n padding: ${spacing.xs}px;\n text-align: center;\n\n ${getTypographyIntent('small')};\n font-weight: 600; // Different than typograhy intent small, must be defined after\n\n & + ${StyledTabBase} {\n margin-left: ${spacing.sm}px;\n }\n\n a {\n color: ${colors.white};\n }\n\n &:hover {\n background: rgba(117, 131, 138, 0.3);\n color: ${colors.white};\n text-decoration: none;\n }\n\n &:focus-visible,\n &:has(a:focus) {\n outline: 2px solid ${colors.blue70};\n outline-offset: -2px;\n background: rgba(117, 131, 138, 0.3);\n a {\n outline: none;\n }\n }\n\n ${({ $selected }) => {\n if ($selected) {\n return css`\n background: ${colors.gray30};\n `\n }\n }}\n `\n}\n\nconst StyledGlobalNavigationTab = styled(StyledTabBase)`\n ${getHelixHeaderTabStyles}\n`\n\nconst StyledGlobalNavigationDropdownTab = styled(StyledDropdownTabBase)`\n ${getHelixHeaderTabStyles}\n`\n\nconst StyledGlobalNavigationDropdownTabInner = styled(StyledTabInnerBase)`\n align-items: center;\n cursor: pointer;\n display: inline-flex;\n`\n\nconst StyledGlobalNavigationLink = styled.span`\n padding-left: 6px;\n padding-right: 6px;\n`\n\n//// END HELIX GLOBAL NAVIGATION TAB STYLES ////\n\nexport const StyledOverlay = styled(Card)`\n max-height: 40vh;\n\n ${StyledItem} {\n padding: 0;\n display: flex;\n justify-content: center;\n\n a {\n color: unset;\n margin: unset;\n padding: unset;\n &:focus-visible {\n outline-offset: 1px;\n }\n }\n }\n\n ${StyledLink} {\n padding: 0;\n display: flex;\n }\n\n ${StyledTabInnerBase} {\n // unsure why top and bottom are not uniform\n // design docs show uniform 4px\n padding: 2px 16px 4px 16px;\n }\n\n ${StyledLink},\n ${StyledTabBase} {\n color: ${colors.gray15};\n border-radius: 0;\n display: flex;\n width: 100%;\n\n background: inherit;\n font-weight: inherit;\n font-size: inherit;\n padding: 0;\n }\n\n [data-selected='true'] {\n ${StyledLink}, ${StyledTabBase} {\n border-bottom-color: transparent;\n color: ${colors.blue50};\n }\n }\n`\n\nexport const StyledTabList = styled.div`\n display: flex;\n list-style: none;\n margin: 0;\n padding: 0;\n width: 100%;\n`\n\nexport const StyledTabs = styled.div<{\n $dark?: boolean\n $index?: number\n}>`\n background-color: ${({ $dark }) => $dark && colors.gray15};\n display: flex;\n overflow: hidden;\n width: 100%;\n\n ${StyledTabBase} {\n // we want to hide all tabs after overflow index\n &:nth-child(1n + ${({ $index }) => $index}) {\n // but not the \"More\" dropdown tab\n &:not(${StyledDropdownTabBase}) {\n ${hiddenTab}\n }\n }\n }\n\n ${({ $index = -1 }) =>\n $index >= 0 &&\n css`\n ${StyledDropdownTabBase} {\n ${visible}\n }\n `}\n`\n\nconst StyledMoreLi = styled.li<{ $helix?: boolean }>`\n ${({ $helix }) =>\n $helix\n ? css`\n margin-left: ${spacing.sm}px;\n `\n : css`\n margin-left: ${spacing.xl}px;\n `}\n`\n\n/**\n * Switches between different Tab styles of traditional and helix header navigation.\n * Allows separate style CSS without conditionals across all the components.\n * @returns Subcomponents to render\n */\nexport function getStyledComponents(helixHeader = false) {\n if (helixHeader) {\n return {\n Tab: StyledGlobalNavigationTab,\n TabInner: StyledTabInnerBase,\n Link: StyledGlobalNavigationLink,\n DropdownTab: StyledGlobalNavigationDropdownTab,\n DropdownTabInner: StyledGlobalNavigationDropdownTabInner,\n MoreLi: StyledMoreLi,\n }\n }\n return {\n Tab: StyledTab,\n TabInner: StyledTabInner,\n Link: StyledLink,\n DropdownTab: StyledDropdownTab,\n DropdownTabInner: StyledDropdownTabInner,\n MoreLi: StyledMoreLi,\n }\n}\n"],"mappings":"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"}
|
|
@@ -107,6 +107,13 @@ export interface TabsProps extends Props {
|
|
|
107
107
|
* @since 12.36.0
|
|
108
108
|
*
|
|
109
109
|
* Can specify as a `navigational` element for when tabs are links.
|
|
110
|
+
* @a11y Requires a label. Navigation tabs are less likely, and are
|
|
111
|
+
* used for larger navigation changes like global navigation. When
|
|
112
|
+
* the WCAG "tablist" pattern does fit since the context between 'tabs'
|
|
113
|
+
* is drastically different and might not share the level 1 heading.
|
|
114
|
+
* __Do not mix tab patterns__, only use one at a time.
|
|
115
|
+
*
|
|
116
|
+
* `<Tab role="navigation" aria-labelledby><Tabs.Tab><a>`
|
|
110
117
|
*/
|
|
111
118
|
role?: 'navigation';
|
|
112
119
|
/**
|
|
@@ -130,6 +137,7 @@ export interface TabsProps extends Props {
|
|
|
130
137
|
UNSAFE_helixHeader?: boolean;
|
|
131
138
|
}
|
|
132
139
|
export interface TabDropdownProps extends Props {
|
|
140
|
+
role?: 'list';
|
|
133
141
|
/**
|
|
134
142
|
* @since 10.19.0
|
|
135
143
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tabs.types.js","names":["tabVariant","none","active","dark","dropdown","hover","overflowing"],"sources":["../../src/Tabs/Tabs.types.ts"],"sourcesContent":["import type { AriaButtonProps } from '@react-aria/button'\nimport type React from 'react'\nimport type { Polymorphic } from '../_utils/polymorphic'\nimport type { Props } from '../_utils/types'\n\nexport type TabRoleType = 'link' | 'button'\n\nexport interface TabPolyMap extends Record<TabRoleType, React.ElementType> {\n button: 'button'\n link: 'a'\n}\n\nexport type TabRole = TabRoleType | undefined\n\nexport type TabRef<Role extends TabRole = undefined> = Role extends TabRoleType\n ? Polymorphic.Ref<TabPolyMap, Role>\n : React.ComponentPropsWithRef<'div'>['ref']\n\nexport type TabProps<Role extends TabRole = undefined> = Role extends 'link'\n ? Polymorphic.ComponentPropsWithRef<TabPolyMap, 'link', 'href', BaseTabProps>\n : Role extends 'button'\n ? Polymorphic.ComponentPropsWithRef<\n TabPolyMap,\n 'button',\n never,\n BaseTabProps & { onPress: AriaButtonProps['onPress'] }\n >\n : BaseTabProps & { ref?: TabRef<undefined> }\n\nexport const tabVariant = {\n none: '',\n active: 'active',\n dark: 'dark',\n dropdown: 'dropdown',\n hover: 'hover',\n overflowing: 'overflowing',\n} as const\n\ntype TabVariant = (typeof tabVariant)[keyof typeof tabVariant]\n\nexport interface BaseTabProps extends Props {\n /**\n * The tab is active\n * @since 10.19.0\n * @deprecated Please use `selected` instead\n * @deprecatedSince 12.18.0\n */\n active?: boolean\n\n /**\n * The tab is selected\n * @since 12.18.0\n */\n selected?: boolean\n\n /**\n * Whether or not tab is in dark mode\n * @private\n * @since 10.19.0\n * @deprecated Custom styles intended for the global navigation header.\n * Future Core-React will look holistically at themes and dark mode support.\n *\n * AFTER - Regular Tab styles. If needing dark support, please reach out.\n * @deprecatedSince 12.8.0\n */\n dark?: boolean\n\n /**\n * @private\n * @since 10.19.0\n */\n onMount?: (el: HTMLDivElement | null) => void\n\n /**\n * @private\n */\n onUnmount?: () => void\n\n /**\n * @deprecated This was never intended to be a public facing API and does not\n * do anything. It will be removed in the future.\n * @deprecatedSince 11\n * @since 10.19.0\n */\n dropdown?: boolean\n\n /**\n * @deprecated This was never intended to be a public facing API and does not\n * do anything. It will be removed in the future.\n * @deprecatedSince 11\n * @since 10.19.0\n */\n overflowing?: boolean\n\n /**\n * @deprecated please use the `selected` props to configure style. The\n * `dropdown`, `hover`, and `overflowing` variants were only for internal use\n * and should not be used in clients\n * @deprecatedSince 11\n * @since 10.19.0\n */\n variant?: TabVariant\n /**\n * @since 11.6.0\n */\n disabled?: boolean\n /**\n * Sets the Tab's role\n * @since 11.6.0\n */\n role?: TabRole\n /**\n * Tab styles specific to the global navigation header.\n * @deprecated @experimental Alternative style variant. To be used on Helix Header ONLY\n * @since 12.8.0\n */\n UNSAFE_helixHeader?: boolean\n}\n\nexport interface TabsTabProps extends BaseTabProps {}\n\nexport interface QaTags {\n /**\n * @since 10.19.0\n */\n more?: string\n}\n\nexport interface TabsProps extends Props {\n /**\n * @since 12.36.0\n *\n * Can specify as a `navigational` element for when tabs are links.\n */\n role?: 'navigation'\n /**\n * @since 10.19.0\n * @deprecated Custom styles intended for the global navigation header.\n * Future Core-React will look holistically at themes and dark mode support.\n *\n * AFTER - Regular Tab styles. If needing dark support, please reach out.\n * @deprecatedSince 12.8.0\n */\n dark?: boolean\n /**\n * @since 10.19.0\n */\n qa?: QaTags\n /**\n * Tab styles specific to the global navigation header.\n * @deprecated @experimental Alternative style variant. To be used on Helix Header ONLY\n * @since 12.8.0\n */\n UNSAFE_helixHeader?: boolean\n}\n\nexport interface TabDropdownProps extends Props {\n /**\n * @since 10.19.0\n */\n visible?: boolean\n /**\n * @since 10.19.0\n */\n qa?: QaTags\n}\n"],"mappings":"AA6BA,OAAO,IAAMA,UAAU,GAAG;EACxBC,IAAI,EAAE,EAAE;EACRC,MAAM,EAAE,QAAQ;EAChBC,IAAI,EAAE,MAAM;EACZC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,OAAO;EACdC,WAAW,EAAE;AACf,CAAU"}
|
|
1
|
+
{"version":3,"file":"Tabs.types.js","names":["tabVariant","none","active","dark","dropdown","hover","overflowing"],"sources":["../../src/Tabs/Tabs.types.ts"],"sourcesContent":["import type { AriaButtonProps } from '@react-aria/button'\nimport type React from 'react'\nimport type { Polymorphic } from '../_utils/polymorphic'\nimport type { Props } from '../_utils/types'\n\nexport type TabRoleType = 'link' | 'button'\n\nexport interface TabPolyMap extends Record<TabRoleType, React.ElementType> {\n button: 'button'\n link: 'a'\n}\n\nexport type TabRole = TabRoleType | undefined\n\nexport type TabRef<Role extends TabRole = undefined> = Role extends TabRoleType\n ? Polymorphic.Ref<TabPolyMap, Role>\n : React.ComponentPropsWithRef<'div'>['ref']\n\nexport type TabProps<Role extends TabRole = undefined> = Role extends 'link'\n ? Polymorphic.ComponentPropsWithRef<TabPolyMap, 'link', 'href', BaseTabProps>\n : Role extends 'button'\n ? Polymorphic.ComponentPropsWithRef<\n TabPolyMap,\n 'button',\n never,\n BaseTabProps & { onPress: AriaButtonProps['onPress'] }\n >\n : BaseTabProps & { ref?: TabRef<undefined> }\n\nexport const tabVariant = {\n none: '',\n active: 'active',\n dark: 'dark',\n dropdown: 'dropdown',\n hover: 'hover',\n overflowing: 'overflowing',\n} as const\n\ntype TabVariant = (typeof tabVariant)[keyof typeof tabVariant]\n\nexport interface BaseTabProps extends Props {\n /**\n * The tab is active\n * @since 10.19.0\n * @deprecated Please use `selected` instead\n * @deprecatedSince 12.18.0\n */\n active?: boolean\n\n /**\n * The tab is selected\n * @since 12.18.0\n */\n selected?: boolean\n\n /**\n * Whether or not tab is in dark mode\n * @private\n * @since 10.19.0\n * @deprecated Custom styles intended for the global navigation header.\n * Future Core-React will look holistically at themes and dark mode support.\n *\n * AFTER - Regular Tab styles. If needing dark support, please reach out.\n * @deprecatedSince 12.8.0\n */\n dark?: boolean\n\n /**\n * @private\n * @since 10.19.0\n */\n onMount?: (el: HTMLDivElement | null) => void\n\n /**\n * @private\n */\n onUnmount?: () => void\n\n /**\n * @deprecated This was never intended to be a public facing API and does not\n * do anything. It will be removed in the future.\n * @deprecatedSince 11\n * @since 10.19.0\n */\n dropdown?: boolean\n\n /**\n * @deprecated This was never intended to be a public facing API and does not\n * do anything. It will be removed in the future.\n * @deprecatedSince 11\n * @since 10.19.0\n */\n overflowing?: boolean\n\n /**\n * @deprecated please use the `selected` props to configure style. The\n * `dropdown`, `hover`, and `overflowing` variants were only for internal use\n * and should not be used in clients\n * @deprecatedSince 11\n * @since 10.19.0\n */\n variant?: TabVariant\n /**\n * @since 11.6.0\n */\n disabled?: boolean\n /**\n * Sets the Tab's role\n * @since 11.6.0\n */\n role?: TabRole\n /**\n * Tab styles specific to the global navigation header.\n * @deprecated @experimental Alternative style variant. To be used on Helix Header ONLY\n * @since 12.8.0\n */\n UNSAFE_helixHeader?: boolean\n}\n\nexport interface TabsTabProps extends BaseTabProps {}\n\nexport interface QaTags {\n /**\n * @since 10.19.0\n */\n more?: string\n}\n\nexport interface TabsProps extends Props {\n /**\n * @since 12.36.0\n *\n * Can specify as a `navigational` element for when tabs are links.\n * @a11y Requires a label. Navigation tabs are less likely, and are\n * used for larger navigation changes like global navigation. When\n * the WCAG \"tablist\" pattern does fit since the context between 'tabs'\n * is drastically different and might not share the level 1 heading.\n * __Do not mix tab patterns__, only use one at a time.\n *\n * `<Tab role=\"navigation\" aria-labelledby><Tabs.Tab><a>`\n */\n role?: 'navigation'\n /**\n * @since 10.19.0\n * @deprecated Custom styles intended for the global navigation header.\n * Future Core-React will look holistically at themes and dark mode support.\n *\n * AFTER - Regular Tab styles. If needing dark support, please reach out.\n * @deprecatedSince 12.8.0\n */\n dark?: boolean\n /**\n * @since 10.19.0\n */\n qa?: QaTags\n /**\n * Tab styles specific to the global navigation header.\n * @deprecated @experimental Alternative style variant. To be used on Helix Header ONLY\n * @since 12.8.0\n */\n UNSAFE_helixHeader?: boolean\n}\n\nexport interface TabDropdownProps extends Props {\n role?: 'list'\n /**\n * @since 10.19.0\n */\n visible?: boolean\n /**\n * @since 10.19.0\n */\n qa?: QaTags\n}\n"],"mappings":"AA6BA,OAAO,IAAMA,UAAU,GAAG;EACxBC,IAAI,EAAE,EAAE;EACRC,MAAM,EAAE,QAAQ;EAChBC,IAAI,EAAE,MAAM;EACZC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,OAAO;EACdC,WAAW,EAAE;AACf,CAAU"}
|
|
@@ -46,7 +46,7 @@ var getSlideOutAnimation = function getSlideOutAnimation($placement) {
|
|
|
46
46
|
};
|
|
47
47
|
export var StyledTearsheetContent = /*#__PURE__*/styled.div.withConfig({
|
|
48
48
|
displayName: "StyledTearsheetContent",
|
|
49
|
-
componentId: "core-
|
|
49
|
+
componentId: "core-12_45_0__sc-ljrxoq-0"
|
|
50
50
|
})(["display:flex;z-index:2;width:100%;", " ", " ", " ", ""], function (_ref) {
|
|
51
51
|
var $open = _ref.$open,
|
|
52
52
|
$placement = _ref.$placement;
|
|
@@ -66,7 +66,7 @@ export var StyledTearsheetContent = /*#__PURE__*/styled.div.withConfig({
|
|
|
66
66
|
export var minScrimSize = spacing.xxl * 3;
|
|
67
67
|
export var StyledTearsheetBody = /*#__PURE__*/styled.div.withConfig({
|
|
68
68
|
displayName: "StyledTearsheetBody",
|
|
69
|
-
componentId: "core-
|
|
69
|
+
componentId: "core-12_45_0__sc-ljrxoq-1"
|
|
70
70
|
})(["display:flex;overflow-y:auto;flex-direction:column;background-color:", ";&:focus-visible{", "}", ""], colors.white, getGapOutlineFocus('inside'), function (_ref5) {
|
|
71
71
|
var $block = _ref5.$block,
|
|
72
72
|
$placement = _ref5.$placement,
|
|
@@ -78,7 +78,7 @@ var zoomIn = /*#__PURE__*/keyframes(["from{transform:scale(0);}to{transform:scal
|
|
|
78
78
|
var zoomOut = /*#__PURE__*/keyframes(["from{transform:scale(1);}to{transform:scale(0);}"]);
|
|
79
79
|
export var StyledScrimContainer = /*#__PURE__*/styled.div.withConfig({
|
|
80
80
|
displayName: "StyledScrimContainer",
|
|
81
|
-
componentId: "core-
|
|
81
|
+
componentId: "core-12_45_0__sc-ljrxoq-2"
|
|
82
82
|
})(["", ""], function (_ref6) {
|
|
83
83
|
var $placement = _ref6.$placement;
|
|
84
84
|
var minSizeProp = ['top', 'bottom'].includes($placement) ? 'min-height' : 'min-width';
|
|
@@ -86,7 +86,7 @@ export var StyledScrimContainer = /*#__PURE__*/styled.div.withConfig({
|
|
|
86
86
|
});
|
|
87
87
|
export var StyledButtonContainer = /*#__PURE__*/styled.div.withConfig({
|
|
88
88
|
displayName: "StyledButtonContainer",
|
|
89
|
-
componentId: "core-
|
|
89
|
+
componentId: "core-12_45_0__sc-ljrxoq-3"
|
|
90
90
|
})(["", ""], function (_ref7) {
|
|
91
91
|
var $placement = _ref7.$placement;
|
|
92
92
|
switch ($placement) {
|
|
@@ -101,7 +101,7 @@ export var StyledButtonContainer = /*#__PURE__*/styled.div.withConfig({
|
|
|
101
101
|
});
|
|
102
102
|
export var StyledButtonCard = /*#__PURE__*/styled(Card).withConfig({
|
|
103
103
|
displayName: "StyledButtonCard",
|
|
104
|
-
componentId: "core-
|
|
104
|
+
componentId: "core-12_45_0__sc-ljrxoq-4"
|
|
105
105
|
})(["display:inline-flex;margin:", "px;", " ", " ", ""], spacing.xl, function (_ref8) {
|
|
106
106
|
var $open = _ref8.$open;
|
|
107
107
|
return $open ? css(["transform:scale(1);"]) : css(["transform:scale(0);"]);
|
|
@@ -3,7 +3,7 @@ import { getInputStyles } from '../Input/Input.styles';
|
|
|
3
3
|
import { spacing } from '../_styles/spacing';
|
|
4
4
|
export var StyledTextArea = /*#__PURE__*/styled.textarea.withConfig({
|
|
5
5
|
displayName: "StyledTextArea",
|
|
6
|
-
componentId: "core-
|
|
6
|
+
componentId: "core-12_45_0__sc-u5mow1-0"
|
|
7
7
|
})(["", ";height:auto;min-height:64px;padding:", "px ", "px;resize:", ";"], getInputStyles, spacing.sm, spacing.md, function (_ref) {
|
|
8
8
|
var _ref$$resize = _ref.$resize,
|
|
9
9
|
$resize = _ref$$resize === void 0 ? 'both' : _ref$$resize;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import styled from 'styled-components';
|
|
2
2
|
export var StyledEditor = /*#__PURE__*/styled.div.withConfig({
|
|
3
3
|
displayName: "StyledEditor",
|
|
4
|
-
componentId: "core-
|
|
4
|
+
componentId: "core-12_45_0__sc-1lje1b0-0"
|
|
5
5
|
})(["> .tox-tinymce{border:none;}"]);
|
|
6
6
|
//# sourceMappingURL=TextEditorOutput.styles.js.map
|
|
@@ -256,6 +256,7 @@ var CheckboxPlaceholder = /*#__PURE__*/React.forwardRef(function CheckboxPlaceho
|
|
|
256
256
|
}
|
|
257
257
|
}
|
|
258
258
|
}), /*#__PURE__*/React.createElement(StyledPlaceholderThumbnail, {
|
|
259
|
+
"aria-hidden": true,
|
|
259
260
|
$focused: thumbnail.focused || isInputFocused,
|
|
260
261
|
$disabled: thumbnail.disabled,
|
|
261
262
|
$selected: thumbnail.selected,
|
|
@@ -270,6 +271,7 @@ var CheckboxPlaceholder = /*#__PURE__*/React.forwardRef(function CheckboxPlaceho
|
|
|
270
271
|
label: thumbnail.label,
|
|
271
272
|
disabled: thumbnail.disabled
|
|
272
273
|
}), /*#__PURE__*/React.createElement(StyledImageThumbnailOverlay, null)), /*#__PURE__*/React.createElement(ThumbnailCaption, {
|
|
274
|
+
ariaHidden: true,
|
|
273
275
|
error: thumbnail.error,
|
|
274
276
|
qa: (_thumbnail$qa3 = thumbnail.qa) === null || _thumbnail$qa3 === void 0 ? void 0 : _thumbnail$qa3.caption,
|
|
275
277
|
multiline: thumbnail.size === 'lg',
|
|
@@ -476,6 +478,7 @@ var CheckboxThumbnail = /*#__PURE__*/React.forwardRef(function CheckboxThumbnail
|
|
|
476
478
|
}
|
|
477
479
|
}
|
|
478
480
|
}), /*#__PURE__*/React.createElement(StyledImageThumbnail, {
|
|
481
|
+
"aria-hidden": true,
|
|
479
482
|
$focused: thumbnail.focused || isInputFocused,
|
|
480
483
|
$disabled: thumbnail.disabled,
|
|
481
484
|
$selected: thumbnail.selected,
|
|
@@ -496,6 +499,7 @@ var CheckboxThumbnail = /*#__PURE__*/React.forwardRef(function CheckboxThumbnail
|
|
|
496
499
|
label: thumbnail.label,
|
|
497
500
|
disabled: thumbnail.disabled
|
|
498
501
|
}), /*#__PURE__*/React.createElement(StyledImageThumbnailOverlay, null)), /*#__PURE__*/React.createElement(ThumbnailCaption, {
|
|
502
|
+
ariaHidden: true,
|
|
499
503
|
qa: (_thumbnail$qa6 = thumbnail.qa) === null || _thumbnail$qa6 === void 0 ? void 0 : _thumbnail$qa6.caption,
|
|
500
504
|
multiline: thumbnail.size === 'lg',
|
|
501
505
|
layout: thumbnail.layout,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Thumbnail.js","names":["mergeProps","VisuallyHidden","React","useState","Tooltip","useI18nContext","addSubcomponents","mergeRefs","useThumbnail","StyledFileIcon","StyledImageThumbnail","StyledImageThumbnailImage","StyledImageThumbnailOverlay","StyledLabel","StyledLabelText","StyledPlaceholderThumbnail","StyledThumbnailFigCaption","StyledThumbnailWrapper","StyledTickIcon","getThumbnailAriaLabel","getThumbnailVariantForFilename","ThumbnailCaption","ThumbnailPreview","defaultSize","TickIcon","_ref","_ref$size","size","selected","i18n","createElement","t","undefined","focusable","$selected","$size","width","height","viewBox","fill","xmlns","d","fillRule","clipRule","FigCaption","_ref2","label","disabled","$color","Label","_ref3","intent","weight","ThumbnailCaptionTooltip","_ref4","caption","captionOverflowing","children","overlay","Content","placement","trigger","BasePlaceholder","forwardRef","props","ref","_props$filename","_thumbnail$qa","thumbnail","_useState","_useState2","_slicedToArray","setCaptionOverflowing","hasCaptionPlaceholder","_disabled","wrapperProps","_objectWithoutProperties","_excluded","ariaLabel","_extends","$layout","layout","tabIndex","role","$focused","focused","$disabled","$clickable","clickable","toggleState","isSelected","variant","filename","error","qa","multiline","onCaptionOverflowChange","defaultValue","FigurePlaceholder","_props$filename2","_thumbnail$qa2","_useState3","_useState4","_role","_excluded2","as","CheckboxPlaceholder","_ref5","_props$filename3","_thumbnail$qa3","name","onChange","_qa","value","props_","_excluded3","_objectSpread","isDisabled","checked","defaultSelected","defaultChecked","_useState5","_useState6","src","_excluded4","isInputFocused","document","activeElement","inputRef","current","preventSpaceOnDisabledThumbnail","e","key","preventDefault","useEffect","focus","onClick","_thumbnail$onClick","toggle","call","type","inputProps","focusProps","onKeyDown","PlaceholderInner","BaseThumbnail","_thumbnail$filename","_thumbnail$qa4","_useState7","_useState8","_excluded5","isImageURL","shouldUsePlaceholder","alt","file","FigureThumbnail","_thumbnail$filename2","_thumbnail$qa5","_useState9","_useState0","CheckboxThumbnail","_ref6","_thumbnail$filename3","_thumbnail$qa6","_excluded6","_useState1","_useState10","_excluded7","_thumbnail$onClick2","ThumbnailInner","isFile","File","console","warn","Thumbnail_","Placeholder","displayName","Thumbnail"],"sources":["../../src/Thumbnail/Thumbnail.tsx"],"sourcesContent":["import { mergeProps } from '@react-aria/utils'\nimport { VisuallyHidden } from '@react-aria/visually-hidden'\nimport React, { useState } from 'react'\nimport { Tooltip } from '../Tooltip'\nimport { useI18nContext } from '../_hooks/I18n'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport { mergeRefs } from '../_utils/mergeRefs'\nimport { useThumbnail } from './Thumbnail.hooks'\nimport {\n StyledFileIcon,\n StyledImageThumbnail,\n StyledImageThumbnailImage,\n StyledImageThumbnailOverlay,\n StyledLabel,\n StyledLabelText,\n StyledPlaceholderThumbnail,\n StyledThumbnailFigCaption,\n StyledThumbnailWrapper,\n StyledTickIcon,\n} from './Thumbnail.styles'\nimport type {\n BasePlaceholderProps,\n BaseThumbnailProps,\n LabelProps,\n PlaceholderProps,\n ThumbnailProps,\n ThumbnailRef,\n ThumbnailRoles,\n ThumbnailRoleType,\n TickIconProps,\n} from './Thumbnail.types'\nimport {\n getThumbnailAriaLabel,\n getThumbnailVariantForFilename,\n} from './Thumbnail.utils'\nimport { ThumbnailCaption } from './ThumbnailCaption'\nimport { ThumbnailPreview } from './ThumbnailPreview'\n\nconst defaultSize = 'lg'\n\nfunction TickIcon({ size = defaultSize, selected }: TickIconProps) {\n const i18n = useI18nContext()\n return (\n <StyledTickIcon\n aria-hidden={selected ? false : true}\n aria-label={selected ? i18n.t('core.thumbnail.checked') : undefined}\n // in IE11, all svg element are focusable by default\n focusable={false}\n $selected={selected}\n $size={size}\n width=\"26\"\n height=\"26\"\n viewBox=\"0 0 26 26\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M1 13C1 6.37258 6.37258 1 13 1C19.6274 1 25 6.37258 25 13C25 19.6274 19.6274 25 13 25C6.37258 25 1 19.6274 1 13Z\"\n fill=\"white\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M11.167 17.5L7 13.459L8.6155 12.0535L11.167 14.5285L17.3845 8.5L19 9.9055L11.167 17.5ZM13 1C6.3715 1 1 6.373 1 13C1 19.627 6.3715 25 13 25C19.627 25 25 19.627 25 13C25 6.373 19.627 1 13 1Z\"\n fill=\"hsl(218,75%,50%)\"\n />\n <path\n d=\"M13 24C6.92487 24 2 19.0751 2 13H0C0 20.1797 5.8203 26 13 26V24ZM24 13C24 19.0751 19.0751 24 13 24V26C20.1797 26 26 20.1797 26 13H24ZM13 2C19.0751 2 24 6.92487 24 13H26C26 5.8203 20.1797 0 13 0V2ZM13 0C5.8203 0 0 5.8203 0 13H2C2 6.92487 6.92487 2 13 2V0Z\"\n fill=\"white\"\n />\n </StyledTickIcon>\n )\n}\n\nfunction FigCaption({ label, disabled }: LabelProps) {\n if (!label) {\n return null\n }\n\n return (\n <StyledThumbnailFigCaption $color={disabled ? 'gray70' : 'gray15'}>\n {label}\n </StyledThumbnailFigCaption>\n )\n}\n\nfunction Label({ label }: LabelProps) {\n if (!label) {\n return null\n }\n\n return (\n <StyledLabel>\n <StyledLabelText intent=\"small\" weight=\"bold\">\n {label}\n </StyledLabelText>\n </StyledLabel>\n )\n}\n\nfunction ThumbnailCaptionTooltip({\n caption,\n captionOverflowing,\n children,\n}: {\n caption: string | undefined\n captionOverflowing: boolean\n children: React.ReactNode\n}) {\n return (\n <Tooltip\n overlay={<Tooltip.Content>{caption}</Tooltip.Content>}\n placement=\"bottom\"\n trigger={captionOverflowing && caption ? ['hover', 'focus'] : 'none'}\n >\n {children}\n </Tooltip>\n )\n}\n\nconst BasePlaceholder = React.forwardRef<\n HTMLDivElement,\n PlaceholderProps<undefined>\n>(function BasePlaceholder(\n props: PlaceholderProps<undefined>,\n ref: ThumbnailRef<undefined>\n) {\n const i18n = useI18nContext()\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const {\n hasCaptionPlaceholder,\n caption,\n label,\n disabled: _disabled,\n ...wrapperProps\n } = props\n const ariaLabel = getThumbnailAriaLabel(\n i18n,\n thumbnail.label,\n thumbnail.caption\n )\n\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n ref={ref}\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n tabIndex={0}\n role=\"group\"\n aria-label={ariaLabel}\n {...wrapperProps}\n >\n <StyledPlaceholderThumbnail\n $focused={thumbnail.focused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n >\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n <StyledFileIcon\n variant={\n props.variant ||\n getThumbnailVariantForFilename(props.filename ?? '')\n }\n />\n {thumbnail.size === 'lg' && (\n <Label label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledPlaceholderThumbnail>\n <ThumbnailCaption\n error={thumbnail.error}\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n {thumbnail.disabled && !thumbnail.clickable && (\n <VisuallyHidden>\n {i18n.t('core.thumbnail.unavailable', {\n defaultValue: 'Content is unavailable',\n })}\n </VisuallyHidden>\n )}\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nconst FigurePlaceholder = React.forwardRef<\n HTMLElement,\n PlaceholderProps<'figure'>\n>(function FigurePlaceholder(\n props: PlaceholderProps<'figure'>,\n ref: ThumbnailRef<'figure'>\n) {\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const {\n hasCaptionPlaceholder,\n caption,\n label,\n disabled: _disabled,\n role: _role,\n ...wrapperProps\n } = props\n const i18n = useI18nContext()\n const ariaLabel = getThumbnailAriaLabel(\n i18n,\n thumbnail.label,\n thumbnail.caption\n )\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n ref={ref}\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n tabIndex={0}\n role=\"group\"\n aria-label={ariaLabel}\n {...wrapperProps}\n >\n <StyledPlaceholderThumbnail\n $focused={thumbnail.focused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n as={thumbnail.as}\n >\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n <StyledFileIcon\n variant={\n props.variant ||\n getThumbnailVariantForFilename(props.filename ?? '')\n }\n />\n {thumbnail.size === 'lg' && (\n <FigCaption label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledPlaceholderThumbnail>\n <ThumbnailCaption\n error={thumbnail.error}\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n {thumbnail.disabled && !thumbnail.clickable && (\n <VisuallyHidden>\n {i18n.t('core.thumbnail.unavailable', {\n defaultValue: 'Content is unavailable',\n })}\n </VisuallyHidden>\n )}\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nconst CheckboxPlaceholder = React.forwardRef<\n HTMLInputElement,\n ThumbnailProps<'checkbox'>\n>(function CheckboxPlaceholder(\n { children, as, label, name, onChange, role, qa: _qa, value, ...props_ },\n ref\n) {\n const props = {\n ...props_,\n as,\n label,\n onChange,\n role,\n value,\n isDisabled: props_.disabled,\n isSelected: props_.checked,\n defaultSelected: props_.defaultChecked,\n }\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const { caption, hasCaptionPlaceholder, src, ...wrapperProps } = props_\n const isInputFocused = document.activeElement === thumbnail.inputRef.current\n\n const i18n = useI18nContext()\n const ariaLabel =\n getThumbnailAriaLabel(i18n, thumbnail.label, thumbnail.caption) ||\n i18n.t('core.thumbnail.select')\n\n const preventSpaceOnDisabledThumbnail = (e: React.KeyboardEvent) => {\n if (e.key === ' ' && thumbnail.disabled) {\n e.preventDefault()\n }\n }\n\n React.useEffect(() => {\n if (props.focused && thumbnail.inputRef.current) {\n thumbnail.inputRef.current.focus()\n }\n }, [props.focused, thumbnail.inputRef])\n\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n {...wrapperProps}\n onClick={(e: React.MouseEvent) => {\n if (!thumbnail.disabled) {\n thumbnail.toggleState.toggle()\n thumbnail.onClick?.(e)\n }\n }}\n >\n <StyledPlaceholderThumbnail\n $focused={thumbnail.focused || isInputFocused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n >\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n <StyledFileIcon\n variant={\n props.variant ||\n getThumbnailVariantForFilename(props.filename ?? '')\n }\n />\n {thumbnail.size === 'lg' && (\n <Label label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledPlaceholderThumbnail>\n <ThumbnailCaption\n error={thumbnail.error}\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n <VisuallyHidden>\n <input\n type=\"checkbox\"\n ref={mergeRefs(thumbnail.inputRef, ref)}\n aria-label={ariaLabel}\n {...mergeProps(thumbnail.inputProps, thumbnail.focusProps)}\n disabled={thumbnail.disabled}\n onKeyDown={preventSpaceOnDisabledThumbnail}\n />\n </VisuallyHidden>\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nfunction PlaceholderInner(\n props: PlaceholderProps<ThumbnailRoleType>,\n ref: ThumbnailRef<ThumbnailRoleType>\n) {\n switch (props.role) {\n case 'checkbox': {\n return (\n <CheckboxPlaceholder\n ref={ref as React.Ref<HTMLInputElement>}\n {...(props as PlaceholderProps<'checkbox'>)}\n />\n )\n }\n case 'figure': {\n return (\n <FigurePlaceholder\n ref={ref as React.Ref<HTMLElement>}\n {...(props as PlaceholderProps<'figure'>)}\n />\n )\n }\n default: {\n return (\n <BasePlaceholder\n ref={ref as React.Ref<HTMLDivElement>}\n {...(props as PlaceholderProps<undefined>)}\n />\n )\n }\n }\n}\n\nconst BaseThumbnail = React.forwardRef<\n HTMLDivElement,\n ThumbnailProps<undefined>\n>(function BaseThumbnail(\n props: ThumbnailProps<undefined>,\n ref: ThumbnailRef<undefined>\n) {\n const i18n = useI18nContext()\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const {\n hasCaptionPlaceholder,\n disabled: _disabled,\n role: _role,\n ...wrapperProps\n } = props\n const ariaLabel = getThumbnailAriaLabel(\n i18n,\n thumbnail.label,\n thumbnail.caption\n )\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n ref={ref}\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n tabIndex={0}\n role=\"group\"\n aria-label={ariaLabel}\n {...wrapperProps}\n >\n <StyledImageThumbnail\n $focused={thumbnail.focused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n >\n {thumbnail.isImageURL && !thumbnail.shouldUsePlaceholder ? (\n <StyledImageThumbnailImage\n src={thumbnail.src as string}\n alt={thumbnail.alt}\n />\n ) : (\n <ThumbnailPreview\n file={thumbnail.src as File}\n aria-label={thumbnail.alt}\n />\n )}\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n {thumbnail.shouldUsePlaceholder && (\n <StyledFileIcon\n variant={\n thumbnail.variant ||\n getThumbnailVariantForFilename(thumbnail.filename ?? '')\n }\n />\n )}\n {thumbnail.size === 'lg' && (\n <Label label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledImageThumbnail>\n <ThumbnailCaption\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n error={thumbnail.error}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n {thumbnail.disabled && !thumbnail.clickable && (\n <VisuallyHidden>\n {i18n.t('core.thumbnail.unavailable', {\n defaultValue: 'Content is unavailable',\n })}\n </VisuallyHidden>\n )}\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nconst FigureThumbnail = React.forwardRef<HTMLElement, ThumbnailProps<'figure'>>(\n function FigureThumbnail(\n props: ThumbnailProps<'figure'>,\n ref: ThumbnailRef<'figure'>\n ) {\n const i18n = useI18nContext()\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const ariaLabel = getThumbnailAriaLabel(\n i18n,\n thumbnail.label,\n thumbnail.caption\n )\n\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n tabIndex={0}\n role=\"group\"\n aria-label={ariaLabel}\n >\n <StyledImageThumbnail\n ref={ref}\n $focused={thumbnail.focused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n as={thumbnail.as}\n >\n {thumbnail.isImageURL && !thumbnail.shouldUsePlaceholder ? (\n <StyledImageThumbnailImage\n src={thumbnail.src as string}\n alt={thumbnail.alt}\n />\n ) : (\n <ThumbnailPreview\n file={thumbnail.src as File}\n aria-label={thumbnail.alt}\n />\n )}\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n {thumbnail.shouldUsePlaceholder && (\n <StyledFileIcon\n variant={\n thumbnail.variant ||\n getThumbnailVariantForFilename(thumbnail.filename ?? '')\n }\n />\n )}\n {thumbnail.size === 'lg' && (\n <FigCaption\n label={thumbnail.label}\n disabled={thumbnail.disabled}\n />\n )}\n <StyledImageThumbnailOverlay />\n </StyledImageThumbnail>\n <ThumbnailCaption\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n error={thumbnail.error}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n {thumbnail.disabled && !thumbnail.clickable && (\n <VisuallyHidden>\n {i18n.t('core.thumbnail.unavailable', {\n defaultValue: 'Content is unavailable',\n })}\n </VisuallyHidden>\n )}\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n }\n)\n\nconst CheckboxThumbnail = React.forwardRef<\n HTMLInputElement,\n ThumbnailProps<'checkbox'>\n>(function CheckboxThumbnail(\n { children, as, label, name, onChange, role, qa: _qa, value, ...props_ },\n ref\n) {\n const props = {\n ...props_,\n as,\n label,\n name,\n onChange,\n role,\n value,\n isDisabled: props_.disabled,\n isSelected: props_.checked,\n defaultSelected: props_.defaultChecked,\n }\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const {\n caption,\n hasCaptionPlaceholder,\n src,\n disabled: _disabled,\n ...wrapperProps\n } = props_\n const isInputFocused = document.activeElement === thumbnail.inputRef.current\n\n const preventSpaceOnDisabledThumbnail = (\n e: React.KeyboardEvent<HTMLInputElement>\n ) => {\n if (e.key === ' ' && thumbnail.disabled) {\n e.preventDefault()\n }\n }\n\n React.useEffect(() => {\n if (props.focused && thumbnail.inputRef.current) {\n thumbnail.inputRef.current.focus()\n }\n }, [props.focused, thumbnail.inputRef])\n\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n {...wrapperProps}\n onClick={(e: React.MouseEvent) => {\n if (!thumbnail.disabled) {\n thumbnail.toggleState.toggle()\n thumbnail.onClick?.(e)\n }\n }}\n >\n <StyledImageThumbnail\n $focused={thumbnail.focused || isInputFocused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n >\n {thumbnail.isImageURL && !thumbnail.shouldUsePlaceholder ? (\n <StyledImageThumbnailImage\n src={thumbnail.src as string}\n alt={thumbnail.alt}\n />\n ) : (\n <ThumbnailPreview\n file={thumbnail.src as File}\n aria-label={thumbnail.alt}\n />\n )}\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n {thumbnail.shouldUsePlaceholder && (\n <StyledFileIcon\n variant={\n thumbnail.variant ||\n getThumbnailVariantForFilename(thumbnail.filename ?? '')\n }\n />\n )}\n {thumbnail.size === 'lg' && (\n <Label label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledImageThumbnail>\n <ThumbnailCaption\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n error={props.error}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n <VisuallyHidden>\n <input\n ref={mergeRefs(thumbnail.inputRef, ref)}\n type={'checkbox'}\n {...mergeProps(thumbnail.inputProps, thumbnail.focusProps)}\n disabled={thumbnail.disabled}\n onKeyDown={preventSpaceOnDisabledThumbnail}\n />\n </VisuallyHidden>\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nfunction ThumbnailInner(\n props: ThumbnailProps<ThumbnailRoleType>,\n ref: ThumbnailRef<ThumbnailRoleType>\n) {\n const isFile = props.src instanceof File\n const isImageURL = typeof props.src === 'string'\n\n if (!isFile && !isImageURL) {\n console.warn('Unknown Thumbnail source:', props.src)\n }\n\n switch (props.role) {\n case 'checkbox': {\n return (\n <CheckboxThumbnail\n ref={ref as React.Ref<HTMLInputElement>}\n {...(props as ThumbnailProps<'checkbox'>)}\n />\n )\n }\n case 'figure': {\n return (\n <FigureThumbnail\n ref={ref as React.Ref<HTMLElement>}\n {...(props as ThumbnailProps<'figure'>)}\n />\n )\n }\n default: {\n return (\n <BaseThumbnail\n ref={ref as React.Ref<HTMLDivElement>}\n {...(props as PlaceholderProps<undefined>)}\n />\n )\n }\n }\n}\n\nconst Thumbnail_ = React.forwardRef(ThumbnailInner) as <\n Role extends ThumbnailRoles\n>(\n props:\n | ThumbnailProps<Role>\n | (BaseThumbnailProps & { ref?: ThumbnailRef<Role> })\n) => ReturnType<typeof ThumbnailInner>\n\nconst Placeholder = React.forwardRef(PlaceholderInner) as <\n Role extends ThumbnailRoles\n>(\n props:\n | PlaceholderProps<Role>\n | (BasePlaceholderProps & { ref?: ThumbnailRef<Role> })\n) => ReturnType<typeof PlaceholderInner>\n\n// @ts-ignore\nPlaceholder.displayName = 'Thumbnail.Placeholder'\n\n// @ts-ignore\nThumbnail_.displayName = 'Thumbnail'\n\n/**\n\n We use thumbnails to display previews for images or files as either a smaller\n version of an uploaded image, or an icon representing the file type. If an\n image preview can be generated from the file (in the case of images) then\n display that image.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-thumbnail--demo-thumbnail)\n\n @see [Design Guidelines](https://design.procore.com/thumbnail)\n\n */\nexport const Thumbnail = addSubcomponents({ Placeholder }, Thumbnail_)\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Thumbnail.js","names":["mergeProps","VisuallyHidden","React","useState","Tooltip","useI18nContext","addSubcomponents","mergeRefs","useThumbnail","StyledFileIcon","StyledImageThumbnail","StyledImageThumbnailImage","StyledImageThumbnailOverlay","StyledLabel","StyledLabelText","StyledPlaceholderThumbnail","StyledThumbnailFigCaption","StyledThumbnailWrapper","StyledTickIcon","getThumbnailAriaLabel","getThumbnailVariantForFilename","ThumbnailCaption","ThumbnailPreview","defaultSize","TickIcon","_ref","_ref$size","size","selected","i18n","createElement","t","undefined","focusable","$selected","$size","width","height","viewBox","fill","xmlns","d","fillRule","clipRule","FigCaption","_ref2","label","disabled","$color","Label","_ref3","intent","weight","ThumbnailCaptionTooltip","_ref4","caption","captionOverflowing","children","overlay","Content","placement","trigger","BasePlaceholder","forwardRef","props","ref","_props$filename","_thumbnail$qa","thumbnail","_useState","_useState2","_slicedToArray","setCaptionOverflowing","hasCaptionPlaceholder","_disabled","wrapperProps","_objectWithoutProperties","_excluded","ariaLabel","_extends","$layout","layout","tabIndex","role","$focused","focused","$disabled","$clickable","clickable","toggleState","isSelected","variant","filename","error","qa","multiline","onCaptionOverflowChange","defaultValue","FigurePlaceholder","_props$filename2","_thumbnail$qa2","_useState3","_useState4","_role","_excluded2","as","CheckboxPlaceholder","_ref5","_props$filename3","_thumbnail$qa3","name","onChange","_qa","value","props_","_excluded3","_objectSpread","isDisabled","checked","defaultSelected","defaultChecked","_useState5","_useState6","src","_excluded4","isInputFocused","document","activeElement","inputRef","current","preventSpaceOnDisabledThumbnail","e","key","preventDefault","useEffect","focus","onClick","_thumbnail$onClick","toggle","call","ariaHidden","type","inputProps","focusProps","onKeyDown","PlaceholderInner","BaseThumbnail","_thumbnail$filename","_thumbnail$qa4","_useState7","_useState8","_excluded5","isImageURL","shouldUsePlaceholder","alt","file","FigureThumbnail","_thumbnail$filename2","_thumbnail$qa5","_useState9","_useState0","CheckboxThumbnail","_ref6","_thumbnail$filename3","_thumbnail$qa6","_excluded6","_useState1","_useState10","_excluded7","_thumbnail$onClick2","ThumbnailInner","isFile","File","console","warn","Thumbnail_","Placeholder","displayName","Thumbnail"],"sources":["../../src/Thumbnail/Thumbnail.tsx"],"sourcesContent":["import { mergeProps } from '@react-aria/utils'\nimport { VisuallyHidden } from '@react-aria/visually-hidden'\nimport React, { useState } from 'react'\nimport { Tooltip } from '../Tooltip'\nimport { useI18nContext } from '../_hooks/I18n'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport { mergeRefs } from '../_utils/mergeRefs'\nimport { useThumbnail } from './Thumbnail.hooks'\nimport {\n StyledFileIcon,\n StyledImageThumbnail,\n StyledImageThumbnailImage,\n StyledImageThumbnailOverlay,\n StyledLabel,\n StyledLabelText,\n StyledPlaceholderThumbnail,\n StyledThumbnailFigCaption,\n StyledThumbnailWrapper,\n StyledTickIcon,\n} from './Thumbnail.styles'\nimport type {\n BasePlaceholderProps,\n BaseThumbnailProps,\n LabelProps,\n PlaceholderProps,\n ThumbnailProps,\n ThumbnailRef,\n ThumbnailRoles,\n ThumbnailRoleType,\n TickIconProps,\n} from './Thumbnail.types'\nimport {\n getThumbnailAriaLabel,\n getThumbnailVariantForFilename,\n} from './Thumbnail.utils'\nimport { ThumbnailCaption } from './ThumbnailCaption'\nimport { ThumbnailPreview } from './ThumbnailPreview'\n\nconst defaultSize = 'lg'\n\nfunction TickIcon({ size = defaultSize, selected }: TickIconProps) {\n const i18n = useI18nContext()\n return (\n <StyledTickIcon\n aria-hidden={selected ? false : true}\n aria-label={selected ? i18n.t('core.thumbnail.checked') : undefined}\n // in IE11, all svg element are focusable by default\n focusable={false}\n $selected={selected}\n $size={size}\n width=\"26\"\n height=\"26\"\n viewBox=\"0 0 26 26\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M1 13C1 6.37258 6.37258 1 13 1C19.6274 1 25 6.37258 25 13C25 19.6274 19.6274 25 13 25C6.37258 25 1 19.6274 1 13Z\"\n fill=\"white\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M11.167 17.5L7 13.459L8.6155 12.0535L11.167 14.5285L17.3845 8.5L19 9.9055L11.167 17.5ZM13 1C6.3715 1 1 6.373 1 13C1 19.627 6.3715 25 13 25C19.627 25 25 19.627 25 13C25 6.373 19.627 1 13 1Z\"\n fill=\"hsl(218,75%,50%)\"\n />\n <path\n d=\"M13 24C6.92487 24 2 19.0751 2 13H0C0 20.1797 5.8203 26 13 26V24ZM24 13C24 19.0751 19.0751 24 13 24V26C20.1797 26 26 20.1797 26 13H24ZM13 2C19.0751 2 24 6.92487 24 13H26C26 5.8203 20.1797 0 13 0V2ZM13 0C5.8203 0 0 5.8203 0 13H2C2 6.92487 6.92487 2 13 2V0Z\"\n fill=\"white\"\n />\n </StyledTickIcon>\n )\n}\n\nfunction FigCaption({ label, disabled }: LabelProps) {\n if (!label) {\n return null\n }\n\n return (\n <StyledThumbnailFigCaption $color={disabled ? 'gray70' : 'gray15'}>\n {label}\n </StyledThumbnailFigCaption>\n )\n}\n\nfunction Label({ label }: LabelProps) {\n if (!label) {\n return null\n }\n\n return (\n <StyledLabel>\n <StyledLabelText intent=\"small\" weight=\"bold\">\n {label}\n </StyledLabelText>\n </StyledLabel>\n )\n}\n\nfunction ThumbnailCaptionTooltip({\n caption,\n captionOverflowing,\n children,\n}: {\n caption: string | undefined\n captionOverflowing: boolean\n children: React.ReactNode\n}) {\n return (\n <Tooltip\n overlay={<Tooltip.Content>{caption}</Tooltip.Content>}\n placement=\"bottom\"\n trigger={captionOverflowing && caption ? ['hover', 'focus'] : 'none'}\n >\n {children}\n </Tooltip>\n )\n}\n\nconst BasePlaceholder = React.forwardRef<\n HTMLDivElement,\n PlaceholderProps<undefined>\n>(function BasePlaceholder(\n props: PlaceholderProps<undefined>,\n ref: ThumbnailRef<undefined>\n) {\n const i18n = useI18nContext()\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const {\n hasCaptionPlaceholder,\n caption,\n label,\n disabled: _disabled,\n ...wrapperProps\n } = props\n const ariaLabel = getThumbnailAriaLabel(\n i18n,\n thumbnail.label,\n thumbnail.caption\n )\n\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n ref={ref}\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n tabIndex={0}\n role=\"group\"\n aria-label={ariaLabel}\n {...wrapperProps}\n >\n <StyledPlaceholderThumbnail\n $focused={thumbnail.focused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n >\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n <StyledFileIcon\n variant={\n props.variant ||\n getThumbnailVariantForFilename(props.filename ?? '')\n }\n />\n {thumbnail.size === 'lg' && (\n <Label label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledPlaceholderThumbnail>\n <ThumbnailCaption\n error={thumbnail.error}\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n {thumbnail.disabled && !thumbnail.clickable && (\n <VisuallyHidden>\n {i18n.t('core.thumbnail.unavailable', {\n defaultValue: 'Content is unavailable',\n })}\n </VisuallyHidden>\n )}\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nconst FigurePlaceholder = React.forwardRef<\n HTMLElement,\n PlaceholderProps<'figure'>\n>(function FigurePlaceholder(\n props: PlaceholderProps<'figure'>,\n ref: ThumbnailRef<'figure'>\n) {\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const {\n hasCaptionPlaceholder,\n caption,\n label,\n disabled: _disabled,\n role: _role,\n ...wrapperProps\n } = props\n const i18n = useI18nContext()\n const ariaLabel = getThumbnailAriaLabel(\n i18n,\n thumbnail.label,\n thumbnail.caption\n )\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n ref={ref}\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n tabIndex={0}\n role=\"group\"\n aria-label={ariaLabel}\n {...wrapperProps}\n >\n <StyledPlaceholderThumbnail\n $focused={thumbnail.focused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n as={thumbnail.as}\n >\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n <StyledFileIcon\n variant={\n props.variant ||\n getThumbnailVariantForFilename(props.filename ?? '')\n }\n />\n {thumbnail.size === 'lg' && (\n <FigCaption label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledPlaceholderThumbnail>\n <ThumbnailCaption\n error={thumbnail.error}\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n {thumbnail.disabled && !thumbnail.clickable && (\n <VisuallyHidden>\n {i18n.t('core.thumbnail.unavailable', {\n defaultValue: 'Content is unavailable',\n })}\n </VisuallyHidden>\n )}\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nconst CheckboxPlaceholder = React.forwardRef<\n HTMLInputElement,\n ThumbnailProps<'checkbox'>\n>(function CheckboxPlaceholder(\n { children, as, label, name, onChange, role, qa: _qa, value, ...props_ },\n ref\n) {\n const props = {\n ...props_,\n as,\n label,\n onChange,\n role,\n value,\n isDisabled: props_.disabled,\n isSelected: props_.checked,\n defaultSelected: props_.defaultChecked,\n }\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const { caption, hasCaptionPlaceholder, src, ...wrapperProps } = props_\n const isInputFocused = document.activeElement === thumbnail.inputRef.current\n\n const i18n = useI18nContext()\n const ariaLabel =\n getThumbnailAriaLabel(i18n, thumbnail.label, thumbnail.caption) ||\n i18n.t('core.thumbnail.select')\n\n const preventSpaceOnDisabledThumbnail = (e: React.KeyboardEvent) => {\n if (e.key === ' ' && thumbnail.disabled) {\n e.preventDefault()\n }\n }\n\n React.useEffect(() => {\n if (props.focused && thumbnail.inputRef.current) {\n thumbnail.inputRef.current.focus()\n }\n }, [props.focused, thumbnail.inputRef])\n\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n {...wrapperProps}\n onClick={(e: React.MouseEvent) => {\n if (!thumbnail.disabled) {\n thumbnail.toggleState.toggle()\n thumbnail.onClick?.(e)\n }\n }}\n >\n <StyledPlaceholderThumbnail\n aria-hidden\n $focused={thumbnail.focused || isInputFocused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n >\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n <StyledFileIcon\n variant={\n props.variant ||\n getThumbnailVariantForFilename(props.filename ?? '')\n }\n />\n {thumbnail.size === 'lg' && (\n <Label label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledPlaceholderThumbnail>\n <ThumbnailCaption\n ariaHidden\n error={thumbnail.error}\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n <VisuallyHidden>\n <input\n type=\"checkbox\"\n ref={mergeRefs(thumbnail.inputRef, ref)}\n aria-label={ariaLabel}\n {...mergeProps(thumbnail.inputProps, thumbnail.focusProps)}\n disabled={thumbnail.disabled}\n onKeyDown={preventSpaceOnDisabledThumbnail}\n />\n </VisuallyHidden>\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nfunction PlaceholderInner(\n props: PlaceholderProps<ThumbnailRoleType>,\n ref: ThumbnailRef<ThumbnailRoleType>\n) {\n switch (props.role) {\n case 'checkbox': {\n return (\n <CheckboxPlaceholder\n ref={ref as React.Ref<HTMLInputElement>}\n {...(props as PlaceholderProps<'checkbox'>)}\n />\n )\n }\n case 'figure': {\n return (\n <FigurePlaceholder\n ref={ref as React.Ref<HTMLElement>}\n {...(props as PlaceholderProps<'figure'>)}\n />\n )\n }\n default: {\n return (\n <BasePlaceholder\n ref={ref as React.Ref<HTMLDivElement>}\n {...(props as PlaceholderProps<undefined>)}\n />\n )\n }\n }\n}\n\nconst BaseThumbnail = React.forwardRef<\n HTMLDivElement,\n ThumbnailProps<undefined>\n>(function BaseThumbnail(\n props: ThumbnailProps<undefined>,\n ref: ThumbnailRef<undefined>\n) {\n const i18n = useI18nContext()\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const {\n hasCaptionPlaceholder,\n disabled: _disabled,\n role: _role,\n ...wrapperProps\n } = props\n const ariaLabel = getThumbnailAriaLabel(\n i18n,\n thumbnail.label,\n thumbnail.caption\n )\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n ref={ref}\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n tabIndex={0}\n role=\"group\"\n aria-label={ariaLabel}\n {...wrapperProps}\n >\n <StyledImageThumbnail\n $focused={thumbnail.focused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n >\n {thumbnail.isImageURL && !thumbnail.shouldUsePlaceholder ? (\n <StyledImageThumbnailImage\n src={thumbnail.src as string}\n alt={thumbnail.alt}\n />\n ) : (\n <ThumbnailPreview\n file={thumbnail.src as File}\n aria-label={thumbnail.alt}\n />\n )}\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n {thumbnail.shouldUsePlaceholder && (\n <StyledFileIcon\n variant={\n thumbnail.variant ||\n getThumbnailVariantForFilename(thumbnail.filename ?? '')\n }\n />\n )}\n {thumbnail.size === 'lg' && (\n <Label label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledImageThumbnail>\n <ThumbnailCaption\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n error={thumbnail.error}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n {thumbnail.disabled && !thumbnail.clickable && (\n <VisuallyHidden>\n {i18n.t('core.thumbnail.unavailable', {\n defaultValue: 'Content is unavailable',\n })}\n </VisuallyHidden>\n )}\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nconst FigureThumbnail = React.forwardRef<HTMLElement, ThumbnailProps<'figure'>>(\n function FigureThumbnail(\n props: ThumbnailProps<'figure'>,\n ref: ThumbnailRef<'figure'>\n ) {\n const i18n = useI18nContext()\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const ariaLabel = getThumbnailAriaLabel(\n i18n,\n thumbnail.label,\n thumbnail.caption\n )\n\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n tabIndex={0}\n role=\"group\"\n aria-label={ariaLabel}\n >\n <StyledImageThumbnail\n ref={ref}\n $focused={thumbnail.focused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n as={thumbnail.as}\n >\n {thumbnail.isImageURL && !thumbnail.shouldUsePlaceholder ? (\n <StyledImageThumbnailImage\n src={thumbnail.src as string}\n alt={thumbnail.alt}\n />\n ) : (\n <ThumbnailPreview\n file={thumbnail.src as File}\n aria-label={thumbnail.alt}\n />\n )}\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n {thumbnail.shouldUsePlaceholder && (\n <StyledFileIcon\n variant={\n thumbnail.variant ||\n getThumbnailVariantForFilename(thumbnail.filename ?? '')\n }\n />\n )}\n {thumbnail.size === 'lg' && (\n <FigCaption\n label={thumbnail.label}\n disabled={thumbnail.disabled}\n />\n )}\n <StyledImageThumbnailOverlay />\n </StyledImageThumbnail>\n <ThumbnailCaption\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n error={thumbnail.error}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n {thumbnail.disabled && !thumbnail.clickable && (\n <VisuallyHidden>\n {i18n.t('core.thumbnail.unavailable', {\n defaultValue: 'Content is unavailable',\n })}\n </VisuallyHidden>\n )}\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n }\n)\n\nconst CheckboxThumbnail = React.forwardRef<\n HTMLInputElement,\n ThumbnailProps<'checkbox'>\n>(function CheckboxThumbnail(\n { children, as, label, name, onChange, role, qa: _qa, value, ...props_ },\n ref\n) {\n const props = {\n ...props_,\n as,\n label,\n name,\n onChange,\n role,\n value,\n isDisabled: props_.disabled,\n isSelected: props_.checked,\n defaultSelected: props_.defaultChecked,\n }\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const {\n caption,\n hasCaptionPlaceholder,\n src,\n disabled: _disabled,\n ...wrapperProps\n } = props_\n const isInputFocused = document.activeElement === thumbnail.inputRef.current\n\n const preventSpaceOnDisabledThumbnail = (\n e: React.KeyboardEvent<HTMLInputElement>\n ) => {\n if (e.key === ' ' && thumbnail.disabled) {\n e.preventDefault()\n }\n }\n\n React.useEffect(() => {\n if (props.focused && thumbnail.inputRef.current) {\n thumbnail.inputRef.current.focus()\n }\n }, [props.focused, thumbnail.inputRef])\n\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n {...wrapperProps}\n onClick={(e: React.MouseEvent) => {\n if (!thumbnail.disabled) {\n thumbnail.toggleState.toggle()\n thumbnail.onClick?.(e)\n }\n }}\n >\n <StyledImageThumbnail\n aria-hidden\n $focused={thumbnail.focused || isInputFocused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n >\n {thumbnail.isImageURL && !thumbnail.shouldUsePlaceholder ? (\n <StyledImageThumbnailImage\n src={thumbnail.src as string}\n alt={thumbnail.alt}\n />\n ) : (\n <ThumbnailPreview\n file={thumbnail.src as File}\n aria-label={thumbnail.alt}\n />\n )}\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n {thumbnail.shouldUsePlaceholder && (\n <StyledFileIcon\n variant={\n thumbnail.variant ||\n getThumbnailVariantForFilename(thumbnail.filename ?? '')\n }\n />\n )}\n {thumbnail.size === 'lg' && (\n <Label label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledImageThumbnail>\n <ThumbnailCaption\n ariaHidden\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n error={props.error}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n <VisuallyHidden>\n <input\n ref={mergeRefs(thumbnail.inputRef, ref)}\n type={'checkbox'}\n {...mergeProps(thumbnail.inputProps, thumbnail.focusProps)}\n disabled={thumbnail.disabled}\n onKeyDown={preventSpaceOnDisabledThumbnail}\n />\n </VisuallyHidden>\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nfunction ThumbnailInner(\n props: ThumbnailProps<ThumbnailRoleType>,\n ref: ThumbnailRef<ThumbnailRoleType>\n) {\n const isFile = props.src instanceof File\n const isImageURL = typeof props.src === 'string'\n\n if (!isFile && !isImageURL) {\n console.warn('Unknown Thumbnail source:', props.src)\n }\n\n switch (props.role) {\n case 'checkbox': {\n return (\n <CheckboxThumbnail\n ref={ref as React.Ref<HTMLInputElement>}\n {...(props as ThumbnailProps<'checkbox'>)}\n />\n )\n }\n case 'figure': {\n return (\n <FigureThumbnail\n ref={ref as React.Ref<HTMLElement>}\n {...(props as ThumbnailProps<'figure'>)}\n />\n )\n }\n default: {\n return (\n <BaseThumbnail\n ref={ref as React.Ref<HTMLDivElement>}\n {...(props as PlaceholderProps<undefined>)}\n />\n )\n }\n }\n}\n\nconst Thumbnail_ = React.forwardRef(ThumbnailInner) as <\n Role extends ThumbnailRoles\n>(\n props:\n | ThumbnailProps<Role>\n | (BaseThumbnailProps & { ref?: ThumbnailRef<Role> })\n) => ReturnType<typeof ThumbnailInner>\n\nconst Placeholder = React.forwardRef(PlaceholderInner) as <\n Role extends ThumbnailRoles\n>(\n props:\n | PlaceholderProps<Role>\n | (BasePlaceholderProps & { ref?: ThumbnailRef<Role> })\n) => ReturnType<typeof PlaceholderInner>\n\n// @ts-ignore\nPlaceholder.displayName = 'Thumbnail.Placeholder'\n\n// @ts-ignore\nThumbnail_.displayName = 'Thumbnail'\n\n/**\n\n We use thumbnails to display previews for images or files as either a smaller\n version of an uploaded image, or an icon representing the file type. If an\n image preview can be generated from the file (in the case of images) then\n display that image.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-thumbnail--demo-thumbnail)\n\n @see [Design Guidelines](https://design.procore.com/thumbnail)\n\n */\nexport const Thumbnail = addSubcomponents({ Placeholder }, Thumbnail_)\n"],"mappings":"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"}
|
|
@@ -27,35 +27,35 @@ var captionBase = /*#__PURE__*/css(["color:", ";font-size:12px;line-height:16px;
|
|
|
27
27
|
});
|
|
28
28
|
export var StyledMultilineCaption = /*#__PURE__*/styled.div.withConfig({
|
|
29
29
|
displayName: "StyledMultilineCaption",
|
|
30
|
-
componentId: "core-
|
|
30
|
+
componentId: "core-12_45_0__sc-195f70c-0"
|
|
31
31
|
})(["", ";display:flex;word-wrap:break-word;overflow-wrap:break-word;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-height:", "px;"], captionBase, multilineCaptionMaxHeight);
|
|
32
32
|
export var StyledCaptionText = /*#__PURE__*/styled.span.withConfig({
|
|
33
33
|
displayName: "StyledCaptionText",
|
|
34
|
-
componentId: "core-
|
|
34
|
+
componentId: "core-12_45_0__sc-195f70c-1"
|
|
35
35
|
})(["width:100%;"]);
|
|
36
36
|
export var StyledPlaceholderCaption = /*#__PURE__*/styled.div.withConfig({
|
|
37
37
|
displayName: "StyledPlaceholderCaption",
|
|
38
|
-
componentId: "core-
|
|
38
|
+
componentId: "core-12_45_0__sc-195f70c-2"
|
|
39
39
|
})(["", ""], captionBase);
|
|
40
40
|
export var StyledSingleLineCaption = /*#__PURE__*/styled.div.withConfig({
|
|
41
41
|
displayName: "StyledSingleLineCaption",
|
|
42
|
-
componentId: "core-
|
|
42
|
+
componentId: "core-12_45_0__sc-195f70c-3"
|
|
43
43
|
})(["display:flex;", ""], captionBase);
|
|
44
44
|
export var StyledSinglelineCaptionBody = /*#__PURE__*/styled.span.withConfig({
|
|
45
45
|
displayName: "StyledSinglelineCaptionBody",
|
|
46
|
-
componentId: "core-
|
|
46
|
+
componentId: "core-12_45_0__sc-195f70c-4"
|
|
47
47
|
})(["", ""], getEllipsis);
|
|
48
48
|
export var StyledSinglelineCaptionEnding = /*#__PURE__*/styled.span.withConfig({
|
|
49
49
|
displayName: "StyledSinglelineCaptionEnding",
|
|
50
|
-
componentId: "core-
|
|
50
|
+
componentId: "core-12_45_0__sc-195f70c-5"
|
|
51
51
|
})(["max-width:50%;white-space:nowrap;flex-shrink:0;"]);
|
|
52
52
|
export var StyledLabelText = /*#__PURE__*/styled(Typography).withConfig({
|
|
53
53
|
displayName: "StyledLabelText",
|
|
54
|
-
componentId: "core-
|
|
54
|
+
componentId: "core-12_45_0__sc-195f70c-6"
|
|
55
55
|
})(["", ""], getEllipsis());
|
|
56
56
|
export var StyledThumbnailFigCaption = /*#__PURE__*/styled.figcaption.withConfig({
|
|
57
57
|
displayName: "StyledThumbnailFigCaption",
|
|
58
|
-
componentId: "core-
|
|
58
|
+
componentId: "core-12_45_0__sc-195f70c-7"
|
|
59
59
|
})(["", " ", " color:", ";font-weight:", ";text-align:center;width:100%;position:absolute;bottom:0;right:0;left:0;opacity:0.85;height:", "px;padding:", "px ", "px;background-color:", ";"], getTypographyIntent('small'), getEllipsis(), function (_ref5) {
|
|
60
60
|
var _ref5$$color = _ref5.$color,
|
|
61
61
|
$color = _ref5$$color === void 0 ? 'gray15' : _ref5$$color;
|
|
@@ -63,7 +63,7 @@ export var StyledThumbnailFigCaption = /*#__PURE__*/styled.figcaption.withConfig
|
|
|
63
63
|
}, typographyWeights.bold, labelHeight, spacing.sm / 2, spacing.sm, colors.white);
|
|
64
64
|
export var StyledLabel = /*#__PURE__*/styled.div.withConfig({
|
|
65
65
|
displayName: "StyledLabel",
|
|
66
|
-
componentId: "core-
|
|
66
|
+
componentId: "core-12_45_0__sc-195f70c-8"
|
|
67
67
|
})(["display:flex;justify-content:center;position:absolute;bottom:0;right:0;left:0;opacity:0.85;height:", "px;padding:", "px ", "px;font-size:", "px;background-color:", ";"], labelHeight, spacing.sm / 2, spacing.sm, labelFontSize, colors.white);
|
|
68
68
|
var thumbnailBase = /*#__PURE__*/css(["display:flex;justify-content:center;align-items:center;position:relative;overflow:hidden;border:1px solid ", ";border-radius:", "px;margin:0;", " ", " &:focus{", ";}", " ", " ", ""], colors.gray85, borderRadius.md, function (_ref6) {
|
|
69
69
|
var $clickable = _ref6.$clickable;
|
|
@@ -85,7 +85,7 @@ var thumbnailBase = /*#__PURE__*/css(["display:flex;justify-content:center;align
|
|
|
85
85
|
});
|
|
86
86
|
export var StyledTickIcon = /*#__PURE__*/styled.svg.withConfig({
|
|
87
87
|
displayName: "StyledTickIcon",
|
|
88
|
-
componentId: "core-
|
|
88
|
+
componentId: "core-12_45_0__sc-195f70c-9"
|
|
89
89
|
})(["position:absolute;top:", "px;right:", "px;width:", "px;height:", "px;opacity:0;transform:scale(0.75);transition:transform 250ms ease-out,opacity 100ms ease-out;", " ", ""], spacing.sm, spacing.sm, tickSize, tickSize, function (_ref1) {
|
|
90
90
|
var $selected = _ref1.$selected;
|
|
91
91
|
return $selected && css(["opacity:1;transform:scale(1);"]);
|
|
@@ -95,28 +95,28 @@ export var StyledTickIcon = /*#__PURE__*/styled.svg.withConfig({
|
|
|
95
95
|
});
|
|
96
96
|
export var StyledFileIcon = /*#__PURE__*/styled(DocumentIcon).withConfig({
|
|
97
97
|
displayName: "StyledFileIcon",
|
|
98
|
-
componentId: "core-
|
|
98
|
+
componentId: "core-12_45_0__sc-195f70c-10"
|
|
99
99
|
})(["width:36.5%;height:auto;"]);
|
|
100
100
|
export var StyledImageThumbnailPreview = /*#__PURE__*/styled.div.withConfig({
|
|
101
101
|
displayName: "StyledImageThumbnailPreview",
|
|
102
|
-
componentId: "core-
|
|
102
|
+
componentId: "core-12_45_0__sc-195f70c-11"
|
|
103
103
|
})(["width:100%;height:100%;background-size:cover;background-repeat:no-repeat;background-position:center;", ""], function (_ref11) {
|
|
104
104
|
var $bgImage = _ref11.$bgImage;
|
|
105
105
|
return css(["background-image:url(", ");"], $bgImage);
|
|
106
106
|
});
|
|
107
107
|
export var StyledImageThumbnailOverlay = /*#__PURE__*/styled.div.withConfig({
|
|
108
108
|
displayName: "StyledImageThumbnailOverlay",
|
|
109
|
-
componentId: "core-
|
|
109
|
+
componentId: "core-12_45_0__sc-195f70c-12"
|
|
110
110
|
})(["display:none;position:absolute;top:0;bottom:0;left:0;right:0;"]);
|
|
111
111
|
var blackOverlay = "\n background-color: ".concat(colors.black, ";\n opacity: 0.2;\n");
|
|
112
112
|
var whiteOverlay = "\n background-color: ".concat(colors.white, ";\n opacity: 0.5;\n");
|
|
113
113
|
export var StyledImageThumbnailImage = /*#__PURE__*/styled.img.withConfig({
|
|
114
114
|
displayName: "StyledImageThumbnailImage",
|
|
115
|
-
componentId: "core-
|
|
115
|
+
componentId: "core-12_45_0__sc-195f70c-13"
|
|
116
116
|
})([""]);
|
|
117
117
|
export var StyledImageThumbnail = /*#__PURE__*/styled.div.withConfig({
|
|
118
118
|
displayName: "StyledImageThumbnail",
|
|
119
|
-
componentId: "core-
|
|
119
|
+
componentId: "core-12_45_0__sc-195f70c-14"
|
|
120
120
|
})(["", ";flex-direction:column;", " ", " ", " ", " ", " ", ""], thumbnailBase, function (_ref12) {
|
|
121
121
|
var $disabled = _ref12.$disabled;
|
|
122
122
|
return $disabled && css(["&,&:hover{", "{display:block;", "}}", ",", ",", "{filter:saturate(0);}", "{filter:saturate(0);z-index:-1;}"], StyledImageThumbnailOverlay, whiteOverlay, StyledImageThumbnailPreview, StyledTickIcon, StyledImageThumbnailImage, StyledFileIcon);
|
|
@@ -145,7 +145,7 @@ export var StyledImageThumbnail = /*#__PURE__*/styled.div.withConfig({
|
|
|
145
145
|
});
|
|
146
146
|
export var StyledThumbnailWrapper = /*#__PURE__*/styled.div.withConfig({
|
|
147
147
|
displayName: "StyledThumbnailWrapper",
|
|
148
|
-
componentId: "core-
|
|
148
|
+
componentId: "core-12_45_0__sc-195f70c-15"
|
|
149
149
|
})(["display:flex;", " ", ""], function (_ref18) {
|
|
150
150
|
var $size = _ref18.$size;
|
|
151
151
|
return $size === 'lg' ? "\n width: ".concat(thumbnailSizeLg, "px;\n ") : '';
|
|
@@ -156,7 +156,7 @@ export var StyledThumbnailWrapper = /*#__PURE__*/styled.div.withConfig({
|
|
|
156
156
|
});
|
|
157
157
|
export var StyledPlaceholderThumbnail = /*#__PURE__*/styled.div.withConfig({
|
|
158
158
|
displayName: "StyledPlaceholderThumbnail",
|
|
159
|
-
componentId: "core-
|
|
159
|
+
componentId: "core-12_45_0__sc-195f70c-16"
|
|
160
160
|
})(["", " ", " ", " ", " ", ""], thumbnailBase, function (_ref20) {
|
|
161
161
|
var $clickable = _ref20.$clickable;
|
|
162
162
|
return $clickable && css(["&:hover{background-color:", ";}"], colors.gray96);
|
|
@@ -136,6 +136,10 @@ export declare type PlaceholderProps<Role extends ThumbnailRoles = undefined> =
|
|
|
136
136
|
ref?: ThumbnailRef<undefined>;
|
|
137
137
|
};
|
|
138
138
|
export interface MultilineCaptionProps {
|
|
139
|
+
/**
|
|
140
|
+
* When true, hides this caption subtree from assistive technology (e.g. checkbox Thumbnail).
|
|
141
|
+
*/
|
|
142
|
+
ariaHidden?: boolean;
|
|
139
143
|
/**
|
|
140
144
|
* @since 10.19.0
|
|
141
145
|
*/
|
|
@@ -162,6 +166,10 @@ export interface MultilineCaptionProps {
|
|
|
162
166
|
onCaptionOverflowChange?: (isOverflowing: boolean) => void;
|
|
163
167
|
}
|
|
164
168
|
export interface SinglelineCaptionProps {
|
|
169
|
+
/**
|
|
170
|
+
* When true, hides this caption subtree from assistive technology (e.g. checkbox Thumbnail).
|
|
171
|
+
*/
|
|
172
|
+
ariaHidden?: boolean;
|
|
165
173
|
/**
|
|
166
174
|
* @since 10.19.0
|
|
167
175
|
*/
|
|
@@ -202,6 +210,10 @@ export interface CaptionTooltipProps {
|
|
|
202
210
|
children: ReactNode;
|
|
203
211
|
}
|
|
204
212
|
export interface CaptionProps {
|
|
213
|
+
/**
|
|
214
|
+
* When true, hides this caption subtree from assistive technology (e.g. checkbox Thumbnail).
|
|
215
|
+
*/
|
|
216
|
+
ariaHidden?: boolean;
|
|
205
217
|
/**
|
|
206
218
|
* @since 10.19.0
|
|
207
219
|
*/
|