@mjhls/mjh-framework 1.0.971-nofollow-v2 → 1.0.971-nofollow-v4

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 (31) hide show
  1. package/dist/cjs/ArticleProgramLandingPage.js +1 -1
  2. package/dist/cjs/ExternalResources.js +1 -1
  3. package/dist/cjs/HorizontalArticleListing.js +1 -1
  4. package/dist/cjs/IssueLanding.js +1 -1
  5. package/dist/cjs/{MediaSeriesCard-1fe984a5.js → MediaSeriesCard-e65f78d8.js} +1 -1
  6. package/dist/cjs/MediaSeriesLanding.js +2 -2
  7. package/dist/cjs/MediaSeriesLandingPaginated.js +2 -2
  8. package/dist/cjs/PartnerDetailListing.js +1 -1
  9. package/dist/cjs/PartnerDetailListingPaginated.js +1 -1
  10. package/dist/cjs/TaxonomyDescription.js +1 -1
  11. package/dist/cjs/VideoProgramLandingPage.js +1 -1
  12. package/dist/cjs/View.js +1 -2
  13. package/dist/cjs/getSerializers.js +5 -5
  14. package/dist/cjs/{index-a3b98b56.js → index-366089a6.js} +71 -63
  15. package/dist/cjs/index.js +1 -1
  16. package/dist/esm/ArticleProgramLandingPage.js +1 -1
  17. package/dist/esm/ExternalResources.js +1 -1
  18. package/dist/esm/HorizontalArticleListing.js +1 -1
  19. package/dist/esm/IssueLanding.js +1 -1
  20. package/dist/esm/{MediaSeriesCard-1a46f31b.js → MediaSeriesCard-9405860d.js} +1 -1
  21. package/dist/esm/MediaSeriesLanding.js +2 -2
  22. package/dist/esm/MediaSeriesLandingPaginated.js +2 -2
  23. package/dist/esm/PartnerDetailListing.js +1 -1
  24. package/dist/esm/PartnerDetailListingPaginated.js +1 -1
  25. package/dist/esm/TaxonomyDescription.js +1 -1
  26. package/dist/esm/VideoProgramLandingPage.js +1 -1
  27. package/dist/esm/View.js +1 -2
  28. package/dist/esm/getSerializers.js +5 -5
  29. package/dist/esm/{index-fb83357d.js → index-cf1bb508.js} +71 -63
  30. package/dist/esm/index.js +1 -1
  31. package/package.json +1 -1
@@ -5,7 +5,7 @@ var slicedToArray = require('./slicedToArray-067dd3bc.js');
5
5
  var _extends = require('./extends-7c86182f.js');
6
6
  var React = require('react');
7
7
  var BlockContent = require('./BlockContent-9ebd251f.js');
8
- var getSerializers = require('./index-a3b98b56.js');
8
+ var getSerializers = require('./index-366089a6.js');
9
9
  var ArticleSeriesListing = require('./ArticleSeriesListing.js');
10
10
  require('./_commonjsHelpers-06173234.js');
11
11
  require('./core.get-iterator-method-5643aa10.js');
@@ -4,7 +4,7 @@ var _extends = require('./extends-7c86182f.js');
4
4
  var slicedToArray = require('./slicedToArray-067dd3bc.js');
5
5
  var React = require('react');
6
6
  var BlockContent = require('./BlockContent-9ebd251f.js');
7
- var getSerializers = require('./index-a3b98b56.js');
7
+ var getSerializers = require('./index-366089a6.js');
8
8
  var index = require('./index-f86bb269.js');
9
9
  var Router = require('next/router');
10
10
  var Button = require('react-bootstrap/Button');
@@ -5,7 +5,7 @@ var React = require('react');
5
5
  var ArticleCarousel = require('./ArticleCarousel.js');
6
6
  var index_esm = require('./index.esm-d81454e7.js');
7
7
  var BlockContent = require('./BlockContent-9ebd251f.js');
8
- var getSerializers = require('./index-a3b98b56.js');
8
+ var getSerializers = require('./index-366089a6.js');
9
9
  require('./_commonjsHelpers-06173234.js');
10
10
  require('./core.get-iterator-method-5643aa10.js');
11
11
  require('./_object-pie-083f2dd6.js');
@@ -5,7 +5,7 @@ var React = require('react');
5
5
  var QueueDeckExpanded = require('./QueueDeckExpanded.js');
6
6
  var Breadcrumbs = require('./Breadcrumbs.js');
7
7
  var BlockContent = require('./BlockContent-9ebd251f.js');
8
- var getSerializers = require('./index-a3b98b56.js');
8
+ var getSerializers = require('./index-366089a6.js');
9
9
  require('./_commonjsHelpers-06173234.js');
10
10
  require('./core.get-iterator-method-5643aa10.js');
11
11
  require('./_object-pie-083f2dd6.js');
@@ -11,7 +11,7 @@ var urlFor = require('./urlFor.js');
11
11
  var moment = require('./moment-aca40de1.js');
12
12
  var styleInject_es = require('./style-inject.es-dcee06b6.js');
13
13
  var BlockContent = require('./BlockContent-9ebd251f.js');
14
- var getSerializers = require('./index-a3b98b56.js');
14
+ var getSerializers = require('./index-366089a6.js');
15
15
 
16
16
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
17
17
 
@@ -5,13 +5,13 @@ var _typeof = require('./typeof-567e31ff.js');
5
5
  var _extends = require('./extends-7c86182f.js');
6
6
  var slicedToArray = require('./slicedToArray-067dd3bc.js');
7
7
  var React = require('react');
8
- var MediaSeriesCard = require('./MediaSeriesCard-1fe984a5.js');
8
+ var MediaSeriesCard = require('./MediaSeriesCard-e65f78d8.js');
9
9
  require('./index-50be6759.js');
10
10
  require('react-dom');
11
11
  var Link = require('next/link');
12
12
  var MasterDeck = require('./MasterDeck.js');
13
13
  var BlockContent = require('./BlockContent-9ebd251f.js');
