@mjhls/mjh-framework 1.0.119 → 1.0.121

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.
package/dist/index.js CHANGED
@@ -16,6 +16,8 @@ var Link = _interopDefault(require('next/link'));
16
16
  var router = require('next/router');
17
17
  var Media = _interopDefault(require('react-bootstrap/Media'));
18
18
  var reactBootstrap = require('react-bootstrap');
19
+ var Button = _interopDefault(require('react-bootstrap/Button'));
20
+ var Badge = _interopDefault(require('react-bootstrap/Badge'));
19
21
  var ListGroup = _interopDefault(require('react-bootstrap/ListGroup'));
20
22
  var Head = _interopDefault(require('next/head'));
21
23
  var Accordion = _interopDefault(require('react-bootstrap/Accordion'));
@@ -23,7 +25,6 @@ var AccordionToggle = require('react-bootstrap/AccordionToggle');
23
25
  var reactShare = require('react-share');
24
26
  var Form = _interopDefault(require('react-bootstrap/Form'));
25
27
  var FormControl = _interopDefault(require('react-bootstrap/FormControl'));
26
- var Button = _interopDefault(require('react-bootstrap/Button'));
27
28
  var Nav = _interopDefault(require('react-bootstrap/Nav'));
28
29
  var Navbar = _interopDefault(require('react-bootstrap/Navbar'));
29
30
  var NavDropdown = _interopDefault(require('react-bootstrap/NavDropdown'));
@@ -12648,6 +12649,221 @@ var VideoSeriesListing = function (_React$Component) {
12648
12649
  }(React__default.Component);
12649
12650
  var VideoSeriesListing$1 = router.withRouter(VideoSeriesListing);
12650
12651
 
