@mjhls/mjh-framework 1.0.477 → 1.0.479

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 (72) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/AD300x250.js +1 -2
  3. package/dist/cjs/AD300x250x600.js +1 -2
  4. package/dist/cjs/AD728x90.js +1 -2
  5. package/dist/cjs/ADFloatingFooter.js +1 -2
  6. package/dist/cjs/ADFooter.js +1 -1
  7. package/dist/cjs/ADGutter.js +1 -2
  8. package/dist/cjs/ADSponsoredResources.js +1 -2
  9. package/dist/cjs/ADWebcast.js +1 -2
  10. package/dist/cjs/ADWelcome.js +1 -2
  11. package/dist/cjs/AdSlot.js +5 -6
  12. package/dist/cjs/ArticleQueue.js +1 -2
  13. package/dist/cjs/Beam.js +4 -334
  14. package/dist/cjs/Column2.js +9 -0
  15. package/dist/cjs/Column3.js +1 -2
  16. package/dist/cjs/DeckContent.js +2 -3
  17. package/dist/cjs/GridContent.js +3 -4
  18. package/dist/cjs/HamMagazine.js +12 -6
  19. package/dist/cjs/IssueLanding.js +3 -4
  20. package/dist/cjs/LeftNav.js +20 -6
  21. package/dist/cjs/MasterDeck.js +3 -4
  22. package/dist/cjs/NavDvm.js +15 -6
  23. package/dist/cjs/NavMagazine.js +12 -6
  24. package/dist/cjs/NavNative.js +12 -9
  25. package/dist/cjs/NavNormal.js +22 -3
  26. package/dist/cjs/PartnerDetailListing.js +3 -4
  27. package/dist/cjs/QueueDeckExpanded.js +3 -4
  28. package/dist/cjs/Segment.js +4 -212
  29. package/dist/cjs/SideFooter.js +27 -3
  30. package/dist/cjs/TemplateNormal.js +1 -2
  31. package/dist/cjs/View.js +1 -2
  32. package/dist/cjs/beam-9ffe0364.js +732 -0
  33. package/dist/cjs/getSerializers.js +45 -25
  34. package/dist/cjs/index.js +5 -6
  35. package/dist/esm/AD300x250.js +1 -2
  36. package/dist/esm/AD300x250x600.js +1 -2
  37. package/dist/esm/AD728x90.js +1 -2
  38. package/dist/esm/ADFloatingFooter.js +1 -2
  39. package/dist/esm/ADFooter.js +1 -1
  40. package/dist/esm/ADGutter.js +1 -2
  41. package/dist/esm/ADSponsoredResources.js +1 -2
  42. package/dist/esm/ADWebcast.js +1 -2
  43. package/dist/esm/ADWelcome.js +1 -2
  44. package/dist/esm/AdSlot.js +3 -4
  45. package/dist/esm/ArticleQueue.js +1 -2
  46. package/dist/esm/Beam.js +3 -337
  47. package/dist/esm/Column2.js +9 -0
  48. package/dist/esm/Column3.js +1 -2
  49. package/dist/esm/DeckContent.js +2 -3
  50. package/dist/esm/GridContent.js +3 -4
  51. package/dist/esm/HamMagazine.js +12 -6
  52. package/dist/esm/IssueLanding.js +3 -4
  53. package/dist/esm/LeftNav.js +21 -7
  54. package/dist/esm/MasterDeck.js +3 -4
  55. package/dist/esm/NavDvm.js +15 -6
  56. package/dist/esm/NavMagazine.js +12 -6
  57. package/dist/esm/NavNative.js +12 -9
  58. package/dist/esm/NavNormal.js +23 -4
  59. package/dist/esm/PartnerDetailListing.js +3 -4
  60. package/dist/esm/QueueDeckExpanded.js +3 -4
  61. package/dist/esm/Segment.js +3 -215
  62. package/dist/esm/SideFooter.js +28 -4
  63. package/dist/esm/TemplateNormal.js +1 -2
  64. package/dist/esm/View.js +1 -2
  65. package/dist/esm/beam-e248fb74.js +729 -0
  66. package/dist/esm/getSerializers.js +28 -8
  67. package/dist/esm/index.js +3 -4
  68. package/package.json +1 -1
  69. /package/dist/cjs/{ADInfeed-8a7f1d50.js → ADInfeed-9984cb73.js} +0 -0
  70. /package/dist/cjs/{ADlgInfeed-659b82b6.js → ADlgInfeed-bd434369.js} +0 -0
  71. /package/dist/esm/{ADInfeed-dbd65900.js → ADInfeed-f2d3970d.js} +0 -0
  72. /package/dist/esm/{ADlgInfeed-a385f968.js → ADlgInfeed-3c3c976a.js} +0 -0
