@mjhls/mjh-framework 1.0.604-hamMagazine-v9 → 1.0.604

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 (113) hide show
  1. package/README.md +172 -172
  2. package/dist/cjs/AD.js +1 -1
  3. package/dist/cjs/ADFloatingFooter.js +3 -3
  4. package/dist/cjs/AccordionPanel.js +1 -1
  5. package/dist/cjs/ArticleQueue.js +3 -3
  6. package/dist/cjs/Auth.js +5 -5
  7. package/dist/cjs/{BlockContent-c2168db0.js → BlockContent-77f81ffc.js} +1 -1
  8. package/dist/cjs/ConferenceArticleCard.js +16 -16
  9. package/dist/cjs/DeckContent.js +9 -9
  10. package/dist/cjs/DeckQueue.js +1 -1
  11. package/dist/cjs/EventsDeck.js +17 -17
  12. package/dist/cjs/ExternalResources.js +3 -3
  13. package/dist/cjs/Feature.js +1 -1
  14. package/dist/cjs/ForbesHero.js +1 -1
  15. package/dist/cjs/GridContent.js +2 -2
  16. package/dist/cjs/GridHero.js +1 -1
  17. package/dist/cjs/GroupDeck.js +5 -5
  18. package/dist/cjs/HamMagazine.js +35 -225
  19. package/dist/cjs/Hero.js +1 -1
  20. package/dist/cjs/HorizontalHero.js +1 -1
  21. package/dist/cjs/IssueContentDeck.js +1 -1
  22. package/dist/cjs/IssueDeck.js +1 -1
  23. package/dist/cjs/IssueLanding.js +31 -31
  24. package/dist/cjs/KMTracker.js +15 -15
  25. package/dist/cjs/MasterDeck.js +10 -10
  26. package/dist/cjs/NavMagazine.js +14 -13
  27. package/dist/cjs/NavNative.js +12 -11
  28. package/dist/cjs/OncliveHero.js +1 -1
  29. package/dist/cjs/OncliveLargeHero.js +1 -1
  30. package/dist/cjs/PartnerDetailListing.js +6 -6
  31. package/dist/cjs/PublicationDeck.js +2 -2
  32. package/dist/cjs/PublicationLanding.js +33 -33
  33. package/dist/cjs/QueueDeckExpanded.js +2 -2
  34. package/dist/cjs/RecentNews.js +1 -1
  35. package/dist/cjs/RelatedContent.js +29 -29
  36. package/dist/cjs/RelatedTopicsDropdown.js +10 -10
  37. package/dist/cjs/SideFooter.js +2 -2
  38. package/dist/cjs/{index.esm-d1259b34.js → SocialNavFooter-9a07520f.js} +0 -8
  39. package/dist/cjs/TaxonomyCard.js +2 -2
  40. package/dist/cjs/TemplateNormal.js +3 -2
  41. package/dist/cjs/ThumbnailCard.js +1 -1
  42. package/dist/cjs/Ustream.js +1 -1
  43. package/dist/cjs/VerticalHero.js +1 -1
  44. package/dist/cjs/VideoSeriesListing.js +2 -2
  45. package/dist/cjs/View.js +29 -29
  46. package/dist/cjs/YahooHero.js +1 -1
  47. package/dist/cjs/YoutubeGroup.js +5 -5
  48. package/dist/cjs/getSerializers.js +3 -3
  49. package/dist/cjs/{getTargeting-5a0b8ee4.js → getTargeting-5db63100.js} +11 -11
  50. package/dist/cjs/getTargeting.js +1 -1
  51. package/dist/cjs/{index-39beccb3.js → index-be0c82be.js} +1 -2
  52. package/dist/cjs/{index-af999dce.js → index-f745a50a.js} +436 -448
  53. package/dist/cjs/index.esm-0e5c6a9e.js +11 -0
  54. package/dist/cjs/{index.esm-876ca9ff.js → index.esm-fbd1f7e9.js} +5 -0
  55. package/dist/cjs/index.js +13 -7
  56. package/dist/cjs/{lodash-7fd85bcf.js → lodash-fc2922d0.js} +22 -71
  57. package/dist/cjs/urlFor.js +2 -2
  58. package/dist/esm/ADFloatingFooter.js +3 -3
  59. package/dist/esm/AccordionPanel.js +1 -1
  60. package/dist/esm/ArticleQueue.js +3 -3
  61. package/dist/esm/Auth.js +2 -2
  62. package/dist/esm/{BlockContent-c409aca5.js → BlockContent-e9b4ddcf.js} +1 -1
  63. package/dist/esm/ConferenceArticleCard.js +16 -16
  64. package/dist/esm/DeckContent.js +9 -9
  65. package/dist/esm/DeckQueue.js +1 -1
  66. package/dist/esm/EventsDeck.js +17 -17
  67. package/dist/esm/ExternalResources.js +3 -3
  68. package/dist/esm/Feature.js +1 -1
  69. package/dist/esm/ForbesHero.js +1 -1
  70. package/dist/esm/GridContent.js +2 -2
  71. package/dist/esm/GridHero.js +1 -1
  72. package/dist/esm/GroupDeck.js +5 -5
  73. package/dist/esm/HamMagazine.js +34 -224
  74. package/dist/esm/Hero.js +1 -1
  75. package/dist/esm/HorizontalHero.js +1 -1
  76. package/dist/esm/IssueContentDeck.js +1 -1
  77. package/dist/esm/IssueDeck.js +1 -1
  78. package/dist/esm/IssueLanding.js +31 -31
  79. package/dist/esm/KMTracker.js +15 -15
  80. package/dist/esm/MasterDeck.js +10 -10
  81. package/dist/esm/NavMagazine.js +13 -12
  82. package/dist/esm/NavNative.js +11 -10
  83. package/dist/esm/OncliveHero.js +1 -1
  84. package/dist/esm/OncliveLargeHero.js +1 -1
  85. package/dist/esm/PartnerDetailListing.js +4 -4
  86. package/dist/esm/PublicationDeck.js +2 -2
  87. package/dist/esm/PublicationLanding.js +33 -33
  88. package/dist/esm/QueueDeckExpanded.js +2 -2
  89. package/dist/esm/RecentNews.js +1 -1
  90. package/dist/esm/RelatedContent.js +29 -29
  91. package/dist/esm/RelatedTopicsDropdown.js +10 -10
  92. package/dist/esm/SideFooter.js +2 -2
  93. package/dist/esm/{index.esm-73e847d2.js → SocialNavFooter-4fb16720.js} +1 -8
  94. package/dist/esm/TaxonomyCard.js +2 -2
  95. package/dist/esm/TemplateNormal.js +3 -2
  96. package/dist/esm/ThumbnailCard.js +1 -1
  97. package/dist/esm/Ustream.js +1 -1
  98. package/dist/esm/VerticalHero.js +1 -1
  99. package/dist/esm/VideoSeriesListing.js +2 -2
  100. package/dist/esm/View.js +5 -5
  101. package/dist/esm/YahooHero.js +1 -1
  102. package/dist/esm/YoutubeGroup.js +5 -5
  103. package/dist/esm/getSerializers.js +3 -3
  104. package/dist/esm/{getTargeting-962c9cf6.js → getTargeting-36bcd238.js} +9 -9
  105. package/dist/esm/getTargeting.js +1 -1
  106. package/dist/esm/{index-1c791baf.js → index-599efdf0.js} +436 -448
  107. package/dist/esm/{index-3849e3fe.js → index-73819142.js} +1 -2
  108. package/dist/esm/index.esm-16536e81.js +9 -0
  109. package/dist/esm/{index.esm-85cb09e6.js → index.esm-4b1d94b7.js} +5 -1
  110. package/dist/esm/index.js +12 -7
  111. package/dist/esm/{lodash-ec8c6b48.js → lodash-17fdfebb.js} +22 -71
  112. package/dist/esm/urlFor.js +2 -2
  113. package/package.json +107 -107
