@procore/core-react 11.30.0 → 11.31.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.
Files changed (251) hide show
  1. package/dist/AnchorNavigation/AnchorNavigation.d.ts +9 -0
  2. package/dist/AnchorNavigation/AnchorNavigation.js +52 -0
  3. package/dist/AnchorNavigation/AnchorNavigation.js.map +1 -0
  4. package/dist/AnchorNavigation/AnchorNavigation.styles.d.ts +7 -0
  5. package/dist/AnchorNavigation/AnchorNavigation.styles.js +30 -0
  6. package/dist/AnchorNavigation/AnchorNavigation.styles.js.map +1 -0
  7. package/dist/AnchorNavigation/index.d.ts +1 -0
  8. package/dist/AnchorNavigation/index.js +2 -0
  9. package/dist/AnchorNavigation/index.js.map +1 -0
  10. package/dist/Avatar/Avatar.d.ts +18 -4
  11. package/dist/Avatar/Avatar.js +30 -14
  12. package/dist/Avatar/Avatar.js.map +1 -1
  13. package/dist/Avatar/Avatar.styles.js +5 -5
  14. package/dist/AvatarStack/AvatarStack.styles.js +7 -7
  15. package/dist/Badge/Badge.styles.js +2 -2
  16. package/dist/Banner/Banner.d.ts +19 -0
  17. package/dist/Banner/Banner.js +20 -19
  18. package/dist/Banner/Banner.js.map +1 -1
  19. package/dist/Banner/Banner.styles.js +10 -10
  20. package/dist/Box/Box.styles.js +1 -1
  21. package/dist/Breadcrumbs/Breadcrumbs.d.ts +12 -0
  22. package/dist/Breadcrumbs/Breadcrumbs.js +13 -13
  23. package/dist/Breadcrumbs/Breadcrumbs.js.map +1 -1
  24. package/dist/Breadcrumbs/Breadcrumbs.styles.js +4 -4
  25. package/dist/Button/Button.styles.js +5 -5
  26. package/dist/Calendar/Calendar.styles.js +8 -8
  27. package/dist/Card/Card.styles.js +1 -1
  28. package/dist/Checkbox/Checkbox.styles.js +6 -6
  29. package/dist/ContactItem/ContactItem.d.ts +14 -0
  30. package/dist/ContactItem/ContactItem.js +15 -14
  31. package/dist/ContactItem/ContactItem.js.map +1 -1
  32. package/dist/ContactItem/ContactItem.styles.js +5 -5
  33. package/dist/Content/Content.styles.js +2 -2
  34. package/dist/DateInput/DateInput.js +0 -7
  35. package/dist/DateInput/DateInput.js.map +1 -1
  36. package/dist/DateInput/DateInput.styles.js +6 -6
  37. package/dist/DetailPage/DetailPage.styles.js +7 -7
  38. package/dist/Dropdown/Dropdown.d.ts +13 -0
  39. package/dist/Dropdown/Dropdown.js +14 -14
  40. package/dist/Dropdown/Dropdown.js.map +1 -1
  41. package/dist/Dropdown/Dropdown.styles.js +3 -3
  42. package/dist/DropdownFlyout/DropdownFlyout.styles.js +4 -4
  43. package/dist/Dropzone/Dropzone.d.ts +12 -0
  44. package/dist/Dropzone/Dropzone.js +14 -14
  45. package/dist/Dropzone/Dropzone.js.map +1 -1
  46. package/dist/Dropzone/Dropzone.styles.js +9 -9
  47. package/dist/EmptyState/EmptyState.d.ts +13 -0
  48. package/dist/EmptyState/EmptyState.js +14 -14
  49. package/dist/EmptyState/EmptyState.js.map +1 -1
  50. package/dist/EmptyState/EmptyState.styles.js +6 -6
  51. package/dist/Field/Field.styles.js +3 -3
  52. package/dist/FileList/FileList.d.ts +3 -3
  53. package/dist/FileList/FileList.js +10 -10
  54. package/dist/FileList/FileList.js.map +1 -1
  55. package/dist/FileList/FileList.styles.js +4 -4
  56. package/dist/FileSelect/FileExplorer/FileExplorer.styles.js +9 -9
  57. package/dist/FileSelect/FileExplorer/FileExplorerSidebar.styles.js +3 -3
  58. package/dist/FileSelect/FileSelect.styles.js +2 -2
  59. package/dist/FileSelect/FileSelectDropzone/FileSelectDropzone.styles.js +3 -3
  60. package/dist/FileSelect/FileTokenList/FileTokenList.styles.js +2 -2
  61. package/dist/FileSelect/GridSource/GridSource.styles.js +6 -6
  62. package/dist/FileSelect/LocalSource/LocalSource.styles.js +4 -4
  63. package/dist/FileSelect/SourceItem/SourceItem.styles.js +3 -3
  64. package/dist/FileSelect/ThumbnailList/ThumbnailList.styles.js +6 -6
  65. package/dist/FileSelect/TreeSource/TreeSource.styles.js +1 -1
  66. package/dist/FileToken/FileToken.styles.js +4 -4
  67. package/dist/FilterToken/FilterToken.styles.js +2 -2
  68. package/dist/FlexList/FlexList.styles.js +1 -1
  69. package/dist/Form/Form.styles.js +16 -16
  70. package/dist/Grid/Grid.styles.js +2 -2
  71. package/dist/GroupSelect/GroupSelect.styles.js +1 -1
  72. package/dist/Input/Input.styles.js +1 -1
  73. package/dist/Link/Link.styles.js +1 -1
  74. package/dist/ListPage/ListPage.styles.js +8 -8
  75. package/dist/Loader/Loader.styles.js +2 -2
  76. package/dist/Menu/Menu.d.ts +10 -10
  77. package/dist/Menu/Menu.js +13 -13
  78. package/dist/Menu/Menu.js.map +1 -1
  79. package/dist/MenuImperative/MenuImperative.d.ts +7 -0
  80. package/dist/MenuImperative/MenuImperative.js +8 -8
  81. package/dist/MenuImperative/MenuImperative.js.map +1 -1
  82. package/dist/MenuImperative/MenuImperative.styles.js +10 -10
  83. package/dist/Modal/Modal.d.ts +16 -0
  84. package/dist/Modal/Modal.js +17 -17
  85. package/dist/Modal/Modal.js.map +1 -1
  86. package/dist/Modal/Modal.styles.js +13 -13
  87. package/dist/MultiSelect/MultiSelect.styles.js +6 -6
  88. package/dist/NextMenu/NextMenu.styles.js +3 -3
  89. package/dist/Notation/Notation.js +1 -1
  90. package/dist/NumberInput/NumberInput.styles.js +7 -7
  91. package/dist/Overlay/OverlayArrow.styles.js +1 -1
  92. package/dist/PageLayout/PageLayout.d.ts +3 -3
  93. package/dist/PageLayout/PageLayout.js +60 -29
  94. package/dist/PageLayout/PageLayout.js.map +1 -1
  95. package/dist/PageLayout/PageLayout.styles.d.ts +2 -0
  96. package/dist/PageLayout/PageLayout.styles.js +23 -13
  97. package/dist/PageLayout/PageLayout.styles.js.map +1 -1
  98. package/dist/PageLayout/PageLayout.types.d.ts +6 -1
  99. package/dist/PageLayout/PageLayout.types.js.map +1 -1
  100. package/dist/Pagination/Pagination.styles.js +5 -5
  101. package/dist/Panel/Panel.d.ts +15 -0
  102. package/dist/Panel/Panel.js +16 -16
  103. package/dist/Panel/Panel.js.map +1 -1
  104. package/dist/Panel/Panel.styles.js +11 -11
  105. package/dist/Pill/Pill.styles.js +2 -2
  106. package/dist/PillSelect/PillSelect.styles.js +4 -4
  107. package/dist/Popover/Popover.d.ts +2 -2
  108. package/dist/Popover/Popover.js +21 -22
  109. package/dist/Popover/Popover.js.map +1 -1
  110. package/dist/Popover/Popover.styles.js +2 -2
  111. package/dist/Portal/Portal.styles.js +1 -1
  112. package/dist/ProgressBar/ProgressBar.styles.js +2 -2
  113. package/dist/RadioButton/RadioButton.styles.js +3 -3
  114. package/dist/Required/Required.styles.js +3 -3
  115. package/dist/Search/Search.styles.js +5 -5
  116. package/dist/Section/Section.styles.js +6 -6
  117. package/dist/SegmentedController/SegmentedController.styles.js +4 -4
  118. package/dist/Select/Select.d.ts +16 -0
  119. package/dist/Select/Select.js +17 -17
  120. package/dist/Select/Select.js.map +1 -1
  121. package/dist/Select/Select.styles.js +7 -7
  122. package/dist/Semantic/Semantic.styles.js +9 -9
  123. package/dist/Sidebar/Sidebar.styles.js +7 -7
  124. package/dist/Slider/Slider.styles.js +5 -5
  125. package/dist/Spinner/Spinner.styles.js +7 -7
  126. package/dist/SuperSelect/SuperSelect.presets.styles.js +1 -1
  127. package/dist/SuperSelect/SuperSelect.styles.js +37 -37
  128. package/dist/Switch/Switch.styles.js +4 -4
  129. package/dist/Table/Table.styles.js +28 -28
  130. package/dist/TableShelf/TableShelf.styles.js +5 -5
  131. package/dist/Tabs/Tabs.d.ts +5 -5
  132. package/dist/Tabs/Tabs.js +13 -14
  133. package/dist/Tabs/Tabs.js.map +1 -1
  134. package/dist/Tabs/Tabs.styles.js +8 -8
  135. package/dist/Tearsheet/Tearsheet.styles.js +5 -5
  136. package/dist/TextArea/TextArea.styles.js +1 -1
  137. package/dist/TextEditorOutput/TextEditorOutput.styles.js +1 -1
  138. package/dist/Thumbnail/Thumbnail.d.ts +14 -0
  139. package/dist/Thumbnail/Thumbnail.js +8 -8
  140. package/dist/Thumbnail/Thumbnail.js.map +1 -1
  141. package/dist/Thumbnail/Thumbnail.styles.js +17 -17
  142. package/dist/ThumbnailGrid/ThumbnailGrid.styles.js +7 -7
  143. package/dist/TieredSelect/TieredSelect.styles.js +9 -9
  144. package/dist/Tile/Tile.styles.js +8 -8
  145. package/dist/Title/Title.styles.js +7 -7
  146. package/dist/Toast/Toast.d.ts +1 -1
  147. package/dist/Toast/Toast.js +18 -18
  148. package/dist/Toast/Toast.js.map +1 -1
  149. package/dist/Toast/Toast.styles.js +3 -3
  150. package/dist/ToggleButton/ToggleButton.styles.js +1 -1
  151. package/dist/Token/Token.styles.js +3 -3
  152. package/dist/ToolHeader/ToolHeader.styles.js +6 -6
  153. package/dist/Tooltip/Tooltip.d.ts +17 -0
  154. package/dist/Tooltip/Tooltip.js +18 -18
  155. package/dist/Tooltip/Tooltip.js.map +1 -1
  156. package/dist/Tooltip/Tooltip.styles.js +2 -2
  157. package/dist/Tree/Tree.styles.js +9 -9
  158. package/dist/Typeahead/Typeahead.styles.js +3 -3
  159. package/dist/Typography/Typography.styles.js +1 -1
  160. package/dist/Typography/Typography.table.story.js +2 -2
  161. package/dist/_hooks/I18n.d.ts +1 -36
  162. package/dist/_hooks/I18n.js +0 -6
  163. package/dist/_hooks/I18n.js.map +1 -1
  164. package/dist/_hooks/getI18nProviderLocale.d.ts +7 -0
  165. package/dist/_hooks/getI18nProviderLocale.js +28 -0
  166. package/dist/_hooks/getI18nProviderLocale.js.map +1 -0
  167. package/dist/_typedoc/Avatar/Avatar.types.json +20 -20
  168. package/dist/_typedoc/AvatarStack/AvatarStack.types.json +23 -23
  169. package/dist/_typedoc/Badge/Badge.types.json +6 -6
  170. package/dist/_typedoc/Banner/Banner.types.json +13 -13
  171. package/dist/_typedoc/Box/Box.types.json +68 -68
  172. package/dist/_typedoc/Breadcrumbs/Breadcrumbs.types.json +10 -10
  173. package/dist/_typedoc/Button/Button.types.json +12 -12
  174. package/dist/_typedoc/Calendar/Calendar.types.json +80 -80
  175. package/dist/_typedoc/Card/Card.types.json +6 -6
  176. package/dist/_typedoc/Checkbox/Checkbox.types.json +9 -9
  177. package/dist/_typedoc/ContactItem/ContactItem.types.json +9 -9
  178. package/dist/_typedoc/DateInput/DateInput.types.json +35 -35
  179. package/dist/_typedoc/DateSelect/DateSelect.types.json +13 -13
  180. package/dist/_typedoc/DetailPage/DetailPage.types.json +4 -4
  181. package/dist/_typedoc/Dropdown/Dropdown.types.json +37 -37
  182. package/dist/_typedoc/DropdownFlyout/DropdownFlyout.types.json +29 -29
  183. package/dist/_typedoc/Dropzone/Dropzone.types.json +41 -41
  184. package/dist/_typedoc/EmptyState/EmptyState.types.json +14 -14
  185. package/dist/_typedoc/FileList/FileList.types.json +9 -9
  186. package/dist/_typedoc/FileSelect/FileSelect.types.json +26 -26
  187. package/dist/_typedoc/FileSelect/GridSource/GridSource.types.json +20 -20
  188. package/dist/_typedoc/FileSelect/LocalSource/LocalSource.types.json +14 -14
  189. package/dist/_typedoc/FileSelect/TreeSource/TreeSource.types.json +9 -9
  190. package/dist/_typedoc/Flex/Flex.types.json +27 -27
  191. package/dist/_typedoc/FlexList/FlexList.types.json +30 -30
  192. package/dist/_typedoc/Form/Form.types.json +726 -726
  193. package/dist/_typedoc/Grid/Grid.types.json +8 -8
  194. package/dist/_typedoc/GroupSelect/GroupSelect.types.json +52 -52
  195. package/dist/_typedoc/Input/Input.types.json +2 -2
  196. package/dist/_typedoc/Link/Link.types.json +4 -4
  197. package/dist/_typedoc/ListPage/ListPage.types.json +13 -13
  198. package/dist/_typedoc/Menu/Menu.types.json +62 -62
  199. package/dist/_typedoc/MenuImperative/MenuImperative.types.json +74 -74
  200. package/dist/_typedoc/Modal/Modal.types.json +41 -41
  201. package/dist/_typedoc/MultiSelect/MultiSelect.types.json +31 -31
  202. package/dist/_typedoc/Notation/Notation.types.json +4 -4
  203. package/dist/_typedoc/NumberInput/NumberInput.types.json +38 -38
  204. package/dist/_typedoc/OverlayTrigger/OverlayTrigger.types.json +31 -31
  205. package/dist/_typedoc/PageLayout/PageLayout.types.json +68 -22
  206. package/dist/_typedoc/Pagination/Pagination.types.json +7 -7
  207. package/dist/_typedoc/Panel/Panel.types.json +27 -27
  208. package/dist/_typedoc/Pill/Pill.types.json +2 -2
  209. package/dist/_typedoc/PillSelect/PillSelect.types.json +47 -47
  210. package/dist/_typedoc/Popover/Popover.types.json +14 -14
  211. package/dist/_typedoc/ProgressBar/ProgressBar.types.json +6 -6
  212. package/dist/_typedoc/RadioButton/RadioButton.types.json +6 -6
  213. package/dist/_typedoc/Required/Required.types.json +5 -5
  214. package/dist/_typedoc/Search/Search.types.json +18 -18
  215. package/dist/_typedoc/Section/Section.types.json +14 -14
  216. package/dist/_typedoc/SegmentedController/SegmentedController.types.json +20 -20
  217. package/dist/_typedoc/Select/Select.types.json +57 -57
  218. package/dist/_typedoc/Slider/Slider.types.json +6 -6
  219. package/dist/_typedoc/Spinner/Spinner.types.json +9 -9
  220. package/dist/_typedoc/Switch/Switch.types.json +3 -3
  221. package/dist/_typedoc/Table/Table.types.json +99 -99
  222. package/dist/_typedoc/Tabs/Tabs.types.json +17 -17
  223. package/dist/_typedoc/Tearsheet/Tearsheet.types.json +16 -16
  224. package/dist/_typedoc/TextArea/TextArea.types.json +3 -3
  225. package/dist/_typedoc/TextEditor/TextEditor.types.json +9 -9
  226. package/dist/_typedoc/TextEditorOutput/TextEditorOutput.types.json +4 -4
  227. package/dist/_typedoc/Thumbnail/Thumbnail.types.json +19 -19
  228. package/dist/_typedoc/TieredDropdown/TieredDropdown.types.json +42 -42
  229. package/dist/_typedoc/TieredSelect/TieredSelect.types.json +28 -28
  230. package/dist/_typedoc/Tile/Tile.types.json +30 -30
  231. package/dist/_typedoc/Title/Title.types.json +1 -1
  232. package/dist/_typedoc/Toast/Toast.types.json +4 -4
  233. package/dist/_typedoc/ToggleButton/ToggleButton.types.json +3 -3
  234. package/dist/_typedoc/Token/Token.types.json +4 -4
  235. package/dist/_typedoc/ToolHeader/ToolHeader.types.json +10 -10
  236. package/dist/_typedoc/Tooltip/Tooltip.types.json +13 -13
  237. package/dist/_typedoc/Tree/Tree.types.json +86 -86
  238. package/dist/_typedoc/Typeahead/Typeahead.types.json +2 -2
  239. package/dist/_typedoc/Typography/Typography.types.json +8 -8
  240. package/dist/_typedoc/_utils/types.json +3 -3
  241. package/dist/_utils/CalendarHelpers.js +1 -4
  242. package/dist/_utils/CalendarHelpers.js.map +1 -1
  243. package/dist/_utils/TinyMCE.js +0 -3
  244. package/dist/_utils/TinyMCE.js.map +1 -1
  245. package/dist/index.d.ts +1 -0
  246. package/dist/index.js +1 -0
  247. package/dist/index.js.map +1 -1
  248. package/package.json +2 -2
  249. package/dist/_locales/en-US.json +0 -33
  250. package/dist/_locales/it-IT.json +0 -1
  251. package/dist/_locales/ko.json +0 -1
