@mongodb-js/compass-components 1.29.3 → 1.30.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 (195) hide show
  1. package/lib/components/breadcrumb.js +1 -1
  2. package/lib/components/breadcrumb.js.map +1 -1
  3. package/lib/components/bson-value.js +4 -0
  4. package/lib/components/bson-value.js.map +1 -1
  5. package/lib/components/collapsible-field-set.js +4 -1
  6. package/lib/components/collapsible-field-set.js.map +1 -1
  7. package/lib/components/combobox/Chip.js +5 -2
  8. package/lib/components/combobox/Chip.js.map +1 -1
  9. package/lib/components/combobox/Combobox.d.ts +9 -0
  10. package/lib/components/combobox/Combobox.d.ts.map +1 -1
  11. package/lib/components/combobox/Combobox.js +225 -5
  12. package/lib/components/combobox/Combobox.js.map +1 -1
  13. package/lib/components/combobox/Combobox.styles.d.ts +15 -0
  14. package/lib/components/combobox/Combobox.styles.d.ts.map +1 -1
  15. package/lib/components/combobox/Combobox.styles.js +19 -2
  16. package/lib/components/combobox/Combobox.styles.js.map +1 -1
  17. package/lib/components/combobox/Combobox.types.d.ts +174 -0
  18. package/lib/components/combobox/Combobox.types.d.ts.map +1 -1
  19. package/lib/components/combobox/Combobox.types.js +20 -0
  20. package/lib/components/combobox/Combobox.types.js.map +1 -1
  21. package/lib/components/combobox/ComboboxMenu/ComboboxMenu.js +5 -0
  22. package/lib/components/combobox/ComboboxMenu/ComboboxMenu.js.map +1 -1
  23. package/lib/components/combobox/ComboboxMenu/Menu.styles.d.ts +4 -0
  24. package/lib/components/combobox/ComboboxMenu/Menu.styles.d.ts.map +1 -1
  25. package/lib/components/combobox/ComboboxMenu/Menu.styles.js +4 -0
  26. package/lib/components/combobox/ComboboxMenu/Menu.styles.js.map +1 -1
  27. package/lib/components/combobox/ComboboxOption.d.ts +3 -0
  28. package/lib/components/combobox/ComboboxOption.d.ts.map +1 -1
  29. package/lib/components/combobox/ComboboxOption.js +14 -0
  30. package/lib/components/combobox/ComboboxOption.js.map +1 -1
  31. package/lib/components/combobox/Menu.styles.d.ts +4 -0
  32. package/lib/components/combobox/Menu.styles.d.ts.map +1 -1
  33. package/lib/components/combobox/Menu.styles.js +7 -3
  34. package/lib/components/combobox/Menu.styles.js.map +1 -1
  35. package/lib/components/combobox/utils/OptionObjectUtils.d.ts +18 -0
  36. package/lib/components/combobox/utils/OptionObjectUtils.d.ts.map +1 -1
  37. package/lib/components/combobox/utils/OptionObjectUtils.js +18 -0
  38. package/lib/components/combobox/utils/OptionObjectUtils.js.map +1 -1
  39. package/lib/components/combobox/utils/flattenChildren.d.ts +8 -0
  40. package/lib/components/combobox/utils/flattenChildren.d.ts.map +1 -1
  41. package/lib/components/combobox/utils/flattenChildren.js +13 -1
  42. package/lib/components/combobox/utils/flattenChildren.js.map +1 -1
  43. package/lib/components/combobox/utils/getNameAndValue.d.ts +9 -0
  44. package/lib/components/combobox/utils/getNameAndValue.d.ts.map +1 -1
  45. package/lib/components/combobox/utils/getNameAndValue.js +10 -1
  46. package/lib/components/combobox/utils/getNameAndValue.js.map +1 -1
  47. package/lib/components/combobox/utils/wrapJSX.d.ts +12 -0
  48. package/lib/components/combobox/utils/wrapJSX.d.ts.map +1 -1
  49. package/lib/components/combobox/utils/wrapJSX.js +21 -0
  50. package/lib/components/combobox/utils/wrapJSX.js.map +1 -1
  51. package/lib/components/combobox-with-custom-option.js +2 -0
  52. package/lib/components/combobox-with-custom-option.js.map +1 -1
  53. package/lib/components/compass-components-provider.d.ts +23 -0
  54. package/lib/components/compass-components-provider.d.ts.map +1 -1
  55. package/lib/components/compass-components-provider.js +22 -1
  56. package/lib/components/compass-components-provider.js.map +1 -1
  57. package/lib/components/content-with-fallback.js +3 -0
  58. package/lib/components/content-with-fallback.js.map +1 -1
  59. package/lib/components/document-list/document-actions-group.js +10 -1
  60. package/lib/components/document-list/document-actions-group.js.map +1 -1
  61. package/lib/components/document-list/document-edit-actions-footer.js +3 -0
  62. package/lib/components/document-list/document-edit-actions-footer.js.map +1 -1
  63. package/lib/components/document-list/document.js +23 -1
  64. package/lib/components/document-list/document.js.map +1 -1
  65. package/lib/components/document-list/element-actions.js +2 -0
  66. package/lib/components/document-list/element-actions.js.map +1 -1
  67. package/lib/components/document-list/element-editors.js +51 -9
  68. package/lib/components/document-list/element-editors.js.map +1 -1
  69. package/lib/components/document-list/element.js +45 -5
  70. package/lib/components/document-list/element.js.map +1 -1
  71. package/lib/components/empty-content.js +1 -1
  72. package/lib/components/empty-content.js.map +1 -1
  73. package/lib/components/error-boundary.js +3 -0
  74. package/lib/components/error-boundary.js.map +1 -1
  75. package/lib/components/feedback-popover.js +3 -0
  76. package/lib/components/feedback-popover.js.map +1 -1
  77. package/lib/components/file-input.js +22 -3
  78. package/lib/components/file-input.js.map +1 -1
  79. package/lib/components/guide-cue/guide-cue-groups.js +3 -0
  80. package/lib/components/guide-cue/guide-cue-groups.js.map +1 -1
  81. package/lib/components/guide-cue/guide-cue-service.js +5 -0
  82. package/lib/components/guide-cue/guide-cue-service.js.map +1 -1
  83. package/lib/components/guide-cue/guide-cue.js +14 -1
  84. package/lib/components/guide-cue/guide-cue.js.map +1 -1
  85. package/lib/components/icons/favorite-icon.js +3 -1
  86. package/lib/components/icons/favorite-icon.js.map +1 -1
  87. package/lib/components/index-keys-badge.js +1 -0
  88. package/lib/components/index-keys-badge.js.map +1 -1
  89. package/lib/components/inline-definition.js +1 -0
  90. package/lib/components/inline-definition.js.map +1 -1
  91. package/lib/components/interactive-popover.d.ts +3 -0
  92. package/lib/components/interactive-popover.d.ts.map +1 -1
  93. package/lib/components/interactive-popover.js +6 -0
  94. package/lib/components/interactive-popover.js.map +1 -1
  95. package/lib/components/item-action-controls.d.ts +2 -1
  96. package/lib/components/item-action-controls.d.ts.map +1 -1
  97. package/lib/components/item-action-controls.js +31 -4
  98. package/lib/components/item-action-controls.js.map +1 -1
  99. package/lib/components/keyline-card.d.ts +7 -0
  100. package/lib/components/keyline-card.d.ts.map +1 -1
  101. package/lib/components/leafygreen.js +8 -0
  102. package/lib/components/leafygreen.js.map +1 -1
  103. package/lib/components/links/link.js +2 -0
  104. package/lib/components/links/link.js.map +1 -1
  105. package/lib/components/modals/modal-body.js +2 -0
  106. package/lib/components/modals/modal-body.js.map +1 -1
  107. package/lib/components/modals/modal.js +8 -0
  108. package/lib/components/modals/modal.js.map +1 -1
  109. package/lib/components/options-toggle.js +5 -1
  110. package/lib/components/options-toggle.js.map +1 -1
  111. package/lib/components/placeholder.js +1 -0
  112. package/lib/components/placeholder.js.map +1 -1
  113. package/lib/components/resize-handle.js +4 -0
  114. package/lib/components/resize-handle.js.map +1 -1
  115. package/lib/components/resizeable-sidebar.js +2 -0
  116. package/lib/components/resizeable-sidebar.js.map +1 -1
  117. package/lib/components/signal-popover.d.ts +19 -0
  118. package/lib/components/signal-popover.d.ts.map +1 -1
  119. package/lib/components/signal-popover.js +43 -3
  120. package/lib/components/signal-popover.js.map +1 -1
  121. package/lib/components/tab-nav-bar.d.ts +11 -4
  122. package/lib/components/tab-nav-bar.d.ts.map +1 -1
  123. package/lib/components/tab-nav-bar.js +14 -11
  124. package/lib/components/tab-nav-bar.js.map +1 -1
  125. package/lib/components/toast-body.js +1 -0
  126. package/lib/components/toast-body.js.map +1 -1
  127. package/lib/components/virtual-grid.d.ts +42 -0
  128. package/lib/components/virtual-grid.d.ts.map +1 -1
  129. package/lib/components/virtual-grid.js +3 -0
  130. package/lib/components/virtual-grid.js.map +1 -1
  131. package/lib/components/virtual-list.d.ts +69 -0
  132. package/lib/components/virtual-list.d.ts.map +1 -1
  133. package/lib/components/virtual-list.js +9 -1
  134. package/lib/components/virtual-list.js.map +1 -1
  135. package/lib/components/workspace-container.js +10 -0
  136. package/lib/components/workspace-container.js.map +1 -1
  137. package/lib/components/workspace-tabs/tab.js +15 -1
  138. package/lib/components/workspace-tabs/tab.js.map +1 -1
  139. package/lib/components/workspace-tabs/workspace-tabs.js +5 -1
  140. package/lib/components/workspace-tabs/workspace-tabs.js.map +1 -1
  141. package/lib/hooks/use-confirmation.js +12 -1
  142. package/lib/hooks/use-confirmation.js.map +1 -1
  143. package/lib/hooks/use-default-action.d.ts +8 -0
  144. package/lib/hooks/use-default-action.d.ts.map +1 -1
  145. package/lib/hooks/use-default-action.js +11 -1
  146. package/lib/hooks/use-default-action.js.map +1 -1
  147. package/lib/hooks/use-effect-on-change.d.ts +6 -0
  148. package/lib/hooks/use-effect-on-change.d.ts.map +1 -1
  149. package/lib/hooks/use-effect-on-change.js +18 -1
  150. package/lib/hooks/use-effect-on-change.js.map +1 -1
  151. package/lib/hooks/use-focus-ring.d.ts +19 -0
  152. package/lib/hooks/use-focus-ring.d.ts.map +1 -1
  153. package/lib/hooks/use-focus-ring.js +21 -0
  154. package/lib/hooks/use-focus-ring.js.map +1 -1
  155. package/lib/hooks/use-hotkeys.d.ts +14 -0
  156. package/lib/hooks/use-hotkeys.d.ts.map +1 -1
  157. package/lib/hooks/use-hotkeys.js +18 -3
  158. package/lib/hooks/use-hotkeys.js.map +1 -1
  159. package/lib/hooks/use-persisted-state.d.ts +9 -0
  160. package/lib/hooks/use-persisted-state.d.ts.map +1 -1
  161. package/lib/hooks/use-persisted-state.js +9 -0
  162. package/lib/hooks/use-persisted-state.js.map +1 -1
  163. package/lib/hooks/use-scrollbars.d.ts +7 -0
  164. package/lib/hooks/use-scrollbars.d.ts.map +1 -1
  165. package/lib/hooks/use-scrollbars.js +19 -0
  166. package/lib/hooks/use-scrollbars.js.map +1 -1
  167. package/lib/hooks/use-sort.js +6 -0
  168. package/lib/hooks/use-sort.js.map +1 -1
  169. package/lib/hooks/use-stacked-component.js +1 -0
  170. package/lib/hooks/use-stacked-component.js.map +1 -1
  171. package/lib/hooks/use-theme.js +10 -1
  172. package/lib/hooks/use-theme.js.map +1 -1
  173. package/lib/hooks/use-toast.d.ts +15 -0
  174. package/lib/hooks/use-toast.d.ts.map +1 -1
  175. package/lib/hooks/use-toast.js +30 -0
  176. package/lib/hooks/use-toast.js.map +1 -1
  177. package/lib/hooks/use-virtual-grid.d.ts +8 -0
  178. package/lib/hooks/use-virtual-grid.d.ts.map +1 -1
  179. package/lib/hooks/use-virtual-grid.js +29 -0
  180. package/lib/hooks/use-virtual-grid.js.map +1 -1
  181. package/lib/hooks/use-virtual-list-item-observer.js +23 -0
  182. package/lib/hooks/use-virtual-list-item-observer.js.map +1 -1
  183. package/lib/utils/format-date.js +2 -0
  184. package/lib/utils/format-date.js.map +1 -1
  185. package/lib/utils/merge-props.js +1 -0
  186. package/lib/utils/merge-props.js.map +1 -1
  187. package/lib/utils/rafraf.d.ts +10 -0
  188. package/lib/utils/rafraf.d.ts.map +1 -1
  189. package/lib/utils/rafraf.js +10 -0
  190. package/lib/utils/rafraf.js.map +1 -1
  191. package/package.json +7 -10
  192. package/lib/hooks/use-virtual-grid.test.d.ts +0 -2
  193. package/lib/hooks/use-virtual-grid.test.d.ts.map +0 -1
  194. package/lib/hooks/use-virtual-grid.test.js +0 -210
  195. package/lib/hooks/use-virtual-grid.test.js.map +0 -1
