@mjhls/mjh-framework 1.0.823-double-verify → 1.0.824-deckqueue-fix-v1

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 (162) hide show
  1. package/README.md +170 -170
  2. package/dist/cjs/AD300x250.js +2 -2
  3. package/dist/cjs/AD300x250x600.js +2 -2
  4. package/dist/cjs/AD728x90.js +3 -3
  5. package/dist/cjs/ADFloatingFooter.js +1 -1
  6. package/dist/cjs/ADGutter.js +1 -1
  7. package/dist/cjs/ADSkyscraper.js +1 -1
  8. package/dist/cjs/ADSponsoredResources.js +1 -1
  9. package/dist/cjs/ADWebcast.js +1 -1
  10. package/dist/cjs/ADWelcome.js +1 -1
  11. package/dist/cjs/AdSlot.js +1 -74
  12. package/dist/cjs/AdSlotsProvider.js +5 -14
  13. package/dist/cjs/AlgoliaSearch.js +18 -36
  14. package/dist/cjs/ArticleCarousel.js +1 -1
  15. package/dist/cjs/ArticleProgramLandingPage.js +5 -5
  16. package/dist/cjs/ArticleSeriesLandingPage.js +5 -5
  17. package/dist/cjs/ArticleSeriesListing.js +3 -3
  18. package/dist/cjs/Auth.js +41 -6
  19. package/dist/cjs/AuthWrapper.js +228 -189
  20. package/dist/cjs/CMEDeck.js +3 -3
  21. package/dist/cjs/Column3.js +3 -3
  22. package/dist/cjs/ConferenceArticleCard.js +16 -16
  23. package/dist/cjs/DeckContent.js +13 -13
  24. package/dist/cjs/DeckQueue.js +12 -6
  25. package/dist/cjs/EventsDeck.js +21 -21
  26. package/dist/cjs/ExternalResources.js +5 -5
  27. package/dist/cjs/Feature.js +2 -2
  28. package/dist/cjs/ForbesHero.js +1 -1
  29. package/dist/cjs/GridContent.js +8 -8
  30. package/dist/cjs/GridHero.js +1 -1
  31. package/dist/cjs/HamMagazine.js +15 -15
  32. package/dist/cjs/HighlightenVideo.js +1 -1
  33. package/dist/cjs/HorizontalArticleListing.js +4 -4
  34. package/dist/cjs/HorizontalHero.js +1 -1
  35. package/dist/cjs/IssueContentDeck.js +1 -1
  36. package/dist/cjs/IssueDeck.js +1 -1
  37. package/dist/cjs/IssueLanding.js +36 -36
  38. package/dist/cjs/KMTracker.js +15 -15
  39. package/dist/cjs/LeftNav.js +1 -1
  40. package/dist/cjs/MasterDeck.js +13 -13
  41. package/dist/cjs/MediaSeriesLanding.js +149 -193
  42. package/dist/cjs/NavMagazine.js +14 -14
  43. package/dist/cjs/NavNative.js +12 -12
  44. package/dist/cjs/OncliveHero.js +1 -1
  45. package/dist/cjs/OncliveLargeHero.js +1 -1
  46. package/dist/cjs/PartnerDetailListing.js +7 -7
  47. package/dist/cjs/PubSection.js +5 -5
  48. package/dist/cjs/PublicationLanding.js +26 -26
  49. package/dist/cjs/QueueDeckExpanded.js +7 -7
  50. package/dist/cjs/RelatedContent.js +29 -29
  51. package/dist/cjs/RelatedTopicsDropdown.js +10 -10
  52. package/dist/cjs/SeriesListingDeck.js +3 -3
  53. package/dist/cjs/{SeriesSlider-66092a33.js → SeriesSlider-b94509d5.js} +10 -10
  54. package/dist/cjs/SideFooter.js +2 -2
  55. package/dist/cjs/{SocialSearchComponent-560a666e.js → SocialSearchComponent-42b9d251.js} +3 -3
  56. package/dist/cjs/TaxonomyDescription.js +4 -4
  57. package/dist/cjs/TemplateNormal.js +2 -2
  58. package/dist/cjs/Ustream.js +2 -2
  59. package/dist/cjs/VerticalHero.js +1 -1
  60. package/dist/cjs/VideoProgramLandingPage.js +5 -5
  61. package/dist/cjs/VideoSeriesCard.js +2 -2
  62. package/dist/cjs/VideoSeriesLandingPage.js +5 -5
  63. package/dist/cjs/VideoSeriesListing.js +3 -3
  64. package/dist/cjs/View.js +22 -14
  65. package/dist/cjs/YahooHero.js +1 -1
  66. package/dist/cjs/YoutubeGroup.js +10 -10
  67. package/dist/cjs/{brightcove-react-player-loader.es-4ba0d3d5.js → brightcove-react-player-loader.es-5c98aec7.js} +4 -3
  68. package/dist/cjs/getRelatedArticle.js +62 -126
  69. package/dist/cjs/getSerializers.js +4 -4
  70. package/dist/cjs/{getTargeting-ea2ea5e7.js → getTargeting-15ad167c.js} +9 -9
  71. package/dist/cjs/getTargeting.js +1 -1
  72. package/dist/cjs/{index-5be2866f.js → index-6367b7bf.js} +16 -17
  73. package/dist/cjs/{index-f0677b9d.js → index-e2e62963.js} +0 -10
  74. package/dist/cjs/{index-be7af3a5.js → index-f30a10d6.js} +12 -12
  75. package/dist/cjs/{index.es-13533f24.js → index.es-f3e47207.js} +20 -4
  76. package/dist/cjs/index.js +12 -12
  77. package/dist/cjs/{main-11ec04d2.js → main-7b5e57b0.js} +32 -28
  78. package/dist/cjs/{moment-66a6a284.js → moment-ca3bd9fb.js} +10 -8
  79. package/dist/cjs/timeDifferenceCalc.js +1 -1
  80. package/dist/esm/AD300x250.js +2 -2
  81. package/dist/esm/AD300x250x600.js +2 -2
  82. package/dist/esm/AD728x90.js +3 -3
  83. package/dist/esm/ADFloatingFooter.js +1 -1
  84. package/dist/esm/ADGutter.js +1 -1
  85. package/dist/esm/ADSkyscraper.js +1 -1
  86. package/dist/esm/ADSponsoredResources.js +1 -1
  87. package/dist/esm/ADWebcast.js +1 -1
  88. package/dist/esm/ADWelcome.js +1 -1
  89. package/dist/esm/AdSlot.js +2 -75
  90. package/dist/esm/AdSlotsProvider.js +5 -14
  91. package/dist/esm/AlgoliaSearch.js +17 -35
  92. package/dist/esm/ArticleCarousel.js +1 -1
  93. package/dist/esm/ArticleProgramLandingPage.js +5 -5
  94. package/dist/esm/ArticleSeriesLandingPage.js +5 -5
  95. package/dist/esm/ArticleSeriesListing.js +3 -3
  96. package/dist/esm/Auth.js +42 -7
  97. package/dist/esm/AuthWrapper.js +228 -189
  98. package/dist/esm/CMEDeck.js +3 -3
  99. package/dist/esm/Column3.js +3 -3
  100. package/dist/esm/ConferenceArticleCard.js +16 -16
  101. package/dist/esm/DeckContent.js +13 -13
  102. package/dist/esm/DeckQueue.js +12 -6
  103. package/dist/esm/EventsDeck.js +21 -21
  104. package/dist/esm/ExternalResources.js +5 -5
  105. package/dist/esm/Feature.js +2 -2
  106. package/dist/esm/ForbesHero.js +1 -1
  107. package/dist/esm/GridContent.js +8 -8
  108. package/dist/esm/GridHero.js +1 -1
  109. package/dist/esm/HamMagazine.js +15 -15
  110. package/dist/esm/HighlightenVideo.js +1 -1
  111. package/dist/esm/HorizontalArticleListing.js +4 -4
  112. package/dist/esm/HorizontalHero.js +1 -1
  113. package/dist/esm/IssueContentDeck.js +1 -1
  114. package/dist/esm/IssueDeck.js +1 -1
  115. package/dist/esm/IssueLanding.js +36 -36
  116. package/dist/esm/KMTracker.js +15 -15
  117. package/dist/esm/LeftNav.js +1 -1
  118. package/dist/esm/MasterDeck.js +13 -13
  119. package/dist/esm/MediaSeriesLanding.js +149 -193
  120. package/dist/esm/NavMagazine.js +14 -14
  121. package/dist/esm/NavNative.js +12 -12
  122. package/dist/esm/OncliveHero.js +1 -1
  123. package/dist/esm/OncliveLargeHero.js +1 -1
  124. package/dist/esm/PartnerDetailListing.js +7 -7
  125. package/dist/esm/PubSection.js +5 -5
  126. package/dist/esm/PublicationLanding.js +26 -26
  127. package/dist/esm/QueueDeckExpanded.js +7 -7
  128. package/dist/esm/RelatedContent.js +29 -29
  129. package/dist/esm/RelatedTopicsDropdown.js +10 -10
  130. package/dist/esm/SeriesListingDeck.js +3 -3
  131. package/dist/esm/{SeriesSlider-802c4daf.js → SeriesSlider-935e2b4e.js} +10 -10
  132. package/dist/esm/SideFooter.js +2 -2
  133. package/dist/esm/{SocialSearchComponent-82ac7d6d.js → SocialSearchComponent-94f6554c.js} +3 -3
  134. package/dist/esm/TaxonomyDescription.js +4 -4
  135. package/dist/esm/TemplateNormal.js +2 -2
  136. package/dist/esm/Ustream.js +2 -2
  137. package/dist/esm/VerticalHero.js +1 -1
  138. package/dist/esm/VideoProgramLandingPage.js +5 -5
  139. package/dist/esm/VideoSeriesCard.js +2 -2
  140. package/dist/esm/VideoSeriesLandingPage.js +5 -5
  141. package/dist/esm/VideoSeriesListing.js +3 -3
  142. package/dist/esm/View.js +22 -14
  143. package/dist/esm/YahooHero.js +1 -1
  144. package/dist/esm/YoutubeGroup.js +10 -10
  145. package/dist/esm/{brightcove-react-player-loader.es-e1c6b0f2.js → brightcove-react-player-loader.es-4abff0b1.js} +4 -3
  146. package/dist/esm/getRelatedArticle.js +62 -126
  147. package/dist/esm/getSerializers.js +4 -4
  148. package/dist/esm/{getTargeting-831bc794.js → getTargeting-82e86707.js} +9 -9
  149. package/dist/esm/getTargeting.js +1 -1
  150. package/dist/esm/{index-a5e7c80c.js → index-a69960c8.js} +12 -12
  151. package/dist/esm/{index-b68072f5.js → index-aaa2dae0.js} +1 -10
  152. package/dist/esm/{index-d2f90501.js → index-c00b0bbb.js} +16 -17
  153. package/dist/esm/{index.es-7dda2f0a.js → index.es-c6222053.js} +20 -4
  154. package/dist/esm/index.js +12 -12
  155. package/dist/esm/{main-aef58dbc.js → main-747e7d25.js} +32 -28
  156. package/dist/esm/{moment-12415288.js → moment-b6f49411.js} +10 -8
  157. package/dist/esm/timeDifferenceCalc.js +1 -1
  158. package/package.json +110 -110
  159. /package/dist/cjs/{ADInfeed-abcd28ad.js → ADInfeed-0158bee3.js} +0 -0
  160. /package/dist/cjs/{ADlgInfeed-ed0bff5b.js → ADlgInfeed-3583144f.js} +0 -0
  161. /package/dist/esm/{ADInfeed-fc937563.js → ADInfeed-427022e9.js} +0 -0
  162. /package/dist/esm/{ADlgInfeed-d5032b24.js → ADlgInfeed-28d3f944.js} +0 -0
