@procore/core-react 11.31.1 → 11.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (231) hide show
  1. package/dist/AnchorNavigation/AnchorNavigation.styles.js +3 -3
  2. package/dist/Avatar/Avatar.styles.js +5 -5
  3. package/dist/AvatarStack/AvatarStack.styles.js +7 -7
  4. package/dist/Badge/Badge.styles.js +2 -2
  5. package/dist/Banner/Banner.styles.js +10 -10
  6. package/dist/Box/Box.d.ts +4 -0
  7. package/dist/Box/Box.js +5 -0
  8. package/dist/Box/Box.js.map +1 -1
  9. package/dist/Box/Box.styles.js +1 -1
  10. package/dist/Breadcrumbs/Breadcrumbs.d.ts +38 -2
  11. package/dist/Breadcrumbs/Breadcrumbs.js +40 -2
  12. package/dist/Breadcrumbs/Breadcrumbs.js.map +1 -1
  13. package/dist/Breadcrumbs/Breadcrumbs.styles.js +4 -4
  14. package/dist/Breadcrumbs/Breadcrumbs.types.d.ts +14 -2
  15. package/dist/Breadcrumbs/Breadcrumbs.types.js +5 -0
  16. package/dist/Breadcrumbs/Breadcrumbs.types.js.map +1 -1
  17. package/dist/Button/Button.styles.js +5 -5
  18. package/dist/Calendar/Calendar.d.ts +81 -36
  19. package/dist/Calendar/Calendar.js +81 -45
  20. package/dist/Calendar/Calendar.js.map +1 -1
  21. package/dist/Calendar/Calendar.styles.js +8 -8
  22. package/dist/Calendar/Calendar.types.d.ts +11 -1
  23. package/dist/Calendar/Calendar.types.js.map +1 -1
  24. package/dist/Card/Card.styles.js +1 -1
  25. package/dist/Checkbox/Checkbox.styles.js +6 -6
  26. package/dist/ContactItem/ContactItem.styles.js +5 -5
  27. package/dist/Content/Content.styles.js +2 -2
  28. package/dist/DateInput/DateInput.styles.js +6 -6
  29. package/dist/DetailPage/DetailPage.styles.js +7 -7
  30. package/dist/Dropdown/Dropdown.d.ts +1 -2
  31. package/dist/Dropdown/Dropdown.js.map +1 -1
  32. package/dist/Dropdown/Dropdown.styles.js +3 -3
  33. package/dist/Dropdown/Dropdown.types.d.ts +2 -1
  34. package/dist/Dropdown/Dropdown.types.js.map +1 -1
  35. package/dist/Dropdown/index.d.ts +1 -1
  36. package/dist/Dropdown/index.js.map +1 -1
  37. package/dist/DropdownFlyout/DropdownFlyout.styles.js +4 -4
  38. package/dist/Dropzone/Dropzone.js +1 -1
  39. package/dist/Dropzone/Dropzone.styles.js +9 -9
  40. package/dist/EmptyState/EmptyState.styles.js +6 -6
  41. package/dist/Field/Field.styles.js +3 -3
  42. package/dist/FileList/FileList.styles.js +4 -4
  43. package/dist/FileSelect/FileExplorer/FileExplorer.styles.js +9 -9
  44. package/dist/FileSelect/FileExplorer/FileExplorerSidebar.styles.js +3 -3
  45. package/dist/FileSelect/FileSelect.styles.js +2 -2
  46. package/dist/FileSelect/FileSelectDropzone/FileSelectDropzone.styles.js +3 -3
  47. package/dist/FileSelect/FileTokenList/FileTokenList.js +1 -1
  48. package/dist/FileSelect/FileTokenList/FileTokenList.js.map +1 -1
  49. package/dist/FileSelect/FileTokenList/FileTokenList.styles.js +2 -2
  50. package/dist/FileSelect/GridSource/GridSource.js +1 -1
  51. package/dist/FileSelect/GridSource/GridSource.js.map +1 -1
  52. package/dist/FileSelect/GridSource/GridSource.styles.js +6 -6
  53. package/dist/FileSelect/LocalSource/LocalSource.styles.js +4 -4
  54. package/dist/FileSelect/SourceItem/SourceItem.styles.js +3 -3
  55. package/dist/FileSelect/ThumbnailList/ThumbnailList.styles.js +6 -6
  56. package/dist/FileSelect/TreeSource/TreeSource.styles.js +1 -1
  57. package/dist/FileToken/FileToken.styles.js +4 -4
  58. package/dist/FilterToken/FilterToken.styles.js +2 -2
  59. package/dist/Flex/Flex.d.ts +5 -0
  60. package/dist/Flex/Flex.js +5 -0
  61. package/dist/Flex/Flex.js.map +1 -1
  62. package/dist/FlexList/FlexList.d.ts +5 -0
  63. package/dist/FlexList/FlexList.js +6 -0
  64. package/dist/FlexList/FlexList.js.map +1 -1
  65. package/dist/FlexList/FlexList.styles.js +1 -1
  66. package/dist/Form/Form.d.ts +5 -0
  67. package/dist/Form/Form.js +5 -0
  68. package/dist/Form/Form.js.map +1 -1
  69. package/dist/Form/Form.styles.js +16 -16
  70. package/dist/Form/Form.types.d.ts +31 -9
  71. package/dist/Form/Form.types.js.map +1 -1
  72. package/dist/Grid/Grid.styles.js +2 -2
  73. package/dist/GroupSelect/GroupSelect.styles.js +1 -1
  74. package/dist/Input/Input.styles.js +1 -1
  75. package/dist/Input/Input.types.d.ts +1 -0
  76. package/dist/Input/Input.types.js.map +1 -1
  77. package/dist/Link/Link.styles.js +1 -1
  78. package/dist/ListPage/ListPage.styles.js +8 -8
  79. package/dist/ListPage/ListPage.types.d.ts +1 -0
  80. package/dist/ListPage/ListPage.types.js.map +1 -1
  81. package/dist/Loader/Loader.styles.js +2 -2
  82. package/dist/MenuImperative/MenuImperative.styles.js +10 -10
  83. package/dist/Modal/Modal.styles.js +13 -13
  84. package/dist/MultiSelect/MultiSelect.styles.js +6 -6
  85. package/dist/NextMenu/NextMenu.styles.js +3 -3
  86. package/dist/Notation/Notation.d.ts +1 -0
  87. package/dist/Notation/Notation.js +2 -1
  88. package/dist/Notation/Notation.js.map +1 -1
  89. package/dist/NumberInput/NumberInput.styles.js +7 -7
  90. package/dist/Overlay/OverlayArrow.styles.js +1 -1
  91. package/dist/PageLayout/PageLayout.styles.js +28 -28
  92. package/dist/PageLayout/PageLayout.styles.js.map +1 -1
  93. package/dist/Pagination/Pagination.styles.js +5 -5
  94. package/dist/Panel/Panel.styles.js +11 -11
  95. package/dist/Pill/Pill.styles.js +2 -2
  96. package/dist/PillSelect/PillSelect.styles.js +4 -4
  97. package/dist/Popover/Popover.styles.js +2 -2
  98. package/dist/Portal/Portal.styles.js +1 -1
  99. package/dist/ProgressBar/ProgressBar.styles.js +2 -2
  100. package/dist/RadioButton/RadioButton.styles.js +3 -3
  101. package/dist/Required/Required.styles.js +3 -3
  102. package/dist/Search/Search.styles.js +5 -5
  103. package/dist/Section/Section.styles.js +6 -6
  104. package/dist/SegmentedController/SegmentedController.styles.js +4 -4
  105. package/dist/SegmentedController/SegmentedController.types.d.ts +2 -0
  106. package/dist/SegmentedController/SegmentedController.types.js +1 -0
  107. package/dist/SegmentedController/SegmentedController.types.js.map +1 -1
  108. package/dist/Select/Select.styles.js +7 -7
  109. package/dist/Semantic/Semantic.styles.js +9 -9
  110. package/dist/Sidebar/Sidebar.styles.js +7 -7
  111. package/dist/Slider/Slider.styles.js +5 -5
  112. package/dist/Spinner/Spinner.styles.js +7 -7
  113. package/dist/Spinner/Spinner.types.d.ts +1 -0
  114. package/dist/Spinner/Spinner.types.js.map +1 -1
  115. package/dist/SuperSelect/SuperSelect.presets.styles.js +1 -1
  116. package/dist/SuperSelect/SuperSelect.styles.js +37 -37
  117. package/dist/Switch/Switch.styles.js +4 -4
  118. package/dist/Table/Table.styles.js +28 -28
  119. package/dist/TableShelf/TableShelf.styles.js +5 -5
  120. package/dist/Tabs/Tabs.js +19 -14
  121. package/dist/Tabs/Tabs.js.map +1 -1
  122. package/dist/Tabs/Tabs.styles.d.ts +12 -6
  123. package/dist/Tabs/Tabs.styles.js +40 -38
  124. package/dist/Tabs/Tabs.styles.js.map +1 -1
  125. package/dist/Tabs/Tabs.types.d.ts +3 -0
  126. package/dist/Tabs/Tabs.types.js.map +1 -1
  127. package/dist/Tearsheet/Tearsheet.styles.js +5 -5
  128. package/dist/TextArea/TextArea.styles.js +1 -1
  129. package/dist/TextEditorOutput/TextEditorOutput.styles.js +1 -1
  130. package/dist/Thumbnail/Thumbnail.styles.js +17 -17
  131. package/dist/ThumbnailGrid/ThumbnailGrid.styles.js +7 -7
  132. package/dist/TieredSelect/TieredSelect.styles.js +9 -9
  133. package/dist/Tile/Tile.styles.js +8 -8
  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 +1 -1
  137. package/dist/Token/Token.styles.js +3 -3
  138. package/dist/ToolHeader/ToolHeader.styles.js +6 -6
  139. package/dist/Tooltip/Tooltip.styles.js +2 -2
  140. package/dist/Tree/Tree.styles.js +9 -9
  141. package/dist/Typeahead/Typeahead.styles.js +3 -3
  142. package/dist/Typography/Typography.styles.js +1 -1
  143. package/dist/Typography/Typography.table.story.js +2 -2
  144. package/dist/Typography/Typography.types.d.ts +10 -23
  145. package/dist/Typography/Typography.types.js.map +1 -1
  146. package/dist/_hooks/useFileUploader.js +1 -1
  147. package/dist/_hooks/useFileUploader.js.map +1 -1
  148. package/dist/_typedoc/Avatar/Avatar.types.json +20 -20
  149. package/dist/_typedoc/AvatarStack/AvatarStack.types.json +23 -23
  150. package/dist/_typedoc/Badge/Badge.types.json +6 -6
  151. package/dist/_typedoc/Banner/Banner.types.json +13 -13
  152. package/dist/_typedoc/Box/Box.types.json +68 -68
  153. package/dist/_typedoc/Breadcrumbs/Breadcrumbs.types.json +16 -14
  154. package/dist/_typedoc/Button/Button.types.json +12 -12
  155. package/dist/_typedoc/Calendar/Calendar.types.json +84 -82
  156. package/dist/_typedoc/Card/Card.types.json +6 -6
  157. package/dist/_typedoc/Checkbox/Checkbox.types.json +9 -9
  158. package/dist/_typedoc/ContactItem/ContactItem.types.json +9 -9
  159. package/dist/_typedoc/DateInput/DateInput.types.json +35 -35
  160. package/dist/_typedoc/DateSelect/DateSelect.types.json +13 -13
  161. package/dist/_typedoc/DetailPage/DetailPage.types.json +4 -4
  162. package/dist/_typedoc/Dropdown/Dropdown.types.json +37 -37
  163. package/dist/_typedoc/DropdownFlyout/DropdownFlyout.types.json +34 -29
  164. package/dist/_typedoc/Dropzone/Dropzone.types.json +51 -41
  165. package/dist/_typedoc/EmptyState/EmptyState.types.json +14 -14
  166. package/dist/_typedoc/FileList/FileList.types.json +9 -9
  167. package/dist/_typedoc/FileSelect/FileSelect.json +19 -0
  168. package/dist/_typedoc/FileSelect/FileSelect.types.json +26 -26
  169. package/dist/_typedoc/FileSelect/GridSource/GridSource.types.json +20 -20
  170. package/dist/_typedoc/FileSelect/LocalSource/LocalSource.types.json +14 -14
  171. package/dist/_typedoc/FileSelect/TreeSource/TreeSource.types.json +9 -9
  172. package/dist/_typedoc/Flex/Flex.types.json +27 -27
  173. package/dist/_typedoc/FlexList/FlexList.types.json +30 -30
  174. package/dist/_typedoc/Form/Form.types.json +768 -755
  175. package/dist/_typedoc/Grid/Grid.types.json +8 -8
  176. package/dist/_typedoc/GroupSelect/GroupSelect.types.json +52 -52
  177. package/dist/_typedoc/Input/Input.types.json +4 -3
  178. package/dist/_typedoc/Link/Link.types.json +4 -4
  179. package/dist/_typedoc/ListPage/ListPage.types.json +15 -14
  180. package/dist/_typedoc/Menu/Menu.types.json +62 -62
  181. package/dist/_typedoc/MenuImperative/MenuImperative.types.json +74 -74
  182. package/dist/_typedoc/Modal/Modal.types.json +41 -41
  183. package/dist/_typedoc/MultiSelect/MultiSelect.types.json +31 -31
  184. package/dist/_typedoc/Notation/Notation.json +9 -0
  185. package/dist/_typedoc/Notation/Notation.types.json +9 -4
  186. package/dist/_typedoc/NumberInput/NumberInput.types.json +38 -38
  187. package/dist/_typedoc/OverlayTrigger/OverlayTrigger.types.json +31 -31
  188. package/dist/_typedoc/PageLayout/PageLayout.types.json +26 -26
  189. package/dist/_typedoc/Pagination/Pagination.types.json +7 -7
  190. package/dist/_typedoc/Panel/Panel.types.json +27 -27
  191. package/dist/_typedoc/Pill/Pill.types.json +2 -2
  192. package/dist/_typedoc/PillSelect/PillSelect.types.json +47 -47
  193. package/dist/_typedoc/Popover/Popover.types.json +14 -14
  194. package/dist/_typedoc/ProgressBar/ProgressBar.types.json +6 -6
  195. package/dist/_typedoc/RadioButton/RadioButton.types.json +6 -6
  196. package/dist/_typedoc/Required/Required.types.json +5 -5
  197. package/dist/_typedoc/Search/Search.types.json +20 -19
  198. package/dist/_typedoc/Section/Section.types.json +14 -14
  199. package/dist/_typedoc/SegmentedController/SegmentedController.types.json +29 -21
  200. package/dist/_typedoc/Select/Select.types.json +57 -57
  201. package/dist/_typedoc/Slider/Slider.types.json +6 -6
  202. package/dist/_typedoc/Spinner/Spinner.types.json +11 -10
  203. package/dist/_typedoc/Switch/Switch.types.json +3 -3
  204. package/dist/_typedoc/Table/Table.types.json +101 -100
  205. package/dist/_typedoc/Tabs/Tabs.types.json +23 -20
  206. package/dist/_typedoc/Tearsheet/Tearsheet.types.json +16 -16
  207. package/dist/_typedoc/TextArea/TextArea.types.json +3 -3
  208. package/dist/_typedoc/TextEditor/TextEditor.types.json +9 -9
  209. package/dist/_typedoc/TextEditorOutput/TextEditorOutput.types.json +4 -4
  210. package/dist/_typedoc/Thumbnail/Thumbnail.types.json +19 -19
  211. package/dist/_typedoc/TieredDropdown/TieredDropdown.types.json +42 -42
  212. package/dist/_typedoc/TieredSelect/TieredSelect.types.json +28 -28
  213. package/dist/_typedoc/Tile/Tile.types.json +30 -30
  214. package/dist/_typedoc/Title/Title.types.json +1 -1
  215. package/dist/_typedoc/Toast/Toast.types.json +4 -4
  216. package/dist/_typedoc/ToggleButton/ToggleButton.types.json +3 -3
  217. package/dist/_typedoc/Token/Token.types.json +4 -4
  218. package/dist/_typedoc/ToolHeader/ToolHeader.types.json +10 -10
  219. package/dist/_typedoc/Tooltip/Tooltip.types.json +13 -13
  220. package/dist/_typedoc/Tree/Tree.types.json +86 -86
  221. package/dist/_typedoc/Typeahead/Typeahead.types.json +2 -2
  222. package/dist/_typedoc/Typography/Typography.types.json +14 -14
  223. package/dist/_typedoc/_utils/types.json +3 -3
  224. package/dist/_typedoc/deprecations.json +1 -1
  225. package/dist/_utils/isFunction.d.ts +1 -0
  226. package/dist/_utils/isFunction.js +4 -0
  227. package/dist/_utils/isFunction.js.map +1 -0
  228. package/dist/_utils/propsTypedoc.d.ts +2 -0
  229. package/dist/_utils/propsTypedoc.js +2 -0
  230. package/dist/_utils/propsTypedoc.js.map +1 -1
  231. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.js","names":["CaretDown","CaretUp","React","useButton","MenuImperative","OverlayTrigger","useOverlayTriggerContext","useI18nContext","useResize","addSubcomponents","getBoundingRect","mergeRefs","StyledDropdownTab","StyledDropdownTabInner","StyledLink","StyledOverlay","StyledTab","StyledTabInner","StyledTabList","StyledTabs","noop","Link","forwardRef","_ref","ref","children","props","_objectWithoutProperties","_excluded","createElement","_extends","TabInternal","_ref2","as","disabled","role","_ref2$active","active","onBlur","onFocus","_ref2$onMount","onMount","_ref2$onUnmount","onUnmount","_ref2$overflowing","overflowing","_ref2$dropdown","dropdown","_ref2$variant","variant","_excluded2","_ref3","onPress","_useButton","_objectSpread","elementType","isDisabled","type","buttonProps","a11yProps","$clickable","innerRef","useRef","useEffect","current","validChild","isValidElement","dark","cloneElement","undefined","Tab","MoreMenu","_ref4","id","ctx","menuRef","_menuRef$current","_menuRef$current$el","_menuRef$current2","_menuRef$current3","el","focus","highlightFirst","highlightSelected","onSelect","selection","hide","event","Options","Children","map","child","i","Item","item","key","selected","Tabs_","Tabs","_ref5","className","_ref5$dark","qa","_excluded3","i18n","_React$useState","useState","_React$useState2","_slicedToArray","moreMenuIsShown","setMoreMenuIsShown","_React$useState3","_React$useState4","tabElements","setTabElements","_React$useState5","_React$useState6","cutoffIndex","setCutoffIndex","containerRef","recalculate","container","_tabElements$reduce","reduce","acc","rect","subtotals","concat","_toConsumableArray","total","width","Array","index","findIndex","val","onResize","filtered","toArray","filter","slice","isOverflowingActive","some","elements","oldElements","autoFocus","beforeShow","afterHide","trigger","passA11yPropsToOverlay","placement","overlay","length","more","t","size","displayName"],"sources":["../../src/Tabs/Tabs.tsx"],"sourcesContent":["import { CaretDown, CaretUp } from '@procore/core-icons/dist'\nimport React from 'react'\n\nimport { useButton } from '@react-aria/button'\nimport { MenuImperative } from '../MenuImperative/MenuImperative'\nimport type { MenuRef, Selection } from '../MenuImperative/MenuImperative.types'\nimport {\n OverlayTrigger,\n useOverlayTriggerContext,\n} from '../OverlayTrigger/OverlayTrigger'\nimport { useI18nContext } from '../_hooks/I18n'\nimport { useResize } from '../_hooks/Resize'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport { getBoundingRect } from '../_utils/dom'\nimport { mergeRefs } from '../_utils/mergeRefs'\nimport type {\n DivAttributes,\n NavAttributes,\n Props,\n SpanAttributes,\n} from '../_utils/types'\nimport {\n StyledDropdownTab,\n StyledDropdownTabInner,\n StyledLink,\n StyledOverlay,\n StyledTab,\n StyledTabInner,\n StyledTabList,\n StyledTabs,\n} from './Tabs.styles'\nimport type {\n BaseTabProps,\n TabDropdownProps,\n TabProps,\n TabRef,\n TabRole,\n TabRoleType,\n TabsProps,\n} from './Tabs.types'\n\nfunction noop() {}\n\nexport const Link = React.forwardRef<HTMLSpanElement, SpanAttributes & Props>(\n function Link({ children, ...props }, ref) {\n return (\n <StyledLink ref={ref} {...props}>\n {children}\n </StyledLink>\n )\n }\n)\n\nfunction TabInternal(\n {\n as,\n disabled,\n role,\n active = false,\n children,\n onBlur,\n onFocus,\n onMount = noop,\n onUnmount = noop,\n overflowing = false,\n dropdown = false,\n variant = '',\n ...props\n }: TabProps<TabRoleType>,\n ref: TabRef<TabRoleType>\n) {\n const { onPress } = props as TabProps<'button'>\n\n const { buttonProps } = useButton(\n {\n ...props,\n onBlur: onBlur as (e: React.FocusEvent) => void,\n onFocus: onFocus as (e: React.FocusEvent) => void,\n elementType: role === 'link' ? 'a' : role === 'button' ? 'button' : 'div',\n isDisabled: disabled,\n onPress,\n type: 'button',\n },\n ref as any // TODO fix polymorphic type\n )\n\n const a11yProps =\n role === 'button'\n ? {\n ...buttonProps,\n 'aria-current': active,\n as: as || 'button',\n $clickable: !disabled,\n }\n : role === 'link'\n ? {\n ...buttonProps,\n 'aria-current': active,\n as: as || 'a',\n $clickable: !disabled,\n }\n : role === 'tab'\n ? { role: 'tab', onBlur, onFocus }\n : { onBlur, onFocus }\n\n const innerRef = React.useRef<HTMLDivElement>(null)\n\n React.useEffect(() => {\n onMount(innerRef.current)\n return onUnmount\n }, [])\n\n const validChild = React.isValidElement(children)\n\n return (\n // @ts-ignore\n <StyledTab ref={mergeRefs(ref, innerRef)} {...a11yProps} {...props}>\n <StyledTabInner active={active || variant === 'active'} dark={props.dark}>\n {validChild\n ? React.cloneElement(children as React.ReactElement<any, any>, {\n 'aria-current': active || variant === 'active' ? true : undefined,\n })\n : children}\n </StyledTabInner>\n </StyledTab>\n )\n}\n\nexport const Tab = React.forwardRef(TabInternal) as <Role extends TabRole>(\n props:\n | TabProps<Role>\n | (BaseTabProps & { ref?: React.ComponentPropsWithRef<'div'>['ref'] })\n) => ReturnType<typeof TabInternal>\n\nexport const MoreMenu = React.forwardRef<\n HTMLDivElement,\n DivAttributes & TabDropdownProps\n>(function MoreMenu({ children, id }, ref) {\n const ctx = useOverlayTriggerContext()\n\n const menuRef = React.useRef<MenuRef | null>(null)\n\n React.useEffect(function () {\n menuRef.current?.el?.focus()\n menuRef.current?.highlightFirst()\n menuRef.current?.highlightSelected()\n }, [])\n\n function onSelect(selection: Selection) {\n ctx.hide(selection.event)\n }\n\n return (\n <StyledOverlay ref={ref}>\n <MenuImperative id={id} role=\"menu\" ref={menuRef} onSelect={onSelect}>\n <MenuImperative.Options>\n {React.Children.map(children, (child, i) => {\n if (React.isValidElement<BaseTabProps>(child)) {\n return (\n <MenuImperative.Item\n item={null}\n key={i}\n selected={child.props.active}\n >\n {React.cloneElement(child as any, { ref: null })}\n </MenuImperative.Item>\n )\n }\n })}\n </MenuImperative.Options>\n </MenuImperative>\n </StyledOverlay>\n )\n})\n\nconst Tabs_ = React.forwardRef<HTMLDivElement, NavAttributes & TabsProps>(\n function Tabs({ children, className, dark = false, qa, ...props }, ref) {\n const i18n = useI18nContext()\n\n const [moreMenuIsShown, setMoreMenuIsShown] = React.useState(false)\n const [tabElements, setTabElements] = React.useState<\n (HTMLDivElement | null)[]\n >([])\n const [cutoffIndex, setCutoffIndex] = React.useState(0)\n\n const containerRef = React.useRef<HTMLDivElement>(null)\n\n function recalculate() {\n const container = getBoundingRect(containerRef.current!)\n\n const { subtotals } = tabElements.reduce(\n (acc, el) => {\n if (!el) {\n return acc\n }\n const rect = getBoundingRect(el)\n return {\n subtotals: [...acc.subtotals, acc.total + rect.width],\n total: acc.total + rect.width,\n }\n },\n { subtotals: new Array(), total: 0 }\n )\n\n const index = subtotals.findIndex((val: number) => val >= container.width)\n\n setCutoffIndex(index)\n }\n\n useResize({ onResize: recalculate })\n\n React.useEffect(recalculate)\n\n const filtered = React.Children.toArray(children).filter((child) => child)\n\n const overflowing = filtered.slice(cutoffIndex - 1)\n\n const isOverflowingActive = React.Children.toArray(overflowing).some(\n (child) => React.isValidElement(child) && child.props.active\n )\n\n return (\n <StyledTabs ref={ref} dark={dark} index={cutoffIndex} {...props}>\n <StyledTabList ref={containerRef}>\n {filtered.map((child, i) => {\n if (React.isValidElement(child))\n return React.cloneElement(child, {\n dark,\n onMount: (el: HTMLDivElement) => {\n setTabElements((elements) => {\n const oldElements = [...elements]\n oldElements[i] = el\n return oldElements\n })\n },\n onUnmount: () => {\n setTabElements((elements) => {\n const oldElements = [...elements]\n oldElements[i] = null\n return oldElements\n })\n },\n } as any) // TODO fix type\n })}\n\n <OverlayTrigger\n autoFocus\n beforeShow={() => setMoreMenuIsShown(true)}\n afterHide={() => setMoreMenuIsShown(false)}\n trigger=\"click\"\n passA11yPropsToOverlay\n placement=\"bottom-right\"\n overlay={<MoreMenu>{overflowing}</MoreMenu>}\n ref={ref}\n role=\"menu\"\n >\n <StyledDropdownTab aria-hidden={!overflowing.length} as=\"button\">\n <StyledDropdownTabInner active={isOverflowingActive} dark={dark}>\n <StyledLink data-qa={qa?.more}>\n {i18n.t('core.tabs.more')}\n </StyledLink>\n {moreMenuIsShown ? (\n <CaretUp size=\"sm\" />\n ) : (\n <CaretDown size=\"sm\" />\n )}\n </StyledDropdownTabInner>\n </StyledDropdownTab>\n </OverlayTrigger>\n </StyledTabList>\n </StyledTabs>\n )\n }\n)\n\nTabs_.displayName = 'Tabs'\n\nLink.displayName = 'Tabs.Link'\n\n// @ts-ignore\nTab.displayName = 'Tabs.Tab'\n\n/**\n\n We use tabs to navigate between different, but related content.\n Tabs are commonly used on tool landing pages and on item detail pages.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-tabs--demo)\n\n @see [Design Guidelines](https://design.procore.com/tabs)\n\n */\nexport const Tabs = addSubcomponents(\n {\n Link,\n Tab,\n },\n Tabs_\n)\n"],"mappings":"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"}
1
+ {"version":3,"file":"Tabs.js","names":["CaretDown","CaretUp","React","useButton","MenuImperative","OverlayTrigger","useOverlayTriggerContext","useI18nContext","useResize","spacing","addSubcomponents","getBoundingRect","mergeRefs","StyledDropdownTab","StyledDropdownTabInner","StyledLink","StyledOverlay","StyledTab","StyledTabInner","StyledTabList","StyledTabs","ExtraTabSpacing","xxl","noop","Link","forwardRef","_ref","ref","children","props","_objectWithoutProperties","_excluded","createElement","_extends","TabInternal","_ref2","as","disabled","role","_ref2$active","active","onBlur","onFocus","_ref2$onMount","onMount","_ref2$onUnmount","onUnmount","_ref2$overflowing","overflowing","_ref2$dropdown","dropdown","_ref2$variant","variant","_excluded2","_ref3","onPress","_useButton","_objectSpread","elementType","isDisabled","type","buttonProps","a11yProps","$clickable","innerRef","useRef","useEffect","current","validChild","isValidElement","tabActive","$active","$dark","dark","cloneElement","undefined","Tab","MoreMenu","_ref4","id","ctx","menuRef","_menuRef$current","_menuRef$current$el","_menuRef$current2","_menuRef$current3","el","focus","highlightFirst","highlightSelected","onSelect","selection","hide","event","Options","Children","map","child","i","Item","item","key","selected","Tabs_","Tabs","_ref5","className","_ref5$dark","qa","_excluded3","i18n","_React$useState","useState","_React$useState2","_slicedToArray","moreMenuIsShown","setMoreMenuIsShown","_React$useState3","_React$useState4","tabElements","setTabElements","_React$useState5","_React$useState6","cutoffIndex","setCutoffIndex","containerRef","recalculate","container","_tabElements$reduce","reduce","acc","rect","subtotals","concat","_toConsumableArray","total","width","Array","index","findIndex","val","onResize","filtered","toArray","filter","slice","isOverflowingActive","some","elements","oldElements","autoFocus","beforeShow","afterHide","trigger","passA11yPropsToOverlay","placement","overlay","length","more","t","size","displayName"],"sources":["../../src/Tabs/Tabs.tsx"],"sourcesContent":["import { CaretDown, CaretUp } from '@procore/core-icons/dist'\nimport React from 'react'\n\nimport { useButton } from '@react-aria/button'\nimport { MenuImperative } from '../MenuImperative/MenuImperative'\nimport type { MenuRef, Selection } from '../MenuImperative/MenuImperative.types'\nimport {\n OverlayTrigger,\n useOverlayTriggerContext,\n} from '../OverlayTrigger/OverlayTrigger'\nimport { useI18nContext } from '../_hooks/I18n'\nimport { useResize } from '../_hooks/Resize'\nimport { spacing } from '../_styles/spacing'\nimport { addSubcomponents } from '../_utils/addSubcomponents'\nimport { getBoundingRect } from '../_utils/dom'\nimport { mergeRefs } from '../_utils/mergeRefs'\nimport type {\n DivAttributes,\n NavAttributes,\n Props,\n SpanAttributes,\n} from '../_utils/types'\nimport {\n StyledDropdownTab,\n StyledDropdownTabInner,\n StyledLink,\n StyledOverlay,\n StyledTab,\n StyledTabInner,\n StyledTabList,\n StyledTabs,\n} from './Tabs.styles'\nimport type {\n BaseTabProps,\n TabDropdownProps,\n TabProps,\n TabRef,\n TabRole,\n TabRoleType,\n TabsProps,\n} from './Tabs.types'\n\nconst ExtraTabSpacing = spacing.xxl\n\nfunction noop() {}\n\nexport const Link = React.forwardRef<HTMLSpanElement, SpanAttributes & Props>(\n function Link({ children, ...props }, ref) {\n return (\n <StyledLink ref={ref} {...props}>\n {children}\n </StyledLink>\n )\n }\n)\n\nfunction TabInternal(\n {\n as,\n disabled,\n role,\n active = false,\n children,\n onBlur,\n onFocus,\n onMount = noop,\n onUnmount = noop,\n overflowing = false,\n dropdown = false,\n variant = '',\n ...props\n }: TabProps<TabRoleType>,\n ref: TabRef<TabRoleType>\n) {\n const { onPress } = props as TabProps<'button'>\n\n const { buttonProps } = useButton(\n {\n ...props,\n onBlur: onBlur as (e: React.FocusEvent) => void,\n onFocus: onFocus as (e: React.FocusEvent) => void,\n elementType: role === 'link' ? 'a' : role === 'button' ? 'button' : 'div',\n isDisabled: disabled,\n onPress,\n type: 'button',\n },\n ref as any // TODO fix polymorphic type\n )\n\n const a11yProps =\n role === 'button'\n ? {\n ...buttonProps,\n 'aria-current': active,\n as: as || 'button',\n $clickable: !disabled,\n }\n : role === 'link'\n ? {\n ...buttonProps,\n 'aria-current': active,\n as: as || 'a',\n $clickable: !disabled,\n }\n : role === 'tab'\n ? { role: 'tab', onBlur, onFocus }\n : { onBlur, onFocus }\n\n const innerRef = React.useRef<HTMLDivElement>(null)\n\n React.useEffect(() => {\n onMount(innerRef.current)\n return onUnmount\n }, [])\n\n const validChild = React.isValidElement(children)\n const tabActive = active || variant === 'active'\n\n return (\n <StyledTab\n $active={tabActive}\n $dark={props.dark}\n // @ts-ignore\n ref={mergeRefs(ref, innerRef)}\n {...a11yProps}\n {...props}\n >\n <StyledTabInner $active={tabActive} $dark={props.dark}>\n {validChild\n ? React.cloneElement(children as React.ReactElement<any, any>, {\n 'aria-current': tabActive ? true : undefined,\n })\n : children}\n </StyledTabInner>\n </StyledTab>\n )\n}\n\nexport const Tab = React.forwardRef(TabInternal) as <Role extends TabRole>(\n props:\n | TabProps<Role>\n | (BaseTabProps & { ref?: React.ComponentPropsWithRef<'div'>['ref'] })\n) => ReturnType<typeof TabInternal>\n\nexport const MoreMenu = React.forwardRef<\n HTMLDivElement,\n DivAttributes & TabDropdownProps\n>(function MoreMenu({ children, id }, ref) {\n const ctx = useOverlayTriggerContext()\n\n const menuRef = React.useRef<MenuRef | null>(null)\n\n React.useEffect(function () {\n menuRef.current?.el?.focus()\n menuRef.current?.highlightFirst()\n menuRef.current?.highlightSelected()\n }, [])\n\n function onSelect(selection: Selection) {\n ctx.hide(selection.event)\n }\n\n return (\n <StyledOverlay ref={ref}>\n <MenuImperative id={id} role=\"menu\" ref={menuRef} onSelect={onSelect}>\n <MenuImperative.Options>\n {React.Children.map(children, (child, i) => {\n if (React.isValidElement<BaseTabProps>(child)) {\n return (\n <MenuImperative.Item\n item={null}\n key={i}\n selected={child.props.active}\n >\n {React.cloneElement(child as any, { ref: null })}\n </MenuImperative.Item>\n )\n }\n })}\n </MenuImperative.Options>\n </MenuImperative>\n </StyledOverlay>\n )\n})\n\nconst Tabs_ = React.forwardRef<HTMLDivElement, NavAttributes & TabsProps>(\n function Tabs({ children, className, dark = false, qa, ...props }, ref) {\n const i18n = useI18nContext()\n\n const [moreMenuIsShown, setMoreMenuIsShown] = React.useState(false)\n const [tabElements, setTabElements] = React.useState<\n (HTMLDivElement | null)[]\n >([])\n const [cutoffIndex, setCutoffIndex] = React.useState(0)\n\n const containerRef = React.useRef<HTMLDivElement>(null)\n\n function recalculate() {\n const container = getBoundingRect(containerRef.current!)\n\n const { subtotals } = tabElements.reduce(\n (acc, el) => {\n if (!el) {\n return acc\n }\n const rect = getBoundingRect(el)\n return {\n subtotals: [...acc.subtotals, acc.total + rect.width],\n total: acc.total + rect.width + ExtraTabSpacing,\n }\n },\n { subtotals: new Array(), total: 0 }\n )\n\n const index = subtotals.findIndex((val: number) => val >= container.width)\n\n setCutoffIndex(index)\n }\n\n useResize({ onResize: recalculate })\n\n React.useEffect(recalculate)\n\n const filtered = React.Children.toArray(children).filter((child) => child)\n\n const overflowing = filtered.slice(cutoffIndex - 1)\n\n const isOverflowingActive = React.Children.toArray(overflowing).some(\n (child) => React.isValidElement(child) && child.props.active\n )\n\n return (\n <StyledTabs ref={ref} dark={dark} index={cutoffIndex} {...props}>\n <StyledTabList ref={containerRef}>\n {filtered.map((child, i) => {\n if (React.isValidElement(child))\n return React.cloneElement(child, {\n dark,\n onMount: (el: HTMLDivElement) => {\n setTabElements((elements) => {\n const oldElements = [...elements]\n oldElements[i] = el\n return oldElements\n })\n },\n onUnmount: () => {\n setTabElements((elements) => {\n const oldElements = [...elements]\n oldElements[i] = null\n return oldElements\n })\n },\n } as any) // TODO fix type\n })}\n\n <OverlayTrigger\n autoFocus\n beforeShow={() => setMoreMenuIsShown(true)}\n afterHide={() => setMoreMenuIsShown(false)}\n trigger=\"click\"\n passA11yPropsToOverlay\n placement=\"bottom-right\"\n overlay={<MoreMenu>{overflowing}</MoreMenu>}\n ref={ref}\n role=\"menu\"\n >\n <StyledDropdownTab\n $active={isOverflowingActive}\n $dark={dark}\n aria-hidden={!overflowing.length}\n as=\"button\"\n >\n <StyledDropdownTabInner\n $active={isOverflowingActive}\n $dark={dark}\n >\n <StyledLink data-qa={qa?.more}>\n {i18n.t('core.tabs.more')}\n </StyledLink>\n {moreMenuIsShown ? (\n <CaretUp size=\"sm\" />\n ) : (\n <CaretDown size=\"sm\" />\n )}\n </StyledDropdownTabInner>\n </StyledDropdownTab>\n </OverlayTrigger>\n </StyledTabList>\n </StyledTabs>\n )\n }\n)\n\nTabs_.displayName = 'Tabs'\n\nLink.displayName = 'Tabs.Link'\n\n// @ts-ignore\nTab.displayName = 'Tabs.Tab'\n\n/**\n\n We use tabs to navigate between different, but related content.\n Tabs are commonly used on tool landing pages and on item detail pages.\n\n @since 10.19.0\n\n @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-tabs--demo)\n\n @see [Design Guidelines](https://design.procore.com/tabs)\n\n */\nexport const Tabs = addSubcomponents(\n {\n Link,\n Tab,\n },\n Tabs_\n)\n"],"mappings":"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"}
@@ -1,14 +1,20 @@
1
1
  /// <reference types="react" />
2
2
  export declare const StyledLink: import("styled-components").StyledComponent<"span", any, {}, never>;
3
- export declare const StyledTab: import("styled-components").StyledComponent<"div", any, {}, never>;
3
+ export declare const StyledTab: import("styled-components").StyledComponent<"div", any, {
4
+ $active?: boolean | undefined;
5
+ $dark?: boolean | undefined;
6
+ }, never>;
4
7
  export declare const StyledTabInner: import("styled-components").StyledComponent<"div", any, {
5
- active?: boolean | undefined;
6
- dark?: boolean | undefined;
8
+ $active?: boolean | undefined;
9
+ $dark?: boolean | undefined;
10
+ }, never>;
11
+ export declare const StyledDropdownTab: import("styled-components").StyledComponent<"div", any, {
12
+ $active?: boolean | undefined;
13
+ $dark?: boolean | undefined;
7
14
  }, never>;
8
- export declare const StyledDropdownTab: import("styled-components").StyledComponent<"div", any, {}, never>;
9
15
  export declare const StyledDropdownTabInner: import("styled-components").StyledComponent<"div", any, {
10
- active?: boolean | undefined;
11
- dark?: boolean | undefined;
16
+ $active?: boolean | undefined;
17
+ $dark?: boolean | undefined;
12
18
  }, never>;
13
19
  export declare const StyledOverlay: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("../_utils/types").DivAttributes & import("..").CardProps & import("react").RefAttributes<HTMLDivElement>>, any, {}, never>;
14
20
  export declare const StyledTabList: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -1,69 +1,71 @@
1
1
  import styled, { css } from 'styled-components';
2
2
  import { Card } from '../Card/Card';
3
- import { getUnstyledButton } from '../Semantic/Semantic.styles';
4
- import { getTypographyIntent, typographyWeights } from '../Typography/Typography.styles';
3
+ import { StyledItem } from '../MenuImperative/MenuImperative.styles';
4
+ import { getTypographyIntent } from '../Typography/Typography.styles';
5
5
  import { colors } from '../_styles/colors';
6
- import { focusable } from '../_styles/mixins';
7
6
  import { spacing } from '../_styles/spacing';
8
- var tabGap = spacing.md;
9
7
  var hiddenTab = /*#__PURE__*/css(["pointer-events:none;position:absolute;visibility:hidden;"]);
10
8
  var visible = /*#__PURE__*/css(["pointer-events:all;position:relative;visibility:visible;"]);
9
+ var borderRadius = /*#__PURE__*/css(["border-radius:", "px ", "px 0 0;"], spacing.xs, spacing.xs);
11
10
  export var StyledLink = /*#__PURE__*/styled.span.withConfig({
12
11
  displayName: "StyledLink",
13
- componentId: "core-11_31_1__sc-17s58xs-0"
14
- })(["align-items:center;border-bottom-style:solid;border-bottom-color:transparent;border-bottom-width:2px;display:inline-flex;height:26px;justify-content:center;"]);
12
+ componentId: "core-11_33_0__sc-17s58xs-0"
13
+ })(["align-items:center;display:flex;height:23px;", " box-sizing:border-box;"], borderRadius);
15
14
  export var StyledTab = /*#__PURE__*/styled.div.withConfig({
16
15
  displayName: "StyledTab",
17
- componentId: "core-11_31_1__sc-17s58xs-1"
18
- })(["align-items:center;cursor:pointer;display:inline-flex;flex:0 0 auto;justify-content:center;padding:0 ", "px;position:relative;white-space:nowrap;a&{text-decoration:none;}button&{background-color:transparent;border:none;font-family:inherit;}&:first-child{padding-left:0;}&:last-child{padding-right:0;}&:not(:last-child){&:focus{outline:none;", "{box-shadow:inset 0 0 0 1px ", ";}}}"], tabGap, StyledLink, colors.blue40);
16
+ componentId: "core-11_33_0__sc-17s58xs-1"
17
+ })(["", " align-items:center;box-sizing:border-box;cursor:pointer;display:inline-flex;flex:0 0 auto;height:26px;justify-content:center;position:relative;white-space:nowrap;a&{", " text-decoration:none;}button&{background-color:transparent;border:none;font-family:inherit;padding-inline-start:0;padding-inline-end:0;padding-block-start:0;padding-block-end:0;}&,a&,button&{", "}&:focus,&:focus-within,&:hover{background:", ";}&:focus,&:focus-within{box-shadow:inset 0 0 0 2px ", ";outline:none;a{outline:none;}}"], borderRadius, borderRadius, function (_ref) {
18
+ var $active = _ref.$active;
19
+ if ($active) {
20
+ return css(["border-bottom:3px solid ", ";"], colors.gray15);
21
+ }
22
+ }, function (_ref2) {
23
+ var $dark = _ref2.$dark;
24
+ return $dark ? 'transparent' : colors.gray90;
25
+ }, colors.blue40);
19
26
  export var StyledTabInner = /*#__PURE__*/styled.div.withConfig({
20
27
  displayName: "StyledTabInner",
21
- componentId: "core-11_31_1__sc-17s58xs-2"
22
- })(["", " > a{text-decoration:none;", "}", ""], getTypographyIntent('body'), focusable, function (_ref) {
23
- var active = _ref.active,
24
- dark = _ref.dark;
25
- var textColors = dark ? {
26
- active: colors.white,
27
- "default": colors.gray70,
28
- hover: colors.white
29
- } : {
30
- active: colors.gray15,
31
- "default": colors.gray45,
32
- hover: colors.gray15
33
- };
34
- if (active) {
35
- return css(["&,> a{color:", ";cursor:default;}", "{border-bottom-color:", ";}"], textColors.active, StyledLink, colors.blue50);
28
+ componentId: "core-11_33_0__sc-17s58xs-2"
29
+ })(["", " align-self:baseline;padding:0 ", "px;box-sizing:border-box;font-weight:", ";&,> a{", " color:", ";display:flex;height:23px;text-decoration:none;width:100%;}", ""], getTypographyIntent('body'), spacing.xs, function (_ref3) {
30
+ var $active = _ref3.$active;
31
+ return $active ? 600 : 400;
32
+ }, borderRadius, colors.gray15, function (_ref4) {
33
+ var $active = _ref4.$active,
34
+ $dark = _ref4.$dark;
35
+ if ($dark) {
36
+ return css(["&,> a,button&,a&{color:", ";&:hover{color:white;}}"], $active ? colors.white : colors.gray70);
36
37
  }
37
- return css(["&,> a{color:", ";cursor:pointer;}&:hover,&.hover,> a:hover{color:", ";}"], textColors["default"], textColors.hover);
38
38
  });
39
+
40
+ // This is still needed so that it can be hidden via CSS down below
39
41
  export var StyledDropdownTab = /*#__PURE__*/styled(StyledTab).withConfig({
40
42
  displayName: "StyledDropdownTab",
41
- componentId: "core-11_31_1__sc-17s58xs-3"
42
- })(["cursor:pointer;", " ", " ", " margin-left:", "px;", "{margin-right:", "px;}"], getUnstyledButton, focusable, hiddenTab, tabGap, StyledLink, spacing.xs);
43
+ componentId: "core-11_33_0__sc-17s58xs-3"
44
+ })(["", ""], hiddenTab);
43
45
  export var StyledDropdownTabInner = /*#__PURE__*/styled(StyledTabInner).withConfig({
44
46
  displayName: "StyledDropdownTabInner",
45
- componentId: "core-11_31_1__sc-17s58xs-4"
47
+ componentId: "core-11_33_0__sc-17s58xs-4"
46
48
  })(["align-items:center;cursor:pointer;display:inline-flex;"]);
