@mjhls/mjh-framework 1.0.603-right-ad-collapse → 1.0.604-hamMagazine-v5

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 (38) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/AD300x250.js +1 -7
  3. package/dist/cjs/AD300x250x600.js +1 -7
  4. package/dist/cjs/AccordionPanel.js +1 -1
  5. package/dist/cjs/Auth.js +7 -7
  6. package/dist/cjs/HamMagazine.js +206 -23
  7. package/dist/cjs/NavMagazine.js +3 -4
  8. package/dist/cjs/NavNative.js +2 -3
  9. package/dist/cjs/SocialShare.js +5 -3
  10. package/dist/cjs/TemplateNormal.js +2 -3
  11. package/dist/cjs/Ustream.js +1 -1
  12. package/dist/cjs/VideoSeriesListing.js +1 -1
  13. package/dist/cjs/View.js +10 -4
  14. package/dist/cjs/getRelatedArticle.js +5 -354
  15. package/dist/cjs/{index.esm-fbd1f7e9.js → index.esm-876ca9ff.js} +0 -5
  16. package/dist/cjs/{SocialNavFooter-9a07520f.js → index.esm-d1259b34.js} +8 -0
  17. package/dist/cjs/index.js +6 -6
  18. package/dist/esm/AD300x250.js +1 -7
  19. package/dist/esm/AD300x250x600.js +1 -7
  20. package/dist/esm/AccordionPanel.js +1 -1
  21. package/dist/esm/Auth.js +6 -6
  22. package/dist/esm/HamMagazine.js +205 -22
  23. package/dist/esm/NavMagazine.js +2 -3
  24. package/dist/esm/NavNative.js +1 -2
  25. package/dist/esm/SocialShare.js +5 -3
  26. package/dist/esm/TemplateNormal.js +2 -3
  27. package/dist/esm/Ustream.js +1 -1
  28. package/dist/esm/VideoSeriesListing.js +1 -1
  29. package/dist/esm/View.js +10 -4
  30. package/dist/esm/getRelatedArticle.js +5 -354
  31. package/dist/esm/{SocialNavFooter-4fb16720.js → index.esm-73e847d2.js} +8 -1
  32. package/dist/esm/{index.esm-4b1d94b7.js → index.esm-85cb09e6.js} +1 -5
  33. package/dist/esm/index.js +5 -5
  34. package/package.json +1 -1
  35. package/dist/cjs/index-bd6c9f56.js +0 -211
  36. package/dist/cjs/index.esm-0e5c6a9e.js +0 -11
  37. package/dist/esm/index-db3bb315.js +0 -207
  38. package/dist/esm/index.esm-16536e81.js +0 -9
package/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
 
2
- # mjh-framework v. 1.0.603
2
+ # mjh-framework v. 1.0.604
3
3
 
4
4
  > Foundation Framework
5
5
 