@@ -23,18 +23,18 @@ require('react-bootstrap/Container');
23
23
  require('react-bootstrap/Row');
24
24
  require('react-bootstrap/Col');
25
25
  require('react-bootstrap/Card');
26
- var moment = require('./moment-66a6a284.js');
26
+ var moment = require('./moment-ca3bd9fb.js');
27
27
  require('next/router');
28
28
  require('./isSymbol-04666465.js');
29
29
  require('./debounce-529c8d06.js');
30
30
  require('./toNumber-36d1e7e5.js');
31
- require('./index.es-13533f24.js');
31
+ require('./index.es-f3e47207.js');
32
32
  var ReactDOM = require('react-dom');
33
33
  require('./visibility-sensor-eb2c5b69.js');
34
34
  require('./index-b5eb3ff8.js');
35
35
  var urlFor = require('./urlFor.js');
36
36
  var index$1 = require('./index-9d365128.js');
37
- require('./main-11ec04d2.js');
37
+ require('./main-7b5e57b0.js');
38
38
  require('./entities-310b46ee.js');
39
39
  var slicedToArray = require('./slicedToArray-8f385299.js');
40
40
  require('./stringify-7c5aff47.js');
@@ -42,9 +42,9 @@ var asyncToGenerator = require('./asyncToGenerator-140e5f89.js');
42
42
  require('./Segment.js');
43
43
  require('./Beam.js');
44
44
  require('./AdSlot.js');
45
- require('./ADInfeed-abcd28ad.js');
45
+ require('./ADInfeed-0158bee3.js');
46
46
  require('./lodash-7fd85bcf.js');
47
- require('./ADlgInfeed-ed0bff5b.js');
47
+ require('./ADlgInfeed-3583144f.js');
48
48
  var BlockContent = require('./BlockContent-8b494587.js');
49
49
  require('./index-187c967e.js');
50
50
  require('./smoothscroll-5054361f.js');