@@ -8,19 +8,19 @@ var trackWidth = 36;
8
8
  var toggleSize = 16;
9
9
  export var StyledTrack = /*#__PURE__*/styled.div.withConfig({
10
10
  displayName: "StyledTrack",
11
- componentId: "core-11_30_0__sc-mwn4kg-0"
11
+ componentId: "core-11_31_1__sc-mwn4kg-0"
12
12
  })(["background-color:", ";border-radius:", "px;height:", "px;width:", "px;position:relative;transition:0.2s;"], colors.gray70, trackHeight, trackHeight, trackWidth);
13
13
  export var StyledToggle = /*#__PURE__*/styled.span.withConfig({
14
14
  displayName: "StyledToggle",
15
- componentId: "core-11_30_0__sc-mwn4kg-1"
15
+ componentId: "core-11_31_1__sc-mwn4kg-1"
16
16
  })(["background-color:", ";border-radius:50%;bottom:2px;height:", "px;left:2px;position:absolute;transition:all 0.2s;width:", "px;"], colors.white, toggleSize, toggleSize);
17
17
  export var StyledSwitchLabel = /*#__PURE__*/styled.span.withConfig({
18
18
  displayName: "StyledSwitchLabel",
19
- componentId: "core-11_30_0__sc-mwn4kg-2"
19
+ componentId: "core-11_31_1__sc-mwn4kg-2"
20
20
  })(["", " padding-left:", "px;user-select:none;"], getTypographyIntent('body'), spacing.md);