@@ -21,8 +21,7 @@ require('./slicedToArray-8063ee51.js');
21
21
  require('./stringify-7c5aff47.js');
22
22
  require('./asyncToGenerator-8e707718.js');
23
23
  require('./_set-species-4458e975.js');
24
- require('./Beam.js');
25
- require('./Segment.js');
24
+ var Segment = require('./beam-9ffe0364.js');
26
25
  require('./AdSlot.js');
27
26
  var ListGroup = _interopDefault(require('react-bootstrap/ListGroup'));
28
27
  var ADWebcast = require('./ADWebcast.js');
@@ -54,24 +53,38 @@ var LeftNav = function LeftNav(props) {
54
53
  return false;
55
54
  };
56
55
 
56
+ var leftNavRef = React.useRef(null);
57
+ React.useEffect(function () {
58
+ Segment.SegmentAPI.init(); // auto init if not done yet
59
+
60
+ var segmentLinks = leftNavRef.current.querySelectorAll('a[needSegmentSupport="true"]');
61
+ for (var i = 0; i < segmentLinks.length; i++) {
62
+ var link = segmentLinks[i];
63
+ var href = link.getAttribute('href');
64
+ var newHref = Segment.SegmentAPI.getURL(href, { needSegmentSupport: true });
65
+ link.setAttribute('href', newHref);
66
+ }
67
+ }, []);
68
+
57
69
  var renderListGroupItem = function renderListGroupItem(subRow) {
58
70
  if (checkUrlIsExternal(subRow.url)) {
59
71
  return React__default.createElement(
60
72
  'a',
61
- { target: subRow.blank ? '_blank' : '_self', href: subRow.url },
73
+ { target: subRow.blank ? '_blank' : '_self', needSegmentSupport: subRow.needSegmentSupport ? 'true' : '', href: subRow.url },
62
74
  subRow.name
63
75
  );
64
76
  }
77
+
65
78
  return React__default.createElement(
66
79
  'a',
67
- { href: subRow.url || '#', target: subRow.blank ? '_blank' : '_self' },
80
+ { href: subRow.url || '#', target: subRow.blank ? '_blank' : '_self', needSegmentSupport: subRow.needSegmentSupport ? 'true' : '' },
68
81
  subRow.name
69
82
  );
70
83
  };
71
84
 
