@mjhls/mjh-framework 1.0.1016 → 1.0.1017-blanktagremoval

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 (82) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/AlgoliaSearch.js +72 -108
  3. package/dist/cjs/ArticleProgramLandingPage.js +2 -2
  4. package/dist/cjs/Auth.js +1 -1
  5. package/dist/cjs/AuthWrapper.js +3 -65
  6. package/dist/cjs/Column2.js +5 -3
  7. package/dist/cjs/Column3.js +1 -1
  8. package/dist/cjs/ExternalResources.js +5 -5
  9. package/dist/cjs/HamMagazine.js +43 -41
  10. package/dist/cjs/HorizontalArticleListing.js +2 -2
  11. package/dist/cjs/{ImageSlider-1ec0408b.js → ImageSlider-50807a77.js} +114 -159
  12. package/dist/cjs/IssueLanding.js +2 -2
  13. package/dist/cjs/LeftNav.js +14 -15
  14. package/dist/cjs/{MediaSeriesCard-7f8ea2ea.js → MediaSeriesCard-02a04189.js} +1 -1
  15. package/dist/cjs/MediaSeriesLanding.js +5 -5
  16. package/dist/cjs/MediaSeriesLandingPaginated.js +5 -5
  17. package/dist/cjs/NavDvm.js +31 -29
  18. package/dist/cjs/{NavFooter-880e9d87.js → NavFooter-6df4a327.js} +5 -4
  19. package/dist/cjs/NavMagazine.js +41 -39
  20. package/dist/cjs/NavNative.js +46 -46
  21. package/dist/cjs/PartnerDetailListing.js +26 -25
  22. package/dist/cjs/PartnerDetailListingPaginated.js +29 -28
  23. package/dist/cjs/PodcastsLanding.js +3 -3
  24. package/dist/cjs/SideFooter.js +10 -8
  25. package/dist/cjs/{SocialSearchComponent-ca9c0c45.js → SocialSearchComponent-3cdae210.js} +1 -1
  26. package/dist/cjs/TaxonomyCard.js +9 -9
  27. package/dist/cjs/TaxonomyDescription.js +2 -2
  28. package/dist/cjs/TemplateNormal.js +4 -4
  29. package/dist/cjs/{Tooltip-71754b2a.js → Tooltip-8011d690.js} +234 -257
  30. package/dist/cjs/VideoProgramLandingPage.js +2 -2
  31. package/dist/cjs/View.js +3 -3
  32. package/dist/cjs/{checkSisterSite-b29833b2.js → checkSisterSite-c3a4ac98.js} +1 -1
  33. package/dist/cjs/defineProperty-19580e93.js +71 -0
  34. package/dist/cjs/getRelatedArticle.js +1 -1
  35. package/dist/cjs/getSerializers.js +2 -2
  36. package/dist/cjs/{index-bd6c9f56.js → index-3cd60d26.js} +11 -11
  37. package/dist/cjs/index-50be6759.js +105 -0
  38. package/dist/cjs/{index-b41ea6a0.js → index-88b1d875.js} +545 -42
  39. package/dist/cjs/{index.esm-f59ef5b4.js → index.esm-ab909ee1.js} +9 -8
  40. package/dist/cjs/index.js +9 -8
  41. package/dist/esm/AlgoliaSearch.js +59 -95
  42. package/dist/esm/ArticleProgramLandingPage.js +2 -2
  43. package/dist/esm/Auth.js +1 -1
  44. package/dist/esm/AuthWrapper.js +1 -63
  45. package/dist/esm/Column2.js +5 -3
  46. package/dist/esm/Column3.js +1 -1
  47. package/dist/esm/ExternalResources.js +5 -5
  48. package/dist/esm/HamMagazine.js +43 -41
  49. package/dist/esm/HorizontalArticleListing.js +2 -2
  50. package/dist/esm/{ImageSlider-83913c4c.js → ImageSlider-cdb57d30.js} +115 -160
  51. package/dist/esm/IssueLanding.js +2 -2
  52. package/dist/esm/LeftNav.js +14 -15
  53. package/dist/esm/{MediaSeriesCard-478f939a.js → MediaSeriesCard-5a7491a4.js} +1 -1
  54. package/dist/esm/MediaSeriesLanding.js +5 -5
  55. package/dist/esm/MediaSeriesLandingPaginated.js +5 -5
  56. package/dist/esm/NavDvm.js +31 -29
  57. package/dist/esm/{NavFooter-3272e9cd.js → NavFooter-3673bac5.js} +5 -4
  58. package/dist/esm/NavMagazine.js +41 -39
  59. package/dist/esm/NavNative.js +46 -46
  60. package/dist/esm/PartnerDetailListing.js +26 -25
  61. package/dist/esm/PartnerDetailListingPaginated.js +29 -28
  62. package/dist/esm/PodcastsLanding.js +3 -3
  63. package/dist/esm/SideFooter.js +10 -8
  64. package/dist/esm/{SocialSearchComponent-68d948b9.js → SocialSearchComponent-0e0af6e1.js} +1 -1
  65. package/dist/esm/TaxonomyCard.js +9 -9
  66. package/dist/esm/TaxonomyDescription.js +2 -2
  67. package/dist/esm/TemplateNormal.js +4 -4
  68. package/dist/esm/{Tooltip-8307d9d1.js → Tooltip-2cdd0895.js} +29 -52
  69. package/dist/esm/VideoProgramLandingPage.js +2 -2
  70. package/dist/esm/View.js +3 -3
  71. package/dist/esm/{checkSisterSite-baa4fb6b.js → checkSisterSite-a7218fda.js} +1 -1
  72. package/dist/esm/defineProperty-e8022d1e.js +66 -0
  73. package/dist/esm/getRelatedArticle.js +1 -1
  74. package/dist/esm/getSerializers.js +2 -2
  75. package/dist/esm/{index-dd204fd9.js → index-0110e48e.js} +545 -42
  76. package/dist/esm/{index-db3bb315.js → index-0a63f9a3.js} +11 -11
  77. package/dist/esm/index-98ca9cec.js +100 -0
  78. package/dist/esm/{index.esm-07c37a92.js → index.esm-f7316244.js} +9 -8
  79. package/dist/esm/index.js +9 -8
  80. package/package.json +2 -1
  81. package/dist/cjs/index-b95410f0.js +0 -54
  82. package/dist/esm/index-174b5baf.js +0 -52
