@procore/core-react 12.47.0 → 12.48.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.
Files changed (225) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/AnchorNavigation/AnchorNavigation.styles.js +4 -4
  3. package/dist/Avatar/Avatar.styles.js +5 -5
  4. package/dist/AvatarStack/AvatarStack.styles.js +7 -7
  5. package/dist/Badge/Badge.styles.js +2 -2
  6. package/dist/BadgePill/BadgePill.styles.js +4 -4
  7. package/dist/Banner/Banner.styles.js +10 -10
  8. package/dist/Box/Box.styles.js +1 -1
  9. package/dist/Breadcrumbs/Breadcrumbs.styles.js +4 -4
  10. package/dist/Button/Button.styles.js +5 -5
  11. package/dist/Calendar/Calendar.styles.js +9 -9
  12. package/dist/Card/Card.styles.js +1 -1
  13. package/dist/Checkbox/Checkbox.styles.js +6 -6
  14. package/dist/CheckboxGroup/CheckboxGroup.js +9 -3
  15. package/dist/CheckboxGroup/CheckboxGroup.js.map +1 -1
  16. package/dist/CheckboxGroup/checkboxGroupTileNavigation.d.ts +12 -0
  17. package/dist/CheckboxGroup/checkboxGroupTileNavigation.js +224 -0
  18. package/dist/CheckboxGroup/checkboxGroupTileNavigation.js.map +1 -0
  19. package/dist/ContactItem/ContactItem.styles.js +5 -5
  20. package/dist/Content/Content.styles.js +2 -2
  21. package/dist/DateInput/DateInput.styles.js +6 -6
  22. package/dist/DateSelect/DateSelect.js +5 -4
  23. package/dist/DateSelect/DateSelect.js.map +1 -1
  24. package/dist/DateSelect/DateSelect.types.d.ts +1 -1
  25. package/dist/DateSelect/DateSelect.types.js.map +1 -1
  26. package/dist/DetailPage/DetailPage.styles.js +7 -7
  27. package/dist/Dropdown/Dropdown.styles.js +3 -3
  28. package/dist/DropdownFlyout/DropdownFlyout.styles.js +4 -4
  29. package/dist/Dropzone/Dropzone.js +1 -1
  30. package/dist/Dropzone/Dropzone.styles.js +9 -9
  31. package/dist/EmptyState/EmptyState.styles.js +6 -6
  32. package/dist/Field/Field.styles.js +3 -3
  33. package/dist/FileList/FileList.styles.js +3 -3
  34. package/dist/FileSelect/FileExplorer/FileExplorer.styles.js +9 -9
  35. package/dist/FileSelect/FileExplorer/FileExplorerSidebar.styles.js +3 -3
  36. package/dist/FileSelect/FileSelect.styles.js +2 -2
  37. package/dist/FileSelect/FileSelectDropzone/FileSelectDropzone.styles.js +3 -3
  38. package/dist/FileSelect/FileTokenList/FileTokenList.styles.js +2 -2
  39. package/dist/FileSelect/GridSource/GridSource.styles.js +6 -6
  40. package/dist/FileSelect/LocalSource/LocalSource.styles.js +4 -4
  41. package/dist/FileSelect/SourceItem/SourceItem.styles.js +3 -3
  42. package/dist/FileSelect/ThumbnailList/ThumbnailList.styles.js +6 -6
  43. package/dist/FileSelect/TreeSource/TreeSource.styles.js +1 -1
  44. package/dist/FileToken/FileToken.styles.js +6 -6
  45. package/dist/FilterToken/FilterToken.styles.js +5 -5
  46. package/dist/FlexList/FlexList.styles.js +1 -1
  47. package/dist/Form/Form.styles.js +13 -13
  48. package/dist/Form/StyledFormikForm.styles.js +2 -2
  49. package/dist/GhostPlaceholder/GhostPlaceholder.styles.js +2 -2
  50. package/dist/Grid/Grid.styles.js +2 -2
  51. package/dist/GroupSelect/GroupSelect.styles.js +1 -1
  52. package/dist/Input/Input.styles.js +1 -1
  53. package/dist/Link/Link.styles.js +1 -1
  54. package/dist/ListPage/ListPage.styles.js +8 -8
  55. package/dist/Loader/Loader.styles.js +2 -2
  56. package/dist/Menu/Menu.js +2 -2
  57. package/dist/Menu/Menu.js.map +1 -1
  58. package/dist/MenuImperative/MenuImperative.styles.js +11 -11
  59. package/dist/Modal/Modal.styles.js +13 -13
  60. package/dist/MultiSelect/MultiSelect.styles.js +8 -8
  61. package/dist/NextMenu/NextMenu.styles.js +3 -3
  62. package/dist/NextTile/NextTile.d.ts +24 -0
  63. package/dist/NextTile/NextTile.js +275 -90
  64. package/dist/NextTile/NextTile.js.map +1 -1
  65. package/dist/NextTile/NextTile.styles.d.ts +16 -0
  66. package/dist/NextTile/NextTile.styles.js +136 -0
  67. package/dist/NextTile/NextTile.styles.js.map +1 -0
  68. package/dist/NextTile/NextTile.types.d.ts +14 -2
  69. package/dist/NextTile/NextTile.types.js.map +1 -1
  70. package/dist/Notation/Notation.js +1 -1
  71. package/dist/NumberInput/NumberInput.styles.js +7 -7
  72. package/dist/Overlay/OverlayArrow.styles.js +1 -1
  73. package/dist/PageLayout/PageLayout.styles.js +16 -16
  74. package/dist/PageTemplate/PageFooterTemplate/PageFooterTemplate.styles.js +1 -1
  75. package/dist/PageTemplate/PageHeaderTemplate/PageHeaderTemplate.styles.js +3 -3
  76. package/dist/PageTemplate/PagePaneTemplate/PagePaneTemplate.styles.js +2 -2
  77. package/dist/PageTemplate/PageTemplate/PageTemplate.styles.js +3 -3
  78. package/dist/Pagination/Pagination.styles.js +5 -5
  79. package/dist/Panel/Panel.styles.js +11 -11
  80. package/dist/Pill/Pill.styles.js +3 -3
  81. package/dist/PillSelect/PillSelect.styles.js +4 -4
  82. package/dist/Popover/Popover.styles.js +2 -2
  83. package/dist/Portal/Portal.styles.js +1 -1
  84. package/dist/ProgressBar/ProgressBar.styles.js +2 -2
  85. package/dist/RadioButton/RadioButton.styles.js +3 -3
  86. package/dist/Required/Required.styles.js +3 -3
  87. package/dist/Search/Search.styles.js +5 -5
  88. package/dist/Section/Section.styles.js +7 -7
  89. package/dist/SegmentedController/SegmentedController.styles.js +4 -4
  90. package/dist/Select/Select.styles.js +8 -8
  91. package/dist/Semantic/Semantic.styles.js +9 -9
  92. package/dist/Slider/Slider.styles.js +5 -5
  93. package/dist/Spinner/Spinner.styles.js +7 -7
  94. package/dist/SplitViewCard/SplitViewCard.styles.js +8 -8
  95. package/dist/SuperSelect/SuperSelect.presets.styles.js +1 -1
  96. package/dist/SuperSelect/SuperSelect.styles.js +40 -40
  97. package/dist/Switch/Switch.styles.js +4 -4
  98. package/dist/Table/Table.styles.js +29 -29
  99. package/dist/TableShelf/TableShelf.styles.js +5 -5
  100. package/dist/Tabs/Tabs.styles.js +16 -16
  101. package/dist/Tearsheet/Tearsheet.styles.js +5 -5
  102. package/dist/TextArea/TextArea.styles.js +1 -1
  103. package/dist/TextEditorOutput/TextEditorOutput.styles.js +1 -1
  104. package/dist/Thumbnail/Thumbnail.hooks.d.ts +13 -7
  105. package/dist/Thumbnail/Thumbnail.hooks.js +15 -5
  106. package/dist/Thumbnail/Thumbnail.hooks.js.map +1 -1
  107. package/dist/Thumbnail/Thumbnail.js +8 -4
  108. package/dist/Thumbnail/Thumbnail.js.map +1 -1
  109. package/dist/Thumbnail/Thumbnail.styles.d.ts +13 -5
  110. package/dist/Thumbnail/Thumbnail.styles.js +42 -24
  111. package/dist/Thumbnail/Thumbnail.styles.js.map +1 -1
  112. package/dist/Thumbnail/Thumbnail.types.d.ts +12 -10
  113. package/dist/Thumbnail/Thumbnail.types.js.map +1 -1
  114. package/dist/Thumbnail/Thumbnail.utils.d.ts +1 -0
  115. package/dist/Thumbnail/Thumbnail.utils.js +7 -0
  116. package/dist/Thumbnail/Thumbnail.utils.js.map +1 -1
  117. package/dist/Thumbnail/ThumbnailCaption.js +85 -40
  118. package/dist/Thumbnail/ThumbnailCaption.js.map +1 -1
  119. package/dist/ThumbnailGrid/ThumbnailGrid.styles.js +7 -7
  120. package/dist/TieredSelect/TieredSelect.styles.js +9 -9
  121. package/dist/Tile/Tile.styles.js +10 -10
  122. package/dist/Tile/Tile.styles.js.map +1 -1
  123. package/dist/Title/Title.styles.js +7 -7
  124. package/dist/Toast/Toast.styles.js +3 -3
  125. package/dist/ToggleButton/ToggleButton.styles.js +1 -1
  126. package/dist/Token/Token.styles.js +5 -5
  127. package/dist/ToolHeader/ToolHeader.styles.js +6 -6
  128. package/dist/ToolLandingPage/ToolLandingPage.styles.js +3 -3
  129. package/dist/Tooltip/Tooltip.styles.js +3 -3
  130. package/dist/Tree/Tree.js +1 -1
  131. package/dist/Tree/Tree.styles.js +10 -10
  132. package/dist/Typeahead/Typeahead.styles.js +3 -3
  133. package/dist/Typography/Typography.styles.js +1 -1
  134. package/dist/Typography/Typography.table.story.js +2 -2
  135. package/dist/_hooks/ClickOutside.js +8 -3
  136. package/dist/_hooks/ClickOutside.js.map +1 -1
  137. package/dist/_hooks/I18n.d.ts +2 -0
  138. package/dist/_locales/en.json +1 -0
  139. package/dist/_locales/pseudo.json +1 -0
  140. package/dist/_storyHelpers_/components/Deprecation.styles.js +1 -1
  141. package/dist/_storyHelpers_/components/StoryGrid.js +3 -3
  142. package/dist/_typedoc/AnchorNavigation/AnchorNavigation.types.json +4 -4
  143. package/dist/_typedoc/Avatar/Avatar.types.json +20 -20
  144. package/dist/_typedoc/AvatarStack/AvatarStack.types.json +25 -25
  145. package/dist/_typedoc/Badge/Badge.types.json +6 -6
  146. package/dist/_typedoc/Banner/Banner.types.json +15 -15
  147. package/dist/_typedoc/Box/Box.types.json +68 -68
  148. package/dist/_typedoc/Breadcrumbs/Breadcrumbs.types.json +10 -10
  149. package/dist/_typedoc/Button/Button.types.json +14 -14
  150. package/dist/_typedoc/Calendar/Calendar.types.json +80 -80
  151. package/dist/_typedoc/Card/Card.types.json +6 -6
  152. package/dist/_typedoc/Checkbox/Checkbox.types.json +8 -8
  153. package/dist/_typedoc/ContactItem/ContactItem.types.json +9 -9
  154. package/dist/_typedoc/DateInput/DateInput.types.json +35 -35
  155. package/dist/_typedoc/DateSelect/DateSelect.types.json +23 -13
  156. package/dist/_typedoc/DetailPage/DetailPage.types.json +5 -5
  157. package/dist/_typedoc/Dropdown/Dropdown.types.json +38 -38
  158. package/dist/_typedoc/DropdownFlyout/DropdownFlyout.types.json +31 -31
  159. package/dist/_typedoc/Dropzone/Dropzone.types.json +44 -44
  160. package/dist/_typedoc/EmptyState/EmptyState.types.json +18 -18
  161. package/dist/_typedoc/FileList/FileList.types.json +9 -9
  162. package/dist/_typedoc/FileSelect/FileSelect.types.json +27 -27
  163. package/dist/_typedoc/FileSelect/GridSource/GridSource.types.json +20 -20
  164. package/dist/_typedoc/FileSelect/LocalSource/LocalSource.types.json +14 -14
  165. package/dist/_typedoc/FileSelect/TreeSource/TreeSource.types.json +9 -9
  166. package/dist/_typedoc/Flex/Flex.types.json +27 -27
  167. package/dist/_typedoc/FlexList/FlexList.types.json +30 -30
  168. package/dist/_typedoc/Form/Form.types.json +780 -760
  169. package/dist/_typedoc/GhostPlaceholder/GhostPlaceholder.types.json +12 -12
  170. package/dist/_typedoc/Grid/Grid.types.json +8 -8
  171. package/dist/_typedoc/GroupSelect/GroupSelect.types.json +54 -54
  172. package/dist/_typedoc/Input/Input.types.json +2 -2
  173. package/dist/_typedoc/Link/Link.types.json +1 -1
  174. package/dist/_typedoc/ListPage/ListPage.types.json +13 -13
  175. package/dist/_typedoc/Menu/Menu.types.json +62 -62
  176. package/dist/_typedoc/MenuImperative/MenuImperative.types.json +84 -84
  177. package/dist/_typedoc/Modal/Modal.types.json +48 -48
  178. package/dist/_typedoc/MultiSelect/MultiSelect.types.json +33 -33
  179. package/dist/_typedoc/NextTile/NextTile.types.json +42 -32
  180. package/dist/_typedoc/Notation/Notation.types.json +4 -4
  181. package/dist/_typedoc/NumberInput/NumberInput.types.json +48 -48
  182. package/dist/_typedoc/OverlayTrigger/OverlayTrigger.types.json +33 -33
  183. package/dist/_typedoc/PageLayout/PageLayout.types.json +28 -28
  184. package/dist/_typedoc/Pagination/Pagination.types.json +7 -7
  185. package/dist/_typedoc/Panel/Panel.types.json +28 -28
  186. package/dist/_typedoc/Pill/Pill.types.json +2 -2
  187. package/dist/_typedoc/PillSelect/PillSelect.types.json +49 -49
  188. package/dist/_typedoc/Popover/Popover.types.json +15 -15
  189. package/dist/_typedoc/ProgressBar/ProgressBar.types.json +7 -7
  190. package/dist/_typedoc/RadioButton/RadioButton.types.json +6 -6
  191. package/dist/_typedoc/Required/Required.types.json +5 -5
  192. package/dist/_typedoc/Search/Search.types.json +18 -18
  193. package/dist/_typedoc/Section/Section.types.json +15 -15
  194. package/dist/_typedoc/SegmentedController/SegmentedController.types.json +21 -21
  195. package/dist/_typedoc/Select/Select.types.json +67 -67
  196. package/dist/_typedoc/SettingsPage/SettingsPage.types.json +10 -10
  197. package/dist/_typedoc/Slider/Slider.types.json +6 -6
  198. package/dist/_typedoc/Spinner/Spinner.types.json +9 -9
  199. package/dist/_typedoc/SplitViewCard/SplitViewCard.types.json +14 -14
  200. package/dist/_typedoc/Table/Table.types.json +114 -104
  201. package/dist/_typedoc/Tabs/Tabs.types.json +21 -21
  202. package/dist/_typedoc/Tearsheet/Tearsheet.types.json +17 -17
  203. package/dist/_typedoc/TextArea/TextArea.types.json +3 -3
  204. package/dist/_typedoc/TextEditor/TextEditor.types.json +11 -11
  205. package/dist/_typedoc/TextEditorOutput/TextEditorOutput.types.json +4 -4
  206. package/dist/_typedoc/Thumbnail/Thumbnail.types.json +23 -23
  207. package/dist/_typedoc/TieredDropdown/TieredDropdown.types.json +43 -43
  208. package/dist/_typedoc/TieredSelect/TieredSelect.types.json +29 -29
  209. package/dist/_typedoc/Tile/Tile.types.json +8 -8
  210. package/dist/_typedoc/Title/Title.types.json +1 -1
  211. package/dist/_typedoc/Toast/Toast.types.json +4 -4
  212. package/dist/_typedoc/ToggleButton/ToggleButton.types.json +4 -4
  213. package/dist/_typedoc/Token/Token.types.json +7 -7
  214. package/dist/_typedoc/ToolHeader/ToolHeader.types.json +10 -10
  215. package/dist/_typedoc/ToolLandingPage/ToolLandingPage.types.json +8 -8
  216. package/dist/_typedoc/Tooltip/Tooltip.types.json +15 -15
  217. package/dist/_typedoc/Tree/Tree.types.json +88 -88
  218. package/dist/_typedoc/Typeahead/Typeahead.types.json +2 -2
  219. package/dist/_typedoc/Typography/Typography.types.json +9 -9
  220. package/dist/_typedoc/_utils/types.json +3 -3
  221. package/dist/_typedoc/a11y-tips.json +1 -1
  222. package/dist/index.d.ts +1 -0
  223. package/dist/index.js +1 -0
  224. package/dist/index.js.map +1 -1
  225. package/package.json +17 -17
