@procore/core-react 12.49.1 → 12.50.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -0
- package/dist/AnchorNavigation/AnchorNavigation.styles.js +4 -4
- package/dist/AnchorNavigation/AnchorNavigationProvider.js +11 -2
- package/dist/AnchorNavigation/AnchorNavigationProvider.js.map +1 -1
- package/dist/Avatar/Avatar.styles.js +5 -5
- package/dist/AvatarStack/AvatarStack.styles.js +8 -8
- 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.styles.js +6 -6
- package/dist/ContactItem/ContactItem.styles.js +5 -5
- package/dist/Content/Content.styles.js +2 -2
- package/dist/DateInput/DateInput.styles.js +6 -6
- package/dist/DetailPage/DetailPage.d.ts +2 -1
- package/dist/DetailPage/DetailPage.js +11 -10
- package/dist/DetailPage/DetailPage.js.map +1 -1
- package/dist/DetailPage/DetailPage.styles.js +9 -8
- package/dist/DetailPage/DetailPage.styles.js.map +1 -1
- package/dist/DetailPage/DetailPage.types.d.ts +5 -5
- package/dist/DetailPage/DetailPage.types.js.map +1 -1
- package/dist/DetailPageTemplate/DetailPageTemplate.types.d.ts +7 -1
- package/dist/DetailPageTemplate/DetailPageTemplate.types.js.map +1 -1
- package/dist/Dropdown/Dropdown.js +2 -2
- package/dist/Dropdown/Dropdown.js.map +1 -1
- package/dist/Dropdown/Dropdown.styles.js +3 -3
- package/dist/Dropdown/Dropdown.types.d.ts +12 -2
- package/dist/Dropdown/Dropdown.types.js.map +1 -1
- package/dist/DropdownFlyout/DropdownFlyout.styles.js +4 -4
- package/dist/Dropzone/Dropzone.js +1 -1
- package/dist/Dropzone/Dropzone.styles.js +9 -9
- package/dist/EmptyState/EmptyState.styles.js +6 -6
- package/dist/Field/Field.styles.js +3 -3
- package/dist/FileList/FileList.styles.js +3 -3
- package/dist/FileSelect/FileExplorer/FileExplorer.styles.js +9 -9
- package/dist/FileSelect/FileExplorer/FileExplorerSidebar.styles.js +3 -3
- package/dist/FileSelect/FileSelect.styles.js +2 -2
- package/dist/FileSelect/FileSelectDropzone/FileSelectDropzone.styles.js +3 -3
- package/dist/FileSelect/FileTokenList/FileTokenList.styles.js +2 -2
- package/dist/FileSelect/GridSource/GridSource.styles.js +6 -6
- package/dist/FileSelect/LocalSource/LocalSource.styles.js +4 -4
- package/dist/FileSelect/SourceItem/SourceItem.d.ts +7 -0
- package/dist/FileSelect/SourceItem/SourceItem.js.map +1 -1
- package/dist/FileSelect/SourceItem/SourceItem.styles.js +3 -3
- package/dist/FileSelect/ThumbnailList/ThumbnailList.styles.js +6 -6
- package/dist/FileSelect/TreeSource/TreeSource.styles.js +1 -1
- package/dist/FileToken/FileToken.styles.js +6 -6
- package/dist/FilterToken/FilterToken.styles.js +5 -5
- package/dist/FlexList/FlexList.styles.js +1 -1
- package/dist/Form/Form.styles.js +13 -13
- package/dist/Form/StyledFormikForm.styles.d.ts +2 -2
- package/dist/Form/StyledFormikForm.styles.js +2 -2
- package/dist/GhostPlaceholder/GhostPlaceholder.styles.js +3 -3
- package/dist/GhostPlaceholder/GhostPlaceholder.styles.js.map +1 -1
- package/dist/GhostPlaceholder/GhostPlaceholder.types.d.ts +10 -0
- package/dist/GhostPlaceholder/GhostPlaceholder.types.js.map +1 -1
- package/dist/Grid/Grid.styles.js +2 -2
- package/dist/GroupSelect/GroupSelect.styles.js +1 -1
- package/dist/Input/Input.styles.js +1 -1
- package/dist/Link/Link.styles.js +1 -1
- package/dist/ListPage/ListPage.styles.js +8 -8
- package/dist/Loader/Loader.styles.js +2 -2
- package/dist/MenuImperative/MenuImperative.styles.js +11 -11
- package/dist/Modal/Modal.styles.js +26 -33
- package/dist/Modal/Modal.styles.js.map +1 -1
- package/dist/MultiSelect/MultiSelect.styles.d.ts +1 -1
- package/dist/MultiSelect/MultiSelect.styles.js +8 -8
- package/dist/NextMenu/NextMenu.styles.js +3 -3
- package/dist/NextTile/NextTile.styles.js +5 -5
- 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/PageLayout/PageLayout.js +8 -5
- package/dist/PageLayout/PageLayout.js.map +1 -1
- package/dist/PageLayout/PageLayout.styles.js +19 -20
- package/dist/PageLayout/PageLayout.styles.js.map +1 -1
- package/dist/PageLayout/PageLayout.types.d.ts +7 -0
- package/dist/PageLayout/PageLayout.types.js.map +1 -1
- package/dist/PageTemplate/PageFooterTemplate/PageFooterTemplate.styles.js +1 -1
- package/dist/PageTemplate/PageFooterTemplate/PageFooterTemplate.types.d.ts +5 -0
- package/dist/PageTemplate/PageFooterTemplate/PageFooterTemplate.types.js.map +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 +14 -13
- package/dist/Panel/Panel.styles.js.map +1 -1
- package/dist/Pill/Pill.styles.js +3 -3
- 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.js +1 -0
- package/dist/Required/Required.js.map +1 -1
- package/dist/Required/Required.styles.js +5 -5
- package/dist/Required/Required.styles.js.map +1 -1
- package/dist/Required/Required.types.d.ts +2 -0
- package/dist/Required/Required.types.js.map +1 -1
- package/dist/Search/Search.styles.js +5 -5
- package/dist/Section/Section.styles.js +7 -7
- package/dist/SegmentedController/SegmentedController.styles.js +4 -4
- package/dist/Select/Select.js +4 -3
- package/dist/Select/Select.js.map +1 -1
- package/dist/Select/Select.styles.js +8 -8
- package/dist/Select/Select.types.d.ts +0 -1
- package/dist/Select/Select.types.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.styles.js +8 -8
- package/dist/SuperSelect/SuperSelect.presets.styles.js +1 -1
- package/dist/SuperSelect/SuperSelect.styles.js +41 -41
- package/dist/SuperSelect/SuperSelect.styles.js.map +1 -1
- package/dist/Switch/Switch.styles.js +4 -4
- package/dist/Table/Table.styles.js +29 -29
- package/dist/TableShelf/TableShelf.styles.js +5 -5
- package/dist/Tabs/Tablist.d.ts +11 -0
- package/dist/Tabs/Tablist.js +45 -0
- package/dist/Tabs/Tablist.js.map +1 -0
- package/dist/Tabs/Tablist.types.d.ts +58 -0
- package/dist/Tabs/Tablist.types.js +2 -0
- package/dist/Tabs/Tablist.types.js.map +1 -0
- package/dist/Tabs/Tabs.js +60 -8
- package/dist/Tabs/Tabs.js.map +1 -1
- package/dist/Tabs/Tabs.styles.js +16 -16
- package/dist/Tabs/Tabs.types.d.ts +25 -10
- package/dist/Tabs/Tabs.types.js.map +1 -1
- package/dist/Tabs/index.d.ts +2 -0
- package/dist/Tabs/index.js +1 -0
- package/dist/Tabs/index.js.map +1 -1
- package/dist/Tearsheet/Tearsheet.styles.js +5 -5
- package/dist/Tearsheet/storybook/PageLayoutDemo.js +3 -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.hooks.d.ts +14 -14
- package/dist/Thumbnail/Thumbnail.styles.js +21 -21
- 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 +5 -5
- package/dist/ToolHeader/ToolHeader.styles.js +6 -6
- package/dist/ToolLandingPage/ToolLandingPage.styles.js +3 -3
- package/dist/Tooltip/Tooltip.styles.js +3 -3
- package/dist/Tree/Tree.js +1 -1
- package/dist/Tree/Tree.styles.js +10 -10
- package/dist/Typeahead/Typeahead.styles.js +4 -4
- package/dist/Typography/Typography.styles.js +1 -1
- package/dist/Typography/Typography.table.story.js +2 -2
- package/dist/_hooks/I18n.d.ts +92 -1
- package/dist/_locales/de-DE.json +8 -4
- package/dist/_locales/en-AU.json +7 -3
- package/dist/_locales/en-CA.json +7 -3
- package/dist/_locales/en-GB.json +7 -3
- package/dist/_locales/en.json +1 -1
- package/dist/_locales/es-ES.json +7 -3
- package/dist/_locales/es.json +7 -3
- package/dist/_locales/fr-CA.json +10 -6
- package/dist/_locales/fr-FR.json +8 -4
- package/dist/_locales/is-IS.json +7 -3
- package/dist/_locales/it-IT.json +7 -3
- package/dist/_locales/ja-JP.json +7 -3
- package/dist/_locales/nb-NO.json +79 -75
- package/dist/_locales/pl-PL.json +7 -3
- package/dist/_locales/pseudo.json +1 -1
- package/dist/_locales/pt-BR.json +7 -3
- package/dist/_locales/pt-PT.json +13 -9
- package/dist/_locales/th-TH.json +7 -3
- package/dist/_locales/zh-SG.json +7 -3
- package/dist/_locales/zh-TW.json +13 -9
- package/dist/_storyHelpers_/components/Deprecation.styles.js +1 -1
- package/dist/_storyHelpers_/components/StoryGrid.js +3 -3
- package/dist/_typedoc/AnchorNavigation/AnchorNavigation.types.json +4 -4
- package/dist/_typedoc/Avatar/Avatar.types.json +20 -20
- package/dist/_typedoc/AvatarStack/AvatarStack.types.json +25 -25
- package/dist/_typedoc/Badge/Badge.types.json +6 -6
- package/dist/_typedoc/Banner/Banner.types.json +15 -15
- package/dist/_typedoc/Box/Box.types.json +68 -68
- package/dist/_typedoc/Breadcrumbs/Breadcrumbs.types.json +10 -10
- package/dist/_typedoc/Button/Button.types.json +14 -14
- 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 +14 -14
- package/dist/_typedoc/DetailPage/DetailPage.types.json +5 -5
- package/dist/_typedoc/Dropdown/Dropdown.types.json +41 -40
- 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 +18 -18
- 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 +770 -770
- package/dist/_typedoc/GhostPlaceholder/GhostPlaceholder.types.json +14 -13
- package/dist/_typedoc/Grid/Grid.types.json +8 -8
- package/dist/_typedoc/GroupSelect/GroupSelect.types.json +54 -54
- package/dist/_typedoc/Input/Input.types.json +2 -2
- package/dist/_typedoc/Link/Link.types.json +1 -1
- package/dist/_typedoc/ListPage/ListPage.types.json +13 -13
- package/dist/_typedoc/Menu/Menu.types.json +62 -62
- package/dist/_typedoc/MenuImperative/MenuImperative.types.json +84 -84
- package/dist/_typedoc/Modal/Modal.types.json +48 -48
- package/dist/_typedoc/MultiSelect/MultiSelect.types.json +33 -33
- package/dist/_typedoc/NextTile/NextTile.types.json +33 -33
- package/dist/_typedoc/Notation/Notation.types.json +4 -4
- package/dist/_typedoc/NumberInput/NumberInput.types.json +52 -52
- package/dist/_typedoc/OverlayTrigger/OverlayTrigger.types.json +33 -33
- package/dist/_typedoc/PageLayout/PageLayout.types.json +48 -38
- package/dist/_typedoc/Pagination/Pagination.types.json +7 -7
- package/dist/_typedoc/Panel/Panel.types.json +28 -28
- 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 +8 -6
- package/dist/_typedoc/Search/Search.types.json +18 -18
- package/dist/_typedoc/Section/Section.types.json +15 -15
- package/dist/_typedoc/SegmentedController/SegmentedController.types.json +21 -21
- package/dist/_typedoc/Select/Select.types.json +67 -72
- 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 +105 -105
- package/dist/_typedoc/Tabs/Tablist.types.json +17 -0
- package/dist/_typedoc/Tabs/Tabs.types.json +46 -25
- package/dist/_typedoc/Tearsheet/Tearsheet.types.json +17 -17
- package/dist/_typedoc/TextArea/TextArea.types.json +3 -3
- package/dist/_typedoc/TextEditor/TextEditor.types.json +11 -11
- package/dist/_typedoc/TextEditorOutput/TextEditorOutput.types.json +4 -4
- package/dist/_typedoc/Thumbnail/Thumbnail.types.json +19 -19
- package/dist/_typedoc/TieredDropdown/TieredDropdown.types.json +43 -43
- package/dist/_typedoc/TieredSelect/TieredSelect.types.json +29 -29
- package/dist/_typedoc/Tile/Tile.types.json +8 -8
- package/dist/_typedoc/Title/Title.types.json +1 -1
- package/dist/_typedoc/Toast/Toast.types.json +4 -4
- package/dist/_typedoc/ToggleButton/ToggleButton.types.json +4 -4
- package/dist/_typedoc/Token/Token.types.json +7 -7
- package/dist/_typedoc/ToolHeader/ToolHeader.types.json +10 -10
- package/dist/_typedoc/ToolLandingPage/ToolLandingPage.types.json +8 -8
- package/dist/_typedoc/Tooltip/Tooltip.types.json +15 -15
- package/dist/_typedoc/Tree/Tree.types.json +88 -88
- package/dist/_typedoc/Typeahead/Typeahead.types.json +2 -2
- package/dist/_typedoc/Typography/Typography.types.json +9 -9
- package/dist/_typedoc/_utils/types.json +3 -3
- package/dist/_typedoc/a11y-tips.json +1 -1
- package/dist/_typedoc/deprecations.json +1 -1
- package/dist/_utils/propsTypedoc.d.ts +1 -0
- package/dist/_utils/propsTypedoc.js +1 -0
- package/dist/_utils/propsTypedoc.js.map +1 -1
- package/package.json +1 -1
|
@@ -10,15 +10,15 @@ var inputHeight = 36; // TODO one-off
|
|
|
10
10
|
var disabledCss = /*#__PURE__*/css(["background-color:", ";color:", ";border-width:1px;border-style:solid;border-color:", ";pointer-events:none;svg{color:", ";}"], colors.gray94, colors.gray45, colors.gray50, colors.gray45);
|
|
11
11
|
export var StyledCalendar = /*#__PURE__*/styled(Calendar).withConfig({
|
|
12
12
|
displayName: "StyledCalendar",
|
|
13
|
-
componentId: "core-
|
|
13
|
+
componentId: "core-12_50_1__sc-w10btf-0"
|
|
14
14
|
})(["color:", ";"], colors.gray45);
|
|
15
15
|
export var StyledDateSegmentsContainer = /*#__PURE__*/styled.div.withConfig({
|
|
16
16
|
displayName: "StyledDateSegmentsContainer",
|
|
17
|
-
componentId: "core-
|
|
17
|
+
componentId: "core-12_50_1__sc-w10btf-1"
|
|
18
18
|
})(["min-width:104px;display:flex;gap:", "px;"], spacing.xs);
|
|
19
19
|
export var StyledDateInputSegment = /*#__PURE__*/styled.div.withConfig({
|
|
20
20
|
displayName: "StyledDateInputSegment",
|
|
21
|
-
componentId: "core-
|
|
21
|
+
componentId: "core-12_50_1__sc-w10btf-2"
|
|
22
22
|
})(["", " outline:none;text-align:center;&:focus{background-color:", ";}&::selection{background-color:transparent;}&[data-placeholder='true']{color:", ";}"], getTypographyIntent('body'), colors.blue96, function (_ref) {
|
|
23
23
|
var $disabled = _ref.$disabled;
|
|
24
24
|
return $disabled ? colors.gray70 : colors.gray45;
|
|
@@ -29,15 +29,15 @@ export var StyledDateInputDelimiter = /*#__PURE__*/styled.span.attrs(function (p
|
|
|
29
29
|
};
|
|
30
30
|
}).withConfig({
|
|
31
31
|
displayName: "StyledDateInputDelimiter",
|
|
32
|
-
componentId: "core-
|
|
32
|
+
componentId: "core-12_50_1__sc-w10btf-3"
|
|
33
33
|
})(["", " user-select:none;"], getTypographyIntent('body'));
|
|
34
34
|
export var StyledDateInputIconContainer = /*#__PURE__*/styled.div.withConfig({
|
|
35
35
|
displayName: "StyledDateInputIconContainer",
|
|
36
|
-
componentId: "core-
|
|
36
|
+
componentId: "core-12_50_1__sc-w10btf-4"
|
|
37
37
|
})(["display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;margin:0 0 0 ", "px;height:24px;width:24px;"], spacing.xs);
|
|
38
38
|
export var StyledDateInput = /*#__PURE__*/styled.div.withConfig({
|
|
39
39
|
displayName: "StyledDateInput",
|
|
40
|
-
componentId: "core-
|
|
40
|
+
componentId: "core-12_50_1__sc-w10btf-5"
|
|
41
41
|
})(["align-items:center;border-color:", ";border-radius:4px;border-style:solid;border-width:1px;display:inline-flex;flex-direction:row;height:", "px;justify-content:center;padding:0 ", "px 0 ", "px;&::placeholder{color:", ";}", " &:focus-within,&[data-qa=", "]{", ";}&:disabled{", "}", " ", ""], colors.gray50, inputHeight, spacing.xs, spacing.sm, colors.gray45, function (_ref2) {
|
|
42
42
|
var $error = _ref2.$error;
|
|
43
43
|
return !$error && css(["&:hover,&[data-qa=", "]{border-color:", ";}"], dataQa.hovered, colors.gray20);
|
|
@@ -3,8 +3,8 @@ import type { PageComponentProps, PageFooterProps } from '../PageLayout/PageLayo
|
|
|
3
3
|
import type { Props } from '../_utils/types';
|
|
4
4
|
import type { DetailPageCardProps, DetailPageProps, DetailPageWidth } from './DetailPage.types';
|
|
5
5
|
export declare const DetailPageViewContext: React.Context<{
|
|
6
|
-
width: DetailPageWidth;
|
|
7
6
|
hasNavigation: boolean;
|
|
7
|
+
width: DetailPageWidth;
|
|
8
8
|
}>;
|
|
9
9
|
export declare const Heading: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLDivElement>>;
|
|
10
10
|
export declare const Body: React.ForwardRefExoticComponent<PageComponentProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -31,6 +31,7 @@ export declare const Card: React.ForwardRefExoticComponent<DetailPageCardProps &
|
|
|
31
31
|
- DetailPage.Body
|
|
32
32
|
- DetailPage.Title
|
|
33
33
|
- DetailPage.Banner
|
|
34
|
+
- Required
|
|
34
35
|
- DetailPage.Card
|
|
35
36
|
- DetailPage.Banner
|
|
36
37
|
- DetailPage.Section
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var _excluded = ["
|
|
1
|
+
var _excluded = ["children", "hasNavigation", "width"],
|
|
2
2
|
_excluded2 = ["children"],
|
|
3
3
|
_excluded3 = ["navigationLabel"];
|
|
4
4
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
@@ -17,20 +17,20 @@ import { mergeRefs } from '../_utils/mergeRefs';
|
|
|
17
17
|
import { gridConfig } from './DetailPage.constants';
|
|
18
18
|
import { StyledDetailPageBody, StyledDetailPageCard, StyledDetailPageFooter, StyledDetailPageFooterActions, StyledDetailPageFooterContent, StyledDetailPageFooterNotation } from './DetailPage.styles';
|
|
19
19
|
export var DetailPageViewContext = /*#__PURE__*/React.createContext({
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
hasNavigation: false,
|
|
21
|
+
width: 'md'
|
|
22
22
|
});
|
|
23
23
|
var DetailPage_ = /*#__PURE__*/React.forwardRef(function DetailPage_(_ref, ref) {
|
|
24
|
-
var
|
|
25
|
-
width = _ref$width === void 0 ? 'md' : _ref$width,
|
|
24
|
+
var children = _ref.children,
|
|
26
25
|
_ref$hasNavigation = _ref.hasNavigation,
|
|
27
26
|
hasNavigation = _ref$hasNavigation === void 0 ? false : _ref$hasNavigation,
|
|
28
|
-
|
|
27
|
+
_ref$width = _ref.width,
|
|
28
|
+
width = _ref$width === void 0 ? 'md' : _ref$width,
|
|
29
29
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
30
30
|
return /*#__PURE__*/React.createElement(DetailPageViewContext.Provider, {
|
|
31
31
|
value: {
|
|
32
|
-
|
|
33
|
-
|
|
32
|
+
hasNavigation: hasNavigation,
|
|
33
|
+
width: width
|
|
34
34
|
}
|
|
35
35
|
}, /*#__PURE__*/React.createElement(AnchorNavigationProvider, {
|
|
36
36
|
offset: spacing.xs
|
|
@@ -48,8 +48,8 @@ export var Heading = /*#__PURE__*/React.forwardRef(function Heading(props, ref)
|
|
|
48
48
|
});
|
|
49
49
|
export var Body = /*#__PURE__*/React.forwardRef(function Body(props, ref) {
|
|
50
50
|
var _React$useContext = React.useContext(DetailPageViewContext),
|
|
51
|
-
|
|
52
|
-
|
|
51
|
+
hasNavigation = _React$useContext.hasNavigation,
|
|
52
|
+
width = _React$useContext.width;
|
|
53
53
|
return /*#__PURE__*/React.createElement(Page.Body, null, hasNavigation && /*#__PURE__*/React.createElement(PageBodyNavigation, null), /*#__PURE__*/React.createElement(Grid.Row, null, /*#__PURE__*/React.createElement(Grid.Col, {
|
|
54
54
|
colWidth: gridConfig[width].width,
|
|
55
55
|
colStart: gridConfig[width].offset
|
|
@@ -124,6 +124,7 @@ Card.displayName = 'DetailPage.Card';
|
|
|
124
124
|
- DetailPage.Body
|
|
125
125
|
- DetailPage.Title
|
|
126
126
|
- DetailPage.Banner
|
|
127
|
+
- Required
|
|
127
128
|
- DetailPage.Card
|
|
128
129
|
- DetailPage.Banner
|
|
129
130
|
- DetailPage.Section
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DetailPage.js","names":["useId","React","AnchorNavigationProvider","useAnchorNavigationContext","Grid","Page","PageBodyNavigation","Section","SectionProvider","H1","spacing","addSubcomponents","mergeRefs","gridConfig","StyledDetailPageBody","StyledDetailPageCard","StyledDetailPageFooter","StyledDetailPageFooterActions","StyledDetailPageFooterContent","StyledDetailPageFooterNotation","DetailPageViewContext","createContext","width","hasNavigation","DetailPage_","forwardRef","_ref","ref","_ref$width","_ref$hasNavigation","children","props","_objectWithoutProperties","_excluded","createElement","Provider","value","offset","xs","_extends","fillHeight","Heading","Body","_React$useContext","useContext","Row","Col","colWidth","colStart","Footer","_ref2","_excluded2","FooterNotation","FooterActions","Actions","Card","_ref3","navigationLabel","_excluded3","cardId","card","useRef","_useAnchorNavigationC","registerSection","unregisterSection","id","useEffect","_card$current","_card$current$querySe","label","current","querySelector","textContent","displayName","DetailPage","Main","Header","Breadcrumbs","Banner","Title","Tabs","Aside"],"sources":["../../src/DetailPage/DetailPage.tsx"],"sourcesContent":["import { useId } from '@react-aria/utils'\nimport React from 'react'\nimport {\n AnchorNavigationProvider,\n useAnchorNavigationContext,\n} from '../AnchorNavigation/AnchorNavigationProvider'\nimport { Grid } from '../Grid/Grid'\nimport { Page, PageBodyNavigation } from '../PageLayout/PageLayout'\nimport type {\n PageComponentProps,\n PageFooterProps,\n} from '../PageLayout/PageLayout.types'\nimport { Section, SectionProvider } from '../Section/Section'\nimport { H1 } from '../Semantic/Semantic'\nimport { spacing } from '../_styles/spacing'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport { mergeRefs } from '../_utils/mergeRefs'\nimport type { Props } from '../_utils/types'\nimport { gridConfig } from './DetailPage.constants'\nimport {\n StyledDetailPageBody,\n StyledDetailPageCard,\n StyledDetailPageFooter,\n StyledDetailPageFooterActions,\n StyledDetailPageFooterContent,\n StyledDetailPageFooterNotation,\n} from './DetailPage.styles'\nimport type {\n DetailPageCardProps,\n DetailPageProps,\n DetailPageWidth,\n} from './DetailPage.types'\n\nexport const DetailPageViewContext = React.createContext<{\n width: DetailPageWidth\n hasNavigation: boolean\n}>({\n width: 'md',\n hasNavigation: false,\n})\n\nconst DetailPage_ = React.forwardRef<HTMLDivElement, DetailPageProps>(\n function DetailPage_(\n { width = 'md', hasNavigation = false, children, ...props },\n ref\n ) {\n return (\n <DetailPageViewContext.Provider value={{ width, hasNavigation }}>\n <AnchorNavigationProvider offset={spacing.xs}>\n <Page fillHeight ref={ref} {...props} data-core-react=\"detail-page\">\n {children}\n </Page>\n </AnchorNavigationProvider>\n </DetailPageViewContext.Provider>\n )\n }\n)\n\nexport const Heading = React.forwardRef<HTMLDivElement, Props>(function Heading(\n props,\n ref\n) {\n return <H1 ref={ref} {...props} />\n})\n\nexport const Body = React.forwardRef<HTMLDivElement, PageComponentProps>(\n function Body(props, ref) {\n const { width, hasNavigation } = React.useContext(DetailPageViewContext)\n\n return (\n <Page.Body>\n {hasNavigation && <PageBodyNavigation />}\n <Grid.Row>\n <Grid.Col\n colWidth={gridConfig[width].width}\n colStart={gridConfig[width].offset}\n >\n <StyledDetailPageBody ref={ref} {...props} />\n </Grid.Col>\n </Grid.Row>\n </Page.Body>\n )\n }\n)\n\nexport const Footer = React.forwardRef<HTMLDivElement, PageFooterProps>(\n function Footer({ children, ...props }, ref) {\n return (\n <StyledDetailPageFooter ref={ref} {...props}>\n <StyledDetailPageFooterContent>\n {children}\n </StyledDetailPageFooterContent>\n </StyledDetailPageFooter>\n )\n }\n)\n\nexport const FooterNotation = React.forwardRef<HTMLDivElement, Props>(\n function FooterNotation(props, ref) {\n return <StyledDetailPageFooterNotation ref={ref} {...props} />\n }\n)\n\nexport const FooterActions = React.forwardRef<HTMLDivElement, Props>(\n function Actions(props, ref) {\n return <StyledDetailPageFooterActions ref={ref} {...props} />\n }\n)\n\nexport const Card = React.forwardRef<HTMLDivElement, DetailPageCardProps>(\n function Card({ navigationLabel, ...props }, ref) {\n const cardId = useId()\n const card = React.useRef<HTMLDivElement>(null)\n const { registerSection, unregisterSection } = useAnchorNavigationContext()\n const id = props.id || cardId\n\n React.useEffect(() => {\n // Use content of first H2 element as label if navigationLabel is not provided\n const label =\n navigationLabel || card.current?.querySelector('h2')?.textContent\n if (!card.current || !label) return\n\n registerSection(id, label, card.current)\n\n return () => unregisterSection(id)\n }, [id, navigationLabel]) // eslint-disable-line react-hooks/exhaustive-deps\n\n return (\n <SectionProvider>\n <StyledDetailPageCard ref={mergeRefs(ref, card)} id={id} {...props} />\n </SectionProvider>\n )\n }\n)\n\nDetailPage_.displayName = 'DetailPage'\nHeading.displayName = 'DetailPage.Heading'\nBody.displayName = 'DetailPage.Body'\nFooter.displayName = 'DetailPage.Footer'\nCard.displayName = 'DetailPage.Card'\n\n/**\n\n A detail page is used when an object is selected from a list page. The layout\n can adhere to varying predefined widths depending on use case.\n\n - DetailPage\n - DetailPage.Main\n - DetailPage.Header\n - DetailPage.Breadcrumbs\n - Breadcrumbs\n - DetailPage.Banner\n - Banner\n - DetailPage.Title\n - Title or H1\n - DetailPage.Tabs\n - Tabs\n - DetailPage.Body\n - DetailPage.Title\n - DetailPage.Banner\n - DetailPage.Card\n - DetailPage.Banner\n - DetailPage.Section\n - DetailPage.Section\n - DetailPage.Section\n - DetailPage.Footer\n - DetailPage.FooterNotation\n - DetailPage.FooterActions\n - Button\n - DetailPage.Aside\n - Panel\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-detailpage--edit)\n\n @see [Design Guidelines](https://design.procore.com/detail)\n\n */\nexport const DetailPage = addSubcomponents(\n {\n Main: Page.Main,\n Header: Page.Header,\n Breadcrumbs: Page.Breadcrumbs,\n Card,\n Banner: Page.Banner,\n Title: Page.Title,\n Heading,\n Tabs: Page.Tabs,\n Footer,\n FooterActions,\n FooterNotation,\n Section,\n Body,\n Aside: Page.Aside,\n },\n DetailPage_\n)\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DetailPage.js","names":["useId","React","AnchorNavigationProvider","useAnchorNavigationContext","Grid","Page","PageBodyNavigation","Section","SectionProvider","H1","spacing","addSubcomponents","mergeRefs","gridConfig","StyledDetailPageBody","StyledDetailPageCard","StyledDetailPageFooter","StyledDetailPageFooterActions","StyledDetailPageFooterContent","StyledDetailPageFooterNotation","DetailPageViewContext","createContext","hasNavigation","width","DetailPage_","forwardRef","_ref","ref","children","_ref$hasNavigation","_ref$width","props","_objectWithoutProperties","_excluded","createElement","Provider","value","offset","xs","_extends","fillHeight","Heading","Body","_React$useContext","useContext","Row","Col","colWidth","colStart","Footer","_ref2","_excluded2","FooterNotation","FooterActions","Actions","Card","_ref3","navigationLabel","_excluded3","cardId","card","useRef","_useAnchorNavigationC","registerSection","unregisterSection","id","useEffect","_card$current","_card$current$querySe","label","current","querySelector","textContent","displayName","DetailPage","Main","Header","Breadcrumbs","Banner","Title","Tabs","Aside"],"sources":["../../src/DetailPage/DetailPage.tsx"],"sourcesContent":["import { useId } from '@react-aria/utils'\nimport React from 'react'\nimport {\n AnchorNavigationProvider,\n useAnchorNavigationContext,\n} from '../AnchorNavigation/AnchorNavigationProvider'\nimport { Grid } from '../Grid/Grid'\nimport { Page, PageBodyNavigation } from '../PageLayout/PageLayout'\nimport type {\n PageComponentProps,\n PageFooterProps,\n} from '../PageLayout/PageLayout.types'\nimport { Section, SectionProvider } from '../Section/Section'\nimport { H1 } from '../Semantic/Semantic'\nimport { spacing } from '../_styles/spacing'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport { mergeRefs } from '../_utils/mergeRefs'\nimport type { Props } from '../_utils/types'\nimport { gridConfig } from './DetailPage.constants'\nimport {\n StyledDetailPageBody,\n StyledDetailPageCard,\n StyledDetailPageFooter,\n StyledDetailPageFooterActions,\n StyledDetailPageFooterContent,\n StyledDetailPageFooterNotation,\n} from './DetailPage.styles'\nimport type {\n DetailPageCardProps,\n DetailPageProps,\n DetailPageWidth,\n} from './DetailPage.types'\n\nexport const DetailPageViewContext = React.createContext<{\n hasNavigation: boolean\n width: DetailPageWidth\n}>({\n hasNavigation: false,\n width: 'md',\n})\n\nconst DetailPage_ = React.forwardRef<HTMLDivElement, DetailPageProps>(\n function DetailPage_(\n { children, hasNavigation = false, width = 'md', ...props },\n ref\n ) {\n return (\n <DetailPageViewContext.Provider value={{ hasNavigation, width }}>\n <AnchorNavigationProvider offset={spacing.xs}>\n <Page fillHeight ref={ref} {...props} data-core-react=\"detail-page\">\n {children}\n </Page>\n </AnchorNavigationProvider>\n </DetailPageViewContext.Provider>\n )\n }\n)\n\nexport const Heading = React.forwardRef<HTMLDivElement, Props>(function Heading(\n props,\n ref\n) {\n return <H1 ref={ref} {...props} />\n})\n\nexport const Body = React.forwardRef<HTMLDivElement, PageComponentProps>(\n function Body(props, ref) {\n const { hasNavigation, width } = React.useContext(DetailPageViewContext)\n\n return (\n <Page.Body>\n {hasNavigation && <PageBodyNavigation />}\n\n <Grid.Row>\n <Grid.Col\n colWidth={gridConfig[width].width}\n colStart={gridConfig[width].offset}\n >\n <StyledDetailPageBody ref={ref} {...props} />\n </Grid.Col>\n </Grid.Row>\n </Page.Body>\n )\n }\n)\n\nexport const Footer = React.forwardRef<HTMLDivElement, PageFooterProps>(\n function Footer({ children, ...props }, ref) {\n return (\n <StyledDetailPageFooter ref={ref} {...props}>\n <StyledDetailPageFooterContent>\n {children}\n </StyledDetailPageFooterContent>\n </StyledDetailPageFooter>\n )\n }\n)\n\nexport const FooterNotation = React.forwardRef<HTMLDivElement, Props>(\n function FooterNotation(props, ref) {\n return <StyledDetailPageFooterNotation ref={ref} {...props} />\n }\n)\n\nexport const FooterActions = React.forwardRef<HTMLDivElement, Props>(\n function Actions(props, ref) {\n return <StyledDetailPageFooterActions ref={ref} {...props} />\n }\n)\n\nexport const Card = React.forwardRef<HTMLDivElement, DetailPageCardProps>(\n function Card({ navigationLabel, ...props }, ref) {\n const cardId = useId()\n const card = React.useRef<HTMLDivElement>(null)\n const { registerSection, unregisterSection } = useAnchorNavigationContext()\n const id = props.id || cardId\n\n React.useEffect(() => {\n // Use content of first H2 element as label if navigationLabel is not provided\n const label =\n navigationLabel || card.current?.querySelector('h2')?.textContent\n if (!card.current || !label) return\n\n registerSection(id, label, card.current)\n\n return () => unregisterSection(id)\n }, [id, navigationLabel]) // eslint-disable-line react-hooks/exhaustive-deps\n\n return (\n <SectionProvider>\n <StyledDetailPageCard ref={mergeRefs(ref, card)} id={id} {...props} />\n </SectionProvider>\n )\n }\n)\n\nDetailPage_.displayName = 'DetailPage'\nHeading.displayName = 'DetailPage.Heading'\nBody.displayName = 'DetailPage.Body'\nFooter.displayName = 'DetailPage.Footer'\nCard.displayName = 'DetailPage.Card'\n\n/**\n\n A detail page is used when an object is selected from a list page. The layout\n can adhere to varying predefined widths depending on use case.\n\n - DetailPage\n - DetailPage.Main\n - DetailPage.Header\n - DetailPage.Breadcrumbs\n - Breadcrumbs\n - DetailPage.Banner\n - Banner\n - DetailPage.Title\n - Title or H1\n - DetailPage.Tabs\n - Tabs\n - DetailPage.Body\n - DetailPage.Title\n - DetailPage.Banner\n - Required\n - DetailPage.Card\n - DetailPage.Banner\n - DetailPage.Section\n - DetailPage.Section\n - DetailPage.Section\n - DetailPage.Footer\n - DetailPage.FooterNotation\n - DetailPage.FooterActions\n - Button\n - DetailPage.Aside\n - Panel\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-detailpage--edit)\n\n @see [Design Guidelines](https://design.procore.com/detail)\n\n */\nexport const DetailPage = addSubcomponents(\n {\n Main: Page.Main,\n Header: Page.Header,\n Breadcrumbs: Page.Breadcrumbs,\n Card,\n Banner: Page.Banner,\n Title: Page.Title,\n Heading,\n Tabs: Page.Tabs,\n Footer,\n FooterActions,\n FooterNotation,\n Section,\n Body,\n Aside: Page.Aside,\n },\n DetailPage_\n)\n"],"mappings":"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"}
|
|
@@ -3,37 +3,38 @@ import { Box } from '../Box/Box';
|
|
|
3
3
|
import { Card } from '../Card/Card';
|
|
4
4
|
import { Page } from '../PageLayout/PageLayout';
|
|
5
5
|
import { getActions, StyledPageBanner } from '../PageLayout/PageLayout.styles';
|
|
6
|
+
import { StyledRequiredContainer } from '../Required/Required.styles';
|
|
6
7
|
import { sectionClassnames, StyledSection, StyledSectionInner } from '../Section/Section.styles';
|
|
7
8
|
import { colors } from '../_styles/colors';
|
|
8
9
|
import { spacing } from '../_styles/spacing';
|
|
9
10
|
export var StyledDetailPage = /*#__PURE__*/styled.div.withConfig({
|
|
10
11
|
displayName: "StyledDetailPage",
|
|
11
|
-
componentId: "core-
|
|
12
|
+
componentId: "core-12_50_1__sc-cytnlo-0"
|
|
12
13
|
})(["background-color:", ";height:100%;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;"], colors.gray96);
|
|
13
14
|
export var StyledDetailPageBody = /*#__PURE__*/styled.div.withConfig({
|
|
14
15
|
displayName: "StyledDetailPageBody",
|
|
15
|
-
componentId: "core-
|
|
16
|
-
})(["padding-bottom:", "px;"], spacing.xl);
|
|
16
|
+
componentId: "core-12_50_1__sc-cytnlo-1"
|
|
17
|
+
})(["padding-bottom:", "px;> ", "{margin-top:", "px;}"], spacing.xl, StyledRequiredContainer, spacing.lg);
|
|
17
18
|
export var StyledDetailPageFooterNotation = /*#__PURE__*/styled.div.withConfig({
|
|
18
19
|
displayName: "StyledDetailPageFooterNotation",
|
|
19
|
-
componentId: "core-
|
|
20
|
+
componentId: "core-12_50_1__sc-cytnlo-2"
|
|
20
21
|
})(["flex-grow:1;z-index:1;"]);
|
|
21
22
|
export var StyledDetailPageFooter = /*#__PURE__*/styled(Page.Footer).withConfig({
|
|
22
23
|
displayName: "StyledDetailPageFooter",
|
|
23
|
-
componentId: "core-
|
|
24
|
+
componentId: "core-12_50_1__sc-cytnlo-3"
|
|
24
25
|
})(["display:flex;padding:", "px 0;background-color:", ";justify-content:center;"], spacing.lg, colors.white);
|
|
25
26
|
export var StyledDetailPageFooterActions = /*#__PURE__*/styled(Box).withConfig({
|
|
26
27
|
displayName: "StyledDetailPageFooterActions",
|
|
27
|
-
componentId: "core-
|
|
28
|
+
componentId: "core-12_50_1__sc-cytnlo-4"
|
|
28
29
|
})(["", ""], getActions());
|
|
29
30
|
var maxFooterContentWidth = 1920;
|
|
30
31
|
export var StyledDetailPageFooterContent = /*#__PURE__*/styled.div.withConfig({
|
|
31
32
|
displayName: "StyledDetailPageFooterContent",
|
|
32
|
-
componentId: "core-
|
|
33
|
+
componentId: "core-12_50_1__sc-cytnlo-5"
|
|
33
34
|
})(["width:100%;align-items:center;display:flex;justify-content:flex-end;padding:0 ", "px;max-width:", "px;"], spacing.xl, maxFooterContentWidth);
|
|
34
35
|
var detailPageCardBorderRadius = 8;
|
|
35
36
|
export var StyledDetailPageCard = /*#__PURE__*/styled(Card).withConfig({
|
|
36
37
|
displayName: "StyledDetailPageCard",
|
|
37
|
-
componentId: "core-
|
|
38
|
+
componentId: "core-12_50_1__sc-cytnlo-6"
|
|
38
39
|
})(["width:100%;border-radius:", "px;margin-top:", "px;margin-bottom:", "px;& + &{margin-top:", "px;}&:first-child{margin-top:0;}&:last-child{margin-bottom:", "px;}& > ", "{padding:", "px ", "px 0 ", "px;max-width:100%;&:empty{padding:0;}}& > ", " + ", " > ", "{border-top:0;}> .", ":first-child + .", ",> ", " + .", " + .", "{margin-top:", "px;}"], detailPageCardBorderRadius, spacing.lg, spacing.sm, spacing.sm, spacing.lg, StyledPageBanner, spacing.lg, spacing.lg, spacing.lg, StyledPageBanner, StyledSection, StyledSectionInner, sectionClassnames.levelAnonymous, sectionClassnames.level(2), StyledPageBanner, sectionClassnames.levelAnonymous, sectionClassnames.level(2), spacing.xxl * -1);
|
|
39
40
|
//# sourceMappingURL=DetailPage.styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DetailPage.styles.js","names":["styled","Box","Card","Page","getActions","StyledPageBanner","sectionClassnames","StyledSection","StyledSectionInner","colors","spacing","StyledDetailPage","div","withConfig","displayName","componentId","gray96","StyledDetailPageBody","xl","StyledDetailPageFooterNotation","StyledDetailPageFooter","Footer","
|
|
1
|
+
{"version":3,"file":"DetailPage.styles.js","names":["styled","Box","Card","Page","getActions","StyledPageBanner","StyledRequiredContainer","sectionClassnames","StyledSection","StyledSectionInner","colors","spacing","StyledDetailPage","div","withConfig","displayName","componentId","gray96","StyledDetailPageBody","xl","lg","StyledDetailPageFooterNotation","StyledDetailPageFooter","Footer","white","StyledDetailPageFooterActions","maxFooterContentWidth","StyledDetailPageFooterContent","detailPageCardBorderRadius","StyledDetailPageCard","sm","levelAnonymous","level","xxl"],"sources":["../../src/DetailPage/DetailPage.styles.ts"],"sourcesContent":["import styled from 'styled-components'\nimport { Box } from '../Box/Box'\nimport { Card } from '../Card/Card'\nimport { Page } from '../PageLayout/PageLayout'\nimport { getActions, StyledPageBanner } from '../PageLayout/PageLayout.styles'\nimport { StyledRequiredContainer } from '../Required/Required.styles'\nimport {\n sectionClassnames,\n StyledSection,\n StyledSectionInner,\n} from '../Section/Section.styles'\nimport { colors } from '../_styles/colors'\nimport { spacing } from '../_styles/spacing'\n\nexport const StyledDetailPage = styled.div`\n background-color: ${colors.gray96};\n height: 100%;\n position: relative;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: space-between;\n`\n\nexport const StyledDetailPageBody = styled.div`\n padding-bottom: ${spacing.xl}px;\n\n > ${StyledRequiredContainer} {\n margin-top: ${spacing.lg}px;\n }\n`\n\nexport const StyledDetailPageFooterNotation = styled.div`\n flex-grow: 1;\n z-index: 1;\n`\n\nexport const StyledDetailPageFooter = styled(Page.Footer)`\n display: flex;\n padding: ${spacing.lg}px 0;\n background-color: ${colors.white};\n justify-content: center;\n`\n\nexport const StyledDetailPageFooterActions = styled(Box)`\n ${getActions()}\n`\n\nconst maxFooterContentWidth = 1920\n\nexport const StyledDetailPageFooterContent = styled.div`\n width: 100%;\n align-items: center;\n display: flex;\n justify-content: flex-end;\n padding: 0 ${spacing.xl}px;\n max-width: ${maxFooterContentWidth}px;\n`\n\nconst detailPageCardBorderRadius = 8\n\nexport const StyledDetailPageCard = styled(Card)`\n width: 100%;\n border-radius: ${detailPageCardBorderRadius}px;\n margin-top: ${spacing.lg}px;\n margin-bottom: ${spacing.sm}px;\n\n & + & {\n margin-top: ${spacing.sm}px;\n }\n\n &:first-child {\n margin-top: 0;\n }\n &:last-child {\n margin-bottom: ${spacing.lg}px;\n }\n\n & > ${StyledPageBanner} {\n padding: ${spacing.lg}px ${spacing.lg}px 0 ${spacing.lg}px;\n max-width: 100%;\n\n &:empty {\n padding: 0;\n }\n }\n\n & > ${StyledPageBanner} + ${StyledSection} > ${StyledSectionInner} {\n border-top: 0;\n }\n\n > .${sectionClassnames.levelAnonymous}:first-child\n + .${sectionClassnames.level(2)},\n > ${StyledPageBanner}\n + .${sectionClassnames.levelAnonymous}\n + .${sectionClassnames.level(2)} {\n margin-top: ${spacing.xxl * -1}px;\n }\n`\n"],"mappings":"AAAA,OAAOA,MAAM,MAAM,mBAAmB;AACtC,SAASC,GAAG,QAAQ,YAAY;AAChC,SAASC,IAAI,QAAQ,cAAc;AACnC,SAASC,IAAI,QAAQ,0BAA0B;AAC/C,SAASC,UAAU,EAAEC,gBAAgB,QAAQ,iCAAiC;AAC9E,SAASC,uBAAuB,QAAQ,6BAA6B;AACrE,SACEC,iBAAiB,EACjBC,aAAa,EACbC,kBAAkB,QACb,2BAA2B;AAClC,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,SAASC,OAAO,QAAQ,oBAAoB;AAE5C,OAAO,IAAMC,gBAAgB,gBAAGZ,MAAM,CAACa,GAAG,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,iJACpBN,MAAM,CAACO,MAAM,CAOlC;AAED,OAAO,IAAMC,oBAAoB,gBAAGlB,MAAM,CAACa,GAAG,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,yDAC1BL,OAAO,CAACQ,EAAE,EAExBb,uBAAuB,EACXK,OAAO,CAACS,EAAE,CAE3B;AAED,OAAO,IAAMC,8BAA8B,gBAAGrB,MAAM,CAACa,GAAG,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,8BAGvD;AAED,OAAO,IAAMM,sBAAsB,gBAAGtB,MAAM,CAACG,IAAI,CAACoB,MAAM,CAAC,CAAAT,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,oFAE5CL,OAAO,CAACS,EAAE,EACDV,MAAM,CAACc,KAAK,CAEjC;AAED,OAAO,IAAMC,6BAA6B,gBAAGzB,MAAM,CAACC,GAAG,CAAC,CAAAa,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aACpDZ,UAAU,CAAC,CAAC,CACf;AAED,IAAMsB,qBAAqB,GAAG,IAAI;AAElC,OAAO,IAAMC,6BAA6B,gBAAG3B,MAAM,CAACa,GAAG,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,+GAKxCL,OAAO,CAACQ,EAAE,EACVO,qBAAqB,CACnC;AAED,IAAME,0BAA0B,GAAG,CAAC;AAEpC,OAAO,IAAMC,oBAAoB,gBAAG7B,MAAM,CAACE,IAAI,CAAC,CAAAY,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,8VAE7BY,0BAA0B,EAC7BjB,OAAO,CAACS,EAAE,EACPT,OAAO,CAACmB,EAAE,EAGXnB,OAAO,CAACmB,EAAE,EAOPnB,OAAO,CAACS,EAAE,EAGvBf,gBAAgB,EACTM,OAAO,CAACS,EAAE,EAAMT,OAAO,CAACS,EAAE,EAAQT,OAAO,CAACS,EAAE,EAQnDf,gBAAgB,EAAMG,aAAa,EAAMC,kBAAkB,EAI5DF,iBAAiB,CAACwB,cAAc,EAC9BxB,iBAAiB,CAACyB,KAAK,CAAC,CAAC,CAAC,EAC3B3B,gBAAgB,EACfE,iBAAiB,CAACwB,cAAc,EAChCxB,iBAAiB,CAACyB,KAAK,CAAC,CAAC,CAAC,EACjBrB,OAAO,CAACsB,GAAG,GAAG,CAAC,CAAC,CAEjC"}
|
|
@@ -3,16 +3,16 @@ import type { SectionProps } from '../Section/Section.types';
|
|
|
3
3
|
import type { Props } from '../_utils/types';
|
|
4
4
|
export declare type DetailPageWidth = 'md' | 'lg' | 'xl' | 'block';
|
|
5
5
|
export interface DetailPageProps extends Props {
|
|
6
|
-
/**
|
|
7
|
-
* @description Width of the content
|
|
8
|
-
* @since 10.19.0
|
|
9
|
-
*/
|
|
10
|
-
width?: DetailPageWidth;
|
|
11
6
|
/**
|
|
12
7
|
* @description If the page has anchor navigation
|
|
13
8
|
* @since TBD
|
|
14
9
|
*/
|
|
15
10
|
hasNavigation?: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* @description Width of the content
|
|
13
|
+
* @since 10.19.0
|
|
14
|
+
*/
|
|
15
|
+
width?: DetailPageWidth;
|
|
16
16
|
}
|
|
17
17
|
export interface DetailPageAsideProps extends PageAsideProps {
|
|
18
18
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DetailPage.types.js","names":[],"sources":["../../src/DetailPage/DetailPage.types.ts"],"sourcesContent":["import type {\n PageAsideProps,\n PageComponentProps,\n PageHeaderProps,\n} from '../PageLayout/PageLayout.types'\nimport type { SectionProps } from '../Section/Section.types'\nimport type { Props } from '../_utils/types'\n\nexport type DetailPageWidth = 'md' | 'lg' | 'xl' | 'block'\n\nexport interface DetailPageProps extends Props {\n /**\n * @description
|
|
1
|
+
{"version":3,"file":"DetailPage.types.js","names":[],"sources":["../../src/DetailPage/DetailPage.types.ts"],"sourcesContent":["import type {\n PageAsideProps,\n PageComponentProps,\n PageHeaderProps,\n} from '../PageLayout/PageLayout.types'\nimport type { SectionProps } from '../Section/Section.types'\nimport type { Props } from '../_utils/types'\n\nexport type DetailPageWidth = 'md' | 'lg' | 'xl' | 'block'\n\nexport interface DetailPageProps extends Props {\n /**\n * @description If the page has anchor navigation\n * @since TBD\n */\n hasNavigation?: boolean\n\n /**\n * @description Width of the content\n * @since 10.19.0\n */\n width?: DetailPageWidth\n}\nexport interface DetailPageAsideProps extends PageAsideProps {}\n\nexport interface DetailPageHeaderProps extends PageHeaderProps {}\n\nexport interface DetailPageSectionProps extends SectionProps {}\n\nexport interface DetailPageCardProps extends PageComponentProps {\n navigationLabel?: string\n}\n"],"mappings":""}
|
|
@@ -3,7 +3,13 @@ import type { PageHeaderTemplateProps } from '../PageTemplate/PageHeaderTemplate
|
|
|
3
3
|
import type { PageTemplateProps } from '../PageTemplate/PageTemplate';
|
|
4
4
|
import type { UsingProps } from '../_utils/types';
|
|
5
5
|
export declare type DetailPageHeaderTemplateProps = UsingProps<PageHeaderTemplateProps, 'breadcrumbs' | 'heading', 'actions' | 'banner' | 'pills' | 'subheading' | 'tabs' | 'toggleAction'>;
|
|
6
|
-
export declare type DetailPageFooterTemplateProps = UsingProps<PageFooterTemplateProps, 'actions',
|
|
6
|
+
export declare type DetailPageFooterTemplateProps = UsingProps<PageFooterTemplateProps, 'actions',
|
|
7
|
+
/**
|
|
8
|
+
* @a11y @deprecated required is deprecated as this is not the correct placement of this for accessibility
|
|
9
|
+
* and will be removed in a future version, only being notation
|
|
10
|
+
* @deprecatedSince 12.48.0
|
|
11
|
+
*/
|
|
12
|
+
'required' | 'notation'>;
|
|
7
13
|
export declare type DetailPageTemplateProps = Pick<PageTemplateProps, 'header' | 'footer' | 'pane' | 'children'> & {
|
|
8
14
|
/**
|
|
9
15
|
* @since 12.20.0
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DetailPageTemplate.types.js","names":[],"sources":["../../src/DetailPageTemplate/DetailPageTemplate.types.ts"],"sourcesContent":["import type { PageFooterTemplateProps } from '../PageTemplate/PageFooterTemplate'\nimport type { PageHeaderTemplateProps } from '../PageTemplate/PageHeaderTemplate'\nimport type { PageTemplateProps } from '../PageTemplate/PageTemplate'\n\nimport type { UsingProps } from '../_utils/types'\n\nexport type DetailPageHeaderTemplateProps = UsingProps<\n PageHeaderTemplateProps,\n 'breadcrumbs' | 'heading',\n 'actions' | 'banner' | 'pills' | 'subheading' | 'tabs' | 'toggleAction'\n>\n\nexport type DetailPageFooterTemplateProps = UsingProps<\n PageFooterTemplateProps,\n 'actions',\n 'required' | 'notation'\n>\n\nexport type DetailPageTemplateProps = Pick<\n PageTemplateProps,\n 'header' | 'footer' | 'pane' | 'children'\n> & {\n /**\n * @since 12.20.0\n */\n headerProps?: DetailPageHeaderTemplateProps\n /**\n * @since 12.20.0\n */\n footerProps?: PageFooterTemplateProps\n /**\n * @since 12.20.0\n */\n hasNavigation?: boolean\n}\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"DetailPageTemplate.types.js","names":[],"sources":["../../src/DetailPageTemplate/DetailPageTemplate.types.ts"],"sourcesContent":["import type { PageFooterTemplateProps } from '../PageTemplate/PageFooterTemplate'\nimport type { PageHeaderTemplateProps } from '../PageTemplate/PageHeaderTemplate'\nimport type { PageTemplateProps } from '../PageTemplate/PageTemplate'\n\nimport type { UsingProps } from '../_utils/types'\n\nexport type DetailPageHeaderTemplateProps = UsingProps<\n PageHeaderTemplateProps,\n 'breadcrumbs' | 'heading',\n 'actions' | 'banner' | 'pills' | 'subheading' | 'tabs' | 'toggleAction'\n>\n\nexport type DetailPageFooterTemplateProps = UsingProps<\n PageFooterTemplateProps,\n 'actions',\n /**\n * @a11y @deprecated required is deprecated as this is not the correct placement of this for accessibility\n * and will be removed in a future version, only being notation\n * @deprecatedSince 12.48.0\n */\n 'required' | 'notation'\n>\n\nexport type DetailPageTemplateProps = Pick<\n PageTemplateProps,\n 'header' | 'footer' | 'pane' | 'children'\n> & {\n /**\n * @since 12.20.0\n */\n headerProps?: DetailPageHeaderTemplateProps\n /**\n * @since 12.20.0\n */\n footerProps?: PageFooterTemplateProps\n /**\n * @since 12.20.0\n */\n hasNavigation?: boolean\n}\n"],"mappings":""}
|
|
@@ -154,7 +154,7 @@ var Dropdown_ = /*#__PURE__*/React.forwardRef(function Dropdown(_ref5, ref) {
|
|
|
154
154
|
var menuRef = React.useRef(null);
|
|
155
155
|
var buttonRef = React.useRef(null);
|
|
156
156
|
var isSearchable = Boolean(onSearch);
|
|
157
|
-
var isDialog = hasTabbableElements
|
|
157
|
+
var isDialog = hasTabbableElements || isSearchable;
|
|
158
158
|
function afterHide(e) {
|
|
159
159
|
// @ts-expect-error
|
|
160
160
|
if ((e === null || e === void 0 ? void 0 : e.key) === 'Escape' || e !== null && e !== void 0 && e.restoreFocus) {
|
|
@@ -171,7 +171,7 @@ var Dropdown_ = /*#__PURE__*/React.forwardRef(function Dropdown(_ref5, ref) {
|
|
|
171
171
|
var I18n = useI18nContext();
|
|
172
172
|
var ariaLabel = props['aria-label'] || label || I18n.t("core.dropdown.".concat(props.loading ? 'loading' : 'moreOptions'));
|
|
173
173
|
return /*#__PURE__*/React.createElement(OverlayTrigger, {
|
|
174
|
-
role:
|
|
174
|
+
role: isDialog ? 'dialog' : 'menu',
|
|
175
175
|
trackAriaExpanded: isSearchable,
|
|
176
176
|
passA11yPropsToOverlay: !isDialog,
|
|
177
177
|
autoFocus: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dropdown.js","names":["CaretDown","CaretUp","EllipsisVertical","classNames","React","MenuImperative","useMenuImperativeControlNavigation","OverlayTrigger","useOverlayTriggerContext","useI18nContext","addSubcomponents","mergeRefs","StyledDropdownButton","StyledDropdownMenu","StyledDropdownSpinner","noop","isFunction","obj","isOpen","_ref","_ref$open","open","Item","forwardRef","_ref2","ref","_ref2$restoreFocus","restoreFocus","props","_objectWithoutProperties","_excluded","createElement","_extends","DropdownButton","_ref3","children","className","_ref3$arrow","arrow","_ref3$loading","loading","_ref3$open","_ref3$focus","focus","_ref3$variant","variant","_excluded2","caret","size","icon","undefined","iconRight","$loading","DropdownMenu","_ref4","footer","i18nScope","menuRef","onSearch_","onSearch","_ref4$onSelect","onSelect","onSelect_","id","overlayTriggerContext","_React$useState","useState","_React$useState2","_slicedToArray","search","setSearch","_useMenuImperativeCon","Boolean","menuId","menuProps","menuNavigationTriggerProps","selection","hide","e","target","value","onKeyDown","key","stopPropagation","shadowStrength","role","Search","onChange","Options","Footer","Dropdown_","Dropdown","_ref5","afterHide_","afterHide","afterShow","beforeHide","beforeShow","error","_ref5$i18nScope","label","_ref5$onKeyDown","_ref5$onSelect","_ref5$placement","placement","_ref5$restoreFocusOnH","restoreFocusOnHide","_ref5$variant","_ref5$hasTabbableElem","hasTabbableElements","_excluded3","useRef","buttonRef","isSearchable","isDialog","_buttonRef$current","current","I18n","ariaLabel","t","concat","trackAriaExpanded","passA11yPropsToOverlay","autoFocus","containFocus","overlay","useDropdownContext","DropdownConsumer","_ref6","displayName","Group"],"sources":["../../src/Dropdown/Dropdown.tsx"],"sourcesContent":["import { CaretDown, CaretUp, EllipsisVertical } from '@procore/core-icons/dist'\nimport classNames from 'classnames'\nimport React from 'react'\nimport {\n MenuImperative,\n useMenuImperativeControlNavigation,\n} from '../MenuImperative/MenuImperative'\nimport type { MenuRef, Selection } from '../MenuImperative/MenuImperative.types'\nimport {\n OverlayTrigger,\n useOverlayTriggerContext,\n} from '../OverlayTrigger/OverlayTrigger'\nimport { useI18nContext } from '../_hooks/I18n'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport { mergeRefs } from '../_utils/mergeRefs'\nimport {\n StyledDropdownButton,\n StyledDropdownMenu,\n StyledDropdownSpinner,\n} from './Dropdown.styles'\nimport type {\n ConsumerProps,\n DropdownButtonProps,\n DropdownItemProps,\n DropdownMenuProps,\n DropdownProps,\n} from './Dropdown.types'\n\nfunction noop() {}\nfunction isFunction(obj: any) {\n return typeof obj === 'function'\n}\nfunction isOpen({ open = false }) {\n return open\n}\n\nconst Item = React.forwardRef<HTMLDivElement, DropdownItemProps>(function Item(\n { restoreFocus = false, ...props },\n ref\n) {\n return (\n <MenuImperative.Item ref={ref} restoreFocus={restoreFocus} {...props} />\n )\n}) as typeof MenuImperative.Item\n\nexport const DropdownButton = React.forwardRef<\n HTMLButtonElement,\n DropdownButtonProps\n>(function DropdownButton(\n {\n children,\n className,\n arrow = false,\n loading = false,\n open = false,\n focus = false,\n variant = 'secondary',\n ...props\n },\n ref\n) {\n const caret =\n arrow && (open ? <CaretUp size=\"sm\" /> : <CaretDown size=\"sm\" />)\n\n const icon = loading ? (\n <StyledDropdownSpinner\n size=\"xs\"\n variant={variant === 'primary' ? 'light' : 'default'}\n />\n ) : (\n caret\n )\n\n return (\n <StyledDropdownButton\n {...props}\n className={classNames(className, {\n focus: isFunction(focus) ? (focus as Function)({ open }) : focus,\n })}\n aria-busy={loading || undefined}\n iconRight={icon}\n $loading={loading}\n variant={variant}\n ref={ref}\n >\n {children}\n </StyledDropdownButton>\n )\n})\n\nconst DropdownMenu = React.forwardRef<HTMLDivElement, DropdownMenuProps>(\n function DropdownMenu(\n {\n children,\n footer,\n i18nScope,\n menuRef,\n onSearch: onSearch_,\n onSelect: onSelect_ = noop,\n id,\n },\n ref\n ) {\n const overlayTriggerContext = useOverlayTriggerContext()\n\n const [search, setSearch] = React.useState('')\n const { menuProps, menuNavigationTriggerProps } =\n useMenuImperativeControlNavigation(menuRef, Boolean(onSearch_), {\n menuId: id,\n })\n\n function onSelect(selection: Selection) {\n overlayTriggerContext.hide({ restoreFocus: selection.restoreFocus })\n\n onSelect_(selection)\n }\n\n function onSearch(e: React.ChangeEvent<HTMLInputElement>) {\n setSearch(e.target.value)\n\n onSearch_?.(e)\n }\n\n function onKeyDown(e: React.KeyboardEvent<HTMLInputElement>) {\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 // only let parent listeners (modal, overlay) know when empty\n e.stopPropagation()\n }\n }\n\n return (\n <StyledDropdownMenu ref={ref} shadowStrength={2}>\n <MenuImperative\n {...menuProps}\n ref={menuRef}\n onKeyDown={onKeyDown}\n onSelect={onSelect}\n role=\"menu\"\n >\n {onSearch_ && (\n <MenuImperative.Search\n {...menuNavigationTriggerProps}\n onChange={onSearch}\n i18nScope={i18nScope}\n />\n )}\n <MenuImperative.Options>{children}</MenuImperative.Options>\n {footer && <MenuImperative.Footer>{footer}</MenuImperative.Footer>}\n </MenuImperative>\n </StyledDropdownMenu>\n )\n }\n)\n\nconst Dropdown_ = React.forwardRef<HTMLButtonElement, DropdownProps>(\n function Dropdown(\n {\n afterHide: afterHide_,\n afterShow,\n beforeHide,\n beforeShow,\n children,\n error,\n footer,\n i18nScope = 'core.dropdown',\n icon,\n label,\n onKeyDown = noop,\n onSearch,\n onSelect = noop,\n placement = 'bottom-left',\n restoreFocusOnHide = false,\n variant = 'secondary',\n hasTabbableElements = false,\n ...props\n },\n ref\n ) {\n const menuRef = React.useRef<MenuRef>(null)\n const buttonRef = React.useRef<HTMLButtonElement>(null)\n const isSearchable = Boolean(onSearch)\n const isDialog = hasTabbableElements && !isSearchable\n\n function afterHide(e: Event | undefined) {\n // @ts-expect-error\n if (e?.key === 'Escape' || e?.restoreFocus) {\n buttonRef.current?.focus()\n }\n\n afterHide_?.(e)\n\n onSearch?.({\n target: { value: '' },\n } as React.ChangeEvent<HTMLInputElement>)\n }\n\n const I18n = useI18nContext()\n\n const ariaLabel =\n props['aria-label'] ||\n label ||\n I18n.t(`core.dropdown.${props.loading ? 'loading' : 'moreOptions'}`)\n\n return (\n <OverlayTrigger\n role={isSearchable ? undefined : isDialog ? 'dialog' : 'menu'}\n trackAriaExpanded={isSearchable}\n passA11yPropsToOverlay={!isDialog}\n autoFocus\n afterHide={afterHide}\n afterShow={afterShow}\n beforeHide={beforeHide}\n beforeShow={beforeShow}\n containFocus={!!footer || hasTabbableElements}\n overlay={\n <DropdownMenu\n footer={footer}\n i18nScope={i18nScope}\n menuRef={menuRef}\n onSearch={onSearch}\n onSelect={onSelect}\n >\n {children}\n </DropdownMenu>\n }\n placement={placement}\n ref={mergeRefs(ref, buttonRef)}\n restoreFocusOnHide={restoreFocusOnHide}\n >\n <DropdownButton\n {...props}\n aria-label={ariaLabel}\n arrow={label !== undefined}\n focus={onSearch ? false : isOpen}\n icon={\n props.loading && !label ? undefined : !icon && !label ? (\n <EllipsisVertical />\n ) : (\n icon\n )\n }\n onKeyDown={onKeyDown}\n variant={variant}\n >\n {label}\n </DropdownButton>\n </OverlayTrigger>\n )\n }\n)\n\nexport const useDropdownContext = useOverlayTriggerContext\n\nexport function DropdownConsumer({ children }: ConsumerProps) {\n return children(useDropdownContext())\n}\n\nDropdown_.displayName = 'Dropdown'\n\nItem.displayName = 'Dropdown.Item'\n\n/**\n\n Dropdowns display a list of actions in a menu that opens and closes. We use\n dropdowns most commonly to trigger an action or to redirect the user to\n a new page or modal.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-dropdown--demo)\n\n @see [Design Guidelines](https://design.procore.com/dropdown)\n\n*/\nexport const Dropdown = addSubcomponents(\n {\n Item,\n Group: MenuImperative.Group,\n },\n Dropdown_\n)\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Dropdown.js","names":["CaretDown","CaretUp","EllipsisVertical","classNames","React","MenuImperative","useMenuImperativeControlNavigation","OverlayTrigger","useOverlayTriggerContext","useI18nContext","addSubcomponents","mergeRefs","StyledDropdownButton","StyledDropdownMenu","StyledDropdownSpinner","noop","isFunction","obj","isOpen","_ref","_ref$open","open","Item","forwardRef","_ref2","ref","_ref2$restoreFocus","restoreFocus","props","_objectWithoutProperties","_excluded","createElement","_extends","DropdownButton","_ref3","children","className","_ref3$arrow","arrow","_ref3$loading","loading","_ref3$open","_ref3$focus","focus","_ref3$variant","variant","_excluded2","caret","size","icon","undefined","iconRight","$loading","DropdownMenu","_ref4","footer","i18nScope","menuRef","onSearch_","onSearch","_ref4$onSelect","onSelect","onSelect_","id","overlayTriggerContext","_React$useState","useState","_React$useState2","_slicedToArray","search","setSearch","_useMenuImperativeCon","Boolean","menuId","menuProps","menuNavigationTriggerProps","selection","hide","e","target","value","onKeyDown","key","stopPropagation","shadowStrength","role","Search","onChange","Options","Footer","Dropdown_","Dropdown","_ref5","afterHide_","afterHide","afterShow","beforeHide","beforeShow","error","_ref5$i18nScope","label","_ref5$onKeyDown","_ref5$onSelect","_ref5$placement","placement","_ref5$restoreFocusOnH","restoreFocusOnHide","_ref5$variant","_ref5$hasTabbableElem","hasTabbableElements","_excluded3","useRef","buttonRef","isSearchable","isDialog","_buttonRef$current","current","I18n","ariaLabel","t","concat","trackAriaExpanded","passA11yPropsToOverlay","autoFocus","containFocus","overlay","useDropdownContext","DropdownConsumer","_ref6","displayName","Group"],"sources":["../../src/Dropdown/Dropdown.tsx"],"sourcesContent":["import { CaretDown, CaretUp, EllipsisVertical } from '@procore/core-icons/dist'\nimport classNames from 'classnames'\nimport React from 'react'\nimport {\n MenuImperative,\n useMenuImperativeControlNavigation,\n} from '../MenuImperative/MenuImperative'\nimport type { MenuRef, Selection } from '../MenuImperative/MenuImperative.types'\nimport {\n OverlayTrigger,\n useOverlayTriggerContext,\n} from '../OverlayTrigger/OverlayTrigger'\nimport { useI18nContext } from '../_hooks/I18n'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport { mergeRefs } from '../_utils/mergeRefs'\nimport {\n StyledDropdownButton,\n StyledDropdownMenu,\n StyledDropdownSpinner,\n} from './Dropdown.styles'\nimport type {\n ConsumerProps,\n DropdownButtonProps,\n DropdownItemProps,\n DropdownMenuProps,\n DropdownProps,\n} from './Dropdown.types'\n\nfunction noop() {}\nfunction isFunction(obj: any) {\n return typeof obj === 'function'\n}\nfunction isOpen({ open = false }) {\n return open\n}\n\nconst Item = React.forwardRef<HTMLDivElement, DropdownItemProps>(function Item(\n { restoreFocus = false, ...props },\n ref\n) {\n return (\n <MenuImperative.Item ref={ref} restoreFocus={restoreFocus} {...props} />\n )\n}) as typeof MenuImperative.Item\n\nexport const DropdownButton = React.forwardRef<\n HTMLButtonElement,\n DropdownButtonProps\n>(function DropdownButton(\n {\n children,\n className,\n arrow = false,\n loading = false,\n open = false,\n focus = false,\n variant = 'secondary',\n ...props\n },\n ref\n) {\n const caret =\n arrow && (open ? <CaretUp size=\"sm\" /> : <CaretDown size=\"sm\" />)\n\n const icon = loading ? (\n <StyledDropdownSpinner\n size=\"xs\"\n variant={variant === 'primary' ? 'light' : 'default'}\n />\n ) : (\n caret\n )\n\n return (\n <StyledDropdownButton\n {...props}\n className={classNames(className, {\n focus: isFunction(focus) ? (focus as Function)({ open }) : focus,\n })}\n aria-busy={loading || undefined}\n iconRight={icon}\n $loading={loading}\n variant={variant}\n ref={ref}\n >\n {children}\n </StyledDropdownButton>\n )\n})\n\nconst DropdownMenu = React.forwardRef<HTMLDivElement, DropdownMenuProps>(\n function DropdownMenu(\n {\n children,\n footer,\n i18nScope,\n menuRef,\n onSearch: onSearch_,\n onSelect: onSelect_ = noop,\n id,\n },\n ref\n ) {\n const overlayTriggerContext = useOverlayTriggerContext()\n\n const [search, setSearch] = React.useState('')\n const { menuProps, menuNavigationTriggerProps } =\n useMenuImperativeControlNavigation(menuRef, Boolean(onSearch_), {\n menuId: id,\n })\n\n function onSelect(selection: Selection) {\n overlayTriggerContext.hide({ restoreFocus: selection.restoreFocus })\n\n onSelect_(selection)\n }\n\n function onSearch(e: React.ChangeEvent<HTMLInputElement>) {\n setSearch(e.target.value)\n\n onSearch_?.(e)\n }\n\n function onKeyDown(e: React.KeyboardEvent<HTMLInputElement>) {\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 // only let parent listeners (modal, overlay) know when empty\n e.stopPropagation()\n }\n }\n\n return (\n <StyledDropdownMenu ref={ref} shadowStrength={2}>\n <MenuImperative\n {...menuProps}\n ref={menuRef}\n onKeyDown={onKeyDown}\n onSelect={onSelect}\n role=\"menu\"\n >\n {onSearch_ && (\n <MenuImperative.Search\n {...menuNavigationTriggerProps}\n onChange={onSearch}\n i18nScope={i18nScope}\n />\n )}\n <MenuImperative.Options>{children}</MenuImperative.Options>\n {footer && <MenuImperative.Footer>{footer}</MenuImperative.Footer>}\n </MenuImperative>\n </StyledDropdownMenu>\n )\n }\n)\n\nconst Dropdown_ = React.forwardRef<HTMLButtonElement, DropdownProps>(\n function Dropdown(\n {\n afterHide: afterHide_,\n afterShow,\n beforeHide,\n beforeShow,\n children,\n error,\n footer,\n i18nScope = 'core.dropdown',\n icon,\n label,\n onKeyDown = noop,\n onSearch,\n onSelect = noop,\n placement = 'bottom-left',\n restoreFocusOnHide = false,\n variant = 'secondary',\n hasTabbableElements = false,\n ...props\n },\n ref\n ) {\n const menuRef = React.useRef<MenuRef>(null)\n const buttonRef = React.useRef<HTMLButtonElement>(null)\n const isSearchable = Boolean(onSearch)\n const isDialog = hasTabbableElements || isSearchable\n\n function afterHide(e: Event | undefined) {\n // @ts-expect-error\n if (e?.key === 'Escape' || e?.restoreFocus) {\n buttonRef.current?.focus()\n }\n\n afterHide_?.(e)\n\n onSearch?.({\n target: { value: '' },\n } as React.ChangeEvent<HTMLInputElement>)\n }\n\n const I18n = useI18nContext()\n\n const ariaLabel =\n props['aria-label'] ||\n label ||\n I18n.t(`core.dropdown.${props.loading ? 'loading' : 'moreOptions'}`)\n\n return (\n <OverlayTrigger\n role={isDialog ? 'dialog' : 'menu'}\n trackAriaExpanded={isSearchable}\n passA11yPropsToOverlay={!isDialog}\n autoFocus\n afterHide={afterHide}\n afterShow={afterShow}\n beforeHide={beforeHide}\n beforeShow={beforeShow}\n containFocus={!!footer || hasTabbableElements}\n overlay={\n <DropdownMenu\n footer={footer}\n i18nScope={i18nScope}\n menuRef={menuRef}\n onSearch={onSearch}\n onSelect={onSelect}\n >\n {children}\n </DropdownMenu>\n }\n placement={placement}\n ref={mergeRefs(ref, buttonRef)}\n restoreFocusOnHide={restoreFocusOnHide}\n >\n <DropdownButton\n {...props}\n aria-label={ariaLabel}\n arrow={label !== undefined}\n focus={onSearch ? false : isOpen}\n icon={\n props.loading && !label ? undefined : !icon && !label ? (\n <EllipsisVertical />\n ) : (\n icon\n )\n }\n onKeyDown={onKeyDown}\n variant={variant}\n >\n {label}\n </DropdownButton>\n </OverlayTrigger>\n )\n }\n)\n\nexport const useDropdownContext = useOverlayTriggerContext\n\nexport function DropdownConsumer({ children }: ConsumerProps) {\n return children(useDropdownContext())\n}\n\nDropdown_.displayName = 'Dropdown'\n\nItem.displayName = 'Dropdown.Item'\n\n/**\n\n Dropdowns display a list of actions in a menu that opens and closes. We use\n dropdowns most commonly to trigger an action or to redirect the user to\n a new page or modal.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-dropdown--demo)\n\n @see [Design Guidelines](https://design.procore.com/dropdown)\n\n*/\nexport const Dropdown = addSubcomponents(\n {\n Item,\n Group: MenuImperative.Group,\n },\n Dropdown_\n)\n"],"mappings":"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"}
|
|
@@ -5,15 +5,15 @@ import { Card } from '../Card/Card';
|
|
|
5
5
|
import { Spinner } from '../Spinner/Spinner';
|
|
6
6
|
export var StyledDropdownMenu = /*#__PURE__*/styled(Card).withConfig({
|
|
7
7
|
displayName: "StyledDropdownMenu",
|
|
8
|
-
componentId: "core-
|
|
8
|
+
componentId: "core-12_50_1__sc-ufsy2q-0"
|
|
9
9
|
})(["display:flex;max-height:40vh;max-width:248px;min-width:inherit;"]);
|
|
10
10
|
export var StyledDropdownSpinner = /*#__PURE__*/styled(Spinner).withConfig({
|
|
11
11
|
displayName: "StyledDropdownSpinner",
|
|
12
|
-
componentId: "core-
|
|
12
|
+
componentId: "core-12_50_1__sc-ufsy2q-1"
|
|
13
13
|
})(["margin:0 6px;"]);
|
|
14
14
|
export var StyledDropdownButton = /*#__PURE__*/styled(Button).withConfig({
|
|
15
15
|
displayName: "StyledDropdownButton",
|
|
16
|
-
componentId: "core-
|
|
16
|
+
componentId: "core-12_50_1__sc-ufsy2q-2"
|
|
17
17
|
})(["pointer-events:", ";", ""], function (_ref) {
|
|
18
18
|
var disabled = _ref.disabled,
|
|
19
19
|
$loading = _ref.$loading;
|
|
@@ -115,8 +115,18 @@ export interface DropdownProps extends Omit<HTMLButtonProps, 'onSelect'> {
|
|
|
115
115
|
*/
|
|
116
116
|
variant?: ButtonProps['variant'];
|
|
117
117
|
/**
|
|
118
|
-
* Whether
|
|
119
|
-
*
|
|
118
|
+
* Whether the popup should use dialog semantics instead of menu semantics.
|
|
119
|
+
* @a11y Use `false` for menu-only content (`aria-haspopup="menu"`). Use `true`
|
|
120
|
+
* when the popup includes additional focusable widgets beyond menu items so
|
|
121
|
+
* assistive technology receives dialog semantics (`aria-haspopup="dialog"`).
|
|
122
|
+
*
|
|
123
|
+
* Defaults to menu behavior (`aria-haspopup="menu"` and overlay role `menu`).
|
|
124
|
+
* Set this to `true` when the overlay contains additional focusable widgets
|
|
125
|
+
* beyond menu items (for example footer buttons, form fields, or links), so
|
|
126
|
+
* the trigger/overlay relationship uses dialog semantics (`aria-haspopup="dialog"`
|
|
127
|
+
* and overlay role `dialog`).
|
|
128
|
+
*
|
|
129
|
+
* For menu-only overlays, keep this as `false`.
|
|
120
130
|
* @default 'false'
|
|
121
131
|
* @since 11.5.0
|
|
122
132
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dropdown.types.js","names":[],"sources":["../../src/Dropdown/Dropdown.types.ts"],"sourcesContent":["import type { ButtonProps } from '../Button/Button.types'\nimport type {\n MenuItemProps,\n MenuRef,\n Selection,\n} from '../MenuImperative/MenuImperative.types'\nimport type { OverlayTriggerProps } from '../OverlayTrigger/OverlayTrigger.types'\nimport type { Placement } from '../_utils/types'\n\ntype HTMLButtonProps = React.ComponentPropsWithoutRef<'button'>\n\ntype HTMLDivProps = React.ComponentPropsWithoutRef<'div'>\n\nexport type DropdownPlacement = Extract<\n Placement,\n 'bottom' | 'bottom-left' | 'bottom-right' | 'top' | 'top-left' | 'top-right'\n>\n\nexport interface DropdownProps extends Omit<HTMLButtonProps, 'onSelect'> {\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 * @since 10.19.0\n */\n block?: ButtonProps['block']\n /**\n * @since 10.19.0\n */\n className?: ButtonProps['className']\n /**\n * @since 10.19.0\n */\n disabled?: ButtonProps['disabled']\n /**\n * @since 10.19.0\n */\n error?: boolean\n\n /**\n * Content to render in a footer.\n * @since 10.19.0\n */\n footer?: React.ReactNode\n /**\n * The i18n key to use for the dropdowns's configurable strings.\n * Defaults to using the core library's default strings.\n * @since 10.19.0\n */\n i18nScope?: string\n /**\n * @remarks string icons have been deprecated, please pass a component from `@procore/core-icons`\n * @since 10.19.0\n */\n icon?: ButtonProps['icon']\n /**\n * The button text.\n * @since 10.19.0\n */\n label?: string\n /**\n * @since 10.19.0\n */\n loading?: ButtonProps['loading']\n\n /**\n * Adds a search bar to the dropdown.\n * @since 10.19.0\n */\n onSearch?: (event: React.ChangeEvent<HTMLInputElement>) => void\n\n /**\n * Callback for selecting an item from the menu\n * ```\n * ({ event: ReactEvent, item: Menu.Item.props.item, group: bool }) => void\n * ```\n * `item` will be the `item` prop supplied to the `Item` component\n * @since 10.19.0\n */\n onSelect?: (selection: Selection) => void\n\n /**\n * The placement of the overlay.\n * @default 'bottom-left'\n * @since 10.19.0\n */\n placement?: DropdownPlacement\n /**\n * If focus should return to the button after selection.\n * @a11y Dropdowns hold no value and take an action. Focus is expected\n * to be moved from a Dropdown to something else, to continue the user flow .\n * If all actions are inert and does not move focus, set this to `true`.\n * If some actions are inert consider using `restoreFocus` on `Dropdown.Item`.\n * Closing Dropdown via `Escape` always restores focus.\n * @default false\n * @since 11.13.0\n */\n restoreFocusOnHide?: OverlayTriggerProps['restoreFocusOnHide']\n /**\n * The button size\n * @default 'md'\n * @since 10.19.0\n */\n size?: ButtonProps['size']\n /**\n * @since 10.19.0\n */\n trigger?: OverlayTriggerProps['trigger']\n /**\n * @since 10.19.0\n */\n type?: ButtonProps['type']\n\n /**\n * @default 'secondary'\n * @since 10.19.0\n */\n variant?: ButtonProps['variant']\n /**\n * Whether
|
|
1
|
+
{"version":3,"file":"Dropdown.types.js","names":[],"sources":["../../src/Dropdown/Dropdown.types.ts"],"sourcesContent":["import type { ButtonProps } from '../Button/Button.types'\nimport type {\n MenuItemProps,\n MenuRef,\n Selection,\n} from '../MenuImperative/MenuImperative.types'\nimport type { OverlayTriggerProps } from '../OverlayTrigger/OverlayTrigger.types'\nimport type { Placement } from '../_utils/types'\n\ntype HTMLButtonProps = React.ComponentPropsWithoutRef<'button'>\n\ntype HTMLDivProps = React.ComponentPropsWithoutRef<'div'>\n\nexport type DropdownPlacement = Extract<\n Placement,\n 'bottom' | 'bottom-left' | 'bottom-right' | 'top' | 'top-left' | 'top-right'\n>\n\nexport interface DropdownProps extends Omit<HTMLButtonProps, 'onSelect'> {\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 * @since 10.19.0\n */\n block?: ButtonProps['block']\n /**\n * @since 10.19.0\n */\n className?: ButtonProps['className']\n /**\n * @since 10.19.0\n */\n disabled?: ButtonProps['disabled']\n /**\n * @since 10.19.0\n */\n error?: boolean\n\n /**\n * Content to render in a footer.\n * @since 10.19.0\n */\n footer?: React.ReactNode\n /**\n * The i18n key to use for the dropdowns's configurable strings.\n * Defaults to using the core library's default strings.\n * @since 10.19.0\n */\n i18nScope?: string\n /**\n * @remarks string icons have been deprecated, please pass a component from `@procore/core-icons`\n * @since 10.19.0\n */\n icon?: ButtonProps['icon']\n /**\n * The button text.\n * @since 10.19.0\n */\n label?: string\n /**\n * @since 10.19.0\n */\n loading?: ButtonProps['loading']\n\n /**\n * Adds a search bar to the dropdown.\n * @since 10.19.0\n */\n onSearch?: (event: React.ChangeEvent<HTMLInputElement>) => void\n\n /**\n * Callback for selecting an item from the menu\n * ```\n * ({ event: ReactEvent, item: Menu.Item.props.item, group: bool }) => void\n * ```\n * `item` will be the `item` prop supplied to the `Item` component\n * @since 10.19.0\n */\n onSelect?: (selection: Selection) => void\n\n /**\n * The placement of the overlay.\n * @default 'bottom-left'\n * @since 10.19.0\n */\n placement?: DropdownPlacement\n /**\n * If focus should return to the button after selection.\n * @a11y Dropdowns hold no value and take an action. Focus is expected\n * to be moved from a Dropdown to something else, to continue the user flow .\n * If all actions are inert and does not move focus, set this to `true`.\n * If some actions are inert consider using `restoreFocus` on `Dropdown.Item`.\n * Closing Dropdown via `Escape` always restores focus.\n * @default false\n * @since 11.13.0\n */\n restoreFocusOnHide?: OverlayTriggerProps['restoreFocusOnHide']\n /**\n * The button size\n * @default 'md'\n * @since 10.19.0\n */\n size?: ButtonProps['size']\n /**\n * @since 10.19.0\n */\n trigger?: OverlayTriggerProps['trigger']\n /**\n * @since 10.19.0\n */\n type?: ButtonProps['type']\n\n /**\n * @default 'secondary'\n * @since 10.19.0\n */\n variant?: ButtonProps['variant']\n /**\n * Whether the popup should use dialog semantics instead of menu semantics.\n * @a11y Use `false` for menu-only content (`aria-haspopup=\"menu\"`). Use `true`\n * when the popup includes additional focusable widgets beyond menu items so\n * assistive technology receives dialog semantics (`aria-haspopup=\"dialog\"`).\n *\n * Defaults to menu behavior (`aria-haspopup=\"menu\"` and overlay role `menu`).\n * Set this to `true` when the overlay contains additional focusable widgets\n * beyond menu items (for example footer buttons, form fields, or links), so\n * the trigger/overlay relationship uses dialog semantics (`aria-haspopup=\"dialog\"`\n * and overlay role `dialog`).\n *\n * For menu-only overlays, keep this as `false`.\n * @default 'false'\n * @since 11.5.0\n */\n hasTabbableElements?: boolean\n}\n\nexport type DropdownItemProps = MenuItemProps\n\nexport interface DropdownButtonProps extends ButtonProps {\n /**\n * Shows the arrow when activated\n * @since 10.19.0\n */\n arrow?: boolean\n /**\n * Shows the button spinner\n * @since 10.19.0\n */\n loading?: boolean\n /**\n * Changes the direction of the arrow if shown\n * @since 10.19.0\n */\n open?: 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\nexport interface DropdownMenuProps extends Omit<HTMLDivProps, 'onSelect'> {\n /**\n * @since 10.19.0\n */\n footer?: React.ReactNode\n /**\n * @since 10.19.0\n */\n menuRef: React.RefObject<MenuRef>\n /**\n * @since 10.19.0\n */\n i18nScope?: string\n /**\n * @since 10.19.0\n */\n onSearch?: (event: React.ChangeEvent<HTMLInputElement>) => void\n /**\n * @since 10.19.0\n */\n onSelect?: (selection: Selection) => void\n}\n\nexport interface ConsumerProps {\n /**\n * @since 10.19.0\n */\n children: (api: any) => JSX.Element\n}\n"],"mappings":""}
|
|
@@ -6,18 +6,18 @@ import { getEllipsis } from '../_styles/mixins';
|
|
|
6
6
|
import { spacing } from '../_styles/spacing';
|
|
7
7
|
export var StyledDropdownFlyout = /*#__PURE__*/styled.div.withConfig({
|
|
8
8
|
displayName: "StyledDropdownFlyout",
|
|
9
|
-
componentId: "core-
|
|
9
|
+
componentId: "core-12_50_1__sc-1i79jsg-0"
|
|
10
10
|
})(["display:flex;flex-wrap:wrap;flex-direction:column;width:100%;max-height:855px;padding:", "px 0;"], spacing.sm);
|
|
11
11
|
export var StyledDropdownFlyoutItem = /*#__PURE__*/styled.div.withConfig({
|
|
12
12
|
displayName: "StyledDropdownFlyoutItem",
|
|
13
|
-
componentId: "core-
|
|
13
|
+
componentId: "core-12_50_1__sc-1i79jsg-1"
|
|
14
14
|
})(["display:flex;justify-content:space-between;cursor:pointer;width:100%;padding:", "px ", "px;color:", ";", " &[data-highlighted='true'],&:hover{background-color:", ";}"], spacing.xs, spacing.lg, colors.gray20, getTypographyIntent('body'), colors.gray96);
|
|
15
15
|
export var StyledDropdownFlyoutLabel = /*#__PURE__*/styled.span.withConfig({
|
|
16
16
|
displayName: "StyledDropdownFlyoutLabel",
|
|
17
|
-
componentId: "core-
|
|
17
|
+
componentId: "core-12_50_1__sc-1i79jsg-2"
|
|
18
18
|
})(["", ""], getEllipsis());
|
|
19
19
|
export var StyledDropdownFlyoutExpandIcon = /*#__PURE__*/styled.span.withConfig({
|
|
20
20
|
displayName: "StyledDropdownFlyoutExpandIcon",
|
|
21
|
-
componentId: "core-
|
|
21
|
+
componentId: "core-12_50_1__sc-1i79jsg-3"
|
|
22
22
|
})(["position:relative;display:inline-flex;align-self:center;flex-shrink:0;margin-left:", "px;white-space:nowrap;", ""], spacing.lg, arrowRight(4, 'black'));
|
|
23
23
|
//# sourceMappingURL=DropdownFlyout.styles.js.map
|
|
@@ -95,7 +95,7 @@ export function MultipleErrors(props) {
|
|
|
95
95
|
// make error banner accessible as a styled-components selector
|
|
96
96
|
export var DropzoneErrorBanner = /*#__PURE__*/styled(DropzoneErrorBannerBase).withConfig({
|
|
97
97
|
displayName: "DropzoneErrorBanner",
|
|
98
|
-
componentId: "core-
|
|
98
|
+
componentId: "core-12_50_1__sc-l4fojb-0"
|
|
99
99
|
})([""]);
|
|
100
100
|
function DropzoneContainer(_ref2) {
|
|
101
101
|
var active = _ref2.active,
|
|
@@ -9,15 +9,15 @@ import { colors } from '../_styles/colors';
|
|
|
9
9
|
import { spacing } from '../_styles/spacing';
|
|
10
10
|
export var StyledErrorBanner = /*#__PURE__*/styled(ErrorBannerBase).withConfig({
|
|
11
11
|
displayName: "StyledErrorBanner",
|
|
12
|
-
componentId: "core-
|
|
12
|
+
componentId: "core-12_50_1__sc-by95hy-0"
|
|
13
13
|
})(["margin-top:", "px;flex-shrink:0;"], spacing.lg);
|
|
14
14
|
export var StyledErrorBannerDetails = /*#__PURE__*/styled.ul.withConfig({
|
|
15
15
|
displayName: "StyledErrorBannerDetails",
|
|
16
|
-
componentId: "core-
|
|
16
|
+
componentId: "core-12_50_1__sc-by95hy-1"
|
|
17
17
|
})(["margin:", "px;padding:0;list-style-position:inside;list-style-type:disc;"], spacing.xs);
|
|
18
18
|
export var StyledDropzoneIcon = /*#__PURE__*/styled.div.withConfig({
|
|
19
19
|
displayName: "StyledDropzoneIcon",
|
|
20
|
-
componentId: "core-
|
|
20
|
+
componentId: "core-12_50_1__sc-by95hy-2"
|
|
21
21
|
})(["display:flex;justify-content:center;align-items:center;height:64px;color:", ";margin-bottom:", "px;transition:all 250ms ease-out;", " svg{width:auto;height:100%;}"], colors.gray45, spacing.lg, function (_ref) {
|
|
22
22
|
var $disabled = _ref.$disabled;
|
|
23
23
|
return $disabled && css(["height:72px;margin-bottom:", "px;"], spacing.sm);
|
|
@@ -26,7 +26,7 @@ var activeDropzone = /*#__PURE__*/css(["outline:none;border:2px dashed ", ";back
|
|
|
26
26
|
var disabledDropzone = /*#__PURE__*/css(["color:", ";border:2px dashed ", ";background-color:", ";cursor:not-allowed;& ", "{color:", ";transform:none;}"], colors.gray70, colors.gray85, colors.gray98, StyledDropzoneIcon, colors.gray85);
|
|
27
27
|
export var StyledDropzoneContainer = /*#__PURE__*/styled.div.withConfig({
|
|
28
28
|
displayName: "StyledDropzoneContainer",
|
|
29
|
-
componentId: "core-
|
|
29
|
+
componentId: "core-12_50_1__sc-by95hy-3"
|
|
30
30
|
})(["", " display:inline-flex;justify-content:center;align-items:center;box-sizing:border-box;width:100%;height:100%;min-height:92px;padding:", "px;color:", ";border:2px dashed ", ";background-color:", ";border-radius:", "px;text-align:center;letter-spacing:0.25px;transition:all 250ms ease-out;cursor:grab;", " ", " ", " ", ""], getTypographyIntent('body'), spacing.lg, colors.gray40, colors.gray70, colors.gray96, borderRadius.md, function (_ref2) {
|
|
31
31
|
var $disabled = _ref2.$disabled;
|
|
32
32
|
return !$disabled && css(["&:hover{", "}"], activeDropzone);
|
|
@@ -43,25 +43,25 @@ export var StyledDropzoneContainer = /*#__PURE__*/styled.div.withConfig({
|
|
|
43
43
|
});
|
|
44
44
|
export var StyledDropzoneMessage = /*#__PURE__*/styled.div.withConfig({
|
|
45
45
|
displayName: "StyledDropzoneMessage",
|
|
46
|
-
componentId: "core-
|
|
46
|
+
componentId: "core-12_50_1__sc-by95hy-4"
|
|
47
47
|
})(["user-select:none;"]);
|
|
48
48
|
export var StyledUploadButton = /*#__PURE__*/styled(Button).withConfig({
|
|
49
49
|
displayName: "StyledUploadButton",
|
|
50
|
-
componentId: "core-
|
|
50
|
+
componentId: "core-12_50_1__sc-by95hy-5"
|
|
51
51
|
})(["&&{display:block;margin-left:auto;margin-right:auto;margin-bottom:", "px;}"], spacing.sm);
|
|
52
52
|
export var StyledDropzoneCaption = /*#__PURE__*/styled.span.withConfig({
|
|
53
53
|
displayName: "StyledDropzoneCaption",
|
|
54
|
-
componentId: "core-
|
|
54
|
+
componentId: "core-12_50_1__sc-by95hy-6"
|
|
55
55
|
})(["color:", ";"], function (_ref6) {
|
|
56
56
|
var $error = _ref6.$error;
|
|
57
57
|
return $error && colors.gray15;
|
|
58
58
|
});
|
|
59
59
|
export var StyledDropzoneWrapper = /*#__PURE__*/styled(Flex).withConfig({
|
|
60
60
|
displayName: "StyledDropzoneWrapper",
|
|
61
|
-
componentId: "core-
|
|
61
|
+
componentId: "core-12_50_1__sc-by95hy-7"
|
|
62
62
|
})(["height:100%;"]);
|
|
63
63
|
export var StyledDropzoneFocusDetector = /*#__PURE__*/styled(Box).withConfig({
|
|
64
64
|
displayName: "StyledDropzoneFocusDetector",
|
|
65
|
-
componentId: "core-
|
|
65
|
+
componentId: "core-12_50_1__sc-by95hy-8"
|
|
66
66
|
})(["height:100%;"]);
|
|
67
67
|
//# sourceMappingURL=Dropzone.styles.js.map
|