@procore/core-react 12.21.0-cdn.3 → 12.21.0-cdn.4

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 (214) hide show
  1. package/dist/AnchorNavigation/AnchorNavigation.styles.js +3 -3
  2. package/dist/Avatar/Avatar.js +8 -10
  3. package/dist/Avatar/Avatar.js.map +1 -1
  4. package/dist/Avatar/Avatar.styles.js +5 -5
  5. package/dist/AvatarStack/AvatarStack.d.ts +1 -1
  6. package/dist/AvatarStack/AvatarStack.js +21 -18
  7. package/dist/AvatarStack/AvatarStack.js.map +1 -1
  8. package/dist/AvatarStack/AvatarStack.styles.js +7 -7
  9. package/dist/Badge/Badge.styles.js +2 -2
  10. package/dist/Banner/Banner.styles.js +10 -10
  11. package/dist/Box/Box.styles.js +1 -1
  12. package/dist/Breadcrumbs/Breadcrumbs.styles.js +4 -4
  13. package/dist/Button/Button.styles.js +5 -5
  14. package/dist/Calendar/Calendar.styles.js +8 -8
  15. package/dist/Card/Card.styles.js +1 -1
  16. package/dist/Checkbox/Checkbox.styles.js +6 -6
  17. package/dist/Checkbox/CheckboxTooltip.js +1 -1
  18. package/dist/ContactItem/ContactItem.styles.js +5 -5
  19. package/dist/Content/Content.styles.js +2 -2
  20. package/dist/DateInput/DateInput.styles.js +6 -6
  21. package/dist/DetailPage/DetailPage.styles.js +7 -7
  22. package/dist/Dropdown/Dropdown.styles.js +3 -3
  23. package/dist/DropdownFlyout/DropdownFlyout.styles.js +4 -4
  24. package/dist/Dropzone/Dropzone.js +1 -1
  25. package/dist/Dropzone/Dropzone.styles.js +9 -9
  26. package/dist/EmptyState/EmptyState.styles.js +6 -6
  27. package/dist/Field/Field.styles.js +3 -3
  28. package/dist/FileList/FileList.styles.js +4 -4
  29. package/dist/FileSelect/FileExplorer/FileExplorer.styles.js +9 -9
  30. package/dist/FileSelect/FileExplorer/FileExplorerSidebar.styles.js +3 -3
  31. package/dist/FileSelect/FileSelect.styles.js +2 -2
  32. package/dist/FileSelect/FileSelectDropzone/FileSelectDropzone.styles.js +3 -3
  33. package/dist/FileSelect/FileTokenList/FileTokenList.styles.js +2 -2
  34. package/dist/FileSelect/GridSource/GridSource.styles.js +6 -6
  35. package/dist/FileSelect/LocalSource/LocalSource.styles.js +4 -4
  36. package/dist/FileSelect/SourceItem/SourceItem.styles.js +3 -3
  37. package/dist/FileSelect/ThumbnailList/ThumbnailList.styles.js +6 -6
  38. package/dist/FileSelect/TreeSource/TreeSource.styles.js +1 -1
  39. package/dist/FileToken/FileToken.styles.js +4 -4
  40. package/dist/FilterToken/FilterToken.styles.js +5 -5
  41. package/dist/FlexList/FlexList.styles.js +1 -1
  42. package/dist/Form/Form.js +5 -12
  43. package/dist/Form/Form.js.map +1 -1
  44. package/dist/Form/Form.styles.js +14 -14
  45. package/dist/Form/StyledFormikForm.styles.js +2 -2
  46. package/dist/GhostPlaceholder/GhostPlaceholder.styles.js +2 -2
  47. package/dist/Grid/Grid.styles.js +2 -2
  48. package/dist/GroupSelect/GroupSelect.styles.js +1 -1
  49. package/dist/Input/Input.styles.js +1 -1
  50. package/dist/Link/Link.styles.js +1 -1
  51. package/dist/ListPage/ListPage.styles.js +8 -8
  52. package/dist/Loader/Loader.styles.js +2 -2
  53. package/dist/MenuImperative/MenuImperative.styles.js +10 -10
  54. package/dist/Modal/Modal.styles.js +13 -13
  55. package/dist/MultiSelect/MultiSelect.styles.js +6 -6
  56. package/dist/MultiSelect/MultiSelect.types.d.ts +0 -5
  57. package/dist/MultiSelect/MultiSelect.types.js.map +1 -1
  58. package/dist/NextMenu/NextMenu.styles.js +3 -3
  59. package/dist/Notation/Notation.js +1 -1
  60. package/dist/NumberInput/NumberInput.styles.js +7 -7
  61. package/dist/Overlay/OverlayArrow.styles.js +1 -1
  62. package/dist/PageLayout/PageLayout.styles.js +16 -16
  63. package/dist/PageTemplate/PageFooterTemplate/PageFooterTemplate.styles.js +1 -1
  64. package/dist/PageTemplate/PageHeaderTemplate/PageHeaderTemplate.styles.js +3 -3
  65. package/dist/PageTemplate/PagePaneTemplate/PagePaneTemplate.styles.js +2 -2
  66. package/dist/PageTemplate/PageTemplate/PageTemplate.styles.js +3 -3
  67. package/dist/Pagination/Pagination.styles.js +5 -5
  68. package/dist/Panel/Panel.styles.js +11 -11
  69. package/dist/Pill/Pill.styles.js +2 -2
  70. package/dist/PillSelect/PillSelect.styles.js +4 -4
  71. package/dist/Popover/Popover.styles.js +2 -2
  72. package/dist/Portal/Portal.styles.js +1 -1
  73. package/dist/ProgressBar/ProgressBar.styles.js +2 -2
  74. package/dist/RadioButton/RadioButton.styles.js +3 -3
  75. package/dist/Required/Required.styles.js +3 -3
  76. package/dist/Search/Search.styles.js +5 -5
  77. package/dist/Section/Section.styles.js +7 -7
  78. package/dist/SegmentedController/SegmentedController.styles.js +4 -4
  79. package/dist/Select/Select.styles.js +7 -7
  80. package/dist/Semantic/Semantic.styles.js +9 -9
  81. package/dist/Slider/Slider.styles.js +5 -5
  82. package/dist/Spinner/Spinner.styles.js +7 -7
  83. package/dist/SplitViewCard/SplitViewCard.context.d.ts +1 -1
  84. package/dist/SplitViewCard/SplitViewCard.context.js +14 -29
  85. package/dist/SplitViewCard/SplitViewCard.context.js.map +1 -1
  86. package/dist/SplitViewCard/SplitViewCard.js +16 -14
  87. package/dist/SplitViewCard/SplitViewCard.js.map +1 -1
  88. package/dist/SplitViewCard/SplitViewCard.styles.js +8 -8
  89. package/dist/SplitViewCard/SplitViewCard.types.d.ts +24 -16
  90. package/dist/SplitViewCard/SplitViewCard.types.js.map +1 -1
  91. package/dist/SplitViewCard/SplitViewCardInternal.context.d.ts +6 -0
  92. package/dist/SplitViewCard/SplitViewCardInternal.context.js +31 -0
  93. package/dist/SplitViewCard/SplitViewCardInternal.context.js.map +1 -0
  94. package/dist/SplitViewCard/index.d.ts +1 -0
  95. package/dist/SplitViewCard/index.js +1 -0
  96. package/dist/SplitViewCard/index.js.map +1 -1
  97. package/dist/SuperSelect/SuperSelect.presets.styles.js +1 -1
  98. package/dist/SuperSelect/SuperSelect.styles.js +37 -37
  99. package/dist/Switch/Switch.styles.js +4 -4
  100. package/dist/Table/Table.styles.js +28 -28
  101. package/dist/TableShelf/TableShelf.styles.js +5 -5
  102. package/dist/Tabs/Tabs.js +4 -6
  103. package/dist/Tabs/Tabs.js.map +1 -1
  104. package/dist/Tabs/Tabs.styles.js +15 -15
  105. package/dist/Tearsheet/Tearsheet.js +40 -61
  106. package/dist/Tearsheet/Tearsheet.js.map +1 -1
  107. package/dist/Tearsheet/Tearsheet.styles.js +5 -5
  108. package/dist/TextArea/TextArea.styles.js +1 -1
  109. package/dist/TextEditorOutput/TextEditorOutput.styles.js +1 -1
  110. package/dist/Thumbnail/Thumbnail.js +2 -4
  111. package/dist/Thumbnail/Thumbnail.js.map +1 -1
  112. package/dist/Thumbnail/Thumbnail.styles.js +17 -17
  113. package/dist/ThumbnailGrid/ThumbnailGrid.styles.js +7 -7
  114. package/dist/TieredSelect/TieredSelect.styles.js +9 -9
  115. package/dist/Tile/Tile.styles.js +8 -8
  116. package/dist/Title/Title.styles.js +7 -7
  117. package/dist/Toast/Toast.styles.js +3 -3
  118. package/dist/ToggleButton/ToggleButton.styles.js +1 -1
  119. package/dist/Token/Token.styles.js +3 -3
  120. package/dist/ToolHeader/ToolHeader.styles.js +6 -6
  121. package/dist/ToolLandingPage/ToolLandingPage.styles.js +3 -3
  122. package/dist/Tooltip/Tooltip.styles.js +2 -2
  123. package/dist/Tree/Tree.styles.js +9 -9
  124. package/dist/Typeahead/Typeahead.styles.js +3 -3
  125. package/dist/Typography/Typography.styles.js +1 -1
  126. package/dist/Typography/Typography.table.story.js +2 -2
  127. package/dist/_hooks/DelayedCallback.js +4 -9
  128. package/dist/_hooks/DelayedCallback.js.map +1 -1
  129. package/dist/_hooks/Visibility.js +0 -10
  130. package/dist/_hooks/Visibility.js.map +1 -1
  131. package/dist/_typedoc/AnchorNavigation/AnchorNavigation.types.json +3 -3
  132. package/dist/_typedoc/Avatar/Avatar.types.json +20 -20
  133. package/dist/_typedoc/AvatarStack/AvatarStack.types.json +24 -24
  134. package/dist/_typedoc/Badge/Badge.types.json +6 -6
  135. package/dist/_typedoc/Banner/Banner.types.json +13 -13
  136. package/dist/_typedoc/Box/Box.types.json +68 -68
  137. package/dist/_typedoc/Breadcrumbs/Breadcrumbs.types.json +10 -10
  138. package/dist/_typedoc/Button/Button.types.json +13 -13
  139. package/dist/_typedoc/Calendar/Calendar.types.json +80 -80
  140. package/dist/_typedoc/Card/Card.types.json +6 -6
  141. package/dist/_typedoc/Checkbox/Checkbox.types.json +9 -9
  142. package/dist/_typedoc/ContactItem/ContactItem.types.json +9 -9
  143. package/dist/_typedoc/DateInput/DateInput.types.json +35 -35
  144. package/dist/_typedoc/DateSelect/DateSelect.types.json +13 -13
  145. package/dist/_typedoc/DetailPage/DetailPage.types.json +5 -5
  146. package/dist/_typedoc/Dropdown/Dropdown.types.json +37 -37
  147. package/dist/_typedoc/DropdownFlyout/DropdownFlyout.types.json +29 -29
  148. package/dist/_typedoc/Dropzone/Dropzone.types.json +44 -44
  149. package/dist/_typedoc/EmptyState/EmptyState.types.json +16 -16
  150. package/dist/_typedoc/FileList/FileList.types.json +9 -9
  151. package/dist/_typedoc/FileSelect/FileSelect.types.json +27 -27
  152. package/dist/_typedoc/FileSelect/GridSource/GridSource.types.json +20 -20
  153. package/dist/_typedoc/FileSelect/LocalSource/LocalSource.types.json +14 -14
  154. package/dist/_typedoc/FileSelect/TreeSource/TreeSource.types.json +9 -9
  155. package/dist/_typedoc/Flex/Flex.types.json +27 -27
  156. package/dist/_typedoc/FlexList/FlexList.types.json +30 -30
  157. package/dist/_typedoc/Form/Form.types.json +741 -741
  158. package/dist/_typedoc/GhostPlaceholder/GhostPlaceholder.types.json +12 -12
  159. package/dist/_typedoc/Grid/Grid.types.json +8 -8
  160. package/dist/_typedoc/GroupSelect/GroupSelect.types.json +52 -52
  161. package/dist/_typedoc/Input/Input.types.json +2 -2
  162. package/dist/_typedoc/Link/Link.types.json +4 -4
  163. package/dist/_typedoc/ListPage/ListPage.types.json +13 -13
  164. package/dist/_typedoc/Menu/Menu.types.json +62 -62
  165. package/dist/_typedoc/MenuImperative/MenuImperative.types.json +74 -74
  166. package/dist/_typedoc/Modal/Modal.types.json +46 -46
  167. package/dist/_typedoc/MultiSelect/MultiSelect.types.json +31 -31
  168. package/dist/_typedoc/Notation/Notation.types.json +4 -4
  169. package/dist/_typedoc/NumberInput/NumberInput.types.json +37 -37
  170. package/dist/_typedoc/OverlayTrigger/OverlayTrigger.types.json +31 -31
  171. package/dist/_typedoc/PageLayout/PageLayout.types.json +29 -29
  172. package/dist/_typedoc/Pagination/Pagination.types.json +7 -7
  173. package/dist/_typedoc/Panel/Panel.types.json +28 -28
  174. package/dist/_typedoc/Pill/Pill.types.json +2 -2
  175. package/dist/_typedoc/PillSelect/PillSelect.types.json +49 -49
  176. package/dist/_typedoc/Popover/Popover.types.json +15 -15
  177. package/dist/_typedoc/ProgressBar/ProgressBar.types.json +6 -6
  178. package/dist/_typedoc/RadioButton/RadioButton.types.json +6 -6
  179. package/dist/_typedoc/Required/Required.types.json +5 -5
  180. package/dist/_typedoc/Search/Search.types.json +19 -19
  181. package/dist/_typedoc/Section/Section.types.json +15 -15
  182. package/dist/_typedoc/SegmentedController/SegmentedController.types.json +21 -21
  183. package/dist/_typedoc/Select/Select.types.json +60 -60
  184. package/dist/_typedoc/SettingsPage/SettingsPage.types.json +10 -10
  185. package/dist/_typedoc/Slider/Slider.types.json +6 -6
  186. package/dist/_typedoc/Spinner/Spinner.types.json +9 -9
  187. package/dist/_typedoc/SplitViewCard/SplitViewCard.types.json +50 -40
  188. package/dist/_typedoc/Switch/Switch.types.json +3 -3
  189. package/dist/_typedoc/Table/Table.types.json +101 -101
  190. package/dist/_typedoc/Tabs/Tabs.types.json +20 -20
  191. package/dist/_typedoc/Tearsheet/Tearsheet.types.json +17 -17
  192. package/dist/_typedoc/TextArea/TextArea.types.json +3 -3
  193. package/dist/_typedoc/TextEditor/TextEditor.types.json +9 -9
  194. package/dist/_typedoc/TextEditorOutput/TextEditorOutput.types.json +4 -4
  195. package/dist/_typedoc/Thumbnail/Thumbnail.types.json +19 -19
  196. package/dist/_typedoc/TieredDropdown/TieredDropdown.types.json +42 -42
  197. package/dist/_typedoc/TieredSelect/TieredSelect.types.json +28 -28
  198. package/dist/_typedoc/Tile/Tile.types.json +30 -30
  199. package/dist/_typedoc/Title/Title.types.json +1 -1
  200. package/dist/_typedoc/Toast/Toast.types.json +4 -4
  201. package/dist/_typedoc/ToggleButton/ToggleButton.types.json +4 -4
  202. package/dist/_typedoc/Token/Token.types.json +4 -4
  203. package/dist/_typedoc/ToolHeader/ToolHeader.types.json +10 -10
  204. package/dist/_typedoc/ToolLandingPage/ToolLandingPage.types.json +7 -7
  205. package/dist/_typedoc/Tooltip/Tooltip.types.json +13 -13
  206. package/dist/_typedoc/Tree/Tree.types.json +86 -86
  207. package/dist/_typedoc/Typeahead/Typeahead.types.json +2 -2
  208. package/dist/_typedoc/Typography/Typography.types.json +9 -9
  209. package/dist/_typedoc/_utils/types.json +3 -3
  210. package/dist/_typedoc/deprecations.json +1 -1
  211. package/package.json +3 -4
  212. package/tsconfig.prod.json +1 -2
  213. package/__mocks__/_hooks/DelayedCallback.tsx +0 -88
  214. package/__mocks__/_hooks/Visibility.tsx +0 -100