@@ -52,9 +52,9 @@ require('./GroupDeck.js');
52
52
  require('react-bootstrap');
53
53
  require('./iconBase-68959171.js');
54
54
  require('./index.esm-974f47d9.js');
55
- var getSerializers = require('./index-be7af3a5.js');
55
+ var getSerializers = require('./index-f30a10d6.js');
56
56
  require('./util-f2c1b65b.js');
57
- require('./brightcove-react-player-loader.es-4ba0d3d5.js');
57
+ require('./brightcove-react-player-loader.es-5c98aec7.js');
58
58
  require('next/head');
59
59
  require('react-share');
60
60
  require('./SocialShare.js');
@@ -64,7 +64,7 @@ require('react-bootstrap/Button');
64
64
  require('react-bootstrap/Figure');
65
65
  var MasterDeck = require('./MasterDeck.js');
66
66
  var defineProperty = require('./defineProperty-55548b25.js');
67
- var index = require('./index-f0677b9d.js');
67
+ var index = require('./index-e2e62963.js');
68
68
  var styleInject_es = require('./style-inject.es-dcee06b6.js');
69
69
  var Link = require('next/link');
70
70
 
@@ -183,7 +183,7 @@ function useUncontrolled(props, config) {
183
183
  function _inheritsLoose(subClass, superClass) {
184
184
  subClass.prototype = Object.create(superClass.prototype);
185
185
  subClass.prototype.constructor = subClass;
186
- index._setPrototypeOf(subClass, superClass);
186
+ subClass.__proto__ = superClass;
187
187
  }
188
188
 
189
189
  var ThemeContext = React__default['default'].createContext({});
@@ -1852,20 +1852,6 @@ function setChainedTimeout(handleRef, fn, timeoutAtMs) {
1852
1852
  /**
1853
1853
  * Returns a controller object for setting a timeout that is properly cleaned up
1854
1854
  * once the component unmounts. New timeouts cancel and replace existing ones.
1855
- *
1856
- *
1857
- *
1858
- * ```tsx
1859
- * const { set, clear } = useTimeout();
1860
- * const [hello, showHello] = useState(false);
1861
- * //Display hello after 5 seconds
1862
- * set(() => showHello(true), 5000);
1863
- * return (
1864
- * <div className="App">
1865
- * {hello ? <h3>Hello</h3> : null}
1866
- * </div>
1867
- * );
1868
- * ```
1869
1855
  */
1870
1856
 
1871
1857
 
@@ -2624,50 +2610,21 @@ function getBasePlacement(placement) {
2624
2610
  return placement.split('-')[0];
2625
2611
  }
2626
2612
 
2627
- function getBoundingClientRect(element) {
2628
- var rect = element.getBoundingClientRect();
2629
- return {
2630
- width: rect.width,
2631
- height: rect.height,
2632
- top: rect.top,
2633
- right: rect.right,
2634
- bottom: rect.bottom,
2635
- left: rect.left,
2636
- x: rect.left,
2637
- y: rect.top
2638
- };
2639
- }
2640
-
2613
+ // Returns the layout rect of an element relative to its offsetParent. Layout
2641
2614
  // means it doesn't take into account transforms.
2642
-
2643
2615
  function getLayoutRect(element) {
2644
- var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.
2645
- // Fixes https://github.com/popperjs/popper-core/issues/1223
2646
-
2647
- var width = element.offsetWidth;
2648
- var height = element.offsetHeight;
2649
-
2650
- if (Math.abs(clientRect.width - width) <= 1) {
2651
- width = clientRect.width;
2652
- }
2653
-
2654
- if (Math.abs(clientRect.height - height) <= 1) {
2655
- height = clientRect.height;
2656
- }
2657
-
2658
2616
  return {
2659
2617
  x: element.offsetLeft,
2660
2618
  y: element.offsetTop,
2661
- width: width,
2662
- height: height
2619
+ width: element.offsetWidth,
2620
+ height: element.offsetHeight
2663
2621
  };
2664
2622
  }
2665
2623
 
2666
- function getWindow(node) {
2667
- if (node == null) {
2668
- return window;
2669
- }
2624
+ /*:: import type { Window } from '../types'; */
2670
2625
 
2626
+ /*:: declare function getWindow(node: Node | Window): Window; */
2627
+ function getWindow(node) {
2671
2628
  if (node.toString() !== '[object Window]') {
2672
2629
  var ownerDocument = node.ownerDocument;
2673
2630
  return ownerDocument ? ownerDocument.defaultView || window : window;
@@ -2676,22 +2633,26 @@ function getWindow(node) {
2676
2633
  return node;
2677
2634
  }
2678
2635
 
2636
+ /*:: declare function isElement(node: mixed): boolean %checks(node instanceof
2637
+ Element); */
2638
+
2679
2639
  function isElement(node) {
2680
2640
  var OwnElement = getWindow(node).Element;
2681
2641
  return node instanceof OwnElement || node instanceof Element;
2682
2642
  }
2643
+ /*:: declare function isHTMLElement(node: mixed): boolean %checks(node instanceof
2644
+ HTMLElement); */
2645
+
2683
2646
 
2684
2647
  function isHTMLElement(node) {
2685
2648
  var OwnElement = getWindow(node).HTMLElement;
2686
2649
  return node instanceof OwnElement || node instanceof HTMLElement;
2687
2650
  }
2651
+ /*:: declare function isShadowRoot(node: mixed): boolean %checks(node instanceof
2652
+ ShadowRoot); */
2688
2653
 
2689
- function isShadowRoot(node) {
2690
- // IE 11 has no ShadowRoot
2691
- if (typeof ShadowRoot === 'undefined') {
2692
- return false;
2693
- }
2694
2654
 
2655
+ function isShadowRoot(node) {
2695
2656
  var OwnElement = getWindow(node).ShadowRoot;
2696
2657
  return node instanceof OwnElement || node instanceof ShadowRoot;
2697
2658
  }
@@ -2708,7 +2669,7 @@ function contains(parent, child) {
2708
2669
  do {
2709
2670
  if (next && parent.isSameNode(next)) {
2710
2671
  return true;
2711
- } // $FlowFixMe[prop-missing]: need a better way to handle this...
2672
+ } // $FlowFixMe: need a better way to handle this...
2712
2673
 
2713
2674
 
2714
2675
  next = next.parentNode || next.host;
@@ -2732,9 +2693,8 @@ function isTableElement(element) {
2732
2693
  }
2733
2694
 
2734
2695
  function getDocumentElement(element) {
2735
- // $FlowFixMe[incompatible-return]: assume body is always available
2736
- return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]
2737
- element.document) || window.document).documentElement;
2696
+ // $FlowFixMe: assume body is always available
2697
+ return ((isElement(element) ? element.ownerDocument : element.document) || window.document).documentElement;
2738
2698
  }
2739
2699
 
2740
2700
  function getParentNode(element) {
@@ -2742,13 +2702,12 @@ function getParentNode(element) {
2742
2702
  return element;
2743
2703
  }
2744
2704
 
2745
- return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle
2746
- // $FlowFixMe[incompatible-return]
2747
- // $FlowFixMe[prop-missing]
2705
+ return (// $FlowFixMe: this is a quicker (but less type safe) way to save quite some bytes from the bundle
2748
2706
  element.assignedSlot || // step into the shadow DOM of the parent of a slotted node
2749
- element.parentNode || ( // DOM Element detected
2750
- isShadowRoot(element) ? element.host : null) || // ShadowRoot detected
2751
- // $FlowFixMe[incompatible-call]: HTMLElement is a Node
2707
+ element.parentNode || // DOM Element detected
2708
+ // $FlowFixMe: need a better way to handle this...
2709
+ element.host || // ShadowRoot detected
2710
+ // $FlowFixMe: HTMLElement is a Node
2752
2711
  getDocumentElement(element) // fallback
2753
2712
 
2754
2713
  );
@@ -2760,21 +2719,29 @@ function getTrueOffsetParent(element) {
2760
2719
  return null;
2761
2720
  }
2762
2721
 
2763
- return element.offsetParent;
2722
+ var offsetParent = element.offsetParent;
2723
+
2724
+ if (offsetParent) {
2725
+ var html = getDocumentElement(offsetParent);
2726
+
2727
+ if (getNodeName(offsetParent) === 'body' && getComputedStyle$2(offsetParent).position === 'static' && getComputedStyle$2(html).position !== 'static') {
2728
+ return html;
2729
+ }
2730
+ }
2731
+
2732
+ return offsetParent;
2764
2733
  } // `.offsetParent` reports `null` for fixed elements, while absolute elements
2765
2734
  // return the containing block
2766
2735
 
2767
2736
 
2768
2737
  function getContainingBlock(element) {
2769
- var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1;
2770
2738
  var currentNode = getParentNode(element);
2771
2739
 
2772
2740
  while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {
2773
2741
  var css = getComputedStyle$2(currentNode); // This is non-exhaustive but covers the most common CSS properties that
2774
2742
  // create a containing block.
2775
- // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
2776
2743
 
2777
- if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {
2744
+ if (css.transform !== 'none' || css.perspective !== 'none' || css.willChange && css.willChange !== 'auto') {
2778
2745
  return currentNode;
2779
2746
  } else {
2780
2747
  currentNode = currentNode.parentNode;
@@ -2794,7 +2761,7 @@ function getOffsetParent(element) {
2794
2761
  offsetParent = getTrueOffsetParent(offsetParent);
2795
2762
  }
2796
2763
 
2797
- if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle$2(offsetParent).position === 'static')) {
2764
+ if (offsetParent && getNodeName(offsetParent) === 'body' && getComputedStyle$2(offsetParent).position === 'static') {
2798
2765
  return window;
2799
2766
  }
2800
2767
 
@@ -2805,12 +2772,8 @@ function getMainAxisFromPlacement(placement) {
2805
2772
  return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';
2806
2773
  }
2807
2774
 
2808
- var max = Math.max;
2809
- var min = Math.min;
2810
- var round = Math.round;
2811
-
2812
- function within(min$1, value, max$1) {
2813
- return max(min$1, min(value, max$1));
2775
+ function within(min, value, max) {
2776
+ return Math.max(min, Math.min(value, max));
2814
2777
  }
2815
2778
 
2816
2779
  function getFreshSideObject() {
@@ -2823,7 +2786,7 @@ function getFreshSideObject() {
2823
2786
  }
2824
2787
 
2825
2788
  function mergePaddingObject(paddingObject) {
2826
- return Object.assign({}, getFreshSideObject(), paddingObject);
2789
+ return Object.assign(Object.assign({}, getFreshSideObject()), paddingObject);
2827
2790
  }
2828
2791
 
2829
2792
  function expandToHashMap(value, keys) {
@@ -2833,19 +2796,11 @@ function expandToHashMap(value, keys) {
2833
2796
  }, {});
2834
2797
  }
2835
2798
 
2836
- var toPaddingObject = function toPaddingObject(padding, state) {
2837
- padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {
2838
- placement: state.placement
2839
- })) : padding;
2840
- return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));
2841
- };
2842
-
2843
2799
  function arrow(_ref) {
2844
2800
  var _state$modifiersData$;
2845
2801
 
2846
2802
  var state = _ref.state,
2847
- name = _ref.name,
2848
- options = _ref.options;
2803
+ name = _ref.name;
2849
2804
  var arrowElement = state.elements.arrow;
2850
2805
  var popperOffsets = state.modifiersData.popperOffsets;
2851
2806
  var basePlacement = getBasePlacement(state.placement);
@@ -2857,7 +2812,7 @@ function arrow(_ref) {
2857
2812
  return;
2858
2813
  }
2859
2814
 
2860
- var paddingObject = toPaddingObject(options.padding, state);
2815
+ var paddingObject = state.modifiersData[name + "#persistent"].padding;
2861
2816
  var arrowRect = getLayoutRect(arrowElement);
2862
2817
  var minProp = axis === 'y' ? top : left;
2863
2818
  var maxProp = axis === 'y' ? bottom : right;
@@ -2879,9 +2834,12 @@ function arrow(_ref) {
2879
2834
 
2880
2835
  function effect(_ref2) {
2881
2836
  var state = _ref2.state,
2882
- options = _ref2.options;
2837
+ options = _ref2.options,
2838
+ name = _ref2.name;
2883
2839
  var _options$element = options.element,
2884
- arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;
2840
+ arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element,
2841
+ _options$padding = options.padding,
2842
+ padding = _options$padding === void 0 ? 0 : _options$padding;
2885
2843
 
2886
2844
  if (arrowElement == null) {
2887
2845
  return;
@@ -2911,6 +2869,9 @@ function effect(_ref2) {
2911
2869
  }
2912
2870
 
2913
2871
  state.elements.arrow = arrowElement;
2872
+ state.modifiersData[name + "#persistent"] = {
2873
+ padding: mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements))
2874
+ };
2914
2875
  } // eslint-disable-next-line import/no-unused-modules
2915
2876
 
2916
2877
 
@@ -2933,14 +2894,14 @@ var unsetSides = {
2933
2894
  // Zooming can change the DPR, but it seems to report a value that will
2934
2895
  // cleanly divide the values into the appropriate subpixels.
2935
2896
 
2936
- function roundOffsetsByDPR(_ref) {
2897
+ function roundOffsets(_ref) {
2937
2898
  var x = _ref.x,
2938
2899
  y = _ref.y;
2939
2900
  var win = window;
2940
2901
  var dpr = win.devicePixelRatio || 1;
2941
2902
  return {
2942
- x: round(round(x * dpr) / dpr) || 0,
2943
- y: round(round(y * dpr) / dpr) || 0
2903
+ x: Math.round(x * dpr) / dpr || 0,
2904
+ y: Math.round(y * dpr) / dpr || 0
2944
2905
  };
2945
2906
  }
2946
2907
 
@@ -2953,14 +2914,11 @@ function mapToStyles(_ref2) {
2953
2914
  offsets = _ref2.offsets,
2954
2915
  position = _ref2.position,
2955
2916
  gpuAcceleration = _ref2.gpuAcceleration,
2956
- adaptive = _ref2.adaptive,
2957
- roundOffsets = _ref2.roundOffsets;
2917
+ adaptive = _ref2.adaptive;
2958
2918
 
2959
- var _ref3 = roundOffsets === true ? roundOffsetsByDPR(offsets) : typeof roundOffsets === 'function' ? roundOffsets(offsets) : offsets,
2960
- _ref3$x = _ref3.x,
2961
- x = _ref3$x === void 0 ? 0 : _ref3$x,
2962
- _ref3$y = _ref3.y,
2963
- y = _ref3$y === void 0 ? 0 : _ref3$y;
2919
+ var _roundOffsets = roundOffsets(offsets),
2920
+ x = _roundOffsets.x,
2921
+ y = _roundOffsets.y;
2964
2922
 
2965
2923
  var hasX = offsets.hasOwnProperty('x');
2966
2924
  var hasY = offsets.hasOwnProperty('y');
@@ -2970,32 +2928,23 @@ function mapToStyles(_ref2) {
2970
2928
 
2971
2929
  if (adaptive) {
2972
2930
  var offsetParent = getOffsetParent(popper);
2973
- var heightProp = 'clientHeight';
2974
- var widthProp = 'clientWidth';
2975
2931
 
2976
2932
  if (offsetParent === getWindow(popper)) {
2977
2933
  offsetParent = getDocumentElement(popper);
2934
+ } // $FlowFixMe: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it
2978
2935
 
2979
- if (getComputedStyle$2(offsetParent).position !== 'static') {
2980
- heightProp = 'scrollHeight';
2981
- widthProp = 'scrollWidth';
2982
- }
2983
- } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it
2984
-
2936
+ /*:: offsetParent = (offsetParent: Element); */
2985
2937
 
2986
- offsetParent = offsetParent;
2987
2938
 
2988
2939
  if (placement === top) {
2989
- sideY = bottom; // $FlowFixMe[prop-missing]
2990
-
2991
- y -= offsetParent[heightProp] - popperRect.height;
2940
+ sideY = bottom;
2941
+ y -= offsetParent.clientHeight - popperRect.height;
2992
2942
  y *= gpuAcceleration ? 1 : -1;
2993
2943
  }
2994
2944
 
2995
2945
  if (placement === left) {
2996
- sideX = right; // $FlowFixMe[prop-missing]
2997
-
2998
- x -= offsetParent[widthProp] - popperRect.width;
2946
+ sideX = right;
2947
+ x -= offsetParent.clientWidth - popperRect.width;
2999
2948
  x *= gpuAcceleration ? 1 : -1;
3000
2949
  }
3001
2950
  }
@@ -3007,21 +2956,19 @@ function mapToStyles(_ref2) {
3007
2956
  if (gpuAcceleration) {
3008
2957
  var _Object$assign;
3009
2958
 
3010
- return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) < 2 ? "translate(" + x + "px, " + y + "px)" : "translate3d(" + x + "px, " + y + "px, 0)", _Object$assign));
2959
+ return Object.assign(Object.assign({}, commonStyles), {}, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) < 2 ? "translate(" + x + "px, " + y + "px)" : "translate3d(" + x + "px, " + y + "px, 0)", _Object$assign));
3011
2960
  }
3012
2961
 
3013
- return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + "px" : '', _Object$assign2[sideX] = hasX ? x + "px" : '', _Object$assign2.transform = '', _Object$assign2));
2962
+ return Object.assign(Object.assign({}, commonStyles), {}, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + "px" : '', _Object$assign2[sideX] = hasX ? x + "px" : '', _Object$assign2.transform = '', _Object$assign2));
3014
2963
  }