@@ -12,14 +12,14 @@ var _typeof = require('./typeof-1869832c.js');
12
12
  require('./_is-array-754e012d.js');
13
13
  var React = require('react');
14
14
  var React__default = _interopDefault(React);
15
- var index$1 = require('./index-39beccb3.js');
15
+ var index$1 = require('./index-be0c82be.js');
16
16
  var slicedToArray = require('./slicedToArray-8063ee51.js');
17
17
  var smoothscroll = require('./smoothscroll-95231a70.js');
18
18
 
19
- /*
20
- GROQ query -
21
- accepts an array of title, URL
22
- `https://img.youtube.com/vi/${getYouTubeId(vid.url)}/hqdefault.jpg`
19
+ /*
20
+ GROQ query -
21
+ accepts an array of title, URL
22
+ `https://img.youtube.com/vi/${getYouTubeId(vid.url)}/hqdefault.jpg`
23
23
  */
24
24
 
25
25
  var GroupDeck = function GroupDeck(props) {
@@ -21,32 +21,31 @@ 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
- var iconBase = require('./iconBase-68959171.js');
25
- var index_esm = require('./index.esm-876ca9ff.js');
26
- var Button = _interopDefault(require('react-bootstrap/Button'));
24
+ require('./iconBase-68959171.js');
25
+ var index_esm = require('./index.esm-fbd1f7e9.js');
26
+ 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 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'));
32
+ var SocialNavFooter = require('./SocialNavFooter-9a07520f.js');
33
+ require('react-bootstrap/Form');
34
+ require('react-bootstrap/FormControl');
35
+ var Search = require('./Search.js');
36
36
 
37
37
  var HamMagazine = function HamMagazine(props) {
38
- /*
39
- Example Nav with acceptable props
40
- <MagazineNav
41
- showLogin
42
- logo={props.settings.logo}
43
- dataObject={props.cache.mainNavCache}
44
- website={website}
45
- subNav={props.cache.subNavCache}
46
- />
38
+ /*
39
+ Example Nav with acceptable props
40
+ <MagazineNav
41
+ showLogin
42
+ logo={props.settings.logo}
43
+ dataObject={props.cache.mainNavCache}
44
+ website={website}
45
+ subNav={props.cache.subNavCache}
46
+ />
47
47
  */
48
48
 
49
- // Setting 'socialIconVariant' as 'light' as default to make the social icons and search icon black
50
49
  var logo = props.logo,
51
50
  mobileLogo = props.mobileLogo,
52
51
  dataObject = props.dataObject,
@@ -56,18 +55,11 @@ var HamMagazine = function HamMagazine(props) {
56
55
  _props$showLogin = props.showLogin,
57
56
  showLogin = _props$showLogin === undefined ? false : _props$showLogin,
58
57
  _props$socialFooterNa = props.socialFooterNav,
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;
58
+ socialFooterNav = _props$socialFooterNa === undefined ? false : _props$socialFooterNa;
64
59
 
65
60
  var navRef = React.useRef(null);
66
61
  var topNavRef = React.useRef(null);
67
62
 
68
- // reference to mobile search component
69
- var searchRef = React.useRef(null);
70
-
71
63
  var _useState = React.useState(false),
72
64
  _useState2 = slicedToArray._slicedToArray(_useState, 2),
73
65
  isSticky = _useState2[0],
@@ -92,28 +84,8 @@ var HamMagazine = function HamMagazine(props) {
92
84
  _useState10 = slicedToArray._slicedToArray(_useState9, 2),
93
85
  resolution = _useState10[0],
94
86
  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];
102
-
103
- var _useState13 = React.useState(0),
104
- _useState14 = slicedToArray._slicedToArray(_useState13, 2),
105
- topHeight = _useState14[0],
106
- setTopHeight = _useState14[1];
107
87
 
108
88
  React.useEffect(function () {
109
- // handling the top mast component
110
- var topNavHeight = document.querySelector('.top-nav-secondary') && document.querySelector('.top-nav-secondary').offsetHeight;
111
- var mastHeadHeight = document.querySelector('.nav-brands') && document.querySelector('.nav-brands').offsetHeight;
112
- var topNav = 0;
113
- if (mastHeadHeight) topNav = topNav + mastHeadHeight;else if (topNavHeight) topNav = topNav + topNavHeight;
114
- if (navRef.current.offsetHeight) topNav = topNav + navRef.current.offsetHeight;
115
- // Setting the top of the search component based on the offset of navigation component.
116
- searchRef.current.style.top = topNav + 1 + 'px';
117
89
  document.addEventListener('scroll', trackScrolling);
118
90
  return function () {
119
91
  document.removeEventListener('scroll', trackScrolling);
@@ -162,17 +134,13 @@ var HamMagazine = function HamMagazine(props) {
162
134
  }, [userAgent]);
163
135
 
164
136
  React.useEffect(function () {
165
- var navOffsetTop = document.getElementById('navbar-ham') && document.getElementById('navbar-ham').offsetTop;
137
+ var navOffsetTop = document.getElementById('navbar-ham').offsetTop;
166
138
  var adSection = document.querySelector('.AD728x90');
167
- var mastHeadHeight = document.querySelector('.nav-brands') && document.querySelector('.nav-brands').offsetHeight ? document.querySelector('.nav-brands').offsetHeight - 4 : 0;
168
-
169
- setTopHeight(mastHeadHeight);
170
- console.log('mastHeight Head:::::::::::::::::::', mastHeadHeight);
171
139
  if (window.pageYOffset > navOffsetTop) {
172
140
  if (navRef.current && navRef.current.style) {
173
141
  topNavRef.current.style.paddingBottom = navRef.current.offsetHeight + 'px';
174
142
  navRef.current.style.position = 'fixed';
175
- if (mastHeadHeight) navRef.current.style.top = mastHeadHeight + 'px';
143
+ navRef.current.style.top = 0;
176
144
  navRef.current.style.width = '100%';
177
145
  navRef.current.style.zIndex = '99999';
178
146
  }
@@ -182,17 +150,15 @@ var HamMagazine = function HamMagazine(props) {
182
150
  if (navRef.current && navRef.current.style) {
183
151
  topNavRef.current.style.paddingBottom = navRef.current.offsetHeight + 'px';
184
152
  navRef.current.style.position = 'fixed';
185
- if (mastHeadHeight) navRef.current.style.top = mastHeadHeight + 'px';
153
+ navRef.current.style.top = 0;
186
154
  navRef.current.style.width = '100%';
187
155
  navRef.current.style.zIndex = '99999';
188
156
  }
189
157
  } else {
190
158
  if (navRef.current && navRef.current.style) {
191
- var _mastHeadHeight = document.querySelector('.nav-brands') && document.querySelector('.nav-brands').offsetHeight ? document.querySelector('.nav-brands').offsetHeight - 4 : 0;
192
-
193
159
  topNavRef.current.style.paddingBottom = '0';
194
160
  navRef.current.style.position = 'relative';
195
- if (_mastHeadHeight) navRef.current.style.top = _mastHeadHeight + 'px';
161
+ navRef.current.style.top = '';
196
162
  if (adSection) adSection.style.marginTop = '';
197
163
  }
198
164
  }
@@ -204,17 +170,11 @@ var HamMagazine = function HamMagazine(props) {
204
170
 
205
171
  var trackScrolling = function trackScrolling() {
206
172
  var offsetTop = navRef.current.getBoundingClientRect().top;
207
- var navLinks = document.getElementById('nav-links');
208
- var mastHeadHeight = document.querySelector('.nav-brands') && document.querySelector('.nav-brands').offsetHeight - 4;
209
- if (mastHeadHeight) offsetTop = offsetTop - mastHeadHeight;
173
+
210
174
  if (offsetTop <= 0) {
211
175
  setIsSticky(true);
212
- navLinks.style.margin = 'auto';
213
- navLinks.style.padding = '0px 8% 0px 0px';
214
176
  } else {
215
177
  setIsSticky(false);
216
- navLinks.style.margin = '0px auto 0px 0px';
217
- navLinks.style.padding = '0px';
218
178
  }
219
179
  };
220
180
 
@@ -234,130 +194,6 @@ var HamMagazine = function HamMagazine(props) {
234
194
  }
235
195
  };
236
196
 
237
- // Search function
238
- var submitSearch = function submitSearch(e) {
239
- e.preventDefault();
240
- window.location.href = '/search?searchTerm=' + searchKey;
241
- };
242
-
243
- // Toggling class of an element.Can't use toggle() as IE doesn't support toggle()
244
- var toggleClass = function toggleClass(selector, type, addOn) {
245
- if (type === 'id') {
246
- var searchBar = document.getElementById(selector);
247
- if (searchBar && searchBar.classList && searchBar.classList.contains(addOn)) {
248
- searchBar.classList.remove(addOn);
249
- } else if (searchBar && searchBar.classList) {
250
- searchBar.classList.add(addOn);
251
- }
252
- } else if (type === 'class') {
253
- var searchBtn = document.getElementsByClassName(selector)[0];
254
- if (searchBtn && searchBtn.classList && searchBtn.classList.contains(addOn)) {
255
- searchBtn.classList.remove(addOn);
256
- } else if (searchBtn && searchBtn.classList) {
257
- searchBtn.classList.add(addOn);
258
- }
259
- }
260
- };
261
-
262
- // Search Component
263
- var socialSearchComponent = function socialSearchComponent(type) {
264
- if (type === 'mobile') {
265
- return React__default.createElement(
266
- 'div',
267
- { id: 'search-content-mobile' },
268
- React__default.createElement(
269
- 'div',
270
- { id: 'search-bar-mobile', ref: searchRef },
271
- React__default.createElement(
272
- Form,
273
- { inline: true, onSubmit: function onSubmit(e) {
274
- return submitSearch(e);
275
- } },
276
- React__default.createElement(FormControl, { placeholder: 'Search', type: 'text', value: searchKey, onChange: function onChange(e) {
277
- return setSearchKey(e.target.value);
278
- } }),
279
- React__default.createElement(
280
- Button,
281
- { variant: 'primary', style: { backgroundColor: 'var(--secondary)', border: 'none' }, onClick: function onClick(e) {
282
- return submitSearch(e);
283
- } },
284
- 'Search'
285
- )
286
- )
287
- ),
288
- React__default.createElement(
289
- iconBase.IconContext.Provider,
290
- { value: { color: socialIconVariant === 'light' ? 'white' : 'black', className: 'search-btn-mobile', size: '50px' } },
291
- React__default.createElement(index_esm$2.GoSearch, {
292
- onClick: function onClick() {
293
- var navToggle = document.getElementsByClassName('navbar-toggler')[0];
294
- if (navToggle && navToggle.classList && !navToggle.classList.contains('collapsed')) {
295
- var nav = document.querySelectorAll('.navbar-collapse');
296
- for (var i = 0; i < nav.length; i++) {
297
- if (nav[i] && nav[i].classList) nav[i].classList.remove('show');
298
- }
299
- if (navToggle && navToggle.classList) navToggle.classList.add('collapsed');
300
- }
301
-
302
- toggleClass('search-bar-mobile', 'id', 'show');
303
- toggleClass('search-btn-mobile', 'class', 'active-search');
304
- }
305
- })
306
- ),
307
- React__default.createElement(
308
- 'style',
309
- { jsx: 'true' },
310
- '\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 '
311
- )
312
- );
313
- } else if (type === 'desktop') {
314
- return React__default.createElement(
315
- 'div',
316
- { id: 'search-content-desktop' },
317
- React__default.createElement(
318
- 'div',
319
- { id: 'search-bar-desktop' },
320
- React__default.createElement(
321
- Form,
322
- { inline: true, onSubmit: function onSubmit(e) {
323
- return submitSearch(e);
324
- } },
325
- React__default.createElement(FormControl, { placeholder: 'Search', type: 'text', value: searchKey, onChange: function onChange(e) {
326
- return setSearchKey(e.target.value);
327
- } }),
328
- React__default.createElement(
329
- Button,
330
- { variant: 'primary', style: { backgroundColor: 'var(--secondary)', border: 'none' }, onClick: function onClick(e) {
331
- return submitSearch(e);
332
- } },
333
- 'Search'
334
- )
335
- )
336
- ),
337
- React__default.createElement(
338
- iconBase.IconContext.Provider,
339
- { value: { color: socialIconVariant === 'light' ? 'white' : 'black', className: 'search-btn-desktop', size: '50px' } },
340
- React__default.createElement(index_esm$2.GoSearch, {
341
- onClick: function onClick() {
342
- toggleClass('search-bar-desktop', 'id', 'show');
343
- toggleClass('search-btn-desktop', 'class', 'active-search');
344
- }
345
- })
346
- ),
347
- website && website.socialLinks && website.socialLinks.length !== 0 && React__default.createElement(
348
- 'div',
349
- { id: 'social-tab-desktop', style: { display: 'flex' } },
350
- website.socialLinks && React__default.createElement(SocialIcons, { socialLinks: website.socialLinks, variant: socialIconVariant })
351
- ),
352
- React__default.createElement(
353
- 'style',
354
- { jsx: 'true' },
355
- '\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 '
356
- )
357
- );
358
- }
359
- };
360
-
361
197
  return React__default.createElement(
362
198
  'header',
363
199
  { className: !main.main_36 && isOpen ? 'nav-open' : 'nav-close', style: { zIndex: '99999' } },
@@ -476,43 +312,21 @@ var HamMagazine = function HamMagazine(props) {
476
312
  ),
477
313
  React__default.createElement(
478
314
  Navbar,
479
- { id: 'navbar-ham', variant: 'dark', expand: 'xl', bg: 'primary', ref: navRef, style: { width: '100%', display: 'flex', top: topHeight } },
315
+ { id: 'navbar-ham', variant: 'dark', expand: 'xl', bg: 'primary', ref: navRef, style: { width: '100%' } },
480
316
  React__default.createElement(
481
317
  Container,
482
318
  { className: 'mobile-nav' },
483
319
  React__default.createElement(
484
320
  'div',
485
- { className: 'nav-toggle', style: { display: 'flex' } },
321
+ { className: 'nav-toggle' },
486
322
  React__default.createElement(Navbar.Toggle, {
487
323
  'aria-controls': 'basic-navbar-nav',
488
324
  onClick: function onClick() {
489
- var searchBar = document.getElementById('search-bar-mobile');
490
- var searchBtn = document.getElementsByClassName('search-btn-mobile');
491
- if (searchBar && searchBar.classList) {
492
- searchBar.classList.remove('show');
493
- }
494
- if (searchBtn && searchBtn[0].classList) {
495
- searchBtn[0].classList.remove('active-search');
496
- }
497
325
  setIsOpen(!isOpen);
498
326
  }
499
327
  }),
500
- React__default.createElement(
501
- 'div',
502
- { className: 'site-logo-wrapper', style: { display: 'none' } },
503
- React__default.createElement(
504
- 'a',
505
- { href: '/' },
506
- invertedLogo ? React__default.createElement('img', { src: invertedLogo, style: { padding: '0px ' } }) : React__default.createElement('img', { src: logo, style: { padding: '0px ' } })
507
- ),
508
- React__default.createElement(
509
- 'style',
510
- { jsx: 'true' },
511
- '\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 '
512
- )
513
- )
328
+ React__default.createElement(Search, { device: 'mobile' })
514
329
  ),
515
- socialSearchComponent('mobile'),
516
330
  React__default.createElement(
517
331
  'div',
518
332
  { className: 'hamburger-menu-list', style: { width: '100%', maxHeight: '80vh' } },
@@ -585,18 +399,14 @@ var HamMagazine = function HamMagazine(props) {
585
399
  React__default.createElement(
586
400
  Navbar.Collapse,
587
401
  { id: 'basic-navbar-nav' },
588
- isSticky && invertedLogo && React__default.createElement(
589
- Nav.Item,
590
- { className: 'nav-mobile-logo' },
591
- React__default.createElement(
592
- 'a',
593
- { href: '/' },
594
- React__default.createElement('img', { src: invertedLogo, className: 'mobile-logo', style: { height: '38px' }, alt: website.title ? website.title : website.name ? website.name : 'Website Logo' })
595
- )
402
+ isSticky && React__default.createElement(
403
+ 'a',
404
+ { href: '/' },
405
+ React__default.createElement(index_esm.IoIosHome, { size: 20, className: 'sticky-home', color: '#fff' })
596
406
  ),
597
407
  React__default.createElement(
598
408
  Nav,
599
- { id: 'nav-links', style: { marginRight: 'auto' } },
409
+ { className: 'mr-auto web-nav' },
600
410
  dataObject && dataObject.map(function (row, index) {
601
411
  if (row.subQuery && row.subQuery.length > 0) {
602
412
  return row.name ? React__default.createElement(
@@ -653,7 +463,8 @@ var HamMagazine = function HamMagazine(props) {
653
463
  ) : null;
654
464
  }
655
465
  })
656
- )
466
+ ),
467
+ React__default.createElement(Search, { device: 'mobile' })
657
468
  ),
658
469
  website && React__default.createElement(
659
470
  Navbar.Collapse,
@@ -661,10 +472,9 @@ var HamMagazine = function HamMagazine(props) {
661
472
  React__default.createElement(
662
473
  Nav,
663
474
  { className: 'mr-auto' },
664
- socialFooterNav ? React__default.createElement(index_esm$2.SocialNavFooter, { website: website, showLogo: true }) : React__default.createElement(NavFooter.NavFooter, { website: website, showLogo: true })
475
+ socialFooterNav ? React__default.createElement(SocialNavFooter.SocialNavFooter, { website: website, showLogo: true }) : React__default.createElement(NavFooter.NavFooter, { website: website, showLogo: true })
665
476
  )
666
- ),
667
- socialSearchComponent('desktop')
477
+ )
668
478
  )
669
479
  )
670
480
  ),
@@ -680,7 +490,7 @@ var HamMagazine = function HamMagazine(props) {
680
490
  React__default.createElement(
681
491
  'style',
682
492
  { jsx: 'true' },
683
- '\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 '
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 '
684
494
  )
685
495
  );
686
496
  };
package/dist/cjs/Hero.js CHANGED
@@ -5,7 +5,7 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
5
5
  require('./_commonjsHelpers-06173234.js');
6
6
  var React = require('react');
7
7
  var React__default = _interopDefault(React);
8
- var index$1 = require('./index-39beccb3.js');
8
+ var index$1 = require('./index-be0c82be.js');
9
9
  var entities = require('./entities-310b46ee.js');
10
10
  var reactBootstrap = require('react-bootstrap');
11
11
 
@@ -6,7 +6,7 @@ require('./_commonjsHelpers-06173234.js');
6
6
  var React = require('react');
7
7
  var React__default = _interopDefault(React);
8
8
  require('./moment-575fe24c.js');
9
- var index$1 = require('./index-39beccb3.js');
9
+ var index$1 = require('./index-be0c82be.js');
10
10
  require('./iconBase-68959171.js');
11
11
  var index_esm$3 = require('./index.esm-89fabc47.js');
12
12
 
@@ -14,7 +14,7 @@ var Col = _interopDefault(require('react-bootstrap/Col'));
14
14
  var Card = _interopDefault(require('react-bootstrap/Card'));
15
15
  var moment = require('./moment-575fe24c.js');
16
16
  require('react-dom');
17
- var index$1 = require('./index-39beccb3.js');
17
+ var index$1 = require('./index-be0c82be.js');
18
18
  var index$2 = require('./index-fa0fb52c.js');
19
19
  require('./slicedToArray-8063ee51.js');
20
20
  var AuthorComponent = require('./AuthorComponent-3c79e1ab.js');
@@ -18,7 +18,7 @@ var Col = _interopDefault(require('react-bootstrap/Col'));
18
18
  var Card = _interopDefault(require('react-bootstrap/Card'));
19
19
  var index_es = require('./index.es-9110add6.js');
20
20
  require('react-dom');
21
- var index$1 = require('./index-39beccb3.js');
21
+ var index$1 = require('./index-be0c82be.js');
22
22
  var index$2 = require('./index-fa0fb52c.js');
23
23
  var slicedToArray = require('./slicedToArray-8063ee51.js');
24
24
  var Button = _interopDefault(require('react-bootstrap/Button'));
@@ -23,7 +23,7 @@ require('./debounce-32e57002.js');
23
23
  require('./index.es-9110add6.js');
24
24
  require('react-dom');
25
25
  require('./visibility-sensor-0c45a583.js');
26
- require('./index-39beccb3.js');
26
+ require('./index-be0c82be.js');
27
27
  require('./index-fa0fb52c.js');
28
28
  require('./main-88348b15.js');
29
29
  require('./entities-310b46ee.js');
@@ -34,7 +34,7 @@ require('./_set-species-4458e975.js');
34
34
  require('./beam-d22818d3.js');
35
35
  require('./AdSlot.js');
36
36
  require('./ADInfeed-df340285.js');
37
- require('./lodash-7fd85bcf.js');
37
+ require('./lodash-fc2922d0.js');
38
38
  require('./ADlgInfeed-2110d08c.js');
39
39
  require('./AuthorComponent-3c79e1ab.js');
40
40
  require('react-bootstrap');
@@ -42,35 +42,35 @@ var QueueDeckExpanded = require('./QueueDeckExpanded.js');
42
42
  require('react-bootstrap/Breadcrumb');
43
43
  var Breadcrumbs = require('./Breadcrumbs.js');
44
44
 
45
- /* usage
46
- import Settings, { Ads } from '../../../../settings'
47
- import { IssueLanding, getQuery } from '@mjhls/mjh-framework'
48
- import client from '../../../../client'
49
- import moment from 'moment'
50
- import Shell from '../../../../components/2.0/Shell'
51
- import { pageview } from '../../../../utilities/gtag'
52
-
53
- const Issue = (props) => {
54
- const { pubIssue, cache } = props
55
- const targeting = {
56
- content_placement: [`/publications/${pubIssue.identifier.current}/${pubIssue.issue.identifier.current}`],
57
- document_url: [`/publications/${pubIssue.identifier.current}/${pubIssue.issue.identifier.current}`],
58
- }
59
- return (
60
- <Shell cache={cache} settings={Settings} targeting={targeting} ads={Ads} layout='3' title={pubIssue.issue.name}>
61
- <IssueLanding pubIssue={pubIssue} client={client} settings={Settings} pageview={pageview} rightItems={Ads.getMobileAds(targeting)} />
62
- </Shell>
63
- )
64
- }
65
-
66
- Issue.getInitialProps = async (ctx) => {
67
- const { query } = ctx
68
- const pubIssue = await client.fetch(getQuery('issue'), { ...query, currentDate: moment().utc().format() }
69
- )
70
- return { pubIssue }
71
- }
72
-
73
- export default Issue
45
+ /* usage
46
+ import Settings, { Ads } from '../../../../settings'
47
+ import { IssueLanding, getQuery } from '@mjhls/mjh-framework'
48
+ import client from '../../../../client'
49
+ import moment from 'moment'
50
+ import Shell from '../../../../components/2.0/Shell'
51
+ import { pageview } from '../../../../utilities/gtag'
52
+
53
+ const Issue = (props) => {
54
+ const { pubIssue, cache } = props
55
+ const targeting = {
56
+ content_placement: [`/publications/${pubIssue.identifier.current}/${pubIssue.issue.identifier.current}`],
57
+ document_url: [`/publications/${pubIssue.identifier.current}/${pubIssue.issue.identifier.current}`],
58
+ }
59
+ return (
60
+ <Shell cache={cache} settings={Settings} targeting={targeting} ads={Ads} layout='3' title={pubIssue.issue.name}>
61
+ <IssueLanding pubIssue={pubIssue} client={client} settings={Settings} pageview={pageview} rightItems={Ads.getMobileAds(targeting)} />
62
+ </Shell>
63
+ )
64
+ }
65
+
66
+ Issue.getInitialProps = async (ctx) => {
67
+ const { query } = ctx
68
+ const pubIssue = await client.fetch(getQuery('issue'), { ...query, currentDate: moment().utc().format() }
69
+ )
70
+ return { pubIssue }
71
+ }
72
+
73
+ export default Issue
74
74
  */
75
75
 
76
76
  var IssueLanding = function IssueLanding(props) {
@@ -1,27 +1,27 @@
1
1
  'use strict';
2
2
 
3
3
  var KMTracker = function KMTracker(props) {
4
- var id = props.id;
4
+ var id = props.id;
5
5
 
6
- if (document && id) {
6
+ if (document && id) {
7
7
  (function () {
8
- var ecnJquery = document.createElement('script');
8
+ var ecnJquery = document.createElement('script');
9
9
 
10
- ecnJquery.type = 'text/javascript';
11
- ecnJquery.async = true;
12
- ecnJquery.src = 'https://apidt.ecn5.com/ECN_jQuery.min.js';
10
+ ecnJquery.type = 'text/javascript';
11
+ ecnJquery.async = true;
12
+ ecnJquery.src = 'https://apidt.ecn5.com/ECN_jQuery.min.js';
13
13
 
14
- var ecnScript = document.createElement('script');
14
+ var ecnScript = document.createElement('script');
15
15
 
16
- ecnScript.type = 'text/javascript';
17
- ecnScript.async = true;
18
- ecnScript.id = 'km-tracker';
19
- ecnScript.src = 'https://apidt.ecn5.com/ECN_tracker_Secure.js?TrackerKey=' + id;
16
+ ecnScript.type = 'text/javascript';
17
+ ecnScript.async = true;
18
+ ecnScript.id = 'km-tracker';
19
+ ecnScript.src = 'https://apidt.ecn5.com/ECN_tracker_Secure.js?TrackerKey=' + id;
20
20
 
21
- document.head.appendChild(ecnJquery);
22
- document.head.appendChild(ecnScript);
23
- })();
24
- }
21
+ document.head.appendChild(ecnJquery);
22
+ document.head.appendChild(ecnScript);
23
+ })();
24
+ }
25
25
  };
26
26
 
27
27
  module.exports = KMTracker;
@@ -31,7 +31,7 @@ var debounce = require('./debounce-32e57002.js');
31
31
  var index_es = require('./index.es-9110add6.js');
32
32
  require('react-dom');
33
33
  var visibilitySensor = require('./visibility-sensor-0c45a583.js');
34
- require('./index-39beccb3.js');
34
+ require('./index-be0c82be.js');
35
35
  var main = require('./main-88348b15.js');
36
36
  require('./slicedToArray-8063ee51.js');
37
37
  require('./stringify-7c5aff47.js');
@@ -40,7 +40,7 @@ require('./_set-species-4458e975.js');
40
40
  require('./beam-d22818d3.js');
41
41
  require('./AdSlot.js');
42
42
  var ADInfeed = require('./ADInfeed-df340285.js');
43
- var lodash = require('./lodash-7fd85bcf.js');
43
+ var lodash = require('./lodash-fc2922d0.js');
44
44
  var ADlgInfeed = require('./ADlgInfeed-2110d08c.js');
45
45
 
46
46
  var MasterDeck = function (_React$Component) {
@@ -197,14 +197,14 @@ var MasterDeck = function (_React$Component) {
197
197
  }
198
198
 
199
199
  // please leave this for later debug purpose : Yong Jun.
200
- /* console.log('page change reported', {
201
- currentPage: currentPage,
202
- pageNumber: pageNumber,
203
- pathname: pathname,
204
- path: path,
205
- newPath: newPath,
206
- firstPage: pageNumber === 1,
207
- queryString: queryString
200
+ /* console.log('page change reported', {
201
+ currentPage: currentPage,
202
+ pageNumber: pageNumber,
203
+ pathname: pathname,
204
+ path: path,
205
+ newPath: newPath,
206
+ firstPage: pageNumber === 1,
207
+ queryString: queryString
208
208
  }) */
209
209
 
210
210
  if (pageview) {