@mjhls/mjh-framework 1.0.204 → 1.0.206

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 (74) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/AD-e2479b7c.js +31 -0
  3. package/dist/cjs/DeckContent.js +430 -0
  4. package/dist/cjs/DeckQueue.js +366 -0
  5. package/dist/cjs/Dfp-d94f7f73.js +97 -0
  6. package/dist/cjs/GridContent.js +613 -0
  7. package/dist/cjs/GroupDeck.js +156 -0
  8. package/dist/cjs/IssueContentDeck.js +81 -0
  9. package/dist/cjs/IssueDeck.js +144 -0
  10. package/dist/cjs/MasterDeck.js +340 -0
  11. package/dist/cjs/Normal-7dd8c339.js +2374 -0
  12. package/dist/cjs/PublicationDeck.js +81 -0
  13. package/dist/cjs/QueueDeckExpanded.js +559 -0
  14. package/dist/cjs/TaxonomyCard-7b5b4298.js +1045 -0
  15. package/dist/cjs/TaxonomyCard.js +18 -0
  16. package/dist/cjs/TemplateNormal.js +29 -0
  17. package/dist/cjs/ThumbnailCard.js +58 -0
  18. package/dist/cjs/Ustream-0d3dd953.js +122 -0
  19. package/dist/cjs/Ustream.js +10 -0
  20. package/dist/cjs/VideoSeriesListing.js +248 -0
  21. package/dist/cjs/YoutubeGroup-4cf7a4aa.js +228 -0
  22. package/dist/cjs/YoutubeGroup.js +13 -0
  23. package/dist/cjs/_babelHelpers-f321c258.js +119 -0
  24. package/dist/cjs/_commonjsHelpers-3fc1f64e.js +20 -0
  25. package/dist/cjs/debounce-286eb3fb.js +279 -0
  26. package/dist/cjs/entities-3e0b4a16.js +506 -0
  27. package/dist/cjs/get-06aac51b.js +992 -0
  28. package/dist/cjs/index-0d0efcfa.js +610 -0
  29. package/dist/cjs/index-a4c53ff4.js +551 -0
  30. package/dist/cjs/index.es-2289df51.js +5028 -0
  31. package/dist/cjs/index.esm-340d3792.js +113 -0
  32. package/dist/cjs/index.js +12044 -0
  33. package/dist/cjs/isSymbol-311eb805.js +209 -0
  34. package/dist/cjs/main-58839f4e.js +858 -0
  35. package/dist/cjs/visibility-sensor-5c5a7302.js +2251 -0
  36. package/dist/esm/AD-1b2a3dd3.js +26 -0
  37. package/dist/esm/DeckContent.js +424 -0
  38. package/dist/esm/DeckQueue.js +360 -0
  39. package/dist/esm/Dfp-ab7941d3.js +92 -0
  40. package/dist/esm/GridContent.js +607 -0
  41. package/dist/esm/GroupDeck.js +151 -0
  42. package/dist/esm/IssueContentDeck.js +76 -0
  43. package/dist/esm/IssueDeck.js +139 -0
  44. package/dist/esm/MasterDeck.js +334 -0
  45. package/dist/esm/Normal-403c5666.js +2354 -0
  46. package/dist/esm/PublicationDeck.js +76 -0
  47. package/dist/esm/QueueDeckExpanded.js +553 -0
  48. package/dist/esm/TaxonomyCard-f9c93953.js +1039 -0
  49. package/dist/esm/TaxonomyCard.js +12 -0
  50. package/dist/esm/TemplateNormal.js +23 -0
  51. package/dist/esm/ThumbnailCard.js +53 -0
  52. package/dist/esm/Ustream-6bb45fe7.js +116 -0
  53. package/dist/esm/Ustream.js +4 -0
  54. package/dist/esm/VideoSeriesListing.js +242 -0
  55. package/dist/esm/YoutubeGroup-dc617e8b.js +222 -0
  56. package/dist/esm/YoutubeGroup.js +7 -0
  57. package/dist/esm/_babelHelpers-67c05996.js +111 -0
  58. package/dist/esm/_commonjsHelpers-ae1b5db5.js +15 -0
  59. package/dist/esm/debounce-a0242b4a.js +277 -0
  60. package/dist/esm/entities-e85d3a4a.js +503 -0
  61. package/dist/esm/get-b684ff61.js +990 -0
  62. package/dist/esm/index-3c1ee9ab.js +605 -0
  63. package/dist/esm/index-ca4ff5cb.js +548 -0
  64. package/dist/esm/index.es-f369b3e8.js +5022 -0
  65. package/dist/esm/index.esm-536609db.js +103 -0
  66. package/dist/esm/index.js +11991 -0
  67. package/dist/esm/isSymbol-c2b7d05a.js +203 -0
  68. package/dist/esm/main-dea495b7.js +851 -0
  69. package/dist/esm/visibility-sensor-3cfe6713.js +2243 -0
  70. package/package.json +8 -7
  71. package/dist/index.es.js +0 -30261
  72. package/dist/index.es.js.map +0 -1
  73. package/dist/index.js +0 -30320
  74. package/dist/index.js.map +0 -1