@@ -5,11 +5,11 @@ import { getEllipsis } from '../_styles/mixins';
5
5
  import { spacing } from '../_styles/spacing';
6
6
  export var StyledAnchorNavigation = /*#__PURE__*/styled.ul.withConfig({
7
7
  displayName: "StyledAnchorNavigation",
8
- componentId: "core-12_21_0-cdn_3__sc-aacdj4-0"
8
+ componentId: "core-12_21_0-cdn_4__sc-aacdj4-0"
9
9
  })(["max-width:200px;margin:0;padding-inline-start:0;"]);
10
10
  export var StyledAnchorSection = /*#__PURE__*/styled.li.withConfig({
11
11
  displayName: "StyledAnchorSection",
12
- componentId: "core-12_21_0-cdn_3__sc-aacdj4-1"
12
+ componentId: "core-12_21_0-cdn_4__sc-aacdj4-1"
13
13
  })(["display:flex;cursor:pointer;border-left:", "px solid ", ";background-color:", ";border-top-right-radius:4px;border-bottom-right-radius:4px;:hover{border-left:", "px solid ", ";background-color:", ";}"], spacing.xs, function (_ref) {
14
14
  var $selected = _ref.$selected;
15
15
  return $selected ? colors.gray15 : colors.gray90;
@@ -22,7 +22,7 @@ export var StyledAnchorSection = /*#__PURE__*/styled.li.withConfig({
22
22
  }, colors.gray90);
23
23
  export var StyledAnchor = /*#__PURE__*/styled.a.withConfig({
24
24
  displayName: "StyledAnchor",
25
- componentId: "core-12_21_0-cdn_3__sc-aacdj4-2"
25
+ componentId: "core-12_21_0-cdn_4__sc-aacdj4-2"
26
26
  })(["width:100%;padding:6px ", "px;", " ", ";", " :focus-visible{box-shadow:inset 0 0 0 2px ", ";outline:none;}"], spacing.sm, getTypographyIntent('body'), function (_ref4) {
27
27
  var $selected = _ref4.$selected;
28
28
  return $selected ? css(["font-weight:600;"]) : '';
@@ -1,9 +1,8 @@
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
2
  var _excluded = ["as", "clickable", "disabled", "href", "size", "children", "onBlur", "onFocus", "rel", "role", "target"],
3
- _excluded2 = ["onPress"],
4
- _excluded3 = ["icon"],
5
- _excluded4 = ["children"],
6
- _excluded5 = ["imageUrl"];
3
+ _excluded2 = ["icon"],
4
+ _excluded3 = ["children"],
5
+ _excluded4 = ["imageUrl"];
7
6
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
8
7
  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; }
9
8
  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; }
@@ -30,8 +29,7 @@ function AvatarInner(_ref, ref) {
30
29
  target = _ref.target,
31
30
  props = _objectWithoutProperties(_ref, _excluded);
32
31
  var _ref2 = props,
33
- onPress = _ref2.onPress,
34
- restProps = _objectWithoutProperties(_ref2, _excluded2);
32
+ onPress = _ref2.onPress;
35
33
  var _useButton = useButton(_objectSpread(_objectSpread({}, props), {}, {
36
34
  onBlur: onBlur,
37
35
  onFocus: onFocus,
@@ -59,7 +57,7 @@ function AvatarInner(_ref, ref) {
59
57
  $disabled: disabled,
60
58
  $size: size,
61
59
  "data-qa": "core-avatar"
62
- }, a11yProps, restProps), React.Children.only(children), /*#__PURE__*/React.createElement(StyledAvatarOverlay, {
60
+ }, a11yProps, props), React.Children.only(children), /*#__PURE__*/React.createElement(StyledAvatarOverlay, {
63
61
  "aria-hidden": true
64
62
  }));
65
63
  }
@@ -67,14 +65,14 @@ var Avatar_ = /*#__PURE__*/React.forwardRef(AvatarInner);
67
65
  var NextAvatar_ = /*#__PURE__*/React.forwardRef(AvatarInner);
68
66
  export var Icon = /*#__PURE__*/React.forwardRef(function Icon(_ref5, ref) {
69
67
  var icon = _ref5.icon,
70
- props = _objectWithoutProperties(_ref5, _excluded3);
68
+ props = _objectWithoutProperties(_ref5, _excluded2);
71
69
  return /*#__PURE__*/React.createElement(StyledIconContainer, _extends({
72
70
  ref: ref
73
71
  }, props), icon);
74
72
  });
75
73
  export var Label = /*#__PURE__*/React.forwardRef(function Label(_ref6, ref) {
76
74
  var children = _ref6.children,
77
- props = _objectWithoutProperties(_ref6, _excluded4);
75
+ props = _objectWithoutProperties(_ref6, _excluded3);
78
76
  // Breaking change: Option to make aria-hidden since parent requires a label.
79
77
  // Can add in major once labelling is enforced
80
78
  return /*#__PURE__*/React.createElement(StyledLabelContainer, _extends({
@@ -83,7 +81,7 @@ export var Label = /*#__PURE__*/React.forwardRef(function Label(_ref6, ref) {
83
81
  });
84
82
  export var Portrait = /*#__PURE__*/React.forwardRef(function Portrait(_ref7, ref) {
85
83
  var imageUrl = _ref7.imageUrl,
86
- props = _objectWithoutProperties(_ref7, _excluded5);
84
+ props = _objectWithoutProperties(_ref7, _excluded4);
87
85
  return /*#__PURE__*/React.createElement(StyledPortraitContainer, _extends({
88
86
  ref: ref,
89
87
  $imageUrl: imageUrl
@@ -1 +1 @@
1
- {"version":3,"file":"Avatar.js","names":["useButton","React","addSubcomponents","StyledAvatarContainer","StyledAvatarOverlay","StyledIconContainer","StyledLabelContainer","StyledPortraitContainer","AvatarInner","_ref","ref","as","clickable","disabled","href","size","children","onBlur","onFocus","rel","role","target","props","_objectWithoutProperties","_excluded","_ref2","onPress","restProps","_excluded2","_useButton","_objectSpread","elementType","isDisabled","type","buttonProps","linkDisabled","a11yProps","$clickable","_defineProperty","undefined","createElement","_extends","$disabled","$size","Children","only","Avatar_","forwardRef","NextAvatar_","Icon","_ref5","icon","_excluded3","Label","_ref6","_excluded4","Portrait","_ref7","imageUrl","_excluded5","$imageUrl","displayName","NextAvatar","Avatar"],"sources":["../../src/Avatar/Avatar.tsx"],"sourcesContent":["import { useButton } from '@react-aria/button'\nimport React from 'react'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport type { DivAttributes } from '../_utils/types'\nimport {\n StyledAvatarContainer,\n StyledAvatarOverlay,\n StyledIconContainer,\n StyledLabelContainer,\n StyledPortraitContainer,\n} from './Avatar.styles'\nimport type {\n AvatarIconProps,\n AvatarLabelProps,\n AvatarPortraitProps,\n AvatarProps,\n AvatarRef,\n AvatarRoles,\n AvatarRoleType,\n BaseAvatarProps,\n} from './Avatar.types'\n\nfunction AvatarInner(\n {\n as,\n clickable,\n disabled,\n // @ts-ignore link only\n href,\n size,\n children,\n onBlur,\n onFocus,\n // @ts-ignore link only\n rel,\n // @ts-ignore not on legacy\n role,\n // @ts-ignore link only\n target,\n ...props\n }: AvatarProps<AvatarRoleType>,\n ref: AvatarRef<AvatarRoleType>\n) {\n const { onPress, ...restProps } = props as AvatarProps<'button'>\n\n let { buttonProps } = useButton(\n {\n ...props,\n onBlur: onBlur as (e: React.FocusEvent) => void,\n onFocus: onFocus as (e: React.FocusEvent) => void,\n elementType: (as as any as string) === 'a' ? 'a' : 'div',\n href,\n isDisabled: disabled,\n onPress,\n rel,\n target,\n type: 'button',\n },\n ref as any // TODO fix\n )\n\n const linkDisabled = disabled || (role === 'link' && !href)\n\n const a11yProps =\n role === 'button'\n ? { ...buttonProps, as: as || 'div', $clickable: !disabled }\n : role === 'link'\n ? {\n ['aria-disabled']: linkDisabled ? true : undefined,\n as: as || 'a',\n $clickable: !linkDisabled,\n href: linkDisabled ? undefined : href,\n onBlur,\n onFocus,\n rel,\n role: 'link',\n target,\n }\n : role === 'img'\n ? {\n ['aria-disabled']: disabled ? true : undefined,\n role: 'img',\n onBlur,\n onFocus,\n }\n : { onBlur, onFocus }\n\n return (\n <StyledAvatarContainer\n ref={ref as any}\n $clickable={clickable}\n $disabled={disabled}\n $size={size}\n data-qa=\"core-avatar\"\n {...a11yProps}\n {...(restProps as any)} // TODO fix\n >\n {React.Children.only(children)}\n <StyledAvatarOverlay aria-hidden />\n </StyledAvatarContainer>\n )\n}\n\nconst Avatar_ = React.forwardRef(AvatarInner) as <Role extends AvatarRoles>(\n props:\n | AvatarProps<Role>\n // Legacy\n | (BaseAvatarProps & { ref?: React.ComponentPropsWithRef<'div'>['ref'] })\n) => ReturnType<typeof AvatarInner>\n\nconst NextAvatar_ = React.forwardRef(AvatarInner) as <Role extends AvatarRoles>(\n props: AvatarProps<Role>\n) => ReturnType<typeof AvatarInner>\n\nexport const Icon = React.forwardRef<\n HTMLDivElement,\n DivAttributes & AvatarIconProps\n>(function Icon({ icon, ...props }, ref) {\n return (\n <StyledIconContainer ref={ref} {...props}>\n {icon}\n </StyledIconContainer>\n )\n})\n\nexport const Label = React.forwardRef<\n HTMLDivElement,\n DivAttributes & AvatarLabelProps\n>(function Label({ children, ...props }, ref) {\n // Breaking change: Option to make aria-hidden since parent requires a label.\n // Can add in major once labelling is enforced\n return (\n <StyledLabelContainer ref={ref} {...props}>\n {children}\n </StyledLabelContainer>\n )\n})\n\nexport const Portrait = React.forwardRef<\n HTMLDivElement,\n DivAttributes & AvatarPortraitProps\n>(function Portrait({ imageUrl, ...props }, ref) {\n return (\n <StyledPortraitContainer ref={ref} $imageUrl={imageUrl} {...props}>\n <StyledAvatarOverlay />\n </StyledPortraitContainer>\n )\n})\n\n// @ts-ignore\nAvatar_.displayName = 'Avatar'\n\nIcon.displayName = 'Avatar.Icon'\n\nLabel.displayName = 'Avatar.Label'\n\nPortrait.displayName = 'Avatar.Portrait'\n\n// @ts-ignore\nNextAvatar_.displayName = 'Avatar'\n\n/**\n\n We use avatars to visually represent our users, places, and things in the app.\n These can be in the form of rich media or representative illustrations.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-avatar--demo)\n\n @see [Design Guidelines](https://design.procore.com/avatar)\n\n @a11y Avatar's need a `aria-label` and can be enhanced with `role` for interaction. If decorative only, add `aria-hidden`. The inaccessible `clickable` prop is for UI only\n\n */\nexport const NextAvatar = addSubcomponents(\n {\n Icon,\n Label,\n Portrait,\n },\n NextAvatar_\n)\n\n/**\n\n We use avatars to visually represent our users, places, and things in the app.\n These can be in the form of rich media or representative illustrations.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-avatar--demo)\n\n @see [Design Guidelines](https://design.procore.com/avatar)\n\n @a11y Avatar's need a `aria-label` and can be enhanced with `role` for interaction. If decorative only, add `aria-hidden`. The inaccessible `clickable` prop is for UI only\n\n */\nexport const Avatar = addSubcomponents(\n {\n Icon,\n Label,\n Portrait,\n },\n Avatar_\n)\n"],"mappings":"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"}
1
+ {"version":3,"file":"Avatar.js","names":["useButton","React","addSubcomponents","StyledAvatarContainer","StyledAvatarOverlay","StyledIconContainer","StyledLabelContainer","StyledPortraitContainer","AvatarInner","_ref","ref","as","clickable","disabled","href","size","children","onBlur","onFocus","rel","role","target","props","_objectWithoutProperties","_excluded","_ref2","onPress","_useButton","_objectSpread","elementType","isDisabled","type","buttonProps","linkDisabled","a11yProps","$clickable","_defineProperty","undefined","createElement","_extends","$disabled","$size","Children","only","Avatar_","forwardRef","NextAvatar_","Icon","_ref5","icon","_excluded2","Label","_ref6","_excluded3","Portrait","_ref7","imageUrl","_excluded4","$imageUrl","displayName","NextAvatar","Avatar"],"sources":["../../src/Avatar/Avatar.tsx"],"sourcesContent":["import { useButton } from '@react-aria/button'\nimport React from 'react'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport type { DivAttributes } from '../_utils/types'\nimport {\n StyledAvatarContainer,\n StyledAvatarOverlay,\n StyledIconContainer,\n StyledLabelContainer,\n StyledPortraitContainer,\n} from './Avatar.styles'\nimport type {\n AvatarIconProps,\n AvatarLabelProps,\n AvatarPortraitProps,\n AvatarProps,\n AvatarRef,\n AvatarRoles,\n AvatarRoleType,\n BaseAvatarProps,\n} from './Avatar.types'\n\nfunction AvatarInner(\n {\n as,\n clickable,\n disabled,\n // @ts-ignore link only\n href,\n size,\n children,\n onBlur,\n onFocus,\n // @ts-ignore link only\n rel,\n // @ts-ignore not on legacy\n role,\n // @ts-ignore link only\n target,\n ...props\n }: AvatarProps<AvatarRoleType>,\n ref: AvatarRef<AvatarRoleType>\n) {\n const { onPress } = props as AvatarProps<'button'>\n\n let { buttonProps } = useButton(\n {\n ...props,\n onBlur: onBlur as (e: React.FocusEvent) => void,\n onFocus: onFocus as (e: React.FocusEvent) => void,\n elementType: (as as any as string) === 'a' ? 'a' : 'div',\n href,\n isDisabled: disabled,\n onPress,\n rel,\n target,\n type: 'button',\n },\n ref as any // TODO fix\n )\n\n const linkDisabled = disabled || (role === 'link' && !href)\n\n const a11yProps =\n role === 'button'\n ? { ...buttonProps, as: as || 'div', $clickable: !disabled }\n : role === 'link'\n ? {\n ['aria-disabled']: linkDisabled ? true : undefined,\n as: as || 'a',\n $clickable: !linkDisabled,\n href: linkDisabled ? undefined : href,\n onBlur,\n onFocus,\n rel,\n role: 'link',\n target,\n }\n : role === 'img'\n ? {\n ['aria-disabled']: disabled ? true : undefined,\n role: 'img',\n onBlur,\n onFocus,\n }\n : { onBlur, onFocus }\n\n return (\n <StyledAvatarContainer\n ref={ref as any}\n $clickable={clickable}\n $disabled={disabled}\n $size={size}\n data-qa=\"core-avatar\"\n {...a11yProps}\n {...(props as any)} // TODO fix\n >\n {React.Children.only(children)}\n <StyledAvatarOverlay aria-hidden />\n </StyledAvatarContainer>\n )\n}\n\nconst Avatar_ = React.forwardRef(AvatarInner) as <Role extends AvatarRoles>(\n props:\n | AvatarProps<Role>\n // Legacy\n | (BaseAvatarProps & { ref?: React.ComponentPropsWithRef<'div'>['ref'] })\n) => ReturnType<typeof AvatarInner>\n\nconst NextAvatar_ = React.forwardRef(AvatarInner) as <Role extends AvatarRoles>(\n props: AvatarProps<Role>\n) => ReturnType<typeof AvatarInner>\n\nexport const Icon = React.forwardRef<\n HTMLDivElement,\n DivAttributes & AvatarIconProps\n>(function Icon({ icon, ...props }, ref) {\n return (\n <StyledIconContainer ref={ref} {...props}>\n {icon}\n </StyledIconContainer>\n )\n})\n\nexport const Label = React.forwardRef<\n HTMLDivElement,\n DivAttributes & AvatarLabelProps\n>(function Label({ children, ...props }, ref) {\n // Breaking change: Option to make aria-hidden since parent requires a label.\n // Can add in major once labelling is enforced\n return (\n <StyledLabelContainer ref={ref} {...props}>\n {children}\n </StyledLabelContainer>\n )\n})\n\nexport const Portrait = React.forwardRef<\n HTMLDivElement,\n DivAttributes & AvatarPortraitProps\n>(function Portrait({ imageUrl, ...props }, ref) {\n return (\n <StyledPortraitContainer ref={ref} $imageUrl={imageUrl} {...props}>\n <StyledAvatarOverlay />\n </StyledPortraitContainer>\n )\n})\n\n// @ts-ignore\nAvatar_.displayName = 'Avatar'\n\nIcon.displayName = 'Avatar.Icon'\n\nLabel.displayName = 'Avatar.Label'\n\nPortrait.displayName = 'Avatar.Portrait'\n\n// @ts-ignore\nNextAvatar_.displayName = 'Avatar'\n\n/**\n\n We use avatars to visually represent our users, places, and things in the app.\n These can be in the form of rich media or representative illustrations.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-avatar--demo)\n\n @see [Design Guidelines](https://design.procore.com/avatar)\n\n @a11y Avatar's need a `aria-label` and can be enhanced with `role` for interaction. If decorative only, add `aria-hidden`. The inaccessible `clickable` prop is for UI only\n\n */\nexport const NextAvatar = addSubcomponents(\n {\n Icon,\n Label,\n Portrait,\n },\n NextAvatar_\n)\n\n/**\n\n We use avatars to visually represent our users, places, and things in the app.\n These can be in the form of rich media or representative illustrations.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-avatar--demo)\n\n @see [Design Guidelines](https://design.procore.com/avatar)\n\n @a11y Avatar's need a `aria-label` and can be enhanced with `role` for interaction. If decorative only, add `aria-hidden`. The inaccessible `clickable` prop is for UI only\n\n */\nexport const Avatar = addSubcomponents(\n {\n Icon,\n Label,\n Portrait,\n },\n Avatar_\n)\n"],"mappings":"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"}
@@ -28,26 +28,26 @@ var iconSize = {
28
28
  };
29
29
  export var StyledAvatarOverlay = /*#__PURE__*/styled.div.withConfig({
30
30
  displayName: "StyledAvatarOverlay",
31
- componentId: "core-12_21_0-cdn_3__sc-7q2ydl-0"
31
+ componentId: "core-12_21_0-cdn_4__sc-7q2ydl-0"
32
32
  })(["width:100%;height:100%;position:absolute;top:0;left:0;border-radius:100%;opacity:0;"]);
33
33
  export var StyledIconContainer = /*#__PURE__*/styled.div.withConfig({
34
34
  displayName: "StyledIconContainer",
35
- componentId: "core-12_21_0-cdn_3__sc-7q2ydl-1"
35
+ componentId: "core-12_21_0-cdn_4__sc-7q2ydl-1"
36
36
  })(["display:inline-flex;"]);
37
37
  export var StyledLabelContainer = /*#__PURE__*/styled.div.withConfig({
38
38
  displayName: "StyledLabelContainer",
39
- componentId: "core-12_21_0-cdn_3__sc-7q2ydl-2"
39
+ componentId: "core-12_21_0-cdn_4__sc-7q2ydl-2"
40
40
  })(["text-transform:uppercase;"]);
41
41
  export var StyledPortraitContainer = /*#__PURE__*/styled.div.withConfig({
42
42
  displayName: "StyledPortraitContainer",
43
- componentId: "core-12_21_0-cdn_3__sc-7q2ydl-3"
43
+ componentId: "core-12_21_0-cdn_4__sc-7q2ydl-3"
44
44
  })(["background-color:", ";background-position:center;background-repeat:no-repeat;background-size:cover;height:100%;width:100%;", ""], colors.white, function (_ref) {
45
45
  var $imageUrl = _ref.$imageUrl;
46
46
  return css(["background-image:url(", ");"], $imageUrl);
47
47
  });
48
48
  export var StyledAvatarContainer = /*#__PURE__*/styled.div.withConfig({
49
49
  displayName: "StyledAvatarContainer",
50
- componentId: "core-12_21_0-cdn_3__sc-7q2ydl-4"
50
+ componentId: "core-12_21_0-cdn_4__sc-7q2ydl-4"
51
51
  })(["display:inline-flex;justify-content:center;align-items:center;border-radius:100%;overflow:hidden;position:relative;cursor:default;color:", ";background-color:", ";text-decoration:none;a:has(> &){text-decoration:none;}&:focus{", "}a:focus:has(> &){", " border-radius:100%;}", " ", ";"], colors.white, colors.gray30, getGapOutlineFocus, getGapOutlineFocus, function (_ref2) {
52
52
  var _ref2$$size = _ref2.$size,
53
53
  $size = _ref2$$size === void 0 ? 'md' : _ref2$$size;
@@ -11,7 +11,7 @@ export declare function getIcon(type: AvatarStackItemType, size: 'md' | 'sm'): R
11
11
  export declare function getAvatarIcon(type: AvatarStackItemType, size: AvatarStackSize): React.JSX.Element | null;
12
12
  export declare function getColorOrder(avatarItems: AvatarStackItem[]): Map<AvatarStackItemId, Color>;
13
13
  export declare function AvatarStackContactItem({ id, type, imageUrl, initials, inactive, name, linkUrl, description, }: AvatarStackItem): React.JSX.Element;
14
- export declare function AvatarContent({ imageUrl, initials, type, size, }: {
14
+ export declare function AvatarContent({ imageUrl, initials, type, size, ...props }: {
15
15
  imageUrl?: AvatarStackItem['imageUrl'];
16
16
  initials: AvatarStackItem['initials'];
17
17
  type: AvatarStackItem['type'];
@@ -1,19 +1,20 @@
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 = ["items", "title", "size", "getInitials", "getImageUrl", "onClickViewAll"];
2
+ var _excluded = ["imageUrl", "initials", "type", "size"],
3
+ _excluded2 = ["items", "title", "size", "getInitials", "getImageUrl", "onClickViewAll"];
3
4
  function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
4
5
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
5
6
  function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
6
7
  function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
7
8
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
8
9
  function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
9
- function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
10
- function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
11
10
  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; }
12
11
  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; }
13
12
  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; }
14
13
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
15
14
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
16
15
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
16
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
17
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
17
18
  import { Building, People } from '@procore/core-icons';
18
19
  import { useId } from '@react-aria/utils';
19
20
  import React, { forwardRef, useMemo, useState } from 'react';
@@ -107,11 +108,11 @@ export function AvatarStackContactItem(_ref2) {
107
108
  linkUrl = _ref2.linkUrl,
108
109
  description = _ref2.description;
109
110
  return /*#__PURE__*/React.createElement(StyledContactItem, {
110
- key: id,
111
+ disabled: inactive,
112
+ icon: getContactIcon(type),
111
113
  imageUrl: imageUrl,
112
114
  initials: initials,
113
- icon: getContactIcon(type),
114
- disabled: inactive
115
+ key: id
115
116
  }, /*#__PURE__*/React.createElement(ContactItem.Title, null, !inactive && linkUrl ? /*#__PURE__*/React.createElement(Link, {
116
117
  href: linkUrl
117
118
  }, name) : name), /*#__PURE__*/React.createElement(ContactItem.Description, null, type === 'group' ? /*#__PURE__*/React.createElement(Typography, {
@@ -122,20 +123,21 @@ export function AvatarContent(_ref3) {
122
123
  var imageUrl = _ref3.imageUrl,
123
124
  initials = _ref3.initials,
124
125
  type = _ref3.type,
125
- size = _ref3.size;
126
+ size = _ref3.size,
127
+ props = _objectWithoutProperties(_ref3, _excluded);
126
128
  var avatarIcon = getAvatarIcon(type, size);
127
129
  if (imageUrl) {
128
- return /*#__PURE__*/React.createElement(Avatar.Portrait, {
130
+ return /*#__PURE__*/React.createElement(Avatar.Portrait, _extends({}, props, {
129
131
  imageUrl: imageUrl
130
- });
132
+ }));
131
133
  }
132
134
  if (avatarIcon) {
133
- return /*#__PURE__*/React.createElement(Avatar.Icon, {
135
+ return /*#__PURE__*/React.createElement(Avatar.Icon, _extends({}, props, {
134
136
  icon: avatarIcon
135
- });
137
+ }));
136
138
  }
137
139
  if (initials) {
138
- return /*#__PURE__*/React.createElement(Avatar.Label, null, initials);
140
+ return /*#__PURE__*/React.createElement(Avatar.Label, props, initials);
139
141
  }
140
142
  return null;
141
143
  }
@@ -167,10 +169,10 @@ function AvatarWithPopover(_ref4) {
167
169
  description: item.description
168
170
  }))
169
171
  }, /*#__PURE__*/React.createElement(StyledAvatar, _extends({}, avatarProps, {
172
+ $color: colors.get(item.id),
170
173
  "aria-label": "".concat(item.name, ", ").concat(item.description),
171
174
  disabled: item.inactive,
172
- size: size,
173
- $color: colors.get(item.id)
175
+ size: size
174
176
  }), /*#__PURE__*/React.createElement(AvatarContent, {
175
177
  imageUrl: item.imageUrl,
176
178
  initials: item.initials,
@@ -189,9 +191,9 @@ export function FoldedAvatarStack(_ref5) {
189
191
  var overlayRef = React.useRef(null);
190
192
  var restAvatarId = useId();
191
193
  return /*#__PURE__*/React.createElement(Popover, {
192
- trigger: defaultPopoverTrigger,
193
194
  "aria-labelledby": restAvatarId,
194
195
  overlayRef: overlayRef,
196
+ trigger: defaultPopoverTrigger,
195
197
  beforeHide: function beforeHide(e) {
196
198
  return e.type !== 'blur';
197
199
  },
@@ -234,6 +236,7 @@ export function ViewAllModal(_ref6) {
234
236
  items = _ref6.items;
235
237
  var I18n = useI18nContext();
236
238
  var labelId = useId();
239
+ var text = "".concat(title, " (").concat(items.length, ")");
237
240
  return /*#__PURE__*/React.createElement(Modal, {
238
241
  role: "dialog",
239
242
  "aria-labelledby": labelId,
@@ -241,9 +244,9 @@ export function ViewAllModal(_ref6) {
241
244
  onClose: onClose
242
245
  }, /*#__PURE__*/React.createElement(Modal.Header, {
243
246
  onClose: onClose
244
- }, /*#__PURE__*/React.createElement("span", {
247
+ }, /*#__PURE__*/React.createElement(Modal.Heading, {
245
248
  id: labelId
246
- }, title, " (", items.length, ")")), /*#__PURE__*/React.createElement(StyledModalBody, null, items.map(function (item) {
249
+ }, text)), /*#__PURE__*/React.createElement(StyledModalBody, null, items.map(function (item) {
247
250
  return /*#__PURE__*/React.createElement(AvatarStackContactItem, {
248
251
  key: item.id,
249
252
  id: item.id,
@@ -286,7 +289,7 @@ var _AvatarStack = function _AvatarStack(_ref8, ref) {
286
289
  _ref8$getImageUrl = _ref8.getImageUrl,
287
290
  getImageUrl = _ref8$getImageUrl === void 0 ? defaultGetImageUrl : _ref8$getImageUrl,
288
291
  onClickViewAll = _ref8.onClickViewAll,
289
- props = _objectWithoutProperties(_ref8, _excluded);
292
+ props = _objectWithoutProperties(_ref8, _excluded2);
290
293
  var _useState = useState(false),
291
294
  _useState2 = _slicedToArray(_useState, 2),
292
295
  isModalOpen = _useState2[0],
@@ -1 +1 @@
1
- {"version":3,"file":"AvatarStack.js","names":["Building","People","useId","React","forwardRef","useMemo","useState","Avatar","Button","ContactItem","Link","Modal","Popover","Typography","useI18nContext","colorsOrder","foldedItemsCap","restCountThreshold","visibleItemsCap","StyledAvatar","StyledContactItem","StyledContactItems","StyledModalBody","StyledViewAllWrapper","StyledWrapper","defaultPopoverTrigger","getOverflowValues","items","foldedItems","restCountLabel","isViewAllNeeded","visibleItems","length","slice","restItemsCount","concat","getIcon","type","size","createElement","getContactIcon","getAvatarIcon","avatarSize","getColorOrder","avatarItems","reduce","_ref","item","map","color","imageUrl","inactive","set","id","currentColorIndex","indexOf","nextColorIndex","Map","AvatarStackContactItem","_ref2","initials","name","linkUrl","description","key","icon","disabled","Title","href","Description","AvatarContent","_ref3","avatarIcon","Portrait","Icon","Label","AvatarWithPopover","_ref4","colors","hasEnabledLink","avatarProps","role","tabIndex","trigger","overlay","Content","_extends","$color","get","FoldedAvatarStack","_ref5","onClickViewAll","title","I18n","overlayRef","useRef","restAvatarId","beforeHide","e","onClick","variant","t","onPress","ViewAllModal","_ref6","isOpen","onClose","labelId","open","Header","Footer","FooterButtons","defaultInitials","defaultGetImageUrl","getTransformedItems","_ref7","getInitials","getImageUrl","_objectSpread","_AvatarStack","_ref8","ref","_items","_ref8$size","_ref8$getInitials","_ref8$getImageUrl","props","_objectWithoutProperties","_excluded","_useState","_useState2","_slicedToArray","isModalOpen","setIsModalOpen","_useMemo","visibleItemsColors","AvatarStack","displayName"],"sources":["../../src/AvatarStack/AvatarStack.tsx"],"sourcesContent":["import { Building, People } from '@procore/core-icons'\nimport { useId } from '@react-aria/utils'\nimport React, { forwardRef, useMemo, useState } from 'react'\nimport { Avatar } from '../Avatar'\nimport { Button } from '../Button'\nimport { ContactItem } from '../ContactItem'\nimport { Link } from '../Link'\nimport { Modal } from '../Modal'\nimport type { OverlayTriggerRef } from '../OverlayTrigger/OverlayTrigger.types'\nimport { Popover } from '../Popover'\nimport { Typography } from '../Typography'\nimport { useI18nContext } from '../_hooks/I18n'\nimport type { TriggerVariant } from '../_hooks/Trigger'\nimport type { Color } from '../_styles/colors'\nimport {\n colorsOrder,\n foldedItemsCap,\n restCountThreshold,\n visibleItemsCap,\n} from './AvatarStack.constants'\nimport {\n StyledAvatar,\n StyledContactItem,\n StyledContactItems,\n StyledModalBody,\n StyledViewAllWrapper,\n StyledWrapper,\n} from './AvatarStack.styles'\nimport type {\n AvatarStackItem,\n AvatarStackItemId,\n AvatarStackItemType,\n AvatarStackProps,\n AvatarStackSize,\n FoldedAvatarStackProps,\n ViewAllModalProps,\n} from './AvatarStack.types'\n\nconst defaultPopoverTrigger: TriggerVariant[] = ['hover', 'focus']\n\nexport function getOverflowValues<Item extends AvatarStackItem>(items: Item[]) {\n let foldedItems: Item[] = []\n let restCountLabel: string | null = null\n let isViewAllNeeded = false\n\n const visibleItems =\n items.length > visibleItemsCap ? items.slice(0, visibleItemsCap - 1) : items\n const restItemsCount = items.length - visibleItems.length\n\n if (restItemsCount > 0) {\n foldedItems = items.slice(\n visibleItems.length,\n visibleItems.length + foldedItemsCap\n )\n\n restCountLabel =\n restItemsCount > restCountThreshold\n ? `${restCountThreshold}+`\n : `+${restItemsCount}`\n\n isViewAllNeeded = restItemsCount > foldedItemsCap\n }\n\n return {\n visibleItems,\n foldedItems,\n restCountLabel,\n isViewAllNeeded,\n }\n}\n\nexport function getIcon(type: AvatarStackItemType, size: 'md' | 'sm') {\n switch (type) {\n case 'company':\n return <Building size={size} />\n\n case 'group':\n return <People size={size} />\n\n case 'user':\n default:\n return null\n }\n}\n\nfunction getContactIcon(type: AvatarStackItemType) {\n return getIcon(type, 'md')\n}\n\nexport function getAvatarIcon(\n type: AvatarStackItemType,\n size: AvatarStackSize\n) {\n const avatarSize = size === 'lg' ? 'md' : 'sm'\n return getIcon(type, avatarSize)\n}\n\nexport function getColorOrder(avatarItems: AvatarStackItem[]) {\n return avatarItems.reduce(\n ({ map, color }, item) => {\n if (item.imageUrl) {\n return {\n map,\n color,\n }\n }\n\n if (item.inactive) {\n map.set(item.id, 'gray70')\n\n return {\n map,\n color,\n }\n }\n\n map.set(item.id, color)\n\n const currentColorIndex = colorsOrder.indexOf(color)\n const nextColorIndex = (currentColorIndex + 1) % colorsOrder.length\n return {\n map,\n color: item.imageUrl ? color : colorsOrder[nextColorIndex],\n }\n },\n {\n map: new Map<AvatarStackItemId, Color>(),\n color: colorsOrder[0],\n }\n ).map\n}\n\nexport function AvatarStackContactItem({\n id,\n type,\n imageUrl,\n initials,\n inactive,\n name,\n linkUrl,\n description,\n}: AvatarStackItem) {\n return (\n <StyledContactItem\n key={id}\n imageUrl={imageUrl}\n initials={initials}\n icon={getContactIcon(type)}\n disabled={inactive}\n >\n <ContactItem.Title>\n {!inactive && linkUrl ? <Link href={linkUrl}>{name}</Link> : name}\n </ContactItem.Title>\n <ContactItem.Description>\n {type === 'group' ? (\n <Typography color=\"gray15\">{description}</Typography>\n ) : (\n description\n )}\n </ContactItem.Description>\n </StyledContactItem>\n )\n}\n\nexport function AvatarContent({\n imageUrl,\n initials,\n type,\n size,\n}: {\n imageUrl?: AvatarStackItem['imageUrl']\n initials: AvatarStackItem['initials']\n type: AvatarStackItem['type']\n size: AvatarStackSize\n}) {\n const avatarIcon = getAvatarIcon(type, size)\n\n if (imageUrl) {\n return <Avatar.Portrait imageUrl={imageUrl} />\n }\n\n if (avatarIcon) {\n return <Avatar.Icon icon={avatarIcon} />\n }\n\n if (initials) {\n return <Avatar.Label>{initials}</Avatar.Label>\n }\n\n return null\n}\n\nfunction AvatarWithPopover<Item extends AvatarStackItem>({\n item,\n size,\n colors,\n}: {\n item: Item\n size: AvatarStackSize\n colors: Map<AvatarStackItemId, Color>\n}) {\n const hasEnabledLink = item.linkUrl && !item.inactive\n const avatarProps = hasEnabledLink\n ? {\n role: 'link',\n href: item.linkUrl,\n }\n : {\n role: 'img',\n // Allow SR to open Popover as it cycles through. Keeps visual with audio.\n // The link or image is labelled, and focus does not enter the Popover.\n tabIndex: -1,\n }\n\n return (\n <Popover\n key={item.id}\n trigger={defaultPopoverTrigger}\n overlay={\n <Popover.Content>\n <AvatarStackContactItem\n id={item.id}\n type={item.type}\n imageUrl={item.imageUrl}\n initials={item.initials}\n inactive={item.inactive}\n name={item.name}\n linkUrl={item.linkUrl}\n description={item.description}\n />\n </Popover.Content>\n }\n >\n <StyledAvatar\n {...avatarProps}\n aria-label={`${item.name}, ${item.description}`}\n disabled={item.inactive}\n size={size}\n $color={colors.get(item.id) as Color}\n >\n <AvatarContent\n imageUrl={item.imageUrl}\n initials={item.initials}\n type={item.type}\n size={size}\n />\n </StyledAvatar>\n </Popover>\n )\n}\n\nexport function FoldedAvatarStack<Item extends AvatarStackItem>({\n items,\n onClickViewAll,\n size,\n restCountLabel,\n isViewAllNeeded,\n title,\n}: FoldedAvatarStackProps<Item>) {\n const I18n = useI18nContext()\n const overlayRef = React.useRef<OverlayTriggerRef>(null)\n const restAvatarId = useId()\n\n return (\n <Popover\n trigger={defaultPopoverTrigger}\n aria-labelledby={restAvatarId}\n overlayRef={overlayRef}\n beforeHide={(e) => {\n return e.type !== 'blur'\n }}\n overlay={\n <Popover.Content>\n <StyledContactItems>\n {items.map((item) => (\n <AvatarStackContactItem\n key={item.id}\n id={item.id}\n type={item.type}\n imageUrl={item.imageUrl}\n initials={item.initials}\n inactive={item.inactive}\n name={item.name}\n linkUrl={item.linkUrl}\n description={item.description}\n />\n ))}\n </StyledContactItems>\n {isViewAllNeeded && (\n <StyledViewAllWrapper>\n <Button\n data-qa=\"core-avatar-stack-view-all-modal-trigger\"\n onClick={onClickViewAll}\n size=\"sm\"\n variant=\"secondary\"\n >\n {I18n.t('core.avatarStack.viewAll')}\n </Button>\n </StyledViewAllWrapper>\n )}\n </Popover.Content>\n }\n >\n <StyledAvatar\n role=\"button\"\n onPress={onClickViewAll}\n id={restAvatarId}\n aria-label={`${restCountLabel}, ${title}`}\n data-qa=\"core-avatar-stack-folded-avatars-popover-trigger\"\n size={size}\n $color=\"gray85\"\n >\n <Avatar.Label aria-hidden>\n <Typography color=\"black\">{restCountLabel}</Typography>\n </Avatar.Label>\n </StyledAvatar>\n </Popover>\n )\n}\n\nexport function ViewAllModal<Item extends AvatarStackItem>({\n isOpen,\n onClose,\n title,\n items,\n}: ViewAllModalProps<Item>) {\n const I18n = useI18nContext()\n const labelId = useId()\n\n return (\n <Modal\n role=\"dialog\"\n aria-labelledby={labelId}\n open={isOpen}\n onClose={onClose}\n >\n <Modal.Header onClose={onClose}>\n <span id={labelId}>\n {title} ({items.length})\n </span>\n </Modal.Header>\n <StyledModalBody>\n {items.map((item) => (\n <AvatarStackContactItem\n key={item.id}\n id={item.id}\n type={item.type}\n imageUrl={item.imageUrl}\n initials={item.initials}\n inactive={item.inactive}\n name={item.name}\n linkUrl={item.linkUrl}\n description={item.description}\n />\n ))}\n </StyledModalBody>\n <Modal.Footer>\n <Modal.FooterButtons>\n <Button onClick={onClose}>{I18n.t('core.avatarStack.close')}</Button>\n </Modal.FooterButtons>\n </Modal.Footer>\n </Modal>\n )\n}\n\nexport function defaultInitials<Item extends AvatarStackItem>(item: Item) {\n return item.initials as string\n}\n\nexport function defaultGetImageUrl<Item extends AvatarStackItem>(item: Item) {\n return item.imageUrl as string\n}\n\nexport function getTransformedItems<Item extends AvatarStackItem>({\n items,\n getInitials,\n getImageUrl,\n}: {\n items: Item[]\n getInitials: AvatarStackProps<Item>['getInitials']\n getImageUrl: AvatarStackProps<Item>['getImageUrl']\n}) {\n return items.map((item) => ({\n ...item,\n initials: getInitials!(item),\n imageUrl: getImageUrl!(item),\n }))\n}\n\nconst _AvatarStack = <Item extends AvatarStackItem>(\n {\n items: _items,\n title,\n size = 'lg',\n getInitials = defaultInitials,\n getImageUrl = defaultGetImageUrl,\n onClickViewAll,\n ...props\n }: AvatarStackProps<Item>,\n ref: React.ForwardedRef<HTMLDivElement>\n) => {\n const [isModalOpen, setIsModalOpen] = useState(false)\n\n const items = useMemo(\n () =>\n getTransformedItems({\n items: _items,\n getInitials,\n getImageUrl,\n }),\n [_items]\n )\n\n const { visibleItems, foldedItems, restCountLabel, isViewAllNeeded } =\n useMemo(() => getOverflowValues(items), [items])\n\n const visibleItemsColors = useMemo(\n () => getColorOrder(visibleItems),\n [visibleItems]\n )\n\n return (\n <div ref={ref} {...props}>\n {isViewAllNeeded && !onClickViewAll && (\n <ViewAllModal\n isOpen={isModalOpen}\n onClose={() => setIsModalOpen(false)}\n title={title}\n items={items}\n />\n )}\n <StyledWrapper>\n {visibleItems.map((item) => {\n return (\n <AvatarWithPopover\n colors={visibleItemsColors}\n item={item}\n key={`${item.name}_${item.id}`}\n size={size}\n />\n )\n })}\n {foldedItems.length > 0 && (\n <FoldedAvatarStack\n restCountLabel={restCountLabel as string}\n isViewAllNeeded={isViewAllNeeded}\n items={foldedItems}\n onClickViewAll={onClickViewAll || (() => setIsModalOpen(true))}\n size={size}\n title={title}\n />\n )}\n </StyledWrapper>\n </div>\n )\n}\n\n/**\n\n We use avatars to visually represent our users, places, and things in the app.\n These can be in the form of rich media or representative illustrations.\n\n @since 10.19.0\n\n @see [Storybook](https://procore.github.io/core/latest/?path=/story/demos-avatarstack--demo)\n\n @see [Design Guidelines](https://design.procore.com/avatar-stack)\n */\nexport const AvatarStack = forwardRef(_AvatarStack) as <\n Item extends AvatarStackItem\n>(\n props: AvatarStackProps<Item> & { ref?: React.ForwardedRef<HTMLDivElement> }\n) => ReturnType<typeof _AvatarStack>\n\n// @ts-ignore\nAvatarStack.displayName = 'AvatarStack'\n"],"mappings":"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"}
1
+ {"version":3,"file":"AvatarStack.js","names":["Building","People","useId","React","forwardRef","useMemo","useState","Avatar","Button","ContactItem","Link","Modal","Popover","Typography","useI18nContext","colorsOrder","foldedItemsCap","restCountThreshold","visibleItemsCap","StyledAvatar","StyledContactItem","StyledContactItems","StyledModalBody","StyledViewAllWrapper","StyledWrapper","defaultPopoverTrigger","getOverflowValues","items","foldedItems","restCountLabel","isViewAllNeeded","visibleItems","length","slice","restItemsCount","concat","getIcon","type","size","createElement","getContactIcon","getAvatarIcon","avatarSize","getColorOrder","avatarItems","reduce","_ref","item","map","color","imageUrl","inactive","set","id","currentColorIndex","indexOf","nextColorIndex","Map","AvatarStackContactItem","_ref2","initials","name","linkUrl","description","disabled","icon","key","Title","href","Description","AvatarContent","_ref3","props","_objectWithoutProperties","_excluded","avatarIcon","Portrait","_extends","Icon","Label","AvatarWithPopover","_ref4","colors","hasEnabledLink","avatarProps","role","tabIndex","trigger","overlay","Content","$color","get","FoldedAvatarStack","_ref5","onClickViewAll","title","I18n","overlayRef","useRef","restAvatarId","beforeHide","e","onClick","variant","t","onPress","ViewAllModal","_ref6","isOpen","onClose","labelId","text","open","Header","Heading","Footer","FooterButtons","defaultInitials","defaultGetImageUrl","getTransformedItems","_ref7","getInitials","getImageUrl","_objectSpread","_AvatarStack","_ref8","ref","_items","_ref8$size","_ref8$getInitials","_ref8$getImageUrl","_excluded2","_useState","_useState2","_slicedToArray","isModalOpen","setIsModalOpen","_useMemo","visibleItemsColors","AvatarStack","displayName"],"sources":["../../src/AvatarStack/AvatarStack.tsx"],"sourcesContent":["import { Building, People } from '@procore/core-icons'\nimport { useId } from '@react-aria/utils'\nimport React, { forwardRef, useMemo, useState } from 'react'\nimport { Avatar } from '../Avatar'\nimport { Button } from '../Button'\nimport { ContactItem } from '../ContactItem'\nimport { Link } from '../Link'\nimport { Modal } from '../Modal'\nimport type { OverlayTriggerRef } from '../OverlayTrigger/OverlayTrigger.types'\nimport { Popover } from '../Popover'\nimport { Typography } from '../Typography'\nimport { useI18nContext } from '../_hooks/I18n'\nimport type { TriggerVariant } from '../_hooks/Trigger'\nimport type { Color } from '../_styles/colors'\nimport {\n colorsOrder,\n foldedItemsCap,\n restCountThreshold,\n visibleItemsCap,\n} from './AvatarStack.constants'\nimport {\n StyledAvatar,\n StyledContactItem,\n StyledContactItems,\n StyledModalBody,\n StyledViewAllWrapper,\n StyledWrapper,\n} from './AvatarStack.styles'\nimport type {\n AvatarStackItem,\n AvatarStackItemId,\n AvatarStackItemType,\n AvatarStackProps,\n AvatarStackSize,\n FoldedAvatarStackProps,\n ViewAllModalProps,\n} from './AvatarStack.types'\n\nconst defaultPopoverTrigger: TriggerVariant[] = ['hover', 'focus']\n\nexport function getOverflowValues<Item extends AvatarStackItem>(items: Item[]) {\n let foldedItems: Item[] = []\n let restCountLabel: string | null = null\n let isViewAllNeeded = false\n\n const visibleItems =\n items.length > visibleItemsCap ? items.slice(0, visibleItemsCap - 1) : items\n const restItemsCount = items.length - visibleItems.length\n\n if (restItemsCount > 0) {\n foldedItems = items.slice(\n visibleItems.length,\n visibleItems.length + foldedItemsCap\n )\n\n restCountLabel =\n restItemsCount > restCountThreshold\n ? `${restCountThreshold}+`\n : `+${restItemsCount}`\n\n isViewAllNeeded = restItemsCount > foldedItemsCap\n }\n\n return {\n visibleItems,\n foldedItems,\n restCountLabel,\n isViewAllNeeded,\n }\n}\n\nexport function getIcon(type: AvatarStackItemType, size: 'md' | 'sm') {\n switch (type) {\n case 'company':\n return <Building size={size} />\n\n case 'group':\n return <People size={size} />\n\n case 'user':\n default:\n return null\n }\n}\n\nfunction getContactIcon(type: AvatarStackItemType) {\n return getIcon(type, 'md')\n}\n\nexport function getAvatarIcon(\n type: AvatarStackItemType,\n size: AvatarStackSize\n) {\n const avatarSize = size === 'lg' ? 'md' : 'sm'\n return getIcon(type, avatarSize)\n}\n\nexport function getColorOrder(avatarItems: AvatarStackItem[]) {\n return avatarItems.reduce(\n ({ map, color }, item) => {\n if (item.imageUrl) {\n return {\n map,\n color,\n }\n }\n\n if (item.inactive) {\n map.set(item.id, 'gray70')\n\n return {\n map,\n color,\n }\n }\n\n map.set(item.id, color)\n\n const currentColorIndex = colorsOrder.indexOf(color)\n const nextColorIndex = (currentColorIndex + 1) % colorsOrder.length\n return {\n map,\n color: item.imageUrl ? color : colorsOrder[nextColorIndex],\n }\n },\n {\n map: new Map<AvatarStackItemId, Color>(),\n color: colorsOrder[0],\n }\n ).map\n}\n\nexport function AvatarStackContactItem({\n id,\n type,\n imageUrl,\n initials,\n inactive,\n name,\n linkUrl,\n description,\n}: AvatarStackItem) {\n return (\n <StyledContactItem\n disabled={inactive}\n icon={getContactIcon(type)}\n imageUrl={imageUrl}\n initials={initials}\n key={id}\n >\n <ContactItem.Title>\n {!inactive && linkUrl ? <Link href={linkUrl}>{name}</Link> : name}\n </ContactItem.Title>\n <ContactItem.Description>\n {type === 'group' ? (\n <Typography color=\"gray15\">{description}</Typography>\n ) : (\n description\n )}\n </ContactItem.Description>\n </StyledContactItem>\n )\n}\n\nexport function AvatarContent({\n imageUrl,\n initials,\n type,\n size,\n ...props\n}: {\n imageUrl?: AvatarStackItem['imageUrl']\n initials: AvatarStackItem['initials']\n type: AvatarStackItem['type']\n size: AvatarStackSize\n}) {\n const avatarIcon = getAvatarIcon(type, size)\n\n if (imageUrl) {\n return <Avatar.Portrait {...props} imageUrl={imageUrl} />\n }\n\n if (avatarIcon) {\n return <Avatar.Icon {...props} icon={avatarIcon} />\n }\n\n if (initials) {\n return <Avatar.Label {...props}>{initials}</Avatar.Label>\n }\n\n return null\n}\n\nfunction AvatarWithPopover<Item extends AvatarStackItem>({\n item,\n size,\n colors,\n}: {\n item: Item\n size: AvatarStackSize\n colors: Map<AvatarStackItemId, Color>\n}) {\n const hasEnabledLink = item.linkUrl && !item.inactive\n const avatarProps = hasEnabledLink\n ? {\n role: 'link',\n href: item.linkUrl,\n }\n : {\n role: 'img',\n // Allow SR to open Popover as it cycles through. Keeps visual with audio.\n // The link or image is labelled, and focus does not enter the Popover.\n tabIndex: -1,\n }\n\n return (\n <Popover\n key={item.id}\n trigger={defaultPopoverTrigger}\n overlay={\n <Popover.Content>\n <AvatarStackContactItem\n id={item.id}\n type={item.type}\n imageUrl={item.imageUrl}\n initials={item.initials}\n inactive={item.inactive}\n name={item.name}\n linkUrl={item.linkUrl}\n description={item.description}\n />\n </Popover.Content>\n }\n >\n <StyledAvatar\n {...avatarProps}\n $color={colors.get(item.id) as Color}\n aria-label={`${item.name}, ${item.description}`}\n disabled={item.inactive}\n size={size}\n >\n <AvatarContent\n imageUrl={item.imageUrl}\n initials={item.initials}\n type={item.type}\n size={size}\n />\n </StyledAvatar>\n </Popover>\n )\n}\n\nexport function FoldedAvatarStack<Item extends AvatarStackItem>({\n items,\n onClickViewAll,\n size,\n restCountLabel,\n isViewAllNeeded,\n title,\n}: FoldedAvatarStackProps<Item>) {\n const I18n = useI18nContext()\n const overlayRef = React.useRef<OverlayTriggerRef>(null)\n const restAvatarId = useId()\n\n return (\n <Popover\n aria-labelledby={restAvatarId}\n overlayRef={overlayRef}\n trigger={defaultPopoverTrigger}\n beforeHide={(e) => {\n return e.type !== 'blur'\n }}\n overlay={\n <Popover.Content>\n <StyledContactItems>\n {items.map((item) => (\n <AvatarStackContactItem\n key={item.id}\n id={item.id}\n type={item.type}\n imageUrl={item.imageUrl}\n initials={item.initials}\n inactive={item.inactive}\n name={item.name}\n linkUrl={item.linkUrl}\n description={item.description}\n />\n ))}\n </StyledContactItems>\n {isViewAllNeeded && (\n <StyledViewAllWrapper>\n <Button\n data-qa=\"core-avatar-stack-view-all-modal-trigger\"\n onClick={onClickViewAll}\n size=\"sm\"\n variant=\"secondary\"\n >\n {I18n.t('core.avatarStack.viewAll')}\n </Button>\n </StyledViewAllWrapper>\n )}\n </Popover.Content>\n }\n >\n <StyledAvatar\n role=\"button\"\n onPress={onClickViewAll}\n id={restAvatarId}\n aria-label={`${restCountLabel}, ${title}`}\n data-qa=\"core-avatar-stack-folded-avatars-popover-trigger\"\n size={size}\n $color=\"gray85\"\n >\n <Avatar.Label aria-hidden>\n <Typography color=\"black\">{restCountLabel}</Typography>\n </Avatar.Label>\n </StyledAvatar>\n </Popover>\n )\n}\n\nexport function ViewAllModal<Item extends AvatarStackItem>({\n isOpen,\n onClose,\n title,\n items,\n}: ViewAllModalProps<Item>) {\n const I18n = useI18nContext()\n const labelId = useId()\n const text = `${title} (${items.length})`\n\n return (\n <Modal\n role=\"dialog\"\n aria-labelledby={labelId}\n open={isOpen}\n onClose={onClose}\n >\n <Modal.Header onClose={onClose}>\n <Modal.Heading id={labelId}>{text}</Modal.Heading>\n </Modal.Header>\n <StyledModalBody>\n {items.map((item) => (\n <AvatarStackContactItem\n key={item.id}\n id={item.id}\n type={item.type}\n imageUrl={item.imageUrl}\n initials={item.initials}\n inactive={item.inactive}\n name={item.name}\n linkUrl={item.linkUrl}\n description={item.description}\n />\n ))}\n </StyledModalBody>\n <Modal.Footer>\n <Modal.FooterButtons>\n <Button onClick={onClose}>{I18n.t('core.avatarStack.close')}</Button>\n </Modal.FooterButtons>\n </Modal.Footer>\n </Modal>\n )\n}\n\nexport function defaultInitials<Item extends AvatarStackItem>(item: Item) {\n return item.initials as string\n}\n\nexport function defaultGetImageUrl<Item extends AvatarStackItem>(item: Item) {\n return item.imageUrl as string\n}\n\nexport function getTransformedItems<Item extends AvatarStackItem>({\n items,\n getInitials,\n getImageUrl,\n}: {\n items: Item[]\n getInitials: AvatarStackProps<Item>['getInitials']\n getImageUrl: AvatarStackProps<Item>['getImageUrl']\n}) {\n return items.map((item) => ({\n ...item,\n initials: getInitials!(item),\n imageUrl: getImageUrl!(item),\n }))\n}\n\nconst _AvatarStack = <Item extends AvatarStackItem>(\n {\n items: _items,\n title,\n size = 'lg',\n getInitials = defaultInitials,\n getImageUrl = defaultGetImageUrl,\n onClickViewAll,\n ...props\n }: AvatarStackProps<Item>,\n ref: React.ForwardedRef<HTMLDivElement>\n) => {\n const [isModalOpen, setIsModalOpen] = useState(false)\n\n const items = useMemo(\n () =>\n getTransformedItems({\n items: _items,\n getInitials,\n getImageUrl,\n }),\n [_items]\n )\n\n const { visibleItems, foldedItems, restCountLabel, isViewAllNeeded } =\n useMemo(() => getOverflowValues(items), [items])\n\n const visibleItemsColors = useMemo(\n () => getColorOrder(visibleItems),\n [visibleItems]\n )\n\n return (\n <div ref={ref} {...props}>\n {isViewAllNeeded && !onClickViewAll && (\n <ViewAllModal\n isOpen={isModalOpen}\n onClose={() => setIsModalOpen(false)}\n title={title}\n items={items}\n />\n )}\n <StyledWrapper>\n {visibleItems.map((item) => {\n return (\n <AvatarWithPopover\n colors={visibleItemsColors}\n item={item}\n key={`${item.name}_${item.id}`}\n size={size}\n />\n )\n })}\n {foldedItems.length > 0 && (\n <FoldedAvatarStack\n restCountLabel={restCountLabel as string}\n isViewAllNeeded={isViewAllNeeded}\n items={foldedItems}\n onClickViewAll={onClickViewAll || (() => setIsModalOpen(true))}\n size={size}\n title={title}\n />\n )}\n </StyledWrapper>\n </div>\n )\n}\n\n/**\n\n We use avatars to visually represent our users, places, and things in the app.\n These can be in the form of rich media or representative illustrations.\n\n @since 10.19.0\n\n @see [Storybook](https://procore.github.io/core/latest/?path=/story/demos-avatarstack--demo)\n\n @see [Design Guidelines](https://design.procore.com/avatar-stack)\n */\nexport const AvatarStack = forwardRef(_AvatarStack) as <\n Item extends AvatarStackItem\n>(\n props: AvatarStackProps<Item> & { ref?: React.ForwardedRef<HTMLDivElement> }\n) => ReturnType<typeof _AvatarStack>\n\n// @ts-ignore\nAvatarStack.displayName = 'AvatarStack'\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA,SAASA,QAAQ,EAAEC,MAAM,QAAQ,qBAAqB;AACtD,SAASC,KAAK,QAAQ,mBAAmB;AACzC,OAAOC,KAAK,IAAIC,UAAU,EAAEC,OAAO,EAAEC,QAAQ,QAAQ,OAAO;AAC5D,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,WAAW,QAAQ,gBAAgB;AAC5C,SAASC,IAAI,QAAQ,SAAS;AAC9B,SAASC,KAAK,QAAQ,UAAU;AAEhC,SAASC,OAAO,QAAQ,YAAY;AACpC,SAASC,UAAU,QAAQ,eAAe;AAC1C,SAASC,cAAc,QAAQ,gBAAgB;AAG/C,SACEC,WAAW,EACXC,cAAc,EACdC,kBAAkB,EAClBC,eAAe,QACV,yBAAyB;AAChC,SACEC,YAAY,EACZC,iBAAiB,EACjBC,kBAAkB,EAClBC,eAAe,EACfC,oBAAoB,EACpBC,aAAa,QACR,sBAAsB;AAW7B,IAAMC,qBAAuC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC;AAElE,OAAO,SAASC,iBAAiBA,CAA+BC,KAAa,EAAE;EAC7E,IAAIC,WAAmB,GAAG,EAAE;EAC5B,IAAIC,cAA6B,GAAG,IAAI;EACxC,IAAIC,eAAe,GAAG,KAAK;EAE3B,IAAMC,YAAY,GAChBJ,KAAK,CAACK,MAAM,GAAGd,eAAe,GAAGS,KAAK,CAACM,KAAK,CAAC,CAAC,EAAEf,eAAe,GAAG,CAAC,CAAC,GAAGS,KAAK;EAC9E,IAAMO,cAAc,GAAGP,KAAK,CAACK,MAAM,GAAGD,YAAY,CAACC,MAAM;EAEzD,IAAIE,cAAc,GAAG,CAAC,EAAE;IACtBN,WAAW,GAAGD,KAAK,CAACM,KAAK,CACvBF,YAAY,CAACC,MAAM,EACnBD,YAAY,CAACC,MAAM,GAAGhB,cACxB,CAAC;IAEDa,cAAc,GACZK,cAAc,GAAGjB,kBAAkB,MAAAkB,MAAA,CAC5BlB,kBAAkB,aAAAkB,MAAA,CACjBD,cAAc,CAAE;IAE1BJ,eAAe,GAAGI,cAAc,GAAGlB,cAAc;EACnD;EAEA,OAAO;IACLe,YAAY,EAAZA,YAAY;IACZH,WAAW,EAAXA,WAAW;IACXC,cAAc,EAAdA,cAAc;IACdC,eAAe,EAAfA;EACF,CAAC;AACH;AAEA,OAAO,SAASM,OAAOA,CAACC,IAAyB,EAAEC,IAAiB,EAAE;EACpE,QAAQD,IAAI;IACV,KAAK,SAAS;MACZ,oBAAOlC,KAAA,CAAAoC,aAAA,CAACvC,QAAQ;QAACsC,IAAI,EAAEA;MAAK,CAAE,CAAC;IAEjC,KAAK,OAAO;MACV,oBAAOnC,KAAA,CAAAoC,aAAA,CAACtC,MAAM;QAACqC,IAAI,EAAEA;MAAK,CAAE,CAAC;IAE/B,KAAK,MAAM;IACX;MACE,OAAO,IAAI;EACf;AACF;AAEA,SAASE,cAAcA,CAACH,IAAyB,EAAE;EACjD,OAAOD,OAAO,CAACC,IAAI,EAAE,IAAI,CAAC;AAC5B;AAEA,OAAO,SAASI,aAAaA,CAC3BJ,IAAyB,EACzBC,IAAqB,EACrB;EACA,IAAMI,UAAU,GAAGJ,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,IAAI;EAC9C,OAAOF,OAAO,CAACC,IAAI,EAAEK,UAAU,CAAC;AAClC;AAEA,OAAO,SAASC,aAAaA,CAACC,WAA8B,EAAE;EAC5D,OAAOA,WAAW,CAACC,MAAM,CACvB,UAAAC,IAAA,EAAiBC,IAAI,EAAK;IAAA,IAAvBC,GAAG,GAAAF,IAAA,CAAHE,GAAG;MAAEC,KAAK,GAAAH,IAAA,CAALG,KAAK;IACX,IAAIF,IAAI,CAACG,QAAQ,EAAE;MACjB,OAAO;QACLF,GAAG,EAAHA,GAAG;QACHC,KAAK,EAALA;MACF,CAAC;IACH;IAEA,IAAIF,IAAI,CAACI,QAAQ,EAAE;MACjBH,GAAG,CAACI,GAAG,CAACL,IAAI,CAACM,EAAE,EAAE,QAAQ,CAAC;MAE1B,OAAO;QACLL,GAAG,EAAHA,GAAG;QACHC,KAAK,EAALA;MACF,CAAC;IACH;IAEAD,GAAG,CAACI,GAAG,CAACL,IAAI,CAACM,EAAE,EAAEJ,KAAK,CAAC;IAEvB,IAAMK,iBAAiB,GAAGvC,WAAW,CAACwC,OAAO,CAACN,KAAK,CAAC;IACpD,IAAMO,cAAc,GAAG,CAACF,iBAAiB,GAAG,CAAC,IAAIvC,WAAW,CAACiB,MAAM;IACnE,OAAO;MACLgB,GAAG,EAAHA,GAAG;MACHC,KAAK,EAAEF,IAAI,CAACG,QAAQ,GAAGD,KAAK,GAAGlC,WAAW,CAACyC,cAAc;IAC3D,CAAC;EACH,CAAC,EACD;IACER,GAAG,EAAE,IAAIS,GAAG,CAA2B,CAAC;IACxCR,KAAK,EAAElC,WAAW,CAAC,CAAC;EACtB,CACF,CAAC,CAACiC,GAAG;AACP;AAEA,OAAO,SAASU,sBAAsBA,CAAAC,KAAA,EASlB;EAAA,IARlBN,EAAE,GAAAM,KAAA,CAAFN,EAAE;IACFhB,IAAI,GAAAsB,KAAA,CAAJtB,IAAI;IACJa,QAAQ,GAAAS,KAAA,CAART,QAAQ;IACRU,QAAQ,GAAAD,KAAA,CAARC,QAAQ;IACRT,QAAQ,GAAAQ,KAAA,CAARR,QAAQ;IACRU,IAAI,GAAAF,KAAA,CAAJE,IAAI;IACJC,OAAO,GAAAH,KAAA,CAAPG,OAAO;IACPC,WAAW,GAAAJ,KAAA,CAAXI,WAAW;EAEX,oBACE5D,KAAA,CAAAoC,aAAA,CAACnB,iBAAiB;IAChB4C,QAAQ,EAAEb,QAAS;IACnBc,IAAI,EAAEzB,cAAc,CAACH,IAAI,CAAE;IAC3Ba,QAAQ,EAAEA,QAAS;IACnBU,QAAQ,EAAEA,QAAS;IACnBM,GAAG,EAAEb;EAAG,gBAERlD,KAAA,CAAAoC,aAAA,CAAC9B,WAAW,CAAC0D,KAAK,QACf,CAAChB,QAAQ,IAAIW,OAAO,gBAAG3D,KAAA,CAAAoC,aAAA,CAAC7B,IAAI;IAAC0D,IAAI,EAAEN;EAAQ,GAAED,IAAW,CAAC,GAAGA,IAC5C,CAAC,eACpB1D,KAAA,CAAAoC,aAAA,CAAC9B,WAAW,CAAC4D,WAAW,QACrBhC,IAAI,KAAK,OAAO,gBACflC,KAAA,CAAAoC,aAAA,CAAC1B,UAAU;IAACoC,KAAK,EAAC;EAAQ,GAAEc,WAAwB,CAAC,GAErDA,WAEqB,CACR,CAAC;AAExB;AAEA,OAAO,SAASO,aAAaA,CAAAC,KAAA,EAW1B;EAAA,IAVDrB,QAAQ,GAAAqB,KAAA,CAARrB,QAAQ;IACRU,QAAQ,GAAAW,KAAA,CAARX,QAAQ;IACRvB,IAAI,GAAAkC,KAAA,CAAJlC,IAAI;IACJC,IAAI,GAAAiC,KAAA,CAAJjC,IAAI;IACDkC,KAAK,GAAAC,wBAAA,CAAAF,KAAA,EAAAG,SAAA;EAOR,IAAMC,UAAU,GAAGlC,aAAa,CAACJ,IAAI,EAAEC,IAAI,CAAC;EAE5C,IAAIY,QAAQ,EAAE;IACZ,oBAAO/C,KAAA,CAAAoC,aAAA,CAAChC,MAAM,CAACqE,QAAQ,EAAAC,QAAA,KAAKL,KAAK;MAAEtB,QAAQ,EAAEA;IAAS,EAAE,CAAC;EAC3D;EAEA,IAAIyB,UAAU,EAAE;IACd,oBAAOxE,KAAA,CAAAoC,aAAA,CAAChC,MAAM,CAACuE,IAAI,EAAAD,QAAA,KAAKL,KAAK;MAAEP,IAAI,EAAEU;IAAW,EAAE,CAAC;EACrD;EAEA,IAAIf,QAAQ,EAAE;IACZ,oBAAOzD,KAAA,CAAAoC,aAAA,CAAChC,MAAM,CAACwE,KAAK,EAAKP,KAAK,EAAGZ,QAAuB,CAAC;EAC3D;EAEA,OAAO,IAAI;AACb;AAEA,SAASoB,iBAAiBA,CAAAC,KAAA,EAQvB;EAAA,IAPDlC,IAAI,GAAAkC,KAAA,CAAJlC,IAAI;IACJT,IAAI,GAAA2C,KAAA,CAAJ3C,IAAI;IACJ4C,MAAM,GAAAD,KAAA,CAANC,MAAM;EAMN,IAAMC,cAAc,GAAGpC,IAAI,CAACe,OAAO,IAAI,CAACf,IAAI,CAACI,QAAQ;EACrD,IAAMiC,WAAW,GAAGD,cAAc,GAC9B;IACEE,IAAI,EAAE,MAAM;IACZjB,IAAI,EAAErB,IAAI,CAACe;EACb,CAAC,GACD;IACEuB,IAAI,EAAE,KAAK;IACX;IACA;IACAC,QAAQ,EAAE,CAAC;EACb,CAAC;EAEL,oBACEnF,KAAA,CAAAoC,aAAA,CAAC3B,OAAO;IACNsD,GAAG,EAAEnB,IAAI,CAACM,EAAG;IACbkC,OAAO,EAAE9D,qBAAsB;IAC/B+D,OAAO,eACLrF,KAAA,CAAAoC,aAAA,CAAC3B,OAAO,CAAC6E,OAAO,qBACdtF,KAAA,CAAAoC,aAAA,CAACmB,sBAAsB;MACrBL,EAAE,EAAEN,IAAI,CAACM,EAAG;MACZhB,IAAI,EAAEU,IAAI,CAACV,IAAK;MAChBa,QAAQ,EAAEH,IAAI,CAACG,QAAS;MACxBU,QAAQ,EAAEb,IAAI,CAACa,QAAS;MACxBT,QAAQ,EAAEJ,IAAI,CAACI,QAAS;MACxBU,IAAI,EAAEd,IAAI,CAACc,IAAK;MAChBC,OAAO,EAAEf,IAAI,CAACe,OAAQ;MACtBC,WAAW,EAAEhB,IAAI,CAACgB;IAAY,CAC/B,CACc;EAClB,gBAED5D,KAAA,CAAAoC,aAAA,CAACpB,YAAY,EAAA0D,QAAA,KACPO,WAAW;IACfM,MAAM,EAAER,MAAM,CAACS,GAAG,CAAC5C,IAAI,CAACM,EAAE,CAAW;IACrC,iBAAAlB,MAAA,CAAeY,IAAI,CAACc,IAAI,QAAA1B,MAAA,CAAKY,IAAI,CAACgB,WAAW,CAAG;IAChDC,QAAQ,EAAEjB,IAAI,CAACI,QAAS;IACxBb,IAAI,EAAEA;EAAK,iBAEXnC,KAAA,CAAAoC,aAAA,CAAC+B,aAAa;IACZpB,QAAQ,EAAEH,IAAI,CAACG,QAAS;IACxBU,QAAQ,EAAEb,IAAI,CAACa,QAAS;IACxBvB,IAAI,EAAEU,IAAI,CAACV,IAAK;IAChBC,IAAI,EAAEA;EAAK,CACZ,CACW,CACP,CAAC;AAEd;AAEA,OAAO,SAASsD,iBAAiBA,CAAAC,KAAA,EAOA;EAAA,IAN/BlE,KAAK,GAAAkE,KAAA,CAALlE,KAAK;IACLmE,cAAc,GAAAD,KAAA,CAAdC,cAAc;IACdxD,IAAI,GAAAuD,KAAA,CAAJvD,IAAI;IACJT,cAAc,GAAAgE,KAAA,CAAdhE,cAAc;IACdC,eAAe,GAAA+D,KAAA,CAAf/D,eAAe;IACfiE,KAAK,GAAAF,KAAA,CAALE,KAAK;EAEL,IAAMC,IAAI,GAAGlF,cAAc,CAAC,CAAC;EAC7B,IAAMmF,UAAU,GAAG9F,KAAK,CAAC+F,MAAM,CAAoB,IAAI,CAAC;EACxD,IAAMC,YAAY,GAAGjG,KAAK,CAAC,CAAC;EAE5B,oBACEC,KAAA,CAAAoC,aAAA,CAAC3B,OAAO;IACN,mBAAiBuF,YAAa;IAC9BF,UAAU,EAAEA,UAAW;IACvBV,OAAO,EAAE9D,qBAAsB;IAC/B2E,UAAU,EAAE,SAAZA,UAAUA,CAAGC,CAAC,EAAK;MACjB,OAAOA,CAAC,CAAChE,IAAI,KAAK,MAAM;IAC1B,CAAE;IACFmD,OAAO,eACLrF,KAAA,CAAAoC,aAAA,CAAC3B,OAAO,CAAC6E,OAAO,qBACdtF,KAAA,CAAAoC,aAAA,CAAClB,kBAAkB,QAChBM,KAAK,CAACqB,GAAG,CAAC,UAACD,IAAI;MAAA,oBACd5C,KAAA,CAAAoC,aAAA,CAACmB,sBAAsB;QACrBQ,GAAG,EAAEnB,IAAI,CAACM,EAAG;QACbA,EAAE,EAAEN,IAAI,CAACM,EAAG;QACZhB,IAAI,EAAEU,IAAI,CAACV,IAAK;QAChBa,QAAQ,EAAEH,IAAI,CAACG,QAAS;QACxBU,QAAQ,EAAEb,IAAI,CAACa,QAAS;QACxBT,QAAQ,EAAEJ,IAAI,CAACI,QAAS;QACxBU,IAAI,EAAEd,IAAI,CAACc,IAAK;QAChBC,OAAO,EAAEf,IAAI,CAACe,OAAQ;QACtBC,WAAW,EAAEhB,IAAI,CAACgB;MAAY,CAC/B,CAAC;IAAA,CACH,CACiB,CAAC,EACpBjC,eAAe,iBACd3B,KAAA,CAAAoC,aAAA,CAAChB,oBAAoB,qBACnBpB,KAAA,CAAAoC,aAAA,CAAC/B,MAAM;MACL,WAAQ,0CAA0C;MAClD8F,OAAO,EAAER,cAAe;MACxBxD,IAAI,EAAC,IAAI;MACTiE,OAAO,EAAC;IAAW,GAElBP,IAAI,CAACQ,CAAC,CAAC,0BAA0B,CAC5B,CACY,CAET;EAClB,gBAEDrG,KAAA,CAAAoC,aAAA,CAACpB,YAAY;IACXkE,IAAI,EAAC,QAAQ;IACboB,OAAO,EAAEX,cAAe;IACxBzC,EAAE,EAAE8C,YAAa;IACjB,iBAAAhE,MAAA,CAAeN,cAAc,QAAAM,MAAA,CAAK4D,KAAK,CAAG;IAC1C,WAAQ,kDAAkD;IAC1DzD,IAAI,EAAEA,IAAK;IACXoD,MAAM,EAAC;EAAQ,gBAEfvF,KAAA,CAAAoC,aAAA,CAAChC,MAAM,CAACwE,KAAK;IAAC;EAAW,gBACvB5E,KAAA,CAAAoC,aAAA,CAAC1B,UAAU;IAACoC,KAAK,EAAC;EAAO,GAAEpB,cAA2B,CAC1C,CACF,CACP,CAAC;AAEd;AAEA,OAAO,SAAS6E,YAAYA,CAAAC,KAAA,EAKA;EAAA,IAJ1BC,MAAM,GAAAD,KAAA,CAANC,MAAM;IACNC,OAAO,GAAAF,KAAA,CAAPE,OAAO;IACPd,KAAK,GAAAY,KAAA,CAALZ,KAAK;IACLpE,KAAK,GAAAgF,KAAA,CAALhF,KAAK;EAEL,IAAMqE,IAAI,GAAGlF,cAAc,CAAC,CAAC;EAC7B,IAAMgG,OAAO,GAAG5G,KAAK,CAAC,CAAC;EACvB,IAAM6G,IAAI,MAAA5E,MAAA,CAAM4D,KAAK,QAAA5D,MAAA,CAAKR,KAAK,CAACK,MAAM,MAAG;EAEzC,oBACE7B,KAAA,CAAAoC,aAAA,CAAC5B,KAAK;IACJ0E,IAAI,EAAC,QAAQ;IACb,mBAAiByB,OAAQ;IACzBE,IAAI,EAAEJ,MAAO;IACbC,OAAO,EAAEA;EAAQ,gBAEjB1G,KAAA,CAAAoC,aAAA,CAAC5B,KAAK,CAACsG,MAAM;IAACJ,OAAO,EAAEA;EAAQ,gBAC7B1G,KAAA,CAAAoC,aAAA,CAAC5B,KAAK,CAACuG,OAAO;IAAC7D,EAAE,EAAEyD;EAAQ,GAAEC,IAAoB,CACrC,CAAC,eACf5G,KAAA,CAAAoC,aAAA,CAACjB,eAAe,QACbK,KAAK,CAACqB,GAAG,CAAC,UAACD,IAAI;IAAA,oBACd5C,KAAA,CAAAoC,aAAA,CAACmB,sBAAsB;MACrBQ,GAAG,EAAEnB,IAAI,CAACM,EAAG;MACbA,EAAE,EAAEN,IAAI,CAACM,EAAG;MACZhB,IAAI,EAAEU,IAAI,CAACV,IAAK;MAChBa,QAAQ,EAAEH,IAAI,CAACG,QAAS;MACxBU,QAAQ,EAAEb,IAAI,CAACa,QAAS;MACxBT,QAAQ,EAAEJ,IAAI,CAACI,QAAS;MACxBU,IAAI,EAAEd,IAAI,CAACc,IAAK;MAChBC,OAAO,EAAEf,IAAI,CAACe,OAAQ;MACtBC,WAAW,EAAEhB,IAAI,CAACgB;IAAY,CAC/B,CAAC;EAAA,CACH,CACc,CAAC,eAClB5D,KAAA,CAAAoC,aAAA,CAAC5B,KAAK,CAACwG,MAAM,qBACXhH,KAAA,CAAAoC,aAAA,CAAC5B,KAAK,CAACyG,aAAa,qBAClBjH,KAAA,CAAAoC,aAAA,CAAC/B,MAAM;IAAC8F,OAAO,EAAEO;EAAQ,GAAEb,IAAI,CAACQ,CAAC,CAAC,wBAAwB,CAAU,CACjD,CACT,CACT,CAAC;AAEZ;AAEA,OAAO,SAASa,eAAeA,CAA+BtE,IAAU,EAAE;EACxE,OAAOA,IAAI,CAACa,QAAQ;AACtB;AAEA,OAAO,SAAS0D,kBAAkBA,CAA+BvE,IAAU,EAAE;EAC3E,OAAOA,IAAI,CAACG,QAAQ;AACtB;AAEA,OAAO,SAASqE,mBAAmBA,CAAAC,KAAA,EAQhC;EAAA,IAPD7F,KAAK,GAAA6F,KAAA,CAAL7F,KAAK;IACL8F,WAAW,GAAAD,KAAA,CAAXC,WAAW;IACXC,WAAW,GAAAF,KAAA,CAAXE,WAAW;EAMX,OAAO/F,KAAK,CAACqB,GAAG,CAAC,UAACD,IAAI;IAAA,OAAA4E,aAAA,CAAAA,aAAA,KACjB5E,IAAI;MACPa,QAAQ,EAAE6D,WAAW,CAAE1E,IAAI,CAAC;MAC5BG,QAAQ,EAAEwE,WAAW,CAAE3E,IAAI;IAAC;EAAA,CAC5B,CAAC;AACL;AAEA,IAAM6E,YAAY,GAAG,SAAfA,YAAYA,CAAAC,KAAA,EAUhBC,GAAuC,EACpC;EAAA,IATMC,MAAM,GAAAF,KAAA,CAAblG,KAAK;IACLoE,KAAK,GAAA8B,KAAA,CAAL9B,KAAK;IAAAiC,UAAA,GAAAH,KAAA,CACLvF,IAAI;IAAJA,IAAI,GAAA0F,UAAA,cAAG,IAAI,GAAAA,UAAA;IAAAC,iBAAA,GAAAJ,KAAA,CACXJ,WAAW;IAAXA,WAAW,GAAAQ,iBAAA,cAAGZ,eAAe,GAAAY,iBAAA;IAAAC,iBAAA,GAAAL,KAAA,CAC7BH,WAAW;IAAXA,WAAW,GAAAQ,iBAAA,cAAGZ,kBAAkB,GAAAY,iBAAA;IAChCpC,cAAc,GAAA+B,KAAA,CAAd/B,cAAc;IACXtB,KAAK,GAAAC,wBAAA,CAAAoD,KAAA,EAAAM,UAAA;EAIV,IAAAC,SAAA,GAAsC9H,QAAQ,CAAC,KAAK,CAAC;IAAA+H,UAAA,GAAAC,cAAA,CAAAF,SAAA;IAA9CG,WAAW,GAAAF,UAAA;IAAEG,cAAc,GAAAH,UAAA;EAElC,IAAM1G,KAAK,GAAGtB,OAAO,CACnB;IAAA,OACEkH,mBAAmB,CAAC;MAClB5F,KAAK,EAAEoG,MAAM;MACbN,WAAW,EAAXA,WAAW;MACXC,WAAW,EAAXA;IACF,CAAC,CAAC;EAAA,GACJ,CAACK,MAAM,CACT,CAAC;EAED,IAAAU,QAAA,GACEpI,OAAO,CAAC;MAAA,OAAMqB,iBAAiB,CAACC,KAAK,CAAC;IAAA,GAAE,CAACA,KAAK,CAAC,CAAC;IAD1CI,YAAY,GAAA0G,QAAA,CAAZ1G,YAAY;IAAEH,WAAW,GAAA6G,QAAA,CAAX7G,WAAW;IAAEC,cAAc,GAAA4G,QAAA,CAAd5G,cAAc;IAAEC,eAAe,GAAA2G,QAAA,CAAf3G,eAAe;EAGlE,IAAM4G,kBAAkB,GAAGrI,OAAO,CAChC;IAAA,OAAMsC,aAAa,CAACZ,YAAY,CAAC;EAAA,GACjC,CAACA,YAAY,CACf,CAAC;EAED,oBACE5B,KAAA,CAAAoC,aAAA,QAAAsC,QAAA;IAAKiD,GAAG,EAAEA;EAAI,GAAKtD,KAAK,GACrB1C,eAAe,IAAI,CAACgE,cAAc,iBACjC3F,KAAA,CAAAoC,aAAA,CAACmE,YAAY;IACXE,MAAM,EAAE2B,WAAY;IACpB1B,OAAO,EAAE,SAATA,OAAOA,CAAA;MAAA,OAAQ2B,cAAc,CAAC,KAAK,CAAC;IAAA,CAAC;IACrCzC,KAAK,EAAEA,KAAM;IACbpE,KAAK,EAAEA;EAAM,CACd,CACF,eACDxB,KAAA,CAAAoC,aAAA,CAACf,aAAa,QACXO,YAAY,CAACiB,GAAG,CAAC,UAACD,IAAI,EAAK;IAC1B,oBACE5C,KAAA,CAAAoC,aAAA,CAACyC,iBAAiB;MAChBE,MAAM,EAAEwD,kBAAmB;MAC3B3F,IAAI,EAAEA,IAAK;MACXmB,GAAG,KAAA/B,MAAA,CAAKY,IAAI,CAACc,IAAI,OAAA1B,MAAA,CAAIY,IAAI,CAACM,EAAE,CAAG;MAC/Bf,IAAI,EAAEA;IAAK,CACZ,CAAC;EAEN,CAAC,CAAC,EACDV,WAAW,CAACI,MAAM,GAAG,CAAC,iBACrB7B,KAAA,CAAAoC,aAAA,CAACqD,iBAAiB;IAChB/D,cAAc,EAAEA,cAAyB;IACzCC,eAAe,EAAEA,eAAgB;IACjCH,KAAK,EAAEC,WAAY;IACnBkE,cAAc,EAAEA,cAAc,IAAK;MAAA,OAAM0C,cAAc,CAAC,IAAI,CAAC;IAAA,CAAE;IAC/DlG,IAAI,EAAEA,IAAK;IACXyD,KAAK,EAAEA;EAAM,CACd,CAEU,CACZ,CAAC;AAEV,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,IAAM4C,WAAW,gBAAGvI,UAAU,CAACwH,YAAY,CAId;;AAEpC;AACAe,WAAW,CAACC,WAAW,GAAG,aAAa"}
@@ -7,32 +7,32 @@ import { spacing } from '../_styles/spacing';
7
7
  var maxModalWidth = 528;
8
8
  var StyledBaseAvatar = /*#__PURE__*/styled(Avatar).withConfig({
9
9
  displayName: "StyledBaseAvatar",
10
- componentId: "core-12_21_0-cdn_3__sc-ft72hu-0"
10
+ componentId: "core-12_21_0-cdn_4__sc-ft72hu-0"
11
11
  })(["border-color:", ";border-style:solid;border-width:1px;&:hover{z-index:1;}&[role='img']:focus{outline:none;}"], colors.white);
12
12
  export var StyledAvatar = /*#__PURE__*/styled(StyledBaseAvatar).withConfig({
13
13
  displayName: "StyledAvatar",
14
- componentId: "core-12_21_0-cdn_3__sc-ft72hu-1"
14
+ componentId: "core-12_21_0-cdn_4__sc-ft72hu-1"
15
15
  })(["background-color:", ";"], function (props) {
16
16
  return colors[props.$color];
17
17
  });
18
18
  export var StyledContactItems = /*#__PURE__*/styled.div.withConfig({
19
19
  displayName: "StyledContactItems",
20
- componentId: "core-12_21_0-cdn_3__sc-ft72hu-2"
20
+ componentId: "core-12_21_0-cdn_4__sc-ft72hu-2"
21
21
  })(["padding-top:", "px;padding-bottom:", "px;padding-left:", "px;"], spacing.sm, spacing.sm, spacing.xs);
22
22
  export var StyledWrapper = /*#__PURE__*/styled.div.withConfig({
23
23
  displayName: "StyledWrapper",
24
- componentId: "core-12_21_0-cdn_3__sc-ft72hu-3"
24
+ componentId: "core-12_21_0-cdn_4__sc-ft72hu-3"
25
25
  })(["display:flex;", " + ", "{margin-left:-", "px;}"], StyledAvatar, StyledAvatar, spacing.sm);
26
26
  export var StyledViewAllWrapper = /*#__PURE__*/styled.div.withConfig({
27
27
  displayName: "StyledViewAllWrapper",
28
- componentId: "core-12_21_0-cdn_3__sc-ft72hu-4"
28
+ componentId: "core-12_21_0-cdn_4__sc-ft72hu-4"
29
29
  })(["display:flex;margin-left:", "px;margin-bottom:", "px;"], spacing.md, spacing.lg);
30
30
  export var StyledModalBody = /*#__PURE__*/styled(Modal.Body).withConfig({
31
31
  displayName: "StyledModalBody",
32
- componentId: "core-12_21_0-cdn_3__sc-ft72hu-5"
32
+ componentId: "core-12_21_0-cdn_4__sc-ft72hu-5"
33
33
  })(["max-width:", "px;"], maxModalWidth);
34
34
  export var StyledContactItem = /*#__PURE__*/styled(ContactItem).withConfig({
35
35
  displayName: "StyledContactItem",
36
- componentId: "core-12_21_0-cdn_3__sc-ft72hu-6"
36
+ componentId: "core-12_21_0-cdn_4__sc-ft72hu-6"
37
37
  })(["flex-shrink:0;"]);
38
38
  //# sourceMappingURL=AvatarStack.styles.js.map
@@ -1,10 +1,10 @@
1
1
  import styled from 'styled-components';
2
2
  export var StyledBadge = /*#__PURE__*/styled.div.withConfig({
3
3
  displayName: "StyledBadge",
4
- componentId: "core-12_21_0-cdn_3__sc-rpertu-0"
4
+ componentId: "core-12_21_0-cdn_4__sc-rpertu-0"
5
5
  })(["display:inline-block;position:relative;"]);
6
6
  export var StyledBadgeLabel = /*#__PURE__*/styled.span.withConfig({
7
7
  displayName: "StyledBadgeLabel",
8
- componentId: "core-12_21_0-cdn_3__sc-rpertu-1"
8
+ componentId: "core-12_21_0-cdn_4__sc-rpertu-1"
9
9
  })(["bottom:100%;position:absolute;right:0;transform:translateX(50%) translateY(50%);"]);
10
10
  //# sourceMappingURL=Badge.styles.js.map
@@ -39,7 +39,7 @@ var expandContent = function expandContent(maxHeight) {
39
39
  };
40
40
  export var StyledBannerContainer = /*#__PURE__*/styled.div.withConfig({
41
41
  displayName: "StyledBannerContainer",
42
- componentId: "core-12_21_0-cdn_3__sc-149wm7c-0"
42
+ componentId: "core-12_21_0-cdn_4__sc-149wm7c-0"
43
43
  })(["align-items:center;border-left:", "px solid;border-radius:", "px;color:", ";display:flex;justify-content:space-between;min-height:52px;padding:0 ", "px;", " ", " ", ""], bannerLeft, borderRadius.md, colors.gray15, spacing.lg, bannerShadow, function (_ref) {
44
44
  var variant = _ref.variant;
45
45
  var _bannerVariantColors$ = bannerVariantColors[variant],
@@ -52,15 +52,15 @@ export var StyledBannerContainer = /*#__PURE__*/styled.div.withConfig({
52
52
  });
53
53
  export var StyledContent = /*#__PURE__*/styled.div.withConfig({
54
54
  displayName: "StyledContent",
55
- componentId: "core-12_21_0-cdn_3__sc-149wm7c-1"
55
+ componentId: "core-12_21_0-cdn_4__sc-149wm7c-1"
56
56
  })(["align-self:center;margin:", "px ", "px ", "px 0;width:100%;"], spacing.sm, spacing.lg, spacing.sm);
57
57
  export var StyledExpandableContentContainer = /*#__PURE__*/styled(Flex).withConfig({
58
58
  displayName: "StyledExpandableContentContainer",
59
- componentId: "core-12_21_0-cdn_3__sc-149wm7c-2"
59
+ componentId: "core-12_21_0-cdn_4__sc-149wm7c-2"
60
60
  })(["color:", ";min-height:52px;padding:0 ", "px;position:relative;z-index:1;", ""], colors.gray15, spacing.lg, bannerShadow);
61
61
  export var StyledExpandableContent = /*#__PURE__*/styled(Flex).withConfig({
62
62
  displayName: "StyledExpandableContent",
63
- componentId: "core-12_21_0-cdn_3__sc-149wm7c-3"
63
+ componentId: "core-12_21_0-cdn_4__sc-149wm7c-3"
64
64
  })(["animation-duration:450ms;animation-fill-mode:forwards;animation-timing-function:ease-out;background-color:", ";box-sizing:border-box;font-size:14px;font-weight:500;letter-spacing:0.25px;line-height:20px;overflow-y:auto;padding:0 ", "px;position:relative;z-index:0;", " ", ""], colors.white, spacing.xl * 2 + spacing.sm, function (_ref3) {
65
65
  var $isOverflowingY = _ref3.$isOverflowingY;
66
66
  return $isOverflowingY && focusable;
@@ -70,23 +70,23 @@ export var StyledExpandableContent = /*#__PURE__*/styled(Flex).withConfig({
70
70
  });
71
71
  export var StyledTitle = /*#__PURE__*/styled.div.withConfig({
72
72
  displayName: "StyledTitle",
73
- componentId: "core-12_21_0-cdn_3__sc-149wm7c-4"
73
+ componentId: "core-12_21_0-cdn_4__sc-149wm7c-4"
74
74
  })(["", " color:", ";font-weight:", ";"], getTypographyIntent('body'), colors.gray15, typographyWeights.semibold);
75
75
  export var StyledBody = /*#__PURE__*/styled.div.withConfig({
76
76
  displayName: "StyledBody",
77
- componentId: "core-12_21_0-cdn_3__sc-149wm7c-5"
77
+ componentId: "core-12_21_0-cdn_4__sc-149wm7c-5"
78
78
  })(["", " color:", ";"], getTypographyIntent('body'), colors.gray15);
79
79
  export var StyledIconContainer = /*#__PURE__*/styled.div.withConfig({
80
80
  displayName: "StyledIconContainer",
81
- componentId: "core-12_21_0-cdn_3__sc-149wm7c-6"
81
+ componentId: "core-12_21_0-cdn_4__sc-149wm7c-6"
82
82
  })(["flex:0 0 auto;margin:", "px 0;"], spacing.lg);
83
83
  export var StyledActionsTrigger = /*#__PURE__*/styled(DropdownButton).withConfig({
84
84
  displayName: "StyledActionsTrigger",
85
- componentId: "core-12_21_0-cdn_3__sc-149wm7c-7"
85
+ componentId: "core-12_21_0-cdn_4__sc-149wm7c-7"
86
86
  })(["flex-shrink:0;& + ", ",& + ", "{margin-left:-", "px;}"], StyledButton, StyledLinkButton, spacing.sm);
87
87
  export var StyledAction = /*#__PURE__*/styled.div.withConfig({
88
88
  displayName: "StyledAction",
89
- componentId: "core-12_21_0-cdn_3__sc-149wm7c-8"
89
+ componentId: "core-12_21_0-cdn_4__sc-149wm7c-8"
90
90
  })(["margin:", "px 0 ", "px -", "px;& + ", ",& + ", ",& + ", "{margin-left:-", "px;}", ",", "{background:rgba(0,0,0,0.05);color:", ";&:hover{background:", ";color:", ";}}"], spacing.sm, spacing.sm, spacing.sm, StyledButton, StyledLinkButton, StyledActionsTrigger, spacing.sm, StyledButton, StyledLinkButton, colors.gray15, colors.gray85, colors.gray15);
91
91
  function getMiniBannerIconColor(_ref5) {
92
92
  var variant = _ref5.variant;
@@ -94,6 +94,6 @@ function getMiniBannerIconColor(_ref5) {
94
94
  }
95
95
  export var StyledMiniBannerContainer = /*#__PURE__*/styled.div.withConfig({
96
96
  displayName: "StyledMiniBannerContainer",
97
- componentId: "core-12_21_0-cdn_3__sc-149wm7c-9"
97
+ componentId: "core-12_21_0-cdn_4__sc-149wm7c-9"
98
98
  })(["align-items:center;background-color:", ";display:flex;justify-content:space-between;padding:0 ", "px;", " ", " & ", "{margin:", "px;}"], colors.gray96, spacing.md, getTypographyIntent('small'), getMiniBannerIconColor, StyledContent, spacing.sm);
99
99
  //# sourceMappingURL=Banner.styles.js.map
@@ -21,7 +21,7 @@ function sizeToPx(size) {
21
21
  }
22
22
  export var StyledBox = /*#__PURE__*/styled.div.withConfig({
23
23
  displayName: "StyledBox",
24
- componentId: "core-12_21_0-cdn_3__sc-fgsy0p-0"
24
+ componentId: "core-12_21_0-cdn_4__sc-fgsy0p-0"
25
25
  })(["", " ", ""], function (_ref) {
26
26
  var $as = _ref.$as;
27
27
  if ($as === 'ol' || $as === 'ul') {
@@ -4,19 +4,19 @@ import { colors } from '../_styles/colors';
4
4
  import { spacing } from '../_styles/spacing';
5
5
  export var StyledContainer = /*#__PURE__*/styled.nav.withConfig({
6
6
  displayName: "StyledContainer",
7
- componentId: "core-12_21_0-cdn_3__sc-1q6nqfz-0"
7
+ componentId: "core-12_21_0-cdn_4__sc-1q6nqfz-0"
8
8
  })(["color:", ";display:flex;align-items:center;a,a:hover{display:inline-flex;text-decoration:none;}"], colors.gray50);
9
9
  export var StyledList = /*#__PURE__*/styled.ol.withConfig({
10
10
  displayName: "StyledList",
11
- componentId: "core-12_21_0-cdn_3__sc-1q6nqfz-1"
11
+ componentId: "core-12_21_0-cdn_4__sc-1q6nqfz-1"
12
12
  })(["display:flex;margin:0;padding-left:0;"]);
13
13
  export var StyledSeparator = /*#__PURE__*/styled.div.withConfig({
14
14
  displayName: "StyledSeparator",
15
- componentId: "core-12_21_0-cdn_3__sc-1q6nqfz-2"
15
+ componentId: "core-12_21_0-cdn_4__sc-1q6nqfz-2"
16
16
  })(["align-items:center;display:inline-flex;justify-content:center;margin:0px ", "px;"], spacing.xs);
17
17
  export var StyledCrumb = /*#__PURE__*/styled.li.withConfig({
18
18
  displayName: "StyledCrumb",
19
- componentId: "core-12_21_0-cdn_3__sc-1q6nqfz-3"
19
+ componentId: "core-12_21_0-cdn_4__sc-1q6nqfz-3"
20
20
  })(["", " align-items:center;color:", ";display:inline-flex;min-height:24px;text-decoration:none;&:hover{cursor:", ";text-decoration:", ";}> a{color:", ";", "}", ""], getTypographyIntent('body'), colors.gray45, function (_ref) {
21
21
  var active = _ref.active;
22
22
  return active ? 'default' : 'pointer';