diff --git a/httpdocs/theme/react/product-media-slider/app/video-player.js b/httpdocs/theme/react/product-media-slider/app/video-player.js
index 7114f5ae2..3e2e9a5c3 100644
--- a/httpdocs/theme/react/product-media-slider/app/video-player.js
+++ b/httpdocs/theme/react/product-media-slider/app/video-player.js
@@ -1,126 +1,126 @@
import React from 'react';
import {
Player,
ControlBar,
BigPlayButton,
VolumeMenuButton,
LoadingSpinner,
CurrentTimeDisplay,
DurationDisplay } from 'video-react';
class VideoPlayerWrapper extends React.Component {
constructor(props, context){
super(props, context);
let hostLocation = window.location.href;
if (!hostLocation.endsWith('/')) hostLocation += "/";
this.state = {
source:this.props.slide.url_preview,
width:this.props.width,
videoStarted:false,
videoStopped:false,
videoStartUrl:hostLocation + "startvideoajax?collection_id="+this.props.slide.collection_id+"&file_id="+this.props.slide.file_id,
videoStopUrl:hostLocation + "stopvideoajax?media_view_id="
}
this.onCinemaModeClick = this.onCinemaModeClick.bind(this);
this.play = this.play.bind(this);
this.pause = this.pause.bind(this);
}
componentDidMount() {
this.refs.player.subscribeToStateChange(this.handleStateChange.bind(this));
}
handleStateChange(state, prevState) {
this.setState({ player: state },function(){
if (this.state.player){
if (typeof this.state.player.videoWidth !== undefined) {
setTimeout(() => {
this.setState({videoRenderMask:false})
}, 1000);
}
if (this.state.player.hasStarted && this.state.videoStarted === false){
this.setState({videoStarted:true},function(){
const self = this;
$.ajax({url: this.state.videoStartUrl}).done(function(res) {
self.setState({videoStopUrl:self.state.videoStopUrl + res.MediaViewId})
});
});
}
if (this.state.player.paused && this.state.videoStarted === true && this.state.videoStopped === false){
this.setState({videoStopped:true},function(){
$.ajax({url: this.state.videoStopUrl}).done(function(res) {
// console.log(res)
});
});
}
if (state.isFullscreen === false && prevState.isFullscreen === true) this.props.onUpdateDimensions()
if (state.isFullscreen !== prevState.isFullscreen) this.props.onFullScreenToggle(state.isFullscreen)
}
});
}
shouldComponentUpdate(nextProps, nextState){
if (nextProps.playVideo === false) this.pause()
return true;
}
onCinemaModeClick(){
this.props.onCinemaModeClick()
}
play() {
this.refs.player.play();
}
pause() {
this.refs.player.pause();
}
render(){
let videoPlayerDisplay;
if (this.state.source){
let width = this.props.width;
if (this.props.cinemaMode === false){
if (this.state.player){
const dimensionsRatio = this.props.height / this.state.player.videoHeight;
- width = this.state.player.videoWidth * dimensionsRatio;
+ if ((this.state.player.videoWidth * dimensionsRatio) < this.props.width) width = this.state.player.videoWidth * dimensionsRatio;
}
}
videoPlayerDisplay = (
)
}
let videoRenderMask =
if (this.state.videoRenderMask === false){ videoRenderMask = ''; }
return (
{videoRenderMask}
{videoPlayerDisplay}
)
}
}
export default VideoPlayerWrapper;
\ No newline at end of file
diff --git a/httpdocs/theme/react/product-media-slider/product-media-slider.js b/httpdocs/theme/react/product-media-slider/product-media-slider.js
index 0859f7d17..20f5a4b57 100644
--- a/httpdocs/theme/react/product-media-slider/product-media-slider.js
+++ b/httpdocs/theme/react/product-media-slider/product-media-slider.js
@@ -1,1133 +1,1133 @@
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = "./app/product-media-slider.js");
/******/ })
/************************************************************************/
/******/ ({
/***/ "./app/book-reader.js":
/*!****************************!*\
!*** ./app/book-reader.js ***!
\****************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction _iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\n\n\nfunction BookReaderWrapper(props) {\n var _useState = Object(react__WEBPACK_IMPORTED_MODULE_0__[\"useState\"])(),\n _useState2 = _slicedToArray(_useState, 2),\n renditionState = _useState2[0],\n setRenditionState = _useState2[1];\n\n react__WEBPACK_IMPORTED_MODULE_0___default.a.useEffect(function () {\n var book = ePub(props.slide.url);\n var rendition = book.renderTo(\"book-container\", {\n flow: \"paginated\",\n width: props.width - 40,\n height: props.height - 40\n });\n setRenditionState(rendition);\n var displayed = rendition.display();\n book.ready.then(function (book) {\n console.log(book);\n /*let meta = book.package.metadata; // Metadata from the package json\r\n let toc = book.navigation.toc; // Table of Contents\r\n let landmarks = book.navigation.landmarks; // landmarks\r\n let spine = book.spine; // landmarks\r\n let cover = book.cover; // landmarks\r\n let resources = book.resources; // landmarks\r\n let pageList = book.pageList; // page list (if present)\r\n console.log(meta);\r\n console.log(toc);\r\n console.log(landmarks);\r\n console.log(spine);\r\n console.log(cover);\r\n console.log(resources);\r\n console.log(pageList);*/\n });\n }, []);\n\n function goPrev() {\n renditionState.prev();\n }\n\n function goNext() {\n renditionState.next();\n }\n\n return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n id: \"book-reader-wrapper\"\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n id: \"prev\",\n className: \"arrow\",\n onClick: goPrev\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"span\", {\n className: \"glyphicon glyphicon-chevron-left\"\n })), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n id: \"book-container\"\n }), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n id: \"next\",\n className: \"arrow\",\n onClick: goNext\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"span\", {\n className: \"glyphicon glyphicon-chevron-right\"\n })));\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (BookReaderWrapper);\n\n//# sourceURL=webpack:///./app/book-reader.js?");
/***/ }),
/***/ "./app/product-media-slider.js":
/*!*************************************!*\
!*** ./app/product-media-slider.js ***!
\*************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-dom */ \"./node_modules/react-dom/index.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var react_device_detect__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-device-detect */ \"./node_modules/react-device-detect/dist/index.js\");\n/* harmony import */ var react_device_detect__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_device_detect__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _video_player__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./video-player */ \"./app/video-player.js\");\n/* harmony import */ var _book_reader__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./book-reader */ \"./app/book-reader.js\");\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance\"); }\n\nfunction _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction _iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\n\n\n\n\n\n\nfunction ProductMediaSlider() {\n /* Component */\n var _useState = Object(react__WEBPACK_IMPORTED_MODULE_0__[\"useState\"])(window.product),\n _useState2 = _slicedToArray(_useState, 2),\n product = _useState2[0],\n setProduct = _useState2[1];\n\n var galleryArray = [];\n if (window.galleryPicturesJson) window.galleryPicturesJson.forEach(function (gp, index) {\n galleryArray.push({\n url: gp,\n type: 'image'\n });\n });else galleryArray = [{\n url: product.image_small,\n type: 'image'\n }];\n if (product.embed_code !== null && product.embed_code.length > 0) galleryArray = [{\n url: product.embed_code,\n type: 'embed'\n }].concat(_toConsumableArray(galleryArray));\n\n if (window.filesJson) {\n window.filesJson.forEach(function (f, index) {\n if (f.type.indexOf('video') > -1 || f.type.indexOf('audio') > -1 || f.type.indexOf('epub') > -1) {\n var type;\n if (f.type.indexOf('video') > -1 || f.type.indexOf('audio') > -1) type = f.type.split('/')[0];else if (f.type.indexOf('epub') > -1) type = \"book\";\n var url_preview, url_thumb;\n if (f.url_thumb) url_thumb = f.url_thumb.replace(/%2F/g, '/').replace(/%3A/g, ':');\n if (f.url_preview) url_preview = f.url_preview.replace(/%2F/g, '/').replace(/%3A/g, ':');\n var gItem = {\n url: f.url.replace(/%2F/g, '/').replace(/%3A/g, ':'),\n collection_id: f.collection_id,\n type: type,\n file_id: f.id,\n title: f.title,\n url_thumb: url_thumb,\n url_preview: url_preview\n };\n galleryArray = [gItem].concat(_toConsumableArray(galleryArray));\n }\n });\n }\n\n var _useState3 = Object(react__WEBPACK_IMPORTED_MODULE_0__[\"useState\"])(galleryArray),\n _useState4 = _slicedToArray(_useState3, 2),\n gallery = _useState4[0],\n setGallery = _useState4[1];\n\n var _useState5 = Object(react__WEBPACK_IMPORTED_MODULE_0__[\"useState\"])(gallery.length > 1 ? false : true),\n _useState6 = _slicedToArray(_useState5, 2),\n disableGallery = _useState6[0],\n setDisableGallery = _useState6[1];\n\n var parentContainerElement = document.getElementById('product-title-div');\n\n var _useState7 = Object(react__WEBPACK_IMPORTED_MODULE_0__[\"useState\"])(parentContainerElement.offsetWidth),\n _useState8 = _slicedToArray(_useState7, 2),\n containerWidth = _useState8[0],\n setContainerWidth = _useState8[1];\n\n var _useState9 = Object(react__WEBPACK_IMPORTED_MODULE_0__[\"useState\"])(0),\n _useState10 = _slicedToArray(_useState9, 2),\n currentSlide = _useState10[0],\n setCurrentSlide = _useState10[1];\n\n var _useState11 = Object(react__WEBPACK_IMPORTED_MODULE_0__[\"useState\"])(360),\n _useState12 = _slicedToArray(_useState11, 2),\n sliderHeight = _useState12[0],\n setSliderHeight = _useState12[1];\n\n var _useState13 = Object(react__WEBPACK_IMPORTED_MODULE_0__[\"useState\"])(false),\n _useState14 = _slicedToArray(_useState13, 2),\n cinemaMode = _useState14[0],\n setCinemaMode = _useState14[1];\n\n var _useState15 = Object(react__WEBPACK_IMPORTED_MODULE_0__[\"useState\"])(false),\n _useState16 = _slicedToArray(_useState15, 2),\n isFullScreen = _useState16[0],\n setIsFullScreen = _useState16[1];\n\n var _useState17 = Object(react__WEBPACK_IMPORTED_MODULE_0__[\"useState\"])(false),\n _useState18 = _slicedToArray(_useState17, 2),\n showPlaylist = _useState18[0],\n setShowPlaylist = _useState18[1];\n\n var _useState19 = Object(react__WEBPACK_IMPORTED_MODULE_0__[\"useState\"])(react_device_detect__WEBPACK_IMPORTED_MODULE_2__[\"isMobile\"] === true ? true : false),\n _useState20 = _slicedToArray(_useState19, 2),\n showSliderArrows = _useState20[0],\n setShowSliderArrows = _useState20[1];\n\n var _useState21 = Object(react__WEBPACK_IMPORTED_MODULE_0__[\"useState\"])(true),\n _useState22 = _slicedToArray(_useState21, 2),\n sliderFadeControlsMode = _useState22[0],\n setSliderFadeControlsMode = _useState22[1];\n\n var sliderFadeControlTimeOut; // use effects\n\n react__WEBPACK_IMPORTED_MODULE_0___default.a.useEffect(function () {\n initProductMediaSlider(currentSlide);\n }, [currentSlide]);\n react__WEBPACK_IMPORTED_MODULE_0___default.a.useEffect(function (event) {\n updateDimensions(event, currentSlide);\n }, [currentSlide, cinemaMode]);\n react__WEBPACK_IMPORTED_MODULE_0___default.a.useEffect(function () {\n handleMouseMovementEventListener(showPlaylist, isFullScreen);\n }, [showPlaylist, isFullScreen]); // init product media slider\n\n function initProductMediaSlider(currentSlide) {\n window.addEventListener(\"resize\", function (event) {\n updateDimensions(event, currentSlide);\n });\n window.addEventListener(\"orientationchange\", function (event) {\n updateDimensions(event, currentSlide);\n });\n } // handle mouse movement event listener\n\n\n function handleMouseMovementEventListener(showPlaylist, isFullScreen) {\n window.removeEventListener(\"mousemove\", function (event) {\n onMouseMovement(event, showPlaylist, isFullScreen);\n });\n window.removeEventListener(\"mousedown\", function (event) {\n onMouseMovement(event, showPlaylist, isFullScreen);\n });\n window.addEventListener(\"mousemove\", function (event) {\n onMouseMovement(event, showPlaylist, isFullScreen);\n });\n window.addEventListener(\"mousedown\", function (event) {\n onMouseMovement(event, showPlaylist, isFullScreen);\n });\n } // update dimensions\n\n\n function updateDimensions() {\n var newContainerWidth = parentContainerElement.offsetWidth;\n setContainerWidth(newContainerWidth);\n document.getElementById('product-page-content').removeEventListener(\"DOMNodeRemoved\", updateDimensions);\n document.getElementById('product-page-content').removeEventListener(\"DOMNodeInserted\", updateDimensions); // if (cinemaMode === false) setSliderHeight(360)\n } // on mouse movement\n\n\n function onMouseMovement(event, showPlaylist, isFullScreen) {\n var mediaSliderOffest = $('#media-slider').offset();\n var mediaSliderLeft = mediaSliderOffest.left;\n var mediaSliderRight = mediaSliderLeft + $('#media-slider').width();\n var mediaSliderTop = mediaSliderOffest.top - window.pageYOffset;\n var mediaSliderBottom = mediaSliderTop + $('#media-slider').height();\n if (showPlaylist) mediaSliderBottom += 110;else mediaSliderBottom += 30;\n var mouseIn = false;\n\n if (event.clientX > mediaSliderLeft && event.clientX < mediaSliderRight && event.clientY > mediaSliderTop && event.clientY < mediaSliderBottom) {\n mouseIn = true;\n }\n\n if (isFullScreen) mouseIn = true;\n\n if (mouseIn) {\n setSliderFadeControlsMode(false);\n clearTimeout(sliderFadeControlTimeOut);\n sliderFadeControlTimeOut = setTimeout(function () {\n setSliderFadeControlsMode(true);\n }, 2000);\n } else {\n setSliderFadeControlsMode(true);\n clearTimeout(sliderFadeControlTimeOut);\n }\n } // toggle cinema mode\n\n\n function toggleCinemaMode() {\n document.getElementById('product-page-content').addEventListener(\"DOMNodeRemoved\", updateDimensions);\n document.getElementById('product-page-content').addEventListener(\"DOMNodeInserted\", updateDimensions);\n var newCinemaMode = cinemaMode === true ? false : true;\n var targetParentElement = cinemaMode === true ? $('#product-main') : $('#product-page-content');\n var targetChildPrependedElement = cinemaMode === true ? $('#product-title-div') : $('#product-media-slider-container');\n $('#product-main-img-container').prependTo(targetParentElement);\n $(targetChildPrependedElement).prependTo('#product-main-img');\n $(\"#product-media-slider-container\").toggleClass(\"imgsmall\");\n $(\"#product-media-slider-container\").toggleClass(\"imgfull\");\n setCinemaMode(newCinemaMode);\n } // toggle show playlist\n\n\n function toggleShowPlaylist() {\n var newShowPlaylistValue = showPlaylist === true ? false : true;\n setShowPlaylist(newShowPlaylistValue);\n } //handle full screen toggle\n\n\n function hanleFullScreenToggle(val) {\n setIsFullScreen(val);\n } // on finish slides render\n\n\n function onFinishedSlidesRender() {\n $(document).ready(function () {\n window.mySwiper = new Swiper('.swiper-container', {\n speed: 400,\n initialSlide: 0,\n observer: true,\n observeParents: true,\n preloadImages: true,\n updateOnImagesReady: true,\n pagination: '.swiper-pagination',\n paginationClickable: '.swiper-pagination',\n threshold: 50,\n onSlideChangeStart: function onSlideChangeStart(swiper) {\n setCurrentSlide(swiper.activeIndex);\n }\n });\n window.mySwiper.update(); // if (isMobile) setShowPlaylist(true)\n });\n } // on finished thumbs render\n\n\n function onfinishedThumbsRender() {\n $(document).ready(function () {\n var slidesPerView = Math.ceil(containerWidth / 200);\n if (react_device_detect__WEBPACK_IMPORTED_MODULE_2__[\"isMobile\"]) slidesPerView = 2;\n window.galleryThumbs = new Swiper('.gallery-thumbs', {\n slidesPerView: slidesPerView,\n initialSlide: currentSlide,\n spaceBetween: 10,\n freeMode: true,\n watchSlidesVisibility: true,\n watchSlidesProgress: true,\n activeIndex: currentSlide,\n scrollbar: '.swiper-scrollbar'\n });\n window.galleryThumbs.update();\n });\n } // on thumb item click\n\n\n function _onThumbItemClick(slideIndex) {\n window.mySwiper.slideTo(slideIndex);\n } // go next \n\n\n function goNext() {\n var nextSlide = window.mySwiper.activeIndex + 1;\n if (nextSlide > gallery.length - 1) nextSlide = 0;\n window.mySwiper.slideTo(nextSlide);\n } // go prev\n\n\n function goPrev() {\n var prevSlide = window.mySwiper.activeIndex - 1;\n if (prevSlide < 0) prevSlide = gallery.length - 1;\n window.mySwiper.slideTo(prevSlide);\n }\n /* Render */\n // media slider css class\n\n\n var mediaSliderCssClass = \"\";\n if (disableGallery === true) mediaSliderCssClass += \"disable-gallery \";\n if (cinemaMode === true) mediaSliderCssClass += \"cinema-mode \"; // if (showSliderArrows === false) mediaSliderCssClass += \"hide-arrows \";\n\n if (showPlaylist === false) mediaSliderCssClass += \"hide-playlist \";\n if (sliderFadeControlsMode === true) mediaSliderCssClass += \"fade-controls \";\n if (react_device_detect__WEBPACK_IMPORTED_MODULE_2__[\"isMobile\"] === true) mediaSliderCssClass += \"is-mobile \"; // slides display\n\n var slidesDisplay = gallery.map(function (s, index) {\n return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(SlideItem, {\n key: index,\n slideIndex: index,\n slide: s,\n currentSlide: currentSlide,\n containerWidth: containerWidth,\n sliderHeight: sliderHeight,\n cinemaMode: cinemaMode,\n gallery: gallery,\n onFinishedSlidesRender: onFinishedSlidesRender,\n onCinemaModeClick: toggleCinemaMode,\n onSetSliderHeight: function onSetSliderHeight(height) {\n return setSliderHeight(height);\n },\n onUpdateDimensions: updateDimensions,\n onFullScreenToggle: hanleFullScreenToggle\n });\n });\n var thumbnailNavigationDisplay;\n\n if (showPlaylist) {\n // thumbnail navigation\n var slidesThumbnailNavigationDisplay = gallery.map(function (g, index) {\n return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(ThumbNavigationItem, {\n key: index,\n slideIndex: index,\n currentSlide: currentSlide,\n gallery: gallery,\n item: g,\n onFinishedSlidesRender: onFinishedSlidesRender,\n containerWidth: containerWidth,\n onfinishedThumbsRender: onfinishedThumbsRender,\n onThumbItemClick: function onThumbItemClick(slideIndex) {\n return _onThumbItemClick(slideIndex);\n }\n });\n });\n thumbnailNavigationDisplay = react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n id: \"slide-navigation\",\n className: \"swiper-container gallery-thumbs\"\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n className: \"thumbnail-navigation swiper-wrapper\"\n }, slidesThumbnailNavigationDisplay), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n className: \"swiper-scrollbar\"\n }));\n }\n\n return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"main\", {\n id: \"media-slider\",\n style: {\n height: sliderHeight\n },\n className: mediaSliderCssClass\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n id: \"slider-container\",\n className: \"swiper-container\"\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n className: \"swiper-wrapper\"\n }, slidesDisplay), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n className: \"swiper-pagination\"\n }), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"a\", {\n className: \"carousel-control carousel-control-left left\",\n onClick: goPrev\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"span\", {\n className: \"visible-container\"\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"span\", {\n className: \"glyphicon glyphicon-chevron-left\"\n }))), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"a\", {\n className: \"carousel-control carousel-control-right right\",\n onClick: goNext\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"span\", {\n className: \"visible-container\"\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"span\", {\n className: \"glyphicon glyphicon-chevron-right\"\n })))), thumbnailNavigationDisplay, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"a\", {\n className: \"slider-navigation-toggle\",\n onClick: toggleShowPlaylist,\n style: {\n top: sliderHeight - 75\n }\n }));\n}\n\nfunction SlideItem(props) {\n var _useState23 = Object(react__WEBPACK_IMPORTED_MODULE_0__[\"useState\"])(),\n _useState24 = _slicedToArray(_useState23, 2),\n mediaStyle = _useState24[0],\n setMediaStyle = _useState24[1];\n\n react__WEBPACK_IMPORTED_MODULE_0___default.a.useEffect(function () {\n if (props.gallery && props.gallery.length === props.slideIndex + 1) {\n props.onFinishedSlidesRender();\n }\n }, [props.gallery]);\n react__WEBPACK_IMPORTED_MODULE_0___default.a.useEffect(function () {\n getSlideContentHeight(props.cinemaMode);\n }, [props.currentSlide, props.cinemaMode]);\n\n function getSlideContentHeight(cinemaMode) {\n if (props.currentSlide === props.slideIndex) {\n if (props.slide.type === \"image\") {\n var imageEl = document.getElementById('slide-img-' + props.slideIndex);\n\n if (cinemaMode === true) {\n var imageHeight = imageEl.naturalHeight;\n\n if (imageEl.naturalWidth > window.innerWidth) {\n var dimensionsPercentage = window.innerWidth / imageEl.naturalWidth;\n imageHeight = imageEl.naturalHeight * dimensionsPercentage;\n }\n\n setMediaStyle({\n height: imageHeight\n });\n props.onSetSliderHeight(imageHeight);\n } else if (imageEl.offsetHeight > 0) {\n setMediaStyle({\n marginTop: (props.sliderHeight - imageEl.offsetHeight) / 2\n });\n props.onSetSliderHeight(360);\n }\n } else if (props.slide.type === \"embed\") {\n if (cinemaMode === true) props.onSetSliderHeight(315);\n } else if (props.slide.type === \"video\" || props.slide.type === \"audio\" || props.slide.type === \"book\") {\n if (cinemaMode === true) {\n props.onSetSliderHeight(screen.height * 0.7);\n } else {\n props.onSetSliderHeight(360);\n }\n }\n }\n }\n\n function onCinemaModeClick() {\n var cinemaMode = props.cinemaMode === true ? false : true;\n getSlideContentHeight(cinemaMode);\n props.onCinemaModeClick();\n }\n\n var slideContentDisplay;\n\n if (props.slide.type === \"embed\") {\n slideContentDisplay = react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n dangerouslySetInnerHTML: {\n __html: props.slide.url\n }\n });\n } else if (props.slide.type === \"image\") {\n slideContentDisplay = react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"img\", {\n onClick: props.onCinemaModeClick,\n id: \"slide-img-\" + props.slideIndex,\n src: props.slide.url,\n style: mediaStyle\n });\n } else if (props.slide.type === \"video\") {\n slideContentDisplay = react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_video_player__WEBPACK_IMPORTED_MODULE_3__[\"default\"], {\n height: props.sliderHeight,\n width: props.containerWidth,\n cinemaMode: props.cinemaMode,\n onCinemaModeClick: onCinemaModeClick,\n slide: props.slide,\n playVideo: props.currentSlide === props.slideIndex,\n onUpdateDimensions: props.onUpdateDimensions,\n onFullScreenToggle: props.onFullScreenToggle\n });\n } else if (props.slide.type === \"book\") {\n slideContentDisplay = react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_book_reader__WEBPACK_IMPORTED_MODULE_4__[\"default\"], {\n height: props.sliderHeight,\n width: props.containerWidth,\n onCinemaModeClick: props.onCinemaModeClick,\n slide: props.slide,\n cinemaMode: props.cinemaMode,\n playVideo: props.currentSlide === props.slideIndex,\n onUpdateDimensions: props.onUpdateDimensions,\n onFullScreenToggle: props.onFullScreenToggle\n });\n }\n\n return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n id: \"slide-\" + props.slideIndex,\n className: props.currentSlide === props.slideIndex ? \"active slide-item swiper-slide \" + props.slide.type : \"slide-item swiper-slide \" + props.slide.type,\n style: {\n width: props.containerWidth,\n height: props.sliderHeight\n }\n }, slideContentDisplay);\n}\n\nfunction ThumbNavigationItem(props) {\n react__WEBPACK_IMPORTED_MODULE_0___default.a.useEffect(function () {\n if (props.gallery && props.gallery.length === props.slideIndex + 1) {\n props.onfinishedThumbsRender();\n }\n }, [props.gallery]);\n react__WEBPACK_IMPORTED_MODULE_0___default.a.useEffect(function () {\n if (window.galleryThumbs) {\n window.galleryThumbs.slideTo(props.currentSlide);\n }\n }, [props.currentSlide]);\n var previewImageContainer;\n\n if (props.item.type === \"book\") {\n previewImageContainer = react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n className: \"pages preview-image\"\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n className: \"page\"\n }, props.item.title), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n className: \"page\"\n }));\n } else {\n var bgImage;\n\n if (props.item.type === \"image\") {\n bgImage = props.item.url.split('/img')[0] + \"/cache/120x80-1/img\" + props.item.url.split('/img')[1];\n } else if (props.item.type === \"video\") {\n bgImage = props.item.url_thumb;\n }\n\n previewImageContainer = react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n className: \"preview-image\",\n style: {\n \"backgroundImage\": \"url(\" + bgImage + \")\"\n }\n });\n }\n\n return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n className: props.currentSlide === props.slideIndex ? \" swiper-slide active \" + props.item.type : \" swiper-slide \" + props.item.type,\n onClick: function onClick() {\n return props.onThumbItemClick(props.slideIndex);\n },\n onTouchEnd: function onTouchEnd() {\n return props.onThumbItemClick(props.slideIndex);\n }\n }, previewImageContainer);\n}\n\nvar rootElement = document.getElementById(\"product-media-slider-container\");\nreact_dom__WEBPACK_IMPORTED_MODULE_1___default.a.render(react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(ProductMediaSlider, null), rootElement);\n\n//# sourceURL=webpack:///./app/product-media-slider.js?");
/***/ }),
/***/ "./app/video-player.js":
/*!*****************************!*\
!*** ./app/video-player.js ***!
\*****************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
-eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var video_react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! video-react */ \"./node_modules/video-react/lib/index.js\");\n/* harmony import */ var video_react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(video_react__WEBPACK_IMPORTED_MODULE_1__);\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n\n\n\nvar VideoPlayerWrapper =\n/*#__PURE__*/\nfunction (_React$Component) {\n _inherits(VideoPlayerWrapper, _React$Component);\n\n function VideoPlayerWrapper(props, context) {\n var _this;\n\n _classCallCheck(this, VideoPlayerWrapper);\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(VideoPlayerWrapper).call(this, props, context));\n var hostLocation = window.location.href;\n if (!hostLocation.endsWith('/')) hostLocation += \"/\";\n _this.state = {\n source: _this.props.slide.url_preview,\n width: _this.props.width,\n videoStarted: false,\n videoStopped: false,\n videoStartUrl: hostLocation + \"startvideoajax?collection_id=\" + _this.props.slide.collection_id + \"&file_id=\" + _this.props.slide.file_id,\n videoStopUrl: hostLocation + \"stopvideoajax?media_view_id=\"\n };\n _this.onCinemaModeClick = _this.onCinemaModeClick.bind(_assertThisInitialized(_this));\n _this.play = _this.play.bind(_assertThisInitialized(_this));\n _this.pause = _this.pause.bind(_assertThisInitialized(_this));\n return _this;\n }\n\n _createClass(VideoPlayerWrapper, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.refs.player.subscribeToStateChange(this.handleStateChange.bind(this));\n }\n }, {\n key: \"handleStateChange\",\n value: function handleStateChange(state, prevState) {\n this.setState({\n player: state\n }, function () {\n var _this2 = this;\n\n if (this.state.player) {\n if (_typeof(this.state.player.videoWidth) !== undefined) {\n setTimeout(function () {\n _this2.setState({\n videoRenderMask: false\n });\n }, 1000);\n }\n\n if (this.state.player.hasStarted && this.state.videoStarted === false) {\n this.setState({\n videoStarted: true\n }, function () {\n var self = this;\n $.ajax({\n url: this.state.videoStartUrl\n }).done(function (res) {\n self.setState({\n videoStopUrl: self.state.videoStopUrl + res.MediaViewId\n });\n });\n });\n }\n\n if (this.state.player.paused && this.state.videoStarted === true && this.state.videoStopped === false) {\n this.setState({\n videoStopped: true\n }, function () {\n $.ajax({\n url: this.state.videoStopUrl\n }).done(function (res) {// console.log(res)\n });\n });\n }\n\n if (state.isFullscreen === false && prevState.isFullscreen === true) this.props.onUpdateDimensions();\n if (state.isFullscreen !== prevState.isFullscreen) this.props.onFullScreenToggle(state.isFullscreen);\n }\n });\n }\n }, {\n key: \"shouldComponentUpdate\",\n value: function shouldComponentUpdate(nextProps, nextState) {\n if (nextProps.playVideo === false) this.pause();\n return true;\n }\n }, {\n key: \"onCinemaModeClick\",\n value: function onCinemaModeClick() {\n this.props.onCinemaModeClick();\n }\n }, {\n key: \"play\",\n value: function play() {\n this.refs.player.play();\n }\n }, {\n key: \"pause\",\n value: function pause() {\n this.refs.player.pause();\n }\n }, {\n key: \"render\",\n value: function render() {\n var videoPlayerDisplay;\n\n if (this.state.source) {\n var width = this.props.width;\n\n if (this.props.cinemaMode === false) {\n if (this.state.player) {\n var dimensionsRatio = this.props.height / this.state.player.videoHeight;\n width = this.state.player.videoWidth * dimensionsRatio;\n }\n }\n\n videoPlayerDisplay = react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(video_react__WEBPACK_IMPORTED_MODULE_1__[\"Player\"], {\n ref: \"player\",\n fluid: false,\n height: this.props.height,\n width: width,\n preload: \"auto\",\n src: this.state.source\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(video_react__WEBPACK_IMPORTED_MODULE_1__[\"BigPlayButton\"], {\n position: \"center\"\n }), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(video_react__WEBPACK_IMPORTED_MODULE_1__[\"LoadingSpinner\"], null), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(video_react__WEBPACK_IMPORTED_MODULE_1__[\"ControlBar\"], {\n className: \"custom-video-player\"\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(video_react__WEBPACK_IMPORTED_MODULE_1__[\"CurrentTimeDisplay\"], {\n order: 4.1\n }), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(video_react__WEBPACK_IMPORTED_MODULE_1__[\"DurationDisplay\"], {\n order: 7.1\n }), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(video_react__WEBPACK_IMPORTED_MODULE_1__[\"VolumeMenuButton\"], {\n vertical: true,\n order: 7.2\n }), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"a\", {\n className: \"cinema-mode-button\",\n onClick: this.onCinemaModeClick,\n order: 7.3\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"span\", null))));\n }\n\n var videoRenderMask = react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n className: \"video-render-mask\"\n });\n\n if (this.state.videoRenderMask === false) {\n videoRenderMask = '';\n }\n\n return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n className: \"react-player-container\"\n }, videoRenderMask, videoPlayerDisplay);\n }\n }]);\n\n return VideoPlayerWrapper;\n}(react__WEBPACK_IMPORTED_MODULE_0___default.a.Component);\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (VideoPlayerWrapper);\n\n//# sourceURL=webpack:///./app/video-player.js?");
+eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var video_react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! video-react */ \"./node_modules/video-react/lib/index.js\");\n/* harmony import */ var video_react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(video_react__WEBPACK_IMPORTED_MODULE_1__);\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\n\n\n\nvar VideoPlayerWrapper =\n/*#__PURE__*/\nfunction (_React$Component) {\n _inherits(VideoPlayerWrapper, _React$Component);\n\n function VideoPlayerWrapper(props, context) {\n var _this;\n\n _classCallCheck(this, VideoPlayerWrapper);\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(VideoPlayerWrapper).call(this, props, context));\n var hostLocation = window.location.href;\n if (!hostLocation.endsWith('/')) hostLocation += \"/\";\n _this.state = {\n source: _this.props.slide.url_preview,\n width: _this.props.width,\n videoStarted: false,\n videoStopped: false,\n videoStartUrl: hostLocation + \"startvideoajax?collection_id=\" + _this.props.slide.collection_id + \"&file_id=\" + _this.props.slide.file_id,\n videoStopUrl: hostLocation + \"stopvideoajax?media_view_id=\"\n };\n _this.onCinemaModeClick = _this.onCinemaModeClick.bind(_assertThisInitialized(_this));\n _this.play = _this.play.bind(_assertThisInitialized(_this));\n _this.pause = _this.pause.bind(_assertThisInitialized(_this));\n return _this;\n }\n\n _createClass(VideoPlayerWrapper, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.refs.player.subscribeToStateChange(this.handleStateChange.bind(this));\n }\n }, {\n key: \"handleStateChange\",\n value: function handleStateChange(state, prevState) {\n this.setState({\n player: state\n }, function () {\n var _this2 = this;\n\n if (this.state.player) {\n if (_typeof(this.state.player.videoWidth) !== undefined) {\n setTimeout(function () {\n _this2.setState({\n videoRenderMask: false\n });\n }, 1000);\n }\n\n if (this.state.player.hasStarted && this.state.videoStarted === false) {\n this.setState({\n videoStarted: true\n }, function () {\n var self = this;\n $.ajax({\n url: this.state.videoStartUrl\n }).done(function (res) {\n self.setState({\n videoStopUrl: self.state.videoStopUrl + res.MediaViewId\n });\n });\n });\n }\n\n if (this.state.player.paused && this.state.videoStarted === true && this.state.videoStopped === false) {\n this.setState({\n videoStopped: true\n }, function () {\n $.ajax({\n url: this.state.videoStopUrl\n }).done(function (res) {// console.log(res)\n });\n });\n }\n\n if (state.isFullscreen === false && prevState.isFullscreen === true) this.props.onUpdateDimensions();\n if (state.isFullscreen !== prevState.isFullscreen) this.props.onFullScreenToggle(state.isFullscreen);\n }\n });\n }\n }, {\n key: \"shouldComponentUpdate\",\n value: function shouldComponentUpdate(nextProps, nextState) {\n if (nextProps.playVideo === false) this.pause();\n return true;\n }\n }, {\n key: \"onCinemaModeClick\",\n value: function onCinemaModeClick() {\n this.props.onCinemaModeClick();\n }\n }, {\n key: \"play\",\n value: function play() {\n this.refs.player.play();\n }\n }, {\n key: \"pause\",\n value: function pause() {\n this.refs.player.pause();\n }\n }, {\n key: \"render\",\n value: function render() {\n var videoPlayerDisplay;\n\n if (this.state.source) {\n var width = this.props.width;\n\n if (this.props.cinemaMode === false) {\n if (this.state.player) {\n var dimensionsRatio = this.props.height / this.state.player.videoHeight;\n if (this.state.player.videoWidth * dimensionsRatio < this.props.width) width = this.state.player.videoWidth * dimensionsRatio;\n }\n }\n\n videoPlayerDisplay = react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(video_react__WEBPACK_IMPORTED_MODULE_1__[\"Player\"], {\n ref: \"player\",\n fluid: false,\n height: this.props.height,\n width: width,\n preload: \"auto\",\n src: this.state.source\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(video_react__WEBPACK_IMPORTED_MODULE_1__[\"BigPlayButton\"], {\n position: \"center\"\n }), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(video_react__WEBPACK_IMPORTED_MODULE_1__[\"LoadingSpinner\"], null), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(video_react__WEBPACK_IMPORTED_MODULE_1__[\"ControlBar\"], {\n className: \"custom-video-player\"\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(video_react__WEBPACK_IMPORTED_MODULE_1__[\"CurrentTimeDisplay\"], {\n order: 4.1\n }), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(video_react__WEBPACK_IMPORTED_MODULE_1__[\"DurationDisplay\"], {\n order: 7.1\n }), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(video_react__WEBPACK_IMPORTED_MODULE_1__[\"VolumeMenuButton\"], {\n vertical: true,\n order: 7.2\n }), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"a\", {\n className: \"cinema-mode-button\",\n onClick: this.onCinemaModeClick,\n order: 7.3\n }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"span\", null))));\n }\n\n var videoRenderMask = react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n className: \"video-render-mask\"\n });\n\n if (this.state.videoRenderMask === false) {\n videoRenderMask = '';\n }\n\n return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(\"div\", {\n className: \"react-player-container\"\n }, videoRenderMask, videoPlayerDisplay);\n }\n }]);\n\n return VideoPlayerWrapper;\n}(react__WEBPACK_IMPORTED_MODULE_0___default.a.Component);\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (VideoPlayerWrapper);\n\n//# sourceURL=webpack:///./app/video-player.js?");
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js":
/*!******************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js ***!
\******************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
eval("function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n }\n}\n\nmodule.exports = _arrayWithoutHoles;\n\n//# sourceURL=webpack:///./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js?");
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/assertThisInitialized.js":
/*!**********************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/assertThisInitialized.js ***!
\**********************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
eval("function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nmodule.exports = _assertThisInitialized;\n\n//# sourceURL=webpack:///./node_modules/@babel/runtime/helpers/assertThisInitialized.js?");
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/classCallCheck.js":
/*!***************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/classCallCheck.js ***!
\***************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
eval("function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nmodule.exports = _classCallCheck;\n\n//# sourceURL=webpack:///./node_modules/@babel/runtime/helpers/classCallCheck.js?");
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/createClass.js":
/*!************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/createClass.js ***!
\************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
eval("function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nmodule.exports = _createClass;\n\n//# sourceURL=webpack:///./node_modules/@babel/runtime/helpers/createClass.js?");
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/defineProperty.js":
/*!***************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/defineProperty.js ***!
\***************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
eval("function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nmodule.exports = _defineProperty;\n\n//# sourceURL=webpack:///./node_modules/@babel/runtime/helpers/defineProperty.js?");
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/extends.js":
/*!********************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/extends.js ***!
\********************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
eval("function _extends() {\n module.exports = _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nmodule.exports = _extends;\n\n//# sourceURL=webpack:///./node_modules/@babel/runtime/helpers/extends.js?");
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/getPrototypeOf.js":
/*!***************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/getPrototypeOf.js ***!
\***************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
eval("function _getPrototypeOf(o) {\n module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nmodule.exports = _getPrototypeOf;\n\n//# sourceURL=webpack:///./node_modules/@babel/runtime/helpers/getPrototypeOf.js?");
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/inherits.js":
/*!*********************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/inherits.js ***!
\*********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
eval("var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf */ \"./node_modules/@babel/runtime/helpers/setPrototypeOf.js\");\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}\n\nmodule.exports = _inherits;\n\n//# sourceURL=webpack:///./node_modules/@babel/runtime/helpers/inherits.js?");
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/interopRequireDefault.js":
/*!**********************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
\**********************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
eval("function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\n\nmodule.exports = _interopRequireDefault;\n\n//# sourceURL=webpack:///./node_modules/@babel/runtime/helpers/interopRequireDefault.js?");
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/interopRequireWildcard.js":
/*!***********************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/interopRequireWildcard.js ***!
\***********************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
eval("function _interopRequireWildcard(obj) {\n if (obj && obj.__esModule) {\n return obj;\n } else {\n var newObj = {};\n\n if (obj != null) {\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {};\n\n if (desc.get || desc.set) {\n Object.defineProperty(newObj, key, desc);\n } else {\n newObj[key] = obj[key];\n }\n }\n }\n }\n\n newObj[\"default\"] = obj;\n return newObj;\n }\n}\n\nmodule.exports = _interopRequireWildcard;\n\n//# sourceURL=webpack:///./node_modules/@babel/runtime/helpers/interopRequireWildcard.js?");
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/iterableToArray.js":
/*!****************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/iterableToArray.js ***!
\****************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
eval("function _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}\n\nmodule.exports = _iterableToArray;\n\n//# sourceURL=webpack:///./node_modules/@babel/runtime/helpers/iterableToArray.js?");
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/nonIterableSpread.js":
/*!******************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/nonIterableSpread.js ***!
\******************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
eval("function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n\nmodule.exports = _nonIterableSpread;\n\n//# sourceURL=webpack:///./node_modules/@babel/runtime/helpers/nonIterableSpread.js?");
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/objectSpread.js":
/*!*************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/objectSpread.js ***!
\*************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
eval("var defineProperty = __webpack_require__(/*! ./defineProperty */ \"./node_modules/@babel/runtime/helpers/defineProperty.js\");\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n var ownKeys = Object.keys(source);\n\n if (typeof Object.getOwnPropertySymbols === 'function') {\n ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {\n return Object.getOwnPropertyDescriptor(source, sym).enumerable;\n }));\n }\n\n ownKeys.forEach(function (key) {\n defineProperty(target, key, source[key]);\n });\n }\n\n return target;\n}\n\nmodule.exports = _objectSpread;\n\n//# sourceURL=webpack:///./node_modules/@babel/runtime/helpers/objectSpread.js?");
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/objectWithoutProperties.js":
/*!************************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/objectWithoutProperties.js ***!
\************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
eval("var objectWithoutPropertiesLoose = __webpack_require__(/*! ./objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\");\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nmodule.exports = _objectWithoutProperties;\n\n//# sourceURL=webpack:///./node_modules/@babel/runtime/helpers/objectWithoutProperties.js?");
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js":
/*!*****************************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js ***!
\*****************************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
eval("function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nmodule.exports = _objectWithoutPropertiesLoose;\n\n//# sourceURL=webpack:///./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js?");
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js":
/*!**************************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js ***!
\**************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
eval("var _typeof = __webpack_require__(/*! ../helpers/typeof */ \"./node_modules/@babel/runtime/helpers/typeof.js\");\n\nvar assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized */ \"./node_modules/@babel/runtime/helpers/assertThisInitialized.js\");\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return assertThisInitialized(self);\n}\n\nmodule.exports = _possibleConstructorReturn;\n\n//# sourceURL=webpack:///./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js?");
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/setPrototypeOf.js":
/*!***************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/setPrototypeOf.js ***!
\***************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
eval("function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nmodule.exports = _setPrototypeOf;\n\n//# sourceURL=webpack:///./node_modules/@babel/runtime/helpers/setPrototypeOf.js?");
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/toConsumableArray.js":
/*!******************************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/toConsumableArray.js ***!
\******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
eval("var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles */ \"./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js\");\n\nvar iterableToArray = __webpack_require__(/*! ./iterableToArray */ \"./node_modules/@babel/runtime/helpers/iterableToArray.js\");\n\nvar nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread */ \"./node_modules/@babel/runtime/helpers/nonIterableSpread.js\");\n\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || nonIterableSpread();\n}\n\nmodule.exports = _toConsumableArray;\n\n//# sourceURL=webpack:///./node_modules/@babel/runtime/helpers/toConsumableArray.js?");
/***/ }),
/***/ "./node_modules/@babel/runtime/helpers/typeof.js":
/*!*******************************************************!*\
!*** ./node_modules/@babel/runtime/helpers/typeof.js ***!
\*******************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
eval("function _typeof2(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof2 = function _typeof2(obj) { return typeof obj; }; } else { _typeof2 = function _typeof2(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof2(obj); }\n\nfunction _typeof(obj) {\n if (typeof Symbol === \"function\" && _typeof2(Symbol.iterator) === \"symbol\") {\n module.exports = _typeof = function _typeof(obj) {\n return _typeof2(obj);\n };\n } else {\n module.exports = _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : _typeof2(obj);\n };\n }\n\n return _typeof(obj);\n}\n\nmodule.exports = _typeof;\n\n//# sourceURL=webpack:///./node_modules/@babel/runtime/helpers/typeof.js?");
/***/ }),
/***/ "./node_modules/classnames/index.js":
/*!******************************************!*\
!*** ./node_modules/classnames/index.js ***!
\******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
eval("var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!\n Copyright (c) 2017 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg) && arg.length) {\n\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\tif (inner) {\n\t\t\t\t\tclasses.push(inner);\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif ( true && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (true) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\t!(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () {\n\t\t\treturn classNames;\n\t\t}).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\t} else {}\n}());\n\n\n//# sourceURL=webpack:///./node_modules/classnames/index.js?");
/***/ }),
/***/ "./node_modules/object-assign/index.js":
/*!*********************************************!*\
!*** ./node_modules/object-assign/index.js ***!
\*********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
eval("/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n\n\n//# sourceURL=webpack:///./node_modules/object-assign/index.js?");
/***/ }),
/***/ "./node_modules/prop-types/checkPropTypes.js":
/*!***************************************************!*\
!*** ./node_modules/prop-types/checkPropTypes.js ***!
\***************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
eval("/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\n\nvar printWarning = function() {};\n\nif (true) {\n var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ \"./node_modules/prop-types/lib/ReactPropTypesSecret.js\");\n var loggedTypeFailures = {};\n var has = Function.call.bind(Object.prototype.hasOwnProperty);\n\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n if (true) {\n for (var typeSpecName in typeSpecs) {\n if (has(typeSpecs, typeSpecName)) {\n var error;\n // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n var err = Error(\n (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.'\n );\n err.name = 'Invariant Violation';\n throw err;\n }\n error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n } catch (ex) {\n error = ex;\n }\n if (error && !(error instanceof Error)) {\n printWarning(\n (componentName || 'React class') + ': type specification of ' +\n location + ' `' + typeSpecName + '` is invalid; the type checker ' +\n 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +\n 'You may have forgotten to pass an argument to the type checker ' +\n 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +\n 'shape all require an argument).'\n );\n }\n if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error.message] = true;\n\n var stack = getStack ? getStack() : '';\n\n printWarning(\n 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')\n );\n }\n }\n }\n }\n}\n\n/**\n * Resets warning cache when testing.\n *\n * @private\n */\ncheckPropTypes.resetWarningCache = function() {\n if (true) {\n loggedTypeFailures = {};\n }\n}\n\nmodule.exports = checkPropTypes;\n\n\n//# sourceURL=webpack:///./node_modules/prop-types/checkPropTypes.js?");
/***/ }),
/***/ "./node_modules/prop-types/factoryWithTypeCheckers.js":
/*!************************************************************!*\
!*** ./node_modules/prop-types/factoryWithTypeCheckers.js ***!
\************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
eval("/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\n\nvar ReactIs = __webpack_require__(/*! react-is */ \"./node_modules/react-is/index.js\");\nvar assign = __webpack_require__(/*! object-assign */ \"./node_modules/object-assign/index.js\");\n\nvar ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ \"./node_modules/prop-types/lib/ReactPropTypesSecret.js\");\nvar checkPropTypes = __webpack_require__(/*! ./checkPropTypes */ \"./node_modules/prop-types/checkPropTypes.js\");\n\nvar has = Function.call.bind(Object.prototype.hasOwnProperty);\nvar printWarning = function() {};\n\nif (true) {\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n}\n\nfunction emptyFunctionThatReturnsNull() {\n return null;\n}\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n /* global Symbol */\n var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n /**\n * Returns the iterator method function contained on the iterable object.\n *\n * Be sure to invoke the function with the iterable as context:\n *\n * var iteratorFn = getIteratorFn(myIterable);\n * if (iteratorFn) {\n * var iterator = iteratorFn.call(myIterable);\n * ...\n * }\n *\n * @param {?object} maybeIterable\n * @return {?function}\n */\n function getIteratorFn(maybeIterable) {\n var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n if (typeof iteratorFn === 'function') {\n return iteratorFn;\n }\n }\n\n /**\n * Collection of methods that allow declaration and validation of props that are\n * supplied to React components. Example usage:\n *\n * var Props = require('ReactPropTypes');\n * var MyArticle = React.createClass({\n * propTypes: {\n * // An optional string prop named \"description\".\n * description: Props.string,\n *\n * // A required enum prop named \"category\".\n * category: Props.oneOf(['News','Photos']).isRequired,\n *\n * // A prop named \"dialog\" that requires an instance of Dialog.\n * dialog: Props.instanceOf(Dialog).isRequired\n * },\n * render: function() { ... }\n * });\n *\n * A more formal specification of how these methods are used:\n *\n * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n * decl := ReactPropTypes.{type}(.isRequired)?\n *\n * Each and every declaration produces a function with the same signature. This\n * allows the creation of custom validation functions. For example:\n *\n * var MyLink = React.createClass({\n * propTypes: {\n * // An optional string or URI prop named \"href\".\n * href: function(props, propName, componentName) {\n * var propValue = props[propName];\n * if (propValue != null && typeof propValue !== 'string' &&\n * !(propValue instanceof URI)) {\n * return new Error(\n * 'Expected a string or an URI for ' + propName + ' in ' +\n * componentName\n * );\n * }\n * }\n * },\n * render: function() {...}\n * });\n *\n * @internal\n */\n\n var ANONYMOUS = '<>';\n\n // Important!\n // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n var ReactPropTypes = {\n array: createPrimitiveTypeChecker('array'),\n bool: createPrimitiveTypeChecker('boolean'),\n func: createPrimitiveTypeChecker('function'),\n number: createPrimitiveTypeChecker('number'),\n object: createPrimitiveTypeChecker('object'),\n string: createPrimitiveTypeChecker('string'),\n symbol: createPrimitiveTypeChecker('symbol'),\n\n any: createAnyTypeChecker(),\n arrayOf: createArrayOfTypeChecker,\n element: createElementTypeChecker(),\n elementType: createElementTypeTypeChecker(),\n instanceOf: createInstanceTypeChecker,\n node: createNodeChecker(),\n objectOf: createObjectOfTypeChecker,\n oneOf: createEnumTypeChecker,\n oneOfType: createUnionTypeChecker,\n shape: createShapeTypeChecker,\n exact: createStrictShapeTypeChecker,\n };\n\n /**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\n /*eslint-disable no-self-compare*/\n function is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n return x !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n }\n /*eslint-enable no-self-compare*/\n\n /**\n * We use an Error-like object for backward compatibility as people may call\n * PropTypes directly and inspect their output. However, we don't use real\n * Errors anymore. We don't inspect their stack anyway, and creating them\n * is prohibitively expensive if they are created too often, such as what\n * happens in oneOfType() for any type before the one that matched.\n */\n function PropTypeError(message) {\n this.message = message;\n this.stack = '';\n }\n // Make `instanceof Error` still work for returned errors.\n PropTypeError.prototype = Error.prototype;\n\n function createChainableTypeChecker(validate) {\n if (true) {\n var manualPropTypeCallCache = {};\n var manualPropTypeWarningCount = 0;\n }\n function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n componentName = componentName || ANONYMOUS;\n propFullName = propFullName || propName;\n\n if (secret !== ReactPropTypesSecret) {\n if (throwOnDirectAccess) {\n // New behavior only for users of `prop-types` package\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use `PropTypes.checkPropTypes()` to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n } else if ( true && typeof console !== 'undefined') {\n // Old behavior for people using React.PropTypes\n var cacheKey = componentName + ':' + propName;\n if (\n !manualPropTypeCallCache[cacheKey] &&\n // Avoid spamming the console because they are often not actionable except for lib authors\n manualPropTypeWarningCount < 3\n ) {\n printWarning(\n 'You are manually calling a React.PropTypes validation ' +\n 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +\n 'and will throw in the standalone `prop-types` package. ' +\n 'You may be seeing this warning due to a third-party PropTypes ' +\n 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'\n );\n manualPropTypeCallCache[cacheKey] = true;\n manualPropTypeWarningCount++;\n }\n }\n }\n if (props[propName] == null) {\n if (isRequired) {\n if (props[propName] === null) {\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n }\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n }\n return null;\n } else {\n return validate(props, propName, componentName, location, propFullName);\n }\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n }\n\n function createPrimitiveTypeChecker(expectedType) {\n function validate(props, propName, componentName, location, propFullName, secret) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== expectedType) {\n // `propValue` being instance of, say, date/regexp, pass the 'object'\n // check, but we can offer a more precise error message here rather than\n // 'of type `object`'.\n var preciseType = getPreciseType(propValue);\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createAnyTypeChecker() {\n return createChainableTypeChecker(emptyFunctionThatReturnsNull);\n }\n\n function createArrayOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n }\n var propValue = props[propName];\n if (!Array.isArray(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n }\n for (var i = 0; i < propValue.length; i++) {\n var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!isValidElement(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!ReactIs.isValidElementType(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createInstanceTypeChecker(expectedClass) {\n function validate(props, propName, componentName, location, propFullName) {\n if (!(props[propName] instanceof expectedClass)) {\n var expectedClassName = expectedClass.name || ANONYMOUS;\n var actualClassName = getClassName(props[propName]);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createEnumTypeChecker(expectedValues) {\n if (!Array.isArray(expectedValues)) {\n if (true) {\n if (arguments.length > 1) {\n printWarning(\n 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +\n 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'\n );\n } else {\n printWarning('Invalid argument supplied to oneOf, expected an array.');\n }\n }\n return emptyFunctionThatReturnsNull;\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n for (var i = 0; i < expectedValues.length; i++) {\n if (is(propValue, expectedValues[i])) {\n return null;\n }\n }\n\n var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {\n var type = getPreciseType(value);\n if (type === 'symbol') {\n return String(value);\n }\n return value;\n });\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createObjectOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n }\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n }\n for (var key in propValue) {\n if (has(propValue, key)) {\n var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createUnionTypeChecker(arrayOfTypeCheckers) {\n if (!Array.isArray(arrayOfTypeCheckers)) {\n true ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : undefined;\n return emptyFunctionThatReturnsNull;\n }\n\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (typeof checker !== 'function') {\n printWarning(\n 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'\n );\n return emptyFunctionThatReturnsNull;\n }\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {\n return null;\n }\n }\n\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createNodeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n if (!isNode(props[propName])) {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n for (var key in shapeTypes) {\n var checker = shapeTypes[key];\n if (!checker) {\n continue;\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createStrictShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n // We need to check all keys in case some are required but missing from\n // props.\n var allKeys = assign({}, props[propName], shapeTypes);\n for (var key in allKeys) {\n var checker = shapeTypes[key];\n if (!checker) {\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n '\\nBad object: ' + JSON.stringify(props[propName], null, ' ') +\n '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')\n );\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n\n return createChainableTypeChecker(validate);\n }\n\n function isNode(propValue) {\n switch (typeof propValue) {\n case 'number':\n case 'string':\n case 'undefined':\n return true;\n case 'boolean':\n return !propValue;\n case 'object':\n if (Array.isArray(propValue)) {\n return propValue.every(isNode);\n }\n if (propValue === null || isValidElement(propValue)) {\n return true;\n }\n\n var iteratorFn = getIteratorFn(propValue);\n if (iteratorFn) {\n var iterator = iteratorFn.call(propValue);\n var step;\n if (iteratorFn !== propValue.entries) {\n while (!(step = iterator.next()).done) {\n if (!isNode(step.value)) {\n return false;\n }\n }\n } else {\n // Iterator will provide entry [k,v] tuples rather than values.\n while (!(step = iterator.next()).done) {\n var entry = step.value;\n if (entry) {\n if (!isNode(entry[1])) {\n return false;\n }\n }\n }\n }\n } else {\n return false;\n }\n\n return true;\n default:\n return false;\n }\n }\n\n function isSymbol(propType, propValue) {\n // Native Symbol.\n if (propType === 'symbol') {\n return true;\n }\n\n // falsy value can't be a Symbol\n if (!propValue) {\n return false;\n }\n\n // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n if (propValue['@@toStringTag'] === 'Symbol') {\n return true;\n }\n\n // Fallback for non-spec compliant Symbols which are polyfilled.\n if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n return true;\n }\n\n return false;\n }\n\n // Equivalent of `typeof` but with special handling for array and regexp.\n function getPropType(propValue) {\n var propType = typeof propValue;\n if (Array.isArray(propValue)) {\n return 'array';\n }\n if (propValue instanceof RegExp) {\n // Old webkits (at least until Android 4.0) return 'function' rather than\n // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n // passes PropTypes.object.\n return 'object';\n }\n if (isSymbol(propType, propValue)) {\n return 'symbol';\n }\n return propType;\n }\n\n // This handles more types than `getPropType`. Only used for error messages.\n // See `createPrimitiveTypeChecker`.\n function getPreciseType(propValue) {\n if (typeof propValue === 'undefined' || propValue === null) {\n return '' + propValue;\n }\n var propType = getPropType(propValue);\n if (propType === 'object') {\n if (propValue instanceof Date) {\n return 'date';\n } else if (propValue instanceof RegExp) {\n return 'regexp';\n }\n }\n return propType;\n }\n\n // Returns a string that is postfixed to a warning about an invalid type.\n // For example, \"undefined\" or \"of type array\"\n function getPostfixForTypeWarning(value) {\n var type = getPreciseType(value);\n switch (type) {\n case 'array':\n case 'object':\n return 'an ' + type;\n case 'boolean':\n case 'date':\n case 'regexp':\n return 'a ' + type;\n default:\n return type;\n }\n }\n\n // Returns class name of the object, if any.\n function getClassName(propValue) {\n if (!propValue.constructor || !propValue.constructor.name) {\n return ANONYMOUS;\n }\n return propValue.constructor.name;\n }\n\n ReactPropTypes.checkPropTypes = checkPropTypes;\n ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n\n\n//# sourceURL=webpack:///./node_modules/prop-types/factoryWithTypeCheckers.js?");
/***/ }),
/***/ "./node_modules/prop-types/index.js":
/*!******************************************!*\
!*** ./node_modules/prop-types/index.js ***!
\******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
eval("/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (true) {\n var ReactIs = __webpack_require__(/*! react-is */ \"./node_modules/react-is/index.js\");\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = __webpack_require__(/*! ./factoryWithTypeCheckers */ \"./node_modules/prop-types/factoryWithTypeCheckers.js\")(ReactIs.isElement, throwOnDirectAccess);\n} else {}\n\n\n//# sourceURL=webpack:///./node_modules/prop-types/index.js?");
/***/ }),
/***/ "./node_modules/prop-types/lib/ReactPropTypesSecret.js":
/*!*************************************************************!*\
!*** ./node_modules/prop-types/lib/ReactPropTypesSecret.js ***!
\*************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
eval("/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n\n\n//# sourceURL=webpack:///./node_modules/prop-types/lib/ReactPropTypesSecret.js?");
/***/ }),
/***/ "./node_modules/react-device-detect/dist/index.js":
/*!********************************************************!*\
!*** ./node_modules/react-device-detect/dist/index.js ***!
\********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
eval("module.exports =\n/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 3);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nvar UAParser = __webpack_require__(6);\n\nvar UA = exports.UA = new UAParser();\n\nvar browser = exports.browser = UA.getBrowser();\nvar cpu = exports.cpu = UA.getCPU();\nvar device = exports.device = UA.getDevice();\nvar engine = exports.engine = UA.getEngine();\nvar os = exports.os = UA.getOS();\nvar ua = exports.ua = UA.getUA();\nvar setUA = exports.setUA = function setUA(uaStr) {\n return UA.setUA(uaStr);\n};\n\nvar mockUserAgent = exports.mockUserAgent = function mockUserAgent(userAgent) {\n window.navigator.__defineGetter__(\"userAgent\", function () {\n return userAgent;\n });\n};\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.isYandex = exports.isEdge = exports.getUA = exports.engineVersion = exports.engineName = exports.mobileModel = exports.mobileVendor = exports.browserName = exports.browserVersion = exports.fullBrowserVersion = exports.osName = exports.osVersion = exports.isIE = exports.isOpera = exports.isSafari = exports.isFirefox = exports.isChrome = exports.isIOS = exports.isWinPhone = exports.isAndroid = exports.isBrowser = exports.isTablet = exports.isMobileOnly = exports.isMobile = exports.isChromium = exports.isMobileSafari = exports.isWearable = exports.isConsole = exports.isSmartTV = undefined;\n\nvar _getUaData = __webpack_require__(0);\n\nvar _types = __webpack_require__(2);\n\nvar CHROME = _types.BROWSER_TYPES.CHROME,\n CHROMIUM = _types.BROWSER_TYPES.CHROMIUM,\n IE = _types.BROWSER_TYPES.IE,\n INTERNET_EXPLORER = _types.BROWSER_TYPES.INTERNET_EXPLORER,\n OPERA = _types.BROWSER_TYPES.OPERA,\n FIREFOX = _types.BROWSER_TYPES.FIREFOX,\n SAFARI = _types.BROWSER_TYPES.SAFARI,\n MOBILE_SAFARI = _types.BROWSER_TYPES.MOBILE_SAFARI,\n EDGE = _types.BROWSER_TYPES.EDGE,\n YANDEX = _types.BROWSER_TYPES.YANDEX;\nvar MOBILE = _types.DEVICE_TYPES.MOBILE,\n TABLET = _types.DEVICE_TYPES.TABLET,\n SMART_TV = _types.DEVICE_TYPES.SMART_TV,\n BROWSER = _types.DEVICE_TYPES.BROWSER,\n WEARABLE = _types.DEVICE_TYPES.WEARABLE,\n CONSOLE = _types.DEVICE_TYPES.CONSOLE;\nvar ANDROID = _types.OS_TYPES.ANDROID,\n WINDOWS_PHONE = _types.OS_TYPES.WINDOWS_PHONE,\n IOS = _types.OS_TYPES.IOS;\n\n\nvar isMobileType = function isMobileType() {\n return _getUaData.device.type === MOBILE;\n};\nvar isTabletType = function isTabletType() {\n return _getUaData.device.type === TABLET;\n};\n\nvar isMobileAndTabletType = function isMobileAndTabletType() {\n switch (_getUaData.device.type) {\n case MOBILE:\n case TABLET:\n return true;\n default:\n return false;\n }\n};\n\nvar isSmartTVType = function isSmartTVType() {\n return _getUaData.device.type === SMART_TV;\n};\nvar isBrowserType = function isBrowserType() {\n return _getUaData.device.type === BROWSER;\n};\nvar isWearableType = function isWearableType() {\n return _getUaData.device.type === WEARABLE;\n};\nvar isConsoleType = function isConsoleType() {\n return _getUaData.device.type === CONSOLE;\n};\nvar isAndroidType = function isAndroidType() {\n return _getUaData.os.name === ANDROID;\n};\nvar isWinPhoneType = function isWinPhoneType() {\n return _getUaData.os.name === WINDOWS_PHONE;\n};\nvar isIOSType = function isIOSType() {\n return _getUaData.os.name === IOS;\n};\nvar isChromeType = function isChromeType() {\n return _getUaData.browser.name === CHROME;\n};\nvar isFirefoxType = function isFirefoxType() {\n return _getUaData.browser.name === FIREFOX;\n};\nvar isChromiumType = function isChromiumType() {\n return _getUaData.browser.name === CHROMIUM;\n};\nvar isEdgeType = function isEdgeType() {\n return _getUaData.browser.name === EDGE;\n};\nvar isYandexType = function isYandexType() {\n return _getUaData.browser.name === YANDEX;\n};\nvar isSafariType = function isSafariType() {\n return _getUaData.browser.name === SAFARI || _getUaData.browser.name === MOBILE_SAFARI;\n};\nvar isMobileSafariType = function isMobileSafariType() {\n return _getUaData.browser.name === MOBILE_SAFARI;\n};\nvar isOperaType = function isOperaType() {\n return _getUaData.browser.name === OPERA;\n};\nvar isIEType = function isIEType() {\n return _getUaData.browser.name === INTERNET_EXPLORER || _getUaData.browser.name === IE;\n};\n\nvar getBrowserFullVersion = function getBrowserFullVersion() {\n return _getUaData.browser.major;\n};\nvar getBrowserVersion = function getBrowserVersion() {\n return _getUaData.browser.version;\n};\nvar getOsVersion = function getOsVersion() {\n return _getUaData.os.version ? _getUaData.os.version : \"none\";\n};\nvar getOsName = function getOsName() {\n return _getUaData.os.name ? _getUaData.os.name : \"none\";\n};\nvar getBrowserName = function getBrowserName() {\n return _getUaData.browser.name;\n};\nvar getMobileVendor = function getMobileVendor() {\n return _getUaData.device.vendor ? _getUaData.device.vendor : \"none\";\n};\nvar getMobileModel = function getMobileModel() {\n return _getUaData.device.model ? _getUaData.device.model : \"none\";\n};\nvar getEngineName = function getEngineName() {\n return _getUaData.engine.name;\n};\nvar getEngineVersion = function getEngineVersion() {\n return _getUaData.engine.version;\n};\nvar getUseragent = function getUseragent() {\n return _getUaData.ua;\n};\n\nvar isSmartTV = exports.isSmartTV = isSmartTVType();\nvar isConsole = exports.isConsole = isConsoleType();\nvar isWearable = exports.isWearable = isWearableType();\nvar isMobileSafari = exports.isMobileSafari = isMobileSafariType();\nvar isChromium = exports.isChromium = isChromiumType();\nvar isMobile = exports.isMobile = isMobileAndTabletType();\nvar isMobileOnly = exports.isMobileOnly = isMobileType();\nvar isTablet = exports.isTablet = isTabletType();\nvar isBrowser = exports.isBrowser = isBrowserType();\nvar isAndroid = exports.isAndroid = isAndroidType();\nvar isWinPhone = exports.isWinPhone = isWinPhoneType();\nvar isIOS = exports.isIOS = isIOSType();\nvar isChrome = exports.isChrome = isChromeType();\nvar isFirefox = exports.isFirefox = isFirefoxType();\nvar isSafari = exports.isSafari = isSafariType();\nvar isOpera = exports.isOpera = isOperaType();\nvar isIE = exports.isIE = isIEType();\nvar osVersion = exports.osVersion = getOsVersion();\nvar osName = exports.osName = getOsName();\nvar fullBrowserVersion = exports.fullBrowserVersion = getBrowserFullVersion();\nvar browserVersion = exports.browserVersion = getBrowserVersion();\nvar browserName = exports.browserName = getBrowserName();\nvar mobileVendor = exports.mobileVendor = getMobileVendor();\nvar mobileModel = exports.mobileModel = getMobileModel();\nvar engineName = exports.engineName = getEngineName();\nvar engineVersion = exports.engineVersion = getEngineVersion();\nvar getUA = exports.getUA = getUseragent();\nvar isEdge = exports.isEdge = isEdgeType();\nvar isYandex = exports.isYandex = isYandexType();\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.wearPayload = exports.consolePayload = exports.stvPayload = exports.mobilePayload = exports.broPayload = exports.getCurrentBrowser = exports.checkType = exports.OS_TYPES = exports.BROWSER_TYPES = exports.DEVICE_TYPES = undefined;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _getUaData = __webpack_require__(0);\n\nvar DEVICE_TYPES = exports.DEVICE_TYPES = {\n MOBILE: 'mobile',\n TABLET: 'tablet',\n SMART_TV: 'smarttv',\n CONSOLE: 'console',\n WEARABLE: 'wearable',\n BROWSER: undefined\n};\n\nvar BROWSER_TYPES = exports.BROWSER_TYPES = {\n CHROME: 'Chrome',\n FIREFOX: \"Firefox\",\n OPERA: \"Opera\",\n YANDEX: \"Yandex\",\n SAFARI: \"Safari\",\n INTERNET_EXPLORER: \"Internet Explorer\",\n EDGE: \"Edge\",\n CHROMIUM: \"Chromium\",\n IE: 'IE',\n MOBILE_SAFARI: \"Mobile Safari\"\n};\n\nvar OS_TYPES = exports.OS_TYPES = {\n IOS: 'iOS',\n ANDROID: \"Android\",\n WINDOWS_PHONE: \"Windows Phone\"\n};\n\nvar initialData = {\n isMobile: false,\n isTablet: false,\n isBrowser: false,\n isSmartTV: false,\n isConsole: false,\n isWearable: false\n};\n\nvar checkType = exports.checkType = function checkType(type) {\n switch (type) {\n case DEVICE_TYPES.MOBILE:\n return { isMobile: true };\n case DEVICE_TYPES.TABLET:\n return { isTablet: true };\n case DEVICE_TYPES.SMART_TV:\n return { isSmartTV: true };\n case DEVICE_TYPES.CONSOLE:\n return { isConsole: true };\n case DEVICE_TYPES.WEARABLE:\n return { isWearable: true };\n case DEVICE_TYPES.BROWSER:\n return { isBrowser: true };\n default:\n return initialData;\n }\n};\n\nvar getCurrentBrowser = exports.getCurrentBrowser = function getCurrentBrowser(name) {\n switch (name) {\n case BROWSER_TYPES.CHROME:\n case BROWSER_TYPES.FIREFOX:\n case BROWSER_TYPES.OPERA:\n case BROWSER_TYPES.YANDEX:\n case BROWSER_TYPES.SAFARI:\n case BROWSER_TYPES.IE:\n case BROWSER_TYPES.EDGE:\n case BROWSER_TYPES.CHROMIUM:\n return true;\n default:\n return false;\n }\n};\n\nvar broPayload = exports.broPayload = function broPayload(isBrowser, browser, engine, os, ua) {\n return {\n isBrowser: isBrowser,\n browserMajorVersion: browser.major,\n browserFullVersion: browser.version,\n browserName: browser.name,\n engineName: engine.name || false,\n engineVersion: engine.version,\n osName: os.name,\n osVersion: os.version,\n userAgent: ua\n };\n};\n\nvar mobilePayload = exports.mobilePayload = function mobilePayload(type, device, os, ua) {\n return _extends({}, type, {\n vendor: device.vendor || \"none\",\n model: device.model || \"none\",\n os: os.name || \"none\",\n osVersion: os.version || \"none\",\n ua: ua || \"none\"\n });\n};\n\nvar stvPayload = exports.stvPayload = function stvPayload(isSmartTV, engine, os, ua) {\n return {\n isSmartTV: isSmartTV,\n engineName: engine.name || false,\n engineVersion: engine.version,\n osName: os.name,\n osVersion: os.version,\n userAgent: ua\n };\n};\n\nvar consolePayload = exports.consolePayload = function consolePayload(isConsole, engine, os, ua) {\n return {\n isConsole: isConsole,\n engineName: engine.name || false,\n engineVersion: engine.version,\n osName: os.name,\n osVersion: os.version,\n userAgent: ua\n };\n};\n\nvar wearPayload = exports.wearPayload = function wearPayload(isWearable, engine, os, ua) {\n return {\n isWearable: isWearable,\n engineName: engine.name || false,\n engineVersion: engine.version,\n osName: os.name,\n osVersion: os.version,\n userAgent: ua\n };\n};\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.deviceDetect = undefined;\n\nvar _views = __webpack_require__(4);\n\nObject.keys(_views).forEach(function (key) {\n if (key === \"default\" || key === \"__esModule\") return;\n Object.defineProperty(exports, key, {\n enumerable: true,\n get: function get() {\n return _views[key];\n }\n });\n});\n\nvar _selectors = __webpack_require__(1);\n\nObject.keys(_selectors).forEach(function (key) {\n if (key === \"default\" || key === \"__esModule\") return;\n Object.defineProperty(exports, key, {\n enumerable: true,\n get: function get() {\n return _selectors[key];\n }\n });\n});\n\nvar _detect = __webpack_require__(8);\n\nvar _detect2 = _interopRequireDefault(_detect);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.deviceDetect = _detect2.default;\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CustomView = exports.WearableView = exports.ConsoleView = exports.SmartTVView = exports.MobileOnlyView = exports.WinPhoneView = exports.TabletView = exports.MobileView = exports.IOSView = exports.IEView = exports.BrowserView = exports.AndroidView = undefined;\n\nvar _react = __webpack_require__(5);\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _selectors = __webpack_require__(1);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar AndroidView = exports.AndroidView = function AndroidView(_ref) {\n var renderWithFragment = _ref.renderWithFragment,\n children = _ref.children,\n viewClassName = _ref.viewClassName,\n style = _ref.style;\n\n return _selectors.isAndroid ? renderWithFragment ? _react2.default.createElement(\n _react.Fragment,\n null,\n children\n ) : _react2.default.createElement(\n 'div',\n { className: viewClassName, style: style },\n children\n ) : null;\n};\n\nvar BrowserView = exports.BrowserView = function BrowserView(_ref2) {\n var renderWithFragment = _ref2.renderWithFragment,\n children = _ref2.children,\n viewClassName = _ref2.viewClassName,\n style = _ref2.style;\n\n return _selectors.isBrowser ? renderWithFragment ? _react2.default.createElement(\n _react.Fragment,\n null,\n children\n ) : _react2.default.createElement(\n 'div',\n { className: viewClassName, style: style },\n children\n ) : null;\n};\n\nvar IEView = exports.IEView = function IEView(_ref3) {\n var renderWithFragment = _ref3.renderWithFragment,\n children = _ref3.children,\n viewClassName = _ref3.viewClassName,\n style = _ref3.style;\n\n return _selectors.isIE ? renderWithFragment ? _react2.default.createElement(\n _react.Fragment,\n null,\n children\n ) : _react2.default.createElement(\n 'div',\n { className: viewClassName, style: style },\n children\n ) : null;\n};\n\nvar IOSView = exports.IOSView = function IOSView(_ref4) {\n var renderWithFragment = _ref4.renderWithFragment,\n children = _ref4.children,\n viewClassName = _ref4.viewClassName,\n style = _ref4.style;\n\n return _selectors.isIOS ? renderWithFragment ? _react2.default.createElement(\n _react.Fragment,\n null,\n children\n ) : _react2.default.createElement(\n 'div',\n { className: viewClassName, style: style },\n children\n ) : null;\n};\n\nvar MobileView = exports.MobileView = function MobileView(_ref5) {\n var renderWithFragment = _ref5.renderWithFragment,\n children = _ref5.children,\n viewClassName = _ref5.viewClassName,\n style = _ref5.style;\n\n return _selectors.isMobile ? renderWithFragment ? _react2.default.createElement(\n _react.Fragment,\n null,\n children\n ) : _react2.default.createElement(\n 'div',\n { className: viewClassName, style: style },\n children\n ) : null;\n};\n\nvar TabletView = exports.TabletView = function TabletView(_ref6) {\n var renderWithFragment = _ref6.renderWithFragment,\n children = _ref6.children,\n viewClassName = _ref6.viewClassName,\n style = _ref6.style;\n\n return _selectors.isTablet ? renderWithFragment ? _react2.default.createElement(\n _react.Fragment,\n null,\n children\n ) : _react2.default.createElement(\n 'div',\n { className: viewClassName, style: style },\n children\n ) : null;\n};\n\nvar WinPhoneView = exports.WinPhoneView = function WinPhoneView(_ref7) {\n var renderWithFragment = _ref7.renderWithFragment,\n children = _ref7.children,\n viewClassName = _ref7.viewClassName,\n style = _ref7.style;\n\n return _selectors.isWinPhone ? renderWithFragment ? _react2.default.createElement(\n _react.Fragment,\n null,\n children\n ) : _react2.default.createElement(\n 'div',\n { className: viewClassName, style: style },\n children\n ) : null;\n};\n\nvar MobileOnlyView = exports.MobileOnlyView = function MobileOnlyView(_ref8) {\n var renderWithFragment = _ref8.renderWithFragment,\n children = _ref8.children,\n viewClassName = _ref8.viewClassName,\n style = _ref8.style;\n\n return _selectors.isMobileOnly ? renderWithFragment ? _react2.default.createElement(\n _react.Fragment,\n null,\n children\n ) : _react2.default.createElement(\n 'div',\n { className: viewClassName, style: style },\n children\n ) : null;\n};\n\nvar SmartTVView = exports.SmartTVView = function SmartTVView(_ref9) {\n var renderWithFragment = _ref9.renderWithFragment,\n children = _ref9.children,\n viewClassName = _ref9.viewClassName,\n style = _ref9.style;\n\n return _selectors.isSmartTV ? renderWithFragment ? _react2.default.createElement(\n _react.Fragment,\n null,\n children\n ) : _react2.default.createElement(\n 'div',\n { className: viewClassName, style: style },\n children\n ) : null;\n};\n\nvar ConsoleView = exports.ConsoleView = function ConsoleView(_ref10) {\n var renderWithFragment = _ref10.renderWithFragment,\n children = _ref10.children,\n viewClassName = _ref10.viewClassName,\n style = _ref10.style;\n\n return _selectors.isConsole ? renderWithFragment ? _react2.default.createElement(\n _react.Fragment,\n null,\n children\n ) : _react2.default.createElement(\n 'div',\n { className: viewClassName, style: style },\n children\n ) : null;\n};\n\nvar WearableView = exports.WearableView = function WearableView(_ref11) {\n var renderWithFragment = _ref11.renderWithFragment,\n children = _ref11.children,\n viewClassName = _ref11.viewClassName,\n style = _ref11.style;\n\n return _selectors.isWearable ? renderWithFragment ? _react2.default.createElement(\n _react.Fragment,\n null,\n children\n ) : _react2.default.createElement(\n 'div',\n { className: viewClassName, style: style },\n children\n ) : null;\n};\n\nvar CustomView = exports.CustomView = function CustomView(_ref12) {\n var renderWithFragment = _ref12.renderWithFragment,\n children = _ref12.children,\n viewClassName = _ref12.viewClassName,\n style = _ref12.style,\n condition = _ref12.condition;\n\n return condition ? renderWithFragment ? _react2.default.createElement(\n _react.Fragment,\n null,\n children\n ) : _react2.default.createElement(\n 'div',\n { className: viewClassName, style: style },\n children\n ) : null;\n};\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports) {\n\nmodule.exports = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n\n/***/ }),\n/* 6 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar __WEBPACK_AMD_DEFINE_RESULT__;/*!\n * UAParser.js v0.7.18\n * Lightweight JavaScript-based User-Agent string parser\n * https://github.com/faisalman/ua-parser-js\n *\n * Copyright © 2012-2016 Faisal Salman \n * Dual licensed under GPLv2 or MIT\n */\n(function(window,undefined){\"use strict\";var LIBVERSION=\"0.7.18\",EMPTY=\"\",UNKNOWN=\"?\",FUNC_TYPE=\"function\",UNDEF_TYPE=\"undefined\",OBJ_TYPE=\"object\",STR_TYPE=\"string\",MAJOR=\"major\",MODEL=\"model\",NAME=\"name\",TYPE=\"type\",VENDOR=\"vendor\",VERSION=\"version\",ARCHITECTURE=\"architecture\",CONSOLE=\"console\",MOBILE=\"mobile\",TABLET=\"tablet\",SMARTTV=\"smarttv\",WEARABLE=\"wearable\",EMBEDDED=\"embedded\";var util={extend:function(regexes,extensions){var margedRegexes={};for(var i in regexes){if(extensions[i]&&extensions[i].length%2===0){margedRegexes[i]=extensions[i].concat(regexes[i])}else{margedRegexes[i]=regexes[i]}}return margedRegexes},has:function(str1,str2){if(typeof str1===\"string\"){return str2.toLowerCase().indexOf(str1.toLowerCase())!==-1}else{return false}},lowerize:function(str){return str.toLowerCase()},major:function(version){return typeof version===STR_TYPE?version.replace(/[^\\d\\.]/g,\"\").split(\".\")[0]:undefined},trim:function(str){return str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g,\"\")}};var mapper={rgx:function(ua,arrays){var i=0,j,k,p,q,matches,match;while(i0){if(q.length==2){if(typeof q[1]==FUNC_TYPE){this[q[0]]=q[1].call(this,match)}else{this[q[0]]=q[1]}}else if(q.length==3){if(typeof q[1]===FUNC_TYPE&&!(q[1].exec&&q[1].test)){this[q[0]]=match?q[1].call(this,match,q[2]):undefined}else{this[q[0]]=match?match.replace(q[1],q[2]):undefined}}else if(q.length==4){this[q[0]]=match?q[3].call(this,match.replace(q[1],q[2])):undefined}}else{this[q]=match?match:undefined}}}}i+=2}},str:function(str,map){for(var i in map){if(typeof map[i]===OBJ_TYPE&&map[i].length>0){for(var j=0;j