@mjhls/mjh-framework 1.0.910-formstack-published-v1 → 1.0.911

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 +168 -168
  2. package/dist/cjs/AlgoliaSearch.js +15 -131
  3. package/dist/cjs/AuthWrapper.js +1 -1
  4. package/dist/cjs/ConferenceArticleCard.js +15 -15
  5. package/dist/cjs/ContentCardPaginated.js +2 -1
  6. package/dist/cjs/DeckContent.js +8 -8
  7. package/dist/cjs/DeckQueuePaginated.js +2 -1
  8. package/dist/cjs/EventsDeck.js +17 -17
  9. package/dist/cjs/GridContentPaginated.js +2 -1
  10. package/dist/cjs/HamMagazine.js +9 -9
  11. package/dist/cjs/IssueLanding.js +29 -29
  12. package/dist/cjs/KMTracker.js +15 -15
  13. package/dist/cjs/MasterDeck.js +8 -8
  14. package/dist/cjs/MasterDeckPaginated.js +10 -9
  15. package/dist/cjs/{MediaSeriesCard-68ae756e.js → MediaSeriesCard-d46317f0.js} +1 -1
  16. package/dist/cjs/MediaSeriesLanding.js +6 -6
  17. package/dist/cjs/MediaSeriesLandingPaginated.js +8 -7
  18. package/dist/cjs/NavMagazine.js +10 -10
  19. package/dist/cjs/NavNative.js +9 -9
  20. package/dist/cjs/Pagination-885dcfbd.js +90 -0
  21. package/dist/cjs/PartnerDetailListingPaginated.js +2 -1
  22. package/dist/cjs/PublicationLanding.js +26 -26
  23. package/dist/cjs/QueueDeckExpandedPaginated.js +2 -1
  24. package/dist/cjs/RelatedContent.js +28 -28
  25. package/dist/cjs/RelatedTopicsDropdown.js +10 -10
  26. package/dist/cjs/SeriesListingDeck.js +1 -1
  27. package/dist/cjs/{SeriesSlider-de93a303.js → SeriesSlider-ba0c5d1a.js} +4 -4
  28. package/dist/cjs/SideFooter.js +2 -2
  29. package/dist/cjs/VideoSeriesCard.js +1 -1
  30. package/dist/cjs/View.js +75 -26
  31. package/dist/cjs/YoutubeGroup.js +4 -4
  32. package/dist/cjs/getQuery.js +2 -2
  33. package/dist/cjs/{getTargeting-6d59cc5b.js → getTargeting-9d509319.js} +9 -9
  34. package/dist/cjs/getTargeting.js +1 -1
  35. package/dist/cjs/index.js +3 -2
  36. package/dist/esm/AlgoliaSearch.js +16 -132
  37. package/dist/esm/AuthWrapper.js +1 -1
  38. package/dist/esm/ConferenceArticleCard.js +15 -15
  39. package/dist/esm/ContentCardPaginated.js +2 -1
  40. package/dist/esm/DeckContent.js +8 -8
  41. package/dist/esm/DeckQueuePaginated.js +2 -1
  42. package/dist/esm/EventsDeck.js +17 -17
  43. package/dist/esm/GridContentPaginated.js +2 -1
  44. package/dist/esm/HamMagazine.js +9 -9
  45. package/dist/esm/IssueLanding.js +29 -29
  46. package/dist/esm/KMTracker.js +15 -15
  47. package/dist/esm/MasterDeck.js +8 -8
  48. package/dist/esm/MasterDeckPaginated.js +10 -9
  49. package/dist/esm/{MediaSeriesCard-ec988ce9.js → MediaSeriesCard-b1845b19.js} +1 -1
  50. package/dist/esm/MediaSeriesLanding.js +6 -6
  51. package/dist/esm/MediaSeriesLandingPaginated.js +8 -7
  52. package/dist/esm/NavMagazine.js +10 -10
  53. package/dist/esm/NavNative.js +9 -9
  54. package/dist/esm/Pagination-59436882.js +82 -0
  55. package/dist/esm/PartnerDetailListingPaginated.js +2 -1
  56. package/dist/esm/PublicationLanding.js +26 -26
  57. package/dist/esm/QueueDeckExpandedPaginated.js +2 -1
  58. package/dist/esm/RelatedContent.js +28 -28
  59. package/dist/esm/RelatedTopicsDropdown.js +10 -10
  60. package/dist/esm/SeriesListingDeck.js +1 -1
  61. package/dist/esm/{SeriesSlider-98ad6d97.js → SeriesSlider-45adb8dc.js} +4 -4
  62. package/dist/esm/SideFooter.js +2 -2
  63. package/dist/esm/VideoSeriesCard.js +1 -1
  64. package/dist/esm/View.js +74 -26
  65. package/dist/esm/YoutubeGroup.js +4 -4
  66. package/dist/esm/getQuery.js +2 -2
  67. package/dist/esm/{getTargeting-36031a00.js → getTargeting-4061f839.js} +9 -9
  68. package/dist/esm/getTargeting.js +1 -1
  69. package/dist/esm/index.js +3 -2
  70. package/package.json +114 -113
  71. package/dist/cjs/Pagination-42f92f7c.js +0 -97
  72. package/dist/esm/Pagination-484b86c5.js +0 -90
@@ -385,32 +385,32 @@ module.exports = { "default": set$1, __esModule: true };
385
385
 
386
386
  var _Set = _commonjsHelpers.unwrapExports(set);
387
387
 