@@ -0,0 +1,224 @@
1
+ function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
2
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
+ function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
4
+ function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
5
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
6
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
7
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
8
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
9
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
10
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
11
+ import React from 'react';
12
+ import { useGridNavigation } from '../ThumbnailGrid/ThumbnailGrid.hooks';
13
+ export var CheckboxGroupTileNavContext = /*#__PURE__*/React.createContext(null);
14
+ var FALLBACK_COLUMN_STRIDE_PX = 116;
15
+ function isTileFocusable(el) {
16
+ return el != null && el.getAttribute('aria-disabled') !== 'true';
17
+ }
18
+ function focusTileElement(el) {
19
+ var _el$scrollIntoView;
20
+ el.focus();
21
+ (_el$scrollIntoView = el.scrollIntoView) === null || _el$scrollIntoView === void 0 ? void 0 : _el$scrollIntoView.call(el, {
22
+ block: 'nearest',
23
+ inline: 'nearest'
24
+ });
25
+ }
26
+ function rovingTabIndex(orderedIds, activeIndex, value) {
27
+ if (orderedIds.length === 0) return 0;
28
+ var idx = orderedIds.indexOf(value);
29
+ return idx === activeIndex ? 0 : -1;
30
+ }
31
+ function indicesRowsFromLayout(orderedIds, tileRefs) {
32
+ var rows = [];
33
+ var row = [];
34
+ var prevTop = null;
35
+ for (var i = 0; i < orderedIds.length; i++) {
36
+ var el = tileRefs.get(orderedIds[i]);
37
+ if (!el) return null;
38
+ var top = el.getBoundingClientRect().top;
39
+ if (prevTop !== null && Math.abs(top - prevTop) > 2) {
40
+ rows.push(row);
41
+ row = [];
42
+ }
43
+ row.push(i);
44
+ prevTop = top;
45
+ }
46
+ if (row.length) rows.push(row);
47
+ return rows.length ? rows : null;
48
+ }
49
+ function indicesRowsFromColumnCount(itemCount, columns) {
50
+ if (itemCount <= 0) return [[0]];
51
+ var cols = Math.min(Math.max(1, columns), itemCount);
52
+ var rows = [];
53
+ for (var i = 0; i < itemCount; i++) {
54
+ var _rows$r;
55
+ var r = Math.floor(i / cols);
56
+ ((_rows$r = rows[r]) !== null && _rows$r !== void 0 ? _rows$r : rows[r] = []).push(i);
57
+ }
58
+ return rows;
59
+ }
60
+ function flexGapPx(container) {
61
+ var g = getComputedStyle(container).columnGap || getComputedStyle(container).gap;
62
+ return parseFloat(g || '0') || 0;
63
+ }
64
+ function estimateColumnCount(container, tileRefs, orderedIds) {
65
+ var w = container.getBoundingClientRect().width;
66
+ if (w <= 0) return 1;
67
+ var first = orderedIds[0] ? tileRefs.get(orderedIds[0]) : undefined;
68
+ if (!first) return Math.max(1, Math.floor(w / FALLBACK_COLUMN_STRIDE_PX));
69
+ var stride;
70
+ var second = orderedIds.length >= 2 ? tileRefs.get(orderedIds[1]) : undefined;
71
+ if (second && first.offsetTop === second.offsetTop) {
72
+ stride = second.offsetLeft - first.offsetLeft;
73
+ } else {
74
+ stride = first.offsetWidth + flexGapPx(container);
75
+ }
76
+ return Math.max(1, Math.floor(w / Math.max(stride, 1)));
77
+ }
78
+ function computeIndicesRows(container, orderedIds, tileRefs) {
79
+ if (orderedIds.length === 0) return [[0]];
80
+ var ready = orderedIds.every(function (id) {
81
+ return tileRefs.get(id);
82
+ });
83
+ if (ready) {
84
+ var fromLayout = indicesRowsFromLayout(orderedIds, tileRefs);
85
+ if (fromLayout) return fromLayout;
86
+ }
87
+ if (container) {
88
+ return indicesRowsFromColumnCount(orderedIds.length, estimateColumnCount(container, tileRefs, orderedIds));
89
+ }
90
+ return indicesRowsFromColumnCount(orderedIds.length, 1);
91
+ }
92
+ function useTileRegistration() {
93
+ var tileRefs = React.useRef(new Map());
94
+ var _React$useState = React.useState([]),
95
+ _React$useState2 = _slicedToArray(_React$useState, 2),
96
+ orderedIds = _React$useState2[0],
97
+ setOrderedIds = _React$useState2[1];
98
+ var orderedIdsRef = React.useRef([]);
99
+ React.useLayoutEffect(function () {
100
+ orderedIdsRef.current = orderedIds;
101
+ }, [orderedIds]);
102
+ var registerTileRef = React.useCallback(function (value, element) {
103
+ if (element) {
104
+ tileRefs.current.set(value, element);
105
+ setOrderedIds(function (prev) {
106
+ return prev.includes(value) ? prev : [].concat(_toConsumableArray(prev), [value]);
107
+ });
108
+ } else {
109
+ tileRefs.current["delete"](value);
110
+ setOrderedIds(function (prev) {
111
+ return prev.filter(function (v) {
112
+ return v !== value;
113
+ });
114
+ });
115
+ }
116
+ }, []);
117
+ return {
118
+ tileRefs: tileRefs,
119
+ orderedIds: orderedIds,
120
+ orderedIdsRef: orderedIdsRef,
121
+ registerTileRef: registerTileRef
122
+ };
123
+ }
124
+ function useCheckboxGroupTileNavAutoGrid(containerRef) {
125
+ var _useTileRegistration = useTileRegistration(),
126
+ tileRefs = _useTileRegistration.tileRefs,
127
+ orderedIds = _useTileRegistration.orderedIds,
128
+ orderedIdsRef = _useTileRegistration.orderedIdsRef,
129
+ registerTileRef = _useTileRegistration.registerTileRef;
130
+ var _React$useState3 = React.useState([[0]]),
131
+ _React$useState4 = _slicedToArray(_React$useState3, 2),
132
+ indicesRows = _React$useState4[0],
133
+ setIndicesRows = _React$useState4[1];
134
+ var syncIndicesRows = React.useCallback(function () {
135
+ setIndicesRows(computeIndicesRows(containerRef.current, orderedIdsRef.current, tileRefs.current));
136
+ }, [containerRef, orderedIdsRef, tileRefs]);
137
+ React.useLayoutEffect(function () {
138
+ syncIndicesRows();
139
+ var el = containerRef.current;
140
+ if (!el) return;
141
+ var ro = new ResizeObserver(syncIndicesRows);
142
+ ro.observe(el);
143
+ return function () {
144
+ return ro.disconnect();
145
+ };
146
+ }, [orderedIds, syncIndicesRows, containerRef]);
147
+ var navigation = useGridNavigation({
148
+ indicesRows: [[0]]
149
+ });
150
+ React.useEffect(function () {
151
+ navigation.setIndicesRows(orderedIds.length === 0 ? [[0]] : indicesRows);
152
+ }, [indicesRows, navigation, orderedIds.length]);
153
+ var handleKeyDown = React.useCallback(function (value, e) {
154
+ var ids = orderedIdsRef.current;
155
+ var i = ids.indexOf(value);
156
+ if (i < 0 || ids.length === 0) return;
157
+ var last = ids.length - 1;
158
+ var nav = function nav(fn) {
159
+ return fn(e, i);
160
+ };
161
+ var next;
162
+ if (e.key === 'Tab' && e.shiftKey) {
163
+ if (i <= 0) return;
164
+ e.preventDefault();
165
+ next = nav(navigation.left);
166
+ } else {
167
+ switch (e.key) {
168
+ case 'ArrowDown':
169
+ case 'Down':
170
+ e.preventDefault();
171
+ next = nav(navigation.down);
172
+ break;
173
+ case 'ArrowUp':
174
+ case 'Up':
175
+ e.preventDefault();
176
+ next = nav(navigation.up);
177
+ break;
178
+ case 'ArrowLeft':
179
+ case 'Left':
180
+ e.preventDefault();
181
+ next = nav(navigation.left);
182
+ break;
183
+ case 'Tab':
184
+ if (i >= last) return;
185
+ e.preventDefault();
186
+ next = nav(navigation.right);
187
+ break;
188
+ case 'ArrowRight':
189
+ case 'Right':
190
+ e.preventDefault();
191
+ next = nav(navigation.right);
192
+ break;
193
+ default:
194
+ return;
195
+ }
196
+ }
197
+ var target = tileRefs.current.get(ids[next]);
198
+ if (isTileFocusable(target)) focusTileElement(target);
199
+ }, [navigation, orderedIdsRef, tileRefs]);
200
+ var getTabIndex = React.useCallback(function (value) {
201
+ return rovingTabIndex(orderedIds, navigation.index, value);
202
+ }, [orderedIds, navigation.index]);
203
+ var onTileFocus = React.useCallback(function (value) {
204
+ var idx = orderedIds.indexOf(value);
205
+ if (idx >= 0) navigation.setIndex(idx);
206
+ }, [navigation, orderedIds]);
207
+ return React.useMemo(function () {
208
+ return {
209
+ registerTileRef: registerTileRef,
210
+ getTabIndex: getTabIndex,
211
+ onTileKeyDown: handleKeyDown,
212
+ onTileFocus: onTileFocus
213
+ };
214
+ }, [registerTileRef, getTabIndex, handleKeyDown, onTileFocus]);
215
+ }
216
+ export function CheckboxGroupTileNavProvider(_ref) {
217
+ var containerRef = _ref.containerRef,
218
+ children = _ref.children;
219
+ var api = useCheckboxGroupTileNavAutoGrid(containerRef);
220
+ return /*#__PURE__*/React.createElement(CheckboxGroupTileNavContext.Provider, {
221
+ value: api
222
+ }, children);
223
+ }
224
+ //# sourceMappingURL=checkboxGroupTileNavigation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkboxGroupTileNavigation.js","names":["React","useGridNavigation","CheckboxGroupTileNavContext","createContext","FALLBACK_COLUMN_STRIDE_PX","isTileFocusable","el","getAttribute","focusTileElement","_el$scrollIntoView","focus","scrollIntoView","call","block","inline","rovingTabIndex","orderedIds","activeIndex","value","length","idx","indexOf","indicesRowsFromLayout","tileRefs","rows","row","prevTop","i","get","top","getBoundingClientRect","Math","abs","push","indicesRowsFromColumnCount","itemCount","columns","cols","min","max","_rows$r","r","floor","flexGapPx","container","g","getComputedStyle","columnGap","gap","parseFloat","estimateColumnCount","w","width","first","undefined","stride","second","offsetTop","offsetLeft","offsetWidth","computeIndicesRows","ready","every","id","fromLayout","useTileRegistration","useRef","Map","_React$useState","useState","_React$useState2","_slicedToArray","setOrderedIds","orderedIdsRef","useLayoutEffect","current","registerTileRef","useCallback","element","set","prev","includes","concat","_toConsumableArray","filter","v","useCheckboxGroupTileNavAutoGrid","containerRef","_useTileRegistration","_React$useState3","_React$useState4","indicesRows","setIndicesRows","syncIndicesRows","ro","ResizeObserver","observe","disconnect","navigation","useEffect","handleKeyDown","e","ids","last","nav","fn","next","key","shiftKey","preventDefault","left","down","up","right","target","getTabIndex","index","onTileFocus","setIndex","useMemo","onTileKeyDown","CheckboxGroupTileNavProvider","_ref","children","api","createElement","Provider"],"sources":["../../src/CheckboxGroup/checkboxGroupTileNavigation.tsx"],"sourcesContent":["import React from 'react'\nimport { useGridNavigation } from '../ThumbnailGrid/ThumbnailGrid.hooks'\n\nexport type CheckboxGroupTileNavApi = {\n registerTileRef: (value: string, element: HTMLElement | null) => void\n getTabIndex: (value: string) => number\n onTileKeyDown: (value: string, e: React.KeyboardEvent<HTMLElement>) => void\n onTileFocus: (value: string) => void\n}\n\nexport const CheckboxGroupTileNavContext =\n React.createContext<CheckboxGroupTileNavApi | null>(null)\n\nconst FALLBACK_COLUMN_STRIDE_PX = 116\n\nfunction isTileFocusable(\n el: HTMLElement | undefined | null\n): el is HTMLElement {\n return el != null && el.getAttribute('aria-disabled') !== 'true'\n}\n\nfunction focusTileElement(el: HTMLElement) {\n el.focus()\n el.scrollIntoView?.({ block: 'nearest', inline: 'nearest' })\n}\n\nfunction rovingTabIndex(\n orderedIds: string[],\n activeIndex: number,\n value: string\n): number {\n if (orderedIds.length === 0) return 0\n const idx = orderedIds.indexOf(value)\n return idx === activeIndex ? 0 : -1\n}\n\nfunction indicesRowsFromLayout(\n orderedIds: string[],\n tileRefs: Map<string, HTMLElement>\n): number[][] | null {\n const rows: number[][] = []\n let row: number[] = []\n let prevTop: number | null = null\n\n for (let i = 0; i < orderedIds.length; i++) {\n const el = tileRefs.get(orderedIds[i])\n if (!el) return null\n\n const top = el.getBoundingClientRect().top\n if (prevTop !== null && Math.abs(top - prevTop) > 2) {\n rows.push(row)\n row = []\n }\n row.push(i)\n prevTop = top\n }\n if (row.length) rows.push(row)\n return rows.length ? rows : null\n}\n\nfunction indicesRowsFromColumnCount(\n itemCount: number,\n columns: number\n): number[][] {\n if (itemCount <= 0) return [[0]]\n const cols = Math.min(Math.max(1, columns), itemCount)\n const rows: number[][] = []\n for (let i = 0; i < itemCount; i++) {\n const r = Math.floor(i / cols)\n ;(rows[r] ??= []).push(i)\n }\n return rows\n}\n\nfunction flexGapPx(container: HTMLElement): number {\n const g =\n getComputedStyle(container).columnGap || getComputedStyle(container).gap\n return parseFloat(g || '0') || 0\n}\n\nfunction estimateColumnCount(\n container: HTMLElement,\n tileRefs: Map<string, HTMLElement>,\n orderedIds: string[]\n): number {\n const w = container.getBoundingClientRect().width\n if (w <= 0) return 1\n\n const first = orderedIds[0] ? tileRefs.get(orderedIds[0]) : undefined\n if (!first) return Math.max(1, Math.floor(w / FALLBACK_COLUMN_STRIDE_PX))\n\n let stride: number\n const second =\n orderedIds.length >= 2 ? tileRefs.get(orderedIds[1]) : undefined\n if (second && first.offsetTop === second.offsetTop) {\n stride = second.offsetLeft - first.offsetLeft\n } else {\n stride = first.offsetWidth + flexGapPx(container)\n }\n\n return Math.max(1, Math.floor(w / Math.max(stride, 1)))\n}\n\nfunction computeIndicesRows(\n container: HTMLElement | null,\n orderedIds: string[],\n tileRefs: Map<string, HTMLElement>\n): number[][] {\n if (orderedIds.length === 0) return [[0]]\n\n const ready = orderedIds.every((id) => tileRefs.get(id))\n if (ready) {\n const fromLayout = indicesRowsFromLayout(orderedIds, tileRefs)\n if (fromLayout) return fromLayout\n }\n\n if (container) {\n return indicesRowsFromColumnCount(\n orderedIds.length,\n estimateColumnCount(container, tileRefs, orderedIds)\n )\n }\n return indicesRowsFromColumnCount(orderedIds.length, 1)\n}\n\nfunction useTileRegistration() {\n const tileRefs = React.useRef(new Map<string, HTMLElement>())\n const [orderedIds, setOrderedIds] = React.useState<string[]>([])\n const orderedIdsRef = React.useRef<string[]>([])\n\n React.useLayoutEffect(() => {\n orderedIdsRef.current = orderedIds\n }, [orderedIds])\n\n const registerTileRef = React.useCallback(\n (value: string, element: HTMLElement | null) => {\n if (element) {\n tileRefs.current.set(value, element)\n setOrderedIds((prev) =>\n prev.includes(value) ? prev : [...prev, value]\n )\n } else {\n tileRefs.current.delete(value)\n setOrderedIds((prev) => prev.filter((v) => v !== value))\n }\n },\n []\n )\n\n return { tileRefs, orderedIds, orderedIdsRef, registerTileRef }\n}\n\nfunction useCheckboxGroupTileNavAutoGrid(\n containerRef: React.RefObject<HTMLElement | null>\n): CheckboxGroupTileNavApi {\n const { tileRefs, orderedIds, orderedIdsRef, registerTileRef } =\n useTileRegistration()\n const [indicesRows, setIndicesRows] = React.useState<number[][]>([[0]])\n\n const syncIndicesRows = React.useCallback(() => {\n setIndicesRows(\n computeIndicesRows(\n containerRef.current,\n orderedIdsRef.current,\n tileRefs.current\n )\n )\n }, [containerRef, orderedIdsRef, tileRefs])\n\n React.useLayoutEffect(() => {\n syncIndicesRows()\n const el = containerRef.current\n if (!el) return\n const ro = new ResizeObserver(syncIndicesRows)\n ro.observe(el)\n return () => ro.disconnect()\n }, [orderedIds, syncIndicesRows, containerRef])\n\n const navigation = useGridNavigation({ indicesRows: [[0]] })\n\n React.useEffect(() => {\n navigation.setIndicesRows(orderedIds.length === 0 ? [[0]] : indicesRows)\n }, [indicesRows, navigation, orderedIds.length])\n\n const handleKeyDown = React.useCallback(\n (value: string, e: React.KeyboardEvent<HTMLElement>) => {\n const ids = orderedIdsRef.current\n const i = ids.indexOf(value)\n if (i < 0 || ids.length === 0) return\n\n const last = ids.length - 1\n const nav = (fn: (ev: React.KeyboardEvent, from?: number) => number) =>\n fn(e, i)\n\n let next: number\n\n if (e.key === 'Tab' && e.shiftKey) {\n if (i <= 0) return\n e.preventDefault()\n next = nav(navigation.left)\n } else {\n switch (e.key) {\n case 'ArrowDown':\n case 'Down':\n e.preventDefault()\n next = nav(navigation.down)\n break\n case 'ArrowUp':\n case 'Up':\n e.preventDefault()\n next = nav(navigation.up)\n break\n case 'ArrowLeft':\n case 'Left':\n e.preventDefault()\n next = nav(navigation.left)\n break\n case 'Tab':\n if (i >= last) return\n e.preventDefault()\n next = nav(navigation.right)\n break\n case 'ArrowRight':\n case 'Right':\n e.preventDefault()\n next = nav(navigation.right)\n break\n default:\n return\n }\n }\n\n const target = tileRefs.current.get(ids[next])\n if (isTileFocusable(target)) focusTileElement(target)\n },\n [navigation, orderedIdsRef, tileRefs]\n )\n\n const getTabIndex = React.useCallback(\n (value: string) => rovingTabIndex(orderedIds, navigation.index, value),\n [orderedIds, navigation.index]\n )\n\n const onTileFocus = React.useCallback(\n (value: string) => {\n const idx = orderedIds.indexOf(value)\n if (idx >= 0) navigation.setIndex(idx)\n },\n [navigation, orderedIds]\n )\n\n return React.useMemo(\n () => ({\n registerTileRef,\n getTabIndex,\n onTileKeyDown: handleKeyDown,\n onTileFocus,\n }),\n [registerTileRef, getTabIndex, handleKeyDown, onTileFocus]\n )\n}\n\nexport function CheckboxGroupTileNavProvider({\n containerRef,\n children,\n}: {\n containerRef: React.RefObject<HTMLElement | null>\n children: React.ReactNode\n}) {\n const api = useCheckboxGroupTileNavAutoGrid(containerRef)\n return (\n <CheckboxGroupTileNavContext.Provider value={api}>\n {children}\n </CheckboxGroupTileNavContext.Provider>\n )\n}\n"],"mappings":"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"}
@@ -7,23 +7,23 @@ import { getLineClamp } from '../_styles/mixins';
7
7
  import { spacing } from '../_styles/spacing';
