@artsy/palette 45.14.0-canary.1497.33070.0 → 45.14.0-canary.1497.33075.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 (238) hide show
  1. package/dist/cjs/Theme.d.ts +1 -1
  2. package/dist/cjs/Theme.js +2 -11
  3. package/dist/cjs/Theme.js.map +1 -1
  4. package/dist/cjs/elements/BorderBox/index.d.ts +1 -1
  5. package/dist/cjs/elements/BorderBox/index.js +0 -11
  6. package/dist/cjs/elements/BorderBox/index.js.map +1 -1
  7. package/dist/cjs/elements/FilterSelect/index.d.ts +1 -1
  8. package/dist/cjs/elements/FilterSelect/index.js +0 -25
  9. package/dist/cjs/elements/FilterSelect/index.js.map +1 -1
  10. package/dist/cjs/elements/GridColumns/index.d.ts +1 -1
  11. package/dist/cjs/elements/GridColumns/index.js +0 -18
  12. package/dist/cjs/elements/GridColumns/index.js.map +1 -1
  13. package/dist/esm/Theme.js +1 -2
  14. package/dist/esm/Theme.js.map +1 -1
  15. package/dist/esm/elements/AutocompleteInput/AutocompleteInput.js +0 -2
  16. package/dist/esm/elements/AutocompleteInput/AutocompleteInput.js.map +1 -1
  17. package/dist/esm/elements/AutocompleteInput/AutocompleteInputOption.js +1 -1
  18. package/dist/esm/elements/AutocompleteInput/AutocompleteInputOption.js.map +1 -1
  19. package/dist/esm/elements/AutocompleteInput/AutocompleteInputOptionLabel.js +1 -1
  20. package/dist/esm/elements/AutocompleteInput/AutocompleteInputOptionLabel.js.map +1 -1
  21. package/dist/esm/elements/Avatar/Avatar.js +2 -3
  22. package/dist/esm/elements/Avatar/Avatar.js.map +1 -1
  23. package/dist/esm/elements/Banner/Banner.js +1 -1
  24. package/dist/esm/elements/Banner/Banner.js.map +1 -1
  25. package/dist/esm/elements/BaseTabs/BaseTab.js +1 -2
  26. package/dist/esm/elements/BaseTabs/BaseTab.js.map +1 -1
  27. package/dist/esm/elements/BaseTabs/BaseTabs.js +1 -1
  28. package/dist/esm/elements/BaseTabs/BaseTabs.js.map +1 -1
  29. package/dist/esm/elements/BorderBox/BorderBox.js +1 -1
  30. package/dist/esm/elements/BorderBox/BorderBox.js.map +1 -1
  31. package/dist/esm/elements/BorderBox/BorderBoxBase.js +1 -1
  32. package/dist/esm/elements/BorderBox/BorderBoxBase.js.map +1 -1
  33. package/dist/esm/elements/BorderBox/index.js +1 -1
  34. package/dist/esm/elements/BorderBox/index.js.map +1 -1
  35. package/dist/esm/elements/BorderedRadio/BorderedRadio.js +1 -1
  36. package/dist/esm/elements/BorderedRadio/BorderedRadio.js.map +1 -1
  37. package/dist/esm/elements/Box/Box.js +2 -2
  38. package/dist/esm/elements/Box/Box.js.map +1 -1
  39. package/dist/esm/elements/Breadcrumbs/Breadcrumbs.js +1 -1
  40. package/dist/esm/elements/Breadcrumbs/Breadcrumbs.js.map +1 -1
  41. package/dist/esm/elements/Button/Button.js +3 -5
  42. package/dist/esm/elements/Button/Button.js.map +1 -1
  43. package/dist/esm/elements/Button/tokens.js +0 -2
  44. package/dist/esm/elements/Button/tokens.js.map +1 -1
  45. package/dist/esm/elements/CSSGrid/CSSGrid.js +2 -2
  46. package/dist/esm/elements/CSSGrid/CSSGrid.js.map +1 -1
  47. package/dist/esm/elements/Cards/Card.js +2 -2
  48. package/dist/esm/elements/Cards/Card.js.map +1 -1
  49. package/dist/esm/elements/Cards/TriptychCard.js +2 -2
  50. package/dist/esm/elements/Cards/TriptychCard.js.map +1 -1
  51. package/dist/esm/elements/Carousel/Carousel.js +3 -4
  52. package/dist/esm/elements/Carousel/Carousel.js.map +1 -1
  53. package/dist/esm/elements/Carousel/Carousel.story.js +1 -1
  54. package/dist/esm/elements/Carousel/Carousel.story.js.map +1 -1
  55. package/dist/esm/elements/Carousel/CarouselNavigation.js +1 -2
  56. package/dist/esm/elements/Carousel/CarouselNavigation.js.map +1 -1
  57. package/dist/esm/elements/CarouselBar/CarouselBar.js +1 -1
  58. package/dist/esm/elements/CarouselBar/CarouselBar.js.map +1 -1
  59. package/dist/esm/elements/Checkbox/Checkbox.js +1 -1
  60. package/dist/esm/elements/Checkbox/Checkbox.js.map +1 -1
  61. package/dist/esm/elements/CleanTag/CleanTag.js +1 -1
  62. package/dist/esm/elements/CleanTag/CleanTag.js.map +1 -1
  63. package/dist/esm/elements/Clickable/Clickable.js +2 -3
  64. package/dist/esm/elements/Clickable/Clickable.js.map +1 -1
  65. package/dist/esm/elements/Drawer/Drawer.js +1 -1
  66. package/dist/esm/elements/Drawer/Drawer.js.map +1 -1
  67. package/dist/esm/elements/Dropdown/Dropdown.js +2 -2
  68. package/dist/esm/elements/Dropdown/Dropdown.js.map +1 -1
  69. package/dist/esm/elements/Dropdown/Dropdown.story.js +0 -1
  70. package/dist/esm/elements/Dropdown/Dropdown.story.js.map +1 -1
  71. package/dist/esm/elements/EntityHeader/EntityHeader.js +2 -3
  72. package/dist/esm/elements/EntityHeader/EntityHeader.js.map +1 -1
  73. package/dist/esm/elements/Expandable/Expandable.js +1 -1
  74. package/dist/esm/elements/Expandable/Expandable.js.map +1 -1
  75. package/dist/esm/elements/FilterSelect/Components/FilterInput.js +0 -1
  76. package/dist/esm/elements/FilterSelect/Components/FilterInput.js.map +1 -1
  77. package/dist/esm/elements/FilterSelect/Components/FilterSelectResultItem.js +1 -1
  78. package/dist/esm/elements/FilterSelect/Components/FilterSelectResultItem.js.map +1 -1
  79. package/dist/esm/elements/FilterSelect/FilterSelect.js +1 -1
  80. package/dist/esm/elements/FilterSelect/FilterSelect.js.map +1 -1
  81. package/dist/esm/elements/FilterSelect/index.js +1 -1
  82. package/dist/esm/elements/FilterSelect/index.js.map +1 -1
  83. package/dist/esm/elements/Flex/Flex.js +1 -1
  84. package/dist/esm/elements/Flex/Flex.js.map +1 -1
  85. package/dist/esm/elements/FullBleed/FullBleed.js +1 -1
  86. package/dist/esm/elements/FullBleed/FullBleed.js.map +1 -1
  87. package/dist/esm/elements/GridColumns/GridColumns.js +4 -4
  88. package/dist/esm/elements/GridColumns/GridColumns.js.map +1 -1
  89. package/dist/esm/elements/GridColumns/index.js +1 -1
  90. package/dist/esm/elements/GridColumns/index.js.map +1 -1
  91. package/dist/esm/elements/HTML/HTML.js +2 -2
  92. package/dist/esm/elements/HTML/HTML.js.map +1 -1
  93. package/dist/esm/elements/HorizontalOverflow/HorizontalOverflow.js +2 -2
  94. package/dist/esm/elements/HorizontalOverflow/HorizontalOverflow.js.map +1 -1
  95. package/dist/esm/elements/Image/Image.js +1 -1
  96. package/dist/esm/elements/Image/Image.js.map +1 -1
  97. package/dist/esm/elements/Input/Input.js +1 -1
  98. package/dist/esm/elements/Input/Input.js.map +1 -1
  99. package/dist/esm/elements/Input/tokens.js +0 -1
  100. package/dist/esm/elements/Input/tokens.js.map +1 -1
  101. package/dist/esm/elements/Label/Label.js +1 -1
  102. package/dist/esm/elements/Label/Label.js.map +1 -1
  103. package/dist/esm/elements/Label/Label.story.js +1 -1
  104. package/dist/esm/elements/Label/Label.story.js.map +1 -1
  105. package/dist/esm/elements/LabeledInput/LabeledInput.js +1 -1
  106. package/dist/esm/elements/LabeledInput/LabeledInput.js.map +1 -1
  107. package/dist/esm/elements/Link/Link.js +2 -2
  108. package/dist/esm/elements/Link/Link.js.map +1 -1
  109. package/dist/esm/elements/Marquee/Marquee.js +1 -1
  110. package/dist/esm/elements/Marquee/Marquee.js.map +1 -1
  111. package/dist/esm/elements/Message/Message.js +1 -1
  112. package/dist/esm/elements/Message/Message.js.map +1 -1
  113. package/dist/esm/elements/Message/Message.story.js +1 -1
  114. package/dist/esm/elements/Message/Message.story.js.map +1 -1
  115. package/dist/esm/elements/Modal/ModalBase.js +2 -2
  116. package/dist/esm/elements/Modal/ModalBase.js.map +1 -1
  117. package/dist/esm/elements/Modal/ModalBase.story.js +1 -1
  118. package/dist/esm/elements/Modal/ModalBase.story.js.map +1 -1
  119. package/dist/esm/elements/ModalDialog/ModalDialog.js +2 -2
  120. package/dist/esm/elements/ModalDialog/ModalDialog.js.map +1 -1
  121. package/dist/esm/elements/ModalDialog/ModalDialogContent.js +3 -3
  122. package/dist/esm/elements/ModalDialog/ModalDialogContent.js.map +1 -1
  123. package/dist/esm/elements/MultiSelect/MultiSelect.js +2 -2
  124. package/dist/esm/elements/MultiSelect/MultiSelect.js.map +1 -1
  125. package/dist/esm/elements/MultiSelect/tokens.js +1 -2
  126. package/dist/esm/elements/MultiSelect/tokens.js.map +1 -1
  127. package/dist/esm/elements/Pagination/Pagination.js +3 -3
  128. package/dist/esm/elements/Pagination/Pagination.js.map +1 -1
  129. package/dist/esm/elements/PasswordInput/PasswordInput.js +0 -1
  130. package/dist/esm/elements/PasswordInput/PasswordInput.js.map +1 -1
  131. package/dist/esm/elements/Pill/Pill.js +1 -3
  132. package/dist/esm/elements/Pill/Pill.js.map +1 -1
  133. package/dist/esm/elements/Pill/Pill.story.js +1 -1
  134. package/dist/esm/elements/Pill/Pill.story.js.map +1 -1
  135. package/dist/esm/elements/Pill/tokens.js +1 -2
  136. package/dist/esm/elements/Pill/tokens.js.map +1 -1
  137. package/dist/esm/elements/Pointer/Pointer.js +1 -2
  138. package/dist/esm/elements/Pointer/Pointer.js.map +1 -1
  139. package/dist/esm/elements/Popover/Popover.js +2 -2
  140. package/dist/esm/elements/Popover/Popover.js.map +1 -1
  141. package/dist/esm/elements/Popover/Popover.story.js +2 -2
  142. package/dist/esm/elements/Popover/Popover.story.js.map +1 -1
  143. package/dist/esm/elements/ProgressBar/ProgressBar.js +1 -2
  144. package/dist/esm/elements/ProgressBar/ProgressBar.js.map +1 -1
  145. package/dist/esm/elements/ProgressDots/ProgressDots.js +1 -1
  146. package/dist/esm/elements/ProgressDots/ProgressDots.js.map +1 -1
  147. package/dist/esm/elements/Radio/Radio.js +1 -1
  148. package/dist/esm/elements/Radio/Radio.js.map +1 -1
  149. package/dist/esm/elements/Radio/tokens.js +0 -2
  150. package/dist/esm/elements/Radio/tokens.js.map +1 -1
  151. package/dist/esm/elements/RadioGroup/RadioGroup.js +1 -2
  152. package/dist/esm/elements/RadioGroup/RadioGroup.js.map +1 -1
  153. package/dist/esm/elements/Range/Range.js +1 -1
  154. package/dist/esm/elements/Range/Range.js.map +1 -1
  155. package/dist/esm/elements/ResponsiveBox/ResponsiveBox.js +1 -1
  156. package/dist/esm/elements/ResponsiveBox/ResponsiveBox.js.map +1 -1
  157. package/dist/esm/elements/ResponsiveBox/ResponsiveBox.story.js +1 -1
  158. package/dist/esm/elements/ResponsiveBox/ResponsiveBox.story.js.map +1 -1
  159. package/dist/esm/elements/Select/Select.js +2 -2
  160. package/dist/esm/elements/Select/Select.js.map +1 -1
  161. package/dist/esm/elements/Select/tokens.js +1 -2
  162. package/dist/esm/elements/Select/tokens.js.map +1 -1
  163. package/dist/esm/elements/SelectInput/SelectInput.js +3 -4
  164. package/dist/esm/elements/SelectInput/SelectInput.js.map +1 -1
  165. package/dist/esm/elements/SelectInput/SelectInputList.js +1 -2
  166. package/dist/esm/elements/SelectInput/SelectInputList.js.map +1 -1
  167. package/dist/esm/elements/Separator/Separator.js +1 -1
  168. package/dist/esm/elements/Separator/Separator.js.map +1 -1
  169. package/dist/esm/elements/Shelf/Shelf.js +1 -2
  170. package/dist/esm/elements/Shelf/Shelf.js.map +1 -1
  171. package/dist/esm/elements/Shelf/ShelfNavigation.js +1 -1
  172. package/dist/esm/elements/Shelf/ShelfNavigation.js.map +1 -1
  173. package/dist/esm/elements/Shelf/ShelfScrollBar.js +1 -1
  174. package/dist/esm/elements/Shelf/ShelfScrollBar.js.map +1 -1
  175. package/dist/esm/elements/ShowMore/ShowMore.js +2 -2
  176. package/dist/esm/elements/ShowMore/ShowMore.js.map +1 -1
  177. package/dist/esm/elements/Skeleton/Skeleton.js +3 -3
  178. package/dist/esm/elements/Skeleton/Skeleton.js.map +1 -1
  179. package/dist/esm/elements/Skip/Skip.js +1 -1
  180. package/dist/esm/elements/Skip/Skip.js.map +1 -1
  181. package/dist/esm/elements/Spacer/Spacer.js +1 -1
  182. package/dist/esm/elements/Spacer/Spacer.js.map +1 -1
  183. package/dist/esm/elements/Spinner/Spinner.js +2 -2
  184. package/dist/esm/elements/Spinner/Spinner.js.map +1 -1
  185. package/dist/esm/elements/Stack/Stack.js +1 -2
  186. package/dist/esm/elements/Stack/Stack.js.map +1 -1
  187. package/dist/esm/elements/StackableBorderBox/StackableBorderBox.js +1 -1
  188. package/dist/esm/elements/StackableBorderBox/StackableBorderBox.js.map +1 -1
  189. package/dist/esm/elements/Stepper/Stepper.js +1 -1
  190. package/dist/esm/elements/Stepper/Stepper.js.map +1 -1
  191. package/dist/esm/elements/Sup/Sup.js +1 -1
  192. package/dist/esm/elements/Sup/Sup.js.map +1 -1
  193. package/dist/esm/elements/Swiper/Swiper.js +1 -1
  194. package/dist/esm/elements/Swiper/Swiper.js.map +1 -1
  195. package/dist/esm/elements/Swiper/Swiper.story.js +1 -1
  196. package/dist/esm/elements/Swiper/Swiper.story.js.map +1 -1
  197. package/dist/esm/elements/Tabs/Tabs.js +1 -1
  198. package/dist/esm/elements/Tabs/Tabs.js.map +1 -1
  199. package/dist/esm/elements/Text/Text.js +3 -4
  200. package/dist/esm/elements/Text/Text.js.map +1 -1
  201. package/dist/esm/elements/TextArea/TextArea.js +1 -1
  202. package/dist/esm/elements/TextArea/TextArea.js.map +1 -1
  203. package/dist/esm/elements/TextArea/tokens.js +0 -1
  204. package/dist/esm/elements/TextArea/tokens.js.map +1 -1
  205. package/dist/esm/elements/Toasts/Toast.js +1 -1
  206. package/dist/esm/elements/Toasts/Toast.js.map +1 -1
  207. package/dist/esm/elements/Toasts/Toasts.js +1 -1
  208. package/dist/esm/elements/Toasts/Toasts.js.map +1 -1
  209. package/dist/esm/elements/Toasts/Toasts.story.js +1 -1
  210. package/dist/esm/elements/Toasts/Toasts.story.js.map +1 -1
  211. package/dist/esm/elements/Toasts/useToasts.js +0 -1
  212. package/dist/esm/elements/Toasts/useToasts.js.map +1 -1
  213. package/dist/esm/elements/Toggle/Toggle.js +1 -1
  214. package/dist/esm/elements/Toggle/Toggle.js.map +1 -1
  215. package/dist/esm/elements/Tooltip/Tooltip.js +2 -2
  216. package/dist/esm/elements/Tooltip/Tooltip.js.map +1 -1
  217. package/dist/esm/elements/Tooltip/Tooltip.story.js +2 -2
  218. package/dist/esm/elements/Tooltip/Tooltip.story.js.map +1 -1
  219. package/dist/esm/elements/VisuallyHidden/VisuallyHidden.js +1 -1
  220. package/dist/esm/elements/VisuallyHidden/VisuallyHidden.js.map +1 -1
  221. package/dist/esm/helpers/color.js +1 -1
  222. package/dist/esm/helpers/color.js.map +1 -1
  223. package/dist/esm/helpers/injectGlobalStyles.js +1 -1
  224. package/dist/esm/helpers/injectGlobalStyles.js.map +1 -1
  225. package/dist/esm/helpers/isText.js +1 -1
  226. package/dist/esm/helpers/isText.js.map +1 -1
  227. package/dist/esm/helpers/space.js +1 -1
  228. package/dist/esm/helpers/space.js.map +1 -1
  229. package/dist/esm/shared/RequiredField.js +1 -1
  230. package/dist/esm/shared/RequiredField.js.map +1 -1
  231. package/dist/esm/themes/Themes.story.js +1 -2
  232. package/dist/esm/themes/Themes.story.js.map +1 -1
  233. package/dist/esm/utils/splitProps.js +0 -1
  234. package/dist/esm/utils/splitProps.js.map +1 -1
  235. package/dist/esm/utils/usePortal.js +1 -1
  236. package/dist/esm/utils/usePortal.js.map +1 -1
  237. package/dist/tsconfig.tsbuildinfo +1 -1
  238. package/package.json +2 -2
