@procore/core-react 12.47.1 → 12.48.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 (237) hide show
  1. package/CHANGELOG.md +24 -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.js +4 -0
  34. package/dist/FileList/FileList.js.map +1 -1
  35. package/dist/FileList/FileList.styles.js +3 -3
  36. package/dist/FileList/storybook/fileListMockData.js +14 -14
  37. package/dist/FileList/storybook/fileListMockData.js.map +1 -1
  38. package/dist/FileSelect/FileExplorer/FileExplorer.styles.js +9 -9
  39. package/dist/FileSelect/FileExplorer/FileExplorerSidebar.styles.js +3 -3
  40. package/dist/FileSelect/FileSelect.styles.js +2 -2
  41. package/dist/FileSelect/FileSelectDropzone/FileSelectDropzone.styles.js +3 -3
  42. package/dist/FileSelect/FileTokenList/FileTokenList.styles.js +2 -2
  43. package/dist/FileSelect/GridSource/GridSource.styles.js +6 -6
  44. package/dist/FileSelect/LocalSource/LocalSource.styles.js +4 -4
  45. package/dist/FileSelect/SourceItem/SourceItem.styles.js +3 -3
  46. package/dist/FileSelect/ThumbnailList/ThumbnailList.styles.js +6 -6
  47. package/dist/FileSelect/TreeSource/TreeSource.styles.js +1 -1
  48. package/dist/FileToken/FileToken.styles.js +6 -6
  49. package/dist/FilterToken/FilterToken.styles.js +5 -5
  50. package/dist/FlexList/FlexList.styles.js +1 -1
  51. package/dist/Form/Form.styles.js +13 -13
  52. package/dist/Form/StyledFormikForm.styles.js +2 -2
  53. package/dist/GhostPlaceholder/GhostPlaceholder.styles.js +2 -2
  54. package/dist/Grid/Grid.styles.js +2 -2
  55. package/dist/GroupSelect/GroupSelect.styles.js +1 -1
  56. package/dist/Input/Input.styles.js +1 -1
  57. package/dist/Link/Link.styles.js +1 -1
  58. package/dist/ListPage/ListPage.styles.js +8 -8
  59. package/dist/Loader/Loader.styles.js +2 -2
  60. package/dist/MenuImperative/MenuImperative.styles.js +11 -11
  61. package/dist/Modal/Modal.styles.js +13 -13
  62. package/dist/MultiSelect/MultiSelect.styles.js +8 -8
  63. package/dist/NextMenu/NextMenu.styles.js +3 -3
  64. package/dist/NextTile/NextTile.d.ts +24 -0
  65. package/dist/NextTile/NextTile.js +275 -90
  66. package/dist/NextTile/NextTile.js.map +1 -1
  67. package/dist/NextTile/NextTile.styles.d.ts +16 -0
  68. package/dist/NextTile/NextTile.styles.js +136 -0
  69. package/dist/NextTile/NextTile.styles.js.map +1 -0
  70. package/dist/NextTile/NextTile.types.d.ts +14 -2
  71. package/dist/NextTile/NextTile.types.js.map +1 -1
  72. package/dist/Notation/Notation.js +1 -1
  73. package/dist/NumberInput/NumberInput.styles.js +7 -7
  74. package/dist/Overlay/OverlayArrow.styles.js +1 -1
  75. package/dist/PageLayout/PageLayout.styles.js +16 -16
  76. package/dist/PageTemplate/PageFooterTemplate/PageFooterTemplate.styles.js +1 -1
  77. package/dist/PageTemplate/PageHeaderTemplate/PageHeaderTemplate.styles.js +3 -3
  78. package/dist/PageTemplate/PagePaneTemplate/PagePaneTemplate.styles.js +2 -2
  79. package/dist/PageTemplate/PageTemplate/PageTemplate.styles.js +3 -3
  80. package/dist/Pagination/Pagination.js +2 -1
  81. package/dist/Pagination/Pagination.js.map +1 -1
  82. package/dist/Pagination/Pagination.styles.js +5 -5
  83. package/dist/Pagination/PaginationSelect.js +15 -2
  84. package/dist/Pagination/PaginationSelect.js.map +1 -1
  85. package/dist/Panel/Panel.styles.js +11 -11
  86. package/dist/Pill/Pill.styles.js +3 -3
  87. package/dist/PillSelect/PillSelect.styles.js +4 -4
  88. package/dist/Popover/Popover.js +2 -3
  89. package/dist/Popover/Popover.js.map +1 -1
  90. package/dist/Popover/Popover.styles.js +2 -2
  91. package/dist/Popover/Popover.types.d.ts +4 -3
  92. package/dist/Popover/Popover.types.js.map +1 -1
  93. package/dist/Portal/Portal.styles.js +1 -1
  94. package/dist/ProgressBar/ProgressBar.styles.js +2 -2
  95. package/dist/RadioButton/RadioButton.styles.js +3 -3
  96. package/dist/Required/Required.styles.js +3 -3
  97. package/dist/Search/Search.styles.js +5 -5
  98. package/dist/Section/Section.styles.js +7 -7
  99. package/dist/SegmentedController/SegmentedController.styles.js +4 -4
  100. package/dist/Select/Select.styles.js +8 -8
  101. package/dist/Semantic/Semantic.styles.js +9 -9
  102. package/dist/Slider/Slider.styles.js +5 -5
  103. package/dist/Spinner/Spinner.styles.js +8 -8
  104. package/dist/Spinner/Spinner.styles.js.map +1 -1
  105. package/dist/SplitViewCard/SplitViewCard.styles.js +8 -8
  106. package/dist/SuperSelect/SuperSelect.presets.styles.js +1 -1
  107. package/dist/SuperSelect/SuperSelect.styles.js +40 -40
  108. package/dist/Switch/Switch.styles.js +4 -4
  109. package/dist/Table/Table.styles.js +29 -29
  110. package/dist/TableShelf/TableShelf.styles.js +5 -5
  111. package/dist/Tabs/Tabs.styles.js +16 -16
  112. package/dist/Tearsheet/Tearsheet.styles.js +5 -5
  113. package/dist/TextArea/TextArea.styles.js +1 -1
  114. package/dist/TextEditorOutput/TextEditorOutput.styles.js +1 -1
  115. package/dist/Thumbnail/Thumbnail.hooks.d.ts +13 -7
  116. package/dist/Thumbnail/Thumbnail.hooks.js +15 -5
  117. package/dist/Thumbnail/Thumbnail.hooks.js.map +1 -1
  118. package/dist/Thumbnail/Thumbnail.js +8 -4
  119. package/dist/Thumbnail/Thumbnail.js.map +1 -1
  120. package/dist/Thumbnail/Thumbnail.styles.d.ts +13 -5
  121. package/dist/Thumbnail/Thumbnail.styles.js +42 -24
  122. package/dist/Thumbnail/Thumbnail.styles.js.map +1 -1
  123. package/dist/Thumbnail/Thumbnail.types.d.ts +12 -10
  124. package/dist/Thumbnail/Thumbnail.types.js.map +1 -1
  125. package/dist/Thumbnail/Thumbnail.utils.d.ts +1 -0
  126. package/dist/Thumbnail/Thumbnail.utils.js +7 -0
  127. package/dist/Thumbnail/Thumbnail.utils.js.map +1 -1
  128. package/dist/Thumbnail/ThumbnailCaption.js +85 -40
  129. package/dist/Thumbnail/ThumbnailCaption.js.map +1 -1
  130. package/dist/ThumbnailGrid/ThumbnailGrid.styles.js +7 -7
  131. package/dist/TieredSelect/TieredSelect.styles.js +9 -9
  132. package/dist/Tile/Tile.styles.js +10 -10
  133. package/dist/Tile/Tile.styles.js.map +1 -1
  134. package/dist/Title/Title.styles.js +7 -7
  135. package/dist/Toast/Toast.styles.js +3 -3
  136. package/dist/ToggleButton/ToggleButton.styles.js +5 -3
  137. package/dist/ToggleButton/ToggleButton.styles.js.map +1 -1
  138. package/dist/Token/Token.styles.js +5 -5
  139. package/dist/ToolHeader/ToolHeader.styles.js +6 -6
  140. package/dist/ToolLandingPage/ToolLandingPage.styles.js +3 -3
  141. package/dist/Tooltip/Tooltip.styles.js +3 -3
  142. package/dist/Tree/Tree.js +1 -1
  143. package/dist/Tree/Tree.styles.js +10 -10
  144. package/dist/Typeahead/Typeahead.styles.js +3 -3
  145. package/dist/Typography/Typography.styles.js +1 -1
  146. package/dist/Typography/Typography.table.story.js +2 -2
  147. package/dist/_hooks/ClickOutside.js +8 -3
  148. package/dist/_hooks/ClickOutside.js.map +1 -1
  149. package/dist/_hooks/I18n.d.ts +2 -0
  150. package/dist/_locales/en.json +1 -0
  151. package/dist/_locales/pseudo.json +1 -0
  152. package/dist/_storyHelpers_/components/Deprecation.styles.js +1 -1
  153. package/dist/_storyHelpers_/components/StoryGrid.js +3 -3
  154. package/dist/_typedoc/AnchorNavigation/AnchorNavigation.types.json +4 -4
  155. package/dist/_typedoc/Avatar/Avatar.types.json +20 -20
  156. package/dist/_typedoc/AvatarStack/AvatarStack.types.json +25 -25
  157. package/dist/_typedoc/Badge/Badge.types.json +6 -6
  158. package/dist/_typedoc/Banner/Banner.types.json +15 -15
  159. package/dist/_typedoc/Box/Box.types.json +68 -68
  160. package/dist/_typedoc/Breadcrumbs/Breadcrumbs.types.json +10 -10
  161. package/dist/_typedoc/Button/Button.types.json +14 -14
  162. package/dist/_typedoc/Calendar/Calendar.types.json +80 -80
  163. package/dist/_typedoc/Card/Card.types.json +6 -6
  164. package/dist/_typedoc/Checkbox/Checkbox.types.json +8 -8
  165. package/dist/_typedoc/ContactItem/ContactItem.types.json +9 -9
  166. package/dist/_typedoc/DateInput/DateInput.types.json +35 -35
  167. package/dist/_typedoc/DateSelect/DateSelect.types.json +23 -13
  168. package/dist/_typedoc/DetailPage/DetailPage.types.json +5 -5
  169. package/dist/_typedoc/Dropdown/Dropdown.types.json +38 -38
  170. package/dist/_typedoc/DropdownFlyout/DropdownFlyout.types.json +31 -31
  171. package/dist/_typedoc/Dropzone/Dropzone.types.json +44 -44
  172. package/dist/_typedoc/EmptyState/EmptyState.types.json +18 -18
  173. package/dist/_typedoc/FileList/FileList.types.json +9 -9
  174. package/dist/_typedoc/FileSelect/FileSelect.types.json +27 -27
  175. package/dist/_typedoc/FileSelect/GridSource/GridSource.types.json +20 -20
  176. package/dist/_typedoc/FileSelect/LocalSource/LocalSource.types.json +14 -14
  177. package/dist/_typedoc/FileSelect/TreeSource/TreeSource.types.json +9 -9
  178. package/dist/_typedoc/Flex/Flex.types.json +27 -27
  179. package/dist/_typedoc/FlexList/FlexList.types.json +30 -30
  180. package/dist/_typedoc/Form/Form.types.json +780 -760
  181. package/dist/_typedoc/GhostPlaceholder/GhostPlaceholder.types.json +12 -12
  182. package/dist/_typedoc/Grid/Grid.types.json +8 -8
  183. package/dist/_typedoc/GroupSelect/GroupSelect.types.json +54 -54
  184. package/dist/_typedoc/Input/Input.types.json +2 -2
  185. package/dist/_typedoc/Link/Link.types.json +1 -1
  186. package/dist/_typedoc/ListPage/ListPage.types.json +13 -13
  187. package/dist/_typedoc/Menu/Menu.types.json +62 -62
  188. package/dist/_typedoc/MenuImperative/MenuImperative.types.json +84 -84
  189. package/dist/_typedoc/Modal/Modal.types.json +48 -48
  190. package/dist/_typedoc/MultiSelect/MultiSelect.types.json +33 -33
  191. package/dist/_typedoc/NextTile/NextTile.types.json +42 -32
  192. package/dist/_typedoc/Notation/Notation.types.json +4 -4
  193. package/dist/_typedoc/NumberInput/NumberInput.types.json +48 -48
  194. package/dist/_typedoc/OverlayTrigger/OverlayTrigger.types.json +33 -33
  195. package/dist/_typedoc/PageLayout/PageLayout.types.json +28 -28
  196. package/dist/_typedoc/Pagination/Pagination.types.json +7 -7
  197. package/dist/_typedoc/Panel/Panel.types.json +28 -28
  198. package/dist/_typedoc/Pill/Pill.types.json +2 -2
  199. package/dist/_typedoc/PillSelect/PillSelect.types.json +49 -49
  200. package/dist/_typedoc/Popover/Popover.types.json +19 -19
  201. package/dist/_typedoc/ProgressBar/ProgressBar.types.json +7 -7
  202. package/dist/_typedoc/RadioButton/RadioButton.types.json +6 -6
  203. package/dist/_typedoc/Required/Required.types.json +5 -5
  204. package/dist/_typedoc/Search/Search.types.json +18 -18
  205. package/dist/_typedoc/Section/Section.types.json +15 -15
  206. package/dist/_typedoc/SegmentedController/SegmentedController.types.json +21 -21
  207. package/dist/_typedoc/Select/Select.types.json +67 -67
  208. package/dist/_typedoc/SettingsPage/SettingsPage.types.json +10 -10
  209. package/dist/_typedoc/Slider/Slider.types.json +6 -6
  210. package/dist/_typedoc/Spinner/Spinner.types.json +9 -9
  211. package/dist/_typedoc/SplitViewCard/SplitViewCard.types.json +14 -14
  212. package/dist/_typedoc/Table/Table.types.json +114 -104
  213. package/dist/_typedoc/Tabs/Tabs.types.json +21 -21
  214. package/dist/_typedoc/Tearsheet/Tearsheet.types.json +17 -17
  215. package/dist/_typedoc/TextArea/TextArea.types.json +3 -3
  216. package/dist/_typedoc/TextEditor/TextEditor.types.json +11 -11
  217. package/dist/_typedoc/TextEditorOutput/TextEditorOutput.types.json +4 -4
  218. package/dist/_typedoc/Thumbnail/Thumbnail.types.json +23 -23
  219. package/dist/_typedoc/TieredDropdown/TieredDropdown.types.json +43 -43
  220. package/dist/_typedoc/TieredSelect/TieredSelect.types.json +29 -29
  221. package/dist/_typedoc/Tile/Tile.types.json +8 -8
  222. package/dist/_typedoc/Title/Title.types.json +1 -1
  223. package/dist/_typedoc/Toast/Toast.types.json +4 -4
  224. package/dist/_typedoc/ToggleButton/ToggleButton.types.json +4 -4
  225. package/dist/_typedoc/Token/Token.types.json +7 -7
  226. package/dist/_typedoc/ToolHeader/ToolHeader.types.json +10 -10
  227. package/dist/_typedoc/ToolLandingPage/ToolLandingPage.types.json +8 -8
  228. package/dist/_typedoc/Tooltip/Tooltip.types.json +15 -15
  229. package/dist/_typedoc/Tree/Tree.types.json +88 -88
  230. package/dist/_typedoc/Typeahead/Typeahead.types.json +2 -2
  231. package/dist/_typedoc/Typography/Typography.types.json +9 -9
  232. package/dist/_typedoc/_utils/types.json +3 -3
  233. package/dist/_typedoc/a11y-tips.json +1 -1
  234. package/dist/index.d.ts +1 -0
  235. package/dist/index.js +1 -0
  236. package/dist/index.js.map +1 -1
  237. package/package.json +16 -16