14
- var getSerializers = require('./index-a3b98b56.js');
14
+ var getSerializers = require('./index-366089a6.js');
15
15
  require('./_commonjsHelpers-06173234.js');
16
16
  require('./core.get-iterator-method-5643aa10.js');
17
17
  require('./web.dom.iterable-d98303e0.js');
@@ -5,13 +5,13 @@ var _typeof = require('./typeof-567e31ff.js');
5
5
  var _extends = require('./extends-7c86182f.js');
6
6
  var slicedToArray = require('./slicedToArray-067dd3bc.js');
7
7
  var React = require('react');
8
- var MediaSeriesCard = require('./MediaSeriesCard-1fe984a5.js');
8
+ var MediaSeriesCard = require('./MediaSeriesCard-e65f78d8.js');
9
9
  require('./index-50be6759.js');
10
10
  require('react-dom');
11
11
  var Link = require('next/link');
12
12
  var BlockContent = require('./BlockContent-9ebd251f.js');
13
13
  var MasterDeckPaginated = require('./MasterDeckPaginated.js');
14
- var getSerializers = require('./index-a3b98b56.js');
14
+ var getSerializers = require('./index-366089a6.js');
15
15
  require('./_commonjsHelpers-06173234.js');
16
16
  require('./core.get-iterator-method-5643aa10.js');
17
17
  require('./web.dom.iterable-d98303e0.js');
@@ -13,7 +13,7 @@ var QueueDeckExpanded = require('./QueueDeckExpanded.js');
13
13
  var Breadcrumbs = require('./Breadcrumbs.js');
14
14
  var Feature = require('./Feature.js');
15
15
  var urlFor = require('./urlFor.js');
16
- var getSerializers = require('./index-a3b98b56.js');
16
+ var getSerializers = require('./index-366089a6.js');
17
17
  var BlockContent = require('./BlockContent-9ebd251f.js');
18
18
  require('./_commonjsHelpers-06173234.js');
19
19
  require('./core.get-iterator-method-5643aa10.js');
@@ -13,7 +13,7 @@ var QueueDeckExpandedPaginated = require('./QueueDeckExpandedPaginated.js');
13
13
  var Breadcrumbs = require('./Breadcrumbs.js');
14
14
  var Feature = require('./Feature.js');
15
15
  var urlFor = require('./urlFor.js');
16
- var getSerializers = require('./index-a3b98b56.js');
16
+ var getSerializers = require('./index-366089a6.js');
17
17
  var BlockContent = require('./BlockContent-9ebd251f.js');
18
18
  require('./_commonjsHelpers-06173234.js');
19
19
  require('./core.get-iterator-method-5643aa10.js');
@@ -7,7 +7,7 @@ var React = require('react');
7
7
  var Router = require('next/router');
8
8
  var Head = require('next/head');
9
9
  var BlockContent = require('./BlockContent-9ebd251f.js');
10
- var getSerializers = require('./index-a3b98b56.js');
10
+ var getSerializers = require('./index-366089a6.js');
11
11
  require('./_commonjsHelpers-06173234.js');
12
12
  require('./core.get-iterator-method-5643aa10.js');
13
13
  require('./_object-pie-083f2dd6.js');
@@ -7,7 +7,7 @@ var BlockContent = require('./BlockContent-9ebd251f.js');
7
7
  var Col = require('react-bootstrap/Col');
8
8
  var Form = require('react-bootstrap/Form');
9
9
  var Button = require('react-bootstrap/Button');
10
- var getSerializers = require('./index-a3b98b56.js');
10
+ var getSerializers = require('./index-366089a6.js');
11
11
  var VideoSeriesListing = require('./VideoSeriesListing.js');
12
12
  require('./_commonjsHelpers-06173234.js');
13
13
  require('./core.get-iterator-method-5643aa10.js');
package/dist/cjs/View.js CHANGED
@@ -17,7 +17,7 @@ var FormControl = require('react-bootstrap/FormControl');
17
17
  var Button = require('react-bootstrap/Button');
18
18
  var visibilitySensor = require('./visibility-sensor-eb2c5b69.js');
19
19
  var SocialShare = require('./SocialShare.js');
20
- var getSerializers = require('./index-a3b98b56.js');
20
+ var getSerializers = require('./index-366089a6.js');
21
21
  var AdSlot = require('./AdSlot.js');
22
22
  var SeriesSlider = require('./SeriesSlider-74546d19.js');
23
23
  var getTargeting = require('./getTargeting-dab97fe1.js');