8
8
  export var ContactItemAvatarWrapper = /*#__PURE__*/styled.div.withConfig({
9
9
  displayName: "ContactItemAvatarWrapper",
10
- componentId: "core-12_47_0__sc-1c4z9pn-0"
10
+ componentId: "core-12_48_0__sc-1c4z9pn-0"
11
11
  })(["display:inline-flex;align-self:flex-start;"]);
12
12
  export var ContactItemAvatar = /*#__PURE__*/styled(Avatar).withConfig({
13
13
  displayName: "ContactItemAvatar",
14
- componentId: "core-12_47_0__sc-1c4z9pn-1"
14
+ componentId: "core-12_48_0__sc-1c4z9pn-1"
15
15
  })(["cursor:inherit;font-weight:", ";"], typographyWeights.bold);
16
16
  export var ContactItemTextWrapper = /*#__PURE__*/styled.div.withConfig({
17
17
  displayName: "ContactItemTextWrapper",
18
- componentId: "core-12_47_0__sc-1c4z9pn-2"
18
+ componentId: "core-12_48_0__sc-1c4z9pn-2"
19
19
  })(["overflow:hidden;margin-left:", "px;"], spacing.sm);
20
20
  export var ContactItemText = /*#__PURE__*/styled(Typography).withConfig({
21
21
  displayName: "ContactItemText",
22
- componentId: "core-12_47_0__sc-1c4z9pn-3"
22
+ componentId: "core-12_48_0__sc-1c4z9pn-3"
23
23
  })(["display:flex;", ""], getLineClamp());
