@procore/core-react 12.38.0 → 12.39.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/.jest/testShims.js +6 -0
- package/CHANGELOG.md +43 -0
- package/dist/AnchorNavigation/AnchorNavigation.styles.js +3 -3
- package/dist/Avatar/Avatar.styles.js +6 -6
- package/dist/Avatar/Avatar.styles.js.map +1 -1
- package/dist/AvatarStack/AvatarStack.js +65 -25
- package/dist/AvatarStack/AvatarStack.js.map +1 -1
- package/dist/AvatarStack/AvatarStack.styles.js +8 -8
- package/dist/AvatarStack/AvatarStack.styles.js.map +1 -1
- package/dist/AvatarStack/useAvatarPopover.d.ts +14 -0
- package/dist/AvatarStack/useAvatarPopover.js +57 -0
- package/dist/AvatarStack/useAvatarPopover.js.map +1 -0
- package/dist/AvatarStack/useAvatarPopover.types.d.ts +4 -0
- package/dist/AvatarStack/useAvatarPopover.types.js +2 -0
- package/dist/AvatarStack/useAvatarPopover.types.js.map +1 -0
- 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/Calendar/Calendar.styles.js +9 -9
- package/dist/Card/Card.styles.js +1 -1
- package/dist/Checkbox/Checkbox.d.ts +0 -1
- package/dist/Checkbox/Checkbox.js +5 -6
- package/dist/Checkbox/Checkbox.js.map +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.js +12 -2
- package/dist/DateInput/DateInput.js.map +1 -1
- package/dist/DateInput/DateInput.styles.js +6 -6
- package/dist/DateSelect/DateSelect.types.d.ts +1 -1
- package/dist/DateSelect/DateSelect.types.js.map +1 -1
- package/dist/DetailPage/DetailPage.styles.js +7 -7
- package/dist/Dropdown/Dropdown.styles.js +3 -3
- 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.js +3 -7
- package/dist/FileList/FileList.js.map +1 -1
- package/dist/FileList/FileList.styles.d.ts +0 -1
- package/dist/FileList/FileList.styles.js +3 -7
- package/dist/FileList/FileList.styles.js.map +1 -1
- 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 +4 -4
- package/dist/FilterToken/FilterToken.styles.js +5 -5
- package/dist/FlexList/FlexList.styles.js +1 -1
- package/dist/Form/Form.js +74 -58
- package/dist/Form/Form.js.map +1 -1
- package/dist/Form/Form.styles.d.ts +0 -14
- package/dist/Form/Form.styles.js +14 -24
- package/dist/Form/Form.styles.js.map +1 -1
- package/dist/Form/Form.types.d.ts +22 -2
- package/dist/Form/Form.types.js.map +1 -1
- package/dist/Form/FormFieldTooltip.js +4 -11
- package/dist/Form/FormFieldTooltip.js.map +1 -1
- package/dist/Form/StyledFormikForm.styles.js +2 -2
- package/dist/GhostPlaceholder/GhostPlaceholder.styles.js +2 -2
- package/dist/Grid/Grid.styles.js +2 -2
- package/dist/GroupSelect/GroupSelect.js +5 -4
- package/dist/GroupSelect/GroupSelect.js.map +1 -1
- package/dist/GroupSelect/GroupSelect.styles.js +1 -1
- package/dist/GroupSelect/GroupSelect.types.d.ts +5 -5
- package/dist/GroupSelect/GroupSelect.types.js.map +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/Menu/Menu.js +1 -5
- package/dist/Menu/Menu.js.map +1 -1
- package/dist/MenuImperative/MenuImperative.js +7 -10
- package/dist/MenuImperative/MenuImperative.js.map +1 -1
- package/dist/MenuImperative/MenuImperative.styles.d.ts +2 -3
- package/dist/MenuImperative/MenuImperative.styles.js +26 -25
- package/dist/MenuImperative/MenuImperative.styles.js.map +1 -1
- package/dist/MenuImperative/MenuImperative.types.d.ts +4 -0
- package/dist/MenuImperative/MenuImperative.types.js.map +1 -1
- package/dist/MenuImperative/sensors.js +16 -58
- package/dist/MenuImperative/sensors.js.map +1 -1
- package/dist/Modal/Modal.styles.js +13 -13
- package/dist/MultiSelect/MultiSelect.js +50 -28
- package/dist/MultiSelect/MultiSelect.js.map +1 -1
- package/dist/MultiSelect/MultiSelect.styles.d.ts +1 -0
- package/dist/MultiSelect/MultiSelect.styles.js +12 -8
- package/dist/MultiSelect/MultiSelect.styles.js.map +1 -1
- package/dist/MultiSelect/MultiSelect.types.d.ts +31 -1
- package/dist/MultiSelect/MultiSelect.types.js.map +1 -1
- 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/a11yPresets.js +5 -3
- package/dist/OverlayTrigger/a11yPresets.js.map +1 -1
- package/dist/PageLayout/PageLayout.js +31 -12
- package/dist/PageLayout/PageLayout.js.map +1 -1
- package/dist/PageLayout/PageLayout.styles.js +16 -16
- package/dist/PageLayout/PageLayout.types.d.ts +10 -0
- package/dist/PageLayout/PageLayout.types.js.map +1 -1
- 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 +4 -3
- 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 +9 -9
- package/dist/Section/Section.styles.js.map +1 -1
- package/dist/SegmentedController/SegmentedController.js +1 -2
- package/dist/SegmentedController/SegmentedController.js.map +1 -1
- package/dist/SegmentedController/SegmentedController.styles.js +4 -4
- package/dist/Select/Select.d.ts +3 -4
- package/dist/Select/Select.js +2 -2
- package/dist/Select/Select.js.map +1 -1
- package/dist/Select/Select.styles.js +9 -9
- package/dist/Select/Select.styles.js.map +1 -1
- package/dist/Select/Select.types.d.ts +7 -0
- package/dist/Select/Select.types.js.map +1 -1
- package/dist/Select/index.d.ts +1 -1
- package/dist/Select/index.js.map +1 -1
- package/dist/Semantic/Semantic.styles.js +9 -9
- package/dist/Slider/Slider.styles.js +5 -5
- package/dist/Spinner/Spinner.styles.js +7 -7
- package/dist/SplitViewCard/SplitViewCard.js +13 -0
- package/dist/SplitViewCard/SplitViewCard.js.map +1 -1
- package/dist/SplitViewCard/SplitViewCard.styles.js +8 -8
- package/dist/SuperSelect/SuperSelect.presets.styles.js +1 -1
- package/dist/SuperSelect/SuperSelect.styles.js +38 -38
- package/dist/Switch/Switch.styles.js +4 -4
- package/dist/Table/Table.styles.d.ts +1 -1
- package/dist/Table/Table.styles.js +28 -28
- package/dist/TableShelf/TableShelf.styles.js +5 -5
- package/dist/Tabs/Tabs.styles.js +15 -15
- package/dist/Tearsheet/Tearsheet.styles.js +17 -28
- package/dist/Tearsheet/Tearsheet.styles.js.map +1 -1
- package/dist/Tearsheet/storybook/PageLayoutDemo.js +7 -1
- package/dist/Tearsheet/storybook/PageLayoutDemo.js.map +1 -1
- package/dist/TextArea/TextArea.styles.js +1 -1
- package/dist/TextEditorOutput/TextEditorOutput.styles.js +1 -1
- package/dist/Thumbnail/Thumbnail.styles.js +17 -17
- 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.d.ts +4 -2
- package/dist/Tooltip/Tooltip.js +30 -5
- package/dist/Tooltip/Tooltip.js.map +1 -1
- package/dist/Tooltip/Tooltip.styles.d.ts +1 -0
- package/dist/Tooltip/Tooltip.styles.js +12 -4
- package/dist/Tooltip/Tooltip.styles.js.map +1 -1
- package/dist/Tooltip/Tooltip.types.d.ts +8 -0
- package/dist/Tooltip/Tooltip.types.js.map +1 -1
- 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 +61 -48
- package/dist/_hooks/IntersectionObserver/createIntersectionObserver.d.ts +0 -1
- package/dist/_hooks/IntersectionObserver/createIntersectionObserver.js +0 -1
- package/dist/_hooks/IntersectionObserver/createIntersectionObserver.js.map +1 -1
- package/dist/_locales/de-DE.json +3 -1
- package/dist/_locales/en-AU.json +3 -1
- package/dist/_locales/en-CA.json +3 -1
- package/dist/_locales/en-GB.json +3 -1
- package/dist/_locales/en.json +2 -1
- package/dist/_locales/es-ES.json +3 -1
- package/dist/_locales/es.json +3 -1
- package/dist/_locales/fr-CA.json +3 -1
- package/dist/_locales/fr-FR.json +3 -1
- package/dist/_locales/is-IS.json +3 -1
- package/dist/_locales/it-IT.json +3 -1
- package/dist/_locales/ja-JP.json +3 -1
- package/dist/_locales/pl-PL.json +3 -1
- package/dist/_locales/pseudo.json +2 -1
- package/dist/_locales/pt-BR.json +3 -1
- package/dist/_locales/pt-PT.json +5 -3
- package/dist/_locales/th-TH.json +3 -1
- package/dist/_locales/zh-SG.json +3 -1
- package/dist/_locales/zh-TW.json +3 -1
- package/dist/_storyHelpers_/components/Deprecation.styles.js +1 -1
- package/dist/_storyHelpers_/components/StoryGrid.js +3 -3
- package/dist/_styles/mixins.d.ts +13 -1
- package/dist/_styles/mixins.js +15 -1
- package/dist/_styles/mixins.js.map +1 -1
- package/dist/_typedoc/AnchorNavigation/AnchorNavigation.types.json +3 -3
- package/dist/_typedoc/Avatar/Avatar.types.json +20 -20
- package/dist/_typedoc/AvatarStack/AvatarStack.types.json +24 -24
- 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 +13 -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 +37 -37
- 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 +862 -762
- 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 +75 -55
- 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 +77 -77
- package/dist/_typedoc/Modal/Modal.types.json +46 -46
- package/dist/_typedoc/MultiSelect/MultiSelect.types.json +52 -32
- 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 +46 -26
- package/dist/_typedoc/Pagination/Pagination.types.json +7 -7
- package/dist/_typedoc/Panel/Panel.types.json +30 -30
- 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 +109 -63
- 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 +20 -20
- 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 +25 -14
- 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/dist/_utils/scrollIntoView.js +21 -7
- package/dist/_utils/scrollIntoView.js.map +1 -1
- package/package.json +8 -7
- package/dist/Checkbox/CheckboxTooltip.d.ts +0 -4
- package/dist/Checkbox/CheckboxTooltip.js +0 -26
- package/dist/Checkbox/CheckboxTooltip.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Section.styles.js","names":["styled","css","StyledFormRow","Title","colors","
|
|
1
|
+
{"version":3,"file":"Section.styles.js","names":["styled","css","StyledFormRow","Title","colors","getGapOutlineFocus","spacing","StyledSectionBanner","div","withConfig","displayName","componentId","sm","StyledSectionInner","StyledSectionCollapseHeading","sectionClassnames","divide","levelAnonymous","level","num","concat","StyledSection","lg","gray85","xs","StyledSectionContentRegion","_ref","$closed","_ref2","$noHeader","xl","StyledSectionHeader","StyledTitle"],"sources":["../../src/Section/Section.styles.ts"],"sourcesContent":["import styled, { css } from 'styled-components'\nimport { StyledFormRow } from '../Form/Form.styles'\nimport { Title } from '../Title/Title'\nimport { colors } from '../_styles/colors'\nimport { getGapOutlineFocus } from '../_styles/mixins'\nimport { spacing } from '../_styles/spacing'\n\nexport const StyledSectionBanner = styled.div`\n margin-bottom: ${spacing.sm}px;\n\n > * + * {\n margin-top: ${spacing.sm}px;\n }\n`\n\nexport const StyledSectionInner = styled.div``\n\nexport const StyledSectionCollapseHeading = styled.div`\n align-self: flex-start;\n margin-right: ${spacing.sm}px;\n`\n\nexport const sectionClassnames = {\n divide: 'section--divide',\n levelAnonymous: 'section--level-anon',\n level: (num: number) => `section--level-${num}`,\n}\n\nexport const StyledSection = styled.div`\n padding-left: ${spacing.lg}px;\n padding-right: ${spacing.lg}px;\n padding-bottom: ${spacing.lg}px;\n\n & > ${StyledSectionInner} {\n padding-top: ${spacing.lg}px;\n }\n\n // horizontal divider\n &.${sectionClassnames.divide} {\n & > ${StyledSectionInner} {\n border-top: 1px solid ${colors.gray85};\n }\n }\n\n // if leading, no horizontal divider\n &:first-child > ${StyledSectionInner} {\n border-top: 0;\n }\n\n & & {\n padding-left: 0;\n padding-right: 0;\n\n // if leading in nested, add the division back\n &:first-child > ${StyledSectionInner} {\n border-top: 1px solid ${colors.gray85};\n }\n\n &:last-child {\n padding-bottom: 0;\n }\n }\n\n // form rows have trailing space for error message\n ${StyledFormRow}:last-of-type {\n margin-bottom: ${spacing.lg * -1}px;\n }\n\n // form rows have trailing space for error message\n ${StyledFormRow} + &&& {\n padding-top: ${spacing.xs}px;\n }\n`\n\nexport const StyledSectionContentRegion = styled.div<{\n $closed: boolean\n $noHeader: boolean\n}>`\n padding-top: ${spacing.sm}px;\n\n &:focus-visible {\n ${getGapOutlineFocus('inside')}\n }\n\n ${({ $closed }) =>\n $closed &&\n css`\n padding-top: 0;\n `}\n\n ${({ $noHeader }) =>\n $noHeader &&\n css`\n padding-top: 0;\n `}\n\n // if a nested section isn't first\n // Section\n // P\n // Section <-- space above\n & > :not(${StyledSection}) + ${StyledSection} {\n padding-top: ${spacing.xl}px;\n }\n\n // nested sections, the last one doesn't need more trailing space\n ${StyledSection} ${StyledSection} &:last-of-type {\n padding-bottom: 0;\n }\n`\n\nexport const StyledSectionHeader = styled.div`\n align-items: center;\n display: flex;\n // min-height on header for alignment:\n // - when heading line height is less than the collapse button height\n // - when heading line height is less than the button size it will shift\n // the heading text when the section is opened and buttons appear\n min-height: 36px;\n word-break: break-word;\n`\n\nexport const StyledTitle = styled(Title)`\n width: 100%;\n`\n"],"mappings":"AAAA,OAAOA,MAAM,IAAIC,GAAG,QAAQ,mBAAmB;AAC/C,SAASC,aAAa,QAAQ,qBAAqB;AACnD,SAASC,KAAK,QAAQ,gBAAgB;AACtC,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,SAASC,kBAAkB,QAAQ,mBAAmB;AACtD,SAASC,OAAO,QAAQ,oBAAoB;AAE5C,OAAO,IAAMC,mBAAmB,gBAAGP,MAAM,CAACQ,GAAG,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,yDAC1BL,OAAO,CAACM,EAAE,EAGXN,OAAO,CAACM,EAAE,CAE3B;AAED,OAAO,IAAMC,kBAAkB,gBAAGb,MAAM,CAACQ,GAAG,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,QAAE;AAE9C,OAAO,IAAMG,4BAA4B,gBAAGd,MAAM,CAACQ,GAAG,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,mDAEpCL,OAAO,CAACM,EAAE,CAC3B;AAED,OAAO,IAAMG,iBAAiB,GAAG;EAC/BC,MAAM,EAAE,iBAAiB;EACzBC,cAAc,EAAE,qBAAqB;EACrCC,KAAK,EAAE,SAAPA,KAAKA,CAAGC,GAAW;IAAA,yBAAAC,MAAA,CAAuBD,GAAG;EAAA;AAC/C,CAAC;AAED,OAAO,IAAME,aAAa,gBAAGrB,MAAM,CAACQ,GAAG,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,8WACrBL,OAAO,CAACgB,EAAE,EACThB,OAAO,CAACgB,EAAE,EACThB,OAAO,CAACgB,EAAE,EAEtBT,kBAAkB,EACPP,OAAO,CAACgB,EAAE,EAIvBP,iBAAiB,CAACC,MAAM,EACpBH,kBAAkB,EACET,MAAM,CAACmB,MAAM,EAKvBV,kBAAkB,EAShBA,kBAAkB,EACVT,MAAM,CAACmB,MAAM,EASvCrB,aAAa,EACII,OAAO,CAACgB,EAAE,GAAG,CAAC,CAAC,EAIhCpB,aAAa,EACEI,OAAO,CAACkB,EAAE,CAE5B;AAED,OAAO,IAAMC,0BAA0B,gBAAGzB,MAAM,CAACQ,GAAG,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,gJAInCL,OAAO,CAACM,EAAE,EAGrBP,kBAAkB,CAAC,QAAQ,CAAC,EAG9B,UAAAqB,IAAA;EAAA,IAAGC,OAAO,GAAAD,IAAA,CAAPC,OAAO;EAAA,OACVA,OAAO,IACP1B,GAAG,oBAEF;AAAA,GAED,UAAA2B,KAAA;EAAA,IAAGC,SAAS,GAAAD,KAAA,CAATC,SAAS;EAAA,OACZA,SAAS,IACT5B,GAAG,oBAEF;AAAA,GAMQoB,aAAa,EAAOA,aAAa,EAC3Bf,OAAO,CAACwB,EAAE,EAIzBT,aAAa,EAAIA,aAAa,CAGjC;AAED,OAAO,IAAMU,mBAAmB,gBAAG/B,MAAM,CAACQ,GAAG,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,8EAS5C;AAED,OAAO,IAAMqB,WAAW,gBAAGhC,MAAM,CAACG,KAAK,CAAC,CAAAM,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,mBAEvC"}
|
|
@@ -235,8 +235,7 @@ export var Tooltip = /*#__PURE__*/React.forwardRef(function Tooltip(_ref7, ref)
|
|
|
235
235
|
props = _objectWithoutProperties(_ref7, _excluded4);
|
|
236
236
|
return overlay ? /*#__PURE__*/React.createElement(TooltipBase, _extends({}, props, {
|
|
237
237
|
overlay: overlay,
|
|
238
|
-
ref: ref
|
|
239
|
-
trigger: ['hover', 'focus']
|
|
238
|
+
ref: ref
|
|
240
239
|
}), children) : /*#__PURE__*/React.createElement(React.Fragment, null, children);
|
|
241
240
|
});
|
|
242
241
|
var withState = function withState(config) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SegmentedController.js","names":["useFocusRing","useRadio","useRadioGroup","mergeProps","useId","VisuallyHidden","React","useRadioGroupState","Tooltip","TooltipBase","addSubcomponents","StyledContainer","StyledLabel","StyledSegment","StyledSegmentDisabledInteractiveWrapper","isSegment","node","isValidElement","type","Segment","determineSelectedState","_ref","active","selected","isSelected","undefined","RadioButtonContext","createContext","SegmentedController_","forwardRef","SegmentedController","_ref2","ref","ariaLabel","ariaLabelledby","children","_ref2$block","block","disabled","onChange","props","_objectWithoutProperties","_excluded","name","radioGroupState","isDisabled","rawValue","num","Number","value","isNaN","_useRadioGroup","orientation","radioGroupProps","createElement","_extends","$block","Provider","Children","toArray","filter","child","map","index","cloneElement","internalIndex","SegmentWithGroup","_ref3","_ref3$placement","placement","tooltip","state","_excluded2","adjustedValue","String","innerRef","useRef","actualRef","_useRadio","inputProps","_useFocusRing","focusProps","isFocusVisible","useEffect","setSelectedValue","overlay","$focused","$disabled","$selected","StandaloneSegment","_ref4","_ref5","_ref6","_ref4$placement","_excluded3","_useFocusRing2","isControlled","_React$useState","useState","_React$useState2","_slicedToArray","uncontrolledSelected","setUncontrolledSelected","handleChange","e","_props$onChange","target","checked","call","useContext","_ref7","_excluded4","trigger","Fragment","withState","config","Component","_React$useState3","_React$useState4","selectedIndex","setSelected","_objectSpread","State","_ref8","_excluded5","displayName"],"sources":["../../src/SegmentedController/SegmentedController.tsx"],"sourcesContent":["import { useFocusRing } from '@react-aria/focus'\nimport { useRadio, useRadioGroup } from '@react-aria/radio'\nimport { mergeProps, useId } from '@react-aria/utils'\nimport { VisuallyHidden } from '@react-aria/visually-hidden'\nimport React from 'react'\nimport type { RadioGroupState } from 'react-stately'\nimport { useRadioGroupState } from 'react-stately'\nimport { Tooltip as TooltipBase } from '../Tooltip/Tooltip'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport {\n StyledContainer,\n StyledLabel,\n StyledSegment,\n StyledSegmentDisabledInteractiveWrapper,\n} from './SegmentedController.styles'\nimport type {\n SegmentedControllerProps,\n SegmentedControllerSegmentProps,\n SegmentedControllerTooltipProps,\n} from './SegmentedController.types'\n\nfunction isSegment(\n node: unknown\n): node is React.ReactElement<HTMLInputElement> {\n return (\n React.isValidElement(node as React.ReactElement) &&\n (node as React.ReactElement).type === Segment\n )\n}\n\nexport function determineSelectedState({\n active,\n selected,\n isSelected,\n}: {\n active?: boolean\n isSelected: boolean\n selected?: boolean\n}): boolean {\n // Selected is a prop, so it should be the source of truth\n if (selected !== undefined) {\n return selected\n }\n // Active is a prop, so it should be the source of truth\n if (active !== undefined) {\n return active\n }\n // If neither props are passed in, use the react-stately state\n return isSelected\n}\n\nconst RadioButtonContext = React.createContext<RadioGroupState | null>(null)\n\nconst SegmentedController_ = React.forwardRef<\n HTMLDivElement,\n SegmentedControllerProps\n>(function SegmentedController(\n {\n // TODO make label props required in type?\n // React Aria logs warnings without 1 of 2. Axe does not fail\n ['aria-label']: ariaLabel,\n ['aria-labelledby']: ariaLabelledby,\n children,\n block = false,\n disabled,\n onChange,\n ...props\n },\n ref\n) {\n const name = useId()\n const radioGroupState = useRadioGroupState({\n name,\n isDisabled: disabled,\n onChange: (rawValue) => {\n const num = Number(rawValue)\n const value = !isNaN(num) ? num : rawValue\n onChange?.(value as number)\n },\n })\n const { radioGroupProps } = useRadioGroup(\n {\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n orientation: 'horizontal',\n },\n radioGroupState\n )\n return (\n <StyledContainer ref={ref} $block={block} {...radioGroupProps} {...props}>\n <RadioButtonContext.Provider value={radioGroupState}>\n {React.Children.toArray(children)\n .filter((child) => isSegment(child))\n .map((child, index) =>\n React.cloneElement(child as React.ReactElement, {\n internalIndex: index,\n })\n )}\n </RadioButtonContext.Provider>\n </StyledContainer>\n )\n})\n\n// Segment with RadioGroup context\nconst SegmentWithGroup = React.forwardRef<\n HTMLInputElement,\n React.InputHTMLAttributes<HTMLInputElement> &\n SegmentedControllerSegmentProps & { state: RadioGroupState }\n>(function SegmentWithGroup(\n {\n active,\n children,\n placement = 'top',\n tooltip,\n disabled,\n value,\n internalIndex,\n selected,\n state,\n ...props\n },\n ref\n) {\n const adjustedValue = String(value ?? internalIndex)\n const innerRef = React.useRef<HTMLInputElement>(null)\n const actualRef = ref ?? innerRef\n\n const { inputProps, isSelected, isDisabled } = useRadio(\n {\n isDisabled: disabled ?? state.isDisabled,\n value: adjustedValue as string,\n children,\n },\n state,\n actualRef as unknown as React.RefObject<HTMLInputElement>\n )\n const { focusProps, isFocusVisible } = useFocusRing()\n\n React.useEffect(() => {\n if (active || selected) {\n state.setSelectedValue(adjustedValue)\n }\n }, [active, state, adjustedValue, selected])\n\n return (\n <Tooltip overlay={tooltip} placement={placement}>\n <StyledSegmentDisabledInteractiveWrapper>\n <StyledSegment\n $focused={isFocusVisible}\n $disabled={isDisabled}\n $selected={determineSelectedState({ active, selected, isSelected })}\n >\n <VisuallyHidden>\n <input\n {...mergeProps(props, inputProps, focusProps)}\n ref={actualRef}\n />\n </VisuallyHidden>\n <StyledLabel>{children}</StyledLabel>\n </StyledSegment>\n </StyledSegmentDisabledInteractiveWrapper>\n </Tooltip>\n )\n})\n\n// Standalone segment\nconst StandaloneSegment = React.forwardRef<\n HTMLInputElement,\n React.InputHTMLAttributes<HTMLInputElement> & SegmentedControllerSegmentProps\n>(function StandaloneSegment(\n {\n active,\n children,\n placement = 'top',\n tooltip,\n disabled,\n value,\n internalIndex,\n selected,\n ...props\n },\n ref\n) {\n const adjustedValue = String(value ?? internalIndex)\n const innerRef = React.useRef<HTMLInputElement>(null)\n const actualRef = ref ?? innerRef\n const { focusProps, isFocusVisible } = useFocusRing()\n\n const isControlled = selected !== undefined || active !== undefined\n const [uncontrolledSelected, setUncontrolledSelected] = React.useState(\n selected ?? active ?? false\n )\n const isSelected = selected ?? active ?? uncontrolledSelected\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n if (!isControlled) {\n setUncontrolledSelected(e.target.checked)\n }\n props.onChange?.(e)\n }\n\n return (\n <Tooltip overlay={tooltip} placement={placement}>\n <StyledSegmentDisabledInteractiveWrapper>\n <StyledSegment\n $focused={isFocusVisible}\n $disabled={disabled ?? false}\n $selected={isSelected}\n >\n <VisuallyHidden>\n <input\n {...mergeProps(props, focusProps)}\n ref={actualRef}\n type=\"radio\"\n value={adjustedValue}\n checked={isSelected}\n disabled={disabled}\n onChange={handleChange}\n />\n </VisuallyHidden>\n <StyledLabel>{children}</StyledLabel>\n </StyledSegment>\n </StyledSegmentDisabledInteractiveWrapper>\n </Tooltip>\n )\n})\n\n// Wrapper that chooses the right implementation\nexport const Segment = React.forwardRef<\n HTMLInputElement,\n React.InputHTMLAttributes<HTMLInputElement> & SegmentedControllerSegmentProps\n>(function Segment(props, ref) {\n const state = React.useContext(RadioButtonContext)\n\n if (state) {\n return <SegmentWithGroup {...props} state={state} ref={ref} />\n }\n\n return <StandaloneSegment {...props} ref={ref} />\n})\n\n/**\n * @deprecated\n *\n * The `SegmentedController.Tooltip` component has been deprecated will be\n * removed in a future version.\n *\n * Tooltips are now built into `SegmentedController.Segment`s, and can be added\n * by configuring the `tooltip` prop.\n *\n * **Before**\n *\n * ```\n * <SegmentedController>\n * <SegmentedController.Tooltip tooltip=\"Item 1 is the first item\">\n * <SegmentedController.Segment>\n * Item 1\n * </SegmentedController.Segment>\n * </SegmentedController.Tooltip>\n * </SegmentedController>\n * ```\n *\n * **After**\n *\n * ```\n * <SegmentedController>\n * <SegmentedController.Segment tooltip=\"Item 1 is the first item\">\n * Item 1\n * </SegmentedController.Segment>\n * </SegmentedController>\n * ```\n *\n * @deprecatedSince 10.20.0\n */\nexport const Tooltip = React.forwardRef<\n HTMLElement,\n SegmentedControllerTooltipProps\n>(function Tooltip({ children, overlay, ...props }, ref) {\n return overlay ? (\n <TooltipBase\n {...props}\n overlay={overlay}\n ref={ref}\n trigger={['hover', 'focus']}\n >\n {children}\n </TooltipBase>\n ) : (\n <>{children}</>\n )\n})\n\nconst withState = (config: any) => (Component: any) => (props: any) => {\n const [selectedIndex, setSelected] = React.useState(0)\n\n return <Component {...{ ...props, selectedIndex, setSelected }} />\n}\n\n/**\n * @deprecated\n *\n * This `SegmentedController.State` utility has been deprecated. Please just\n * use a simple state management hook instead.\n *\n *\n * **Before**\n *\n * ```\n * <SegmentedController.State>\n * {({ selectedIndex, setSelected }) => (\n * <SegmentedController>\n * <SegmentedController.Segment onClick={() => setSelected(0)} active={selectedIndex === 0}>\n * Item 1\n * </SegmentedController.Segment>\n * </SegmentedController>\n * )}\n * </SegmentedController.State>\n * ```\n *\n * **After**\n *\n * ```\n * const [selected, setSelected] = React.useState(0)\n *\n * <SegmentedController onChange={setSelected}>\n * <SegmentedController.Segment active={selectedIndex === 0}>\n * Item 1\n * </SegmentedController.Segment>\n * </SegmentedController>\n * ```\n *\n * @deprecatedSince 10.20.0\n */\nexport const State = withState({})(({ children, ...props }: any) =>\n children(props)\n)\n\nSegmentedController_.displayName = 'SegmentedController'\n\nSegment.displayName = 'SegmentedController.Segment'\n\nTooltip.displayName = 'SegmentedController.Tooltip'\n\n/**\n\n Segmented controllers allow users to switch between related but mutually\n exclusive content or actions.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-segmentedcontroller--demo)\n\n @see [Design Guidelines](https://design.procore.com/segmented-controller)\n\n */\nexport const SegmentedController = addSubcomponents(\n {\n Segment,\n State,\n Tooltip,\n },\n SegmentedController_\n)\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SegmentedController.js","names":["useFocusRing","useRadio","useRadioGroup","mergeProps","useId","VisuallyHidden","React","useRadioGroupState","Tooltip","TooltipBase","addSubcomponents","StyledContainer","StyledLabel","StyledSegment","StyledSegmentDisabledInteractiveWrapper","isSegment","node","isValidElement","type","Segment","determineSelectedState","_ref","active","selected","isSelected","undefined","RadioButtonContext","createContext","SegmentedController_","forwardRef","SegmentedController","_ref2","ref","ariaLabel","ariaLabelledby","children","_ref2$block","block","disabled","onChange","props","_objectWithoutProperties","_excluded","name","radioGroupState","isDisabled","rawValue","num","Number","value","isNaN","_useRadioGroup","orientation","radioGroupProps","createElement","_extends","$block","Provider","Children","toArray","filter","child","map","index","cloneElement","internalIndex","SegmentWithGroup","_ref3","_ref3$placement","placement","tooltip","state","_excluded2","adjustedValue","String","innerRef","useRef","actualRef","_useRadio","inputProps","_useFocusRing","focusProps","isFocusVisible","useEffect","setSelectedValue","overlay","$focused","$disabled","$selected","StandaloneSegment","_ref4","_ref5","_ref6","_ref4$placement","_excluded3","_useFocusRing2","isControlled","_React$useState","useState","_React$useState2","_slicedToArray","uncontrolledSelected","setUncontrolledSelected","handleChange","e","_props$onChange","target","checked","call","useContext","_ref7","_excluded4","Fragment","withState","config","Component","_React$useState3","_React$useState4","selectedIndex","setSelected","_objectSpread","State","_ref8","_excluded5","displayName"],"sources":["../../src/SegmentedController/SegmentedController.tsx"],"sourcesContent":["import { useFocusRing } from '@react-aria/focus'\nimport { useRadio, useRadioGroup } from '@react-aria/radio'\nimport { mergeProps, useId } from '@react-aria/utils'\nimport { VisuallyHidden } from '@react-aria/visually-hidden'\nimport React from 'react'\nimport type { RadioGroupState } from 'react-stately'\nimport { useRadioGroupState } from 'react-stately'\nimport { Tooltip as TooltipBase } from '../Tooltip/Tooltip'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport {\n StyledContainer,\n StyledLabel,\n StyledSegment,\n StyledSegmentDisabledInteractiveWrapper,\n} from './SegmentedController.styles'\nimport type {\n SegmentedControllerProps,\n SegmentedControllerSegmentProps,\n SegmentedControllerTooltipProps,\n} from './SegmentedController.types'\n\nfunction isSegment(\n node: unknown\n): node is React.ReactElement<HTMLInputElement> {\n return (\n React.isValidElement(node as React.ReactElement) &&\n (node as React.ReactElement).type === Segment\n )\n}\n\nexport function determineSelectedState({\n active,\n selected,\n isSelected,\n}: {\n active?: boolean\n isSelected: boolean\n selected?: boolean\n}): boolean {\n // Selected is a prop, so it should be the source of truth\n if (selected !== undefined) {\n return selected\n }\n // Active is a prop, so it should be the source of truth\n if (active !== undefined) {\n return active\n }\n // If neither props are passed in, use the react-stately state\n return isSelected\n}\n\nconst RadioButtonContext = React.createContext<RadioGroupState | null>(null)\n\nconst SegmentedController_ = React.forwardRef<\n HTMLDivElement,\n SegmentedControllerProps\n>(function SegmentedController(\n {\n // TODO make label props required in type?\n // React Aria logs warnings without 1 of 2. Axe does not fail\n ['aria-label']: ariaLabel,\n ['aria-labelledby']: ariaLabelledby,\n children,\n block = false,\n disabled,\n onChange,\n ...props\n },\n ref\n) {\n const name = useId()\n const radioGroupState = useRadioGroupState({\n name,\n isDisabled: disabled,\n onChange: (rawValue) => {\n const num = Number(rawValue)\n const value = !isNaN(num) ? num : rawValue\n onChange?.(value as number)\n },\n })\n const { radioGroupProps } = useRadioGroup(\n {\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n orientation: 'horizontal',\n },\n radioGroupState\n )\n return (\n <StyledContainer ref={ref} $block={block} {...radioGroupProps} {...props}>\n <RadioButtonContext.Provider value={radioGroupState}>\n {React.Children.toArray(children)\n .filter((child) => isSegment(child))\n .map((child, index) =>\n React.cloneElement(child as React.ReactElement, {\n internalIndex: index,\n })\n )}\n </RadioButtonContext.Provider>\n </StyledContainer>\n )\n})\n\n// Segment with RadioGroup context\nconst SegmentWithGroup = React.forwardRef<\n HTMLInputElement,\n React.InputHTMLAttributes<HTMLInputElement> &\n SegmentedControllerSegmentProps & { state: RadioGroupState }\n>(function SegmentWithGroup(\n {\n active,\n children,\n placement = 'top',\n tooltip,\n disabled,\n value,\n internalIndex,\n selected,\n state,\n ...props\n },\n ref\n) {\n const adjustedValue = String(value ?? internalIndex)\n const innerRef = React.useRef<HTMLInputElement>(null)\n const actualRef = ref ?? innerRef\n\n const { inputProps, isSelected, isDisabled } = useRadio(\n {\n isDisabled: disabled ?? state.isDisabled,\n value: adjustedValue as string,\n children,\n },\n state,\n actualRef as unknown as React.RefObject<HTMLInputElement>\n )\n const { focusProps, isFocusVisible } = useFocusRing()\n\n React.useEffect(() => {\n if (active || selected) {\n state.setSelectedValue(adjustedValue)\n }\n }, [active, state, adjustedValue, selected])\n\n return (\n <Tooltip overlay={tooltip} placement={placement}>\n <StyledSegmentDisabledInteractiveWrapper>\n <StyledSegment\n $focused={isFocusVisible}\n $disabled={isDisabled}\n $selected={determineSelectedState({ active, selected, isSelected })}\n >\n <VisuallyHidden>\n <input\n {...mergeProps(props, inputProps, focusProps)}\n ref={actualRef}\n />\n </VisuallyHidden>\n <StyledLabel>{children}</StyledLabel>\n </StyledSegment>\n </StyledSegmentDisabledInteractiveWrapper>\n </Tooltip>\n )\n})\n\n// Standalone segment\nconst StandaloneSegment = React.forwardRef<\n HTMLInputElement,\n React.InputHTMLAttributes<HTMLInputElement> & SegmentedControllerSegmentProps\n>(function StandaloneSegment(\n {\n active,\n children,\n placement = 'top',\n tooltip,\n disabled,\n value,\n internalIndex,\n selected,\n ...props\n },\n ref\n) {\n const adjustedValue = String(value ?? internalIndex)\n const innerRef = React.useRef<HTMLInputElement>(null)\n const actualRef = ref ?? innerRef\n const { focusProps, isFocusVisible } = useFocusRing()\n\n const isControlled = selected !== undefined || active !== undefined\n const [uncontrolledSelected, setUncontrolledSelected] = React.useState(\n selected ?? active ?? false\n )\n const isSelected = selected ?? active ?? uncontrolledSelected\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n if (!isControlled) {\n setUncontrolledSelected(e.target.checked)\n }\n props.onChange?.(e)\n }\n\n return (\n <Tooltip overlay={tooltip} placement={placement}>\n <StyledSegmentDisabledInteractiveWrapper>\n <StyledSegment\n $focused={isFocusVisible}\n $disabled={disabled ?? false}\n $selected={isSelected}\n >\n <VisuallyHidden>\n <input\n {...mergeProps(props, focusProps)}\n ref={actualRef}\n type=\"radio\"\n value={adjustedValue}\n checked={isSelected}\n disabled={disabled}\n onChange={handleChange}\n />\n </VisuallyHidden>\n <StyledLabel>{children}</StyledLabel>\n </StyledSegment>\n </StyledSegmentDisabledInteractiveWrapper>\n </Tooltip>\n )\n})\n\n// Wrapper that chooses the right implementation\nexport const Segment = React.forwardRef<\n HTMLInputElement,\n React.InputHTMLAttributes<HTMLInputElement> & SegmentedControllerSegmentProps\n>(function Segment(props, ref) {\n const state = React.useContext(RadioButtonContext)\n\n if (state) {\n return <SegmentWithGroup {...props} state={state} ref={ref} />\n }\n\n return <StandaloneSegment {...props} ref={ref} />\n})\n\n/**\n * @deprecated\n *\n * The `SegmentedController.Tooltip` component has been deprecated will be\n * removed in a future version.\n *\n * Tooltips are now built into `SegmentedController.Segment`s, and can be added\n * by configuring the `tooltip` prop.\n *\n * **Before**\n *\n * ```\n * <SegmentedController>\n * <SegmentedController.Tooltip tooltip=\"Item 1 is the first item\">\n * <SegmentedController.Segment>\n * Item 1\n * </SegmentedController.Segment>\n * </SegmentedController.Tooltip>\n * </SegmentedController>\n * ```\n *\n * **After**\n *\n * ```\n * <SegmentedController>\n * <SegmentedController.Segment tooltip=\"Item 1 is the first item\">\n * Item 1\n * </SegmentedController.Segment>\n * </SegmentedController>\n * ```\n *\n * @deprecatedSince 10.20.0\n */\nexport const Tooltip = React.forwardRef<\n HTMLElement,\n SegmentedControllerTooltipProps\n>(function Tooltip({ children, overlay, ...props }, ref) {\n return overlay ? (\n <TooltipBase {...props} overlay={overlay} ref={ref}>\n {children}\n </TooltipBase>\n ) : (\n <>{children}</>\n )\n})\n\nconst withState = (config: any) => (Component: any) => (props: any) => {\n const [selectedIndex, setSelected] = React.useState(0)\n\n return <Component {...{ ...props, selectedIndex, setSelected }} />\n}\n\n/**\n * @deprecated\n *\n * This `SegmentedController.State` utility has been deprecated. Please just\n * use a simple state management hook instead.\n *\n *\n * **Before**\n *\n * ```\n * <SegmentedController.State>\n * {({ selectedIndex, setSelected }) => (\n * <SegmentedController>\n * <SegmentedController.Segment onClick={() => setSelected(0)} active={selectedIndex === 0}>\n * Item 1\n * </SegmentedController.Segment>\n * </SegmentedController>\n * )}\n * </SegmentedController.State>\n * ```\n *\n * **After**\n *\n * ```\n * const [selected, setSelected] = React.useState(0)\n *\n * <SegmentedController onChange={setSelected}>\n * <SegmentedController.Segment active={selectedIndex === 0}>\n * Item 1\n * </SegmentedController.Segment>\n * </SegmentedController>\n * ```\n *\n * @deprecatedSince 10.20.0\n */\nexport const State = withState({})(({ children, ...props }: any) =>\n children(props)\n)\n\nSegmentedController_.displayName = 'SegmentedController'\n\nSegment.displayName = 'SegmentedController.Segment'\n\nTooltip.displayName = 'SegmentedController.Tooltip'\n\n/**\n\n Segmented controllers allow users to switch between related but mutually\n exclusive content or actions.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-segmentedcontroller--demo)\n\n @see [Design Guidelines](https://design.procore.com/segmented-controller)\n\n */\nexport const SegmentedController = addSubcomponents(\n {\n Segment,\n State,\n Tooltip,\n },\n SegmentedController_\n)\n"],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ import { colors } from '../_styles/colors';
|
|
|
5
5
|
import { spacing } from '../_styles/spacing';
|
|
6
6
|
export var StyledContainer = /*#__PURE__*/styled.div.withConfig({
|
|
7
7
|
displayName: "StyledContainer",
|
|
8
|
-
componentId: "core-
|
|
8
|
+
componentId: "core-12_39_0__sc-ocai3-0"
|
|
9
9
|
})(["align-items:center;display:", ";height:36px;justify-content:center;width:", ";"], function (_ref) {
|
|
10
10
|
var $block = _ref.$block;
|
|
11
11
|
return $block ? 'flex' : 'inline-flex';
|
|
@@ -15,7 +15,7 @@ export var StyledContainer = /*#__PURE__*/styled.div.withConfig({
|
|
|
15
15
|
});
|
|
16
16
|
export var StyledSegment = /*#__PURE__*/styled.label.withConfig({
|
|
17
17
|
displayName: "StyledSegment",
|
|
18
|
-
componentId: "core-
|
|
18
|
+
componentId: "core-12_39_0__sc-ocai3-1"
|
|
19
19
|
})(["align-items:center;border-radius:0;border:1px solid ", ";cursor:pointer;display:flex;flex:1 1 auto;height:100%;justify-content:center;min-width:0;outline:0;padding:0 ", "px;position:relative;background-color:", ";color:", ";&:hover{background-color:", ";border-color:", ";color:", ";}", " ", ";"], colors.gray85, spacing.md, colors.white, colors.gray45, colors.gray94, colors.gray85, colors.gray45, function (_ref3) {
|
|
20
20
|
var _ref3$$focused = _ref3.$focused,
|
|
21
21
|
$focused = _ref3$$focused === void 0 ? false : _ref3$$focused;
|
|
@@ -37,10 +37,10 @@ export var StyledSegment = /*#__PURE__*/styled.label.withConfig({
|
|
|
37
37
|
});
|
|
38
38
|
export var StyledSegmentDisabledInteractiveWrapper = /*#__PURE__*/styled.div.withConfig({
|
|
39
39
|
displayName: "StyledSegmentDisabledInteractiveWrapper",
|
|
40
|
-
componentId: "core-
|
|
40
|
+
componentId: "core-12_39_0__sc-ocai3-2"
|
|
41
41
|
})(["display:flex;flex:1 1 auto;min-width:0;height:100%;margin-right:-1px;&:first-child ", "{border-bottom-left-radius:", "px;border-top-left-radius:", "px;}&:last-child ", "{border-bottom-right-radius:", "px;border-top-right-radius:", "px;}"], StyledSegment, borderRadius.md, borderRadius.md, StyledSegment, borderRadius.md, borderRadius.md);
|
|
42
42
|
export var StyledLabel = /*#__PURE__*/styled.span.withConfig({
|
|
43
43
|
displayName: "StyledLabel",
|
|
44
|
-
componentId: "core-
|
|
44
|
+
componentId: "core-12_39_0__sc-ocai3-3"
|
|
45
45
|
})(["", ";display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;"], getTypographyIntent('body'));
|
|
46
46
|
//# sourceMappingURL=SegmentedController.styles.js.map
|
package/dist/Select/Select.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type {
|
|
3
|
-
|
|
4
|
-
export declare const OptGroup: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLDivElement>>;
|
|
2
|
+
import type { SelectButtonProps, SelectOptGroupProps, SelectOptionProps, SelectProps } from './Select.types';
|
|
3
|
+
export declare const OptGroup: React.ForwardRefExoticComponent<SelectOptGroupProps & React.RefAttributes<HTMLDivElement>>;
|
|
5
4
|
export declare const Option: React.ForwardRefExoticComponent<SelectOptionProps & React.RefAttributes<HTMLDivElement>>;
|
|
6
5
|
export declare const Button: React.ForwardRefExoticComponent<SelectButtonProps & React.RefAttributes<HTMLDivElement>>;
|
|
7
6
|
/**
|
|
@@ -23,5 +22,5 @@ export declare const Button: React.ForwardRefExoticComponent<SelectButtonProps &
|
|
|
23
22
|
export declare const Select: React.ForwardRefExoticComponent<SelectProps & React.RefAttributes<HTMLDivElement>> & {
|
|
24
23
|
Button: React.ForwardRefExoticComponent<SelectButtonProps & React.RefAttributes<HTMLDivElement>>;
|
|
25
24
|
Option: React.ForwardRefExoticComponent<SelectOptionProps & React.RefAttributes<HTMLDivElement>>;
|
|
26
|
-
OptGroup: React.ForwardRefExoticComponent<
|
|
25
|
+
OptGroup: React.ForwardRefExoticComponent<SelectOptGroupProps & React.RefAttributes<HTMLDivElement>>;
|
|
27
26
|
};
|
package/dist/Select/Select.js
CHANGED
|
@@ -37,7 +37,6 @@ function isOpen(_ref) {
|
|
|
37
37
|
}
|
|
38
38
|
export var OptGroup = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
39
39
|
return /*#__PURE__*/React.createElement(MenuImperative.Group, _extends({}, props, {
|
|
40
|
-
clickable: false,
|
|
41
40
|
ref: ref
|
|
42
41
|
}));
|
|
43
42
|
});
|
|
@@ -132,10 +131,11 @@ export var Button = /*#__PURE__*/React.forwardRef(function Button(_ref3, ref) {
|
|
|
132
131
|
"aria-label": i18n.t('core.select.clear'),
|
|
133
132
|
ref: clearRef,
|
|
134
133
|
"data-qa": (qa === null || qa === void 0 ? void 0 : qa.clear) || 'core-select-clear',
|
|
134
|
+
disabled: disabled,
|
|
135
135
|
size: "sm",
|
|
136
136
|
variant: "tertiary",
|
|
137
137
|
icon: /*#__PURE__*/React.createElement(Clear, null),
|
|
138
|
-
onClick: onClear,
|
|
138
|
+
onClick: disabled ? undefined : onClear,
|
|
139
139
|
onMouseDown: function onMouseDown(e) {
|
|
140
140
|
return e.preventDefault();
|
|
141
141
|
} // prevents an element from getting the focus
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Select.js","names":["Clear","useId","classNames","isNil","React","Box","MenuImperative","useMenuImperativeControlNavigation","Notation","OverlayTrigger","useOverlayTriggerContext","Spinner","Tooltip","useI18nContext","OverflowObserver","addSubcomponents","StyledSelectArrow","StyledSelectArrowContainer","StyledSelectButton","StyledSelectButtonLabel","StyledSelectButtonWrapper","StyledSelectClearIcon","StyledSelectMenu","StyledSelectSpinner","noop","isFunction","obj","isOpen","_ref","_ref$open","open","OptGroup","forwardRef","props","ref","createElement","Group","_extends","clickable","Option","_ref2","value","_objectWithoutProperties","_excluded","Item","item","Button","_ref3","_ref3$block","block","children","className","clearRef","_ref3$disabled","disabled","_ref3$error","error","_ref3$focus","focus","label","_ref3$loading","loading","onClear","_ref3$open","placeholder","qa","_ref3$tabIndex","tabIndex","_ref3$isMenuOpened","isMenuOpened","_ref3$isListboxOnly","isListboxOnly","menuId","ariaExpandedProp","style","_excluded2","i18n","hasClearIcon","Boolean","showClearIcon","labelId","triggerRole","content","ariaExpanded","undefined","button","role","$block","$error","$disabled","$hasClearIcon","$showClearIcon","$loading","$open","$placeholder","_ref4","isOverflowingX","overflowRef","showTooltip","trigger","id","$hoverable","overlay","color","size","t","clear","variant","icon","onClick","onMouseDown","e","preventDefault","SelectMenu","_ref5","onSearch_","onSearch","header","footer","emptyMessage","optionsRef","i18nScope","_ref5$onSelect","onSelect","onSelect_","menuRef","_excluded3","ctx","_React$useState","useState","_React$useState2","_slicedToArray","searchValue","setSearchValue","_useMenuImperativeCon","menuProps","menuNavigationTriggerProps","useEffect","_menuRef$current","current","highlightFirst","_menuRef$current2","_menuRef$current3","highlightSuggested","highlightSelected","onKeyDown","_props$onKeyDown","call","key","stopPropagation","selection","hide","event","target","shadowStrength","circular","Search","autoComplete","onChange","Header","Children","count","Options","padding","Footer","Select_","Select","_ref6","_ref6$afterHide","afterHide","afterHide_","_ref6$afterShow","afterShow","afterShow_","_ref6$beforeHide","beforeHide","_ref6$beforeShow","beforeShow","_ref6$block","container","_ref6$disabled","_ref6$error","_ref6$hideDelay","hideDelay","_ref6$i18nScope","_ref6$label","_ref6$loading","onClear_","_ref6$onKeyDown","onScrollBottom","_ref6$onSelect","_ref6$placement","placement","_ref6$restoreFocusOnH","restoreFocusOnHide","_ref6$showDelay","showDelay","_ref6$tabIndex","_excluded4","useRef","overlayTriggerRef","_React$useState3","_React$useState4","setIsMenuOpened","emptyMessageText","scope","useCallback","_overlayTriggerRef$cu","autoFocus","canFlip","passA11yPropsToOverlay","overlayId","displayName"],"sources":["../../src/Select/Select.tsx"],"sourcesContent":["import { Clear } from '@procore/core-icons/dist'\nimport { useId } from '@react-aria/utils'\nimport classNames from 'classnames'\nimport { isNil } from 'ramda'\nimport React from 'react'\nimport { Box } from '../Box'\nimport {\n MenuImperative,\n useMenuImperativeControlNavigation,\n} from '../MenuImperative/MenuImperative'\nimport type { MenuRef, Selection } from '../MenuImperative/MenuImperative.types'\nimport { Notation } from '../Notation'\nimport {\n OverlayTrigger,\n useOverlayTriggerContext,\n} from '../OverlayTrigger/OverlayTrigger'\nimport { Spinner } from '../Spinner'\nimport { Tooltip } from '../Tooltip'\nimport { useI18nContext } from '../_hooks/I18n'\nimport { OverflowObserver } from '../_hooks/OverflowObserver'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport type { Props } from '../_utils/types'\nimport {\n StyledSelectArrow,\n StyledSelectArrowContainer,\n StyledSelectButton,\n StyledSelectButtonLabel,\n StyledSelectButtonWrapper,\n StyledSelectClearIcon,\n StyledSelectMenu,\n StyledSelectSpinner,\n} from './Select.styles'\nimport type {\n SelectButtonProps,\n SelectMenuProps,\n SelectOptionProps,\n SelectProps,\n TriggerRole,\n} from './Select.types'\n\nfunction noop() {}\nfunction isFunction(obj: any) {\n return typeof obj === 'function'\n}\nfunction isOpen({ open = false }) {\n return open\n}\n\nexport const OptGroup = React.forwardRef<HTMLDivElement, Props>(\n (props, ref) => (\n <MenuImperative.Group {...props} clickable={false} ref={ref} />\n )\n)\n\nexport const Option = React.forwardRef<HTMLDivElement, SelectOptionProps>(\n ({ value, ...props }, ref) => (\n <MenuImperative.Item ref={ref} {...props} item={value} />\n )\n)\n\nexport const Button = React.forwardRef<HTMLDivElement, SelectButtonProps>(\n function Button(\n {\n block = false,\n children,\n className,\n clearRef,\n disabled = false,\n error = false,\n focus = false,\n label,\n loading = false,\n onClear,\n open = false,\n placeholder,\n qa,\n tabIndex = 0,\n isMenuOpened = false,\n isListboxOnly = false,\n menuId,\n 'aria-expanded': ariaExpandedProp,\n style,\n ...props\n },\n ref\n ) {\n const i18n = useI18nContext()\n const hasClearIcon = Boolean(onClear)\n const showClearIcon = !disabled && !loading && Boolean(label)\n const labelId = useId()\n const triggerRole: TriggerRole = isListboxOnly ? 'combobox' : 'button'\n\n const content = children || label || placeholder\n const ariaExpanded = disabled\n ? undefined\n : isListboxOnly\n ? ariaExpandedProp\n : open\n\n const button = (\n <StyledSelectButton\n ref={ref}\n role={triggerRole}\n aria-disabled={disabled}\n tabIndex={disabled ? -1 : tabIndex}\n aria-expanded={ariaExpanded}\n aria-labelledby={isListboxOnly ? labelId : undefined}\n $block={block}\n $error={error}\n $disabled={disabled}\n $hasClearIcon={hasClearIcon}\n $showClearIcon={showClearIcon}\n $loading={loading}\n $open={open}\n $placeholder={!label}\n {...props}\n >\n <OverflowObserver>\n {({ isOverflowingX, ref: overflowRef }) => {\n const showTooltip = !disabled && isOverflowingX && !isMenuOpened\n const trigger = (\n <StyledSelectButtonLabel\n id={labelId}\n data-qa={qa?.label}\n $hoverable={showTooltip}\n ref={overflowRef}\n >\n {content}\n </StyledSelectButtonLabel>\n )\n\n return showTooltip ? (\n <Tooltip trigger=\"hover\" overlay={content}>\n {trigger}\n </Tooltip>\n ) : (\n trigger\n )\n }}\n </OverflowObserver>\n {loading ? (\n <StyledSelectSpinner>\n <Spinner color=\"blue50\" size=\"xs\" />\n </StyledSelectSpinner>\n ) : (\n <StyledSelectArrowContainer>\n <StyledSelectArrow />\n </StyledSelectArrowContainer>\n )}\n </StyledSelectButton>\n )\n\n return (\n <StyledSelectButtonWrapper\n $block={block}\n className={classNames(className, {\n focus: isFunction(focus) ? (focus as Function)({ open }) : focus,\n })}\n style={style}\n >\n {button}\n {onClear ? (\n <StyledSelectClearIcon\n aria-label={i18n.t('core.select.clear')}\n ref={clearRef}\n data-qa={qa?.clear || 'core-select-clear'}\n size=\"sm\"\n variant=\"tertiary\"\n icon={<Clear />}\n onClick={onClear}\n onMouseDown={(e: React.MouseEvent) => e.preventDefault()} // prevents an element from getting the focus\n tabIndex={showClearIcon ? 0 : -1}\n />\n ) : null}\n </StyledSelectButtonWrapper>\n )\n }\n)\n\nconst SelectMenu = React.forwardRef<HTMLDivElement, SelectMenuProps>(\n function SelectMenu(\n {\n onSearch: onSearch_,\n header,\n footer,\n emptyMessage,\n optionsRef,\n children,\n i18nScope,\n onSelect: onSelect_ = noop,\n menuRef,\n menuId,\n ...props\n },\n ref\n ) {\n const ctx = useOverlayTriggerContext()\n\n const [searchValue, setSearchValue] = React.useState('')\n const { menuProps, menuNavigationTriggerProps } =\n useMenuImperativeControlNavigation(menuRef, Boolean(onSearch_))\n\n React.useEffect(() => {\n menuRef.current?.highlightFirst()\n }, [menuRef, searchValue])\n\n React.useEffect(() => {\n menuRef.current?.highlightSuggested()\n menuRef.current?.highlightSelected()\n }, [menuRef])\n\n function onKeyDown(e: React.KeyboardEvent<HTMLDivElement>) {\n props.onKeyDown?.(e)\n // This is disconnected from the OverlayTrigger closing on Escape.\n // Closing a dropdown with Escape will not close a Modal, because stopP.\n // It is called only once because the menu component is unmounted.\n // The next Escape will propagate.\n if (e.key === 'Escape' || e.key === 'Esc') {\n e.stopPropagation()\n }\n }\n\n function onSelect(selection: Selection) {\n onSelect_(selection)\n\n ctx.hide(selection.event)\n }\n\n function onSearch(event: React.ChangeEvent<HTMLInputElement>) {\n setSearchValue(event.target.value)\n\n onSearch_?.(event)\n }\n\n return (\n <StyledSelectMenu ref={ref} shadowStrength={2}>\n <MenuImperative\n {...props}\n {...menuProps}\n ref={menuRef}\n role=\"listbox\"\n onKeyDown={onKeyDown}\n onSelect={onSelect}\n id={menuId}\n circular\n >\n {onSearch_ && (\n <MenuImperative.Search\n autoComplete=\"false\"\n i18nScope={i18nScope}\n onChange={onSearch}\n {...menuNavigationTriggerProps}\n />\n )}\n {header && <MenuImperative.Header>{header}</MenuImperative.Header>}\n {React.Children.count(children) ? (\n <MenuImperative.Options ref={optionsRef}>\n {children}\n </MenuImperative.Options>\n ) : (\n <Box padding=\"md lg\">\n <Notation variant=\"pagination\">{emptyMessage}</Notation>\n </Box>\n )}\n {footer && <MenuImperative.Footer>{footer}</MenuImperative.Footer>}\n </MenuImperative>\n </StyledSelectMenu>\n )\n }\n)\n\nconst Select_ = React.forwardRef<HTMLDivElement, SelectProps>(function Select(\n {\n afterHide: afterHide_ = noop,\n afterShow: afterShow_ = noop,\n beforeHide = () => true,\n beforeShow = () => true,\n block = false,\n children,\n className,\n container,\n disabled = false,\n emptyMessage,\n error = false,\n header,\n footer,\n hideDelay = 100,\n i18nScope = 'core.select',\n label = '',\n loading = false,\n onClear: onClear_,\n onKeyDown = noop,\n onScrollBottom,\n onSearch,\n onSelect = noop,\n optionsRef,\n placeholder,\n placement = 'bottom-left',\n restoreFocusOnHide = 'core-react',\n showDelay = 0,\n tabIndex = 0,\n qa,\n ...props\n },\n forwardRef\n) {\n const i18n = useI18nContext()\n const menuRef = React.useRef<MenuRef>(null)\n const overlayTriggerRef = React.useRef<HTMLDivElement>(null)\n const ref =\n (forwardRef as React.RefObject<HTMLDivElement>) || overlayTriggerRef\n const [isMenuOpened, setIsMenuOpened] = React.useState(false)\n\n const clearRef = React.useRef<HTMLButtonElement>(null)\n const menuId = useId()\n const isListboxOnly = !onSearch && !header && !footer\n\n const emptyMessageText =\n emptyMessage ?? i18n.t('noResult', { scope: i18nScope })\n\n function afterHide() {\n afterHide_()\n setIsMenuOpened(false)\n onSearch?.({\n target: { value: '' },\n } as React.ChangeEvent<HTMLInputElement>)\n }\n\n const onClear = React.useCallback(\n (e: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {\n onClear_?.(e)\n // IE 11 fix\n // Return focus back to trigger instead of the clear button\n overlayTriggerRef?.current?.focus()\n },\n [onClear_]\n )\n\n function afterShow() {\n afterShow_()\n setIsMenuOpened(true)\n }\n\n return (\n <OverlayTrigger\n autoFocus\n afterHide={afterHide}\n afterShow={afterShow}\n beforeHide={(e: Event) => {\n if (e.target === clearRef.current) {\n return false\n }\n\n return beforeHide(e)\n }}\n beforeShow={beforeShow}\n canFlip={true}\n container={container}\n hideDelay={hideDelay}\n restoreFocusOnHide={restoreFocusOnHide}\n role={isListboxOnly ? 'listbox' : undefined}\n passA11yPropsToOverlay={isListboxOnly}\n overlayId={menuId}\n overlay={\n <SelectMenu\n onSearch={onSearch}\n header={header}\n footer={footer}\n emptyMessage={emptyMessageText}\n optionsRef={optionsRef}\n i18nScope={i18nScope}\n onSelect={onSelect}\n onScrollBottom={onScrollBottom}\n menuRef={menuRef}\n menuId={menuId}\n >\n {children}\n </SelectMenu>\n }\n placement={placement}\n ref={ref}\n showDelay={showDelay}\n trigger={disabled ? 'none' : 'click'}\n >\n <Button\n {...props}\n block={block}\n className={className}\n clearRef={clearRef}\n disabled={disabled}\n error={error}\n focus={onSearch ? false : isOpen}\n label={label}\n loading={loading}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n onClear={isNil(onClear_) ? onClear_ : onClear}\n isMenuOpened={isMenuOpened}\n tabIndex={tabIndex}\n isListboxOnly={isListboxOnly}\n menuId={menuId}\n qa={qa}\n />\n </OverlayTrigger>\n )\n})\n\nSelect_.displayName = 'Select'\n\nButton.displayName = 'Select.Button'\n\nOption.displayName = 'Select.Option'\n\nOptGroup.displayName = 'Select.OptGroup'\n\n/**\n\n We use single selects to allow our users to choose a single option from a list,\n presented in a dropdown. We typically see these selects on forms.\n\n If you want users to select multiple options, use a multi select, group select,\n and tiered select if you want users to select from a tiered set of options,\n use a tiered select.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-select--demo)\n\n @see [Design Guidelines](https://design.procore.com/select)\n\n */\nexport const Select = addSubcomponents(\n {\n Button,\n Option,\n OptGroup,\n },\n Select_\n)\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Select.js","names":["Clear","useId","classNames","isNil","React","Box","MenuImperative","useMenuImperativeControlNavigation","Notation","OverlayTrigger","useOverlayTriggerContext","Spinner","Tooltip","useI18nContext","OverflowObserver","addSubcomponents","StyledSelectArrow","StyledSelectArrowContainer","StyledSelectButton","StyledSelectButtonLabel","StyledSelectButtonWrapper","StyledSelectClearIcon","StyledSelectMenu","StyledSelectSpinner","noop","isFunction","obj","isOpen","_ref","_ref$open","open","OptGroup","forwardRef","props","ref","createElement","Group","_extends","Option","_ref2","value","_objectWithoutProperties","_excluded","Item","item","Button","_ref3","_ref3$block","block","children","className","clearRef","_ref3$disabled","disabled","_ref3$error","error","_ref3$focus","focus","label","_ref3$loading","loading","onClear","_ref3$open","placeholder","qa","_ref3$tabIndex","tabIndex","_ref3$isMenuOpened","isMenuOpened","_ref3$isListboxOnly","isListboxOnly","menuId","ariaExpandedProp","style","_excluded2","i18n","hasClearIcon","Boolean","showClearIcon","labelId","triggerRole","content","ariaExpanded","undefined","button","role","$block","$error","$disabled","$hasClearIcon","$showClearIcon","$loading","$open","$placeholder","_ref4","isOverflowingX","overflowRef","showTooltip","trigger","id","$hoverable","overlay","color","size","t","clear","variant","icon","onClick","onMouseDown","e","preventDefault","SelectMenu","_ref5","onSearch_","onSearch","header","footer","emptyMessage","optionsRef","i18nScope","_ref5$onSelect","onSelect","onSelect_","menuRef","_excluded3","ctx","_React$useState","useState","_React$useState2","_slicedToArray","searchValue","setSearchValue","_useMenuImperativeCon","menuProps","menuNavigationTriggerProps","useEffect","_menuRef$current","current","highlightFirst","_menuRef$current2","_menuRef$current3","highlightSuggested","highlightSelected","onKeyDown","_props$onKeyDown","call","key","stopPropagation","selection","hide","event","target","shadowStrength","circular","Search","autoComplete","onChange","Header","Children","count","Options","padding","Footer","Select_","Select","_ref6","_ref6$afterHide","afterHide","afterHide_","_ref6$afterShow","afterShow","afterShow_","_ref6$beforeHide","beforeHide","_ref6$beforeShow","beforeShow","_ref6$block","container","_ref6$disabled","_ref6$error","_ref6$hideDelay","hideDelay","_ref6$i18nScope","_ref6$label","_ref6$loading","onClear_","_ref6$onKeyDown","onScrollBottom","_ref6$onSelect","_ref6$placement","placement","_ref6$restoreFocusOnH","restoreFocusOnHide","_ref6$showDelay","showDelay","_ref6$tabIndex","_excluded4","useRef","overlayTriggerRef","_React$useState3","_React$useState4","setIsMenuOpened","emptyMessageText","scope","useCallback","_overlayTriggerRef$cu","autoFocus","canFlip","passA11yPropsToOverlay","overlayId","displayName"],"sources":["../../src/Select/Select.tsx"],"sourcesContent":["import { Clear } from '@procore/core-icons/dist'\nimport { useId } from '@react-aria/utils'\nimport classNames from 'classnames'\nimport { isNil } from 'ramda'\nimport React from 'react'\nimport { Box } from '../Box'\nimport {\n MenuImperative,\n useMenuImperativeControlNavigation,\n} from '../MenuImperative/MenuImperative'\nimport type { MenuRef, Selection } from '../MenuImperative/MenuImperative.types'\nimport { Notation } from '../Notation'\nimport {\n OverlayTrigger,\n useOverlayTriggerContext,\n} from '../OverlayTrigger/OverlayTrigger'\nimport { Spinner } from '../Spinner'\nimport { Tooltip } from '../Tooltip'\nimport { useI18nContext } from '../_hooks/I18n'\nimport { OverflowObserver } from '../_hooks/OverflowObserver'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport {\n StyledSelectArrow,\n StyledSelectArrowContainer,\n StyledSelectButton,\n StyledSelectButtonLabel,\n StyledSelectButtonWrapper,\n StyledSelectClearIcon,\n StyledSelectMenu,\n StyledSelectSpinner,\n} from './Select.styles'\nimport type {\n SelectButtonProps,\n SelectMenuProps,\n SelectOptGroupProps,\n SelectOptionProps,\n SelectProps,\n TriggerRole,\n} from './Select.types'\n\nfunction noop() {}\nfunction isFunction(obj: any) {\n return typeof obj === 'function'\n}\nfunction isOpen({ open = false }) {\n return open\n}\n\nexport const OptGroup = React.forwardRef<HTMLDivElement, SelectOptGroupProps>(\n (props, ref) => <MenuImperative.Group {...props} ref={ref} />\n)\n\nexport const Option = React.forwardRef<HTMLDivElement, SelectOptionProps>(\n ({ value, ...props }, ref) => (\n <MenuImperative.Item ref={ref} {...props} item={value} />\n )\n)\n\nexport const Button = React.forwardRef<HTMLDivElement, SelectButtonProps>(\n function Button(\n {\n block = false,\n children,\n className,\n clearRef,\n disabled = false,\n error = false,\n focus = false,\n label,\n loading = false,\n onClear,\n open = false,\n placeholder,\n qa,\n tabIndex = 0,\n isMenuOpened = false,\n isListboxOnly = false,\n menuId,\n 'aria-expanded': ariaExpandedProp,\n style,\n ...props\n },\n ref\n ) {\n const i18n = useI18nContext()\n const hasClearIcon = Boolean(onClear)\n const showClearIcon = !disabled && !loading && Boolean(label)\n const labelId = useId()\n const triggerRole: TriggerRole = isListboxOnly ? 'combobox' : 'button'\n\n const content = children || label || placeholder\n const ariaExpanded = disabled\n ? undefined\n : isListboxOnly\n ? ariaExpandedProp\n : open\n\n const button = (\n <StyledSelectButton\n ref={ref}\n role={triggerRole}\n aria-disabled={disabled}\n tabIndex={disabled ? -1 : tabIndex}\n aria-expanded={ariaExpanded}\n aria-labelledby={isListboxOnly ? labelId : undefined}\n $block={block}\n $error={error}\n $disabled={disabled}\n $hasClearIcon={hasClearIcon}\n $showClearIcon={showClearIcon}\n $loading={loading}\n $open={open}\n $placeholder={!label}\n {...props}\n >\n <OverflowObserver>\n {({ isOverflowingX, ref: overflowRef }) => {\n const showTooltip = !disabled && isOverflowingX && !isMenuOpened\n const trigger = (\n <StyledSelectButtonLabel\n id={labelId}\n data-qa={qa?.label}\n $hoverable={showTooltip}\n ref={overflowRef}\n >\n {content}\n </StyledSelectButtonLabel>\n )\n\n return showTooltip ? (\n <Tooltip trigger=\"hover\" overlay={content}>\n {trigger}\n </Tooltip>\n ) : (\n trigger\n )\n }}\n </OverflowObserver>\n {loading ? (\n <StyledSelectSpinner>\n <Spinner color=\"blue50\" size=\"xs\" />\n </StyledSelectSpinner>\n ) : (\n <StyledSelectArrowContainer>\n <StyledSelectArrow />\n </StyledSelectArrowContainer>\n )}\n </StyledSelectButton>\n )\n\n return (\n <StyledSelectButtonWrapper\n $block={block}\n className={classNames(className, {\n focus: isFunction(focus) ? (focus as Function)({ open }) : focus,\n })}\n style={style}\n >\n {button}\n {onClear ? (\n <StyledSelectClearIcon\n aria-label={i18n.t('core.select.clear')}\n ref={clearRef}\n data-qa={qa?.clear || 'core-select-clear'}\n disabled={disabled}\n size=\"sm\"\n variant=\"tertiary\"\n icon={<Clear />}\n onClick={disabled ? undefined : onClear}\n onMouseDown={(e: React.MouseEvent) => e.preventDefault()} // prevents an element from getting the focus\n tabIndex={showClearIcon ? 0 : -1}\n />\n ) : null}\n </StyledSelectButtonWrapper>\n )\n }\n)\n\nconst SelectMenu = React.forwardRef<HTMLDivElement, SelectMenuProps>(\n function SelectMenu(\n {\n onSearch: onSearch_,\n header,\n footer,\n emptyMessage,\n optionsRef,\n children,\n i18nScope,\n onSelect: onSelect_ = noop,\n menuRef,\n menuId,\n ...props\n },\n ref\n ) {\n const ctx = useOverlayTriggerContext()\n\n const [searchValue, setSearchValue] = React.useState('')\n const { menuProps, menuNavigationTriggerProps } =\n useMenuImperativeControlNavigation(menuRef, Boolean(onSearch_))\n\n React.useEffect(() => {\n menuRef.current?.highlightFirst()\n }, [menuRef, searchValue])\n\n React.useEffect(() => {\n menuRef.current?.highlightSuggested()\n menuRef.current?.highlightSelected()\n }, [menuRef])\n\n function onKeyDown(e: React.KeyboardEvent<HTMLDivElement>) {\n props.onKeyDown?.(e)\n // This is disconnected from the OverlayTrigger closing on Escape.\n // Closing a dropdown with Escape will not close a Modal, because stopP.\n // It is called only once because the menu component is unmounted.\n // The next Escape will propagate.\n if (e.key === 'Escape' || e.key === 'Esc') {\n e.stopPropagation()\n }\n }\n\n function onSelect(selection: Selection) {\n onSelect_(selection)\n\n ctx.hide(selection.event)\n }\n\n function onSearch(event: React.ChangeEvent<HTMLInputElement>) {\n setSearchValue(event.target.value)\n\n onSearch_?.(event)\n }\n\n return (\n <StyledSelectMenu ref={ref} shadowStrength={2}>\n <MenuImperative\n {...props}\n {...menuProps}\n ref={menuRef}\n role=\"listbox\"\n onKeyDown={onKeyDown}\n onSelect={onSelect}\n id={menuId}\n circular\n >\n {onSearch_ && (\n <MenuImperative.Search\n autoComplete=\"false\"\n i18nScope={i18nScope}\n onChange={onSearch}\n {...menuNavigationTriggerProps}\n />\n )}\n {header && <MenuImperative.Header>{header}</MenuImperative.Header>}\n {React.Children.count(children) ? (\n <MenuImperative.Options ref={optionsRef}>\n {children}\n </MenuImperative.Options>\n ) : (\n <Box padding=\"md lg\">\n <Notation variant=\"pagination\">{emptyMessage}</Notation>\n </Box>\n )}\n {footer && <MenuImperative.Footer>{footer}</MenuImperative.Footer>}\n </MenuImperative>\n </StyledSelectMenu>\n )\n }\n)\n\nconst Select_ = React.forwardRef<HTMLDivElement, SelectProps>(function Select(\n {\n afterHide: afterHide_ = noop,\n afterShow: afterShow_ = noop,\n beforeHide = () => true,\n beforeShow = () => true,\n block = false,\n children,\n className,\n container,\n disabled = false,\n emptyMessage,\n error = false,\n header,\n footer,\n hideDelay = 100,\n i18nScope = 'core.select',\n label = '',\n loading = false,\n onClear: onClear_,\n onKeyDown = noop,\n onScrollBottom,\n onSearch,\n onSelect = noop,\n optionsRef,\n placeholder,\n placement = 'bottom-left',\n restoreFocusOnHide = 'core-react',\n showDelay = 0,\n tabIndex = 0,\n qa,\n ...props\n },\n forwardRef\n) {\n const i18n = useI18nContext()\n const menuRef = React.useRef<MenuRef>(null)\n const overlayTriggerRef = React.useRef<HTMLDivElement>(null)\n const ref =\n (forwardRef as React.RefObject<HTMLDivElement>) || overlayTriggerRef\n const [isMenuOpened, setIsMenuOpened] = React.useState(false)\n\n const clearRef = React.useRef<HTMLButtonElement>(null)\n const menuId = useId()\n const isListboxOnly = !onSearch && !header && !footer\n\n const emptyMessageText =\n emptyMessage ?? i18n.t('noResult', { scope: i18nScope })\n\n function afterHide() {\n afterHide_()\n setIsMenuOpened(false)\n onSearch?.({\n target: { value: '' },\n } as React.ChangeEvent<HTMLInputElement>)\n }\n\n const onClear = React.useCallback(\n (e: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {\n onClear_?.(e)\n // IE 11 fix\n // Return focus back to trigger instead of the clear button\n overlayTriggerRef?.current?.focus()\n },\n [onClear_]\n )\n\n function afterShow() {\n afterShow_()\n setIsMenuOpened(true)\n }\n\n return (\n <OverlayTrigger\n autoFocus\n afterHide={afterHide}\n afterShow={afterShow}\n beforeHide={(e: Event) => {\n if (e.target === clearRef.current) {\n return false\n }\n\n return beforeHide(e)\n }}\n beforeShow={beforeShow}\n canFlip={true}\n container={container}\n hideDelay={hideDelay}\n restoreFocusOnHide={restoreFocusOnHide}\n role={isListboxOnly ? 'listbox' : undefined}\n passA11yPropsToOverlay={isListboxOnly}\n overlayId={menuId}\n overlay={\n <SelectMenu\n onSearch={onSearch}\n header={header}\n footer={footer}\n emptyMessage={emptyMessageText}\n optionsRef={optionsRef}\n i18nScope={i18nScope}\n onSelect={onSelect}\n onScrollBottom={onScrollBottom}\n menuRef={menuRef}\n menuId={menuId}\n >\n {children}\n </SelectMenu>\n }\n placement={placement}\n ref={ref}\n showDelay={showDelay}\n trigger={disabled ? 'none' : 'click'}\n >\n <Button\n {...props}\n block={block}\n className={className}\n clearRef={clearRef}\n disabled={disabled}\n error={error}\n focus={onSearch ? false : isOpen}\n label={label}\n loading={loading}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n onClear={isNil(onClear_) ? onClear_ : onClear}\n isMenuOpened={isMenuOpened}\n tabIndex={tabIndex}\n isListboxOnly={isListboxOnly}\n menuId={menuId}\n qa={qa}\n />\n </OverlayTrigger>\n )\n})\n\nSelect_.displayName = 'Select'\n\nButton.displayName = 'Select.Button'\n\nOption.displayName = 'Select.Option'\n\nOptGroup.displayName = 'Select.OptGroup'\n\n/**\n\n We use single selects to allow our users to choose a single option from a list,\n presented in a dropdown. We typically see these selects on forms.\n\n If you want users to select multiple options, use a multi select, group select,\n and tiered select if you want users to select from a tiered set of options,\n use a tiered select.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-select--demo)\n\n @see [Design Guidelines](https://design.procore.com/select)\n\n */\nexport const Select = addSubcomponents(\n {\n Button,\n Option,\n OptGroup,\n },\n Select_\n)\n"],"mappings":"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"}
|
|
@@ -17,41 +17,41 @@ export var tableSelectClassName = 'select--table';
|
|
|
17
17
|
var styledSelectButtonDefaultWidth = 248;
|
|
18
18
|
export var StyledSelectButtonWrapper = /*#__PURE__*/styled.div.withConfig({
|
|
19
19
|
displayName: "StyledSelectButtonWrapper",
|
|
20
|
-
componentId: "core-
|
|
20
|
+
componentId: "core-12_39_0__sc-mr8gwe-0"
|
|
21
21
|
})(["display:inline-block;position:relative;width:", ";"], function (_ref) {
|
|
22
22
|
var $block = _ref.$block;
|
|
23
23
|
return $block ? '100%' : "".concat(styledSelectButtonDefaultWidth, "px");
|
|
24
24
|
});
|
|
25
25
|
export var StyledSelectMenu = /*#__PURE__*/styled(Card).withConfig({
|
|
26
26
|
displayName: "StyledSelectMenu",
|
|
27
|
-
componentId: "core-
|
|
27
|
+
componentId: "core-12_39_0__sc-mr8gwe-1"
|
|
28
28
|
})(["display:flex;max-height:40vh;max-width:", "px;min-width:inherit;"], styledSelectButtonDefaultWidth);
|
|
29
29
|
export var StyledSelectButtonLabel = /*#__PURE__*/styled.div.withConfig({
|
|
30
30
|
displayName: "StyledSelectButtonLabel",
|
|
31
|
-
componentId: "core-
|
|
31
|
+
componentId: "core-12_39_0__sc-mr8gwe-2"
|
|
32
32
|
})(["", " flex-grow:1;margin-right:", "px;outline:none;pointer-events:", ";user-select:none;"], getEllipsis(), spacing.sm, function (_ref2) {
|
|
33
33
|
var $hoverable = _ref2.$hoverable;
|
|
34
34
|
return $hoverable ? 'initial' : 'none';
|
|
35
35
|
});
|
|
36
36
|
export var StyledSelectSpinner = /*#__PURE__*/styled.div.withConfig({
|
|
37
37
|
displayName: "StyledSelectSpinner",
|
|
38
|
-
componentId: "core-
|
|
38
|
+
componentId: "core-12_39_0__sc-mr8gwe-3"
|
|
39
39
|
})(["align-items:center;display:flex;flex:0 0 auto;justify-content:center;line-height:0;"]);
|
|
40
40
|
export var StyledSelectArrowContainer = /*#__PURE__*/styled.div.withConfig({
|
|
41
41
|
displayName: "StyledSelectArrowContainer",
|
|
42
|
-
componentId: "core-
|
|
42
|
+
componentId: "core-12_39_0__sc-mr8gwe-4"
|
|
43
43
|
})(["align-items:center;display:inline-flex;height:16px;justify-content:flex-end;margin-left:", "px;width:8px;"], spacing.sm);
|
|
44
44
|
export var StyledSelectArrow = /*#__PURE__*/styled.div.withConfig({
|
|
45
45
|
displayName: "StyledSelectArrow",
|
|
46
|
-
componentId: "core-
|
|
46
|
+
componentId: "core-12_39_0__sc-mr8gwe-5"
|
|
47
47
|
})(["position:relative;", ""], arrowDown(4, 'gray45'));
|
|
48
48
|
export var StyledSelectClearIcon = /*#__PURE__*/styled(Button).withConfig({
|
|
49
49
|
displayName: "StyledSelectClearIcon",
|
|
50
|
-
componentId: "core-
|
|
50
|
+
componentId: "core-12_39_0__sc-mr8gwe-6"
|
|
51
51
|
})(["position:absolute;right:29px;top:50%;transform:translateY(-50%);", "{pointer-events:none;}"], StyledContent);
|
|
52
52
|
export var StyledSelectButton = /*#__PURE__*/styled.div.withConfig({
|
|
53
53
|
displayName: "StyledSelectButton",
|
|
54
|
-
componentId: "core-
|
|
54
|
+
componentId: "core-12_39_0__sc-mr8gwe-7"
|
|
55
55
|
})(["", " align-items:center;background-color:", ";border-color:", ";border-radius:", "px;border-style:solid;border-width:1px;color:", ";cursor:pointer;display:inline-flex;height:36px;min-height:36px;outline:none;padding:0 ", "px;position:relative;white-space:nowrap;width:", ";&::placeholder{border-color:", ";}&:hover,&:active,&[data-qa=", "]{background-color:", ";border-color:", ";color:", ";}&.focus,&:focus,&[data-qa=", "],", ":focus-within &{", " ", "{stroke:", ";}}", " ", " ", " ", " ", " ", " &.", "{", " ", " ", "}"], getTypographyIntent('body'), colors.white, colors.gray50, borderRadius.md, colors.gray15, spacing.md, function (_ref3) {
|
|
56
56
|
var $block = _ref3.$block;
|
|
57
57
|
return $block ? '100%' : "".concat(styledSelectButtonDefaultWidth, "px");
|
|
@@ -74,7 +74,7 @@ export var StyledSelectButton = /*#__PURE__*/styled.div.withConfig({
|
|
|
74
74
|
return css(["gap:", ";"], $hasClearIcon ? "".concat(spacing.xl, "px") : 0);
|
|
75
75
|
}, function (_ref8) {
|
|
76
76
|
var $showClearIcon = _ref8.$showClearIcon;
|
|
77
|
-
return css(["& + ", "{opacity:", ";}"], StyledSelectClearIcon, $showClearIcon ? 1 : 0);
|
|
77
|
+
return css(["& + ", "{opacity:", ";pointer-events:", ";}"], StyledSelectClearIcon, $showClearIcon ? 1 : 0, $showClearIcon ? 'auto' : 'none');
|
|
78
78
|
}, function (_ref9) {
|
|
79
79
|
var $open = _ref9.$open;
|
|
80
80
|
return $open && css(["", "{", "}"], StyledSelectArrow, arrowUp(4, 'gray45'));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Select.styles.js","names":["styled","css","Button","StyledContent","Card","StyledCircle","getTypographyIntent","arrowDown","arrowUp","borderRadius","colors","getEllipsis","getFocus","spacing","dataQa","focused","hovered","tableSelectClassName","styledSelectButtonDefaultWidth","StyledSelectButtonWrapper","div","withConfig","displayName","componentId","_ref","$block","concat","StyledSelectMenu","StyledSelectButtonLabel","sm","_ref2","$hoverable","StyledSelectSpinner","StyledSelectArrowContainer","StyledSelectArrow","StyledSelectClearIcon","StyledSelectButton","white","gray50","md","gray15","_ref3","gray45","gray20","blue50","_ref4","_ref4$$placeholder","$placeholder","_ref5","$disabled","gray94","gray70","_ref6","$error","$loading","red50","_ref7","$hasClearIcon","xl","_ref8","$showClearIcon","_ref9","$open","_ref0","_ref1","_ref10","_ref10$$placeholder"],"sources":["../../src/Select/Select.styles.tsx"],"sourcesContent":["import styled, { css } from 'styled-components'\nimport { Button } from '../Button'\nimport { StyledContent } from '../Button/Button.styles'\nimport { Card } from '../Card'\nimport { StyledCircle } from '../Spinner/Spinner.styles'\nimport { getTypographyIntent } from '../Typography/Typography.styles'\nimport { arrowDown, arrowUp } from '../_styles/arrows'\nimport { borderRadius } from '../_styles/borderRadius'\nimport { colors } from '../_styles/colors'\nimport { getEllipsis, getFocus } from '../_styles/mixins'\nimport { spacing } from '../_styles/spacing'\n\nexport const dataQa = {\n focused: 'core-select-focused',\n hovered: 'core-select-hovered',\n}\n\nexport const tableSelectClassName = 'select--table'\nconst styledSelectButtonDefaultWidth = 248\n\nexport const StyledSelectButtonWrapper = styled.div<{ $block: boolean }>`\n display: inline-block;\n position: relative;\n width: ${({ $block }) =>\n $block ? '100%' : `${styledSelectButtonDefaultWidth}px`};\n`\n\nexport const StyledSelectMenu = styled(Card)`\n display: flex;\n max-height: 40vh;\n max-width: ${styledSelectButtonDefaultWidth}px;\n min-width: inherit;\n`\n\nexport const StyledSelectButtonLabel = styled.div<{ $hoverable: boolean }>`\n ${getEllipsis()}\n flex-grow: 1;\n margin-right: ${spacing.sm}px;\n outline: none;\n pointer-events: ${({ $hoverable }) => ($hoverable ? 'initial' : 'none')};\n user-select: none;\n`\n\nexport const StyledSelectSpinner = styled.div`\n align-items: center;\n display: flex;\n flex: 0 0 auto;\n justify-content: center;\n line-height: 0;\n`\n\nexport const StyledSelectArrowContainer = styled.div`\n align-items: center;\n display: inline-flex;\n height: 16px;\n justify-content: flex-end;\n margin-left: ${spacing.sm}px;\n width: 8px;\n`\n\nexport const StyledSelectArrow = styled.div`\n position: relative;\n ${arrowDown(4, 'gray45')}\n`\n\nexport const StyledSelectClearIcon = styled(Button)`\n position: absolute;\n right: 29px;\n top: 50%;\n transform: translateY(-50%);\n\n ${StyledContent} {\n pointer-events: none;\n }\n`\n\nexport const StyledSelectButton = styled.div<{\n $block: boolean\n $disabled: boolean\n $error: boolean\n $loading: boolean\n $open: boolean\n $placeholder?: boolean\n $hasClearIcon?: boolean\n $showClearIcon?: boolean\n}>`\n ${getTypographyIntent('body')}\n\n align-items: center;\n background-color: ${colors.white};\n border-color: ${colors.gray50};\n border-radius: ${borderRadius.md}px;\n border-style: solid;\n border-width: 1px;\n color: ${colors.gray15};\n cursor: pointer;\n display: inline-flex;\n height: 36px;\n min-height: 36px;\n outline: none;\n padding: 0 ${spacing.md}px;\n position: relative;\n white-space: nowrap;\n width: ${({ $block }) =>\n $block ? '100%' : `${styledSelectButtonDefaultWidth}px`};\n\n &::placeholder {\n border-color: ${colors.gray45};\n }\n\n &:hover,\n &:active,\n &[data-qa=${dataQa.hovered}] {\n background-color: ${colors.white};\n border-color: ${colors.gray20};\n color: ${colors.gray15};\n }\n\n &.focus,\n &:focus,\n &[data-qa=${dataQa.focused}],\n ${StyledSelectButtonWrapper}:focus-within & {\n ${getFocus()}\n\n ${StyledCircle} {\n stroke: ${colors.blue50};\n }\n }\n\n ${({ $placeholder = false }) =>\n $placeholder &&\n css`\n ${StyledSelectButtonLabel} {\n color: ${colors.gray45};\n }\n `}\n\n ${({ $disabled }) =>\n $disabled &&\n css`\n background-color: ${colors.gray94};\n border-color: ${colors.gray50};\n color: ${colors.gray45};\n cursor: default;\n pointer-events: none;\n\n ${StyledSelectButtonLabel} {\n color: ${colors.gray70};\n }\n\n ${StyledSelectArrow} {\n ${arrowDown(4, 'gray70')}\n }\n `}\n\n ${({ $error, $disabled, $loading }) => {\n if ($error && !$disabled) {\n return css`\n &,\n &:hover {\n border-color: ${colors.red50};\n border-color: var(--core-input-error-border-color, ${colors.red50});\n }\n &:hover:focus {\n ${getFocus()}\n }\n `\n }\n }}\n\n ${({ $hasClearIcon }) => css`\n gap: ${$hasClearIcon ? `${spacing.xl}px` : 0};\n `}\n\n ${({ $showClearIcon }) => css`\n & + ${StyledSelectClearIcon} {\n opacity: ${$showClearIcon ? 1 : 0};\n }\n `}\n\n ${({ $open }) =>\n $open &&\n css`\n ${StyledSelectArrow} {\n ${arrowUp(4, 'gray45')}\n }\n `}\n\n &.${tableSelectClassName} {\n ${({ $open }) =>\n $open &&\n css`\n background-color: ${colors.white};\n\n ${StyledSelectButtonLabel} {\n white-space: nowrap;\n }\n\n ${StyledSelectArrow} {\n opacity: 1;\n pointer-events: all;\n }\n `}\n\n ${({ $open, $showClearIcon }) =>\n $open &&\n $showClearIcon &&\n css`\n & + ${StyledSelectClearIcon} {\n opacity: 1;\n pointer-events: all;\n }\n `}\n\n ${({ $open, $placeholder = false }) =>\n $open &&\n $placeholder &&\n css`\n ${StyledSelectButtonLabel} {\n opacity: 1;\n pointer-events: all;\n }\n `}\n }\n`\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Select.styles.js","names":["styled","css","Button","StyledContent","Card","StyledCircle","getTypographyIntent","arrowDown","arrowUp","borderRadius","colors","getEllipsis","getFocus","spacing","dataQa","focused","hovered","tableSelectClassName","styledSelectButtonDefaultWidth","StyledSelectButtonWrapper","div","withConfig","displayName","componentId","_ref","$block","concat","StyledSelectMenu","StyledSelectButtonLabel","sm","_ref2","$hoverable","StyledSelectSpinner","StyledSelectArrowContainer","StyledSelectArrow","StyledSelectClearIcon","StyledSelectButton","white","gray50","md","gray15","_ref3","gray45","gray20","blue50","_ref4","_ref4$$placeholder","$placeholder","_ref5","$disabled","gray94","gray70","_ref6","$error","$loading","red50","_ref7","$hasClearIcon","xl","_ref8","$showClearIcon","_ref9","$open","_ref0","_ref1","_ref10","_ref10$$placeholder"],"sources":["../../src/Select/Select.styles.tsx"],"sourcesContent":["import styled, { css } from 'styled-components'\nimport { Button } from '../Button'\nimport { StyledContent } from '../Button/Button.styles'\nimport { Card } from '../Card'\nimport { StyledCircle } from '../Spinner/Spinner.styles'\nimport { getTypographyIntent } from '../Typography/Typography.styles'\nimport { arrowDown, arrowUp } from '../_styles/arrows'\nimport { borderRadius } from '../_styles/borderRadius'\nimport { colors } from '../_styles/colors'\nimport { getEllipsis, getFocus } from '../_styles/mixins'\nimport { spacing } from '../_styles/spacing'\n\nexport const dataQa = {\n focused: 'core-select-focused',\n hovered: 'core-select-hovered',\n}\n\nexport const tableSelectClassName = 'select--table'\nconst styledSelectButtonDefaultWidth = 248\n\nexport const StyledSelectButtonWrapper = styled.div<{ $block: boolean }>`\n display: inline-block;\n position: relative;\n width: ${({ $block }) =>\n $block ? '100%' : `${styledSelectButtonDefaultWidth}px`};\n`\n\nexport const StyledSelectMenu = styled(Card)`\n display: flex;\n max-height: 40vh;\n max-width: ${styledSelectButtonDefaultWidth}px;\n min-width: inherit;\n`\n\nexport const StyledSelectButtonLabel = styled.div<{ $hoverable: boolean }>`\n ${getEllipsis()}\n flex-grow: 1;\n margin-right: ${spacing.sm}px;\n outline: none;\n pointer-events: ${({ $hoverable }) => ($hoverable ? 'initial' : 'none')};\n user-select: none;\n`\n\nexport const StyledSelectSpinner = styled.div`\n align-items: center;\n display: flex;\n flex: 0 0 auto;\n justify-content: center;\n line-height: 0;\n`\n\nexport const StyledSelectArrowContainer = styled.div`\n align-items: center;\n display: inline-flex;\n height: 16px;\n justify-content: flex-end;\n margin-left: ${spacing.sm}px;\n width: 8px;\n`\n\nexport const StyledSelectArrow = styled.div`\n position: relative;\n ${arrowDown(4, 'gray45')}\n`\n\nexport const StyledSelectClearIcon = styled(Button)`\n position: absolute;\n right: 29px;\n top: 50%;\n transform: translateY(-50%);\n\n ${StyledContent} {\n pointer-events: none;\n }\n`\n\nexport const StyledSelectButton = styled.div<{\n $block: boolean\n $disabled: boolean\n $error: boolean\n $loading: boolean\n $open: boolean\n $placeholder?: boolean\n $hasClearIcon?: boolean\n $showClearIcon?: boolean\n}>`\n ${getTypographyIntent('body')}\n\n align-items: center;\n background-color: ${colors.white};\n border-color: ${colors.gray50};\n border-radius: ${borderRadius.md}px;\n border-style: solid;\n border-width: 1px;\n color: ${colors.gray15};\n cursor: pointer;\n display: inline-flex;\n height: 36px;\n min-height: 36px;\n outline: none;\n padding: 0 ${spacing.md}px;\n position: relative;\n white-space: nowrap;\n width: ${({ $block }) =>\n $block ? '100%' : `${styledSelectButtonDefaultWidth}px`};\n\n &::placeholder {\n border-color: ${colors.gray45};\n }\n\n &:hover,\n &:active,\n &[data-qa=${dataQa.hovered}] {\n background-color: ${colors.white};\n border-color: ${colors.gray20};\n color: ${colors.gray15};\n }\n\n &.focus,\n &:focus,\n &[data-qa=${dataQa.focused}],\n ${StyledSelectButtonWrapper}:focus-within & {\n ${getFocus()}\n\n ${StyledCircle} {\n stroke: ${colors.blue50};\n }\n }\n\n ${({ $placeholder = false }) =>\n $placeholder &&\n css`\n ${StyledSelectButtonLabel} {\n color: ${colors.gray45};\n }\n `}\n\n ${({ $disabled }) =>\n $disabled &&\n css`\n background-color: ${colors.gray94};\n border-color: ${colors.gray50};\n color: ${colors.gray45};\n cursor: default;\n pointer-events: none;\n\n ${StyledSelectButtonLabel} {\n color: ${colors.gray70};\n }\n\n ${StyledSelectArrow} {\n ${arrowDown(4, 'gray70')}\n }\n `}\n\n ${({ $error, $disabled, $loading }) => {\n if ($error && !$disabled) {\n return css`\n &,\n &:hover {\n border-color: ${colors.red50};\n border-color: var(--core-input-error-border-color, ${colors.red50});\n }\n &:hover:focus {\n ${getFocus()}\n }\n `\n }\n }}\n\n ${({ $hasClearIcon }) => css`\n gap: ${$hasClearIcon ? `${spacing.xl}px` : 0};\n `}\n\n ${({ $showClearIcon }) => css`\n & + ${StyledSelectClearIcon} {\n opacity: ${$showClearIcon ? 1 : 0};\n pointer-events: ${$showClearIcon ? 'auto' : 'none'};\n }\n `}\n\n ${({ $open }) =>\n $open &&\n css`\n ${StyledSelectArrow} {\n ${arrowUp(4, 'gray45')}\n }\n `}\n\n &.${tableSelectClassName} {\n ${({ $open }) =>\n $open &&\n css`\n background-color: ${colors.white};\n\n ${StyledSelectButtonLabel} {\n white-space: nowrap;\n }\n\n ${StyledSelectArrow} {\n opacity: 1;\n pointer-events: all;\n }\n `}\n\n ${({ $open, $showClearIcon }) =>\n $open &&\n $showClearIcon &&\n css`\n & + ${StyledSelectClearIcon} {\n opacity: 1;\n pointer-events: all;\n }\n `}\n\n ${({ $open, $placeholder = false }) =>\n $open &&\n $placeholder &&\n css`\n ${StyledSelectButtonLabel} {\n opacity: 1;\n pointer-events: all;\n }\n `}\n }\n`\n"],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import type { DropdownPlacement } from '../Dropdown/Dropdown.types';
|
|
|
4
4
|
import type { MenuProps, MenuRef } from '../MenuImperative/MenuImperative.types';
|
|
5
5
|
import type { OverlayTriggerProps } from '../OverlayTrigger';
|
|
6
6
|
import type { PortalProps } from '../Portal/Portal.types';
|
|
7
|
+
import type { Props } from '../_utils/types';
|
|
7
8
|
export declare type SelectPlacement = DropdownPlacement;
|
|
8
9
|
declare type DivProps = React.ComponentPropsWithoutRef<'div'>;
|
|
9
10
|
export declare type TriggerRole = 'combobox' | 'button';
|
|
@@ -53,6 +54,12 @@ export interface SelectMenuProps extends Omit<DivProps, 'onSelect' | 'onDragEnd'
|
|
|
53
54
|
*/
|
|
54
55
|
menuId: string;
|
|
55
56
|
}
|
|
57
|
+
export interface SelectOptGroupProps extends Props {
|
|
58
|
+
/**
|
|
59
|
+
* @since 12.39.0
|
|
60
|
+
*/
|
|
61
|
+
label?: string;
|
|
62
|
+
}
|
|
56
63
|
export interface SelectOptionProps extends DivProps {
|
|
57
64
|
/**
|
|
58
65
|
* @since 10.19.0
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Select.types.js","names":[],"sources":["../../src/Select/Select.types.ts"],"sourcesContent":["import type { ButtonProps } from '../Button/Button.types'\nimport type { DropdownPlacement } from '../Dropdown/Dropdown.types'\nimport type { MenuProps, MenuRef } from '../MenuImperative/MenuImperative.types'\nimport type { OverlayTriggerProps } from '../OverlayTrigger'\nimport type { PortalProps } from '../Portal/Portal.types'\n\nexport type SelectPlacement = DropdownPlacement\n\ntype DivProps = React.ComponentPropsWithoutRef<'div'>\n\nexport type TriggerRole = 'combobox' | 'button'\n\nexport interface SelectMenuProps\n extends Omit<DivProps, 'onSelect' | 'onDragEnd'>,\n Pick<PortalProps, 'container'> {\n /**\n * @since 10.19.0\n */\n emptyMessage?: string\n /**\n * @since 12.15.0\n */\n header?: React.ReactNode\n /**\n * @since 10.19.0\n */\n footer?: React.ReactNode\n /**\n * @since 10.19.0\n */\n i18nScope?: string\n /**\n * @since 10.19.0\n */\n onClear?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void\n /**\n * @since 10.19.0\n */\n onScrollBottom?: MenuProps['onScrollBottom']\n /**\n * @since 10.19.0\n */\n onSearch?: (event: React.ChangeEvent<HTMLInputElement>) => void\n /**\n * @since 10.19.0\n */\n onSelect?: MenuProps['onSelect']\n /**\n * @since 10.19.0\n */\n optionsRef?: React.RefObject<HTMLDivElement>\n /**\n * @since 10.19.0\n */\n menuRef: React.RefObject<MenuRef>\n /**\n * @since 12.35.1\n */\n menuId: string\n}\n\nexport interface SelectOptionProps extends DivProps {\n /**\n * @since 10.19.0\n */\n index?: number\n /**\n * @since 10.19.0\n */\n value: any\n /**\n * @since 10.19.0\n */\n disabled?: boolean\n\n /**\n * Represents the currently selected value. This option will be styled\n * differently as well as receive UX to scroll into view and start list\n * navigation from this element.\n * @since 10.19.0\n */\n selected?: boolean\n\n /**\n * If nothing is selected, suggest this option. Suggested options mimic the\n * UX of a selected option, scroll into view and start list navigation from\n * this element.\n * @since 10.19.0\n */\n suggested?: boolean\n}\n\ninterface QaTags {\n /**\n * @since 10.19.0\n */\n label: string\n /**\n * @since 10.19.0\n */\n clear: string\n}\n\nexport interface SelectProps\n extends Omit<DivProps, 'onSelect'>,\n Pick<PortalProps, 'container'> {\n /**\n * @since 10.19.0\n */\n afterHide?: OverlayTriggerProps['afterHide']\n /**\n * @since 10.19.0\n */\n afterShow?: OverlayTriggerProps['afterShow']\n /**\n * @since 10.19.0\n */\n beforeHide?: OverlayTriggerProps['beforeHide']\n /**\n * @since 10.19.0\n */\n beforeShow?: OverlayTriggerProps['beforeShow']\n\n /**\n * Make the Select button 100% width\n * @since 10.19.0\n */\n block?: boolean\n\n /**\n * @default false\n * @since 10.19.0\n */\n disabled?: boolean\n\n /**\n * When there are no children this will render\n * @since 10.19.0\n */\n emptyMessage?: string\n\n /**\n * @default false\n * @since 10.19.0\n */\n error?: boolean\n /**\n * @since 12.15.0\n */\n header?: React.ReactNode\n /**\n * @since 10.19.0\n */\n footer?: React.ReactNode\n /**\n * @since 10.19.0\n */\n hideDelay?: number\n /**\n * The i18n key to use for the select's configurable strings.\n * Defaults to using the core library's default strings.\n * @since 10.19.0\n */\n i18nScope?: string\n /**\n * @since 10.19.0\n */\n label?: React.ReactNode\n\n /**\n * If the select is loading\n * @default false\n * @since 10.19.0\n */\n loading?: boolean\n\n /**\n * It is possible for this component to have an empty value\n * (render placeholder). Enables the x icon.\n * @since 10.19.0\n */\n onClear?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void\n\n /**\n * Optional `function` that automatically executes when\n * scrolling reaches the last item.\n * @since 10.19.0\n */\n onScrollBottom?: MenuProps['onScrollBottom']\n\n /**\n * Adds a search bar to the select.\n * @since 10.19.0\n */\n onSearch?: (event: React.ChangeEvent<HTMLInputElement>) => void\n /**\n * @since 10.19.0\n */\n onSelect?: MenuProps['onSelect']\n /**\n * @since 10.19.0\n */\n optionsRef?: React.RefObject<HTMLDivElement>\n\n /**\n * Renders when the label is blank\n * @since 10.19.0\n */\n placeholder?: string\n\n /**\n * The placement of the overlay\n * @default 'bottom-left'\n * @since 10.19.0\n */\n placement?: SelectPlacement\n /**\n * @since 10.19.0\n */\n qa?: Partial<QaTags>\n\n /**\n * Restore focus to the target after the overlay is hidden.\n * 'core-react' will use internal logic to restore focus,\n * 'react-aria-focus-scope' will use 'FocusScope' component from '@react-aria',\n * true will use both.\n * @default 'core-react'\n * @since 12.11.0\n */\n restoreFocusOnHide?: OverlayTriggerProps['restoreFocusOnHide']\n\n /**\n * @since 10.19.0\n */\n showDelay?: number\n\n /**\n * Configurable tabIndex for the select button\n * @default 0\n * @since 10.19.0\n */\n tabIndex?: number\n}\n\nexport interface SelectButtonProps extends DivProps {\n /**\n * @since 10.19.0\n */\n block?: ButtonProps['block']\n /**\n * @since 10.19.0\n */\n clearRef?: React.RefObject<HTMLButtonElement>\n /**\n * @since 10.19.0\n */\n disabled?: ButtonProps['disabled']\n /**\n * @since 10.19.0\n */\n dropdown?: boolean\n /**\n * @since 10.19.0\n */\n error?: boolean\n /**\n * @since 11.9.0\n * If the component should apply a focus appeareance. This is\n * not DOM focus management, and purely visual.\n */\n focus?: boolean | ((obj: { open: boolean }) => boolean)\n /**\n * @since 10.19.0\n */\n icon?: ButtonProps['icon']\n /**\n * @since 10.19.0\n */\n label?: React.ReactNode\n /**\n * @since 10.19.0\n */\n loading?: ButtonProps['loading']\n /**\n * @since 10.19.0\n */\n onClear?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void\n /**\n * @since 10.19.0\n */\n open?: boolean\n /**\n * @since 10.19.0\n */\n placeholder?: string\n /**\n * @since 10.19.0\n */\n qa?: Partial<QaTags>\n /**\n * @since 10.19.0\n */\n size?: ButtonProps['size']\n /**\n * @since 10.19.0\n */\n tabIndex?: number\n /**\n * @since 10.19.0\n */\n type?: ButtonProps['type']\n /**\n * @since 10.19.0\n */\n variant?: ButtonProps['variant']\n /**\n * @since 10.19.0\n */\n isMenuOpened?: boolean\n /**\n * @since 12.35.1\n */\n isListboxOnly?: boolean\n /**\n * @since 12.35.1\n */\n menuId?: string\n}\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"Select.types.js","names":[],"sources":["../../src/Select/Select.types.ts"],"sourcesContent":["import type { ButtonProps } from '../Button/Button.types'\nimport type { DropdownPlacement } from '../Dropdown/Dropdown.types'\nimport type { MenuProps, MenuRef } from '../MenuImperative/MenuImperative.types'\nimport type { OverlayTriggerProps } from '../OverlayTrigger'\nimport type { PortalProps } from '../Portal/Portal.types'\nimport type { Props } from '../_utils/types'\n\nexport type SelectPlacement = DropdownPlacement\n\ntype DivProps = React.ComponentPropsWithoutRef<'div'>\n\nexport type TriggerRole = 'combobox' | 'button'\n\nexport interface SelectMenuProps\n extends Omit<DivProps, 'onSelect' | 'onDragEnd'>,\n Pick<PortalProps, 'container'> {\n /**\n * @since 10.19.0\n */\n emptyMessage?: string\n /**\n * @since 12.15.0\n */\n header?: React.ReactNode\n /**\n * @since 10.19.0\n */\n footer?: React.ReactNode\n /**\n * @since 10.19.0\n */\n i18nScope?: string\n /**\n * @since 10.19.0\n */\n onClear?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void\n /**\n * @since 10.19.0\n */\n onScrollBottom?: MenuProps['onScrollBottom']\n /**\n * @since 10.19.0\n */\n onSearch?: (event: React.ChangeEvent<HTMLInputElement>) => void\n /**\n * @since 10.19.0\n */\n onSelect?: MenuProps['onSelect']\n /**\n * @since 10.19.0\n */\n optionsRef?: React.RefObject<HTMLDivElement>\n /**\n * @since 10.19.0\n */\n menuRef: React.RefObject<MenuRef>\n /**\n * @since 12.35.1\n */\n menuId: string\n}\n\nexport interface SelectOptGroupProps extends Props {\n /**\n * @since 12.39.0\n */\n label?: string\n}\n\nexport interface SelectOptionProps extends DivProps {\n /**\n * @since 10.19.0\n */\n index?: number\n /**\n * @since 10.19.0\n */\n value: any\n /**\n * @since 10.19.0\n */\n disabled?: boolean\n\n /**\n * Represents the currently selected value. This option will be styled\n * differently as well as receive UX to scroll into view and start list\n * navigation from this element.\n * @since 10.19.0\n */\n selected?: boolean\n\n /**\n * If nothing is selected, suggest this option. Suggested options mimic the\n * UX of a selected option, scroll into view and start list navigation from\n * this element.\n * @since 10.19.0\n */\n suggested?: boolean\n}\n\ninterface QaTags {\n /**\n * @since 10.19.0\n */\n label: string\n /**\n * @since 10.19.0\n */\n clear: string\n}\n\nexport interface SelectProps\n extends Omit<DivProps, 'onSelect'>,\n Pick<PortalProps, 'container'> {\n /**\n * @since 10.19.0\n */\n afterHide?: OverlayTriggerProps['afterHide']\n /**\n * @since 10.19.0\n */\n afterShow?: OverlayTriggerProps['afterShow']\n /**\n * @since 10.19.0\n */\n beforeHide?: OverlayTriggerProps['beforeHide']\n /**\n * @since 10.19.0\n */\n beforeShow?: OverlayTriggerProps['beforeShow']\n\n /**\n * Make the Select button 100% width\n * @since 10.19.0\n */\n block?: boolean\n\n /**\n * @default false\n * @since 10.19.0\n */\n disabled?: boolean\n\n /**\n * When there are no children this will render\n * @since 10.19.0\n */\n emptyMessage?: string\n\n /**\n * @default false\n * @since 10.19.0\n */\n error?: boolean\n /**\n * @since 12.15.0\n */\n header?: React.ReactNode\n /**\n * @since 10.19.0\n */\n footer?: React.ReactNode\n /**\n * @since 10.19.0\n */\n hideDelay?: number\n /**\n * The i18n key to use for the select's configurable strings.\n * Defaults to using the core library's default strings.\n * @since 10.19.0\n */\n i18nScope?: string\n /**\n * @since 10.19.0\n */\n label?: React.ReactNode\n\n /**\n * If the select is loading\n * @default false\n * @since 10.19.0\n */\n loading?: boolean\n\n /**\n * It is possible for this component to have an empty value\n * (render placeholder). Enables the x icon.\n * @since 10.19.0\n */\n onClear?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void\n\n /**\n * Optional `function` that automatically executes when\n * scrolling reaches the last item.\n * @since 10.19.0\n */\n onScrollBottom?: MenuProps['onScrollBottom']\n\n /**\n * Adds a search bar to the select.\n * @since 10.19.0\n */\n onSearch?: (event: React.ChangeEvent<HTMLInputElement>) => void\n /**\n * @since 10.19.0\n */\n onSelect?: MenuProps['onSelect']\n /**\n * @since 10.19.0\n */\n optionsRef?: React.RefObject<HTMLDivElement>\n\n /**\n * Renders when the label is blank\n * @since 10.19.0\n */\n placeholder?: string\n\n /**\n * The placement of the overlay\n * @default 'bottom-left'\n * @since 10.19.0\n */\n placement?: SelectPlacement\n /**\n * @since 10.19.0\n */\n qa?: Partial<QaTags>\n\n /**\n * Restore focus to the target after the overlay is hidden.\n * 'core-react' will use internal logic to restore focus,\n * 'react-aria-focus-scope' will use 'FocusScope' component from '@react-aria',\n * true will use both.\n * @default 'core-react'\n * @since 12.11.0\n */\n restoreFocusOnHide?: OverlayTriggerProps['restoreFocusOnHide']\n\n /**\n * @since 10.19.0\n */\n showDelay?: number\n\n /**\n * Configurable tabIndex for the select button\n * @default 0\n * @since 10.19.0\n */\n tabIndex?: number\n}\n\nexport interface SelectButtonProps extends DivProps {\n /**\n * @since 10.19.0\n */\n block?: ButtonProps['block']\n /**\n * @since 10.19.0\n */\n clearRef?: React.RefObject<HTMLButtonElement>\n /**\n * @since 10.19.0\n */\n disabled?: ButtonProps['disabled']\n /**\n * @since 10.19.0\n */\n dropdown?: boolean\n /**\n * @since 10.19.0\n */\n error?: boolean\n /**\n * @since 11.9.0\n * If the component should apply a focus appeareance. This is\n * not DOM focus management, and purely visual.\n */\n focus?: boolean | ((obj: { open: boolean }) => boolean)\n /**\n * @since 10.19.0\n */\n icon?: ButtonProps['icon']\n /**\n * @since 10.19.0\n */\n label?: React.ReactNode\n /**\n * @since 10.19.0\n */\n loading?: ButtonProps['loading']\n /**\n * @since 10.19.0\n */\n onClear?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void\n /**\n * @since 10.19.0\n */\n open?: boolean\n /**\n * @since 10.19.0\n */\n placeholder?: string\n /**\n * @since 10.19.0\n */\n qa?: Partial<QaTags>\n /**\n * @since 10.19.0\n */\n size?: ButtonProps['size']\n /**\n * @since 10.19.0\n */\n tabIndex?: number\n /**\n * @since 10.19.0\n */\n type?: ButtonProps['type']\n /**\n * @since 10.19.0\n */\n variant?: ButtonProps['variant']\n /**\n * @since 10.19.0\n */\n isMenuOpened?: boolean\n /**\n * @since 12.35.1\n */\n isListboxOnly?: boolean\n /**\n * @since 12.35.1\n */\n menuId?: string\n}\n"],"mappings":""}
|
package/dist/Select/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { Button as SelectButton, Select } from './Select';
|
|
2
2
|
export { StyledSelectArrow, StyledSelectArrowContainer, StyledSelectButton, StyledSelectButtonLabel, StyledSelectClearIcon, StyledSelectMenu, StyledSelectSpinner, } from './Select.styles';
|
|
3
|
-
export type { SelectButtonProps, SelectOptionProps, SelectProps, } from './Select.types';
|
|
3
|
+
export type { SelectButtonProps, SelectOptGroupProps, SelectOptionProps, SelectProps, } from './Select.types';
|
package/dist/Select/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["Button","SelectButton","Select","StyledSelectArrow","StyledSelectArrowContainer","StyledSelectButton","StyledSelectButtonLabel","StyledSelectClearIcon","StyledSelectMenu","StyledSelectSpinner"],"sources":["../../src/Select/index.ts"],"sourcesContent":["export { Button as SelectButton, Select } from './Select'\nexport {\n StyledSelectArrow,\n StyledSelectArrowContainer,\n StyledSelectButton,\n StyledSelectButtonLabel,\n StyledSelectClearIcon,\n StyledSelectMenu,\n StyledSelectSpinner,\n} from './Select.styles'\nexport type {\n SelectButtonProps,\n SelectOptionProps,\n SelectProps,\n} from './Select.types'\n"],"mappings":"AAAA,SAASA,MAAM,IAAIC,YAAY,EAAEC,MAAM,QAAQ,UAAU;AACzD,SACEC,iBAAiB,EACjBC,0BAA0B,EAC1BC,kBAAkB,EAClBC,uBAAuB,EACvBC,qBAAqB,EACrBC,gBAAgB,EAChBC,mBAAmB,QACd,iBAAiB"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["Button","SelectButton","Select","StyledSelectArrow","StyledSelectArrowContainer","StyledSelectButton","StyledSelectButtonLabel","StyledSelectClearIcon","StyledSelectMenu","StyledSelectSpinner"],"sources":["../../src/Select/index.ts"],"sourcesContent":["export { Button as SelectButton, Select } from './Select'\nexport {\n StyledSelectArrow,\n StyledSelectArrowContainer,\n StyledSelectButton,\n StyledSelectButtonLabel,\n StyledSelectClearIcon,\n StyledSelectMenu,\n StyledSelectSpinner,\n} from './Select.styles'\nexport type {\n SelectButtonProps,\n SelectOptGroupProps,\n SelectOptionProps,\n SelectProps,\n} from './Select.types'\n"],"mappings":"AAAA,SAASA,MAAM,IAAIC,YAAY,EAAEC,MAAM,QAAQ,UAAU;AACzD,SACEC,iBAAiB,EACjBC,0BAA0B,EAC1BC,kBAAkB,EAClBC,uBAAuB,EACvBC,qBAAqB,EACrBC,gBAAgB,EAChBC,mBAAmB,QACd,iBAAiB"}
|