@@ -966,7 +966,6 @@ var Article = React__default['default'].memo(React.forwardRef(function (props, r
966
966
  useSegmentRecommendedArticles = _props$useSegmentReco === undefined ? false : _props$useSegmentReco;
967
967
  var sliderData = props.sliderData;
968
968
 
969
-
970
969
  var disableEpisodeNumber = false;
971
970
  if (article && article.documentGroup && article.documentGroup.disableEpisodeNumber === true) {
972
971
  disableEpisodeNumber = true;
@@ -1,15 +1,13 @@
1
1
  'use strict';
2
2
 
3
- require('./extends-7c86182f.js');
4
- require('./slicedToArray-067dd3bc.js');
5
3
  require('react');
6
- var getSerializers = require('./index-a3b98b56.js');
4
+ var getSerializers = require('./index-366089a6.js');
7
5
  require('./BlockContent-9ebd251f.js');
8
6
  require('./entities-df1aed86.js');
7
+ require('./slicedToArray-067dd3bc.js');
9
8
  require('./_commonjsHelpers-06173234.js');
10
- require('./core.get-iterator-method-5643aa10.js');
11
- require('./_object-pie-083f2dd6.js');
12
9
  require('./web.dom.iterable-d98303e0.js');
10
+ require('./core.get-iterator-method-5643aa10.js');
13
11
  require('react-bootstrap');
14
12
  require('./urlFor.js');
15
13
  require('./index-d48b231c.js');
@@ -26,6 +24,8 @@ require('./_library-dd23b178.js');
26
24
  require('./_iter-detect-b1df62f0.js');
27
25
  require('./Segment.js');
28
26
  require('./main-f1c77adb.js');
27
+ require('./extends-7c86182f.js');
28
+ require('./_object-pie-083f2dd6.js');
29
29
  require('./urlForFile-29d3815a.js');
30
30
  require('./index-eadd5035.js');
31
31
  require('react-dom');
@@ -1,8 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var _extends = require('./extends-7c86182f.js');
4
- var slicedToArray = require('./slicedToArray-067dd3bc.js');
5
3
  var React = require('react');
4
+ var slicedToArray = require('./slicedToArray-067dd3bc.js');
6
5
  var reactBootstrap = require('react-bootstrap');
7
6
  var urlFor = require('./urlFor.js');
8
7
  var index = require('./index-fc2f1ca2.js');
@@ -15,6 +14,7 @@ require('./Beam.js');
15
14
  var Segment = require('./Segment.js');
16
15
  var main = require('./main-f1c77adb.js');
17
16
  var BlockContent = require('./BlockContent-9ebd251f.js');
17
+ var _extends = require('./extends-7c86182f.js');
18
18
  var urlForFile = require('./urlForFile-29d3815a.js');
19
19
  var index$2 = require('./index-eadd5035.js');
20
20
  var asyncToGenerator = require('./asyncToGenerator-77821af0.js');
@@ -10391,7 +10391,14 @@ var DigiohSmartTag = function DigiohSmartTag(props) {
10391
10391
  return React__default['default'].createElement('div', { id: FormID });
10392
10392
  };
10393
10393
 
10394
- var siteArray = ['www.aestheticsauthority.com', 'www.ajmc.com', 'www.appliedclinicaltrialsonline.com', 'www.biopharminternational.com', 'www.cancernetwork.com', 'www.cannabissciencetech.com', 'www.centerforbiosimilars.com', 'www.chromatographyonline.com', 'www.contagionlive.com', 'www.contemporaryclinic.com', 'www.contemporaryobgyn.net', 'www.contemporarypediatrics.com', 'www.curetoday.com', 'www.dentalproductsreport.com', 'www.dermatologytimes.com', 'www.diagnosticimaging.com', 'www.drugtopics.com', 'www.dvm360.com', 'www.endocrinologynetwork.com', 'europe.ophthalmologytimes.com', 'www.formularywatch.com', 'www.hcplive.com', 'www.infectioncontroltoday.com', 'www.managedhealthcareexecutive.com', 'www.medicaleconomics.com', 'www.modernretina.com', 'www.neurologylive.com', 'www.nutritionaloutlook.com', 'www.onclive.com', 'www.oncnursingnews.com', 'www.ophthalmologytimes.com', 'www.optometrytimes.com', 'www.patientcareonline.com', 'www.pharmaceuticalcommerce.com', 'www.pharmacytimes.com', 'www.pharmexec.com', 'www.pharmtech.com', 'www.physicianspractice.com', 'www.practicalcardiology.com', 'www.psychiatrictimes.com', 'www.rheumatologynetwork.com', 'www.spectroscopyonline.com', 'www.targetedonc.com', 'www.turbomachinerymag.com', 'www.urologytimes.com'];
10394
+ var siteArray = ['aestheticsauthority.com', 'ajmc.com', 'appliedclinicaltrialsonline.com', 'biopharminternational.com', 'cancernetwork.com', 'cannabissciencetech.com', 'centerforbiosimilars.com', 'chromatographyonline.com', 'contagionlive.com', 'contemporaryclinic.com', 'contemporaryobgyn.net', 'contemporarypediatrics.com', 'curetoday.com', 'dentalproductsreport.com', 'dermatologytimes.com', 'diagnosticimaging.com', 'drugtopics.com', 'dvm360.com', 'endocrinologynetwork.com', 'europe.ophthalmologytimes.com', 'formularywatch.com', 'hcplive.com', 'infectioncontroltoday.com', 'managedhealthcareexecutive.com', 'medicaleconomics.com', 'modernretina.com', 'neurologylive.com', 'nutritionaloutlook.com', 'onclive.com', 'oncnursingnews.com', 'ophthalmologytimes.com', 'optometrytimes.com', 'patientcareonline.com', 'pharmaceuticalcommerce.com', 'pharmacytimes.com', 'pharmexec.com', 'pharmtech.com', 'physicianspractice.com', 'practicalcardiology.com', 'psychiatrictimes.com', 'rheumatologynetwork.com', 'spectroscopyonline.com', 'targetedonc.com', 'turbomachinerymag.com', 'urologytimes.com'];
10395
+
10396
+ var checkUrlIsExternal = function checkUrlIsExternal(url) {
10397
+ if (/https?:\/\/((?:[\w\d-]+\.)+[\w\d]{2,})|http?:\/\/((?:[\w\d-]+\.)+[\w\d]{2,})|(^mailto)/i.test(url)) {
10398
+ return true;
10399
+ }
10400
+ return false;
10401
+ };
10395
10402
 
10396
10403
  var ScrollToElement = function ScrollToElement(elementId) {
10397
10404
  var element = document.getElementById(elementId);
@@ -10407,11 +10414,66 @@ var ScrollToElement = function ScrollToElement(elementId) {
10407
10414
  }
10408
10415
  };
10409
10416
 
10410
- var checkUrlIsExternal = function checkUrlIsExternal(url) {
10411
- if (/https?:\/\/((?:[\w\d-]+\.)+[\w\d]{2,})|http?:\/\/((?:[\w\d-]+\.)+[\w\d]{2,})|(^mailto)/i.test(url)) {
10412
- return true;
10417
+ var ExternalLink = function ExternalLink(props) {
10418
+ var children = props.children,
10419
+ _props$mark = props.mark,
10420
+ href = _props$mark.href,
10421
+ blank = _props$mark.blank,
10422
+ color = _props$mark.color,
10423
+ nofollow = _props$mark.nofollow;
10424
+
10425
+ var _useState = React.useState(null),
10426
+ _useState2 = slicedToArray._slicedToArray(_useState, 2),
10427
+ ogUrl = _useState2[0],
10428
+ setOgUrl = _useState2[1];
10429
+
10430
+ React.useEffect(function () {
10431
+ if (window.location.href) {
10432
+ !ogUrl && setOgUrl(String(window.location.host).replace('www.', ''));
10433
+ }
10434
+ }, []);
10435
+ var isExernalUrl = checkUrlIsExternal(href);
10436
+ var checkBaseUrl = function checkBaseUrl(url) {
10437
+ if (url.includes('http://') || url.includes('https://')) {
10438
+ //to remove http:// or https:// to check URLs
10439
+ url = url.replace('www.', '').split('/').slice(2, 3).join('/');
10440
+ }
10441
+ return ogUrl && ogUrl.includes(url.replace('www.', '').split('/').slice(0, 1).join('/')) || siteArray.includes(url.replace('www.', '').split('/').slice(0, 1).join('/')) ? true : false;
10442
+ };
10443
+ var checkNoFollow = function checkNoFollow(url, nofollow) {
10444
+ if (url && !isExernalUrl || url && checkBaseUrl(url)) {
10445
+ //if not external url, nofollow is disabled
10446
+ return '';
10447
+ } else if (url && nofollow) {
10448
+ //if not external url and nofollow is enabled, nofollow
10449
+ return 'nofollow';
10450
+ } else {
10451
+ //if not external url and nofollow is disabled, no nofollow
10452
+ return '';
10453
+ }
10454
+ };
10455
+
10456
+ if (href && href.charAt(0) === '#') {
10457
+ var elementId = href.slice(1);
10458
+ if (articleId) elementId = elementId + '-' + articleId;
10459
+ return React__default['default'].createElement(
10460
+ 'a',
10461
+ { onClick: function onClick() {
10462
+ return ScrollToElement(elementId);
10463
+ } },
10464
+ children
10465
+ );
10413
10466
  }
10414
- return false;
10467
+
10468
+ return href ? React__default['default'].createElement(
10469
+ 'a',
10470
+ _extends._extends({
10471
+ rel: checkNoFollow(href, nofollow) + ' ' + (blank && !checkBaseUrl(href) ? 'noreferrer noopener' : ''),
10472
+ href: isExernalUrl ? href : '/' + href,
10473
+ target: blank ? '_blank' : '_self'
10474
+ }, color && color.hex && { style: { color: color.hex } }),
10475
+ children
10476
+ ) : children;
10415
10477
  };
10416
10478
 
10417
10479
  var convertEntities = function convertEntities(props) {
@@ -10456,15 +10518,6 @@ var getSerializers = function getSerializers() {
10456
10518
 
10457
10519
  var nextVideo = article && article.nextVideo ? article.nextVideo : null;
10458
10520
 
10459
- var _useState = React.useState(''),
10460
- _useState2 = slicedToArray._slicedToArray(_useState, 2),
10461
- ogUrl = _useState2[0],
10462
- setOgUrl = _useState2[1];
10463
-
10464
- React.useEffect(function () {
10465
- setOgUrl(window.location.host);
10466
- }, []);
10467
-
10468
10521
  return {
10469
10522
  types: {
10470
10523
  undefined: function undefined$1() {
@@ -10648,54 +10701,9 @@ var getSerializers = function getSerializers() {
10648
10701
  },
10649
10702
  link: function link(props) {
10650
10703
  var children = props.children,
10651
- _props$mark = props.mark,
10652
- href = _props$mark.href,
10653
- blank = _props$mark.blank,
10654
- color = _props$mark.color,
10655
- nofollow = _props$mark.nofollow;
10656
-
10657
- var isExernalUrl = checkUrlIsExternal(href);
10658
- var checkBaseUrl = function checkBaseUrl(url) {
10659
- if (url.includes('http://') || url.includes('https://')) {
10660
- //to remove http:// or https:// to check URLs
10661
- url = url.split('/').slice(2, 3).join('/');
10662
- }
10663
- return ogUrl && ogUrl.includes(url.split('/').slice(0, 1).join('/')) || siteArray.includes(url.split('/').slice(0, 1).join('/')) ? true : false;
10664
- };
10665
- var checkNoFollow = function checkNoFollow(url, nofollow) {
10666
- if (url && !isExernalUrl || url && checkBaseUrl(url)) {
10667
- //if not external url, nofollow is disabled
10668
- return '';
10669
- } else if (url && nofollow) {
10670
- //if not external url and nofollow is enabled, nofollow
10671
- return 'nofollow';
10672
- } else {
10673
- //if not external url and nofollow is disabled, no nofollow
10674
- return '';
10675
- }
10676
- };
10704
+ mark = props.mark;
10677
10705
 
10678
- if (href && href.charAt(0) === '#') {
10679
- var elementId = href.slice(1);
10680
- if (articleId) elementId = elementId + '-' + articleId;
10681
- return React__default['default'].createElement(
10682
- 'a',
10683
- { onClick: function onClick() {
10684
- return ScrollToElement(elementId);
10685
- } },
10686
- children
10687
- );
10688
- }
10689
-
10690
- return href ? React__default['default'].createElement(
10691
- 'a',
10692
- _extends._extends({
10693
- rel: checkNoFollow(href, nofollow) + ' ' + (blank ? 'noreferrer noopener' : ''),
10694
- href: isExernalUrl ? href : '/' + href,
10695
- target: blank ? '_blank' : '_self'
10696
- }, color && color.hex && { style: { color: color.hex } }),
10697
- children
10698
- ) : children;
10706
+ return React__default['default'].createElement(ExternalLink, { children: children, mark: mark });
10699
10707
  },
10700
10708
  alignleft: function alignleft(_ref23) {
10701
10709
  var children = _ref23.children;
package/dist/cjs/index.js CHANGED
@@ -90,7 +90,7 @@ var VerticalHero = require('./VerticalHero.js');
90
90
  var YahooHero = require('./YahooHero.js');
91
91
  var GridHero = require('./GridHero.js');
92
92
  var ConferenceArticleCard = require('./ConferenceArticleCard.js');
93
- var getSerializers = require('./index-a3b98b56.js');
93
+ var getSerializers = require('./index-366089a6.js');
94
94
  var Beam = require('./Beam.js');
95
95
  var Segment = require('./Segment.js');
96
96
  var KMTracker = require('./KMTracker.js');
@@ -3,7 +3,7 @@ import { _ as _slicedToArray } from './slicedToArray-6ebcbfea.js';
3
3
  import { _ as _extends } from './extends-6d8e3924.js';
4
4
  import React__default from 'react';
5
5
  import { B as BlockContent } from './BlockContent-1e73bd2c.js';
6
- import { g as getSerializers } from './index-fb83357d.js';
6
+ import { g as getSerializers } from './index-cf1bb508.js';
7
7
  import ArticleSeriesListing from './ArticleSeriesListing.js';
8
8
  import './_commonjsHelpers-0c4b6f40.js';
9
9
  import './core.get-iterator-method-ea258bb1.js';
@@ -2,7 +2,7 @@ import { _ as _extends } from './extends-6d8e3924.js';
2
2
  import { _ as _slicedToArray } from './slicedToArray-6ebcbfea.js';
3
3
  import React__default, { useState, useEffect } from 'react';
4
4
  import { B as BlockContent } from './BlockContent-1e73bd2c.js';
5
- import { g as getSerializers } from './index-fb83357d.js';
5
+ import { g as getSerializers } from './index-cf1bb508.js';
6
6
  import { m as momentTimezone } from './index-79cfd25c.js';
7
7
  import { useRouter } from 'next/router';
8
8
  import Button from 'react-bootstrap/Button';
@@ -3,7 +3,7 @@ import React__default from 'react';
3
3
  import ArticleCarousel from './ArticleCarousel.js';
4
4
  import { I as IoIosArrowForward } from './index.esm-eb1e8e80.js';
5
5
  import { B as BlockContent } from './BlockContent-1e73bd2c.js';
6
- import { g as getSerializers } from './index-fb83357d.js';
6
+ import { g as getSerializers } from './index-cf1bb508.js';
7
7
  import './_commonjsHelpers-0c4b6f40.js';
8
8
  import './core.get-iterator-method-ea258bb1.js';
9
9
  import './_object-pie-133f504a.js';
@@ -3,7 +3,7 @@ import React__default from 'react';
3
3
  import QueueDeckExpanded from './QueueDeckExpanded.js';
4
4
  import Breadcrumbs from './Breadcrumbs.js';
5
5
  import { B as BlockContent } from './BlockContent-1e73bd2c.js';
6
- import { g as getSerializers } from './index-fb83357d.js';
6
+ import { g as getSerializers } from './index-cf1bb508.js';
7
7
  import './_commonjsHelpers-0c4b6f40.js';
8
8
  import './core.get-iterator-method-ea258bb1.js';
9
9
  import './_object-pie-133f504a.js';
@@ -9,7 +9,7 @@ import urlFor from './urlFor.js';
9
9
  import { m as moment } from './moment-bc12cb97.js';
10
10
  import { s as styleInject } from './style-inject.es-1f59c1d0.js';
11
11
  import { B as BlockContent } from './BlockContent-1e73bd2c.js';
12
- import { g as getSerializers } from './index-fb83357d.js';
12
+ import { g as getSerializers } from './index-cf1bb508.js';
13
13
 
14
14
  /**
15
15
  * Copyright (c) 2013-present, Facebook, Inc.
@@ -3,13 +3,13 @@ import { _ as _typeof } from './typeof-e9fc0c5d.js';
3
3
  import { _ as _extends } from './extends-6d8e3924.js';
4
4
  import { _ as _slicedToArray } from './slicedToArray-6ebcbfea.js';
5
5
  import React__default, { useState, useEffect } from 'react';
6
- import { M as MediaSeriesCard, D as DropdownButton, a as Dropdown } from './MediaSeriesCard-1a46f31b.js';
6
+ import { M as MediaSeriesCard, D as DropdownButton, a as Dropdown } from './MediaSeriesCard-9405860d.js';
7
7
  import './index-98ca9cec.js';
8
8
  import 'react-dom';
9
9
  import Link from 'next/link';
10
10
  import MasterDeck from './MasterDeck.js';
11
11
  import { B as BlockContent } from './BlockContent-1e73bd2c.js';
12
- import { g as getSerializers } from './index-fb83357d.js';
12
+ import { g as getSerializers } from './index-cf1bb508.js';
13
13
  import './_commonjsHelpers-0c4b6f40.js';
14
14
  import './core.get-iterator-method-ea258bb1.js';
15
15
  import './web.dom.iterable-ab4dea5c.js';
@@ -3,13 +3,13 @@ import { _ as _typeof } from './typeof-e9fc0c5d.js';
3
3
  import { _ as _extends } from './extends-6d8e3924.js';
4
4
  import { _ as _slicedToArray } from './slicedToArray-6ebcbfea.js';
5
5
  import React__default, { useState, useEffect } from 'react';
6
- import { M as MediaSeriesCard, D as DropdownButton, a as Dropdown } from './MediaSeriesCard-1a46f31b.js';
6
+ import { M as MediaSeriesCard, D as DropdownButton, a as Dropdown } from './MediaSeriesCard-9405860d.js';
7
7
  import './index-98ca9cec.js';
8
8
  import 'react-dom';
9
9
  import Link from 'next/link';
10
10
  import { B as BlockContent } from './BlockContent-1e73bd2c.js';
11
11
  import MasterDeck from './MasterDeckPaginated.js';
12
- import { g as getSerializers } from './index-fb83357d.js';
12
+ import { g as getSerializers } from './index-cf1bb508.js';
13
13
  import './_commonjsHelpers-0c4b6f40.js';
14
14
  import './core.get-iterator-method-ea258bb1.js';
15
15
  import './web.dom.iterable-ab4dea5c.js';
@@ -11,7 +11,7 @@ import QueueDeckExpanded from './QueueDeckExpanded.js';
11
11
  import Breadcrumbs from './Breadcrumbs.js';
12
12
  import Feature from './Feature.js';
13
13
  import urlFor from './urlFor.js';
14
- import { g as getSerializers } from './index-fb83357d.js';
14
+ import { g as getSerializers } from './index-cf1bb508.js';
15
15
  import { B as BlockContent } from './BlockContent-1e73bd2c.js';
16
16
  import './_commonjsHelpers-0c4b6f40.js';
17
17
  import './core.get-iterator-method-ea258bb1.js';
@@ -11,7 +11,7 @@ import QueueDeckExpanded from './QueueDeckExpandedPaginated.js';
11
11
  import Breadcrumbs from './Breadcrumbs.js';
12
12
  import Feature from './Feature.js';
13
13
  import urlFor from './urlFor.js';
14
- import { g as getSerializers } from './index-fb83357d.js';
14
+ import { g as getSerializers } from './index-cf1bb508.js';
15
15
  import { B as BlockContent } from './BlockContent-1e73bd2c.js';
16
16
  import './_commonjsHelpers-0c4b6f40.js';
17
17
  import './core.get-iterator-method-ea258bb1.js';
@@ -5,7 +5,7 @@ import React__default, { useState, useEffect } from 'react';
5
5
  import { useRouter } from 'next/router';
6
6
  import Head from 'next/head';
7
7
  import { B as BlockContent } from './BlockContent-1e73bd2c.js';
8
- import { g as getSerializers } from './index-fb83357d.js';
8
+ import { g as getSerializers } from './index-cf1bb508.js';
9
9
  import './_commonjsHelpers-0c4b6f40.js';
10
10
  import './core.get-iterator-method-ea258bb1.js';
11
11
  import './_object-pie-133f504a.js';
@@ -5,7 +5,7 @@ import { B as BlockContent } from './BlockContent-1e73bd2c.js';
5
5
  import Col from 'react-bootstrap/Col';
6
6
  import Form from 'react-bootstrap/Form';
7
7
  import Button from 'react-bootstrap/Button';
8
- import { g as getSerializers } from './index-fb83357d.js';
8
+ import { g as getSerializers } from './index-cf1bb508.js';
9
9
  import VideoSeriesListing from './VideoSeriesListing.js';
10
10
  import './_commonjsHelpers-0c4b6f40.js';
11
11
  import './core.get-iterator-method-ea258bb1.js';
package/dist/esm/View.js CHANGED
@@ -15,7 +15,7 @@ import FormControl from 'react-bootstrap/FormControl';
15
15
  import Button from 'react-bootstrap/Button';
16
16
  import { V as VisibilitySensor } from './visibility-sensor-72fd8f8b.js';
17
17
  import SocialShare from './SocialShare.js';
18
- import { r as renderAuthor, g as getSerializers } from './index-fb83357d.js';
18
+ import { r as renderAuthor, g as getSerializers } from './index-cf1bb508.js';
19
19
  import DFPAdSlot from './AdSlot.js';
20
20
  import { S as SeriesSlider } from './SeriesSlider-e495571f.js';
21
21
  import { a as getContentPlacementUrl, g as getTargeting } from './getTargeting-04d979c9.js';
@@ -956,7 +956,6 @@ var Article = React__default.memo(forwardRef(function (props, ref) {
956
956
  useSegmentRecommendedArticles = _props$useSegmentReco === undefined ? false : _props$useSegmentReco;
957
957
  var sliderData = props.sliderData;
958
958
 
959
-
960
959
  var disableEpisodeNumber = false;
961
960
  if (article && article.documentGroup && article.documentGroup.disableEpisodeNumber === true) {
962
961
  disableEpisodeNumber = true;
@@ -1,13 +1,11 @@
1
- import './extends-6d8e3924.js';
2
- import './slicedToArray-6ebcbfea.js';
3
1
  import 'react';
4
- export { g as default } from './index-fb83357d.js';
2
+ export { g as default } from './index-cf1bb508.js';
5
3
  import './BlockContent-1e73bd2c.js';
6
4
  import './entities-6d9154b4.js';
5
+ import './slicedToArray-6ebcbfea.js';
7
6
  import './_commonjsHelpers-0c4b6f40.js';
8
- import './core.get-iterator-method-ea258bb1.js';
9
- import './_object-pie-133f504a.js';
10
7
  import './web.dom.iterable-ab4dea5c.js';
8
+ import './core.get-iterator-method-ea258bb1.js';
11
9
  import 'react-bootstrap';
12
10
  import './urlFor.js';
13
11
  import './index-3f5c03b2.js';
@@ -24,6 +22,8 @@ import './_library-528f1934.js';
24
22
  import './_iter-detect-98db3b07.js';
25
23
  import './Segment.js';
26
24
  import './main-1894c974.js';
25
+ import './extends-6d8e3924.js';
26
+ import './_object-pie-133f504a.js';
27
27
  import './urlForFile-b69adffc.js';
28
28
  import './index-755f2cc2.js';
29
29
  import 'react-dom';
@@ -1,6 +1,5 @@
1
- import { _ as _extends, b as _extends$1 } from './extends-6d8e3924.js';
2
- import { _ as _slicedToArray, a as _getIterator } from './slicedToArray-6ebcbfea.js';
3
1
  import React__default, { useState, useEffect, useRef, useLayoutEffect, useCallback } from 'react';
2
+ import { _ as _slicedToArray, a as _getIterator } from './slicedToArray-6ebcbfea.js';
4
3
  import { Carousel, Table, Figure as Figure$1, Card, Row, Col, Button as Button$1, ProgressBar } from 'react-bootstrap';
5
4
  import urlFor from './urlFor.js';
6
5
  import { l as lib_3 } from './index-f0fc23eb.js';
@@ -13,6 +12,7 @@ import './Beam.js';
13
12
  import Segment from './Segment.js';
14
13
  import { e as main_18, b as main_42, m as main_43 } from './main-1894c974.js';
15
14
  import { B as BlockContent } from './BlockContent-1e73bd2c.js';
15
+ import { _ as _extends, b as _extends$1 } from './extends-6d8e3924.js';
16
16
  import { u as urlForFile } from './urlForFile-b69adffc.js';
17
17
  import { L as LazyLoad } from './index-755f2cc2.js';
18
18
  import { _ as _asyncToGenerator, r as regenerator } from './asyncToGenerator-958ef5fc.js';
@@ -10371,7 +10371,14 @@ var DigiohSmartTag = function DigiohSmartTag(props) {
10371
10371
  return React__default.createElement('div', { id: FormID });
10372
10372
  };
10373
10373
 
10374
- var siteArray = ['www.aestheticsauthority.com', 'www.ajmc.com', 'www.appliedclinicaltrialsonline.com', 'www.biopharminternational.com', 'www.cancernetwork.com', 'www.cannabissciencetech.com', 'www.centerforbiosimilars.com', 'www.chromatographyonline.com', 'www.contagionlive.com', 'www.contemporaryclinic.com', 'www.contemporaryobgyn.net', 'www.contemporarypediatrics.com', 'www.curetoday.com', 'www.dentalproductsreport.com', 'www.dermatologytimes.com', 'www.diagnosticimaging.com', 'www.drugtopics.com', 'www.dvm360.com', 'www.endocrinologynetwork.com', 'europe.ophthalmologytimes.com', 'www.formularywatch.com', 'www.hcplive.com', 'www.infectioncontroltoday.com', 'www.managedhealthcareexecutive.com', 'www.medicaleconomics.com', 'www.modernretina.com', 'www.neurologylive.com', 'www.nutritionaloutlook.com', 'www.onclive.com', 'www.oncnursingnews.com', 'www.ophthalmologytimes.com', 'www.optometrytimes.com', 'www.patientcareonline.com', 'www.pharmaceuticalcommerce.com', 'www.pharmacytimes.com', 'www.pharmexec.com', 'www.pharmtech.com', 'www.physicianspractice.com', 'www.practicalcardiology.com', 'www.psychiatrictimes.com', 'www.rheumatologynetwork.com', 'www.spectroscopyonline.com', 'www.targetedonc.com', 'www.turbomachinerymag.com', 'www.urologytimes.com'];
10374
+ var siteArray = ['aestheticsauthority.com', 'ajmc.com', 'appliedclinicaltrialsonline.com', 'biopharminternational.com', 'cancernetwork.com', 'cannabissciencetech.com', 'centerforbiosimilars.com', 'chromatographyonline.com', 'contagionlive.com', 'contemporaryclinic.com', 'contemporaryobgyn.net', 'contemporarypediatrics.com', 'curetoday.com', 'dentalproductsreport.com', 'dermatologytimes.com', 'diagnosticimaging.com', 'drugtopics.com', 'dvm360.com', 'endocrinologynetwork.com', 'europe.ophthalmologytimes.com', 'formularywatch.com', 'hcplive.com', 'infectioncontroltoday.com', 'managedhealthcareexecutive.com', 'medicaleconomics.com', 'modernretina.com', 'neurologylive.com', 'nutritionaloutlook.com', 'onclive.com', 'oncnursingnews.com', 'ophthalmologytimes.com', 'optometrytimes.com', 'patientcareonline.com', 'pharmaceuticalcommerce.com', 'pharmacytimes.com', 'pharmexec.com', 'pharmtech.com', 'physicianspractice.com', 'practicalcardiology.com', 'psychiatrictimes.com', 'rheumatologynetwork.com', 'spectroscopyonline.com', 'targetedonc.com', 'turbomachinerymag.com', 'urologytimes.com'];
10375
+
10376
+ var checkUrlIsExternal = function checkUrlIsExternal(url) {
10377
+ if (/https?:\/\/((?:[\w\d-]+\.)+[\w\d]{2,})|http?:\/\/((?:[\w\d-]+\.)+[\w\d]{2,})|(^mailto)/i.test(url)) {
10378
+ return true;
10379
+ }
10380
+ return false;
10381
+ };
10375
10382
 
10376
10383
  var ScrollToElement = function ScrollToElement(elementId) {
10377
10384
  var element = document.getElementById(elementId);
@@ -10387,11 +10394,66 @@ var ScrollToElement = function ScrollToElement(elementId) {
10387
10394
  }
10388
10395
  };
10389
10396
 
10390
- var checkUrlIsExternal = function checkUrlIsExternal(url) {
10391
- if (/https?:\/\/((?:[\w\d-]+\.)+[\w\d]{2,})|http?:\/\/((?:[\w\d-]+\.)+[\w\d]{2,})|(^mailto)/i.test(url)) {
10392
- return true;
10397
+ var ExternalLink = function ExternalLink(props) {
10398
+ var children = props.children,
10399
+ _props$mark = props.mark,
10400
+ href = _props$mark.href,
10401
+ blank = _props$mark.blank,
10402
+ color = _props$mark.color,
10403
+ nofollow = _props$mark.nofollow;
10404
+
10405
+ var _useState = useState(null),
10406
+ _useState2 = _slicedToArray(_useState, 2),
10407
+ ogUrl = _useState2[0],
10408
+ setOgUrl = _useState2[1];
10409
+
10410
+ useEffect(function () {
10411
+ if (window.location.href) {
10412
+ !ogUrl && setOgUrl(String(window.location.host).replace('www.', ''));
10413
+ }
10414
+ }, []);
10415
+ var isExernalUrl = checkUrlIsExternal(href);
10416
+ var checkBaseUrl = function checkBaseUrl(url) {
10417
+ if (url.includes('http://') || url.includes('https://')) {
10418
+ //to remove http:// or https:// to check URLs
10419
+ url = url.replace('www.', '').split('/').slice(2, 3).join('/');
10420
+ }
10421
+ return ogUrl && ogUrl.includes(url.replace('www.', '').split('/').slice(0, 1).join('/')) || siteArray.includes(url.replace('www.', '').split('/').slice(0, 1).join('/')) ? true : false;
10422
+ };
10423
+ var checkNoFollow = function checkNoFollow(url, nofollow) {
10424
+ if (url && !isExernalUrl || url && checkBaseUrl(url)) {
10425
+ //if not external url, nofollow is disabled
10426
+ return '';
10427
+ } else if (url && nofollow) {
10428
+ //if not external url and nofollow is enabled, nofollow
10429
+ return 'nofollow';
10430
+ } else {
10431
+ //if not external url and nofollow is disabled, no nofollow
10432
+ return '';
10433
+ }
10434
+ };
10435
+
10436
+ if (href && href.charAt(0) === '#') {
10437
+ var elementId = href.slice(1);
10438
+ if (articleId) elementId = elementId + '-' + articleId;
10439
+ return React__default.createElement(
10440
+ 'a',
10441
+ { onClick: function onClick() {
10442
+ return ScrollToElement(elementId);
10443
+ } },
10444
+ children
10445
+ );
10393
10446
  }
10394
- return false;
10447
+
10448
+ return href ? React__default.createElement(
10449
+ 'a',
10450
+ _extends({
10451
+ rel: checkNoFollow(href, nofollow) + ' ' + (blank && !checkBaseUrl(href) ? 'noreferrer noopener' : ''),
10452
+ href: isExernalUrl ? href : '/' + href,
10453
+ target: blank ? '_blank' : '_self'
10454
+ }, color && color.hex && { style: { color: color.hex } }),
10455
+ children
10456
+ ) : children;
10395
10457
  };
10396
10458
 
10397
10459
  var convertEntities = function convertEntities(props) {
@@ -10436,15 +10498,6 @@ var getSerializers = function getSerializers() {
10436
10498
 
10437
10499
  var nextVideo = article && article.nextVideo ? article.nextVideo : null;
10438
10500
 
10439
- var _useState = useState(''),
10440
- _useState2 = _slicedToArray(_useState, 2),
10441
- ogUrl = _useState2[0],
10442
- setOgUrl = _useState2[1];
10443
-
10444
- useEffect(function () {
10445
- setOgUrl(window.location.host);
10446
- }, []);
10447
-
10448
10501
  return {
10449
10502
  types: {
10450
10503
  undefined: function undefined$1() {
@@ -10628,54 +10681,9 @@ var getSerializers = function getSerializers() {
10628
10681
  },
10629
10682
  link: function link(props) {
10630
10683
  var children = props.children,
10631
- _props$mark = props.mark,
10632
- href = _props$mark.href,
10633
- blank = _props$mark.blank,
10634
- color = _props$mark.color,
10635
- nofollow = _props$mark.nofollow;
10636
-
10637
- var isExernalUrl = checkUrlIsExternal(href);
10638
- var checkBaseUrl = function checkBaseUrl(url) {
10639
- if (url.includes('http://') || url.includes('https://')) {
10640
- //to remove http:// or https:// to check URLs
10641
- url = url.split('/').slice(2, 3).join('/');
10642
- }
10643
- return ogUrl && ogUrl.includes(url.split('/').slice(0, 1).join('/')) || siteArray.includes(url.split('/').slice(0, 1).join('/')) ? true : false;
10644
- };
10645
- var checkNoFollow = function checkNoFollow(url, nofollow) {
10646
- if (url && !isExernalUrl || url && checkBaseUrl(url)) {
10647
- //if not external url, nofollow is disabled
10648
- return '';
10649
- } else if (url && nofollow) {
10650
- //if not external url and nofollow is enabled, nofollow
10651
- return 'nofollow';
10652
- } else {
10653
- //if not external url and nofollow is disabled, no nofollow
10654
- return '';
10655
- }
10656
- };
10684
+ mark = props.mark;
10657
10685
 
10658
- if (href && href.charAt(0) === '#') {
10659
- var elementId = href.slice(1);
10660
- if (articleId) elementId = elementId + '-' + articleId;
10661
- return React__default.createElement(
10662
- 'a',
10663
- { onClick: function onClick() {
10664
- return ScrollToElement(elementId);
10665
- } },
10666
- children
10667
- );
10668
- }
10669
-
10670
- return href ? React__default.createElement(
10671
- 'a',
10672
- _extends({
10673
- rel: checkNoFollow(href, nofollow) + ' ' + (blank ? 'noreferrer noopener' : ''),
10674
- href: isExernalUrl ? href : '/' + href,
10675
- target: blank ? '_blank' : '_self'
10676
- }, color && color.hex && { style: { color: color.hex } }),
10677
- children
10678
- ) : children;
10686
+ return React__default.createElement(ExternalLink, { children: children, mark: mark });
10679
10687
  },
10680
10688
  alignleft: function alignleft(_ref23) {
10681
10689
  var children = _ref23.children;
package/dist/esm/index.js CHANGED
@@ -87,7 +87,7 @@ export { default as VerticalHero } from './VerticalHero.js';
87
87
  export { default as YahooHero } from './YahooHero.js';
88
88
  export { default as GridHero } from './GridHero.js';
89
89
  export { default as ConferenceArticleCard } from './ConferenceArticleCard.js';
90
- export { g as getSerializers } from './index-fb83357d.js';
90
+ export { g as getSerializers } from './index-cf1bb508.js';
91
91
  export { default as Beam } from './Beam.js';
92
92
  export { default as Segment } from './Segment.js';
93
93
  export { default as KMTracker } from './KMTracker.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mjhls/mjh-framework",
3
- "version": "1.0.971-nofollow-v2",
3
+ "version": "1.0.971-nofollow-v4",
4
4
  "description": "Foundation Framework",
5
5
  "author": "mjh-framework",
6
6
  "license": "MIT",