24
24
  export var ContactItemWrapper = /*#__PURE__*/styled.div.withConfig({
25
25
  displayName: "ContactItemWrapper",
26
- componentId: "core-12_47_0__sc-1c4z9pn-4"
26
+ componentId: "core-12_48_0__sc-1c4z9pn-4"
27
27
  })(["display:flex;flex-direction:row;align-items:center;padding:", "px ", "px ", "px ", "px;", " ", " ", ""], spacing.sm, spacing.lg, spacing.sm, spacing.sm, function (_ref) {
28
28
  var $disabled = _ref.$disabled,
29
29
  $clickable = _ref.$clickable;
@@ -5,10 +5,10 @@ import { mediaIE11Hack } from '../_styles/media';
5
5
  import { spacing } from '../_styles/spacing';
6
6
  export var StyledContent = /*#__PURE__*/styled(Box).withConfig({
7
7
  displayName: "StyledContent",
8
- componentId: "core-12_47_0__sc-10y57gh-0"
8
+ componentId: "core-12_48_0__sc-10y57gh-0"
9
9
  })(["> * + *,> * + h1,> * + h2,> * + h3,> * + h4,> * + p,> * + ul,> * + ol{margin-top:", "px;}> ", " + *{margin-top:0;}> ", ",> ", " > ", ",> ", "{", "{min-height:0;margin-bottom:", "px;}&:last-child ", "{margin-bottom:0;}}"], spacing.lg, StyledFormRow, StyledFormRow, StyledForm, StyledFormRow, StyledFormRow, StyledFormFieldBanner, spacing.md, StyledFormFieldBanner);
10
10
  export var StyledActions = /*#__PURE__*/styled(Box).withConfig({
11
11
  displayName: "StyledActions",
12
- componentId: "core-12_47_0__sc-10y57gh-1"
12
+ componentId: "core-12_48_0__sc-10y57gh-1"
13
13
  })(["display:flex;justify-content:flex-end;gap:", "px;@media ", "{& > * + *{margin-left:", "px;}}"], spacing.sm, mediaIE11Hack, spacing.sm);
14
14
  //# sourceMappingURL=Content.styles.js.map
@@ -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-12_47_0__sc-w10btf-0"
13
+ componentId: "core-12_48_0__sc-w10btf-0"
14
14
  })(["color:", ";"], colors.gray45);