388
- /* usage & query
389
- const Publication = (props) => {
390
- const { cache, pub, year } = props
391
- const targeting = {
392
- content_placement: [`/journals/${pub.identifier.current}`],
393
- document_url: [`/journals/${pub.identifier.current}`],
394
- }
395
- return (
396
- <Shell title={pub.name} cache={cache} settings={Settings} targeting={targeting} ads={Ads} layout='3'>
397
- <PublicationLanding publication={pub} year={year} href={'journals'} />
398
- </Shell>
399
- )
400
- }
401
- Publication.getInitialProps = async (ctx) => {
402
- const { query } = ctx
403
- const {
404
- query: { year },
405
- } = ctx
406
- const pub = await client.fetch(getQuery('publication'), query)
407
- **import urlFor from framework**
408
- pub.issues.map((issue) => {
409
- issue.thumbnail = urlFor({client, source: issue.thumbnail})
410
- })
411
- return { pub, year }
412
- }
413
- export default Publication
388
+ /* usage & query
389
+ const Publication = (props) => {
390
+ const { cache, pub, year } = props
391
+ const targeting = {
392
+ content_placement: [`/journals/${pub.identifier.current}`],
393
+ document_url: [`/journals/${pub.identifier.current}`],
394
+ }
395
+ return (
396
+ <Shell title={pub.name} cache={cache} settings={Settings} targeting={targeting} ads={Ads} layout='3'>
397
+ <PublicationLanding publication={pub} year={year} href={'journals'} />
398
+ </Shell>
399
+ )
400
+ }
401
+ Publication.getInitialProps = async (ctx) => {
402
+ const { query } = ctx
403
+ const {
404
+ query: { year },
405
+ } = ctx
406
+ const pub = await client.fetch(getQuery('publication'), query)
407
+ **import urlFor from framework**
408
+ pub.issues.map((issue) => {
409
+ issue.thumbnail = urlFor({client, source: issue.thumbnail})
410
+ })
411
+ return { pub, year }
412
+ }
413
+ export default Publication
414
414
  */
415
415
 