47
49
  export var StyledOverlay = /*#__PURE__*/styled(Card).withConfig({
48
50
  displayName: "StyledOverlay",
49
- componentId: "core-11_31_1__sc-17s58xs-5"
50
- })(["max-height:40vh;", "{color:", ";}", "{margin:-", "px -", "px;padding:", "px ", "px;}[data-selected='true']{", ",", " > a{color:", ";font-weight:", ";}}", "{border:0;height:auto;}"], StyledTabInner, colors.gray45, StyledTab, spacing.sm, spacing.lg, spacing.sm, spacing.lg, StyledTabInner, StyledTabInner, colors.blue50, typographyWeights.semibold, StyledLink);
51
+ componentId: "core-11_33_0__sc-17s58xs-5"
52
+ })(["max-height:40vh;", "{padding:0;display:flex;justify-content:center;a{margin:unset;padding:unset;}}", "{padding:0;display:flex;}", "{padding:2px 16px 4px 16px;}", ",", "{color:", ";border-radius:0;display:flex;width:100%;}[data-selected='true']{", ",", "{border-bottom-color:transparent;color:", ";}}"], StyledItem, StyledLink, StyledTabInner, StyledLink, StyledTab, colors.gray15, StyledLink, StyledTab, colors.blue50);
51
53
  export var StyledTabList = /*#__PURE__*/styled.div.withConfig({
52
54
  displayName: "StyledTabList",
53
- componentId: "core-11_31_1__sc-17s58xs-6"
55
+ componentId: "core-11_33_0__sc-17s58xs-6"
54
56
  })(["display:flex;width:100%;"]);
