@mjhls/mjh-framework 1.0.74 → 1.0.75
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.es.js +253 -76
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +253 -75
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -5526,23 +5526,23 @@ var GroupDeck = function GroupDeck(props) {
|
|
|
5526
5526
|
return React__default.createElement(
|
|
5527
5527
|
'div',
|
|
5528
5528
|
{ id: 'vid-slider', className: 'col' },
|
|
5529
|
+
React__default.createElement(
|
|
5530
|
+
'div',
|
|
5531
|
+
{ onClick: function onClick(e) {
|
|
5532
|
+
return scrollSlider(e, 'prev');
|
|
5533
|
+
}, className: 'tile__slider-prev', style: { color: variant } },
|
|
5534
|
+
React__default.createElement('i', { style: { border: 'solid ' + variant, borderWidth: '0 4px 4px 0' }, className: 'arrow left' })
|
|
5535
|
+
),
|
|
5536
|
+
React__default.createElement(
|
|
5537
|
+
'div',
|
|
5538
|
+
{ onClick: function onClick(e) {
|
|
5539
|
+
return scrollSlider(e, 'next');
|
|
5540
|
+
}, className: 'tile__slider-next', style: { color: variant } },
|
|
5541
|
+
React__default.createElement('i', { style: { border: 'solid ' + variant, borderWidth: '0 4px 4px 0' }, className: 'arrow right' })
|
|
5542
|
+
),
|
|
5529
5543
|
React__default.createElement(
|
|
5530
5544
|
'div',
|
|
5531
5545
|
{ className: 'row' },
|
|
5532
|
-
React__default.createElement(
|
|
5533
|
-
'div',
|
|
5534
|
-
{ onClick: function onClick(e) {
|
|
5535
|
-
return scrollSlider(e, 'prev');
|
|
5536
|
-
}, className: 'tile__slider-prev', style: { color: variant } },
|
|
5537
|
-
React__default.createElement('i', { style: { border: 'solid ' + variant, borderWidth: '0 4px 4px 0' }, className: 'arrow left' })
|
|
5538
|
-
),
|
|
5539
|
-
React__default.createElement(
|
|
5540
|
-
'div',
|
|
5541
|
-
{ onClick: function onClick(e) {
|
|
5542
|
-
return scrollSlider(e, 'next');
|
|
5543
|
-
}, className: 'tile__slider-next', style: { color: variant } },
|
|
5544
|
-
React__default.createElement('i', { style: { border: 'solid ' + variant, borderWidth: '0 4px 4px 0' }, className: 'arrow right' })
|
|
5545
|
-
),
|
|
5546
5546
|
React__default.createElement(
|
|
5547
5547
|
'div',
|
|
5548
5548
|
{ className: 'row__inner' },
|
|
@@ -5634,7 +5634,207 @@ var GroupDeck = function GroupDeck(props) {
|
|
|
5634
5634
|
React__default.createElement(
|
|
5635
5635
|
'style',
|
|
5636
5636
|
{ jsx: true },
|
|
5637
|
-
'\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: 1rem;\n left: 1rem;\n color: white;\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:
|
|
5637
|
+
'\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: 1rem;\n left: 1rem;\n color: white;\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: 2px;\n margin-top: -23px;\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 '
|
|
5638
|
+
)
|
|
5639
|
+
);
|
|
5640
|
+
};
|
|
5641
|
+
|
|
5642
|
+
var getYoutubeId = createCommonjsModule(function (module, exports) {
|
|
5643
|
+
(function (root, factory) {
|
|
5644
|
+
{
|
|
5645
|
+
module.exports = factory();
|
|
5646
|
+
}
|
|
5647
|
+
}(commonjsGlobal, function (exports) {
|
|
5648
|
+
|
|
5649
|
+
return function (url, opts) {
|
|
5650
|
+
if (opts == undefined) {
|
|
5651
|
+
opts = {fuzzy: true};
|
|
5652
|
+
}
|
|
5653
|
+
|
|
5654
|
+
if (/youtu\.?be/.test(url)) {
|
|
5655
|
+
|
|
5656
|
+
// Look first for known patterns
|
|
5657
|
+
var i;
|
|
5658
|
+
var patterns = [
|
|
5659
|
+
/youtu\.be\/([^#\&\?]{11})/, // youtu.be/<id>
|
|
5660
|
+
/\?v=([^#\&\?]{11})/, // ?v=<id>
|
|
5661
|
+
/\&v=([^#\&\?]{11})/, // &v=<id>
|
|
5662
|
+
/embed\/([^#\&\?]{11})/, // embed/<id>
|
|
5663
|
+
/\/v\/([^#\&\?]{11})/ // /v/<id>
|
|
5664
|
+
];
|
|
5665
|
+
|
|
5666
|
+
// If any pattern matches, return the ID
|
|
5667
|
+
for (i = 0; i < patterns.length; ++i) {
|
|
5668
|
+
if (patterns[i].test(url)) {
|
|
5669
|
+
return patterns[i].exec(url)[1];
|
|
5670
|
+
}
|
|
5671
|
+
}
|
|
5672
|
+
|
|
5673
|
+
if (opts.fuzzy) {
|
|
5674
|
+
// If that fails, break it apart by certain characters and look
|
|
5675
|
+
// for the 11 character key
|
|
5676
|
+
var tokens = url.split(/[\/\&\?=#\.\s]/g);
|
|
5677
|
+
for (i = 0; i < tokens.length; ++i) {
|
|
5678
|
+
if (/^[^#\&\?]{11}$/.test(tokens[i])) {
|
|
5679
|
+
return tokens[i];
|
|
5680
|
+
}
|
|
5681
|
+
}
|
|
5682
|
+
}
|
|
5683
|
+
}
|
|
5684
|
+
|
|
5685
|
+
return null;
|
|
5686
|
+
};
|
|
5687
|
+
|
|
5688
|
+
}));
|
|
5689
|
+
});
|
|
5690
|
+
|
|
5691
|
+
/*
|
|
5692
|
+
GROQ query -
|
|
5693
|
+
accepts an array of title, URL
|
|
5694
|
+
`http://img.youtube.com/vi/${getYouTubeId(vid.url)}/hqdefault.jpg`
|
|
5695
|
+
*/
|
|
5696
|
+
var YoutubeGroup = function YoutubeGroup(props) {
|
|
5697
|
+
// Props should be an array of objects containing Thumbnail, title, and URL
|
|
5698
|
+
var get2 = props.get2 ? '/' + props.get2 + '/' : '/view/';
|
|
5699
|
+
|
|
5700
|
+
var variant = props.dark ? 'white' : '#383838';
|
|
5701
|
+
function scrollSlider(e, direction) {
|
|
5702
|
+
var slide = e.target.parentElement;
|
|
5703
|
+
var scrollOffset = slide.scrollLeft;
|
|
5704
|
+
var viewableWidth = slide.clientWidth > 700 ? 3 * (document.querySelector('.tile').scrollWidth + 8) : document.querySelector('.tile').scrollWidth + 8;
|
|
5705
|
+
var scrollDirection = void 0;
|
|
5706
|
+
if (direction === 'next') {
|
|
5707
|
+
scrollDirection = scrollOffset + viewableWidth;
|
|
5708
|
+
}
|
|
5709
|
+
if (direction === 'prev') {
|
|
5710
|
+
scrollDirection = scrollOffset - viewableWidth;
|
|
5711
|
+
}
|
|
5712
|
+
slide.scrollTo({
|
|
5713
|
+
left: scrollDirection,
|
|
5714
|
+
behavior: 'smooth'
|
|
5715
|
+
});
|
|
5716
|
+
}
|
|
5717
|
+
function handleClick(url, vidIndex) {
|
|
5718
|
+
props.setState(url, vidIndex);
|
|
5719
|
+
}
|
|
5720
|
+
var _props$current = props.current,
|
|
5721
|
+
current = _props$current === undefined ? '' : _props$current;
|
|
5722
|
+
|
|
5723
|
+
|
|
5724
|
+
return React__default.createElement(
|
|
5725
|
+
'div',
|
|
5726
|
+
{ id: 'vid-slider', className: 'col' },
|
|
5727
|
+
React__default.createElement(
|
|
5728
|
+
'div',
|
|
5729
|
+
{ onClick: function onClick(e) {
|
|
5730
|
+
return scrollSlider(e, 'prev');
|
|
5731
|
+
}, className: 'tile__slider-prev', style: { color: variant } },
|
|
5732
|
+
React__default.createElement('i', { style: { border: 'solid ' + variant, borderWidth: '0 4px 4px 0' }, className: 'arrow left' })
|
|
5733
|
+
),
|
|
5734
|
+
React__default.createElement(
|
|
5735
|
+
'div',
|
|
5736
|
+
{ onClick: function onClick(e) {
|
|
5737
|
+
return scrollSlider(e, 'next');
|
|
5738
|
+
}, className: 'tile__slider-next', style: { color: variant } },
|
|
5739
|
+
React__default.createElement('i', { style: { border: 'solid ' + variant, borderWidth: '0 4px 4px 0' }, className: 'arrow right' })
|
|
5740
|
+
),
|
|
5741
|
+
React__default.createElement(
|
|
5742
|
+
'div',
|
|
5743
|
+
{ className: 'row' },
|
|
5744
|
+
React__default.createElement(
|
|
5745
|
+
'div',
|
|
5746
|
+
{ className: 'row__inner' },
|
|
5747
|
+
props.dataset && props.dataset.map(function (video, index) {
|
|
5748
|
+
// If there is a current prop, means this will overlay a currently playing video
|
|
5749
|
+
if (current !== '') {
|
|
5750
|
+
var url = video.url;
|
|
5751
|
+
var thumbnail = 'http://img.youtube.com/vi/' + getYoutubeId(video.url) + '/hqdefault.jpg';
|
|
5752
|
+
|
|
5753
|
+
return React__default.createElement(
|
|
5754
|
+
'div',
|
|
5755
|
+
{ key: index, className: 'tile' },
|
|
5756
|
+
current && current === url ? React__default.createElement(
|
|
5757
|
+
'div',
|
|
5758
|
+
{ className: 'now-playing' },
|
|
5759
|
+
'Now Playing'
|
|
5760
|
+
) : '',
|
|
5761
|
+
React__default.createElement(
|
|
5762
|
+
'a',
|
|
5763
|
+
{ onClick: function onClick() {
|
|
5764
|
+
return handleClick(url, index + 1);
|
|
5765
|
+
} },
|
|
5766
|
+
React__default.createElement(
|
|
5767
|
+
'div',
|
|
5768
|
+
{ className: 'tile__media' },
|
|
5769
|
+
React__default.createElement('img', { className: 'tile__img', src: thumbnail, alt: '' })
|
|
5770
|
+
),
|
|
5771
|
+
React__default.createElement(
|
|
5772
|
+
'div',
|
|
5773
|
+
{ className: 'tile__details' },
|
|
5774
|
+
React__default.createElement(
|
|
5775
|
+
'div',
|
|
5776
|
+
{ className: 'tile__title' },
|
|
5777
|
+
React__default.createElement(
|
|
5778
|
+
'div',
|
|
5779
|
+
{ style: { color: variant }, className: 'tile__title_text' },
|
|
5780
|
+
video.title
|
|
5781
|
+
)
|
|
5782
|
+
)
|
|
5783
|
+
),
|
|
5784
|
+
React__default.createElement(
|
|
5785
|
+
'div',
|
|
5786
|
+
{ style: { color: variant }, className: 'tile__info' },
|
|
5787
|
+
video.title
|
|
5788
|
+
)
|
|
5789
|
+
)
|
|
5790
|
+
);
|
|
5791
|
+
} else {
|
|
5792
|
+
// slider by itself
|
|
5793
|
+
var _url = '' + video.link;
|
|
5794
|
+
var _thumbnail = 'http://img.youtube.com/vi/' + getYoutubeId(video.url) + '/hqdefault.jpg';
|
|
5795
|
+
return React__default.createElement(
|
|
5796
|
+
'div',
|
|
5797
|
+
{ key: index, className: 'tile' },
|
|
5798
|
+
React__default.createElement(
|
|
5799
|
+
Link,
|
|
5800
|
+
{ href: _url },
|
|
5801
|
+
React__default.createElement(
|
|
5802
|
+
'a',
|
|
5803
|
+
null,
|
|
5804
|
+
React__default.createElement(
|
|
5805
|
+
'div',
|
|
5806
|
+
{ className: 'tile__media' },
|
|
5807
|
+
React__default.createElement('img', { className: 'tile__img', src: _thumbnail, alt: '' })
|
|
5808
|
+
),
|
|
5809
|
+
React__default.createElement(
|
|
5810
|
+
'div',
|
|
5811
|
+
{ className: 'tile__details' },
|
|
5812
|
+
React__default.createElement(
|
|
5813
|
+
'div',
|
|
5814
|
+
{ className: 'tile__title' },
|
|
5815
|
+
React__default.createElement(
|
|
5816
|
+
'div',
|
|
5817
|
+
{ style: { color: variant }, className: 'tile__title_text' },
|
|
5818
|
+
video.title
|
|
5819
|
+
)
|
|
5820
|
+
)
|
|
5821
|
+
),
|
|
5822
|
+
React__default.createElement(
|
|
5823
|
+
'div',
|
|
5824
|
+
{ style: { color: variant }, className: 'tile__info' },
|
|
5825
|
+
video.title
|
|
5826
|
+
)
|
|
5827
|
+
)
|
|
5828
|
+
)
|
|
5829
|
+
);
|
|
5830
|
+
}
|
|
5831
|
+
})
|
|
5832
|
+
)
|
|
5833
|
+
),
|
|
5834
|
+
React__default.createElement(
|
|
5835
|
+
'style',
|
|
5836
|
+
{ jsx: true },
|
|
5837
|
+
'\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: .5rem;\n left: 1rem;\n color: white;\n background: rgba(0,0,0,.5);\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: 2px;\n margin-top: -23px;\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 '
|
|
5638
5838
|
)
|
|
5639
5839
|
);
|
|
5640
5840
|
};
|
|
@@ -12703,55 +12903,6 @@ var Slideshow = function Slideshow(_ref) {
|
|
|
12703
12903
|
);
|
|
12704
12904
|
};
|
|
12705
12905
|
|
|
12706
|
-
var getYoutubeId = createCommonjsModule(function (module, exports) {
|
|
12707
|
-
(function (root, factory) {
|
|
12708
|
-
{
|
|
12709
|
-
module.exports = factory();
|
|
12710
|
-
}
|
|
12711
|
-
}(commonjsGlobal, function (exports) {
|
|
12712
|
-
|
|
12713
|
-
return function (url, opts) {
|
|
12714
|
-
if (opts == undefined) {
|
|
12715
|
-
opts = {fuzzy: true};
|
|
12716
|
-
}
|
|
12717
|
-
|
|
12718
|
-
if (/youtu\.?be/.test(url)) {
|
|
12719
|
-
|
|
12720
|
-
// Look first for known patterns
|
|
12721
|
-
var i;
|
|
12722
|
-
var patterns = [
|
|
12723
|
-
/youtu\.be\/([^#\&\?]{11})/, // youtu.be/<id>
|
|
12724
|
-
/\?v=([^#\&\?]{11})/, // ?v=<id>
|
|
12725
|
-
/\&v=([^#\&\?]{11})/, // &v=<id>
|
|
12726
|
-
/embed\/([^#\&\?]{11})/, // embed/<id>
|
|
12727
|
-
/\/v\/([^#\&\?]{11})/ // /v/<id>
|
|
12728
|
-
];
|
|
12729
|
-
|
|
12730
|
-
// If any pattern matches, return the ID
|
|
12731
|
-
for (i = 0; i < patterns.length; ++i) {
|
|
12732
|
-
if (patterns[i].test(url)) {
|
|
12733
|
-
return patterns[i].exec(url)[1];
|
|
12734
|
-
}
|
|
12735
|
-
}
|
|
12736
|
-
|
|
12737
|
-
if (opts.fuzzy) {
|
|
12738
|
-
// If that fails, break it apart by certain characters and look
|
|
12739
|
-
// for the 11 character key
|
|
12740
|
-
var tokens = url.split(/[\/\&\?=#\.\s]/g);
|
|
12741
|
-
for (i = 0; i < tokens.length; ++i) {
|
|
12742
|
-
if (/^[^#\&\?]{11}$/.test(tokens[i])) {
|
|
12743
|
-
return tokens[i];
|
|
12744
|
-
}
|
|
12745
|
-
}
|
|
12746
|
-
}
|
|
12747
|
-
}
|
|
12748
|
-
|
|
12749
|
-
return null;
|
|
12750
|
-
};
|
|
12751
|
-
|
|
12752
|
-
}));
|
|
12753
|
-
});
|
|
12754
|
-
|
|
12755
12906
|
var isArray$3 = Array.isArray;
|
|
12756
12907
|
var keyList = Object.keys;
|
|
12757
12908
|
var hasProp = Object.prototype.hasOwnProperty;
|
|
@@ -15581,7 +15732,8 @@ var IFrame = function IFrame(_ref) {
|
|
|
15581
15732
|
};
|
|
15582
15733
|
|
|
15583
15734
|
var YouTubeGallery = function YouTubeGallery(_ref) {
|
|
15584
|
-
var nodes = _ref.nodes
|
|
15735
|
+
var nodes = _ref.nodes,
|
|
15736
|
+
client = _ref.client;
|
|
15585
15737
|
|
|
15586
15738
|
|
|
15587
15739
|
var router$$1 = router.useRouter();
|
|
@@ -15593,13 +15745,18 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
|
|
|
15593
15745
|
vidUrl = _useState2[0],
|
|
15594
15746
|
setVidUrl = _useState2[1];
|
|
15595
15747
|
|
|
15748
|
+
var _useState3 = React.useState(''),
|
|
15749
|
+
_useState4 = slicedToArray(_useState3, 2),
|
|
15750
|
+
series = _useState4[0],
|
|
15751
|
+
setSeries = _useState4[1];
|
|
15596
15752
|
// Once component mounts, set the variables
|
|
15597
15753
|
|
|
15598
15754
|
|
|
15599
15755
|
React.useEffect(function () {
|
|
15600
|
-
|
|
15756
|
+
|
|
15601
15757
|
params = new URL(document.location).searchParams;
|
|
15602
|
-
seriesVid = params.get('
|
|
15758
|
+
seriesVid = params.get('vidSeries') || 1;
|
|
15759
|
+
setSeries(seriesVid);
|
|
15603
15760
|
setVidUrl(nodes.videos['' + (seriesVid - 1)].url);
|
|
15604
15761
|
}, []);
|
|
15605
15762
|
|
|
@@ -15701,18 +15858,38 @@ var YouTubeGallery = function YouTubeGallery(_ref) {
|
|
|
15701
15858
|
padding: '0 1rem',
|
|
15702
15859
|
left: '0'
|
|
15703
15860
|
} },
|
|
15704
|
-
vidUrl && React__default.createElement(GroupDeck, { dark: true, dataset: seriesData, setState: setState, seriesVid:
|
|
15861
|
+
vidUrl && React__default.createElement(GroupDeck, { dark: true, dataset: seriesData, setState: setState, seriesVid: series, current: vidUrl })
|
|
15705
15862
|
)
|
|
15706
15863
|
),
|
|
15707
15864
|
React__default.createElement(
|
|
15708
15865
|
'div',
|
|
15709
15866
|
{ className: 'vid-controls', style: { width: '100%', background: 'transparent', display: 'flex', justifyContent: 'center' } },
|
|
15710
|
-
React__default.createElement(
|
|
15711
|
-
'
|
|
15712
|
-
|
|
15713
|
-
|
|
15714
|
-
|
|
15715
|
-
|
|
15867
|
+
React__default.createElement(
|
|
15868
|
+
'button',
|
|
15869
|
+
{
|
|
15870
|
+
'aria-label': 'Toggles video series',
|
|
15871
|
+
id: 'vid-series-btn',
|
|
15872
|
+
onClick: toggleSeries,
|
|
15873
|
+
className: 'btn btn-block btn-lg btn-secondary ',
|
|
15874
|
+
style: { borderRadius: '0' } },
|
|
15875
|
+
'View Series'
|
|
15876
|
+
)
|
|
15877
|
+
),
|
|
15878
|
+
React__default.createElement(
|
|
15879
|
+
'div',
|
|
15880
|
+
{ className: 'my-5' },
|
|
15881
|
+
series && React__default.createElement(
|
|
15882
|
+
'h3',
|
|
15883
|
+
null,
|
|
15884
|
+
'Episode ',
|
|
15885
|
+
series
|
|
15886
|
+
),
|
|
15887
|
+
nodes.videos[0] && React__default.createElement(
|
|
15888
|
+
'h2',
|
|
15889
|
+
{ className: 'mb-3' },
|
|
15890
|
+
nodes.videos[0].title
|
|
15891
|
+
),
|
|
15892
|
+
nodes.videos[0].text && React__default.createElement(BlockContent, _extends({ serializers: getSerializers$1(client), blocks: nodes.videos[0].text, imageOptions: { w: 320, h: 240, fit: 'max' } }, client.config()))
|
|
15716
15893
|
),
|
|
15717
15894
|
React__default.createElement(
|
|
15718
15895
|
'style',
|
|
@@ -15734,7 +15911,7 @@ var getSerializers$1 = function getSerializers(client) {
|
|
|
15734
15911
|
youtubeGallery: function youtubeGallery(_ref2) {
|
|
15735
15912
|
var node = _ref2.node;
|
|
15736
15913
|
|
|
15737
|
-
return React__default.createElement(YouTubeGallery, { nodes: node });
|
|
15914
|
+
return React__default.createElement(YouTubeGallery, { nodes: node, client: client });
|
|
15738
15915
|
},
|
|
15739
15916
|
figure: function figure(_ref3) {
|
|
15740
15917
|
var node = _ref3.node;
|
|
@@ -15799,6 +15976,7 @@ exports.DeckQueue = DeckQueue;
|
|
|
15799
15976
|
exports.ThumbnailCard = ThumbnailCard;
|
|
15800
15977
|
exports.TaxonomyCard = TaxonomyCard;
|
|
15801
15978
|
exports.GroupDeck = GroupDeck;
|
|
15979
|
+
exports.YoutubeGroup = YoutubeGroup;
|
|
15802
15980
|
exports.Column1 = Column1;
|
|
15803
15981
|
exports.Column2 = Column2;
|
|
15804
15982
|
exports.Column3 = Column3;
|