@@ -1,7 +1,7 @@
1
1
  import React from "react";
2
2
  import { Theme as TTheme } from "./themes";
3
3
  export * from "@artsy/palette-tokens/dist/themes/v3";
4
- export { TextVariant } from "@artsy/palette-tokens/dist/typography/v3";
4
+ export type { TextVariant } from "@artsy/palette-tokens/dist/typography/v3";
5
5
  export declare const THEMES: {
6
6
  light: {
7
7
  id: string;
package/dist/cjs/Theme.js CHANGED
@@ -7,17 +7,9 @@ Object.defineProperty(exports, "__esModule", {
7
7
  var _exportNames = {
8
8
  THEMES: true,
9
9
  Theme: true,
10
- useTheme: true,
11
- TextVariant: true
10
+ useTheme: true
12
11
  };
13
- exports.THEMES = void 0;
14
- Object.defineProperty(exports, "TextVariant", {
15
- enumerable: true,
16
- get: function get() {
17
- return _v2.TextVariant;
18
- }
19
- });
20
- exports.useTheme = exports.Theme = void 0;
12
+ exports.useTheme = exports.Theme = exports.THEMES = void 0;
21
13
  var _react = _interopRequireWildcard(require("react"));
22
14
  var _styledComponents = require("styled-components");
23
15
  var _themes = require("./themes");
@@ -34,7 +26,6 @@ Object.keys(_v).forEach(function (key) {
34
26
  });
35
27
  });
36
28
  var _v3Dark = require("@artsy/palette-tokens/dist/themes/v3Dark");
37
- var _v2 = require("@artsy/palette-tokens/dist/typography/v3");
38
29
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
39
30
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
40
31
  var THEMES = exports.THEMES = {
@@ -1 +1 @@
1
- {"version":3,"file":"Theme.js","names":["_react","_interopRequireWildcard","require","_styledComponents","_themes","_v","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_v3Dark","_v2","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","desc","set","THEMES","light","THEME","dark","THEME_DARK","DEFAULT_THEME","Theme","_ref","children","_ref$theme","theme","selectedTheme","createElement","ThemeProvider","displayName","useTheme","useContext","ThemeContext"],"sources":["../../src/Theme.tsx"],"sourcesContent":["import React, { useContext } from \"react\"\nimport { ThemeContext, ThemeProvider } from \"styled-components\"\nimport { THEME, Theme as TTheme } from \"./themes\"\n\nexport * from \"@artsy/palette-tokens/dist/themes/v3\"\nimport { THEME_DARK } from \"@artsy/palette-tokens/dist/themes/v3Dark\"\nexport { TextVariant } from \"@artsy/palette-tokens/dist/typography/v3\"\n\nexport const THEMES = {\n light: THEME,\n dark: THEME_DARK,\n}\n\nconst DEFAULT_THEME = THEME\n\ninterface ThemeProps {\n children?: React.ReactNode\n theme?: \"light\" | \"dark\"\n}\n\n/**\n * A wrapper component for passing down the Artsy theme context\n */\nexport const Theme: React.FC<React.PropsWithChildren<ThemeProps>> = ({\n children,\n theme = \"light\",\n}) => {\n const selectedTheme = THEMES[theme]\n return <ThemeProvider theme={selectedTheme}>{children}</ThemeProvider>\n}\n\n/** Returns the current theme */\nexport const useTheme = <T extends TTheme>() => {\n const theme: T = (useContext(ThemeContext) || DEFAULT_THEME) as T\n return { theme }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Theme.js","names":["_react","_interopRequireWildcard","require","_styledComponents","_themes","_v","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_v3Dark","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","desc","set","THEMES","light","THEME","dark","THEME_DARK","DEFAULT_THEME","Theme","_ref","children","_ref$theme","theme","selectedTheme","createElement","ThemeProvider","displayName","useTheme","useContext","ThemeContext"],"sources":["../../src/Theme.tsx"],"sourcesContent":["import React, { useContext } from \"react\"\nimport { ThemeContext, ThemeProvider } from \"styled-components\"\nimport { THEME, Theme as TTheme } from \"./themes\"\n\nexport * from \"@artsy/palette-tokens/dist/themes/v3\"\nimport { THEME_DARK } from \"@artsy/palette-tokens/dist/themes/v3Dark\"\nexport type { TextVariant } from \"@artsy/palette-tokens/dist/typography/v3\"\n\nexport const THEMES = {\n light: THEME,\n dark: THEME_DARK,\n}\n\nconst DEFAULT_THEME = THEME\n\ninterface ThemeProps {\n children?: React.ReactNode\n theme?: \"light\" | \"dark\"\n}\n\n/**\n * A wrapper component for passing down the Artsy theme context\n */\nexport const Theme: React.FC<React.PropsWithChildren<ThemeProps>> = ({\n children,\n theme = \"light\",\n}) => {\n const selectedTheme = THEMES[theme]\n return <ThemeProvider theme={selectedTheme}>{children}</ThemeProvider>\n}\n\n/** Returns the current theme */\nexport const useTheme = <T extends TTheme>() => {\n const theme: T = (useContext(ThemeContext) || DEFAULT_THEME) as T\n return { theme }\n}\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAEA,IAAAG,EAAA,GAAAH,OAAA;AAAAI,MAAA,CAAAC,IAAA,CAAAF,EAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,EAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAZ,EAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,OAAA,GAAAhB,OAAA;AAAqE,SAAAiB,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAnB,wBAAAuB,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAE,OAAA,CAAAF,GAAA,yBAAAA,GAAA,4BAAAG,OAAA,EAAAH,GAAA,UAAAI,KAAA,GAAAT,wBAAA,CAAAC,WAAA,OAAAQ,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAL,GAAA,YAAAI,KAAA,CAAAX,GAAA,CAAAO,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAzB,MAAA,CAAAS,cAAA,IAAAT,MAAA,CAAA0B,wBAAA,WAAAvB,GAAA,IAAAe,GAAA,QAAAf,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAY,GAAA,EAAAf,GAAA,SAAAwB,IAAA,GAAAF,qBAAA,GAAAzB,MAAA,CAAA0B,wBAAA,CAAAR,GAAA,EAAAf,GAAA,cAAAwB,IAAA,KAAAA,IAAA,CAAAhB,GAAA,IAAAgB,IAAA,CAAAC,GAAA,KAAA5B,MAAA,CAAAS,cAAA,CAAAe,MAAA,EAAArB,GAAA,EAAAwB,IAAA,YAAAH,MAAA,CAAArB,GAAA,IAAAe,GAAA,CAAAf,GAAA,SAAAqB,MAAA,CAAAH,OAAA,GAAAH,GAAA,MAAAI,KAAA,IAAAA,KAAA,CAAAM,GAAA,CAAAV,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAG9D,IAAMK,MAAM,GAAArB,OAAA,CAAAqB,MAAA,GAAG;EACpBC,KAAK,EAAEC,aAAK;EACZC,IAAI,EAAEC;AACR,CAAC;AAED,IAAMC,aAAa,GAAGH,aAAK;AAO3B;AACA;AACA;AACO,IAAMI,KAAoD,GAAA3B,OAAA,CAAA2B,KAAA,GAAG,SAAvDA,KAAoDA,CAAAC,IAAA,EAG3D;EAAA,IAFJC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAAC,UAAA,GAAAF,IAAA,CACRG,KAAK;IAALA,KAAK,GAAAD,UAAA,cAAG,OAAO,GAAAA,UAAA;EAEf,IAAME,aAAa,GAAGX,MAAM,CAACU,KAAK,CAAC;EACnC,oBAAO7C,MAAA,CAAA2B,OAAA,CAAAoB,aAAA,CAAC5C,iBAAA,CAAA6C,aAAa;IAACH,KAAK,EAAEC;EAAc,GAAEH,QAAQ,CAAiB;AACxE,CAAC;AANYF,KAAoD,CAAAQ,WAAA;AAQjE;AACO,IAAMC,QAAQ,GAAApC,OAAA,CAAAoC,QAAA,GAAG,SAAXA,QAAQA,CAAA,EAA2B;EAC9C,IAAML,KAAQ,GAAI,IAAAM,iBAAU,EAACC,8BAAY,CAAC,IAAIZ,aAAmB;EACjE,OAAO;IAAEK,KAAK,EAALA;EAAM,CAAC;AAClB,CAAC"}
@@ -1,2 +1,2 @@
1
1
  export * from "./BorderBox";
2
- export { BorderBoxProps } from "./BorderBoxBase";
2
+ export type { BorderBoxProps } from "./BorderBoxBase";
@@ -3,19 +3,9 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- var _exportNames = {
7
- BorderBoxProps: true
8
- };
9
- Object.defineProperty(exports, "BorderBoxProps", {
10
- enumerable: true,
11
- get: function get() {
12
- return _BorderBoxBase.BorderBoxProps;
13
- }
14
- });
15
6
  var _BorderBox = require("./BorderBox");
16
7
  Object.keys(_BorderBox).forEach(function (key) {
17
8
  if (key === "default" || key === "__esModule") return;
18
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
19
9
  if (key in exports && exports[key] === _BorderBox[key]) return;
20
10
  Object.defineProperty(exports, key, {
21
11
  enumerable: true,
@@ -24,5 +14,4 @@ Object.keys(_BorderBox).forEach(function (key) {
24
14
  }
25
15
  });
26
16
  });
27
- var _BorderBoxBase = require("./BorderBoxBase");
28
17
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_BorderBox","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_BorderBoxBase"],"sources":["../../../../src/elements/BorderBox/index.tsx"],"sourcesContent":["export * from \"./BorderBox\"\nexport { BorderBoxProps } from \"./BorderBoxBase\"\n"],"mappings":";;;;;;;;;;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,UAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAL,UAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAb,UAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,cAAA,GAAAb,OAAA"}
1
+ {"version":3,"file":"index.js","names":["_BorderBox","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../../src/elements/BorderBox/index.tsx"],"sourcesContent":["export * from \"./BorderBox\"\nexport type { BorderBoxProps } from \"./BorderBoxBase\"\n"],"mappings":";;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,UAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,UAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAT,UAAA,CAAAK,GAAA;IAAA;EAAA;AAAA"}
@@ -1,2 +1,2 @@
1
- export { FilterSelectChangeState, Item as FilterSelectItem, Items as FilterSelectItems, } from "./Components/FilterSelectContext";
1
+ export type { FilterSelectChangeState, Item as FilterSelectItem, Items as FilterSelectItems, } from "./Components/FilterSelectContext";
2
2
  export * from "./FilterSelect";
@@ -3,34 +3,9 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- var _exportNames = {
7
- FilterSelectChangeState: true,
8
- FilterSelectItem: true,
9
- FilterSelectItems: true
10
- };
11
- Object.defineProperty(exports, "FilterSelectChangeState", {
12
- enumerable: true,
13
- get: function get() {
14
- return _FilterSelectContext.FilterSelectChangeState;
15
- }
16
- });
17
- Object.defineProperty(exports, "FilterSelectItem", {
18
- enumerable: true,
19
- get: function get() {
20
- return _FilterSelectContext.Item;
21
- }
22
- });
23
- Object.defineProperty(exports, "FilterSelectItems", {
24
- enumerable: true,
25
- get: function get() {
26
- return _FilterSelectContext.Items;
27
- }
28
- });
29
- var _FilterSelectContext = require("./Components/FilterSelectContext");
30
6
  var _FilterSelect = require("./FilterSelect");
31
7
  Object.keys(_FilterSelect).forEach(function (key) {
32
8
  if (key === "default" || key === "__esModule") return;
33
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
34
9
  if (key in exports && exports[key] === _FilterSelect[key]) return;
35
10
  Object.defineProperty(exports, key, {
36
11
  enumerable: true,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_FilterSelectContext","require","_FilterSelect","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get"],"sources":["../../../../src/elements/FilterSelect/index.tsx"],"sourcesContent":["export {\n FilterSelectChangeState,\n Item as FilterSelectItem,\n Items as FilterSelectItems,\n} from \"./Components/FilterSelectContext\"\nexport * from \"./FilterSelect\"\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,oBAAA,GAAAC,OAAA;AAKA,IAAAC,aAAA,GAAAD,OAAA;AAAAE,MAAA,CAAAC,IAAA,CAAAF,aAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,aAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAZ,aAAA,CAAAI,GAAA;IAAA;EAAA;AAAA"}
1
+ {"version":3,"file":"index.js","names":["_FilterSelect","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../../src/elements/FilterSelect/index.tsx"],"sourcesContent":["export type {\n FilterSelectChangeState,\n Item as FilterSelectItem,\n Items as FilterSelectItems,\n} from \"./Components/FilterSelectContext\"\nexport * from \"./FilterSelect\"\n"],"mappings":";;;;;AAKA,IAAAA,aAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,aAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,aAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAT,aAAA,CAAAK,GAAA;IAAA;EAAA;AAAA"}
@@ -1,2 +1,2 @@
1
- export { ColumnSpan, ColumnStart } from "./calculateGridColumn";
1
+ export type { ColumnSpan, ColumnStart } from "./calculateGridColumn";
2
2
  export * from "./GridColumns";
@@ -3,27 +3,9 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- var _exportNames = {
7
- ColumnSpan: true,
8
- ColumnStart: true
9
- };
10
- Object.defineProperty(exports, "ColumnSpan", {
11
- enumerable: true,
12
- get: function get() {
13
- return _calculateGridColumn.ColumnSpan;
14
- }
15
- });
16
- Object.defineProperty(exports, "ColumnStart", {
17
- enumerable: true,
18
- get: function get() {
19
- return _calculateGridColumn.ColumnStart;
20
- }
21
- });
22
- var _calculateGridColumn = require("./calculateGridColumn");
23
6
  var _GridColumns = require("./GridColumns");
24
7
  Object.keys(_GridColumns).forEach(function (key) {
25
8
  if (key === "default" || key === "__esModule") return;
26
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
27
9
  if (key in exports && exports[key] === _GridColumns[key]) return;
28
10
  Object.defineProperty(exports, key, {
29
11
  enumerable: true,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_calculateGridColumn","require","_GridColumns","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get"],"sources":["../../../../src/elements/GridColumns/index.ts"],"sourcesContent":["export { ColumnSpan, ColumnStart } from \"./calculateGridColumn\"\nexport * from \"./GridColumns\"\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,oBAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAAAE,MAAA,CAAAC,IAAA,CAAAF,YAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,YAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAZ,YAAA,CAAAI,GAAA;IAAA;EAAA;AAAA"}
1
+ {"version":3,"file":"index.js","names":["_GridColumns","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../../src/elements/GridColumns/index.ts"],"sourcesContent":["export type { ColumnSpan, ColumnStart } from \"./calculateGridColumn\"\nexport * from \"./GridColumns\"\n"],"mappings":";;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,YAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,YAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAT,YAAA,CAAAK,GAAA;IAAA;EAAA;AAAA"}
package/dist/esm/Theme.js CHANGED
@@ -1,9 +1,8 @@
1
1
  import React, { useContext } from "react";
2
2
  import { ThemeContext, ThemeProvider } from "styled-components";
3
- import { THEME, Theme as TTheme } from "./themes";
3
+ import { THEME } from "./themes";
4
4
  export * from "@artsy/palette-tokens/dist/themes/v3";
5
5
  import { THEME_DARK } from "@artsy/palette-tokens/dist/themes/v3Dark";
6
- export { TextVariant } from "@artsy/palette-tokens/dist/typography/v3";
7
6
  export var THEMES = {
8
7
  light: THEME,
9
8
  dark: THEME_DARK
@@ -1 +1 @@
1
- {"version":3,"file":"Theme.js","names":["React","useContext","ThemeContext","ThemeProvider","THEME","Theme","TTheme","THEME_DARK","TextVariant","THEMES","light","dark","DEFAULT_THEME","_ref","children","_ref$theme","theme","selectedTheme","createElement","displayName","useTheme"],"sources":["../../src/Theme.tsx"],"sourcesContent":["import React, { useContext } from \"react\"\nimport { ThemeContext, ThemeProvider } from \"styled-components\"\nimport { THEME, Theme as TTheme } from \"./themes\"\n\nexport * from \"@artsy/palette-tokens/dist/themes/v3\"\nimport { THEME_DARK } from \"@artsy/palette-tokens/dist/themes/v3Dark\"\nexport { TextVariant } from \"@artsy/palette-tokens/dist/typography/v3\"\n\nexport const THEMES = {\n light: THEME,\n dark: THEME_DARK,\n}\n\nconst DEFAULT_THEME = THEME\n\ninterface ThemeProps {\n children?: React.ReactNode\n theme?: \"light\" | \"dark\"\n}\n\n/**\n * A wrapper component for passing down the Artsy theme context\n */\nexport const Theme: React.FC<React.PropsWithChildren<ThemeProps>> = ({\n children,\n theme = \"light\",\n}) => {\n const selectedTheme = THEMES[theme]\n return <ThemeProvider theme={selectedTheme}>{children}</ThemeProvider>\n}\n\n/** Returns the current theme */\nexport const useTheme = <T extends TTheme>() => {\n const theme: T = (useContext(ThemeContext) || DEFAULT_THEME) as T\n return { theme }\n}\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,SAASC,YAAY,EAAEC,aAAa,QAAQ,mBAAmB;AAC/D,SAASC,KAAK,EAAEC,KAAK,IAAIC,MAAM;AAE/B,cAAc,sCAAsC;AACpD,SAASC,UAAU,QAAQ,0CAA0C;AACrE,SAASC,WAAW,QAAQ,0CAA0C;AAEtE,OAAO,IAAMC,MAAM,GAAG;EACpBC,KAAK,EAAEN,KAAK;EACZO,IAAI,EAAEJ;AACR,CAAC;AAED,IAAMK,aAAa,GAAGR,KAAK;AAO3B;AACA;AACA;AACA,OAAO,IAAMC,KAAoD,GAAG,SAAvDA,KAAoDA,CAAAQ,IAAA,EAG3D;EAAA,IAFJC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAAC,UAAA,GAAAF,IAAA,CACRG,KAAK;IAALA,KAAK,GAAAD,UAAA,cAAG,OAAO,GAAAA,UAAA;EAEf,IAAME,aAAa,GAAGR,MAAM,CAACO,KAAK,CAAC;EACnC,oBAAOhB,KAAA,CAAAkB,aAAA,CAACf,aAAa;IAACa,KAAK,EAAEC;EAAc,GAAEH,QAAQ,CAAiB;AACxE,CAAC;AANYT,KAAoD,CAAAc,WAAA;AAQjE;AACA,OAAO,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAA,EAA2B;EAC9C,IAAMJ,KAAQ,GAAIf,UAAU,CAACC,YAAY,CAAC,IAAIU,aAAmB;EACjE,OAAO;IAAEI,KAAK,EAALA;EAAM,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"Theme.js","names":["React","useContext","ThemeContext","ThemeProvider","THEME","THEME_DARK","THEMES","light","dark","DEFAULT_THEME","Theme","_ref","children","_ref$theme","theme","selectedTheme","createElement","displayName","useTheme"],"sources":["../../src/Theme.tsx"],"sourcesContent":["import React, { useContext } from \"react\"\nimport { ThemeContext, ThemeProvider } from \"styled-components\"\nimport { THEME, Theme as TTheme } from \"./themes\"\n\nexport * from \"@artsy/palette-tokens/dist/themes/v3\"\nimport { THEME_DARK } from \"@artsy/palette-tokens/dist/themes/v3Dark\"\nexport type { TextVariant } from \"@artsy/palette-tokens/dist/typography/v3\"\n\nexport const THEMES = {\n light: THEME,\n dark: THEME_DARK,\n}\n\nconst DEFAULT_THEME = THEME\n\ninterface ThemeProps {\n children?: React.ReactNode\n theme?: \"light\" | \"dark\"\n}\n\n/**\n * A wrapper component for passing down the Artsy theme context\n */\nexport const Theme: React.FC<React.PropsWithChildren<ThemeProps>> = ({\n children,\n theme = \"light\",\n}) => {\n const selectedTheme = THEMES[theme]\n return <ThemeProvider theme={selectedTheme}>{children}</ThemeProvider>\n}\n\n/** Returns the current theme */\nexport const useTheme = <T extends TTheme>() => {\n const theme: T = (useContext(ThemeContext) || DEFAULT_THEME) as T\n return { theme }\n}\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,SAASC,YAAY,EAAEC,aAAa,QAAQ,mBAAmB;AAC/D,SAASC,KAAK;AAEd,cAAc,sCAAsC;AACpD,SAASC,UAAU,QAAQ,0CAA0C;AAGrE,OAAO,IAAMC,MAAM,GAAG;EACpBC,KAAK,EAAEH,KAAK;EACZI,IAAI,EAAEH;AACR,CAAC;AAED,IAAMI,aAAa,GAAGL,KAAK;AAO3B;AACA;AACA;AACA,OAAO,IAAMM,KAAoD,GAAG,SAAvDA,KAAoDA,CAAAC,IAAA,EAG3D;EAAA,IAFJC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAAC,UAAA,GAAAF,IAAA,CACRG,KAAK;IAALA,KAAK,GAAAD,UAAA,cAAG,OAAO,GAAAA,UAAA;EAEf,IAAME,aAAa,GAAGT,MAAM,CAACQ,KAAK,CAAC;EACnC,oBAAOd,KAAA,CAAAgB,aAAA,CAACb,aAAa;IAACW,KAAK,EAAEC;EAAc,GAAEH,QAAQ,CAAiB;AACxE,CAAC;AANYF,KAAoD,CAAAO,WAAA;AAQjE;AACA,OAAO,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAA,EAA2B;EAC9C,IAAMJ,KAAQ,GAAIb,UAAU,CAACC,YAAY,CAAC,IAAIO,aAAmB;EACjE,OAAO;IAAEK,KAAK,EAALA;EAAM,CAAC;AAClB,CAAC"}
@@ -20,14 +20,12 @@ import composeRefs from "@seznam/compose-react-refs";
20
20
  import { themeGet } from "@styled-system/theme-get";
21
21
  import React, { createRef, useCallback, useEffect, useMemo, useReducer, useRef } from "react";
22
22
  import styled from "styled-components";
23
- import { ResponsiveValue } from "styled-system";
24
23
  import { useKeyboardListNavigation } from "use-keyboard-list-navigation";
25
24
  import { useClickOutside, useContainsFocus, usePosition } from "../../utils";
26
25
  import { useMouseActivity } from "../../utils/useMouseActivity";
27
26
  import { useWidthOf } from "../../utils/useWidthOf";
28
27
  import { Box, splitBoxProps } from "../Box";
29
28
  import { Clickable } from "../Clickable";
30
- import { InputProps } from "../Input";
31
29
  import { LabeledInput } from "../LabeledInput";
32
30
  import { Spinner } from "../Spinner";
33
31
  import { VisuallyHidden } from "../VisuallyHidden";
@@ -1 +1 @@
1
- {"version":3,"file":"AutocompleteInput.js","names":["CloseIcon","SearchIcon","composeRefs","themeGet","React","createRef","useCallback","useEffect","useMemo","useReducer","useRef","styled","ResponsiveValue","useKeyboardListNavigation","useClickOutside","useContainsFocus","usePosition","useMouseActivity","useWidthOf","Box","splitBoxProps","Clickable","InputProps","LabeledInput","Spinner","VisuallyHidden","AutocompleteInputOption","AutocompleteInputOptionLabel","reducer","state","action","type","_objectSpread","open","query","payload","AutocompleteInput","_ref","_staged$text","_ref$clamp","clamp","_ref$defaultValue","defaultValue","_ref$dropdownMaxHeigh","dropdownMaxHeight","dropdownMinWidth","_ref$flip","flip","footer","forwardedRef","forwardRef","header","height","id","loading","onChange","onClear","onClose","onKeyDown","onSelect","onSubmit","options","_ref$renderOption","renderOption","option","createElement","rest","_objectWithoutProperties","_excluded","inputRef","containerRef","headerRef","footerRef","_splitBoxProps","_splitBoxProps2","_slicedToArray","boxProps","inputProps","_useReducer","_useReducer2","dispatch","optionsWithRefs","map","ref","resetUI","setTimeout","_inputRef$current","current","focus","reset","handleSelect","index","_inputRef$current2","text","_useKeyboardListNavig","list","waitForInteractive","onEnter","_ref2","element","i","event","preventDefault","stopPropagation","set","isDropdownVisible","length","_usePosition","active","key","offset","position","anchorRef","tooltipRef","_useWidthOf","width","handleFocus","handleMouseDown","handleClick","_useMouseActivity","lastMouseMoveTimestamp","handleMouseEnter","now","performance","cursor","interactive","handleChange","value","currentTarget","handleClearOrSubmit","_inputRef$current3","handleClose","ignoreFocusChangeRef","ignoreFocusChange","onMouseDown","onMouseUp","_optionsWithRefs$inde","_optionsWithRefs$inde2","el","isPointerInteraction","preventScroll","scrollIntoView","block","_unused","handleFocusChange","focused","_useContainsFocus","containsFocusRef","onClickOutside","when","handleInputKeydown","_inputRef$current4","blur","handleContainerKeydown","_inputRef$current5","_inputRef$current6","staged","_extends","role","concat","label","size","onClick","display","alignItems","fill","onFocus","autoComplete","AutocompleteInputDropdownContainer","minWidth","pt","AutocompleteInputDropdown","AutocompleteInputOptions","maxHeight","_ref3","onMouseEnter","tabIndex","displayName","withConfig","componentId"],"sources":["../../../../src/elements/AutocompleteInput/AutocompleteInput.tsx"],"sourcesContent":["import CloseIcon from \"@artsy/icons/CloseIcon\"\nimport SearchIcon from \"@artsy/icons/SearchIcon\"\nimport composeRefs from \"@seznam/compose-react-refs\"\nimport { themeGet } from \"@styled-system/theme-get\"\nimport React, {\n createRef,\n useCallback,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n} from \"react\"\nimport styled from \"styled-components\"\nimport { ResponsiveValue } from \"styled-system\"\nimport { useKeyboardListNavigation } from \"use-keyboard-list-navigation\"\nimport { useClickOutside, useContainsFocus, usePosition } from \"../../utils\"\nimport { useMouseActivity } from \"../../utils/useMouseActivity\"\nimport { useWidthOf } from \"../../utils/useWidthOf\"\nimport { Box, splitBoxProps } from \"../Box\"\nimport { Clickable } from \"../Clickable\"\nimport { InputProps } from \"../Input\"\nimport { LabeledInput } from \"../LabeledInput\"\nimport { Spinner } from \"../Spinner\"\nimport { VisuallyHidden } from \"../VisuallyHidden\"\nimport { AutocompleteInputOption } from \"./AutocompleteInputOption\"\nimport { AutocompleteInputOptionLabel } from \"./AutocompleteInputOptionLabel\"\n\nexport interface AutocompleteFooterActions {\n /** Call to close dropdown */\n onClose(): void\n}\n\n/** Base option type — can be expanded */\nexport interface AutocompleteInputOptionType {\n text: string\n value: string\n}\n\ninterface State {\n open: boolean\n query: string\n}\n\ntype Action =\n | { type: \"OPEN\" }\n | { type: \"CLOSE\" }\n | { type: \"CLEAR\" }\n | { type: \"CHANGE\"; payload: { query: string } }\n | { type: \"SELECT\"; payload: { query: string } }\n\nconst reducer = (state: State, action: Action): State => {\n switch (action.type) {\n case \"OPEN\":\n return { ...state, open: true }\n case \"CLOSE\":\n return { ...state, open: false }\n case \"CLEAR\":\n return { ...state, query: \"\" }\n case \"CHANGE\":\n return { ...state, query: action.payload.query, open: true }\n case \"SELECT\":\n return { ...state, query: action.payload.query, open: false }\n }\n}\n\nexport interface AutocompleteInputProps<T extends AutocompleteInputOptionType>\n extends Omit<InputProps, \"onSelect\" | \"onSubmit\"> {\n /** Optionally enable clamping (default: `false`) */\n clamp?: boolean\n defaultValue?: string\n dropdownMaxHeight?: ResponsiveValue<string | number>\n dropdownMinWidth?: ResponsiveValue<string | number>\n loading?: boolean\n header?: React.ReactNode\n /** Optionally disable flipping (default: `true`) */\n flip?: boolean\n footer?:\n | React.ReactNode\n | ((dropdownActions: AutocompleteFooterActions) => React.ReactNode)\n /** Ref to the input; workaround generics */\n forwardRef?: React.Ref<HTMLInputElement>\n /** on <enter> when no option is selected */\n onSubmit?(query: string): void\n /** on <click> or <enter> when an option is selected */\n onSelect?(option: T, index: number): void\n /** on <click> of the 'x' (clear) button */\n onClear?(): void\n /** Callback that runs when options are hidden */\n onClose?(): void\n options: T[]\n renderOption?(\n option: T,\n i: number\n ): React.ReactElement<any, string | React.JSXElementConstructor<any>>\n}\n\n/** AutocompleteInput */\nexport const AutocompleteInput = <T extends AutocompleteInputOptionType>({\n clamp = false,\n defaultValue = \"\",\n dropdownMaxHeight = 308, // 308 = roughly 5.5 options\n dropdownMinWidth,\n flip = true,\n footer,\n forwardRef: forwardedRef,\n header,\n height,\n id,\n loading,\n onChange,\n onClear,\n onClose,\n onKeyDown,\n onSelect,\n onSubmit,\n options,\n renderOption = (option) => <AutocompleteInputOptionLabel {...option} />,\n ...rest\n}: AutocompleteInputProps<T>) => {\n const inputRef = useRef<HTMLInputElement | null>(null)\n const containerRef = useRef<HTMLDivElement | null>(null)\n const headerRef = useRef<HTMLDivElement | null>(null)\n const footerRef = useRef<HTMLDivElement | null>(null)\n\n const [boxProps, inputProps] = splitBoxProps(rest)\n\n const [state, dispatch] = useReducer(reducer, {\n open: false,\n query: defaultValue,\n })\n\n const optionsWithRefs = useMemo(() => {\n return options.map((option) => ({\n option,\n ref: createRef<HTMLButtonElement>(),\n }))\n }, [options])\n\n const resetUI = () => {\n setTimeout(() => {\n inputRef.current?.focus()\n reset()\n dispatch({ type: \"CLOSE\" })\n }, 100)\n }\n\n const handleSelect = (option: T, index: number) => {\n dispatch({ type: \"SELECT\", payload: { query: option.text } })\n inputRef.current?.focus()\n onSelect?.(option, index)\n }\n\n const { index, reset, set } = useKeyboardListNavigation({\n ref: containerRef,\n list: options,\n waitForInteractive: true,\n onEnter: ({ element: option, index: i, event }) => {\n event.preventDefault()\n event.stopPropagation()\n handleSelect(option, i)\n resetUI()\n },\n })\n\n const isDropdownVisible = state.open && options.length > 0\n\n // Reset keyboard navigation when options change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(reset, [options])\n\n // Reset keyboard navigation when query is empty\n useEffect(() => {\n if (state.query === \"\") reset()\n }, [reset, state.query])\n\n const { anchorRef, tooltipRef } = usePosition({\n active: isDropdownVisible,\n clamp,\n flip,\n key: options.length,\n offset: 0,\n position: \"bottom\",\n })\n\n const { width } = useWidthOf({ ref: anchorRef })\n\n const handleFocus = () => {\n reset()\n dispatch({ type: \"OPEN\" })\n }\n\n const handleMouseDown = (option: T, i: number) => () => {\n handleSelect(option, i)\n resetUI()\n }\n\n const handleClick = () => {\n dispatch({ type: \"OPEN\" })\n }\n\n // Records the latest mouse movement and, inside the `handleMouseEnter` callback,\n // only treat the event as genuine if the mouse has moved very recently.\n // Otherwise, the event is presumed to have been triggered by scrolling and is ignored.\n const { lastMouseMoveTimestamp } = useMouseActivity()\n\n const handleMouseEnter = (i: number) => () => {\n const now = performance.now()\n\n // 50ms mouse move window\n if (now - lastMouseMoveTimestamp.current < 50) {\n set({ cursor: i, interactive: true })\n }\n }\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const {\n currentTarget: { value },\n } = event\n\n dispatch({ type: \"CHANGE\", payload: { query: value } })\n onChange?.(event)\n }\n\n const handleClearOrSubmit = () => {\n if (state.query === \"\") {\n onSubmit?.(state.query)\n return\n }\n\n dispatch({ type: \"CLEAR\" })\n inputRef.current?.focus()\n onClear?.()\n }\n\n const handleClose = useCallback(() => {\n dispatch({ type: \"CLOSE\" })\n reset()\n onClose?.()\n }, [onClose, reset])\n\n const ignoreFocusChangeRef = useRef<boolean>(false)\n const ignoreFocusChange = {\n onMouseDown: () => (ignoreFocusChangeRef.current = true),\n onMouseUp: () => (ignoreFocusChangeRef.current = false),\n }\n\n // Moves focus to different options when keyboard navigating using up/down\n useEffect(() => {\n const el = optionsWithRefs[index]?.ref?.current\n if (!el) return\n\n const isPointerInteraction =\n performance.now() - lastMouseMoveTimestamp.current < 50\n\n if (isPointerInteraction) {\n // Pointer interactions should not cause scroll\n el.focus({ preventScroll: true })\n return\n }\n\n // Keyboard navigation: focus and ensure visibility\n el.focus({ preventScroll: true })\n try {\n el.scrollIntoView({ block: \"nearest\" })\n } catch {}\n }, [index, optionsWithRefs])\n\n const handleFocusChange = useCallback(\n (focused: boolean) => {\n if (ignoreFocusChangeRef.current || focused || !isDropdownVisible) return\n\n handleClose()\n },\n\n [isDropdownVisible, handleClose]\n )\n\n // Handle closing the dropdown when clicking outside of the input\n // or when focus leaves the input completely\n const { ref: containsFocusRef } = useContainsFocus({\n onChange: handleFocusChange,\n })\n\n useClickOutside({\n ref: containsFocusRef,\n onClickOutside: handleClose,\n when: isDropdownVisible,\n type: \"click\",\n })\n\n const handleInputKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n switch (event.key) {\n // Handle <Enter> when nothing is selected\n case \"Enter\":\n if (state.query !== \"\" && index === -1) {\n onSubmit?.(state.query)\n resetUI()\n }\n return\n\n // <Esc> to close dropdown\n case \"Escape\":\n event.preventDefault()\n event.stopPropagation()\n\n dispatch({ type: \"CLOSE\" })\n inputRef.current?.blur()\n\n return\n\n default:\n break\n }\n\n onKeyDown?.(event)\n }\n\n // Moves focus back to input when typing\n const handleContainerKeydown = (\n event: React.KeyboardEvent<HTMLDivElement>\n ) => {\n switch (event.key) {\n case \"Alt\":\n case \"ArrowDown\":\n case \"ArrowUp\":\n case \"Control\":\n case \"Enter\":\n case \"Meta\":\n case \"Shift\":\n case \"Tab\":\n // Ignore\n return\n\n case \"Escape\":\n event.preventDefault()\n event.stopPropagation()\n\n dispatch({ type: \"CLOSE\" })\n inputRef.current?.blur()\n reset()\n\n return\n\n default:\n inputRef.current?.focus()\n }\n }\n\n // Option that is being hovered or keyed into\n const staged = options[index]\n\n return (\n <Box\n ref={composeRefs(containerRef, containsFocusRef) as any}\n onKeyDown={handleContainerKeydown}\n {...boxProps}\n >\n <LabeledInput\n ref={composeRefs(inputRef, anchorRef, forwardedRef) as any}\n role=\"combobox\"\n aria-expanded={isDropdownVisible}\n aria-autocomplete=\"list\"\n {...(id ? { id, \"aria-describedby\": `${id}__assistiveHint` } : {})}\n label={\n loading ? (\n <Box width={18}>\n <Spinner size=\"small\" />\n </Box>\n ) : state.query ? (\n <Clickable\n onClick={handleClearOrSubmit}\n height=\"100%\"\n display=\"flex\"\n alignItems=\"center\"\n aria-label=\"Clear input\"\n >\n <CloseIcon fill=\"mono60\" aria-hidden />\n </Clickable>\n ) : (\n <SearchIcon fill=\"mono60\" aria-hidden />\n )\n }\n value={staged?.text ?? state.query}\n onChange={handleChange}\n onFocus={handleFocus}\n onKeyDown={handleInputKeydown}\n onClick={handleClick}\n autoComplete=\"off\"\n height={height}\n {...inputProps}\n />\n\n {isDropdownVisible && (\n <AutocompleteInputDropdownContainer\n ref={tooltipRef as any}\n role=\"listbox\"\n width={width}\n minWidth={200}\n pt={1} // Gap in place of `offset` for `usePosition`\n >\n <AutocompleteInputDropdown minWidth={dropdownMinWidth}>\n <div ref={headerRef} {...ignoreFocusChange}>\n {header}\n </div>\n\n <AutocompleteInputOptions maxHeight={dropdownMaxHeight}>\n {optionsWithRefs.map(({ option, ref }, i) => {\n return (\n <AutocompleteInputOption\n key={i}\n ref={ref}\n role=\"option\"\n aria-selected={i === index}\n aria-posinset={i + 1}\n aria-setsize={options.length}\n onMouseDown={handleMouseDown(option, i)}\n onMouseEnter={handleMouseEnter(i)}\n tabIndex={-1}\n >\n {renderOption(option, i)}\n </AutocompleteInputOption>\n )\n })}\n </AutocompleteInputOptions>\n\n <div ref={footerRef} {...ignoreFocusChange}>\n {typeof footer === \"function\"\n ? footer({ onClose: handleClose })\n : footer}\n </div>\n </AutocompleteInputDropdown>\n </AutocompleteInputDropdownContainer>\n )}\n\n <VisuallyHidden {...(id ? { id: `${id}__assistiveHint` } : {})}>\n When autocomplete results are available use up and down arrows to review\n and enter to select. Touch device users, explore by touch or with swipe\n gestures.\n </VisuallyHidden>\n\n {isDropdownVisible && (\n <VisuallyHidden role=\"status\" aria-atomic=\"true\" aria-live=\"polite\">\n {options.length === 1\n ? `1 result is available`\n : `${options.length} results are available`}\n </VisuallyHidden>\n )}\n </Box>\n )\n}\n\nconst AutocompleteInputDropdownContainer = styled(Box)`\n z-index: 1;\n`\n\nconst AutocompleteInputDropdown = styled(Box)`\n box-shadow: ${themeGet(\"effects.dropShadow\")};\n`\n\nconst AutocompleteInputOptions = styled(Box)`\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n`\n"],"mappings":"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"}
1
+ {"version":3,"file":"AutocompleteInput.js","names":["CloseIcon","SearchIcon","composeRefs","themeGet","React","createRef","useCallback","useEffect","useMemo","useReducer","useRef","styled","useKeyboardListNavigation","useClickOutside","useContainsFocus","usePosition","useMouseActivity","useWidthOf","Box","splitBoxProps","Clickable","LabeledInput","Spinner","VisuallyHidden","AutocompleteInputOption","AutocompleteInputOptionLabel","reducer","state","action","type","_objectSpread","open","query","payload","AutocompleteInput","_ref","_staged$text","_ref$clamp","clamp","_ref$defaultValue","defaultValue","_ref$dropdownMaxHeigh","dropdownMaxHeight","dropdownMinWidth","_ref$flip","flip","footer","forwardedRef","forwardRef","header","height","id","loading","onChange","onClear","onClose","onKeyDown","onSelect","onSubmit","options","_ref$renderOption","renderOption","option","createElement","rest","_objectWithoutProperties","_excluded","inputRef","containerRef","headerRef","footerRef","_splitBoxProps","_splitBoxProps2","_slicedToArray","boxProps","inputProps","_useReducer","_useReducer2","dispatch","optionsWithRefs","map","ref","resetUI","setTimeout","_inputRef$current","current","focus","reset","handleSelect","index","_inputRef$current2","text","_useKeyboardListNavig","list","waitForInteractive","onEnter","_ref2","element","i","event","preventDefault","stopPropagation","set","isDropdownVisible","length","_usePosition","active","key","offset","position","anchorRef","tooltipRef","_useWidthOf","width","handleFocus","handleMouseDown","handleClick","_useMouseActivity","lastMouseMoveTimestamp","handleMouseEnter","now","performance","cursor","interactive","handleChange","value","currentTarget","handleClearOrSubmit","_inputRef$current3","handleClose","ignoreFocusChangeRef","ignoreFocusChange","onMouseDown","onMouseUp","_optionsWithRefs$inde","_optionsWithRefs$inde2","el","isPointerInteraction","preventScroll","scrollIntoView","block","_unused","handleFocusChange","focused","_useContainsFocus","containsFocusRef","onClickOutside","when","handleInputKeydown","_inputRef$current4","blur","handleContainerKeydown","_inputRef$current5","_inputRef$current6","staged","_extends","role","concat","label","size","onClick","display","alignItems","fill","onFocus","autoComplete","AutocompleteInputDropdownContainer","minWidth","pt","AutocompleteInputDropdown","AutocompleteInputOptions","maxHeight","_ref3","onMouseEnter","tabIndex","displayName","withConfig","componentId"],"sources":["../../../../src/elements/AutocompleteInput/AutocompleteInput.tsx"],"sourcesContent":["import CloseIcon from \"@artsy/icons/CloseIcon\"\nimport SearchIcon from \"@artsy/icons/SearchIcon\"\nimport composeRefs from \"@seznam/compose-react-refs\"\nimport { themeGet } from \"@styled-system/theme-get\"\nimport React, {\n createRef,\n useCallback,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n} from \"react\"\nimport styled from \"styled-components\"\nimport { ResponsiveValue } from \"styled-system\"\nimport { useKeyboardListNavigation } from \"use-keyboard-list-navigation\"\nimport { useClickOutside, useContainsFocus, usePosition } from \"../../utils\"\nimport { useMouseActivity } from \"../../utils/useMouseActivity\"\nimport { useWidthOf } from \"../../utils/useWidthOf\"\nimport { Box, splitBoxProps } from \"../Box\"\nimport { Clickable } from \"../Clickable\"\nimport { InputProps } from \"../Input\"\nimport { LabeledInput } from \"../LabeledInput\"\nimport { Spinner } from \"../Spinner\"\nimport { VisuallyHidden } from \"../VisuallyHidden\"\nimport { AutocompleteInputOption } from \"./AutocompleteInputOption\"\nimport { AutocompleteInputOptionLabel } from \"./AutocompleteInputOptionLabel\"\n\nexport interface AutocompleteFooterActions {\n /** Call to close dropdown */\n onClose(): void\n}\n\n/** Base option type — can be expanded */\nexport interface AutocompleteInputOptionType {\n text: string\n value: string\n}\n\ninterface State {\n open: boolean\n query: string\n}\n\ntype Action =\n | { type: \"OPEN\" }\n | { type: \"CLOSE\" }\n | { type: \"CLEAR\" }\n | { type: \"CHANGE\"; payload: { query: string } }\n | { type: \"SELECT\"; payload: { query: string } }\n\nconst reducer = (state: State, action: Action): State => {\n switch (action.type) {\n case \"OPEN\":\n return { ...state, open: true }\n case \"CLOSE\":\n return { ...state, open: false }\n case \"CLEAR\":\n return { ...state, query: \"\" }\n case \"CHANGE\":\n return { ...state, query: action.payload.query, open: true }\n case \"SELECT\":\n return { ...state, query: action.payload.query, open: false }\n }\n}\n\nexport interface AutocompleteInputProps<T extends AutocompleteInputOptionType>\n extends Omit<InputProps, \"onSelect\" | \"onSubmit\"> {\n /** Optionally enable clamping (default: `false`) */\n clamp?: boolean\n defaultValue?: string\n dropdownMaxHeight?: ResponsiveValue<string | number>\n dropdownMinWidth?: ResponsiveValue<string | number>\n loading?: boolean\n header?: React.ReactNode\n /** Optionally disable flipping (default: `true`) */\n flip?: boolean\n footer?:\n | React.ReactNode\n | ((dropdownActions: AutocompleteFooterActions) => React.ReactNode)\n /** Ref to the input; workaround generics */\n forwardRef?: React.Ref<HTMLInputElement>\n /** on <enter> when no option is selected */\n onSubmit?(query: string): void\n /** on <click> or <enter> when an option is selected */\n onSelect?(option: T, index: number): void\n /** on <click> of the 'x' (clear) button */\n onClear?(): void\n /** Callback that runs when options are hidden */\n onClose?(): void\n options: T[]\n renderOption?(\n option: T,\n i: number\n ): React.ReactElement<any, string | React.JSXElementConstructor<any>>\n}\n\n/** AutocompleteInput */\nexport const AutocompleteInput = <T extends AutocompleteInputOptionType>({\n clamp = false,\n defaultValue = \"\",\n dropdownMaxHeight = 308, // 308 = roughly 5.5 options\n dropdownMinWidth,\n flip = true,\n footer,\n forwardRef: forwardedRef,\n header,\n height,\n id,\n loading,\n onChange,\n onClear,\n onClose,\n onKeyDown,\n onSelect,\n onSubmit,\n options,\n renderOption = (option) => <AutocompleteInputOptionLabel {...option} />,\n ...rest\n}: AutocompleteInputProps<T>) => {\n const inputRef = useRef<HTMLInputElement | null>(null)\n const containerRef = useRef<HTMLDivElement | null>(null)\n const headerRef = useRef<HTMLDivElement | null>(null)\n const footerRef = useRef<HTMLDivElement | null>(null)\n\n const [boxProps, inputProps] = splitBoxProps(rest)\n\n const [state, dispatch] = useReducer(reducer, {\n open: false,\n query: defaultValue,\n })\n\n const optionsWithRefs = useMemo(() => {\n return options.map((option) => ({\n option,\n ref: createRef<HTMLButtonElement>(),\n }))\n }, [options])\n\n const resetUI = () => {\n setTimeout(() => {\n inputRef.current?.focus()\n reset()\n dispatch({ type: \"CLOSE\" })\n }, 100)\n }\n\n const handleSelect = (option: T, index: number) => {\n dispatch({ type: \"SELECT\", payload: { query: option.text } })\n inputRef.current?.focus()\n onSelect?.(option, index)\n }\n\n const { index, reset, set } = useKeyboardListNavigation({\n ref: containerRef,\n list: options,\n waitForInteractive: true,\n onEnter: ({ element: option, index: i, event }) => {\n event.preventDefault()\n event.stopPropagation()\n handleSelect(option, i)\n resetUI()\n },\n })\n\n const isDropdownVisible = state.open && options.length > 0\n\n // Reset keyboard navigation when options change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(reset, [options])\n\n // Reset keyboard navigation when query is empty\n useEffect(() => {\n if (state.query === \"\") reset()\n }, [reset, state.query])\n\n const { anchorRef, tooltipRef } = usePosition({\n active: isDropdownVisible,\n clamp,\n flip,\n key: options.length,\n offset: 0,\n position: \"bottom\",\n })\n\n const { width } = useWidthOf({ ref: anchorRef })\n\n const handleFocus = () => {\n reset()\n dispatch({ type: \"OPEN\" })\n }\n\n const handleMouseDown = (option: T, i: number) => () => {\n handleSelect(option, i)\n resetUI()\n }\n\n const handleClick = () => {\n dispatch({ type: \"OPEN\" })\n }\n\n // Records the latest mouse movement and, inside the `handleMouseEnter` callback,\n // only treat the event as genuine if the mouse has moved very recently.\n // Otherwise, the event is presumed to have been triggered by scrolling and is ignored.\n const { lastMouseMoveTimestamp } = useMouseActivity()\n\n const handleMouseEnter = (i: number) => () => {\n const now = performance.now()\n\n // 50ms mouse move window\n if (now - lastMouseMoveTimestamp.current < 50) {\n set({ cursor: i, interactive: true })\n }\n }\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const {\n currentTarget: { value },\n } = event\n\n dispatch({ type: \"CHANGE\", payload: { query: value } })\n onChange?.(event)\n }\n\n const handleClearOrSubmit = () => {\n if (state.query === \"\") {\n onSubmit?.(state.query)\n return\n }\n\n dispatch({ type: \"CLEAR\" })\n inputRef.current?.focus()\n onClear?.()\n }\n\n const handleClose = useCallback(() => {\n dispatch({ type: \"CLOSE\" })\n reset()\n onClose?.()\n }, [onClose, reset])\n\n const ignoreFocusChangeRef = useRef<boolean>(false)\n const ignoreFocusChange = {\n onMouseDown: () => (ignoreFocusChangeRef.current = true),\n onMouseUp: () => (ignoreFocusChangeRef.current = false),\n }\n\n // Moves focus to different options when keyboard navigating using up/down\n useEffect(() => {\n const el = optionsWithRefs[index]?.ref?.current\n if (!el) return\n\n const isPointerInteraction =\n performance.now() - lastMouseMoveTimestamp.current < 50\n\n if (isPointerInteraction) {\n // Pointer interactions should not cause scroll\n el.focus({ preventScroll: true })\n return\n }\n\n // Keyboard navigation: focus and ensure visibility\n el.focus({ preventScroll: true })\n try {\n el.scrollIntoView({ block: \"nearest\" })\n } catch {}\n }, [index, optionsWithRefs])\n\n const handleFocusChange = useCallback(\n (focused: boolean) => {\n if (ignoreFocusChangeRef.current || focused || !isDropdownVisible) return\n\n handleClose()\n },\n\n [isDropdownVisible, handleClose]\n )\n\n // Handle closing the dropdown when clicking outside of the input\n // or when focus leaves the input completely\n const { ref: containsFocusRef } = useContainsFocus({\n onChange: handleFocusChange,\n })\n\n useClickOutside({\n ref: containsFocusRef,\n onClickOutside: handleClose,\n when: isDropdownVisible,\n type: \"click\",\n })\n\n const handleInputKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n switch (event.key) {\n // Handle <Enter> when nothing is selected\n case \"Enter\":\n if (state.query !== \"\" && index === -1) {\n onSubmit?.(state.query)\n resetUI()\n }\n return\n\n // <Esc> to close dropdown\n case \"Escape\":\n event.preventDefault()\n event.stopPropagation()\n\n dispatch({ type: \"CLOSE\" })\n inputRef.current?.blur()\n\n return\n\n default:\n break\n }\n\n onKeyDown?.(event)\n }\n\n // Moves focus back to input when typing\n const handleContainerKeydown = (\n event: React.KeyboardEvent<HTMLDivElement>\n ) => {\n switch (event.key) {\n case \"Alt\":\n case \"ArrowDown\":\n case \"ArrowUp\":\n case \"Control\":\n case \"Enter\":\n case \"Meta\":\n case \"Shift\":\n case \"Tab\":\n // Ignore\n return\n\n case \"Escape\":\n event.preventDefault()\n event.stopPropagation()\n\n dispatch({ type: \"CLOSE\" })\n inputRef.current?.blur()\n reset()\n\n return\n\n default:\n inputRef.current?.focus()\n }\n }\n\n // Option that is being hovered or keyed into\n const staged = options[index]\n\n return (\n <Box\n ref={composeRefs(containerRef, containsFocusRef) as any}\n onKeyDown={handleContainerKeydown}\n {...boxProps}\n >\n <LabeledInput\n ref={composeRefs(inputRef, anchorRef, forwardedRef) as any}\n role=\"combobox\"\n aria-expanded={isDropdownVisible}\n aria-autocomplete=\"list\"\n {...(id ? { id, \"aria-describedby\": `${id}__assistiveHint` } : {})}\n label={\n loading ? (\n <Box width={18}>\n <Spinner size=\"small\" />\n </Box>\n ) : state.query ? (\n <Clickable\n onClick={handleClearOrSubmit}\n height=\"100%\"\n display=\"flex\"\n alignItems=\"center\"\n aria-label=\"Clear input\"\n >\n <CloseIcon fill=\"mono60\" aria-hidden />\n </Clickable>\n ) : (\n <SearchIcon fill=\"mono60\" aria-hidden />\n )\n }\n value={staged?.text ?? state.query}\n onChange={handleChange}\n onFocus={handleFocus}\n onKeyDown={handleInputKeydown}\n onClick={handleClick}\n autoComplete=\"off\"\n height={height}\n {...inputProps}\n />\n\n {isDropdownVisible && (\n <AutocompleteInputDropdownContainer\n ref={tooltipRef as any}\n role=\"listbox\"\n width={width}\n minWidth={200}\n pt={1} // Gap in place of `offset` for `usePosition`\n >\n <AutocompleteInputDropdown minWidth={dropdownMinWidth}>\n <div ref={headerRef} {...ignoreFocusChange}>\n {header}\n </div>\n\n <AutocompleteInputOptions maxHeight={dropdownMaxHeight}>\n {optionsWithRefs.map(({ option, ref }, i) => {\n return (\n <AutocompleteInputOption\n key={i}\n ref={ref}\n role=\"option\"\n aria-selected={i === index}\n aria-posinset={i + 1}\n aria-setsize={options.length}\n onMouseDown={handleMouseDown(option, i)}\n onMouseEnter={handleMouseEnter(i)}\n tabIndex={-1}\n >\n {renderOption(option, i)}\n </AutocompleteInputOption>\n )\n })}\n </AutocompleteInputOptions>\n\n <div ref={footerRef} {...ignoreFocusChange}>\n {typeof footer === \"function\"\n ? footer({ onClose: handleClose })\n : footer}\n </div>\n </AutocompleteInputDropdown>\n </AutocompleteInputDropdownContainer>\n )}\n\n <VisuallyHidden {...(id ? { id: `${id}__assistiveHint` } : {})}>\n When autocomplete results are available use up and down arrows to review\n and enter to select. Touch device users, explore by touch or with swipe\n gestures.\n </VisuallyHidden>\n\n {isDropdownVisible && (\n <VisuallyHidden role=\"status\" aria-atomic=\"true\" aria-live=\"polite\">\n {options.length === 1\n ? `1 result is available`\n : `${options.length} results are available`}\n </VisuallyHidden>\n )}\n </Box>\n )\n}\n\nconst AutocompleteInputDropdownContainer = styled(Box)`\n z-index: 1;\n`\n\nconst AutocompleteInputDropdown = styled(Box)`\n box-shadow: ${themeGet(\"effects.dropShadow\")};\n`\n\nconst AutocompleteInputOptions = styled(Box)`\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n`\n"],"mappings":"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"}
@@ -6,7 +6,7 @@ import composeRefs from "@seznam/compose-react-refs";
6
6
  import { themeGet } from "@styled-system/theme-get";
7
7
  import React, { forwardRef, useRef } from "react";
8
8
  import styled from "styled-components";
9
- import { Clickable, ClickableProps } from "../Clickable";
9
+ import { Clickable } from "../Clickable";
10
10
  export var AutocompleteInputOption = /*#__PURE__*/forwardRef(function (_ref, forwardedRef) {
11
11
  var children = _ref.children,
12
12
  rest = _objectWithoutProperties(_ref, _excluded);
@@ -1 +1 @@
1
- {"version":3,"file":"AutocompleteInputOption.js","names":["composeRefs","themeGet","React","forwardRef","useRef","styled","Clickable","ClickableProps","AutocompleteInputOption","_ref","forwardedRef","children","rest","_objectWithoutProperties","_excluded","ref","createElement","Container","_extends","bg","displayName","withConfig","componentId"],"sources":["../../../../src/elements/AutocompleteInput/AutocompleteInputOption.tsx"],"sourcesContent":["import composeRefs from \"@seznam/compose-react-refs\"\nimport { themeGet } from \"@styled-system/theme-get\"\nimport React, { forwardRef, useRef } from \"react\"\nimport styled from \"styled-components\"\nimport { Clickable, ClickableProps } from \"../Clickable\"\n\nexport type AutocompleteInputOptionProps = ClickableProps\n\nexport const AutocompleteInputOption = forwardRef<\n HTMLButtonElement,\n AutocompleteInputOptionProps\n>(({ children, ...rest }, forwardedRef) => {\n const ref = useRef<HTMLButtonElement | null>(null)\n\n return (\n <Container ref={composeRefs(ref, forwardedRef) as any} bg=\"mono0\" {...rest}>\n {children}\n </Container>\n )\n})\n\nAutocompleteInputOption.displayName = \"AutocompleteInputOption\"\n\nconst Container = styled(Clickable)`\n display: block;\n width: 100%;\n\n &:focus,\n &:active {\n outline: 0;\n background-color: ${themeGet(\"colors.mono5\")};\n }\n`\n"],"mappings":";;;;AAAA,OAAOA,WAAW,MAAM,4BAA4B;AACpD,SAASC,QAAQ,QAAQ,0BAA0B;AACnD,OAAOC,KAAK,IAAIC,UAAU,EAAEC,MAAM,QAAQ,OAAO;AACjD,OAAOC,MAAM,MAAM,mBAAmB;AACtC,SAASC,SAAS,EAAEC,cAAc;AAIlC,OAAO,IAAMC,uBAAuB,gBAAGL,UAAU,CAG/C,UAAAM,IAAA,EAAwBC,YAAY,EAAK;EAAA,IAAtCC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IAAKC,IAAI,GAAAC,wBAAA,CAAAJ,IAAA,EAAAK,SAAA;EACpB,IAAMC,GAAG,GAAGX,MAAM,CAA2B,IAAI,CAAC;EAElD,oBACEF,KAAA,CAAAc,aAAA,CAACC,SAAS,EAAAC,QAAA;IAACH,GAAG,EAAEf,WAAW,CAACe,GAAG,EAAEL,YAAY,CAAS;IAACS,EAAE,EAAC;EAAO,GAAKP,IAAI,GACvED,QAAQ,CACC;AAEhB,CAAC,CAAC;AAEFH,uBAAuB,CAACY,WAAW,GAAG,yBAAyB;AAE/D,IAAMH,SAAS,GAAGZ,MAAM,CAACC,SAAS,CAAC,CAAAe,UAAA;EAAAD,WAAA;EAAAE,WAAA;AAAA,oFAOXrB,QAAQ,CAAC,cAAc,CAAC,CAE/C"}
1
+ {"version":3,"file":"AutocompleteInputOption.js","names":["composeRefs","themeGet","React","forwardRef","useRef","styled","Clickable","AutocompleteInputOption","_ref","forwardedRef","children","rest","_objectWithoutProperties","_excluded","ref","createElement","Container","_extends","bg","displayName","withConfig","componentId"],"sources":["../../../../src/elements/AutocompleteInput/AutocompleteInputOption.tsx"],"sourcesContent":["import composeRefs from \"@seznam/compose-react-refs\"\nimport { themeGet } from \"@styled-system/theme-get\"\nimport React, { forwardRef, useRef } from \"react\"\nimport styled from \"styled-components\"\nimport { Clickable, ClickableProps } from \"../Clickable\"\n\nexport type AutocompleteInputOptionProps = ClickableProps\n\nexport const AutocompleteInputOption = forwardRef<\n HTMLButtonElement,\n AutocompleteInputOptionProps\n>(({ children, ...rest }, forwardedRef) => {\n const ref = useRef<HTMLButtonElement | null>(null)\n\n return (\n <Container ref={composeRefs(ref, forwardedRef) as any} bg=\"mono0\" {...rest}>\n {children}\n </Container>\n )\n})\n\nAutocompleteInputOption.displayName = \"AutocompleteInputOption\"\n\nconst Container = styled(Clickable)`\n display: block;\n width: 100%;\n\n &:focus,\n &:active {\n outline: 0;\n background-color: ${themeGet(\"colors.mono5\")};\n }\n`\n"],"mappings":";;;;AAAA,OAAOA,WAAW,MAAM,4BAA4B;AACpD,SAASC,QAAQ,QAAQ,0BAA0B;AACnD,OAAOC,KAAK,IAAIC,UAAU,EAAEC,MAAM,QAAQ,OAAO;AACjD,OAAOC,MAAM,MAAM,mBAAmB;AACtC,SAASC,SAAS;AAIlB,OAAO,IAAMC,uBAAuB,gBAAGJ,UAAU,CAG/C,UAAAK,IAAA,EAAwBC,YAAY,EAAK;EAAA,IAAtCC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IAAKC,IAAI,GAAAC,wBAAA,CAAAJ,IAAA,EAAAK,SAAA;EACpB,IAAMC,GAAG,GAAGV,MAAM,CAA2B,IAAI,CAAC;EAElD,oBACEF,KAAA,CAAAa,aAAA,CAACC,SAAS,EAAAC,QAAA;IAACH,GAAG,EAAEd,WAAW,CAACc,GAAG,EAAEL,YAAY,CAAS;IAACS,EAAE,EAAC;EAAO,GAAKP,IAAI,GACvED,QAAQ,CACC;AAEhB,CAAC,CAAC;AAEFH,uBAAuB,CAACY,WAAW,GAAG,yBAAyB;AAE/D,IAAMH,SAAS,GAAGX,MAAM,CAACC,SAAS,CAAC,CAAAc,UAAA;EAAAD,WAAA;EAAAE,WAAA;AAAA,oFAOXpB,QAAQ,CAAC,cAAc,CAAC,CAE/C"}
@@ -3,7 +3,7 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
3
3
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
4
4
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
5
5
  import React from "react";
6
- import { Text, TextProps } from "../Text";
6
+ import { Text } from "../Text";
7
7
  export var AutocompleteInputOptionLabel = function AutocompleteInputOptionLabel(_ref) {
8
8
  var text = _ref.text,
9
9
  rest = _objectWithoutProperties(_ref, _excluded);
@@ -1 +1 @@
1
- {"version":3,"file":"AutocompleteInputOptionLabel.js","names":["React","Text","TextProps","AutocompleteInputOptionLabel","_ref","text","rest","_objectWithoutProperties","_excluded","createElement","_extends","variant","lineHeight","p","overflowEllipsis","displayName"],"sources":["../../../../src/elements/AutocompleteInput/AutocompleteInputOptionLabel.tsx"],"sourcesContent":["import React from \"react\"\nimport { Text, TextProps } from \"../Text\"\n\nexport interface AutocompleteInputOptionLabelProps extends TextProps {\n text: string\n}\n\nexport const AutocompleteInputOptionLabel: React.FC<React.PropsWithChildren<AutocompleteInputOptionLabelProps>> = ({\n text,\n ...rest\n}) => {\n return (\n <Text variant=\"sm-display\" lineHeight={1} p={2} overflowEllipsis {...rest}>\n {text}\n </Text>\n )\n}\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,SAAS;AAMxB,OAAO,IAAMC,4BAAkG,GAAG,SAArGA,4BAAkGA,CAAAC,IAAA,EAGzG;EAAA,IAFJC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IACDC,IAAI,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAEP,oBACER,KAAA,CAAAS,aAAA,CAACR,IAAI,EAAAS,QAAA;IAACC,OAAO,EAAC,YAAY;IAACC,UAAU,EAAE,CAAE;IAACC,CAAC,EAAE,CAAE;IAACC,gBAAgB;EAAA,GAAKR,IAAI,GACtED,IAAI,CACA;AAEX,CAAC;AATYF,4BAAkG,CAAAY,WAAA"}
1
+ {"version":3,"file":"AutocompleteInputOptionLabel.js","names":["React","Text","AutocompleteInputOptionLabel","_ref","text","rest","_objectWithoutProperties","_excluded","createElement","_extends","variant","lineHeight","p","overflowEllipsis","displayName"],"sources":["../../../../src/elements/AutocompleteInput/AutocompleteInputOptionLabel.tsx"],"sourcesContent":["import React from \"react\"\nimport { Text, TextProps } from \"../Text\"\n\nexport interface AutocompleteInputOptionLabelProps extends TextProps {\n text: string\n}\n\nexport const AutocompleteInputOptionLabel: React.FC<React.PropsWithChildren<AutocompleteInputOptionLabelProps>> = ({\n text,\n ...rest\n}) => {\n return (\n <Text variant=\"sm-display\" lineHeight={1} p={2} overflowEllipsis {...rest}>\n {text}\n </Text>\n )\n}\n"],"mappings":";;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI;AAMb,OAAO,IAAMC,4BAAkG,GAAG,SAArGA,4BAAkGA,CAAAC,IAAA,EAGzG;EAAA,IAFJC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IACDC,IAAI,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAEP,oBACEP,KAAA,CAAAQ,aAAA,CAACP,IAAI,EAAAQ,QAAA;IAACC,OAAO,EAAC,YAAY;IAACC,UAAU,EAAE,CAAE;IAACC,CAAC,EAAE,CAAE;IAACC,gBAAgB;EAAA,GAAKR,IAAI,GACtED,IAAI,CACA;AAEX,CAAC;AATYF,4BAAkG,CAAAY,WAAA"}
@@ -8,11 +8,10 @@ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefine
8
8
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
9
9
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
10
10
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
11
- import { TextVariant } from "@artsy/palette-tokens/dist/typography/v3";
12
11
  import React, { useState } from "react";
13
12
  import { splitBoxProps } from "../Box";
14
- import { Flex, FlexProps } from "../Flex";
15
- import { Image, ImageProps } from "../Image";
13
+ import { Flex } from "../Flex";
14
+ import { Image } from "../Image";
16
15
  import { Text } from "../Text";
17
16
  var LENGTHS = {
18
17
  xxs: 2,
@@ -1 +1 @@
1
- {"version":3,"file":"Avatar.js","names":["TextVariant","React","useState","splitBoxProps","Flex","FlexProps","Image","ImageProps","Text","LENGTHS","xxs","xs","sm","md","TOKENS","fontWeight","color","bg","diameter","variant","Avatar","_ref","_TOKENS$size","src","initials","_ref$size","size","_ref$lazyLoad","lazyLoad","rest","_objectWithoutProperties","_excluded","_useState","_useState2","_slicedToArray","mode","setMode","_splitBoxProps","_splitBoxProps2","boxProps","imageProps","_ref2","createElement","_extends","border","borderColor","borderRadius","alignItems","justifyContent","position","overflow","flexShrink","lineHeight","slice","top","left","width","height","alt","onError","displayName"],"sources":["../../../../src/elements/Avatar/Avatar.tsx"],"sourcesContent":["import { TextVariant } from \"@artsy/palette-tokens/dist/typography/v3\"\nimport React, { useState } from \"react\"\nimport { splitBoxProps } from \"../Box\"\nimport { Flex, FlexProps } from \"../Flex\"\nimport { Image, ImageProps } from \"../Image\"\nimport { Text } from \"../Text\"\n\nexport interface AvatarProps extends FlexProps, Partial<ImageProps> {\n /** If an image is missing, show initials instead */\n initials?: string\n /** The size of the Avatar */\n size?: \"xxs\" | \"xs\" | \"sm\" | \"md\"\n}\n\nconst LENGTHS = {\n xxs: 2,\n xs: 2,\n sm: 3,\n md: 4,\n}\n\nconst TOKENS = {\n fontWeight: \"normal\",\n color: \"mono100\",\n bg: \"transparent\",\n xxs: {\n diameter: 30,\n variant: \"xs\" as TextVariant,\n },\n xs: {\n diameter: 45,\n variant: \"sm-display\" as TextVariant,\n },\n sm: {\n diameter: 70,\n variant: \"md\" as TextVariant,\n },\n md: {\n diameter: 100,\n variant: \"lg-display\" as TextVariant,\n },\n}\n\n/** An circular Avatar component containing an image or initials */\nexport const Avatar: React.FC<React.PropsWithChildren<AvatarProps>> = ({\n src,\n initials,\n size = \"md\",\n lazyLoad = false,\n ...rest\n}) => {\n const [mode, setMode] = useState<\"OK\" | \"Error\">(\"OK\")\n\n const [boxProps, imageProps] = splitBoxProps(rest)\n\n const { diameter, variant } = TOKENS[size] ?? TOKENS.sm\n\n return (\n <Flex\n size={diameter}\n bg={TOKENS.bg}\n border={src ? \"transparent\" : \"1px solid\"}\n borderColor=\"mono15\"\n borderRadius=\"50%\"\n alignItems=\"center\"\n justifyContent=\"center\"\n position=\"relative\"\n overflow=\"hidden\"\n flexShrink={0}\n {...boxProps}\n >\n {initials && (\n <Text\n variant={variant}\n fontWeight={TOKENS.fontWeight}\n color={TOKENS.color}\n lineHeight={1}\n >\n {initials.slice(0, LENGTHS[size])}\n </Text>\n )}\n\n {src && mode !== \"Error\" && (\n <Flex position=\"absolute\" top={0} left={0} width=\"100%\" height=\"100%\">\n <Image\n src={src}\n width=\"100%\"\n height=\"100%\"\n lazyLoad={lazyLoad}\n alt={initials ?? \"\"}\n onError={() => {\n setMode(\"Error\")\n }}\n {...imageProps}\n />\n </Flex>\n )}\n </Flex>\n )\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Avatar.js","names":["React","useState","splitBoxProps","Flex","Image","Text","LENGTHS","xxs","xs","sm","md","TOKENS","fontWeight","color","bg","diameter","variant","Avatar","_ref","_TOKENS$size","src","initials","_ref$size","size","_ref$lazyLoad","lazyLoad","rest","_objectWithoutProperties","_excluded","_useState","_useState2","_slicedToArray","mode","setMode","_splitBoxProps","_splitBoxProps2","boxProps","imageProps","_ref2","createElement","_extends","border","borderColor","borderRadius","alignItems","justifyContent","position","overflow","flexShrink","lineHeight","slice","top","left","width","height","alt","onError","displayName"],"sources":["../../../../src/elements/Avatar/Avatar.tsx"],"sourcesContent":["import { TextVariant } from \"@artsy/palette-tokens/dist/typography/v3\"\nimport React, { useState } from \"react\"\nimport { splitBoxProps } from \"../Box\"\nimport { Flex, FlexProps } from \"../Flex\"\nimport { Image, ImageProps } from \"../Image\"\nimport { Text } from \"../Text\"\n\nexport interface AvatarProps extends FlexProps, Partial<ImageProps> {\n /** If an image is missing, show initials instead */\n initials?: string\n /** The size of the Avatar */\n size?: \"xxs\" | \"xs\" | \"sm\" | \"md\"\n}\n\nconst LENGTHS = {\n xxs: 2,\n xs: 2,\n sm: 3,\n md: 4,\n}\n\nconst TOKENS = {\n fontWeight: \"normal\",\n color: \"mono100\",\n bg: \"transparent\",\n xxs: {\n diameter: 30,\n variant: \"xs\" as TextVariant,\n },\n xs: {\n diameter: 45,\n variant: \"sm-display\" as TextVariant,\n },\n sm: {\n diameter: 70,\n variant: \"md\" as TextVariant,\n },\n md: {\n diameter: 100,\n variant: \"lg-display\" as TextVariant,\n },\n}\n\n/** An circular Avatar component containing an image or initials */\nexport const Avatar: React.FC<React.PropsWithChildren<AvatarProps>> = ({\n src,\n initials,\n size = \"md\",\n lazyLoad = false,\n ...rest\n}) => {\n const [mode, setMode] = useState<\"OK\" | \"Error\">(\"OK\")\n\n const [boxProps, imageProps] = splitBoxProps(rest)\n\n const { diameter, variant } = TOKENS[size] ?? TOKENS.sm\n\n return (\n <Flex\n size={diameter}\n bg={TOKENS.bg}\n border={src ? \"transparent\" : \"1px solid\"}\n borderColor=\"mono15\"\n borderRadius=\"50%\"\n alignItems=\"center\"\n justifyContent=\"center\"\n position=\"relative\"\n overflow=\"hidden\"\n flexShrink={0}\n {...boxProps}\n >\n {initials && (\n <Text\n variant={variant}\n fontWeight={TOKENS.fontWeight}\n color={TOKENS.color}\n lineHeight={1}\n >\n {initials.slice(0, LENGTHS[size])}\n </Text>\n )}\n\n {src && mode !== \"Error\" && (\n <Flex position=\"absolute\" top={0} left={0} width=\"100%\" height=\"100%\">\n <Image\n src={src}\n width=\"100%\"\n height=\"100%\"\n lazyLoad={lazyLoad}\n alt={initials ?? \"\"}\n onError={() => {\n setMode(\"Error\")\n }}\n {...imageProps}\n />\n </Flex>\n )}\n </Flex>\n )\n}\n"],"mappings":"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"}
@@ -13,7 +13,7 @@ import styled from "styled-components";
13
13
  import { variant } from "styled-system";
14
14
  import CloseIcon from "@artsy/icons/CloseIcon";
15
15
  import { Clickable } from "../Clickable";
16
- import { Flex, FlexProps } from "../Flex";
16
+ import { Flex } from "../Flex";
17
17
  import { Text } from "../Text";
18
18
  /** A banner */
19
19
  export var Banner = function Banner(_ref) {
@@ -1 +1 @@
1
- {"version":3,"file":"Banner.js","names":["React","useState","styled","variant","CloseIcon","Clickable","Flex","FlexProps","Text","Banner","_ref","_ref$dismissable","dismissable","_ref$variant","onClose","children","rest","_objectWithoutProperties","_excluded","_useState","_useState2","_slicedToArray","dismissed","setDismissed","handleClick","createElement","Container","_extends","position","py","px","display","alignItems","justifyContent","textAlign","flex","top","right","bottom","p","color","onClick","style","fill","displayName","BANNER_VARIANTS","defaultLight","backgroundColor","defaultDark","success","error","brand","withConfig","componentId","variants"],"sources":["../../../../src/elements/Banner/Banner.tsx"],"sourcesContent":["import React, { useState } from \"react\"\nimport styled from \"styled-components\"\nimport { variant } from \"styled-system\"\nimport CloseIcon from \"@artsy/icons/CloseIcon\"\nimport { Clickable } from \"../Clickable\"\nimport { Flex, FlexProps } from \"../Flex\"\nimport { Text } from \"../Text\"\n\nexport type BannerVariant = keyof typeof BANNER_VARIANTS\n\nexport interface BannerProps extends FlexProps {\n variant?: BannerVariant\n dismissable?: boolean\n onClose?: () => void\n}\n\n/** A banner */\nexport const Banner: React.FC<React.PropsWithChildren<BannerProps>> = ({\n dismissable = false,\n variant = \"defaultLight\",\n onClose,\n children,\n ...rest\n}) => {\n const [dismissed, setDismissed] = useState(false)\n\n const handleClick = () => {\n if (onClose) {\n onClose()\n }\n setDismissed(true)\n }\n\n if (dismissed) return null\n\n return (\n <Container position=\"relative\" py={1} px={4} variant={variant} {...rest}>\n <Text\n variant=\"xs\"\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"center\"\n textAlign=\"center\"\n flex={1}\n >\n {children}\n </Text>\n\n {dismissable && (\n <Clickable\n position=\"absolute\"\n top={0}\n right={0}\n bottom={0}\n p={1}\n display=\"flex\"\n alignItems=\"center\"\n color=\"currentColor\"\n onClick={handleClick}\n >\n <CloseIcon style={{ fill: \"currentcolor\" }} />\n </Clickable>\n )}\n </Container>\n )\n}\n\nexport const BANNER_VARIANTS = {\n defaultLight: {\n backgroundColor: \"mono10\",\n color: \"mono100\",\n },\n defaultDark: {\n backgroundColor: \"mono100\",\n color: \"mono0\",\n },\n success: {\n backgroundColor: \"green100\",\n color: \"mono0\",\n },\n error: {\n backgroundColor: \"red100\",\n color: \"mono0\",\n },\n brand: {\n backgroundColor: \"brand\",\n color: \"mono0\",\n },\n}\n\nconst Container = styled(Flex)<{ variant: BannerVariant }>`\n ${variant({ variants: BANNER_VARIANTS })}\n`\n"],"mappings":"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"}
1
+ {"version":3,"file":"Banner.js","names":["React","useState","styled","variant","CloseIcon","Clickable","Flex","Text","Banner","_ref","_ref$dismissable","dismissable","_ref$variant","onClose","children","rest","_objectWithoutProperties","_excluded","_useState","_useState2","_slicedToArray","dismissed","setDismissed","handleClick","createElement","Container","_extends","position","py","px","display","alignItems","justifyContent","textAlign","flex","top","right","bottom","p","color","onClick","style","fill","displayName","BANNER_VARIANTS","defaultLight","backgroundColor","defaultDark","success","error","brand","withConfig","componentId","variants"],"sources":["../../../../src/elements/Banner/Banner.tsx"],"sourcesContent":["import React, { useState } from \"react\"\nimport styled from \"styled-components\"\nimport { variant } from \"styled-system\"\nimport CloseIcon from \"@artsy/icons/CloseIcon\"\nimport { Clickable } from \"../Clickable\"\nimport { Flex, FlexProps } from \"../Flex\"\nimport { Text } from \"../Text\"\n\nexport type BannerVariant = keyof typeof BANNER_VARIANTS\n\nexport interface BannerProps extends FlexProps {\n variant?: BannerVariant\n dismissable?: boolean\n onClose?: () => void\n}\n\n/** A banner */\nexport const Banner: React.FC<React.PropsWithChildren<BannerProps>> = ({\n dismissable = false,\n variant = \"defaultLight\",\n onClose,\n children,\n ...rest\n}) => {\n const [dismissed, setDismissed] = useState(false)\n\n const handleClick = () => {\n if (onClose) {\n onClose()\n }\n setDismissed(true)\n }\n\n if (dismissed) return null\n\n return (\n <Container position=\"relative\" py={1} px={4} variant={variant} {...rest}>\n <Text\n variant=\"xs\"\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"center\"\n textAlign=\"center\"\n flex={1}\n >\n {children}\n </Text>\n\n {dismissable && (\n <Clickable\n position=\"absolute\"\n top={0}\n right={0}\n bottom={0}\n p={1}\n display=\"flex\"\n alignItems=\"center\"\n color=\"currentColor\"\n onClick={handleClick}\n >\n <CloseIcon style={{ fill: \"currentcolor\" }} />\n </Clickable>\n )}\n </Container>\n )\n}\n\nexport const BANNER_VARIANTS = {\n defaultLight: {\n backgroundColor: \"mono10\",\n color: \"mono100\",\n },\n defaultDark: {\n backgroundColor: \"mono100\",\n color: \"mono0\",\n },\n success: {\n backgroundColor: \"green100\",\n color: \"mono0\",\n },\n error: {\n backgroundColor: \"red100\",\n color: \"mono0\",\n },\n brand: {\n backgroundColor: \"brand\",\n color: \"mono0\",\n },\n}\n\nconst Container = styled(Flex)<{ variant: BannerVariant }>`\n ${variant({ variants: BANNER_VARIANTS })}\n`\n"],"mappings":"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"}
@@ -1,7 +1,6 @@
1
- import React from "react";
2
1
  import styled, { css } from "styled-components";
3
2
  import { Clickable } from "../Clickable";
4
- import { Text, TextProps } from "../Text";
3
+ import { Text } from "../Text";
5
4
  import { STATES } from "./tokens";
6
5
 
7
6
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"BaseTab.js","names":["React","styled","css","Clickable","Text","TextProps","STATES","BaseTab","withConfig","displayName","componentId","props","default","hover","focus","active","defaultProps","variant","mb","alignItems","justifyContent","textAlign","__Ignore__"],"sources":["../../../../src/elements/BaseTabs/BaseTab.tsx"],"sourcesContent":["import React from \"react\"\nimport styled, { css } from \"styled-components\"\nimport { Clickable } from \"../Clickable\"\nimport { Text, TextProps } from \"../Text\"\nimport { STATES } from \"./tokens\"\n\n/**\n * Utilize as=\"a\" or as={Component} to alter functionality\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type BaseTabProps<C extends React.ComponentType<React.PropsWithChildren<unknown>> = any> = TextProps & {\n active?: boolean\n focus?: boolean\n hover?: boolean\n} & React.ComponentPropsWithoutRef<C> & { as?: C }\n\n/**\n * Extends `Text`. Should always be nested within a `BaseTabs` container.\n *\n * Use the `as` prop to alter behavior.\n * E.g.: `<BaseTab as={RouterLink} to=\"/foo\">Foo</BaseTab>`\n * or `<BaseTab as={Clickable} onClick={handleClick}>Foo</BaseTab>`\n */\nexport const BaseTab = styled(Text)<BaseTabProps>`\n display: flex;\n width: 100%;\n position: relative;\n text-decoration: none;\n white-space: nowrap;\n z-index: 1;\n\n ${(props) => {\n return css`\n ${STATES.default}\n ${props.hover && STATES.hover}\n ${props.focus && STATES.focus}\n ${props.active && STATES.active}\n\n &:hover:not(:disabled) {\n ${STATES.hover}\n }\n\n &:focus {\n outline: 0;\n ${STATES.focus}\n }\n `\n }}\n`\n\nBaseTab.defaultProps = {\n variant: \"sm\",\n mb: \"-1px\",\n alignItems: \"flex-start\",\n justifyContent: \"center\",\n textAlign: \"center\",\n}\n\nBaseTab.displayName = \"BaseTab\"\n\n/**\n * So this is interesting: We can trick styled-components into correcting the CSS specificity (Text > Clickable)\n * by simply including a Clickable here.\n */\n// @ts-expect-error MIGRATE_STRICT_MODE\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst __Ignore__ = Clickable\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,MAAM,IAAIC,GAAG,QAAQ,mBAAmB;AAC/C,SAASC,SAAS;AAClB,SAASC,IAAI,EAAEC,SAAS;AACxB,SAASC,MAAM;;AAEf;AACA;AACA;AACA;;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,IAAMC,OAAO,GAAGN,MAAM,CAACG,IAAI,CAAC,CAAAI,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,yGAQ/B,UAACC,KAAK,EAAK;EACX,OAAOT,GAAG,8EACNI,MAAM,CAACM,OAAO,EACdD,KAAK,CAACE,KAAK,IAAIP,MAAM,CAACO,KAAK,EAC3BF,KAAK,CAACG,KAAK,IAAIR,MAAM,CAACQ,KAAK,EAC3BH,KAAK,CAACI,MAAM,IAAIT,MAAM,CAACS,MAAM,EAG3BT,MAAM,CAACO,KAAK,EAKZP,MAAM,CAACQ,KAAK;AAGpB,CAAC,CACF;AAEDP,OAAO,CAACS,YAAY,GAAG;EACrBC,OAAO,EAAE,IAAI;EACbC,EAAE,EAAE,MAAM;EACVC,UAAU,EAAE,YAAY;EACxBC,cAAc,EAAE,QAAQ;EACxBC,SAAS,EAAE;AACb,CAAC;AAEDd,OAAO,CAACE,WAAW,GAAG,SAAS;;AAE/B;AACA;AACA;AACA;AACA;AACA;AACA,IAAMa,UAAU,GAAGnB,SAAS"}
1
+ {"version":3,"file":"BaseTab.js","names":["styled","css","Clickable","Text","STATES","BaseTab","withConfig","displayName","componentId","props","default","hover","focus","active","defaultProps","variant","mb","alignItems","justifyContent","textAlign","__Ignore__"],"sources":["../../../../src/elements/BaseTabs/BaseTab.tsx"],"sourcesContent":["import React from \"react\"\nimport styled, { css } from \"styled-components\"\nimport { Clickable } from \"../Clickable\"\nimport { Text, TextProps } from \"../Text\"\nimport { STATES } from \"./tokens\"\n\n/**\n * Utilize as=\"a\" or as={Component} to alter functionality\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type BaseTabProps<C extends React.ComponentType<React.PropsWithChildren<unknown>> = any> = TextProps & {\n active?: boolean\n focus?: boolean\n hover?: boolean\n} & React.ComponentPropsWithoutRef<C> & { as?: C }\n\n/**\n * Extends `Text`. Should always be nested within a `BaseTabs` container.\n *\n * Use the `as` prop to alter behavior.\n * E.g.: `<BaseTab as={RouterLink} to=\"/foo\">Foo</BaseTab>`\n * or `<BaseTab as={Clickable} onClick={handleClick}>Foo</BaseTab>`\n */\nexport const BaseTab = styled(Text)<BaseTabProps>`\n display: flex;\n width: 100%;\n position: relative;\n text-decoration: none;\n white-space: nowrap;\n z-index: 1;\n\n ${(props) => {\n return css`\n ${STATES.default}\n ${props.hover && STATES.hover}\n ${props.focus && STATES.focus}\n ${props.active && STATES.active}\n\n &:hover:not(:disabled) {\n ${STATES.hover}\n }\n\n &:focus {\n outline: 0;\n ${STATES.focus}\n }\n `\n }}\n`\n\nBaseTab.defaultProps = {\n variant: \"sm\",\n mb: \"-1px\",\n alignItems: \"flex-start\",\n justifyContent: \"center\",\n textAlign: \"center\",\n}\n\nBaseTab.displayName = \"BaseTab\"\n\n/**\n * So this is interesting: We can trick styled-components into correcting the CSS specificity (Text > Clickable)\n * by simply including a Clickable here.\n */\n// @ts-expect-error MIGRATE_STRICT_MODE\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst __Ignore__ = Clickable\n"],"mappings":"AACA,OAAOA,MAAM,IAAIC,GAAG,QAAQ,mBAAmB;AAC/C,SAASC,SAAS;AAClB,SAASC,IAAI;AACb,SAASC,MAAM;;AAEf;AACA;AACA;AACA;;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,IAAMC,OAAO,GAAGL,MAAM,CAACG,IAAI,CAAC,CAAAG,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,yGAQ/B,UAACC,KAAK,EAAK;EACX,OAAOR,GAAG,8EACNG,MAAM,CAACM,OAAO,EACdD,KAAK,CAACE,KAAK,IAAIP,MAAM,CAACO,KAAK,EAC3BF,KAAK,CAACG,KAAK,IAAIR,MAAM,CAACQ,KAAK,EAC3BH,KAAK,CAACI,MAAM,IAAIT,MAAM,CAACS,MAAM,EAG3BT,MAAM,CAACO,KAAK,EAKZP,MAAM,CAACQ,KAAK;AAGpB,CAAC,CACF;AAEDP,OAAO,CAACS,YAAY,GAAG;EACrBC,OAAO,EAAE,IAAI;EACbC,EAAE,EAAE,MAAM;EACVC,UAAU,EAAE,YAAY;EACxBC,cAAc,EAAE,QAAQ;EACxBC,SAAS,EAAE;AACb,CAAC;AAEDd,OAAO,CAACE,WAAW,GAAG,SAAS;;AAE/B;AACA;AACA;AACA;AACA;AACA;AACA,IAAMa,UAAU,GAAGlB,SAAS"}
@@ -4,7 +4,7 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
4
4
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
5
5
  import React, { forwardRef, useMemo } from "react";
6
6
  import { flattenChildren } from "../../helpers/flattenChildren";
7
- import { Box, BoxProps } from "../Box";
7
+ import { Box } from "../Box";
8
8
  import { HorizontalOverflow } from "../HorizontalOverflow/HorizontalOverflow";
9
9
  import { Join } from "../Join";
10
10
 
@@ -1 +1 @@
1
- {"version":3,"file":"BaseTabs.js","names":["React","forwardRef","useMemo","flattenChildren","Box","BoxProps","HorizontalOverflow","Join","BaseTabs","_ref","forwardedRef","fill","children","rest","_objectWithoutProperties","_excluded","cells","createElement","_extends","ref","borderBottom","borderBottomColor","separator","Fragment","map","child","i","key","display","textAlign","flex","undefined","displayName"],"sources":["../../../../src/elements/BaseTabs/BaseTabs.tsx"],"sourcesContent":["import React, { forwardRef, useMemo } from \"react\"\nimport { flattenChildren } from \"../../helpers/flattenChildren\"\nimport { Box, BoxProps } from \"../Box\"\nimport { HorizontalOverflow } from \"../HorizontalOverflow/HorizontalOverflow\"\nimport { Join } from \"../Join\"\n\n/** Extends `Box` */\nexport type BaseTabsProps = BoxProps &\n Omit<React.HTMLAttributes<HTMLDivElement>, \"onChange\"> & {\n /**\n * Enable if tabs should fill the width of the container\n * (as opposed to left-align)\n */\n fill?: boolean\n children: React.ReactNode\n }\n\n/** Extends `Box`, provides configurable gutter */\nexport const BaseTabs: React.ForwardRefExoticComponent<\n BaseTabsProps & React.RefAttributes<HTMLDivElement>\n> = forwardRef(({ fill, children, ...rest }, forwardedRef) => {\n const cells = useMemo(() => flattenChildren(children), [children])\n\n return (\n <HorizontalOverflow\n ref={forwardedRef}\n borderBottom=\"1px solid\"\n borderBottomColor=\"mono10\"\n {...rest}\n >\n <Join separator={<></>}>\n {cells.map((child, i) => {\n return (\n <Box\n key={i}\n display=\"inline-flex\"\n textAlign=\"center\"\n flex={fill ? 1 : undefined}\n >\n {child}\n </Box>\n )\n })}\n </Join>\n </HorizontalOverflow>\n )\n})\n\nBaseTabs.displayName = \"BaseTabs\"\n"],"mappings":";;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAClD,SAASC,eAAe;AACxB,SAASC,GAAG,EAAEC,QAAQ;AACtB,SAASC,kBAAkB;AAC3B,SAASC,IAAI;;AAEb;;AAWA;AACA,OAAO,IAAMC,QAEZ,gBAAGP,UAAU,CAAC,UAAAQ,IAAA,EAA8BC,YAAY,EAAK;EAAA,IAA5CC,IAAI,GAAAF,IAAA,CAAJE,IAAI;IAAEC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IAAKC,IAAI,GAAAC,wBAAA,CAAAL,IAAA,EAAAM,SAAA;EACvC,IAAMC,KAAK,GAAGd,OAAO,CAAC;IAAA,OAAMC,eAAe,CAACS,QAAQ,CAAC;EAAA,GAAE,CAACA,QAAQ,CAAC,CAAC;EAElE,oBACEZ,KAAA,CAAAiB,aAAA,CAACX,kBAAkB,EAAAY,QAAA;IACjBC,GAAG,EAAET,YAAa;IAClBU,YAAY,EAAC,WAAW;IACxBC,iBAAiB,EAAC;EAAQ,GACtBR,IAAI,gBAERb,KAAA,CAAAiB,aAAA,CAACV,IAAI;IAACe,SAAS,eAAEtB,KAAA,CAAAiB,aAAA,CAAAjB,KAAA,CAAAuB,QAAA;EAAM,GACpBP,KAAK,CAACQ,GAAG,CAAC,UAACC,KAAK,EAAEC,CAAC,EAAK;IACvB,oBACE1B,KAAA,CAAAiB,aAAA,CAACb,GAAG;MACFuB,GAAG,EAAED,CAAE;MACPE,OAAO,EAAC,aAAa;MACrBC,SAAS,EAAC,QAAQ;MAClBC,IAAI,EAAEnB,IAAI,GAAG,CAAC,GAAGoB;IAAU,GAE1BN,KAAK,CACF;EAEV,CAAC,CAAC,CACG,CACY;AAEzB,CAAC,CAAC;AAEFjB,QAAQ,CAACwB,WAAW,GAAG,UAAU"}
1
+ {"version":3,"file":"BaseTabs.js","names":["React","forwardRef","useMemo","flattenChildren","Box","HorizontalOverflow","Join","BaseTabs","_ref","forwardedRef","fill","children","rest","_objectWithoutProperties","_excluded","cells","createElement","_extends","ref","borderBottom","borderBottomColor","separator","Fragment","map","child","i","key","display","textAlign","flex","undefined","displayName"],"sources":["../../../../src/elements/BaseTabs/BaseTabs.tsx"],"sourcesContent":["import React, { forwardRef, useMemo } from \"react\"\nimport { flattenChildren } from \"../../helpers/flattenChildren\"\nimport { Box, BoxProps } from \"../Box\"\nimport { HorizontalOverflow } from \"../HorizontalOverflow/HorizontalOverflow\"\nimport { Join } from \"../Join\"\n\n/** Extends `Box` */\nexport type BaseTabsProps = BoxProps &\n Omit<React.HTMLAttributes<HTMLDivElement>, \"onChange\"> & {\n /**\n * Enable if tabs should fill the width of the container\n * (as opposed to left-align)\n */\n fill?: boolean\n children: React.ReactNode\n }\n\n/** Extends `Box`, provides configurable gutter */\nexport const BaseTabs: React.ForwardRefExoticComponent<\n BaseTabsProps & React.RefAttributes<HTMLDivElement>\n> = forwardRef(({ fill, children, ...rest }, forwardedRef) => {\n const cells = useMemo(() => flattenChildren(children), [children])\n\n return (\n <HorizontalOverflow\n ref={forwardedRef}\n borderBottom=\"1px solid\"\n borderBottomColor=\"mono10\"\n {...rest}\n >\n <Join separator={<></>}>\n {cells.map((child, i) => {\n return (\n <Box\n key={i}\n display=\"inline-flex\"\n textAlign=\"center\"\n flex={fill ? 1 : undefined}\n >\n {child}\n </Box>\n )\n })}\n </Join>\n </HorizontalOverflow>\n )\n})\n\nBaseTabs.displayName = \"BaseTabs\"\n"],"mappings":";;;;AAAA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAClD,SAASC,eAAe;AACxB,SAASC,GAAG;AACZ,SAASC,kBAAkB;AAC3B,SAASC,IAAI;;AAEb;;AAWA;AACA,OAAO,IAAMC,QAEZ,gBAAGN,UAAU,CAAC,UAAAO,IAAA,EAA8BC,YAAY,EAAK;EAAA,IAA5CC,IAAI,GAAAF,IAAA,CAAJE,IAAI;IAAEC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IAAKC,IAAI,GAAAC,wBAAA,CAAAL,IAAA,EAAAM,SAAA;EACvC,IAAMC,KAAK,GAAGb,OAAO,CAAC;IAAA,OAAMC,eAAe,CAACQ,QAAQ,CAAC;EAAA,GAAE,CAACA,QAAQ,CAAC,CAAC;EAElE,oBACEX,KAAA,CAAAgB,aAAA,CAACX,kBAAkB,EAAAY,QAAA;IACjBC,GAAG,EAAET,YAAa;IAClBU,YAAY,EAAC,WAAW;IACxBC,iBAAiB,EAAC;EAAQ,GACtBR,IAAI,gBAERZ,KAAA,CAAAgB,aAAA,CAACV,IAAI;IAACe,SAAS,eAAErB,KAAA,CAAAgB,aAAA,CAAAhB,KAAA,CAAAsB,QAAA;EAAM,GACpBP,KAAK,CAACQ,GAAG,CAAC,UAACC,KAAK,EAAEC,CAAC,EAAK;IACvB,oBACEzB,KAAA,CAAAgB,aAAA,CAACZ,GAAG;MACFsB,GAAG,EAAED,CAAE;MACPE,OAAO,EAAC,aAAa;MACrBC,SAAS,EAAC,QAAQ;MAClBC,IAAI,EAAEnB,IAAI,GAAG,CAAC,GAAGoB;IAAU,GAE1BN,KAAK,CACF;EAEV,CAAC,CAAC,CACG,CACY;AAEzB,CAAC,CAAC;AAEFjB,QAAQ,CAACwB,WAAW,GAAG,UAAU"}