55
57
  export var StyledTabs = /*#__PURE__*/styled.nav.withConfig({
56
58
  displayName: "StyledTabs",
57
- componentId: "core-11_31_1__sc-17s58xs-7"
58
- })(["background-color:", ";display:flex;overflow:hidden;width:100%;", "{&:nth-child(1n + ", "){&:not(", "){", "}}}", ""], function (_ref2) {
59
- var dark = _ref2.dark;
59
+ componentId: "core-11_33_0__sc-17s58xs-7"
60
+ })(["background-color:", ";display:flex;overflow:hidden;width:100%;", " + ", "{margin-left:", "px;}", "{&:nth-child(1n + ", "){&:not(", "){", "}}}", ""], function (_ref5) {
61
+ var dark = _ref5.dark;
60
62
  return dark && colors.gray15;
61
- }, StyledTab, function (_ref3) {
62
- var index = _ref3.index;
63
+ }, StyledTab, StyledTab, spacing.xl, StyledTab, function (_ref6) {
64
+ var index = _ref6.index;
63
65
  return index;
64
- }, StyledDropdownTab, hiddenTab, function (_ref4) {
65
- var _ref4$index = _ref4.index,
66
- index = _ref4$index === void 0 ? -1 : _ref4$index;
66
+ }, StyledDropdownTab, hiddenTab, function (_ref7) {
67
+ var _ref7$index = _ref7.index,
68
+ index = _ref7$index === void 0 ? -1 : _ref7$index;
67
69
  return index >= 0 && css(["", "{", "}"], StyledDropdownTab, visible);
68
70
  });