@@ -44,7 +44,7 @@ var Figure$1 = require('react-bootstrap/Figure');
44
44
  var OverlayTrigger = require('react-bootstrap/OverlayTrigger');
45
45
  var Tooltip = require('react-bootstrap/Tooltip');
46
46
  var Popover = require('react-bootstrap/Popover');
47
- var checkSisterSite = require('./checkSisterSite-b29833b2.js');
47
+ var checkSisterSite = require('./checkSisterSite-c3a4ac98.js');
48
48
 
49
49
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
50
50
 
@@ -10442,6 +10442,504 @@ var BlockTable = function BlockTable(props) {
10442
10442
  );
10443
10443
  };
10444
10444
 
10445
+ var bibtexParse = _commonjsHelpers.createCommonjsModule(function (module, exports) {
10446
+ /* start bibtexParse 0.0.24 */
10447
+
10448
+ //Original work by Henrik Muehe (c) 2010
10449
+ //
10450
+ //CommonJS port by Mikola Lysenko 2013
10451
+ //
10452
+ //Port to Browser lib by ORCID / RCPETERS
10453
+ //
10454
+ //Issues:
10455
+ //no comment handling within strings
10456
+ //no string concatenation
10457
+ //no variable values yet
10458
+ //Grammar implemented here:
10459
+ //bibtex -> (string | preamble | comment | entry)*;
10460
+ //string -> '@STRING' '{' key_equals_value '}';
10461
+ //preamble -> '@PREAMBLE' '{' value '}';
10462
+ //comment -> '@COMMENT' '{' value '}';
10463
+ //entry -> '@' key '{' key ',' key_value_list '}';
10464
+ //key_value_list -> key_equals_value (',' key_equals_value)*;
10465
+ //key_equals_value -> key '=' value;
10466
+ //value -> value_quotes | value_braces | key;
10467
+ //value_quotes -> '"' .*? '"'; // not quite
10468
+ //value_braces -> '{' .*? '"'; // not quite
10469
+ (function(exports) {
10470
+
10471
+ function BibtexParser() {
10472
+
10473
+ this.months = ["jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sep", "oct", "nov", "dec"];
10474
+ this.notKey = [',','{','}',' ','='];
10475
+ this.pos = 0;
10476
+ this.input = "";
10477
+ this.entries = new Array();
10478
+
10479
+ this.currentEntry = "";
10480
+
10481
+ this.setInput = function(t) {
10482
+ this.input = t;
10483
+ };
10484
+
10485
+ this.getEntries = function() {
10486
+ return this.entries;
10487
+ };
10488
+
10489
+ this.isWhitespace = function(s) {
10490
+ return (s == ' ' || s == '\r' || s == '\t' || s == '\n');
10491
+ };
10492
+
10493
+ this.match = function(s, canCommentOut) {
10494
+ if (canCommentOut == undefined || canCommentOut == null)
10495
+ canCommentOut = true;
10496
+ this.skipWhitespace(canCommentOut);
10497
+ if (this.input.substring(this.pos, this.pos + s.length) == s) {
10498
+ this.pos += s.length;
10499
+ } else {
10500
+ throw "Token mismatch, expected " + s + ", found "
10501
+ + this.input.substring(this.pos);
10502
+ } this.skipWhitespace(canCommentOut);
10503
+ };
10504
+
10505
+ this.tryMatch = function(s, canCommentOut) {
10506
+ if (canCommentOut == undefined || canCommentOut == null)
10507
+ canCommentOut = true;
10508
+ this.skipWhitespace(canCommentOut);
10509
+ if (this.input.substring(this.pos, this.pos + s.length) == s) {
10510
+ return true;
10511
+ } else {
10512
+ return false;
10513
+ } };
10514
+
10515
+ /* when search for a match all text can be ignored, not just white space */
10516
+ this.matchAt = function() {
10517
+ while (this.input.length > this.pos && this.input[this.pos] != '@') {
10518
+ this.pos++;
10519
+ }
10520
+ if (this.input[this.pos] == '@') {
10521
+ return true;
10522
+ } return false;
10523
+ };
10524
+
10525
+ this.skipWhitespace = function(canCommentOut) {
10526
+ while (this.isWhitespace(this.input[this.pos])) {
10527
+ this.pos++;
10528
+ } if (this.input[this.pos] == "%" && canCommentOut == true) {
10529
+ while (this.input[this.pos] != "\n") {
10530
+ this.pos++;
10531
+ } this.skipWhitespace(canCommentOut);
10532
+ } };
10533
+
10534
+ this.value_braces = function() {
10535
+ var bracecount = 0;
10536
+ this.match("{", false);
10537
+ var start = this.pos;
10538
+ var escaped = false;
10539
+ while (true) {
10540
+ if (!escaped) {
10541
+ if (this.input[this.pos] == '}') {
10542
+ if (bracecount > 0) {
10543
+ bracecount--;
10544
+ } else {
10545
+ var end = this.pos;
10546
+ this.match("}", false);
10547
+ return this.input.substring(start, end);
10548
+ } } else if (this.input[this.pos] == '{') {
10549
+ bracecount++;
10550
+ } else if (this.pos >= this.input.length - 1) {
10551
+ throw "Unterminated value";
10552
+ } } if (this.input[this.pos] == '\\' && escaped == false)
10553
+ escaped = true;
10554
+ else
10555
+ escaped = false;
10556
+ this.pos++;
10557
+ } };
10558
+
10559
+ this.value_comment = function() {
10560
+ var str = '';
10561
+ var brcktCnt = 0;
10562
+ while (!(this.tryMatch("}", false) && brcktCnt == 0)) {
10563
+ str = str + this.input[this.pos];
10564
+ if (this.input[this.pos] == '{')
10565
+ brcktCnt++;
10566
+ if (this.input[this.pos] == '}')
10567
+ brcktCnt--;
10568
+ if (this.pos >= this.input.length - 1) {
10569
+ throw "Unterminated value:" + this.input.substring(start);
10570
+ } this.pos++;
10571
+ } return str;
10572
+ };
10573
+
10574
+ this.value_quotes = function() {
10575
+ this.match('"', false);
10576
+ var start = this.pos;
10577
+ var escaped = false;
10578
+ while (true) {
10579
+ if (!escaped) {
10580
+ if (this.input[this.pos] == '"') {
10581
+ var end = this.pos;
10582
+ this.match('"', false);
10583
+ return this.input.substring(start, end);
10584
+ } else if (this.pos >= this.input.length - 1) {
10585
+ throw "Unterminated value:" + this.input.substring(start);
10586
+ } }
10587
+ if (this.input[this.pos] == '\\' && escaped == false)
10588
+ escaped = true;
10589
+ else
10590
+ escaped = false;
10591
+ this.pos++;
10592
+ } };
10593
+
10594
+ this.single_value = function() {
10595
+ var start = this.pos;
10596
+ if (this.tryMatch("{")) {
10597
+ return this.value_braces();
10598
+ } else if (this.tryMatch('"')) {
10599
+ return this.value_quotes();
10600
+ } else {
10601
+ var k = this.key();
10602
+ if (k.match("^[0-9]+$"))
10603
+ return k;
10604
+ else if (this.months.indexOf(k.toLowerCase()) >= 0)
10605
+ return k.toLowerCase();
10606
+ else
10607
+ throw "Value expected:" + this.input.substring(start) + ' for key: ' + k;
10608
+
10609
+ } };
10610
+
10611
+ this.value = function() {
10612
+ var values = [];
10613
+ values.push(this.single_value());
10614
+ while (this.tryMatch("#")) {
10615
+ this.match("#");
10616
+ values.push(this.single_value());
10617
+ } return values.join("");
10618
+ };
10619
+
10620
+ this.key = function(optional) {
10621
+ var start = this.pos;
10622
+ while (true) {
10623
+ if (this.pos >= this.input.length) {
10624
+ throw "Runaway key";
10625
+ } // а-яА-Я is Cyrillic
10626
+ //console.log(this.input[this.pos]);
10627
+ if (this.notKey.indexOf(this.input[this.pos]) >= 0) {
10628
+ if (optional && this.input[this.pos] != ',') {
10629
+ this.pos = start;
10630
+ return null;
10631
+ } return this.input.substring(start, this.pos);
10632
+ } else {
10633
+ this.pos++;
10634
+
10635
+ } } };
10636
+
10637
+ this.key_equals_value = function() {
10638
+ var key = this.key();
10639
+ if (this.tryMatch("=")) {
10640
+ this.match("=");
10641
+ var val = this.value();
10642
+ key = key.trim();
10643
+ return [ key, val ];
10644
+ } else {
10645
+ throw "... = value expected, equals sign missing:"
10646
+ + this.input.substring(this.pos);
10647
+ } };
10648
+
10649
+ this.key_value_list = function() {
10650
+ var kv = this.key_equals_value();
10651
+ this.currentEntry['entryTags'] = {};
10652
+ this.currentEntry['entryTags'][kv[0]] = kv[1];
10653
+ while (this.tryMatch(",")) {
10654
+ this.match(",");
10655
+ // fixes problems with commas at the end of a list
10656
+ if (this.tryMatch("}")) {
10657
+ break;
10658
+ }
10659
+ kv = this.key_equals_value();
10660
+ this.currentEntry['entryTags'][kv[0]] = kv[1];
10661
+ } };
10662
+
10663
+ this.entry_body = function(d) {
10664
+ this.currentEntry = {};
10665
+ this.currentEntry['citationKey'] = this.key(true);
10666
+ this.currentEntry['entryType'] = d.substring(1);
10667
+ if (this.currentEntry['citationKey'] != null) {
10668
+ this.match(",");
10669
+ }
10670
+ this.key_value_list();
10671
+ this.entries.push(this.currentEntry);
10672
+ };
10673
+
10674
+ this.directive = function() {
10675
+ this.match("@");
10676
+ return "@" + this.key();
10677
+ };
10678
+
10679
+ this.preamble = function() {
10680
+ this.currentEntry = {};
10681
+ this.currentEntry['entryType'] = 'PREAMBLE';
10682
+ this.currentEntry['entry'] = this.value_comment();
10683
+ this.entries.push(this.currentEntry);
10684
+ };
10685
+
10686
+ this.comment = function() {
10687
+ this.currentEntry = {};
10688
+ this.currentEntry['entryType'] = 'COMMENT';
10689
+ this.currentEntry['entry'] = this.value_comment();
10690
+ this.entries.push(this.currentEntry);
10691
+ };
10692
+
10693
+ this.entry = function(d) {
10694
+ this.entry_body(d);
10695
+ };
10696
+
10697
+ this.alernativeCitationKey = function () {
10698
+ this.entries.forEach(function (entry) {
10699
+ if (!entry.citationKey && entry.entryTags) {
10700
+ entry.citationKey = '';
10701
+ if (entry.entryTags.author) {
10702
+ entry.citationKey += entry.entryTags.author.split(',')[0] += ', ';
10703
+ }
10704
+ entry.citationKey += entry.entryTags.year;
10705
+ }
10706
+ });
10707
+ };
10708
+
10709
+ this.bibtex = function() {
10710
+ while (this.matchAt()) {
10711
+ var d = this.directive();
10712
+ this.match("{");
10713
+ if (d.toUpperCase() == "@STRING") {
10714
+ this.string();
10715
+ } else if (d.toUpperCase() == "@PREAMBLE") {
10716
+ this.preamble();
10717
+ } else if (d.toUpperCase() == "@COMMENT") {
10718
+ this.comment();
10719
+ } else {
10720
+ this.entry(d);
10721
+ }
10722
+ this.match("}");
10723
+ }
10724
+ this.alernativeCitationKey();
10725
+ };
10726
+ }
10727
+ exports.toJSON = function(bibtex) {
10728
+ var b = new BibtexParser();
10729
+ b.setInput(bibtex);
10730
+ b.bibtex();
10731
+ return b.entries;
10732
+ };
10733
+
10734
+ /* added during hackathon don't hate on me */
10735
+ exports.toBibtex = function(json) {
10736
+ var out = '';
10737
+ for ( var i in json) {
10738
+ out += "@" + json[i].entryType;
10739
+ out += '{';
10740
+ if (json[i].citationKey)
10741
+ out += json[i].citationKey + ', ';
10742
+ if (json[i].entry)
10743
+ out += json[i].entry ;
10744
+ if (json[i].entryTags) {
10745
+ var tags = '';
10746
+ for (var jdx in json[i].entryTags) {
10747
+ if (tags.length != 0)
10748
+ tags += ', ';
10749
+ tags += jdx + '= {' + json[i].entryTags[jdx] + '}';
10750
+ }
10751
+ out += tags;
10752
+ }
10753
+ out += '}\n\n';
10754
+ }
10755
+ return out;
10756
+
10757
+ };
10758
+
10759
+ })(exports);
10760
+
10761
+ /* end bibtexParse */
10762
+ });
10763
+
10764
+ var References = function References(_ref) {
10765
+ var node = _ref.node,
10766
+ getSerializers = _ref.getSerializers;
10767
+ var referenceslist = node.referenceslist;
10768
+
10769
+ var getGoogleScholarUrl = function getGoogleScholarUrl(citationText, citationReferenceFormat) {
10770
+ if (citationReferenceFormat == 'Bibtex' && citationText.length > 0 && citationText[0].children && citationText[0].children.length > 0 && citationText[0].children[0].text) {
10771
+ var url = 'https://scholar.google.com/scholar_lookup?';
10772
+ var bibtexJson = bibtexParse.toJSON(citationText[0].children[0].text)[0];
10773
+ if (bibtexJson.entryTags) {
10774
+ if (bibtexJson.entryTags.title) url += 'title=' + bibtexJson.entryTags.title;
10775
+ if (bibtexJson.entryTags.author) {
10776
+ bibtexJson.entryTags.author.split(',').map(function (authorName) {
10777
+ return url += '&author=' + authorName;
10778
+ });
10779
+ }
10780
+ if (bibtexJson.entryTags.year) {
10781
+ url += '&publication_year=' + bibtexJson.entryTags.year;
10782
+ }
10783
+ if (bibtexJson.entryTags.journal) {
10784
+ url += '&journal=' + bibtexJson.entryTags.journal;
10785
+ }
10786
+ if (bibtexJson.entryTags.volume) {
10787
+ url += '&volume=' + bibtexJson.entryTags.volume;
10788
+ }
10789
+ if (bibtexJson.entryTags.pages) {
10790
+ url += '&pages=' + bibtexJson.entryTags.pages.replace('--', '-');
10791
+ }
10792
+ }
10793
+ return url;
10794
+ }
10795
+ };
10796
+ var getPubmedUrl = function getPubmedUrl(citationText, citationReferenceFormat) {
10797
+ if (citationReferenceFormat == 'URL' && citationText.length > 0 && citationText[0].children && citationText[0].children.length > 0 && citationText[0].children[0].text) {
10798
+ return citationText[0].children[0].text;
10799
+ }
10800
+ };
10801
+ var getCrossrefUrl = function getCrossrefUrl(citationText, citationReferenceFormat) {
10802
+ if (citationReferenceFormat == 'URL' && citationText.length > 0 && citationText[0].children && citationText[0].children.length > 0 && citationText[0].children[0].text) {
10803
+ if (citationText[0].children[0].text.includes('dx.doi.org')) {
10804
+ return citationText[0].children[0].text;
10805
+ } else {
10806
+ return 'http://dx.doi.org/' + citationText[0].children[0].text;
10807
+ }
10808
+ }
10809
+ };
10810
+ return React__default["default"].createElement(
10811
+ 'div',
10812
+ { className: 'references-list' },
10813
+ React__default["default"].createElement(
10814
+ Head__default["default"],
10815
+ null,
10816
+ React__default["default"].createElement('script', { src: 'https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js' }),
10817
+ React__default["default"].createElement('script', { src: 'https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js' })
10818
+ ),
10819
+ React__default["default"].createElement(
10820
+ 'p',
10821
+ { className: 'reference-title' },
10822
+ React__default["default"].createElement(
10823
+ 'strong',
10824
+ null,
10825
+ 'REFERENCES'
10826
+ )
10827
+ ),
10828
+ referenceslist && referenceslist.map(function (reference, ref_index) {
10829
+ return React__default["default"].createElement(
10830
+ 'div',
10831
+ { key: reference._key, id: reference.referenceID.replace('#', '') + '__container', className: 'reference-container' },
10832
+ React__default["default"].createElement(
10833
+ 'div',
10834
+ { className: 'reference-details', style: { display: 'flex', flexDirection: 'row' } },
10835
+ React__default["default"].createElement(
10836
+ 'span',
10837
+ null,
10838
+ ref_index + 1,
10839
+ '.\xA0'
10840
+ ),
10841
+ React__default["default"].createElement(BlockContent.BlockContent, { blocks: reference.referenceTitle, serializers: getSerializers })
10842
+ ),
10843
+ reference.citations && reference.citations.length > 0 && React__default["default"].createElement(
10844
+ 'div',
10845
+ { className: 'row citations-container ml-3 mr-3 mb-2' },
10846
+ reference.citations.map(function (citation, cit_index) {
10847
+ return React__default["default"].createElement(
10848
+ 'div',
10849
+ { key: 'citation_' + cit_index, className: 'mr-3 citation-link' },
10850
+ citation.citationName === 'googleScholar' ? React__default["default"].createElement(
10851
+ 'a',
10852
+ { target: '_blank', href: getGoogleScholarUrl(citation.citationText, citation.citationReferenceFormat) },
10853
+ 'Google Scholar'
10854
+ ) : citation.citationName === 'pubMed' ? React__default["default"].createElement(
10855
+ 'a',
10856
+ { target: '_blank', href: getPubmedUrl(citation.citationText, citation.citationReferenceFormat) },
10857
+ 'PubMed'
10858
+ ) : React__default["default"].createElement(
10859
+ 'a',
10860
+ { target: '_blank', href: getCrossrefUrl(citation.citationText, citation.citationReferenceFormat) },
10861
+ 'Crossref'
10862
+ )
10863
+ );
10864
+ })
10865
+ ),
10866
+ React__default["default"].createElement(
10867
+ 'div',
10868
+ {
10869
+ className: 'modal fade',
10870
+ id: '' + reference.referenceID.replace('#', ''),
10871
+ tabindex: '-1',
10872
+ role: 'dialog',
10873
+ 'aria-labelledby': 'reference-modal-' + reference.referenceID.replace('#', ''),
10874
+ 'aria-hidden': 'true' },
10875
+ React__default["default"].createElement(
10876
+ 'div',
10877
+ { className: 'modal-dialog modal-dialog-centered', role: 'document' },
10878
+ React__default["default"].createElement(
10879
+ 'div',
10880
+ { className: 'modal-content' },
10881
+ React__default["default"].createElement(
10882
+ 'div',
10883
+ { className: 'modal-body' },
10884
+ React__default["default"].createElement(
10885
+ 'button',
10886
+ { type: 'button', className: 'close', 'data-dismiss': 'modal', 'aria-label': 'Close' },
10887
+ React__default["default"].createElement(
10888
+ 'span',
10889
+ { 'aria-hidden': 'true' },
10890
+ '\xD7'
10891
+ )
10892
+ ),
10893
+ React__default["default"].createElement(
10894
+ 'div',
10895
+ { className: 'reference-details', style: { display: 'flex', flexDirection: 'row' } },
10896
+ React__default["default"].createElement(
10897
+ 'span',
10898
+ null,
10899
+ ref_index + 1,
10900
+ '.\xA0'
10901
+ ),
10902
+ React__default["default"].createElement(BlockContent.BlockContent, { blocks: reference.referenceTitle, serializers: getSerializers })
10903
+ ),
10904
+ reference.citations && reference.citations.length > 0 && React__default["default"].createElement(
10905
+ 'div',
10906
+ { className: 'row citations-container ml-3 mr-3 mb-2' },
10907
+ reference.citations.map(function (citation, cit_index) {
10908
+ return React__default["default"].createElement(
10909
+ 'div',
10910
+ { key: 'citation_' + cit_index, className: 'mr-3 citation-link' },
10911
+ citation.citationName === 'googleScholar' ? React__default["default"].createElement(
10912
+ 'a',
10913
+ { target: '_blank', href: getGoogleScholarUrl(citation.citationText, citation.citationReferenceFormat) },
10914
+ 'Google Scholar'
10915
+ ) : citation.citationName === 'pubMed' ? React__default["default"].createElement(
10916
+ 'a',
10917
+ { target: '_blank', href: getPubmedUrl(citation.citationText, citation.citationReferenceFormat) },
10918
+ 'PubMed'
10919
+ ) : React__default["default"].createElement(
10920
+ 'a',
10921
+ { target: '_blank', href: getCrossrefUrl(citation.citationText, citation.citationReferenceFormat) },
10922
+ 'Crossref'
10923
+ )
10924
+ );
10925
+ })
10926
+ )
10927
+ )
10928
+ )
10929
+ )
10930
+ )
10931
+ );
10932
+ }),
10933
+ React__default["default"].createElement(
10934
+ 'style',
10935
+ { jsx: 'true' },
10936
+ '\n .reference-details p {\n margin-bottom: 0.5rem;\n }\n .citation-link a {\n text-decoration: none;\n color: var(--primary);\n padding: 0.25rem 0.5rem;\n }\n .citation-link a:hover {\n color: #ffffff;\n background-color: var(--primary);\n border-radius: 15px;\n }\n '
10937
+ )
10938
+ );
10939
+ };
10940
+
10941
+ var References$1 = React__default["default"].memo(References);
10942
+
10445
10943
  var DigiohSmartTag = function DigiohSmartTag(props) {
10446
10944
  var _props$node = props.node,
10447
10945
  FormID = _props$node.FormID;
@@ -10626,52 +11124,57 @@ var getSerializers = function getSerializers() {
10626
11124
 
10627
11125
  return React__default["default"].createElement(MultiFigure, { node: node, client: client, getSerializers: getSerializers.apply(undefined, props) });
10628
11126
  },
10629
- slideshow: function slideshow(_ref6) {
11127
+ referencesList: function referencesList(_ref6) {
10630
11128
  var node = _ref6.node;
11129
+
11130
+ return React__default["default"].createElement(References$1, { node: node, client: client, getSerializers: getSerializers.apply(undefined, props) });
11131
+ },
11132
+ slideshow: function slideshow(_ref7) {
11133
+ var node = _ref7.node;
10631
11134
  var slides = node.slides;
10632
11135
 
10633
11136
  return React__default["default"].createElement(Slideshow$1, { slides: slides, client: client, pageview: pageview });
10634
11137
  },
10635
- sidebar: function sidebar(_ref7) {
10636
- var node = _ref7.node;
11138
+ sidebar: function sidebar(_ref8) {
11139
+ var node = _ref8.node;
10637
11140
  var caption = node.caption,
10638
11141
  content = node.content;
10639
11142
 
10640
11143
  return React__default["default"].createElement(Sidebar, { caption: caption, content: content, getSerializers: getSerializers.apply(undefined, props) });
10641
11144
  },
10642
- datatable: function datatable(_ref8) {
10643
- var node = _ref8.node;
11145
+ datatable: function datatable(_ref9) {
11146
+ var node = _ref9.node;
10644
11147
  var table = node.table;
10645
11148
 
10646
11149
  return React__default["default"].createElement(TableShow, { rows: table.rows });
10647
11150
  },
10648
- media: function media(_ref9) {
10649
- var node = _ref9.node;
11151
+ media: function media(_ref10) {
11152
+ var node = _ref10.node;
10650
11153
 
10651
11154
  return React__default["default"].createElement(Media, { node: node, client: client });
10652
11155
  },
10653
- iframe: function iframe(_ref10) {
10654
- var node = _ref10.node;
11156
+ iframe: function iframe(_ref11) {
11157
+ var node = _ref11.node;
10655
11158
 
10656
11159
  return React__default["default"].createElement(IFrame, { url: node.url, needSegmentSupport: node.needSegmentSupport });
10657
11160
  },
10658
- video: function video(_ref11) {
10659
- var node = _ref11.node;
11161
+ video: function video(_ref12) {
11162
+ var node = _ref12.node;
10660
11163
 
10661
11164
  return React__default["default"].createElement(Video, { node: node, autoplay: autoplay, accountIDs: videoAccountIDs || {}, targeting: targeting, nextVideo: nextVideo });
10662
11165
  },
10663
- audio: function audio(_ref12) {
10664
- var node = _ref12.node;
11166
+ audio: function audio(_ref13) {
11167
+ var node = _ref13.node;
10665
11168
 
10666
11169
  return React__default["default"].createElement(Audio, { node: node, audioAutoplay: audioAutoplay });
10667
11170
  },
10668
- poll: function poll(_ref13) {
10669
- var node = _ref13.node;
11171
+ poll: function poll(_ref14) {
11172
+ var node = _ref14.node;
10670
11173
 
10671
11174
  return React__default["default"].createElement(Poll$1, { node: node, client: client, pageview: pageview, videoAccountIDs: videoAccountIDs, showVotes: showVotes, onVote: onVote, getSerializers: getSerializers.apply(undefined, props) });
10672
11175
  },
10673
- pollMultiChoice: function pollMultiChoice(_ref14) {
10674
- var node = _ref14.node;
11176
+ pollMultiChoice: function pollMultiChoice(_ref15) {
11177
+ var node = _ref15.node;
10675
11178
 
10676
11179
  return React__default["default"].createElement(Poll, {
10677
11180
  node: node,
@@ -10683,31 +11186,31 @@ var getSerializers = function getSerializers() {
10683
11186
  getSerializers: getSerializers.apply(undefined, props)
10684
11187
  });
10685
11188
  },
10686
- quiz: function quiz(_ref15) {
10687
- var node = _ref15.node;
11189
+ quiz: function quiz(_ref16) {
11190
+ var node = _ref16.node;
10688
11191
  var quizzes = node.quizzes;
10689
11192
 
10690
11193
  return React__default["default"].createElement(Quiz, { quizzes: quizzes, getSerializers: getSerializers.apply(undefined, props), pageview: pageview, currentPage: currentPage });
10691
11194
  },
10692
- leads: function leads(_ref16) {
10693
- var node = _ref16.node;
11195
+ leads: function leads(_ref17) {
11196
+ var node = _ref17.node;
10694
11197
  var leadID = node.leadID;
10695
11198
 
10696
11199
  var url = '' + drupalLeadSettings.baseUrl + leadID;
10697
11200
  return React__default["default"].createElement(Leads, { url: url });
10698
11201
  },
10699
- slideshows: function slideshows(_ref17) {
10700
- var node = _ref17.node;
11202
+ slideshows: function slideshows(_ref18) {
11203
+ var node = _ref18.node;
10701
11204
 
10702
11205
  return React__default["default"].createElement(Slideshow, { node: node, client: client, pageview: pageview, getSerializers: getSerializers.apply(undefined, props) });
10703
11206
  },
10704
- nativeAd: function nativeAd(_ref18) {
10705
- var node = _ref18.node;
11207
+ nativeAd: function nativeAd(_ref19) {
11208
+ var node = _ref19.node;
10706
11209
 
10707
11210
  return React__default["default"].createElement(NativeAd, { node: node });
10708
11211
  },
10709
- html_anchor_links: function html_anchor_links(_ref19) {
10710
- var node = _ref19.node;
11212
+ html_anchor_links: function html_anchor_links(_ref20) {
11213
+ var node = _ref20.node;
10711
11214
 
10712
11215
  return React__default["default"].createElement(AnchorLinkElement, { node: node, getSerializers: getSerializers.apply(undefined, props), articleId: articleId });
10713
11216
  },
@@ -10717,8 +11220,8 @@ var getSerializers = function getSerializers() {
10717
11220
  brtag: function brtag() {
10718
11221
  return React__default["default"].createElement('br', { className: 'line-break' });
10719
11222
  },
10720
- formstack: function formstack(_ref20) {
10721
- var node = _ref20.node;
11223
+ formstack: function formstack(_ref21) {
11224
+ var node = _ref21.node;
10722
11225
  var FormID = node.FormID,
10723
11226
  Caption = node.Caption,
10724
11227
  needSegmentSupport = node.needSegmentSupport;
@@ -10727,13 +11230,13 @@ var getSerializers = function getSerializers() {
10727
11230
  },
10728
11231
  formassembly: FormAssembly,
10729
11232
  digiohSmartTag: DigiohSmartTag,
10730
- multimedia: function multimedia(_ref21) {
10731
- var node = _ref21.node;
11233
+ multimedia: function multimedia(_ref22) {
11234
+ var node = _ref22.node;
10732
11235
 
10733
11236
  return React__default["default"].createElement(MultiMedia, { node: node, client: client });
10734
11237
  },
10735
- blockTable: function blockTable(_ref22) {
10736
- var node = _ref22.node;
11238
+ blockTable: function blockTable(_ref23) {
11239
+ var node = _ref23.node;
10737
11240
  return React__default["default"].createElement(BlockTable, { node: node, client: client, getSerializers: getSerializers.apply(undefined, props) });
10738
11241
  }
10739
11242
  },
@@ -10758,32 +11261,32 @@ var getSerializers = function getSerializers() {
10758
11261
 
10759
11262
  return React__default["default"].createElement(ExternalLink, { children: children, mark: mark, articleId: articleId });
10760
11263
  },
10761
- alignleft: function alignleft(_ref23) {
10762
- var children = _ref23.children;
11264
+ alignleft: function alignleft(_ref24) {
11265
+ var children = _ref24.children;
10763
11266
  return React__default["default"].createElement(
10764
11267
  'div',
10765
11268
  { style: { textAlign: 'left' } },
10766
11269
  children
10767
11270
  );
10768
11271
  },
10769
- alignright: function alignright(_ref24) {
10770
- var children = _ref24.children;
11272
+ alignright: function alignright(_ref25) {
11273
+ var children = _ref25.children;
10771
11274
  return React__default["default"].createElement(
10772
11275
  'div',
10773
11276
  { style: { textAlign: 'right' } },
10774
11277
  children
10775
11278
  );
10776
11279
  },
10777
- aligncenter: function aligncenter(_ref25) {
10778
- var children = _ref25.children;
11280
+ aligncenter: function aligncenter(_ref26) {
11281
+ var children = _ref26.children;
10779
11282
  return React__default["default"].createElement(
10780
11283
  'div',
10781
11284
  { style: { textAlign: 'center' } },
10782
11285
  children
10783
11286
  );
10784
11287
  },
10785
- alignjustify: function alignjustify(_ref26) {
10786
- var children = _ref26.children;
11288
+ alignjustify: function alignjustify(_ref27) {
11289
+ var children = _ref27.children;
10787
11290
  return React__default["default"].createElement(
10788
11291
  'div',
10789
11292
  { style: { textAlign: 'justify' } },