416
416
  var generateContentPlacements = function generateContentPlacements(issues) {
@@ -19,7 +19,7 @@ var ADlgInfeed = require('./ADlgInfeed-950b414b.js');
19
19
  var getContentCategory = require('./getContentCategory-f38a4c00.js');
20
20
  var timeDifferenceCalc = require('./timeDifferenceCalc.js');
21
21
  var urlFor = require('./urlFor.js');
22
- var Pagination = require('./Pagination-42f92f7c.js');
22
+ var Pagination = require('./Pagination-885dcfbd.js');
23
23
  require('./_commonjsHelpers-06173234.js');
24
24
  require('./core.get-iterator-method-5643aa10.js');
25
25
  require('./web.dom.iterable-d98303e0.js');
@@ -38,6 +38,7 @@ require('./Beam.js');
38
38
  require('./stringify-f7a37a8d.js');
39
39
  require('./Segment.js');
40
40
  require('./index-d48b231c.js');
41
+ require('react-paginate');
41
42
  require('react-bootstrap/Button');
42
43
  require('./index.esm-d51c9ac6.js');
43
44
  require('./iconBase-be4097c0.js');
@@ -17,34 +17,34 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
17
17
 
18
18
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
19
19
 
20
- /*
21
- Sample query
22
- let references = ''
23
- if(article.taxonomyMapping.length > 0){
24
- article.taxonomyMapping.forEach((ref, index) => {
25
- references = references + `references('${ref._ref}') `
26
- if(index+1 !== article.taxonomyMapping.length){
27
- references = references + ` && `
28
- }
29
- })
30
- }
31
-
32
- const relatedArticlesQuery = `*[!(_id in path("drafts.**")) && _type == "article" && title !='${article.title}' && defined(title) && is_visible == true && ( references('article.documentGroup._id') || ${references} ) && published <= '${today}'] | order(published desc) [0...4] {
33
- ...,
34
- title,
35
- summary,
36
- thumbnail,
37
- url,
38
- published,
39
- authorMapping[]->,
40
- contentCategory->
41
- }`
42
- const relatedArticles = await client.fetch(relatedArticlesQuery)
43
-
44
- Sample usage
45
- <RelatedContent dataRecord={props.relatedArticles} client={client} showAuthor showPublished reverse/>
46
-
47
-
20
+ /*
21
+ Sample query
22
+ let references = ''
23
+ if(article.taxonomyMapping.length > 0){
24
+ article.taxonomyMapping.forEach((ref, index) => {
25
+ references = references + `references('${ref._ref}') `
26
+ if(index+1 !== article.taxonomyMapping.length){
27
+ references = references + ` && `
28
+ }
29
+ })
30
+ }
31
+
32
+ const relatedArticlesQuery = `*[!(_id in path("drafts.**")) && _type == "article" && title !='${article.title}' && defined(title) && is_visible == true && ( references('article.documentGroup._id') || ${references} ) && published <= '${today}'] | order(published desc) [0...4] {
33
+ ...,
34
+ title,
35
+ summary,
36
+ thumbnail,
37
+ url,
38
+ published,
39
+ authorMapping[]->,
40
+ contentCategory->
41
+ }`
42
+ const relatedArticles = await client.fetch(relatedArticlesQuery)
43
+
44
+ Sample usage
45
+ <RelatedContent dataRecord={props.relatedArticles} client={client} showAuthor showPublished reverse/>
46
+
47
+
48
48
  */
49
49
  var RelatedContent = function RelatedContent(props) {
50
50
  var client = props.client,
@@ -22,16 +22,16 @@ var RelatedTopicsDropdown = function RelatedTopicsDropdown(_ref) {
22
22
  _ref$className = _ref.className,
23
23
  className = _ref$className === undefined ? '' : _ref$className;
24
24
 
25
- /*
26
- Props accepted - parentTaxonomy(required, object), subTaxonomy(required, array), page(optional), exclude(optional), variant(optional), className(optional)
27
- example:
28
- <RelatedTopicDropdown
29
- page='/clinical'
30
- exclude="clinical"
31
- className='mb-3'
32
- parentTaxonomy={props.parentTaxonomy}
33
- subTaxonomies={props.subTaxonomies}
34
- />
25
+ /*
26
+ Props accepted - parentTaxonomy(required, object), subTaxonomy(required, array), page(optional), exclude(optional), variant(optional), className(optional)
27
+ example:
28
+ <RelatedTopicDropdown
29
+ page='/clinical'
30
+ exclude="clinical"
31
+ className='mb-3'
32
+ parentTaxonomy={props.parentTaxonomy}
33
+ subTaxonomies={props.subTaxonomies}
34
+ />
35
35
  */
36
36
  if (subTaxonomies.length === 0 && parentTaxonomy) {
37
37
  if (parentTaxonomy.identifier == exclude) {
@@ -7,7 +7,7 @@ var React = require('react');
7
7
  var Router = require('next/router');
8
8
  var index = require('./index-fc2f1ca2.js');
9
9
  var index_es = require('./index.es-f3e47207.js');
10
- var SeriesSlider = require('./SeriesSlider-de93a303.js');
10
+ var SeriesSlider = require('./SeriesSlider-ba0c5d1a.js');
11
11
  var visibilitySensor = require('./visibility-sensor-eb2c5b69.js');
12
12
  require('./_commonjsHelpers-06173234.js');
13
13
  require('./core.get-iterator-method-5643aa10.js');
@@ -12,10 +12,10 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
12
12
 
13
13
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
14
14
 
15
- /*
16
- GROQ query -
17
- accepts an array of title, URL
18
- `https://img.youtube.com/vi/${getYouTubeId(vid.url)}/hqdefault.jpg`
15
+ /*
16
+ GROQ query -
17
+ accepts an array of title, URL
18
+ `https://img.youtube.com/vi/${getYouTubeId(vid.url)}/hqdefault.jpg`
19
19
  */
20
20
 
21
21
  var SeriesSlider = function SeriesSlider(_ref) {
@@ -38,8 +38,8 @@ var renderLink = function renderLink(row) {
38
38
  };
39
39
 
40
40
  var SideFooter = function SideFooter(props) {
41
- /*
42
- useage example: <SideFooter cache={props.cache} logo='https://mjh-web.s3.amazonaws.com/_media/an_mjhls_brand_logo.png' />
41
+ /*
42
+ useage example: <SideFooter cache={props.cache} logo='https://mjh-web.s3.amazonaws.com/_media/an_mjhls_brand_logo.png' />
43
43
  */
44
44
  var _get = get.get_1(props, 'cache.siteSettingCache', {}),
45
45
  socialLinks = _get.socialLinks,
@@ -21,7 +21,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
21
21
 
22
22
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
23
23
 
24
- var css = ".VideoSeriesCard-module_article__Hlc3e {\r\n width: 100%;\r\n margin: 0 0 1rem 0;\r\n}\r\n.VideoSeriesCard-module_article__Hlc3e a {\r\n display: flex;\r\n width: 100%;\r\n color: #000000;\r\n}\r\n.VideoSeriesCard-module_thumb__3hGyJ {\r\n width: 25%;\r\n}\r\n.VideoSeriesCard-module_thumb__3hGyJ img {\r\n width: 100%;\r\n height: auto;\r\n}\r\n.VideoSeriesCard-module_info__2_i1N {\r\n width: 75%;\r\n font-size: 1rem;\r\n}\r\n.VideoSeriesCard-module_info__2_i1N h2 {\r\n font-weight: bold;\r\n font-size: 1.25rem;\r\n margin: 0;\r\n}\r\n.VideoSeriesCard-module_published__1fI0q {\r\n color: #6d6d6d;\r\n margin: 0;\r\n}\r\n.VideoSeriesCard-module_summary__3hWJT {\r\n margin: 0.5rem 0 0 0;\r\n}\r\n.VideoSeriesCard-module_author__aU35o {\r\n margin: 0;\r\n}\r\n.VideoSeriesCard-module_author__aU35o span {\r\n color: #6d6d6d;\r\n}\r\n@media only screen and (max-width: 568px) {\r\n .VideoSeriesCard-module_article__Hlc3e {\r\n margin: 1rem 0;\r\n box-shadow: 2px 4px 8px rgba(0,0,0,.2);\r\n }\r\n .VideoSeriesCard-module_article__Hlc3e a {\r\n flex-direction: column;\r\n align-items: center;\r\n }\r\n .VideoSeriesCard-module_thumb__3hGyJ {\r\n overflow: hidden;\r\n width: 100%;\r\n margin-bottom: 1rem;\r\n }\r\n .VideoSeriesCard-module_thumb__3hGyJ img{\r\n border-radius: 10px 10px 0 0; \r\n }\r\n .VideoSeriesCard-module_thumb__3hGyJ figure {\r\n margin: 0;\r\n }\r\n .VideoSeriesCard-module_info__2_i1N {\r\n width: 90%;\r\n padding: 1rem !important;\r\n }\r\n .VideoSeriesCard-module_info__2_i1N h2 {\r\n font-size: 1rem;\r\n }\r\n}\r\n";
24
+ var css = ".VideoSeriesCard-module_article__Hlc3e {\n width: 100%;\n margin: 0 0 1rem 0;\n}\n.VideoSeriesCard-module_article__Hlc3e a {\n display: flex;\n width: 100%;\n color: #000000;\n}\n.VideoSeriesCard-module_thumb__3hGyJ {\n width: 25%;\n}\n.VideoSeriesCard-module_thumb__3hGyJ img {\n width: 100%;\n height: auto;\n}\n.VideoSeriesCard-module_info__2_i1N {\n width: 75%;\n font-size: 1rem;\n}\n.VideoSeriesCard-module_info__2_i1N h2 {\n font-weight: bold;\n font-size: 1.25rem;\n margin: 0;\n}\n.VideoSeriesCard-module_published__1fI0q {\n color: #6d6d6d;\n margin: 0;\n}\n.VideoSeriesCard-module_summary__3hWJT {\n margin: 0.5rem 0 0 0;\n}\n.VideoSeriesCard-module_author__aU35o {\n margin: 0;\n}\n.VideoSeriesCard-module_author__aU35o span {\n color: #6d6d6d;\n}\n@media only screen and (max-width: 568px) {\n .VideoSeriesCard-module_article__Hlc3e {\n margin: 1rem 0;\n box-shadow: 2px 4px 8px rgba(0,0,0,.2);\n }\n .VideoSeriesCard-module_article__Hlc3e a {\n flex-direction: column;\n align-items: center;\n }\n .VideoSeriesCard-module_thumb__3hGyJ {\n overflow: hidden;\n width: 100%;\n margin-bottom: 1rem;\n }\n .VideoSeriesCard-module_thumb__3hGyJ img{\n border-radius: 10px 10px 0 0; \n }\n .VideoSeriesCard-module_thumb__3hGyJ figure {\n margin: 0;\n }\n .VideoSeriesCard-module_info__2_i1N {\n width: 90%;\n padding: 1rem !important;\n }\n .VideoSeriesCard-module_info__2_i1N h2 {\n font-size: 1rem;\n }\n}\n";
25
25
  var styles = { "article": "VideoSeriesCard-module_article__Hlc3e", "thumb": "VideoSeriesCard-module_thumb__3hGyJ", "info": "VideoSeriesCard-module_info__2_i1N", "published": "VideoSeriesCard-module_published__1fI0q", "summary": "VideoSeriesCard-module_summary__3hWJT", "author": "VideoSeriesCard-module_author__aU35o" };
26
26
  styleInject_es.styleInject(css);
27
27
 
package/dist/cjs/View.js CHANGED
@@ -19,8 +19,8 @@ var visibilitySensor = require('./visibility-sensor-eb2c5b69.js');
19
19
  var SocialShare = require('./SocialShare.js');
20
20
  var getSerializers = require('./index-5ce5e821.js');
21
21
  var AdSlot = require('./AdSlot.js');
22
- var SeriesSlider = require('./SeriesSlider-de93a303.js');
23
- var getTargeting = require('./getTargeting-6d59cc5b.js');
22
+ var SeriesSlider = require('./SeriesSlider-ba0c5d1a.js');
23
+ var getTargeting = require('./getTargeting-9d509319.js');
24
24
  var getKeywords = require('./getKeywords.js');
25
25
  var urlFor = require('./urlFor.js');
26
26
  var _typeof = require('./typeof-567e31ff.js');
@@ -29,6 +29,7 @@ var styleInject_es = require('./style-inject.es-dcee06b6.js');
29
29
  require('./index-eadd5035.js');
30
30
  var disqusReact = require('disqus-react');
31
31
  var Schema = require('./Schema.js');
32
+ var FileSaver = require('file-saver');
32
33
  var keys = require('./keys-e982b3fa.js');
33
34
  var index_es = require('./index.es-f3e47207.js');
34
35
  var index = require('./index-fc2f1ca2.js');
@@ -81,6 +82,7 @@ var Head__default = /*#__PURE__*/_interopDefaultLegacy(Head);
81
82
  var Form__default = /*#__PURE__*/_interopDefaultLegacy(Form);
82
83
  var FormControl__default = /*#__PURE__*/_interopDefaultLegacy(FormControl);
83
84
  var Button__default = /*#__PURE__*/_interopDefaultLegacy(Button);
85
+ var FileSaver__default = /*#__PURE__*/_interopDefaultLegacy(FileSaver);
84
86
 
85
87
  var getArticleSummary = function getArticleSummary(article) {
86
88
  if (article.summary && article.summary.length > 0) {
@@ -347,7 +349,7 @@ var ISI = function ISI(props) {
347
349
  );
348
350
  };
349
351
 
350
- var css = ".RelatedArticles-module_mediaContainer__10h9k {\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: nowrap;\r\n margin: 0 -1rem;\r\n}\r\n.RelatedArticles-module_mediaCard__3wQbn {\r\n margin: 0 1rem 1rem;\r\n width: calc(33% - 1rem);\r\n display: column;\r\n flex-direction: row;\r\n margin-bottom: 0.75rem;\r\n padding-bottom: 0.75rem;\r\n border-bottom: none;\r\n}\r\n.RelatedArticles-module_mediaCard__3wQbn:last-child {\r\n border-bottom: none;\r\n}\r\n.RelatedArticles-module_cardTitle__3P-Ib {\r\n font-weight: bold;\r\n color: #252525;\r\n margin-bottom: 0.25rem;\r\n font-size: 15px;\r\n}\r\n.RelatedArticles-module_authorListing__1EFg4 span.RelatedArticles-module_text-muted__3b0zX {\r\n color: #000;\r\n font-weight: bold;\r\n}\r\n.RelatedArticles-module_cardDate__1wOR5 {\r\n color: var(--dark);\r\n display: block;\r\n background: #fff !important;\r\n margin-bottom: 0;\r\n}\r\n.RelatedArticles-module_imgWrapper__5Jx_4 {\r\n display: block;\r\n text-align: center;\r\n margin-bottom: 0.5rem;\r\n}\r\n.RelatedArticles-module_imgWrapper__5Jx_4 img {\r\n height: 135px;\r\n width: 100%;\r\n object-fit: cover;\r\n object-position: center;\r\n}\r\n@media screen and (max-width: 1064px) {\r\n}\r\n@media screen and (max-width: 968px) {\r\n .RelatedArticles-module_mediaContainer__10h9k {\r\n flex-wrap: wrap;\r\n }\r\n .RelatedArticles-module_imgWrapper__5Jx_4 {\r\n display: none;\r\n }\r\n .RelatedArticles-module_mediaCard__3wQbn {\r\n width: 100%;\r\n margin-bottom: 0.5rem;\r\n padding: 0;\r\n }\r\n .RelatedArticles-module_cardTitle__3P-Ib {\r\n font-size: 0.75rem;\r\n margin-bottom: 0;\r\n }\r\n}\r\n";
352
+ var css = ".RelatedArticles-module_mediaContainer__10h9k {\n display: flex;\n flex-direction: row;\n flex-wrap: nowrap;\n margin: 0 -1rem;\n}\n.RelatedArticles-module_mediaCard__3wQbn {\n margin: 0 1rem 1rem;\n width: calc(33% - 1rem);\n display: column;\n flex-direction: row;\n margin-bottom: 0.75rem;\n padding-bottom: 0.75rem;\n border-bottom: none;\n}\n.RelatedArticles-module_mediaCard__3wQbn:last-child {\n border-bottom: none;\n}\n.RelatedArticles-module_cardTitle__3P-Ib {\n font-weight: bold;\n color: #252525;\n margin-bottom: 0.25rem;\n font-size: 15px;\n}\n.RelatedArticles-module_authorListing__1EFg4 span.RelatedArticles-module_text-muted__3b0zX {\n color: #000;\n font-weight: bold;\n}\n.RelatedArticles-module_cardDate__1wOR5 {\n color: var(--dark);\n display: block;\n background: #fff !important;\n margin-bottom: 0;\n}\n.RelatedArticles-module_imgWrapper__5Jx_4 {\n display: block;\n text-align: center;\n margin-bottom: 0.5rem;\n}\n.RelatedArticles-module_imgWrapper__5Jx_4 img {\n height: 135px;\n width: 100%;\n object-fit: cover;\n object-position: center;\n}\n@media screen and (max-width: 1064px) {\n}\n@media screen and (max-width: 968px) {\n .RelatedArticles-module_mediaContainer__10h9k {\n flex-wrap: wrap;\n }\n .RelatedArticles-module_imgWrapper__5Jx_4 {\n display: none;\n }\n .RelatedArticles-module_mediaCard__3wQbn {\n width: 100%;\n margin-bottom: 0.5rem;\n padding: 0;\n }\n .RelatedArticles-module_cardTitle__3P-Ib {\n font-size: 0.75rem;\n margin-bottom: 0;\n }\n}\n";
351
353
  var styles = { "mediaContainer": "RelatedArticles-module_mediaContainer__10h9k", "mediaCard": "RelatedArticles-module_mediaCard__3wQbn", "cardTitle": "RelatedArticles-module_cardTitle__3P-Ib", "authorListing": "RelatedArticles-module_authorListing__1EFg4", "text-muted": "RelatedArticles-module_text-muted__3b0zX", "cardDate": "RelatedArticles-module_cardDate__1wOR5", "imgWrapper": "RelatedArticles-module_imgWrapper__5Jx_4" };
352
354
  styleInject_es.styleInject(css);
353
355
 
@@ -557,7 +559,9 @@ var Article = React.forwardRef(function (props, ref) {
557
559
  _props$refreshFlag = props.refreshFlag,
558
560
  refreshFlag = _props$refreshFlag === undefined ? false : _props$refreshFlag,
559
561
  disqusConfig = props.disqusConfig,
560
- showDisqus = props.showDisqus;
562
+ showDisqus = props.showDisqus,
563
+ _props$downloadCitati = props.downloadCitation,
564
+ downloadCitation = _props$downloadCitati === undefined ? false : _props$downloadCitati;
561
565
 
562
566
 
563
567
  var targeting = getTargeting.getTargeting(props);
@@ -666,6 +670,53 @@ var Article = React.forwardRef(function (props, ref) {
666
670
  }
667
671
  return null;
668
672
  };
673
+ var generateRIS = function generateRIS() {
674
+ var fileContent = 'TY - JOUR\n';
675
+ if (issue) {
676
+ if (article.title) {
677
+ fileContent += 'TI - ' + article.title + '\n'; //Title - TI
678
+ fileContent += 'T1 - ' + article.title + '\n'; //Title - T1
679
+ }
680
+ if (issue.publication && issue.publication.name) {
681
+ fileContent += 'T2 - ' + issue.publication.name + '\n'; //Secondary Title - T2
682
+ fileContent += 'JF - ' + issue.publication.name + '\n'; //Journal Name - JF
683
+ }
684
+ if (issue.abbreviatedJournal) {
685
+ fileContent += 'JO - ' + issue.abbreviatedJournal + '\n'; //Journal Name - JO
686
+ }
687
+ if (article.fieldAbstract) fileContent += 'N2 - ' + article.fieldAbstract + '\n'; //Abstract - N2
688
+ if (issue.issueNumber) fileContent += 'IS - ' + issue.issueNumber + '\n'; //Issue Number - IS
689
+ fileContent += 'PB - MJH Life Sciences\n'; //Publisher - PB
690
+ if (issue.year) fileContent += 'PY - ' + issue.year + '\n'; //Published Year - PY
691
+ if (issue.volume) fileContent += 'VL - ' + issue.volume + '\n'; //Volume - VL
692
+ if (issue.url) fileContent += 'L1 - ' + issue.url + '\n'; //Link to PDF - L1
693
+ if (shareOptions && shareOptions.shareBaseUrl) {
694
+ fileContent += 'L2 - ' + (shareOptions.shareBaseUrl + url) + '\n'; //Link to Full-text - L2
695
+ fileContent += 'UR - ' + (shareOptions.shareBaseUrl + url) + '\n'; //Doc URL - UR
696
+ }
697
+ if (props.Website) fileContent += 'LK - https://' + props.Website.liveDomain + '\n'; //Website Link - LK
698
+ if (issue.isbn_issn) {
699
+ fileContent += 'SN - ' + issue.isbn_issn + '\n'; //ISSN/ISBN - TI
700
+ }
701
+ if (pageNumber) {
702
+ if (pageNumber.includes('-')) {
703
+ fileContent += 'SP - ' + pageNumber.split('-')[0] + '\n'; //Start Page - SP
704
+ fileContent += 'EP - ' + pageNumber.split('-')[1] + '\n'; //End Page - EP
705
+ } else {
706
+ fileContent += 'SP - ' + pageNumber + '\n';
707
+ }
708
+ }
709
+ if (article.published) fileContent += 'Y1 - ' + moment.moment(published).format('DD-MMMM-YYYY') + '\n'; //Primary Date - Y1
710
+ fileContent += 'Y2 - ' + moment.moment().format('DD-MMMM-YYYY') + '\n'; //Access Date - Y2
711
+ }
712
+ fileContent += 'ER -\n'; //End of Record
713
+ return fileContent;
714
+ };
715
+ var downloadRIS = function downloadRIS() {
716
+ var fileContent = generateRIS();
717
+ var file = new File([fileContent], 'citation-' + url + '.ris', { type: 'application/x-research-info-systems;charset=utf-8' });
718
+ FileSaver__default['default'].saveAs(file, 'citation-' + url + '.ris');
719
+ };
669
720
 
670
721
  var RelevantTopics = function RelevantTopics() {
671
722
  if (content_placement && content_placement.length > 0 || documentGroupMapping && documentGroupMapping.length > 0) {
@@ -980,19 +1031,6 @@ var Article = React.forwardRef(function (props, ref) {
980
1031
 
981
1032
  return false;
982
1033
  };
983
- var checkIfFormAssembly = function checkIfFormAssembly(article) {
984
- if (!article || !article.body) {
985
- return false;
986
- }
987
-
988
- for (var i = 0; i < article.body.length; i++) {
989
- var block = article.body[i];
990
- if (block._type === 'formassembly') {
991
- return true;
992
- }
993
- }
994
- return false;
995
- };
996
1034
  var checkIfMediaSeriesHasVideo = function checkIfMediaSeriesHasVideo(article) {
997
1035
  var seriesInfo = { hasVideo: false, videoIndex: 0 };
998
1036
  if (!article || !article.body) {
@@ -1022,7 +1060,7 @@ var Article = React.forwardRef(function (props, ref) {
1022
1060
  var shareTitle = article.title;
1023
1061
  var shareSummary = article.summary;
1024
1062
  var shareImage = thumbnail && thumbnail.asset ? urlFor({ client: props.client, source: thumbnail.asset }) : shareImageDefault;
1025
- var siteName = props.website && props.website.title ? props.website.title : '';
1063
+ var siteName = props.Website && props.Website.title ? props.Website.title : '';
1026
1064
  var shareKeywords = getKeywords(props.article).join(',');
1027
1065
 
1028
1066
  var meta = {
@@ -1055,7 +1093,7 @@ var Article = React.forwardRef(function (props, ref) {
1055
1093
  var episodeNumber = fetchCurrentEpisode(props.sliderData, props.article);
1056
1094
  var isMediaSeries = article.documentGroup && article.documentGroup.isSeries ? true : false;
1057
1095
  var seriesInfo = checkIfMediaSeriesHasVideo(article);
1058
- var isFormAssembly = checkIfFormAssembly(article);
1096
+
1059
1097
  return React__default['default'].createElement(
1060
1098
  React__default['default'].Fragment,
1061
1099
  null,
@@ -1109,7 +1147,7 @@ var Article = React.forwardRef(function (props, ref) {
1109
1147
  React__default['default'].createElement(
1110
1148
  'div',
1111
1149
  { className: 'left-wrap' },
1112
- !isVideoSeries && !isFormAssembly && showPublished && React__default['default'].createElement(
1150
+ !isVideoSeries && showPublished && React__default['default'].createElement(
1113
1151
  'div',
1114
1152
  null,
1115
1153
  React__default['default'].createElement(
@@ -1269,12 +1307,23 @@ var Article = React.forwardRef(function (props, ref) {
1269
1307
  )
1270
1308
  )
1271
1309
  ),
1272
- issue && issue.url && React__default['default'].createElement(
1273
- 'a',
1274
- { rel: 'noopener', href: issue.url, target: '_blank', title: 'Download issue' },
1275
- React__default['default'].createElement('img', { style: { margin: '1rem', maxHeight: '40px', maxWidth: '40px' }, src: '/download.png', alt: 'download issue' }),
1276
- 'Download Issue : ',
1277
- issue.name
1310
+ React__default['default'].createElement(
1311
+ 'div',
1312
+ { className: 'downloads-container' },
1313
+ issue && downloadCitation && React__default['default'].createElement(
1314
+ Button__default['default'],
1315
+ { className: 'ris-download-button', onClick: function onClick() {
1316
+ return downloadRIS();
1317
+ } },
1318
+ 'Download RIS'
1319
+ ),
1320
+ issue && issue.url && React__default['default'].createElement(
1321
+ 'a',
1322
+ { rel: 'noopener', href: issue.url, target: '_blank', title: 'Download issue' },
1323
+ React__default['default'].createElement('img', { style: { margin: '1rem', maxHeight: '40px', maxWidth: '40px' }, src: '/download.png', alt: 'download issue' }),
1324
+ 'Download Issue : ',
1325
+ issue.name
1326
+ )
1278
1327
  )
1279
1328
  ),
1280
1329
  React__default['default'].createElement('div', { className: 'clearfix', style: { minHeight: '1px' } }),
@@ -18,10 +18,10 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
18
18
 
19
19
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
20
20
 
21
- /*
22
- GROQ query -
23
- accepts an array of title, URL
24
- `https://img.youtube.com/vi/${getYouTubeId(vid.url)}/hqdefault.jpg`
21
+ /*
22
+ GROQ query -
23
+ accepts an array of title, URL
24
+ `https://img.youtube.com/vi/${getYouTubeId(vid.url)}/hqdefault.jpg`
25
25
  */
26
26
 
27
27
  var YoutubeGroup = function YoutubeGroup(props) {
@@ -10,9 +10,9 @@ var getQuery = function getQuery(type) {
10
10
 
11
11
  switch (type) {
12
12
  case 'related':
13
- return '*[\n _type == "article"\n && defined(title)\n && defined(url)\n && !(_id in path("drafts.**"))\n && is_visible == true\n && defined(published) \n && dateTime(published) <= dateTime(now())\n && passwordLock!=true\n && taxonomyMapping[]._ref in $taxonomy\n && taxonomyMapping[].disableAds != \'true\'\n && contentCategory->.name != \'Poll\'\n && contentCategory->.name != \'Slideshows\'\n && contentCategory->.disableAds != \'true\'\n && ExcludeFromInfiniteScroll !=true\n && url.current != $url\n && !defined(body[].videos)\n ' + conditions + '\n ]| order(published desc)[' + (articleCount ? articleCount : '$index') + ']{\n ' + params + '\n title,\n published,\n summary,\n thumbnail,\n ...,\n passwordLock,\n password,\n "authorDetails": authorMapping[]->{ displayName, url, profileImage, biography, showSocialShare },\n body[] {\n ...,\n asset->,\n images[]{\n ...,\n asset->\n },\n content[]{\n ...,\n asset->\n },\n videos[]{\n ...,\n thumbnail{\n _type,\n asset->\n }\n },\n response[]{\n ...,\n asset->\n },\n quizzes[]{\n ...,\n answer[]{\n ...,\n asset->\n },\n question[]{\n ...,\n asset->\n }\n },\n poster {\n _type,\n asset->\n },\n slides[]{\n ...,\n slideshowImage{\n ...,\n asset->\n }\n },\n upload_doc {\n _type,\n asset->\n },\n uploadAudio {\n _type,\n asset->\n }\n },\n \'category\':contentCategory->{\n name,\n disableAds\n },\n \'content_placement\': taxonomyMapping[]-> {\n _id,\n \'ancestor\': parent->parent->identifier,\n \'parent\': parent->identifier,\n \'name\': name,\n \'path\': identifier,\n disableAds,\n showSocialShare\n },\n documentGroup-> {\n name,\n thumbnail,\n parent->{...,parent->},\n isShow,\n showSocialShare,\n \'path\': identifier.current,\n adTargetingURL\n },\n documentGroupMapping[]-> {\n _id,\n name,\n thumbnail,\n parent->{...,parent->},\n isShow,\n showSocialShare,\n \'path\': identifier.current,\n adTargetingURL\n },\n \'issue\' : *[_type == \'publication\' && !(_id in path("drafts.**")) && is_visible == true && _id == ^.issueGroup._ref][0] {\n name,\n \'path\': identifier.current,\n \'publication\' : *[_type == \'publication\' && !(_id in path("drafts.**")) && is_visible == true && _id == ^.parent._ref][0] {\n name,\n \'path\': identifier.current\n },\n \'url\' : pdf.asset-> url\n }\n }';
13
+ return '*[\n _type == "article"\n && defined(title)\n && defined(url)\n && !(_id in path("drafts.**"))\n && is_visible == true\n && defined(published) \n && dateTime(published) <= dateTime(now())\n && passwordLock!=true\n && taxonomyMapping[]._ref in $taxonomy\n && taxonomyMapping[].disableAds != \'true\'\n && contentCategory->.name != \'Poll\'\n && contentCategory->.name != \'Slideshows\'\n && contentCategory->.disableAds != \'true\'\n && ExcludeFromInfiniteScroll !=true\n && url.current != $url\n && !defined(body[].videos)\n ' + conditions + '\n ]| order(published desc)[' + (articleCount ? articleCount : '$index') + ']{\n ' + params + '\n title,\n published,\n summary,\n thumbnail,\n fieldAbstract,\n ...,\n passwordLock,\n password,\n "authorDetails": authorMapping[]->{ displayName, url, profileImage, biography, showSocialShare },\n body[] {\n ...,\n asset->,\n images[]{\n ...,\n asset->\n },\n content[]{\n ...,\n asset->\n },\n videos[]{\n ...,\n thumbnail{\n _type,\n asset->\n }\n },\n response[]{\n ...,\n asset->\n },\n quizzes[]{\n ...,\n answer[]{\n ...,\n asset->\n },\n question[]{\n ...,\n asset->\n }\n },\n poster {\n _type,\n asset->\n },\n slides[]{\n ...,\n slideshowImage{\n ...,\n asset->\n }\n },\n upload_doc {\n _type,\n asset->\n },\n uploadAudio {\n _type,\n asset->\n }\n },\n \'category\':contentCategory->{\n name,\n disableAds\n },\n \'content_placement\': taxonomyMapping[]-> {\n _id,\n \'ancestor\': parent->parent->identifier,\n \'parent\': parent->identifier,\n \'name\': name,\n \'path\': identifier,\n disableAds,\n showSocialShare\n },\n documentGroup-> {\n name,\n thumbnail,\n parent->{...,parent->},\n isShow,\n showSocialShare,\n \'path\': identifier.current,\n adTargetingURL\n },\n documentGroupMapping[]-> {\n _id,\n name,\n thumbnail,\n parent->{...,parent->},\n isShow,\n showSocialShare,\n \'path\': identifier.current,\n adTargetingURL\n },\n \'issue\' : *[_type == \'publication\' && !(_id in path("drafts.**")) && is_visible == true && _id == ^.issueGroup._ref][0] {\n name,\n \'path\': identifier.current,\n \'publication\' : *[_type == \'publication\' && !(_id in path("drafts.**")) && is_visible == true && _id == ^.parent._ref][0] {\n name,\n \'path\': identifier.current\n },\n \'url\' : pdf.asset-> url,\n isbn_issn,\n abbreviatedJournal,\n }\n }';
14
14
  case 'article':
15
- return '*[\n _type == "article"\n && !(_id in path("drafts.**"))\n && defined(title)\n && defined(url)\n && is_visible != false\n && url.current == $url\n ' + conditions + '\n ][0]{\n ' + params + '\n title,\n published,\n summary,\n thumbnail,\n ...,\n passwordLock,\n password,\n issueGroup-> { _id, name, identifier, parent-> },\n "authorDetails": authorMapping[]->{ displayName, url, profileImage, biography, showSocialShare },\n body[] {\n ...,\n asset->,\n images[]{\n ...,\n asset->\n },\n content[]{\n ...,\n asset->\n },\n videos[]{\n ...,\n thumbnail{\n _type,\n asset->\n }\n },\n response[]{\n ...,\n asset->\n },\n quizzes[]{\n ...,\n answer[]{\n ...,\n asset->\n },\n question[]{\n ...,\n asset->\n }\n },\n poster {\n _type,\n asset->\n },\n slides[]{\n ...,\n slideshowImage{\n ...,\n asset->\n }\n },\n upload_doc {\n _type,\n asset->\n },\n uploadAudio {\n _type,\n asset->\n },\n medias[]{\n ...,\n upload_doc {\n _type,\n asset-> \n },\n poster {\n _type,\n asset-> \n }\n },\n articles[]{\n ...,\n thumbnail{\n ...,\n asset-> \n },\n "authorDetails": authorMapping[]->{ displayName, url, profileImage, biography, showSocialShare },\n text[]{\n ...,\n upload_doc {\n _type,\n asset->\n },\n uploadAudio {\n _type,\n asset->\n },\n }\n }\n },\n \'content_placement\': taxonomyMapping[]-> {\n ...,\n \'ancestor\': parent->parent->identifier,\n \'parent\': parent->identifier,\n \'name\': name,\n \'path\': identifier,\n showSocialShare\n },\n documentGroup-> {\n _id,\n name,\n thumbnail,\n parent->{...,parent->},\n isShow,\n isSeries,\n showSocialShare,\n \'path\': identifier.current,\n adTargetingURL\n },\n documentGroupMapping[]-> {\n _id,\n name,\n thumbnail,\n parent->{...,parent->},\n isShow,\n showSocialShare,\n \'path\': identifier.current\n },\n \'category\':contentCategory->{\n name,\n disableAds\n },\n \'issue\' : *[_type == \'publication\' && !(_id in path("drafts.**")) && is_visible == true && _id == ^.issueGroup._ref][0] {\n name,\n volume,\n \'issueNumber\': number,\n \'articleSource\': source,\n \'path\': identifier.current,\n \'publication\' : *[_type == \'publication\' && !(_id in path("drafts.**")) && is_visible == true && _id == ^.parent._ref][0] {\n name,\n \'path\': identifier.current\n },\n \'url\' : pdf.asset-> url\n }\n\n }';
15
+ return '*[\n _type == "article"\n && !(_id in path("drafts.**"))\n && defined(title)\n && defined(url)\n && is_visible != false\n && url.current == $url\n ' + conditions + '\n ][0]{\n ' + params + '\n title,\n published,\n summary,\n thumbnail,\n fieldAbstract,\n ...,\n passwordLock,\n password,\n issueGroup-> { _id, name, identifier, parent-> },\n "authorDetails": authorMapping[]->{ displayName, url, profileImage, biography, showSocialShare },\n body[] {\n ...,\n asset->,\n images[]{\n ...,\n asset->\n },\n content[]{\n ...,\n asset->\n },\n videos[]{\n ...,\n thumbnail{\n _type,\n asset->\n }\n },\n response[]{\n ...,\n asset->\n },\n quizzes[]{\n ...,\n answer[]{\n ...,\n asset->\n },\n question[]{\n ...,\n asset->\n }\n },\n poster {\n _type,\n asset->\n },\n slides[]{\n ...,\n slideshowImage{\n ...,\n asset->\n }\n },\n upload_doc {\n _type,\n asset->\n },\n uploadAudio {\n _type,\n asset->\n },\n medias[]{\n ...,\n upload_doc {\n _type,\n asset-> \n },\n poster {\n _type,\n asset-> \n }\n },\n articles[]{\n ...,\n thumbnail{\n ...,\n asset-> \n },\n "authorDetails": authorMapping[]->{ displayName, url, profileImage, biography, showSocialShare },\n text[]{\n ...,\n upload_doc {\n _type,\n asset->\n },\n uploadAudio {\n _type,\n asset->\n },\n }\n }\n },\n \'content_placement\': taxonomyMapping[]-> {\n ...,\n \'ancestor\': parent->parent->identifier,\n \'parent\': parent->identifier,\n \'name\': name,\n \'path\': identifier,\n showSocialShare\n },\n documentGroup-> {\n _id,\n name,\n thumbnail,\n parent->{...,parent->},\n isShow,\n isSeries,\n showSocialShare,\n \'path\': identifier.current,\n adTargetingURL\n },\n documentGroupMapping[]-> {\n _id,\n name,\n thumbnail,\n parent->{...,parent->},\n isShow,\n showSocialShare,\n \'path\': identifier.current\n },\n \'category\':contentCategory->{\n name,\n disableAds\n },\n \'issue\' : *[_type == \'publication\' && !(_id in path("drafts.**")) && is_visible == true && _id == ^.issueGroup._ref][0] {\n name,\n volume,\n year,\n \'issueNumber\': number,\n \'articleSource\': source,\n \'path\': identifier.current,\n \'publication\' : *[_type == \'publication\' && !(_id in path("drafts.**")) && is_visible == true && _id == ^.parent._ref][0] {\n name,\n \'path\': identifier.current\n },\n \'url\' : pdf.asset-> url,\n isbn_issn,\n abbreviatedJournal,\n }\n\n }';
16
16
  case 'publication':
17
17
  return '*[_type == \'publication\'\n && identifier.current == $publication\n ' + conditions + '][0] {\n ' + params + '\n ...,\n \'issues\': *[_type == \'publication\'\n && is_visible\n && references(^._id)\n && defined(identifier)] {\n ...,\n thumbnail{ ..., asset-> },\n taxonomyMapping[]->,\n pdf{asset->},\n } | order(year desc, month desc)\n }';
18
18
  case 'issue':
@@ -4,18 +4,18 @@ var _extends = require('./extends-7c86182f.js');
4
4
  var toConsumableArray = require('./toConsumableArray-d7797c2b.js');
5
5
 
6
6
  var getContentPlacementUrl = function getContentPlacementUrl(cp) {
7
- var cp_url = '';
8
- if (cp.ancestor && typeof cp.ancestor == 'string') {
9
- cp_url += (cp_url === '' ? '' : '/') + cp.ancestor;
10
- }
7
+ var cp_url = '';
8
+ if (cp.ancestor && typeof cp.ancestor == 'string') {
9
+ cp_url += (cp_url === '' ? '' : '/') + cp.ancestor;
10
+ }
11
11
 
12
- if (!cp.ancestor && cp.parent && typeof cp.parent == 'string') {
13
- cp_url += (cp_url === '' ? '' : '/') + cp.parent;
14
- }
12
+ if (!cp.ancestor && cp.parent && typeof cp.parent == 'string') {
13
+ cp_url += (cp_url === '' ? '' : '/') + cp.parent;
14
+ }
15
15
 
16
- cp_url += (cp_url === '' ? '' : '/') + (cp.adTargetingURL ? adTargetingURL : cp.path);
16
+ cp_url += (cp_url === '' ? '' : '/') + (cp.adTargetingURL ? adTargetingURL : cp.path);
17
17
 
18
- return cp_url;
18
+ return cp_url;
19
19
  };
20
20
 
21
21
  var getTargeting = function getTargeting(props) {
@@ -2,7 +2,7 @@
2
2
 
3
3
  require('./extends-7c86182f.js');
4
4
  require('./toConsumableArray-d7797c2b.js');
5
- var getTargeting = require('./getTargeting-6d59cc5b.js');
5
+ var getTargeting = require('./getTargeting-9d509319.js');
6
6
  require('./_commonjsHelpers-06173234.js');
7
7
  require('./core.get-iterator-method-5643aa10.js');
8
8
  require('./_object-pie-083f2dd6.js');
package/dist/cjs/index.js CHANGED
@@ -97,7 +97,7 @@ var VideoSeriesLandingPage = require('./VideoSeriesLandingPage.js');
97
97
  var ArticleProgramLandingPage = require('./ArticleProgramLandingPage.js');
98
98
  var ArticleSeriesLandingPage = require('./ArticleSeriesLandingPage.js');
99
99
  var Schema = require('./Schema.js');
100
- var getTargeting = require('./getTargeting-6d59cc5b.js');
100
+ var getTargeting = require('./getTargeting-9d509319.js');
101
101
  var getKeywords = require('./getKeywords.js');
102
102
  var getQuery = require('./getQuery.js');
103
103
  require('./toConsumableArray-d7797c2b.js');
@@ -192,9 +192,10 @@ require('swr');
192
192
  require('passport-local');
193
193
  require('mysql');
194
194
  require('./md5-e1ca5797.js');
195
- require('./SeriesSlider-de93a303.js');
195
+ require('./SeriesSlider-ba0c5d1a.js');
196
196
  require('./style-inject.es-dcee06b6.js');
197
197
  require('disqus-react');
198
+ require('file-saver');
198
199
  require('react-twitter-embed');
199
200
  require('./ImageSlider-6c00b878.js');
200
201
  require('./defineProperty-e0fb52c5.js');