@mjhls/mjh-framework 1.0.221 → 1.0.223

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 (48) hide show
  1. package/README.md +174 -174
  2. package/dist/cjs/AdSlot-d87cef08.js +69 -0
  3. package/dist/cjs/DeckContent.js +116 -59
  4. package/dist/cjs/DeckQueue.js +3 -3
  5. package/dist/cjs/{Dfp-c4f1f12a.js → Dfp-8b6f25fe.js} +1 -1
  6. package/dist/cjs/{GridContent-089aa22c.js → GridContent-8b0ebfec.js} +26 -10
  7. package/dist/cjs/GridContent.js +5 -4
  8. package/dist/cjs/IssueContentDeck.js +1 -1
  9. package/dist/cjs/IssueDeck.js +1 -1
  10. package/dist/cjs/MasterDeck.js +11 -11
  11. package/dist/cjs/{Normal-47d9e184.js → Normal-78631b6e.js} +78 -93
  12. package/dist/cjs/PublicationDeck.js +1 -1
  13. package/dist/cjs/QueueDeckExpanded.js +6 -5
  14. package/dist/cjs/{TaxonomyCard-d97685e2.js → TaxonomyCard-f24d8ec9.js} +1 -1
  15. package/dist/cjs/TaxonomyCard.js +2 -2
  16. package/dist/cjs/TemplateNormal.js +3 -2
  17. package/dist/cjs/ThumbnailCard.js +1 -1
  18. package/dist/cjs/VideoSeriesListing.js +2 -2
  19. package/dist/cjs/{YoutubeGroup-ad994d02.js → YoutubeGroup-d2d9e57c.js} +4 -4
  20. package/dist/cjs/YoutubeGroup.js +1 -1
  21. package/dist/cjs/{index-a4c53ff4.js → index-eb596973.js} +18 -18
  22. package/dist/cjs/index.js +203 -182
  23. package/dist/cjs/{main-58839f4e.js → main-c1bd47fe.js} +6 -6
  24. package/dist/cjs/{visibility-sensor-bea3105d.js → visibility-sensor-59b2685c.js} +2501 -1437
  25. package/dist/esm/AdSlot-b67f8534.js +64 -0
  26. package/dist/esm/DeckContent.js +116 -59
  27. package/dist/esm/DeckQueue.js +3 -3
  28. package/dist/esm/{Dfp-6731ac01.js → Dfp-6c8d69e6.js} +1 -1
  29. package/dist/esm/{GridContent-214acb61.js → GridContent-0777cc42.js} +26 -10
  30. package/dist/esm/GridContent.js +5 -4
  31. package/dist/esm/IssueContentDeck.js +1 -1
  32. package/dist/esm/IssueDeck.js +1 -1
  33. package/dist/esm/MasterDeck.js +11 -11
  34. package/dist/esm/{Normal-be430fa9.js → Normal-7d33c7bf.js} +78 -92
  35. package/dist/esm/PublicationDeck.js +1 -1
  36. package/dist/esm/QueueDeckExpanded.js +6 -5
  37. package/dist/esm/{TaxonomyCard-f9c93953.js → TaxonomyCard-ca8c7c8a.js} +1 -1
  38. package/dist/esm/TaxonomyCard.js +2 -2
  39. package/dist/esm/TemplateNormal.js +3 -2
  40. package/dist/esm/ThumbnailCard.js +1 -1
  41. package/dist/esm/VideoSeriesListing.js +2 -2
  42. package/dist/esm/{YoutubeGroup-1368335c.js → YoutubeGroup-d3b92eb5.js} +4 -4
  43. package/dist/esm/YoutubeGroup.js +1 -1
  44. package/dist/esm/{index-ca4ff5cb.js → index-b7bbf1d4.js} +18 -18
  45. package/dist/esm/index.js +204 -183
  46. package/dist/esm/{main-dea495b7.js → main-2504c03f.js} +6 -6
  47. package/dist/esm/{visibility-sensor-675d3fa1.js → visibility-sensor-61158020.js} +2501 -1437
  48. package/package.json +93 -93
@@ -7,7 +7,7 @@ var React__default = _interopDefault(React);
7
7
  require('./_commonjsHelpers-3fc1f64e.js');
8
8
  var index = require('./index-0322e486.js');
9
9
  var PropTypes = _interopDefault(require('prop-types'));
10
- var visibilitySensor = require('./visibility-sensor-bea3105d.js');
10
+ var visibilitySensor = require('./visibility-sensor-59b2685c.js');
11
11
  var debounce = require('./debounce-a963b136.js');
12
12
  require('react-dom');
13
13
  var _babelHelpers = require('./_babelHelpers-f321c258.js');
@@ -9,20 +9,21 @@ var Container = _interopDefault(require('react-bootstrap/Container'));
9
9
  var Row = _interopDefault(require('react-bootstrap/Row'));
10
10
  var Col = _interopDefault(require('react-bootstrap/Col'));
11
11
  var Card = _interopDefault(require('react-bootstrap/Card'));
12
- var visibilitySensor = require('./visibility-sensor-bea3105d.js');
12
+ var visibilitySensor = require('./visibility-sensor-59b2685c.js');
13
13
  require('next/link');