@@ -58,14 +58,8 @@ var AD300x250 = function AD300x250(_ref) {
58
58
  var parent = document.getElementById(slotID);
59
59
  // finding the parent wrapper div
60
60
  var parentWrapper = parent && parent.closest('.AD300x250');
61
- var mediaWrapper = parent && parent.closest('.media');
62
61
  // collapsing the parent wrapper div
63
- if (parentWrapper) {
64
- parentWrapper.style.display = 'none';
65
- } else if (mediaWrapper) {
66
- mediaWrapper.style.display = 'none';
67
- }
68
-
62
+ if (parentWrapper) parentWrapper.style.display = 'none';
69
63
  parent.style.height = '0%';
70
64
  parent.style.width = '0%';
71
65
  parent.style.display = 'none';
@@ -72,14 +72,8 @@ var AD300x250x600 = function AD300x250x600(_ref) {
72
72
  var parent = document.getElementById(slotID);
73
73
  // finding the parent wrapper div
74
74
  var parentWrapper = parent && parent.closest('.AD300x250');
75
- var mediaWrapper = parent && parent.closest('.media');
76
75
  // collapsing the parent wrapper div
77
- if (parentWrapper) {
78
- parentWrapper.style.display = 'none';
79
- } else if (mediaWrapper) {
80
- mediaWrapper.style.display = 'none';
81
- }
82
-
76
+ if (parentWrapper) parentWrapper.style.display = 'none';
83
77
  parent.style.height = '0%';
84
78
  parent.style.width = '0%';
85
79
  parent.style.display = 'none';
@@ -10,7 +10,7 @@ var React = require('react');
10
10
  var React__default = _interopDefault(React);
11
11
  var slicedToArray = require('./slicedToArray-8063ee51.js');
12
12
  require('./iconBase-68959171.js');
13
- var index_esm = require('./index.esm-fbd1f7e9.js');
13
+ var index_esm = require('./index.esm-876ca9ff.js');
14
14
  var Accordion = _interopDefault(require('react-bootstrap/Accordion'));
15
15
  var AccordionToggle = require('react-bootstrap/AccordionToggle');
16
16
 
package/dist/cjs/Auth.js CHANGED
@@ -22,8 +22,8 @@ var asyncToGenerator = require('./asyncToGenerator-8e707718.js');
22
22
  require('./_set-species-4458e975.js');
23
23
  var reactBootstrap = require('react-bootstrap');
24
24
  var util = require('./util-f2c1b65b.js');
25
- var index$4 = require('./index-bd6c9f56.js');
26
25
  var useSWR = _interopDefault(require('swr'));
26
+ var cookie = require('cookie');
27
27
  var Local = _interopDefault(require('passport-local'));
28
28
  var mysql = _interopDefault(require('mysql'));
29
29
 
@@ -1215,7 +1215,7 @@ var MAX_AGE = 60 * 60 * 8; // 8 hours
1215
1215
 
1216
1216
  function setTokenCookie(res, token, eKey) {
1217
1217
  var cookies_serailized = [];
1218
- cookies_serailized.push(index$4.serialize_1(TOKEN_NAME, token, {
1218
+ cookies_serailized.push(cookie.serialize(TOKEN_NAME, token, {
1219
1219
  //maxAge: MAX_AGE, // we want login cookie to expire when browser
1220
1220
  //expires: new Date(Date.now() + MAX_AGE * 1000),
1221
1221
  //httpOnly: true,
@@ -1224,7 +1224,7 @@ function setTokenCookie(res, token, eKey) {
1224
1224
  //sameSite: 'lax',
1225
1225
  }));
1226
1226
 
1227
- cookies_serailized.push(index$4.serialize_1('eKey', eKey, {
1227
+ cookies_serailized.push(cookie.serialize('eKey', eKey, {
1228
1228
  //maxAge: MAX_AGE, // we want login cookie to expire when browser
1229
1229
  //expires: new Date(Date.now() + MAX_AGE * 1000),
1230
1230
  //httpOnly: true,
@@ -1238,12 +1238,12 @@ function setTokenCookie(res, token, eKey) {
1238
1238
 
1239
1239
  function removeTokenCookie(res) {
1240
1240
  var cookies_serailized = [];
1241
- cookies_serailized.push(index$4.serialize_1(TOKEN_NAME, '', {
1241
+ cookies_serailized.push(cookie.serialize(TOKEN_NAME, '', {
1242
1242
  maxAge: -1,
1243
1243
  expires: new Date(Date.now() - MAX_AGE * 1000),
1244
1244
  path: '/'
1245
1245
  }));
1246
- cookies_serailized.push(index$4.serialize_1('eKey', '', {
1246
+ cookies_serailized.push(cookie.serialize('eKey', '', {
1247
1247
  maxAge: -1,
1248
1248
  expires: new Date(Date.now() - MAX_AGE * 1000),
1249
1249
  path: '/'
@@ -1257,8 +1257,8 @@ function parseCookies(req) {
1257
1257
  if (req.cookies) return req.cookies;
1258
1258
 
1259
1259
  // For pages we do need to parse the cookies.
1260
- var cookie = req.headers ? req.headers.cookie : null;
1261
- return index$4.parse_1(cookie || '');
1260
+ var cookie$1 = req.headers ? req.headers.cookie : null;
1261
+ return cookie.parse(cookie$1 || '');
1262
1262
  }
1263
1263
 
1264
1264
  function getTokenCookie(req) {
@@ -21,18 +21,18 @@ require('./asyncToGenerator-8e707718.js');
21
21
  require('./_set-species-4458e975.js');
22
22
  var Segment = require('./beam-d22818d3.js');
23
23
  require('./react-social-icons-cd0d9d3b.js');
24
- require('./iconBase-68959171.js');
25
- var index_esm = require('./index.esm-fbd1f7e9.js');
26
- require('react-bootstrap/Button');
24
+ var iconBase = require('./iconBase-68959171.js');
25
+ var index_esm = require('./index.esm-876ca9ff.js');
26
+ var Button = _interopDefault(require('react-bootstrap/Button'));
27
27
  var Nav = _interopDefault(require('react-bootstrap/Nav'));
28
28
  var Navbar = _interopDefault(require('react-bootstrap/Navbar'));
29
29
  var NavDropdown = _interopDefault(require('react-bootstrap/NavDropdown'));
30
30
  var index_esm$1 = require('./index.esm-66ffa47a.js');
31
31
  var NavFooter = require('./NavFooter-76c913e3.js');
32
- var SocialNavFooter = require('./SocialNavFooter-9a07520f.js');
33
- require('react-bootstrap/Form');
34
- require('react-bootstrap/FormControl');
35
- var Search = require('./Search.js');
32
+ var index_esm$2 = require('./index.esm-d1259b34.js');
33
+ var SocialIcons = require('./SocialIcons.js');
34
+ var Form = _interopDefault(require('react-bootstrap/Form'));
35
+ var FormControl = _interopDefault(require('react-bootstrap/FormControl'));
36
36
 
37
37
  var HamMagazine = function HamMagazine(props) {
38
38
  /*
@@ -46,6 +46,7 @@ var HamMagazine = function HamMagazine(props) {
46
46
  />
47
47
  */
48
48
 
49
+ // Setting 'socialIconVariant' as 'light' as default to make the social icons and search icon black
49
50
  var logo = props.logo,
50
51
  mobileLogo = props.mobileLogo,
51
52
  dataObject = props.dataObject,
@@ -55,11 +56,18 @@ var HamMagazine = function HamMagazine(props) {
55
56
  _props$showLogin = props.showLogin,
56
57
  showLogin = _props$showLogin === undefined ? false : _props$showLogin,
57
58
  _props$socialFooterNa = props.socialFooterNav,
58
- socialFooterNav = _props$socialFooterNa === undefined ? false : _props$socialFooterNa;
59
+ socialFooterNav = _props$socialFooterNa === undefined ? false : _props$socialFooterNa,
60
+ _props$socialIconVari = props.socialIconVariant,
61
+ socialIconVariant = _props$socialIconVari === undefined ? 'light' : _props$socialIconVari,
62
+ invertedLogo = props.invertedLogo,
63
+ settings = props.settings;
59
64
 
60
65
  var navRef = React.useRef(null);
61
66
  var topNavRef = React.useRef(null);
62
67
 
68
+ // reference to mobile search component
69
+ var searchRef = React.useRef(null);
70
+
63
71
  var _useState = React.useState(false),
64
72
  _useState2 = slicedToArray._slicedToArray(_useState, 2),
65
73
  isSticky = _useState2[0],
@@ -84,8 +92,19 @@ var HamMagazine = function HamMagazine(props) {
84
92
  _useState10 = slicedToArray._slicedToArray(_useState9, 2),
85
93
  resolution = _useState10[0],
86
94
  setResolution = _useState10[1];
95
+ // Search Term
96
+
97
+
98
+ var _useState11 = React.useState(''),
99
+ _useState12 = slicedToArray._slicedToArray(_useState11, 2),
100
+ searchKey = _useState12[0],
101
+ setSearchKey = _useState12[1];
87
102
 
88
103
  React.useEffect(function () {
104
+ // handling the top mast component
105
+ var topNavHeight = document.querySelector('.top-nav-secondary') && document.querySelector('.top-nav-secondary').offsetHeight;
106
+ // Setting the top of the search component based on the offset of navigation component.
107
+ searchRef.current.style.top = (topNavHeight ? topNavHeight + navRef.current.offsetHeight : navRef.current.offsetHeight) + 1 + 'px';
89
108
  document.addEventListener('scroll', trackScrolling);
90
109
  return function () {
91
110
  document.removeEventListener('scroll', trackScrolling);
@@ -134,7 +153,7 @@ var HamMagazine = function HamMagazine(props) {
134
153
  }, [userAgent]);
135
154
 
136
155
  React.useEffect(function () {
137
- var navOffsetTop = document.getElementById('navbar-ham').offsetTop;
156
+ var navOffsetTop = document.getElementById('navbar-ham') && document.getElementById('navbar-ham').offsetTop;
138
157
  var adSection = document.querySelector('.AD728x90');
139
158
  if (window.pageYOffset > navOffsetTop) {
140
159
  if (navRef.current && navRef.current.style) {
@@ -143,6 +162,11 @@ var HamMagazine = function HamMagazine(props) {
143
162
  navRef.current.style.top = 0;
144
163
  navRef.current.style.width = '100%';
145
164
  navRef.current.style.zIndex = '99999';
165
+ // // Making the search Sticky on scroll
166
+ // searchRef.current.style.position = 'fixed'
167
+ // searchRef.current.style.top = `${navRef.current.offsetHeight + 1}px`
168
+ // searchRef.current.style.zIndex = '99999'
169
+ // searchRef.current.style.width = '100%'
146
170
  }
147
171
  }
148
172
  var stickyNav = window.addEventListener('scroll', function () {
@@ -153,6 +177,11 @@ var HamMagazine = function HamMagazine(props) {
153
177
  navRef.current.style.top = 0;
154
178
  navRef.current.style.width = '100%';
155
179
  navRef.current.style.zIndex = '99999';
180
+ // // Making the search Sticky on scroll
181
+ // searchRef.current.style.position = 'fixed'
182
+ // searchRef.current.style.top = `${navRef.current.offsetHeight + 1}px`
183
+ // searchRef.current.style.zIndex = '99999'
184
+ // searchRef.current.style.width = '100%'
156
185
  }
157
186
  } else {
158
187
  if (navRef.current && navRef.current.style) {
@@ -170,11 +199,15 @@ var HamMagazine = function HamMagazine(props) {
170
199
 
171
200
  var trackScrolling = function trackScrolling() {
172
201
  var offsetTop = navRef.current.getBoundingClientRect().top;
173
-
202
+ var navLinks = document.getElementById('nav-links');
174
203
  if (offsetTop <= 0) {
175
204
  setIsSticky(true);
205
+ navLinks.style.margin = 'auto';
206
+ navLinks.style.padding = '0px 8% 0px 0px';
176
207
  } else {
177
208
  setIsSticky(false);
209
+ navLinks.style.margin = '0px auto 0px 0px';
210
+ navLinks.style.padding = '0px';
178
211
  }
179
212
  };
180
213
 
@@ -194,6 +227,130 @@ var HamMagazine = function HamMagazine(props) {
194
227
  }
195
228
  };
196
229
 
230
+ // Search function
231
+ var submitSearch = function submitSearch(e) {
232
+ e.preventDefault();
233
+ window.location.href = '/search?searchTerm=' + searchKey;
234
+ };
235
+
236
+ // Toggling class of an element.Can't use toggle() as IE doesn't support toggle()
237
+ var toggleClass = function toggleClass(selector, type, addOn) {
238
+ if (type === 'id') {
239
+ var searchBar = document.getElementById(selector);
240
+ if (searchBar && searchBar.classList && searchBar.classList.contains(addOn)) {
241
+ searchBar.classList.remove(addOn);
242
+ } else if (searchBar && searchBar.classList) {
243
+ searchBar.classList.add(addOn);
244
+ }
245
+ } else if (type === 'class') {
246
+ var searchBtn = document.getElementsByClassName(selector)[0];
247
+ if (searchBtn && searchBtn.classList && searchBtn.classList.contains(addOn)) {
248
+ searchBtn.classList.remove(addOn);
249
+ } else if (searchBtn && searchBtn.classList) {
250
+ searchBtn.classList.add(addOn);
251
+ }
252
+ }
253
+ };
254
+
255
+ // Search Component
256
+ var socialSearchComponent = function socialSearchComponent(type) {
257
+ if (type === 'mobile') {
258
+ return React__default.createElement(
259
+ 'div',
260
+ { id: 'search-content-mobile' },
261
+ React__default.createElement(
262
+ 'div',
263
+ { id: 'search-bar-mobile', ref: searchRef },
264
+ React__default.createElement(
265
+ Form,
266
+ { inline: true, onSubmit: function onSubmit(e) {
267
+ return submitSearch(e);
268
+ } },
269
+ React__default.createElement(FormControl, { placeholder: 'Search', type: 'text', value: searchKey, onChange: function onChange(e) {
270
+ return setSearchKey(e.target.value);
271
+ } }),
272
+ React__default.createElement(
273
+ Button,
274
+ { variant: 'primary', style: { backgroundColor: 'var(--secondary)', border: 'none' }, onClick: function onClick(e) {
275
+ return submitSearch(e);
276
+ } },
277
+ 'Search'
278
+ )
279
+ )
280
+ ),
281
+ React__default.createElement(
282
+ iconBase.IconContext.Provider,
283
+ { value: { color: socialIconVariant === 'light' ? 'white' : 'black', className: 'search-btn-mobile', size: '50px' } },
284
+ React__default.createElement(index_esm$2.GoSearch, {
285
+ onClick: function onClick() {
286
+ var navToggle = document.getElementsByClassName('navbar-toggler')[0];
287
+ if (navToggle && navToggle.classList && !navToggle.classList.contains('collapsed')) {
288
+ var nav = document.querySelectorAll('.navbar-collapse');
289
+ for (var i = 0; i < nav.length; i++) {
290
+ if (nav[i] && nav[i].classList) nav[i].classList.remove('show');
291
+ }
292
+ if (navToggle && navToggle.classList) navToggle.classList.add('collapsed');
293
+ }
294
+
295
+ toggleClass('search-bar-mobile', 'id', 'show');
296
+ toggleClass('search-btn-mobile', 'class', 'active-search');
297
+ }
298
+ })
299
+ ),
300
+ React__default.createElement(
301
+ 'style',
302
+ { jsx: 'true' },
303
+ '\n #search-content-mobile {\n display: flex;\n z-index: 999;\n }\n @media screen and (min-width: 1200px) {\n #search-content-mobile {\n display: none;\n }\n }\n #search-content-mobile .search-btn-mobile {\n padding: 5px;\n position: absolute;\n right: 4%;\n height: 35px;\n width: 35px;\n margin-top: 4px;\n cursor: pointer;\n }\n #search-content-mobile #search-bar-mobile {\n position: fixed;\n display: none;\n left: 0px;\n width: 100%;\n border-radius: 5px;\n padding: 10px;\n background-color: var(--primary);\n }\n #search-content-mobile #search-bar-mobile .form-inline {\n margin-top: 0px;\n width: 100% !important;\n }\n #search-content-mobile #search-bar-mobile .form-inline .form-control {\n width: 78%;\n border-radius: 5px;\n height: 45px;\n }\n #search-content-mobile #search-bar-mobile .form-inline .btn {\n width: 20%;\n border-radius: 5px;\n background-color: #040c5a;\n height: 45px;\n margin-left: 5px;\n padding: 1px;\n }\n .show {\n display: block !important;\n }\n .active-search {\n border-radius: 5px;\n border: 1px solid var(--secondary);\n }\n '
304
+ )
305
+ );
306
+ } else if (type === 'desktop') {
307
+ return React__default.createElement(
308
+ 'div',
309
+ { id: 'search-content-desktop' },
310
+ React__default.createElement(
311
+ 'div',
312
+ { id: 'search-bar-desktop' },
313
+ React__default.createElement(
314
+ Form,
315
+ { inline: true, onSubmit: function onSubmit(e) {
316
+ return submitSearch(e);
317
+ } },
318
+ React__default.createElement(FormControl, { placeholder: 'Search', type: 'text', value: searchKey, onChange: function onChange(e) {
319
+ return setSearchKey(e.target.value);
320
+ } }),
321
+ React__default.createElement(
322
+ Button,
323
+ { variant: 'primary', style: { backgroundColor: 'var(--secondary)', border: 'none' }, onClick: function onClick(e) {
324
+ return submitSearch(e);
325
+ } },
326
+ 'Search'
327
+ )
328
+ )
329
+ ),
330
+ React__default.createElement(
331
+ iconBase.IconContext.Provider,
332
+ { value: { color: socialIconVariant === 'light' ? 'white' : 'black', className: 'search-btn-desktop', size: '50px' } },
333
+ React__default.createElement(index_esm$2.GoSearch, {
334
+ onClick: function onClick() {
335
+ toggleClass('search-bar-desktop', 'id', 'show');
336
+ toggleClass('search-btn-desktop', 'class', 'active-search');
337
+ }
338
+ })
339
+ ),
340
+ website && website.socialLinks && website.socialLinks.length !== 0 && React__default.createElement(
341
+ 'div',
342
+ { id: 'social-tab-desktop', style: { display: 'flex' } },
343
+ website.socialLinks && React__default.createElement(SocialIcons, { socialLinks: website.socialLinks, variant: socialIconVariant })
344
+ ),
345
+ React__default.createElement(
346
+ 'style',
347
+ { jsx: 'true' },
348
+ '\n #social-tab-desktops {\n position: relative;\n display: flex;\n left: 0px;\n }\n #social-tab-desktops svg {\n height: 25px !important;\n width: 25px !important;\n }\n @media screen and (max-width: 1199px) {\n #search-content-desktop {\n display: none !important;\n }\n }\n @media screen and (min-width: 992px) {\n #search-content-mobile {\n position: absolute;\n right: 4%;\n top: 8px;\n }\n .mobile-nav {\n width: 100% !important;\n }\n }\n #search-content-desktop {\n display: flex;\n padding-top: 1px;\n height: 35px;\n position: absolute;\n right: 5%;\n top: 12px;\n }\n #search-content-desktop .search-btn-desktop {\n padding: 5px;\n height: 35px;\n width: 32px;\n margin: -2px 5px 0px 0px;\n cursor: pointer;\n }\n #search-content-desktop #search-bar-desktop {\n display: none;\n background-color: var(--primary);\n position: relative;\n width: 400px;\n border-radius: 5px;\n height: 48px;\n top: 42px;\n }\n #search-content-desktop #search-bar-desktop .form-inline {\n padding: 5px;\n }\n #search-content-desktop #search-bar-desktop .form-inline .form-control {\n width: 78%;\n border-radius: 5px;\n }\n #search-content-desktop #search-bar-desktop .form-inline .btn {\n width: 20%;\n border-radius: 5px;\n padding: 7px;\n margin-left: 5px;\n }\n .show {\n display: block !important;\n }\n .active-search {\n border-radius: 5px;\n border: 1px solid var(--secondary);\n }\n '
349
+ )
350
+ );
351
+ }
352
+ };
353
+
197
354
  return React__default.createElement(
198
355
  'header',
199
356
  { className: !main.main_36 && isOpen ? 'nav-open' : 'nav-close', style: { zIndex: '99999' } },
@@ -312,20 +469,42 @@ var HamMagazine = function HamMagazine(props) {
312
469
  ),
313
470
  React__default.createElement(
314
471
  Navbar,
315
- { id: 'navbar-ham', variant: 'dark', expand: 'xl', bg: 'primary', ref: navRef, style: { width: '100%' } },
472
+ { id: 'navbar-ham', variant: 'dark', expand: 'xl', bg: 'primary', ref: navRef, style: { width: '100%', display: 'flex' } },
316
473
  React__default.createElement(
317
474
  Container,
318
475
  { className: 'mobile-nav' },
319
476
  React__default.createElement(
320
477
  'div',
321
- { className: 'nav-toggle' },
478
+ { className: 'nav-toggle', style: { display: 'flex' } },
322
479
  React__default.createElement(Navbar.Toggle, {
323
480
  'aria-controls': 'basic-navbar-nav',
324
481
  onClick: function onClick() {
482
+ var searchBar = document.getElementById('search-bar-mobile');
483
+ var searchBtn = document.getElementsByClassName('search-btn-mobile');
484
+ if (searchBar && searchBar.classList) {
485
+ searchBar.classList.remove('show');
486
+ }
487
+ if (searchBtn && searchBtn[0].classList) {
488
+ searchBtn[0].classList.remove('active-search');
489
+ }
325
490
  setIsOpen(!isOpen);
326
491
  }
327
492
  }),
328
- React__default.createElement(Search, { device: 'mobile' })
493
+ React__default.createElement(
494
+ 'div',
495
+ { className: 'site-logo-wrapper', style: { display: 'none' } },
496
+ React__default.createElement(
497
+ 'a',
498
+ { href: '/' },
499
+ invertedLogo ? React__default.createElement('img', { src: invertedLogo, style: { padding: '0px ' } }) : React__default.createElement('img', { src: logo, style: { padding: '0px ' } })
500
+ ),
501
+ React__default.createElement(
502
+ 'style',
503
+ { jsx: 'true' },
504
+ '\n @media screen and (max-width: 1199px) {\n .site-logo-wrapper {\n display: block !important;\n margin: auto;\n }\n .site-logo-wrapper img {\n object-fit: contain;\n max-height: 45px;\n }\n .nav-mobile-logo {\n display: none !important;\n }\n }\n @media screen and (max-width: 767px) {\n .site-logo-wrapper {\n padding-right: 10%;\n }\n }\n @media screen and (max-width: 420px) {\n .site-logo-wrapper img {\n max-width: 200px;\n }\n }\n '
505
+ )
506
+ ),
507
+ socialSearchComponent('mobile')
329
508
  ),
330
509
  React__default.createElement(
331
510
  'div',
@@ -399,14 +578,18 @@ var HamMagazine = function HamMagazine(props) {
399
578
  React__default.createElement(
400
579
  Navbar.Collapse,
401
580
  { id: 'basic-navbar-nav' },
402
- isSticky && React__default.createElement(
403
- 'a',
404
- { href: '/' },
405
- React__default.createElement(index_esm.IoIosHome, { size: 20, className: 'sticky-home', color: '#fff' })
581
+ isSticky && invertedLogo && React__default.createElement(
582
+ Nav.Item,
583
+ { className: 'nav-mobile-logo' },
584
+ React__default.createElement(
585
+ 'a',
586
+ { href: '/' },
587
+ React__default.createElement('img', { src: invertedLogo, className: 'mobile-logo', style: { height: '38px' }, alt: website.title ? website.title : website.name ? website.name : 'Website Logo' })
588
+ )
406
589
  ),
407
590
  React__default.createElement(
408
591
  Nav,
409
- { className: 'mr-auto web-nav' },
592
+ { id: 'nav-links', style: { marginRight: 'auto' } },
410
593
  dataObject && dataObject.map(function (row, index) {
411
594
  if (row.subQuery && row.subQuery.length > 0) {
412
595
  return row.name ? React__default.createElement(
@@ -463,8 +646,7 @@ var HamMagazine = function HamMagazine(props) {
463
646
  ) : null;
464
647
  }
465
648
  })
466
- ),
467
- React__default.createElement(Search, { device: 'mobile' })
649
+ )
468
650
  ),
469
651
  website && React__default.createElement(
470
652
  Navbar.Collapse,
@@ -472,9 +654,10 @@ var HamMagazine = function HamMagazine(props) {
472
654
  React__default.createElement(
473
655
  Nav,
474
656
  { className: 'mr-auto' },
475
- socialFooterNav ? React__default.createElement(SocialNavFooter.SocialNavFooter, { website: website, showLogo: true }) : React__default.createElement(NavFooter.NavFooter, { website: website, showLogo: true })
657
+ socialFooterNav ? React__default.createElement(index_esm$2.SocialNavFooter, { website: website, showLogo: true }) : React__default.createElement(NavFooter.NavFooter, { website: website, showLogo: true })
476
658
  )
477
- )
659
+ ),
660
+ socialSearchComponent('desktop')
478
661
  )
479
662
  )
480
663
  ),
@@ -490,7 +673,7 @@ var HamMagazine = function HamMagazine(props) {
490
673
  React__default.createElement(
491
674
  'style',
492
675
  { jsx: 'true' },
493
- '\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 .navbar.bg-primary {\n z-index: 3000000 !important;\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 '
676
+ '\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 .mobile-nav .nav-toggle {\n width: 100%;\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 /* To break text into next line */\n white-space: inherit !important;\n margin-bottom: 5px;\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 .navbar.bg-primary {\n z-index: 3000000 !important;\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 '
494
677
  )
495
678
  );
496
679
  };
@@ -22,16 +22,15 @@ require('./_set-species-4458e975.js');
22
22
  var Segment = require('./beam-d22818d3.js');
23
23
  require('./react-social-icons-cd0d9d3b.js');
24
24
  var iconBase = require('./iconBase-68959171.js');
25
- var index_esm = require('./index.esm-fbd1f7e9.js');
25
+ var index_esm = require('./index.esm-876ca9ff.js');
26
26
  var Button = _interopDefault(require('react-bootstrap/Button'));
27
27
  var Nav = _interopDefault(require('react-bootstrap/Nav'));
28
28
  var Navbar = _interopDefault(require('react-bootstrap/Navbar'));
29
29
  var NavDropdown = _interopDefault(require('react-bootstrap/NavDropdown'));
30
30
  var index_esm$1 = require('./index.esm-66ffa47a.js');
31
31
  var NavFooter = require('./NavFooter-76c913e3.js');
32
- var SocialNavFooter = require('./SocialNavFooter-9a07520f.js');
32
+ var index_esm$2 = require('./index.esm-d1259b34.js');
33
33
  var SocialIcons = require('./SocialIcons.js');
34
- var index_esm$2 = require('./index.esm-0e5c6a9e.js');
35
34
  var Form = _interopDefault(require('react-bootstrap/Form'));
36
35
  var FormControl = _interopDefault(require('react-bootstrap/FormControl'));
37
36
 
@@ -601,7 +600,7 @@ var NavMagazine = function NavMagazine(props) {
601
600
  React__default.createElement(
602
601
  Nav,
603
602
  { className: 'mr-auto' },
604
- socialFooterNav ? React__default.createElement(SocialNavFooter.SocialNavFooter, { website: website, showLogo: true }) : React__default.createElement(NavFooter.NavFooter, { website: website, showLogo: true })
603
+ socialFooterNav ? React__default.createElement(index_esm$2.SocialNavFooter, { website: website, showLogo: true }) : React__default.createElement(NavFooter.NavFooter, { website: website, showLogo: true })
605
604
  )
606
605
  ),
607
606
  socialSearchComponent('desktop')
@@ -27,9 +27,8 @@ var Nav = _interopDefault(require('react-bootstrap/Nav'));
27
27
  var Navbar = _interopDefault(require('react-bootstrap/Navbar'));
28
28
  var NavDropdown = _interopDefault(require('react-bootstrap/NavDropdown'));
29
29
  var NavFooter = require('./NavFooter-76c913e3.js');
30
- var SocialNavFooter = require('./SocialNavFooter-9a07520f.js');
30
+ var index_esm$2 = require('./index.esm-d1259b34.js');
31
31
  var SocialIcons = require('./SocialIcons.js');
32
- var index_esm$2 = require('./index.esm-0e5c6a9e.js');
33
32
  var Form = _interopDefault(require('react-bootstrap/Form'));
34
33
  var FormControl = _interopDefault(require('react-bootstrap/FormControl'));
35
34
 
@@ -440,7 +439,7 @@ var NavNative = function NavNative(props) {
440
439
  React__default.createElement(
441
440
  Nav,
442
441
  { className: 'mr-auto' },
443
- socialFooterNav ? React__default.createElement(SocialNavFooter.SocialNavFooter, { website: website }) : React__default.createElement(NavFooter.NavFooter, { website: website })
442
+ socialFooterNav ? React__default.createElement(index_esm$2.SocialNavFooter, { website: website }) : React__default.createElement(NavFooter.NavFooter, { website: website })
444
443
  )
445
444
  ),
446
445
  socialSearchComponent('desktop')
@@ -18,7 +18,9 @@ var SocialShare = function SocialShare(props) {
18
18
  siteName = props.siteName,
19
19
  twitterSiteName = props.twitterSiteName,
20
20
  _props$disableMeta = props.disableMeta,
21
- disableMeta = _props$disableMeta === undefined ? false : _props$disableMeta;
21
+ disableMeta = _props$disableMeta === undefined ? false : _props$disableMeta,
22
+ hidePinterest = props.hidePinterest,
23
+ hideFacebook = props.hideFacebook;
22
24
 
23
25
  return React__default.createElement(
24
26
  React__default.Fragment,
@@ -37,7 +39,7 @@ var SocialShare = function SocialShare(props) {
37
39
  React__default.createElement('meta', { name: 'twitter:site', content: twitterSiteName, key: 'og:site' }),
38
40
  React__default.createElement('meta', { name: 'twitter:description', content: shareSummary, key: 'og:description' })
39
41
  ),
40
- React__default.createElement(
42
+ !hideFacebook && React__default.createElement(
41
43
  reactShare.FacebookShareButton,
42
44
  { url: shareUrl, quote: shareTitle },
43
45
  React__default.createElement(reactShare.FacebookIcon, { size: size, round: true })
@@ -52,7 +54,7 @@ var SocialShare = function SocialShare(props) {
52
54
  { url: shareUrl, title: shareTitle, via: shareVia },
53
55
  React__default.createElement(reactShare.LinkedinIcon, { size: size, round: true })
54
56
  ),
55
- !props.hidePinterest && React__default.createElement(
57
+ !hidePinterest && React__default.createElement(
56
58
  reactShare.PinterestShareButton,
57
59
  { url: shareUrl, media: shareImage, description: shareSummary },
58
60
  React__default.createElement(reactShare.PinterestIcon, { size: size, round: true })
@@ -31,7 +31,7 @@ require('./get-5dfcdc33.js');
31
31
  require('./react-social-icons-cd0d9d3b.js');
32
32
  require('react-bootstrap');
33
33
  require('./iconBase-68959171.js');
34
- require('./index.esm-fbd1f7e9.js');
34
+ require('./index.esm-876ca9ff.js');
35
35
  require('react-bootstrap/Button');
36
36
  var Column1 = require('./Column1.js');
37
37
  require('./SideFooter.js');
@@ -50,9 +50,8 @@ require('react-bootstrap/Navbar');
50
50
  require('react-bootstrap/NavDropdown');
51
51
  require('./index.esm-66ffa47a.js');
52
52
  require('./NavFooter-76c913e3.js');
53
- require('./SocialNavFooter-9a07520f.js');
53
+ require('./index.esm-d1259b34.js');
54
54
  require('./SocialIcons.js');
55
- require('./index.esm-0e5c6a9e.js');
56
55
  require('react-bootstrap/Form');
57
56
  require('react-bootstrap/FormControl');
58
57
  var NavMagazine = require('./NavMagazine.js');
@@ -11,7 +11,7 @@ var React__default = _interopDefault(React);
11
11
  var main = require('./main-88348b15.js');
12
12
  var slicedToArray = require('./slicedToArray-8063ee51.js');
13
13
  require('./iconBase-68959171.js');
14
- var index_esm = require('./index.esm-fbd1f7e9.js');
14
+ var index_esm = require('./index.esm-876ca9ff.js');
15
15
  var index_esm$3 = require('./index.esm-89fabc47.js');
16
16
 
17
17
  var Ustream = function Ustream(_ref) {
@@ -32,7 +32,7 @@ require('./slicedToArray-8063ee51.js');
32
32
  require('./smoothscroll-95231a70.js');
33
33
  var YoutubeGroup = require('./YoutubeGroup.js');
34
34
  require('./iconBase-68959171.js');
35
- var index_esm = require('./index.esm-fbd1f7e9.js');
35
+ var index_esm = require('./index.esm-876ca9ff.js');
36
36
 
37
37
  var VideoSeriesListing = function (_React$Component) {
38
38
  inherits._inherits(VideoSeriesListing, _React$Component);
package/dist/cjs/View.js CHANGED
@@ -56,9 +56,9 @@ var keys$1 = require('./keys-a586b7a0.js');
56
56
  require('react-bootstrap/Dropdown');
57
57
  var getKeywords = require('./getKeywords.js');
58
58
  var getSeriesDetail = require('./getSeriesDetail.js');
59
- require('./index-bd6c9f56.js');
60
- var getRelatedArticle = require('./getRelatedArticle.js');
59
+ require('nookies');
61
60
  var getQuery = require('./getQuery.js');
61
+ var getRelatedArticle = require('./getRelatedArticle.js');
62
62
  var getTargeting = require('./getTargeting-5a0b8ee4.js');
63
63
  var urlFor = require('./urlFor.js');
64
64
 
@@ -308,7 +308,11 @@ var Article = function Article(props) {
308
308
 
309
309
  var article = props.article,
310
310
  Ads = props.Ads,
311
- showRelatedArticles = props.showRelatedArticles;
311
+ showRelatedArticles = props.showRelatedArticles,
312
+ _props$hideFBShare = props.hideFBShare,
313
+ hideFBShare = _props$hideFBShare === undefined ? false : _props$hideFBShare,
314
+ _props$hidePinterestS = props.hidePinterestShare,
315
+ hidePinterestShare = _props$hidePinterestS === undefined ? false : _props$hidePinterestS;
312
316
  var client = props.client,
313
317
  pageview = props.pageview,
314
318
  videoAccountIDs = props.videoAccountIDs,
@@ -854,7 +858,9 @@ var Article = function Article(props) {
854
858
  size: 32,
855
859
  siteName: siteName,
856
860
  twitterSiteName: twitterSiteName,
857
- disableMeta: true
861
+ disableMeta: true,
862
+ hidePinterest: hidePinterestShare,
863
+ hideFacebook: hideFBShare
858
864
  })
859
865
  )
860
866
  ),