12652
+ var PublicationDeck = function PublicationDeck(props) {
12653
+ var data = props.data,
12654
+ imageHeight = props.imageHeight,
12655
+ imageWidth = props.imageWidth,
12656
+ href = props.href,
12657
+ Website = props.Website,
12658
+ client = props.client;
12659
+
12660
+ var urlFor = function urlFor(source) {
12661
+ var builder = imageUrlBuilder(client);
12662
+ return builder.image(source);
12663
+ };
12664
+
12665
+ var renderCardImage = function renderCardImage(thumbnail) {
12666
+ if (thumbnail && thumbnail.asset) {
12667
+ var url = urlFor(thumbnail);
12668
+ if (imageHeight) url = url.height(imageHeight);
12669
+ if (imageWidth) url = url.width(imageWidth);
12670
+ return url.url();
12671
+ } else {
12672
+ return Website.logo;
12673
+ }
12674
+ };
12675
+
12676
+ return React__default.createElement(
12677
+ Row,
12678
+ null,
12679
+ data && data.map(function (row, index) {
12680
+ return row.identifier && row.identifier.current && React__default.createElement(
12681
+ Col,
12682
+ { md: 12, lg: '4', style: { display: 'flex', flex: '1 0 auto' }, key: index },
12683
+ React__default.createElement(
12684
+ Card,
12685
+ { className: 'block-card', style: { width: '200px' } },
12686
+ React__default.createElement(
12687
+ Link,
12688
+ { href: href + '/' + row.identifier.current },
12689
+ React__default.createElement(
12690
+ 'a',
12691
+ null,
12692
+ row.childIssue && row.childIssue.thumbnail && React__default.createElement(Card.Img, { variant: 'top', src: renderCardImage(row.childIssue.thumbnail), alt: row.name }),
12693
+ React__default.createElement(
12694
+ Card.Body,
12695
+ null,
12696
+ React__default.createElement(
12697
+ Card.Title,
12698
+ null,
12699
+ row.name
12700
+ ),
12701
+ React__default.createElement(
12702
+ Button,
12703
+ { variant: 'secondary' },
12704
+ 'Browse Issues'
12705
+ )
12706
+ )
12707
+ )
12708
+ )
12709
+ )
12710
+ );
12711
+ })
12712
+ );
12713
+ };
12714
+
12715
+ var IssueDeck = function IssueDeck(props) {
12716
+ var data = props.data,
12717
+ href = props.href,
12718
+ imageHeight = props.imageHeight,
12719
+ imageWidth = props.imageWidth,
12720
+ Website = props.Website,
12721
+ client = props.client,
12722
+ publication = props.publication;
12723
+
12724
+
12725
+ var urlFor = function urlFor(source) {
12726
+ var builder = imageUrlBuilder(client);
12727
+ return builder.image(source);
12728
+ };
12729
+
12730
+ var renderCardImage = function renderCardImage(thumbnail) {
12731
+ if (thumbnail && thumbnail.asset) {
12732
+ var url = urlFor(thumbnail);
12733
+ if (imageHeight) url = url.height(imageHeight);
12734
+ if (imageWidth) url = url.width(imageWidth);
12735
+ return url.url();
12736
+ } else {
12737
+ return Website.logo;
12738
+ }
12739
+ };
12740
+
12741
+ return React__default.createElement(
12742
+ Row,
12743
+ null,
12744
+ data && data.map(function (row, index) {
12745
+ return publication && row.identifier && row.identifier.current && React__default.createElement(
12746
+ Col,
12747
+ { md: 12, lg: 12, key: index },
12748
+ React__default.createElement(
12749
+ Link,
12750
+ { href: href + '/' + publication + '/' + row.identifier.current },
12751
+ React__default.createElement(
12752
+ 'a',
12753
+ null,
12754
+ React__default.createElement(
12755
+ Card,
12756
+ { className: 'queue-card journal-queue', style: { borderTop: '1px solid #EEE' } },
12757
+ React__default.createElement(
12758
+ Row,
12759
+ { style: { flexDirection: 'left' } },
12760
+ React__default.createElement(
12761
+ Col,
12762
+ { md: 12, lg: 4 },
12763
+ row.thumbnail && React__default.createElement(Card.Img, { variant: 'top', src: renderCardImage(row.thumbnail), alt: row.name })
12764
+ ),
12765
+ React__default.createElement(
12766
+ Col,
12767
+ null,
12768
+ React__default.createElement(
12769
+ Card.Body,
12770
+ { style: { padding: '20px' } },
12771
+ React__default.createElement(
12772
+ Card.Title,
12773
+ null,
12774
+ row.name
12775
+ ),
12776
+ React__default.createElement(
12777
+ 'div',
12778
+ null,
12779
+ 'Volume: ',
12780
+ row.volume
12781
+ ),
12782
+ React__default.createElement(
12783
+ 'div',
12784
+ null,
12785
+ 'Number: ',
12786
+ row.number
12787
+ ),
12788
+ React__default.createElement(
12789
+ Button,
12790
+ { style: { marginTop: '20px' }, variant: 'secondary' },
12791
+ 'View Issue'
12792
+ )
12793
+ )
12794
+ )
12795
+ )
12796
+ )
12797
+ )
12798
+ )
12799
+ );
12800
+ })
12801
+ );
12802
+ };
12803
+
12804
+ var IssueContentDeck = function IssueContentDeck(props) {
12805
+ var data = props.data,
12806
+ imageHeight = props.imageHeight,
12807
+ imageWidth = props.imageWidth,
12808
+ Website = props.Website,
12809
+ client = props.client;
12810
+
12811
+
12812
+ var urlFor = function urlFor(source) {
12813
+ var builder = imageUrlBuilder(client);
12814
+ return builder.image(source);
12815
+ };
12816
+
12817
+ var renderCardImage = function renderCardImage(thumbnail) {
12818
+ if (thumbnail && thumbnail.asset) {
12819
+ var url = urlFor(thumbnail);
12820
+ if (imageHeight) url = url.height(imageHeight);
12821
+ if (imageWidth) url = url.width(imageWidth);
12822
+ return url.url();
12823
+ } else {
12824
+ return Website.logo;
12825
+ }
12826
+ };
12827
+
12828
+ return React__default.createElement(
12829
+ Row,
12830
+ null,
12831
+ data && data.map(function (row, index) {
12832
+ return row.url && row.url.current && React__default.createElement(
12833
+ Col,
12834
+ { md: 12, lg: 6, style: { display: 'flex', flex: '1 0 auto' }, key: index },
12835
+ React__default.createElement(
12836
+ Card,
12837
+ null,
12838
+ React__default.createElement(
12839
+ Link,
12840
+ { href: '/view/[url]', as: '/view/' + row.url.current },
12841
+ React__default.createElement(
12842
+ 'a',
12843
+ null,
12844
+ row.thumbnail && React__default.createElement(Card.Img, { variant: 'top', src: renderCardImage(row.thumbnail), alt: row.title }),
12845
+ React__default.createElement(
12846
+ Card.Body,
12847
+ null,
12848
+ row.issueSection && row.issueSection.name ? React__default.createElement(
12849
+ Badge,
12850
+ { variant: 'success' },
12851
+ row.issueSection && row.issueSection.name.name
12852
+ ) : '',
12853
+ React__default.createElement(
12854
+ Card.Title,
12855
+ null,
12856
+ row.title
12857
+ )
12858
+ )
12859
+ )
12860
+ )
12861
+ )
12862
+ );
12863
+ })
12864
+ );
12865
+ };
12866
+
12651
12867
  var Column1 = function Column1(props) {
12652
12868
  var title = props.title;
12653
12869
 
@@ -13244,7 +13460,6 @@ var NavMagazine = function NavMagazine(props) {
13244
13460
  Example Nav with acceptable props
13245
13461
  <MagazineNav
13246
13462
  showLogin
13247
- loginState={true}
13248
13463
  logo={props.settings.logo}
13249
13464
  dataObject={props.cache.mainNavCache}
13250
13465
  website={website}
@@ -13259,8 +13474,7 @@ var NavMagazine = function NavMagazine(props) {
13259
13474
  website = props.website,
13260
13475
  _props$showLogin = props.showLogin,
13261
13476
  showLogin = _props$showLogin === undefined ? false : _props$showLogin,
13262
- _props$initialLoginSt = props.initialLoginState,
13263
- initialLoginState = _props$initialLoginSt === undefined ? false : _props$initialLoginSt;
13477
+ _props$userData = props.userData;
13264
13478
 
13265
13479
  var navRef = React.useRef(null);
13266
13480
 
@@ -13274,11 +13488,6 @@ var NavMagazine = function NavMagazine(props) {
13274
13488
  screenWidth = _useState4[0],
13275
13489
  setScreenWidth = _useState4[1];
13276
13490
 
13277
- var _useState5 = React.useState(initialLoginState),
13278
- _useState6 = slicedToArray(_useState5, 2),
13279
- loginState = _useState6[0],
13280
- setLoginState = _useState6[1];
13281
-
13282
13491
  React.useEffect(function () {
13283
13492
  document.addEventListener('scroll', trackScrolling);
13284
13493
  return function () {
@@ -13289,11 +13498,6 @@ var NavMagazine = function NavMagazine(props) {
13289
13498
 
13290
13499
  React.useEffect(function () {
13291
13500
  setScreenWidth(parseInt(window.innerWidth));
13292
- if (typeof GCN !== 'undefined' && GCN && GCN.onecount) {
13293
- setLoginState(GCN.onecount.isLoggedIn());
13294
- } else {
13295
- console.error('GCN not defined');
13296
- }
13297
13501
  }, []);
13298
13502
 
13299
13503
  var trackScrolling = function trackScrolling() {
@@ -13309,7 +13513,6 @@ var NavMagazine = function NavMagazine(props) {
13309
13513
  var handleLogin = function handleLogin(e) {
13310
13514
  if (typeof GCN !== 'undefined' && GCN && GCN.onecount) {
13311
13515
  GCN.onecount.login();
13312
- setLoginState(GCN.onecount.isLoggedIn());
13313
13516
  } else {
13314
13517
  console.error('GCN not defined');
13315
13518
  }
@@ -13318,7 +13521,6 @@ var NavMagazine = function NavMagazine(props) {
13318
13521
  var handleLogout = function handleLogout(e) {
13319
13522
  if (typeof GCN !== 'undefined' && GCN && GCN.onecount) {
13320
13523
  GCN.onecount.logout();
13321
- setLoginState(GCN.onecount.isLoggedIn());
13322
13524
  } else {
13323
13525
  console.error('GCN not defined');
13324
13526
  }
@@ -13336,9 +13538,9 @@ var NavMagazine = function NavMagazine(props) {
13336
13538
  React__default.createElement(
13337
13539
  Nav,
13338
13540
  { id: 'navbar-top', className: 'justify-content-center navbar-top', style: { margin: '0 auto' } },
13339
- showLogin && !loginState && React__default.createElement(
13541
+ showLogin && React__default.createElement(
13340
13542
  Nav.Item,
13341
- { id: 'nav-mobile-register' },
13543
+ { id: 'nav-mobile-register', className: 'hide-on-login', style: { display: 'none' } },
13342
13544
  React__default.createElement(
13343
13545
  'div',
13344
13546
  { className: 'px-2 py-2', onClick: function onClick(e) {
@@ -13361,9 +13563,9 @@ var NavMagazine = function NavMagazine(props) {
13361
13563
  )
13362
13564
  )
13363
13565
  ),
13364
- showLogin && !loginState && React__default.createElement(
13566
+ showLogin && React__default.createElement(
13365
13567
  Nav.Item,
13366
- { id: 'nav-mobile-login' },
13568
+ { id: 'nav-mobile-login', className: 'hide-on-login', style: { display: 'none' } },
13367
13569
  React__default.createElement(
13368
13570
  'div',
13369
13571
  { className: 'px-2 py-2 ', onClick: function onClick(e) {
@@ -13373,12 +13575,12 @@ var NavMagazine = function NavMagazine(props) {
13373
13575
  ' Login'
13374
13576
  )
13375
13577
  ),
13376
- showLogin && loginState && React__default.createElement(
13578
+ showLogin && React__default.createElement(
13377
13579
  React__default.Fragment,
13378
13580
  null,
13379
13581
  React__default.createElement(
13380
13582
  Nav.Item,
13381
- { id: 'nav-mobile-logout' },
13583
+ { id: 'nav-mobile-logout', className: 'hide-on-logout', style: { display: 'none' } },
13382
13584
  React__default.createElement(
13383
13585
  'div',
13384
13586
  { className: 'pl-2 pr-3 py-2 text-right', onClick: function onClick(e) {
@@ -13393,12 +13595,12 @@ var NavMagazine = function NavMagazine(props) {
13393
13595
  React__default.createElement(
13394
13596
  Nav,
13395
13597
  { style: { position: 'absolute', right: '15px' }, className: 'justify-content-end rightHeader' },
13396
- showLogin && !loginState && React__default.createElement(
13598
+ showLogin && React__default.createElement(
13397
13599
  React__default.Fragment,
13398
13600
  null,
13399
13601
  React__default.createElement(
13400
13602
  Nav.Item,
13401
- null,
13603
+ { className: 'hide-on-login', style: { display: 'none' } },
13402
13604
  React__default.createElement(
13403
13605
  'div',
13404
13606
  { className: 'px-2 py-2 mr-2', id: 'nav-register', onClick: function onClick(e) {
@@ -13410,7 +13612,7 @@ var NavMagazine = function NavMagazine(props) {
13410
13612
  ),
13411
13613
  React__default.createElement(
13412
13614
  Nav.Item,
13413
- null,
13615
+ { className: 'hide-on-login', style: { display: 'none' } },
13414
13616
  React__default.createElement(
13415
13617
  'div',
13416
13618
  { className: 'px-2 py-2', id: 'nav-login', onClick: function onClick(e) {
@@ -13421,12 +13623,12 @@ var NavMagazine = function NavMagazine(props) {
13421
13623
  )
13422
13624
  )
13423
13625
  ),
13424
- showLogin && loginState && React__default.createElement(
13626
+ showLogin && React__default.createElement(
13425
13627
  React__default.Fragment,
13426
13628
  null,
13427
13629
  React__default.createElement(
13428
13630
  Nav.Item,
13429
- null,
13631
+ { className: 'hide-on-logout', style: { display: 'none' } },
13430
13632
  React__default.createElement(
13431
13633
  'div',
13432
13634
  { className: 'px-2 py-2', id: 'nav-logout', onClick: function onClick(e) {
@@ -14058,19 +14260,17 @@ var AD = function AD(_ref) {
14058
14260
  _ref$targeting = _ref.targeting,
14059
14261
  targeting = _ref$targeting === undefined ? {} : _ref$targeting;
14060
14262
 
14061
-
14062
14263
  return React__default.createElement(
14063
14264
  lib_1,
14064
- { dfpNetworkId: networkID, targetingArguments: targeting, sizeMapping: sizeMapping, lazyLoad: { fetchMarginPercent: 500, renderMarginPercent: 200, mobileScaling: 2.0 } },
14265
+ {
14266
+ dfpNetworkId: networkID,
14267
+ targetingArguments: targeting,
14268
+ sizeMapping: sizeMapping,
14269
+ lazyLoad: { fetchMarginPercent: 500, renderMarginPercent: 200, mobileScaling: 2.0 } },
14065
14270
  React__default.createElement(
14066
14271
  'div',
14067
14272
  { className: className },
14068
- React__default.createElement(lib_2, {
14069
- slotId: slotId,
14070
- sizes: sizes,
14071
- adUnit: adUnit,
14072
- sizeMapping: sizeMapping
14073
- })
14273
+ React__default.createElement(lib_2, { slotId: slotId, sizes: sizes, adUnit: adUnit, sizeMapping: sizeMapping })
14074
14274
  )
14075
14275
  );
14076
14276
  };
@@ -14107,6 +14307,37 @@ var AD300x250x600 = function AD300x250x600(_ref) {
14107
14307
  });
14108
14308
  };
14109
14309
 
14310
+ var ADFooter = function ADFooter(_ref) {
14311
+ var children = _ref.children;
14312
+
14313
+ var _useState = React.useState(true),
14314
+ _useState2 = slicedToArray(_useState, 2),
14315
+ showAd = _useState2[0],
14316
+ setShowAd = _useState2[1];
14317
+
14318
+ return React__default.createElement(
14319
+ React__default.Fragment,
14320
+ null,
14321
+ showAd && React__default.createElement(
14322
+ 'div',
14323
+ { className: 'ADFooter' },
14324
+ children,
14325
+ React__default.createElement(
14326
+ 'div',
14327
+ { className: 'closeButton', onClick: function onClick() {
14328
+ return setShowAd(false);
14329
+ } },
14330
+ 'x'
14331
+ )
14332
+ ),
14333
+ React__default.createElement(
14334
+ 'style',
14335
+ { jsx: true },
14336
+ '\n .ADFooter {\n width: auto;\n margin: 0;\n background-color: #f5f5f5;\n position: fixed;\n bottom: 0;\n left: 50%;\n transform: translateX(-50%);\n z-index: 9000;\n }\n .closeButton {\n position: absolute;\n top: -10px;\n right: -10px;\n background: grey;\n color: white;\n font-weight: 500;\n border: 2px solid white;\n border-radius: 50%;\n width: 30px;\n height: 30px;\n text-align: center;\n font-size: 17px;\n cursor: pointer;\n }\n '
14337
+ )
14338
+ );
14339
+ };
14340
+
14110
14341
  var urlFor$1 = function urlFor(source, client) {
14111
14342
  var builder = imageUrlBuilder(client);
14112
14343
  return builder.image(source);
@@ -17901,7 +18132,7 @@ var IFrame = function IFrame(_ref) {
17901
18132
  return React__default.createElement(
17902
18133
  'div',
17903
18134
  { className: 'd-block text-center mb-3' },
17904
- React__default.createElement('iframe', { className: 'w-100', src: url, frameBorder: '0' })
18135
+ React__default.createElement('iframe', { className: 'w-100 iFrame-block', src: url, frameBorder: '0' })
17905
18136
  );
17906
18137
  };
17907
18138
 
@@ -20526,7 +20757,17 @@ var Quiz = function Quiz(_ref) {
20526
20757
  );
20527
20758
  };
20528
20759
 
20529
- var getSerializers$1 = function getSerializers(client, pageview, videoAccountIDs, onVote, showVotes) {
20760
+ var Leads = function Leads(_ref) {
20761
+ var url = _ref.url;
20762
+
20763
+ return React__default.createElement(
20764
+ 'div',
20765
+ { className: 'd-block text-center mb-3' },
20766
+ url && React__default.createElement('iframe', { className: 'w-100 h-100 leads-block', src: url, frameBorder: '0', allow: 'fullscreen' })
20767
+ );
20768
+ };
20769
+
20770
+ var getSerializers$1 = function getSerializers(client, pageview, videoAccountIDs, onVote, showVotes, drupalLeadSettings) {
20530
20771
  return {
20531
20772
  types: {
20532
20773
  youtube: function youtube(_ref) {
@@ -20598,6 +20839,13 @@ var getSerializers$1 = function getSerializers(client, pageview, videoAccountIDs
20598
20839
  var quizzes = node.quizzes;
20599
20840
 
20600
20841
  return React__default.createElement(Quiz, { quizzes: quizzes });
20842
+ },
20843
+ leads: function leads(_ref13) {
20844
+ var node = _ref13.node;
20845
+ var leadID = node.leadID;
20846
+
20847
+ var url = '' + drupalLeadSettings.baseUrl + leadID;
20848
+ return React__default.createElement(Leads, { url: url });
20601
20849
  }
20602
20850
  },
20603
20851
  marks: {
@@ -20627,32 +20875,32 @@ var getSerializers$1 = function getSerializers(client, pageview, videoAccountIDs
20627
20875
  children
20628
20876
  );
20629
20877
  },
20630
- alignleft: function alignleft(_ref13) {
20631
- var children = _ref13.children;
20878
+ alignleft: function alignleft(_ref14) {
20879
+ var children = _ref14.children;
20632
20880
  return React__default.createElement(
20633
20881
  'div',
20634
20882
  { style: { textAlign: 'left' } },
20635
20883
  children
20636
20884
  );
20637
20885
  },
20638
- alignright: function alignright(_ref14) {
20639
- var children = _ref14.children;
20886
+ alignright: function alignright(_ref15) {
20887
+ var children = _ref15.children;
20640
20888
  return React__default.createElement(
20641
20889
  'div',
20642
20890
  { style: { textAlign: 'right' } },
20643
20891
  children
20644
20892
  );
20645
20893
  },
20646
- aligncenter: function aligncenter(_ref15) {
20647
- var children = _ref15.children;
20894
+ aligncenter: function aligncenter(_ref16) {
20895
+ var children = _ref16.children;
20648
20896
  return React__default.createElement(
20649
20897
  'div',
20650
20898
  { style: { textAlign: 'center' } },
20651
20899
  children
20652
20900
  );
20653
20901
  },
20654
- alignjustify: function alignjustify(_ref16) {
20655
- var children = _ref16.children;
20902
+ alignjustify: function alignjustify(_ref17) {
20903
+ var children = _ref17.children;
20656
20904
  return React__default.createElement(
20657
20905
  'div',
20658
20906
  { style: { textAlign: 'justify' } },
@@ -21181,6 +21429,9 @@ exports.GroupDeck = GroupDeck;
21181
21429
  exports.YoutubeGroup = YoutubeGroup;
21182
21430
  exports.QueueDeckExpanded = QueueDeckExpanded;
21183
21431
  exports.VideoSeriesListing = VideoSeriesListing$1;
21432
+ exports.PublicationDeck = PublicationDeck;
21433
+ exports.IssueDeck = IssueDeck;
21434
+ exports.IssueContentDeck = IssueContentDeck;
21184
21435
  exports.Column1 = Column1;
21185
21436
  exports.Column2 = Column2;
21186
21437
  exports.Column3 = Column3;
@@ -21194,9 +21445,11 @@ exports.NavNative = NavNative;
21194
21445
  exports.NavNormal = NavNormal;
21195
21446
  exports.NavDvm = NavDvm;
21196
21447
  exports.TemplateNormal = TemplateNormal;
21448
+ exports.AD = AD;
21197
21449
  exports.AD300x250 = AD300x250;
21198
21450
  exports.AD300x250x600 = AD300x250x600;
21199
21451
  exports.AD728x90 = AD728x90;
21452
+ exports.ADFooter = ADFooter;
21200
21453
  exports.getSerializers = getSerializers$1;
21201
21454
  exports.Search = Search;
21202
21455
  exports.Feature = Feature;