72
85
  return React__default.createElement(
73
86
  'section',
74
- null,
87
+ { ref: leftNavRef },
75
88
  leftItems && leftItems.map(function (row, index) {
76
89
  // Showing webcast AD between spotlight and sub navigation when "webcastAD" is passed from site within "leftItems"
77
90
  // Since Webcast Ad should be between spotlight and sub navigation it should be passed as the second element of leftItems array from site level.
@@ -100,7 +113,8 @@ var LeftNav = function LeftNav(props) {
100
113
  React__default.createElement(
101
114
  'a',
102
115
  { style: { color: 'white', fontSize: '.6rem' }, href: row.url },
103
- 'See All >'
116
+ 'See All ',
117
+ '>'
104
118
  )
105
119
  )
106
120
  ),
@@ -38,12 +38,11 @@ require('./slicedToArray-8063ee51.js');
38
38
  require('./stringify-7c5aff47.js');
39
39
  var asyncToGenerator = require('./asyncToGenerator-8e707718.js');
40
40
  require('./_set-species-4458e975.js');
41
- require('./Beam.js');
42
- require('./Segment.js');
41
+ require('./beam-9ffe0364.js');
43
42
  require('./AdSlot.js');
44
- var ADInfeed = require('./ADInfeed-8a7f1d50.js');
43
+ var ADInfeed = require('./ADInfeed-9984cb73.js');
45
44
  var lodash = require('./lodash-fc2922d0.js');
46
- var ADlgInfeed = require('./ADlgInfeed-659b82b6.js');
45
+ var ADlgInfeed = require('./ADlgInfeed-bd434369.js');
47
46
 
48
47
  var MasterDeck = function (_React$Component) {
49
48
  inherits._inherits(MasterDeck, _React$Component);
@@ -7,11 +7,17 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
7
7
  require('./_commonjsHelpers-06173234.js');
8
8
  require('./_to-object-329a650b.js');
9
9
  require('./core.get-iterator-method-41e87ec1.js');
10
+ require('./_library-dd23b178.js');
11
+ require('./_iter-detect-4d0352f8.js');
10
12
  require('./web.dom.iterable-43c3e277.js');
11
13
  var React = require('react');
12
14
  var React__default = _interopDefault(React);
13
15
  var Container = _interopDefault(require('react-bootstrap/Container'));
14
16
  require('./slicedToArray-8063ee51.js');
17
+ require('./stringify-7c5aff47.js');
18
+ require('./asyncToGenerator-8e707718.js');
19
+ require('./_set-species-4458e975.js');
20
+ var Segment = require('./beam-9ffe0364.js');
15
21
  require('react-bootstrap/Button');
16
22
  var Nav = _interopDefault(require('react-bootstrap/Nav'));
17
23
  var Navbar = _interopDefault(require('react-bootstrap/Navbar'));
@@ -30,6 +36,9 @@ var NavDvm = function NavDvm(props) {
30
36
 
31
37
 
32
38
  var getLink = function getLink(url, className, name, key, blank) {
39
+ var needSegmentSupport = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false;
40
+
41
+ url = Segment.SegmentAPI.getURL(url, { needSegmentSupport: needSegmentSupport });
33
42
  if (url && (url.includes('https://') || url.includes('http://'))) {
34
43
  return React__default.createElement(
35
44
  'a',
@@ -99,7 +108,7 @@ var NavDvm = function NavDvm(props) {
99
108
  if (ddRow.type === 'divider') {
100
109
  return React__default.createElement(NavDropdown.Divider, { key: subIndex });
101
110
  } else {
102
- return getLink(ddRow.url, 'dropdown-item', ddRow.name, subIndex, ddRow.blank);
111
+ return getLink(ddRow.url, 'dropdown-item', ddRow.name, subIndex, ddRow.blank, ddRow.needSegmentSupport);
103
112
  }
104
113
  })
105
114
  ),
@@ -113,14 +122,14 @@ var NavDvm = function NavDvm(props) {
113
122
  if (ddRow.type === 'divider') {
114
123
  return React__default.createElement(NavDropdown.Divider, { key: subIndex });
115
124
  } else {
116
- return getLink(ddRow.url, 'dropdown-item', ddRow.name, subIndex, ddRow.blank);
125
+ return getLink(ddRow.url, 'dropdown-item', ddRow.name, subIndex, ddRow.blank, ddRow.needSegmentSupport);
117
126
  }
118
127
  })
119
128
  )
120
129
  )
121
130
  );
122
131
  } else {
123
- return getLink(row.url, 'nav-link', row.name, index, row.blank);
132
+ return getLink(row.url, 'nav-link', row.name, index, row.blank, row.needSegmentSupport);
124
133
  }
125
134
  })
126
135
  ),