69
71
  //# sourceMappingURL=Tabs.styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.styles.js","names":["styled","css","Card","getUnstyledButton","getTypographyIntent","typographyWeights","colors","focusable","spacing","tabGap","md","hiddenTab","visible","StyledLink","span","withConfig","displayName","componentId","StyledTab","div","blue40","StyledTabInner","_ref","active","dark","textColors","white","gray70","hover","gray15","gray45","blue50","StyledDropdownTab","xs","StyledDropdownTabInner","StyledOverlay","sm","lg","semibold","StyledTabList","StyledTabs","nav","_ref2","_ref3","index","_ref4","_ref4$index"],"sources":["../../src/Tabs/Tabs.styles.ts"],"sourcesContent":["import styled, { css } from 'styled-components'\nimport { Card } from '../Card/Card'\nimport { getUnstyledButton } from '../Semantic/Semantic.styles'\nimport {\n getTypographyIntent,\n typographyWeights,\n} from '../Typography/Typography.styles'\nimport { colors } from '../_styles/colors'\nimport { focusable } from '../_styles/mixins'\nimport { spacing } from '../_styles/spacing'\n\nconst tabGap = spacing.md\n\nconst hiddenTab = css`\n pointer-events: none;\n position: absolute;\n visibility: hidden;\n`\n\nconst visible = css`\n pointer-events: all;\n position: relative;\n visibility: visible;\n`\n\nexport const StyledLink = styled.span`\n align-items: center;\n border-bottom-style: solid;\n border-bottom-color: transparent;\n border-bottom-width: 2px;\n display: inline-flex;\n height: 26px; // TODO one-off\n justify-content: center;\n`\n\nexport const StyledTab = styled.div`\n align-items: center;\n cursor: pointer;\n display: inline-flex;\n flex: 0 0 auto;\n justify-content: center;\n padding: 0 ${tabGap}px;\n position: relative;\n white-space: nowrap;\n\n a& {\n text-decoration: none;\n }\n\n button& {\n background-color: transparent;\n border: none;\n font-family: inherit;\n }\n\n &:first-child {\n padding-left: 0;\n }\n\n &:last-child {\n padding-right: 0;\n }\n\n &:not(:last-child) {\n &:focus {\n outline: none;\n\n ${StyledLink} {\n box-shadow: inset 0 0 0 1px ${colors.blue40};\n }\n }\n }\n`\n\nexport const StyledTabInner = styled.div<{ active?: boolean; dark?: boolean }>`\n ${getTypographyIntent('body')}\n\n > a {\n text-decoration: none;\n ${focusable}\n }\n\n ${({ active, dark }) => {\n const textColors = dark\n ? {\n active: colors.white,\n default: colors.gray70,\n hover: colors.white,\n }\n : {\n active: colors.gray15,\n default: colors.gray45,\n hover: colors.gray15,\n }\n\n if (active) {\n return css`\n &,\n > a {\n color: ${textColors.active};\n cursor: default;\n }\n\n ${StyledLink} {\n border-bottom-color: ${colors.blue50};\n }\n `\n }\n\n return css`\n &,\n > a {\n color: ${textColors.default};\n cursor: pointer;\n }\n &:hover,\n &.hover,\n > a:hover {\n color: ${textColors.hover};\n }\n `\n }}\n`\n\nexport const StyledDropdownTab = styled(StyledTab)`\n cursor: pointer;\n ${getUnstyledButton}\n ${focusable}\n\n ${hiddenTab}\n\n margin-left: ${tabGap}px;\n\n ${StyledLink} {\n margin-right: ${spacing.xs}px;\n }\n`\n\nexport const StyledDropdownTabInner = styled(StyledTabInner)`\n align-items: center;\n cursor: pointer;\n display: inline-flex;\n`\n\nexport const StyledOverlay = styled(Card)`\n max-height: 40vh;\n\n ${StyledTabInner} {\n color: ${colors.gray45};\n }\n ${StyledTab} {\n // onClick events are attached to the Tab which are put inside of <Menu.Item>\n // components with padding. Negative margin trick allows the cloned tab\n // to cover the full area of the menu item\n margin: -${spacing.sm}px -${spacing.lg}px;\n padding: ${spacing.sm}px ${spacing.lg}px;\n }\n\n // hacky way to style items that were cloned into the menu\n // can probably clean this up once we convert menu to jss\n // by using the inverse ancestor selector\n [data-selected='true'] {\n ${StyledTabInner},\n ${StyledTabInner} > a {\n color: ${colors.blue50};\n font-weight: ${typographyWeights.semibold};\n }\n }\n\n ${StyledLink} {\n border: 0;\n height: auto;\n }\n`\n\nexport const StyledTabList = styled.div`\n display: flex;\n width: 100%;\n`\n\nexport const StyledTabs = styled.nav<{ dark?: boolean; index?: number }>`\n background-color: ${({ dark }) => dark && colors.gray15};\n display: flex;\n overflow: hidden;\n width: 100%;\n\n ${StyledTab} {\n // we want to hide all tabs after overflow index\n &:nth-child(1n + ${({ index }) => index}) {\n // but not the \"More\" dropdown tab\n &:not(${StyledDropdownTab}) {\n ${hiddenTab}\n }\n }\n }\n\n ${({ index = -1 }) =>\n index >= 0 &&\n css`\n ${StyledDropdownTab} {\n ${visible}\n }\n `}\n`\n"],"mappings":"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"}