@@ -38,14 +38,19 @@ const use_effect_on_change_1 = require("../hooks/use-effect-on-change");
38
38
  const rafraf_1 = require("../utils/rafraf");
39
39
  const TrackingHooksContext = react_1.default.createContext({
40
40
  onSignalMount() {
41
+ /** noop */
41
42
  },
42
43
  onSignalOpen() {
44
+ /** noop */
43
45
  },
44
46
  onSignalLinkClick() {
47
+ /** noop */
45
48
  },
46
49
  onSignalPrimaryActionClick() {
50
+ /** noop */
47
51
  },
48
52
  onSignalClose() {
53
+ /** noop */
49
54
  },
50
55
  });
51
56
  const SignalHooksProvider = ({ children, ..._hooks }) => {
@@ -97,6 +102,8 @@ const signalCardTitleStyles = (0, emotion_1.css)({
97
102
  marginBottom: tokens_1.spacing[2],
98
103
  fontSize: tokens_1.spacing[3],
99
104
  });
105
+ // This is to avoid the longer card title getting shadowed under the close icon
106
+ // button
100
107
  const signalCardTitleStylesWithOneSignal = (0, emotion_1.css)({
101
108
  paddingRight: CLOSE_BTN_RIGHT,
102
109
  });
@@ -184,6 +191,7 @@ const transitionStyles = (0, emotion_1.css)({
184
191
  transitionDuration: `${TRANSITION_DURATION_MS}ms`,
185
192
  });
186
193
  const badgeStyles = (0, emotion_1.css)({
194
+ // button reset first
187
195
  padding: 0,
188
196
  border: 'none',
189
197
  background: 'none',
@@ -245,6 +253,7 @@ const singleInsightBadge = (0, emotion_1.css)({
245
253
  paddingLeft: 2,
246
254
  });
247
255
  const closeButtonStyles = (0, emotion_1.css)({
256
+ // No other way to correctly align this button with the content
248
257
  top: CLOSE_BTN_TOP,
249
258
  right: CLOSE_BTN_RIGHT,
250
259
  });
@@ -264,6 +273,10 @@ const SignalPopover = ({ signals: _signals, darkMode: _darkMode, onPopoverOpenCh
264
273
  const multiSignals = signals.length > 1;
265
274
  const isActive = isHovered || popoverOpen;
266
275
  const triggerRef = (0, react_1.useRef)(null);
276
+ // To make sure we are covering signals added to the signal popover during the
277
+ // whole component lifecycle and at the same time avoid calling onSignalMount
278
+ // for ids that were already mounted, we keep track of "mounted" signals in a
279
+ // Set ref that will stay the same through the whole component lifecycle
267
280
  const mountedSignalsRef = (0, react_1.useRef)(new Set());
268
281
  signals.forEach(({ id }) => {
269
282
  if (!mountedSignalsRef.current.has(id)) {
@@ -286,6 +299,7 @@ const SignalPopover = ({ signals: _signals, darkMode: _darkMode, onPopoverOpenCh
286
299
  const observer = new IntersectionObserver((entries) => {
287
300
  const isVisible = entries[0].isIntersecting;
288
301
  setTriggerVisible(isVisible);
302
+ // Close popover if trigger is not visible on the screen anymore
289
303
  if (!isVisible) {
290
304
  setPopoverOpen(false);
291
305
  }
@@ -296,6 +310,9 @@ const SignalPopover = ({ signals: _signals, darkMode: _darkMode, onPopoverOpenCh
296
310
  const onPopoverOpenChange = (0, react_1.useCallback)((newStatus) => {
297
311
  setPopoverOpen(newStatus);
298
312
  _onPopoverOpenChange?.(newStatus);
313
+ // Reset current signal index when popover is being opened. If we do this on
314
+ // close instead, the popover content is weirdly changed while the closing
315
+ // animation is happening
299
316
  if (newStatus === true) {
300
317
  setCurrentSignalIndex(0);
301
318
  }
@@ -306,16 +323,31 @@ const SignalPopover = ({ signals: _signals, darkMode: _darkMode, onPopoverOpenCh
306
323
  react_1.default.createElement(leafygreen_1.Icon, { glyph: "Bulb", size: "small" }),
307
324
  "\u00A0insight"));
308
325
  const activeBadgeWidth = multiSignals
309
- ?
326
+ ? // For multiple, the active width of the container is just the width of
327
+ // the label
310
328
  `${`${signals.length} insights`.length}ch`
311
- :
329
+ : // For single, it's icon size plus space and label
312
330
  `calc(14px + ${' insight'.length}ch)`;
313
- return (react_1.default.createElement(interactive_popover_1.InteractivePopover, { className: (0, emotion_1.cx)(popoverStyles, !triggerVisible && popoverHiddenStyles), containerClassName: (0, emotion_1.cx)(popoverContentContainerStyles), closeButtonClassName: multiSignals ? closeButtonMultiSignalStyles : closeButtonStyles, open: popoverOpen, setOpen: onPopoverOpenChange, spacing: tokens_1.spacing[2], trigger: ({ children, ...triggerProps }) => {
331
+ return (react_1.default.createElement(interactive_popover_1.InteractivePopover, { className: (0, emotion_1.cx)(popoverStyles,
332
+ // If trigger is not visible, we are in this weird state where trigger
333
+ // component is hidden by something, but the popover might still be on
334
+ // the screen. We already started closing popover, but because
335
+ // leafygreen provides animations that you can't disable, this means
336
+ // that the popover dissapearance can't be correctly animated in this
337
+ // case and so we just hide it with styles
338
+ !triggerVisible && popoverHiddenStyles), containerClassName: (0, emotion_1.cx)(popoverContentContainerStyles), closeButtonClassName: multiSignals ? closeButtonMultiSignalStyles : closeButtonStyles, open: popoverOpen, setOpen: onPopoverOpenChange, spacing: tokens_1.spacing[2], trigger: ({ children, ...triggerProps }) => {
314
339
  const onTriggerClick = (evt) => {
315
340
  evt.stopPropagation();
316
341
  triggerProps.onClick(evt);
317
342
  };
318
343
  return (react_1.default.createElement(guide_cue_1.GuideCue, { cueId: "insights", title: "Introducing insights", description: "Across Compass, you may now see icons like this to clue you in on potential areas of improvement for your data.", buttonText: "See insights in action", onPrimaryButtonClick: () => {
344
+ // Because the guide cue is currently in inactive state when this
345
+ // button is clicked, the popover position can be calculated
346
+ // incorrectly because the expand animation will be triggered at
347
+ // the same time as popover show animation. To work around that,
348
+ // we will first manually trigger hover state, wait for the transition
349
+ // duration, and only then will click the trigger to open the
350
+ // popup
319
351
  setHovered(true);
320
352
  setTimeout(() => {
321
353
  (0, rafraf_1.rafraf)(() => {
@@ -347,6 +379,14 @@ const SignalPopover = ({ signals: _signals, darkMode: _darkMode, onPopoverOpenCh
347
379
  } }));
348
380
  } },
349
381
  react_1.default.createElement("div", { onMouseDown: (event) => {
382
+ // Our InteractivePopover makes use of FocusTrap with
383
+ // `clickOutsideDeactivates` set to true. This will let the MouseDown
384
+ // and Click event propagate down to the leaf node in DOM and in certain
385
+ // cases it is undesirable because there might be some functionalities
386
+ // attached for these events on the leaf nodes. Example - Stage List in
387
+ // Aggregation builder where SortableList listens and responds to these
388
+ // events. For that reason we do not let mouse down event propagate out
389
+ // of this card.'
350
390
  event.stopPropagation();
351
391
  } },
352
392
  multiSignals && (react_1.default.createElement(MultiSignalHeader, { currentIndex: currentSignalIndex, total: signals.length, onIndexChange: setCurrentSignalIndex, darkMode: darkMode })),
@@ -1 +1 @@
1
- {"version":3,"file":"signal-popover.js","sourceRoot":"","sources":["../../src/components/signal-popover.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signal-popover.js","sourceRoot":"","sources":["../../src/components/signal-popover.tsx"],"names":[],"mappings":"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"}
@@ -3,11 +3,18 @@ type TabNavBarProps = {
3
3
  'data-testid'?: string;
4
4
  'aria-label': string;
5
5
  activeTabIndex: number;
6
- tabNames: string[];
7
- tabLabels: React.ReactNode[];
8
- views: React.ReactElement[];
9
6
  onTabClicked: (tabIndex: number) => void;
7
+ tabs: Array<{
8
+ name: string;
9
+ content: React.ReactNode;
10
+ title: React.ReactNode;
11
+ }>;
10
12
  };
11
- declare function TabNavBar({ 'data-testid': dataTestId, 'aria-label': ariaLabel, activeTabIndex, tabNames, tabLabels, views, onTabClicked, }: TabNavBarProps): React.ReactElement | null;
13
+ /**
14
+ * This component displays tabs with the tab content inside of
15
+ * a container that scrolls when it overflows, while keeping
16
+ * the tabs in the same location.
17
+ */
18
+ declare function TabNavBar({ 'data-testid': dataTestId, 'aria-label': ariaLabel, activeTabIndex, onTabClicked, tabs, }: TabNavBarProps): React.ReactElement | null;
12
19
  export { TabNavBar };
13
20
  //# sourceMappingURL=tab-nav-bar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tab-nav-bar.d.ts","sourceRoot":"","sources":["../../src/components/tab-nav-bar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAuC1B,KAAK,cAAc,GAAG;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;IAC7B,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC;IAC5B,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1C,CAAC;AAOF,iBAAS,SAAS,CAAC,EACjB,aAAa,EAAE,UAAU,EACzB,YAAY,EAAE,SAAS,EACvB,cAAc,EACd,QAAQ,EACR,SAAS,EACT,KAAK,EACL,YAAY,GACb,EAAE,cAAc,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CAkD5C;AAED,OAAO,EAAE,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"tab-nav-bar.d.ts","sourceRoot":"","sources":["../../src/components/tab-nav-bar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAmC1B,KAAK,cAAc,GAAG;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,IAAI,EAAE,KAAK,CAAC;QACV,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;QACzB,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;KACxB,CAAC,CAAC;CACJ,CAAC;AAEF;;;;GAIG;AACH,iBAAS,SAAS,CAAC,EACjB,aAAa,EAAE,UAAU,EACzB,YAAY,EAAE,SAAS,EACvB,cAAc,EACd,YAAY,EACZ,IAAI,GACL,EAAE,cAAc,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CA6C5C;AAED,OAAO,EAAE,SAAS,EAAE,CAAC"}
@@ -32,20 +32,23 @@ const tabStyles = (0, emotion_1.css)({
32
32
  flex: 1,
33
33
  minHeight: 0,
34
34
  });
35
- const hiddenStyles = (0, emotion_1.css)({
36
- display: 'none',
37
- });
38
- function TabNavBar({ 'data-testid': dataTestId, 'aria-label': ariaLabel, activeTabIndex, tabNames, tabLabels, views, onTabClicked, }) {
35
+ /**
36
+ * This component displays tabs with the tab content inside of
37
+ * a container that scrolls when it overflows, while keeping
38
+ * the tabs in the same location.
39
+ */
40
+ function TabNavBar({ 'data-testid': dataTestId, 'aria-label': ariaLabel, activeTabIndex, onTabClicked, tabs, }) {
39
41
  const darkMode = (0, use_theme_1.useDarkMode)();
40
42
  return (react_1.default.createElement("div", { className: containerStyles },
41
43
  react_1.default.createElement("div", { className: (0, emotion_1.cx)(tabsContainerStyles, darkMode ? tabsContainerDarkStyles : tabsContainerLightStyles) },
42
- react_1.default.createElement(leafygreen_1.Tabs, { "data-testid": dataTestId, "aria-label": ariaLabel, className: "test-tab-nav-bar-tabs", setSelected: onTabClicked, selected: activeTabIndex }, tabLabels.map((tab, idx) => (react_1.default.createElement(leafygreen_1.Tab, { className: "test-tab-nav-bar-tab", key: `tab-${idx}`, "data-testid": `${tabNames[idx]}-tab-button`, name: react_1.default.createElement("span", null, tab) }))))),
43
- views.map((view, idx) => idx === activeTabIndex && (react_1.default.createElement("div", { className: (0, emotion_1.cx)({
44
- [tabStyles]: true,
45
- [hiddenStyles]: idx !== activeTabIndex,
46
- }), key: `tab-content-${tabNames[idx]}`, "data-testid": `${tabNames[idx]
47
- .toLowerCase()
48
- .replace(/ /g, '-')}-content` }, view)))));
44
+ react_1.default.createElement(leafygreen_1.Tabs, { "data-testid": dataTestId, "aria-label": ariaLabel, className: "test-tab-nav-bar-tabs", setSelected: onTabClicked, selected: activeTabIndex }, tabs.map(({ name, title }, idx) => {
45
+ return (react_1.default.createElement(leafygreen_1.Tab, { className: "test-tab-nav-bar-tab", key: `tab-${idx}`, "data-testid": `${name}-tab-button`, name: title }));
46
+ }))),
47
+ tabs.map(({ name, content }, idx) => {
48
+ if (idx === activeTabIndex) {
49
+ return (react_1.default.createElement("div", { className: tabStyles, key: `tab-content-${name}`, "data-testid": `${name.toLowerCase().replace(/ /g, '-')}-content` }, content));
50
+ }
51
+ })));
49
52
  }
50
53
  exports.TabNavBar = TabNavBar;
51
54
  //# sourceMappingURL=tab-nav-bar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tab-nav-bar.js","sourceRoot":"","sources":["../../src/components/tab-nav-bar.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,oDAAiD;AACjD,kDAAgD;AAChD,oDAAiD;AAEjD,kDAAiD;AACjD,6CAAyC;AAEzC,MAAM,eAAe,GAAG,IAAA,aAAG,EAAC;IAC1B,QAAQ,EAAE,CAAC;IACX,OAAO,EAAE,MAAM;IACf,aAAa,EAAE,QAAQ;IACvB,UAAU,EAAE,SAAS;IACrB,QAAQ,EAAE,QAAQ;CACnB,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,IAAA,aAAG,EAAC;IAC9B,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,KAAK,gBAAO,CAAC,CAAC,CAAC,IAAI;CAC7B,CAAC,CAAC;AAEH,MAAM,uBAAuB,GAAG,IAAA,aAAG,EAAC;IAClC,UAAU,EAAE,iBAAO,CAAC,KAAK;CAC1B,CAAC,CAAC;AAEH,MAAM,wBAAwB,GAAG,IAAA,aAAG,EAAC;IACnC,UAAU,EAAE,iBAAO,CAAC,KAAK;CAC1B,CAAC,CAAC;AAEH,MAAM,SAAS,GAAG,IAAA,aAAG,EAAC;IACpB,OAAO,EAAE,MAAM;IACf,IAAI,EAAE,CAAC;IACP,SAAS,EAAE,CAAC;CACb,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG,IAAA,aAAG,EAAC;IACvB,OAAO,EAAE,MAAM;CAChB,CAAC,CAAC;AAiBH,SAAS,SAAS,CAAC,EACjB,aAAa,EAAE,UAAU,EACzB,YAAY,EAAE,SAAS,EACvB,cAAc,EACd,QAAQ,EACR,SAAS,EACT,KAAK,EACL,YAAY,GACG;IACf,MAAM,QAAQ,GAAG,IAAA,uBAAW,GAAE,CAAC;IAE/B,OAAO,CACL,uCAAK,SAAS,EAAE,eAAe;QAC7B,uCACE,SAAS,EAAE,IAAA,YAAE,EACX,mBAAmB,EACnB,QAAQ,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,wBAAwB,CAC9D;YAED,8BAAC,iBAAI,mBACU,UAAU,gBACX,SAAS,EACrB,SAAS,EAAC,uBAAuB,EACjC,WAAW,EAAE,YAAY,EACzB,QAAQ,EAAE,cAAc,IAEvB,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAC3B,8BAAC,gBAAG,IACF,SAAS,EAAC,sBAAsB,EAChC,GAAG,EAAE,OAAO,GAAG,EAAE,iBACJ,GAAG,QAAQ,CAAC,GAAG,CAAC,aAAa,EAI1C,IAAI,EAAE,4CAAO,GAAG,CAAQ,GACxB,CACH,CAAC,CACG,CACH;QACL,KAAK,CAAC,GAAG,CACR,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CACZ,GAAG,KAAK,cAAc,IAAI,CACxB,uCACE,SAAS,EAAE,IAAA,YAAE,EAAC;gBACZ,CAAC,SAAS,CAAC,EAAE,IAAI;gBACjB,CAAC,YAAY,CAAC,EAAE,GAAG,KAAK,cAAc;aACvC,CAAC,EACF,GAAG,EAAE,eAAe,QAAQ,CAAC,GAAG,CAAC,EAAE,iBACtB,GAAG,QAAQ,CAAC,GAAG,CAAC;iBAC1B,WAAW,EAAE;iBACb,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,UAAU,IAE9B,IAAI,CACD,CACP,CACJ,CACG,CACP,CAAC;AACJ,CAAC;AAEQ,8BAAS"}
1
+ {"version":3,"file":"tab-nav-bar.js","sourceRoot":"","sources":["../../src/components/tab-nav-bar.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,oDAAiD;AACjD,kDAAgD;AAChD,oDAAiD;AAEjD,kDAAiD;AACjD,6CAAyC;AAEzC,MAAM,eAAe,GAAG,IAAA,aAAG,EAAC;IAC1B,QAAQ,EAAE,CAAC;IACX,OAAO,EAAE,MAAM;IACf,aAAa,EAAE,QAAQ;IACvB,UAAU,EAAE,SAAS;IACrB,QAAQ,EAAE,QAAQ;CACnB,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,IAAA,aAAG,EAAC;IAC9B,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,KAAK,gBAAO,CAAC,CAAC,CAAC,IAAI;CAC7B,CAAC,CAAC;AAEH,MAAM,uBAAuB,GAAG,IAAA,aAAG,EAAC;IAClC,UAAU,EAAE,iBAAO,CAAC,KAAK;CAC1B,CAAC,CAAC;AAEH,MAAM,wBAAwB,GAAG,IAAA,aAAG,EAAC;IACnC,UAAU,EAAE,iBAAO,CAAC,KAAK;CAC1B,CAAC,CAAC;AAEH,MAAM,SAAS,GAAG,IAAA,aAAG,EAAC;IACpB,OAAO,EAAE,MAAM;IACf,IAAI,EAAE,CAAC;IACP,SAAS,EAAE,CAAC;CACb,CAAC,CAAC;AAcH;;;;GAIG;AACH,SAAS,SAAS,CAAC,EACjB,aAAa,EAAE,UAAU,EACzB,YAAY,EAAE,SAAS,EACvB,cAAc,EACd,YAAY,EACZ,IAAI,GACW;IACf,MAAM,QAAQ,GAAG,IAAA,uBAAW,GAAE,CAAC;IAE/B,OAAO,CACL,uCAAK,SAAS,EAAE,eAAe;QAC7B,uCACE,SAAS,EAAE,IAAA,YAAE,EACX,mBAAmB,EACnB,QAAQ,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,wBAAwB,CAC9D;YAED,8BAAC,iBAAI,mBACU,UAAU,gBACX,SAAS,EACrB,SAAS,EAAC,uBAAuB,EACjC,WAAW,EAAE,YAAY,EACzB,QAAQ,EAAE,cAAc,IAEvB,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;gBACjC,OAAO,CACL,8BAAC,gBAAG,IACF,SAAS,EAAC,sBAAsB,EAChC,GAAG,EAAE,OAAO,GAAG,EAAE,iBACJ,GAAG,IAAI,aAAa,EACjC,IAAI,EAAE,KAAK,GACX,CACH,CAAC;YACJ,CAAC,CAAC,CACG,CACH;QACL,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,EAAE;YACnC,IAAI,GAAG,KAAK,cAAc,EAAE;gBAC1B,OAAO,CACL,uCACE,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,eAAe,IAAI,EAAE,iBACb,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,UAAU,IAE9D,OAAO,CACJ,CACP,CAAC;aACH;QACH,CAAC,CAAC,CACE,CACP,CAAC;AACJ,CAAC;AAEQ,8BAAS"}
@@ -18,6 +18,7 @@ const toastActionStyles = (0, emotion_1.css)({
18
18
  textTransform: 'uppercase',
19
19
  flexGrow: 0,
20
20
  alignSelf: 'center',
21
+ // Remove button styles.
21
22
  border: 'none',
22
23
  padding: 0,
23
24
  margin: 0,
@@ -1 +1 @@
1
- {"version":3,"file":"toast-body.js","sourceRoot":"","sources":["../../src/components/toast-body.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,6CAAoC;AACpC,oDAA6C;AAE7C,MAAM,mBAAmB,GAAG,IAAA,aAAG,EAAC;IAC9B,OAAO,EAAE,MAAM;IACf,aAAa,EAAE,KAAK;CACrB,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,IAAA,aAAG,EAAC;IAC9B,QAAQ,EAAE,CAAC;CACZ,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,IAAA,aAAG,EAAC;IAC5B,aAAa,EAAE,WAAW;IAC1B,QAAQ,EAAE,CAAC;IACX,SAAS,EAAE,QAAQ;IAGnB,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,CAAC;IACT,UAAU,EAAE,MAAM;CACnB,CAAC,CAAC;AAEH,SAAgB,SAAS,CAAC,EACxB,aAAa,EACb,aAAa,EACb,UAAU,GAKX;IACC,OAAO,CACL,uCAAK,SAAS,EAAE,mBAAmB;QACjC,qCAAG,SAAS,EAAE,mBAAmB,IAAG,aAAa,CAAK;QACrD,CAAC,CAAC,aAAa,IAAI,CAClB,8BAAC,iBAAI,IACH,EAAE,EAAC,QAAQ,iBACE,gBAAgB,UAAU,IAAI,MAAM,EAAE,EACnD,OAAO,EAAE,aAAa,EACtB,gBAAgB,QAChB,SAAS,EAAE,iBAAiB,IAE3B,UAAU,CACN,CACR,CACG,CACP,CAAC;AACJ,CAAC;AAzBD,8BAyBC"}
1
+ {"version":3,"file":"toast-body.js","sourceRoot":"","sources":["../../src/components/toast-body.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,6CAAoC;AACpC,oDAA6C;AAE7C,MAAM,mBAAmB,GAAG,IAAA,aAAG,EAAC;IAC9B,OAAO,EAAE,MAAM;IACf,aAAa,EAAE,KAAK;CACrB,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,IAAA,aAAG,EAAC;IAC9B,QAAQ,EAAE,CAAC;CACZ,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,IAAA,aAAG,EAAC;IAC5B,aAAa,EAAE,WAAW;IAC1B,QAAQ,EAAE,CAAC;IACX,SAAS,EAAE,QAAQ;IAEnB,wBAAwB;IACxB,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,CAAC;IACT,UAAU,EAAE,MAAM;CACnB,CAAC,CAAC;AAEH,SAAgB,SAAS,CAAC,EACxB,aAAa,EACb,aAAa,EACb,UAAU,GAKX;IACC,OAAO,CACL,uCAAK,SAAS,EAAE,mBAAmB;QACjC,qCAAG,SAAS,EAAE,mBAAmB,IAAG,aAAa,CAAK;QACrD,CAAC,CAAC,aAAa,IAAI,CAClB,8BAAC,iBAAI,IACH,EAAE,EAAC,QAAQ,iBACE,gBAAgB,UAAU,IAAI,MAAM,EAAE,EACnD,OAAO,EAAE,aAAa,EACtB,gBAAgB,QAChB,SAAS,EAAE,iBAAiB,IAE3B,UAAU,CACN,CACR,CACG,CACP,CAAC;AACJ,CAAC;AAzBD,8BAyBC"}
@@ -6,16 +6,54 @@ type RenderItem = React.FunctionComponent<React.HTMLProps<HTMLDivElement> & {
6
6
  type RenderHeader = React.FunctionComponent;
7
7
  type RenderEmptyList = React.FunctionComponent;
8
8
  type VirtualGridProps = {
9
+ /**
10
+ * Grid item minimum width (items containers will autostretch to the grid
11
+ * container size)
12
+ */
9
13
  itemMinWidth: number;
14
+ /**
15
+ * Grid row height
16
+ */
10
17
  itemHeight: number;
18
+ /**
19
+ * Number of items in the grid
20
+ */
11
21
  itemsCount: number;
22
+ /**
23
+ * Number of columns (default is fitting as much as possible on the screen
24
+ * based on itemMinWidth)
25
+ */
12
26
  colCount?: number;
27
+ /**
28
+ * Render method for grid cell content. Receives props that should be passed
29
+ * directly to the cell root node for the keyboard navigation to work
30
+ * correctly
31
+ */
13
32
  renderItem: RenderItem;
33
+ /**
34
+ * Custom grid item key (default is item index)
35
+ */
14
36
  itemKey?: (index: number) => React.Key | null | undefined;
37
+ /**
38
+ * Header content height
39
+ */
15
40
  headerHeight?: number;
41
+ /**
42
+ * Render method for grid header component. This should be used if header
43
+ * content should be scrollable as part of the whole grid
44
+ */
16
45
  renderHeader?: RenderHeader;
46
+ /**
47
+ * Render method for empty list items.
48
+ */
17
49
  renderEmptyList?: RenderEmptyList;
50
+ /**
51
+ * Number of rows rendered off-screen (default: 3)
52
+ */
18
53
  overscanCount?: number;
54
+ /**
55
+ * Custom styling for individual elements within the grid DOM.
56
+ */
19
57
  classNames?: {
20
58
  container?: string;
21
59
  header?: string;
@@ -23,6 +61,10 @@ type VirtualGridProps = {
23
61
  row?: string;
24
62
  cell?: string;
25
63
  };
64
+ /**
65
+ * Set to `false` of you want the last focused item to be preserved between
66
+ * focus / blur (default: true)
67
+ */
26
68
  resetActiveItemOnBlur?: boolean;
27
69
  };
28
70
  export declare const VirtualGrid: React.ForwardRefExoticComponent<Pick<VirtualGridProps & Omit<React.HTMLProps<HTMLDivElement>, keyof VirtualGridProps>, "children" | "value" | "key" | "cite" | "data" | "form" | "label" | "slot" | "span" | "style" | "summary" | "title" | "pattern" | "start" | "hidden" | "color" | "content" | "size" | "default" | "wrap" | "open" | "multiple" | "disabled" | "height" | "translate" | "width" | "href" | "as" | "onClick" | "type" | "className" | "download" | "hrefLang" | "media" | "rel" | "target" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "max" | "method" | "min" | "name" | "crossOrigin" | "classID" | "useMap" | "wmode" | "alt" | "coords" | "shape" | "autoPlay" | "controls" | "loop" | "mediaGroup" | "muted" | "playsInline" | "preload" | "src" | "autoFocus" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "dateTime" | "acceptCharset" | "action" | "autoComplete" | "encType" | "noValidate" | "manifest" | "allowFullScreen" | "allowTransparency" | "frameBorder" | "marginHeight" | "marginWidth" | "sandbox" | "scrolling" | "seamless" | "srcDoc" | "sizes" | "srcSet" | "accept" | "capture" | "checked" | "list" | "maxLength" | "minLength" | "readOnly" | "required" | "step" | "challenge" | "keyType" | "keyParams" | "htmlFor" | "integrity" | "charSet" | "httpEquiv" | "high" | "low" | "optimum" | "reversed" | "selected" | "async" | "defer" | "nonce" | "scoped" | "cellPadding" | "cellSpacing" | "colSpan" | "headers" | "rowSpan" | "scope" | "cols" | "rows" | "kind" | "srcLang" | "poster" | keyof VirtualGridProps> & React.RefAttributes<HTMLDivElement>>;
@@ -1 +1 @@
1
- {"version":3,"file":"virtual-grid.d.ts","sourceRoot":"","sources":["../../src/components/virtual-grid.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;AAOf,KAAK,UAAU,GAAG,KAAK,CAAC,iBAAiB,CACvC,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;CACjC,CACF,CAAC;AACF,KAAK,YAAY,GAAG,KAAK,CAAC,iBAAiB,CAAC;AAC5C,KAAK,eAAe,GAAG,KAAK,CAAC,iBAAiB,CAAC;AAE/C,KAAK,gBAAgB,GAAG;IAKtB,YAAY,EAAE,MAAM,CAAC;IAIrB,UAAU,EAAE,MAAM,CAAC;IAInB,UAAU,EAAE,MAAM,CAAC;IAKnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAMlB,UAAU,EAAE,UAAU,CAAC;IAIvB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,KAAK,CAAC,GAAG,GAAG,IAAI,GAAG,SAAS,CAAC;IAI1D,YAAY,CAAC,EAAE,MAAM,CAAC;IAKtB,YAAY,CAAC,EAAE,YAAY,CAAC;IAI5B,eAAe,CAAC,EAAE,eAAe,CAAC;IAIlC,aAAa,CAAC,EAAE,MAAM,CAAC;IAIvB,UAAU,CAAC,EAAE;QACX,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IAMF,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC,CAAC;AAsJF,eAAO,MAAM,WAAW,s5LA0FtB,CAAC"}
1
+ {"version":3,"file":"virtual-grid.d.ts","sourceRoot":"","sources":["../../src/components/virtual-grid.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;AAOf,KAAK,UAAU,GAAG,KAAK,CAAC,iBAAiB,CACvC,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;CACjC,CACF,CAAC;AACF,KAAK,YAAY,GAAG,KAAK,CAAC,iBAAiB,CAAC;AAC5C,KAAK,eAAe,GAAG,KAAK,CAAC,iBAAiB,CAAC;AAE/C,KAAK,gBAAgB,GAAG;IACtB;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,KAAK,CAAC,GAAG,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1D;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B;;OAEG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,UAAU,CAAC,EAAE;QACX,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IAEF;;;OAGG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC,CAAC;AAsJF,eAAO,MAAM,WAAW,s5LA0FtB,CAAC"}
@@ -98,6 +98,9 @@ const container = (0, emotion_1.css)({
98
98
  display: 'grid',
99
99
  gridTemplateRows: 'auto 1fr',
100
100
  gridTemplateColumns: '100%',
101
+ // This element is focusable only to handle virtual list and will immediately
102
+ // pass focus to its children. This can take a frame though so to avoid
103
+ // outline on the container showing up, we are completely disabling it
101
104
  outline: 'none',
102
105
  });
103
106
  const grid = (0, emotion_1.css)({
@@ -1 +1 @@
1
- {"version":3,"file":"virtual-grid.js","sourceRoot":"","sources":["../../src/components/virtual-grid.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"virtual-grid.js","sourceRoot":"","sources":["../../src/components/virtual-grid.tsx"],"names":[],"mappings":"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"}
@@ -3,18 +3,87 @@ import { VariableSizeList as List } from 'react-window';
3
3
  export type ItemRenderer<T> = (item: T, ref: React.Ref<HTMLDivElement>, index: number) => React.ReactNode;
4
4
  export type VirtualListRef = React.MutableRefObject<List | null>;
5
5
  export type VirtualListProps<T> = {
6
+ /** Items to render using the virtual list */
6
7
  items: T[];
8
+ /**
9
+ * Render prop expected to return a ReactNode that will be provided with:
10
+ * - the item being rendered
11
+ * - a ReactRef that it should attach to the container that is expecting
12
+ * resizes from within
13
+ * - the index of item being rendered
14
+ * */
7
15
  renderItem: ItemRenderer<T>;
16
+ /**
17
+ * Function which is used to calculate initial approximate height of the item
18
+ * before it is rendered for the first time. The VirtualList, immediately
19
+ * after first render, starts monitoring the actual height but it is still
20
+ * super useful to avoid a huge flicker during the initial rendering phase
21
+ */
8
22
  estimateItemInitialHeight(item: T): number;
23
+ /**
24
+ * How many items to keep rendered outside of the visible viewport. Keeping
25
+ * this number higher reduces the blanks that we see when scrolling fast and
26
+ * keeping it low removes the (possible) scroll jitters towards the scroll end
27
+ * (observed at-least when used in conjunction with CodeMirror editor)
28
+ */
9
29
  overScanCount?: number;
30
+ /**
31
+ * The space in pixels to be used as gutter in between the list items. It is
32
+ * advisable to use this prop instead of css margins
33
+ */
10
34
  rowGap?: number;
35
+ /**
36
+ * The class applied to the outer container of the virtual list.
37
+ *
38
+ * VirtualList renders two containers:
39
+ * - an outer container which is rendered with a particular width and height
40
+ * provided by the AutoSizer, which never exceeds the visible and available
41
+ * viewport. This is the scrollable container as well
42
+ * - an inner container which has a calculated height equal to that of the
43
+ * total size of the items rendered within it and this is the container that
44
+ * scrolls within the outer container
45
+ */
11
46
  listOuterContainerClassName?: string;
47
+ /**
48
+ * Attribute value for data-testid for the root container of the list
49
+ */
12
50
  dataTestId?: string;
51
+ /**
52
+ * Attribute value for data-testid for the container of the list item
53
+ */
13
54
  itemDataTestId?: string;
55
+ /**
56
+ * Initial scrollTop value on first render of the list. Helpful to preserve
57
+ * the scrollTop value in between list mounts / unmounts.
58
+ *
59
+ * Note - Use scrollableContainerRef to get a hold of scroll container to
60
+ * retrieve the current scrollTop
61
+ */
14
62
  initialScrollTop?: number;
63
+ /**
64
+ * React.Ref passed to the element that overflows in the vertical direction.
65
+ * Helpful to retrieve the value of current scrollTop
66
+ */
15
67
  scrollableContainerRef?: React.Ref<HTMLDivElement>;
68
+ /**
69
+ * WARNING: Use only when testing because the AutoSizer will be
70
+ * disabled during tests
71
+ *
72
+ * Renders the VirtualList with the provided width
73
+ */
16
74
  __TEST_LIST_WIDTH?: number;
75
+ /**
76
+ * WARNING: Use only when testing because the AutoSizer will be
77
+ * disabled during tests
78
+ *
79
+ * Renders the VirtualList with the provided height
80
+ */
17
81
  __TEST_LIST_HEIGHT?: number;
82
+ /**
83
+ * WARNING: Use only when testing
84
+ *
85
+ * Mutable Ref object to hold the reference to the VariableSizeList
86
+ */
18
87
  __TEST_LIST_REF?: VirtualListRef;
19
88
  };
20
89
  export declare function VirtualList<T>({ items, estimateItemInitialHeight, renderItem, overScanCount, rowGap, listOuterContainerClassName, dataTestId, itemDataTestId, initialScrollTop, scrollableContainerRef, __TEST_LIST_WIDTH, __TEST_LIST_HEIGHT, __TEST_LIST_REF, }: VirtualListProps<T>): JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"virtual-list.d.ts","sourceRoot":"","sources":["../../src/components/virtual-list.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuD,MAAM,OAAO,CAAC;AAC5E,OAAO,EACL,gBAAgB,IAAI,IAAI,EAEzB,MAAM,cAAc,CAAC;AAStB,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAC5B,IAAI,EAAE,CAAC,EACP,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,EAC9B,KAAK,EAAE,MAAM,KACV,KAAK,CAAC,SAAS,CAAC;AASrB,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,gBAAgB,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;AAEjE,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI;IAEhC,KAAK,EAAE,CAAC,EAAE,CAAC;IASX,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IAQ5B,yBAAyB,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC;IAQ3C,aAAa,CAAC,EAAE,MAAM,CAAC;IAMvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAahB,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAKrC,UAAU,CAAC,EAAE,MAAM,CAAC;IAKpB,cAAc,CAAC,EAAE,MAAM,CAAC;IASxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAM1B,sBAAsB,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAQnD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAQ3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAO5B,eAAe,CAAC,EAAE,cAAc,CAAC;CAClC,CAAC;AAcF,wBAAgB,WAAW,CAAC,CAAC,EAAE,EAC7B,KAAK,EACL,yBAAyB,EACzB,UAAU,EAEV,aAAa,EACb,MAAM,EACN,2BAA2B,EAC3B,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,iBAAwB,EACxB,kBAAwB,EACxB,eAAe,GAChB,EAAE,gBAAgB,CAAC,CAAC,CAAC,eA0DrB"}
1
+ {"version":3,"file":"virtual-list.d.ts","sourceRoot":"","sources":["../../src/components/virtual-list.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuD,MAAM,OAAO,CAAC;AAC5E,OAAO,EACL,gBAAgB,IAAI,IAAI,EAEzB,MAAM,cAAc,CAAC;AAStB,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAC5B,IAAI,EAAE,CAAC,EACP,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,EAC9B,KAAK,EAAE,MAAM,KACV,KAAK,CAAC,SAAS,CAAC;AASrB,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,gBAAgB,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;AAEjE,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI;IAChC,6CAA6C;IAC7C,KAAK,EAAE,CAAC,EAAE,CAAC;IAEX;;;;;;SAMK;IACL,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IAE5B;;;;;OAKG;IACH,yBAAyB,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC;IAE3C;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;;;;;;OAUG;IACH,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAErC;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,sBAAsB,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAEnD;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;;;OAIG;IACH,eAAe,CAAC,EAAE,cAAc,CAAC;CAClC,CAAC;AAcF,wBAAgB,WAAW,CAAC,CAAC,EAAE,EAC7B,KAAK,EACL,yBAAyB,EACzB,UAAU,EAEV,aAAa,EACb,MAAM,EACN,2BAA2B,EAC3B,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,iBAAwB,EACxB,kBAAwB,EACxB,eAAe,GAChB,EAAE,gBAAgB,CAAC,CAAC,CAAC,eA0DrB"}
@@ -58,7 +58,12 @@ function VirtualList({ items, estimateItemInitialHeight, renderItem, overScanCou
58
58
  renderItem,
59
59
  }), [items, observer, itemDataTestId, renderItem]);
60
60
  const isTestEnv = process.env.NODE_ENV === 'test';
61
- return (react_1.default.createElement("div", { className: flexContainerStyles, "data-testid": dataTestId },
61
+ return (
62
+ // For AutoSizer to grow and fill the available space we need to provide
63
+ // appropriate flex container and flex item styles
64
+ //
65
+ // Reference: https://github.com/bvaughn/react-virtualized/blob/master/docs/usingAutoSizer.md#can-i-use-autosizer-within-a-flex-container
66
+ react_1.default.createElement("div", { className: flexContainerStyles, "data-testid": dataTestId },
62
67
  react_1.default.createElement("div", { className: flexItemStyles },
63
68
  react_1.default.createElement(react_virtualized_auto_sizer_1.default, { disableWidth: isTestEnv, disableHeight: isTestEnv }, ({ width, height }) => (react_1.default.createElement(react_window_1.VariableSizeList, { ref: inUseListRef, width: isTestEnv ? __TEST_LIST_WIDTH : width, height: isTestEnv ? __TEST_LIST_HEIGHT : height, itemData: itemData, itemCount: items.length, estimatedItemSize: estimatedItemSize, itemSize: getItemSize, overscanCount: overScanCount, initialScrollOffset: initialScrollTop, outerRef: scrollableContainerRef, innerElementType: InnerElementType, className: listOuterContainerClassName }, DocumentRow))))));
64
69
  }
@@ -81,6 +86,9 @@ function DocumentRow({ index, style, data, }) {
81
86
  return (react_1.default.createElement("div", { "data-testid": itemDataTestId, key: index, style: style }, renderItem(item, itemRef, index)));
82
87
  }
83
88
  const innerElementStyles = (0, emotion_1.css)({
89
+ // Important because we want the list items rendered within this container to
90
+ // be absolutely positioned relative to this container so that the outer
91
+ // container can apply spacing freely
84
92
  position: 'relative',
85
93
  });
86
94
  const InnerElementType = (0, react_1.forwardRef)(function InnerElementType({ style, ...rest }, ref) {
@@ -1 +1 @@
1
- {"version":3,"file":"virtual-list.js","sourceRoot":"","sources":["../../src/components/virtual-list.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"virtual-list.js","sourceRoot":"","sources":["../../src/components/virtual-list.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAA4E;AAC5E,+CAGsB;AACtB,gGAAqD;AACrD,oDAA6C;AAE7C,4FAGiD;AAkHjD,MAAM,mBAAmB,GAAG,IAAA,aAAG,EAAC;IAC9B,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,MAAM;IACd,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,MAAM;IACf,QAAQ,EAAE,QAAQ;CACnB,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,IAAA,aAAG,EAAC;IACzB,IAAI,EAAE,CAAC;CACR,CAAC,CAAC;AAEH,SAAgB,WAAW,CAAI,EAC7B,KAAK,EACL,yBAAyB,EACzB,UAAU,EAEV,aAAa,EACb,MAAM,EACN,2BAA2B,EAC3B,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,GAAG,IAAI,EACxB,kBAAkB,GAAG,GAAG,EACxB,eAAe,GACK;IACpB,MAAM,OAAO,GAAG,IAAA,cAAM,EAAc,IAAI,CAAC,CAAC;IAC1C,MAAM,YAAY,GAAG,eAAe,IAAI,OAAO,CAAC;IAChD,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE,WAAW,EAAE,GAChD,IAAA,2DAA0B,EAAC;QACzB,OAAO,EAAE,YAAY;QACrB,MAAM;QACN,KAAK;QACL,yBAAyB;KAC1B,CAAC,CAAC;IAEL,MAAM,QAAQ,GAAG,IAAA,eAAO,EACtB,GAAG,EAAE,CAAC,CAAC;QACL,KAAK;QACL,QAAQ;QACR,cAAc;QACd,UAAU;KACX,CAAC,EACF,CAAC,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,CAAC,CAC9C,CAAC;IAEF,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,CAAC;IAElD,OAAO;IACL,wEAAwE;IACxE,kDAAkD;IAClD,EAAE;IACF,yIAAyI;IACzI,uCAAK,SAAS,EAAE,mBAAmB,iBAAe,UAAU;QAC1D,uCAAK,SAAS,EAAE,cAAc;YAM5B,8BAAC,sCAAS,IAAC,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,IACzD,CAAC,EAAE,KAAK,EAAE,MAAM,EAAqC,EAAE,EAAE,CAAC,CACzD,8BAAC,+BAAI,IACH,GAAG,EAAE,YAAY,EACjB,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,EAC5C,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,MAAM,EAC/C,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,KAAK,CAAC,MAAM,EACvB,iBAAiB,EAAE,iBAAiB,EACpC,QAAQ,EAAE,WAAW,EACrB,aAAa,EAAE,aAAa,EAC5B,mBAAmB,EAAE,gBAAgB,EACrC,QAAQ,EAAE,sBAAsB,EAChC,gBAAgB,EAAE,gBAAgB,EAClC,SAAS,EAAE,2BAA2B,IAErC,WAAW,CACP,CACR,CACS,CACR,CACF,CACP,CAAC;AACJ,CAAC;AAzED,kCAyEC;AAED,SAAS,WAAW,CAAI,EACtB,KAAK,EACL,KAAK,EACL,IAAI,GACiC;IACrC,MAAM,OAAO,GAAG,IAAA,cAAM,EAAiB,IAAI,CAAC,CAAC;IAC7C,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;IAC7D,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;IAE1B,IAAA,uBAAe,EAAC,GAAG,EAAE;QACnB,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;QACvC,IAAI,cAAc,EAAE;YAClB,QAAQ,CAAC,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;SACzC;QAED,OAAO,GAAG,EAAE;YACV,IAAI,cAAc,EAAE;gBAClB,QAAQ,CAAC,SAAS,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;aAC3C;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;IAEtB,OAAO,CACL,sDAAkB,cAAc,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,IACvD,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAC7B,CACP,CAAC;AACJ,CAAC;AAED,MAAM,kBAAkB,GAAG,IAAA,aAAG,EAAC;IAC7B,6EAA6E;IAC7E,wEAAwE;IACxE,qCAAqC;IACrC,QAAQ,EAAE,UAAU;CACrB,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,IAAA,kBAAU,EAGjC,SAAS,gBAAgB,CAAC,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,GAAG;IACjD,OAAO,CACL,sDACc,8BAA8B,EAC1C,SAAS,EAAE,kBAAkB,EAC7B,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,KACR,IAAI,GACR,CACH,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -70,6 +70,10 @@ const shadowContainerStyles = (0, emotion_1.css)({
70
70
  flex: 'none',
71
71
  zIndex: 1,
72
72
  pointerEvents: 'none',
73
+ // Animation prevents possible flicker when in-view trigger that is
74
+ // responsible for showing the shadow very quickly switches between being
75
+ // hidden to being visible again (that is the case where we don't unmount
76
+ // collection tabs and just use display: none to hide them)
73
77
  animation: `${fadeIn} .1s linear`,
74
78
  });
75
79
  const boxShadow = (color) => `0px 2px ${shadowHeight}px -1px ${color}`;
@@ -91,6 +95,8 @@ const workspaceContentStyles = (0, emotion_1.css)({
91
95
  height: '100%',
92
96
  width: '100%',
93
97
  display: 'block',
98
+ // make sure that the content never renders over
99
+ // the shadow
94
100
  position: 'relative',
95
101
  zIndex: 0,
96
102
  });
@@ -107,6 +113,10 @@ function WorkspaceContainer({ className, children, toolbar, toolbarRef, scrollab
107
113
  const scrollContainer = (0, react_1.useRef)(null);
108
114
  const [scrollDetectionTrigger, triggerStillInView] = (0, react_intersection_observer_1.useInView)({
109
115
  root: scrollContainer.current,
116
+ // Setting this value prevents flicker on initial mount. Default value is
117
+ // `true`, if the value is not provided we assume that the trigger is at the
118
+ // very top of the container, which is the most common case for the initial
119
+ // mount
110
120
  initialInView: initialTopInView,
111
121
  });
112
122
  return (react_1.default.createElement("div", { className: (0, emotion_1.cx)(workspaceContainerStyles, darkMode ? darkThemeStyles : lightThemeStyles, className), "data-testid": dataTestId, ...props },
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-container.js","sourceRoot":"","sources":["../../src/components/workspace-container.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace-container.js","sourceRoot":"","sources":["../../src/components/workspace-container.tsx"],"names":[],"mappings":"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"}