@@ -46,7 +46,7 @@ var getSlideOutAnimation = function getSlideOutAnimation($placement) {
46
46
  };
47
47
  export var StyledTearsheetContent = /*#__PURE__*/styled.div.withConfig({
48
48
  displayName: "StyledTearsheetContent",
49
- componentId: "core-12_47_1__sc-ljrxoq-0"
49
+ componentId: "core-12_48_1__sc-ljrxoq-0"
50
50
  })(["display:flex;z-index:2;width:100%;", " ", " ", " ", ""], function (_ref) {
51
51
  var $open = _ref.$open,
52
52
  $placement = _ref.$placement;
@@ -66,7 +66,7 @@ export var StyledTearsheetContent = /*#__PURE__*/styled.div.withConfig({
66
66
  export var minScrimSize = spacing.xxl * 3;
67
67
  export var StyledTearsheetBody = /*#__PURE__*/styled.div.withConfig({
68
68
  displayName: "StyledTearsheetBody",
69
- componentId: "core-12_47_1__sc-ljrxoq-1"
69
+ componentId: "core-12_48_1__sc-ljrxoq-1"
70
70
  })(["display:flex;overflow-y:auto;flex-direction:column;background-color:", ";&:focus-visible{", "}", ""], colors.white, getGapOutlineFocus('inside'), function (_ref5) {
71
71
  var $block = _ref5.$block,
72
72
  $placement = _ref5.$placement,
@@ -78,7 +78,7 @@ var zoomIn = /*#__PURE__*/keyframes(["from{transform:scale(0);}to{transform:scal
78
78
  var zoomOut = /*#__PURE__*/keyframes(["from{transform:scale(1);}to{transform:scale(0);}"]);
79
79
  export var StyledScrimContainer = /*#__PURE__*/styled.div.withConfig({
80
80
  displayName: "StyledScrimContainer",
81
- componentId: "core-12_47_1__sc-ljrxoq-2"
81
+ componentId: "core-12_48_1__sc-ljrxoq-2"
82
82
  })(["", ""], function (_ref6) {
83
83
  var $placement = _ref6.$placement;
84
84
  var minSizeProp = ['top', 'bottom'].includes($placement) ? 'min-height' : 'min-width';
@@ -86,7 +86,7 @@ export var StyledScrimContainer = /*#__PURE__*/styled.div.withConfig({
86
86
  });
87
87
  export var StyledButtonContainer = /*#__PURE__*/styled.div.withConfig({
88
88
  displayName: "StyledButtonContainer",
89
- componentId: "core-12_47_1__sc-ljrxoq-3"
89
+ componentId: "core-12_48_1__sc-ljrxoq-3"
90
90
  })(["", ""], function (_ref7) {
91
91
  var $placement = _ref7.$placement;
92
92
  switch ($placement) {
@@ -101,7 +101,7 @@ export var StyledButtonContainer = /*#__PURE__*/styled.div.withConfig({
101
101
  });
102
102
  export var StyledButtonCard = /*#__PURE__*/styled(Card).withConfig({
103
103
  displayName: "StyledButtonCard",
104
- componentId: "core-12_47_1__sc-ljrxoq-4"
104
+ componentId: "core-12_48_1__sc-ljrxoq-4"
105
105
  })(["display:inline-flex;margin:", "px;", " ", " ", ""], spacing.xl, function (_ref8) {
106
106
  var $open = _ref8.$open;
107
107
  return $open ? css(["transform:scale(1);"]) : css(["transform:scale(0);"]);
@@ -3,7 +3,7 @@ import { getInputStyles } from '../Input/Input.styles';
3
3
  import { spacing } from '../_styles/spacing';
4
4
  export var StyledTextArea = /*#__PURE__*/styled.textarea.withConfig({
5
5
  displayName: "StyledTextArea",
6
- componentId: "core-12_47_1__sc-u5mow1-0"
6
+ componentId: "core-12_48_1__sc-u5mow1-0"
7
7
  })(["", ";height:auto;min-height:64px;padding:", "px ", "px;resize:", ";"], getInputStyles, spacing.sm, spacing.md, function (_ref) {
8
8
  var _ref$$resize = _ref.$resize,
9
9
  $resize = _ref$$resize === void 0 ? 'both' : _ref$$resize;
@@ -1,6 +1,6 @@
1
1
  import styled from 'styled-components';
2
2
  export var StyledEditor = /*#__PURE__*/styled.div.withConfig({
3
3
  displayName: "StyledEditor",
4
- componentId: "core-12_47_1__sc-1lje1b0-0"
4
+ componentId: "core-12_48_1__sc-1lje1b0-0"
5
5
  })(["> .tox-tinymce{border:none;}"]);
6
6
  //# sourceMappingURL=TextEditorOutput.styles.js.map
@@ -1,6 +1,8 @@
1
1
  import type React from 'react';
2
2
  import type { LayoutVariant, ThumbnailProps } from './Thumbnail.types';
3
- export declare const useThumbnail: ({ selected, disabled, clickable, focused, hasCaptionPlaceholder, src, filename: filename_, size, label, name, caption, onChange, value, ...props }: ThumbnailProps<'checkbox'> | ThumbnailProps<'figure'> | ThumbnailProps<undefined>) => {
3
+ export declare const useThumbnail: ({ selected, disabled, clickable, focused, hasCaptionPlaceholder, src, filename: filename_, size, label, error, name, caption, onChange, value, ...props }: ThumbnailProps<'checkbox'> | ThumbnailProps<'figure'> | ThumbnailProps<undefined>) => {
4
+ error: string | boolean;
5
+ errorAriaDescription: string | undefined;
4
6
  label: string;
5
7
  caption: string;
6
8
  selected: boolean;
@@ -289,7 +291,6 @@ export declare const useThumbnail: ({ selected, disabled, clickable, focused, ha
289
291
  onTransitionEnd?: React.TransitionEventHandler<HTMLElement> | undefined;
290
292
  onTransitionEndCapture?: React.TransitionEventHandler<HTMLElement> | undefined;
291
293
  alt: string;
292
- error?: boolean | undefined;
293
294
  variant?: import("./ThumbnailDocumentIcon").ThumbnailDocumentIconVariant | undefined;
294
295
  tabIndex?: number | undefined;
295
296
  qa?: import("./Thumbnail.types").QaTags | undefined;
@@ -299,6 +300,8 @@ export declare const useThumbnail: ({ selected, disabled, clickable, focused, ha
299
300
  style?: React.CSSProperties | undefined;
300
301
  ref?: ((instance: HTMLElement | null) => void) | React.RefObject<HTMLElement> | null | undefined;
301
302
  } | {
303
+ error: string | boolean;
304
+ errorAriaDescription: string | undefined;
302
305
  label: string;
303
306
  caption: string;
304
307
  selected: boolean;
@@ -587,7 +590,6 @@ export declare const useThumbnail: ({ selected, disabled, clickable, focused, ha
587
590
  onTransitionEnd?: React.TransitionEventHandler<HTMLElement> | undefined;
588
591
  onTransitionEndCapture?: React.TransitionEventHandler<HTMLElement> | undefined;
589
592
  alt: string;
590
- error?: boolean | undefined;
591
593
  variant?: import("./ThumbnailDocumentIcon").ThumbnailDocumentIconVariant | undefined;
592
594
  tabIndex?: number | undefined;
593
595
  qa?: import("./Thumbnail.types").QaTags | undefined;
@@ -597,6 +599,8 @@ export declare const useThumbnail: ({ selected, disabled, clickable, focused, ha
597
599
  style?: React.CSSProperties | undefined;
598
600
  ref?: ((instance: HTMLElement | null) => void) | React.RefObject<HTMLElement> | null | undefined;
599
601
  } | {
602
+ error: string | boolean;
603
+ errorAriaDescription: string | undefined;
600
604
  label: string;
601
605
  caption: string;
602
606
  selected: boolean;
@@ -909,7 +913,6 @@ export declare const useThumbnail: ({ selected, disabled, clickable, focused, ha
909
913
  readOnly?: boolean | undefined;
910
914
  required?: boolean | undefined;
911
915
  alt: string;
912
- error?: boolean | undefined;
913
916
  variant?: import("./ThumbnailDocumentIcon").ThumbnailDocumentIconVariant | undefined;
914
917
  tabIndex?: number | undefined;
915
918
  qa?: import("./Thumbnail.types").QaTags | undefined;
@@ -919,6 +922,8 @@ export declare const useThumbnail: ({ selected, disabled, clickable, focused, ha
919
922
  style?: React.CSSProperties | undefined;
920
923
  ref?: ((instance: HTMLInputElement | null) => void) | React.RefObject<HTMLInputElement> | null | undefined;
921
924
  } | {
925
+ error: string | boolean;
926
+ errorAriaDescription: string | undefined;
922
927
  label: string;
923
928
  caption: string;
924
929
  selected: boolean;
@@ -1231,7 +1236,6 @@ export declare const useThumbnail: ({ selected, disabled, clickable, focused, ha
1231
1236
  readOnly?: boolean | undefined;
1232
1237
  required?: boolean | undefined;
1233
1238
  alt: string;
1234
- error?: boolean | undefined;
1235
1239
  variant?: import("./ThumbnailDocumentIcon").ThumbnailDocumentIconVariant | undefined;
1236
1240
  tabIndex?: number | undefined;
1237
1241
  qa?: import("./Thumbnail.types").QaTags | undefined;
@@ -1241,6 +1245,8 @@ export declare const useThumbnail: ({ selected, disabled, clickable, focused, ha
1241
1245
  style?: React.CSSProperties | undefined;
1242
1246
  ref?: ((instance: HTMLInputElement | null) => void) | React.RefObject<HTMLInputElement> | null | undefined;
1243
1247
  } | {
1248
+ error: string | boolean;
1249
+ errorAriaDescription: string | undefined;
1244
1250
  label: string;
1245
1251
  caption: string;
1246
1252
  selected: boolean;
@@ -1269,7 +1275,6 @@ export declare const useThumbnail: ({ selected, disabled, clickable, focused, ha
1269
1275
  as: React.ElementType<any, keyof React.JSX.IntrinsicElements>;
1270
1276
  role?: undefined;
1271
1277
  alt: string;
1272
- error?: boolean | undefined;
1273
1278
  variant?: import("./ThumbnailDocumentIcon").ThumbnailDocumentIconVariant | undefined;
1274
1279
  tabIndex?: number | undefined;
1275
1280
  qa?: import("./Thumbnail.types").QaTags | undefined;
@@ -1279,6 +1284,8 @@ export declare const useThumbnail: ({ selected, disabled, clickable, focused, ha
1279
1284
  style?: React.CSSProperties | undefined;
1280
1285
  ref?: ((instance: HTMLDivElement | null) => void) | React.RefObject<HTMLDivElement> | null | undefined;
1281
1286
  } | {
1287
+ error: string | boolean;
1288
+ errorAriaDescription: string | undefined;
1282
1289
  label: string;
1283
1290
  caption: string;
1284
1291
  selected: boolean;
@@ -1307,7 +1314,6 @@ export declare const useThumbnail: ({ selected, disabled, clickable, focused, ha
1307
1314
  as: string;
1308
1315
  role?: undefined;
1309
1316
  alt: string;
1310
- error?: boolean | undefined;
1311
1317
  variant?: import("./ThumbnailDocumentIcon").ThumbnailDocumentIconVariant | undefined;
1312
1318
  tabIndex?: number | undefined;
1313
1319
  qa?: import("./Thumbnail.types").QaTags | undefined;
@@ -1,5 +1,5 @@
1
1
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
- var _excluded = ["selected", "disabled", "clickable", "focused", "hasCaptionPlaceholder", "src", "filename", "size", "label", "name", "caption", "onChange", "value"];
2
+ var _excluded = ["selected", "disabled", "clickable", "focused", "hasCaptionPlaceholder", "src", "filename", "size", "label", "error", "name", "caption", "onChange", "value"];
3
3
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
4
4
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
5
5
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
@@ -11,7 +11,8 @@ import { useCheckbox } from '@react-aria/checkbox';
11
11
  import { useFocusRing } from '@react-aria/focus';
12
12
  import { useRef } from 'react';
13
13
  import { useToggleState } from 'react-stately';
14
- import { getIsFilePreviewableAsImage } from './Thumbnail.utils';
14
+ import { useI18nContext } from '../_hooks/I18n';
15
+ import { getIsFilePreviewableAsImage, resolveThumbnailErrorLabel } from './Thumbnail.utils';
15
16
  var defaultSize = 'lg';
16
17
  export var useThumbnail = function useThumbnail(_ref) {
17
18
  var selected = _ref.selected,
@@ -29,12 +30,15 @@ export var useThumbnail = function useThumbnail(_ref) {
29
30
  size = _ref$size === void 0 ? defaultSize : _ref$size,
30
31
  _ref$label = _ref.label,
31
32
  label = _ref$label === void 0 ? '' : _ref$label,
33
+ _ref$error = _ref.error,
34
+ error = _ref$error === void 0 ? false : _ref$error,
32
35
  name = _ref.name,
33
36
  _ref$caption = _ref.caption,
34
37
  caption = _ref$caption === void 0 ? '' : _ref$caption,
35
38
  onChange = _ref.onChange,
36
39
  value = _ref.value,
37
40
  props = _objectWithoutProperties(_ref, _excluded);
41
+ var i18n = useI18nContext();
38
42
  var a11yProps = props.role === 'figure' ? {
39
43
  as: 'figure'
40
44
  } : {
@@ -53,14 +57,18 @@ export var useThumbnail = function useThumbnail(_ref) {
53
57
  var shouldUsePlaceholder = isFileOrNonPreviewableImage || !src;
54
58
  var filename = filename_ !== null && filename_ !== void 0 ? filename_ : isFileOrNonPreviewableImage ? src.name : caption;
55
59
  var ariaLabel = label && caption ? "".concat(label, " ").concat(caption) : caption || label;
56
- var _useCheckbox = useCheckbox({
60
+ var errorAriaDescription = error ? resolveThumbnailErrorLabel(i18n, error) : undefined;
61
+ var _useCheckbox = useCheckbox(_objectSpread(_objectSpread({
57
62
  isSelected: selected,
58
63
  isDisabled: disabled,
59
- 'aria-label': ariaLabel,
64
+ 'aria-label': ariaLabel
65
+ }, error ? {
66
+ 'aria-description': errorAriaDescription
67
+ } : {}), {}, {
60
68
  name: name,
61
69
  onChange: onChange,
62
70
  value: value
63
- }, toggleState, inputRef),
71
+ }), toggleState, inputRef),
64
72
  inputProps = _useCheckbox.inputProps;
65
73
  var _useFocusRing = useFocusRing(),
66
74
  isFocusVisible = _useFocusRing.isFocusVisible,
@@ -68,6 +76,8 @@ export var useThumbnail = function useThumbnail(_ref) {
68
76
  return _objectSpread(_objectSpread(_objectSpread({
69
77
  alt: props.alt || props.alt === '' ? props.alt : caption || label
70
78
  }, props), a11yProps), {}, {
79
+ error: error,
80
+ errorAriaDescription: errorAriaDescription,
71
81
  label: label,
72
82
  caption: caption,
73
83
  selected: toggleState.isSelected,
@@ -1 +1 @@
1
- {"version":3,"file":"Thumbnail.hooks.js","names":["useCheckbox","useFocusRing","useRef","useToggleState","getIsFilePreviewableAsImage","defaultSize","useThumbnail","_ref","selected","_ref$disabled","disabled","_ref$clickable","clickable","_ref$focused","focused","_ref$hasCaptionPlaceh","hasCaptionPlaceholder","src","filename_","filename","_ref$size","size","_ref$label","label","name","_ref$caption","caption","onChange","value","props","_objectWithoutProperties","_excluded","a11yProps","role","as","inputRef","toggleState","defaultSelected","layout","isFile","File","isImageURL","canPreviewFileAsImage","isFileOrNonPreviewableImage","shouldUsePlaceholder","ariaLabel","concat","_useCheckbox","isSelected","isDisabled","inputProps","_useFocusRing","isFocusVisible","focusProps","_objectSpread","alt"],"sources":["../../src/Thumbnail/Thumbnail.hooks.tsx"],"sourcesContent":["import { useCheckbox } from '@react-aria/checkbox'\nimport { useFocusRing } from '@react-aria/focus'\nimport type React from 'react'\nimport { useRef } from 'react'\nimport { useToggleState } from 'react-stately'\nimport type { LayoutVariant, ThumbnailProps } from './Thumbnail.types'\nimport { getIsFilePreviewableAsImage } from './Thumbnail.utils'\n\nconst defaultSize = 'lg'\n\nexport const useThumbnail = ({\n selected,\n disabled = false,\n clickable = true,\n focused = false,\n hasCaptionPlaceholder = false,\n src,\n filename: filename_,\n size = defaultSize,\n label = '',\n // @ts-ignore Checkbox only\n name,\n caption = '',\n // @ts-ignore Checkbox only\n onChange,\n // @ts-ignore Checkbox only\n value,\n ...props\n}:\n | ThumbnailProps<'checkbox'>\n | ThumbnailProps<'figure'>\n | ThumbnailProps<undefined>) => {\n const a11yProps =\n props.role === 'figure'\n ? { as: 'figure' as React.ElementType }\n : { as: 'div' }\n const inputRef = useRef<HTMLInputElement>(null)\n const toggleState = useToggleState({\n defaultSelected: selected,\n onChange,\n })\n const layout: LayoutVariant = size === 'sm' ? 'row' : 'column'\n const isFile = src instanceof File\n const isImageURL = typeof src === 'string'\n const canPreviewFileAsImage = getIsFilePreviewableAsImage(src)\n const isFileOrNonPreviewableImage = isFile && !canPreviewFileAsImage\n const shouldUsePlaceholder = isFileOrNonPreviewableImage || !src\n const filename =\n filename_ ?? (isFileOrNonPreviewableImage ? (src as File).name : caption)\n const ariaLabel = label && caption ? `${label} ${caption}` : caption || label\n const { inputProps } = useCheckbox(\n {\n isSelected: selected,\n isDisabled: disabled,\n 'aria-label': ariaLabel,\n name,\n onChange,\n value,\n },\n toggleState,\n inputRef\n )\n const { isFocusVisible, focusProps } = useFocusRing()\n\n return {\n alt: props.alt || props.alt === '' ? props.alt : caption || label,\n ...props,\n ...a11yProps,\n label,\n caption,\n selected: toggleState.isSelected,\n disabled,\n clickable,\n focused,\n isImageURL,\n hasCaptionPlaceholder,\n shouldUsePlaceholder,\n src,\n filename,\n size,\n layout,\n inputRef,\n inputProps,\n /**\n * Appeared 23-1-18 https://github.com/procore/core/pull/12250\n * Possible issue with types from React Aria during dependency update\n * > The inferred type of 'useThumbnail' cannot be named without a\n * > reference to '@react-aria/focus/node_modules/@react-types/shared'.\n * > This is likely not portable. A type annotation is necessary.\n */\n focusProps: focusProps as React.HTMLAttributes<HTMLDivElement>,\n isFocusVisible,\n toggleState,\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Thumbnail.hooks.js","names":["useCheckbox","useFocusRing","useRef","useToggleState","useI18nContext","getIsFilePreviewableAsImage","resolveThumbnailErrorLabel","defaultSize","useThumbnail","_ref","selected","_ref$disabled","disabled","_ref$clickable","clickable","_ref$focused","focused","_ref$hasCaptionPlaceh","hasCaptionPlaceholder","src","filename_","filename","_ref$size","size","_ref$label","label","_ref$error","error","name","_ref$caption","caption","onChange","value","props","_objectWithoutProperties","_excluded","i18n","a11yProps","role","as","inputRef","toggleState","defaultSelected","layout","isFile","File","isImageURL","canPreviewFileAsImage","isFileOrNonPreviewableImage","shouldUsePlaceholder","ariaLabel","concat","errorAriaDescription","undefined","_useCheckbox","_objectSpread","isSelected","isDisabled","inputProps","_useFocusRing","isFocusVisible","focusProps","alt"],"sources":["../../src/Thumbnail/Thumbnail.hooks.tsx"],"sourcesContent":["import { useCheckbox } from '@react-aria/checkbox'\nimport { useFocusRing } from '@react-aria/focus'\nimport type React from 'react'\nimport { useRef } from 'react'\nimport { useToggleState } from 'react-stately'\nimport { useI18nContext } from '../_hooks/I18n'\nimport type { LayoutVariant, ThumbnailProps } from './Thumbnail.types'\nimport {\n getIsFilePreviewableAsImage,\n resolveThumbnailErrorLabel,\n} from './Thumbnail.utils'\n\nconst defaultSize = 'lg'\n\nexport const useThumbnail = ({\n selected,\n disabled = false,\n clickable = true,\n focused = false,\n hasCaptionPlaceholder = false,\n src,\n filename: filename_,\n size = defaultSize,\n label = '',\n error = false,\n // @ts-ignore Checkbox only\n name,\n caption = '',\n // @ts-ignore Checkbox only\n onChange,\n // @ts-ignore Checkbox only\n value,\n ...props\n}:\n | ThumbnailProps<'checkbox'>\n | ThumbnailProps<'figure'>\n | ThumbnailProps<undefined>) => {\n const i18n = useI18nContext()\n const a11yProps =\n props.role === 'figure'\n ? { as: 'figure' as React.ElementType }\n : { as: 'div' }\n const inputRef = useRef<HTMLInputElement>(null)\n const toggleState = useToggleState({\n defaultSelected: selected,\n onChange,\n })\n const layout: LayoutVariant = size === 'sm' ? 'row' : 'column'\n const isFile = src instanceof File\n const isImageURL = typeof src === 'string'\n const canPreviewFileAsImage = getIsFilePreviewableAsImage(src)\n const isFileOrNonPreviewableImage = isFile && !canPreviewFileAsImage\n const shouldUsePlaceholder = isFileOrNonPreviewableImage || !src\n const filename =\n filename_ ?? (isFileOrNonPreviewableImage ? (src as File).name : caption)\n const ariaLabel = label && caption ? `${label} ${caption}` : caption || label\n const errorAriaDescription = error\n ? resolveThumbnailErrorLabel(i18n, error)\n : undefined\n const { inputProps } = useCheckbox(\n {\n isSelected: selected,\n isDisabled: disabled,\n 'aria-label': ariaLabel,\n ...(error ? { 'aria-description': errorAriaDescription } : {}),\n name,\n onChange,\n value,\n },\n toggleState,\n inputRef\n )\n const { isFocusVisible, focusProps } = useFocusRing()\n\n return {\n alt: props.alt || props.alt === '' ? props.alt : caption || label,\n ...props,\n ...a11yProps,\n error,\n errorAriaDescription,\n label,\n caption,\n selected: toggleState.isSelected,\n disabled,\n clickable,\n focused,\n isImageURL,\n hasCaptionPlaceholder,\n shouldUsePlaceholder,\n src,\n filename,\n size,\n layout,\n inputRef,\n inputProps,\n /**\n * Appeared 23-1-18 https://github.com/procore/core/pull/12250\n * Possible issue with types from React Aria during dependency update\n * > The inferred type of 'useThumbnail' cannot be named without a\n * > reference to '@react-aria/focus/node_modules/@react-types/shared'.\n * > This is likely not portable. A type annotation is necessary.\n */\n focusProps: focusProps as React.HTMLAttributes<HTMLDivElement>,\n isFocusVisible,\n toggleState,\n }\n}\n"],"mappings":"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"}
@@ -117,7 +117,8 @@ var BasePlaceholder = /*#__PURE__*/React.forwardRef(function BasePlaceholder(pro
117
117
  $size: thumbnail.size,
118
118
  tabIndex: 0,
119
119
  role: "group",
120
- "aria-label": ariaLabel
120
+ "aria-label": ariaLabel,
121
+ "aria-description": thumbnail.errorAriaDescription
121
122
  }, wrapperProps), /*#__PURE__*/React.createElement(StyledPlaceholderThumbnail, {
122
123
  $focused: thumbnail.focused,
123
124
  $disabled: thumbnail.disabled,
@@ -169,7 +170,8 @@ var FigurePlaceholder = /*#__PURE__*/React.forwardRef(function FigurePlaceholder
169
170
  $size: thumbnail.size,
170
171
  tabIndex: 0,
171
172
  role: "group",
172
- "aria-label": ariaLabel
173
+ "aria-label": ariaLabel,
174
+ "aria-description": thumbnail.errorAriaDescription
173
175
  }, wrapperProps), /*#__PURE__*/React.createElement(StyledPlaceholderThumbnail, {
174
176
  $focused: thumbnail.focused,
175
177
  $disabled: thumbnail.disabled,
@@ -333,7 +335,8 @@ var BaseThumbnail = /*#__PURE__*/React.forwardRef(function BaseThumbnail(props,
333
335
  $size: thumbnail.size,
334
336
  tabIndex: 0,
335
337
  role: "group",
336
- "aria-label": ariaLabel
338
+ "aria-label": ariaLabel,
339
+ "aria-description": thumbnail.errorAriaDescription
337
340
  }, wrapperProps), /*#__PURE__*/React.createElement(StyledImageThumbnail, {
338
341
  $focused: thumbnail.focused,
339
342
  $disabled: thumbnail.disabled,
@@ -384,7 +387,8 @@ var FigureThumbnail = /*#__PURE__*/React.forwardRef(function FigureThumbnail(pro
384
387
  $size: thumbnail.size,
385
388
  tabIndex: 0,
386
389
  role: "group",
387
- "aria-label": ariaLabel
390
+ "aria-label": ariaLabel,
391
+ "aria-description": thumbnail.errorAriaDescription
388
392
  }, /*#__PURE__*/React.createElement(StyledImageThumbnail, {
389
393
  ref: ref,
390
394
  $focused: thumbnail.focused,
@@ -1 +1 @@
1
- {"version":3,"file":"Thumbnail.js","names":["mergeProps","VisuallyHidden","React","useState","Tooltip","useI18nContext","addSubcomponents","mergeRefs","useThumbnail","StyledFileIcon","StyledImageThumbnail","StyledImageThumbnailImage","StyledImageThumbnailOverlay","StyledLabel","StyledLabelText","StyledPlaceholderThumbnail","StyledThumbnailFigCaption","StyledThumbnailWrapper","StyledTickIcon","getThumbnailAriaLabel","getThumbnailVariantForFilename","ThumbnailCaption","ThumbnailPreview","defaultSize","TickIcon","_ref","_ref$size","size","selected","i18n","createElement","t","undefined","focusable","$selected","$size","width","height","viewBox","fill","xmlns","d","fillRule","clipRule","FigCaption","_ref2","label","disabled","$color","Label","_ref3","intent","weight","ThumbnailCaptionTooltip","_ref4","caption","captionOverflowing","children","overlay","Content","placement","trigger","BasePlaceholder","forwardRef","props","ref","_props$filename","_thumbnail$qa","thumbnail","_useState","_useState2","_slicedToArray","setCaptionOverflowing","hasCaptionPlaceholder","_disabled","wrapperProps","_objectWithoutProperties","_excluded","ariaLabel","_extends","$layout","layout","tabIndex","role","$focused","focused","$disabled","$clickable","clickable","toggleState","isSelected","variant","filename","error","qa","multiline","onCaptionOverflowChange","defaultValue","FigurePlaceholder","_props$filename2","_thumbnail$qa2","_useState3","_useState4","_role","_excluded2","as","CheckboxPlaceholder","_ref5","_props$filename3","_thumbnail$qa3","name","onChange","_qa","value","props_","_excluded3","_objectSpread","isDisabled","checked","defaultSelected","defaultChecked","_useState5","_useState6","src","_excluded4","isInputFocused","document","activeElement","inputRef","current","preventSpaceOnDisabledThumbnail","e","key","preventDefault","useEffect","focus","onClick","_thumbnail$onClick","toggle","call","ariaHidden","type","inputProps","focusProps","onKeyDown","PlaceholderInner","BaseThumbnail","_thumbnail$filename","_thumbnail$qa4","_useState7","_useState8","_excluded5","isImageURL","shouldUsePlaceholder","alt","file","FigureThumbnail","_thumbnail$filename2","_thumbnail$qa5","_useState9","_useState0","CheckboxThumbnail","_ref6","_thumbnail$filename3","_thumbnail$qa6","_excluded6","_useState1","_useState10","_excluded7","_thumbnail$onClick2","ThumbnailInner","isFile","File","console","warn","Thumbnail_","Placeholder","displayName","Thumbnail"],"sources":["../../src/Thumbnail/Thumbnail.tsx"],"sourcesContent":["import { mergeProps } from '@react-aria/utils'\nimport { VisuallyHidden } from '@react-aria/visually-hidden'\nimport React, { useState } from 'react'\nimport { Tooltip } from '../Tooltip'\nimport { useI18nContext } from '../_hooks/I18n'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport { mergeRefs } from '../_utils/mergeRefs'\nimport { useThumbnail } from './Thumbnail.hooks'\nimport {\n StyledFileIcon,\n StyledImageThumbnail,\n StyledImageThumbnailImage,\n StyledImageThumbnailOverlay,\n StyledLabel,\n StyledLabelText,\n StyledPlaceholderThumbnail,\n StyledThumbnailFigCaption,\n StyledThumbnailWrapper,\n StyledTickIcon,\n} from './Thumbnail.styles'\nimport type {\n BasePlaceholderProps,\n BaseThumbnailProps,\n LabelProps,\n PlaceholderProps,\n ThumbnailProps,\n ThumbnailRef,\n ThumbnailRoles,\n ThumbnailRoleType,\n TickIconProps,\n} from './Thumbnail.types'\nimport {\n getThumbnailAriaLabel,\n getThumbnailVariantForFilename,\n} from './Thumbnail.utils'\nimport { ThumbnailCaption } from './ThumbnailCaption'\nimport { ThumbnailPreview } from './ThumbnailPreview'\n\nconst defaultSize = 'lg'\n\nfunction TickIcon({ size = defaultSize, selected }: TickIconProps) {\n const i18n = useI18nContext()\n return (\n <StyledTickIcon\n aria-hidden={selected ? false : true}\n aria-label={selected ? i18n.t('core.thumbnail.checked') : undefined}\n // in IE11, all svg element are focusable by default\n focusable={false}\n $selected={selected}\n $size={size}\n width=\"26\"\n height=\"26\"\n viewBox=\"0 0 26 26\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M1 13C1 6.37258 6.37258 1 13 1C19.6274 1 25 6.37258 25 13C25 19.6274 19.6274 25 13 25C6.37258 25 1 19.6274 1 13Z\"\n fill=\"white\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M11.167 17.5L7 13.459L8.6155 12.0535L11.167 14.5285L17.3845 8.5L19 9.9055L11.167 17.5ZM13 1C6.3715 1 1 6.373 1 13C1 19.627 6.3715 25 13 25C19.627 25 25 19.627 25 13C25 6.373 19.627 1 13 1Z\"\n fill=\"hsl(218,75%,50%)\"\n />\n <path\n d=\"M13 24C6.92487 24 2 19.0751 2 13H0C0 20.1797 5.8203 26 13 26V24ZM24 13C24 19.0751 19.0751 24 13 24V26C20.1797 26 26 20.1797 26 13H24ZM13 2C19.0751 2 24 6.92487 24 13H26C26 5.8203 20.1797 0 13 0V2ZM13 0C5.8203 0 0 5.8203 0 13H2C2 6.92487 6.92487 2 13 2V0Z\"\n fill=\"white\"\n />\n </StyledTickIcon>\n )\n}\n\nfunction FigCaption({ label, disabled }: LabelProps) {\n if (!label) {\n return null\n }\n\n return (\n <StyledThumbnailFigCaption $color={disabled ? 'gray70' : 'gray15'}>\n {label}\n </StyledThumbnailFigCaption>\n )\n}\n\nfunction Label({ label }: LabelProps) {\n if (!label) {\n return null\n }\n\n return (\n <StyledLabel>\n <StyledLabelText intent=\"small\" weight=\"bold\">\n {label}\n </StyledLabelText>\n </StyledLabel>\n )\n}\n\nfunction ThumbnailCaptionTooltip({\n caption,\n captionOverflowing,\n children,\n}: {\n caption: string | undefined\n captionOverflowing: boolean\n children: React.ReactNode\n}) {\n return (\n <Tooltip\n overlay={<Tooltip.Content>{caption}</Tooltip.Content>}\n placement=\"bottom\"\n trigger={captionOverflowing && caption ? ['hover', 'focus'] : 'none'}\n >\n {children}\n </Tooltip>\n )\n}\n\nconst BasePlaceholder = React.forwardRef<\n HTMLDivElement,\n PlaceholderProps<undefined>\n>(function BasePlaceholder(\n props: PlaceholderProps<undefined>,\n ref: ThumbnailRef<undefined>\n) {\n const i18n = useI18nContext()\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const {\n hasCaptionPlaceholder,\n caption,\n label,\n disabled: _disabled,\n ...wrapperProps\n } = props\n const ariaLabel = getThumbnailAriaLabel(\n i18n,\n thumbnail.label,\n thumbnail.caption\n )\n\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n ref={ref}\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n tabIndex={0}\n role=\"group\"\n aria-label={ariaLabel}\n {...wrapperProps}\n >\n <StyledPlaceholderThumbnail\n $focused={thumbnail.focused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n >\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n <StyledFileIcon\n variant={\n props.variant ||\n getThumbnailVariantForFilename(props.filename ?? '')\n }\n />\n {thumbnail.size === 'lg' && (\n <Label label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledPlaceholderThumbnail>\n <ThumbnailCaption\n error={thumbnail.error}\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n {thumbnail.disabled && !thumbnail.clickable && (\n <VisuallyHidden>\n {i18n.t('core.thumbnail.unavailable', {\n defaultValue: 'Content is unavailable',\n })}\n </VisuallyHidden>\n )}\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nconst FigurePlaceholder = React.forwardRef<\n HTMLElement,\n PlaceholderProps<'figure'>\n>(function FigurePlaceholder(\n props: PlaceholderProps<'figure'>,\n ref: ThumbnailRef<'figure'>\n) {\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const {\n hasCaptionPlaceholder,\n caption,\n label,\n disabled: _disabled,\n role: _role,\n ...wrapperProps\n } = props\n const i18n = useI18nContext()\n const ariaLabel = getThumbnailAriaLabel(\n i18n,\n thumbnail.label,\n thumbnail.caption\n )\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n ref={ref}\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n tabIndex={0}\n role=\"group\"\n aria-label={ariaLabel}\n {...wrapperProps}\n >\n <StyledPlaceholderThumbnail\n $focused={thumbnail.focused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n as={thumbnail.as}\n >\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n <StyledFileIcon\n variant={\n props.variant ||\n getThumbnailVariantForFilename(props.filename ?? '')\n }\n />\n {thumbnail.size === 'lg' && (\n <FigCaption label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledPlaceholderThumbnail>\n <ThumbnailCaption\n error={thumbnail.error}\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n {thumbnail.disabled && !thumbnail.clickable && (\n <VisuallyHidden>\n {i18n.t('core.thumbnail.unavailable', {\n defaultValue: 'Content is unavailable',\n })}\n </VisuallyHidden>\n )}\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nconst CheckboxPlaceholder = React.forwardRef<\n HTMLInputElement,\n ThumbnailProps<'checkbox'>\n>(function CheckboxPlaceholder(\n { children, as, label, name, onChange, role, qa: _qa, value, ...props_ },\n ref\n) {\n const props = {\n ...props_,\n as,\n label,\n onChange,\n role,\n value,\n isDisabled: props_.disabled,\n isSelected: props_.checked,\n defaultSelected: props_.defaultChecked,\n }\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const { caption, hasCaptionPlaceholder, src, ...wrapperProps } = props_\n const isInputFocused = document.activeElement === thumbnail.inputRef.current\n\n const i18n = useI18nContext()\n const ariaLabel =\n getThumbnailAriaLabel(i18n, thumbnail.label, thumbnail.caption) ||\n i18n.t('core.thumbnail.select')\n\n const preventSpaceOnDisabledThumbnail = (e: React.KeyboardEvent) => {\n if (e.key === ' ' && thumbnail.disabled) {\n e.preventDefault()\n }\n }\n\n React.useEffect(() => {\n if (props.focused && thumbnail.inputRef.current) {\n thumbnail.inputRef.current.focus()\n }\n }, [props.focused, thumbnail.inputRef])\n\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n {...wrapperProps}\n onClick={(e: React.MouseEvent) => {\n if (!thumbnail.disabled) {\n thumbnail.toggleState.toggle()\n thumbnail.onClick?.(e)\n }\n }}\n >\n <StyledPlaceholderThumbnail\n aria-hidden\n $focused={thumbnail.focused || isInputFocused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n >\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n <StyledFileIcon\n variant={\n props.variant ||\n getThumbnailVariantForFilename(props.filename ?? '')\n }\n />\n {thumbnail.size === 'lg' && (\n <Label label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledPlaceholderThumbnail>\n <ThumbnailCaption\n ariaHidden\n error={thumbnail.error}\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n <VisuallyHidden>\n <input\n type=\"checkbox\"\n ref={mergeRefs(thumbnail.inputRef, ref)}\n aria-label={ariaLabel}\n {...mergeProps(thumbnail.inputProps, thumbnail.focusProps)}\n disabled={thumbnail.disabled}\n onKeyDown={preventSpaceOnDisabledThumbnail}\n />\n </VisuallyHidden>\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nfunction PlaceholderInner(\n props: PlaceholderProps<ThumbnailRoleType>,\n ref: ThumbnailRef<ThumbnailRoleType>\n) {\n switch (props.role) {\n case 'checkbox': {\n return (\n <CheckboxPlaceholder\n ref={ref as React.Ref<HTMLInputElement>}\n {...(props as PlaceholderProps<'checkbox'>)}\n />\n )\n }\n case 'figure': {\n return (\n <FigurePlaceholder\n ref={ref as React.Ref<HTMLElement>}\n {...(props as PlaceholderProps<'figure'>)}\n />\n )\n }\n default: {\n return (\n <BasePlaceholder\n ref={ref as React.Ref<HTMLDivElement>}\n {...(props as PlaceholderProps<undefined>)}\n />\n )\n }\n }\n}\n\nconst BaseThumbnail = React.forwardRef<\n HTMLDivElement,\n ThumbnailProps<undefined>\n>(function BaseThumbnail(\n props: ThumbnailProps<undefined>,\n ref: ThumbnailRef<undefined>\n) {\n const i18n = useI18nContext()\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const {\n hasCaptionPlaceholder,\n disabled: _disabled,\n role: _role,\n ...wrapperProps\n } = props\n const ariaLabel = getThumbnailAriaLabel(\n i18n,\n thumbnail.label,\n thumbnail.caption\n )\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n ref={ref}\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n tabIndex={0}\n role=\"group\"\n aria-label={ariaLabel}\n {...wrapperProps}\n >\n <StyledImageThumbnail\n $focused={thumbnail.focused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n >\n {thumbnail.isImageURL && !thumbnail.shouldUsePlaceholder ? (\n <StyledImageThumbnailImage\n src={thumbnail.src as string}\n alt={thumbnail.alt}\n />\n ) : (\n <ThumbnailPreview\n file={thumbnail.src as File}\n aria-label={thumbnail.alt}\n />\n )}\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n {thumbnail.shouldUsePlaceholder && (\n <StyledFileIcon\n variant={\n thumbnail.variant ||\n getThumbnailVariantForFilename(thumbnail.filename ?? '')\n }\n />\n )}\n {thumbnail.size === 'lg' && (\n <Label label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledImageThumbnail>\n <ThumbnailCaption\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n error={thumbnail.error}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n {thumbnail.disabled && !thumbnail.clickable && (\n <VisuallyHidden>\n {i18n.t('core.thumbnail.unavailable', {\n defaultValue: 'Content is unavailable',\n })}\n </VisuallyHidden>\n )}\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nconst FigureThumbnail = React.forwardRef<HTMLElement, ThumbnailProps<'figure'>>(\n function FigureThumbnail(\n props: ThumbnailProps<'figure'>,\n ref: ThumbnailRef<'figure'>\n ) {\n const i18n = useI18nContext()\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const ariaLabel = getThumbnailAriaLabel(\n i18n,\n thumbnail.label,\n thumbnail.caption\n )\n\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n tabIndex={0}\n role=\"group\"\n aria-label={ariaLabel}\n >\n <StyledImageThumbnail\n ref={ref}\n $focused={thumbnail.focused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n as={thumbnail.as}\n >\n {thumbnail.isImageURL && !thumbnail.shouldUsePlaceholder ? (\n <StyledImageThumbnailImage\n src={thumbnail.src as string}\n alt={thumbnail.alt}\n />\n ) : (\n <ThumbnailPreview\n file={thumbnail.src as File}\n aria-label={thumbnail.alt}\n />\n )}\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n {thumbnail.shouldUsePlaceholder && (\n <StyledFileIcon\n variant={\n thumbnail.variant ||\n getThumbnailVariantForFilename(thumbnail.filename ?? '')\n }\n />\n )}\n {thumbnail.size === 'lg' && (\n <FigCaption\n label={thumbnail.label}\n disabled={thumbnail.disabled}\n />\n )}\n <StyledImageThumbnailOverlay />\n </StyledImageThumbnail>\n <ThumbnailCaption\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n error={thumbnail.error}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n {thumbnail.disabled && !thumbnail.clickable && (\n <VisuallyHidden>\n {i18n.t('core.thumbnail.unavailable', {\n defaultValue: 'Content is unavailable',\n })}\n </VisuallyHidden>\n )}\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n }\n)\n\nconst CheckboxThumbnail = React.forwardRef<\n HTMLInputElement,\n ThumbnailProps<'checkbox'>\n>(function CheckboxThumbnail(\n { children, as, label, name, onChange, role, qa: _qa, value, ...props_ },\n ref\n) {\n const props = {\n ...props_,\n as,\n label,\n name,\n onChange,\n role,\n value,\n isDisabled: props_.disabled,\n isSelected: props_.checked,\n defaultSelected: props_.defaultChecked,\n }\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const {\n caption,\n hasCaptionPlaceholder,\n src,\n disabled: _disabled,\n ...wrapperProps\n } = props_\n const isInputFocused = document.activeElement === thumbnail.inputRef.current\n\n const preventSpaceOnDisabledThumbnail = (\n e: React.KeyboardEvent<HTMLInputElement>\n ) => {\n if (e.key === ' ' && thumbnail.disabled) {\n e.preventDefault()\n }\n }\n\n React.useEffect(() => {\n if (props.focused && thumbnail.inputRef.current) {\n thumbnail.inputRef.current.focus()\n }\n }, [props.focused, thumbnail.inputRef])\n\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n {...wrapperProps}\n onClick={(e: React.MouseEvent) => {\n if (!thumbnail.disabled) {\n thumbnail.toggleState.toggle()\n thumbnail.onClick?.(e)\n }\n }}\n >\n <StyledImageThumbnail\n aria-hidden\n $focused={thumbnail.focused || isInputFocused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n >\n {thumbnail.isImageURL && !thumbnail.shouldUsePlaceholder ? (\n <StyledImageThumbnailImage\n src={thumbnail.src as string}\n alt={thumbnail.alt}\n />\n ) : (\n <ThumbnailPreview\n file={thumbnail.src as File}\n aria-label={thumbnail.alt}\n />\n )}\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n {thumbnail.shouldUsePlaceholder && (\n <StyledFileIcon\n variant={\n thumbnail.variant ||\n getThumbnailVariantForFilename(thumbnail.filename ?? '')\n }\n />\n )}\n {thumbnail.size === 'lg' && (\n <Label label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledImageThumbnail>\n <ThumbnailCaption\n ariaHidden\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n error={props.error}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n <VisuallyHidden>\n <input\n ref={mergeRefs(thumbnail.inputRef, ref)}\n type={'checkbox'}\n {...mergeProps(thumbnail.inputProps, thumbnail.focusProps)}\n disabled={thumbnail.disabled}\n onKeyDown={preventSpaceOnDisabledThumbnail}\n />\n </VisuallyHidden>\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nfunction ThumbnailInner(\n props: ThumbnailProps<ThumbnailRoleType>,\n ref: ThumbnailRef<ThumbnailRoleType>\n) {\n const isFile = props.src instanceof File\n const isImageURL = typeof props.src === 'string'\n\n if (!isFile && !isImageURL) {\n console.warn('Unknown Thumbnail source:', props.src)\n }\n\n switch (props.role) {\n case 'checkbox': {\n return (\n <CheckboxThumbnail\n ref={ref as React.Ref<HTMLInputElement>}\n {...(props as ThumbnailProps<'checkbox'>)}\n />\n )\n }\n case 'figure': {\n return (\n <FigureThumbnail\n ref={ref as React.Ref<HTMLElement>}\n {...(props as ThumbnailProps<'figure'>)}\n />\n )\n }\n default: {\n return (\n <BaseThumbnail\n ref={ref as React.Ref<HTMLDivElement>}\n {...(props as PlaceholderProps<undefined>)}\n />\n )\n }\n }\n}\n\nconst Thumbnail_ = React.forwardRef(ThumbnailInner) as <\n Role extends ThumbnailRoles\n>(\n props:\n | ThumbnailProps<Role>\n | (BaseThumbnailProps & { ref?: ThumbnailRef<Role> })\n) => ReturnType<typeof ThumbnailInner>\n\nconst Placeholder = React.forwardRef(PlaceholderInner) as <\n Role extends ThumbnailRoles\n>(\n props:\n | PlaceholderProps<Role>\n | (BasePlaceholderProps & { ref?: ThumbnailRef<Role> })\n) => ReturnType<typeof PlaceholderInner>\n\n// @ts-ignore\nPlaceholder.displayName = 'Thumbnail.Placeholder'\n\n// @ts-ignore\nThumbnail_.displayName = 'Thumbnail'\n\n/**\n\n We use thumbnails to display previews for images or files as either a smaller\n version of an uploaded image, or an icon representing the file type. If an\n image preview can be generated from the file (in the case of images) then\n display that image.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-thumbnail--demo-thumbnail)\n\n @see [Design Guidelines](https://design.procore.com/thumbnail)\n\n */\nexport const Thumbnail = addSubcomponents({ Placeholder }, Thumbnail_)\n"],"mappings":"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"}
1
+ {"version":3,"file":"Thumbnail.js","names":["mergeProps","VisuallyHidden","React","useState","Tooltip","useI18nContext","addSubcomponents","mergeRefs","useThumbnail","StyledFileIcon","StyledImageThumbnail","StyledImageThumbnailImage","StyledImageThumbnailOverlay","StyledLabel","StyledLabelText","StyledPlaceholderThumbnail","StyledThumbnailFigCaption","StyledThumbnailWrapper","StyledTickIcon","getThumbnailAriaLabel","getThumbnailVariantForFilename","ThumbnailCaption","ThumbnailPreview","defaultSize","TickIcon","_ref","_ref$size","size","selected","i18n","createElement","t","undefined","focusable","$selected","$size","width","height","viewBox","fill","xmlns","d","fillRule","clipRule","FigCaption","_ref2","label","disabled","$color","Label","_ref3","intent","weight","ThumbnailCaptionTooltip","_ref4","caption","captionOverflowing","children","overlay","Content","placement","trigger","BasePlaceholder","forwardRef","props","ref","_props$filename","_thumbnail$qa","thumbnail","_useState","_useState2","_slicedToArray","setCaptionOverflowing","hasCaptionPlaceholder","_disabled","wrapperProps","_objectWithoutProperties","_excluded","ariaLabel","_extends","$layout","layout","tabIndex","role","errorAriaDescription","$focused","focused","$disabled","$clickable","clickable","toggleState","isSelected","variant","filename","error","qa","multiline","onCaptionOverflowChange","defaultValue","FigurePlaceholder","_props$filename2","_thumbnail$qa2","_useState3","_useState4","_role","_excluded2","as","CheckboxPlaceholder","_ref5","_props$filename3","_thumbnail$qa3","name","onChange","_qa","value","props_","_excluded3","_objectSpread","isDisabled","checked","defaultSelected","defaultChecked","_useState5","_useState6","src","_excluded4","isInputFocused","document","activeElement","inputRef","current","preventSpaceOnDisabledThumbnail","e","key","preventDefault","useEffect","focus","onClick","_thumbnail$onClick","toggle","call","ariaHidden","type","inputProps","focusProps","onKeyDown","PlaceholderInner","BaseThumbnail","_thumbnail$filename","_thumbnail$qa4","_useState7","_useState8","_excluded5","isImageURL","shouldUsePlaceholder","alt","file","FigureThumbnail","_thumbnail$filename2","_thumbnail$qa5","_useState9","_useState0","CheckboxThumbnail","_ref6","_thumbnail$filename3","_thumbnail$qa6","_excluded6","_useState1","_useState10","_excluded7","_thumbnail$onClick2","ThumbnailInner","isFile","File","console","warn","Thumbnail_","Placeholder","displayName","Thumbnail"],"sources":["../../src/Thumbnail/Thumbnail.tsx"],"sourcesContent":["import { mergeProps } from '@react-aria/utils'\nimport { VisuallyHidden } from '@react-aria/visually-hidden'\nimport React, { useState } from 'react'\nimport { Tooltip } from '../Tooltip'\nimport { useI18nContext } from '../_hooks/I18n'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport { mergeRefs } from '../_utils/mergeRefs'\nimport { useThumbnail } from './Thumbnail.hooks'\nimport {\n StyledFileIcon,\n StyledImageThumbnail,\n StyledImageThumbnailImage,\n StyledImageThumbnailOverlay,\n StyledLabel,\n StyledLabelText,\n StyledPlaceholderThumbnail,\n StyledThumbnailFigCaption,\n StyledThumbnailWrapper,\n StyledTickIcon,\n} from './Thumbnail.styles'\nimport type {\n BasePlaceholderProps,\n BaseThumbnailProps,\n LabelProps,\n PlaceholderProps,\n ThumbnailProps,\n ThumbnailRef,\n ThumbnailRoles,\n ThumbnailRoleType,\n TickIconProps,\n} from './Thumbnail.types'\nimport {\n getThumbnailAriaLabel,\n getThumbnailVariantForFilename,\n} from './Thumbnail.utils'\nimport { ThumbnailCaption } from './ThumbnailCaption'\nimport { ThumbnailPreview } from './ThumbnailPreview'\n\nconst defaultSize = 'lg'\n\nfunction TickIcon({ size = defaultSize, selected }: TickIconProps) {\n const i18n = useI18nContext()\n return (\n <StyledTickIcon\n aria-hidden={selected ? false : true}\n aria-label={selected ? i18n.t('core.thumbnail.checked') : undefined}\n // in IE11, all svg element are focusable by default\n focusable={false}\n $selected={selected}\n $size={size}\n width=\"26\"\n height=\"26\"\n viewBox=\"0 0 26 26\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M1 13C1 6.37258 6.37258 1 13 1C19.6274 1 25 6.37258 25 13C25 19.6274 19.6274 25 13 25C6.37258 25 1 19.6274 1 13Z\"\n fill=\"white\"\n />\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M11.167 17.5L7 13.459L8.6155 12.0535L11.167 14.5285L17.3845 8.5L19 9.9055L11.167 17.5ZM13 1C6.3715 1 1 6.373 1 13C1 19.627 6.3715 25 13 25C19.627 25 25 19.627 25 13C25 6.373 19.627 1 13 1Z\"\n fill=\"hsl(218,75%,50%)\"\n />\n <path\n d=\"M13 24C6.92487 24 2 19.0751 2 13H0C0 20.1797 5.8203 26 13 26V24ZM24 13C24 19.0751 19.0751 24 13 24V26C20.1797 26 26 20.1797 26 13H24ZM13 2C19.0751 2 24 6.92487 24 13H26C26 5.8203 20.1797 0 13 0V2ZM13 0C5.8203 0 0 5.8203 0 13H2C2 6.92487 6.92487 2 13 2V0Z\"\n fill=\"white\"\n />\n </StyledTickIcon>\n )\n}\n\nfunction FigCaption({ label, disabled }: LabelProps) {\n if (!label) {\n return null\n }\n\n return (\n <StyledThumbnailFigCaption $color={disabled ? 'gray70' : 'gray15'}>\n {label}\n </StyledThumbnailFigCaption>\n )\n}\n\nfunction Label({ label }: LabelProps) {\n if (!label) {\n return null\n }\n\n return (\n <StyledLabel>\n <StyledLabelText intent=\"small\" weight=\"bold\">\n {label}\n </StyledLabelText>\n </StyledLabel>\n )\n}\n\nfunction ThumbnailCaptionTooltip({\n caption,\n captionOverflowing,\n children,\n}: {\n caption: string | undefined\n captionOverflowing: boolean\n children: React.ReactNode\n}) {\n return (\n <Tooltip\n overlay={<Tooltip.Content>{caption}</Tooltip.Content>}\n placement=\"bottom\"\n trigger={captionOverflowing && caption ? ['hover', 'focus'] : 'none'}\n >\n {children}\n </Tooltip>\n )\n}\n\nconst BasePlaceholder = React.forwardRef<\n HTMLDivElement,\n PlaceholderProps<undefined>\n>(function BasePlaceholder(\n props: PlaceholderProps<undefined>,\n ref: ThumbnailRef<undefined>\n) {\n const i18n = useI18nContext()\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const {\n hasCaptionPlaceholder,\n caption,\n label,\n disabled: _disabled,\n ...wrapperProps\n } = props\n const ariaLabel = getThumbnailAriaLabel(\n i18n,\n thumbnail.label,\n thumbnail.caption\n )\n\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n ref={ref}\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n tabIndex={0}\n role=\"group\"\n aria-label={ariaLabel}\n aria-description={thumbnail.errorAriaDescription}\n {...wrapperProps}\n >\n <StyledPlaceholderThumbnail\n $focused={thumbnail.focused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n >\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n <StyledFileIcon\n variant={\n props.variant ||\n getThumbnailVariantForFilename(props.filename ?? '')\n }\n />\n {thumbnail.size === 'lg' && (\n <Label label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledPlaceholderThumbnail>\n <ThumbnailCaption\n error={thumbnail.error}\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n {thumbnail.disabled && !thumbnail.clickable && (\n <VisuallyHidden>\n {i18n.t('core.thumbnail.unavailable', {\n defaultValue: 'Content is unavailable',\n })}\n </VisuallyHidden>\n )}\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nconst FigurePlaceholder = React.forwardRef<\n HTMLElement,\n PlaceholderProps<'figure'>\n>(function FigurePlaceholder(\n props: PlaceholderProps<'figure'>,\n ref: ThumbnailRef<'figure'>\n) {\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const {\n hasCaptionPlaceholder,\n caption,\n label,\n disabled: _disabled,\n role: _role,\n ...wrapperProps\n } = props\n const i18n = useI18nContext()\n const ariaLabel = getThumbnailAriaLabel(\n i18n,\n thumbnail.label,\n thumbnail.caption\n )\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n ref={ref}\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n tabIndex={0}\n role=\"group\"\n aria-label={ariaLabel}\n aria-description={thumbnail.errorAriaDescription}\n {...wrapperProps}\n >\n <StyledPlaceholderThumbnail\n $focused={thumbnail.focused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n as={thumbnail.as}\n >\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n <StyledFileIcon\n variant={\n props.variant ||\n getThumbnailVariantForFilename(props.filename ?? '')\n }\n />\n {thumbnail.size === 'lg' && (\n <FigCaption label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledPlaceholderThumbnail>\n <ThumbnailCaption\n error={thumbnail.error}\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n {thumbnail.disabled && !thumbnail.clickable && (\n <VisuallyHidden>\n {i18n.t('core.thumbnail.unavailable', {\n defaultValue: 'Content is unavailable',\n })}\n </VisuallyHidden>\n )}\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nconst CheckboxPlaceholder = React.forwardRef<\n HTMLInputElement,\n ThumbnailProps<'checkbox'>\n>(function CheckboxPlaceholder(\n { children, as, label, name, onChange, role, qa: _qa, value, ...props_ },\n ref\n) {\n const props = {\n ...props_,\n as,\n label,\n onChange,\n role,\n value,\n isDisabled: props_.disabled,\n isSelected: props_.checked,\n defaultSelected: props_.defaultChecked,\n }\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const { caption, hasCaptionPlaceholder, src, ...wrapperProps } = props_\n const isInputFocused = document.activeElement === thumbnail.inputRef.current\n\n const i18n = useI18nContext()\n const ariaLabel =\n getThumbnailAriaLabel(i18n, thumbnail.label, thumbnail.caption) ||\n i18n.t('core.thumbnail.select')\n\n const preventSpaceOnDisabledThumbnail = (e: React.KeyboardEvent) => {\n if (e.key === ' ' && thumbnail.disabled) {\n e.preventDefault()\n }\n }\n\n React.useEffect(() => {\n if (props.focused && thumbnail.inputRef.current) {\n thumbnail.inputRef.current.focus()\n }\n }, [props.focused, thumbnail.inputRef])\n\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n {...wrapperProps}\n onClick={(e: React.MouseEvent) => {\n if (!thumbnail.disabled) {\n thumbnail.toggleState.toggle()\n thumbnail.onClick?.(e)\n }\n }}\n >\n <StyledPlaceholderThumbnail\n aria-hidden\n $focused={thumbnail.focused || isInputFocused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n >\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n <StyledFileIcon\n variant={\n props.variant ||\n getThumbnailVariantForFilename(props.filename ?? '')\n }\n />\n {thumbnail.size === 'lg' && (\n <Label label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledPlaceholderThumbnail>\n <ThumbnailCaption\n ariaHidden\n error={thumbnail.error}\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n <VisuallyHidden>\n <input\n type=\"checkbox\"\n ref={mergeRefs(thumbnail.inputRef, ref)}\n aria-label={ariaLabel}\n {...mergeProps(thumbnail.inputProps, thumbnail.focusProps)}\n disabled={thumbnail.disabled}\n onKeyDown={preventSpaceOnDisabledThumbnail}\n />\n </VisuallyHidden>\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nfunction PlaceholderInner(\n props: PlaceholderProps<ThumbnailRoleType>,\n ref: ThumbnailRef<ThumbnailRoleType>\n) {\n switch (props.role) {\n case 'checkbox': {\n return (\n <CheckboxPlaceholder\n ref={ref as React.Ref<HTMLInputElement>}\n {...(props as PlaceholderProps<'checkbox'>)}\n />\n )\n }\n case 'figure': {\n return (\n <FigurePlaceholder\n ref={ref as React.Ref<HTMLElement>}\n {...(props as PlaceholderProps<'figure'>)}\n />\n )\n }\n default: {\n return (\n <BasePlaceholder\n ref={ref as React.Ref<HTMLDivElement>}\n {...(props as PlaceholderProps<undefined>)}\n />\n )\n }\n }\n}\n\nconst BaseThumbnail = React.forwardRef<\n HTMLDivElement,\n ThumbnailProps<undefined>\n>(function BaseThumbnail(\n props: ThumbnailProps<undefined>,\n ref: ThumbnailRef<undefined>\n) {\n const i18n = useI18nContext()\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const {\n hasCaptionPlaceholder,\n disabled: _disabled,\n role: _role,\n ...wrapperProps\n } = props\n const ariaLabel = getThumbnailAriaLabel(\n i18n,\n thumbnail.label,\n thumbnail.caption\n )\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n ref={ref}\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n tabIndex={0}\n role=\"group\"\n aria-label={ariaLabel}\n aria-description={thumbnail.errorAriaDescription}\n {...wrapperProps}\n >\n <StyledImageThumbnail\n $focused={thumbnail.focused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n >\n {thumbnail.isImageURL && !thumbnail.shouldUsePlaceholder ? (\n <StyledImageThumbnailImage\n src={thumbnail.src as string}\n alt={thumbnail.alt}\n />\n ) : (\n <ThumbnailPreview\n file={thumbnail.src as File}\n aria-label={thumbnail.alt}\n />\n )}\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n {thumbnail.shouldUsePlaceholder && (\n <StyledFileIcon\n variant={\n thumbnail.variant ||\n getThumbnailVariantForFilename(thumbnail.filename ?? '')\n }\n />\n )}\n {thumbnail.size === 'lg' && (\n <Label label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledImageThumbnail>\n <ThumbnailCaption\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n error={thumbnail.error}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n {thumbnail.disabled && !thumbnail.clickable && (\n <VisuallyHidden>\n {i18n.t('core.thumbnail.unavailable', {\n defaultValue: 'Content is unavailable',\n })}\n </VisuallyHidden>\n )}\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nconst FigureThumbnail = React.forwardRef<HTMLElement, ThumbnailProps<'figure'>>(\n function FigureThumbnail(\n props: ThumbnailProps<'figure'>,\n ref: ThumbnailRef<'figure'>\n ) {\n const i18n = useI18nContext()\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const ariaLabel = getThumbnailAriaLabel(\n i18n,\n thumbnail.label,\n thumbnail.caption\n )\n\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n tabIndex={0}\n role=\"group\"\n aria-label={ariaLabel}\n aria-description={thumbnail.errorAriaDescription}\n >\n <StyledImageThumbnail\n ref={ref}\n $focused={thumbnail.focused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n as={thumbnail.as}\n >\n {thumbnail.isImageURL && !thumbnail.shouldUsePlaceholder ? (\n <StyledImageThumbnailImage\n src={thumbnail.src as string}\n alt={thumbnail.alt}\n />\n ) : (\n <ThumbnailPreview\n file={thumbnail.src as File}\n aria-label={thumbnail.alt}\n />\n )}\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n {thumbnail.shouldUsePlaceholder && (\n <StyledFileIcon\n variant={\n thumbnail.variant ||\n getThumbnailVariantForFilename(thumbnail.filename ?? '')\n }\n />\n )}\n {thumbnail.size === 'lg' && (\n <FigCaption\n label={thumbnail.label}\n disabled={thumbnail.disabled}\n />\n )}\n <StyledImageThumbnailOverlay />\n </StyledImageThumbnail>\n <ThumbnailCaption\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n error={thumbnail.error}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n {thumbnail.disabled && !thumbnail.clickable && (\n <VisuallyHidden>\n {i18n.t('core.thumbnail.unavailable', {\n defaultValue: 'Content is unavailable',\n })}\n </VisuallyHidden>\n )}\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n }\n)\n\nconst CheckboxThumbnail = React.forwardRef<\n HTMLInputElement,\n ThumbnailProps<'checkbox'>\n>(function CheckboxThumbnail(\n { children, as, label, name, onChange, role, qa: _qa, value, ...props_ },\n ref\n) {\n const props = {\n ...props_,\n as,\n label,\n name,\n onChange,\n role,\n value,\n isDisabled: props_.disabled,\n isSelected: props_.checked,\n defaultSelected: props_.defaultChecked,\n }\n const thumbnail = useThumbnail(props)\n const [captionOverflowing, setCaptionOverflowing] = useState(false)\n const {\n caption,\n hasCaptionPlaceholder,\n src,\n disabled: _disabled,\n ...wrapperProps\n } = props_\n const isInputFocused = document.activeElement === thumbnail.inputRef.current\n\n const preventSpaceOnDisabledThumbnail = (\n e: React.KeyboardEvent<HTMLInputElement>\n ) => {\n if (e.key === ' ' && thumbnail.disabled) {\n e.preventDefault()\n }\n }\n\n React.useEffect(() => {\n if (props.focused && thumbnail.inputRef.current) {\n thumbnail.inputRef.current.focus()\n }\n }, [props.focused, thumbnail.inputRef])\n\n return (\n <ThumbnailCaptionTooltip\n caption={thumbnail.caption}\n captionOverflowing={captionOverflowing}\n >\n <StyledThumbnailWrapper\n $layout={thumbnail.layout}\n $size={thumbnail.size}\n {...wrapperProps}\n onClick={(e: React.MouseEvent) => {\n if (!thumbnail.disabled) {\n thumbnail.toggleState.toggle()\n thumbnail.onClick?.(e)\n }\n }}\n >\n <StyledImageThumbnail\n aria-hidden\n $focused={thumbnail.focused || isInputFocused}\n $disabled={thumbnail.disabled}\n $selected={thumbnail.selected}\n $clickable={thumbnail.clickable}\n $size={thumbnail.size}\n >\n {thumbnail.isImageURL && !thumbnail.shouldUsePlaceholder ? (\n <StyledImageThumbnailImage\n src={thumbnail.src as string}\n alt={thumbnail.alt}\n />\n ) : (\n <ThumbnailPreview\n file={thumbnail.src as File}\n aria-label={thumbnail.alt}\n />\n )}\n <TickIcon\n size={thumbnail.size}\n selected={thumbnail.toggleState.isSelected}\n />\n {thumbnail.shouldUsePlaceholder && (\n <StyledFileIcon\n variant={\n thumbnail.variant ||\n getThumbnailVariantForFilename(thumbnail.filename ?? '')\n }\n />\n )}\n {thumbnail.size === 'lg' && (\n <Label label={thumbnail.label} disabled={thumbnail.disabled} />\n )}\n <StyledImageThumbnailOverlay />\n </StyledImageThumbnail>\n <ThumbnailCaption\n ariaHidden\n qa={thumbnail.qa?.caption}\n multiline={thumbnail.size === 'lg'}\n layout={thumbnail.layout}\n caption={thumbnail.caption}\n hasCaptionPlaceholder={thumbnail.hasCaptionPlaceholder}\n disabled={thumbnail.disabled}\n error={props.error}\n onCaptionOverflowChange={setCaptionOverflowing}\n />\n <VisuallyHidden>\n <input\n ref={mergeRefs(thumbnail.inputRef, ref)}\n type={'checkbox'}\n {...mergeProps(thumbnail.inputProps, thumbnail.focusProps)}\n disabled={thumbnail.disabled}\n onKeyDown={preventSpaceOnDisabledThumbnail}\n />\n </VisuallyHidden>\n </StyledThumbnailWrapper>\n </ThumbnailCaptionTooltip>\n )\n})\n\nfunction ThumbnailInner(\n props: ThumbnailProps<ThumbnailRoleType>,\n ref: ThumbnailRef<ThumbnailRoleType>\n) {\n const isFile = props.src instanceof File\n const isImageURL = typeof props.src === 'string'\n\n if (!isFile && !isImageURL) {\n console.warn('Unknown Thumbnail source:', props.src)\n }\n\n switch (props.role) {\n case 'checkbox': {\n return (\n <CheckboxThumbnail\n ref={ref as React.Ref<HTMLInputElement>}\n {...(props as ThumbnailProps<'checkbox'>)}\n />\n )\n }\n case 'figure': {\n return (\n <FigureThumbnail\n ref={ref as React.Ref<HTMLElement>}\n {...(props as ThumbnailProps<'figure'>)}\n />\n )\n }\n default: {\n return (\n <BaseThumbnail\n ref={ref as React.Ref<HTMLDivElement>}\n {...(props as PlaceholderProps<undefined>)}\n />\n )\n }\n }\n}\n\nconst Thumbnail_ = React.forwardRef(ThumbnailInner) as <\n Role extends ThumbnailRoles\n>(\n props:\n | ThumbnailProps<Role>\n | (BaseThumbnailProps & { ref?: ThumbnailRef<Role> })\n) => ReturnType<typeof ThumbnailInner>\n\nconst Placeholder = React.forwardRef(PlaceholderInner) as <\n Role extends ThumbnailRoles\n>(\n props:\n | PlaceholderProps<Role>\n | (BasePlaceholderProps & { ref?: ThumbnailRef<Role> })\n) => ReturnType<typeof PlaceholderInner>\n\n// @ts-ignore\nPlaceholder.displayName = 'Thumbnail.Placeholder'\n\n// @ts-ignore\nThumbnail_.displayName = 'Thumbnail'\n\n/**\n\n We use thumbnails to display previews for images or files as either a smaller\n version of an uploaded image, or an icon representing the file type. If an\n image preview can be generated from the file (in the case of images) then\n display that image.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-thumbnail--demo-thumbnail)\n\n @see [Design Guidelines](https://design.procore.com/thumbnail)\n\n */\nexport const Thumbnail = addSubcomponents({ Placeholder }, Thumbnail_)\n"],"mappings":"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"}
@@ -2,11 +2,13 @@
2
2
  import type { TypographyProps } from '../Typography';
3
3
  import type { LayoutVariant, SizeVariant } from './Thumbnail.types';
4
4
  import { DocumentIcon } from './ThumbnailDocumentIcon';
5
- interface CaptionProps {
5
+ interface CaptionTextProps {
6
6
  $layout: LayoutVariant;
7
- $error: boolean;
8
7
  $disabled: boolean;
9
8
  }
9
+ declare type CaptionErrorLayoutProps = CaptionTextProps & {
10
+ $error?: boolean;
11
+ };
10
12
  interface StyledThumbnailProps {
11
13
  $focused: boolean;
12
14
  $disabled: boolean;
@@ -18,10 +20,16 @@ interface StyledTickIconProps {
18
20
  $selected: boolean;
19
21
  $size: SizeVariant;
20
22
  }
21
- export declare const StyledMultilineCaption: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, CaptionProps>> & string;
23
+ export declare const StyledThumbnailCaptionStack: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
24
+ $layout: LayoutVariant;
25
+ }>> & string;
26
+ export declare const StyledThumbnailErrorRow: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
27
+ export declare const StyledThumbnailErrorIcon: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
28
+ export declare const StyledThumbnailErrorText: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
29
+ export declare const StyledMultilineCaption: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, CaptionErrorLayoutProps>> & string;
22
30
  export declare const StyledCaptionText: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
23
- export declare const StyledPlaceholderCaption: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, CaptionProps>> & string;
24
- export declare const StyledSingleLineCaption: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, CaptionProps>> & string;
31
+ export declare const StyledPlaceholderCaption: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, CaptionErrorLayoutProps>> & string;
32
+ export declare const StyledSingleLineCaption: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, CaptionErrorLayoutProps>> & string;
25
33
  export declare const StyledSinglelineCaptionBody: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
26
34
  export declare const StyledSinglelineCaptionEnding: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
27
35
  export declare const StyledLabelText: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<Omit<import("react").HTMLAttributes<HTMLSpanElement> & TypographyProps & import("react").RefAttributes<HTMLSpanElement>, "ref"> & {