21
21
  export var StyledSwitchContainer = /*#__PURE__*/styled.label.withConfig({
22
22
  displayName: "StyledSwitchContainer",
23
- componentId: "core-11_30_0__sc-mwn4kg-3"
23
+ componentId: "core-11_31_1__sc-mwn4kg-3"
24
24
  })(["cursor:pointer;display:grid;grid-template-columns:", "px 1fr;position:relative;& + &{margin-top:", "px;}", " ", " ", ""], trackWidth, spacing.md, function (_ref) {
25
25
  var $checked = _ref.$checked;
26
26
  return $checked && css(["", "{background-color:", ";", "{transform:translateX(", "px);}}"], StyledTrack, colors.blue50, StyledToggle, spacing.lg);
@@ -47,26 +47,26 @@ var tableCellInputErrorBorder = "1px solid ".concat(colors.red50);
47
47
  var tableRowBorderBottom = /*#__PURE__*/css(["border-bottom:", ";&:last-child{border-bottom:0;}"], tableBorder);
48
48
  export var StyledTableHeaderCellSortableContainer = /*#__PURE__*/styled.div.withConfig({
49
49
  displayName: "StyledTableHeaderCellSortableContainer",
50
- componentId: "core-11_30_0__sc-9c7xd-0"
50
+ componentId: "core-11_31_1__sc-9c7xd-0"
51
51
  })([""]);
52
52
  export var StyledTableHeaderCellLabel = /*#__PURE__*/styled.div.withConfig({
53
53
  displayName: "StyledTableHeaderCellLabel",
54
- componentId: "core-11_30_0__sc-9c7xd-1"
54
+ componentId: "core-11_31_1__sc-9c7xd-1"
55
55
  })(["display:inline-block;flex:1 1 auto;position:relative;"]);
56
56
  export var StyledCheckbox = /*#__PURE__*/styled(Checkbox).withConfig({
57
57
  displayName: "StyledCheckbox",
58
- componentId: "core-11_30_0__sc-9c7xd-2"
58
+ componentId: "core-11_31_1__sc-9c7xd-2"
59
59
  })([""]);
60
60
  export var StyledTableBodyCell = /*#__PURE__*/styled.td.withConfig({
61
61
  displayName: "StyledTableBodyCell",
62
- componentId: "core-11_30_0__sc-9c7xd-3"
62
+ componentId: "core-11_31_1__sc-9c7xd-3"
63
63
  })(["position:relative;vertical-align:middle;", ""], function (_ref) {
64
64
  var $snugfit = _ref.$snugfit;
65
65
  return $snugfit && css(["white-space:nowrap;width:0.1%;"]);
66
66
  });
67
67
  export var StyledTableHeaderCell = /*#__PURE__*/styled.th.withConfig({
68
68
  displayName: "StyledTableHeaderCell",
69
- componentId: "core-11_30_0__sc-9c7xd-4"
69
+ componentId: "core-11_31_1__sc-9c7xd-4"
70
70
  })(["", " font-weight:", ";border-right:", ";color:", ";height:", "px;padding:", "px;position:relative;text-align:left;transition:background-color 0.2s ease-in-out;&:last-child{border-right:0;}", "{display:flex;align-items:center;}", "{", "{min-height:14px;}}", " ", " ", " ", " ", ""], getTypographyIntent('small'), tableHeaderFontWeight, tableHeaderBorderRight, tableHeaderFontColor, tableHeaderHeight, tableHeaderPadding, StyledTableHeaderCellSortableContainer, StyledTableHeaderCellSortableContainer, StyledTableHeaderCellLabel, function (_ref2) {
71
71
  var $sortable = _ref2.$sortable;
72
72
  return $sortable && css(["cursor:pointer;padding:", "px;", ",", "{color:", ";opacity:0;transition:all 0.15s ease-in-out;position:absolute;}::before,::after{font-size:16px;}&:hover{background-color:", ";", "{color:", ";}}"], spacing.lg, StyledTableHeaderCellSortIconAsc, StyledTableHeaderCellSortIconDesc, tableSortFontColor, tableHeaderBgColorHover, StyledTableHeaderCellSortIconAsc, tableSortFontColorHover);
@@ -85,27 +85,27 @@ export var StyledTableHeaderCell = /*#__PURE__*/styled.th.withConfig({
85
85
  });
86
86
  export var StyledTableHeaderCellIconWrapper = /*#__PURE__*/styled.div.withConfig({
87
87
  displayName: "StyledTableHeaderCellIconWrapper",
88
- componentId: "core-11_30_0__sc-9c7xd-5"
88
+ componentId: "core-11_31_1__sc-9c7xd-5"
89
89
  })(["height:20px;line-height:20px;padding:0 ", "px 0 ", "px;width:20px;"], spacing.lg, spacing.sm);
90
90
  export var StyledTableHeaderCellSortIconAsc = /*#__PURE__*/styled(CaretUp).withConfig({
91
91
  displayName: "StyledTableHeaderCellSortIconAsc",
92
- componentId: "core-11_30_0__sc-9c7xd-6"
92
+ componentId: "core-11_31_1__sc-9c7xd-6"
93
93
  })(["margin-top:-", "px;"], spacing.sm);
94
94
  export var StyledTableHeaderCellSortIconDesc = /*#__PURE__*/styled(CaretDown).withConfig({
95
95
  displayName: "StyledTableHeaderCellSortIconDesc",
96
- componentId: "core-11_30_0__sc-9c7xd-7"
96
+ componentId: "core-11_31_1__sc-9c7xd-7"
97
97
  })([""]);
98
98
  export var StyledHead = /*#__PURE__*/styled.thead.withConfig({
99
99
  displayName: "StyledHead",
100
- componentId: "core-11_30_0__sc-9c7xd-8"
100
+ componentId: "core-11_31_1__sc-9c7xd-8"
101
101
  })(["background-color:", ";transition:background-color 0.2s ease-in-out;", " &:hover{", "{", ",", "{&::after,&::before{opacity:1;}}}}"], tableHeaderBgColor, tableRowBorderBottom, StyledTableHeaderCell, StyledTableHeaderCellSortIconAsc, StyledTableHeaderCellSortIconDesc);
102
102
  export var StyledCaratWrapper = /*#__PURE__*/styled.div.withConfig({
103
103
  displayName: "StyledCaratWrapper",
104
- componentId: "core-11_30_0__sc-9c7xd-9"
104
+ componentId: "core-11_31_1__sc-9c7xd-9"
105
105
  })(["font-size:16px;color:", ";padding-right:", "px;transition:all 0.2s ease-in-out;& + ", "{margin:0 ", "px;}"], colors.gray70, spacing.xs, StyledCheckbox, spacing.xs);
106
106
  export var StyledCarat = /*#__PURE__*/styled(ChevronRight).withConfig({
107
107
  displayName: "StyledCarat",
108
- componentId: "core-11_30_0__sc-9c7xd-10"
108
+ componentId: "core-11_31_1__sc-9c7xd-10"
109
109
  })(["", ""], function (_ref7) {
110
110
  var $expanded = _ref7.$expanded;
111
111
  return $expanded && css(["transform:rotate(90deg);"]);
@@ -113,7 +113,7 @@ export var StyledCarat = /*#__PURE__*/styled(ChevronRight).withConfig({
113
113
  var cellInputCSS = /*#__PURE__*/css(["background-color:rgba(255,255,255,0);&&&{border:", ";border-radius:4px;width:100%;&::placeholder{color:", ";}&::-ms-clear{display:none;}&:hover{border-color:transparent;}&:focus{background-color:", ";border-style:solid;border-width:1px;border-color:", ";box-shadow:0 0 0 1px ", ";outline:none;}&:disabled{border:", ";color:", ";}}"], tableCellInputBorder, tableCellInputPlaceholderColor, colors.white, colors.blue40, colors.blue40, tableCellInputBorder, colors.gray70);
114
114
  export var StyledTableCellSelect = /*#__PURE__*/styled(Select).withConfig({
115
115
  displayName: "StyledTableCellSelect",
116
- componentId: "core-11_30_0__sc-9c7xd-11"
116
+ componentId: "core-11_31_1__sc-9c7xd-11"
117
117
  })(["", ";background-color:transparent;border-color:transparent;height:auto;&:hover{background-color:transparent;}&:active:hover{border-color:", ";}&:focus{background-color:", ";cursor:pointer;", " ", "{white-space:nowrap;}", "{opacity:1;pointer-events:all;}", " ", "}", "{white-space:normal;}", ",", "{opacity:0;pointer-events:none;}", " ", ""], cellInputCSS, colors.gray85, colors.white, getFocus(), StyledSelectButtonLabel, StyledSelectArrow, function (_ref8) {
118
118
  var $hasClearIcon = _ref8.$hasClearIcon;
119
119
  return $hasClearIcon && css(["", "{opacity:1;pointer-events:all;}"], StyledSelectClearIcon);
@@ -131,25 +131,25 @@ export var StyledTableCellSelect = /*#__PURE__*/styled(Select).withConfig({
131
131
  });
132
132
  export var StyledTableCellInput = /*#__PURE__*/styled(Input).withConfig({
133
133
  displayName: "StyledTableCellInput",
134
- componentId: "core-11_30_0__sc-9c7xd-12"
134
+ componentId: "core-11_31_1__sc-9c7xd-12"
135
135
  })(["", ""], cellInputCSS);
136
136
  export var StyledTableCellDateInput = /*#__PURE__*/styled(DateSelect).withConfig({
137
137
  displayName: "StyledTableCellDateInput",
138
- componentId: "core-11_30_0__sc-9c7xd-13"
138
+ componentId: "core-11_31_1__sc-9c7xd-13"
139
139
  })(["background-color:transparent;border-color:transparent;&:active:hover{border-color:", ";}&&&:focus-within{", ";background-color:", ";}", " ", "{opacity:0;}", "{&[data-qa-table-visible='false']{opacity:0;}}", "{&[data-placeholder='true']{opacity:0;}}&:focus-within{", "{opacity:1;}", "{&[data-qa-table-visible='false']{opacity:1;}}", "{&[data-placeholder='true']{opacity:1;}}}"], colors.gray45, getFocus(), colors.white, function (_ref12) {
140
140
  var error = _ref12.error;
141
141
  return error && css(["border-color:", ";"], colors.red50);
142
142
  }, StyledDateInputIconContainer, StyledDateInputDelimiter, StyledDateInputSegment, StyledDateInputIconContainer, StyledDateInputDelimiter, StyledDateInputSegment);
143
143
  export var StyledTableCellTextArea = /*#__PURE__*/styled(TextArea).withConfig({
144
144
  displayName: "StyledTableCellTextArea",
145
- componentId: "core-11_30_0__sc-9c7xd-14"
145
+ componentId: "core-11_31_1__sc-9c7xd-14"
146
146
  })(["", " &&{height:", "px;min-height:", "px;overflow:hidden;padding-top:", "px;resize:none;width:100%;", "}"], cellInputCSS, spacing.xxl, spacing.xxl, spacing.xs, function (_ref13) {
147
147
  var $resizable = _ref13.$resizable;
148
148
  return $resizable && css(["&:focus{min-height:64px;overflow:auto;resize:vertical;}"]);
149
149
  });
150
150
  export var StyledTableCellText = /*#__PURE__*/styled.div.withConfig({
151
151
  displayName: "StyledTableCellText",
152
- componentId: "core-11_30_0__sc-9c7xd-15"
152
+ componentId: "core-11_31_1__sc-9c7xd-15"
153
153
  })(["margin:", "px;display:flex;color:", ";", ""], spacing.lg, tableCellTextColor, function (_ref14) {
154
154
  var $percent = _ref14.$percent,
155
155
  $currency = _ref14.$currency;
@@ -157,15 +157,15 @@ export var StyledTableCellText = /*#__PURE__*/styled.div.withConfig({
157
157
  });
158
158
  export var StyledIconCell = /*#__PURE__*/styled.div.withConfig({
159
159
  displayName: "StyledIconCell",
160
- componentId: "core-11_30_0__sc-9c7xd-16"
160
+ componentId: "core-11_31_1__sc-9c7xd-16"
161
161
  })(["display:flex;color:", ";"], tableCellIconColor);
162
162
  export var StyledSelectCellWrapper = /*#__PURE__*/styled.div.withConfig({
163
163
  displayName: "StyledSelectCellWrapper",
164
- componentId: "core-11_30_0__sc-9c7xd-17"
164
+ componentId: "core-11_31_1__sc-9c7xd-17"
165
165
  })(["display:flex;flex-direction:column;"]);
166
166
  export var StyledTableInlineEditErrorBox = /*#__PURE__*/styled.div.withConfig({
167
167
  displayName: "StyledTableInlineEditErrorBox",
168
- componentId: "core-11_30_0__sc-9c7xd-18"
168
+ componentId: "core-11_31_1__sc-9c7xd-18"
169
169
  })(["", " color:", ";font-style:italic;background:", ";border-radius:0 2px 2px 2px;box-shadow:0 1px 2px rgba(0,0,0,0.2),0 1px 3px rgba(0,0,0,0.1);padding:6px ", "px;position:absolute;max-width:160px;z-index:1;", ""], getTypographyIntent('small'), colors.white, colors.red50, spacing.md, function (_ref15) {
170
170
  var $size = _ref15.$size;
171
171
  var sizes = {
@@ -183,7 +183,7 @@ export var StyledTableInlineEditErrorBox = /*#__PURE__*/styled.div.withConfig({
183
183
  });
184
184
  export var StyledTableInlineEditContainer = /*#__PURE__*/styled.div.withConfig({
185
185
  displayName: "StyledTableInlineEditContainer",
186
- componentId: "core-11_30_0__sc-9c7xd-19"
186
+ componentId: "core-11_31_1__sc-9c7xd-19"
187
187
  })(["background-color:", ";margin:", "px ", "px;position:relative;", " ", ""], tableBgColor, spacing.sm, spacing.xs, function (_ref16) {
188
188
  var $error = _ref16.$error;
189
189
  return $error && css(["position:static;background-color:", ";", ",", ",", ",", "{border:", ";border-radius:4px 4px 0 0;border-bottom:none;&:hover{border-bottom:none;}&:focus{background-color:", ";border:", ";border-bottom:none;}}"], tableCellInputErrorBgColor, StyledTableCellDateInput, StyledTableCellInput, StyledTableCellSelect, StyledTableCellTextArea, tableCellInputErrorBorder, tableCellInputFocusBgColor, tableCellInputFocusBorder);
@@ -207,26 +207,26 @@ export var StyledTableInlineEditContainer = /*#__PURE__*/styled.div.withConfig({
207
207
  });
208
208
  export var StyledTableBodyRow = /*#__PURE__*/styled.tr.withConfig({
209
209
  displayName: "StyledTableBodyRow",
210
- componentId: "core-11_30_0__sc-9c7xd-20"
210
+ componentId: "core-11_31_1__sc-9c7xd-20"
211
211
  })(["", " ", " &:focus-within{", "{background-color:", ";&.disabled{background-color:transparent;}}", ".error{background-color:", ";}}&:hover{", "{background-color:", ";cursor:pointer;&:hover{background-color:", ";}&.disabled{&,&:hover{background-color:transparent;cursor:default;}}}", ".error{background-color:", ";&:hover{background-color:", ";}", ",", ",", "{border:", ";border-bottom:none;&:hover{border-bottom:none;}&:focus{border:", ";border-bottom:none;}}}}"], tableRowBorderBottom, function (_ref18) {
212
212
  var $overdue = _ref18.$overdue;
213
213
  return $overdue && css(["", ",", ",", ",", ",", "{color:", ";}"], StyledTableCellText, StyledTableCellSelect, StyledTableCellInput, StyledTableCellDateInput, StyledTableCellTextArea, colors.red50);
214
214
  }, StyledTableInlineEditContainer, tableCellInputRowHoverBgColor, StyledTableInlineEditContainer, tableCellInputErrorBgColor, StyledTableInlineEditContainer, tableCellInputRowHoverBgColor, tableCellInputHoverBgColor, StyledTableInlineEditContainer, tableCellInputErrorBgColor, tableCellInputErrorBgColor, StyledTableCellInput, StyledTableCellSelect, StyledTableCellTextArea, tableCellInputErrorBorder, tableCellInputFocusBorder);
215
215
  export var StyledTableGroupRowContent = /*#__PURE__*/styled.div.withConfig({
216
216
  displayName: "StyledTableGroupRowContent",
217
- componentId: "core-11_30_0__sc-9c7xd-21"
217
+ componentId: "core-11_31_1__sc-9c7xd-21"
218
218
  })([""]);
219
219
  export var StyledTableGroupRowHeader = /*#__PURE__*/styled.div.withConfig({
220
220
  displayName: "StyledTableGroupRowHeader",
221
- componentId: "core-11_30_0__sc-9c7xd-22"
221
+ componentId: "core-11_31_1__sc-9c7xd-22"
222
222
  })([""]);
223
223
  export var StyledTableGroupRowTitle = /*#__PURE__*/styled.span.withConfig({
224
224
  displayName: "StyledTableGroupRowTitle",
225
- componentId: "core-11_30_0__sc-9c7xd-23"
225
+ componentId: "core-11_31_1__sc-9c7xd-23"
226
226
  })([""]);
227
227
  export var StyledTableGroupRow = /*#__PURE__*/styled.tr.withConfig({
228
228
  displayName: "StyledTableGroupRow",
229
- componentId: "core-11_30_0__sc-9c7xd-24"
229
+ componentId: "core-11_31_1__sc-9c7xd-24"
230
230
  })(["background-color:", ";", " ", "{margin-left:", "px;padding:", "px 0;display:flex;flex-direction:row;}", "{display:flex;align-items:center;}", "{font-weight:", ";padding-left:", "px;}", ""], tableGroupRowBgColor, tableRowBorderBottom, StyledTableGroupRowContent, spacing.lg, spacing.lg, StyledTableGroupRowHeader, StyledTableGroupRowTitle, tableHeaderFontWeight, spacing.lg, function (_ref19) {
231
231
  var $depth = _ref19.$depth;
232
232
  if (typeof $depth !== 'number') {
@@ -236,7 +236,7 @@ export var StyledTableGroupRow = /*#__PURE__*/styled.tr.withConfig({
236
236
  });
237
237
  export var StyledTableWrapper = /*#__PURE__*/styled(Card).withConfig({
238
238
  displayName: "StyledTableWrapper",
239
- componentId: "core-11_30_0__sc-9c7xd-25"
239
+ componentId: "core-11_31_1__sc-9c7xd-25"
240
240
  })(["border-radius:", "px;border:", ";", ",tbody{&:first-child{tr:first-child{", ",td{&:first-child{border-top-left-radius:", "px;}&:last-child{border-top-right-radius:", "px;}}}}&:last-child{tr:last-child{", ",td{&:first-child{border-bottom-left-radius:", "px;}&:last-child{border-bottom-right-radius:", "px;}}}}}", ""], tableBorderRadius, tableBorder, StyledHead, StyledTableHeaderCell, tableBorderRadius, tableBorderRadius, StyledTableHeaderCell, tableBorderRadius, tableBorderRadius, function (_ref20) {
241
241
  var $withShelf = _ref20.$withShelf;
242
242
  return $withShelf && css(["position:relative;height:100%;"]);
@@ -245,7 +245,7 @@ var BodyRow = StyledTableBodyRow;
245
245
  var GroupRow = StyledTableGroupRow;
246
246
  export var StyledTable = /*#__PURE__*/styled.table.withConfig({
247
247
  displayName: "StyledTable",
248
- componentId: "core-11_30_0__sc-9c7xd-26"
248
+ componentId: "core-11_31_1__sc-9c7xd-26"
249
249
  })(["background-color:", ";border-collapse:collapse;border-radius:", "px;", " width:100%;td:first-child ", "{padding-left:", "px;}", " ", " + ", "{margin-left:", "px;padding-left:0;}", " ", " ", " + ", " > td{padding-left:", "px;}", " + ", " + ", " > td{padding-left:", "px;}", " + ", " + ", " + ", " > td{padding-left:", "px;}", " + ", " + ", " + ", " + ", " > td{padding-left:", "px;}", " ~ ", "{", "{padding-left:0;margin:0 ", "px;}& > td:first-child{padding-left:", "px;}}", " + ", " ~ ", "{& > td:first-child{padding-left:", "px;}}", " + ", " + ", " ~ ", "{& > td:first-child{padding-left:", "px;}}", " + ", " + ", " + ", " ~ ", "{& > td:first-child{padding-left:", "px;}}", " + ", " + ", " + ", " + ", " ~ ", "{& > td:first-child{padding-left:", "px;}}"], tableBgColor, tableBorderRadius, getTypographyIntent('body'), StyledCheckbox, spacing.lg, StyledTableGroupRow, StyledCaratWrapper, StyledCheckbox, spacing.xs, function (_ref21) {
250
250
  var $fixed = _ref21.$fixed;
251
251
  return $fixed && css(["table-layout:fixed;"]);
@@ -255,6 +255,6 @@ export var StyledTable = /*#__PURE__*/styled.table.withConfig({
255
255
  }, GroupRow, GroupRow, tableGroupHeaderRowIndentation, GroupRow, GroupRow, GroupRow, 2 * tableGroupHeaderRowIndentation, GroupRow, GroupRow, GroupRow, GroupRow, 3 * tableGroupHeaderRowIndentation, GroupRow, GroupRow, GroupRow, GroupRow, GroupRow, 4 * tableGroupHeaderRowIndentation, GroupRow, BodyRow, StyledCheckbox, spacing.xs, tableGroupHeaderRowIndentation + tableGroupBodyRowIndentation, GroupRow, GroupRow, BodyRow, 2 * tableGroupHeaderRowIndentation + tableGroupBodyRowIndentation, GroupRow, GroupRow, GroupRow, BodyRow, 3 * tableGroupHeaderRowIndentation + tableGroupBodyRowIndentation, GroupRow, GroupRow, GroupRow, GroupRow, BodyRow, 4 * tableGroupHeaderRowIndentation + tableGroupBodyRowIndentation, GroupRow, GroupRow, GroupRow, GroupRow, GroupRow, BodyRow, 5 * tableGroupHeaderRowIndentation + tableGroupBodyRowIndentation);
256
256
  export var StyledLoadingContainer = /*#__PURE__*/styled.div.withConfig({
257
257
  displayName: "StyledLoadingContainer",
258
- componentId: "core-11_30_0__sc-9c7xd-27"
258
+ componentId: "core-11_31_1__sc-9c7xd-27"
259
259
  })(["cursor:default;align-items:center;background:", ";display:flex;height:100%;justify-content:center;opacity:0.9;position:absolute;width:100%;z-index:2;"], colors.gray96);
260
260
  //# sourceMappingURL=Table.styles.js.map
@@ -4,22 +4,22 @@ import { spacing } from '../_styles/spacing';
4
4
  var tableShelfShadow = '-4px 0px 5px 0px rgba(112, 112, 112, 0.1)';
5
5
  export var StyledShelf = /*#__PURE__*/styled.div.withConfig({
6
6
  displayName: "StyledShelf",
7
- componentId: "core-11_30_0__sc-a6498a-0"
7
+ componentId: "core-11_31_1__sc-a6498a-0"
8
8
  })(["position:absolute;right:0;top:0;bottom:0;box-shadow:", ";background-color:", ";"], tableShelfShadow, colors.white);
9
9
  export var StyledHead = /*#__PURE__*/styled.div.withConfig({
10
10
  displayName: "StyledHead",
11
- componentId: "core-11_30_0__sc-a6498a-1"
11
+ componentId: "core-11_31_1__sc-a6498a-1"
12
12
  })(["background-color:", ";transition:background-color 0.2s ease-in-out;"], colors.gray96);
13
13
  export var StyledBodyRow = /*#__PURE__*/styled.div.withConfig({
14
14
  displayName: "StyledBodyRow",
15
- componentId: "core-11_30_0__sc-a6498a-2"
15
+ componentId: "core-11_31_1__sc-a6498a-2"
16
16
  })(["border-top:1px solid ", ";transition:background-color 0.2s ease-in-out;"], colors.gray85);
17
17
  export var StyledHeadCell = /*#__PURE__*/styled.div.withConfig({
18
18
  displayName: "StyledHeadCell",
19
- componentId: "core-11_30_0__sc-a6498a-3"
19
+ componentId: "core-11_31_1__sc-a6498a-3"
20
20
  })(["text-align:left;padding:", "px;line-height:13px;"], spacing.lg);
21
21
  export var StyledBodyCell = /*#__PURE__*/styled.div.withConfig({
22
22
  displayName: "StyledBodyCell",
23
- componentId: "core-11_30_0__sc-a6498a-4"
23
+ componentId: "core-11_31_1__sc-a6498a-4"
24
24
  })(["padding:", "px;line-height:13px;"], spacing.lg);
25
25
  //# sourceMappingURL=TableShelf.styles.js.map
@@ -2,6 +2,11 @@ import React from 'react';
2
2
  import type { DivAttributes, Props, SpanAttributes } from '../_utils/types';
3
3
  import type { BaseTabProps, TabDropdownProps, TabProps, TabRef, TabRole, TabRoleType, TabsProps } from './Tabs.types';
4
4
  export declare const Link: React.ForwardRefExoticComponent<SpanAttributes & Props & React.RefAttributes<HTMLSpanElement>>;
5
+ declare function TabInternal({ as, disabled, role, active, children, onBlur, onFocus, onMount, onUnmount, overflowing, dropdown, variant, ...props }: TabProps<TabRoleType>, ref: TabRef<TabRoleType>): React.JSX.Element;
6
+ export declare const Tab: <Role extends TabRole>(props: TabProps<Role> | (BaseTabProps & {
7
+ ref?: React.ComponentPropsWithRef<'div'>['ref'];
8
+ })) => ReturnType<typeof TabInternal>;
9
+ export declare const MoreMenu: React.ForwardRefExoticComponent<DivAttributes & TabDropdownProps & React.RefAttributes<HTMLDivElement>>;
5
10
  /**
6
11
 
7
12
  We use tabs to navigate between different, but related content.
@@ -14,11 +19,6 @@ export declare const Link: React.ForwardRefExoticComponent<SpanAttributes & Prop
14
19
  @see [Design Guidelines](https://design.procore.com/tabs)
15
20
 
16
21
  */
17
- declare function TabInternal({ as, disabled, role, active, children, onBlur, onFocus, onMount, onUnmount, overflowing, dropdown, variant, ...props }: TabProps<TabRoleType>, ref: TabRef<TabRoleType>): React.JSX.Element;
18
- export declare const Tab: <Role extends TabRole>(props: TabProps<Role> | (BaseTabProps & {
19
- ref?: React.ComponentPropsWithRef<'div'>['ref'];
20
- })) => ReturnType<typeof TabInternal>;
21
- export declare const MoreMenu: React.ForwardRefExoticComponent<DivAttributes & TabDropdownProps & React.RefAttributes<HTMLDivElement>>;
22
22
  export declare const Tabs: React.ForwardRefExoticComponent<DivAttributes & TabsProps & React.RefAttributes<HTMLDivElement>> & {
23
23
  Link: React.ForwardRefExoticComponent<SpanAttributes & Props & React.RefAttributes<HTMLSpanElement>>;
24
24
  Tab: <Role extends TabRole>(props: TabProps<Role> | (BaseTabProps & {
package/dist/Tabs/Tabs.js CHANGED
@@ -39,20 +39,6 @@ export var Link = /*#__PURE__*/React.forwardRef(function Link(_ref, ref) {
39
39
  ref: ref
40
40
  }, props), children);
41
41
  });
42
-
43
- /**
44
-
45
- We use tabs to navigate between different, but related content.
46
- Tabs are commonly used on tool landing pages and on item detail pages.
47
-
48
- @since 10.19.0
49
-
50
- @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-tabs--demo)
51
-
52
- @see [Design Guidelines](https://design.procore.com/tabs)
53
-
54
- */
55
-
56
42
  function TabInternal(_ref2, ref) {
57
43
  var as = _ref2.as,
58
44
  disabled = _ref2.disabled,
@@ -264,6 +250,19 @@ Link.displayName = 'Tabs.Link';
264
250
 
265
251
  // @ts-ignore
266
252
  Tab.displayName = 'Tabs.Tab';
253
+
254
+ /**
255
+
256
+ We use tabs to navigate between different, but related content.
257
+ Tabs are commonly used on tool landing pages and on item detail pages.
258
+
259
+ @since 10.19.0
260
+
261
+ @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-tabs--demo)
262
+
263
+ @see [Design Guidelines](https://design.procore.com/tabs)
264
+
265
+ */
267
266
  export var Tabs = addSubcomponents({
268
267
  Link: Link,
269
268
  Tab: Tab
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.js","names":["CaretDown","CaretUp","React","useButton","MenuImperative","OverlayTrigger","useOverlayTriggerContext","useI18nContext","useResize","addSubcomponents","getBoundingRect","mergeRefs","StyledDropdownTab","StyledDropdownTabInner","StyledLink","StyledOverlay","StyledTab","StyledTabInner","StyledTabList","StyledTabs","noop","Link","forwardRef","_ref","ref","children","props","_objectWithoutProperties","_excluded","createElement","_extends","TabInternal","_ref2","as","disabled","role","_ref2$active","active","onBlur","onFocus","_ref2$onMount","onMount","_ref2$onUnmount","onUnmount","_ref2$overflowing","overflowing","_ref2$dropdown","dropdown","_ref2$variant","variant","_excluded2","_ref3","onPress","_useButton","_objectSpread","elementType","isDisabled","type","buttonProps","a11yProps","$clickable","innerRef","useRef","useEffect","current","validChild","isValidElement","dark","cloneElement","undefined","Tab","MoreMenu","_ref4","id","ctx","menuRef","_menuRef$current","_menuRef$current$el","_menuRef$current2","_menuRef$current3","el","focus","highlightFirst","highlightSelected","onSelect","selection","hide","event","Options","Children","map","child","i","Item","item","key","selected","Tabs_","Tabs","_ref5","className","_ref5$dark","qa","_excluded3","i18n","_React$useState","useState","_React$useState2","_slicedToArray","moreMenuIsShown","setMoreMenuIsShown","_React$useState3","_React$useState4","tabElements","setTabElements","_React$useState5","_React$useState6","cutoffIndex","setCutoffIndex","containerRef","recalculate","container","_tabElements$reduce","reduce","acc","rect","subtotals","concat","_toConsumableArray","total","width","Array","index","findIndex","val","onResize","filtered","toArray","filter","slice","isOverflowingActive","some","elements","oldElements","autoFocus","beforeShow","afterHide","trigger","passA11yPropsToOverlay","placement","overlay","length","more","t","size","displayName"],"sources":["../../src/Tabs/Tabs.tsx"],"sourcesContent":["import { CaretDown, CaretUp } from '@procore/core-icons/dist'\nimport React from 'react'\n\nimport { useButton } from '@react-aria/button'\nimport { MenuImperative } 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 { useResize } from '../_hooks/Resize'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport { getBoundingRect } from '../_utils/dom'\nimport { mergeRefs } from '../_utils/mergeRefs'\nimport type {\n DivAttributes,\n NavAttributes,\n Props,\n SpanAttributes,\n} from '../_utils/types'\nimport {\n StyledDropdownTab,\n StyledDropdownTabInner,\n StyledLink,\n StyledOverlay,\n StyledTab,\n StyledTabInner,\n StyledTabList,\n StyledTabs,\n} from './Tabs.styles'\nimport type {\n BaseTabProps,\n TabDropdownProps,\n TabProps,\n TabRef,\n TabRole,\n TabRoleType,\n TabsProps,\n} from './Tabs.types'\n\nfunction noop() {}\n\nexport const Link = React.forwardRef<HTMLSpanElement, SpanAttributes & Props>(\n function Link({ children, ...props }, ref) {\n return (\n <StyledLink ref={ref} {...props}>\n {children}\n </StyledLink>\n )\n }\n)\n\n/**\n\n We use tabs to navigate between different, but related content.\n Tabs are commonly used on tool landing pages and on item detail pages.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-tabs--demo)\n\n @see [Design Guidelines](https://design.procore.com/tabs)\n\n */\n\nfunction TabInternal(\n {\n as,\n disabled,\n role,\n active = false,\n children,\n onBlur,\n onFocus,\n onMount = noop,\n onUnmount = noop,\n overflowing = false,\n dropdown = false,\n variant = '',\n ...props\n }: TabProps<TabRoleType>,\n ref: TabRef<TabRoleType>\n) {\n const { onPress } = props as TabProps<'button'>\n\n const { buttonProps } = useButton(\n {\n ...props,\n onBlur: onBlur as (e: React.FocusEvent) => void,\n onFocus: onFocus as (e: React.FocusEvent) => void,\n elementType: role === 'link' ? 'a' : role === 'button' ? 'button' : 'div',\n isDisabled: disabled,\n onPress,\n type: 'button',\n },\n ref as any // TODO fix polymorphic type\n )\n\n const a11yProps =\n role === 'button'\n ? {\n ...buttonProps,\n 'aria-current': active,\n as: as || 'button',\n $clickable: !disabled,\n }\n : role === 'link'\n ? {\n ...buttonProps,\n 'aria-current': active,\n as: as || 'a',\n $clickable: !disabled,\n }\n : role === 'tab'\n ? { role: 'tab', onBlur, onFocus }\n : { onBlur, onFocus }\n\n const innerRef = React.useRef<HTMLDivElement>(null)\n\n React.useEffect(() => {\n onMount(innerRef.current)\n return onUnmount\n }, [])\n\n const validChild = React.isValidElement(children)\n\n return (\n // @ts-ignore\n <StyledTab ref={mergeRefs(ref, innerRef)} {...a11yProps} {...props}>\n <StyledTabInner active={active || variant === 'active'} dark={props.dark}>\n {validChild\n ? React.cloneElement(children as React.ReactElement<any, any>, {\n 'aria-current': active || variant === 'active' ? true : undefined,\n })\n : children}\n </StyledTabInner>\n </StyledTab>\n )\n}\n\nexport const Tab = React.forwardRef(TabInternal) as <Role extends TabRole>(\n props:\n | TabProps<Role>\n | (BaseTabProps & { ref?: React.ComponentPropsWithRef<'div'>['ref'] })\n) => ReturnType<typeof TabInternal>\n\nexport const MoreMenu = React.forwardRef<\n HTMLDivElement,\n DivAttributes & TabDropdownProps\n>(function MoreMenu({ children, id }, ref) {\n const ctx = useOverlayTriggerContext()\n\n const menuRef = React.useRef<MenuRef | null>(null)\n\n React.useEffect(function () {\n menuRef.current?.el?.focus()\n menuRef.current?.highlightFirst()\n menuRef.current?.highlightSelected()\n }, [])\n\n function onSelect(selection: Selection) {\n ctx.hide(selection.event)\n }\n\n return (\n <StyledOverlay ref={ref}>\n <MenuImperative id={id} role=\"menu\" ref={menuRef} onSelect={onSelect}>\n <MenuImperative.Options>\n {React.Children.map(children, (child, i) => {\n if (React.isValidElement<BaseTabProps>(child)) {\n return (\n <MenuImperative.Item\n item={null}\n key={i}\n selected={child.props.active}\n >\n {React.cloneElement(child as any, { ref: null })}\n </MenuImperative.Item>\n )\n }\n })}\n </MenuImperative.Options>\n </MenuImperative>\n </StyledOverlay>\n )\n})\n\nconst Tabs_ = React.forwardRef<HTMLDivElement, NavAttributes & TabsProps>(\n function Tabs({ children, className, dark = false, qa, ...props }, ref) {\n const i18n = useI18nContext()\n\n const [moreMenuIsShown, setMoreMenuIsShown] = React.useState(false)\n const [tabElements, setTabElements] = React.useState<\n (HTMLDivElement | null)[]\n >([])\n const [cutoffIndex, setCutoffIndex] = React.useState(0)\n\n const containerRef = React.useRef<HTMLDivElement>(null)\n\n function recalculate() {\n const container = getBoundingRect(containerRef.current!)\n\n const { subtotals } = tabElements.reduce(\n (acc, el) => {\n if (!el) {\n return acc\n }\n const rect = getBoundingRect(el)\n return {\n subtotals: [...acc.subtotals, acc.total + rect.width],\n total: acc.total + rect.width,\n }\n },\n { subtotals: new Array(), total: 0 }\n )\n\n const index = subtotals.findIndex((val: number) => val >= container.width)\n\n setCutoffIndex(index)\n }\n\n useResize({ onResize: recalculate })\n\n React.useEffect(recalculate)\n\n const filtered = React.Children.toArray(children).filter((child) => child)\n\n const overflowing = filtered.slice(cutoffIndex - 1)\n\n const isOverflowingActive = React.Children.toArray(overflowing).some(\n (child) => React.isValidElement(child) && child.props.active\n )\n\n return (\n <StyledTabs ref={ref} dark={dark} index={cutoffIndex} {...props}>\n <StyledTabList ref={containerRef}>\n {filtered.map((child, i) => {\n if (React.isValidElement(child))\n return React.cloneElement(child, {\n dark,\n onMount: (el: HTMLDivElement) => {\n setTabElements((elements) => {\n const oldElements = [...elements]\n oldElements[i] = el\n return oldElements\n })\n },\n onUnmount: () => {\n setTabElements((elements) => {\n const oldElements = [...elements]\n oldElements[i] = null\n return oldElements\n })\n },\n } as any) // TODO fix type\n })}\n\n <OverlayTrigger\n autoFocus\n beforeShow={() => setMoreMenuIsShown(true)}\n afterHide={() => setMoreMenuIsShown(false)}\n trigger=\"click\"\n passA11yPropsToOverlay\n placement=\"bottom-right\"\n overlay={<MoreMenu>{overflowing}</MoreMenu>}\n ref={ref}\n role=\"menu\"\n >\n <StyledDropdownTab aria-hidden={!overflowing.length} as=\"button\">\n <StyledDropdownTabInner active={isOverflowingActive} dark={dark}>\n <StyledLink data-qa={qa?.more}>\n {i18n.t('core.tabs.more')}\n </StyledLink>\n {moreMenuIsShown ? (\n <CaretUp size=\"sm\" />\n ) : (\n <CaretDown size=\"sm\" />\n )}\n </StyledDropdownTabInner>\n </StyledDropdownTab>\n </OverlayTrigger>\n </StyledTabList>\n </StyledTabs>\n )\n }\n)\n\nTabs_.displayName = 'Tabs'\n\nLink.displayName = 'Tabs.Link'\n\n// @ts-ignore\nTab.displayName = 'Tabs.Tab'\n\nexport const Tabs = addSubcomponents(\n {\n Link,\n Tab,\n },\n Tabs_\n)\n"],"mappings":"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"}
1
+ {"version":3,"file":"Tabs.js","names":["CaretDown","CaretUp","React","useButton","MenuImperative","OverlayTrigger","useOverlayTriggerContext","useI18nContext","useResize","addSubcomponents","getBoundingRect","mergeRefs","StyledDropdownTab","StyledDropdownTabInner","StyledLink","StyledOverlay","StyledTab","StyledTabInner","StyledTabList","StyledTabs","noop","Link","forwardRef","_ref","ref","children","props","_objectWithoutProperties","_excluded","createElement","_extends","TabInternal","_ref2","as","disabled","role","_ref2$active","active","onBlur","onFocus","_ref2$onMount","onMount","_ref2$onUnmount","onUnmount","_ref2$overflowing","overflowing","_ref2$dropdown","dropdown","_ref2$variant","variant","_excluded2","_ref3","onPress","_useButton","_objectSpread","elementType","isDisabled","type","buttonProps","a11yProps","$clickable","innerRef","useRef","useEffect","current","validChild","isValidElement","dark","cloneElement","undefined","Tab","MoreMenu","_ref4","id","ctx","menuRef","_menuRef$current","_menuRef$current$el","_menuRef$current2","_menuRef$current3","el","focus","highlightFirst","highlightSelected","onSelect","selection","hide","event","Options","Children","map","child","i","Item","item","key","selected","Tabs_","Tabs","_ref5","className","_ref5$dark","qa","_excluded3","i18n","_React$useState","useState","_React$useState2","_slicedToArray","moreMenuIsShown","setMoreMenuIsShown","_React$useState3","_React$useState4","tabElements","setTabElements","_React$useState5","_React$useState6","cutoffIndex","setCutoffIndex","containerRef","recalculate","container","_tabElements$reduce","reduce","acc","rect","subtotals","concat","_toConsumableArray","total","width","Array","index","findIndex","val","onResize","filtered","toArray","filter","slice","isOverflowingActive","some","elements","oldElements","autoFocus","beforeShow","afterHide","trigger","passA11yPropsToOverlay","placement","overlay","length","more","t","size","displayName"],"sources":["../../src/Tabs/Tabs.tsx"],"sourcesContent":["import { CaretDown, CaretUp } from '@procore/core-icons/dist'\nimport React from 'react'\n\nimport { useButton } from '@react-aria/button'\nimport { MenuImperative } 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 { useResize } from '../_hooks/Resize'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport { getBoundingRect } from '../_utils/dom'\nimport { mergeRefs } from '../_utils/mergeRefs'\nimport type {\n DivAttributes,\n NavAttributes,\n Props,\n SpanAttributes,\n} from '../_utils/types'\nimport {\n StyledDropdownTab,\n StyledDropdownTabInner,\n StyledLink,\n StyledOverlay,\n StyledTab,\n StyledTabInner,\n StyledTabList,\n StyledTabs,\n} from './Tabs.styles'\nimport type {\n BaseTabProps,\n TabDropdownProps,\n TabProps,\n TabRef,\n TabRole,\n TabRoleType,\n TabsProps,\n} from './Tabs.types'\n\nfunction noop() {}\n\nexport const Link = React.forwardRef<HTMLSpanElement, SpanAttributes & Props>(\n function Link({ children, ...props }, ref) {\n return (\n <StyledLink ref={ref} {...props}>\n {children}\n </StyledLink>\n )\n }\n)\n\nfunction TabInternal(\n {\n as,\n disabled,\n role,\n active = false,\n children,\n onBlur,\n onFocus,\n onMount = noop,\n onUnmount = noop,\n overflowing = false,\n dropdown = false,\n variant = '',\n ...props\n }: TabProps<TabRoleType>,\n ref: TabRef<TabRoleType>\n) {\n const { onPress } = props as TabProps<'button'>\n\n const { buttonProps } = useButton(\n {\n ...props,\n onBlur: onBlur as (e: React.FocusEvent) => void,\n onFocus: onFocus as (e: React.FocusEvent) => void,\n elementType: role === 'link' ? 'a' : role === 'button' ? 'button' : 'div',\n isDisabled: disabled,\n onPress,\n type: 'button',\n },\n ref as any // TODO fix polymorphic type\n )\n\n const a11yProps =\n role === 'button'\n ? {\n ...buttonProps,\n 'aria-current': active,\n as: as || 'button',\n $clickable: !disabled,\n }\n : role === 'link'\n ? {\n ...buttonProps,\n 'aria-current': active,\n as: as || 'a',\n $clickable: !disabled,\n }\n : role === 'tab'\n ? { role: 'tab', onBlur, onFocus }\n : { onBlur, onFocus }\n\n const innerRef = React.useRef<HTMLDivElement>(null)\n\n React.useEffect(() => {\n onMount(innerRef.current)\n return onUnmount\n }, [])\n\n const validChild = React.isValidElement(children)\n\n return (\n // @ts-ignore\n <StyledTab ref={mergeRefs(ref, innerRef)} {...a11yProps} {...props}>\n <StyledTabInner active={active || variant === 'active'} dark={props.dark}>\n {validChild\n ? React.cloneElement(children as React.ReactElement<any, any>, {\n 'aria-current': active || variant === 'active' ? true : undefined,\n })\n : children}\n </StyledTabInner>\n </StyledTab>\n )\n}\n\nexport const Tab = React.forwardRef(TabInternal) as <Role extends TabRole>(\n props:\n | TabProps<Role>\n | (BaseTabProps & { ref?: React.ComponentPropsWithRef<'div'>['ref'] })\n) => ReturnType<typeof TabInternal>\n\nexport const MoreMenu = React.forwardRef<\n HTMLDivElement,\n DivAttributes & TabDropdownProps\n>(function MoreMenu({ children, id }, ref) {\n const ctx = useOverlayTriggerContext()\n\n const menuRef = React.useRef<MenuRef | null>(null)\n\n React.useEffect(function () {\n menuRef.current?.el?.focus()\n menuRef.current?.highlightFirst()\n menuRef.current?.highlightSelected()\n }, [])\n\n function onSelect(selection: Selection) {\n ctx.hide(selection.event)\n }\n\n return (\n <StyledOverlay ref={ref}>\n <MenuImperative id={id} role=\"menu\" ref={menuRef} onSelect={onSelect}>\n <MenuImperative.Options>\n {React.Children.map(children, (child, i) => {\n if (React.isValidElement<BaseTabProps>(child)) {\n return (\n <MenuImperative.Item\n item={null}\n key={i}\n selected={child.props.active}\n >\n {React.cloneElement(child as any, { ref: null })}\n </MenuImperative.Item>\n )\n }\n })}\n </MenuImperative.Options>\n </MenuImperative>\n </StyledOverlay>\n )\n})\n\nconst Tabs_ = React.forwardRef<HTMLDivElement, NavAttributes & TabsProps>(\n function Tabs({ children, className, dark = false, qa, ...props }, ref) {\n const i18n = useI18nContext()\n\n const [moreMenuIsShown, setMoreMenuIsShown] = React.useState(false)\n const [tabElements, setTabElements] = React.useState<\n (HTMLDivElement | null)[]\n >([])\n const [cutoffIndex, setCutoffIndex] = React.useState(0)\n\n const containerRef = React.useRef<HTMLDivElement>(null)\n\n function recalculate() {\n const container = getBoundingRect(containerRef.current!)\n\n const { subtotals } = tabElements.reduce(\n (acc, el) => {\n if (!el) {\n return acc\n }\n const rect = getBoundingRect(el)\n return {\n subtotals: [...acc.subtotals, acc.total + rect.width],\n total: acc.total + rect.width,\n }\n },\n { subtotals: new Array(), total: 0 }\n )\n\n const index = subtotals.findIndex((val: number) => val >= container.width)\n\n setCutoffIndex(index)\n }\n\n useResize({ onResize: recalculate })\n\n React.useEffect(recalculate)\n\n const filtered = React.Children.toArray(children).filter((child) => child)\n\n const overflowing = filtered.slice(cutoffIndex - 1)\n\n const isOverflowingActive = React.Children.toArray(overflowing).some(\n (child) => React.isValidElement(child) && child.props.active\n )\n\n return (\n <StyledTabs ref={ref} dark={dark} index={cutoffIndex} {...props}>\n <StyledTabList ref={containerRef}>\n {filtered.map((child, i) => {\n if (React.isValidElement(child))\n return React.cloneElement(child, {\n dark,\n onMount: (el: HTMLDivElement) => {\n setTabElements((elements) => {\n const oldElements = [...elements]\n oldElements[i] = el\n return oldElements\n })\n },\n onUnmount: () => {\n setTabElements((elements) => {\n const oldElements = [...elements]\n oldElements[i] = null\n return oldElements\n })\n },\n } as any) // TODO fix type\n })}\n\n <OverlayTrigger\n autoFocus\n beforeShow={() => setMoreMenuIsShown(true)}\n afterHide={() => setMoreMenuIsShown(false)}\n trigger=\"click\"\n passA11yPropsToOverlay\n placement=\"bottom-right\"\n overlay={<MoreMenu>{overflowing}</MoreMenu>}\n ref={ref}\n role=\"menu\"\n >\n <StyledDropdownTab aria-hidden={!overflowing.length} as=\"button\">\n <StyledDropdownTabInner active={isOverflowingActive} dark={dark}>\n <StyledLink data-qa={qa?.more}>\n {i18n.t('core.tabs.more')}\n </StyledLink>\n {moreMenuIsShown ? (\n <CaretUp size=\"sm\" />\n ) : (\n <CaretDown size=\"sm\" />\n )}\n </StyledDropdownTabInner>\n </StyledDropdownTab>\n </OverlayTrigger>\n </StyledTabList>\n </StyledTabs>\n )\n }\n)\n\nTabs_.displayName = 'Tabs'\n\nLink.displayName = 'Tabs.Link'\n\n// @ts-ignore\nTab.displayName = 'Tabs.Tab'\n\n/**\n\n We use tabs to navigate between different, but related content.\n Tabs are commonly used on tool landing pages and on item detail pages.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-tabs--demo)\n\n @see [Design Guidelines](https://design.procore.com/tabs)\n\n */\nexport const Tabs = addSubcomponents(\n {\n Link,\n Tab,\n },\n Tabs_\n)\n"],"mappings":"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"}
@@ -10,15 +10,15 @@ var hiddenTab = /*#__PURE__*/css(["pointer-events:none;position:absolute;visibil
10
10
  var visible = /*#__PURE__*/css(["pointer-events:all;position:relative;visibility:visible;"]);
11
11
  export var StyledLink = /*#__PURE__*/styled.span.withConfig({
12
12
  displayName: "StyledLink",
13
- componentId: "core-11_30_0__sc-17s58xs-0"
13
+ componentId: "core-11_31_1__sc-17s58xs-0"
14
14
  })(["align-items:center;border-bottom-style:solid;border-bottom-color:transparent;border-bottom-width:2px;display:inline-flex;height:26px;justify-content:center;"]);
15
15
  export var StyledTab = /*#__PURE__*/styled.div.withConfig({
16
16
  displayName: "StyledTab",
17
- componentId: "core-11_30_0__sc-17s58xs-1"
17
+ componentId: "core-11_31_1__sc-17s58xs-1"
18
18
  })(["align-items:center;cursor:pointer;display:inline-flex;flex:0 0 auto;justify-content:center;padding:0 ", "px;position:relative;white-space:nowrap;a&{text-decoration:none;}button&{background-color:transparent;border:none;font-family:inherit;}&:first-child{padding-left:0;}&:last-child{padding-right:0;}&:not(:last-child){&:focus{outline:none;", "{box-shadow:inset 0 0 0 1px ", ";}}}"], tabGap, StyledLink, colors.blue40);
19
19
  export var StyledTabInner = /*#__PURE__*/styled.div.withConfig({
20
20
  displayName: "StyledTabInner",
21
- componentId: "core-11_30_0__sc-17s58xs-2"
21
+ componentId: "core-11_31_1__sc-17s58xs-2"
22
22
  })(["", " > a{text-decoration:none;", "}", ""], getTypographyIntent('body'), focusable, function (_ref) {
23
23
  var active = _ref.active,
24
24
  dark = _ref.dark;
@@ -38,23 +38,23 @@ export var StyledTabInner = /*#__PURE__*/styled.div.withConfig({
38
38
  });
39
39
  export var StyledDropdownTab = /*#__PURE__*/styled(StyledTab).withConfig({
40
40
  displayName: "StyledDropdownTab",
41
- componentId: "core-11_30_0__sc-17s58xs-3"
41
+ componentId: "core-11_31_1__sc-17s58xs-3"
42
42
  })(["cursor:pointer;", " ", " ", " margin-left:", "px;", "{margin-right:", "px;}"], getUnstyledButton, focusable, hiddenTab, tabGap, StyledLink, spacing.xs);
43
43
  export var StyledDropdownTabInner = /*#__PURE__*/styled(StyledTabInner).withConfig({
44
44
  displayName: "StyledDropdownTabInner",
45
- componentId: "core-11_30_0__sc-17s58xs-4"
45
+ componentId: "core-11_31_1__sc-17s58xs-4"
46
46
  })(["align-items:center;cursor:pointer;display:inline-flex;"]);
47
47
  export var StyledOverlay = /*#__PURE__*/styled(Card).withConfig({
48
48
  displayName: "StyledOverlay",
49
- componentId: "core-11_30_0__sc-17s58xs-5"
49
+ componentId: "core-11_31_1__sc-17s58xs-5"
50
50
  })(["max-height:40vh;", "{color:", ";}", "{margin:-", "px -", "px;padding:", "px ", "px;}[data-selected='true']{", ",", " > a{color:", ";font-weight:", ";}}", "{border:0;height:auto;}"], StyledTabInner, colors.gray45, StyledTab, spacing.sm, spacing.lg, spacing.sm, spacing.lg, StyledTabInner, StyledTabInner, colors.blue50, typographyWeights.semibold, StyledLink);
51
51
  export var StyledTabList = /*#__PURE__*/styled.div.withConfig({
52
52
  displayName: "StyledTabList",
53
- componentId: "core-11_30_0__sc-17s58xs-6"
53
+ componentId: "core-11_31_1__sc-17s58xs-6"
54
54
  })(["display:flex;width:100%;"]);
55
55
  export var StyledTabs = /*#__PURE__*/styled.nav.withConfig({
56
56
  displayName: "StyledTabs",
57
- componentId: "core-11_30_0__sc-17s58xs-7"
57
+ componentId: "core-11_31_1__sc-17s58xs-7"
58
58
  })(["background-color:", ";display:flex;overflow:hidden;width:100%;", "{&:nth-child(1n + ", "){&:not(", "){", "}}}", ""], function (_ref2) {
59
59
  var dark = _ref2.dark;
60
60
  return dark && colors.gray15;
@@ -47,7 +47,7 @@ var getSlideOutAnimation = function getSlideOutAnimation($placement) {
47
47
  };
48
48
  export var StyledTearsheetContent = /*#__PURE__*/styled.div.withConfig({
49
49
  displayName: "StyledTearsheetContent",
50
- componentId: "core-11_30_0__sc-ljrxoq-0"
50
+ componentId: "core-11_31_1__sc-ljrxoq-0"
51
51
  })(["display:flex;z-index:2;width:100%;", " ", " ", " ", ""], function (_ref) {
52
52
  var $open = _ref.$open,
53
53
  $placement = _ref.$placement;
@@ -67,7 +67,7 @@ export var StyledTearsheetContent = /*#__PURE__*/styled.div.withConfig({
67
67
  export var minScrimSize = spacing.xxl * 3;
68
68
  export var StyledTearsheetBody = /*#__PURE__*/styled.div.withConfig({
69
69
  displayName: "StyledTearsheetBody",
70
- componentId: "core-11_30_0__sc-ljrxoq-1"
70
+ componentId: "core-11_31_1__sc-ljrxoq-1"
71
71
  })(["display:flex;overflow-y:auto;flex-direction:column;background-color:", ";", " ", "}"], colors.white, function (_ref5) {
72
72
  var $placement = _ref5.$placement,
73
73
  $stretch = _ref5.$stretch;
@@ -87,7 +87,7 @@ var zoomIn = /*#__PURE__*/keyframes(["from{transform:scale(0);}to{transform:scal
87
87
  var zoomOut = /*#__PURE__*/keyframes(["from{transform:scale(1);}to{transform:scale(0);}"]);
88
88
  export var StyledScrimContainer = /*#__PURE__*/styled.div.withConfig({
89
89
  displayName: "StyledScrimContainer",
90
- componentId: "core-11_30_0__sc-ljrxoq-2"
90
+ componentId: "core-11_31_1__sc-ljrxoq-2"
91
91
  })(["", ""], function (_ref7) {
92
92
  var $placement = _ref7.$placement;
93
93
  var minSizeProp = ['top', 'bottom'].includes($placement) ? 'min-height' : 'min-width';
@@ -95,7 +95,7 @@ export var StyledScrimContainer = /*#__PURE__*/styled.div.withConfig({
95
95
  });
96
96
  export var StyledButtonContainer = /*#__PURE__*/styled.div.withConfig({
97
97
  displayName: "StyledButtonContainer",
98
- componentId: "core-11_30_0__sc-ljrxoq-3"
98
+ componentId: "core-11_31_1__sc-ljrxoq-3"
99
99
  })(["", ""], function (_ref8) {
100
100
  var $placement = _ref8.$placement;
101
101
  switch ($placement) {
@@ -110,7 +110,7 @@ export var StyledButtonContainer = /*#__PURE__*/styled.div.withConfig({
110
110
  });
111
111
  export var StyledButtonCard = /*#__PURE__*/styled(Card).withConfig({
112
112
  displayName: "StyledButtonCard",
113
- componentId: "core-11_30_0__sc-ljrxoq-4"
113
+ componentId: "core-11_31_1__sc-ljrxoq-4"
114
114
  })(["display:inline-flex;margin:", "px;", " ", " ", ""], spacing.xl, function (_ref9) {
115
115
  var $open = _ref9.$open;
116
116
  return $open ? css(["transform:scale(1);"]) : css(["transform:scale(0);"]);
@@ -3,7 +3,7 @@ import { getInputStyles } from '../Input/Input.styles';
3
3
  import { spacing } from '../_styles/spacing';
4
4
  export var StyledTextArea = /*#__PURE__*/styled.textarea.withConfig({
5
5
  displayName: "StyledTextArea",
6
- componentId: "core-11_30_0__sc-u5mow1-0"
6
+ componentId: "core-11_31_1__sc-u5mow1-0"
7
7
  })(["", " min-height:64px;padding:", "px ", "px;resize:", ";"], getInputStyles, spacing.sm, spacing.md, function (_ref) {
8
8
  var _ref$resize = _ref.resize,
9
9
  resize = _ref$resize === void 0 ? 'both' : _ref$resize;
@@ -1,6 +1,6 @@
1
1
  import styled from 'styled-components';
2
2
  export var StyledEditor = /*#__PURE__*/styled.div.withConfig({
3
3
  displayName: "StyledEditor",
4
- componentId: "core-11_30_0__sc-1lje1b0-0"
4
+ componentId: "core-11_31_1__sc-1lje1b0-0"
5
5
  })(["> .tox-tinymce{border:none;}"]);
6
6
  //# sourceMappingURL=TextEditorOutput.styles.js.map
@@ -2,6 +2,20 @@ import React from 'react';
2
2
  import type { BasePlaceholderProps, BaseThumbnailProps, PlaceholderProps, ThumbnailProps, ThumbnailRef, ThumbnailRoles, ThumbnailRoleType } from './Thumbnail.types';
3
3
  declare function PlaceholderInner(props: PlaceholderProps<ThumbnailRoleType>, ref: ThumbnailRef<ThumbnailRoleType>): React.JSX.Element;
4
4
  declare function ThumbnailInner(props: ThumbnailProps<ThumbnailRoleType>, ref: ThumbnailRef<ThumbnailRoleType>): React.JSX.Element;
5
+ /**
6
+
7
+ We use thumbnails to display previews for images or files as either a smaller
8
+ version of an uploaded image, or an icon representing the file type. If an
9
+ image preview can be generated from the file (in the case of images) then
10
+ display that image.
11
+
12
+ @since 10.19.0
13
+
14
+ @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-thumbnail--demo-thumbnail)
15
+
16
+ @see [Design Guidelines](https://design.procore.com/thumbnail)
17
+
18
+ */
5
19
  export declare const Thumbnail: (<Role extends ThumbnailRoles>(props: ThumbnailProps<Role> | (BaseThumbnailProps & {
6
20
  ref?: ThumbnailRef<Role> | undefined;
7
21
  })) => ReturnType<typeof ThumbnailInner>) & {
@@ -408,6 +408,14 @@ function ThumbnailInner(props, ref) {
408
408
  }
409
409
  }
410
410
  }
411
+ var Thumbnail_ = /*#__PURE__*/React.forwardRef(ThumbnailInner);
412
+ var Placeholder = /*#__PURE__*/React.forwardRef(PlaceholderInner);
413
+
414
+ // @ts-ignore
415
+ Placeholder.displayName = 'Thumbnail.Placeholder';
416
+
417
+ // @ts-ignore
418
+ Thumbnail_.displayName = 'Thumbnail';
411
419
 
412
420
  /**
413
421
 
@@ -423,14 +431,6 @@ function ThumbnailInner(props, ref) {
423
431
  @see [Design Guidelines](https://design.procore.com/thumbnail)
424
432
 
425
433
  */
426
- var Thumbnail_ = /*#__PURE__*/React.forwardRef(ThumbnailInner);
427
- var Placeholder = /*#__PURE__*/React.forwardRef(PlaceholderInner);
428
-
429
- // @ts-ignore
430
- Placeholder.displayName = 'Thumbnail.Placeholder';
431
-
432
- // @ts-ignore
433
- Thumbnail_.displayName = 'Thumbnail';
434
434
  export var Thumbnail = addSubcomponents({
435
435
  Placeholder: Placeholder
436
436
  }, Thumbnail_);