3015
2964
 
3016
- function computeStyles(_ref4) {
3017
- var state = _ref4.state,
3018
- options = _ref4.options;
2965
+ function computeStyles(_ref3) {
2966
+ var state = _ref3.state,
2967
+ options = _ref3.options;
3019
2968
  var _options$gpuAccelerat = options.gpuAcceleration,
3020
2969
  gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,
3021
2970
  _options$adaptive = options.adaptive,
3022
- adaptive = _options$adaptive === void 0 ? true : _options$adaptive,
3023
- _options$roundOffsets = options.roundOffsets,
3024
- roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;
2971
+ adaptive = _options$adaptive === void 0 ? true : _options$adaptive;
3025
2972
 
3026
2973
  if (process.env.NODE_ENV !== "production") {
3027
2974
  var transitionProperty = getComputedStyle$2(state.elements.popper).transitionProperty || '';
@@ -3041,24 +2988,22 @@ function computeStyles(_ref4) {
3041
2988
  };
3042
2989
 
3043
2990
  if (state.modifiersData.popperOffsets != null) {
3044
- state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {
2991
+ state.styles.popper = Object.assign(Object.assign({}, state.styles.popper), mapToStyles(Object.assign(Object.assign({}, commonStyles), {}, {
3045
2992
  offsets: state.modifiersData.popperOffsets,
3046
2993
  position: state.options.strategy,
3047
- adaptive: adaptive,
3048
- roundOffsets: roundOffsets
2994
+ adaptive: adaptive
3049
2995
  })));
3050
2996
  }
3051
2997
 
3052
2998
  if (state.modifiersData.arrow != null) {
3053
- state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {
2999
+ state.styles.arrow = Object.assign(Object.assign({}, state.styles.arrow), mapToStyles(Object.assign(Object.assign({}, commonStyles), {}, {
3054
3000
  offsets: state.modifiersData.arrow,
3055
3001
  position: 'absolute',
3056
- adaptive: false,
3057
- roundOffsets: roundOffsets
3002
+ adaptive: false
3058
3003
  })));
3059
3004
  }
3060
3005
 
3061
- state.attributes.popper = Object.assign({}, state.attributes.popper, {
3006
+ state.attributes.popper = Object.assign(Object.assign({}, state.attributes.popper), {}, {
3062
3007
  'data-popper-placement': state.placement
3063
3008
  });
3064
3009
  } // eslint-disable-next-line import/no-unused-modules
@@ -3142,6 +3087,20 @@ function getOppositeVariationPlacement(placement) {
3142
3087
  });
3143
3088
  }
3144
3089
 
3090
+ function getBoundingClientRect(element) {
3091
+ var rect = element.getBoundingClientRect();
3092
+ return {
3093
+ width: rect.width,
3094
+ height: rect.height,
3095
+ top: rect.top,
3096
+ right: rect.right,
3097
+ bottom: rect.bottom,
3098
+ left: rect.left,
3099
+ x: rect.left,
3100
+ y: rect.top
3101
+ };
3102
+ }
3103
+
3145
3104
  function getWindowScroll(node) {
3146
3105
  var win = getWindow(node);
3147
3106
  var scrollLeft = win.pageXOffset;
@@ -3204,18 +3163,16 @@ function getViewportRect(element) {
3204
3163
  // of the `<html>` and `<body>` rect bounds if horizontally scrollable
3205
3164
 
3206
3165
  function getDocumentRect(element) {
3207
- var _element$ownerDocumen;
3208
-
3209
3166
  var html = getDocumentElement(element);
3210
3167
  var winScroll = getWindowScroll(element);
3211
- var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;
3212
- var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);
3213
- var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);
3168
+ var body = element.ownerDocument.body;
3169
+ var width = Math.max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);
3170
+ var height = Math.max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);
3214
3171
  var x = -winScroll.scrollLeft + getWindowScrollBarX(element);
3215
3172
  var y = -winScroll.scrollTop;
3216
3173
 
3217
3174
  if (getComputedStyle$2(body || html).direction === 'rtl') {
3218
- x += max(html.clientWidth, body ? body.clientWidth : 0) - width;
3175
+ x += Math.max(html.clientWidth, body ? body.clientWidth : 0) - width;
3219
3176
  }
3220
3177
 
3221
3178
  return {
@@ -3238,7 +3195,7 @@ function isScrollParent(element) {
3238
3195
 
3239
3196
  function getScrollParent(node) {
3240
3197
  if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {
3241
- // $FlowFixMe[incompatible-return]: assume body is always available
3198
+ // $FlowFixMe: assume body is always available
3242
3199
  return node.ownerDocument.body;
3243
3200
  }
3244
3201
 
@@ -3252,28 +3209,26 @@ function getScrollParent(node) {
3252
3209
  /*
3253
3210
  given a DOM element, return the list of all scroll parents, up the list of ancesors
3254
3211
  until we get to the top window object. This list is what we attach scroll listeners
3255
- to, because if any of these parent elements scroll, we'll need to re-calculate the
3212
+ to, because if any of these parent elements scroll, we'll need to re-calculate the
3256
3213
  reference element's position.
3257
3214
  */
3258
3215
 
3259
3216
  function listScrollParents(element, list) {
3260
- var _element$ownerDocumen;
3261
-
3262
3217
  if (list === void 0) {
3263
3218
  list = [];
3264
3219
  }
3265
3220
 
3266
3221
  var scrollParent = getScrollParent(element);
3267
- var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);
3222
+ var isBody = getNodeName(scrollParent) === 'body';
3268
3223
  var win = getWindow(scrollParent);
3269
3224
  var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;
3270
3225
  var updatedList = list.concat(target);
3271
- return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here
3226
+ return isBody ? updatedList : // $FlowFixMe: isBody tells us target will be an HTMLElement here
3272
3227
  updatedList.concat(listScrollParents(getParentNode(target)));
3273
3228
  }
3274
3229
 
3275
3230
  function rectToClientRect(rect) {
3276
- return Object.assign({}, rect, {
3231
+ return Object.assign(Object.assign({}, rect), {}, {
3277
3232
  left: rect.x,
3278
3233
  top: rect.y,
3279
3234
  right: rect.x + rect.width,
@@ -3308,7 +3263,7 @@ function getClippingParents(element) {
3308
3263
 
3309
3264
  if (!isElement(clipperElement)) {
3310
3265
  return [];
3311
- } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414
3266
+ } // $FlowFixMe: https://github.com/facebook/flow/issues/1414
3312
3267
 
3313
3268
 
3314
3269
  return clippingParents.filter(function (clippingParent) {
@@ -3324,10 +3279,10 @@ function getClippingRect(element, boundary, rootBoundary) {
3324
3279
  var firstClippingParent = clippingParents[0];
3325
3280
  var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {
3326
3281
  var rect = getClientRectFromMixedType(element, clippingParent);
3327
- accRect.top = max(rect.top, accRect.top);
3328
- accRect.right = min(rect.right, accRect.right);
3329
- accRect.bottom = min(rect.bottom, accRect.bottom);
3330
- accRect.left = max(rect.left, accRect.left);
3282
+ accRect.top = Math.max(rect.top, accRect.top);
3283
+ accRect.right = Math.min(rect.right, accRect.right);
3284
+ accRect.bottom = Math.min(rect.bottom, accRect.bottom);
3285
+ accRect.left = Math.max(rect.left, accRect.left);
3331
3286
  return accRect;
3332
3287
  }, getClientRectFromMixedType(element, firstClippingParent));
3333
3288
  clippingRect.width = clippingRect.right - clippingRect.left;
@@ -3394,11 +3349,11 @@ function computeOffsets(_ref) {
3394
3349
 
3395
3350
  switch (variation) {
3396
3351
  case start:
3397
- offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);
3352
+ offsets[mainAxis] = Math.floor(offsets[mainAxis]) - Math.floor(reference[len] / 2 - element[len] / 2);
3398
3353
  break;
3399
3354
 
3400
3355
  case end:
3401
- offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);
3356
+ offsets[mainAxis] = Math.floor(offsets[mainAxis]) + Math.ceil(reference[len] / 2 - element[len] / 2);
3402
3357
  break;
3403
3358
  }
3404
3359
  }
@@ -3437,7 +3392,7 @@ function detectOverflow(state, options) {
3437
3392
  strategy: 'absolute',
3438
3393
  placement: placement
3439
3394
  });
3440
- var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));
3395
+ var popperClientRect = rectToClientRect(Object.assign(Object.assign({}, popperRect), popperOffsets));
3441
3396
  var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect
3442
3397
  // 0 or negative = within the clipping rect
3443
3398
 
@@ -3461,6 +3416,9 @@ function detectOverflow(state, options) {
3461
3416
  return overflowOffsets;
3462
3417
  }
3463
3418
 
3419
+ /*:: type OverflowsMap = { [ComputedPlacement]: number }; */
3420
+
3421
+ /*;; type OverflowsMap = { [key in ComputedPlacement]: number }; */
3464
3422
  function computeAutoPlacement(state, options) {
3465
3423
  if (options === void 0) {
3466
3424
  options = {};
@@ -3477,7 +3435,8 @@ function computeAutoPlacement(state, options) {
3477
3435
  var variation = getVariation(placement);
3478
3436
  var placements$1 = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {
3479
3437
  return getVariation(placement) === variation;
3480
- }) : basePlacements;
3438
+ }) : basePlacements; // $FlowFixMe
3439
+
3481
3440
  var allowedPlacements = placements$1.filter(function (placement) {
3482
3441
  return allowedAutoPlacements.indexOf(placement) >= 0;
3483
3442
  });
@@ -3488,7 +3447,7 @@ function computeAutoPlacement(state, options) {
3488
3447
  if (process.env.NODE_ENV !== "production") {
3489
3448
  console.error(['Popper: The `allowedAutoPlacements` option did not allow any', 'placements. Ensure the `placement` option matches the variation', 'of the allowed placements.', 'For example, "auto" cannot be used to allow "bottom-start".', 'Use "auto-start" instead.'].join(' '));
3490
3449
  }
3491
- } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...
3450
+ } // $FlowFixMe: Flow seems to have problems with two array unions...
3492
3451
 
3493
3452
 
3494
3453
  var overflows = allowedPlacements.reduce(function (acc, placement) {
@@ -3689,7 +3648,7 @@ function hide(_ref) {
3689
3648
  isReferenceHidden: isReferenceHidden,
3690
3649
  hasPopperEscaped: hasPopperEscaped
3691
3650
  };
3692
- state.attributes.popper = Object.assign({}, state.attributes.popper, {
3651
+ state.attributes.popper = Object.assign(Object.assign({}, state.attributes.popper), {}, {
3693
3652
  'data-popper-reference-hidden': isReferenceHidden,
3694
3653
  'data-popper-escaped': hasPopperEscaped
3695
3654
  });
@@ -3708,7 +3667,7 @@ function distanceAndSkiddingToXY(placement, rects, offset) {
3708
3667
  var basePlacement = getBasePlacement(placement);
3709
3668
  var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;
3710
3669
 
3711
- var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {
3670
+ var _ref = typeof offset === 'function' ? offset(Object.assign(Object.assign({}, rects), {}, {
3712
3671
  placement: placement
3713
3672
  })) : offset,
3714
3673
  skidding = _ref[0],
@@ -3814,7 +3773,7 @@ function preventOverflow(_ref) {
3814
3773
  var popperOffsets = state.modifiersData.popperOffsets;
3815
3774
  var referenceRect = state.rects.reference;
3816
3775
  var popperRect = state.rects.popper;
3817
- var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {
3776
+ var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign(Object.assign({}, state.rects), {}, {
3818
3777
  placement: state.placement
3819
3778
  })) : tetherOffset;
3820
3779
  var data = {
@@ -3826,13 +3785,13 @@ function preventOverflow(_ref) {
3826
3785
  return;
3827
3786
  }
3828
3787
 
3829
- if (checkMainAxis || checkAltAxis) {
3788
+ if (checkMainAxis) {
3830
3789
  var mainSide = mainAxis === 'y' ? top : left;
3831
3790
  var altSide = mainAxis === 'y' ? bottom : right;
3832
3791
  var len = mainAxis === 'y' ? 'height' : 'width';
3833
3792
  var offset = popperOffsets[mainAxis];
3834
- var min$1 = popperOffsets[mainAxis] + overflow[mainSide];
3835
- var max$1 = popperOffsets[mainAxis] - overflow[altSide];
3793
+ var min = popperOffsets[mainAxis] + overflow[mainSide];
3794
+ var max = popperOffsets[mainAxis] - overflow[altSide];
3836
3795
  var additive = tether ? -popperRect[len] / 2 : 0;
3837
3796
  var minLen = variation === start ? referenceRect[len] : popperRect[len];
3838
3797
  var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go
@@ -3859,29 +3818,26 @@ function preventOverflow(_ref) {
3859
3818
  var offsetModifierValue = state.modifiersData.offset ? state.modifiersData.offset[state.placement][mainAxis] : 0;
3860
3819
  var tetherMin = popperOffsets[mainAxis] + minOffset - offsetModifierValue - clientOffset;
3861
3820
  var tetherMax = popperOffsets[mainAxis] + maxOffset - offsetModifierValue;
3821
+ var preventedOffset = within(tether ? Math.min(min, tetherMin) : min, offset, tether ? Math.max(max, tetherMax) : max);
3822
+ popperOffsets[mainAxis] = preventedOffset;
3823
+ data[mainAxis] = preventedOffset - offset;
3824
+ }
3862
3825
 
3863
- if (checkMainAxis) {
3864
- var preventedOffset = within(tether ? min(min$1, tetherMin) : min$1, offset, tether ? max(max$1, tetherMax) : max$1);
3865
- popperOffsets[mainAxis] = preventedOffset;
3866
- data[mainAxis] = preventedOffset - offset;
3867
- }
3868
-
3869
- if (checkAltAxis) {
3870
- var _mainSide = mainAxis === 'x' ? top : left;
3826
+ if (checkAltAxis) {
3827
+ var _mainSide = mainAxis === 'x' ? top : left;
3871
3828
 
3872
- var _altSide = mainAxis === 'x' ? bottom : right;
3829
+ var _altSide = mainAxis === 'x' ? bottom : right;
3873
3830
 
3874
- var _offset = popperOffsets[altAxis];
3831
+ var _offset = popperOffsets[altAxis];
3875
3832
 
3876
- var _min = _offset + overflow[_mainSide];
3833
+ var _min = _offset + overflow[_mainSide];
3877
3834
 
3878
- var _max = _offset - overflow[_altSide];
3835
+ var _max = _offset - overflow[_altSide];
3879
3836
 
3880
- var _preventedOffset = within(tether ? min(_min, tetherMin) : _min, _offset, tether ? max(_max, tetherMax) : _max);
3837
+ var _preventedOffset = within(_min, _offset, _max);
3881
3838
 
3882
- popperOffsets[altAxis] = _preventedOffset;
3883
- data[altAxis] = _preventedOffset - _offset;
3884
- }
3839
+ popperOffsets[altAxis] = _preventedOffset;
3840
+ data[altAxis] = _preventedOffset - _offset;
3885
3841
  }
3886
3842
 
3887
3843
  state.modifiersData[name] = data;
@@ -4112,9 +4068,9 @@ function uniqueBy(arr, fn) {
4112
4068
  function mergeByName(modifiers) {
4113
4069
  var merged = modifiers.reduce(function (merged, current) {
4114
4070
  var existing = merged[current.name];
4115
- merged[current.name] = existing ? Object.assign({}, existing, current, {
4116
- options: Object.assign({}, existing.options, current.options),
4117
- data: Object.assign({}, existing.data, current.data)
4071
+ merged[current.name] = existing ? Object.assign(Object.assign(Object.assign({}, existing), current), {}, {
4072
+ options: Object.assign(Object.assign({}, existing.options), current.options),
4073
+ data: Object.assign(Object.assign({}, existing.data), current.data)
4118
4074
  }) : current;
4119
4075
  return merged;
4120
4076
  }, {}); // IE11 does not support Object.values
@@ -4160,7 +4116,7 @@ function popperGenerator(generatorOptions) {
4160
4116
  var state = {
4161
4117
  placement: 'bottom',
4162
4118
  orderedModifiers: [],
4163
- options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),
4119
+ options: Object.assign(Object.assign({}, DEFAULT_OPTIONS), defaultOptions),
4164
4120
  modifiersData: {},
4165
4121
  elements: {
4166
4122
  reference: reference,
@@ -4175,7 +4131,7 @@ function popperGenerator(generatorOptions) {
4175
4131
  state: state,
4176
4132
  setOptions: function setOptions(options) {
4177
4133
  cleanupModifierEffects();
4178
- state.options = Object.assign({}, defaultOptions, state.options, options);
4134
+ state.options = Object.assign(Object.assign(Object.assign({}, defaultOptions), state.options), options);
4179
4135
  state.scrollParents = {
4180
4136
  reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],
4181
4137
  popper: listScrollParents(popper)
@@ -9387,7 +9343,7 @@ var Tooltip = React__default['default'].forwardRef(function (_ref, ref) {
9387
9343
  Tooltip.defaultProps = defaultProps$E;
9388
9344
  Tooltip.displayName = 'Tooltip';
9389
9345
 
9390
- var css = ".MediaSeriesCard-module_article__SAFYK {\n width: 100%;\n margin: 0 0 1rem 0;\n}\n.MediaSeriesCard-module_article__SAFYK a {\n display: flex;\n width: 100%;\n color: #000000;\n}\n.MediaSeriesCard-module_thumb__3jRAU {\n width: 25%;\n}\n.MediaSeriesCard-module_thumb__3jRAU img {\n width: 100%;\n height: auto;\n}\n.MediaSeriesCard-module_info__3L7_o {\n width: 75%;\n font-size: 1rem;\n}\n.MediaSeriesCard-module_info__3L7_o h2 {\n font-weight: bold;\n font-size: 1.25rem;\n margin: 0;\n}\n.MediaSeriesCard-module_published__E4oiz {\n color: #6d6d6d;\n margin: 0;\n}\n.MediaSeriesCard-module_summary__1xanh {\n margin: 0.5rem 0 0 0;\n}\n.MediaSeriesCard-module_author__e5fuR {\n margin: 0;\n}\n.MediaSeriesCard-module_author__e5fuR span {\n color: #6d6d6d;\n}\n.MediaSeriesCard-module_name__2m5KY {\n font-size: 1.3rem;\n font-weight: bold;\n}\n@media only screen and (max-width: 568px) {\n .MediaSeriesCard-module_article__SAFYK {\n margin: 1rem 0;\n box-shadow: 2px 4px 8px rgba(0,0,0,.2);\n }\n .MediaSeriesCard-module_article__SAFYK a {\n flex-direction: column;\n align-items: center;\n }\n .MediaSeriesCard-module_thumb__3jRAU {\n overflow: hidden;\n width: 100%;\n margin-bottom: 1rem;\n }\n .MediaSeriesCard-module_thumb__3jRAU img{\n border-radius: 10px 10px 0 0; \n }\n .MediaSeriesCard-module_thumb__3jRAU figure {\n margin: 0;\n }\n .MediaSeriesCard-module_info__3L7_o {\n width: 90%;\n padding: 0rem !important;\n }\n .MediaSeriesCard-module_info__3L7_o h2 {\n font-size: 1rem;\n }\n .MediaSeriesCard-module_name__2m5KY {\n font-size: 1rem;\n \n }\n}\n";
9346
+ var css = ".MediaSeriesCard-module_article__SAFYK {\r\n width: 100%;\r\n margin: 0 0 1rem 0;\r\n}\r\n.MediaSeriesCard-module_article__SAFYK a {\r\n display: flex;\r\n width: 100%;\r\n color: #000000;\r\n}\r\n.MediaSeriesCard-module_thumb__3jRAU {\r\n width: 25%;\r\n}\r\n.MediaSeriesCard-module_thumb__3jRAU img {\r\n width: 100%;\r\n height: auto;\r\n}\r\n.MediaSeriesCard-module_info__3L7_o {\r\n width: 75%;\r\n font-size: 1rem;\r\n}\r\n.MediaSeriesCard-module_info__3L7_o h2 {\r\n font-weight: bold;\r\n font-size: 1.25rem;\r\n margin: 0;\r\n}\r\n.MediaSeriesCard-module_published__E4oiz {\r\n color: #6d6d6d;\r\n margin: 0;\r\n}\r\n.MediaSeriesCard-module_summary__1xanh {\r\n margin: 0.5rem 0 0 0;\r\n}\r\n.MediaSeriesCard-module_author__e5fuR {\r\n margin: 0;\r\n}\r\n.MediaSeriesCard-module_author__e5fuR span {\r\n color: #6d6d6d;\r\n}\r\n.MediaSeriesCard-module_name__2m5KY {\r\n font-size: 1.3rem;\r\n font-weight: bold;\r\n}\r\n@media only screen and (max-width: 568px) {\r\n .MediaSeriesCard-module_article__SAFYK {\r\n margin: 1rem 0;\r\n box-shadow: 2px 4px 8px rgba(0,0,0,.2);\r\n }\r\n .MediaSeriesCard-module_article__SAFYK a {\r\n flex-direction: column;\r\n align-items: center;\r\n }\r\n .MediaSeriesCard-module_thumb__3jRAU {\r\n overflow: hidden;\r\n width: 100%;\r\n margin-bottom: 1rem;\r\n }\r\n .MediaSeriesCard-module_thumb__3jRAU img{\r\n border-radius: 10px 10px 0 0; \r\n }\r\n .MediaSeriesCard-module_thumb__3jRAU figure {\r\n margin: 0;\r\n }\r\n .MediaSeriesCard-module_info__3L7_o {\r\n width: 90%;\r\n padding: 0rem !important;\r\n }\r\n .MediaSeriesCard-module_info__3L7_o h2 {\r\n font-size: 1rem;\r\n }\r\n .MediaSeriesCard-module_name__2m5KY {\r\n font-size: 1rem;\r\n \r\n }\r\n}\r\n";
9391
9347
  var styles = { "article": "MediaSeriesCard-module_article__SAFYK", "thumb": "MediaSeriesCard-module_thumb__3jRAU", "info": "MediaSeriesCard-module_info__3L7_o", "published": "MediaSeriesCard-module_published__E4oiz", "summary": "MediaSeriesCard-module_summary__1xanh", "author": "MediaSeriesCard-module_author__e5fuR", "name": "MediaSeriesCard-module_name__2m5KY" };
9392
9348
  styleInject_es.styleInject(css);
9393
9349
 
@@ -9474,11 +9430,11 @@ var Filter = function Filter(_ref) {
9474
9430
  _useState6 = slicedToArray._slicedToArray(_useState5, 2),
9475
9431
  grandChildData = _useState6[0],
9476
9432
  setGrandChildData = _useState6[1];
9477
- /*
9478
- {parent: showAll,
9479
- chidlren: show selected from parent,
9480
- grandchildren: show selected from children
9481
- }
9433
+ /*
9434
+ {parent: showAll,
9435
+ chidlren: show selected from parent,
9436
+ grandchildren: show selected from children
9437
+ }
9482
9438
  */
9483
9439
 
9484
9440