15
15
  export var StyledDateSegmentsContainer = /*#__PURE__*/styled.div.withConfig({
16
16
  displayName: "StyledDateSegmentsContainer",
17
- componentId: "core-12_47_0__sc-w10btf-1"
17
+ componentId: "core-12_48_0__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-12_47_0__sc-w10btf-2"
21
+ componentId: "core-12_48_0__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-12_47_0__sc-w10btf-3"
32
+ componentId: "core-12_48_0__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-12_47_0__sc-w10btf-4"
36
+ componentId: "core-12_48_0__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-12_47_0__sc-w10btf-5"
40
+ componentId: "core-12_48_0__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);
@@ -1,5 +1,5 @@
1
1
  var _excluded = ["onSelect"],
2
- _excluded2 = ["beforeHide", "beforeShow", "afterHide", "afterShow", "disabledDate", "onChange", "onClear", "value"];
2
+ _excluded2 = ["beforeHide", "beforeShow", "afterHide", "afterShow", "disabledDate", "displayDate", "onChange", "onClear", "value"];
3
3
  var _process$env$TZ_LOG;
4
4
  function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
5
5
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -71,6 +71,7 @@ export var DateSelect = /*#__PURE__*/React.forwardRef(function DateSelect(_ref3,
71
71
  _ref3$afterShow = _ref3.afterShow,
72
72
  afterShow = _ref3$afterShow === void 0 ? noop : _ref3$afterShow,
73
73
  disabledDate = _ref3.disabledDate,
74
+ displayDate = _ref3.displayDate,
74
75
  _ref3$onChange = _ref3.onChange,
75
76
  _onChange = _ref3$onChange === void 0 ? noop : _ref3$onChange,
76
77
  _ref3$onClear = _ref3.onClear,
@@ -90,14 +91,14 @@ export var DateSelect = /*#__PURE__*/React.forwardRef(function DateSelect(_ref3,
90
91
  _React$useState2 = _slicedToArray(_React$useState, 2),
91
92
  selected = _React$useState2[0],
92
93
  setSelected = _React$useState2[1];
93
- var _React$useState3 = React.useState(value || dateTime.newDate()),
94
+ var _React$useState3 = React.useState(value || displayDate || dateTime.newDate()),
94
95
  _React$useState4 = _slicedToArray(_React$useState3, 2),
95
96
  displayed = _React$useState4[0],
96
97
  setDisplayed = _React$useState4[1];
97
98
  React.useEffect(function () {
98
99
  setSelected(value);
99
- setDisplayed(value || dateTime.newDate());
100
- }, [value]);
100
+ setDisplayed(value || displayDate || dateTime.newDate());
101
+ }, [value, displayDate]);
101
102
  var overlay = /*#__PURE__*/React.createElement(Calendar, {
102
103
  "data-qa": "core-date-select-calendar",
103
104
  disabledDate: disabledDate,
@@ -1 +1 @@
1
- {"version":3,"file":"DateSelect.js","names":["React","Calendar","CalendarBase","Card","DateInput","isValidYearRange","OverlayTrigger","useOverlayTriggerContext","isEventSource","useDateTime","enableLogs","_process$env$TZ_LOG","process","env","TZ_LOG","toLowerCase","consoleMessageChange","_ref","date","console","log","showKeys","hideKeys","target","overlay","lifecycleDefault","noop","forwardRef","_ref2","ref","onSelect","props","_objectWithoutProperties","_excluded","_useOverlayTriggerCon","hide","createElement","shadowStrength","_extends","DateSelect","_ref3","_ref3$beforeHide","beforeHide","_ref3$beforeShow","beforeShow","_ref3$afterHide","afterHide","_ref3$afterShow","afterShow","disabledDate","_ref3$onChange","onChange","_ref3$onClear","onClear","value","_excluded2","dateTime","clearRef","useRef","dateInputRef","monthRef","yearRef","segmentRefs","segmentThree","_React$useState","useState","_React$useState2","_slicedToArray","selected","setSelected","_React$useState3","newDate","_React$useState4","displayed","setDisplayed","useEffect","displayDate","onNavigate","current","focus","selectedStart","selectedEnd","e","KeyboardEvent","clickOutsideIgnoreRefs","placement","onChangeSegment","type","setMonth","setFullYear","undefined"],"sources":["../../src/DateSelect/DateSelect.tsx"],"sourcesContent":["import React from 'react'\nimport type { CalendarProps } from '../Calendar'\nimport { Calendar as CalendarBase } from '../Calendar'\nimport { Card } from '../Card'\nimport { DateInput, isValidYearRange } from '../DateInput/DateInput'\nimport {\n OverlayTrigger,\n useOverlayTriggerContext,\n} from '../OverlayTrigger/OverlayTrigger'\nimport { isEventSource } from '../_hooks/ClickOutside'\nimport { useDateTime } from '../_hooks/DateTime'\nimport type { DateSelectProps } from './DateSelect.types'\n\nconst enableLogs = process.env.TZ_LOG?.toLowerCase() === 'true'\n\nfunction consoleMessageChange({ date }: any) {\n if (enableLogs) {\n console.log(\n `core-react: DateInput onChange, relative start of day in destination time zone.\\n`,\n date\n )\n }\n}\n\nconst showKeys: string[] = []\n\nconst hideKeys = {\n target: ['Esc', 'Escape'],\n overlay: ['Esc', 'Escape'],\n}\n\nfunction lifecycleDefault() {\n return true\n}\n\nfunction noop() {}\n\nconst Calendar = React.forwardRef<HTMLDivElement, CalendarProps>(\n function Calendar({ onSelect, ...props }, ref) {\n const { hide } = useOverlayTriggerContext()\n\n return (\n <Card ref={ref} shadowStrength={2}>\n <CalendarBase\n {...props}\n onSelect={(date) => {\n onSelect?.(date)\n hide(true)\n }}\n />\n </Card>\n )\n }\n)\n\n/**\n\n We use date selects to allow users to enter a date into a form by either\n selecting it from a calendar or typing it into a date field.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-dateselect--demo)\n\n @see [Design Guidelines](https://design.procore.com/date-select)\n\n */\nexport const DateSelect = React.forwardRef<HTMLDivElement, DateSelectProps>(\n function DateSelect(\n {\n beforeHide = lifecycleDefault,\n beforeShow = lifecycleDefault,\n afterHide = noop,\n afterShow = noop,\n disabledDate,\n onChange = noop,\n onClear = noop,\n value,\n ...props\n },\n ref\n ) {\n const dateTime = useDateTime()\n\n const clearRef = React.useRef<HTMLButtonElement>(null)\n\n const dateInputRef = ref as React.RefObject<HTMLDivElement>\n React.useRef<HTMLDivElement>(null)\n\n const monthRef = React.useRef<HTMLDivElement>(null)\n\n const yearRef = React.useRef<HTMLDivElement>(null)\n\n const segmentRefs = {\n segmentThree: React.useRef<HTMLDivElement>(null),\n }\n\n const [selected, setSelected] = React.useState(value)\n\n const [displayed, setDisplayed] = React.useState(\n value || dateTime.newDate()\n )\n\n React.useEffect(() => {\n setSelected(value)\n setDisplayed(value || dateTime.newDate())\n }, [value])\n\n const overlay = (\n <Calendar\n data-qa=\"core-date-select-calendar\"\n disabledDate={disabledDate}\n displayDate={displayed}\n monthRef={monthRef}\n onNavigate={setDisplayed}\n onSelect={(date) => {\n segmentRefs.segmentThree.current &&\n segmentRefs.segmentThree.current.focus()\n\n setDisplayed(date)\n setSelected(date)\n onChange(date)\n }}\n selectedStart={selected}\n selectedEnd={selected}\n yearRef={yearRef}\n />\n )\n\n return (\n <OverlayTrigger\n afterHide={afterHide}\n afterShow={afterShow}\n beforeHide={(e) => {\n if (e instanceof KeyboardEvent) {\n segmentRefs.segmentThree.current &&\n segmentRefs.segmentThree.current.focus()\n\n return beforeHide(e)\n }\n\n if (isEventSource(dateInputRef, e) || isEventSource(clearRef, e)) {\n return false\n }\n return beforeHide(e)\n }}\n beforeShow={(e) => {\n if (isEventSource(clearRef, e)) {\n return false\n }\n return beforeShow(e)\n }}\n clickOutsideIgnoreRefs={[monthRef, yearRef]}\n hideKeys={hideKeys}\n overlay={overlay}\n placement=\"bottom-left\"\n ref={dateInputRef}\n showKeys={showKeys}\n >\n <DateInput\n {...props}\n clearRef={clearRef}\n segmentRefs={segmentRefs}\n onChangeSegment={(type, value) => {\n if (value === -1) {\n return\n }\n\n if (type === 'month') {\n setDisplayed(dateTime.newDate(displayed.setMonth(value - 1)))\n } else if (type === 'year') {\n // isValidYearRange prevents calendar from changing, the display date\n if (isValidYearRange(value)) {\n setDisplayed(dateTime.newDate(displayed.setFullYear(value)))\n }\n }\n }}\n onChange={(date: Date | null) => {\n consoleMessageChange({ date })\n if (date) {\n setSelected(date)\n setDisplayed(date)\n } else {\n setDisplayed(dateTime.newDate())\n setSelected(undefined)\n }\n\n onChange(date)\n }}\n onClear={onClear}\n value={selected}\n />\n </OverlayTrigger>\n )\n }\n)\n"],"mappings":"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"}
1
+ {"version":3,"file":"DateSelect.js","names":["React","Calendar","CalendarBase","Card","DateInput","isValidYearRange","OverlayTrigger","useOverlayTriggerContext","isEventSource","useDateTime","enableLogs","_process$env$TZ_LOG","process","env","TZ_LOG","toLowerCase","consoleMessageChange","_ref","date","console","log","showKeys","hideKeys","target","overlay","lifecycleDefault","noop","forwardRef","_ref2","ref","onSelect","props","_objectWithoutProperties","_excluded","_useOverlayTriggerCon","hide","createElement","shadowStrength","_extends","DateSelect","_ref3","_ref3$beforeHide","beforeHide","_ref3$beforeShow","beforeShow","_ref3$afterHide","afterHide","_ref3$afterShow","afterShow","disabledDate","displayDate","_ref3$onChange","onChange","_ref3$onClear","onClear","value","_excluded2","dateTime","clearRef","useRef","dateInputRef","monthRef","yearRef","segmentRefs","segmentThree","_React$useState","useState","_React$useState2","_slicedToArray","selected","setSelected","_React$useState3","newDate","_React$useState4","displayed","setDisplayed","useEffect","onNavigate","current","focus","selectedStart","selectedEnd","e","KeyboardEvent","clickOutsideIgnoreRefs","placement","onChangeSegment","type","setMonth","setFullYear","undefined"],"sources":["../../src/DateSelect/DateSelect.tsx"],"sourcesContent":["import React from 'react'\nimport type { CalendarProps } from '../Calendar'\nimport { Calendar as CalendarBase } from '../Calendar'\nimport { Card } from '../Card'\nimport { DateInput, isValidYearRange } from '../DateInput/DateInput'\nimport {\n OverlayTrigger,\n useOverlayTriggerContext,\n} from '../OverlayTrigger/OverlayTrigger'\nimport { isEventSource } from '../_hooks/ClickOutside'\nimport { useDateTime } from '../_hooks/DateTime'\nimport type { DateSelectProps } from './DateSelect.types'\n\nconst enableLogs = process.env.TZ_LOG?.toLowerCase() === 'true'\n\nfunction consoleMessageChange({ date }: any) {\n if (enableLogs) {\n console.log(\n `core-react: DateInput onChange, relative start of day in destination time zone.\\n`,\n date\n )\n }\n}\n\nconst showKeys: string[] = []\n\nconst hideKeys = {\n target: ['Esc', 'Escape'],\n overlay: ['Esc', 'Escape'],\n}\n\nfunction lifecycleDefault() {\n return true\n}\n\nfunction noop() {}\n\nconst Calendar = React.forwardRef<HTMLDivElement, CalendarProps>(\n function Calendar({ onSelect, ...props }, ref) {\n const { hide } = useOverlayTriggerContext()\n\n return (\n <Card ref={ref} shadowStrength={2}>\n <CalendarBase\n {...props}\n onSelect={(date) => {\n onSelect?.(date)\n hide(true)\n }}\n />\n </Card>\n )\n }\n)\n\n/**\n\n We use date selects to allow users to enter a date into a form by either\n selecting it from a calendar or typing it into a date field.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-dateselect--demo)\n\n @see [Design Guidelines](https://design.procore.com/date-select)\n\n */\nexport const DateSelect = React.forwardRef<HTMLDivElement, DateSelectProps>(\n function DateSelect(\n {\n beforeHide = lifecycleDefault,\n beforeShow = lifecycleDefault,\n afterHide = noop,\n afterShow = noop,\n disabledDate,\n displayDate,\n onChange = noop,\n onClear = noop,\n value,\n ...props\n },\n ref\n ) {\n const dateTime = useDateTime()\n\n const clearRef = React.useRef<HTMLButtonElement>(null)\n\n const dateInputRef = ref as React.RefObject<HTMLDivElement>\n React.useRef<HTMLDivElement>(null)\n\n const monthRef = React.useRef<HTMLDivElement>(null)\n\n const yearRef = React.useRef<HTMLDivElement>(null)\n\n const segmentRefs = {\n segmentThree: React.useRef<HTMLDivElement>(null),\n }\n\n const [selected, setSelected] = React.useState(value)\n\n const [displayed, setDisplayed] = React.useState(\n value || displayDate || dateTime.newDate()\n )\n\n React.useEffect(() => {\n setSelected(value)\n setDisplayed(value || displayDate || dateTime.newDate())\n }, [value, displayDate])\n\n const overlay = (\n <Calendar\n data-qa=\"core-date-select-calendar\"\n disabledDate={disabledDate}\n displayDate={displayed}\n monthRef={monthRef}\n onNavigate={setDisplayed}\n onSelect={(date) => {\n segmentRefs.segmentThree.current &&\n segmentRefs.segmentThree.current.focus()\n\n setDisplayed(date)\n setSelected(date)\n onChange(date)\n }}\n selectedStart={selected}\n selectedEnd={selected}\n yearRef={yearRef}\n />\n )\n\n return (\n <OverlayTrigger\n afterHide={afterHide}\n afterShow={afterShow}\n beforeHide={(e) => {\n if (e instanceof KeyboardEvent) {\n segmentRefs.segmentThree.current &&\n segmentRefs.segmentThree.current.focus()\n\n return beforeHide(e)\n }\n\n if (isEventSource(dateInputRef, e) || isEventSource(clearRef, e)) {\n return false\n }\n return beforeHide(e)\n }}\n beforeShow={(e) => {\n if (isEventSource(clearRef, e)) {\n return false\n }\n return beforeShow(e)\n }}\n clickOutsideIgnoreRefs={[monthRef, yearRef]}\n hideKeys={hideKeys}\n overlay={overlay}\n placement=\"bottom-left\"\n ref={dateInputRef}\n showKeys={showKeys}\n >\n <DateInput\n {...props}\n clearRef={clearRef}\n segmentRefs={segmentRefs}\n onChangeSegment={(type, value) => {\n if (value === -1) {\n return\n }\n\n if (type === 'month') {\n setDisplayed(dateTime.newDate(displayed.setMonth(value - 1)))\n } else if (type === 'year') {\n // isValidYearRange prevents calendar from changing, the display date\n if (isValidYearRange(value)) {\n setDisplayed(dateTime.newDate(displayed.setFullYear(value)))\n }\n }\n }}\n onChange={(date: Date | null) => {\n consoleMessageChange({ date })\n if (date) {\n setSelected(date)\n setDisplayed(date)\n } else {\n setDisplayed(dateTime.newDate())\n setSelected(undefined)\n }\n\n onChange(date)\n }}\n onClear={onClear}\n value={selected}\n />\n </OverlayTrigger>\n )\n }\n)\n"],"mappings":"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"}
@@ -3,7 +3,7 @@ import type { DateInputProps } from '../DateInput/DateInput.types';
3
3
  import type { OverlayTriggerProps } from '../OverlayTrigger/OverlayTrigger.types';
4
4
  import type { VisibilityConfig } from '../_hooks/Visibility';
5
5
  declare type PickedDateInputProps = Pick<DateInputProps, 'aria-label' | 'className' | 'disabled' | 'error' | 'onChange' | 'onClear' | 'tabIndex' | 'variant'>;
6
- declare type PickedCalendarProps = Pick<CalendarProps, 'disabledDate'>;
6
+ declare type PickedCalendarProps = Pick<CalendarProps, 'disabledDate' | 'displayDate'>;
7
7
  declare type PickedOverlayTriggerProps = Pick<OverlayTriggerProps, 'beforeHide' | 'beforeShow'>;
8
8
  declare type PickedVisibilityProps = Pick<VisibilityConfig, 'afterHide' | 'afterShow'>;
9
9
  export interface DateSelectProps extends PickedDateInputProps, PickedOverlayTriggerProps, PickedVisibilityProps, PickedCalendarProps {
@@ -1 +1 @@
1
- {"version":3,"file":"DateSelect.types.js","names":[],"sources":["../../src/DateSelect/DateSelect.types.ts"],"sourcesContent":["import type { CalendarProps } from '../Calendar/Calendar.types'\nimport type { DateInputProps } from '../DateInput/DateInput.types'\nimport type { OverlayTriggerProps } from '../OverlayTrigger/OverlayTrigger.types'\nimport type { VisibilityConfig } from '../_hooks/Visibility'\n\ntype PickedDateInputProps = Pick<\n DateInputProps,\n | 'aria-label'\n | 'className'\n | 'disabled'\n | 'error'\n | 'onChange'\n | 'onClear'\n | 'tabIndex'\n | 'variant'\n>\n\ntype PickedCalendarProps = Pick<CalendarProps, 'disabledDate'>\n\ntype PickedOverlayTriggerProps = Pick<\n OverlayTriggerProps,\n 'beforeHide' | 'beforeShow'\n>\n\ntype PickedVisibilityProps = Pick<VisibilityConfig, 'afterHide' | 'afterShow'>\n\nexport interface DateSelectProps\n extends PickedDateInputProps,\n PickedOverlayTriggerProps,\n PickedVisibilityProps,\n PickedCalendarProps {\n /**\n * @since 10.19.0\n */\n value?: Date\n}\n"],"mappings":""}
1
+ {"version":3,"file":"DateSelect.types.js","names":[],"sources":["../../src/DateSelect/DateSelect.types.ts"],"sourcesContent":["import type { CalendarProps } from '../Calendar/Calendar.types'\nimport type { DateInputProps } from '../DateInput/DateInput.types'\nimport type { OverlayTriggerProps } from '../OverlayTrigger/OverlayTrigger.types'\nimport type { VisibilityConfig } from '../_hooks/Visibility'\n\ntype PickedDateInputProps = Pick<\n DateInputProps,\n | 'aria-label'\n | 'className'\n | 'disabled'\n | 'error'\n | 'onChange'\n | 'onClear'\n | 'tabIndex'\n | 'variant'\n>\n\ntype PickedCalendarProps = Pick<CalendarProps, 'disabledDate' | 'displayDate'>\n\ntype PickedOverlayTriggerProps = Pick<\n OverlayTriggerProps,\n 'beforeHide' | 'beforeShow'\n>\n\ntype PickedVisibilityProps = Pick<VisibilityConfig, 'afterHide' | 'afterShow'>\n\nexport interface DateSelectProps\n extends PickedDateInputProps,\n PickedOverlayTriggerProps,\n PickedVisibilityProps,\n PickedCalendarProps {\n /**\n * @since 10.19.0\n */\n value?: Date\n}\n"],"mappings":""}
@@ -8,32 +8,32 @@ import { colors } from '../_styles/colors';
8
8
  import { spacing } from '../_styles/spacing';
9
9
  export var StyledDetailPage = /*#__PURE__*/styled.div.withConfig({
10
10
  displayName: "StyledDetailPage",
11
- componentId: "core-12_47_0__sc-cytnlo-0"
11
+ componentId: "core-12_48_0__sc-cytnlo-0"
12
12
  })(["background-color:", ";height:100%;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;"], colors.gray96);
13
13
  export var StyledDetailPageBody = /*#__PURE__*/styled.div.withConfig({
14
14
  displayName: "StyledDetailPageBody",
15
- componentId: "core-12_47_0__sc-cytnlo-1"
15
+ componentId: "core-12_48_0__sc-cytnlo-1"
16
16
  })(["padding-bottom:", "px;"], spacing.xl);
17
17
  export var StyledDetailPageFooterNotation = /*#__PURE__*/styled.div.withConfig({
18
18
  displayName: "StyledDetailPageFooterNotation",
19
- componentId: "core-12_47_0__sc-cytnlo-2"
19
+ componentId: "core-12_48_0__sc-cytnlo-2"
20
20
  })(["flex-grow:1;z-index:1;"]);
21
21
  export var StyledDetailPageFooter = /*#__PURE__*/styled(Page.Footer).withConfig({
22
22
  displayName: "StyledDetailPageFooter",
23
- componentId: "core-12_47_0__sc-cytnlo-3"
23
+ componentId: "core-12_48_0__sc-cytnlo-3"
24
24
  })(["display:flex;padding:", "px 0;background-color:", ";justify-content:center;"], spacing.lg, colors.white);
25
25
  export var StyledDetailPageFooterActions = /*#__PURE__*/styled(Box).withConfig({
26
26
  displayName: "StyledDetailPageFooterActions",
27
- componentId: "core-12_47_0__sc-cytnlo-4"
27
+ componentId: "core-12_48_0__sc-cytnlo-4"
28
28
  })(["", ""], getActions());
29
29
  var maxFooterContentWidth = 1920;
30
30
  export var StyledDetailPageFooterContent = /*#__PURE__*/styled.div.withConfig({
31
31
  displayName: "StyledDetailPageFooterContent",
32
- componentId: "core-12_47_0__sc-cytnlo-5"
32
+ componentId: "core-12_48_0__sc-cytnlo-5"
33
33
  })(["width:100%;align-items:center;display:flex;justify-content:flex-end;padding:0 ", "px;max-width:", "px;"], spacing.xl, maxFooterContentWidth);
34
34
  var detailPageCardBorderRadius = 8;
35
35
  export var StyledDetailPageCard = /*#__PURE__*/styled(Card).withConfig({
36
36
  displayName: "StyledDetailPageCard",
37
- componentId: "core-12_47_0__sc-cytnlo-6"
37
+ componentId: "core-12_48_0__sc-cytnlo-6"
38
38
  })(["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
39
  //# sourceMappingURL=DetailPage.styles.js.map
@@ -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-12_47_0__sc-ufsy2q-0"
8
+ componentId: "core-12_48_0__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_47_0__sc-ufsy2q-1"
12
+ componentId: "core-12_48_0__sc-ufsy2q-1"
13
13
  })(["margin:0 6px;"]);
14
14
  export var StyledDropdownButton = /*#__PURE__*/styled(Button).withConfig({
15
15
  displayName: "StyledDropdownButton",
16
- componentId: "core-12_47_0__sc-ufsy2q-2"
16
+ componentId: "core-12_48_0__sc-ufsy2q-2"
17
17
  })(["pointer-events:", ";", ""], function (_ref) {
18
18
  var disabled = _ref.disabled,
19
19
  $loading = _ref.$loading;
@@ -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-12_47_0__sc-1i79jsg-0"
9
+ componentId: "core-12_48_0__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-12_47_0__sc-1i79jsg-1"
13
+ componentId: "core-12_48_0__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-12_47_0__sc-1i79jsg-2"
17
+ componentId: "core-12_48_0__sc-1i79jsg-2"
18
18
  })(["", ""], getEllipsis());
19
19
  export var StyledDropdownFlyoutExpandIcon = /*#__PURE__*/styled.span.withConfig({
20
20
  displayName: "StyledDropdownFlyoutExpandIcon",
21
- componentId: "core-12_47_0__sc-1i79jsg-3"
21
+ componentId: "core-12_48_0__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-12_47_0__sc-l4fojb-0"
98
+ componentId: "core-12_48_0__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_47_0__sc-by95hy-0"
12
+ componentId: "core-12_48_0__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-12_47_0__sc-by95hy-1"
16
+ componentId: "core-12_48_0__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-12_47_0__sc-by95hy-2"
20
+ componentId: "core-12_48_0__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-12_47_0__sc-by95hy-3"
29
+ componentId: "core-12_48_0__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-12_47_0__sc-by95hy-4"
46
+ componentId: "core-12_48_0__sc-by95hy-4"
47
47
  })(["user-select:none;"]);
48
48
  export var StyledUploadButton = /*#__PURE__*/styled(Button).withConfig({
49
49
  displayName: "StyledUploadButton",
50
- componentId: "core-12_47_0__sc-by95hy-5"
50
+ componentId: "core-12_48_0__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-12_47_0__sc-by95hy-6"
54
+ componentId: "core-12_48_0__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-12_47_0__sc-by95hy-7"
61
+ componentId: "core-12_48_0__sc-by95hy-7"
62
62
  })(["height:100%;"]);
63
63
  export var StyledDropzoneFocusDetector = /*#__PURE__*/styled(Box).withConfig({
64
64
  displayName: "StyledDropzoneFocusDetector",
65
- componentId: "core-12_47_0__sc-by95hy-8"
65
+ componentId: "core-12_48_0__sc-by95hy-8"
66
66
  })(["height:100%;"]);
67
67
  //# sourceMappingURL=Dropzone.styles.js.map