14
14
  var Router = require('next/router');
15
15
  var Router__default = _interopDefault(Router);
16
16
  var debounce = require('./debounce-a963b136.js');
17
- var index$1 = require('./index-a4c53ff4.js');
17
+ var index$1 = require('./index-eb596973.js');
18
18
  var index$2 = require('./index-0d0efcfa.js');
19
- var main = require('./main-58839f4e.js');
19
+ var main = require('./main-c1bd47fe.js');
20
20
  var entities = require('./entities-3e0b4a16.js');
21
21
  var _babelHelpers = require('./_babelHelpers-f321c258.js');
22
+ var AdSlot = require('./AdSlot-d87cef08.js');
22
23
  var get$1 = require('./get-126b1712.js');
23
24
 
24
25
  var Dfp = React__default.lazy(function () {
25
- return new Promise(function (resolve) { resolve(require('./Dfp-c4f1f12a.js')); });
26
+ return Promise.resolve().then(function () { return require('./Dfp-8b6f25fe.js'); });
26
27
  });
27
28
 
28
29
  var AD = function AD(props) {
@@ -342,11 +343,22 @@ var GridContent = function (_React$Component) {
342
343
  var data = this.state.data;
343
344
  posts = data;
344
345
  var pos = 3;
345
- var i = 1;
346
- while (pos < posts.length) {
347
- brandInsight.targeting.pos = 'article' + i;
348
- posts = insert(posts, pos, brandInsight);
349
- i++;
346
+ for (var i = 1; pos < posts.length; i++) {
347
+ var inFeedAd = {
348
+ adUnit: brandInsight.adUnit,
349
+ className: brandInsight.className,
350
+ networkID: brandInsight.networkID,
351
+ sizes: brandInsight.sizes,
352
+ slotId: brandInsight.slotId,
353
+ targeting: {
354
+ pos: 'article' + i,
355
+ content_placement: brandInsight.targeting.content_placement,
356
+ document_url: brandInsight.targeting.document_url
357
+ },
358
+ _type: 'BrandInsight'
359
+ };
360
+
361
+ posts = insert(posts, pos, inFeedAd);
350
362
  pos += brandInsight.interval + 1;
351
363
  }
352
364
  } else {
@@ -494,7 +506,11 @@ var GridContent = function (_React$Component) {
494
506
  React__default.createElement(
495
507
  Card,
496
508
  { className: 'content-card ad-wrapper', style: { flexDirection: index === 0 || index % 4 === 0 ? 'top' : 'row' } },
497
- React__default.createElement(AD, { networkID: row.networkID, adUnit: row.adUnit, targeting: row.targeting, className: row.className, sizes: row.sizes, slotId: row.slotId })
509
+ React__default.createElement(
510
+ 'div',
511
+ { className: row.className },
512
+ React__default.createElement(AdSlot.DFPAdSlot, { networkID: row.networkID, adUnit: row.adUnit, slotId: row.slotId, targeting: row.targeting, sizes: row.sizes })
513
+ )
498
514
  )
499
515
  )
500
516
  );
@@ -8,18 +8,19 @@ require('react-bootstrap/Container');
8
8
  require('react-bootstrap/Row');
9
9
  require('react-bootstrap/Col');
10
10
  require('react-bootstrap/Card');
11
- require('./visibility-sensor-bea3105d.js');
11
+ require('./visibility-sensor-59b2685c.js');
12
12
  require('next/link');
13
13
  require('next/router');
14
14
  require('./debounce-a963b136.js');
15
15
  require('react-dom');
16
- require('./index-a4c53ff4.js');
16
+ require('./index-eb596973.js');
17
17
  require('./index-0d0efcfa.js');
18
- require('./main-58839f4e.js');
18
+ require('./main-c1bd47fe.js');
19
19
  require('./entities-3e0b4a16.js');
20
20
  require('./_babelHelpers-f321c258.js');
21
+ require('./AdSlot-d87cef08.js');
21
22
  require('./get-126b1712.js');
22
- var GridContent = require('./GridContent-089aa22c.js');
23
+ var GridContent = require('./GridContent-8b0ebfec.js');
23
24
 
24
25
 
25
26
 
@@ -11,7 +11,7 @@ var Col = _interopDefault(require('react-bootstrap/Col'));
11
11
  var Card = _interopDefault(require('react-bootstrap/Card'));
12
12
  require('next/link');
13
13
  require('react-dom');
14
- var index$1 = require('./index-a4c53ff4.js');
14
+ var index$1 = require('./index-eb596973.js');
15
15
  var index$2 = require('./index-0d0efcfa.js');
16
16
  var Badge = _interopDefault(require('react-bootstrap/Badge'));
17
17
 
@@ -11,7 +11,7 @@ var Col = _interopDefault(require('react-bootstrap/Col'));
11
11
  var Card = _interopDefault(require('react-bootstrap/Card'));
12
12
  require('next/link');
13
13
  require('react-dom');
14
- var index$1 = require('./index-a4c53ff4.js');
14
+ var index$1 = require('./index-eb596973.js');
15
15
  var index$2 = require('./index-0d0efcfa.js');
16
16
  var Button = _interopDefault(require('react-bootstrap/Button'));
17
17
 
@@ -11,14 +11,14 @@ var Container = _interopDefault(require('react-bootstrap/Container'));
11
11
  var Row = _interopDefault(require('react-bootstrap/Row'));
12
12
  require('react-bootstrap/Col');
13
13
  require('react-bootstrap/Card');
14
- var visibilitySensor = require('./visibility-sensor-bea3105d.js');
14
+ var visibilitySensor = require('./visibility-sensor-59b2685c.js');
15
15
  require('next/link');
16
16
  var Router = require('next/router');
17
17
  var Router__default = _interopDefault(Router);
18
18
  var debounce = require('./debounce-a963b136.js');
19
19
  require('react-dom');
20
- require('./index-a4c53ff4.js');
21
- var main = require('./main-58839f4e.js');
20
+ require('./index-eb596973.js');
21
+ var main = require('./main-c1bd47fe.js');
22
22
  var _babelHelpers = require('./_babelHelpers-f321c258.js');
23
23
 
24
24
  var MasterDeck = function (_React$Component) {
@@ -164,14 +164,14 @@ var MasterDeck = function (_React$Component) {
164
164
  var newPath = pageNumber === 1 ? '' + path : path + '?page=' + pageNumber;
165
165
 
166
166
  // please leave this for later debug purpose : Yong Jun.
167
- /* console.log('page change reported', {
168
- currentPage: currentPage,
169
- pageNumber: pageNumber,
170
- pathname: pathname,
171
- path: path,
172
- newPath: newPath,
173
- firstPage: pageNumber === 1,
174
- queryString: queryString
167
+ /* console.log('page change reported', {
168
+ currentPage: currentPage,
169
+ pageNumber: pageNumber,
170
+ pathname: pathname,
171
+ path: path,
172
+ newPath: newPath,
173
+ firstPage: pageNumber === 1,
174
+ queryString: queryString
175
175
  }) */
176
176
 
177
177
  if (pageview) {
@@ -5,15 +5,14 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
5
5
  var React = require('react');
6
6
  var React__default = _interopDefault(React);
7
7
  var _commonjsHelpers = require('./_commonjsHelpers-3fc1f64e.js');
8
- var index = require('./index-0322e486.js');
9
8
  var PropTypes = _interopDefault(require('prop-types'));
10
9
  var Container = _interopDefault(require('react-bootstrap/Container'));
11
10
  var Row = _interopDefault(require('react-bootstrap/Row'));
12
11
  var Col = _interopDefault(require('react-bootstrap/Col'));
13
12
  var Link = _interopDefault(require('next/link'));
14
- var debounce = require('./debounce-a963b136.js');
15
- var main = require('./main-58839f4e.js');
13
+ var main = require('./main-c1bd47fe.js');
16
14
  var _babelHelpers = require('./_babelHelpers-f321c258.js');
15
+ var AdSlot = require('./AdSlot-d87cef08.js');
17
16
  var get$1 = require('./get-126b1712.js');
18
17
  var reactBootstrap = require('react-bootstrap');
19
18
  var index_esm = require('./index.esm-340d3792.js');
@@ -675,8 +674,8 @@ var renderLink = function renderLink(row) {
675
674
  };
676
675
 
677
676
  var SideFooter = function SideFooter(props) {
678
- /*
679
- useage example: <SideFooter cache={props.cache} logo='/an_mjhls_brand_logo.png' />
677
+ /*
678
+ useage example: <SideFooter cache={props.cache} logo='/an_mjhls_brand_logo.png' />
680
679
  */
681
680
  var _get = get$1.get_1(props, 'cache.siteSettingCache', {}),
682
681
  socialLinks = _get.socialLinks,
@@ -951,6 +950,27 @@ var Column3 = function Column3(props) {
951
950
  showRightAd = props.showRightAd,
952
951
  logo = props.logo;
953
952
 
953
+ var adRef = React.useRef(null);
954
+
955
+ React.useEffect(function () {
956
+ if (!main.main_36) {
957
+ var navbar = document.querySelector('.navbar');
958
+ var AdOffsetTop = adRef.current.getBoundingClientRect().top;
959
+ window.addEventListener('scroll', function () {
960
+ if (window.pageYOffset + (AdOffsetTop - navbar.offsetHeight) > AdOffsetTop) {
961
+ if (adRef.current && adRef.current.style) {
962
+ adRef.current.style.position = 'fixed';
963
+ adRef.current.style.top = '60px';
964
+ }
965
+ } else {
966
+ if (adRef.current && adRef.current.style) {
967
+ adRef.current.style.position = 'relative';
968
+ adRef.current.style.top = '';
969
+ }
970
+ }
971
+ });
972
+ }
973
+ }, []);
954
974
 
955
975
  return React__default.createElement(
956
976
  'section',
@@ -998,7 +1018,7 @@ var Column3 = function Column3(props) {
998
1018
  website && website.conferenceBannerContent && React__default.createElement(ConferenceBanner, { website: website }),
999
1019
  React__default.createElement(
1000
1020
  'div',
1001
- { className: 'sticky-top', style: { top: '60px' } },
1021
+ { ref: adRef },
1002
1022
  rightItems && rightItems.map(function (row, index) {
1003
1023
  return React__default.createElement(
1004
1024
  'div',
@@ -1228,15 +1248,15 @@ var SocialNavFooter = function SocialNavFooter(props) {
1228
1248
  };
1229
1249
 
1230
1250
  var NavMagazine = function NavMagazine(props) {
1231
- /*
1232
- Example Nav with acceptable props
1233
- <MagazineNav
1234
- showLogin
1235
- logo={props.settings.logo}
1236
- dataObject={props.cache.mainNavCache}
1237
- website={website}
1238
- subNav={props.cache.subNavCache}
1239
- />
1251
+ /*
1252
+ Example Nav with acceptable props
1253
+ <MagazineNav
1254
+ showLogin
1255
+ logo={props.settings.logo}
1256
+ dataObject={props.cache.mainNavCache}
1257
+ website={website}
1258
+ subNav={props.cache.subNavCache}
1259
+ />
1240
1260
  */
1241
1261
 
1242
1262
  var logo = props.logo,
@@ -1524,15 +1544,15 @@ var NavMagazine = function NavMagazine(props) {
1524
1544
  var MagazineNav = React__default.memo(NavMagazine);
1525
1545
 
1526
1546
  var NavNative = function NavNative(props) {
1527
- /*
1528
- Example Nav with acceptable props
1529
- <MagazineNav
1530
- showLogin
1531
- logo={props.settings.logo}
1532
- dataObject={props.cache.mainNavCache}
1533
- website={website}
1534
- subNav={props.cache.subNavCache}
1535
- />
1547
+ /*
1548
+ Example Nav with acceptable props
1549
+ <MagazineNav
1550
+ showLogin
1551
+ logo={props.settings.logo}
1552
+ dataObject={props.cache.mainNavCache}
1553
+ website={website}
1554
+ subNav={props.cache.subNavCache}
1555
+ />
1536
1556
  */
1537
1557
 
1538
1558
  var logo = props.logo,
@@ -1926,15 +1946,15 @@ var NavDvm = function NavDvm(props) {
1926
1946
  };
1927
1947
 
1928
1948
  var HamMagazine = function HamMagazine(props) {
1929
- /*
1930
- Example Nav with acceptable props
1931
- <MagazineNav
1932
- showLogin
1933
- logo={props.settings.logo}
1934
- dataObject={props.cache.mainNavCache}
1935
- website={website}
1936
- subNav={props.cache.subNavCache}
1937
- />
1949
+ /*
1950
+ Example Nav with acceptable props
1951
+ <MagazineNav
1952
+ showLogin
1953
+ logo={props.settings.logo}
1954
+ dataObject={props.cache.mainNavCache}
1955
+ website={website}
1956
+ subNav={props.cache.subNavCache}
1957
+ />
1938
1958
  */
1939
1959
 
1940
1960
  var logo = props.logo,
@@ -1980,6 +2000,29 @@ var HamMagazine = function HamMagazine(props) {
1980
2000
  console.log('useEffect onClick', isOpen);
1981
2001
  }, [isOpen]);
1982
2002
 
2003
+ React.useEffect(function () {
2004
+ var navOffsetTop = navRef.current.getBoundingClientRect().top;
2005
+ var navOffsetHeight = navRef.current.getBoundingClientRect().height;
2006
+ var adSection = document.querySelector('.AD728x90');
2007
+ window.addEventListener('scroll', function () {
2008
+ if (window.pageYOffset > navOffsetTop) {
2009
+ if (navRef.current && navRef.current.style) {
2010
+ navRef.current.style.position = 'fixed';
2011
+ navRef.current.style.top = 0;
2012
+ navRef.current.style.width = '100%';
2013
+ navRef.current.style.zIndex = '9999';
2014
+ adSection.style.marginTop = navOffsetHeight + 'px';
2015
+ }
2016
+ } else {
2017
+ if (navRef.current && navRef.current.style) {
2018
+ navRef.current.style.position = 'relative';
2019
+ navRef.current.style.top = '';
2020
+ adSection.style.marginTop = '';
2021
+ }
2022
+ }
2023
+ });
2024
+ }, []);
2025
+
1983
2026
  var trackScrolling = function trackScrolling() {
1984
2027
  var offsetTop = navRef.current.getBoundingClientRect().top;
1985
2028
 
@@ -2231,68 +2274,11 @@ var HamMagazine = function HamMagazine(props) {
2231
2274
  React__default.createElement(
2232
2275
  'style',
2233
2276
  { jsx: 'true' },
2234
- '\n .sticky-home {\n position: relative;\n top: -3px;\n left: -6px;\n cursor: pointer;\n }\n .nav-item svg {\n margin-bottom: 2px;\n }\n #nav-login,\n #nav-logout,\n #nav-register {\n padding: 0.5rem;\n cursor: pointer;\n }\n #nav-mobile-login,\n #nav-mobile-logout,\n #nav-mobile-register {\n display: none;\n }\n #nav-mobile-logout,\n #nav-mobile-login {\n position: absolute;\n right: 1rem;\n }\n #nav-mobile-register {\n position: absolute;\n left: 1rem;\n }\n @media screen and (max-width: 376px) {\n .mobile-nav .nav-toggle .form-inline .mobile-search {\n width: 60%;\n }\n .mobile-nav .nav-toggle .form-inline {\n width: 70%;\n }\n }\n @media screen and (max-width: 328px) {\n .mobile-nav .nav-toggle .form-inline .mobile-search {\n margin-right: 5px;\n }\n }\n @media screen and (max-width: 767px) {\n .logo {\n width: 100%;\n padding-left: 10px;\n padding-right: 10px;\n }\n }\n @media screen and (max-width: 1199px) {\n .nav-close {\n position: sticky;\n top: -70px;\n }\n .nav-open {\n position: relative;\n }\n\n .mobile-nav .nav-toggle {\n width: 100%;\n }\n\n .android-nav {\n max-height: 80vh;\n }\n\n .ios-nav {\n max-height: none;\n }\n\n .navbar.bg-primary {\n overflow: auto;\n }\n\n .mobile-nav .nav-toggle .navbar-toggler {\n float: left;\n height: 45px;\n }\n .mobile-nav .nav-toggle .form-inline {\n float: right;\n margin: 4px 0px 0px 0px;\n }\n .mobile-nav .form-inline .mobile-search {\n width: auto;\n }\n .sticky-home {\n display: none;\n }\n .dropdown-menu {\n max-height: 315px;\n overflow: auto;\n }\n ::-webkit-scrollbar {\n width: 10px;\n }\n ::-webkit-scrollbar-thumb {\n border-radius: 4px;\n background-color: rgba(214, 214, 214, 0.8);\n box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);\n -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);\n }\n .navbar-expand-xl .show#basic-navbar-sub {\n display: block;\n }\n .navbar .mobile-nav .navbar-collapse.show {\n padding-bottom: 10px;\n border-bottom: 0.5px solid white;\n }\n .navbar .mobile-nav .navbar-collapse .form-inline {\n display: none;\n }\n .navbar .mobile-nav .navbar-collapse {\n margin-top: 15px;\n }\n .navbar .mobile-nav .navbar-collapse:last-child {\n border-bottom: none;\n margin-bottom: 0px;\n padding-bottom: 0px;\n margin-top: 0px;\n padding-top: 10px;\n }\n .navbar .mobile-nav .navbar-collapse .nav-footer ul {\n list-style-type: none;\n padding: inherit;\n margin-bottom: 0rem;\n }\n .navbar .mobile-nav .navbar-collapse .nav-footer .nav-link {\n text-transform: capitalize !important;\n font-weight: 300;\n }\n .navbar .mobile-nav .dropdown-item:focus {\n background-color: #696969;\n }\n .navbar .mobile-nav .dropdown-menu .dropdown-item {\n color: white;\n }\n .navbar .mobile-nav .dropdown-menu {\n background: inherit;\n border: none;\n }\n .navbar .mobile-nav .dropdown-menu.show {\n max-height: 100px;\n }\n }\n @media screen and (min-width: 1200px) {\n .nav-close {\n position: sticky;\n top: -70px;\n }\n #basic-navbar-sub {\n display: none !important;\n }\n .navbar .mobile-nav .dropdown-menu .dropdown-item {\n color: #696969;\n }\n .navbar .mobile-nav .dropdown-menu {\n background: white;\n border: 1 px solid #708090;\n }\n .mobile-nav .nav-toggle .form-inline {\n display: none;\n }\n }\n @media screen and (max-width: 1199px) {\n #nav-mobile-login,\n #nav-mobile-logout,\n #nav-mobile-register {\n display: block;\n }\n .navbar-top {\n flex-direction: row;\n justify-content: space-around !important;\n align-items: center;\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n width: 100%;\n }\n }\n '
2277
+ '\n .sticky-home {\n position: relative;\n top: -3px;\n left: -6px;\n cursor: pointer;\n }\n .nav-item svg {\n margin-bottom: 2px;\n }\n #nav-login,\n #nav-logout,\n #nav-register {\n padding: 0.5rem;\n cursor: pointer;\n }\n #nav-mobile-login,\n #nav-mobile-logout,\n #nav-mobile-register {\n display: none;\n }\n #nav-mobile-logout,\n #nav-mobile-login {\n position: absolute;\n right: 1rem;\n }\n #nav-mobile-register {\n position: absolute;\n left: 1rem;\n }\n @media screen and (max-width: 376px) {\n .mobile-nav .nav-toggle .form-inline .mobile-search {\n width: 60%;\n }\n .mobile-nav .nav-toggle .form-inline {\n width: 70%;\n }\n }\n @media screen and (max-width: 328px) {\n .mobile-nav .nav-toggle .form-inline .mobile-search {\n margin-right: 5px;\n }\n }\n @media screen and (max-width: 767px) {\n .logo {\n width: 100%;\n padding-left: 10px;\n padding-right: 10px;\n }\n }\n @media screen and (max-width: 1199px) {\n .nav-open {\n position: relative;\n }\n\n .mobile-nav .nav-toggle {\n width: 100%;\n }\n\n .android-nav {\n max-height: 80vh;\n }\n\n .ios-nav {\n max-height: none;\n }\n\n .navbar.bg-primary {\n overflow: auto;\n }\n\n .mobile-nav .nav-toggle .navbar-toggler {\n float: left;\n height: 45px;\n }\n .mobile-nav .nav-toggle .form-inline {\n float: right;\n margin: 4px 0px 0px 0px;\n }\n .mobile-nav .form-inline .mobile-search {\n width: auto;\n }\n .sticky-home {\n display: none;\n }\n .dropdown-menu {\n max-height: 315px;\n overflow: auto;\n }\n ::-webkit-scrollbar {\n width: 10px;\n }\n ::-webkit-scrollbar-thumb {\n border-radius: 4px;\n background-color: rgba(214, 214, 214, 0.8);\n box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);\n -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);\n }\n .navbar-expand-xl .show#basic-navbar-sub {\n display: block;\n }\n .navbar .mobile-nav .navbar-collapse.show {\n padding-bottom: 10px;\n border-bottom: 0.5px solid white;\n }\n .navbar .mobile-nav .navbar-collapse .form-inline {\n display: none;\n }\n .navbar .mobile-nav .navbar-collapse {\n margin-top: 15px;\n }\n .navbar .mobile-nav .navbar-collapse:last-child {\n border-bottom: none;\n margin-bottom: 0px;\n padding-bottom: 0px;\n margin-top: 0px;\n padding-top: 10px;\n }\n .navbar .mobile-nav .navbar-collapse .nav-footer ul {\n list-style-type: none;\n padding: inherit;\n margin-bottom: 0rem;\n }\n .navbar .mobile-nav .navbar-collapse .nav-footer .nav-link {\n text-transform: capitalize !important;\n font-weight: 300;\n }\n .navbar .mobile-nav .dropdown-item:focus {\n background-color: #696969;\n }\n .navbar .mobile-nav .dropdown-menu .dropdown-item {\n color: white;\n }\n .navbar .mobile-nav .dropdown-menu {\n background: inherit;\n border: none;\n }\n .navbar .mobile-nav .dropdown-menu.show {\n max-height: 100px;\n }\n }\n @media screen and (min-width: 1200px) {\n #basic-navbar-sub {\n display: none !important;\n }\n .navbar .mobile-nav .dropdown-menu .dropdown-item {\n color: #696969;\n }\n .navbar .mobile-nav .dropdown-menu {\n background: white;\n border: 1 px solid #708090;\n }\n .mobile-nav .nav-toggle .form-inline {\n display: none;\n }\n }\n @media screen and (max-width: 1199px) {\n #nav-mobile-login,\n #nav-mobile-logout,\n #nav-mobile-register {\n display: block;\n }\n .navbar-top {\n flex-direction: row;\n justify-content: space-around !important;\n align-items: center;\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n width: 100%;\n }\n }\n '
2235
2278
  )
2236
2279
  );
2237
2280
  };
2238
2281
 
2239
- var DFPAdSlot = function DFPAdSlot(_ref) {
2240
- var adUnit = _ref.adUnit,
2241
- sizeMapping = _ref.sizeMapping,
2242
- className = _ref.className,
2243
- slotId = _ref.slotId,
2244
- sizes = _ref.sizes,
2245
- _ref$targeting = _ref.targeting,
2246
- targeting = _ref$targeting === undefined ? {} : _ref$targeting;
2247
-
2248
- var _useState = React.useState(false),
2249
- _useState2 = _babelHelpers.slicedToArray(_useState, 2),
2250
- adRendered = _useState2[0],
2251
- setAdRendered = _useState2[1];
2252
-
2253
- var _useState3 = React.useState(false),
2254
- _useState4 = _babelHelpers.slicedToArray(_useState3, 2),
2255
- adRefreshable = _useState4[0],
2256
- setAdRefreshable = _useState4[1];
2257
-
2258
- var handleVisibilityChange = debounce.debounce_1(function (_ref2) {
2259
- var event = _ref2.event;
2260
-
2261
- if (event.inViewPercentage <= 0) {
2262
- setAdRefreshable(false);
2263
- } else {
2264
- setAdRefreshable(true);
2265
- }
2266
- }, 500);
2267
-
2268
- return React__default.createElement(
2269
- 'div',
2270
- { className: className },
2271
- React__default.createElement(index.lib_2, {
2272
- slotId: slotId,
2273
- sizes: sizes,
2274
- adUnit: adUnit,
2275
- sizeMapping: sizeMapping,
2276
- targetingArguments: targeting,
2277
- onSlotRender: function onSlotRender(eventData) {
2278
- setAdRendered(true);
2279
- },
2280
- onSlotVisibilityChanged: handleVisibilityChange,
2281
- shouldRefresh: function shouldRefresh() {
2282
- if (adRendered && adRefreshable) return true;else return false;
2283
- }
2284
- })
2285
- );
2286
- };
2287
-
2288
- DFPAdSlot.propTypes = {
2289
- adUnit: PropTypes.string.isRequired,
2290
- slotId: PropTypes.string,
2291
- className: PropTypes.string,
2292
- sizeMapping: PropTypes.array,
2293
- sizes: PropTypes.array
2294
- };
2295
-
2296
2282
  var AD728x90 = function AD728x90(_ref) {
2297
2283
  var networkID = _ref.networkID,
2298
2284
  adUnit = _ref.adUnit,
@@ -2300,7 +2286,7 @@ var AD728x90 = function AD728x90(_ref) {
2300
2286
  _ref$targeting = _ref.targeting,
2301
2287
  targeting = _ref$targeting === undefined ? {} : _ref$targeting;
2302
2288
 
2303
- return React__default.createElement(DFPAdSlot, {
2289
+ return React__default.createElement(AdSlot.DFPAdSlot, {
2304
2290
  slotId: slotId,
2305
2291
  networkID: networkID,
2306
2292
  adUnit: adUnit,
@@ -2418,7 +2404,6 @@ exports.AD728x90 = AD728x90;
2418
2404
  exports.Column1 = Column1;
2419
2405
  exports.Column2 = Column2;
2420
2406
  exports.Column3 = Column3;
2421
- exports.DFPAdSlot = DFPAdSlot;
2422
2407
  exports.HamMagazine = HamMagazine;
2423
2408
  exports.Header = Header$1;
2424
2409
  exports.LeftNav = LeftNav$1;
@@ -11,7 +11,7 @@ var Col = _interopDefault(require('react-bootstrap/Col'));
11
11
  var Card = _interopDefault(require('react-bootstrap/Card'));
12
12
  require('next/link');
13
13
  require('react-dom');
14
- var index$1 = require('./index-a4c53ff4.js');
14
+ var index$1 = require('./index-eb596973.js');
15
15
  var index$2 = require('./index-0d0efcfa.js');
16
16
  var Button = _interopDefault(require('react-bootstrap/Button'));
17
17
 
@@ -7,14 +7,14 @@ var React__default = _interopDefault(React);
7
7
  require('./_commonjsHelpers-3fc1f64e.js');
8
8
  var index = require('./index-0322e486.js');
9
9
  require('prop-types');
10
- var visibilitySensor = require('./visibility-sensor-bea3105d.js');
10
+ var visibilitySensor = require('./visibility-sensor-59b2685c.js');
11
11
  require('next/link');
12
12
  var Router = require('next/router');
13
13
  var Router__default = _interopDefault(Router);
14
14
  require('react-dom');
15
- var index$1 = require('./index-a4c53ff4.js');
15
+ var index$1 = require('./index-eb596973.js');
16
16
  var index$2 = require('./index-0d0efcfa.js');
17
- var main = require('./main-58839f4e.js');
17
+ var main = require('./main-c1bd47fe.js');
18
18
  var entities = require('./entities-3e0b4a16.js');
19
19
  var _babelHelpers = require('./_babelHelpers-f321c258.js');
20
20
  var reactBootstrap = require('react-bootstrap');
@@ -228,7 +228,8 @@ var cardLoader = function cardLoader(data, builder, mapping, values, seoPaginate
228
228
  }),
229
229
  showCategory && article.contentCategory && React__default.createElement(
230
230
  'p',
231
- { className: 'article-category',
231
+ {
232
+ className: 'article-category',
232
233
  style: {
233
234
  background: '#3FB618',
234
235
  color: '#ffffff',
@@ -401,7 +402,7 @@ var cardLoader = function cardLoader(data, builder, mapping, values, seoPaginate
401
402
  React__default.createElement(
402
403
  'style',
403
404
  { jsx: 'true' },
404
- '\n .feature-media > .media-body {\n -webkit-box-flex: none;\n -ms-flex: none;\n flex: none;\n }\n .img-wrapper img {\n max-height: 240px;\n height: auto;\n width: 100%;\n object-fit: contain;\n }\n .feature-wrapper {\n width: 100%;\n }\n .feature-wrapper img {\n width: 100%;\n margin-bottom: 1em;\n }\n @media only screen and (min-width: 768px) {\n .img-wrapper > img {\n padding-right: 1em;\n }\n }\n @media only screen and (max-width: 767px) {\n .img-wrapper {\n width: 100%;\n }\n .img-wrapper img {\n padding-bottom: 1em;\n }\n .media {\n flex-direction: column;\n }\n }\n '
405
+ '\n .feature-media > .media-body {\n -webkit-box-flex: none;\n -ms-flex: none;\n flex: none;\n }\n .img-wrapper img {\n max-height: 240px;\n height: auto;\n width: 100%;\n object-fit: contain;\n }\n .feature-wrapper {\n height: 100%;\n width: 100%;\n }\n .feature-wrapper img {\n width: 100%;\n margin-bottom: 1em;\n }\n @media only screen and (min-width: 768px) {\n .img-wrapper > img {\n padding-right: 1em;\n }\n }\n @media only screen and (max-width: 767px) {\n .img-wrapper {\n width: 100%;\n }\n .img-wrapper img {\n padding-bottom: 1em;\n }\n .media {\n flex-direction: column;\n }\n }\n '
405
406
  )
406
407
  );
407
408
  };
@@ -9,7 +9,7 @@ var Container = _interopDefault(require('react-bootstrap/Container'));
9
9
  var Row = _interopDefault(require('react-bootstrap/Row'));
10
10
  var Col = _interopDefault(require('react-bootstrap/Col'));
11
11
  var Card = _interopDefault(require('react-bootstrap/Card'));
12
- var index$1 = require('./index-a4c53ff4.js');
12
+ var index$1 = require('./index-eb596973.js');
13
13
  var index$2 = require('./index-0d0efcfa.js');
14
14
  var _babelHelpers = require('./_babelHelpers-f321c258.js');
15
15
 
@@ -8,10 +8,10 @@ require('react-bootstrap/Row');
8
8
  require('react-bootstrap/Col');
9
9
  require('react-bootstrap/Card');
10
10
  require('react-dom');
11
- require('./index-a4c53ff4.js');
11
+ require('./index-eb596973.js');
12
12
  require('./index-0d0efcfa.js');
13
13
  require('./_babelHelpers-f321c258.js');
14
- var TaxonomyCard = require('./TaxonomyCard-d97685e2.js');
14
+ var TaxonomyCard = require('./TaxonomyCard-f24d8ec9.js');
15
15
 
16
16
 
17
17
 
@@ -9,13 +9,14 @@ require('react-bootstrap/Row');
9
9
  require('react-bootstrap/Col');
10
10
  require('next/link');
11
11
  require('./debounce-a963b136.js');
12
- require('./main-58839f4e.js');
12
+ require('./main-c1bd47fe.js');
13
13
  require('./_babelHelpers-f321c258.js');
14
+ require('./AdSlot-d87cef08.js');
14
15
  require('./get-126b1712.js');
15
16
  require('react-bootstrap');
16
17
  require('./index.esm-340d3792.js');
17
18
  require('react-bootstrap/Button');
18
- var TemplateNormal = require('./Normal-47d9e184.js');
19
+ var TemplateNormal = require('./Normal-78631b6e.js');
19
20
  require('react-bootstrap/ListGroup');
20
21
  require('next/head');
21
22
  require('react-bootstrap/Nav');
@@ -7,7 +7,7 @@ var React__default = _interopDefault(React);
7
7
  require('./_commonjsHelpers-3fc1f64e.js');
8
8
  require('prop-types');
9
9
  require('react-dom');
10
- var index$1 = require('./index-a4c53ff4.js');
10
+ var index$1 = require('./index-eb596973.js');
11
11
  var index$2 = require('./index-0d0efcfa.js');
12
12
  var entities = require('./entities-3e0b4a16.js');
13
13
  var Media$1 = _interopDefault(require('react-bootstrap/Media'));
@@ -8,7 +8,7 @@ require('./_commonjsHelpers-3fc1f64e.js');
8
8
  var index = require('./index-0322e486.js');
9
9
  require('prop-types');
10
10
  var Container = _interopDefault(require('react-bootstrap/Container'));
11
- var visibilitySensor = require('./visibility-sensor-bea3105d.js');
11
+ var visibilitySensor = require('./visibility-sensor-59b2685c.js');
12
12
  require('next/link');
13
13
  var Router = require('next/router');
14
14
  var Router__default = _interopDefault(Router);
@@ -16,7 +16,7 @@ var debounce = require('./debounce-a963b136.js');
16
16
  require('react-dom');
17
17
  require('./index-0d0efcfa.js');
18
18
  var _babelHelpers = require('./_babelHelpers-f321c258.js');
19
- var YoutubeGroup = require('./YoutubeGroup-ad994d02.js');
19
+ var YoutubeGroup = require('./YoutubeGroup-d2d9e57c.js');
20
20
  var index_esm = require('./index.esm-340d3792.js');
21
21
 
22
22
  var VideoSeriesListing = function (_React$Component) {
@@ -57,10 +57,10 @@ var getYoutubeId = _commonjsHelpers.createCommonjsModule(function (module, expor
57
57
  }));
58
58
  });
59
59
 
60
- /*
61
- GROQ query -
62
- accepts an array of title, URL
63
- `https://img.youtube.com/vi/${getYouTubeId(vid.url)}/hqdefault.jpg`
60
+ /*
61
+ GROQ query -
62
+ accepts an array of title, URL
63
+ `https://img.youtube.com/vi/${getYouTubeId(vid.url)}/hqdefault.jpg`
64
64
  */
65
65
  var YoutubeGroup = function YoutubeGroup(props) {
66
66
  // Props should be an array of objects containing Thumbnail, title, and URL
@@ -6,7 +6,7 @@ require('prop-types');
6
6
  require('next/link');
7
7
  require('react-dom');
8
8
  require('./index-0d0efcfa.js');
9
- var YoutubeGroup = require('./YoutubeGroup-ad994d02.js');
9
+ var YoutubeGroup = require('./YoutubeGroup-d2d9e57c.js');
10
10
 
11
11
 
12
12