1
+ {"version":3,"file":"Tabs.styles.js","names":["styled","css","Card","StyledItem","getTypographyIntent","colors","spacing","hiddenTab","visible","borderRadius","xs","StyledLink","span","withConfig","displayName","componentId","StyledTab","div","_ref","$active","gray15","_ref2","$dark","gray90","blue40","StyledTabInner","_ref3","_ref4","white","gray70","StyledDropdownTab","StyledDropdownTabInner","StyledOverlay","blue50","StyledTabList","StyledTabs","nav","_ref5","dark","xl","_ref6","index","_ref7","_ref7$index"],"sources":["../../src/Tabs/Tabs.styles.ts"],"sourcesContent":["import styled, { css } from 'styled-components'\nimport { Card } from '../Card/Card'\nimport { StyledItem } from '../MenuImperative/MenuImperative.styles'\nimport { getTypographyIntent } from '../Typography/Typography.styles'\nimport { colors } from '../_styles/colors'\nimport { spacing } from '../_styles/spacing'\n\nconst hiddenTab = css`\n pointer-events: none;\n position: absolute;\n visibility: hidden;\n`\n\nconst visible = css`\n pointer-events: all;\n position: relative;\n visibility: visible;\n`\n\nconst borderRadius = css`\n border-radius: ${spacing.xs}px ${spacing.xs}px 0 0;\n`\n\nexport const StyledLink = styled.span`\n align-items: center;\n display: flex;\n height: 23px; // TODO one-off\n ${borderRadius}\n box-sizing: border-box;\n`\n\nexport const StyledTab = styled.div<{ $active?: boolean; $dark?: boolean }>`\n ${borderRadius}\n align-items: center;\n box-sizing: border-box;\n cursor: pointer;\n display: inline-flex;\n flex: 0 0 auto;\n height: 26px;\n justify-content: center;\n position: relative;\n white-space: nowrap;\n\n a& {\n ${borderRadius}\n text-decoration: none;\n }\n\n button& {\n background-color: transparent;\n border: none;\n font-family: inherit;\n padding-inline-start: 0;\n padding-inline-end: 0;\n padding-block-start: 0;\n padding-block-end: 0;\n }\n\n &,\n a&,\n button& {\n ${({ $active }) => {\n if ($active) {\n return css`\n border-bottom: 3px solid ${colors.gray15};\n `\n }\n }}\n }\n\n &:focus,\n &:focus-within,\n &:hover {\n background: ${({ $dark }) => ($dark ? 'transparent' : colors.gray90)};\n }\n\n &:focus,\n &:focus-within {\n box-shadow: inset 0 0 0 2px ${colors.blue40};\n outline: none;\n\n a {\n outline: none;\n }\n }\n`\n\nexport const StyledTabInner = styled.div<{\n $active?: boolean\n $dark?: boolean\n}>`\n ${getTypographyIntent('body')}\n\n align-self: baseline;\n padding: 0 ${spacing.xs}px;\n box-sizing: border-box;\n font-weight: ${({ $active }) => ($active ? 600 : 400)};\n\n &,\n > a {\n ${borderRadius}\n color: ${colors.gray15};\n display: flex;\n height: 23px;\n text-decoration: none;\n width: 100%;\n }\n\n /* TODO: Dark mode was not considered for helix updates,\n * matching previous UX patterns - April 2nd 2024\n */\n ${({ $active, $dark }) => {\n if ($dark) {\n return css`\n &,\n > a,\n button&,\n a& {\n color: ${$active ? colors.white : colors.gray70};\n\n &:hover {\n color: white;\n }\n }\n `\n }\n }}\n`\n\n// This is still needed so that it can be hidden via CSS down below\nexport const StyledDropdownTab = styled(StyledTab)`\n ${hiddenTab}\n`\n\nexport const StyledDropdownTabInner = styled(StyledTabInner)`\n align-items: center;\n cursor: pointer;\n display: inline-flex;\n`\n\nexport const StyledOverlay = styled(Card)`\n max-height: 40vh;\n\n ${StyledItem} {\n padding: 0;\n display: flex;\n justify-content: center;\n\n a {\n margin: unset;\n padding: unset;\n }\n }\n\n ${StyledLink} {\n padding: 0;\n display: flex;\n }\n\n ${StyledTabInner} {\n padding: 2px 16px 4px 16px;\n }\n\n ${StyledLink}, ${StyledTab} {\n color: ${colors.gray15};\n border-radius: 0;\n display: flex;\n width: 100%;\n }\n\n [data-selected='true'] {\n ${StyledLink}, ${StyledTab} {\n border-bottom-color: transparent;\n color: ${colors.blue50};\n }\n }\n`\n\nexport const StyledTabList = styled.div`\n display: flex;\n width: 100%;\n`\n\nexport const StyledTabs = styled.nav<{ dark?: boolean; index?: number }>`\n background-color: ${({ dark }) => dark && colors.gray15};\n display: flex;\n overflow: hidden;\n width: 100%;\n\n ${StyledTab} + ${StyledTab} {\n margin-left: ${spacing.xl}px;\n }\n\n ${StyledTab} {\n // we want to hide all tabs after overflow index\n &:nth-child(1n + ${({ index }) => index}) {\n // but not the \"More\" dropdown tab\n &:not(${StyledDropdownTab}) {\n ${hiddenTab}\n }\n }\n }\n\n ${({ index = -1 }) =>\n index >= 0 &&\n css`\n ${StyledDropdownTab} {\n ${visible}\n }\n `}\n`\n"],"mappings":"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"}
@@ -47,12 +47,14 @@ export interface BaseTabProps extends Props {
47
47
  /**
48
48
  * @deprecated This was never intended to be a public facing API and does not
49
49
  * do anything. It will be removed in the future.
50
+ * @deprecatedSince 11
50
51
  * @since 10.19.0
51
52
  */
52
53
  dropdown?: boolean;
53
54
  /**
54
55
  * @deprecated This was never intended to be a public facing API and does not
55
56
  * do anything. It will be removed in the future.
57
+ * @deprecatedSince 11
56
58
  * @since 10.19.0
57
59
  */
58
60
  overflowing?: boolean;
@@ -60,6 +62,7 @@ export interface BaseTabProps extends Props {
60
62
  * @deprecated please use the `active` and `dark` props to configure style. The
61
63
  * `dropdown`, `hover`, and `overflowing` variants were only for internal use
62
64
  * and should not be used in clients
65
+ * @deprecatedSince 11
63
66
  * @since 10.19.0
64
67
  */
65
68
  variant?: TabVariant;
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.types.js","names":["tabVariant","none","active","dark","dropdown","hover","overflowing"],"sources":["../../src/Tabs/Tabs.types.ts"],"sourcesContent":["import type { AriaButtonProps } from '@react-aria/button'\nimport type React from 'react'\nimport type { Polymorphic } from '../_utils/polymorphic'\nimport type { Props } from '../_utils/types'\n\nexport type TabRoleType = 'link' | 'button'\n\nexport interface TabPolyMap extends Record<TabRoleType, React.ElementType> {\n button: 'button'\n link: 'a'\n}\n\nexport type TabRole = TabRoleType | undefined\n\nexport type TabRef<Role extends TabRole = undefined> = Role extends TabRoleType\n ? Polymorphic.Ref<TabPolyMap, Role>\n : React.ComponentPropsWithRef<'div'>['ref']\n\nexport type TabProps<Role extends TabRole = undefined> = Role extends 'link'\n ? Polymorphic.ComponentPropsWithRef<TabPolyMap, 'link', 'href', BaseTabProps>\n : Role extends 'button'\n ? Polymorphic.ComponentPropsWithRef<\n TabPolyMap,\n 'button',\n never,\n BaseTabProps & { onPress: AriaButtonProps['onPress'] }\n >\n : BaseTabProps & { ref?: TabRef<undefined> }\n\nexport const tabVariant = {\n none: '',\n active: 'active',\n dark: 'dark',\n dropdown: 'dropdown',\n hover: 'hover',\n overflowing: 'overflowing',\n} as const\n\ntype TabVariant = (typeof tabVariant)[keyof typeof tabVariant]\n\nexport interface BaseTabProps extends Props {\n /**\n * The tab is active\n * @since 10.19.0\n */\n active?: boolean\n\n /**\n * Whether or not tab is in dark mode\n * @private\n * @since 10.19.0\n */\n dark?: boolean\n\n /**\n * @private\n * @since 10.19.0\n */\n onMount?: (el: HTMLDivElement | null) => void\n\n /**\n * @private\n */\n onUnmount?: () => void\n\n /**\n * @deprecated This was never intended to be a public facing API and does not\n * do anything. It will be removed in the future.\n * @since 10.19.0\n */\n dropdown?: boolean\n\n /**\n * @deprecated This was never intended to be a public facing API and does not\n * do anything. It will be removed in the future.\n * @since 10.19.0\n */\n overflowing?: boolean\n\n /**\n * @deprecated please use the `active` and `dark` props to configure style. The\n * `dropdown`, `hover`, and `overflowing` variants were only for internal use\n * and should not be used in clients\n * @since 10.19.0\n */\n variant?: TabVariant\n /**\n * @since 11.6.0\n */\n disabled?: boolean\n /**\n * Sets the Tab's role\n * @since 11.6.0\n */\n role?: TabRole\n}\n\nexport interface TabsTabProps extends BaseTabProps {}\n\nexport interface QaTags {\n /**\n * @since 10.19.0\n */\n more?: string\n}\n\nexport interface TabsProps extends Props {\n /**\n * @since 10.19.0\n */\n dark?: boolean\n /**\n * @since 10.19.0\n */\n qa?: QaTags\n}\n\nexport interface TabDropdownProps extends Props {\n /**\n * @since 10.19.0\n */\n visible?: boolean\n /**\n * @since 10.19.0\n */\n qa?: QaTags\n}\n"],"mappings":"AA6BA,OAAO,IAAMA,UAAU,GAAG;EACxBC,IAAI,EAAE,EAAE;EACRC,MAAM,EAAE,QAAQ;EAChBC,IAAI,EAAE,MAAM;EACZC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,OAAO;EACdC,WAAW,EAAE;AACf,CAAU"}
1
+ {"version":3,"file":"Tabs.types.js","names":["tabVariant","none","active","dark","dropdown","hover","overflowing"],"sources":["../../src/Tabs/Tabs.types.ts"],"sourcesContent":["import type { AriaButtonProps } from '@react-aria/button'\nimport type React from 'react'\nimport type { Polymorphic } from '../_utils/polymorphic'\nimport type { Props } from '../_utils/types'\n\nexport type TabRoleType = 'link' | 'button'\n\nexport interface TabPolyMap extends Record<TabRoleType, React.ElementType> {\n button: 'button'\n link: 'a'\n}\n\nexport type TabRole = TabRoleType | undefined\n\nexport type TabRef<Role extends TabRole = undefined> = Role extends TabRoleType\n ? Polymorphic.Ref<TabPolyMap, Role>\n : React.ComponentPropsWithRef<'div'>['ref']\n\nexport type TabProps<Role extends TabRole = undefined> = Role extends 'link'\n ? Polymorphic.ComponentPropsWithRef<TabPolyMap, 'link', 'href', BaseTabProps>\n : Role extends 'button'\n ? Polymorphic.ComponentPropsWithRef<\n TabPolyMap,\n 'button',\n never,\n BaseTabProps & { onPress: AriaButtonProps['onPress'] }\n >\n : BaseTabProps & { ref?: TabRef<undefined> }\n\nexport const tabVariant = {\n none: '',\n active: 'active',\n dark: 'dark',\n dropdown: 'dropdown',\n hover: 'hover',\n overflowing: 'overflowing',\n} as const\n\ntype TabVariant = (typeof tabVariant)[keyof typeof tabVariant]\n\nexport interface BaseTabProps extends Props {\n /**\n * The tab is active\n * @since 10.19.0\n */\n active?: boolean\n\n /**\n * Whether or not tab is in dark mode\n * @private\n * @since 10.19.0\n */\n dark?: boolean\n\n /**\n * @private\n * @since 10.19.0\n */\n onMount?: (el: HTMLDivElement | null) => void\n\n /**\n * @private\n */\n onUnmount?: () => void\n\n /**\n * @deprecated This was never intended to be a public facing API and does not\n * do anything. It will be removed in the future.\n * @deprecatedSince 11\n * @since 10.19.0\n */\n dropdown?: boolean\n\n /**\n * @deprecated This was never intended to be a public facing API and does not\n * do anything. It will be removed in the future.\n * @deprecatedSince 11\n * @since 10.19.0\n */\n overflowing?: boolean\n\n /**\n * @deprecated please use the `active` and `dark` props to configure style. The\n * `dropdown`, `hover`, and `overflowing` variants were only for internal use\n * and should not be used in clients\n * @deprecatedSince 11\n * @since 10.19.0\n */\n variant?: TabVariant\n /**\n * @since 11.6.0\n */\n disabled?: boolean\n /**\n * Sets the Tab's role\n * @since 11.6.0\n */\n role?: TabRole\n}\n\nexport interface TabsTabProps extends BaseTabProps {}\n\nexport interface QaTags {\n /**\n * @since 10.19.0\n */\n more?: string\n}\n\nexport interface TabsProps extends Props {\n /**\n * @since 10.19.0\n */\n dark?: boolean\n /**\n * @since 10.19.0\n */\n qa?: QaTags\n}\n\nexport interface TabDropdownProps extends Props {\n /**\n * @since 10.19.0\n */\n visible?: boolean\n /**\n * @since 10.19.0\n */\n qa?: QaTags\n}\n"],"mappings":"AA6BA,OAAO,IAAMA,UAAU,GAAG;EACxBC,IAAI,EAAE,EAAE;EACRC,MAAM,EAAE,QAAQ;EAChBC,IAAI,EAAE,MAAM;EACZC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,OAAO;EACdC,WAAW,EAAE;AACf,CAAU"}
@@ -47,7 +47,7 @@ var getSlideOutAnimation = function getSlideOutAnimation($placement) {
47
47
  };
48
48
  export var StyledTearsheetContent = /*#__PURE__*/styled.div.withConfig({
49
49
  displayName: "StyledTearsheetContent",
50
- componentId: "core-11_31_1__sc-ljrxoq-0"
50
+ componentId: "core-11_33_0__sc-ljrxoq-0"
51
51
  })(["display:flex;z-index:2;width:100%;", " ", " ", " ", ""], function (_ref) {
52
52
  var $open = _ref.$open,
53
53
  $placement = _ref.$placement;
@@ -67,7 +67,7 @@ export var StyledTearsheetContent = /*#__PURE__*/styled.div.withConfig({
67
67
  export var minScrimSize = spacing.xxl * 3;
68
68
  export var StyledTearsheetBody = /*#__PURE__*/styled.div.withConfig({
69
69
  displayName: "StyledTearsheetBody",
70
- componentId: "core-11_31_1__sc-ljrxoq-1"
70
+ componentId: "core-11_33_0__sc-ljrxoq-1"
71
71
  })(["display:flex;overflow-y:auto;flex-direction:column;background-color:", ";", " ", "}"], colors.white, function (_ref5) {
72
72
  var $placement = _ref5.$placement,
73
73
  $stretch = _ref5.$stretch;
@@ -87,7 +87,7 @@ var zoomIn = /*#__PURE__*/keyframes(["from{transform:scale(0);}to{transform:scal
87
87
  var zoomOut = /*#__PURE__*/keyframes(["from{transform:scale(1);}to{transform:scale(0);}"]);
88
88
  export var StyledScrimContainer = /*#__PURE__*/styled.div.withConfig({
89
89
  displayName: "StyledScrimContainer",
90
- componentId: "core-11_31_1__sc-ljrxoq-2"
90
+ componentId: "core-11_33_0__sc-ljrxoq-2"
91
91
  })(["", ""], function (_ref7) {
92
92
  var $placement = _ref7.$placement;
93
93
  var minSizeProp = ['top', 'bottom'].includes($placement) ? 'min-height' : 'min-width';
@@ -95,7 +95,7 @@ export var StyledScrimContainer = /*#__PURE__*/styled.div.withConfig({
95
95
  });
96
96
  export var StyledButtonContainer = /*#__PURE__*/styled.div.withConfig({
97
97
  displayName: "StyledButtonContainer",
98
- componentId: "core-11_31_1__sc-ljrxoq-3"
98
+ componentId: "core-11_33_0__sc-ljrxoq-3"
99
99
  })(["", ""], function (_ref8) {
100
100
  var $placement = _ref8.$placement;
101
101
  switch ($placement) {
@@ -110,7 +110,7 @@ export var StyledButtonContainer = /*#__PURE__*/styled.div.withConfig({
110
110
  });
111
111
  export var StyledButtonCard = /*#__PURE__*/styled(Card).withConfig({
112
112
  displayName: "StyledButtonCard",
113
- componentId: "core-11_31_1__sc-ljrxoq-4"
113
+ componentId: "core-11_33_0__sc-ljrxoq-4"
114
114
  })(["display:inline-flex;margin:", "px;", " ", " ", ""], spacing.xl, function (_ref9) {
115
115
  var $open = _ref9.$open;
116
116
  return $open ? css(["transform:scale(1);"]) : css(["transform:scale(0);"]);
@@ -3,7 +3,7 @@ import { getInputStyles } from '../Input/Input.styles';
3
3
  import { spacing } from '../_styles/spacing';
4
4
  export var StyledTextArea = /*#__PURE__*/styled.textarea.withConfig({
5
5
  displayName: "StyledTextArea",
6
- componentId: "core-11_31_1__sc-u5mow1-0"
6
+ componentId: "core-11_33_0__sc-u5mow1-0"
7
7
  })(["", " min-height:64px;padding:", "px ", "px;resize:", ";"], getInputStyles, spacing.sm, spacing.md, function (_ref) {
8
8
  var _ref$resize = _ref.resize,
9
9
  resize = _ref$resize === void 0 ? 'both' : _ref$resize;
@@ -1,6 +1,6 @@
1
1
  import styled from 'styled-components';
2
2
  export var StyledEditor = /*#__PURE__*/styled.div.withConfig({
3
3
  displayName: "StyledEditor",
4
- componentId: "core-11_31_1__sc-1lje1b0-0"
4
+ componentId: "core-11_33_0__sc-1lje1b0-0"
5
5
  })(["> .tox-tinymce{border:none;}"]);
6
6
  //# sourceMappingURL=TextEditorOutput.styles.js.map
@@ -28,35 +28,35 @@ var captionBase = /*#__PURE__*/css(["color:", ";font-size:12px;line-height:16px;
28
28
  });
29
29
  export var StyledMultilineCaption = /*#__PURE__*/styled.div.withConfig({
30
30
  displayName: "StyledMultilineCaption",
31
- componentId: "core-11_31_1__sc-195f70c-0"
31
+ componentId: "core-11_33_0__sc-195f70c-0"
32
32
  })(["", " display:flex;word-wrap:break-word;overflow-wrap:break-word;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-height:", "px;"], captionBase, multilineCaptionMaxHeight);
33
33
  export var StyledCaptionText = /*#__PURE__*/styled.span.withConfig({
34
34
  displayName: "StyledCaptionText",
35
- componentId: "core-11_31_1__sc-195f70c-1"
35
+ componentId: "core-11_33_0__sc-195f70c-1"
36
36
  })(["width:100%;"]);
37
37
  export var StyledPlaceholderCaption = /*#__PURE__*/styled.div.withConfig({
38
38
  displayName: "StyledPlaceholderCaption",
39
- componentId: "core-11_31_1__sc-195f70c-2"
39
+ componentId: "core-11_33_0__sc-195f70c-2"
40
40
  })(["", ""], captionBase);
41
41
  export var StyledSingleLineCaption = /*#__PURE__*/styled.div.withConfig({
42
42
  displayName: "StyledSingleLineCaption",
43
- componentId: "core-11_31_1__sc-195f70c-3"
43
+ componentId: "core-11_33_0__sc-195f70c-3"
44
44
  })(["display:flex;", ""], captionBase);
45
45
  export var StyledSinglelineCaptionBody = /*#__PURE__*/styled.span.withConfig({
46
46
  displayName: "StyledSinglelineCaptionBody",
47
- componentId: "core-11_31_1__sc-195f70c-4"
47
+ componentId: "core-11_33_0__sc-195f70c-4"
48
48
  })(["", ""], getEllipsis);
49
49
  export var StyledSinglelineCaptionEnding = /*#__PURE__*/styled.span.withConfig({
50
50
  displayName: "StyledSinglelineCaptionEnding",
51
- componentId: "core-11_31_1__sc-195f70c-5"
51
+ componentId: "core-11_33_0__sc-195f70c-5"
52
52
  })(["max-width:50%;white-space:nowrap;flex-shrink:0;"]);
53
53
  export var StyledLabelText = /*#__PURE__*/styled(Typography).withConfig({
54
54
  displayName: "StyledLabelText",
55
- componentId: "core-11_31_1__sc-195f70c-6"
55
+ componentId: "core-11_33_0__sc-195f70c-6"
56
56
  })(["", ""], getEllipsis());
57
57
  export var StyledThumbnailFigCaption = /*#__PURE__*/styled.figcaption.withConfig({
58
58
  displayName: "StyledThumbnailFigCaption",
59
- componentId: "core-11_31_1__sc-195f70c-7"
59
+ componentId: "core-11_33_0__sc-195f70c-7"
60
60
  })(["", " ", " color:", ";font-weight:", ";text-align:center;width:100%;position:absolute;bottom:0;right:0;left:0;opacity:0.85;height:", "px;padding:", "px ", "px;background-color:", ";"], getTypographyIntent('small'), getEllipsis(), function (_ref5) {
61
61
  var _ref5$$color = _ref5.$color,
62
62
  $color = _ref5$$color === void 0 ? 'gray15' : _ref5$$color;
@@ -64,7 +64,7 @@ export var StyledThumbnailFigCaption = /*#__PURE__*/styled.figcaption.withConfig
64
64
  }, typographyWeights.bold, labelHeight, spacing.sm / 2, spacing.sm, colors.white);
65
65
  export var StyledLabel = /*#__PURE__*/styled.div.withConfig({
66
66
  displayName: "StyledLabel",
67
- componentId: "core-11_31_1__sc-195f70c-8"
67
+ componentId: "core-11_33_0__sc-195f70c-8"
68
68
  })(["display:flex;justify-content:center;position:absolute;bottom:0;right:0;left:0;opacity:0.85;height:", "px;padding:", "px ", "px;font-size:", "px;background-color:", ";"], labelHeight, spacing.sm / 2, spacing.sm, labelFontSize, colors.white);
69
69
  var thumbnailBase = /*#__PURE__*/css(["display:flex;justify-content:center;align-items:center;position:relative;overflow:hidden;border:1px solid ", ";border-radius:", "px;margin:0;", " ", " &:focus{", ";}", " ", " ", ""], colors.gray85, borderRadius.md, function (_ref6) {
70
70
  var clickable = _ref6.clickable;
@@ -86,7 +86,7 @@ var thumbnailBase = /*#__PURE__*/css(["display:flex;justify-content:center;align
86
86
  });
87
87
  export var StyledTickIcon = /*#__PURE__*/styled.svg.withConfig({
88
88
  displayName: "StyledTickIcon",
89
- componentId: "core-11_31_1__sc-195f70c-9"
89
+ componentId: "core-11_33_0__sc-195f70c-9"
90
90
  })(["position:absolute;top:", "px;right:", "px;width:", "px;height:", "px;opacity:0;transform:scale(0.75);transition:transform 250ms ease-out,opacity 100ms ease-out;", " ", ""], spacing.sm, spacing.sm, tickSize, tickSize, function (_ref11) {
91
91
  var selected = _ref11.selected;
92
92
  return selected ? "\n opacity: 1;\n transform: scale(1);\n " : '';
@@ -96,28 +96,28 @@ export var StyledTickIcon = /*#__PURE__*/styled.svg.withConfig({
96
96
  });
97
97
  export var StyledFileIcon = /*#__PURE__*/styled(DocumentIcon).withConfig({
98
98
  displayName: "StyledFileIcon",
99
- componentId: "core-11_31_1__sc-195f70c-10"
99
+ componentId: "core-11_33_0__sc-195f70c-10"
100
100
  })(["width:36.5%;height:auto;"]);
101
101
  export var StyledImageThumbnailPreview = /*#__PURE__*/styled.div.withConfig({
102
102
  displayName: "StyledImageThumbnailPreview",
103
- componentId: "core-11_31_1__sc-195f70c-11"
103
+ componentId: "core-11_33_0__sc-195f70c-11"
104
104
  })(["width:100%;height:100%;background-size:cover;background-repeat:no-repeat;background-position:center;", ""], function (_ref13) {
105
105
  var $bgImage = _ref13.$bgImage;
106
106
  return css(["background-image:url(", ");"], $bgImage);
107
107
  });
108
108
  export var StyledImageThumbnailOverlay = /*#__PURE__*/styled.div.withConfig({
109
109
  displayName: "StyledImageThumbnailOverlay",
110
- componentId: "core-11_31_1__sc-195f70c-12"
110
+ componentId: "core-11_33_0__sc-195f70c-12"
111
111
  })(["display:none;position:absolute;top:0;bottom:0;left:0;right:0;"]);
112
112
  var blackOverlay = "\n background-color: ".concat(colors.black, ";\n opacity: 0.2;\n");
113
113
  var whiteOverlay = "\n background-color: ".concat(colors.white, ";\n opacity: 0.5;\n");
114
114
  export var StyledImageThumbnailImage = /*#__PURE__*/styled.img.withConfig({
115
115
  displayName: "StyledImageThumbnailImage",
116
- componentId: "core-11_31_1__sc-195f70c-13"
116
+ componentId: "core-11_33_0__sc-195f70c-13"
117
117
  })([""]);
118
118
  export var StyledImageThumbnail = /*#__PURE__*/styled.div.withConfig({
119
119
  displayName: "StyledImageThumbnail",
120
- componentId: "core-11_31_1__sc-195f70c-14"
120
+ componentId: "core-11_33_0__sc-195f70c-14"
121
121
  })(["", " flex-direction:column;", " ", " ", " ", " ", " ", ""], thumbnailBase, function (_ref14) {
122
122
  var disabled = _ref14.disabled;
123
123
  return disabled ? "\n &,\n &:hover {\n ".concat(StyledImageThumbnailOverlay, " {\n display: block;\n ").concat(whiteOverlay, "\n }\n }\n ").concat(StyledImageThumbnailPreview, ",\n ").concat(StyledTickIcon, ",\n ").concat(StyledImageThumbnailImage, " {\n filter: saturate(0);\n }\n ").concat(StyledFileIcon, " {\n filter: saturate(0);\n z-index: -1;\n }\n ") : '';
@@ -146,7 +146,7 @@ export var StyledImageThumbnail = /*#__PURE__*/styled.div.withConfig({
146
146
  });
147
147
  export var StyledThumbnailWrapper = /*#__PURE__*/styled.div.withConfig({
148
148
  displayName: "StyledThumbnailWrapper",
149
- componentId: "core-11_31_1__sc-195f70c-15"
149
+ componentId: "core-11_33_0__sc-195f70c-15"
150
150
  })(["display:flex;", " ", ""], function (_ref20) {
151
151
  var size = _ref20.size;
152
152
  return size === 'lg' ? "\n width: ".concat(thumbnailSizeLg, "px;\n ") : '';
@@ -157,7 +157,7 @@ export var StyledThumbnailWrapper = /*#__PURE__*/styled.div.withConfig({
157
157
  });
158
158
  export var StyledPlaceholderThumbnail = /*#__PURE__*/styled.div.withConfig({
159
159
  displayName: "StyledPlaceholderThumbnail",
160
- componentId: "core-11_31_1__sc-195f70c-16"
160
+ componentId: "core-11_33_0__sc-195f70c-16"
161
161
  })(["", " ", " ", " ", " ", ""], thumbnailBase, function (_ref22) {
162
162
  var clickable = _ref22.clickable;
163
163
  return clickable ? "\n &:hover {\n background-color: ".concat(colors.gray96, ";\n }\n\n ") : '';
@@ -7,31 +7,31 @@ import { getEllipsis } from '../_styles/mixins';
7
7
  import { spacing } from '../_styles/spacing';
8
8
  export var StyledCheckbox = /*#__PURE__*/styled(Checkbox).withConfig({
9
9
  displayName: "StyledCheckbox",
10
- componentId: "core-11_31_1__sc-1inrbm9-0"
10
+ componentId: "core-11_33_0__sc-1inrbm9-0"
11
11
  })(["input{z-index:2;}"]);
12
12
  export var StyledGroupCell = /*#__PURE__*/styled.div.withConfig({
13
13
  displayName: "StyledGroupCell",
14
- componentId: "core-11_31_1__sc-1inrbm9-1"
14
+ componentId: "core-11_33_0__sc-1inrbm9-1"
15
15
  })(["display:flex;align-items:flex-end;padding-bottom:", "px;"], spacing.md);
16
16
  export var StyledThumbnail = /*#__PURE__*/styled(Thumbnail).withConfig({
17
17
  displayName: "StyledThumbnail",
18
- componentId: "core-11_31_1__sc-1inrbm9-2"
18
+ componentId: "core-11_33_0__sc-1inrbm9-2"
19
19
  })(["display:inline-flex;&:focus{outline:none;}"]);
20
20
  // VariableSizeGrid has provided width and height as inline style, so to make it flexible and support responsive !important was added
21
21
  export var StyledVariableSizeGrid = /*#__PURE__*/styled(VariableSizeGrid).withConfig({
22
22
  displayName: "StyledVariableSizeGrid",
23
- componentId: "core-11_31_1__sc-1inrbm9-3"
23
+ componentId: "core-11_33_0__sc-1inrbm9-3"
24
24
  })(["height:100% !important;& > div{width:100% !important;}"]);
25
25
  export var StyledGroupTitle = /*#__PURE__*/styled(Typography).withConfig({
26
26
  displayName: "StyledGroupTitle",
27
- componentId: "core-11_31_1__sc-1inrbm9-4"
27
+ componentId: "core-11_33_0__sc-1inrbm9-4"
28
28
  })(["", ""], getEllipsis);
29
29
  export var StyledSpinnerWrapper = /*#__PURE__*/styled.div.withConfig({
30
30
  displayName: "StyledSpinnerWrapper",
31
- componentId: "core-11_31_1__sc-1inrbm9-5"
31
+ componentId: "core-11_33_0__sc-1inrbm9-5"
32
32
  })(["display:flex;justify-content:center;align-items:center;width:100%;height:100%;"]);
33
33
  export var StyledThumbnailGrid = /*#__PURE__*/styled.div.withConfig({
34
34
  displayName: "StyledThumbnailGrid",
35
- componentId: "core-11_31_1__sc-1inrbm9-6"
35
+ componentId: "core-11_33_0__sc-1inrbm9-6"
36
36
  })(["display:flex;flex-wrap:wrap;outline:none;"]);
37
37
  //# sourceMappingURL=ThumbnailGrid.styles.js.map