@@ -147,7 +156,7 @@ var NavDvm = function NavDvm(props) {
147
156
  if (ddRow.url && ddRow.name) {
148
157
  return ddRow.url && ddRow.name ? React__default.createElement(
149
158
  'a',
150
- { key: subIndex, href: ddRow.url, target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
159
+ { key: subIndex, href: Segment.SegmentAPI.getURL(ddRow.url, ddRow), target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
151
160
  ddRow.name
152
161
  ) : null;
153
162
  } else return null;
@@ -167,7 +176,7 @@ var NavDvm = function NavDvm(props) {
167
176
  if (ddRow.url && ddRow.name) {
168
177
  return ddRow.url && ddRow.name ? React__default.createElement(
169
178
  'a',
170
- { key: subIndex, href: ddRow.url, target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
179
+ { key: subIndex, href: Segment.SegmentAPI.getURL(ddRow.url, ddRow), target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
171
180
  ddRow.name
172
181
  ) : null;
173
182
  } else return null;
@@ -179,7 +188,7 @@ var NavDvm = function NavDvm(props) {
179
188
  } else {
180
189
  return row.url && row.name ? React__default.createElement(
181
190
  'a',
182
- { key: index, href: row.url, target: row.blank ? '_blank' : '_self', className: 'nav-link' },
191
+ { key: index, href: Segment.SegmentAPI.getURL(row.url, row), target: row.blank ? '_blank' : '_self', className: 'nav-link' },
183
192
  row.name
184
193
  ) : null;
185
194
  }
@@ -7,6 +7,8 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
7
7
  require('./_commonjsHelpers-06173234.js');
8
8
  require('./_to-object-329a650b.js');
9
9
  require('./core.get-iterator-method-41e87ec1.js');
10
+ require('./_library-dd23b178.js');
11
+ require('./_iter-detect-4d0352f8.js');
10
12
  require('./web.dom.iterable-43c3e277.js');
11
13
  var React = require('react');
12
14
  var React__default = _interopDefault(React);
@@ -14,6 +16,10 @@ require('prop-types');
14
16
  var Container = _interopDefault(require('react-bootstrap/Container'));
15
17
  var main = require('./main-bc4db521.js');
16
18
  var slicedToArray = require('./slicedToArray-8063ee51.js');
19
+ require('./stringify-7c5aff47.js');
20
+ require('./asyncToGenerator-8e707718.js');
21
+ require('./_set-species-4458e975.js');
22
+ var Segment = require('./beam-9ffe0364.js');
17
23
  require('./react-social-icons-cd0d9d3b.js');
18
24
  require('./iconBase-637d3f1e.js');
19
25
  var index_esm = require('./index.esm-fcdbd2c6.js');
@@ -296,7 +302,7 @@ var NavMagazine = function NavMagazine(props) {
296
302
  if (ddRow.url && ddRow.name) {
297
303
  return ddRow.url && ddRow.name ? React__default.createElement(
298
304
  'a',
299
- { key: subIndex, href: ddRow.url, target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
305
+ { key: subIndex, href: Segment.SegmentAPI.getURL(ddRow.url, ddRow), target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
300
306
  ddRow.name
301
307
  ) : null;
302
308
  } else return null;
@@ -316,7 +322,7 @@ var NavMagazine = function NavMagazine(props) {
316
322
  if (ddRow.url && ddRow.name) {
317
323
  return ddRow.url && ddRow.name ? React__default.createElement(
318
324
  'a',
319
- { key: subIndex, href: ddRow.url, target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
325
+ { key: subIndex, href: Segment.SegmentAPI.getURL(ddRow.url, ddRow), target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
320
326
  ddRow.name
321
327
  ) : null;
322
328
  } else return null;
@@ -328,7 +334,7 @@ var NavMagazine = function NavMagazine(props) {
328
334
  } else {
329
335
  return row.url && row.name ? React__default.createElement(
330
336
  'a',
331
- { key: index, href: row.url, target: row.blank ? '_blank' : '_self', className: 'nav-link' },
337
+ { key: index, href: Segment.SegmentAPI.getURL(row.url, row), target: row.blank ? '_blank' : '_self', className: 'nav-link' },
332
338
  row.name
333
339
  ) : null;
334
340
  }
@@ -360,7 +366,7 @@ var NavMagazine = function NavMagazine(props) {
360
366
  } else {
361
367
  return ddRow.url && ddRow.name ? React__default.createElement(
362
368
  'a',
363
- { key: subIndex, href: ddRow.url, target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
369
+ { key: subIndex, href: Segment.SegmentAPI.getURL(ddRow.url, ddRow), target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
364
370
  ddRow.name
365
371
  ) : null;
366
372
  }
@@ -378,7 +384,7 @@ var NavMagazine = function NavMagazine(props) {
378
384
  } else {
379
385
  return ddRow.url && ddRow.name ? React__default.createElement(
380
386
  'a',
381
- { key: subIndex, href: ddRow.url, target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
387
+ { key: subIndex, href: Segment.SegmentAPI.getURL(ddRow.url, ddRow), target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
382
388
  ddRow.name
383
389
  ) : null;
384
390
  }
@@ -389,7 +395,7 @@ var NavMagazine = function NavMagazine(props) {
389
395
  } else {
390
396
  return row.url && row.name ? React__default.createElement(
391
397
  'a',
392
- { key: index, href: row.url, target: row.blank ? '_blank' : '_self', className: 'nav-link' },
398
+ { key: index, href: Segment.SegmentAPI.getURL(row.url, row), target: row.blank ? '_blank' : '_self', className: 'nav-link' },
393
399
  row.name
394
400
  ) : null;
395
401
  }
@@ -7,6 +7,8 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
7
7
  require('./_commonjsHelpers-06173234.js');
8
8
  require('./_to-object-329a650b.js');
9
9
  require('./core.get-iterator-method-41e87ec1.js');
10
+ require('./_library-dd23b178.js');
11
+ require('./_iter-detect-4d0352f8.js');
10
12
  require('./web.dom.iterable-43c3e277.js');
11
13
  var React = require('react');
12
14
  var React__default = _interopDefault(React);
@@ -14,14 +16,15 @@ require('prop-types');
14
16
  var Container = _interopDefault(require('react-bootstrap/Container'));
15
17
  var main = require('./main-bc4db521.js');
16
18
  var slicedToArray = require('./slicedToArray-8063ee51.js');
19
+ require('./stringify-7c5aff47.js');
20
+ require('./asyncToGenerator-8e707718.js');
21
+ require('./_set-species-4458e975.js');
22
+ var Segment = require('./beam-9ffe0364.js');
17
23
  require('./react-social-icons-cd0d9d3b.js');
18
- require('./iconBase-637d3f1e.js');
19
- require('./index.esm-fcdbd2c6.js');
20
24
  require('react-bootstrap/Button');
21
25
  var Nav = _interopDefault(require('react-bootstrap/Nav'));
22
26
  var Navbar = _interopDefault(require('react-bootstrap/Navbar'));
23
27
  var NavDropdown = _interopDefault(require('react-bootstrap/NavDropdown'));
24
- require('./index.esm-c0d8b44b.js');
25
28
  require('react-bootstrap/Form');
26
29
  require('react-bootstrap/FormControl');
27
30
  var Search = require('./Search.js');
@@ -145,7 +148,7 @@ var NavNative = function NavNative(props) {
145
148
  if (ddRow.url && ddRow.name) {
146
149
  return ddRow.url && ddRow.name ? React__default.createElement(
147
150
  'a',
148
- { key: subIndex, href: ddRow.url, target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
151
+ { key: subIndex, href: Segment.SegmentAPI.getURL(ddRow.url, ddRow), target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
149
152
  ddRow.name
150
153
  ) : null;
151
154
  } else return null;
@@ -165,7 +168,7 @@ var NavNative = function NavNative(props) {
165
168
  if (ddRow.url && ddRow.name) {
166
169
  return ddRow.url && ddRow.name ? React__default.createElement(
167
170
  'a',
168
- { key: subIndex, href: ddRow.url, target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
171
+ { key: subIndex, href: Segment.SegmentAPI.getURL(ddRow.url, ddRow), target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
169
172
  ddRow.name
170
173
  ) : null;
171
174
  } else return null;
@@ -177,7 +180,7 @@ var NavNative = function NavNative(props) {
177
180
  } else {
178
181
  return row.url && row.name ? React__default.createElement(
179
182
  'a',
180
- { key: index, href: row.url, target: row.blank ? '_blank' : '_self', className: 'nav-link' },
183
+ { key: index, href: Segment.SegmentAPI.getURL(row.url, row), target: row.blank ? '_blank' : '_self', className: 'nav-link' },
181
184
  row.name
182
185
  ) : null;
183
186
  }
@@ -204,7 +207,7 @@ var NavNative = function NavNative(props) {
204
207
  } else {
205
208
  return ddRow.url && ddRow.name ? React__default.createElement(
206
209
  'a',
207
- { key: subIndex, href: ddRow.url, target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
210
+ { key: subIndex, href: Segment.SegmentAPI.getURL(ddRow.url, ddRow), target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
208
211
  ddRow.name
209
212
  ) : null;
210
213
  }
@@ -222,7 +225,7 @@ var NavNative = function NavNative(props) {
222
225
  } else {
223
226
  return ddRow.url && ddRow.name ? React__default.createElement(
224
227
  'a',
225
- { key: subIndex, href: ddRow.url, target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
228
+ { key: subIndex, href: Segment.SegmentAPI.getURL(ddRow.url, ddRow), target: ddRow.blank ? '_blank' : '_self', className: 'dropdown-item' },
226
229
  ddRow.name
227
230
  ) : null;
228
231
  }
@@ -233,7 +236,7 @@ var NavNative = function NavNative(props) {
233
236
  } else {
234
237
  return row.url && row.name ? React__default.createElement(
235
238
  'a',
236
- { key: index, href: row.url, target: row.blank ? '_blank' : '_self', className: 'nav-link' },
239
+ { key: index, href: Segment.SegmentAPI.getURL(row.url, row), target: row.blank ? '_blank' : '_self', className: 'nav-link' },
237
240
  row.name
238
241
  ) : null;
239
242
  }
@@ -7,11 +7,17 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
7
7
  require('./_commonjsHelpers-06173234.js');
8
8
  require('./_to-object-329a650b.js');
9
9
  require('./core.get-iterator-method-41e87ec1.js');
10
+ require('./_library-dd23b178.js');
11
+ require('./_iter-detect-4d0352f8.js');
10
12
  require('./web.dom.iterable-43c3e277.js');
11
13
  var React = require('react');
12
14
  var React__default = _interopDefault(React);
13
15
  var Container = _interopDefault(require('react-bootstrap/Container'));
14
16
  require('./slicedToArray-8063ee51.js');
17
+ require('./stringify-7c5aff47.js');
18
+ require('./asyncToGenerator-8e707718.js');
19
+ require('./_set-species-4458e975.js');
20
+ var Segment = require('./beam-9ffe0364.js');
15
21
  require('./iconBase-637d3f1e.js');
16
22
  require('react-bootstrap/Button');
17
23
  var Nav = _interopDefault(require('react-bootstrap/Nav'));
@@ -27,9 +33,22 @@ var NavNormal = function NavNormal(props) {
27
33
  dataObject = props.dataObject;
28
34
 
29
35
 
36
+ var ref = React.useRef(null);
37
+
38
+ React.useEffect(function () {
39
+ Segment.SegmentAPI.init(); // auto init if not done yet
40
+ var segmentLinks = ref.current.querySelectorAll('a[needSegmentSupport="true"]');
41
+ for (var i = 0; i < segmentLinks.length; i++) {
42
+ var link = segmentLinks[i];
43
+ var href = link.getAttribute('href');
44
+ var newHref = Segment.SegmentAPI.getURL(href, { needSegmentSupport: true });
45
+ link.setAttribute('href', newHref);
46
+ }
47
+ }, []);
48
+
30
49
  return React__default.createElement(
31
50
  'section',
32
- null,
51
+ { ref: ref },
33
52
  React__default.createElement(
34
53
  Navbar,
35
54
  { expand: 'lg' },
@@ -72,7 +91,7 @@ var NavNormal = function NavNormal(props) {
72
91
  } else {
73
92
  return React__default.createElement(
74
93
  NavDropdown.Item,
75
- { href: ddRow.url, target: ddRow.blank ? '_blank' : '_self' },
94
+ { href: ddRow.url, needSegmentSupport: ddRow.needSegmentSupport ? 'true' : '', target: ddRow.blank ? '_blank' : '_self' },
76
95
  ddRow.name
77
96
  );
78
97
  }
@@ -82,7 +101,7 @@ var NavNormal = function NavNormal(props) {
82
101
  // Link default
83
102
  return React__default.createElement(
84
103
  Nav.Link,
85
- { href: row.url, target: row.blank ? '_blank' : '_self' },
104
+ { href: row.url, needSegmentSupport: row.needSegmentSupport ? 'true' : '', target: row.blank ? '_blank' : '_self' },
86
105
  row.name
87
106
  );
88
107
  }
@@ -34,12 +34,11 @@ var slicedToArray = require('./slicedToArray-8063ee51.js');
34
34
  require('./stringify-7c5aff47.js');
35
35
  var asyncToGenerator = require('./asyncToGenerator-8e707718.js');
36
36
  require('./_set-species-4458e975.js');
37
- require('./Beam.js');
38
- require('./Segment.js');
37
+ require('./beam-9ffe0364.js');
39
38
  require('./AdSlot.js');
40
- require('./ADInfeed-8a7f1d50.js');
39
+ require('./ADInfeed-9984cb73.js');
41
40
  require('./lodash-fc2922d0.js');
42
- require('./ADlgInfeed-659b82b6.js');
41
+ require('./ADlgInfeed-bd434369.js');
43
42
  require('./AuthorComponent-cb8b8128.js');
44
43
  var BlockContent = require('./BlockContent-f942392e.js');
45
44
  require('./smoothscroll-95231a70.js');
@@ -33,12 +33,11 @@ var slicedToArray = require('./slicedToArray-8063ee51.js');
33
33
  require('./stringify-7c5aff47.js');
34
34
  require('./asyncToGenerator-8e707718.js');
35
35
  require('./_set-species-4458e975.js');
36
- require('./Beam.js');
37
- require('./Segment.js');
36
+ require('./beam-9ffe0364.js');
38
37
  require('./AdSlot.js');
39
- var ADInfeed = require('./ADInfeed-8a7f1d50.js');
38
+ var ADInfeed = require('./ADInfeed-9984cb73.js');
40
39
  var lodash = require('./lodash-fc2922d0.js');
41
- var ADlgInfeed = require('./ADlgInfeed-659b82b6.js');
40
+ var ADlgInfeed = require('./ADlgInfeed-bd434369.js');
42
41
  var AuthorComponent = require('./AuthorComponent-cb8b8128.js');
43
42
  var reactBootstrap = require('react-bootstrap');
44
43
 
@@ -6,219 +6,11 @@ require('./core.get-iterator-method-41e87ec1.js');
6
6
  require('./_library-dd23b178.js');
7
7
  require('./_iter-detect-4d0352f8.js');
8
8
  require('./web.dom.iterable-43c3e277.js');
9
- var asyncToGenerator = require('./asyncToGenerator-8e707718.js');
9
+ require('./stringify-7c5aff47.js');
10
+ require('./asyncToGenerator-8e707718.js');
10
11
  require('./_set-species-4458e975.js');
12
+ var Segment = require('./beam-9ffe0364.js');
11
13
 
12
- require("babel-polyfill");
13
14
 
14
- var Segment = {
15
- // onclive default
16
- init: function init() {
17
- var apiKey = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'BBbKMoOjmhsxPnbd2nO6osz3zq67DzuN';
18
15
 
19
- if (typeof window === 'undefined') {
20
- throw new Error('window object is not defined');
21
- }
22
-
23
- var Analytics = require('@segment/analytics.js-core/build/analytics');
24
- var SegmentIntegration = require('@segment/analytics.js-integration-segmentio');
25
-
26
- var analytics = new Analytics();
27
- analytics.use(SegmentIntegration);
28
-
29
- var integrationSettings = {
30
- "Segment.io": {
31
- apiKey: apiKey,
32
- retryQueue: true,
33
- addBundledMetadata: true
34
- }
35
- };
36
-
37
- analytics.initialize(integrationSettings);
38
- window.$segment = analytics;
39
- },
40
- getIDs: function getIDs() {
41
- var _this = this;
42
-
43
- return asyncToGenerator._asyncToGenerator( /*#__PURE__*/asyncToGenerator.regenerator.mark(function _callee() {
44
- var res, json;
45
- return asyncToGenerator.regenerator.wrap(function _callee$(_context) {
46
- while (1) {
47
- switch (_context.prev = _context.next) {
48
- case 0:
49
- _context.next = 2;
50
- return fetch('https://beam.mjhlifesciences.com/api/beam/id', {
51
- headers: {
52
- 'Content-Type': 'application/json',
53
- Accept: 'application/json'
54
- },
55
- method: 'post',
56
- credentials: 'include'
57
- });
58
-
59
- case 2:
60
- res = _context.sent;
61
- _context.next = 5;
62
- return res.json();
63
-
64
- case 5:
65
- json = _context.sent;
66
- return _context.abrupt('return', json);
67
-
68
- case 7:
69
- case 'end':
70
- return _context.stop();
71
- }
72
- }
73
- }, _callee, _this);
74
- }))();
75
- },
76
- pageview: function pageview(domain) {
77
- var _this2 = this;
78
-
79
- return asyncToGenerator._asyncToGenerator( /*#__PURE__*/asyncToGenerator.regenerator.mark(function _callee2() {
80
- var segment, result, beam_id, session_id;
81
- return asyncToGenerator.regenerator.wrap(function _callee2$(_context2) {
82
- while (1) {
83
- switch (_context2.prev = _context2.next) {
84
- case 0:
85
- segment = window.$segment;
86
-
87
- if (segment) {
88
- _context2.next = 4;
89
- break;
90
- }
91
-
92
- console.error('Segment not initialized', window);
93
- return _context2.abrupt('return');
94
-
95
- case 4:
96
- _context2.next = 6;
97
- return _this2.getIDs();
98
-
99
- case 6:
100
- result = _context2.sent;
101
- beam_id = result.beam_id ? result.beam_id : '';
102
- session_id = result.session_id ? result.session_id : '';
103
-
104
-
105
- segment.track('pageviews', {
106
- beamid: beam_id,
107
- sessionid: session_id,
108
- category: '',
109
- domain: domain
110
- });
111
-
112
- case 10:
113
- case 'end':
114
- return _context2.stop();
115
- }
116
- }
117
- }, _callee2, _this2);
118
- }))();
119
- },
120
- adClicked: function adClicked(domain, advertiserid, campaignid, creativeid, itemid, size, isemptyline, sourceAgnosticCreativeId, sourceAgnosticlineId) {
121
- var _this3 = this;
122
-
123
- return asyncToGenerator._asyncToGenerator( /*#__PURE__*/asyncToGenerator.regenerator.mark(function _callee3() {
124
- var segment, result, beam_id, session_id;
125
- return asyncToGenerator.regenerator.wrap(function _callee3$(_context3) {
126
- while (1) {
127
- switch (_context3.prev = _context3.next) {
128
- case 0:
129
- segment = window.$segment;
130
-
131
- if (segment) {
132
- _context3.next = 4;
133
- break;
134
- }
135
-
136
- console.error('Segment not initialized');
137
- return _context3.abrupt('return');
138
-
139
- case 4:
140
- _context3.next = 6;
141
- return _this3.getIDs();
142
-
143
- case 6:
144
- result = _context3.sent;
145
- beam_id = result.beam_id ? result.beam_id : '';
146
- session_id = result.session_id ? result.session_id : '';
147
-
148
-
149
- segment.track('Ad Clicked', {
150
- beamid: beam_id,
151
- sessionid: session_id,
152
- advertiserid: advertiserid,
153
- campaignid: campaignid,
154
- creativeid: creativeid,
155
- itemid: itemid,
156
- size: size,
157
- isemptyline: isemptyline,
158
- sourceAgnosticCreativeId: sourceAgnosticCreativeId,
159
- sourceAgnosticlineId: sourceAgnosticlineId,
160
- domain: domain
161
- });
162
-
163
- case 10:
164
- case 'end':
165
- return _context3.stop();
166
- }
167
- }
168
- }, _callee3, _this3);
169
- }))();
170
- },
171
- adViewed: function adViewed(domain, advertiserid, campaignid, creativeid, itemid, size, isemptyline, sourceAgnosticCreativeId, sourceAgnosticlineId) {
172
- var _this4 = this;
173
-
174
- return asyncToGenerator._asyncToGenerator( /*#__PURE__*/asyncToGenerator.regenerator.mark(function _callee4() {
175
- var segment, result, beam_id, session_id;
176
- return asyncToGenerator.regenerator.wrap(function _callee4$(_context4) {
177
- while (1) {
178
- switch (_context4.prev = _context4.next) {
179
- case 0:
180
- segment = window.$segment;
181
-
182
- if (segment) {
183
- _context4.next = 4;
184
- break;
185
- }
186
-
187
- console.error('Segment not initialized');
188
- return _context4.abrupt('return');
189
-
190
- case 4:
191
- _context4.next = 6;
192
- return _this4.getIDs();
193
-
194
- case 6:
195
- result = _context4.sent;
196
- beam_id = result.beam_id ? result.beam_id : '';
197
- session_id = result.session_id ? result.session_id : '';
198
-
199
-
200
- segment.track('Impression Viewed', {
201
- beamid: beam_id,
202
- sessionid: session_id,
203
- advertiserid: advertiserid,
204
- campaignid: campaignid,
205
- creativeid: creativeid,
206
- itemid: itemid,
207
- size: size,
208
- isemptyline: isemptyline,
209
- sourceAgnosticCreativeId: sourceAgnosticCreativeId,
210
- sourceAgnosticlineId: sourceAgnosticlineId,
211
- domain: domain
212
- });
213
-
214
- case 10:
215
- case 'end':
216
- return _context4.stop();
217
- }
218
- }
219
- }, _callee4, _this4);
220
- }))();
221
- }
222
- };
223
-
224
- module.exports = Segment;
16
+ module.exports = Segment.SegmentAPI;