{ "version": 3, "sources": [ "../webpack/bootstrap", "../external \"React\"", "../node_modules/classnames/index.js", "../external \"ReactDOM\"", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/classCallCheck.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/createClass.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/inherits.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/typeof.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/createSuper.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/slicedToArray.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js", "service/pws-media.service.ts", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/iterableToArray.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js", "zype/ZypeTabsSkeleton.component.tsx", "shared/Skeleton.component.tsx", "zype/playerButtons.ts", "zype/ZypePlayerSkeleton.component.tsx", "zype/ZypePlayer.component.tsx", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/defineProperty.js", "../node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/objectSpread2.js", "zype/ZypeNavBar.component.tsx", "zype/ZypeVideo.component.tsx", "helpers/string.ts", "zype/ZypePagination.component.tsx", "zype/ZypeTab.component.tsx", "zype/ZypeTabs.component.tsx", "zype/ZypeAd.component.tsx", "zype/ZypeMedia.component.tsx", "CnbMediaApp.tsx", "index.tsx" ], "names": [ "installedModules", "__webpack_require__", "moduleId", "exports", "module", "i", "l", "modules", "call", "m", "c", "d", "name", "getter", "o", "Object", "defineProperty", "enumerable", "get", "r", "Symbol", "toStringTag", "value", "t", "mode", "__esModule", "ns", "create", "key", "bind", "n", "object", "property", "prototype", "hasOwnProperty", "p", "s", "React", "hasOwn", "classNames", "classes", "arguments", "length", "arg", "argType", "push", "Array", "isArray", "inner", "apply", "toString", "join", "default", "ReactDOM", "_classCallCheck", "instance", "Constructor", "TypeError", "_defineProperties", "target", "props", "descriptor", "configurable", "writable", "_createClass", "protoProps", "staticProps", "_setPrototypeOf", "setPrototypeOf", "__proto__", "_inherits", "subClass", "superClass", "constructor", "_getPrototypeOf", "getPrototypeOf", "_isNativeReflectConstruct", "Reflect", "construct", "sham", "Proxy", "Date", "e", "_typeof", "obj", "iterator", "_possibleConstructorReturn", "self", "ReferenceError", "_createSuper", "Derived", "result", "Super", "NewTarget", "this", "_arrayLikeToArray", "arr", "len", "arr2", "_unsupportedIterableToArray", "minLen", "slice", "from", "test", "_slicedToArray", "_arr", "_n", "_d", "_e", "undefined", "_s", "_i", "next", "done", "err", "asyncGeneratorStep", "gen", "resolve", "reject", "_next", "_throw", "info", "error", "Promise", "then", "_asyncToGenerator", "fn", "args", "doRequest", "url", "fetch", "response", "json", "console", "PwsMediaService", "baseUrl", "document", "location", "origin", "doMediaRequest", "slug", "encodeURIComponent", "publishedAt", "includeVideos", "perPage", "id", "resume", "config", "query", "entries", "reduce", "acc", "val", "_toConsumableArray", "iter", "Skeleton", "type", "shape", "pulse", "width", "height", "size", "skeletonClass", "classnames", "styles", "className", "style", "data-name", "videos", "tabHeaders", "idx", "ZypeTabSkeleton", "ZypeTabsSkeleton", "forwardSvg", "createElementNS", "setAttribute", "poly1", "poly2", "appendChild", "rewindSvg", "poly3", "poly4", "ZypePlayerSkeleton", "ZypePlayer", "intervalId", "player", "rewindButton", "forwardButton", "videoPlayerRef", "loadPlayerScript", "video", "apiKey", "isAudio", "mediaService", "getIsAudio", "res", "script", "createElement", "src", "async", "body", "getPlayerRef", "setInterval", "doGetPlayerRef", "window", "theoplayer", "initPlayer", "clearInterval", "handlePresentationChange", "setState", "isFullScreen", "isLoading", "scrollToVideoPlayer", "addEventListener", "playNextVideo", "initAdditionalButtons", "v", "presentationMode", "Button", "THEOplayer", "videojs", "getComponent", "extend", "tooltipSpan", "toggleTooltip", "classList", "toggle", "innerText", "el", "handleClick", "currentTime", "buildCSSClass", "registerComponent", "ui", "getChild", "addChild", "warn", "state", "reFetchCurVideo", "prevProps", "current", "scrollTo", "left", "top", "offsetTop", "behavior", "playerClass", "ref", "display", "title", "description", "_defineProperty", "ownKeys", "enumerableOnly", "keys", "getOwnPropertySymbols", "symbols", "filter", "sym", "getOwnPropertyDescriptor", "_objectSpread2", "source", "forEach", "getOwnPropertyDescriptors", "defineProperties", "ZypeNavBar", "onChange", "currentTarget", "onSubmit", "preventDefault", "onSearch", "placeholder", "tabs", "map", "tab", "onClick", "setActiveTab", "activeTab", "ZypeVideoComponent", "nextVideo", "setCurrentVideo", "alt", "thumbnails", "original", "max", "truncated", "substr", "Math", "min", "lastIndexOf", "truncateString", "ZypePagination", "currentPage", "totalPages", "goToPrevPage", "goToNextPage", "isLoadingNext", "disabled", "ZypeTab", "getOnAirVideo", "hasLive", "debug", "firstPage", "pages", "curPage", "getNextPage", "doGetNextPage", "getVideos", "categoryName", "categories", "categoryValue", "values", "resp", "pagination", "getNextVideo", "curPageVideos", "nextPageVideos", "isActiveTab", "searchTabConfig", "ZypeTabs", "searchTabActive", "loadingSearchResults", "searchTab", "doSearch", "ZypeAd", "useEffect", "gptadslots", "googletag", "cmd", "gads", "node", "getElementsByTagName", "parentNode", "insertBefore", "defineSlot", "path", "setTargeting", "addService", "pubads", "enableSingleRequest", "enableAsyncRendering", "enableServices", "ZypeMedia", "loadVideo", "initializeTabs", "getVideoBySlug", "isAuthenticated", "cookie", "includes", "subscriptionRequired", "loginLinkEl", "querySelector", "HTMLElement", "click", "subsRequireLinkEl", "getElementsByClassName", "subsReactivateLinkEl", "pushVideoToHistory", "groupSlug", "playerApiKey", "curVideo", "getConfig", "loadingTabs", "activeTabIdx", "findIndex", "curTabVideos", "userSubscribed", "userCancelledSubs", "setNextVideo", "getTabByCategories", "find", "some", "history", "pushState", "pageSlug", "episodeSlug", "handleHistoryTravel", "onpopstate", "CnbMediaApp", "initialVideoResponse", "authenticated", "shortDescription", "manifest", "onAir", "duration", "autoplay", "viewVideoResponse", "Component", "rootElement", "getElementById", "data", "getAttribute", "JSON", "parse", "render", "StrictMode" ], "mappings": "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", "file": "static/js/main.js", "sourcesContent": [ " \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, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\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\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 3);\n", "module.exports = React;", "/*!\n Copyright (c) 2018 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)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString === Object.prototype.toString) {\n\t\t\t\t\tfor (var key in arg) {\n\t\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n", "module.exports = ReactDOM;", "export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}", "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\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}", "export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}", "import setPrototypeOf from \"./setPrototypeOf\";\nexport default function _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}", "export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}", "export default function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}", "export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}", "import _typeof from \"../../helpers/esm/typeof\";\nimport assertThisInitialized from \"./assertThisInitialized\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return assertThisInitialized(self);\n}", "export default 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}", "import getPrototypeOf from \"./getPrototypeOf\";\nimport isNativeReflectConstruct from \"./isNativeReflectConstruct\";\nimport possibleConstructorReturn from \"./possibleConstructorReturn\";\nexport default function _createSuper(Derived) {\n return function () {\n var Super = getPrototypeOf(Derived),\n result;\n\n if (isNativeReflectConstruct()) {\n var NewTarget = getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return possibleConstructorReturn(this, result);\n };\n}", "export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}", "import arrayLikeToArray from \"./arrayLikeToArray\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(n);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}", "import arrayWithHoles from \"./arrayWithHoles\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray\";\nimport nonIterableRest from \"./nonIterableRest\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}", "export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}", "export default function _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}", "export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}", "function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}", "import {\n // ZypeOnAirStatusResponse,\n ZypeViewVideoResponse,\n ZypeListVideosResponse,\n ZypeConfigResponse,\n ZypeIsAudioResponse,\n} from \"../zype/ZypeMedia.types\";\n\nexport interface ListVideosConfig {\n categories?: { [category: string]: string };\n categoryValue?: string;\n categoryName?: string;\n startDate?: number;\n groupSlug?: string;\n perPage?: number;\n endDate?: number;\n query?: string;\n page?: number;\n}\n\nconst doRequest = async (url: string) => {\n try {\n const response = await fetch( url );\n return await response.json() as T;\n } catch (e) {\n console.error(\"Error while fetching PWS API:\", e);\n }\n};\n\nexport class PwsMediaService {\n private baseUrl: string;\n\n constructor() {\n this.baseUrl = document.location.origin;\n }\n\n getOnAirVideo() {\n // Old API Ex: https://services.premierenetworks.com/media/clay-and-buck/on-air?manifest=false\n return this.doMediaRequest(`wp-json/wp/v2/media/on-air/`);\n }\n\n getVideoBySlug(slug: string) {\n if (slug === \"live\") {\n // Old API Ex: https://services.premierenetworks.com/media/clay-and-buck/on-air\n return this.doMediaRequest(`wp-json/wp/v2/media/on-air/`);\n }\n // Old API Ex: https://services.premierenetworks.com/media/clay-and-buck/videos/slug/what-s-next-for-the-disgraced-ny-governor\n slug = encodeURIComponent( slug );\n return this.doMediaRequest(`wp-json/wp/v2/media/videos/slug/${slug}`);\n }\n\n getNextVideo(publishedAt: string) {\n // Old API Ex: //services.premierenetworks.com/media/clay-and-buck/next/64418dddf0b6de0001d66fb7\n publishedAt = encodeURIComponent( publishedAt );\n return this.doMediaRequest(`wp-json/wp/v2/media/next/?publishedAt=${publishedAt}`);\n }\n\n getConfig(includeVideos = true, perPage = 12) {\n // Old API Ex: //services.premierenetworks.com/media/clay-and-buck/config?includeVideos=true&perPage=12\n return this.doMediaRequest(\n `wp-json/wp/v2/media/config/?includeVideos=${includeVideos}&perPage=${perPage}`,\n );\n }\n\n getIsAudio(id: string) {\n // Old API Ex: //services.premierenetworks.com/media/clay-and-buck/is-audio/64418dddf0b6de0001d66fb7?onAir=false\n return this.doMediaRequest(`wp-json/wp/v2/media/is-audio/${id}`);\n }\n\n getVideos(resume: string | null = null, config: ListVideosConfig = {}) {\n if (resume) {\n // Old API Ex: //services.premierenetworks.com/media/clay-and-buck/videos?resume=eyJwYWdlIjoyLCJwZXJQYWdlIjoxMiwiY2F0ZWdvcmllcyI6eyJDbGF5IGFuZCBCdWNrIjoiQXVkaW8gQ2xpcHMifX0=\n resume = encodeURIComponent( resume );\n return this.doMediaRequest(`wp-json/wp/v2/media/videos/?resume=${resume}`);\n }\n let query = Object.entries(config).reduce((acc, [key, val]) => acc + `&${key}=${encodeURIComponent(val)}`, \"\");\n if (query) {\n query = `?${query.slice(1)}`;\n }\n // Old API Ex: //services.premierenetworks.com/media/clay-and-buck/videos/?query=Former\n return this.doMediaRequest(`wp-json/wp/v2/media/videos/${query}`);\n }\n\n private doMediaRequest(url: string) {\n return doRequest(`${this.baseUrl}/${url}`);\n }\n}\n", "import arrayWithoutHoles from \"./arrayWithoutHoles\";\nimport iterableToArray from \"./iterableToArray\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray\";\nimport nonIterableSpread from \"./nonIterableSpread\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}", "import arrayLikeToArray from \"./arrayLikeToArray\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}", "export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}", "export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}", "import * as React from \"react\";\nimport { Skeleton } from \"../shared/Skeleton.component\";\n\nconst videos: React.ReactElement[] = [];\nconst tabHeaders: React.ReactElement[] = [];\n\nfor (let idx = 0; idx < 12; idx++) {\n videos.push(\n
\n
\n \n
\n
\n \n
\n
,\n );\n}\n\nfor (let idx = 0; idx < 4; idx++) {\n tabHeaders.push(\n
\n \n
,\n );\n}\n\nexport function ZypeTabSkeleton() {\n return (\n
\n
{videos}
\n
\n );\n}\n\nexport function ZypeTabsSkeleton() {\n return (\n
\n
\n
\n
{tabHeaders}
\n
\n\n
\n \n
\n
\n );\n}\n", "import classnames from \"classnames\";\nimport * as React from \"react\";\nimport \"./Skeleton.style.scss\";\n\ninterface SkeletonProps {\n type: \"image\" | \"text\";\n shape?: \"auto\" | \"circle\" | \"square\" | \"16x9\" | \"tall\";\n pulse?: boolean;\n width?: string;\n height?: string;\n size?: 0 | 1 | 2 | 3 | 4 | 5 | 6;\n name?: string;\n}\n\nexport const Skeleton = ({\n type,\n shape = \"auto\",\n pulse = false,\n width = \"\",\n height = \"\",\n size = 0,\n name = \"\",\n}: SkeletonProps) => {\n const skeletonClass = classnames(\n \"component-skeleton\",\n `type-${type}`,\n `shape-${shape}`,\n // this is ugly, but computed property names aren't supported with current packages =(\n [\n ...(type === \"text\" && size ? [`size-${size}`] : []),\n ...(pulse ? [\"with-pulse\"] : []),\n ],\n );\n\n if (shape === \"square\" || shape === \"circle\") {\n height = width;\n }\n const styles: React.CSSProperties = {};\n if (width) {\n styles.width = width;\n }\n if (height) {\n styles.height = height;\n }\n\n return (
);\n};\n", "export const forwardSvg = document.createElementNS(\"http://www.w3.org/2000/svg\", \"svg\");\n\nforwardSvg.setAttribute(\"height\", \"16\");\nforwardSvg.setAttribute(\"width\", \"24\");\nforwardSvg.setAttribute(\"fill\", \"none\");\nforwardSvg.setAttribute(\"viewBox\", \"0 0 28 20\");\n\nconst poly1 = document.createElementNS(\"http://www.w3.org/2000/svg\", \"polygon\");\nconst poly2 = document.createElementNS(\"http://www.w3.org/2000/svg\", \"polygon\");\n\npoly1.setAttribute(\"points\", \"0,0 12,8 0,16\");\npoly2.setAttribute(\"points\", \"12,0 24,8 12,16\");\n\npoly1.setAttribute(\"fill\", \"#fff\");\npoly2.setAttribute(\"fill\", \"#fff\");\n\nforwardSvg.appendChild(poly1);\nforwardSvg.appendChild(poly2);\n\nexport const rewindSvg = document.createElementNS(\"http://www.w3.org/2000/svg\", \"svg\");\n\nrewindSvg.setAttribute(\"width\", \"24\");\nrewindSvg.setAttribute(\"height\", \"16\");\nrewindSvg.setAttribute(\"fill\", \"none\");\nrewindSvg.setAttribute(\"viewBox\", \"0 0 28 20\");\n\nconst poly3 = document.createElementNS(\"http://www.w3.org/2000/svg\", \"polygon\");\nconst poly4 = document.createElementNS(\"http://www.w3.org/2000/svg\", \"polygon\");\n\npoly3.setAttribute(\"points\", \"0,8 12,0 12,16\");\npoly4.setAttribute(\"points\", \"12,8 24,0 24,16\");\n\npoly3.setAttribute(\"fill\", \"#fff\");\npoly4.setAttribute(\"fill\", \"#fff\");\n\nrewindSvg.appendChild(poly3);\nrewindSvg.appendChild(poly4);\n", "import * as React from \"react\";\nimport { Skeleton } from \"../shared/Skeleton.component\";\n\nexport function ZypePlayerSkeleton() {\n return (\n
\n
\n \n
\n
\n \n
\n
\n );\n}\n", "import * as React from \"react\";\nimport classnames from \"classnames\";\n\nimport { rewindSvg, forwardSvg } from \"./playerButtons\";\nimport { ZypePlayerSkeleton } from \"./ZypePlayerSkeleton.component\";\nimport { ZypeVideo } from \"./ZypeMedia.types\";\nimport { PwsMediaService } from \"../service/pws-media.service\";\n\ninterface ZypePlayerProps {\n reFetchCurVideo: () => void;\n playNextVideo: () => void;\n video: ZypeVideo | null;\n apiKey: string | null;\n mediaService: PwsMediaService;\n}\n\ninterface ZypePlayerState {\n isFullScreen: boolean;\n isLoading: boolean;\n}\n\ndeclare global {\n interface Window {\n theoplayer: any;\n THEOplayer: any;\n }\n}\n\nexport class ZypePlayer extends React.PureComponent {\n intervalId!: NodeJS.Timer;\n player: any = null;\n rewindButton: any;\n forwardButton: any;\n\n private videoPlayerRef: React.RefObject;\n\n constructor(props: ZypePlayerProps) {\n super(props);\n\n this.videoPlayerRef = React.createRef();\n\n this.state = {\n isFullScreen: false,\n isLoading: true,\n };\n }\n\n componentDidMount() {\n if (this.props.video && this.props.apiKey) {\n if (!this.props.video.id) {\n this.props.reFetchCurVideo();\n } else {\n this.loadPlayerScript(this.props.video, this.props.apiKey);\n }\n }\n }\n\n componentDidUpdate(prevProps: ZypePlayerProps) {\n if (\n (\n !prevProps.apiKey\n || !prevProps.video\n || !prevProps.video.id\n || (this.props.video && prevProps.video.id !== this.props.video.id)\n || (this.props.video?.isAudio !== prevProps.video.isAudio)\n )\n && this.props.video\n && this.props.apiKey\n ) {\n if (!this.props.video.id) {\n this.props.reFetchCurVideo();\n } else {\n this.loadPlayerScript(this.props.video, this.props.apiKey);\n }\n }\n }\n\n loadPlayerScript = async (video: ZypeVideo, apiKey: string) => {\n if (!video.id) {\n return console.error(\"Couldn't initialize player - id is unavailable\");\n }\n\n // Handle setting player to audio-only mode\n let isAudio = \"\";\n\n // that is already set on live videos\n if (typeof video.isAudio === \"boolean\") {\n if (video.isAudio) {\n isAudio = \"&audio=true\";\n }\n } else {\n //const res = await this.props.mediaService.getIsAudio(video.id, video.onAir);\n const res = await this.props.mediaService.getIsAudio(video.id);\n if (res && res.isAudio) {\n isAudio = \"&audio=true\";\n }\n }\n\n const script = document.createElement(\"script\");\n // script.src = `https://player.zype.com/embed/${video.id}.js`\n // + `?api_key=${apiKey}&autoplay=${video.autoplay}&controls=true${isAudio}`;\n script.src = `https://player.zype.com/embed/${video.id}.js`\n + `?api_key=${apiKey}&autoplay=false&controls=true${isAudio}`;\n\n script.async = true;\n document.body.appendChild(script);\n\n this.getPlayerRef();\n }\n\n getPlayerRef = () => {\n this.intervalId = setInterval(this.doGetPlayerRef, 500);\n }\n\n doGetPlayerRef = () => {\n if (window.theoplayer) {\n this.player = window.theoplayer;\n this.initPlayer();\n clearInterval(this.intervalId);\n }\n }\n\n handlePresentationChange = (mode?: \"fullscreen\" | \"inline\") => {\n switch (mode) {\n case \"fullscreen\":\n this.setState({ isFullScreen: true });\n break;\n case \"inline\":\n this.setState({ isFullScreen: false });\n break;\n }\n }\n\n initPlayer = () => {\n this.setState({ isLoading: false });\n this.scrollToVideoPlayer();\n this.player.addEventListener(\"ended\", this.props.playNextVideo);\n this.initAdditionalButtons();\n\n this.player.addEventListener(\n \"presentationmodechange\",\n (v: any) => this.handlePresentationChange(v.presentationMode),\n );\n }\n\n initAdditionalButtons = () => {\n // not sure how reliable that is, so better try-catch\n try {\n // build buttons only on first player load\n if (!this.rewindButton || !this.forwardButton) {\n const Button = window.THEOplayer.videojs.getComponent(\"Button\");\n\n this.rewindButton = window.THEOplayer.videojs.extend(Button, {\n constructor() {\n Button.apply(this, arguments);\n\n const tooltipSpan = document.createElement(\"span\");\n tooltipSpan.className = \"theo-button-tooltip vjs-hidden\";\n tooltipSpan.innerText = \"-10 sec\";\n\n function toggleTooltip() {\n tooltipSpan.classList.toggle(\"vjs-hidden\");\n }\n\n this.el().addEventListener(\"mouseover\", toggleTooltip);\n this.el().addEventListener(\"mouseout\", toggleTooltip);\n\n this.el().appendChild(tooltipSpan);\n this.el().appendChild(rewindSvg);\n },\n handleClick: () => {\n this.player.currentTime -= 10;\n },\n buildCSSClass: () => \"vjs-button custom-player-button rewind\",\n });\n\n this.forwardButton = window.THEOplayer.videojs.extend(Button, {\n constructor() {\n Button.apply(this, arguments);\n\n const tooltipSpan = document.createElement(\"span\");\n tooltipSpan.className = \"theo-button-tooltip vjs-hidden\";\n tooltipSpan.innerText = \"+10 sec\";\n\n function toggleTooltip() {\n tooltipSpan.classList.toggle(\"vjs-hidden\");\n }\n\n this.el().addEventListener(\"mouseover\", toggleTooltip);\n this.el().addEventListener(\"mouseout\", toggleTooltip);\n\n this.el().appendChild(tooltipSpan);\n this.el().appendChild(forwardSvg);\n },\n handleClick: () => {\n this.player.currentTime += 10;\n },\n buildCSSClass: () => {\n return \"vjs-button custom-player-button forward\";\n },\n });\n }\n\n window.THEOplayer.videojs.registerComponent(\"RewindButton\", this.rewindButton);\n this.player.ui.getChild(\"controlBar\").addChild(\"RewindButton\", {});\n window.THEOplayer.videojs.registerComponent(\"ForwardButton\", this.forwardButton);\n this.player.ui.getChild(\"controlBar\").addChild(\"ForwardButton\", {});\n\n } catch (e) {\n console.warn(\"Error initializing additional player buttons\", e);\n }\n }\n\n scrollToVideoPlayer(): void {\n if (this.videoPlayerRef.current) {\n window.scrollTo({\n left: 0,\n top: this.videoPlayerRef.current.offsetTop,\n behavior: \"smooth\",\n });\n }\n }\n\n render() {\n const playerClass = classnames(\"component-zype-player\", {\n \"player-fullscreen\": this.state.isFullScreen,\n });\n\n return(\n
\n {this.state.isLoading && }\n\n
\n
\n
\n
\n {\n this.props.video && (\n
\n
{this.props.video.title}
\n

{this.props.video.description}

\n
\n )\n }\n
\n
\n );\n }\n}\n", "export default 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}", "import defineProperty from \"./defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nexport default function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}", "import * as React from \"react\";\n\nimport { ZypeConfigTab } from \"./ZypeMedia.types\";\n\ninterface NavBarProps {\n setActiveTab: (idx: number) => void;\n onSearch: (query: string) => void;\n tabs: ZypeConfigTab[] | null;\n activeTab: number;\n}\n\ninterface NavBarState {\n query: string;\n}\n\nexport class ZypeNavBar extends React.Component {\n constructor(props: NavBarProps) {\n super(props);\n\n this.state = { query: \"\" };\n }\n\n onChange = (e: React.SyntheticEvent) => {\n this.setState({ query: e.currentTarget.value });\n }\n\n onSubmit = (e: React.SyntheticEvent) => {\n e.preventDefault();\n this.props.onSearch(this.state.query);\n }\n\n render() {\n return (\n
\n
\n \n \n \n\n
\n { this.props.tabs && this.props.tabs.map((tab, idx) => (\n this.props.setActiveTab(idx)}\n className={`zype-tab-header ${this.props.activeTab === idx ? \"active\" : \"\"}`}\n key={tab.title}\n >\n {tab.title}\n
\n ))}\n
\n
\n );\n }\n}\n", "import * as React from \"react\";\n\nimport { truncateString } from \"../helpers/string\";\nimport { ZypeVideo } from \"./ZypeMedia.types\";\n\ninterface ZypeVideoProps {\n setCurrentVideo: (video: ZypeVideo, nextVideo: ZypeVideo | null, idx: number) => void;\n nextVideo: ZypeVideo | null;\n video: ZypeVideo;\n idx: number;\n}\n\nconst FALLBACK_THUMBNAIL = \"https://i.iheart.com/v3/re/new_assets/612e55ad788a9e9d55d124e6\";\n\nexport function ZypeVideoComponent({ video, nextVideo, setCurrentVideo, idx }: ZypeVideoProps) {\n return (\n
\n
setCurrentVideo(video, nextVideo, idx)}>\n {video.title}\n
\n
\n
setCurrentVideo(video, nextVideo, idx)}>\n {video.title}\n
\n

{truncateString(video.description, 55)}

\n
\n
\n );\n}\n", "export const truncateString = (original: string, max: number) => {\n if (original.length < max) {\n return original;\n }\n\n let truncated = \"\";\n truncated = original.substr(0, max - 4);\n truncated = truncated.substr(0, Math.min(truncated.length, truncated.lastIndexOf(\" \")));\n return truncated + \" ...\";\n};\n", "import * as React from \"react\";\n\ninterface ZypePaginationProps {\n goToPrevPage: () => void;\n goToNextPage: () => void;\n isLoadingNext: boolean;\n currentPage: number;\n totalPages: number;\n}\n\nexport function ZypePagination({\n currentPage,\n totalPages,\n goToPrevPage,\n goToNextPage,\n isLoadingNext,\n}: ZypePaginationProps) {\n return (\n
\n \n Page {currentPage} of {totalPages}\n \n
\n );\n}\n", "import * as React from \"react\";\n\nimport { ZypeConfigTab, ZypeVideo, ZypeListVideosResponse } from \"./ZypeMedia.types\";\nimport { ZypeVideoComponent } from \"./ZypeVideo.component\";\nimport { ZypePagination } from \"./ZypePagination.component\";\nimport { PwsMediaService } from \"../service/pws-media.service\";\n\ninterface ZypeTabProps {\n setCurrentVideo: (video: ZypeVideo, nextVideo: ZypeVideo | null) => void;\n mediaService: PwsMediaService;\n isActiveTab: boolean;\n tab: ZypeConfigTab;\n}\n\ninterface ZypeVideoState {\n isLoadingNext: boolean;\n resume: string | null;\n pages: ZypeVideo[][];\n totalPages: number;\n curPage: number;\n}\n\nexport class ZypeTab extends React.Component {\n constructor(props: ZypeTabProps) {\n super(props);\n\n this.state = {\n isLoadingNext: false,\n totalPages: 1,\n resume: null,\n curPage: 1,\n pages: [],\n };\n }\n\n componentDidMount() {\n const { tab } = this.props;\n if (tab.videos && tab.videos.length && tab.pagination) {\n this.setState({\n totalPages: tab.pagination.pages,\n pages: [tab.videos],\n }, this.getOnAirVideo);\n } else {\n this.getOnAirVideo();\n }\n\n if (tab.resume) {\n this.setState(\n { resume: tab.resume },\n () => this.getNextPage(),\n );\n } else if (tab.slug !== \"search\") {\n this.getNextPage();\n }\n }\n\n getOnAirVideo = async () => {\n if (!this.props.tab.hasLive) {\n return;\n }\n\n const res = await this.props.mediaService.getOnAirVideo();\n\n if (res && res.video) {\n // make sure audio (guest host) stream doesn't load onl Dittocam tab\n if (this.props.tab.slug === \"dittocam\" && res.video.isAudio) {\n console.debug(\"Skipped live stream on Dittocam tab - audio-only\");\n } else {\n // set stream to audio-only for audio tab\n if (this.props.tab.slug === \"audio\") {\n res.video.isAudio = true;\n }\n const firstPage = this.state.pages.length ? [res.video, ...this.state.pages[0]] : [res.video];\n this.setState({ pages: [firstPage, ...this.state.pages.slice(1)] });\n console.debug(\"Got live video\", res);\n }\n } else {\n console.debug(\"No live video available\");\n }\n }\n\n goToNextPage = () => {\n this.setState(\n { curPage: this.state.curPage + 1 },\n () => {\n if (this.state.resume) {\n this.getNextPage();\n }\n },\n );\n }\n\n goToPrevPage = () => {\n this.setState({ curPage: this.state.curPage - 1 });\n }\n\n getNextPage = async () => {\n if (!this.props.tab.videos || this.state.resume) {\n this.setState({ isLoadingNext: true }, this.doGetNextPage);\n } else {\n console.error(`Can't get next page for tab \"${this.props.tab.title}\". No resume`);\n }\n }\n\n doGetNextPage = async () => {\n let resp: ZypeListVideosResponse | undefined;\n\n if (!this.props.tab.videos) {\n // resp = await this.props.mediaService.getVideos(null, { groupSlug: this.props.tab.slug });\n resp = await this.props.mediaService.getVideos(null, {\n categoryName: Object.keys(this.props.tab.categories)[0],\n categoryValue: Object.values(this.props.tab.categories)[0]\n });\n } else {\n resp = await this.props.mediaService.getVideos(this.state.resume);\n }\n\n if (resp) {\n this.setState({\n pages: [...this.state.pages, ...[resp.videos || []]],\n totalPages: resp.pagination.pages,\n resume: resp.resume,\n isLoadingNext: false,\n });\n } else {\n this.setState({ isLoadingNext: false });\n }\n }\n\n getNextVideo = (idx: number) => {\n const curPageVideos = this.state.pages[this.state.curPage - 1];\n const nextPageVideos = this.state.pages[this.state.curPage];\n\n if (curPageVideos && curPageVideos[idx + 1]) {\n return curPageVideos[idx + 1];\n }\n\n if (nextPageVideos && nextPageVideos[0]) {\n return nextPageVideos[0];\n }\n\n return null;\n }\n\n render() {\n const videos = this.state.pages[this.state.curPage - 1];\n\n return (\n
\n
\n {this.props.tab.slug === \"search\" && (

{this.props.tab.title}

)}\n\n \n
\n
\n {\n videos && videos.map((video, idx) => (\n \n ))\n }\n
\n
\n );\n }\n}\n", "import * as React from \"react\";\n\nimport { ZypeTabSkeleton } from \"./ZypeTabsSkeleton.component\";\nimport { ZypeConfigTab, ZypeVideo } from \"./ZypeMedia.types\";\nimport { PwsMediaService } from \"../service/pws-media.service\";\nimport { ZypeNavBar } from \"./ZypeNavBar.component\";\nimport { ZypeTab } from \"./ZypeTab.component\";\n\ninterface ZypeTabsProps {\n setCurrentVideo: (video: ZypeVideo, nextVideo: ZypeVideo | null) => void;\n setActiveTab: (idx: number) => void;\n mediaService: PwsMediaService;\n tabs: ZypeConfigTab[] | null;\n loadingTabs: boolean;\n activeTab: number;\n}\n\ninterface ZypeTabsState {\n loadingSearchResults: boolean;\n searchTab: ZypeConfigTab;\n searchTabActive: boolean;\n}\n\nconst searchTabConfig: ZypeConfigTab = {\n categories: {},\n hasLive: false,\n title: \"Search results\",\n slug: \"search\",\n resume: null,\n};\n\nexport class ZypeTabs extends React.Component {\n constructor(props: ZypeTabsProps) {\n super(props);\n\n this.state = {\n loadingSearchResults: true,\n searchTab: searchTabConfig,\n searchTabActive: false,\n };\n }\n\n setActiveTab = (idx: number) => {\n if (this.state.searchTabActive) {\n this.setState({ searchTabActive: false }, () => this.props.setActiveTab(idx));\n } else {\n this.props.setActiveTab(idx);\n }\n }\n\n onSearch = async (query: string) => {\n if (!query) {\n return console.info(\"Can't search with empty query param\");\n }\n\n searchTabConfig.title = `Search results for \"${query}\":`;\n\n this.setState(\n {\n searchTabActive: true,\n loadingSearchResults: true,\n searchTab: searchTabConfig,\n },\n () => this.doSearch(query),\n );\n }\n\n doSearch = async (query: string) => {\n const res = await this.props.mediaService.getVideos(null, { query });\n\n if (res) {\n this.setState({\n searchTab: { ...searchTabConfig, ...res },\n loadingSearchResults: false,\n });\n } else {\n console.warn(\"Search failed!\");\n this.setState({ searchTabActive: false, loadingSearchResults: false });\n }\n }\n\n render() {\n return (\n
\n \n
\n {this.props.tabs && this.props.tabs.map((tab, idx) => (\n \n ))}\n\n {/* Search */}\n {\n this.state.searchTabActive && this.state.loadingSearchResults\n ? \n : (\n \n )\n }\n
\n
\n );\n }\n}\n", "import React, { useEffect } from 'react';\n\ndeclare global {\n interface Window { googletag: any; gptadslots: any; }\n}\n\nexport interface ZypeAdProps {\n path: string;\n size: [number, number];\n id: string;\n} \n\nexport const ZypeAd = (props: ZypeAdProps) => {\n useEffect(() => {\n let gptadslots = window.gptadslots;\n let googletag = window.googletag || {};\n\n googletag.cmd = googletag.cmd || [];\n\n (function(){ var gads = document.createElement('script');\n gads.async = true; gads.type = 'text/javascript';\n gads.src = '//www.googletagservices.com/tag/js/gpt.js';\n var node = document.getElementsByTagName('script')[0];\n if(node && node.parentNode) {\n node.parentNode.insertBefore(gads, node);\n }\n })();\n \n googletag.cmd.push(function() {\n if(!gptadslots[4]) {\n // It should be already defined. If it isn't, do it here. If it is, then defining it twice breaks things\n gptadslots[4] = googletag.defineSlot(props.path, [props.size], props.id)\n .setTargeting('prnpage', ['videos'])\n .setTargeting('pos', ['top'])\n .addService(googletag.pubads());\n }\n \n googletag.pubads().enableSingleRequest();\n googletag.pubads().setTargeting('prntype', ['web'])\n .setTargeting('prngenre', ['conservative_talk']);\n googletag.pubads().enableAsyncRendering();\n googletag.enableServices();\n });\n });\n\n return (
);\n };\n", "import * as React from \"react\";\r\n\r\nimport { ZypeConfigTab, ZypeVideo, ZypeCategory, ZypeViewVideoResponse } from \"./ZypeMedia.types\";\r\nimport { ZypeTabsSkeleton } from \"./ZypeTabsSkeleton.component\";\r\nimport { PwsMediaService } from \"../service/pws-media.service\";\r\nimport { ZypePlayer } from \"./ZypePlayer.component\";\r\nimport { ZypeTabs } from \"./ZypeTabs.component\";\r\nimport { ZypeAd } from \"./ZypeAd.component\";\r\n\r\nimport \"./ZypeMedia.style.scss\";\r\n\r\ninterface ZypeMediaProps {\r\n viewVideoResponse: ZypeViewVideoResponse;\r\n episodeSlug: string | null;\r\n groupSlug: string | null;\r\n mediaService: PwsMediaService;\r\n isAuthenticated: boolean;\r\n pageSlug: string;\r\n}\r\n\r\ninterface ZypeMediaState {\r\n tabs: ZypeConfigTab[] | null;\r\n playerApiKey: string | null;\r\n nextVideo: ZypeVideo | null;\r\n curVideo: ZypeVideo | null;\r\n loadingTabs: boolean;\r\n activeTab: number;\r\n}\r\n\r\nexport class ZypeMedia extends React.Component {\r\n constructor(props: ZypeMediaProps) {\r\n super(props);\r\n\r\n this.state = {\r\n playerApiKey: null,\r\n loadingTabs: true,\r\n nextVideo: null,\r\n curVideo: null,\r\n activeTab: 0,\r\n tabs: null,\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n this.loadVideo(this.props.episodeSlug);\r\n this.handleHistoryTravel();\r\n }\r\n\r\n loadVideo = async (slug: string | null) => {\r\n if (!slug) {\r\n return this.initializeTabs();\r\n }\r\n\r\n let resp: ZypeViewVideoResponse | undefined = await this.props.mediaService.getVideoBySlug(slug);\r\n\r\n if (!resp || !resp.video) {\r\n return this.initializeTabs();\r\n }\r\n\r\n //if (!this.props.isAuthenticated && resp.video.subscriptionRequired) {\r\n let isAuthenticated = document.cookie.includes('STYXKEY_ACCESS_TOKEN');\r\n if ( !isAuthenticated && resp.video.subscriptionRequired ) {\r\n //return window.location.href = '/wp-login.php?redirect_to=' + window.location;\r\n let loginLinkEl = document.querySelector('a[href=\"#cnb-login-modal\"]');\r\n if (loginLinkEl instanceof HTMLElement) {\r\n loginLinkEl.click();\r\n }\r\n return;\r\n }\r\n\r\n // Show subscription require modal if user not yet subscription\r\n let userSubscribed = document.cookie.includes('STYXKEY_USER_SUBSCRIBED');\r\n if ( ! userSubscribed && isAuthenticated && resp.video.subscriptionRequired ) {\r\n let subsRequireLinkEl = document.getElementsByClassName(\"cnb-subs-require-md-link\")[0];\r\n if (subsRequireLinkEl instanceof HTMLElement) {\r\n subsRequireLinkEl.click();\r\n }\r\n return;\r\n }\r\n\r\n // Show subscription reactivate modal if user cancelled subscription\r\n let userCancelledSubs = document.cookie.includes('STYXKEY_USER_CANCELLED_SUBS');\r\n if ( userCancelledSubs && isAuthenticated && resp.video.subscriptionRequired ) {\r\n let subsReactivateLinkEl = document.getElementsByClassName(\"cnb-subs-reactivate-md-link\")[0];\r\n if (subsReactivateLinkEl instanceof HTMLElement) {\r\n subsReactivateLinkEl.click();\r\n }\r\n return;\r\n }\r\n\r\n this.pushVideoToHistory(resp.video, this.props.groupSlug);\r\n\r\n this.setState({ playerApiKey: resp.playerApiKey, curVideo: resp.video }, this.initializeTabs);\r\n }\r\n\r\n initializeTabs = async () => {\r\n const resp = await this.props.mediaService.getConfig();\r\n\r\n this.setState({ loadingTabs: false });\r\n if (resp) {\r\n const activeTabIdx = resp.tabs.findIndex(tab => tab.slug === this.props.groupSlug);\r\n\r\n let curTabVideos: ZypeVideo[] = [];\r\n\r\n if (activeTabIdx >= 0 && resp.tabs[activeTabIdx].videos) {\r\n curTabVideos = resp.tabs[activeTabIdx].videos!;\r\n } else if (resp.tabs[0] && resp.tabs[0].videos) {\r\n curTabVideos = resp.tabs[0].videos!;\r\n }\r\n\r\n this.setState({\r\n loadingTabs: false,\r\n tabs: resp.tabs,\r\n nextVideo: curTabVideos ? curTabVideos[0] : null,\r\n activeTab: activeTabIdx >= 0 ? activeTabIdx : 0,\r\n playerApiKey: resp.playerApiKey,\r\n });\r\n\r\n // fallback in case if wasn't able to load initial video id\r\n if (!this.state.curVideo && curTabVideos) {\r\n this.setCurrentVideo(curTabVideos[0]);\r\n }\r\n }\r\n }\r\n\r\n setActiveTab = (activeTab: number) => {\r\n this.setState({ activeTab });\r\n }\r\n\r\n setCurrentVideo = (curVideo: ZypeVideo | null, nextVideo: ZypeVideo | null = null) => {\r\n if (!curVideo) {\r\n return console.warn(\"Can't set curVideo to null\");\r\n }\r\n\r\n // if (!this.props.isAuthenticated && curVideo.subscriptionRequired) {\r\n let isAuthenticated = document.cookie.includes('STYXKEY_ACCESS_TOKEN');\r\n if ( !isAuthenticated && curVideo.subscriptionRequired ) {\r\n //return window.location.href = '/wp-login.php?redirect_to=' + window.location;\r\n let loginLinkEl = document.querySelector('a[href=\"#cnb-login-modal\"]');\r\n if (loginLinkEl instanceof HTMLElement) {\r\n loginLinkEl.click();\r\n }\r\n return;\r\n }\r\n\r\n // Show subscription require modal if user not yet subscription\r\n let userSubscribed = document.cookie.includes('STYXKEY_USER_SUBSCRIBED');\r\n if ( ! userSubscribed && isAuthenticated && curVideo.subscriptionRequired ) {\r\n let subsRequireLinkEl = document.getElementsByClassName(\"cnb-subs-require-md-link\")[0];\r\n if (subsRequireLinkEl instanceof HTMLElement) {\r\n subsRequireLinkEl.click();\r\n }\r\n return;\r\n }\r\n\r\n // Show subscription reactivate modal if user cancelled subscription\r\n let userCancelledSubs = document.cookie.includes('STYXKEY_USER_CANCELLED_SUBS');\r\n if ( userCancelledSubs && isAuthenticated && curVideo.subscriptionRequired ) {\r\n let subsReactivateLinkEl = document.getElementsByClassName(\"cnb-subs-reactivate-md-link\")[0];\r\n if (subsReactivateLinkEl instanceof HTMLElement) {\r\n subsReactivateLinkEl.click();\r\n }\r\n return;\r\n }\r\n\r\n this.pushVideoToHistory(curVideo);\r\n this.setState({ curVideo }, () => this.setNextVideo(nextVideo));\r\n }\r\n\r\n // needed if video was originally fetched while unauthenticated\r\n reFetchCurVideo = async () => {\r\n if (!this.state.curVideo) {\r\n return console.error(\"No current video to re-fetch\");\r\n }\r\n\r\n const res = await this.props.mediaService.getVideoBySlug(this.state.curVideo.slug);\r\n\r\n // if (!this.props.isAuthenticated && res?.video.subscriptionRequired) {\r\n let isAuthenticated = document.cookie.includes('STYXKEY_ACCESS_TOKEN');\r\n if ( !isAuthenticated && res?.video.subscriptionRequired ) {\r\n //return window.location.href = '/wp-login.php?redirect_to=' + window.location;\r\n let loginLinkEl = document.querySelector('a[href=\"#cnb-login-modal\"]');\r\n if (loginLinkEl instanceof HTMLElement) {\r\n loginLinkEl.click();\r\n }\r\n return;\r\n }\r\n\r\n // Show subscription require modal if user not yet subscription\r\n let userSubscribed = document.cookie.includes('STYXKEY_USER_SUBSCRIBED');\r\n if ( ! userSubscribed && isAuthenticated && res?.video.subscriptionRequired ) {\r\n let subsRequireLinkEl = document.getElementsByClassName(\"cnb-subs-require-md-link\")[0];\r\n if (subsRequireLinkEl instanceof HTMLElement) {\r\n subsRequireLinkEl.click();\r\n }\r\n return;\r\n }\r\n\r\n // Show subscription reactivate modal if user cancelled subscription\r\n let userCancelledSubs = document.cookie.includes('STYXKEY_USER_CANCELLED_SUBS');\r\n if ( userCancelledSubs && isAuthenticated && res?.video.subscriptionRequired ) {\r\n let subsReactivateLinkEl = document.getElementsByClassName(\"cnb-subs-reactivate-md-link\")[0];\r\n if (subsReactivateLinkEl instanceof HTMLElement) {\r\n subsReactivateLinkEl.click();\r\n }\r\n return;\r\n }\r\n\r\n if (res) {\r\n this.setState({ curVideo: res.video });\r\n }\r\n }\r\n\r\n getNextVideo = async () => {\r\n if (!this.state.curVideo) {\r\n console.warn(\"Can't get next video - current video is not set\");\r\n return null;\r\n }\r\n\r\n if (!this.state.curVideo.id) {\r\n console.warn(\"Can't get next video - current video doesn't have an id\");\r\n return null;\r\n }\r\n\r\n // const res = await this.props.mediaService.getNextVideo(this.state.curVideo.id);\r\n const res = await this.props.mediaService.getNextVideo(this.state.curVideo.publishedAt);\r\n\r\n if (res) {\r\n return res.video;\r\n } else {\r\n console.warn(\"No next video found\");\r\n return null;\r\n }\r\n }\r\n\r\n setNextVideo = async (nextVideo: ZypeVideo | null) => {\r\n if (nextVideo) {\r\n return this.setState({ nextVideo });\r\n }\r\n\r\n nextVideo = await this.getNextVideo();\r\n\r\n if (nextVideo) {\r\n this.setState({ nextVideo });\r\n }\r\n }\r\n\r\n playNextVideo = async () => {\r\n console.debug(\"Play next video\");\r\n if (this.state.nextVideo) {\r\n this.setCurrentVideo(this.state.nextVideo);\r\n } else {\r\n this.setCurrentVideo(await this.getNextVideo());\r\n }\r\n }\r\n\r\n getTabByCategories = (categories: ZypeCategory[]) =>\r\n this.state.tabs\r\n ? this.state.tabs.find(tab =>\r\n categories.some(c =>\r\n !!tab.categories[c.title]\r\n && c.value.some(v => tab.categories[c.title] === v),\r\n ),\r\n )\r\n : null\r\n\r\n pushVideoToHistory = (video: ZypeVideo, groupSlug?: string | null) => {\r\n if (!groupSlug) {\r\n const tab = this.getTabByCategories(video.categories);\r\n if (tab) {\r\n groupSlug = tab.slug;\r\n } else {\r\n groupSlug = this.state.tabs ? this.state.tabs[this.state.activeTab].slug : null;\r\n }\r\n }\r\n\r\n if (!groupSlug) {\r\n return console.debug(\"Can't add video to history - couldn't figure out the tab\");\r\n }\r\n\r\n window.history.pushState({ video }, video.title, `/${this.props.pageSlug}/${groupSlug}/${video.slug}/`);\r\n }\r\n\r\n handleHistoryTravel() {\r\n // handle user clicking back/forth in browser navigation\r\n window.onpopstate = (e: PopStateEvent) => {\r\n if (e.state && e.state.video) {\r\n this.setState({ curVideo: e.state.video, nextVideo: null });\r\n }\r\n };\r\n }\r\n\r\n render() {\r\n return(\r\n
\r\n \r\n {\r\n this.state.loadingTabs\r\n ? \r\n : (\r\n \r\n )\r\n }\r\n
\r\n \r\n
\r\n
\r\n );\r\n }\r\n}\r\n", "import React from 'react';\r\n\r\nimport { PwsMediaService } from \"./service/pws-media.service\";\r\nimport { ZypeMedia } from \"./zype/ZypeMedia.component\";\r\nimport { ZypeViewVideoResponse } from './zype/ZypeMedia.types';\r\n\r\nexport interface CnbMediaProps {\r\n pwsHost: string;\r\n showSlug: string;\r\n groupSlug: string | null;\r\n episodeSlug: string | null;\r\n pageSlug: string;\r\n isAuthenticated: boolean;\r\n}\r\n\r\nexport interface CnbMediaState {\r\n isAuthenticated: boolean;\r\n}\r\n\r\nexport default class CnbMediaApp extends React.Component {\r\n private mediaService: PwsMediaService;\r\n\r\n constructor(props: CnbMediaProps) {\r\n super(props);\r\n\r\n //this.mediaService = new PwsMediaService(props.showSlug, props.pwsHost);\r\n this.mediaService = new PwsMediaService();\r\n\r\n this.state = {\r\n isAuthenticated: this.props.isAuthenticated || document.cookie.includes('STYXKEY_ACCESS_TOKEN')\r\n }\r\n }\r\n\r\n render() {\r\n const initialVideoResponse: ZypeViewVideoResponse = {\r\n authenticated: this.props.isAuthenticated,\r\n playerApiKey: \"\",\r\n video: {\r\n id: null,\r\n title: \"\",\r\n slug: \"\",\r\n description: \"\",\r\n shortDescription: \"\",\r\n thumbnails: [],\r\n categories: [],\r\n publishedAt: \"\",\r\n subscriptionRequired: false,\r\n manifest: null,\r\n onAir: false,\r\n isAudio: false,\r\n duration: 0,\r\n autoplay: false,\r\n }\r\n }\r\n\r\n return (\r\n \r\n );\r\n }\r\n}\r\n", "import React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport CnbMediaApp from \"./CnbMediaApp\";\n\nconst rootElement = document.getElementById(\"cnb-media-app\");\n\nif (rootElement) {\n const data = rootElement.getAttribute('data-props') || \"{}\";\n const props = JSON.parse(data);\n\n ReactDOM.render(, rootElement);\n}\n" ], "sourceRoot": "" }