@@ -0,0 +1,151 @@
1
+ import React__default from 'react';
2
+ import 'next/link';
3
+
4
+ var GroupDeck = function GroupDeck(props) {
5
+ // Props should be an array of objects containing Thumbnail, title, and URL
6
+ var get2 = props.get2 ? '/' + props.get2 + '/' : '/view/';
7
+
8
+ var variant = props.dark ? 'white' : '#383838';
9
+ function scrollSlider(e, direction) {
10
+ var slide = e.target.parentElement;
11
+ var scrollOffset = slide.scrollLeft;
12
+ var viewableWidth = slide.clientWidth > 700 ? 3 * (document.querySelector('.tile').scrollWidth + 8) : document.querySelector('.tile').scrollWidth + 8;
13
+ var scrollDirection = void 0;
14
+ if (direction === 'next') {
15
+ scrollDirection = scrollOffset + viewableWidth;
16
+ }
17
+ if (direction === 'prev') {
18
+ scrollDirection = scrollOffset - viewableWidth;
19
+ }
20
+ slide.scrollTo({
21
+ left: scrollDirection,
22
+ behavior: 'smooth'
23
+ });
24
+ }
25
+ function handleClick(url, vidIndex) {
26
+ props.setState(url, vidIndex);
27
+ }
28
+ var _props$current = props.current,
29
+ current = _props$current === undefined ? '' : _props$current;
30
+
31
+
32
+ return React__default.createElement(
33
+ 'div',
34
+ { id: 'vid-slider', className: 'col' },
35
+ React__default.createElement(
36
+ 'div',
37
+ { className: 'row' },
38
+ React__default.createElement(
39
+ 'div',
40
+ { onClick: function onClick(e) {
41
+ return scrollSlider(e, 'prev');
42
+ }, className: 'tile__slider-prev', style: { color: variant } },
43
+ React__default.createElement('i', { style: { border: 'solid ' + variant, borderWidth: '0 4px 4px 0' }, className: 'arrow left' })
44
+ ),
45
+ React__default.createElement(
46
+ 'div',
47
+ { onClick: function onClick(e) {
48
+ return scrollSlider(e, 'next');
49
+ }, className: 'tile__slider-next', style: { color: variant } },
50
+ React__default.createElement('i', { style: { border: 'solid ' + variant, borderWidth: '0 4px 4px 0' }, className: 'arrow right' })
51
+ ),
52
+ React__default.createElement(
53
+ 'div',
54
+ { className: 'row__inner' },
55
+ props.dataset && props.dataset.map(function (video, index) {
56
+ // If there is a current prop, means this will overlay a currently playing video
57
+ if (current !== '') {
58
+ var url = video.url;
59
+
60
+ return React__default.createElement(
61
+ 'div',
62
+ { key: index, className: 'tile' },
63
+ current && current === url ? React__default.createElement(
64
+ 'div',
65
+ { className: 'now-playing' },
66
+ 'Now Playing'
67
+ ) : '',
68
+ React__default.createElement(
69
+ 'a',
70
+ { onClick: function onClick() {
71
+ return handleClick(url, index + 1);
72
+ } },
73
+ React__default.createElement(
74
+ 'div',
75
+ { className: 'tile__media' },
76
+ React__default.createElement('img', { className: 'tile__img', src: video.thumbnail, alt: '' })
77
+ ),
78
+ React__default.createElement(
79
+ 'div',
80
+ { className: 'tile__details' },
81
+ React__default.createElement(
82
+ 'div',
83
+ { className: 'tile__title' },
84
+ React__default.createElement(
85
+ 'div',
86
+ { style: { color: variant }, className: 'tile__title_text' },
87
+ video.title
88
+ )
89
+ )
90
+ ),
91
+ React__default.createElement(
92
+ 'div',
93
+ { style: { color: variant }, className: 'tile__info' },
94
+ React__default.createElement(
95
+ 'span',
96
+ { style: { fontWeight: 'bold' } },
97
+ 'Ep ',
98
+ index + 1,
99
+ ': '
100
+ ),
101
+ video.title
102
+ )
103
+ )
104
+ );
105
+ } else {
106
+ // slider by itself
107
+ var _url = '' + get2 + video.url;
108
+ return React__default.createElement(
109
+ 'div',
110
+ { key: index, className: 'tile' },
111
+ React__default.createElement(
112
+ 'a',
113
+ { href: _url },
114
+ React__default.createElement(
115
+ 'div',
116
+ { className: 'tile__media' },
117
+ React__default.createElement('img', { className: 'tile__img', src: video.thumbnail, alt: '' })
118
+ ),
119
+ React__default.createElement(
120
+ 'div',
121
+ { className: 'tile__details' },
122
+ React__default.createElement(
123
+ 'div',
124
+ { className: 'tile__title' },
125
+ React__default.createElement(
126
+ 'div',
127
+ { style: { color: variant }, className: 'tile__title_text' },
128
+ video.title
129
+ )
130
+ )
131
+ ),
132
+ React__default.createElement(
133
+ 'div',
134
+ { style: { color: variant }, className: 'tile__info' },
135
+ video.title
136
+ )
137
+ )
138
+ );
139
+ }
140
+ })
141
+ )
142
+ ),
143
+ React__default.createElement(
144
+ 'style',
145
+ { jsx: 'true' },
146
+ '\n #vid-slider * {\n box-sizing: border-box;\n }\n #vid-slider {\n position: relative;\n }\n #vid-slider .now-playing {\n position: absolute;\n top: 0.5rem;\n left: 0.5rem;\n color: white;\n padding: 0 1rem;\n background: rgba(0, 0, 0, 0.75);\n }\n #vid-slider h1,\n #vid-slider p {\n text-align: center;\n width: 100%;\n max-width: 500px;\n margin: auto;\n }\n #vid-slider a:link,\n #vid-slider a:hover,\n #vid-slider a:active,\n #vid-slider a:visited {\n transition: color 150ms;\n color: #95a5a6;\n text-decoration: none;\n }\n #vid-slider a:hover {\n color: #7f8c8d;\n text-decoration: underline;\n }\n #vid-slider .contain {\n width: 100%;\n }\n #vid-slider .row {\n overflow: scroll;\n width: 100%;\n }\n #vid-slider .tile__info {\n white-space: normal !important;\n position: absolute;\n text-align: center;\n color: ' + (props.dark ? 'white' : '#383838') + ';\n opacity: 1;\n font-size: 1rem;\n transition: opacity 0.25s;\n }\n #vid-slider .row__inner {\n transition: 450ms -webkit-transform;\n transition: 450ms transform;\n transition: 450ms transform, 450ms -webkit-transform;\n font-size: 0;\n white-space: nowrap;\n margin: 55px 0;\n padding-bottom: 10px;\n padding-left: 0;\n }\n #vid-slider .tile {\n position: relative;\n display: inline-block;\n width: 250px;\n height: 140.625px;\n margin-right: 10px;\n font-size: 20px;\n cursor: pointer;\n transition: 450ms all;\n -webkit-transform-origin: center left;\n transform-origin: center left;\n }\n #vid-slider .tile__img {\n width: 250px;\n height: 140.625px;\n -o-object-fit: cover;\n object-fit: cover;\n }\n #vid-slider .tile__details {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n top: 0;\n font-size: 10px;\n opacity: 0;\n background: linear-gradient(to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0) 100%);\n transition: 450ms opacity;\n }\n #vid-slider .tile__details:after,\n #vid-slider .tile__details:before {\n content: \'\';\n position: absolute;\n top: 50%;\n left: 50%;\n display: #000;\n }\n #vid-slider .tile__details:after {\n margin-top: -25px;\n margin-left: -25px;\n width: 50px;\n height: 50px;\n border: 3px solid #ecf0f1;\n line-height: 50px;\n text-align: center;\n border-radius: 100%;\n background: rgba(0, 0, 0, 0.5);\n z-index: 1;\n }\n #vid-slider .tile__details:before {\n content: \'\u25B6\';\n left: 0;\n width: 100%;\n font-size: 30px;\n margin-left: 3px;\n margin-top: -22px;\n text-align: center;\n z-index: 2;\n color: white;\n }\n #vid-slider .tile:hover .tile__details {\n opacity: 1;\n }\n #vid-slider .tile__title {\n position: absolute;\n bottom: 0;\n padding: 10px;\n max-width: 250px;\n }\n #vid-slider .tile__title_text {\n position: relative;\n left: 0;\n white-space: normal;\n }\n #vid-slider .row__inner:hover {\n -webkit-transform: translate3d(-62.5px, 0, 0);\n transform: translate3d(-62.5px, 0, 0);\n }\n #vid-slider .row__inner:hover .tile {\n opacity: 0.3;\n }\n #vid-slider .row__inner:hover .tile:hover {\n -webkit-transform: scale(1.25);\n transform: scale(1.25);\n opacity: 1;\n }\n #vid-slider .tile:hover ~ .tile {\n -webkit-transform: translate3d(62px, 0, 0);\n transform: translate3d(62px, 0, 0);\n }\n #vid-slider .tile:hover .tile__info {\n opacity: 0;\n }\n #vid-slider .tile__slider-prev,\n #vid-slider .tile__slider-next {\n width: 30px;\n background: transparent;\n border: none;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n z-index: 99;\n cursor: pointer;\n color: ' + (props.dark ? 'white' : 'black') + ';\n display: flex;\n justify-content: center;\n align-items: center;\n font-size: 2rem;\n }\n #vid-slider .tile__slider-prev {\n left: -3px;\n }\n #vid-slider .tile__slider-next {\n right: 0;\n }\n #vid-slider,\n #vid-slider .row {\n margin: 0;\n padding: 0 1.2rem;\n }\n #vid-slider .tile:last-child {\n margin-right: 2rem;\n }\n #vid-slider .row::-webkit-scrollbar-thumb {\n background-color: transparent !important;\n }\n #vid-slider i {\n border: solid ' + (props.dark ? 'white' : 'black') + ';\n border-width: 0 4px 4px 0;\n display: inline-block;\n padding: 4px;\n pointer-events: none;\n }\n\n #vid-slider .right {\n transform: rotate(-45deg);\n -webkit-transform: rotate(-45deg);\n }\n\n #vid-slider .left {\n transform: rotate(135deg);\n -webkit-transform: rotate(135deg);\n }\n '
147
+ )
148
+ );
149
+ };
150
+
151
+ export default GroupDeck;
@@ -0,0 +1,76 @@
1
+ import React__default from 'react';
2
+ import './_commonjsHelpers-ae1b5db5.js';
3
+ import 'prop-types';
4
+ import Row from 'react-bootstrap/Row';
5
+ import Col from 'react-bootstrap/Col';
6
+ import Card from 'react-bootstrap/Card';
7
+ import 'next/link';
8
+ import 'react-dom';
9
+ import { i as imageUrlBuilder } from './index-ca4ff5cb.js';
10
+ import { L as LazyLoad } from './index-3c1ee9ab.js';
11
+ import Badge from 'react-bootstrap/Badge';
12
+
13
+ var IssueContentDeck = function IssueContentDeck(props) {
14
+ var data = props.data,
15
+ imageHeight = props.imageHeight,
16
+ imageWidth = props.imageWidth,
17
+ Website = props.Website,
18
+ client = props.client;
19
+
20
+
21
+ var urlFor = function urlFor(source) {
22
+ var builder = imageUrlBuilder(client);
23
+ return builder.image(source).auto('format');
24
+ };
25
+
26
+ var renderCardImage = function renderCardImage(thumbnail) {
27
+ if (thumbnail && thumbnail.asset) {
28
+ var url = urlFor(thumbnail);
29
+ if (imageHeight) url = url.height(imageHeight);
30
+ if (imageWidth) url = url.width(imageWidth);
31
+ return url.url();
32
+ } else {
33
+ return Website.logo;
34
+ }
35
+ };
36
+
37
+ return React__default.createElement(
38
+ Row,
39
+ null,
40
+ data && data.map(function (row, index) {
41
+ return row.url && row.url.current && React__default.createElement(
42
+ Col,
43
+ { md: 12, lg: 6, style: { display: 'flex', flex: '1 0 auto' }, key: index },
44
+ React__default.createElement(
45
+ Card,
46
+ null,
47
+ React__default.createElement(
48
+ 'a',
49
+ { href: '/view/' + row.url.current },
50
+ row.thumbnail && React__default.createElement(
51
+ LazyLoad,
52
+ { height: imageHeight },
53
+ React__default.createElement(Card.Img, { variant: 'top', src: renderCardImage(row.thumbnail), alt: row.title })
54
+ ),
55
+ React__default.createElement(
56
+ Card.Body,
57
+ null,
58
+ row.issueSection && row.issueSection.name ? React__default.createElement(
59
+ Badge,
60
+ { variant: 'success' },
61
+ row.issueSection && row.issueSection.name.name
62
+ ) : '',
63
+ React__default.createElement(
64
+ Card.Title,
65
+ null,
66
+ row.title
67
+ )
68
+ )
69
+ )
70
+ )
71
+ );
72
+ })
73
+ );
74
+ };
75
+
76
+ export default IssueContentDeck;
@@ -0,0 +1,139 @@
1
+ import React__default from 'react';
2
+ import './_commonjsHelpers-ae1b5db5.js';
3
+ import 'prop-types';
4
+ import Row from 'react-bootstrap/Row';
5
+ import Col from 'react-bootstrap/Col';
6
+ import Card from 'react-bootstrap/Card';
7
+ import 'next/link';
8
+ import 'react-dom';
9
+ import { i as imageUrlBuilder } from './index-ca4ff5cb.js';
10
+ import { L as LazyLoad } from './index-3c1ee9ab.js';
11
+ import Button from 'react-bootstrap/Button';
12
+
13
+ var IssueDeck = function IssueDeck(props) {
14
+ var data = props.data,
15
+ href = props.href,
16
+ imageHeight = props.imageHeight,
17
+ imageWidth = props.imageWidth,
18
+ Website = props.Website,
19
+ client = props.client,
20
+ publication = props.publication;
21
+
22
+
23
+ var urlFor = function urlFor(source) {
24
+ var builder = imageUrlBuilder(client);
25
+ return builder.image(source).auto('format');
26
+ };
27
+
28
+ var renderCardImage = function renderCardImage(thumbnail) {
29
+ if (thumbnail && thumbnail.asset) {
30
+ var url = urlFor(thumbnail);
31
+ if (imageHeight) url = url.height(imageHeight);
32
+ if (imageWidth) url = url.width(imageWidth);
33
+ return url.url();
34
+ } else {
35
+ return Website.logo;
36
+ }
37
+ };
38
+
39
+ return React__default.createElement(
40
+ Row,
41
+ null,
42
+ data && data.map(function (row, index) {
43
+ return publication && row.identifier && row.identifier.current && React__default.createElement(
44
+ Col,
45
+ { md: 12, lg: 12, key: index },
46
+ React__default.createElement(
47
+ Card,
48
+ { className: 'queue-card journal-queue', style: { borderTop: '1px solid #EEE' } },
49
+ React__default.createElement(
50
+ Row,
51
+ { style: { flexDirection: 'left' } },
52
+ React__default.createElement(
53
+ Col,
54
+ { md: 12, lg: 4, className: 'body-image' },
55
+ React__default.createElement(
56
+ 'a',
57
+ { href: href + '/' + publication + '/' + row.identifier.current, style: { width: '100%' } },
58
+ row.thumbnail && React__default.createElement(
59
+ LazyLoad,
60
+ { height: imageHeight },
61
+ React__default.createElement(Card.Img, { variant: 'top', src: renderCardImage(row.thumbnail), alt: row.name })
62
+ )
63
+ )
64
+ ),
65
+ React__default.createElement(
66
+ Col,
67
+ { md: 12, lg: 8 },
68
+ React__default.createElement(
69
+ Card.Body,
70
+ { style: { padding: '20px' }, className: 'body-text' },
71
+ React__default.createElement(
72
+ Row,
73
+ null,
74
+ React__default.createElement(
75
+ Col,
76
+ null,
77
+ React__default.createElement(
78
+ Card.Title,
79
+ null,
80
+ row.name
81
+ )
82
+ )
83
+ ),
84
+ React__default.createElement(
85
+ Row,
86
+ null,
87
+ React__default.createElement(
88
+ Col,
89
+ null,
90
+ React__default.createElement(
91
+ 'div',
92
+ null,
93
+ 'Volume: ',
94
+ row.volume
95
+ )
96
+ )
97
+ ),
98
+ React__default.createElement(
99
+ Row,
100
+ null,
101
+ React__default.createElement(
102
+ Col,
103
+ null,
104
+ React__default.createElement(
105
+ 'div',
106
+ null,
107
+ 'Number: ',
108
+ row.number
109
+ )
110
+ )
111
+ ),
112
+ React__default.createElement(
113
+ Row,
114
+ null,
115
+ React__default.createElement(
116
+ 'a',
117
+ { href: href + '/' + publication + '/' + row.identifier.current },
118
+ React__default.createElement(
119
+ Button,
120
+ { style: { marginTop: '20px' }, variant: 'secondary' },
121
+ 'View Issue'
122
+ )
123
+ ),
124
+ row.pdf && row.pdf.asset && React__default.createElement(
125
+ 'a',
126
+ { href: row.pdf.asset.url, target: '_blank', className: 'btn btn-primary', style: { marginTop: '20px', marginLeft: '1rem' } },
127
+ 'Download Issue'
128
+ )
129
+ )
130
+ )
131
+ )
132
+ )
133
+ )
134
+ );
135
+ })
136
+ );
137
+ };
138
+
139
+ export default IssueDeck;