From 0f9c498c16c83b8d8ebd05e48dcff8d1467b566d Mon Sep 17 00:00:00 2001 From: newrain001 Date: Mon, 9 May 2022 10:29:54 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 3 +- static/css/swiper-bundle.min.css | 13 + static/css/video/main-css.css | 775 +++++++++++++++++++++++++++++++ static/css/video/style.css | 212 +++++++++ static/images/play.jpg | Bin 0 -> 4680 bytes static/images/thumbs.jpg | Bin 0 -> 5600 bytes static/images/view.jpg | Bin 0 -> 12222 bytes static/js/swiper-bundle.min.js | 14 + static/js/video/superVideo.js | 91 ++++ templates/nav/videolist.html | 47 ++ templates/nav/videoview.html | 157 +++++++ 11 files changed, 1311 insertions(+), 1 deletion(-) create mode 100644 static/css/swiper-bundle.min.css create mode 100644 static/css/video/main-css.css create mode 100644 static/css/video/style.css create mode 100644 static/images/play.jpg create mode 100644 static/images/thumbs.jpg create mode 100644 static/images/view.jpg create mode 100644 static/js/swiper-bundle.min.js create mode 100644 static/js/video/superVideo.js create mode 100644 templates/nav/videolist.html create mode 100644 templates/nav/videoview.html diff --git a/.gitignore b/.gitignore index c649ac7..2588e11 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ *.pyc __pycache__/ .idea/ -venv/ \ No newline at end of file +venv/ +upload/ \ No newline at end of file diff --git a/static/css/swiper-bundle.min.css b/static/css/swiper-bundle.min.css new file mode 100644 index 0000000..e0461a8 --- /dev/null +++ b/static/css/swiper-bundle.min.css @@ -0,0 +1,13 @@ +/** + * Swiper 8.0.7 + * Most modern mobile touch slider and framework with hardware accelerated transitions + * https://swiperjs.com + * + * Copyright 2014-2022 Vladimir Kharlampidi + * + * Released under the MIT License + * + * Released on: March 4, 2022 + */ + +@font-face{font-family:swiper-icons;src:url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA');font-weight:400;font-style:normal}:root{--swiper-theme-color:#007aff}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;box-sizing:content-box}.swiper-android .swiper-slide,.swiper-wrapper{transform:translate3d(0px,0,0)}.swiper-pointer-events{touch-action:pan-y}.swiper-pointer-events.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d,.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-horizontal.swiper-css-mode>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-vertical.swiper-css-mode>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-centered>.swiper-wrapper::before{content:'';flex-shrink:0;order:9999}.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:'';position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:calc(var(--swiper-navigation-size)/ 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(0px - (var(--swiper-navigation-size)/ 2));z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color,var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;text-transform:none;font-variant:initial;line-height:1}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:10px;right:auto}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:'prev'}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:10px;left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:'next'}.swiper-button-lock{display:none}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translate3d(0,0,0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:10px;left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));display:inline-block;border-radius:50%;background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color,var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:10px;top:50%;transform:translate3d(0px,-50%,0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:4px;left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-horizontal>.swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper-slide-visible .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{100%{transform:rotate(360deg)}}.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-wrap:wrap;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-next+.swiper-slide,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:'';background:#000;position:absolute;left:0;top:0;bottom:0;right:0;filter:blur(50px)}.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{transform-origin:center bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden} \ No newline at end of file diff --git a/static/css/video/main-css.css b/static/css/video/main-css.css new file mode 100644 index 0000000..954a118 --- /dev/null +++ b/static/css/video/main-css.css @@ -0,0 +1,775 @@ +@font-face { + font-family: 'iconfont'; /* project id 1867770 */ + src: url('https://at.alicdn.com/t/font_1867770_5pzef3csvso.eot'); + src: url('https://at.alicdn.com/t/font_1867770_5pzef3csvso.eot?#iefix') format('embedded-opentype'), + url('https://at.alicdn.com/t/font_1867770_5pzef3csvso.woff2') format('woff2'), + url('https://at.alicdn.com/t/font_1867770_5pzef3csvso.woff') format('woff'), + url('https://at.alicdn.com/t/font_1867770_5pzef3csvso.ttf') format('truetype'), + url('https://at.alicdn.com/t/font_1867770_5pzef3csvso.svg#iconfont') format('svg'); + } + +.sv-target video { + background-color: #000000; + object-fit: fill; + cursor: pointer; +} + +.sv-font { + font-family: 'iconfont'; +} + +.sv-pic-pic { + color: #ffffff; + font-size: 20px; + margin-right: 6px; +} + +.sv-play { + color: #ffffff; + font-size: 20px; +} + +.sv-fontBtn { + color: #ffffff; + font-size: 20px; +} + +.sv-next { + color: #ffffff; + font-size: 20px; +} + +.sv-fullScreen { + color: #ffffff; + font-size: 20px; +} + +.sv-cancelFull { + color: #ffffff; + font-size: 20px; +} + +.sv-target { + position: relative; +} +.sv-control { + position: absolute; + bottom: 0; + left: 0; + width: 100%; + height: 60px; + background-color: rgba(0, 0, 0, 0.5); + display: flex; + flex-direction: row; + justify-content: space-between; +} +.sv-play-container { + height: 100%; + /* background-color: royalblue; */ + display: flex; + flex-direction: row; + padding-right: 10px; +} +.sv-control-r { + height: 100%; + /* background-color: royalblue; */ + display: flex; + flex-direction: row; + padding-left: 10px; + padding-right: 10px; +} +.sv-play-container button.sv-playBtn { + background: none; + border: none; + cursor: pointer; + padding: 0 10px; + outline: none; + color: inherit; + text-align: inherit; + font: inherit; + line-height: inherit; + margin-left: 10px; +} + +.sv-control-r .showMute { + background: none; + border: none; + cursor: pointer; + padding: 0 10px; + outline: none; + color: inherit; + text-align: inherit; + font: inherit; + line-height: inherit; + position: relative; +} +.showMute span:nth-child(1) { + display: block; + padding: 20px 0; +} + +.sv-time { + height: 100%; + color: #ffffff; + display: flex; + flex-direction: row; + align-items: center; + font-size: 12px; +} + +.sv-time-split { + padding: 0 4px; +} + +.sv-mutePanel { + position: absolute; + top: -120px; + left: 0; + width: 20px; + height: 80px; + background-color: rgba(0, 0, 0, 0.8); + display: flex; + flex-direction: column; + padding: 16px 6px; + border-radius: 4px; +} + +.sv-mute-num { + width: 100%; + height: 20px; + background-color: transparent; + color: #ffffff; + font-size: 12px; + text-align: center; + margin-bottom: 4px; +} + +.sv-mute-slider { + flex: 1; + width: 3px; + background-color: #ffffff; + margin: 0 auto; + position: relative; + display: flex; + flex-direction: column-reverse; +} + +.sv-mute-sliderRange { + width: 100%; + background-color: #00a1d6; +} + +.sv-control-r button.sv-mute-button { + position: absolute; + top: 0; + left: -4.5px; + width: 12px; + height: 12px; + border-radius: 50%; + z-index: 10; + background-color: #00a1d6; + border: 0; + cursor: pointer; + outline: none; +} + +.sv-progressBar { + position: absolute; + /* top: 0; */ + bottom: 60px; + left: 2%; + width: 96%; + height: 2px; + background-color: hsla(0,0%,100%,.2); + border-radius: 4px; + cursor: pointer; +} + +.sv-cacheProgress { + width: 0%; + height: 100%; + background-color: #7a7878; + border-radius: 4px; +} + +.sv-progressNum { + width: 0%; + height: 100%; + position: absolute; + top: 0; + left: 0; + border-radius: 4px; + background-color: #00a1d6; +} + +.sv-progressBtn { + position: absolute; + left: 0%; + top: -7px; + width: 16px; + height: 16px; + border-radius: 50%; + background-color: rgba(0, 161, 214, 0.5); + cursor: pointer; +} +.sv-progressBtn>div { + width: 10px; + height: 10px; + border-radius: 50%; + background-color: #00a1d6; + margin-top: 2.6px; + margin-left: 2.8px; +} + +.hide { + display: none!important; +} + +.sv-full-screen { + position: fixed!important; + width: 100%!important; + height: 100%!important; + left: 0!important; + top: 0!important; + margin: 0!important; + padding: 0!important; + z-index: 9999999!important; +} + +/* loading */ +.sv-container-loading { + width: 40vw; + height: 40vw; + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: 0; + margin: auto; + overflow: hidden; + } + + .sv-common { + height: 5vw; + max-height: 100%; + overflow: auto; + width: 2vw; + margin: auto; + max-width: 100%; + position: absolute; + border-radius: 0vw 10vw 0vw 10vw; + box-shadow: inset 0vw 0vw 0vw .1vw #E645D0, 0vw 0vw 1.5vw 0vw #E645D0; + } + + .sv-one { + transform: rotate(45deg); + left: 0; + right: 0; + top: 0; + bottom: 7.5vw; + } + + .sv-two { + transform: rotate(90deg); + left: 5.5vw; + right: 0; + top: 0; + bottom: 5.5vw; + } + + .sv-three { + transform: rotate(135deg); + left: 7.5vw; + right: 0; + top: 0; + bottom: 0; + } + + .sv-four { + transform: rotate(180deg); + left: 5.5vw; + right: 0; + top: 5.5vw; + bottom: 0; + } + + .sv-five { + transform: rotate(225deg); + left: 0; + right: 0; + top: 7.5vw; + bottom: 0; + } + + .sv-six { + transform: rotate(270deg); + left: 0; + right: 5.5vw; + top: 5.5vw; + bottom: 0; + } + + .sv-seven { + transform: rotate(315deg); + left: 0; + right: 7.5vw; + top: 0; + bottom: 0; + } + + .sv-eight { + transform: rotate(360deg); + left: 0; + right: 5.5vw; + top: 0; + bottom: 5.5vw; + } + + .sv-one { + animation: one 1s ease infinite; + -moz-animation: one 1s ease infinite; + /* Firefox */ + -webkit-animation: one 1s ease infinite; + /* Safari and Chrome */ + -o-animation: one 1s ease infinite; + /* Opera */ + } + + @keyframes one { + 0%, + 100% {} + 50% { + box-shadow: inset 0vw 0vw 0vw .1vw #17E1E6, 0vw 0vw 1.5vw 0vw #17E1E6; + } + } + + .sv-two { + animation: two 1s .125s ease infinite; + -moz-animation: two 1s .125s ease infinite; + /* Firefox */ + -webkit-animation: two 1s .125s ease infinite; + /* Safari and Chrome */ + -o-animation: two 1s .125s ease infinite; + /* Opera */ + } + + @keyframes two { + 0%, + 100% {} + 50% { + box-shadow: inset 0vw 0vw 0vw .1vw #17E1E6, 0vw 0vw 1.5vw 0vw #17E1E6; + } + } + + .sv-three { + animation: three 1s .25s ease infinite; + -moz-animation: three 1s .25s ease infinite; + /* Firefox */ + -webkit-animation: three 1s .25s ease infinite; + /* Safari and Chrome */ + -o-animation: three 1s .25s ease infinite; + /* Opera */ + } + + @keyframes three { + 0%, + 100% {} + 50% { + background: ; + box-shadow: inset 0vw 0vw 0vw .1vw #17E1E6, 0vw 0vw 1.5vw 0vw #17E1E6; + } + } + + .sv-four { + animation: four 1s .375s ease infinite; + -moz-animation: four 1s .375s ease infinite; + /* Firefox */ + -webkit-animation: four 1s .375s ease infinite; + /* Safari and Chrome */ + -o-animation: four 1s .375s ease infinite; + /* Opera */ + } + + @keyframes four { + 0%, + 100% {} + 50% { + background: ; + box-shadow: inset 0vw 0vw 0vw .1vw #17E1E6, 0vw 0vw 1.5vw 0vw #17E1E6; + } + } + + .sv-five { + animation: five 1s .5s ease infinite; + -moz-animation: five 1s .5s ease infinite; + /* Firefox */ + -webkit-animation: five 1s .5s ease infinite; + /* Safari and Chrome */ + -o-animation: five 1s .5s ease infinite; + /* Opera */ + } + + @keyframes five { + 0%, + 100% {} + 50% { + box-shadow: inset 0vw 0vw 0vw .1vw #17E1E6, 0vw 0vw 1.5vw 0vw #17E1E6; + } + } + + .sv-six { + animation: six 1s .625s ease infinite; + -moz-animation: six 1s .625s ease infinite; + /* Firefox */ + -webkit-animation: six 1s .625s ease infinite; + /* Safari and Chrome */ + -o-animation: six 1s .625s ease infinite; + /* Opera */ + } + + @keyframes six { + 0%, + 100% {} + 50% { + box-shadow: inset 0vw 0vw 0vw .1vw #17E1E6, 0vw 0vw 1.5vw 0vw #17E1E6; + } + } + + .sv-seven { + animation: seven 1s .750s ease infinite; + -moz-animation: seven 1s .750s ease infinite; + /* Firefox */ + -webkit-animation: seven 1s .750s ease infinite; + /* Safari and Chrome */ + -o-animation: seven 1s .750s ease infinite; + /* Opera */ + } + + @keyframes seven { + 0%, + 100% {} + 50% { + box-shadow: inset 0vw 0vw 0vw .1vw #17E1E6, 0vw 0vw 1.5vw 0vw #17E1E6; + } + } + + .sv-eight { + animation: eight 1s .875s ease infinite; + -moz-animation: eight 1s .875s ease infinite; + /* Firefox */ + -webkit-animation: eight 1s .875s ease infinite; + /* Safari and Chrome */ + -o-animation: eight 1s .875s ease infinite; + /* Opera */ + } + + @keyframes eight { + 0%, + 100% {} + 50% { + box-shadow: inset 0vw 0vw 0vw .1vw #17E1E6, 0vw 0vw 1.5vw 0vw #17E1E6; + } + } + + .sv-container-loading { + animation: container 5s linear infinite; + -moz-animation: container 5s linear infinite; + /* Firefox */ + -webkit-animation: container 5s linear infinite; + /* Safari and Chrome */ + -o-animation: container 5s linear infinite; + /* Opera */ + } + + @keyframes container { + from { + transform: rotate(0deg); + } + to { + transform: rotate(-360deg); + } + } + + + +/* .sv-loading{ + position: absolute; + left: 48%; + top: 48%; +} */ +/* .sv-loading span{ + display: inline-block; + width: 4px; + height: 100%; + border-radius: 4px; + background: #00a1d6; + -webkit-animation: load 1s ease infinite; + animation: load 1s ease infinite; +} +@keyframes load{ + 0%,100%{ + height: 20px; + background: #00a1d6; + } + 50%{ + height: 40px; + margin: -15px 0; + background: lightblue; + } +} +@-webkit-keyframes load{ + 0%,100%{ + height: 20px; + background: #00a1d6; + } + 50%{ + height: 40px; + margin: -15px 0; + background: lightblue; + } +} +@-o-keyframes load{ + 0%,100%{ + height: 20px; + background: #00a1d6; + } + 50%{ + height: 40px; + margin: -15px 0; + background: lightblue; + } +} +@-moz-keyframes load{ + 0%,100%{ + height: 20px; + background: #00a1d6; + } + 50%{ + height: 40px; + margin: -15px 0; + background: lightblue; + } +} +.sv-loading span:nth-child(2){ + -webkit-animation-delay:0.2s; + animation-delay:0.2s; +} +.sv-loading span:nth-child(3){ + -webkit-animation-delay:0.4s; + animation-delay:0.4s; +} +.sv-loading span:nth-child(4){ + -webkit-animation-delay:0.6s; + animation-delay:0.6s; +} +.sv-loading span:nth-child(5){ + -webkit-animation-delay:0.8s; + animation-delay:0.8s; +} */ + +/* 弹幕 */ +.sv-brrage { + position: absolute; + padding: 4px; + background-color: transparent; + display: flex; + flex-direction: row; + white-space: nowrap; + width: auto; + word-wrap: break-word; + max-width: 500px; + min-width: 100px; +} + +.sv-brrage-center { + text-shadow: rgb(0, 0, 0) 1px 0px 1px, rgb(0, 0, 0) 0px 1px 1px, rgb(0, 0, 0) 0px -1px 1px, rgb(0, 0, 0) -1px 0px 1px; +} + +/* 画中画 */ + +.sv-picinpic { + position: absolute; + z-index: 22; + position: absolute; + top: 20px; + right: 20px; + white-space: nowrap; + height: 36px; + padding: 0 12px; + overflow: visible; + border-radius: 2px; + border-radius: 18px; + background: #2b2b2b; + background: rgba(43,43,43,.8); + color: #fff; + display: flex; + flex-direction: row; + align-items: center; + justify-content: center; + font-size: 14px; + cursor: pointer; +} +.sv-picinpic:hover { + background: linear-gradient(90deg,#4ca9c7 0,#03bbf7)!important +} + +/* 暂停按钮 */ +.sv-svgPause { + position: absolute; + right: 34px; + bottom: 70px; + cursor: pointer; +}.sv-el-control-style { + padding-right: 10px; + padding-left: 10px; + height: 100%; + display: flex; + flex-direction: row; +} + +.sv-nextBtn { + background: none; + border: none; + cursor: pointer; + outline: none; + text-align: inherit; +} + +.sv-speedBtn { + background: none; + border: none; + cursor: pointer; + outline: none; + text-align: inherit; + position: relative; +} +.sv-speedBtn span:nth-child(1) { + display: block; + padding: 20px 0; +} +.sv-speedBtn .sv-speed-btn { + position: absolute; + bottom: 54px; + left: -10px; + padding: 10px; + border-radius: 4px; + background-color: rgba(0, 0, 0, 0.8); + /* box-sizing: border-box; + border: 1px solid #ffffff; */ +} +.sv-speedBtn .sv-speed-btn ul { + padding: 0; + margin: 0; +} +.sv-speedBtn .sv-speed-btn ul li { + list-style: none; + font-size: 12px; + line-height: 20px; + cursor: pointer; +} +.sv-speedBtn .sv-speed-btn ul li:hover{ + color: #00a1d6; +} +.sv-active{ + color: #00a1d6!important; +} + +.sv-control-c { + height: 100%; +} + +/* 弹幕控件 */ +.sv-barrage { + display: flex; + flex-direction: row; + align-items: center; + height: 100%; + position: relative; +} +.sv-barrage-a { + height: 26px; +} +.sv-barrage-input { + height: 17px; + outline: none; + padding: 6px 30px; + border-top-left-radius: 4px; + border-bottom-left-radius: 4px; + border-top: 1px solid #333333; + border-left: 1px solid #333333; + border-bottom: 1px solid #333333; + border-right: 1px solid #00a1d6; + background: none; + font-size: 12px; + color: #fff; +} +.sv-barrage-button { + height: 31px; + background-color: #00a1d6; + color: #fff; + width: 60px; + min-width: 60px; + text-align: center; + cursor: pointer; + box-sizing: border-box; + border-top: 1px solid #333333; + border-right: 1px solid #333333; + border-bottom: 1px solid #333333; + border-left: 1px solid #00a1d6; + border-top-right-radius: 4px; + border-bottom-right-radius: 4px; + outline: none; + vertical-align: middle; +} +.sv-barrage-button:hover{ + background-color: #03bbf7; + border-left: 1px solid #03bbf7; +} +.sv-barrage-font { + position: absolute; + left: 6px; + top: 16px; + cursor: pointer; +} + +.sv-apanel { + position: absolute; + bottom: 54px; + left: -10px; + padding: 10px; + border-radius: 4px; + background-color: rgba(0, 0, 0, 0.8); + width: 200px; + height: 100px; + display: flex; + flex-direction: column; + color: #fff; + z-index: 99999; +} +.sv-apanel-item { + display: flex; + flex-direction: column; + overflow: hidden; +} +.sv-apanel-item span { + font-size: 12px; +} +.sv-apanel-item ul { + margin: 0; + padding: 0; + margin-top: 8px; +} +.sv-apanel-item ul li { + list-style: none; + background-color: #fff; + display: block; + width: 20px; + height: 20px; + margin: 4px; + float: left; + cursor: pointer; +} +.activeColor{ + box-sizing: border-box; + border: 2px solid #ffff; +} \ No newline at end of file diff --git a/static/css/video/style.css b/static/css/video/style.css new file mode 100644 index 0000000..f337da8 --- /dev/null +++ b/static/css/video/style.css @@ -0,0 +1,212 @@ +@charset "utf-8"; +* { + padding: 0; + margin: 0; + font-weight: 400; +} + +ul { + list-style: none; +} +a { + text-decoration: none; + color: #666; + cursor: pointer; +} +a:hover { + color: #136EC3; +} +.main { + width: 1187px; + margin: 30px auto; +} +.dy-content .dy-videos { + padding: 10px; + margin-left: -10px; + margin-right: -10px; + min-height: 500px; + overflow: hidden; + position: relative +} +.dy-content .dy-videos .dy-video-item { + float: left; + width: 180px; + margin-right: 20px; + margin-bottom: 18px; + position: relative +} +.dy-content .dy-videos .dy-video-item .dy-video-poster { + position: relative +} +.dy-content .dy-videos .dy-video-item .dy-video-link { + display: block; + height: 235px; + overflow: hidden +} +.dy-content .dy-videos .dy-video-item .dy-video-link .s-pay { + position: absolute; + width: 56px; + height: 43px; + background: url(../images/paysite.png) no-repeat 0 0; + left: 0; + top: -1px; +} +.dy-content .dy-videos .dy-video-item .dy-video-date { + position: absolute; + bottom: 6px; + right: 10px; + color: #fff; + line-height: 18px; + padding: 0 4px; + font-size: 12px; + background-color: #000; + background-color: rgba(0, 0, 0, .5); + border-radius: 3px; + filter: alpha(opacity=60) +} +.dy-content .dy-videos .dy-video-item-last { + margin-right: 0 +} +.dy-content .dy-videos .dy-video-primary { + position: relative; + background-color: #fff; + height: 40px; + padding: 5px; + line-height: 20px +} +.dy-content .dy-videos .dy-video-primary .dy-video-title { + white-space: nowrap; + overflow: hidden; + -o-text-overflow: ellipsis; + text-overflow: ellipsis; + margin-right: 24px; + color: #292929; + font-size: 14px +} +.dy-content .dy-videos .dy-video-primary .dy-video-intro { + color: #A7A7A7; + font-size: 12px; + white-space: nowrap; + overflow: hidden; + -o-text-overflow: ellipsis; + text-overflow: ellipsis +} +.dy-content .dy-videos .dy-video-primary .dy-video-rating { + position: absolute; + right: 5px; + top: 5px; + color: #FF3728; + font-size: 15px +} +.dy-content .dy-videos ul li.dy-video-item .dy-video-meta { + display: none +} +.dy-content .dy-videos ul li.dy-video-item:hover .dy-video-poster { + z-index: 3 +} +.dy-content .dy-videos ul li.dy-video-item:hover .dy-video-meta { + display: block; +} +.dy-content .dy-videos .dy-video-meta .dy-video-meta-bg { + position: absolute; + top: -4px; + width: 500px; + height: 242px; + background-color: #fff; + border: 1px solid #000; + border-radius: 2px; + z-index: 2; + box-shadow: -1px 10px 35px 0px rgba(0,0,0,0.39); +-webkit-box-shadow: -1px 10px 35px 0px rgba(0,0,0,0.39); +-moz-box-shadow: -1px 10px 35px 0px rgba(0,0,0,0.39); +} +.dy-content .dy-videos .dy-video-meta .dy-video-meta-dy { + position: absolute; + top: 0; + width: 280px; + padding: 0 18px; + height: 235px; + background-color: #fff; + overflow: hidden; + z-index: 4 +} +.dy-content .dy-videos .dy-video-meta .dy-video-title { + line-height: 40px; + white-space: nowrap; + overflow: hidden; + -o-text-overflow: ellipsis; + text-overflow: ellipsis; + color: #558dy9 +} +.dy-content .dy-videos .dy-video-meta .dy-video-title a { + color: #558dy9; + font-size: 18px; + text-decoration: none +} +.dy-content .dy-videos .dy-video-meta .dy-video-meta-list { +*zoom: 1; + position: relative +} +.dy-content .dy-videos .dy-video-meta .dy-video-meta-list:after { + content: "\0020"; + display: block; + height: 0; + clear: both; + overflow: hidden; + visibility: hidden +} +.dy-content .dy-videos .dy-video-meta .dy-video-meta-list li { + float: left; + line-height: 25px; + height: 25px +} +.dy-content .dy-videos .dy-video-meta .dy-video-meta-list li a { + color: #427fd0 +} +.dy-content .dy-videos .dy-video-meta .dy-video-meta-list .dy-video-actors { + float: none; + white-space: nowrap; + overflow: hidden; + -o-text-overflow: ellipsis; + text-overflow: ellipsis; + color: #427FD0 +} +.dy-content .dy-videos .dy-video-meta .dy-split { + margin-left: 5px; + color: #a7a9ac +} +.dy-content .dy-videos .dy-video-meta .dy-video-tip { + color: #a7a9ac +} +.dy-content .dy-videos .dy-video-meta .dy-video-meta-none, .dy-content .dy-videos .dy-video-meta .dy-video-meta-filter { + color: #444 +} +.dy-content .dy-videos .dy-video-meta .dy-video-intro { + margin-top: 10px; + line-height: 20px; + height: 60px; + overflow: hidden; + color: #5f5f5f +} +.dy-content .dy-videos .dy-video-meta .dy-video-intro-more { + color: #558dy9 +} +.dy-content .dy-videos .dy-video-meta .dy-video-rating { + position: absolute; + right: 30px; + top: 10px; + color: #FF3728; + font-size: 16px +} +.dy-content .dy-videos .dy-video-meta-left .dy-video-meta-bg { + right: -4px +} +.dy-content .dy-videos .dy-video-meta-left .dy-video-meta-dy { + right: 180px +} +.dy-content .dy-videos .dy-video-meta-right .dy-video-meta-bg { + left: -4px +} +.dy-content .dy-videos .dy-video-meta-right .dy-video-meta-dy { + left: 180px +} diff --git a/static/images/play.jpg b/static/images/play.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c145a3dcd63030bbe3d8449943eb0d7360e6fc0f GIT binary patch literal 4680 zcmeHKi9eLv8$V-e$jn4#8_T8ZY9TuzM3yT{5{a@Cnyeu^GbKqkR99mwODaWDk$vx4 zBGE=h#?mdy63Nc^J+JxrMnALS*BE29^kMz@Hq5 z3lGEddw;aTfDhC&KFY<#)i-o_5FR)AA3Pq2P%;bq#c72!P{BzFGPDh{^79A^aS3oo zAt51hR9~+^Hy3|*IllnUj7cqFK%KTQJ8HPLwg&nC{rsoE|A_)OuU$9~tu6&wnp+_p z2Y$mw0w>odZX$`inTL1F)@^+J0)j#mVG&WW-^3-h|1SB5)Q+9Ic1z3bk(HBIP*hS@ zQQfPiuCY&3OMAbL?g2f01H(U!4jP-7njJc9am3QYCcR`i92m|1>qXw7zI-f7$V> zv+MPnx9{F}_k8GO_I>PU4GazqfBN_Hmyyx0-^Ru#CcjTj|CsqXJ2$_uxU{^o%65#k zn}c`Eb7O-8M?;wt{fil|Vuf3#BS^|Sl$#}bpWfReyVbb;Nhz09yyg8p#+Js0yZ*>A zB+BY-kv%AFd?$IAS8qz%o^8!a9?cIs1J{D0_m6xF+S6&D@_i<(ZtcSIOr^)m$c`CR z&0Og+@ww@?4%+9D@&3mvHRpPygg3okXmVg@#YX>TpHOuwdEwpOwW>y)Ao+%~w`=dX zP}n+s0X!RSSEaIzR>b?5@sfsTo-vlze9q`k@)gd$_+fQ_>KUIo{|zVh&ZXT9MF~cr zp~H0G>bt&oj2Oc{cKb?6x>H<+;rpJois?$)7UMc_kY?e!d!JAzHFG z)S#~`{cplp3fi9JpY{GrJ}&>RQFZl`6^gOH@NiQXdpXoXG}$BKNlCs&9{JA!ejdcr z`LOLwOxHg7M^EEYzEqDyQyn8GzBWd6E-KZi+XZhF+~3kJa|}7E-2Gkc7-2BlTY=~D zU0k^zwKEL{`N|9WrueDz#xHK3pwO3dY9q@psi66@vK6H;BzXn+QBkI5B}veRFj!l} zxn8>V?n*AyO#PI;=|G`JbibVzb%feSuk0O#>C120%WG7Se0VNL57a~lSr|_ik?Nyn z4v{3t^-(U`JFXH27q_)3omWEhF+5Y*wov1z_BaNn(@?e56Q*ZHPHL4}5C+*J{a3b= z>sMO}QuT%Dae3AryzXdn=f!5lcqqM9_9Pxkq!Mfmh3SIka-DK*=wlM;-&`!Y0&4)A_Js$ccj+3#lwHA}}{?gmlbo*+q+>jPV+T=l4Ea{2q`15bdj zwM}up3hapcZI3{W;)~Pk(W>vxCm?CS;Z^w?R6SaF`DFnBe#rgBlwoI!ErFn5F(AmN zroL>0Ql7b?b--t9uBV_h&`ar=3es8pC1maVZ{3(GPj^RP+hF+@PJCXd#U5DUk%=pE zK(Nm=%>fps#_`Ly3lXLBmzq=$+- zaG?qFL=!|0rUk>ZjtY(*oHH*6&uNF7ak^Dvw~z!&jf~5781mYUy5v3$*`iZr4`k6l z8BT(T`MD-_1Db%ti*&10Wg+$9H%Rg{;6Np&HAFNVMUz4$#2SZ9h>0CdRMOXt1Fy9> zV)EBoZU*n9I1x?kEg{fDv)&Wv!C`LOaM}IrWmlBlFW&*vhI&||Qz_cjDp31&BN~>i z;y}#Udq+3WgIfqG9Q0s2CSJGNFa-#}xk6o&76V&Rm#>27F&rA9=^aO>LZ%up#0fIu z^)n~K^N)%d$YoVQR@*(u(kfI!C7OyV(9T3P87NXglgm3&IO)Mg1O^bTE5p-6iQhPM zt5&9sp`a!NC@s(KLzmR5_Mwt?N*V$YD{;Ej{D*+cXuk<01s)Uy-mEQv=L=zOr$a!S z!qWsO2|l27^*%`Qv;Q5Y?ox*43Vm^CqEY-9o*vxW$p9%IH~_&P&5)%s8ws>mrY)h3 zu|mZAy?qIFJ%Y^+a{1R`%|*$8TvS<1u6vkVG(WI*??pi_&!ZbbuIIxb%p@j^Ce}fr zDk_l~$D`>#L42wrAc&%W#$Y8c`@)iNT7o_#bg2giipXt36XDoSdIEED0xAJb=vhNT zE>ywpkhugp9fFm1LZ{R=B4!j0MUxQSKLcF*uxn54MntD=;Gm1+arN@&k%T}Uw?Icm8heGJy|-NKNArOs=CE<>8kHu@hy`5 z4cy2=jxWCKGKWMtc`)YpyCR)NO(rdIhF;)5+kvv#T0b9LO~~&OBi772HHsIso11VBa*OdX#e~YN%W=6 zc7W}+!|Zg6DP$23X%9e}te-al^;%Y?<8({MJxxU*K(piZ#m=!E6JksSrBZo@LREfjsntti1zRvx%Ffspx9q zXa~0ky6W@Q9kVu`fXkRQtA^R(;|8vY5f3cjlq3Y?DstOXA#(UM#__ByreaR56yWlk zne2u5UvgNVc1)}{x0qk@J~#z)F&r=z=Yp_s@AGweJ0D`Sqp7}FU_j6fU4=Ecjji6p zQm}npOu&T~kr!~Bx)Fd;DOkd&*l_~K;FWkwDAe<_!9*KyqQZmackFMtlaNqlM?Qwz zU7`S4kMHk zkJ;iXu$mgu4Jf6>c&!uh3!nZh6(sooymsBJh?qS( z%T1Ce4Pu`Iq54;S6tMAm!@c%`x(lmqd*n#Y?pAXGgvann5g_>gSey~E6RQ81ZYE1| zo~RQ#AynV6U+X77!9qbX?M5sv@{FPg5&t28NF?Ib=XUW##p3vCtgnSZBt+vAH~vEu z=UZ-kt8lZvlM5Q6Soc~B)#n!+2g{Cd6S5Z6olI3SlO_#fUr&;Al*|`Cf`7UAI!v{F zqAb9KZ88Oza2ZW*ygJ)O^QrW+(Fl0>11GL%r#>P;GvhmEJC3-Ws8zTE|VtqB{IAxY38 zx6W|kZ7ovHT)?fsCFcT8l+ubd8~b;A@m~sb>^g+W{J{WZ&cT%9&208sO~$Q+@&|I^ z7iN5$c|m3k$FV$;vpJc;OPJ~-k4umS2l0`OxeD}^P41KfLiLT|W)dW4?8-(O9F=e! z+eykEP2je75~{~;cM5ceTNTv`^oMz2g;@&p^?RUD{oxMvN(Fk9_JW(Z3#!P4kP;oc zKf0i?69GOhC~j$8poTjq&0%r36wO)@9^cjWgjM%eD4N|yu)r>;`}5lObg!m3G{kmJ zzqx#dt?f|$U1OlqHA5#ty=a!GJHX$gKaggv;me!uptW3d`V}?i_0{22+FF#>PqK-u zqz;W`>o_KO^Sa(O)><*sUiF~QrSTP!6M=7>Ri&@bh);Iz)FKoTu4UB0srslK>T~%W z+v)vC>VfeWtuN~e@p&YVc*>U4wS{ef=l%RuIJ>K_x?8@rj$1u|u}m9Cl_XT+JXLAf zjep9Ok-4~{AsJfeG*xip?7ijA;b+lDj(k_npq(X}3rZ#E#4NsznC?;wXHyjBOT?EF zKRt_neRSpN+df*fn6H34hxv$C{k>ArJxjGjGp+ZF%7m#dHR-WH6CJWZEu-|&1Q%wO-u@Aj|N zu;r6x>}U`2gG6T+)5YR`1kU-|v)S2Wi-k_k%W98WuN&p$^eJE;GGjw?gGYMK=l=(8 C(&`WZ literal 0 HcmV?d00001 diff --git a/static/images/thumbs.jpg b/static/images/thumbs.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c9a8a3fd56ca54aa627e6a1c15edf56614d83dad GIT binary patch literal 5600 zcmcIoWl)^UwjBltE&&Dx4(=pCa0wdR-8GN|!r(5!Ay^=TgkZrfke~wucNjDS!Da9X zkYK@e=5g-3_f);A_v=-?uIm1}tGf2yYwflA$7i6fqB0Kx08Et?^i1?5n8)t-9u0t8 ztVi}hd!VeVSf)BV8*3rkG&nh&B;L_&-FN*QHl$J;cA2}Cuh<{ve>ZWChJ^*7$FC7L zrfpqxH*%A<@Gw(MJ{oVyzYrrJH_w=se}X|>N8Jsbg<_;`ybt=WV{f4IWP4%EOo*_- zFwEYQQ}Vmc)3v+JO9*-#6L!J2IA_eY9kwE+cmg%;*!!)2<*s0zas(U+ZCaH}fbX{t z{}@OiGj|8bwYpbPbmW*aIn2Np8a>ZltwR1^4yEkkl&wP}yfSfD|1*o3|5n@S+er_U zBw@(K=GRsNF)u;_p2$dz=LM;m-0Wop>%do|Wu~@_{ECpLRqmPNu8!2LL3(=XT2vH< zxHunro^c4sne;j79r${x)*=>f@P+$XkRioC|AQy^Xy|Ug|A>Zpm|<>F z_CGis-~zN-9S1sF!Jxz^6~?N#;D1H@C;W%rQAKjHx`q{U3KTd|VQ$+wRkQv{L-1nr zjaaqp_!lS)vIZ)BN@Y6hL+rlc_fB|2N7>T5g-qr)*7qFxZz>z)%}C5X5Hn3A!b)qQ z{@_ZFNf~Yv*~t^g=H9;pvC%#~c+~2*H9gahwU!sSE%xI(h`#vqQX`6*p#oy@@$oIn zQwsGjyzJQv6$ulIjc2p2CscTjF*W)Pz9F`zGiUb;=kVrTJF+Pv$~az&atMIg4KT=Z z`L194=)0ifI6t8C2fY|d^w0%k5>cDsfJ@`SDb_?=xJu1w5tGR*;^01IJNBv}Uf=zz8 zHuvOx%gijr#YtU?q~UDNJ&ufs=F!H|X2`q08KLA|QXZTyhLnS?4*A=@wy(B4k*!;( zC|kalMqKe)_J;q^n)Om`{^R%+RCw=_(X?u$hy*z5@4o)(QvYGtshi`Lzi_xERg)Ch z(={|CVV#Qaq4NHJ$?D&X{y3CucVAyV9uC3%=RGd6jo|pcAeO;WS<9R9eTP^4_ljc( zNk(ipu)PAooWW55y-^=DB8&y;S`1&~%z1DL6cJq>n2V3#5YQ7M6C%hNbX{88!tA~BEva00p+ z2vKU}pn!kd)oM;K-Q$Uw3YyPV`EM=W3(|(`^d?j-9-%X$1-J=mlxThJKkygu>-vnb z%k2~1(ggUu5v#dkCh$M^zSmj`Q3b<(W@zoiSVrz#daQeK9iOmD-goowhroAf zdabd-Jw)02$51=uAb_6eEwAPq(GSU*eB=_q0*G5COmqhmlap5eGgwBg2ImQ35pcA| z)cAwpS(H?;2Xjo!yzQLe>Cqo2+YnF*G`jTeJ`Q%?Ip^|HpvrbuYt2V9RBm&e2* zM1V6hoh5U|VvSqp1>ONt5uP(1{oWj3+!jP!SO8|T2Q*v^-kyAEJpc&>T2b-y1u8$P+F zzyk4=a)i3n#JsSbSw2NRh{CGowz~;MwJ|}`(Uw8~RQT(xi@REVhDdj)lwMVtUwwmT zYF`F}6vP3li*uPMd%aV_foJzdbpNf{RA1{rq1N56>=oOS<%f)Z8LrONB$*E`?dU}` z?csXZ)=Qn?wq52tBKm-b__dWCzGHXEN<1FSh>T>#j6GH<8mu{`Z|+i*g?>`zSS0$};w8$)yv5;L12W%wOQO@jEiZhF#f8Z-LKH)YMQ$BLwbFGb`a-nKRY$Y)o4M)(PRjxRQ;lb z23t0ONJVTNKEl7Mhf}vb36BL9=n~#WBma zPZaSj^-TWzWPo_4-N)0pz_y)e0}Xyuri$)njj~s;22m>y7;b@IX0wt-0iKW3j*IjL2ICe%cv$7xk&2TqyC zo{w=nr4R^SO;^;_CJpt)V)xMq4tGtZO2gm`N@M3<*?=E{Lk1|kCx8c-kUtd%U6+s} z@v%w4E3BF%eHGln{M{gP-7c7zJZw0HLmbf{S-lJZIO3gN5+sc^tR~q{zCy;^#Xyc* zd64_z8908`NsBbA@mXJs{CxuZD-MMO9dSdL3@0&76PUY4q#Yu2ooU|Xsklgk-O4tw z#JCyDqLTBQ<`>g}qYS>O!l&56Ynan^W%{;%mt>fd-(e8n@QcnzN(>7Xz^1{YYMk@2ZPEIb{NrEP- zz?q_QIp31nyv0%hM-S!kR;IquWP_$6dz12=0&)^JRmT7+cEhn+K{@0ZIEcZ<+>UOR zkU5y~hOSWHILm}GcDoJ7V7W!n7vE%eR-8Jy+m-BBJnnFANEDrNjV#;O))kDjT%=>M ztD-klxOSHxHkCSXkRf_%BSIqCq7oB)aJvJ;pR)JV?G96pB0YfBUrm_c!al$?G zWJ{k7CY=(t5DFKk{7A;0ayZueszAzaPVA;9fsb!?uH$)(J%8Qumj9qK;lkA|%(|iW z8-%b9!7c;62yJzD+OKP}$Ji6I;FLgPhV@Bq(uASVh#hb8wbaGQB)(9kg%T)vJ?ICnojafF>L8oR&qr%>_-&NobAE?H@=QA7?^!mJ3QUjP*8bvF6k zgAG4b-dwbT;6jCCbFbEuZt1f|PsJmo!akV(Py@U2($LjIJB<4G9?-T-HN%<3YfL%s z^eU?J>XPyI;q1JPWzf4nyf-51oqN~BrUM@elTf@SW%MJA<8mFSF7(!8WtD3-TEBx{ zQDv-*-~k1sK#+Gj;ZC}yhDG#7g;Poy;Y{~jlvixNedFmEni5VT-|&MN$Jb|VhiLj$ z!w}uv7vuMtE#2O*%GU+6ans50c(b6b!+;>q5HV5p%Ycr4>GhH?3@~h6J6Cek(6=I9 z25}W+GvZY-qmw_IbwyX541U8#`5td@pSE(X(d^H!$2R|~zqn~w;j@}G+c z@Lsa~O38fnBJh)Z_EkUO+wi#dfWJ(7;GquG)rGOOl6ZO_v`=nooQbJY;WmiJCOmqZ z;7e9(^Kl}1d={KaWyOAfZ6HAQJSub}H_}(oQ-QBa-r&nnVY(U$ti2>gDi2DxX@(|j z1@%X<0)Mvvs@9mUy!Ed?@c=?{hy#M&VCUuH$F-%qAVu>YiO0u#PF3nFjcPD0Mc5dG zGeDoO8n?5{EBHQ4jO2=dHT&D|a`=JZZ&jqNdTyU<^G#$j=t>`uOpv8>m0@3W0$$%) zh-tHg6|r@*uQnJqEy9t0<) z-S7${U*Pm0DifN>8W0?pf zPVeL_hGoS5-3Qh5braQuV|AX$I_S8Ud&q!vnSF>1>sL{vS0&%~=W-N~Ai)e_B}B5~ zfW^4jbm2*=h9!=$9w~qWm*=&8+v$3|w{5Tr-CP-UfzNc45rV_Iucte~<@A%G77hqhuhiPtav;E4>k3ii&pJX5wTqyU#fe5#_TKFP??d_&mHj78?|y0efG{a5^_ zRj4@Q9ZoZo<5-Rebl3^SLkt>IpKayt*7yy>$uj>k z@fKBTfZE~|w-W3@V_}3hT#GDfFCWPA8j_TvSaA+mi|o2(wXn=I%T#&T@T1S7<%F1X zwr*=*3MUCLd6#TP7njo&ij1s-@}Y9TOwe-_vAcuhZj>}Hu2y-9tgldbHx2vbc5fJ{ zZOBo~3WrJXu#4O@xi~4p;JV!zyC_@Y#$&+IX%mTzO#OgR@4kxiKpj9?%Z|Lhi@ux53jshbo4rAW`ve6A~jro zds^z#P1r`&H*sEiSB)D4g}UxtACD0&Y@1d9eBF}^j;)hh zIP@AfNv7bK-XC&R%&!+s5 zx!>*SNVi5fsY(I9RROYJOLRWiHA=K%xSbD8lMKtlHDB{3*8n|YB5@d7Y+loEbRYl@ z9Ff<@5q)g;Skq;mc?X>&i6%DRa~g0;tl&;&<c8fC&+i z?P=?Joum}csG!s-mwaTnufw^+f4HTdK;V-s@jfwk4x^D^u|WsTZ&?<|m`vA3G$Bg9 z^5Zv-zG`$B-mX89blJ)kX%We=fuEWJX5l*L*7v4urMP1ORN6$}P)9TyXAU_dCiz%v zN`+=Co}1L3;uv4@WNm*56aHo9Wr)B2gm|FPH%2(7fOqKHW4}Uu{{i6O)2K}Nl?EYW zN+05NI2u}~%F_m*EVuj{Ie6pQ3i;i;0@%!#hW(a9=AG?@~ZZG-N-Tvyi(kS+(k= z7v-|M-dQ~iKY&m(b7QUB%|xzu!NbbFPj5Z2zkbT8u7|gGk->+wc~SaJUBRM$#Wbj0 zT7#`jz0ZK-`wk;rTAGB)YI7!-k^#OkN10Kh`AwNzOZb{4fh{y9Xj;DE&UKCG(RbQ* zM^gO>5)EhYlm$Xa-#?(a`*|*yh#H04o?tkK7*_J9Dv@cdeWk~usgw0|ut#+r&4Pz7 z_dsEVEsb@ftLAt@>20p6AI~X<#w}pn#Bv?9sr-Ey zYVMkCc*tX%t|i_ZZOfu4o@u+O@`zsd$|*oZJp#6Z4oy(pvVb_yN$MqS`2bTaWPqav z|2>CS;BPF<*`X&{h3pt%};WCYAz>HyN#l~w*ul(!oy0g&t(dMw84GCL|H zs8(%fNh9Dkr)M)RS(z={K>PVhPXFUq=z7%cnJ-y1o_%}M$fq7IHW|+oprYdYHYy0L zm#GuD>3KLX-}oFpth~M#WqD!TuqoJe``9QD| ziD_>1we5_xf1Qw{W6THWj|&jXj23;#e0}Q^>-u&J<-gc}*nf8MWBX_NzwUl^>h8Qf zseds1lb>G7_ym4M{PXqbi>eKp?e{hXel{76_A-9< zTH!ZY5$Hv0?NwvgSyf_%Ofvw}{izTAax3Q3w|T3uMD|^6HuIsS*OMq=`Kd@rXjH>C z1MT1Rkfb8^KHcm;Z%j5Zbz)f%Hu{?hEGo5^%&MasJVHXawgc_o^pK<^v?^hm%@;^V z|Ln?mV5}aMc&UE}l*oE=y?s&e!--uT8ija9N z3YccVaWW#W%GA2vJ;MJPgWvyZTXmElZvUi(yjC8S^t}uSzzHzA+mzK}<;NqQFxU^b zf6_vbI|3rBT-P}nhbkeCxLWN$w|~+?kdn}-<6sPb&6KDEOF?{QuYGnlv@$}FlF+G! zU!YH|U!$`$wuBDI^#>jlj7N{27uk8$$u%A9B=~G6y1vvU%To!RW{v$Gbo z(8niK4r?FwSTU?{f0f{W>;>69fvmE{P$Nj4H6Ag>CnL+d7djlwSKvjDQ8XBJpE*+g zdhgVrL!8~hq*@r1WNzW@H!~}bo|tC9eWp089z!s7wQOrg7%}N=+PpKXo9oqdK;d@a zN!kmUK!N=(v)bG3NT8KiVib*wUM&ko>UJ-0_qGUA3?h_dwiLjFjjj(}`-CJ9Qr6o? zte~tdwB?K~`Bl+BiD*=pqJyS$=qTwiNd5wbvpqS7=pBxoF4vY7pP1|rTxtVnqzYzH zBmu`|f=EeFjhdB>rcX-~Vm*LmmBUj+DNlkgkv6L{ptELeu0CF2>pO~|j2}!dg&vyG z0~xyXF`UGNmPWC6yZG!98EVu$8*?%$O(QKM(hSEZynYjG2g)}&Fi*Uvk5vcng=PQI zwZ*}Rh0q~V$&Lnz8yk!Ld8B3^cb2-eiV%Q50}7N)HWpv`NCl6)0_~RRgJnarkyL?5 z5)(7OKnZjkvvwn`Lgb_*vw)8o0*blWN4IWKEA}Y1bd4-`1D#6&_ z{rb^xkuIplG#Gxw0Z2(TujRk30U)@j2+Qe4pdkXW7GsGKa=`84-M^fJ=pjO*ec=IE z2&B~@hzi9>JeGz+@$6-q1nc=C1}7CD=htkn%P2rbmcE`a^j}CxA$nvI>;uWUT-CAw z|NMm@@>w}Ie`B*Y<{9m05f=yBzv&?!;Izz~RovS@>_E39g+yRSmcIHG+a$v?W#nPm zSC;t8x9V&DP1|h~$J8kaET5=)vy|YOHByk0(5Zb<4C8gijXHqsRf-iv;ir)E{*st) z`pQU?fBpC=6Kj$&+1{Y4m}bCl1OdZmUmaEN?xckwC81I16oee5j1yGDHUxQJtZ6g% zqfKevc`b}6p_@p#8bYeY3Xjf;6fUa5LG9o4kfbD=a6X9%doyTM!!?Q_NnJfQV!~Ve z67W0gf15>2GhfWpse)ehTBgFvs}w3fGpf$?XdUXoHA|+#%9G)YyUr~56#od>wYJtjhfKxUe5(^uAVZ*na^c4wu zdSROaJMA~-#@MG!EVJR#EHhm;PFU@!P!ygc<^SNvl3_8V}1t)#gd8Qi}O$Wbj)QJXXPFo%Z z{y-Tm<51`&Q#DwjQzH>TmL`qga(6#2;2oA#T*EINSbbsf?9?a6VKpn119=%pNoZ8r zc95b3OVddUHJ^z8Xs?q|!_bY_g0wYMa7X@h#6lWij_>H(e*(EADFroQ3Nts_BT<5& zG=&4q3#_cMMqLs)?8(C@JIXlWw^*T54A=P?CdF52XH!q-)J?axNDY{<;3AHu1Cn$N zSx){?{{N(f9Z&)t-gyle&>kxhL4#7+>TwOxoSh`0{sMS?|49l$MeIb+&uQgy@RiZz zI6>;OCG6-zo_qxcKL*&%z&4BxN{Uj*^ z1KiZU0O1Js{s8i9(GQ-fO&bkg{Z_Q!`b&V-NEzxUf0}%G zQ*m*Wddtreg$zzPeQZ3>UZInF!)9t8=k~u0K2Ms> zctQn^M;2MM-bHv9%J@P-l<(Wq(LuZ2-|} zuujzR4w$?6+5MvXD@JlwQ*dt6=Jf`X4+e2eep?Y$b#?dmf+ zK;|qZAZ!{;X;dyty0)~C z8=~Z)XY3;N)?va_@Q&vd5)lK@L4&mxY~-%GL}uyxa!(yOnh_W4vx;N`S0S*W=)eF< zyN?GsMz8|yJM{6eF%>mSW0{--Z!PX2c&0$EhAkWE&}^GtHEg{&D@#7EKB*A}7{@UJ z_uF#nTa(>>s0qE7lOywhM~Xy-T*4C|#AB#CZybHGglC5!sUvcTYJUmq{ifRPTc5w! zfJK5?(I$uAX7C9bAA*1le#acz!?^5X#5F2Fol9q-Y%4GCBKy2wTvUs$RH6pgIvzLW zix9|hzjmB1XHQbM4YD5s+_2G!(0>17snS2u)dV>VwEQ$r^*lGp| zUSVBct?}5JvRn!zun}k%(P8)V8)lteQZRsn*f!XkeGNMEPc&<$!tKy-RZ7?2@-Qtj z(VWC%f#r1Pd|6xXVot#|+dcdENY3t>xwBD`?qm1m^g8sm&2`XlW{!kikK z&5o}>QUu+};3IBb;|ybegzn%S=;CrRHf6?dGb0;VGSEoB}B- zv=I7l!RC(*!0&@8=)5?pO~4PBv=JTSF*Dd=+*1}2g)D?`cJCITRaD@Y>M`lD4i*0W#QFJ2wY z`=USn-^>6)SF)-G9U2Mnfn7f-RaW-LPye9Ylc0&#RDd2r`EWr6N#zk2pCo{iA#p3u zmPoS@7c{rqOgR>i7trZY4cul)=`tj+7yIc^OT~Tbcj3SQO=Y|*^-X!bI2KbpG!1ip z_S7_66r!JTKN6dJ&fb^`rLN~=%b*5NTeh+L=rzu5<#t|)oN!qi)46K9*4P}$eFnQR zd?0UIpd>X*YU~%f=F&X9}#GTWgOuz5Xfn_$aBmF0T+n&sA6xs%O zYxCS*)ER{d2i5VQ51*E~`>ZFMpQIyl^awmQXSM=IMRyWq1`wFg*diQ3qFzf)<;TmqZQE|9kd}JTxh4MNplgfW#Q^^?_y`U?1lSW_?+uQ9DrfH3SEfx>pzK2Hu~k?ToyEb9%>&{1NET5o<=#?a7cY!h z3-M#Qp746OjRAO&118zj?BS^jfBxBQexPnGRN=+m&bp6CDSmc5+41$<_R^t44vP)H zFpE``K~R>VI$A4SJG~E=(`x5guOZ6{e~7+}K@q8pT3Q0iK|*Cw=y4i1xfBgG&}fN5 zOvw|W4b&laKe(LX*xLSap;$YL`{Rb=ndqyP#axO2E?yWI&mK282)`y&N0j9$XS_ypzowj)-1bD6kZ*IeZe9{i%MXuT>;5OfTZXd?y zNz9(CIf-`K2HY-8W=pdyw*JnsM?~b_Y)+Y(*z9;7jHdvKGc={iJY3iDdz`V_%FD z;!j%O+0U^_3Z-YT*Lb%G*wI_Ia8f$_3qGjTvdvf*kLC8IZ8}?rRyeY-VmwD0Xb_1K ztbKMO0USOtcUd!~EMcBAO3%MdR-ESET2U98iFcPp^6Ba9E{*j=wR>Q<8!!KbW;0t{ z^BvnpnGd9{j`YWU!f+x5^Aaz-Nrr!<6ySF9b9|@{*J?4J?1%1Ra-dZ$evC;BBCAUL z#&x{NO%(=5UW=DD$Cj#0>CVW^o*uZ2_UJQ89y46 z6#arhYR=)FOI`92Uh1Y6yBhL6jx}w{OTd2;Pqrh3Tl1bDOo=e|-QCu$@>gA1qy3Zq zJSV{Ot*KzFqjUk|X3^XlSOPo5n=J1vj?}NsIDT6mtQGI9nT^2+{e1Pxn(D-|j#D!q z)e+Y-miU|zMF16OBzew6Nu<06HSv#@iAexIAB9kI z8~7iurpdp)pJPn@R57;#SF&U)Xqn+H4DUYYvyC`5^bf#&h$Jq&7+1PzmV%+b7Z!}GPN3%`N#G3k?BL1Qi^65>2!&E?pf zY7gm^<~yUN)Vf{$CS%_v3uJ31kbTMMg%+9$H{k|ba@l^1jjk(l6ml$yIAv>%{S<9q z@(ohyLT4?I;_1@Jo?0r2RAk{eC@X{stu~*3@j-qWJB9xw`t4%P0F7P`Z+NtBUtfD_ zXl6uNd6jM2q5TIPWpf#OtM;W1;OAwS<57Mfn$ESl=cFvfsj9P_&gr?hGvA3nooW*H zKzsRN`Jd3a9(c~crp@Hm2&RJB9aQgy(G0zBJ8U3<2cA?hSE!~L9Zf8DKQJ75cmwJb+dvurV+pV;?hpkc6Dr7lpv z42#9TmV2zcB~;7ceE#1nVV*lZE~Ne+RimotFFk?hb-a)$- zU*x2wP)2dEuzh>P;$^{rAWcTTwdeSdY65xws#Zz^j5bTMiW|s6)*s z-Osapc|kKK2;k^tLZE+<*+4W`>^6O`4iDJ0G1%U9iZ-+q@-V9j(Ktlzyle{c*d<9^ zjfAaoGow9b+!8?NTPG7oa_d$pkBXI``sW&xsC+d&{{NZ1>!Z(?~$DTSu}L9UfhmkwmWB z^=Eh=ADTjGMT{=sG&q0k@Giss?|9IASkGY=>Gop<*ir}byF!AeS$xU=Y3mNssL4k8 z5j$x*c3?msDi+4Jn<$Km1fgUV{XJDTazIzwkFw1e9Ld>z5lCj{&T<*kK!bsau zR!&I+%S1YT3d$+3PF5!^LWExA7UHAvUZv0%b6o;_U_FDuA6%TetuL{#URp2QKb4|O zWGGCx$P(E&4bEA9!)^ozGvSqBcj1EXW~yn+I@D$vXQU|Nl-v#~9Bdlz+CKW5-`4d@ z?#nH{hr8)cYOdYpWkZK2nj7%s$dKkm-Om#Hv{5Nc(~Mu(2oySp`EWCb@y7so6K)8i zu>9kEttiorI%lr`tn7B80WI_Ivxal!h(leG;0$GkGj8^-KPfa5VIz>$*-=*%|7WJ& zRXGk9_r*jP+Hvm4jF0tN^?1kbq7Q6}wnbo#AvKsQ88ARvfsf!y_;y_6Ote<8sEj1e zI+Tdi3s)5i#dVO9caOQh?n=js@40=nFy8lef(X(<7dO;Xmps^W%pkqT& zEc!-WCpQey*di?oxJ2hE`Wc}NAD}}Bni#(S?^bGaS`%0KV|y&EmPd1CFF2(OSa?X5 zXpn0^MF%b9m1B629D)*x!ALuWa$25?qeiK;l%#-Wo4k**B+O4Ydi(4Ldh+Y!l_B40Wzp^gjIy@h&iD zhP#9Uy9shSm0+gpLWo=;El8Pq;==epjl+Gl;J)>FChnpaqiXw zLtZ!nMCX~tQi4^EIHCenLUU+vq;M!F(Bt8D2}l^Lxqb&K#eGFj?c3kqqepYH^cMEF zj1;?^st)|z10;G{n@GI}=}8Ksex?VBlvh>za zD(@90QBG4ZOi6>88S1;PW^dFUz#Gae1Z>^`kV%+?bDpMXB4B!c$-0?P3Up&5x(&91sU3P^A1A$i-cCN0pv3gUfYk1)Ub!lN|2^#UHzMg zqDBc)F^`L65Rp$}cixvS=!^oTj~cbfmLOAiyCHf5BZIya`ExFTH~Au|F_u7=EU{as zlHclTMv@{f#FIJafrEZ@7mQgBCxE;Sq+@&Dbq%ZP;6hMhxcz48r0*aIeoiicZf({# zbfN=E&;P|)u>mx;=DnqkKoR9d5y+#N_Wc|F#t3ma^Tf}$X4+XysOVt1rl^Bv6c8h7 z1Z}PkS58iKiXM_=3)PaLxVpOZgd7`)A(xdEmG(cg{h7c@5|-+8a5bO!EcI#FbTu07 zSk*4D9Wj)ACT<}XMs5_lY(}Zl!r+AY=B!jil#-#nZn|uOQFz#@QDQ=R&2X=XF_qM~ zft<~O$*u_8^Qm8)0+6pm(PJa;-%z`PZMV(|iiaTGcmm|AIeOUDv>BbNh(8#1Vpg7= z9{i1-b8DQ>cM>SChf0&mr-Ed8yc!io&~6O_VDY4^3^_xJFVkd&)(MAlzW6x#tjPvq z`&2G}E%$*Xa-)UB@()~Ld zjfV$_1FST(p0!@e8`#nUaTu8&Mr67-!A#e$d05H#Uoe#_3sW8|B2`cjr-A;2oa(|q zs%VR>Qvc54pfFZ?SFP0+kA19H!usDh;YR4k(h3=U^4fk-=Dam}jkRQWLw#Fcy6Gw; zw|-hNOwVBfvoYgE3iE$<;BXI5%)R2O-NLxXC#vW-O#S$NBwThb(U%+swT%V46R3+? z1cCjVd%`>)#}Zs%1F0jU)T{8%=29*DK(*z5!d;<38F`w613ILkDIs)>JAHOJ!ryA* z4x84@ay^AkR9mEw?VY$xSMy%qsC<_>sBYt-8N|f}n8>@ZKJY0^1A)9qD2W-^ipZ8@ zFaDUjSQa-Qi*Zdla4{_i-2FE?nKBLp3tw|QIPD2b;5wt9-wLnO(3e4V(KKsiG+H0? zVzWUkFqV`7Y~5S_Y(Dit#|QqJ@>RY;?Su1vZ(e=fc+)X_LMVvk>L)`p86=f8wWCDp zmSaj?%7c|nM=9N>|Ss!}UeJBlB*My7UoYw^^f(fWUzLq`lQBXoAV6&iGrtkq{ zyGAW=h>U!D6#Z!G=km#{Cc(3zRomjcFo=p`V+Q6W7a(e~(VElp<4#sOP~S6@I*%8o zwLGP{u%J*5fIDS8rZtmV0lhVF#2b7$4UlJvw)a)JK;y1Fpk9GkvKs56M1_ax>j9Jj zz*O05_|UK8Cwr$dd|vZBz+#nRz-z;GWXl*aF5#E1I%S1TypLS}kQL2);N-1|MKbJo z&!^uVm{!X(5CrF!s`gzSiNa{7m!SUH<}MW@>^MYsI+oWJJ*RQsHh0|$e!bZog#An1 zhChuj=6Mq8q3isJ*Vf`Djj)s9-3%lx_);aGbVe3$B0nf7!7xi0P00RYigEw3uV_HJ z)0*^tWB1S!;|tArKmbpYIp)*YFC4upFi+L}C|0fYCthefbdS|!rZhoDYhF-rx>60q zydnM^J`jbLhhAewIj(FdQM#AR8f{SO)SWJC!<*-dZTQwsZo4uu;P!tqrIp5p(J0?VlET7 zrsiVve@VvI5rp^s`>W6d{)VqH_emwcd4@ngAfAGQO^cAaC! zuJ?6L{TN-K^OaXXgEzV$y$)Di{OXPhTCnx6{06Yi%oyyiacf3lE9bJRT>Lpz@?t)) z@s6FY$GZk*yU@=XX#W=0xTQa>&q&VmA4o6-??E|csuZ6Wi_!+QF+NOItqsT>j5&mG`T zMXXb;1zL$gYYiDLN@`_?#ANW zc{iSq6(T0W(>MkkKBV4)h)eqMAkH#qhSH~(e#eT5$_8hhQ+EML>5McM5Y~;cB;;t_ zVA8s9cL(@!wIglF!Lz|96vuK|Tx3&jisIm2vur(VPmup~=tmJH@iOfg_zJK+sOb6gX_MV9|5qMF?C48U|95@3O~&FJW=Bwc zS7OS~N~SvikzjO3izc5Lc|(mbT{x~X-fG+clt__)!2!WjiX_p!ae0(oL9~&PfA%!C ztchls^y1bX=8WhlZmU4 z4_QQ3tSKS(PZ)j5^rmwufnWgq5D?`(cejKdWB6{)OAE*w3%X4th-q`uxx`d4m3@_RUGo_=1IAnM0R%QRMN*e@!fU$+Lv9X% zns$Apjj@mSOh_mC1hMnCm=z+pXGzyx9^l{sJ^B56r6ZTd+kCRa2K2!Xhy3Cy{H8<=>X(F3@3!;L znX^!iiZ3P3j&TX&r+b_5dv`Ay_V%0k z5=vD>FTi}Uy=otv2#>wk#wE5@mSx2XOdrE4lrR7Dg3u!>!IAJUaAHnyQCUm@H~QB$ z^H=~y+*^Y_u@9gk&h0SnwB(WA^ZM(EVvtsFBj=!y+no-l2<|VXZ~V&!<&U*#A3y*$ z78+XwlGu2!Udm$6!FbJPrQR2M%D!SJcRX3gw{ClG+VZ~kb*a-Rn8t!Evl~BQW0X<& zuiU!^OMCZDt$=f0@B~bv_P#5oqr-$xjgJMBZUOEBS;eSp%JFs?BmYSOCGv;TtDC8mHbONm^~1fDZMn}aQTWsPAN8=-(B z(7bo0MUrDRDlL*l+vbvR_|UU<$0&A7a0DvKeqp;arAeo@l;CthI9%DBBPpY#>Fp`2 zm7+)56z0q?@Er$Uk2caY@Xd3Iw{RuD z8hW85$a|XgC{;fVTNc>kTps0SRNAQXkC>NfcMoJ#*ecaTx~P>HSK1R82B@%WIOzk# z=cBTtF^hZ)bM{&Z@?@w7YNNdt2BL_HiZe0T67es&?i@zOy^@fAfj-PAheL>pl59}A ze)MlL<)J)=(jxFdcn14Bpv)qNvh}nYb_#xhu*idL`1Q2-FU|+utjfVA%oZUi6T$KB z(`foGcR|*@Fp!#qU=+sk5r3N4Zx|yD=){}|1IlBZL^ZI-H+-5v1+l|aQo_zgX!FUj z%Urt400=OA`9-y72n{xlbWQnNV-#;vRrx5OM!%A{PSCP#wdJwqd-fy(s4HDo25L%) zwCXvEg$Us~LJJeSE0OJg|FGIUf-PdJXehT(>{RyWAwaXkt<2z@t8Xs8~@jmJ7w?E>e?qTWdsLDQ^O z?u)rnYhB-^N)`W%+$?rHX#eFt2U%9={ir#Rm!E4#*74QH9KFjxS2?)o8;w+>4bM7}X-TF=`|=28l8L|nYQo3Q{eBSMX(7U2(X zuwiZ~8MGyi@GT?twYNR+b@elrZAPCk!38~W(vC9@A!YeI_xaH*71Wg1iom-b3Dr;Z z8H1Qz4YYo@N+P;Zl2ptJ6+$VBj?=Mz<>q6JYG%DUHrwN=GPVOoJ*-0Vl^rue=lIe{{CV7v0o z?O-!KU|myDj2QWxz-SHb{YY)9H1YhgJEuoG{f>#-x~~=F{z&mhxmV6Ppa`ZFVQup# zLjl>*lmZEsdUo(P-3~FlF7;fldArR&pg!M*V|eW-n6k90nHaR99gpj(o?o24t>b`h zci~3e)45BRT){0eF2%dA3ZddWF)#{zN!+ zz3W3HUtBKLM5KtMQgbq{Nr?7b1sz1PjBu~-pe|8>&A>=vnD)uY>iE z7T-1*BmbHxit>7uVFDMY6E;1O$e<6sEbRBO@W$MK&9O)y#3KqJhyiGVNJSSugrDAy zKB!9J+Z?8682kPQyQwvqz&n4slgCqE6G+c|4bW3i~fR06}PyfA~5%912} zR%C!uHiwsR80IVLut0haml}hFO4{-#6eWLOL0l-_8Sl}o7W~$W((ez^_jb`WdP^;^ z%Z|j|65dQgwDSfCTQS1!xo(oAO?ePilFt{@*320=)Nr z7v%Qv^4cS!Sowe6yu+xCs+_=?i=XR0^lo48GNauE0Kz1{8Y+Hx<{!5;l9#Hy5ZfFQ znNuwv+@B?Mye+|4`KrzIF&3!^8jt#sGN)M>9e9e>L_<4YMD1mVH<%vg~GJJuDA2 zPQav?i-EJ5c<uOMb9x%L?EC0nc@-rBUn>VSx=u zRP`(fXoeImdTjD$r%s@g8-B8k{OeHH>4~_?1Vc?gm?^x3rLeNx)r)KpeKtzi!g)a)D<9{jlB7BRHsuNKiM&2)x@TJL zSqrv{@FE%wPsaSt5=bkZBdsE#X$IaM8Ic(gQ5@Wud{rH~HkD3|_rn<+xRld+j|$sU zfXd{}k*t$mCo%#600KDUpW(M-F{^B_-do*KNGvTEJhlQ`$aWQ2fMe(W^E|BHt5Hgr z!C)dL9TNJ`ZYU#ExQZj$X?Iw8qHWY-+6}hm*c6+NEZB}Z9D7*=X=yyx&b>k&FHssx MvwOVgfB*mh04o2N00000 literal 0 HcmV?d00001 diff --git a/static/js/swiper-bundle.min.js b/static/js/swiper-bundle.min.js new file mode 100644 index 0000000..6e9b86f --- /dev/null +++ b/static/js/swiper-bundle.min.js @@ -0,0 +1,14 @@ +/** + * Swiper 8.0.7 + * Most modern mobile touch slider and framework with hardware accelerated transitions + * https://swiperjs.com + * + * Copyright 2014-2022 Vladimir Kharlampidi + * + * Released under the MIT License + * + * Released on: March 4, 2022 + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).Swiper=t()}(this,(function(){"use strict";function e(e){return null!==e&&"object"==typeof e&&"constructor"in e&&e.constructor===Object}function t(s,a){void 0===s&&(s={}),void 0===a&&(a={}),Object.keys(a).forEach((i=>{void 0===s[i]?s[i]=a[i]:e(a[i])&&e(s[i])&&Object.keys(a[i]).length>0&&t(s[i],a[i])}))}const s={body:{},addEventListener(){},removeEventListener(){},activeElement:{blur(){},nodeName:""},querySelector:()=>null,querySelectorAll:()=>[],getElementById:()=>null,createEvent:()=>({initEvent(){}}),createElement:()=>({children:[],childNodes:[],style:{},setAttribute(){},getElementsByTagName:()=>[]}),createElementNS:()=>({}),importNode:()=>null,location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""}};function a(){const e="undefined"!=typeof document?document:{};return t(e,s),e}const i={document:s,navigator:{userAgent:""},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""},history:{replaceState(){},pushState(){},go(){},back(){}},CustomEvent:function(){return this},addEventListener(){},removeEventListener(){},getComputedStyle:()=>({getPropertyValue:()=>""}),Image(){},Date(){},screen:{},setTimeout(){},clearTimeout(){},matchMedia:()=>({}),requestAnimationFrame:e=>"undefined"==typeof setTimeout?(e(),null):setTimeout(e,0),cancelAnimationFrame(e){"undefined"!=typeof setTimeout&&clearTimeout(e)}};function r(){const e="undefined"!=typeof window?window:{};return t(e,i),e}class n extends Array{constructor(e){"number"==typeof e?super(e):(super(...e||[]),function(e){const t=e.__proto__;Object.defineProperty(e,"__proto__",{get:()=>t,set(e){t.__proto__=e}})}(this))}}function l(e){void 0===e&&(e=[]);const t=[];return e.forEach((e=>{Array.isArray(e)?t.push(...l(e)):t.push(e)})),t}function o(e,t){return Array.prototype.filter.call(e,t)}function d(e,t){const s=r(),i=a();let l=[];if(!t&&e instanceof n)return e;if(!e)return new n(l);if("string"==typeof e){const s=e.trim();if(s.indexOf("<")>=0&&s.indexOf(">")>=0){let e="div";0===s.indexOf("e.split(" "))));return this.forEach((e=>{e.classList.add(...a)})),this},removeClass:function(){for(var e=arguments.length,t=new Array(e),s=0;se.split(" "))));return this.forEach((e=>{e.classList.remove(...a)})),this},hasClass:function(){for(var e=arguments.length,t=new Array(e),s=0;se.split(" "))));return o(this,(e=>a.filter((t=>e.classList.contains(t))).length>0)).length>0},toggleClass:function(){for(var e=arguments.length,t=new Array(e),s=0;se.split(" "))));this.forEach((e=>{a.forEach((t=>{e.classList.toggle(t)}))}))},attr:function(e,t){if(1===arguments.length&&"string"==typeof e)return this[0]?this[0].getAttribute(e):void 0;for(let s=0;s=0;e-=1){const i=a[e];r&&i.listener===r||r&&i.listener&&i.listener.dom7proxy&&i.listener.dom7proxy===r?(s.removeEventListener(t,i.proxyListener,n),a.splice(e,1)):r||(s.removeEventListener(t,i.proxyListener,n),a.splice(e,1))}}}return this},trigger:function(){const e=r();for(var t=arguments.length,s=new Array(t),a=0;at>0)),i.dispatchEvent(t),i.dom7EventData=[],delete i.dom7EventData}}}return this},transitionEnd:function(e){const t=this;return e&&t.on("transitionend",(function s(a){a.target===this&&(e.call(this,a),t.off("transitionend",s))})),this},outerWidth:function(e){if(this.length>0){if(e){const e=this.styles();return this[0].offsetWidth+parseFloat(e.getPropertyValue("margin-right"))+parseFloat(e.getPropertyValue("margin-left"))}return this[0].offsetWidth}return null},outerHeight:function(e){if(this.length>0){if(e){const e=this.styles();return this[0].offsetHeight+parseFloat(e.getPropertyValue("margin-top"))+parseFloat(e.getPropertyValue("margin-bottom"))}return this[0].offsetHeight}return null},styles:function(){const e=r();return this[0]?e.getComputedStyle(this[0],null):{}},offset:function(){if(this.length>0){const e=r(),t=a(),s=this[0],i=s.getBoundingClientRect(),n=t.body,l=s.clientTop||n.clientTop||0,o=s.clientLeft||n.clientLeft||0,d=s===e?e.scrollY:s.scrollTop,c=s===e?e.scrollX:s.scrollLeft;return{top:i.top+d-l,left:i.left+c-o}}return null},css:function(e,t){const s=r();let a;if(1===arguments.length){if("string"!=typeof e){for(a=0;a{e.apply(t,[t,s])})),this):this},html:function(e){if(void 0===e)return this[0]?this[0].innerHTML:null;for(let t=0;tt-1)return d([]);if(e<0){const s=t+e;return d(s<0?[]:[this[s]])}return d([this[e]])},append:function(){let e;const t=a();for(let s=0;s=0;i-=1)this[s].insertBefore(a.childNodes[i],this[s].childNodes[0])}else if(e instanceof n)for(i=0;i0?e?this[0].nextElementSibling&&d(this[0].nextElementSibling).is(e)?d([this[0].nextElementSibling]):d([]):this[0].nextElementSibling?d([this[0].nextElementSibling]):d([]):d([])},nextAll:function(e){const t=[];let s=this[0];if(!s)return d([]);for(;s.nextElementSibling;){const a=s.nextElementSibling;e?d(a).is(e)&&t.push(a):t.push(a),s=a}return d(t)},prev:function(e){if(this.length>0){const t=this[0];return e?t.previousElementSibling&&d(t.previousElementSibling).is(e)?d([t.previousElementSibling]):d([]):t.previousElementSibling?d([t.previousElementSibling]):d([])}return d([])},prevAll:function(e){const t=[];let s=this[0];if(!s)return d([]);for(;s.previousElementSibling;){const a=s.previousElementSibling;e?d(a).is(e)&&t.push(a):t.push(a),s=a}return d(t)},parent:function(e){const t=[];for(let s=0;s6&&(i=i.split(", ").map((e=>e.replace(",","."))).join(", ")),n=new s.WebKitCSSMatrix("none"===i?"":i)):(n=l.MozTransform||l.OTransform||l.MsTransform||l.msTransform||l.transform||l.getPropertyValue("transform").replace("translate(","matrix(1, 0, 0, 1,"),a=n.toString().split(",")),"x"===t&&(i=s.WebKitCSSMatrix?n.m41:16===a.length?parseFloat(a[12]):parseFloat(a[4])),"y"===t&&(i=s.WebKitCSSMatrix?n.m42:16===a.length?parseFloat(a[13]):parseFloat(a[5])),i||0}function m(e){return"object"==typeof e&&null!==e&&e.constructor&&"Object"===Object.prototype.toString.call(e).slice(8,-1)}function f(e){return"undefined"!=typeof window&&void 0!==window.HTMLElement?e instanceof HTMLElement:e&&(1===e.nodeType||11===e.nodeType)}function g(){const e=Object(arguments.length<=0?void 0:arguments[0]),t=["__proto__","constructor","prototype"];for(let s=1;st.indexOf(e)<0));for(let t=0,i=s.length;tn?"next":"prev",p=(e,t)=>"next"===c&&e>=t||"prev"===c&&e<=t,u=()=>{l=(new Date).getTime(),null===o&&(o=l);const e=Math.max(Math.min((l-o)/d,1),0),r=.5-Math.cos(e*Math.PI)/2;let c=n+r*(s-n);if(p(c,s)&&(c=s),t.wrapperEl.scrollTo({[a]:c}),p(c,s))return t.wrapperEl.style.overflow="hidden",t.wrapperEl.style.scrollSnapType="",setTimeout((()=>{t.wrapperEl.style.overflow="",t.wrapperEl.scrollTo({[a]:c})})),void i.cancelAnimationFrame(t.cssModeFrameID);t.cssModeFrameID=i.requestAnimationFrame(u)};u()}let b,x,y;function E(){return b||(b=function(){const e=r(),t=a();return{smoothScroll:t.documentElement&&"scrollBehavior"in t.documentElement.style,touch:!!("ontouchstart"in e||e.DocumentTouch&&t instanceof e.DocumentTouch),passiveListener:function(){let t=!1;try{const s=Object.defineProperty({},"passive",{get(){t=!0}});e.addEventListener("testPassiveListener",null,s)}catch(e){}return t}(),gestures:"ongesturestart"in e}}()),b}function T(e){return void 0===e&&(e={}),x||(x=function(e){let{userAgent:t}=void 0===e?{}:e;const s=E(),a=r(),i=a.navigator.platform,n=t||a.navigator.userAgent,l={ios:!1,android:!1},o=a.screen.width,d=a.screen.height,c=n.match(/(Android);?[\s\/]+([\d.]+)?/);let p=n.match(/(iPad).*OS\s([\d_]+)/);const u=n.match(/(iPod)(.*OS\s([\d_]+))?/),h=!p&&n.match(/(iPhone\sOS|iOS)\s([\d_]+)/),m="Win32"===i;let f="MacIntel"===i;return!p&&f&&s.touch&&["1024x1366","1366x1024","834x1194","1194x834","834x1112","1112x834","768x1024","1024x768","820x1180","1180x820","810x1080","1080x810"].indexOf(`${o}x${d}`)>=0&&(p=n.match(/(Version)\/([\d.]+)/),p||(p=[0,1,"13_0_0"]),f=!1),c&&!m&&(l.os="android",l.android=!0),(p||h||u)&&(l.os="ios",l.ios=!0),l}(e)),x}function C(){return y||(y=function(){const e=r();return{isSafari:function(){const t=e.navigator.userAgent.toLowerCase();return t.indexOf("safari")>=0&&t.indexOf("chrome")<0&&t.indexOf("android")<0}(),isWebView:/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(e.navigator.userAgent)}}()),y}Object.keys(c).forEach((e=>{Object.defineProperty(d.fn,e,{value:c[e],writable:!0})}));var $={on(e,t,s){const a=this;if("function"!=typeof t)return a;const i=s?"unshift":"push";return e.split(" ").forEach((e=>{a.eventsListeners[e]||(a.eventsListeners[e]=[]),a.eventsListeners[e][i](t)})),a},once(e,t,s){const a=this;if("function"!=typeof t)return a;function i(){a.off(e,i),i.__emitterProxy&&delete i.__emitterProxy;for(var s=arguments.length,r=new Array(s),n=0;n=0&&t.eventsAnyListeners.splice(s,1),t},off(e,t){const s=this;return s.eventsListeners?(e.split(" ").forEach((e=>{void 0===t?s.eventsListeners[e]=[]:s.eventsListeners[e]&&s.eventsListeners[e].forEach(((a,i)=>{(a===t||a.__emitterProxy&&a.__emitterProxy===t)&&s.eventsListeners[e].splice(i,1)}))})),s):s},emit(){const e=this;if(!e.eventsListeners)return e;let t,s,a;for(var i=arguments.length,r=new Array(i),n=0;n{e.eventsAnyListeners&&e.eventsAnyListeners.length&&e.eventsAnyListeners.forEach((e=>{e.apply(a,[t,...s])})),e.eventsListeners&&e.eventsListeners[t]&&e.eventsListeners[t].forEach((e=>{e.apply(a,s)}))})),e}};var S={updateSize:function(){const e=this;let t,s;const a=e.$el;t=void 0!==e.params.width&&null!==e.params.width?e.params.width:a[0].clientWidth,s=void 0!==e.params.height&&null!==e.params.height?e.params.height:a[0].clientHeight,0===t&&e.isHorizontal()||0===s&&e.isVertical()||(t=t-parseInt(a.css("padding-left")||0,10)-parseInt(a.css("padding-right")||0,10),s=s-parseInt(a.css("padding-top")||0,10)-parseInt(a.css("padding-bottom")||0,10),Number.isNaN(t)&&(t=0),Number.isNaN(s)&&(s=0),Object.assign(e,{width:t,height:s,size:e.isHorizontal()?t:s}))},updateSlides:function(){const e=this;function t(t){return e.isHorizontal()?t:{width:"height","margin-top":"margin-left","margin-bottom ":"margin-right","margin-left":"margin-top","margin-right":"margin-bottom","padding-left":"padding-top","padding-right":"padding-bottom",marginRight:"marginBottom"}[t]}function s(e,s){return parseFloat(e.getPropertyValue(t(s))||0)}const a=e.params,{$wrapperEl:i,size:r,rtlTranslate:n,wrongRTL:l}=e,o=e.virtual&&a.virtual.enabled,d=o?e.virtual.slides.length:e.slides.length,c=i.children(`.${e.params.slideClass}`),p=o?e.virtual.slides.length:c.length;let u=[];const h=[],m=[];let f=a.slidesOffsetBefore;"function"==typeof f&&(f=a.slidesOffsetBefore.call(e));let g=a.slidesOffsetAfter;"function"==typeof g&&(g=a.slidesOffsetAfter.call(e));const w=e.snapGrid.length,b=e.slidesGrid.length;let x=a.spaceBetween,y=-f,E=0,T=0;if(void 0===r)return;"string"==typeof x&&x.indexOf("%")>=0&&(x=parseFloat(x.replace("%",""))/100*r),e.virtualSize=-x,n?c.css({marginLeft:"",marginBottom:"",marginTop:""}):c.css({marginRight:"",marginBottom:"",marginTop:""}),a.centeredSlides&&a.cssMode&&(v(e.wrapperEl,"--swiper-centered-offset-before",""),v(e.wrapperEl,"--swiper-centered-offset-after",""));const C=a.grid&&a.grid.rows>1&&e.grid;let $;C&&e.grid.initSlides(p);const S="auto"===a.slidesPerView&&a.breakpoints&&Object.keys(a.breakpoints).filter((e=>void 0!==a.breakpoints[e].slidesPerView)).length>0;for(let i=0;i1&&u.push(e.virtualSize-r)}if(0===u.length&&(u=[0]),0!==a.spaceBetween){const s=e.isHorizontal()&&n?"marginLeft":t("marginRight");c.filter(((e,t)=>!a.cssMode||t!==c.length-1)).css({[s]:`${x}px`})}if(a.centeredSlides&&a.centeredSlidesBounds){let e=0;m.forEach((t=>{e+=t+(a.spaceBetween?a.spaceBetween:0)})),e-=a.spaceBetween;const t=e-r;u=u.map((e=>e<0?-f:e>t?t+g:e))}if(a.centerInsufficientSlides){let e=0;if(m.forEach((t=>{e+=t+(a.spaceBetween?a.spaceBetween:0)})),e-=a.spaceBetween,e{u[s]=e-t})),h.forEach(((e,s)=>{h[s]=e+t}))}}if(Object.assign(e,{slides:c,snapGrid:u,slidesGrid:h,slidesSizesGrid:m}),a.centeredSlides&&a.cssMode&&!a.centeredSlidesBounds){v(e.wrapperEl,"--swiper-centered-offset-before",-u[0]+"px"),v(e.wrapperEl,"--swiper-centered-offset-after",e.size/2-m[m.length-1]/2+"px");const t=-e.snapGrid[0],s=-e.slidesGrid[0];e.snapGrid=e.snapGrid.map((e=>e+t)),e.slidesGrid=e.slidesGrid.map((e=>e+s))}if(p!==d&&e.emit("slidesLengthChange"),u.length!==w&&(e.params.watchOverflow&&e.checkOverflow(),e.emit("snapGridLengthChange")),h.length!==b&&e.emit("slidesGridLengthChange"),a.watchSlidesProgress&&e.updateSlidesOffset(),!(o||a.cssMode||"slide"!==a.effect&&"fade"!==a.effect)){const t=`${a.containerModifierClass}backface-hidden`,s=e.$el.hasClass(t);p<=a.maxBackfaceHiddenSlides?s||e.$el.addClass(t):s&&e.$el.removeClass(t)}},updateAutoHeight:function(e){const t=this,s=[],a=t.virtual&&t.params.virtual.enabled;let i,r=0;"number"==typeof e?t.setTransition(e):!0===e&&t.setTransition(t.params.speed);const n=e=>a?t.slides.filter((t=>parseInt(t.getAttribute("data-swiper-slide-index"),10)===e))[0]:t.slides.eq(e)[0];if("auto"!==t.params.slidesPerView&&t.params.slidesPerView>1)if(t.params.centeredSlides)t.visibleSlides.each((e=>{s.push(e)}));else for(i=0;it.slides.length&&!a)break;s.push(n(e))}else s.push(n(t.activeIndex));for(i=0;ir?e:r}(r||0===r)&&t.$wrapperEl.css("height",`${r}px`)},updateSlidesOffset:function(){const e=this,t=e.slides;for(let s=0;s=0&&p1&&u<=t.size||p<=0&&u>=t.size)&&(t.visibleSlides.push(l),t.visibleSlidesIndexes.push(e),a.eq(e).addClass(s.slideVisibleClass)),l.progress=i?-d:d,l.originalProgress=i?-c:c}t.visibleSlides=d(t.visibleSlides)},updateProgress:function(e){const t=this;if(void 0===e){const s=t.rtlTranslate?-1:1;e=t&&t.translate&&t.translate*s||0}const s=t.params,a=t.maxTranslate()-t.minTranslate();let{progress:i,isBeginning:r,isEnd:n}=t;const l=r,o=n;0===a?(i=0,r=!0,n=!0):(i=(e-t.minTranslate())/a,r=i<=0,n=i>=1),Object.assign(t,{progress:i,isBeginning:r,isEnd:n}),(s.watchSlidesProgress||s.centeredSlides&&s.autoHeight)&&t.updateSlidesProgress(e),r&&!l&&t.emit("reachBeginning toEdge"),n&&!o&&t.emit("reachEnd toEdge"),(l&&!r||o&&!n)&&t.emit("fromEdge"),t.emit("progress",i)},updateSlidesClasses:function(){const e=this,{slides:t,params:s,$wrapperEl:a,activeIndex:i,realIndex:r}=e,n=e.virtual&&s.virtual.enabled;let l;t.removeClass(`${s.slideActiveClass} ${s.slideNextClass} ${s.slidePrevClass} ${s.slideDuplicateActiveClass} ${s.slideDuplicateNextClass} ${s.slideDuplicatePrevClass}`),l=n?e.$wrapperEl.find(`.${s.slideClass}[data-swiper-slide-index="${i}"]`):t.eq(i),l.addClass(s.slideActiveClass),s.loop&&(l.hasClass(s.slideDuplicateClass)?a.children(`.${s.slideClass}:not(.${s.slideDuplicateClass})[data-swiper-slide-index="${r}"]`).addClass(s.slideDuplicateActiveClass):a.children(`.${s.slideClass}.${s.slideDuplicateClass}[data-swiper-slide-index="${r}"]`).addClass(s.slideDuplicateActiveClass));let o=l.nextAll(`.${s.slideClass}`).eq(0).addClass(s.slideNextClass);s.loop&&0===o.length&&(o=t.eq(0),o.addClass(s.slideNextClass));let d=l.prevAll(`.${s.slideClass}`).eq(0).addClass(s.slidePrevClass);s.loop&&0===d.length&&(d=t.eq(-1),d.addClass(s.slidePrevClass)),s.loop&&(o.hasClass(s.slideDuplicateClass)?a.children(`.${s.slideClass}:not(.${s.slideDuplicateClass})[data-swiper-slide-index="${o.attr("data-swiper-slide-index")}"]`).addClass(s.slideDuplicateNextClass):a.children(`.${s.slideClass}.${s.slideDuplicateClass}[data-swiper-slide-index="${o.attr("data-swiper-slide-index")}"]`).addClass(s.slideDuplicateNextClass),d.hasClass(s.slideDuplicateClass)?a.children(`.${s.slideClass}:not(.${s.slideDuplicateClass})[data-swiper-slide-index="${d.attr("data-swiper-slide-index")}"]`).addClass(s.slideDuplicatePrevClass):a.children(`.${s.slideClass}.${s.slideDuplicateClass}[data-swiper-slide-index="${d.attr("data-swiper-slide-index")}"]`).addClass(s.slideDuplicatePrevClass)),e.emitSlidesClasses()},updateActiveIndex:function(e){const t=this,s=t.rtlTranslate?t.translate:-t.translate,{slidesGrid:a,snapGrid:i,params:r,activeIndex:n,realIndex:l,snapIndex:o}=t;let d,c=e;if(void 0===c){for(let e=0;e=a[e]&&s=a[e]&&s=a[e]&&(c=e);r.normalizeSlideIndex&&(c<0||void 0===c)&&(c=0)}if(i.indexOf(s)>=0)d=i.indexOf(s);else{const e=Math.min(r.slidesPerGroupSkip,c);d=e+Math.floor((c-e)/r.slidesPerGroup)}if(d>=i.length&&(d=i.length-1),c===n)return void(d!==o&&(t.snapIndex=d,t.emit("snapIndexChange")));const p=parseInt(t.slides.eq(c).attr("data-swiper-slide-index")||c,10);Object.assign(t,{snapIndex:d,realIndex:p,previousIndex:n,activeIndex:c}),t.emit("activeIndexChange"),t.emit("snapIndexChange"),l!==p&&t.emit("realIndexChange"),(t.initialized||t.params.runCallbacksOnInit)&&t.emit("slideChange")},updateClickedSlide:function(e){const t=this,s=t.params,a=d(e).closest(`.${s.slideClass}`)[0];let i,r=!1;if(a)for(let e=0;eo?o:a&&en?"next":r=o.length&&(g=o.length-1),(p||l.initialSlide||0)===(c||0)&&s&&r.emit("beforeSlideChangeStart");const v=-o[g];if(r.updateProgress(v),l.normalizeSlideIndex)for(let e=0;e=s&&t=s&&t=s&&(n=e)}if(r.initialized&&n!==p){if(!r.allowSlideNext&&vr.translate&&v>r.maxTranslate()&&(p||0)!==n)return!1}let b;if(b=n>p?"next":n{r.wrapperEl.style.scrollSnapType="",r._swiperImmediateVirtual=!1}))}else{if(!r.support.smoothScroll)return w({swiper:r,targetPosition:s,side:e?"left":"top"}),!0;h.scrollTo({[e?"left":"top"]:s,behavior:"smooth"})}return!0}return r.setTransition(t),r.setTranslate(v),r.updateActiveIndex(n),r.updateSlidesClasses(),r.emit("beforeTransitionStart",t,a),r.transitionStart(s,b),0===t?r.transitionEnd(s,b):r.animating||(r.animating=!0,r.onSlideToWrapperTransitionEnd||(r.onSlideToWrapperTransitionEnd=function(e){r&&!r.destroyed&&e.target===this&&(r.$wrapperEl[0].removeEventListener("transitionend",r.onSlideToWrapperTransitionEnd),r.$wrapperEl[0].removeEventListener("webkitTransitionEnd",r.onSlideToWrapperTransitionEnd),r.onSlideToWrapperTransitionEnd=null,delete r.onSlideToWrapperTransitionEnd,r.transitionEnd(s,b))}),r.$wrapperEl[0].addEventListener("transitionend",r.onSlideToWrapperTransitionEnd),r.$wrapperEl[0].addEventListener("webkitTransitionEnd",r.onSlideToWrapperTransitionEnd)),!0},slideToLoop:function(e,t,s,a){void 0===e&&(e=0),void 0===t&&(t=this.params.speed),void 0===s&&(s=!0);const i=this;let r=e;return i.params.loop&&(r+=i.loopedSlides),i.slideTo(r,t,s,a)},slideNext:function(e,t,s){void 0===e&&(e=this.params.speed),void 0===t&&(t=!0);const a=this,{animating:i,enabled:r,params:n}=a;if(!r)return a;let l=n.slidesPerGroup;"auto"===n.slidesPerView&&1===n.slidesPerGroup&&n.slidesPerGroupAuto&&(l=Math.max(a.slidesPerViewDynamic("current",!0),1));const o=a.activeIndexc(e)));let h=n[u.indexOf(p)-1];if(void 0===h&&i.cssMode){let e;n.forEach(((t,s)=>{p>=t&&(e=s)})),void 0!==e&&(h=n[e>0?e-1:e])}let m=0;if(void 0!==h&&(m=l.indexOf(h),m<0&&(m=a.activeIndex-1),"auto"===i.slidesPerView&&1===i.slidesPerGroup&&i.slidesPerGroupAuto&&(m=m-a.slidesPerViewDynamic("previous",!0)+1,m=Math.max(m,0))),i.rewind&&a.isBeginning){const i=a.params.virtual&&a.params.virtual.enabled&&a.virtual?a.virtual.slides.length-1:a.slides.length-1;return a.slideTo(i,e,t,s)}return a.slideTo(m,e,t,s)},slideReset:function(e,t,s){return void 0===e&&(e=this.params.speed),void 0===t&&(t=!0),this.slideTo(this.activeIndex,e,t,s)},slideToClosest:function(e,t,s,a){void 0===e&&(e=this.params.speed),void 0===t&&(t=!0),void 0===a&&(a=.5);const i=this;let r=i.activeIndex;const n=Math.min(i.params.slidesPerGroupSkip,r),l=n+Math.floor((r-n)/i.params.slidesPerGroup),o=i.rtlTranslate?i.translate:-i.translate;if(o>=i.snapGrid[l]){const e=i.snapGrid[l];o-e>(i.snapGrid[l+1]-e)*a&&(r+=i.params.slidesPerGroup)}else{const e=i.snapGrid[l-1];o-e<=(i.snapGrid[l]-e)*a&&(r-=i.params.slidesPerGroup)}return r=Math.max(r,0),r=Math.min(r,i.slidesGrid.length-1),i.slideTo(r,e,t,s)},slideToClickedSlide:function(){const e=this,{params:t,$wrapperEl:s}=e,a="auto"===t.slidesPerView?e.slidesPerViewDynamic():t.slidesPerView;let i,r=e.clickedIndex;if(t.loop){if(e.animating)return;i=parseInt(d(e.clickedSlide).attr("data-swiper-slide-index"),10),t.centeredSlides?re.slides.length-e.loopedSlides+a/2?(e.loopFix(),r=s.children(`.${t.slideClass}[data-swiper-slide-index="${i}"]:not(.${t.slideDuplicateClass})`).eq(0).index(),p((()=>{e.slideTo(r)}))):e.slideTo(r):r>e.slides.length-a?(e.loopFix(),r=s.children(`.${t.slideClass}[data-swiper-slide-index="${i}"]:not(.${t.slideDuplicateClass})`).eq(0).index(),p((()=>{e.slideTo(r)}))):e.slideTo(r)}else e.slideTo(r)}};var z={loopCreate:function(){const e=this,t=a(),{params:s,$wrapperEl:i}=e,r=i.children().length>0?d(i.children()[0].parentNode):i;r.children(`.${s.slideClass}.${s.slideDuplicateClass}`).remove();let n=r.children(`.${s.slideClass}`);if(s.loopFillGroupWithBlank){const e=s.slidesPerGroup-n.length%s.slidesPerGroup;if(e!==s.slidesPerGroup){for(let a=0;an.length&&(e.loopedSlides=n.length);const l=[],o=[];n.each(((t,s)=>{const a=d(t);s=n.length-e.loopedSlides&&l.push(t),a.attr("data-swiper-slide-index",s)}));for(let e=0;e=0;e-=1)r.prepend(d(l[e].cloneNode(!0)).addClass(s.slideDuplicateClass))},loopFix:function(){const e=this;e.emit("beforeLoopFix");const{activeIndex:t,slides:s,loopedSlides:a,allowSlidePrev:i,allowSlideNext:r,snapGrid:n,rtlTranslate:l}=e;let o;e.allowSlidePrev=!0,e.allowSlideNext=!0;const d=-n[t]-e.getTranslate();if(t=s.length-a){o=-s.length+t+a,o+=a;e.slideTo(o,0,!1,!0)&&0!==d&&e.setTranslate((l?-e.translate:e.translate)-d)}e.allowSlidePrev=i,e.allowSlideNext=r,e.emit("loopFix")},loopDestroy:function(){const{$wrapperEl:e,params:t,slides:s}=this;e.children(`.${t.slideClass}.${t.slideDuplicateClass},.${t.slideClass}.${t.slideBlankClass}`).remove(),s.removeAttr("data-swiper-slide-index")}};function O(e){const t=this,s=a(),i=r(),n=t.touchEventsData,{params:l,touches:o,enabled:c}=t;if(!c)return;if(t.animating&&l.preventInteractionOnTransition)return;!t.animating&&l.cssMode&&l.loop&&t.loopFix();let p=e;p.originalEvent&&(p=p.originalEvent);let h=d(p.target);if("wrapper"===l.touchEventsTarget&&!h.closest(t.wrapperEl).length)return;if(n.isTouchEvent="touchstart"===p.type,!n.isTouchEvent&&"which"in p&&3===p.which)return;if(!n.isTouchEvent&&"button"in p&&p.button>0)return;if(n.isTouched&&n.isMoved)return;!!l.noSwipingClass&&""!==l.noSwipingClass&&p.target&&p.target.shadowRoot&&e.path&&e.path[0]&&(h=d(e.path[0]));const m=l.noSwipingSelector?l.noSwipingSelector:`.${l.noSwipingClass}`,f=!(!p.target||!p.target.shadowRoot);if(l.noSwiping&&(f?function(e,t){return void 0===t&&(t=this),function t(s){return s&&s!==a()&&s!==r()?(s.assignedSlot&&(s=s.assignedSlot),s.closest(e)||t(s.getRootNode().host)):null}(t)}(m,p.target):h.closest(m)[0]))return void(t.allowClick=!0);if(l.swipeHandler&&!h.closest(l.swipeHandler)[0])return;o.currentX="touchstart"===p.type?p.targetTouches[0].pageX:p.pageX,o.currentY="touchstart"===p.type?p.targetTouches[0].pageY:p.pageY;const g=o.currentX,v=o.currentY,w=l.edgeSwipeDetection||l.iOSEdgeSwipeDetection,b=l.edgeSwipeThreshold||l.iOSEdgeSwipeThreshold;if(w&&(g<=b||g>=i.innerWidth-b)){if("prevent"!==w)return;e.preventDefault()}if(Object.assign(n,{isTouched:!0,isMoved:!1,allowTouchCallbacks:!0,isScrolling:void 0,startMoving:void 0}),o.startX=g,o.startY=v,n.touchStartTime=u(),t.allowClick=!0,t.updateSize(),t.swipeDirection=void 0,l.threshold>0&&(n.allowThresholdMove=!1),"touchstart"!==p.type){let e=!0;h.is(n.focusableElements)&&(e=!1,"SELECT"===h[0].nodeName&&(n.isTouched=!1)),s.activeElement&&d(s.activeElement).is(n.focusableElements)&&s.activeElement!==h[0]&&s.activeElement.blur();const a=e&&t.allowTouchMove&&l.touchStartPreventDefault;!l.touchStartForcePreventDefault&&!a||h[0].isContentEditable||p.preventDefault()}t.params.freeMode&&t.params.freeMode.enabled&&t.freeMode&&t.animating&&!l.cssMode&&t.freeMode.onTouchStart(),t.emit("touchStart",p)}function I(e){const t=a(),s=this,i=s.touchEventsData,{params:r,touches:n,rtlTranslate:l,enabled:o}=s;if(!o)return;let c=e;if(c.originalEvent&&(c=c.originalEvent),!i.isTouched)return void(i.startMoving&&i.isScrolling&&s.emit("touchMoveOpposite",c));if(i.isTouchEvent&&"touchmove"!==c.type)return;const p="touchmove"===c.type&&c.targetTouches&&(c.targetTouches[0]||c.changedTouches[0]),h="touchmove"===c.type?p.pageX:c.pageX,m="touchmove"===c.type?p.pageY:c.pageY;if(c.preventedByNestedSwiper)return n.startX=h,void(n.startY=m);if(!s.allowTouchMove)return d(c.target).is(i.focusableElements)||(s.allowClick=!1),void(i.isTouched&&(Object.assign(n,{startX:h,startY:m,currentX:h,currentY:m}),i.touchStartTime=u()));if(i.isTouchEvent&&r.touchReleaseOnEdges&&!r.loop)if(s.isVertical()){if(mn.startY&&s.translate>=s.minTranslate())return i.isTouched=!1,void(i.isMoved=!1)}else if(hn.startX&&s.translate>=s.minTranslate())return;if(i.isTouchEvent&&t.activeElement&&c.target===t.activeElement&&d(c.target).is(i.focusableElements))return i.isMoved=!0,void(s.allowClick=!1);if(i.allowTouchCallbacks&&s.emit("touchMove",c),c.targetTouches&&c.targetTouches.length>1)return;n.currentX=h,n.currentY=m;const f=n.currentX-n.startX,g=n.currentY-n.startY;if(s.params.threshold&&Math.sqrt(f**2+g**2)=25&&(e=180*Math.atan2(Math.abs(g),Math.abs(f))/Math.PI,i.isScrolling=s.isHorizontal()?e>r.touchAngle:90-e>r.touchAngle)}if(i.isScrolling&&s.emit("touchMoveOpposite",c),void 0===i.startMoving&&(n.currentX===n.startX&&n.currentY===n.startY||(i.startMoving=!0)),i.isScrolling)return void(i.isTouched=!1);if(!i.startMoving)return;s.allowClick=!1,!r.cssMode&&c.cancelable&&c.preventDefault(),r.touchMoveStopPropagation&&!r.nested&&c.stopPropagation(),i.isMoved||(r.loop&&!r.cssMode&&s.loopFix(),i.startTranslate=s.getTranslate(),s.setTransition(0),s.animating&&s.$wrapperEl.trigger("webkitTransitionEnd transitionend"),i.allowMomentumBounce=!1,!r.grabCursor||!0!==s.allowSlideNext&&!0!==s.allowSlidePrev||s.setGrabCursor(!0),s.emit("sliderFirstMove",c)),s.emit("sliderMove",c),i.isMoved=!0;let v=s.isHorizontal()?f:g;n.diff=v,v*=r.touchRatio,l&&(v=-v),s.swipeDirection=v>0?"prev":"next",i.currentTranslate=v+i.startTranslate;let w=!0,b=r.resistanceRatio;if(r.touchReleaseOnEdges&&(b=0),v>0&&i.currentTranslate>s.minTranslate()?(w=!1,r.resistance&&(i.currentTranslate=s.minTranslate()-1+(-s.minTranslate()+i.startTranslate+v)**b)):v<0&&i.currentTranslatei.startTranslate&&(i.currentTranslate=i.startTranslate),s.allowSlidePrev||s.allowSlideNext||(i.currentTranslate=i.startTranslate),r.threshold>0){if(!(Math.abs(v)>r.threshold||i.allowThresholdMove))return void(i.currentTranslate=i.startTranslate);if(!i.allowThresholdMove)return i.allowThresholdMove=!0,n.startX=n.currentX,n.startY=n.currentY,i.currentTranslate=i.startTranslate,void(n.diff=s.isHorizontal()?n.currentX-n.startX:n.currentY-n.startY)}r.followFinger&&!r.cssMode&&((r.freeMode&&r.freeMode.enabled&&s.freeMode||r.watchSlidesProgress)&&(s.updateActiveIndex(),s.updateSlidesClasses()),s.params.freeMode&&r.freeMode.enabled&&s.freeMode&&s.freeMode.onTouchMove(),s.updateProgress(i.currentTranslate),s.setTranslate(i.currentTranslate))}function L(e){const t=this,s=t.touchEventsData,{params:a,touches:i,rtlTranslate:r,slidesGrid:n,enabled:l}=t;if(!l)return;let o=e;if(o.originalEvent&&(o=o.originalEvent),s.allowTouchCallbacks&&t.emit("touchEnd",o),s.allowTouchCallbacks=!1,!s.isTouched)return s.isMoved&&a.grabCursor&&t.setGrabCursor(!1),s.isMoved=!1,void(s.startMoving=!1);a.grabCursor&&s.isMoved&&s.isTouched&&(!0===t.allowSlideNext||!0===t.allowSlidePrev)&&t.setGrabCursor(!1);const d=u(),c=d-s.touchStartTime;if(t.allowClick){const e=o.path||o.composedPath&&o.composedPath();t.updateClickedSlide(e&&e[0]||o.target),t.emit("tap click",o),c<300&&d-s.lastClickTime<300&&t.emit("doubleTap doubleClick",o)}if(s.lastClickTime=u(),p((()=>{t.destroyed||(t.allowClick=!0)})),!s.isTouched||!s.isMoved||!t.swipeDirection||0===i.diff||s.currentTranslate===s.startTranslate)return s.isTouched=!1,s.isMoved=!1,void(s.startMoving=!1);let h;if(s.isTouched=!1,s.isMoved=!1,s.startMoving=!1,h=a.followFinger?r?t.translate:-t.translate:-s.currentTranslate,a.cssMode)return;if(t.params.freeMode&&a.freeMode.enabled)return void t.freeMode.onTouchEnd({currentPos:h});let m=0,f=t.slidesSizesGrid[0];for(let e=0;e=n[e]&&h=n[e]&&(m=e,f=n[n.length-1]-n[n.length-2])}let g=null,v=null;a.rewind&&(t.isBeginning?v=t.params.virtual&&t.params.virtual.enabled&&t.virtual?t.virtual.slides.length-1:t.slides.length-1:t.isEnd&&(g=0));const w=(h-n[m])/f,b=ma.longSwipesMs){if(!a.longSwipes)return void t.slideTo(t.activeIndex);"next"===t.swipeDirection&&(w>=a.longSwipesRatio?t.slideTo(a.rewind&&t.isEnd?g:m+b):t.slideTo(m)),"prev"===t.swipeDirection&&(w>1-a.longSwipesRatio?t.slideTo(m+b):null!==v&&w<0&&Math.abs(w)>a.longSwipesRatio?t.slideTo(v):t.slideTo(m))}else{if(!a.shortSwipes)return void t.slideTo(t.activeIndex);t.navigation&&(o.target===t.navigation.nextEl||o.target===t.navigation.prevEl)?o.target===t.navigation.nextEl?t.slideTo(m+b):t.slideTo(m):("next"===t.swipeDirection&&t.slideTo(null!==g?g:m+b),"prev"===t.swipeDirection&&t.slideTo(null!==v?v:m))}}function A(){const e=this,{params:t,el:s}=e;if(s&&0===s.offsetWidth)return;t.breakpoints&&e.setBreakpoint();const{allowSlideNext:a,allowSlidePrev:i,snapGrid:r}=e;e.allowSlideNext=!0,e.allowSlidePrev=!0,e.updateSize(),e.updateSlides(),e.updateSlidesClasses(),("auto"===t.slidesPerView||t.slidesPerView>1)&&e.isEnd&&!e.isBeginning&&!e.params.centeredSlides?e.slideTo(e.slides.length-1,0,!1,!0):e.slideTo(e.activeIndex,0,!1,!0),e.autoplay&&e.autoplay.running&&e.autoplay.paused&&e.autoplay.run(),e.allowSlidePrev=i,e.allowSlideNext=a,e.params.watchOverflow&&r!==e.snapGrid&&e.checkOverflow()}function D(e){const t=this;t.enabled&&(t.allowClick||(t.params.preventClicks&&e.preventDefault(),t.params.preventClicksPropagation&&t.animating&&(e.stopPropagation(),e.stopImmediatePropagation())))}function G(){const e=this,{wrapperEl:t,rtlTranslate:s,enabled:a}=e;if(!a)return;let i;e.previousTranslate=e.translate,e.isHorizontal()?e.translate=-t.scrollLeft:e.translate=-t.scrollTop,-0===e.translate&&(e.translate=0),e.updateActiveIndex(),e.updateSlidesClasses();const r=e.maxTranslate()-e.minTranslate();i=0===r?0:(e.translate-e.minTranslate())/r,i!==e.progress&&e.updateProgress(s?-e.translate:e.translate),e.emit("setTranslate",e.translate,!1)}let B=!1;function N(){}const H=(e,t)=>{const s=a(),{params:i,touchEvents:r,el:n,wrapperEl:l,device:o,support:d}=e,c=!!i.nested,p="on"===t?"addEventListener":"removeEventListener",u=t;if(d.touch){const t=!("touchstart"!==r.start||!d.passiveListener||!i.passiveListeners)&&{passive:!0,capture:!1};n[p](r.start,e.onTouchStart,t),n[p](r.move,e.onTouchMove,d.passiveListener?{passive:!1,capture:c}:c),n[p](r.end,e.onTouchEnd,t),r.cancel&&n[p](r.cancel,e.onTouchEnd,t)}else n[p](r.start,e.onTouchStart,!1),s[p](r.move,e.onTouchMove,c),s[p](r.end,e.onTouchEnd,!1);(i.preventClicks||i.preventClicksPropagation)&&n[p]("click",e.onClick,!0),i.cssMode&&l[p]("scroll",e.onScroll),i.updateOnWindowResize?e[u](o.ios||o.android?"resize orientationchange observerUpdate":"resize observerUpdate",A,!0):e[u]("observerUpdate",A,!0)};var X={attachEvents:function(){const e=this,t=a(),{params:s,support:i}=e;e.onTouchStart=O.bind(e),e.onTouchMove=I.bind(e),e.onTouchEnd=L.bind(e),s.cssMode&&(e.onScroll=G.bind(e)),e.onClick=D.bind(e),i.touch&&!B&&(t.addEventListener("touchstart",N),B=!0),H(e,"on")},detachEvents:function(){H(this,"off")}};const Y=(e,t)=>e.grid&&t.grid&&t.grid.rows>1;var R={addClasses:function(){const e=this,{classNames:t,params:s,rtl:a,$el:i,device:r,support:n}=e,l=function(e,t){const s=[];return e.forEach((e=>{"object"==typeof e?Object.keys(e).forEach((a=>{e[a]&&s.push(t+a)})):"string"==typeof e&&s.push(t+e)})),s}(["initialized",s.direction,{"pointer-events":!n.touch},{"free-mode":e.params.freeMode&&s.freeMode.enabled},{autoheight:s.autoHeight},{rtl:a},{grid:s.grid&&s.grid.rows>1},{"grid-column":s.grid&&s.grid.rows>1&&"column"===s.grid.fill},{android:r.android},{ios:r.ios},{"css-mode":s.cssMode},{centered:s.cssMode&&s.centeredSlides}],s.containerModifierClass);t.push(...l),i.addClass([...t].join(" ")),e.emitContainerClasses()},removeClasses:function(){const{$el:e,classNames:t}=this;e.removeClass(t.join(" ")),this.emitContainerClasses()}};var W={init:!0,direction:"horizontal",touchEventsTarget:"wrapper",initialSlide:0,speed:300,cssMode:!1,updateOnWindowResize:!0,resizeObserver:!0,nested:!1,createElements:!1,enabled:!0,focusableElements:"input, select, option, textarea, button, video, label",width:null,height:null,preventInteractionOnTransition:!1,userAgent:null,url:null,edgeSwipeDetection:!1,edgeSwipeThreshold:20,autoHeight:!1,setWrapperSize:!1,virtualTranslate:!1,effect:"slide",breakpoints:void 0,breakpointsBase:"window",spaceBetween:0,slidesPerView:1,slidesPerGroup:1,slidesPerGroupSkip:0,slidesPerGroupAuto:!1,centeredSlides:!1,centeredSlidesBounds:!1,slidesOffsetBefore:0,slidesOffsetAfter:0,normalizeSlideIndex:!0,centerInsufficientSlides:!1,watchOverflow:!0,roundLengths:!1,touchRatio:1,touchAngle:45,simulateTouch:!0,shortSwipes:!0,longSwipes:!0,longSwipesRatio:.5,longSwipesMs:300,followFinger:!0,allowTouchMove:!0,threshold:0,touchMoveStopPropagation:!1,touchStartPreventDefault:!0,touchStartForcePreventDefault:!1,touchReleaseOnEdges:!1,uniqueNavElements:!0,resistance:!0,resistanceRatio:.85,watchSlidesProgress:!1,grabCursor:!1,preventClicks:!0,preventClicksPropagation:!0,slideToClickedSlide:!1,preloadImages:!0,updateOnImagesReady:!0,loop:!1,loopAdditionalSlides:0,loopedSlides:null,loopFillGroupWithBlank:!1,loopPreventsSlide:!0,rewind:!1,allowSlidePrev:!0,allowSlideNext:!0,swipeHandler:null,noSwiping:!0,noSwipingClass:"swiper-no-swiping",noSwipingSelector:null,passiveListeners:!0,maxBackfaceHiddenSlides:10,containerModifierClass:"swiper-",slideClass:"swiper-slide",slideBlankClass:"swiper-slide-invisible-blank",slideActiveClass:"swiper-slide-active",slideDuplicateActiveClass:"swiper-slide-duplicate-active",slideVisibleClass:"swiper-slide-visible",slideDuplicateClass:"swiper-slide-duplicate",slideNextClass:"swiper-slide-next",slideDuplicateNextClass:"swiper-slide-duplicate-next",slidePrevClass:"swiper-slide-prev",slideDuplicatePrevClass:"swiper-slide-duplicate-prev",wrapperClass:"swiper-wrapper",runCallbacksOnInit:!0,_emitClasses:!1};function j(e,t){return function(s){void 0===s&&(s={});const a=Object.keys(s)[0],i=s[a];"object"==typeof i&&null!==i?(["navigation","pagination","scrollbar"].indexOf(a)>=0&&!0===e[a]&&(e[a]={auto:!0}),a in e&&"enabled"in i?(!0===e[a]&&(e[a]={enabled:!0}),"object"!=typeof e[a]||"enabled"in e[a]||(e[a].enabled=!0),e[a]||(e[a]={enabled:!1}),g(t,s)):g(t,s)):g(t,s)}}const _={eventsEmitter:$,update:S,translate:M,transition:{setTransition:function(e,t){const s=this;s.params.cssMode||s.$wrapperEl.transition(e),s.emit("setTransition",e,t)},transitionStart:function(e,t){void 0===e&&(e=!0);const s=this,{params:a}=s;a.cssMode||(a.autoHeight&&s.updateAutoHeight(),P({swiper:s,runCallbacks:e,direction:t,step:"Start"}))},transitionEnd:function(e,t){void 0===e&&(e=!0);const s=this,{params:a}=s;s.animating=!1,a.cssMode||(s.setTransition(0),P({swiper:s,runCallbacks:e,direction:t,step:"End"}))}},slide:k,loop:z,grabCursor:{setGrabCursor:function(e){const t=this;if(t.support.touch||!t.params.simulateTouch||t.params.watchOverflow&&t.isLocked||t.params.cssMode)return;const s="container"===t.params.touchEventsTarget?t.el:t.wrapperEl;s.style.cursor="move",s.style.cursor=e?"-webkit-grabbing":"-webkit-grab",s.style.cursor=e?"-moz-grabbin":"-moz-grab",s.style.cursor=e?"grabbing":"grab"},unsetGrabCursor:function(){const e=this;e.support.touch||e.params.watchOverflow&&e.isLocked||e.params.cssMode||(e["container"===e.params.touchEventsTarget?"el":"wrapperEl"].style.cursor="")}},events:X,breakpoints:{setBreakpoint:function(){const e=this,{activeIndex:t,initialized:s,loopedSlides:a=0,params:i,$el:r}=e,n=i.breakpoints;if(!n||n&&0===Object.keys(n).length)return;const l=e.getBreakpoint(n,e.params.breakpointsBase,e.el);if(!l||e.currentBreakpoint===l)return;const o=(l in n?n[l]:void 0)||e.originalParams,d=Y(e,i),c=Y(e,o),p=i.enabled;d&&!c?(r.removeClass(`${i.containerModifierClass}grid ${i.containerModifierClass}grid-column`),e.emitContainerClasses()):!d&&c&&(r.addClass(`${i.containerModifierClass}grid`),(o.grid.fill&&"column"===o.grid.fill||!o.grid.fill&&"column"===i.grid.fill)&&r.addClass(`${i.containerModifierClass}grid-column`),e.emitContainerClasses());const u=o.direction&&o.direction!==i.direction,h=i.loop&&(o.slidesPerView!==i.slidesPerView||u);u&&s&&e.changeDirection(),g(e.params,o);const m=e.params.enabled;Object.assign(e,{allowTouchMove:e.params.allowTouchMove,allowSlideNext:e.params.allowSlideNext,allowSlidePrev:e.params.allowSlidePrev}),p&&!m?e.disable():!p&&m&&e.enable(),e.currentBreakpoint=l,e.emit("_beforeBreakpoint",o),h&&s&&(e.loopDestroy(),e.loopCreate(),e.updateSlides(),e.slideTo(t-a+e.loopedSlides,0,!1)),e.emit("breakpoint",o)},getBreakpoint:function(e,t,s){if(void 0===t&&(t="window"),!e||"container"===t&&!s)return;let a=!1;const i=r(),n="window"===t?i.innerHeight:s.clientHeight,l=Object.keys(e).map((e=>{if("string"==typeof e&&0===e.indexOf("@")){const t=parseFloat(e.substr(1));return{value:n*t,point:e}}return{value:e,point:e}}));l.sort(((e,t)=>parseInt(e.value,10)-parseInt(t.value,10)));for(let e=0;es}else e.isLocked=1===e.snapGrid.length;!0===s.allowSlideNext&&(e.allowSlideNext=!e.isLocked),!0===s.allowSlidePrev&&(e.allowSlidePrev=!e.isLocked),t&&t!==e.isLocked&&(e.isEnd=!1),t!==e.isLocked&&e.emit(e.isLocked?"lock":"unlock")}},classes:R,images:{loadImage:function(e,t,s,a,i,n){const l=r();let o;function c(){n&&n()}d(e).parent("picture")[0]||e.complete&&i?c():t?(o=new l.Image,o.onload=c,o.onerror=c,a&&(o.sizes=a),s&&(o.srcset=s),t&&(o.src=t)):c()},preloadImages:function(){const e=this;function t(){null!=e&&e&&!e.destroyed&&(void 0!==e.imagesLoaded&&(e.imagesLoaded+=1),e.imagesLoaded===e.imagesToLoad.length&&(e.params.updateOnImagesReady&&e.update(),e.emit("imagesReady")))}e.imagesToLoad=e.$el.find("img");for(let s=0;s1){const e=[];return d(t.el).each((s=>{const a=g({},t,{el:s});e.push(new V(a))})),e}const r=this;r.__swiper__=!0,r.support=E(),r.device=T({userAgent:t.userAgent}),r.browser=C(),r.eventsListeners={},r.eventsAnyListeners=[],r.modules=[...r.__modules__],t.modules&&Array.isArray(t.modules)&&r.modules.push(...t.modules);const n={};r.modules.forEach((e=>{e({swiper:r,extendParams:j(t,n),on:r.on.bind(r),once:r.once.bind(r),off:r.off.bind(r),emit:r.emit.bind(r)})}));const l=g({},W,n);return r.params=g({},l,q,t),r.originalParams=g({},r.params),r.passedParams=g({},t),r.params&&r.params.on&&Object.keys(r.params.on).forEach((e=>{r.on(e,r.params.on[e])})),r.params&&r.params.onAny&&r.onAny(r.params.onAny),r.$=d,Object.assign(r,{enabled:r.params.enabled,el:e,classNames:[],slides:d(),slidesGrid:[],snapGrid:[],slidesSizesGrid:[],isHorizontal:()=>"horizontal"===r.params.direction,isVertical:()=>"vertical"===r.params.direction,activeIndex:0,realIndex:0,isBeginning:!0,isEnd:!1,translate:0,previousTranslate:0,progress:0,velocity:0,animating:!1,allowSlideNext:r.params.allowSlideNext,allowSlidePrev:r.params.allowSlidePrev,touchEvents:function(){const e=["touchstart","touchmove","touchend","touchcancel"],t=["pointerdown","pointermove","pointerup"];return r.touchEventsTouch={start:e[0],move:e[1],end:e[2],cancel:e[3]},r.touchEventsDesktop={start:t[0],move:t[1],end:t[2]},r.support.touch||!r.params.simulateTouch?r.touchEventsTouch:r.touchEventsDesktop}(),touchEventsData:{isTouched:void 0,isMoved:void 0,allowTouchCallbacks:void 0,touchStartTime:void 0,isScrolling:void 0,currentTranslate:void 0,startTranslate:void 0,allowThresholdMove:void 0,focusableElements:r.params.focusableElements,lastClickTime:u(),clickTimeout:void 0,velocities:[],allowMomentumBounce:void 0,isTouchEvent:void 0,startMoving:void 0},allowClick:!0,allowTouchMove:r.params.allowTouchMove,touches:{startX:0,startY:0,currentX:0,currentY:0,diff:0},imagesToLoad:[],imagesLoaded:0}),r.emit("_swiper"),r.params.init&&r.init(),r}enable(){const e=this;e.enabled||(e.enabled=!0,e.params.grabCursor&&e.setGrabCursor(),e.emit("enable"))}disable(){const e=this;e.enabled&&(e.enabled=!1,e.params.grabCursor&&e.unsetGrabCursor(),e.emit("disable"))}setProgress(e,t){const s=this;e=Math.min(Math.max(e,0),1);const a=s.minTranslate(),i=(s.maxTranslate()-a)*e+a;s.translateTo(i,void 0===t?0:t),s.updateActiveIndex(),s.updateSlidesClasses()}emitContainerClasses(){const e=this;if(!e.params._emitClasses||!e.el)return;const t=e.el.className.split(" ").filter((t=>0===t.indexOf("swiper")||0===t.indexOf(e.params.containerModifierClass)));e.emit("_containerClasses",t.join(" "))}getSlideClasses(e){const t=this;return e.className.split(" ").filter((e=>0===e.indexOf("swiper-slide")||0===e.indexOf(t.params.slideClass))).join(" ")}emitSlidesClasses(){const e=this;if(!e.params._emitClasses||!e.el)return;const t=[];e.slides.each((s=>{const a=e.getSlideClasses(s);t.push({slideEl:s,classNames:a}),e.emit("_slideClass",s,a)})),e.emit("_slideClasses",t)}slidesPerViewDynamic(e,t){void 0===e&&(e="current"),void 0===t&&(t=!1);const{params:s,slides:a,slidesGrid:i,slidesSizesGrid:r,size:n,activeIndex:l}=this;let o=1;if(s.centeredSlides){let e,t=a[l].swiperSlideSize;for(let s=l+1;sn&&(e=!0));for(let s=l-1;s>=0;s-=1)a[s]&&!e&&(t+=a[s].swiperSlideSize,o+=1,t>n&&(e=!0))}else if("current"===e)for(let e=l+1;e=0;e-=1){i[l]-i[e]1)&&e.isEnd&&!e.params.centeredSlides?e.slideTo(e.slides.length-1,0,!1,!0):e.slideTo(e.activeIndex,0,!1,!0),i||a()),s.watchOverflow&&t!==e.snapGrid&&e.checkOverflow(),e.emit("update")}changeDirection(e,t){void 0===t&&(t=!0);const s=this,a=s.params.direction;return e||(e="horizontal"===a?"vertical":"horizontal"),e===a||"horizontal"!==e&&"vertical"!==e||(s.$el.removeClass(`${s.params.containerModifierClass}${a}`).addClass(`${s.params.containerModifierClass}${e}`),s.emitContainerClasses(),s.params.direction=e,s.slides.each((t=>{"vertical"===e?t.style.width="":t.style.height=""})),s.emit("changeDirection"),t&&s.update()),s}mount(e){const t=this;if(t.mounted)return!0;const s=d(e||t.params.el);if(!(e=s[0]))return!1;e.swiper=t;const i=()=>`.${(t.params.wrapperClass||"").trim().split(" ").join(".")}`;let r=(()=>{if(e&&e.shadowRoot&&e.shadowRoot.querySelector){const t=d(e.shadowRoot.querySelector(i()));return t.children=e=>s.children(e),t}return s.children(i())})();if(0===r.length&&t.params.createElements){const e=a().createElement("div");r=d(e),e.className=t.params.wrapperClass,s.append(e),s.children(`.${t.params.slideClass}`).each((e=>{r.append(e)}))}return Object.assign(t,{$el:s,el:e,$wrapperEl:r,wrapperEl:r[0],mounted:!0,rtl:"rtl"===e.dir.toLowerCase()||"rtl"===s.css("direction"),rtlTranslate:"horizontal"===t.params.direction&&("rtl"===e.dir.toLowerCase()||"rtl"===s.css("direction")),wrongRTL:"-webkit-box"===r.css("display")}),!0}init(e){const t=this;if(t.initialized)return t;return!1===t.mount(e)||(t.emit("beforeInit"),t.params.breakpoints&&t.setBreakpoint(),t.addClasses(),t.params.loop&&t.loopCreate(),t.updateSize(),t.updateSlides(),t.params.watchOverflow&&t.checkOverflow(),t.params.grabCursor&&t.enabled&&t.setGrabCursor(),t.params.preloadImages&&t.preloadImages(),t.params.loop?t.slideTo(t.params.initialSlide+t.loopedSlides,0,t.params.runCallbacksOnInit,!1,!0):t.slideTo(t.params.initialSlide,0,t.params.runCallbacksOnInit,!1,!0),t.attachEvents(),t.initialized=!0,t.emit("init"),t.emit("afterInit")),t}destroy(e,t){void 0===e&&(e=!0),void 0===t&&(t=!0);const s=this,{params:a,$el:i,$wrapperEl:r,slides:n}=s;return void 0===s.params||s.destroyed||(s.emit("beforeDestroy"),s.initialized=!1,s.detachEvents(),a.loop&&s.loopDestroy(),t&&(s.removeClasses(),i.removeAttr("style"),r.removeAttr("style"),n&&n.length&&n.removeClass([a.slideVisibleClass,a.slideActiveClass,a.slideNextClass,a.slidePrevClass].join(" ")).removeAttr("style").removeAttr("data-swiper-slide-index")),s.emit("destroy"),Object.keys(s.eventsListeners).forEach((e=>{s.off(e)})),!1!==e&&(s.$el[0].swiper=null,function(e){const t=e;Object.keys(t).forEach((e=>{try{t[e]=null}catch(e){}try{delete t[e]}catch(e){}}))}(s)),s.destroyed=!0),null}static extendDefaults(e){g(q,e)}static get extendedDefaults(){return q}static get defaults(){return W}static installModule(e){V.prototype.__modules__||(V.prototype.__modules__=[]);const t=V.prototype.__modules__;"function"==typeof e&&t.indexOf(e)<0&&t.push(e)}static use(e){return Array.isArray(e)?(e.forEach((e=>V.installModule(e))),V):(V.installModule(e),V)}}function F(e,t,s,i){const r=a();return e.params.createElements&&Object.keys(i).forEach((a=>{if(!s[a]&&!0===s.auto){let n=e.$el.children(`.${i[a]}`)[0];n||(n=r.createElement("div"),n.className=i[a],e.$el.append(n)),s[a]=n,t[a]=n}})),s}function U(e){return void 0===e&&(e=""),`.${e.trim().replace(/([\.:!\/])/g,"\\$1").replace(/ /g,".")}`}function K(e){const t=this,{$wrapperEl:s,params:a}=t;if(a.loop&&t.loopDestroy(),"object"==typeof e&&"length"in e)for(let t=0;t=l)return void s.appendSlide(t);let o=n>e?n+1:n;const d=[];for(let t=l-1;t>=e;t-=1){const e=s.slides.eq(t);e.remove(),d.unshift(e)}if("object"==typeof t&&"length"in t){for(let e=0;ee?n+t.length:n}else a.append(t);for(let e=0;e{if(s.params.effect!==t)return;s.classNames.push(`${s.params.containerModifierClass}${t}`),l&&l()&&s.classNames.push(`${s.params.containerModifierClass}3d`);const e=n?n():{};Object.assign(s.params,e),Object.assign(s.originalParams,e)})),a("setTranslate",(()=>{s.params.effect===t&&i()})),a("setTransition",((e,a)=>{s.params.effect===t&&r(a)})),a("virtualUpdate",(()=>{s.slides.length||(o=!0),requestAnimationFrame((()=>{o&&s.slides.length&&(i(),o=!1)}))}))}function se(e,t){return e.transformEl?t.find(e.transformEl).css({"backface-visibility":"hidden","-webkit-backface-visibility":"hidden"}):t}function ae(e){let{swiper:t,duration:s,transformEl:a,allSlides:i}=e;const{slides:r,activeIndex:n,$wrapperEl:l}=t;if(t.params.virtualTranslate&&0!==s){let e,s=!1;e=i?a?r.find(a):r:a?r.eq(n).find(a):r.eq(n),e.transitionEnd((()=>{if(s)return;if(!t||t.destroyed)return;s=!0,t.animating=!1;const e=["webkitTransitionEnd","transitionend"];for(let t=0;t`),i.append(r)),r}Object.keys(_).forEach((e=>{Object.keys(_[e]).forEach((t=>{V.prototype[t]=_[e][t]}))})),V.use([function(e){let{swiper:t,on:s,emit:a}=e;const i=r();let n=null,l=null;const o=()=>{t&&!t.destroyed&&t.initialized&&(a("beforeResize"),a("resize"))},d=()=>{t&&!t.destroyed&&t.initialized&&a("orientationchange")};s("init",(()=>{t.params.resizeObserver&&void 0!==i.ResizeObserver?t&&!t.destroyed&&t.initialized&&(n=new ResizeObserver((e=>{l=i.requestAnimationFrame((()=>{const{width:s,height:a}=t;let i=s,r=a;e.forEach((e=>{let{contentBoxSize:s,contentRect:a,target:n}=e;n&&n!==t.el||(i=a?a.width:(s[0]||s).inlineSize,r=a?a.height:(s[0]||s).blockSize)})),i===s&&r===a||o()}))})),n.observe(t.el)):(i.addEventListener("resize",o),i.addEventListener("orientationchange",d))})),s("destroy",(()=>{l&&i.cancelAnimationFrame(l),n&&n.unobserve&&t.el&&(n.unobserve(t.el),n=null),i.removeEventListener("resize",o),i.removeEventListener("orientationchange",d)}))},function(e){let{swiper:t,extendParams:s,on:a,emit:i}=e;const n=[],l=r(),o=function(e,t){void 0===t&&(t={});const s=new(l.MutationObserver||l.WebkitMutationObserver)((e=>{if(1===e.length)return void i("observerUpdate",e[0]);const t=function(){i("observerUpdate",e[0])};l.requestAnimationFrame?l.requestAnimationFrame(t):l.setTimeout(t,0)}));s.observe(e,{attributes:void 0===t.attributes||t.attributes,childList:void 0===t.childList||t.childList,characterData:void 0===t.characterData||t.characterData}),n.push(s)};s({observer:!1,observeParents:!1,observeSlideChildren:!1}),a("init",(()=>{if(t.params.observer){if(t.params.observeParents){const e=t.$el.parents();for(let t=0;t{n.forEach((e=>{e.disconnect()})),n.splice(0,n.length)}))}]);const re=[function(e){let t,{swiper:s,extendParams:a,on:i,emit:r}=e;function n(e,t){const a=s.params.virtual;if(a.cache&&s.virtual.cache[t])return s.virtual.cache[t];const i=a.renderSlide?d(a.renderSlide.call(s,e,t)):d(`
${e}
`);return i.attr("data-swiper-slide-index")||i.attr("data-swiper-slide-index",t),a.cache&&(s.virtual.cache[t]=i),i}function l(e){const{slidesPerView:t,slidesPerGroup:a,centeredSlides:i}=s.params,{addSlidesBefore:l,addSlidesAfter:o}=s.params.virtual,{from:d,to:c,slides:p,slidesGrid:u,offset:h}=s.virtual;s.params.cssMode||s.updateActiveIndex();const m=s.activeIndex||0;let f,g,v;f=s.rtlTranslate?"right":s.isHorizontal()?"left":"top",i?(g=Math.floor(t/2)+a+o,v=Math.floor(t/2)+a+l):(g=t+(a-1)+o,v=a+l);const w=Math.max((m||0)-v,0),b=Math.min((m||0)+g,p.length-1),x=(s.slidesGrid[w]||0)-(s.slidesGrid[0]||0);function y(){s.updateSlides(),s.updateProgress(),s.updateSlidesClasses(),s.lazy&&s.params.lazy.enabled&&s.lazy.load(),r("virtualUpdate")}if(Object.assign(s.virtual,{from:w,to:b,offset:x,slidesGrid:s.slidesGrid}),d===w&&c===b&&!e)return s.slidesGrid!==u&&x!==h&&s.slides.css(f,`${x}px`),s.updateProgress(),void r("virtualUpdate");if(s.params.virtual.renderExternal)return s.params.virtual.renderExternal.call(s,{offset:x,from:w,to:b,slides:function(){const e=[];for(let t=w;t<=b;t+=1)e.push(p[t]);return e}()}),void(s.params.virtual.renderExternalUpdate?y():r("virtualUpdate"));const E=[],T=[];if(e)s.$wrapperEl.find(`.${s.params.slideClass}`).remove();else for(let e=d;e<=c;e+=1)(eb)&&s.$wrapperEl.find(`.${s.params.slideClass}[data-swiper-slide-index="${e}"]`).remove();for(let t=0;t=w&&t<=b&&(void 0===c||e?T.push(t):(t>c&&T.push(t),t{s.$wrapperEl.append(n(p[e],e))})),E.sort(((e,t)=>t-e)).forEach((e=>{s.$wrapperEl.prepend(n(p[e],e))})),s.$wrapperEl.children(".swiper-slide").css(f,`${x}px`),y()}a({virtual:{enabled:!1,slides:[],cache:!0,renderSlide:null,renderExternal:null,renderExternalUpdate:!0,addSlidesBefore:0,addSlidesAfter:0}}),s.virtual={cache:{},from:void 0,to:void 0,slides:[],offset:0,slidesGrid:[]},i("beforeInit",(()=>{s.params.virtual.enabled&&(s.virtual.slides=s.params.virtual.slides,s.classNames.push(`${s.params.containerModifierClass}virtual`),s.params.watchSlidesProgress=!0,s.originalParams.watchSlidesProgress=!0,s.params.initialSlide||l())})),i("setTranslate",(()=>{s.params.virtual.enabled&&(s.params.cssMode&&!s._immediateVirtual?(clearTimeout(t),t=setTimeout((()=>{l()}),100)):l())})),i("init update resize",(()=>{s.params.virtual.enabled&&s.params.cssMode&&v(s.wrapperEl,"--swiper-virtual-size",`${s.virtualSize}px`)})),Object.assign(s.virtual,{appendSlide:function(e){if("object"==typeof e&&"length"in e)for(let t=0;t{const a=e[s],r=a.attr("data-swiper-slide-index");r&&a.attr("data-swiper-slide-index",parseInt(r,10)+i),t[parseInt(s,10)+i]=a})),s.virtual.cache=t}l(!0),s.slideTo(a,0)},removeSlide:function(e){if(null==e)return;let t=s.activeIndex;if(Array.isArray(e))for(let a=e.length-1;a>=0;a-=1)s.virtual.slides.splice(e[a],1),s.params.virtual.cache&&delete s.virtual.cache[e[a]],e[a]0&&0===t.$el.parents(`.${t.params.slideActiveClass}`).length)return;const a=t.$el,i=a[0].clientWidth,r=a[0].clientHeight,n=o.innerWidth,l=o.innerHeight,d=t.$el.offset();s&&(d.left-=t.$el[0].scrollLeft);const c=[[d.left,d.top],[d.left+i,d.top],[d.left,d.top+r],[d.left+i,d.top+r]];for(let t=0;t=0&&s[0]<=n&&s[1]>=0&&s[1]<=l){if(0===s[0]&&0===s[1])continue;e=!0}}if(!e)return}t.isHorizontal()?((d||c||p||u)&&(a.preventDefault?a.preventDefault():a.returnValue=!1),((c||u)&&!s||(d||p)&&s)&&t.slideNext(),((d||p)&&!s||(c||u)&&s)&&t.slidePrev()):((d||c||h||m)&&(a.preventDefault?a.preventDefault():a.returnValue=!1),(c||m)&&t.slideNext(),(d||h)&&t.slidePrev()),n("keyPress",i)}}function p(){t.keyboard.enabled||(d(l).on("keydown",c),t.keyboard.enabled=!0)}function u(){t.keyboard.enabled&&(d(l).off("keydown",c),t.keyboard.enabled=!1)}t.keyboard={enabled:!1},s({keyboard:{enabled:!1,onlyInViewport:!0,pageUpDown:!0}}),i("init",(()=>{t.params.keyboard.enabled&&p()})),i("destroy",(()=>{t.keyboard.enabled&&u()})),Object.assign(t.keyboard,{enable:p,disable:u})},function(e){let{swiper:t,extendParams:s,on:a,emit:i}=e;const n=r();let l;s({mousewheel:{enabled:!1,releaseOnEdges:!1,invert:!1,forceToAxis:!1,sensitivity:1,eventsTarget:"container",thresholdDelta:null,thresholdTime:null}}),t.mousewheel={enabled:!1};let o,c=u();const h=[];function m(){t.enabled&&(t.mouseEntered=!0)}function f(){t.enabled&&(t.mouseEntered=!1)}function g(e){return!(t.params.mousewheel.thresholdDelta&&e.delta=6&&u()-c<60||(e.direction<0?t.isEnd&&!t.params.loop||t.animating||(t.slideNext(),i("scroll",e.raw)):t.isBeginning&&!t.params.loop||t.animating||(t.slidePrev(),i("scroll",e.raw)),c=(new n.Date).getTime(),!1)))}function v(e){let s=e,a=!0;if(!t.enabled)return;const r=t.params.mousewheel;t.params.cssMode&&s.preventDefault();let n=t.$el;if("container"!==t.params.mousewheel.eventsTarget&&(n=d(t.params.mousewheel.eventsTarget)),!t.mouseEntered&&!n[0].contains(s.target)&&!r.releaseOnEdges)return!0;s.originalEvent&&(s=s.originalEvent);let c=0;const m=t.rtlTranslate?-1:1,f=function(e){let t=0,s=0,a=0,i=0;return"detail"in e&&(s=e.detail),"wheelDelta"in e&&(s=-e.wheelDelta/120),"wheelDeltaY"in e&&(s=-e.wheelDeltaY/120),"wheelDeltaX"in e&&(t=-e.wheelDeltaX/120),"axis"in e&&e.axis===e.HORIZONTAL_AXIS&&(t=s,s=0),a=10*t,i=10*s,"deltaY"in e&&(i=e.deltaY),"deltaX"in e&&(a=e.deltaX),e.shiftKey&&!a&&(a=i,i=0),(a||i)&&e.deltaMode&&(1===e.deltaMode?(a*=40,i*=40):(a*=800,i*=800)),a&&!t&&(t=a<1?-1:1),i&&!s&&(s=i<1?-1:1),{spinX:t,spinY:s,pixelX:a,pixelY:i}}(s);if(r.forceToAxis)if(t.isHorizontal()){if(!(Math.abs(f.pixelX)>Math.abs(f.pixelY)))return!0;c=-f.pixelX*m}else{if(!(Math.abs(f.pixelY)>Math.abs(f.pixelX)))return!0;c=-f.pixelY}else c=Math.abs(f.pixelX)>Math.abs(f.pixelY)?-f.pixelX*m:-f.pixelY;if(0===c)return!0;r.invert&&(c=-c);let v=t.getTranslate()+c*r.sensitivity;if(v>=t.minTranslate()&&(v=t.minTranslate()),v<=t.maxTranslate()&&(v=t.maxTranslate()),a=!!t.params.loop||!(v===t.minTranslate()||v===t.maxTranslate()),a&&t.params.nested&&s.stopPropagation(),t.params.freeMode&&t.params.freeMode.enabled){const e={time:u(),delta:Math.abs(c),direction:Math.sign(c)},a=o&&e.time=t.minTranslate()&&(n=t.minTranslate()),n<=t.maxTranslate()&&(n=t.maxTranslate()),t.setTransition(0),t.setTranslate(n),t.updateProgress(),t.updateActiveIndex(),t.updateSlidesClasses(),(!d&&t.isBeginning||!u&&t.isEnd)&&t.updateSlidesClasses(),t.params.freeMode.sticky){clearTimeout(l),l=void 0,h.length>=15&&h.shift();const s=h.length?h[h.length-1]:void 0,a=h[0];if(h.push(e),s&&(e.delta>s.delta||e.direction!==s.direction))h.splice(0);else if(h.length>=15&&e.time-a.time<500&&a.delta-e.delta>=1&&e.delta<=6){const s=c>0?.8:.2;o=e,h.splice(0),l=p((()=>{t.slideToClosest(t.params.speed,!0,void 0,s)}),0)}l||(l=p((()=>{o=e,h.splice(0),t.slideToClosest(t.params.speed,!0,void 0,.5)}),500))}if(a||i("scroll",s),t.params.autoplay&&t.params.autoplayDisableOnInteraction&&t.autoplay.stop(),n===t.minTranslate()||n===t.maxTranslate())return!0}}else{const s={time:u(),delta:Math.abs(c),direction:Math.sign(c),raw:e};h.length>=2&&h.shift();const a=h.length?h[h.length-1]:void 0;if(h.push(s),a?(s.direction!==a.direction||s.delta>a.delta||s.time>a.time+150)&&g(s):g(s),function(e){const s=t.params.mousewheel;if(e.direction<0){if(t.isEnd&&!t.params.loop&&s.releaseOnEdges)return!0}else if(t.isBeginning&&!t.params.loop&&s.releaseOnEdges)return!0;return!1}(s))return!0}return s.preventDefault?s.preventDefault():s.returnValue=!1,!1}function w(e){let s=t.$el;"container"!==t.params.mousewheel.eventsTarget&&(s=d(t.params.mousewheel.eventsTarget)),s[e]("mouseenter",m),s[e]("mouseleave",f),s[e]("wheel",v)}function b(){return t.params.cssMode?(t.wrapperEl.removeEventListener("wheel",v),!0):!t.mousewheel.enabled&&(w("on"),t.mousewheel.enabled=!0,!0)}function x(){return t.params.cssMode?(t.wrapperEl.addEventListener(event,v),!0):!!t.mousewheel.enabled&&(w("off"),t.mousewheel.enabled=!1,!0)}a("init",(()=>{!t.params.mousewheel.enabled&&t.params.cssMode&&x(),t.params.mousewheel.enabled&&b()})),a("destroy",(()=>{t.params.cssMode&&b(),t.mousewheel.enabled&&x()})),Object.assign(t.mousewheel,{enable:b,disable:x})},function(e){let{swiper:t,extendParams:s,on:a,emit:i}=e;function r(e){let s;return e&&(s=d(e),t.params.uniqueNavElements&&"string"==typeof e&&s.length>1&&1===t.$el.find(e).length&&(s=t.$el.find(e))),s}function n(e,s){const a=t.params.navigation;e&&e.length>0&&(e[s?"addClass":"removeClass"](a.disabledClass),e[0]&&"BUTTON"===e[0].tagName&&(e[0].disabled=s),t.params.watchOverflow&&t.enabled&&e[t.isLocked?"addClass":"removeClass"](a.lockClass))}function l(){if(t.params.loop)return;const{$nextEl:e,$prevEl:s}=t.navigation;n(s,t.isBeginning&&!t.params.rewind),n(e,t.isEnd&&!t.params.rewind)}function o(e){e.preventDefault(),(!t.isBeginning||t.params.loop||t.params.rewind)&&t.slidePrev()}function c(e){e.preventDefault(),(!t.isEnd||t.params.loop||t.params.rewind)&&t.slideNext()}function p(){const e=t.params.navigation;if(t.params.navigation=F(t,t.originalParams.navigation,t.params.navigation,{nextEl:"swiper-button-next",prevEl:"swiper-button-prev"}),!e.nextEl&&!e.prevEl)return;const s=r(e.nextEl),a=r(e.prevEl);s&&s.length>0&&s.on("click",c),a&&a.length>0&&a.on("click",o),Object.assign(t.navigation,{$nextEl:s,nextEl:s&&s[0],$prevEl:a,prevEl:a&&a[0]}),t.enabled||(s&&s.addClass(e.lockClass),a&&a.addClass(e.lockClass))}function u(){const{$nextEl:e,$prevEl:s}=t.navigation;e&&e.length&&(e.off("click",c),e.removeClass(t.params.navigation.disabledClass)),s&&s.length&&(s.off("click",o),s.removeClass(t.params.navigation.disabledClass))}s({navigation:{nextEl:null,prevEl:null,hideOnClick:!1,disabledClass:"swiper-button-disabled",hiddenClass:"swiper-button-hidden",lockClass:"swiper-button-lock"}}),t.navigation={nextEl:null,$nextEl:null,prevEl:null,$prevEl:null},a("init",(()=>{p(),l()})),a("toEdge fromEdge lock unlock",(()=>{l()})),a("destroy",(()=>{u()})),a("enable disable",(()=>{const{$nextEl:e,$prevEl:s}=t.navigation;e&&e[t.enabled?"removeClass":"addClass"](t.params.navigation.lockClass),s&&s[t.enabled?"removeClass":"addClass"](t.params.navigation.lockClass)})),a("click",((e,s)=>{const{$nextEl:a,$prevEl:r}=t.navigation,n=s.target;if(t.params.navigation.hideOnClick&&!d(n).is(r)&&!d(n).is(a)){if(t.pagination&&t.params.pagination&&t.params.pagination.clickable&&(t.pagination.el===n||t.pagination.el.contains(n)))return;let e;a?e=a.hasClass(t.params.navigation.hiddenClass):r&&(e=r.hasClass(t.params.navigation.hiddenClass)),i(!0===e?"navigationShow":"navigationHide"),a&&a.toggleClass(t.params.navigation.hiddenClass),r&&r.toggleClass(t.params.navigation.hiddenClass)}})),Object.assign(t.navigation,{update:l,init:p,destroy:u})},function(e){let{swiper:t,extendParams:s,on:a,emit:i}=e;const r="swiper-pagination";let n;s({pagination:{el:null,bulletElement:"span",clickable:!1,hideOnClick:!1,renderBullet:null,renderProgressbar:null,renderFraction:null,renderCustom:null,progressbarOpposite:!1,type:"bullets",dynamicBullets:!1,dynamicMainBullets:1,formatFractionCurrent:e=>e,formatFractionTotal:e=>e,bulletClass:`${r}-bullet`,bulletActiveClass:`${r}-bullet-active`,modifierClass:`${r}-`,currentClass:`${r}-current`,totalClass:`${r}-total`,hiddenClass:`${r}-hidden`,progressbarFillClass:`${r}-progressbar-fill`,progressbarOppositeClass:`${r}-progressbar-opposite`,clickableClass:`${r}-clickable`,lockClass:`${r}-lock`,horizontalClass:`${r}-horizontal`,verticalClass:`${r}-vertical`}}),t.pagination={el:null,$el:null,bullets:[]};let l=0;function o(){return!t.params.pagination.el||!t.pagination.el||!t.pagination.$el||0===t.pagination.$el.length}function c(e,s){const{bulletActiveClass:a}=t.params.pagination;e[s]().addClass(`${a}-${s}`)[s]().addClass(`${a}-${s}-${s}`)}function p(){const e=t.rtl,s=t.params.pagination;if(o())return;const a=t.virtual&&t.params.virtual.enabled?t.virtual.slides.length:t.slides.length,r=t.pagination.$el;let p;const u=t.params.loop?Math.ceil((a-2*t.loopedSlides)/t.params.slidesPerGroup):t.snapGrid.length;if(t.params.loop?(p=Math.ceil((t.activeIndex-t.loopedSlides)/t.params.slidesPerGroup),p>a-1-2*t.loopedSlides&&(p-=a-2*t.loopedSlides),p>u-1&&(p-=u),p<0&&"bullets"!==t.params.paginationType&&(p=u+p)):p=void 0!==t.snapIndex?t.snapIndex:t.activeIndex||0,"bullets"===s.type&&t.pagination.bullets&&t.pagination.bullets.length>0){const a=t.pagination.bullets;let i,o,u;if(s.dynamicBullets&&(n=a.eq(0)[t.isHorizontal()?"outerWidth":"outerHeight"](!0),r.css(t.isHorizontal()?"width":"height",n*(s.dynamicMainBullets+4)+"px"),s.dynamicMainBullets>1&&void 0!==t.previousIndex&&(l+=p-(t.previousIndex-t.loopedSlides||0),l>s.dynamicMainBullets-1?l=s.dynamicMainBullets-1:l<0&&(l=0)),i=Math.max(p-l,0),o=i+(Math.min(a.length,s.dynamicMainBullets)-1),u=(o+i)/2),a.removeClass(["","-next","-next-next","-prev","-prev-prev","-main"].map((e=>`${s.bulletActiveClass}${e}`)).join(" ")),r.length>1)a.each((e=>{const t=d(e),a=t.index();a===p&&t.addClass(s.bulletActiveClass),s.dynamicBullets&&(a>=i&&a<=o&&t.addClass(`${s.bulletActiveClass}-main`),a===i&&c(t,"prev"),a===o&&c(t,"next"))}));else{const e=a.eq(p),r=e.index();if(e.addClass(s.bulletActiveClass),s.dynamicBullets){const e=a.eq(i),n=a.eq(o);for(let e=i;e<=o;e+=1)a.eq(e).addClass(`${s.bulletActiveClass}-main`);if(t.params.loop)if(r>=a.length){for(let e=s.dynamicMainBullets;e>=0;e-=1)a.eq(a.length-e).addClass(`${s.bulletActiveClass}-main`);a.eq(a.length-s.dynamicMainBullets-1).addClass(`${s.bulletActiveClass}-prev`)}else c(e,"prev"),c(n,"next");else c(e,"prev"),c(n,"next")}}if(s.dynamicBullets){const i=Math.min(a.length,s.dynamicMainBullets+4),r=(n*i-n)/2-u*n,l=e?"right":"left";a.css(t.isHorizontal()?l:"top",`${r}px`)}}if("fraction"===s.type&&(r.find(U(s.currentClass)).text(s.formatFractionCurrent(p+1)),r.find(U(s.totalClass)).text(s.formatFractionTotal(u))),"progressbar"===s.type){let e;e=s.progressbarOpposite?t.isHorizontal()?"vertical":"horizontal":t.isHorizontal()?"horizontal":"vertical";const a=(p+1)/u;let i=1,n=1;"horizontal"===e?i=a:n=a,r.find(U(s.progressbarFillClass)).transform(`translate3d(0,0,0) scaleX(${i}) scaleY(${n})`).transition(t.params.speed)}"custom"===s.type&&s.renderCustom?(r.html(s.renderCustom(t,p+1,u)),i("paginationRender",r[0])):i("paginationUpdate",r[0]),t.params.watchOverflow&&t.enabled&&r[t.isLocked?"addClass":"removeClass"](s.lockClass)}function u(){const e=t.params.pagination;if(o())return;const s=t.virtual&&t.params.virtual.enabled?t.virtual.slides.length:t.slides.length,a=t.pagination.$el;let r="";if("bullets"===e.type){let i=t.params.loop?Math.ceil((s-2*t.loopedSlides)/t.params.slidesPerGroup):t.snapGrid.length;t.params.freeMode&&t.params.freeMode.enabled&&!t.params.loop&&i>s&&(i=s);for(let s=0;s`;a.html(r),t.pagination.bullets=a.find(U(e.bulletClass))}"fraction"===e.type&&(r=e.renderFraction?e.renderFraction.call(t,e.currentClass,e.totalClass):` / `,a.html(r)),"progressbar"===e.type&&(r=e.renderProgressbar?e.renderProgressbar.call(t,e.progressbarFillClass):``,a.html(r)),"custom"!==e.type&&i("paginationRender",t.pagination.$el[0])}function h(){t.params.pagination=F(t,t.originalParams.pagination,t.params.pagination,{el:"swiper-pagination"});const e=t.params.pagination;if(!e.el)return;let s=d(e.el);0!==s.length&&(t.params.uniqueNavElements&&"string"==typeof e.el&&s.length>1&&(s=t.$el.find(e.el),s.length>1&&(s=s.filter((e=>d(e).parents(".swiper")[0]===t.el)))),"bullets"===e.type&&e.clickable&&s.addClass(e.clickableClass),s.addClass(e.modifierClass+e.type),s.addClass(t.isHorizontal()?e.horizontalClass:e.verticalClass),"bullets"===e.type&&e.dynamicBullets&&(s.addClass(`${e.modifierClass}${e.type}-dynamic`),l=0,e.dynamicMainBullets<1&&(e.dynamicMainBullets=1)),"progressbar"===e.type&&e.progressbarOpposite&&s.addClass(e.progressbarOppositeClass),e.clickable&&s.on("click",U(e.bulletClass),(function(e){e.preventDefault();let s=d(this).index()*t.params.slidesPerGroup;t.params.loop&&(s+=t.loopedSlides),t.slideTo(s)})),Object.assign(t.pagination,{$el:s,el:s[0]}),t.enabled||s.addClass(e.lockClass))}function m(){const e=t.params.pagination;if(o())return;const s=t.pagination.$el;s.removeClass(e.hiddenClass),s.removeClass(e.modifierClass+e.type),s.removeClass(t.isHorizontal()?e.horizontalClass:e.verticalClass),t.pagination.bullets&&t.pagination.bullets.removeClass&&t.pagination.bullets.removeClass(e.bulletActiveClass),e.clickable&&s.off("click",U(e.bulletClass))}a("init",(()=>{h(),u(),p()})),a("activeIndexChange",(()=>{(t.params.loop||void 0===t.snapIndex)&&p()})),a("snapIndexChange",(()=>{t.params.loop||p()})),a("slidesLengthChange",(()=>{t.params.loop&&(u(),p())})),a("snapGridLengthChange",(()=>{t.params.loop||(u(),p())})),a("destroy",(()=>{m()})),a("enable disable",(()=>{const{$el:e}=t.pagination;e&&e[t.enabled?"removeClass":"addClass"](t.params.pagination.lockClass)})),a("lock unlock",(()=>{p()})),a("click",((e,s)=>{const a=s.target,{$el:r}=t.pagination;if(t.params.pagination.el&&t.params.pagination.hideOnClick&&r.length>0&&!d(a).hasClass(t.params.pagination.bulletClass)){if(t.navigation&&(t.navigation.nextEl&&a===t.navigation.nextEl||t.navigation.prevEl&&a===t.navigation.prevEl))return;const e=r.hasClass(t.params.pagination.hiddenClass);i(!0===e?"paginationShow":"paginationHide"),r.toggleClass(t.params.pagination.hiddenClass)}})),Object.assign(t.pagination,{render:u,update:p,init:h,destroy:m})},function(e){let{swiper:t,extendParams:s,on:i,emit:r}=e;const n=a();let l,o,c,u,h=!1,m=null,f=null;function g(){if(!t.params.scrollbar.el||!t.scrollbar.el)return;const{scrollbar:e,rtlTranslate:s,progress:a}=t,{$dragEl:i,$el:r}=e,n=t.params.scrollbar;let l=o,d=(c-o)*a;s?(d=-d,d>0?(l=o-d,d=0):-d+o>c&&(l=c+d)):d<0?(l=o+d,d=0):d+o>c&&(l=c-d),t.isHorizontal()?(i.transform(`translate3d(${d}px, 0, 0)`),i[0].style.width=`${l}px`):(i.transform(`translate3d(0px, ${d}px, 0)`),i[0].style.height=`${l}px`),n.hide&&(clearTimeout(m),r[0].style.opacity=1,m=setTimeout((()=>{r[0].style.opacity=0,r.transition(400)}),1e3))}function v(){if(!t.params.scrollbar.el||!t.scrollbar.el)return;const{scrollbar:e}=t,{$dragEl:s,$el:a}=e;s[0].style.width="",s[0].style.height="",c=t.isHorizontal()?a[0].offsetWidth:a[0].offsetHeight,u=t.size/(t.virtualSize+t.params.slidesOffsetBefore-(t.params.centeredSlides?t.snapGrid[0]:0)),o="auto"===t.params.scrollbar.dragSize?c*u:parseInt(t.params.scrollbar.dragSize,10),t.isHorizontal()?s[0].style.width=`${o}px`:s[0].style.height=`${o}px`,a[0].style.display=u>=1?"none":"",t.params.scrollbar.hide&&(a[0].style.opacity=0),t.params.watchOverflow&&t.enabled&&e.$el[t.isLocked?"addClass":"removeClass"](t.params.scrollbar.lockClass)}function w(e){return t.isHorizontal()?"touchstart"===e.type||"touchmove"===e.type?e.targetTouches[0].clientX:e.clientX:"touchstart"===e.type||"touchmove"===e.type?e.targetTouches[0].clientY:e.clientY}function b(e){const{scrollbar:s,rtlTranslate:a}=t,{$el:i}=s;let r;r=(w(e)-i.offset()[t.isHorizontal()?"left":"top"]-(null!==l?l:o/2))/(c-o),r=Math.max(Math.min(r,1),0),a&&(r=1-r);const n=t.minTranslate()+(t.maxTranslate()-t.minTranslate())*r;t.updateProgress(n),t.setTranslate(n),t.updateActiveIndex(),t.updateSlidesClasses()}function x(e){const s=t.params.scrollbar,{scrollbar:a,$wrapperEl:i}=t,{$el:n,$dragEl:o}=a;h=!0,l=e.target===o[0]||e.target===o?w(e)-e.target.getBoundingClientRect()[t.isHorizontal()?"left":"top"]:null,e.preventDefault(),e.stopPropagation(),i.transition(100),o.transition(100),b(e),clearTimeout(f),n.transition(0),s.hide&&n.css("opacity",1),t.params.cssMode&&t.$wrapperEl.css("scroll-snap-type","none"),r("scrollbarDragStart",e)}function y(e){const{scrollbar:s,$wrapperEl:a}=t,{$el:i,$dragEl:n}=s;h&&(e.preventDefault?e.preventDefault():e.returnValue=!1,b(e),a.transition(0),i.transition(0),n.transition(0),r("scrollbarDragMove",e))}function E(e){const s=t.params.scrollbar,{scrollbar:a,$wrapperEl:i}=t,{$el:n}=a;h&&(h=!1,t.params.cssMode&&(t.$wrapperEl.css("scroll-snap-type",""),i.transition("")),s.hide&&(clearTimeout(f),f=p((()=>{n.css("opacity",0),n.transition(400)}),1e3)),r("scrollbarDragEnd",e),s.snapOnRelease&&t.slideToClosest())}function T(e){const{scrollbar:s,touchEventsTouch:a,touchEventsDesktop:i,params:r,support:l}=t,o=s.$el[0],d=!(!l.passiveListener||!r.passiveListeners)&&{passive:!1,capture:!1},c=!(!l.passiveListener||!r.passiveListeners)&&{passive:!0,capture:!1};if(!o)return;const p="on"===e?"addEventListener":"removeEventListener";l.touch?(o[p](a.start,x,d),o[p](a.move,y,d),o[p](a.end,E,c)):(o[p](i.start,x,d),n[p](i.move,y,d),n[p](i.end,E,c))}function C(){const{scrollbar:e,$el:s}=t;t.params.scrollbar=F(t,t.originalParams.scrollbar,t.params.scrollbar,{el:"swiper-scrollbar"});const a=t.params.scrollbar;if(!a.el)return;let i=d(a.el);t.params.uniqueNavElements&&"string"==typeof a.el&&i.length>1&&1===s.find(a.el).length&&(i=s.find(a.el));let r=i.find(`.${t.params.scrollbar.dragClass}`);0===r.length&&(r=d(`
`),i.append(r)),Object.assign(e,{$el:i,el:i[0],$dragEl:r,dragEl:r[0]}),a.draggable&&t.params.scrollbar.el&&T("on"),i&&i[t.enabled?"removeClass":"addClass"](t.params.scrollbar.lockClass)}function $(){t.params.scrollbar.el&&T("off")}s({scrollbar:{el:null,dragSize:"auto",hide:!1,draggable:!1,snapOnRelease:!0,lockClass:"swiper-scrollbar-lock",dragClass:"swiper-scrollbar-drag"}}),t.scrollbar={el:null,dragEl:null,$el:null,$dragEl:null},i("init",(()=>{C(),v(),g()})),i("update resize observerUpdate lock unlock",(()=>{v()})),i("setTranslate",(()=>{g()})),i("setTransition",((e,s)=>{!function(e){t.params.scrollbar.el&&t.scrollbar.el&&t.scrollbar.$dragEl.transition(e)}(s)})),i("enable disable",(()=>{const{$el:e}=t.scrollbar;e&&e[t.enabled?"removeClass":"addClass"](t.params.scrollbar.lockClass)})),i("destroy",(()=>{$()})),Object.assign(t.scrollbar,{updateSize:v,setTranslate:g,init:C,destroy:$})},function(e){let{swiper:t,extendParams:s,on:a}=e;s({parallax:{enabled:!1}});const i=(e,s)=>{const{rtl:a}=t,i=d(e),r=a?-1:1,n=i.attr("data-swiper-parallax")||"0";let l=i.attr("data-swiper-parallax-x"),o=i.attr("data-swiper-parallax-y");const c=i.attr("data-swiper-parallax-scale"),p=i.attr("data-swiper-parallax-opacity");if(l||o?(l=l||"0",o=o||"0"):t.isHorizontal()?(l=n,o="0"):(o=n,l="0"),l=l.indexOf("%")>=0?parseInt(l,10)*s*r+"%":l*s*r+"px",o=o.indexOf("%")>=0?parseInt(o,10)*s+"%":o*s+"px",null!=p){const e=p-(p-1)*(1-Math.abs(s));i[0].style.opacity=e}if(null==c)i.transform(`translate3d(${l}, ${o}, 0px)`);else{const e=c-(c-1)*(1-Math.abs(s));i.transform(`translate3d(${l}, ${o}, 0px) scale(${e})`)}},r=()=>{const{$el:e,slides:s,progress:a,snapGrid:r}=t;e.children("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]").each((e=>{i(e,a)})),s.each(((e,s)=>{let n=e.progress;t.params.slidesPerGroup>1&&"auto"!==t.params.slidesPerView&&(n+=Math.ceil(s/2)-a*(r.length-1)),n=Math.min(Math.max(n,-1),1),d(e).find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]").each((e=>{i(e,n)}))}))};a("beforeInit",(()=>{t.params.parallax.enabled&&(t.params.watchSlidesProgress=!0,t.originalParams.watchSlidesProgress=!0)})),a("init",(()=>{t.params.parallax.enabled&&r()})),a("setTranslate",(()=>{t.params.parallax.enabled&&r()})),a("setTransition",((e,s)=>{t.params.parallax.enabled&&function(e){void 0===e&&(e=t.params.speed);const{$el:s}=t;s.find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]").each((t=>{const s=d(t);let a=parseInt(s.attr("data-swiper-parallax-duration"),10)||e;0===e&&(a=0),s.transition(a)}))}(s)}))},function(e){let{swiper:t,extendParams:s,on:a,emit:i}=e;const n=r();s({zoom:{enabled:!1,maxRatio:3,minRatio:1,toggle:!0,containerClass:"swiper-zoom-container",zoomedSlideClass:"swiper-slide-zoomed"}}),t.zoom={enabled:!1};let l,o,c,p=1,u=!1;const m={$slideEl:void 0,slideWidth:void 0,slideHeight:void 0,$imageEl:void 0,$imageWrapEl:void 0,maxRatio:3},f={isTouched:void 0,isMoved:void 0,currentX:void 0,currentY:void 0,minX:void 0,minY:void 0,maxX:void 0,maxY:void 0,width:void 0,height:void 0,startX:void 0,startY:void 0,touchesStart:{},touchesCurrent:{}},g={x:void 0,y:void 0,prevPositionX:void 0,prevPositionY:void 0,prevTime:void 0};let v=1;function w(e){if(e.targetTouches.length<2)return 1;const t=e.targetTouches[0].pageX,s=e.targetTouches[0].pageY,a=e.targetTouches[1].pageX,i=e.targetTouches[1].pageY;return Math.sqrt((a-t)**2+(i-s)**2)}function b(e){const s=t.support,a=t.params.zoom;if(o=!1,c=!1,!s.gestures){if("touchstart"!==e.type||"touchstart"===e.type&&e.targetTouches.length<2)return;o=!0,m.scaleStart=w(e)}m.$slideEl&&m.$slideEl.length||(m.$slideEl=d(e.target).closest(`.${t.params.slideClass}`),0===m.$slideEl.length&&(m.$slideEl=t.slides.eq(t.activeIndex)),m.$imageEl=m.$slideEl.find(`.${a.containerClass}`).eq(0).find("picture, img, svg, canvas, .swiper-zoom-target").eq(0),m.$imageWrapEl=m.$imageEl.parent(`.${a.containerClass}`),m.maxRatio=m.$imageWrapEl.attr("data-swiper-zoom")||a.maxRatio,0!==m.$imageWrapEl.length)?(m.$imageEl&&m.$imageEl.transition(0),u=!0):m.$imageEl=void 0}function x(e){const s=t.support,a=t.params.zoom,i=t.zoom;if(!s.gestures){if("touchmove"!==e.type||"touchmove"===e.type&&e.targetTouches.length<2)return;c=!0,m.scaleMove=w(e)}m.$imageEl&&0!==m.$imageEl.length?(s.gestures?i.scale=e.scale*p:i.scale=m.scaleMove/m.scaleStart*p,i.scale>m.maxRatio&&(i.scale=m.maxRatio-1+(i.scale-m.maxRatio+1)**.5),i.scalef.touchesStart.x))return void(f.isTouched=!1);if(!t.isHorizontal()&&(Math.floor(f.minY)===Math.floor(f.startY)&&f.touchesCurrent.yf.touchesStart.y))return void(f.isTouched=!1)}e.cancelable&&e.preventDefault(),e.stopPropagation(),f.isMoved=!0,f.currentX=f.touchesCurrent.x-f.touchesStart.x+f.startX,f.currentY=f.touchesCurrent.y-f.touchesStart.y+f.startY,f.currentXf.maxX&&(f.currentX=f.maxX-1+(f.currentX-f.maxX+1)**.8),f.currentYf.maxY&&(f.currentY=f.maxY-1+(f.currentY-f.maxY+1)**.8),g.prevPositionX||(g.prevPositionX=f.touchesCurrent.x),g.prevPositionY||(g.prevPositionY=f.touchesCurrent.y),g.prevTime||(g.prevTime=Date.now()),g.x=(f.touchesCurrent.x-g.prevPositionX)/(Date.now()-g.prevTime)/2,g.y=(f.touchesCurrent.y-g.prevPositionY)/(Date.now()-g.prevTime)/2,Math.abs(f.touchesCurrent.x-g.prevPositionX)<2&&(g.x=0),Math.abs(f.touchesCurrent.y-g.prevPositionY)<2&&(g.y=0),g.prevPositionX=f.touchesCurrent.x,g.prevPositionY=f.touchesCurrent.y,g.prevTime=Date.now(),m.$imageWrapEl.transform(`translate3d(${f.currentX}px, ${f.currentY}px,0)`)}}function T(){const e=t.zoom;m.$slideEl&&t.previousIndex!==t.activeIndex&&(m.$imageEl&&m.$imageEl.transform("translate3d(0,0,0) scale(1)"),m.$imageWrapEl&&m.$imageWrapEl.transform("translate3d(0,0,0)"),e.scale=1,p=1,m.$slideEl=void 0,m.$imageEl=void 0,m.$imageWrapEl=void 0)}function C(e){const s=t.zoom,a=t.params.zoom;if(m.$slideEl||(e&&e.target&&(m.$slideEl=d(e.target).closest(`.${t.params.slideClass}`)),m.$slideEl||(t.params.virtual&&t.params.virtual.enabled&&t.virtual?m.$slideEl=t.$wrapperEl.children(`.${t.params.slideActiveClass}`):m.$slideEl=t.slides.eq(t.activeIndex)),m.$imageEl=m.$slideEl.find(`.${a.containerClass}`).eq(0).find("picture, img, svg, canvas, .swiper-zoom-target").eq(0),m.$imageWrapEl=m.$imageEl.parent(`.${a.containerClass}`)),!m.$imageEl||0===m.$imageEl.length||!m.$imageWrapEl||0===m.$imageWrapEl.length)return;let i,r,l,o,c,u,h,g,v,w,b,x,y,E,T,C,$,S;t.params.cssMode&&(t.wrapperEl.style.overflow="hidden",t.wrapperEl.style.touchAction="none"),m.$slideEl.addClass(`${a.zoomedSlideClass}`),void 0===f.touchesStart.x&&e?(i="touchend"===e.type?e.changedTouches[0].pageX:e.pageX,r="touchend"===e.type?e.changedTouches[0].pageY:e.pageY):(i=f.touchesStart.x,r=f.touchesStart.y),s.scale=m.$imageWrapEl.attr("data-swiper-zoom")||a.maxRatio,p=m.$imageWrapEl.attr("data-swiper-zoom")||a.maxRatio,e?($=m.$slideEl[0].offsetWidth,S=m.$slideEl[0].offsetHeight,l=m.$slideEl.offset().left+n.scrollX,o=m.$slideEl.offset().top+n.scrollY,c=l+$/2-i,u=o+S/2-r,v=m.$imageEl[0].offsetWidth,w=m.$imageEl[0].offsetHeight,b=v*s.scale,x=w*s.scale,y=Math.min($/2-b/2,0),E=Math.min(S/2-x/2,0),T=-y,C=-E,h=c*s.scale,g=u*s.scale,hT&&(h=T),gC&&(g=C)):(h=0,g=0),m.$imageWrapEl.transition(300).transform(`translate3d(${h}px, ${g}px,0)`),m.$imageEl.transition(300).transform(`translate3d(0,0,0) scale(${s.scale})`)}function $(){const e=t.zoom,s=t.params.zoom;m.$slideEl||(t.params.virtual&&t.params.virtual.enabled&&t.virtual?m.$slideEl=t.$wrapperEl.children(`.${t.params.slideActiveClass}`):m.$slideEl=t.slides.eq(t.activeIndex),m.$imageEl=m.$slideEl.find(`.${s.containerClass}`).eq(0).find("picture, img, svg, canvas, .swiper-zoom-target").eq(0),m.$imageWrapEl=m.$imageEl.parent(`.${s.containerClass}`)),m.$imageEl&&0!==m.$imageEl.length&&m.$imageWrapEl&&0!==m.$imageWrapEl.length&&(t.params.cssMode&&(t.wrapperEl.style.overflow="",t.wrapperEl.style.touchAction=""),e.scale=1,p=1,m.$imageWrapEl.transition(300).transform("translate3d(0,0,0)"),m.$imageEl.transition(300).transform("translate3d(0,0,0) scale(1)"),m.$slideEl.removeClass(`${s.zoomedSlideClass}`),m.$slideEl=void 0)}function S(e){const s=t.zoom;s.scale&&1!==s.scale?$():C(e)}function M(){const e=t.support;return{passiveListener:!("touchstart"!==t.touchEvents.start||!e.passiveListener||!t.params.passiveListeners)&&{passive:!0,capture:!1},activeListenerWithCapture:!e.passiveListener||{passive:!1,capture:!0}}}function P(){return`.${t.params.slideClass}`}function k(e){const{passiveListener:s}=M(),a=P();t.$wrapperEl[e]("gesturestart",a,b,s),t.$wrapperEl[e]("gesturechange",a,x,s),t.$wrapperEl[e]("gestureend",a,y,s)}function z(){l||(l=!0,k("on"))}function O(){l&&(l=!1,k("off"))}function I(){const e=t.zoom;if(e.enabled)return;e.enabled=!0;const s=t.support,{passiveListener:a,activeListenerWithCapture:i}=M(),r=P();s.gestures?(t.$wrapperEl.on(t.touchEvents.start,z,a),t.$wrapperEl.on(t.touchEvents.end,O,a)):"touchstart"===t.touchEvents.start&&(t.$wrapperEl.on(t.touchEvents.start,r,b,a),t.$wrapperEl.on(t.touchEvents.move,r,x,i),t.$wrapperEl.on(t.touchEvents.end,r,y,a),t.touchEvents.cancel&&t.$wrapperEl.on(t.touchEvents.cancel,r,y,a)),t.$wrapperEl.on(t.touchEvents.move,`.${t.params.zoom.containerClass}`,E,i)}function L(){const e=t.zoom;if(!e.enabled)return;const s=t.support;e.enabled=!1;const{passiveListener:a,activeListenerWithCapture:i}=M(),r=P();s.gestures?(t.$wrapperEl.off(t.touchEvents.start,z,a),t.$wrapperEl.off(t.touchEvents.end,O,a)):"touchstart"===t.touchEvents.start&&(t.$wrapperEl.off(t.touchEvents.start,r,b,a),t.$wrapperEl.off(t.touchEvents.move,r,x,i),t.$wrapperEl.off(t.touchEvents.end,r,y,a),t.touchEvents.cancel&&t.$wrapperEl.off(t.touchEvents.cancel,r,y,a)),t.$wrapperEl.off(t.touchEvents.move,`.${t.params.zoom.containerClass}`,E,i)}Object.defineProperty(t.zoom,"scale",{get:()=>v,set(e){if(v!==e){const t=m.$imageEl?m.$imageEl[0]:void 0,s=m.$slideEl?m.$slideEl[0]:void 0;i("zoomChange",e,t,s)}v=e}}),a("init",(()=>{t.params.zoom.enabled&&I()})),a("destroy",(()=>{L()})),a("touchStart",((e,s)=>{t.zoom.enabled&&function(e){const s=t.device;m.$imageEl&&0!==m.$imageEl.length&&(f.isTouched||(s.android&&e.cancelable&&e.preventDefault(),f.isTouched=!0,f.touchesStart.x="touchstart"===e.type?e.targetTouches[0].pageX:e.pageX,f.touchesStart.y="touchstart"===e.type?e.targetTouches[0].pageY:e.pageY))}(s)})),a("touchEnd",((e,s)=>{t.zoom.enabled&&function(){const e=t.zoom;if(!m.$imageEl||0===m.$imageEl.length)return;if(!f.isTouched||!f.isMoved)return f.isTouched=!1,void(f.isMoved=!1);f.isTouched=!1,f.isMoved=!1;let s=300,a=300;const i=g.x*s,r=f.currentX+i,n=g.y*a,l=f.currentY+n;0!==g.x&&(s=Math.abs((r-f.currentX)/g.x)),0!==g.y&&(a=Math.abs((l-f.currentY)/g.y));const o=Math.max(s,a);f.currentX=r,f.currentY=l;const d=f.width*e.scale,c=f.height*e.scale;f.minX=Math.min(m.slideWidth/2-d/2,0),f.maxX=-f.minX,f.minY=Math.min(m.slideHeight/2-c/2,0),f.maxY=-f.minY,f.currentX=Math.max(Math.min(f.currentX,f.maxX),f.minX),f.currentY=Math.max(Math.min(f.currentY,f.maxY),f.minY),m.$imageWrapEl.transition(o).transform(`translate3d(${f.currentX}px, ${f.currentY}px,0)`)}()})),a("doubleTap",((e,s)=>{!t.animating&&t.params.zoom.enabled&&t.zoom.enabled&&t.params.zoom.toggle&&S(s)})),a("transitionEnd",(()=>{t.zoom.enabled&&t.params.zoom.enabled&&T()})),a("slideChange",(()=>{t.zoom.enabled&&t.params.zoom.enabled&&t.params.cssMode&&T()})),Object.assign(t.zoom,{enable:I,disable:L,in:C,out:$,toggle:S})},function(e){let{swiper:t,extendParams:s,on:a,emit:i}=e;s({lazy:{checkInView:!1,enabled:!1,loadPrevNext:!1,loadPrevNextAmount:1,loadOnTransitionStart:!1,scrollingElement:"",elementClass:"swiper-lazy",loadingClass:"swiper-lazy-loading",loadedClass:"swiper-lazy-loaded",preloaderClass:"swiper-lazy-preloader"}}),t.lazy={};let n=!1,l=!1;function o(e,s){void 0===s&&(s=!0);const a=t.params.lazy;if(void 0===e)return;if(0===t.slides.length)return;const r=t.virtual&&t.params.virtual.enabled?t.$wrapperEl.children(`.${t.params.slideClass}[data-swiper-slide-index="${e}"]`):t.slides.eq(e),n=r.find(`.${a.elementClass}:not(.${a.loadedClass}):not(.${a.loadingClass})`);!r.hasClass(a.elementClass)||r.hasClass(a.loadedClass)||r.hasClass(a.loadingClass)||n.push(r[0]),0!==n.length&&n.each((e=>{const n=d(e);n.addClass(a.loadingClass);const l=n.attr("data-background"),c=n.attr("data-src"),p=n.attr("data-srcset"),u=n.attr("data-sizes"),h=n.parent("picture");t.loadImage(n[0],c||l,p,u,!1,(()=>{if(null!=t&&t&&(!t||t.params)&&!t.destroyed){if(l?(n.css("background-image",`url("${l}")`),n.removeAttr("data-background")):(p&&(n.attr("srcset",p),n.removeAttr("data-srcset")),u&&(n.attr("sizes",u),n.removeAttr("data-sizes")),h.length&&h.children("source").each((e=>{const t=d(e);t.attr("data-srcset")&&(t.attr("srcset",t.attr("data-srcset")),t.removeAttr("data-srcset"))})),c&&(n.attr("src",c),n.removeAttr("data-src"))),n.addClass(a.loadedClass).removeClass(a.loadingClass),r.find(`.${a.preloaderClass}`).remove(),t.params.loop&&s){const e=r.attr("data-swiper-slide-index");if(r.hasClass(t.params.slideDuplicateClass)){o(t.$wrapperEl.children(`[data-swiper-slide-index="${e}"]:not(.${t.params.slideDuplicateClass})`).index(),!1)}else{o(t.$wrapperEl.children(`.${t.params.slideDuplicateClass}[data-swiper-slide-index="${e}"]`).index(),!1)}}i("lazyImageReady",r[0],n[0]),t.params.autoHeight&&t.updateAutoHeight()}})),i("lazyImageLoad",r[0],n[0])}))}function c(){const{$wrapperEl:e,params:s,slides:a,activeIndex:i}=t,r=t.virtual&&s.virtual.enabled,n=s.lazy;let c=s.slidesPerView;function p(t){if(r){if(e.children(`.${s.slideClass}[data-swiper-slide-index="${t}"]`).length)return!0}else if(a[t])return!0;return!1}function u(e){return r?d(e).attr("data-swiper-slide-index"):d(e).index()}if("auto"===c&&(c=0),l||(l=!0),t.params.watchSlidesProgress)e.children(`.${s.slideVisibleClass}`).each((e=>{o(r?d(e).attr("data-swiper-slide-index"):d(e).index())}));else if(c>1)for(let e=i;e1||n.loadPrevNextAmount&&n.loadPrevNextAmount>1){const e=n.loadPrevNextAmount,t=c,s=Math.min(i+t+Math.max(e,t),a.length),r=Math.max(i-Math.max(t,e),0);for(let e=i+c;e0&&o(u(t));const a=e.children(`.${s.slidePrevClass}`);a.length>0&&o(u(a))}}function p(){const e=r();if(!t||t.destroyed)return;const s=t.params.lazy.scrollingElement?d(t.params.lazy.scrollingElement):d(e),a=s[0]===e,i=a?e.innerWidth:s[0].offsetWidth,l=a?e.innerHeight:s[0].offsetHeight,o=t.$el.offset(),{rtlTranslate:u}=t;let h=!1;u&&(o.left-=t.$el[0].scrollLeft);const m=[[o.left,o.top],[o.left+t.width,o.top],[o.left,o.top+t.height],[o.left+t.width,o.top+t.height]];for(let e=0;e=0&&t[0]<=i&&t[1]>=0&&t[1]<=l){if(0===t[0]&&0===t[1])continue;h=!0}}const f=!("touchstart"!==t.touchEvents.start||!t.support.passiveListener||!t.params.passiveListeners)&&{passive:!0,capture:!1};h?(c(),s.off("scroll",p,f)):n||(n=!0,s.on("scroll",p,f))}a("beforeInit",(()=>{t.params.lazy.enabled&&t.params.preloadImages&&(t.params.preloadImages=!1)})),a("init",(()=>{t.params.lazy.enabled&&(t.params.lazy.checkInView?p():c())})),a("scroll",(()=>{t.params.freeMode&&t.params.freeMode.enabled&&!t.params.freeMode.sticky&&c()})),a("scrollbarDragMove resize _freeModeNoMomentumRelease",(()=>{t.params.lazy.enabled&&(t.params.lazy.checkInView?p():c())})),a("transitionStart",(()=>{t.params.lazy.enabled&&(t.params.lazy.loadOnTransitionStart||!t.params.lazy.loadOnTransitionStart&&!l)&&(t.params.lazy.checkInView?p():c())})),a("transitionEnd",(()=>{t.params.lazy.enabled&&!t.params.lazy.loadOnTransitionStart&&(t.params.lazy.checkInView?p():c())})),a("slideChange",(()=>{const{lazy:e,cssMode:s,watchSlidesProgress:a,touchReleaseOnEdges:i,resistanceRatio:r}=t.params;e.enabled&&(s||a&&(i||0===r))&&c()})),Object.assign(t.lazy,{load:c,loadInSlide:o})},function(e){let{swiper:t,extendParams:s,on:a}=e;function i(e,t){const s=function(){let e,t,s;return(a,i)=>{for(t=-1,e=a.length;e-t>1;)s=e+t>>1,a[s]<=i?t=s:e=s;return e}}();let a,i;return this.x=e,this.y=t,this.lastIndex=e.length-1,this.interpolate=function(e){return e?(i=s(this.x,e),a=i-1,(e-this.x[a])*(this.y[i]-this.y[a])/(this.x[i]-this.x[a])+this.y[a]):0},this}function r(){t.controller.control&&t.controller.spline&&(t.controller.spline=void 0,delete t.controller.spline)}s({controller:{control:void 0,inverse:!1,by:"slide"}}),t.controller={control:void 0},a("beforeInit",(()=>{t.controller.control=t.params.controller.control})),a("update",(()=>{r()})),a("resize",(()=>{r()})),a("observerUpdate",(()=>{r()})),a("setTranslate",((e,s,a)=>{t.controller.control&&t.controller.setTranslate(s,a)})),a("setTransition",((e,s,a)=>{t.controller.control&&t.controller.setTransition(s,a)})),Object.assign(t.controller,{setTranslate:function(e,s){const a=t.controller.control;let r,n;const l=t.constructor;function o(e){const s=t.rtlTranslate?-t.translate:t.translate;"slide"===t.params.controller.by&&(!function(e){t.controller.spline||(t.controller.spline=t.params.loop?new i(t.slidesGrid,e.slidesGrid):new i(t.snapGrid,e.snapGrid))}(e),n=-t.controller.spline.interpolate(-s)),n&&"container"!==t.params.controller.by||(r=(e.maxTranslate()-e.minTranslate())/(t.maxTranslate()-t.minTranslate()),n=(s-t.minTranslate())*r+e.minTranslate()),t.params.controller.inverse&&(n=e.maxTranslate()-n),e.updateProgress(n),e.setTranslate(n,t),e.updateActiveIndex(),e.updateSlidesClasses()}if(Array.isArray(a))for(let e=0;e{s.updateAutoHeight()})),s.$wrapperEl.transitionEnd((()=>{i&&(s.params.loop&&"slide"===t.params.controller.by&&s.loopFix(),s.transitionEnd())})))}if(Array.isArray(i))for(r=0;r{n(e),"BUTTON"!==e[0].tagName&&(o(e,"button"),e.on("keydown",m)),p(e,s),function(e,t){e.attr("aria-controls",t)}(e,t)},w=e=>{const s=e.target.closest(`.${t.params.slideClass}`);if(!s||!t.slides.includes(s))return;const a=t.slides.indexOf(s)===t.activeIndex,i=t.params.watchSlidesProgress&&t.visibleSlides&&t.visibleSlides.includes(s);a||i||t.slideTo(t.slides.indexOf(s),0)};function b(){const e=t.params.a11y;t.$el.append(i);const s=t.$el;e.containerRoleDescriptionMessage&&c(s,e.containerRoleDescriptionMessage),e.containerMessage&&p(s,e.containerMessage);const a=t.$wrapperEl,r=a.attr("id")||`swiper-wrapper-${n=16,void 0===n&&(n=16),"x".repeat(n).replace(/x/g,(()=>Math.round(16*Math.random()).toString(16)))}`;var n;const l=t.params.autoplay&&t.params.autoplay.enabled?"off":"polite";var u;u=r,a.attr("id",u),function(e,t){e.attr("aria-live",t)}(a,l),e.itemRoleDescriptionMessage&&c(d(t.slides),e.itemRoleDescriptionMessage),o(d(t.slides),e.slideRole);const h=t.params.loop?t.slides.filter((e=>!e.classList.contains(t.params.slideDuplicateClass))).length:t.slides.length;let f,b;t.slides.each(((s,a)=>{const i=d(s),r=t.params.loop?parseInt(i.attr("data-swiper-slide-index"),10):a;p(i,e.slideLabelMessage.replace(/\{\{index\}\}/,r+1).replace(/\{\{slidesLength\}\}/,h))})),t.navigation&&t.navigation.$nextEl&&(f=t.navigation.$nextEl),t.navigation&&t.navigation.$prevEl&&(b=t.navigation.$prevEl),f&&f.length&&v(f,r,e.nextSlideMessage),b&&b.length&&v(b,r,e.prevSlideMessage),g()&&t.pagination.$el.on("keydown",U(t.params.pagination.bulletClass),m),t.$el.on("focus",w,!0)}a("beforeInit",(()=>{i=d(``)})),a("afterInit",(()=>{t.params.a11y.enabled&&b()})),a("fromEdge toEdge afterInit lock unlock",(()=>{t.params.a11y.enabled&&function(){if(t.params.loop||t.params.rewind||!t.navigation)return;const{$nextEl:e,$prevEl:s}=t.navigation;s&&s.length>0&&(t.isBeginning?(u(s),l(s)):(h(s),n(s))),e&&e.length>0&&(t.isEnd?(u(e),l(e)):(h(e),n(e)))}()})),a("paginationUpdate",(()=>{t.params.a11y.enabled&&function(){const e=t.params.a11y;f()&&t.pagination.bullets.each((s=>{const a=d(s);t.params.pagination.clickable&&(n(a),t.params.pagination.renderBullet||(o(a,"button"),p(a,e.paginationBulletMessage.replace(/\{\{index\}\}/,a.index()+1)))),a.is(`.${t.params.pagination.bulletActiveClass}`)?a.attr("aria-current","true"):a.removeAttr("aria-current")}))}()})),a("destroy",(()=>{t.params.a11y.enabled&&function(){let e,s;i&&i.length>0&&i.remove(),t.navigation&&t.navigation.$nextEl&&(e=t.navigation.$nextEl),t.navigation&&t.navigation.$prevEl&&(s=t.navigation.$prevEl),e&&e.off("keydown",m),s&&s.off("keydown",m),g()&&t.pagination.$el.off("keydown",U(t.params.pagination.bulletClass),m),t.$el.off("focus",w,!0)}()}))},function(e){let{swiper:t,extendParams:s,on:a}=e;s({history:{enabled:!1,root:"",replaceState:!1,key:"slides"}});let i=!1,n={};const l=e=>e.toString().replace(/\s+/g,"-").replace(/[^\w-]+/g,"").replace(/--+/g,"-").replace(/^-+/,"").replace(/-+$/,""),o=e=>{const t=r();let s;s=e?new URL(e):t.location;const a=s.pathname.slice(1).split("/").filter((e=>""!==e)),i=a.length;return{key:a[i-2],value:a[i-1]}},d=(e,s)=>{const a=r();if(!i||!t.params.history.enabled)return;let n;n=t.params.url?new URL(t.params.url):a.location;const o=t.slides.eq(s);let d=l(o.attr("data-history"));if(t.params.history.root.length>0){let s=t.params.history.root;"/"===s[s.length-1]&&(s=s.slice(0,s.length-1)),d=`${s}/${e}/${d}`}else n.pathname.includes(e)||(d=`${e}/${d}`);const c=a.history.state;c&&c.value===d||(t.params.history.replaceState?a.history.replaceState({value:d},null,d):a.history.pushState({value:d},null,d))},c=(e,s,a)=>{if(s)for(let i=0,r=t.slides.length;i{n=o(t.params.url),c(t.params.speed,t.paths.value,!1)};a("init",(()=>{t.params.history.enabled&&(()=>{const e=r();if(t.params.history){if(!e.history||!e.history.pushState)return t.params.history.enabled=!1,void(t.params.hashNavigation.enabled=!0);i=!0,n=o(t.params.url),(n.key||n.value)&&(c(0,n.value,t.params.runCallbacksOnInit),t.params.history.replaceState||e.addEventListener("popstate",p))}})()})),a("destroy",(()=>{t.params.history.enabled&&(()=>{const e=r();t.params.history.replaceState||e.removeEventListener("popstate",p)})()})),a("transitionEnd _freeModeNoMomentumRelease",(()=>{i&&d(t.params.history.key,t.activeIndex)})),a("slideChange",(()=>{i&&t.params.cssMode&&d(t.params.history.key,t.activeIndex)}))},function(e){let{swiper:t,extendParams:s,emit:i,on:n}=e,l=!1;const o=a(),c=r();s({hashNavigation:{enabled:!1,replaceState:!1,watchState:!1}});const p=()=>{i("hashChange");const e=o.location.hash.replace("#","");if(e!==t.slides.eq(t.activeIndex).attr("data-hash")){const s=t.$wrapperEl.children(`.${t.params.slideClass}[data-hash="${e}"]`).index();if(void 0===s)return;t.slideTo(s)}},u=()=>{if(l&&t.params.hashNavigation.enabled)if(t.params.hashNavigation.replaceState&&c.history&&c.history.replaceState)c.history.replaceState(null,null,`#${t.slides.eq(t.activeIndex).attr("data-hash")}`||""),i("hashSet");else{const e=t.slides.eq(t.activeIndex),s=e.attr("data-hash")||e.attr("data-history");o.location.hash=s||"",i("hashSet")}};n("init",(()=>{t.params.hashNavigation.enabled&&(()=>{if(!t.params.hashNavigation.enabled||t.params.history&&t.params.history.enabled)return;l=!0;const e=o.location.hash.replace("#","");if(e){const s=0;for(let a=0,i=t.slides.length;a{t.params.hashNavigation.enabled&&t.params.hashNavigation.watchState&&d(c).off("hashchange",p)})),n("transitionEnd _freeModeNoMomentumRelease",(()=>{l&&u()})),n("slideChange",(()=>{l&&t.params.cssMode&&u()}))},function(e){let t,{swiper:s,extendParams:i,on:r,emit:n}=e;function l(){const e=s.slides.eq(s.activeIndex);let a=s.params.autoplay.delay;e.attr("data-swiper-autoplay")&&(a=e.attr("data-swiper-autoplay")||s.params.autoplay.delay),clearTimeout(t),t=p((()=>{let e;s.params.autoplay.reverseDirection?s.params.loop?(s.loopFix(),e=s.slidePrev(s.params.speed,!0,!0),n("autoplay")):s.isBeginning?s.params.autoplay.stopOnLastSlide?d():(e=s.slideTo(s.slides.length-1,s.params.speed,!0,!0),n("autoplay")):(e=s.slidePrev(s.params.speed,!0,!0),n("autoplay")):s.params.loop?(s.loopFix(),e=s.slideNext(s.params.speed,!0,!0),n("autoplay")):s.isEnd?s.params.autoplay.stopOnLastSlide?d():(e=s.slideTo(0,s.params.speed,!0,!0),n("autoplay")):(e=s.slideNext(s.params.speed,!0,!0),n("autoplay")),(s.params.cssMode&&s.autoplay.running||!1===e)&&l()}),a)}function o(){return void 0===t&&(!s.autoplay.running&&(s.autoplay.running=!0,n("autoplayStart"),l(),!0))}function d(){return!!s.autoplay.running&&(void 0!==t&&(t&&(clearTimeout(t),t=void 0),s.autoplay.running=!1,n("autoplayStop"),!0))}function c(e){s.autoplay.running&&(s.autoplay.paused||(t&&clearTimeout(t),s.autoplay.paused=!0,0!==e&&s.params.autoplay.waitForTransition?["transitionend","webkitTransitionEnd"].forEach((e=>{s.$wrapperEl[0].addEventListener(e,h)})):(s.autoplay.paused=!1,l())))}function u(){const e=a();"hidden"===e.visibilityState&&s.autoplay.running&&c(),"visible"===e.visibilityState&&s.autoplay.paused&&(l(),s.autoplay.paused=!1)}function h(e){s&&!s.destroyed&&s.$wrapperEl&&e.target===s.$wrapperEl[0]&&(["transitionend","webkitTransitionEnd"].forEach((e=>{s.$wrapperEl[0].removeEventListener(e,h)})),s.autoplay.paused=!1,s.autoplay.running?l():d())}function m(){s.params.autoplay.disableOnInteraction?d():(n("autoplayPause"),c()),["transitionend","webkitTransitionEnd"].forEach((e=>{s.$wrapperEl[0].removeEventListener(e,h)}))}function f(){s.params.autoplay.disableOnInteraction||(s.autoplay.paused=!1,n("autoplayResume"),l())}s.autoplay={running:!1,paused:!1},i({autoplay:{enabled:!1,delay:3e3,waitForTransition:!0,disableOnInteraction:!0,stopOnLastSlide:!1,reverseDirection:!1,pauseOnMouseEnter:!1}}),r("init",(()=>{if(s.params.autoplay.enabled){o();a().addEventListener("visibilitychange",u),s.params.autoplay.pauseOnMouseEnter&&(s.$el.on("mouseenter",m),s.$el.on("mouseleave",f))}})),r("beforeTransitionStart",((e,t,a)=>{s.autoplay.running&&(a||!s.params.autoplay.disableOnInteraction?s.autoplay.pause(t):d())})),r("sliderFirstMove",(()=>{s.autoplay.running&&(s.params.autoplay.disableOnInteraction?d():c())})),r("touchEnd",(()=>{s.params.cssMode&&s.autoplay.paused&&!s.params.autoplay.disableOnInteraction&&l()})),r("destroy",(()=>{s.$el.off("mouseenter",m),s.$el.off("mouseleave",f),s.autoplay.running&&d();a().removeEventListener("visibilitychange",u)})),Object.assign(s.autoplay,{pause:c,run:l,start:o,stop:d})},function(e){let{swiper:t,extendParams:s,on:a}=e;s({thumbs:{swiper:null,multipleActiveThumbs:!0,autoScrollOffset:0,slideThumbActiveClass:"swiper-slide-thumb-active",thumbsContainerClass:"swiper-thumbs"}});let i=!1,r=!1;function n(){const e=t.thumbs.swiper;if(!e)return;const s=e.clickedIndex,a=e.clickedSlide;if(a&&d(a).hasClass(t.params.thumbs.slideThumbActiveClass))return;if(null==s)return;let i;if(i=e.params.loop?parseInt(d(e.clickedSlide).attr("data-swiper-slide-index"),10):s,t.params.loop){let e=t.activeIndex;t.slides.eq(e).hasClass(t.params.slideDuplicateClass)&&(t.loopFix(),t._clientLeft=t.$wrapperEl[0].clientLeft,e=t.activeIndex);const s=t.slides.eq(e).prevAll(`[data-swiper-slide-index="${i}"]`).eq(0).index(),a=t.slides.eq(e).nextAll(`[data-swiper-slide-index="${i}"]`).eq(0).index();i=void 0===s?a:void 0===a?s:a-e1?a:o:a-ot.previousIndex?"next":"prev"}else n=t.realIndex,l=n>t.previousIndex?"next":"prev";r&&(n+="next"===l?i:-1*i),s.visibleSlidesIndexes&&s.visibleSlidesIndexes.indexOf(n)<0&&(s.params.centeredSlides?n=n>o?n-Math.floor(a/2)+1:n+Math.floor(a/2)-1:n>o&&s.params.slidesPerGroup,s.slideTo(n,e?0:void 0))}let n=1;const l=t.params.thumbs.slideThumbActiveClass;if(t.params.slidesPerView>1&&!t.params.centeredSlides&&(n=t.params.slidesPerView),t.params.thumbs.multipleActiveThumbs||(n=1),n=Math.floor(n),s.slides.removeClass(l),s.params.loop||s.params.virtual&&s.params.virtual.enabled)for(let e=0;e{const{thumbs:e}=t.params;e&&e.swiper&&(l(),o(!0))})),a("slideChange update resize observerUpdate",(()=>{t.thumbs.swiper&&o()})),a("setTransition",((e,s)=>{const a=t.thumbs.swiper;a&&a.setTransition(s)})),a("beforeDestroy",(()=>{const e=t.thumbs.swiper;e&&r&&e&&e.destroy()})),Object.assign(t.thumbs,{init:l,update:o})},function(e){let{swiper:t,extendParams:s,emit:a,once:i}=e;s({freeMode:{enabled:!1,momentum:!0,momentumRatio:1,momentumBounce:!0,momentumBounceRatio:1,momentumVelocityRatio:1,sticky:!1,minimumVelocity:.02}}),Object.assign(t,{freeMode:{onTouchStart:function(){const e=t.getTranslate();t.setTranslate(e),t.setTransition(0),t.touchEventsData.velocities.length=0,t.freeMode.onTouchEnd({currentPos:t.rtl?t.translate:-t.translate})},onTouchMove:function(){const{touchEventsData:e,touches:s}=t;0===e.velocities.length&&e.velocities.push({position:s[t.isHorizontal()?"startX":"startY"],time:e.touchStartTime}),e.velocities.push({position:s[t.isHorizontal()?"currentX":"currentY"],time:u()})},onTouchEnd:function(e){let{currentPos:s}=e;const{params:r,$wrapperEl:n,rtlTranslate:l,snapGrid:o,touchEventsData:d}=t,c=u()-d.touchStartTime;if(s<-t.minTranslate())t.slideTo(t.activeIndex);else if(s>-t.maxTranslate())t.slides.length1){const e=d.velocities.pop(),s=d.velocities.pop(),a=e.position-s.position,i=e.time-s.time;t.velocity=a/i,t.velocity/=2,Math.abs(t.velocity)150||u()-e.time>300)&&(t.velocity=0)}else t.velocity=0;t.velocity*=r.freeMode.momentumVelocityRatio,d.velocities.length=0;let e=1e3*r.freeMode.momentumRatio;const s=t.velocity*e;let c=t.translate+s;l&&(c=-c);let p,h=!1;const m=20*Math.abs(t.velocity)*r.freeMode.momentumBounceRatio;let f;if(ct.minTranslate())r.freeMode.momentumBounce?(c-t.minTranslate()>m&&(c=t.minTranslate()+m),p=t.minTranslate(),h=!0,d.allowMomentumBounce=!0):c=t.minTranslate(),r.loop&&r.centeredSlides&&(f=!0);else if(r.freeMode.sticky){let e;for(let t=0;t-c){e=t;break}c=Math.abs(o[e]-c){t.loopFix()})),0!==t.velocity){if(e=l?Math.abs((-c-t.translate)/t.velocity):Math.abs((c-t.translate)/t.velocity),r.freeMode.sticky){const s=Math.abs((l?-c:c)-t.translate),a=t.slidesSizesGrid[t.activeIndex];e=s{t&&!t.destroyed&&d.allowMomentumBounce&&(a("momentumBounce"),t.setTransition(r.speed),setTimeout((()=>{t.setTranslate(p),n.transitionEnd((()=>{t&&!t.destroyed&&t.transitionEnd()}))}),0))}))):t.velocity?(a("_freeModeNoMomentumRelease"),t.updateProgress(c),t.setTransition(e),t.setTranslate(c),t.transitionStart(!0,t.swipeDirection),t.animating||(t.animating=!0,n.transitionEnd((()=>{t&&!t.destroyed&&t.transitionEnd()})))):t.updateProgress(c),t.updateActiveIndex(),t.updateSlidesClasses()}else{if(r.freeMode.sticky)return void t.slideToClosest();r.freeMode&&a("_freeModeNoMomentumRelease")}(!r.freeMode.momentum||c>=r.longSwipesMs)&&(t.updateProgress(),t.updateActiveIndex(),t.updateSlidesClasses())}}}})},function(e){let t,s,a,{swiper:i,extendParams:r}=e;r({grid:{rows:1,fill:"column"}}),i.grid={initSlides:e=>{const{slidesPerView:r}=i.params,{rows:n,fill:l}=i.params.grid;s=t/n,a=Math.floor(e/n),t=Math.floor(e/n)===e/n?e:Math.ceil(e/n)*n,"auto"!==r&&"row"===l&&(t=Math.max(t,r*n))},updateSlide:(e,r,n,l)=>{const{slidesPerGroup:o,spaceBetween:d}=i.params,{rows:c,fill:p}=i.params.grid;let u,h,m;if("row"===p&&o>1){const s=Math.floor(e/(o*c)),a=e-c*o*s,i=0===s?o:Math.min(Math.ceil((n-s*c*o)/c),o);m=Math.floor(a/i),h=a-m*i+s*o,u=h+m*t/c,r.css({"-webkit-order":u,order:u})}else"column"===p?(h=Math.floor(e/c),m=e-h*c,(h>a||h===a&&m===c-1)&&(m+=1,m>=c&&(m=0,h+=1))):(m=Math.floor(e/s),h=e-m*s);r.css(l("margin-top"),0!==m?d&&`${d}px`:"")},updateWrapperSize:(e,s,a)=>{const{spaceBetween:r,centeredSlides:n,roundLengths:l}=i.params,{rows:o}=i.params.grid;if(i.virtualSize=(e+r)*t,i.virtualSize=Math.ceil(i.virtualSize/o)-r,i.$wrapperEl.css({[a("width")]:`${i.virtualSize+r}px`}),n){s.splice(0,s.length);const e=[];for(let t=0;t{const{slides:e}=t,s=t.params.fadeEffect;for(let a=0;a{const{transformEl:s}=t.params.fadeEffect;(s?t.slides.find(s):t.slides).transition(e),ae({swiper:t,duration:e,transformEl:s,allSlides:!0})},overwriteParams:()=>({slidesPerView:1,slidesPerGroup:1,watchSlidesProgress:!0,spaceBetween:0,virtualTranslate:!t.params.cssMode})})},function(e){let{swiper:t,extendParams:s,on:a}=e;s({cubeEffect:{slideShadows:!0,shadow:!0,shadowOffset:20,shadowScale:.94}}),te({effect:"cube",swiper:t,on:a,setTranslate:()=>{const{$el:e,$wrapperEl:s,slides:a,width:i,height:r,rtlTranslate:n,size:l,browser:o}=t,c=t.params.cubeEffect,p=t.isHorizontal(),u=t.virtual&&t.params.virtual.enabled;let h,m=0;c.shadow&&(p?(h=s.find(".swiper-cube-shadow"),0===h.length&&(h=d('
'),s.append(h)),h.css({height:`${i}px`})):(h=e.find(".swiper-cube-shadow"),0===h.length&&(h=d('
'),e.append(h))));for(let e=0;e-1&&(m=90*s+90*o,n&&(m=90*-s-90*o)),t.transform(v),c.slideShadows){let e=p?t.find(".swiper-slide-shadow-left"):t.find(".swiper-slide-shadow-top"),s=p?t.find(".swiper-slide-shadow-right"):t.find(".swiper-slide-shadow-bottom");0===e.length&&(e=d(`
`),t.append(e)),0===s.length&&(s=d(`
`),t.append(s)),e.length&&(e[0].style.opacity=Math.max(-o,0)),s.length&&(s[0].style.opacity=Math.max(o,0))}}if(s.css({"-webkit-transform-origin":`50% 50% -${l/2}px`,"transform-origin":`50% 50% -${l/2}px`}),c.shadow)if(p)h.transform(`translate3d(0px, ${i/2+c.shadowOffset}px, ${-i/2}px) rotateX(90deg) rotateZ(0deg) scale(${c.shadowScale})`);else{const e=Math.abs(m)-90*Math.floor(Math.abs(m)/90),t=1.5-(Math.sin(2*e*Math.PI/360)/2+Math.cos(2*e*Math.PI/360)/2),s=c.shadowScale,a=c.shadowScale/t,i=c.shadowOffset;h.transform(`scale3d(${s}, 1, ${a}) translate3d(0px, ${r/2+i}px, ${-r/2/a}px) rotateX(-90deg)`)}const f=o.isSafari||o.isWebView?-l/2:0;s.transform(`translate3d(0px,0,${f}px) rotateX(${t.isHorizontal()?0:m}deg) rotateY(${t.isHorizontal()?-m:0}deg)`)},setTransition:e=>{const{$el:s,slides:a}=t;a.transition(e).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(e),t.params.cubeEffect.shadow&&!t.isHorizontal()&&s.find(".swiper-cube-shadow").transition(e)},perspective:()=>!0,overwriteParams:()=>({slidesPerView:1,slidesPerGroup:1,watchSlidesProgress:!0,resistanceRatio:0,spaceBetween:0,centeredSlides:!1,virtualTranslate:!0})})},function(e){let{swiper:t,extendParams:s,on:a}=e;s({flipEffect:{slideShadows:!0,limitRotation:!0,transformEl:null}}),te({effect:"flip",swiper:t,on:a,setTranslate:()=>{const{slides:e,rtlTranslate:s}=t,a=t.params.flipEffect;for(let i=0;i{const{transformEl:s}=t.params.flipEffect;(s?t.slides.find(s):t.slides).transition(e).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(e),ae({swiper:t,duration:e,transformEl:s})},perspective:()=>!0,overwriteParams:()=>({slidesPerView:1,slidesPerGroup:1,watchSlidesProgress:!0,spaceBetween:0,virtualTranslate:!t.params.cssMode})})},function(e){let{swiper:t,extendParams:s,on:a}=e;s({coverflowEffect:{rotate:50,stretch:0,depth:100,scale:1,modifier:1,slideShadows:!0,transformEl:null}}),te({effect:"coverflow",swiper:t,on:a,setTranslate:()=>{const{width:e,height:s,slides:a,slidesSizesGrid:i}=t,r=t.params.coverflowEffect,n=t.isHorizontal(),l=t.translate,o=n?e/2-l:s/2-l,d=n?r.rotate:-r.rotate,c=r.depth;for(let e=0,t=a.length;e0?p:0),s.length&&(s[0].style.opacity=-p>0?-p:0)}}},setTransition:e=>{const{transformEl:s}=t.params.coverflowEffect;(s?t.slides.find(s):t.slides).transition(e).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(e)},perspective:()=>!0,overwriteParams:()=>({watchSlidesProgress:!0})})},function(e){let{swiper:t,extendParams:s,on:a}=e;s({creativeEffect:{transformEl:null,limitProgress:1,shadowPerProgress:!1,progressMultiplier:1,perspective:!0,prev:{translate:[0,0,0],rotate:[0,0,0],opacity:1,scale:1},next:{translate:[0,0,0],rotate:[0,0,0],opacity:1,scale:1}}});const i=e=>"string"==typeof e?e:`${e}px`;te({effect:"creative",swiper:t,on:a,setTranslate:()=>{const{slides:e,$wrapperEl:s,slidesSizesGrid:a}=t,r=t.params.creativeEffect,{progressMultiplier:n}=r,l=t.params.centeredSlides;if(l){const e=a[0]/2-t.params.slidesOffsetBefore||0;s.transform(`translateX(calc(50% - ${e}px))`)}for(let s=0;s0&&(f=r.prev,m=!0),u.forEach(((e,t)=>{u[t]=`calc(${e}px + (${i(f.translate[t])} * ${Math.abs(d*n)}))`})),h.forEach(((e,t)=>{h[t]=f.rotate[t]*Math.abs(d*n)})),a[0].style.zIndex=-Math.abs(Math.round(o))+e.length;const g=u.join(", "),v=`rotateX(${h[0]}deg) rotateY(${h[1]}deg) rotateZ(${h[2]}deg)`,w=c<0?`scale(${1+(1-f.scale)*c*n})`:`scale(${1-(1-f.scale)*c*n})`,b=c<0?1+(1-f.opacity)*c*n:1-(1-f.opacity)*c*n,x=`translate3d(${g}) ${v} ${w}`;if(m&&f.shadow||!m){let e=a.children(".swiper-slide-shadow");if(0===e.length&&f.shadow&&(e=ie(r,a)),e.length){const t=r.shadowPerProgress?d*(1/r.limitProgress):d;e[0].style.opacity=Math.min(Math.max(Math.abs(t),0),1)}}const y=se(r,a);y.transform(x).css({opacity:b}),f.origin&&y.css("transform-origin",f.origin)}},setTransition:e=>{const{transformEl:s}=t.params.creativeEffect;(s?t.slides.find(s):t.slides).transition(e).find(".swiper-slide-shadow").transition(e),ae({swiper:t,duration:e,transformEl:s,allSlides:!0})},perspective:()=>t.params.creativeEffect.perspective,overwriteParams:()=>({watchSlidesProgress:!0,virtualTranslate:!t.params.cssMode})})},function(e){let{swiper:t,extendParams:s,on:a}=e;s({cardsEffect:{slideShadows:!0,transformEl:null}}),te({effect:"cards",swiper:t,on:a,setTranslate:()=>{const{slides:e,activeIndex:s}=t,a=t.params.cardsEffect,{startTranslate:i,isTouched:r}=t.touchEventsData,n=t.translate;for(let l=0;l0&&c<1&&(r||t.params.cssMode)&&n-1&&(r||t.params.cssMode)&&n>i;if(b||x){const e=(1-Math.abs((Math.abs(c)-.5)/.5))**.5;g+=-28*c*e,f+=-.5*e,v+=96*e,h=-25*e*Math.abs(c)+"%"}if(u=c<0?`calc(${u}px + (${v*Math.abs(c)}%))`:c>0?`calc(${u}px + (-${v*Math.abs(c)}%))`:`${u}px`,!t.isHorizontal()){const e=h;h=u,u=e}const y=`\n translate3d(${u}, ${h}, ${m}px)\n rotateZ(${g}deg)\n scale(${c<0?""+(1+(1-f)*c):""+(1-(1-f)*c)})\n `;if(a.slideShadows){let e=o.find(".swiper-slide-shadow");0===e.length&&(e=ie(a,o)),e.length&&(e[0].style.opacity=Math.min(Math.max((Math.abs(c)-.5)/.5,0),1))}o[0].style.zIndex=-Math.abs(Math.round(d))+e.length;se(a,o).transform(y)}},setTransition:e=>{const{transformEl:s}=t.params.cardsEffect;(s?t.slides.find(s):t.slides).transition(e).find(".swiper-slide-shadow").transition(e),ae({swiper:t,duration:e,transformEl:s})},perspective:()=>!0,overwriteParams:()=>({watchSlidesProgress:!0,virtualTranslate:!t.params.cssMode})})}];return V.use(re),V})); +//# sourceMappingURL=swiper-bundle.min.js.map \ No newline at end of file diff --git a/static/js/video/superVideo.js b/static/js/video/superVideo.js new file mode 100644 index 0000000..51b2b4b --- /dev/null +++ b/static/js/video/superVideo.js @@ -0,0 +1,91 @@ +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("Super",[],t):"object"==typeof exports?exports.Super=t():e.Super=t()}(window,(function(){return function(e){var t={};function r(i){if(t[i])return t[i].exports;var n=t[i]={i:i,l:!1,exports:{}};return e[i].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)r.d(i,n,function(t){return e[t]}.bind(null,n));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=141)}([function(e,t,r){var i=r(2),n=r(19),a=r(12),s=r(13),o=r(20),l=function(e,t,r){var u,c,d,h,f=e&l.F,p=e&l.G,g=e&l.S,v=e&l.P,m=e&l.B,_=p?i:g?i[t]||(i[t]={}):(i[t]||{}).prototype,y=p?n:n[t]||(n[t]={}),E=y.prototype||(y.prototype={});for(u in p&&(r=t),r)d=((c=!f&&_&&void 0!==_[u])?_:r)[u],h=m&&c?o(d,i):v&&"function"==typeof d?o(Function.call,d):d,_&&s(_,u,d,e&l.U),y[u]!=d&&a(y,u,h),v&&E[u]!=d&&(E[u]=d)};i.core=n,l.F=1,l.G=2,l.S=4,l.P=8,l.B=16,l.W=32,l.U=64,l.R=128,e.exports=l},function(e,t,r){var i=r(4);e.exports=function(e){if(!i(e))throw TypeError(e+" is not an object!");return e}},function(e,t){var r=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=r)},function(e,t){e.exports=function(e){try{return!!e()}catch(e){return!0}}},function(e,t){e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},function(e,t,r){var i=r(49)("wks"),n=r(34),a=r(2).Symbol,s="function"==typeof a;(e.exports=function(e){return i[e]||(i[e]=s&&a[e]||(s?a:n)("Symbol."+e))}).store=i},function(e,t,r){var i=r(22),n=Math.min;e.exports=function(e){return e>0?n(i(e),9007199254740991):0}},function(e,t,r){e.exports=!r(3)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},function(e,t,r){var i=r(1),n=r(100),a=r(24),s=Object.defineProperty;t.f=r(7)?Object.defineProperty:function(e,t,r){if(i(e),t=a(t,!0),i(r),n)try{return s(e,t,r)}catch(e){}if("get"in r||"set"in r)throw TypeError("Accessors not supported!");return"value"in r&&(e[t]=r.value),e}},function(e,t,r){var i=r(25);e.exports=function(e){return Object(i(e))}},function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!");return e}},function(e,t,r){"use strict";var i,n="object"==typeof Reflect?Reflect:null,a=n&&"function"==typeof n.apply?n.apply:function(e,t,r){return Function.prototype.apply.call(e,t,r)};i=n&&"function"==typeof n.ownKeys?n.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var s=Number.isNaN||function(e){return e!=e};function o(){o.init.call(this)}e.exports=o,o.EventEmitter=o,o.prototype._events=void 0,o.prototype._eventsCount=0,o.prototype._maxListeners=void 0;var l=10;function u(e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function c(e){return void 0===e._maxListeners?o.defaultMaxListeners:e._maxListeners}function d(e,t,r,i){var n,a,s,o;if(u(r),void 0===(a=e._events)?(a=e._events=Object.create(null),e._eventsCount=0):(void 0!==a.newListener&&(e.emit("newListener",t,r.listener?r.listener:r),a=e._events),s=a[t]),void 0===s)s=a[t]=r,++e._eventsCount;else if("function"==typeof s?s=a[t]=i?[r,s]:[s,r]:i?s.unshift(r):s.push(r),(n=c(e))>0&&s.length>n&&!s.warned){s.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=t,l.count=s.length,o=l,console&&console.warn&&console.warn(o)}return e}function h(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function f(e,t,r){var i={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},n=h.bind(i);return n.listener=r,i.wrapFn=n,n}function p(e,t,r){var i=e._events;if(void 0===i)return[];var n=i[t];return void 0===n?[]:"function"==typeof n?r?[n.listener||n]:[n]:r?function(e){for(var t=new Array(e.length),r=0;r0&&(s=t[0]),s instanceof Error)throw s;var o=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw o.context=s,o}var l=n[e];if(void 0===l)return!1;if("function"==typeof l)a(l,this,t);else{var u=l.length,c=v(l,u);for(r=0;r=0;a--)if(r[a]===t||r[a].listener===t){s=r[a].listener,n=a;break}if(n<0)return this;0===n?r.shift():function(e,t){for(;t+1=0;i--)this.removeListener(e,t[i]);return this},o.prototype.listeners=function(e){return p(this,e,!0)},o.prototype.rawListeners=function(e){return p(this,e,!1)},o.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):g.call(e,t)},o.prototype.listenerCount=g,o.prototype.eventNames=function(){return this._eventsCount>0?i(this._events):[]}},function(e,t,r){var i=r(8),n=r(33);e.exports=r(7)?function(e,t,r){return i.f(e,t,n(1,r))}:function(e,t,r){return e[t]=r,e}},function(e,t,r){var i=r(2),n=r(12),a=r(15),s=r(34)("src"),o=r(145),l=(""+o).split("toString");r(19).inspectSource=function(e){return o.call(e)},(e.exports=function(e,t,r,o){var u="function"==typeof r;u&&(a(r,"name")||n(r,"name",t)),e[t]!==r&&(u&&(a(r,s)||n(r,s,e[t]?""+e[t]:l.join(String(t)))),e===i?e[t]=r:o?e[t]?e[t]=r:n(e,t,r):(delete e[t],n(e,t,r)))})(Function.prototype,"toString",(function(){return"function"==typeof this&&this[s]||o.call(this)}))},function(e,t,r){var i=r(0),n=r(3),a=r(25),s=/"/g,o=function(e,t,r,i){var n=String(a(e)),o="<"+t;return""!==r&&(o+=" "+r+'="'+String(i).replace(s,""")+'"'),o+">"+n+""};e.exports=function(e,t){var r={};r[e]=t(o),i(i.P+i.F*n((function(){var t=""[e]('"');return t!==t.toLowerCase()||t.split('"').length>3})),"String",r)}},function(e,t){var r={}.hasOwnProperty;e.exports=function(e,t){return r.call(e,t)}},function(e,t,r){var i=r(50),n=r(25);e.exports=function(e){return i(n(e))}},function(e,t,r){var i=r(51),n=r(33),a=r(16),s=r(24),o=r(15),l=r(100),u=Object.getOwnPropertyDescriptor;t.f=r(7)?u:function(e,t){if(e=a(e),t=s(t,!0),l)try{return u(e,t)}catch(e){}if(o(e,t))return n(!i.f.call(e,t),e[t])}},function(e,t,r){var i=r(15),n=r(9),a=r(73)("IE_PROTO"),s=Object.prototype;e.exports=Object.getPrototypeOf||function(e){return e=n(e),i(e,a)?e[a]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?s:null}},function(e,t){var r=e.exports={version:"2.6.11"};"number"==typeof __e&&(__e=r)},function(e,t,r){var i=r(10);e.exports=function(e,t,r){if(i(e),void 0===t)return e;switch(r){case 1:return function(r){return e.call(t,r)};case 2:return function(r,i){return e.call(t,r,i)};case 3:return function(r,i,n){return e.call(t,r,i,n)}}return function(){return e.apply(t,arguments)}}},function(e,t){var r={}.toString;e.exports=function(e){return r.call(e).slice(8,-1)}},function(e,t){var r=Math.ceil,i=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?i:r)(e)}},function(e,t,r){"use strict";var i=r(3);e.exports=function(e,t){return!!e&&i((function(){t?e.call(null,(function(){}),1):e.call(null)}))}},function(e,t,r){var i=r(4);e.exports=function(e,t){if(!i(e))return e;var r,n;if(t&&"function"==typeof(r=e.toString)&&!i(n=r.call(e)))return n;if("function"==typeof(r=e.valueOf)&&!i(n=r.call(e)))return n;if(!t&&"function"==typeof(r=e.toString)&&!i(n=r.call(e)))return n;throw TypeError("Can't convert object to primitive value")}},function(e,t){e.exports=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e}},function(e,t,r){var i=r(0),n=r(19),a=r(3);e.exports=function(e,t){var r=(n.Object||{})[e]||Object[e],s={};s[e]=t(r),i(i.S+i.F*a((function(){r(1)})),"Object",s)}},function(e,t,r){var i=r(20),n=r(50),a=r(9),s=r(6),o=r(89);e.exports=function(e,t){var r=1==e,l=2==e,u=3==e,c=4==e,d=6==e,h=5==e||d,f=t||o;return function(t,o,p){for(var g,v,m=a(t),_=n(m),y=i(o,p,3),E=s(_.length),b=0,S=r?f(t,E):l?f(t,0):void 0;E>b;b++)if((h||b in _)&&(v=y(g=_[b],b,m),e))if(r)S[b]=v;else if(v)switch(e){case 3:return!0;case 5:return g;case 6:return b;case 2:S.push(g)}else if(c)return!1;return d?-1:u||c?c:S}}},function(e,t,r){"use strict";if(r(7)){var i=r(30),n=r(2),a=r(3),s=r(0),o=r(65),l=r(97),u=r(20),c=r(40),d=r(33),h=r(12),f=r(42),p=r(22),g=r(6),v=r(128),m=r(36),_=r(24),y=r(15),E=r(45),b=r(4),S=r(9),T=r(86),A=r(37),w=r(18),R=r(38).f,L=r(88),k=r(34),O=r(5),D=r(27),C=r(55),I=r(53),x=r(91),P=r(47),M=r(60),F=r(39),N=r(90),B=r(117),U=r(8),j=r(17),G=U.f,V=j.f,K=n.RangeError,H=n.TypeError,W=n.Uint8Array,z=Array.prototype,q=l.ArrayBuffer,Y=l.DataView,X=D(0),$=D(2),J=D(3),Q=D(4),Z=D(5),ee=D(6),te=C(!0),re=C(!1),ie=x.values,ne=x.keys,ae=x.entries,se=z.lastIndexOf,oe=z.reduce,le=z.reduceRight,ue=z.join,ce=z.sort,de=z.slice,he=z.toString,fe=z.toLocaleString,pe=O("iterator"),ge=O("toStringTag"),ve=k("typed_constructor"),me=k("def_constructor"),_e=o.CONSTR,ye=o.TYPED,Ee=o.VIEW,be=D(1,(function(e,t){return Re(I(e,e[me]),t)})),Se=a((function(){return 1===new W(new Uint16Array([1]).buffer)[0]})),Te=!!W&&!!W.prototype.set&&a((function(){new W(1).set({})})),Ae=function(e,t){var r=p(e);if(r<0||r%t)throw K("Wrong offset!");return r},we=function(e){if(b(e)&&ye in e)return e;throw H(e+" is not a typed array!")},Re=function(e,t){if(!b(e)||!(ve in e))throw H("It is not a typed array constructor!");return new e(t)},Le=function(e,t){return ke(I(e,e[me]),t)},ke=function(e,t){for(var r=0,i=t.length,n=Re(e,i);i>r;)n[r]=t[r++];return n},Oe=function(e,t,r){G(e,t,{get:function(){return this._d[r]}})},De=function(e){var t,r,i,n,a,s,o=S(e),l=arguments.length,c=l>1?arguments[1]:void 0,d=void 0!==c,h=L(o);if(null!=h&&!T(h)){for(s=h.call(o),i=[],t=0;!(a=s.next()).done;t++)i.push(a.value);o=i}for(d&&l>2&&(c=u(c,arguments[2],2)),t=0,r=g(o.length),n=Re(this,r);r>t;t++)n[t]=d?c(o[t],t):o[t];return n},Ce=function(){for(var e=0,t=arguments.length,r=Re(this,t);t>e;)r[e]=arguments[e++];return r},Ie=!!W&&a((function(){fe.call(new W(1))})),xe=function(){return fe.apply(Ie?de.call(we(this)):we(this),arguments)},Pe={copyWithin:function(e,t){return B.call(we(this),e,t,arguments.length>2?arguments[2]:void 0)},every:function(e){return Q(we(this),e,arguments.length>1?arguments[1]:void 0)},fill:function(e){return N.apply(we(this),arguments)},filter:function(e){return Le(this,$(we(this),e,arguments.length>1?arguments[1]:void 0))},find:function(e){return Z(we(this),e,arguments.length>1?arguments[1]:void 0)},findIndex:function(e){return ee(we(this),e,arguments.length>1?arguments[1]:void 0)},forEach:function(e){X(we(this),e,arguments.length>1?arguments[1]:void 0)},indexOf:function(e){return re(we(this),e,arguments.length>1?arguments[1]:void 0)},includes:function(e){return te(we(this),e,arguments.length>1?arguments[1]:void 0)},join:function(e){return ue.apply(we(this),arguments)},lastIndexOf:function(e){return se.apply(we(this),arguments)},map:function(e){return be(we(this),e,arguments.length>1?arguments[1]:void 0)},reduce:function(e){return oe.apply(we(this),arguments)},reduceRight:function(e){return le.apply(we(this),arguments)},reverse:function(){for(var e,t=we(this).length,r=Math.floor(t/2),i=0;i1?arguments[1]:void 0)},sort:function(e){return ce.call(we(this),e)},subarray:function(e,t){var r=we(this),i=r.length,n=m(e,i);return new(I(r,r[me]))(r.buffer,r.byteOffset+n*r.BYTES_PER_ELEMENT,g((void 0===t?i:m(t,i))-n))}},Me=function(e,t){return Le(this,de.call(we(this),e,t))},Fe=function(e){we(this);var t=Ae(arguments[1],1),r=this.length,i=S(e),n=g(i.length),a=0;if(n+t>r)throw K("Wrong length!");for(;a255?255:255&i),n.v[f](r*t+n.o,i,Se)}(this,r,e)},enumerable:!0})};y?(p=r((function(e,r,i,n){c(e,p,u,"_d");var a,s,o,l,d=0,f=0;if(b(r)){if(!(r instanceof q||"ArrayBuffer"==(l=E(r))||"SharedArrayBuffer"==l))return ye in r?ke(p,r):De.call(p,r);a=r,f=Ae(i,t);var m=r.byteLength;if(void 0===n){if(m%t)throw K("Wrong length!");if((s=m-f)<0)throw K("Wrong length!")}else if((s=g(n)*t)+f>m)throw K("Wrong length!");o=s/t}else o=v(r),a=new q(s=o*t);for(h(e,"_d",{b:a,o:f,l:s,e:o,v:new Y(a)});ddocument.F=Object<\/script>"),e.close(),l=e.F;i--;)delete l.prototype[a[i]];return l()};e.exports=Object.create||function(e,t){var r;return null!==e?(o.prototype=i(e),r=new o,o.prototype=null,r[s]=e):r=l(),void 0===t?r:n(r,t)}},function(e,t,r){var i=r(102),n=r(74).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return i(e,n)}},function(e,t,r){"use strict";var i=r(2),n=r(8),a=r(7),s=r(5)("species");e.exports=function(e){var t=i[e];a&&t&&!t[s]&&n.f(t,s,{configurable:!0,get:function(){return this}})}},function(e,t){e.exports=function(e,t,r,i){if(!(e instanceof t)||void 0!==i&&i in e)throw TypeError(r+": incorrect invocation!");return e}},function(e,t,r){var i=r(20),n=r(115),a=r(86),s=r(1),o=r(6),l=r(88),u={},c={};(t=e.exports=function(e,t,r,d,h){var f,p,g,v,m=h?function(){return e}:l(e),_=i(r,d,t?2:1),y=0;if("function"!=typeof m)throw TypeError(e+" is not iterable!");if(a(m)){for(f=o(e.length);f>y;y++)if((v=t?_(s(p=e[y])[0],p[1]):_(e[y]))===u||v===c)return v}else for(g=m.call(e);!(p=g.next()).done;)if((v=n(g,_,p.value,t))===u||v===c)return v}).BREAK=u,t.RETURN=c},function(e,t,r){var i=r(13);e.exports=function(e,t,r){for(var n in t)i(e,n,t[n],r);return e}},function(e,t,r){var i=r(4);e.exports=function(e,t){if(!i(e)||e._t!==t)throw TypeError("Incompatible receiver, "+t+" required!");return e}},function(e,t,r){var i=r(8).f,n=r(15),a=r(5)("toStringTag");e.exports=function(e,t,r){e&&!n(e=r?e:e.prototype,a)&&i(e,a,{configurable:!0,value:t})}},function(e,t,r){var i=r(21),n=r(5)("toStringTag"),a="Arguments"==i(function(){return arguments}());e.exports=function(e){var t,r,s;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(r=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),n))?r:a?i(t):"Object"==(s=i(t))&&"function"==typeof t.callee?"Arguments":s}},function(e,t,r){var i=r(0),n=r(25),a=r(3),s=r(77),o="["+s+"]",l=RegExp("^"+o+o+"*"),u=RegExp(o+o+"*$"),c=function(e,t,r){var n={},o=a((function(){return!!s[e]()||"​…"!="​…"[e]()})),l=n[e]=o?t(d):s[e];r&&(n[r]=l),i(i.P+i.F*o,"String",n)},d=c.trim=function(e,t){return e=String(n(e)),1&t&&(e=e.replace(l,"")),2&t&&(e=e.replace(u,"")),e};e.exports=c},function(e,t){e.exports={}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var r=0;rc;)if((o=l[c++])!=o)return!0}else for(;u>c;c++)if((e||c in l)&&l[c]===r)return e||c||0;return!e&&-1}}},function(e,t){t.f=Object.getOwnPropertySymbols},function(e,t,r){var i=r(21);e.exports=Array.isArray||function(e){return"Array"==i(e)}},function(e,t,r){var i=r(22),n=r(25);e.exports=function(e){return function(t,r){var a,s,o=String(n(t)),l=i(r),u=o.length;return l<0||l>=u?e?"":void 0:(a=o.charCodeAt(l))<55296||a>56319||l+1===u||(s=o.charCodeAt(l+1))<56320||s>57343?e?o.charAt(l):a:e?o.slice(l,l+2):s-56320+(a-55296<<10)+65536}}},function(e,t,r){var i=r(4),n=r(21),a=r(5)("match");e.exports=function(e){var t;return i(e)&&(void 0!==(t=e[a])?!!t:"RegExp"==n(e))}},function(e,t,r){var i=r(5)("iterator"),n=!1;try{var a=[7][i]();a.return=function(){n=!0},Array.from(a,(function(){throw 2}))}catch(e){}e.exports=function(e,t){if(!t&&!n)return!1;var r=!1;try{var a=[7],s=a[i]();s.next=function(){return{done:r=!0}},a[i]=function(){return s},e(a)}catch(e){}return r}},function(e,t,r){"use strict";var i=r(45),n=RegExp.prototype.exec;e.exports=function(e,t){var r=e.exec;if("function"==typeof r){var a=r.call(e,t);if("object"!=typeof a)throw new TypeError("RegExp exec method returned something other than an Object or null");return a}if("RegExp"!==i(e))throw new TypeError("RegExp#exec called on incompatible receiver");return n.call(e,t)}},function(e,t,r){"use strict";r(119);var i=r(13),n=r(12),a=r(3),s=r(25),o=r(5),l=r(92),u=o("species"),c=!a((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$")})),d=function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var r="ab".split(e);return 2===r.length&&"a"===r[0]&&"b"===r[1]}();e.exports=function(e,t,r){var h=o(e),f=!a((function(){var t={};return t[h]=function(){return 7},7!=""[e](t)})),p=f?!a((function(){var t=!1,r=/a/;return r.exec=function(){return t=!0,null},"split"===e&&(r.constructor={},r.constructor[u]=function(){return r}),r[h](""),!t})):void 0;if(!f||!p||"replace"===e&&!c||"split"===e&&!d){var g=/./[h],v=r(s,h,""[e],(function(e,t,r,i,n){return t.exec===l?f&&!n?{done:!0,value:g.call(t,r,i)}:{done:!0,value:e.call(r,t,i)}:{done:!1}})),m=v[0],_=v[1];i(String.prototype,e,m),n(RegExp.prototype,h,2==t?function(e,t){return _.call(e,this,t)}:function(e){return _.call(e,this)})}}},function(e,t,r){var i=r(2).navigator;e.exports=i&&i.userAgent||""},function(e,t,r){"use strict";var i=r(2),n=r(0),a=r(13),s=r(42),o=r(31),l=r(41),u=r(40),c=r(4),d=r(3),h=r(60),f=r(44),p=r(78);e.exports=function(e,t,r,g,v,m){var _=i[e],y=_,E=v?"set":"add",b=y&&y.prototype,S={},T=function(e){var t=b[e];a(b,e,"delete"==e||"has"==e?function(e){return!(m&&!c(e))&&t.call(this,0===e?0:e)}:"get"==e?function(e){return m&&!c(e)?void 0:t.call(this,0===e?0:e)}:"add"==e?function(e){return t.call(this,0===e?0:e),this}:function(e,r){return t.call(this,0===e?0:e,r),this})};if("function"==typeof y&&(m||b.forEach&&!d((function(){(new y).entries().next()})))){var A=new y,w=A[E](m?{}:-0,1)!=A,R=d((function(){A.has(1)})),L=h((function(e){new y(e)})),k=!m&&d((function(){for(var e=new y,t=5;t--;)e[E](t,t);return!e.has(-0)}));L||((y=t((function(t,r){u(t,y,e);var i=p(new _,t,y);return null!=r&&l(r,v,i[E],i),i}))).prototype=b,b.constructor=y),(R||k)&&(T("delete"),T("has"),v&&T("get")),(k||w)&&T(E),m&&b.clear&&delete b.clear}else y=g.getConstructor(t,e,v,E),s(y.prototype,r),o.NEED=!0;return f(y,e),S[e]=y,n(n.G+n.W+n.F*(y!=_),S),m||g.setStrong(y,e,v),y}},function(e,t,r){for(var i,n=r(2),a=r(12),s=r(34),o=s("typed_array"),l=s("view"),u=!(!n.ArrayBuffer||!n.DataView),c=u,d=0,h="Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array".split(",");d<9;)(i=n[h[d++]])?(a(i.prototype,o,!0),a(i.prototype,l,!0)):c=!1;e.exports={ABV:u,CONSTR:c,TYPED:o,VIEW:l}},function(e,t,r){"use strict";e.exports=r(30)||!r(3)((function(){var e=Math.random();__defineSetter__.call(null,e,(function(){})),delete r(2)[e]}))},function(e,t,r){"use strict";var i=r(0);e.exports=function(e){i(i.S,e,{of:function(){for(var e=arguments.length,t=new Array(e);e--;)t[e]=arguments[e];return new this(t)}})}},function(e,t,r){"use strict";var i=r(0),n=r(10),a=r(20),s=r(41);e.exports=function(e){i(i.S,e,{from:function(e){var t,r,i,o,l=arguments[1];return n(this),(t=void 0!==l)&&n(l),null==e?new this:(r=[],t?(i=0,o=a(l,arguments[2],2),s(e,!1,(function(e){r.push(o(e,i++))}))):s(e,!1,r.push,r),new this(r))}})}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.clear=function(e){for(var t in e)delete e[t]},t.isEmpty=function(e){var t=void 0;for(t in e)return!1;return!t};t.assign="function"==typeof Object.assign?Object.assign:function(e,t){if(null==e)throw new TypeError("Cannot convert undefined or null to object");for(var r=Object(e),i=1,n=arguments.length;i0;(a>>>=1)&&(t+=t))1&a&&(r+=t);return r}},function(e,t){e.exports=Math.sign||function(e){return 0==(e=+e)||e!=e?e:e<0?-1:1}},function(e,t){var r=Math.expm1;e.exports=!r||r(10)>22025.465794806718||r(10)<22025.465794806718||-2e-17!=r(-2e-17)?function(e){return 0==(e=+e)?e:e>-1e-6&&e<1e-6?e+e*e/2:Math.exp(e)-1}:r},function(e,t,r){"use strict";var i=r(30),n=r(0),a=r(13),s=r(12),o=r(47),l=r(83),u=r(44),c=r(18),d=r(5)("iterator"),h=!([].keys&&"next"in[].keys()),f=function(){return this};e.exports=function(e,t,r,p,g,v,m){l(r,t,p);var _,y,E,b=function(e){if(!h&&e in w)return w[e];switch(e){case"keys":case"values":return function(){return new r(this,e)}}return function(){return new r(this,e)}},S=t+" Iterator",T="values"==g,A=!1,w=e.prototype,R=w[d]||w["@@iterator"]||g&&w[g],L=R||b(g),k=g?T?b("entries"):L:void 0,O="Array"==t&&w.entries||R;if(O&&(E=c(O.call(new e)))!==Object.prototype&&E.next&&(u(E,S,!0),i||"function"==typeof E[d]||s(E,d,f)),T&&R&&"values"!==R.name&&(A=!0,L=function(){return R.call(this)}),i&&!m||!h&&!A&&w[d]||s(w,d,L),o[t]=L,o[S]=f,g)if(_={values:T?L:b("values"),keys:v?L:b("keys"),entries:k},m)for(y in _)y in w||a(w,y,_[y]);else n(n.P+n.F*(h||A),t,_);return _}},function(e,t,r){"use strict";var i=r(37),n=r(33),a=r(44),s={};r(12)(s,r(5)("iterator"),(function(){return this})),e.exports=function(e,t,r){e.prototype=i(s,{next:n(1,r)}),a(e,t+" Iterator")}},function(e,t,r){var i=r(59),n=r(25);e.exports=function(e,t,r){if(i(t))throw TypeError("String#"+r+" doesn't accept regex!");return String(n(e))}},function(e,t,r){var i=r(5)("match");e.exports=function(e){var t=/./;try{"/./"[e](t)}catch(r){try{return t[i]=!1,!"/./"[e](t)}catch(e){}}return!0}},function(e,t,r){var i=r(47),n=r(5)("iterator"),a=Array.prototype;e.exports=function(e){return void 0!==e&&(i.Array===e||a[n]===e)}},function(e,t,r){"use strict";var i=r(8),n=r(33);e.exports=function(e,t,r){t in e?i.f(e,t,n(0,r)):e[t]=r}},function(e,t,r){var i=r(45),n=r(5)("iterator"),a=r(47);e.exports=r(19).getIteratorMethod=function(e){if(null!=e)return e[n]||e["@@iterator"]||a[i(e)]}},function(e,t,r){var i=r(234);e.exports=function(e,t){return new(i(e))(t)}},function(e,t,r){"use strict";var i=r(9),n=r(36),a=r(6);e.exports=function(e){for(var t=i(this),r=a(t.length),s=arguments.length,o=n(s>1?arguments[1]:void 0,r),l=s>2?arguments[2]:void 0,u=void 0===l?r:n(l,r);u>o;)t[o++]=e;return t}},function(e,t,r){"use strict";var i=r(32),n=r(118),a=r(47),s=r(16);e.exports=r(82)(Array,"Array",(function(e,t){this._t=s(e),this._i=0,this._k=t}),(function(){var e=this._t,t=this._k,r=this._i++;return!e||r>=e.length?(this._t=void 0,n(1)):n(0,"keys"==t?r:"values"==t?e[r]:[r,e[r]])}),"values"),a.Arguments=a.Array,i("keys"),i("values"),i("entries")},function(e,t,r){"use strict";var i,n,a=r(52),s=RegExp.prototype.exec,o=String.prototype.replace,l=s,u=(i=/a/,n=/b*/g,s.call(i,"a"),s.call(n,"a"),0!==i.lastIndex||0!==n.lastIndex),c=void 0!==/()??/.exec("")[1];(u||c)&&(l=function(e){var t,r,i,n,l=this;return c&&(r=new RegExp("^"+l.source+"$(?!\\s)",a.call(l))),u&&(t=l.lastIndex),i=s.call(l,e),u&&i&&(l.lastIndex=l.global?i.index+i[0].length:t),c&&i&&i.length>1&&o.call(i[0],r,(function(){for(n=1;nr;)t.push(arguments[r++]);return m[++v]=function(){o("function"==typeof e?e:Function(e),t)},i(v),v},f=function(e){delete m[e]},"process"==r(21)(d)?i=function(e){d.nextTick(s(_,e,1))}:g&&g.now?i=function(e){g.now(s(_,e,1))}:p?(a=(n=new p).port2,n.port1.onmessage=y,i=s(a.postMessage,a,1)):c.addEventListener&&"function"==typeof postMessage&&!c.importScripts?(i=function(e){c.postMessage(e+"","*")},c.addEventListener("message",y,!1)):i="onreadystatechange"in u("script")?function(e){l.appendChild(u("script")).onreadystatechange=function(){l.removeChild(this),_.call(e)}}:function(e){setTimeout(s(_,e,1),0)}),e.exports={set:h,clear:f}},function(e,t,r){var i=r(2),n=r(94).set,a=i.MutationObserver||i.WebKitMutationObserver,s=i.process,o=i.Promise,l="process"==r(21)(s);e.exports=function(){var e,t,r,u=function(){var i,n;for(l&&(i=s.domain)&&i.exit();e;){n=e.fn,e=e.next;try{n()}catch(i){throw e?r():t=void 0,i}}t=void 0,i&&i.enter()};if(l)r=function(){s.nextTick(u)};else if(!a||i.navigator&&i.navigator.standalone)if(o&&o.resolve){var c=o.resolve(void 0);r=function(){c.then(u)}}else r=function(){n.call(i,u)};else{var d=!0,h=document.createTextNode("");new a(u).observe(h,{characterData:!0}),r=function(){h.data=d=!d}}return function(i){var n={fn:i,next:void 0};t&&(t.next=n),e||(e=n,r()),t=n}}},function(e,t,r){"use strict";var i=r(10);function n(e){var t,r;this.promise=new e((function(e,i){if(void 0!==t||void 0!==r)throw TypeError("Bad Promise constructor");t=e,r=i})),this.resolve=i(t),this.reject=i(r)}e.exports.f=function(e){return new n(e)}},function(e,t,r){"use strict";var i=r(2),n=r(7),a=r(30),s=r(65),o=r(12),l=r(42),u=r(3),c=r(40),d=r(22),h=r(6),f=r(128),p=r(38).f,g=r(8).f,v=r(90),m=r(44),_=i.ArrayBuffer,y=i.DataView,E=i.Math,b=i.RangeError,S=i.Infinity,T=_,A=E.abs,w=E.pow,R=E.floor,L=E.log,k=E.LN2,O=n?"_b":"buffer",D=n?"_l":"byteLength",C=n?"_o":"byteOffset";function I(e,t,r){var i,n,a,s=new Array(r),o=8*r-t-1,l=(1<>1,c=23===t?w(2,-24)-w(2,-77):0,d=0,h=e<0||0===e&&1/e<0?1:0;for((e=A(e))!=e||e===S?(n=e!=e?1:0,i=l):(i=R(L(e)/k),e*(a=w(2,-i))<1&&(i--,a*=2),(e+=i+u>=1?c/a:c*w(2,1-u))*a>=2&&(i++,a/=2),i+u>=l?(n=0,i=l):i+u>=1?(n=(e*a-1)*w(2,t),i+=u):(n=e*w(2,u-1)*w(2,t),i=0));t>=8;s[d++]=255&n,n/=256,t-=8);for(i=i<0;s[d++]=255&i,i/=256,o-=8);return s[--d]|=128*h,s}function x(e,t,r){var i,n=8*r-t-1,a=(1<>1,o=n-7,l=r-1,u=e[l--],c=127&u;for(u>>=7;o>0;c=256*c+e[l],l--,o-=8);for(i=c&(1<<-o)-1,c>>=-o,o+=t;o>0;i=256*i+e[l],l--,o-=8);if(0===c)c=1-s;else{if(c===a)return i?NaN:u?-S:S;i+=w(2,t),c-=s}return(u?-1:1)*i*w(2,c-t)}function P(e){return e[3]<<24|e[2]<<16|e[1]<<8|e[0]}function M(e){return[255&e]}function F(e){return[255&e,e>>8&255]}function N(e){return[255&e,e>>8&255,e>>16&255,e>>24&255]}function B(e){return I(e,52,8)}function U(e){return I(e,23,4)}function j(e,t,r){g(e.prototype,t,{get:function(){return this[r]}})}function G(e,t,r,i){var n=f(+r);if(n+t>e[D])throw b("Wrong index!");var a=e[O]._b,s=n+e[C],o=a.slice(s,s+t);return i?o:o.reverse()}function V(e,t,r,i,n,a){var s=f(+r);if(s+t>e[D])throw b("Wrong index!");for(var o=e[O]._b,l=s+e[C],u=i(+n),c=0;cz;)(K=W[z++])in _||o(_,K,T[K]);a||(H.constructor=_)}var q=new y(new _(2)),Y=y.prototype.setInt8;q.setInt8(0,2147483648),q.setInt8(1,2147483649),!q.getInt8(0)&&q.getInt8(1)||l(y.prototype,{setInt8:function(e,t){Y.call(this,e,t<<24>>24)},setUint8:function(e,t){Y.call(this,e,t<<24>>24)}},!0)}else _=function(e){c(this,_,"ArrayBuffer");var t=f(e);this._b=v.call(new Array(t),0),this[D]=t},y=function(e,t,r){c(this,y,"DataView"),c(e,_,"DataView");var i=e[D],n=d(t);if(n<0||n>i)throw b("Wrong offset!");if(n+(r=void 0===r?i-n:h(r))>i)throw b("Wrong length!");this[O]=e,this[C]=n,this[D]=r},n&&(j(_,"byteLength","_l"),j(y,"buffer","_b"),j(y,"byteLength","_l"),j(y,"byteOffset","_o")),l(y.prototype,{getInt8:function(e){return G(this,1,e)[0]<<24>>24},getUint8:function(e){return G(this,1,e)[0]},getInt16:function(e){var t=G(this,2,e,arguments[1]);return(t[1]<<8|t[0])<<16>>16},getUint16:function(e){var t=G(this,2,e,arguments[1]);return t[1]<<8|t[0]},getInt32:function(e){return P(G(this,4,e,arguments[1]))},getUint32:function(e){return P(G(this,4,e,arguments[1]))>>>0},getFloat32:function(e){return x(G(this,4,e,arguments[1]),23,4)},getFloat64:function(e){return x(G(this,8,e,arguments[1]),52,8)},setInt8:function(e,t){V(this,1,e,M,t)},setUint8:function(e,t){V(this,1,e,M,t)},setInt16:function(e,t){V(this,2,e,F,t,arguments[2])},setUint16:function(e,t){V(this,2,e,F,t,arguments[2])},setInt32:function(e,t){V(this,4,e,N,t,arguments[2])},setUint32:function(e,t){V(this,4,e,N,t,arguments[2])},setFloat32:function(e,t){V(this,4,e,U,t,arguments[2])},setFloat64:function(e,t){V(this,8,e,B,t,arguments[2])}});m(_,"ArrayBuffer"),m(y,"DataView"),o(y.prototype,s.VIEW,!0),t.ArrayBuffer=_,t.DataView=y},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var r=0;r0}},{key:"removeEventListener",value:function(e,t){var r=this.listeners_[e];if(r){var i=r.indexOf(t);-1!==i&&(e in this.pendingRemovals_?(r[i]=s.VOID,++this.pendingRemovals_[e]):(r.splice(i,1),0===r.length&&delete this.listeners_[e]))}}}]),t}(n.default);t.default=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={M3U8:"m3u8",MP4:"mp4",FLV:"flv"}},function(e,t,r){e.exports=!r(7)&&!r(3)((function(){return 7!=Object.defineProperty(r(71)("div"),"a",{get:function(){return 7}}).a}))},function(e,t,r){t.f=r(5)},function(e,t,r){var i=r(15),n=r(16),a=r(55)(!1),s=r(73)("IE_PROTO");e.exports=function(e,t){var r,o=n(e),l=0,u=[];for(r in o)r!=s&&i(o,r)&&u.push(r);for(;t.length>l;)i(o,r=t[l++])&&(~a(u,r)||u.push(r));return u}},function(e,t,r){var i=r(8),n=r(1),a=r(35);e.exports=r(7)?Object.defineProperties:function(e,t){n(e);for(var r,s=a(t),o=s.length,l=0;o>l;)i.f(e,r=s[l++],t[r]);return e}},function(e,t,r){var i=r(16),n=r(38).f,a={}.toString,s="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];e.exports.f=function(e){return s&&"[object Window]"==a.call(e)?function(e){try{return n(e)}catch(e){return s.slice()}}(e):n(i(e))}},function(e,t,r){"use strict";var i=r(7),n=r(35),a=r(56),s=r(51),o=r(9),l=r(50),u=Object.assign;e.exports=!u||r(3)((function(){var e={},t={},r=Symbol(),i="abcdefghijklmnopqrst";return e[r]=7,i.split("").forEach((function(e){t[e]=e})),7!=u({},e)[r]||Object.keys(u({},t)).join("")!=i}))?function(e,t){for(var r=o(e),u=arguments.length,c=1,d=a.f,h=s.f;u>c;)for(var f,p=l(arguments[c++]),g=d?n(p).concat(d(p)):n(p),v=g.length,m=0;v>m;)f=g[m++],i&&!h.call(p,f)||(r[f]=p[f]);return r}:u},function(e,t){e.exports=Object.is||function(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}},function(e,t,r){"use strict";var i=r(10),n=r(4),a=r(108),s=[].slice,o={},l=function(e,t,r){if(!(t in o)){for(var i=[],n=0;n>>0||(s.test(r)?16:10))}:i},function(e,t,r){var i=r(2).parseFloat,n=r(46).trim;e.exports=1/i(r(77)+"-0")!=-1/0?function(e){var t=n(String(e),3),r=i(t);return 0===r&&"-"==t.charAt(0)?-0:r}:i},function(e,t,r){var i=r(21);e.exports=function(e,t){if("number"!=typeof e&&"Number"!=i(e))throw TypeError(t);return+e}},function(e,t,r){var i=r(4),n=Math.floor;e.exports=function(e){return!i(e)&&isFinite(e)&&n(e)===e}},function(e,t){e.exports=Math.log1p||function(e){return(e=+e)>-1e-8&&e<1e-8?e-e*e/2:Math.log(1+e)}},function(e,t,r){var i=r(80),n=Math.pow,a=n(2,-52),s=n(2,-23),o=n(2,127)*(2-s),l=n(2,-126);e.exports=Math.fround||function(e){var t,r,n=Math.abs(e),u=i(e);return no||r!=r?u*(1/0):u*r}},function(e,t,r){var i=r(1);e.exports=function(e,t,r,n){try{return n?t(i(r)[0],r[1]):t(r)}catch(t){var a=e.return;throw void 0!==a&&i(a.call(e)),t}}},function(e,t,r){var i=r(10),n=r(9),a=r(50),s=r(6);e.exports=function(e,t,r,o,l){i(t);var u=n(e),c=a(u),d=s(u.length),h=l?d-1:0,f=l?-1:1;if(r<2)for(;;){if(h in c){o=c[h],h+=f;break}if(h+=f,l?h<0:d<=h)throw TypeError("Reduce of empty array with no initial value")}for(;l?h>=0:d>h;h+=f)h in c&&(o=t(o,c[h],h,u));return o}},function(e,t,r){"use strict";var i=r(9),n=r(36),a=r(6);e.exports=[].copyWithin||function(e,t){var r=i(this),s=a(r.length),o=n(e,s),l=n(t,s),u=arguments.length>2?arguments[2]:void 0,c=Math.min((void 0===u?s:n(u,s))-l,s-o),d=1;for(l0;)l in r?r[o]=r[l]:delete r[o],o+=d,l+=d;return r}},function(e,t){e.exports=function(e,t){return{value:t,done:!!e}}},function(e,t,r){"use strict";var i=r(92);r(0)({target:"RegExp",proto:!0,forced:i!==/./.exec},{exec:i})},function(e,t,r){r(7)&&"g"!=/./g.flags&&r(8).f(RegExp.prototype,"flags",{configurable:!0,get:r(52)})},function(e,t){e.exports=function(e){try{return{e:!1,v:e()}}catch(e){return{e:!0,v:e}}}},function(e,t,r){var i=r(1),n=r(4),a=r(96);e.exports=function(e,t){if(i(e),n(t)&&t.constructor===e)return t;var r=a.f(e);return(0,r.resolve)(t),r.promise}},function(e,t,r){"use strict";var i=r(124),n=r(43);e.exports=r(64)("Map",(function(e){return function(){return e(this,arguments.length>0?arguments[0]:void 0)}}),{get:function(e){var t=i.getEntry(n(this,"Map"),e);return t&&t.v},set:function(e,t){return i.def(n(this,"Map"),0===e?0:e,t)}},i,!0)},function(e,t,r){"use strict";var i=r(8).f,n=r(37),a=r(42),s=r(20),o=r(40),l=r(41),u=r(82),c=r(118),d=r(39),h=r(7),f=r(31).fastKey,p=r(43),g=h?"_s":"size",v=function(e,t){var r,i=f(t);if("F"!==i)return e._i[i];for(r=e._f;r;r=r.n)if(r.k==t)return r};e.exports={getConstructor:function(e,t,r,u){var c=e((function(e,i){o(e,c,t,"_i"),e._t=t,e._i=n(null),e._f=void 0,e._l=void 0,e[g]=0,null!=i&&l(i,r,e[u],e)}));return a(c.prototype,{clear:function(){for(var e=p(this,t),r=e._i,i=e._f;i;i=i.n)i.r=!0,i.p&&(i.p=i.p.n=void 0),delete r[i.i];e._f=e._l=void 0,e[g]=0},delete:function(e){var r=p(this,t),i=v(r,e);if(i){var n=i.n,a=i.p;delete r._i[i.i],i.r=!0,a&&(a.n=n),n&&(n.p=a),r._f==i&&(r._f=n),r._l==i&&(r._l=a),r[g]--}return!!i},forEach:function(e){p(this,t);for(var r,i=s(e,arguments.length>1?arguments[1]:void 0,3);r=r?r.n:this._f;)for(i(r.v,r.k,this);r&&r.r;)r=r.p},has:function(e){return!!v(p(this,t),e)}}),h&&i(c.prototype,"size",{get:function(){return p(this,t)[g]}}),c},def:function(e,t,r){var i,n,a=v(e,t);return a?a.v=r:(e._l=a={i:n=f(t,!0),k:t,v:r,p:i=e._l,n:void 0,r:!1},e._f||(e._f=a),i&&(i.n=a),e[g]++,"F"!==n&&(e._i[n]=a)),e},getEntry:v,setStrong:function(e,t,r){u(e,t,(function(e,r){this._t=p(e,t),this._k=r,this._l=void 0}),(function(){for(var e=this._k,t=this._l;t&&t.r;)t=t.p;return this._t&&(this._l=t=t?t.n:this._t._f)?c(0,"keys"==e?t.k:"values"==e?t.v:[t.k,t.v]):(this._t=void 0,c(1))}),r?"entries":"values",!r,!0),d(t)}}},function(e,t,r){"use strict";var i=r(124),n=r(43);e.exports=r(64)("Set",(function(e){return function(){return e(this,arguments.length>0?arguments[0]:void 0)}}),{add:function(e){return i.def(n(this,"Set"),e=0===e?0:e,e)}},i)},function(e,t,r){"use strict";var i,n=r(2),a=r(27)(0),s=r(13),o=r(31),l=r(105),u=r(127),c=r(4),d=r(43),h=r(43),f=!n.ActiveXObject&&"ActiveXObject"in n,p=o.getWeak,g=Object.isExtensible,v=u.ufstore,m=function(e){return function(){return e(this,arguments.length>0?arguments[0]:void 0)}},_={get:function(e){if(c(e)){var t=p(e);return!0===t?v(d(this,"WeakMap")).get(e):t?t[this._i]:void 0}},set:function(e,t){return u.def(d(this,"WeakMap"),e,t)}},y=e.exports=r(64)("WeakMap",m,_,u,!0,!0);h&&f&&(l((i=u.getConstructor(m,"WeakMap")).prototype,_),o.NEED=!0,a(["delete","has","get","set"],(function(e){var t=y.prototype,r=t[e];s(t,e,(function(t,n){if(c(t)&&!g(t)){this._f||(this._f=new i);var a=this._f[e](t,n);return"set"==e?this:a}return r.call(this,t,n)}))})))},function(e,t,r){"use strict";var i=r(42),n=r(31).getWeak,a=r(1),s=r(4),o=r(40),l=r(41),u=r(27),c=r(15),d=r(43),h=u(5),f=u(6),p=0,g=function(e){return e._l||(e._l=new v)},v=function(){this.a=[]},m=function(e,t){return h(e.a,(function(e){return e[0]===t}))};v.prototype={get:function(e){var t=m(this,e);if(t)return t[1]},has:function(e){return!!m(this,e)},set:function(e,t){var r=m(this,e);r?r[1]=t:this.a.push([e,t])},delete:function(e){var t=f(this.a,(function(t){return t[0]===e}));return~t&&this.a.splice(t,1),!!~t}},e.exports={getConstructor:function(e,t,r,a){var u=e((function(e,i){o(e,u,t,"_i"),e._t=t,e._i=p++,e._l=void 0,null!=i&&l(i,r,e[a],e)}));return i(u.prototype,{delete:function(e){if(!s(e))return!1;var r=n(e);return!0===r?g(d(this,t)).delete(e):r&&c(r,this._i)&&delete r[this._i]},has:function(e){if(!s(e))return!1;var r=n(e);return!0===r?g(d(this,t)).has(e):r&&c(r,this._i)}}),u},def:function(e,t,r){var i=n(a(t),!0);return!0===i?g(e).set(t,r):i[e._i]=r,e},ufstore:g}},function(e,t,r){var i=r(22),n=r(6);e.exports=function(e){if(void 0===e)return 0;var t=i(e),r=n(t);if(t!==r)throw RangeError("Wrong length!");return r}},function(e,t,r){var i=r(38),n=r(56),a=r(1),s=r(2).Reflect;e.exports=s&&s.ownKeys||function(e){var t=i.f(a(e)),r=n.f;return r?t.concat(r(e)):t}},function(e,t,r){"use strict";var i=r(57),n=r(4),a=r(6),s=r(20),o=r(5)("isConcatSpreadable");e.exports=function e(t,r,l,u,c,d,h,f){for(var p,g,v=c,m=0,_=!!h&&s(h,f,3);m0)v=e(t,r,p,a(p.length),v,d-1)-1;else{if(v>=9007199254740991)throw TypeError();t[v]=p}v++}m++}return v}},function(e,t,r){var i=r(6),n=r(79),a=r(25);e.exports=function(e,t,r,s){var o=String(a(e)),l=o.length,u=void 0===r?" ":String(r),c=i(t);if(c<=l||""==u)return o;var d=c-l,h=n.call(u,Math.ceil(d/u.length));return h.length>d&&(h=h.slice(0,d)),s?h+o:o+h}},function(e,t,r){var i=r(7),n=r(35),a=r(16),s=r(51).f;e.exports=function(e){return function(t){for(var r,o=a(t),l=n(o),u=l.length,c=0,d=[];u>c;)r=l[c++],i&&!s.call(o,r)||d.push(e?[r,o[r]]:o[r]);return d}}},function(e,t,r){var i=r(45),n=r(134);e.exports=function(e){return function(){if(i(this)!=e)throw TypeError(e+"#toJSON isn't generic");return n(this)}}},function(e,t,r){var i=r(41);e.exports=function(e,t){var r=[];return i(e,!1,r.push,r,t),r}},function(e,t){e.exports=Math.scale||function(e,t,r,i,n){return 0===arguments.length||e!=e||t!=t||r!=r||i!=i||n!=n?NaN:e===1/0||e===-1/0?e:(e-t)*(n-i)/(r-t)+i}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={PC:"pc",MB:"mb"}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{};c(this,t);var r={target:null,source:null,autoplay:!1},i=d(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return i.option=Object.assign({},r,e),i.rollBarrage_=!1,i.timer_=null,i.isFullScreen_=!1,i.createElement_(),i}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),i(t,[{key:"createElement_",value:function(){var e=this,t=this.option.target;t.className="sv-target";var r=this.video_=document.createElement("VIDEO");r.setAttribute("width","100%"),r.setAttribute("height","100%"),r.autoplay=this.option.autoplay,r.onloadedmetadata=function(){r.currentTime=e.option.currentTime},r.loop=this.option.loop,r.muted=this.option.muted,r.playbackRate=this.option.playbackRate,r.poster=this.option.poster,r.volume=this.option.volume,t.appendChild(r),this.createLoading_(),this.addSource_(),this.createControlContainer_(t);var i=this.option.leftControls,n=this.option.rightControls,a=this.option.centerControls;i.length>0&&i.forEach((function(t){e.addControlLeft_(t)})),n.length>0&&n.forEach((function(t){e.addControlRight_(t)})),a.length>0&&a.forEach((function(t){e.addControlCenter_(t)})),this.listenerEvents_(),this.pauseMenu_(t),this.bindEventVideo_()}},{key:"bindEventVideo_",value:function(){var e=this;this.video_.onclick=function(){e.isPlay_()?e.pause_():e.play_()};var t=function(){e.control_.classList.remove("hide"),e.sourceType!==l.default.M3U8&&e.sourceType!==l.default.FLV&&e.progressBar_.classList.remove("hide"),null!==e.timer_&&clearTimeout(e.timer_),e.timer_=setTimeout((function(){e.control_.classList.add("hide"),e.progressBar_.classList.add("hide"),clearTimeout(e.timer_)}),2e3)};this.video_.onmousemove=t,this.svgPause_.onmousemove=t,this.control_.onmouseover=function(t){null!==e.timer_&&clearTimeout(e.timer_),e.control_.classList.remove("hide"),e.sourceType!==l.default.M3U8&&e.sourceType!==l.default.FLV&&e.progressBar_.classList.remove("hide"),(t||window.event).stopPropagation()},this.option.target.onmouseout=function(){e.control_.classList.add("hide"),e.progressBar_.classList.add("hide")}}},{key:"pauseMenu_",value:function(e){var t=this,r=this.svgPause_=document.createElement("span");r.className="sv-svgPause",r.innerHTML='',e.appendChild(r),r.onclick=function(){t.play_()}}},{key:"createControlContainer_",value:function(e){var t=this,r=this.control_=document.createElement("div");r.className="sv-control hide",e.appendChild(r);var i=document.createElement("div");i.className="sv-play-container",r.appendChild(i);var n=this.playMenu_=document.createElement("button");n.className="sv-playBtn",i.appendChild(n);var s=this.btnInner_=document.createElement("span");s.innerHTML="",s.className="sv-font sv-play",n.appendChild(s);var o=this.leftControl_=document.createElement("div");o.className="sv-control-left",i.appendChild(o);var u=document.createElement("div");u.className="sv-time",i.appendChild(u);var c=this.timeStart_=document.createElement("span");c.className="sv-time-s",c.innerHTML="00:00";var d=document.createElement("span");d.className="sv-time-split",d.innerHTML="/";var h=this.timeEnd_=document.createElement("span");h.className="sv-time-e",h.innerHTML="00:00",u.appendChild(c),u.appendChild(d),u.appendChild(h);var f=this.controlCenter_=document.createElement("div");f.className="sv-control-c",r.appendChild(f);var p=this.controlRight_=document.createElement("div");p.className="sv-control-r",r.appendChild(p);var g=this.muteMenu_=document.createElement("div");g.className="showMute",p.appendChild(g);var v=this.muteInner_=document.createElement("span");v.innerHTML="",v.className="sv-font sv-play",g.appendChild(v),this.option.mode===a.default.MB&&(g.style.display="none");var m=this.mutePanel_=document.createElement("div");m.className="sv-mutePanel hide",g.appendChild(m);var _=this.muteNum_=document.createElement("div");_.className="sv-mute-num",_.innerHTML="100";var y=this.muteSlider_=document.createElement("div");y.className="sv-mute-slider",m.appendChild(_),m.appendChild(y);var E=this.muteSliderRange_=document.createElement("div");E.className="sv-mute-sliderRange",y.appendChild(E);var b=this.muteSliderButton_=document.createElement("button");b.className="sv-mute-button",y.appendChild(b);var S=this.progressBar_=document.createElement("div");S.className="sv-progressBar hide",e.appendChild(S);var T=this.cacheProgress_=document.createElement("div");T.className="sv-cacheProgress",S.appendChild(T);var A=this.progressNum_=document.createElement("div");A.className="sv-progressNum",S.appendChild(A);var w=this.progressBtn_=document.createElement("div");w.className="sv-progressBtn hide";var R=document.createElement("div");w.appendChild(R),S.appendChild(w),this.sliderRange_(b,E),this.setVolume_(this.option.volume),this.setMuteIcon_(),this.setEventDefaultControl_(),n.onclick=function(){t.isPlay_()?(t.pause_(),s.innerHTML=""):(t.play_(),s.innerHTML="")},this.isPip_=!1;var L=document.createElement("div");L.className="sv-picinpic sv-font",this.option.target.appendChild(L),L.innerHTML='画中画',L.onclick=function(){t.isPip_?t.leavePicInPic_():t.enterPicInPic_()};var k=window.navigator.userAgent.indexOf("Chrome")>-1;this.option.mode===a.default.MB&&L.classList.add("hide"),this.option.showPictureInPicture&&k||L.classList.add("hide"),"function"!=typeof this.video_.requestPictureInPicture&&L.classList.add("hide"),this.sourceType!==l.default.M3U8&&this.sourceType!==l.default.FLV||(this.progressBar_.classList.add("hide"),u.classList.add("hide"))}},{key:"setEventDefaultControl_",value:function(){var e=this,t=this.muteMenu_,r=this.mutePanel_,i=this.progressBar_,n=this.progressBtn_;t.onmouseover=function(){r.classList.remove("hide")};var a=null;t.onmouseleave=function(){a=setTimeout((function(){r.classList.add("hide"),clearTimeout(a)}),500)},r.onmouseover=function(){r.classList.remove("hide"),clearTimeout(a)},r.onmouseleave=function(){r.classList.remove("hide")},t.onclick=function(t){e.isMuted_()?e.setMuted_(!1):e.setMuted_(!0),t.stopPropagation()},r.onclick=function(e){e.stopPropagation()},i.onmouseover=function(){i.style.height="4px",n.classList.remove("hide"),null!==e.timer_&&clearTimeout(e.timer_),e.control_.classList.remove("hide"),e.progressBar_.classList.remove("hide")},i.onmouseout=function(){i.style.height="2px",n.classList.add("hide")},n.onmousedown=function(t){var r=t.clientX,a=n.offsetLeft,o=i.offsetWidth-n.offsetWidth,l=i.clientWidth,u=0;document.onmousemove=function(t){e.pause_();var c=t.clientX,d=Math.min(o,Math.max(-2,a+(c-r)))/l,h=100*d+"%";n.style.left=h,e.progressNum_.style.width=h;var f=e.getAllTime_();u=f*d,e.timeStart_.innerHTML=(0,s.formatSeconds)(u),n.classList.remove("hide"),i.style.height="4px",t.preventDefault()},document.onmouseup=function(){document.onmousemove=null,document.onmouseup=null,e.play_(),e.setCurrentTime_(u),e.clearBarrages_(),i.style.height="2px",n.classList.add("hide")},t.preventDefault()}}},{key:"sliderRange_",value:function(e,t){var r=this;e.onmousedown=function(i){r._isCursor=!0;var n=(i||event).clientY,a=e.offsetTop;document.onmousemove=function(i){var s=i.clientY-n+a;if(!(s>50||s<0)){e.style.top=s+"px";var o=50-s;t.style.height=o+"px",r.setVolume_(o/50)}},document.onmouseup=function(){document.onmousemove=null,document.onmouseup=null,r._isCursor=!1}}}},{key:"xhrBlob",value:function(e){window.URL=window.URL||window.webkitURL;var t=new XMLHttpRequest;t.open("GET",e,!0),t.responseType="blob",t.onload=function(){if(200===this.status){var e=this.response;this.video_.onload=function(e){window.URL.revokeObjectURL(this.video_.src)},this.video_.src=window.URL.createObjectURL(e)}},t.send()}},{key:"addSource_",value:function(e){var t=this;this.showLoad_();var r=this.video_;switch(this.source_=e||this.option.source,this.sourceType=this.source_.getType()){case l.default.MP4:this.source_.option.blob?this.xhrBlob(this.source_.option.src):r.appendChild(this.source_.getSource());break;case l.default.M3U8:this.source_.getSource().attachMedia(r);break;case l.default.FLV:var i=this.source_.getSource();i.attachMediaElement(r),i.load()}r.ontimeupdate=null,r.ontimeupdate=function(){t.ontimeupdate_(r),r.paused?t.btnInner_.innerHTML="":t.btnInner_.innerHTML="",t.timeStart_.innerHTML=(0,s.formatSeconds)(t.getCurrentTime_()),t.setMuteIcon_(),t.setProgressBarStyle_()};var n=setInterval((function(){t.video_.readyState&&(t.cacheProgress_.style.width=t.progressNum_.style.width="0%",t.progressBtn_.style.left="0px",t.timeEnd_.innerHTML=(0,s.formatSeconds)(t.getAllTime_()),t.onready_(),clearInterval(n))}))}},{key:"setProgressBarStyle_",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.video_,t=this.getAllTime_();if(t>0){for(var r=0;r\n\t\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\n ',e.className="sv-loading hide",this.option.target.appendChild(e)}},{key:"showLoad_",value:function(){this.loading_.classList.remove("hide")}},{key:"hideLoad_",value:function(){this.loading_.classList.add("hide")}},{key:"setMuteIcon_",value:function(){this.isMuted_()?this.muteInner_.innerHTML="":this.muteInner_.innerHTML=""}},{key:"ontimeupdate_",value:function(){}},{key:"onready_",value:function(){}},{key:"play_",value:function(){this.showLoad_(),this.video_.play(),this.sourceType===l.default.M3U8&&this.setCurrentTime_(this.getAllTime_())}},{key:"pause_",value:function(){this.video_.pause()}},{key:"getAllTime_",value:function(){return this.video_.duration}},{key:"getCurrentTime_",value:function(){return this.video_.currentTime}},{key:"setCurrentTime_",value:function(e){this.video_.currentTime=e,this.showLoad_()}},{key:"setCurrentTimeClone_",value:function(e){this.video_.currentTime=e;var t=this.getAllTime_();this.progressNum_.style.width=e/t*100+"%";var r=this.progressBar_.clientWidth*(e/t);this.isReady_()&&(this.progressBtn_.style.left=r-16+"px")}},{key:"getCurrentByPx_",value:function(e){return this.getAllTime_()*(e/this.progressBar_.clientWidth)}},{key:"isEnded_",value:function(){return this.video_.ended}},{key:"setLoop_",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.video_.loop=e}},{key:"isLoop_",value:function(){return this.video_.loop}},{key:"setMuted_",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.video_.muted=e,this.setMuteIcon_()}},{key:"isMuted_",value:function(){return this.video_.muted}},{key:"getNetworkState_",value:function(){return this.video_.networkState}},{key:"isPlay_",value:function(){return!this.video_.paused}},{key:"getPlaybackRate_",value:function(){return this.video_.playbackRate}},{key:"setPlaybackRate_",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;this.video_.playbackRate=e}},{key:"setPoster_",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";this.video_.poster=e}},{key:"setVolume_",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;this.video_.volume=e,this.muteNum_.innerHTML=parseInt(100*e),this.muteSliderRange_.style.height=100*e/2+"px",this.muteSliderButton_.style.top=50-100*e/2+"px",e>0?this.setMuted_(!1):this.setMuted_(!0)}},{key:"getVolume_",value:function(){return this.video_.volume}},{key:"isReady_",value:function(){return 4===this.video_.readyState}},{key:"addControlLeft_",value:function(e){this.leftControl_.appendChild(e.init_(this))}},{key:"addControlRight_",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];t?this.controlRight_.prepend(e.init_(this)):this.controlRight_.appendChild(e.init_(this))}},{key:"addControlCenter_",value:function(e){this.controlCenter_.appendChild(e.init_(this))}},{key:"fullScreen_",value:function(){var e=document.documentElement;e.requestFullScreen?e.requestFullScreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.webkitRequestFullScreen&&e.webkitRequestFullScreen(),this.option.target.classList.add("sv-full-screen"),this.setProgressBarStyle_(),this.videoEvent_(o.default.FULL_SCREEN),this.isFullScreen_=!0,this.setControlFullScreen_(1)}},{key:"cancelFullScreen_",value:function(){var e=document;e.exitFullscreen?e.exitFullscreen():e.mozCancelFullScreen?e.mozCancelFullScreen():e.webkitCancelFullScreen&&e.webkitCancelFullScreen(),this.option.target.classList.remove("sv-full-screen"),this.setProgressBarStyle_(),this.videoEvent_(o.default.CANCEL_FULL_SCREEN),this.isFullScreen_=!1,this.setControlFullScreen_(0)}},{key:"setControlFullScreen_",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.option.leftControls.forEach((function(r){"fullScreenMenu"===r.type_&&e.setFullScreenMenu(t,r)})),this.option.rightControls.forEach((function(r){"fullScreenMenu"===r.type_&&e.setFullScreenMenu(t,r)})),this.option.centerControls.forEach((function(r){"fullScreenMenu"===r.type_&&e.setFullScreenMenu(t,r)}))}},{key:"setFullScreenMenu",value:function(e,t){0===e?(t.fullScreenBtn_.innerHTML="",t.isFull_=!1):(t.fullScreenBtn_.innerHTML="",t.isFull_=!0)}},{key:"addBarrage_",value:function(e){var t=null,r="#ffffff",i="14px",n="微软雅黑",a="100",s=null,o=null;"string"==typeof e?t=e:(t=e.getText(),r=e.getColor(),i=e.getFontSize(),n=e.getFontFamily(),a=e.getFontWeight(),s=e.getLeftDom(),o=e.getRightDom());var l=this.option.target,u=document.createElement("div");u.className="sv-brrage";var c=document.createElement("div");c.className="sv-brrage-left",null!==s&&c.appendChild(s),null!==o&&c.appendChild(o);var d=document.createElement("div");d.className="sv-brrage-center",d.innerHTML=t,d.style.color=r,d.style.fontSize=i,d.style.fontFamily=n,d.style.fontWeight=a;var h=document.createElement("div");h.className="sv-brrage-right",u.appendChild(c),u.appendChild(d),u.appendChild(h),l.appendChild(u),l.style.overflow="hidden";var f=l.getBoundingClientRect(),p=f.right-f.left,g=f.bottom-f.top;u.style.left=p+"px",u.style.top=(g-80)*Number(Math.random().toFixed(2))+"px";var v=null,m=function e(t){var r=Number(new Date);e.last=e.last||r,e.timer=e.timer||t;var i=u.offsetLeft,n=u.getBoundingClientRect();i=e.timer&&(e.last=r,i-=3,u.style.left=i+"px"),v=requestAnimationFrame(e))};this.rollBarrage_&&m(50*Number(Math.random().toFixed(2))),this.addEventListener("pause",(function(){cancelAnimationFrame(v)})),this.addEventListener("play",(function(){m(50*Number(Math.random().toFixed(2)))}))}},{key:"clearBarrages_",value:function(){for(var e=document.getElementsByClassName("sv-brrage"),t=0;t0)try{this.clearBarrages_()}catch(e){}}},{key:"enterPicInPic_",value:function(){this.video_.requestPictureInPicture()}},{key:"leavePicInPic_",value:function(){document.exitPictureInPicture()}},{key:"isFull",value:function(){var e=document.mozFullScreen||document.fullScreen||document.webkitIsFullScreen||document.webkitRequestFullScreen||document.mozRequestFullScreen||document.msFullscreenEnabled;return void 0===e&&(e=!1),e}},{key:"listenerEvents_",value:function(){var e=this;window.onresize=function(){e.isFull()||e.cancelFullScreen_()},this.eventFn_("play",o.default.PLAY),this.eventFn_("loadstart",o.default.LOADS_SART),this.eventFn_("suspend",o.default.SUSPEND),this.eventFn_("abort",o.default.ABORT),this.eventFn_("progress",o.default.PROGRESS),this.eventFn_("error",o.default.ERROR),this.eventFn_("stalled",o.default.STALLED),this.eventFn_("pause",o.default.PAUSE),this.eventFn_("loadedmetadata",o.default.LOADED_METADATA),this.eventFn_("waiting",o.default.WAITING),this.eventFn_("playing",o.default.PLAYING),this.eventFn_("timeupdate",o.default.TIME_UPDATE),this.eventFn_("ended",o.default.ENDED),this.eventFn_("ratechange",o.default.RATE_CHANGE),this.eventFn_("volumechange",o.default.VOLUME_CHANGE),this.eventFn_("enterpictureinpicture",o.default.ENTER_PIP),this.eventFn_("leavepictureinpicture",o.default.LEAVE_PIP)}},{key:"eventFn_",value:function(e,t){var r=this;this.video_.addEventListener(e,(function(){switch(r.dispatchEvent(t),t){case o.default.ERROR:console.error("error");break;case o.default.ABORT:console.error("abort");break;case o.default.PLAY:r.rollBarrage_=!0,r.svgPause_.classList.add("hide");break;case o.default.PAUSE:r.rollBarrage_=!1,r.svgPause_.classList.remove("hide");break;case o.default.LOADED_METADATA:r.hideLoad_();break;case o.default.WAITING:r.showLoad_();break;case o.default.ENTER_PIP:document.getElementById("sv-hzh").innerHTML="画中画使用中",r.isPip_=!0;break;case o.default.LEAVE_PIP:document.getElementById("sv-hzh").innerHTML="画中画",r.isPip_=!1}r.videoEvent_(t)}))}},{key:"videoEvent_",value:function(){}}]),t}(n.default);t.default=h},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.formatSeconds=function(e){var t=parseInt(e),r=0,i=0;t>60&&(r=parseInt(t/60),t=parseInt(t%60),r>60&&(i=parseInt(r/60),r=parseInt(r%60)));var n=String(parseInt(t));return n=t<10>0?"0"+parseInt(t):String(parseInt(t)),n=r<10>0?"0"+parseInt(r)+":"+n:String(parseInt(r))+":"+n,i>0&&(n=String(parseInt(i))+":"+n),n}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:"",r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};a(this,e);var i={color:"#ffffff",fontSize:14,fontFamily:"微软雅黑",fontWeight:600,text:t,area:.5,leftDom:null,rightDom:null};this.option=(0,n.assign)({},i,r)}return i(e,[{key:"getText",value:function(){return this.option.text}},{key:"getColor",value:function(){return this.option.color}},{key:"getFontSize",value:function(){return this.option.fontSize+"px"}},{key:"getFontFamily",value:function(){return this.option.fontFamily}},{key:"getMinTop",value:function(e){return e.clientHeight-e.clientHeight*(1-this.option.area)+80}},{key:"getLeftDom",value:function(){return this.option.leftDom}},{key:"getRightDom",value:function(){return this.option.rightDom}},{key:"getFontWeight",value:function(){return this.option.fontWeight}}]),e}();t.default=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{};l(this,e);var r={src:"",blob:!1,type:s.default.MP4};switch(this.option=Object.assign({},r,t),this.source_=null,this.getType()){case s.default.MP4:this.createSource_();break;case s.default.M3U8:this.createHls_();break;case s.default.FLV:this.createFlv_()}}return i(e,[{key:"createSource_",value:function(){(this.source_=document.createElement("source")).setAttribute("src",this.option.src)}},{key:"createHls_",value:function(){if(n.default.isSupported()){var e=new n.default;e.loadSource(this.option.src),this.source_=e}}},{key:"createFlv_",value:function(){if(a.default.isSupported()){var e=a.default.createPlayer({type:"flv",url:this.option.src});this.source_=e}}},{key:"getSource",value:function(){return this.source_}},{key:"getType",value:function(){return this.option.type}}]),e}();t.default=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),r(142);var i=d(r(344)),n=d(r(140)),a=d(r(355)),s=d(r(48)),o=d(r(356)),l=d(r(357)),u=d(r(358)),c=d(r(359));function d(e){return e&&e.__esModule?e:{default:e}}t.default={Svideo:i.default,Barrage:a.default,VideoSource:n.default,Control:s.default,NextControl:o.default,FullScreenControl:l.default,DbspeenControl:u.default,BarrageControl:c.default}},function(e,t,r){"use strict";(function(e){if(r(143),r(340),r(341),e._babelPolyfill)throw new Error("only one instance of babel-polyfill is allowed");e._babelPolyfill=!0;function t(e,t,r){e[t]||Object.defineProperty(e,t,{writable:!0,configurable:!0,value:r})}t(String.prototype,"padLeft","".padStart),t(String.prototype,"padRight","".padEnd),"pop,reverse,shift,keys,values,entries,indexOf,every,some,forEach,map,filter,find,findIndex,includes,join,slice,concat,push,splice,unshift,sort,lastIndexOf,reduce,reduceRight,copyWithin,fill".split(",").forEach((function(e){[][e]&&t(Array,e,Function.call.bind([][e]))}))}).call(this,r(70))},function(e,t,r){r(144),r(147),r(148),r(149),r(150),r(151),r(152),r(153),r(154),r(155),r(156),r(157),r(158),r(159),r(160),r(161),r(162),r(163),r(164),r(165),r(166),r(167),r(168),r(169),r(170),r(171),r(172),r(173),r(174),r(175),r(176),r(177),r(178),r(179),r(180),r(181),r(182),r(183),r(184),r(185),r(186),r(187),r(188),r(189),r(190),r(191),r(192),r(193),r(194),r(195),r(196),r(197),r(198),r(199),r(200),r(201),r(202),r(203),r(204),r(205),r(206),r(207),r(208),r(209),r(210),r(211),r(212),r(213),r(214),r(215),r(216),r(217),r(218),r(219),r(220),r(221),r(222),r(224),r(225),r(227),r(228),r(229),r(230),r(231),r(232),r(233),r(235),r(236),r(237),r(238),r(239),r(240),r(241),r(242),r(243),r(244),r(245),r(246),r(247),r(91),r(248),r(119),r(249),r(120),r(250),r(251),r(252),r(253),r(254),r(123),r(125),r(126),r(255),r(256),r(257),r(258),r(259),r(260),r(261),r(262),r(263),r(264),r(265),r(266),r(267),r(268),r(269),r(270),r(271),r(272),r(273),r(274),r(275),r(276),r(277),r(278),r(279),r(280),r(281),r(282),r(283),r(284),r(285),r(286),r(287),r(288),r(289),r(290),r(291),r(292),r(293),r(294),r(295),r(296),r(297),r(298),r(299),r(300),r(301),r(302),r(303),r(304),r(305),r(306),r(307),r(308),r(309),r(310),r(311),r(312),r(313),r(314),r(315),r(316),r(317),r(318),r(319),r(320),r(321),r(322),r(323),r(324),r(325),r(326),r(327),r(328),r(329),r(330),r(331),r(332),r(333),r(334),r(335),r(336),r(337),r(338),r(339),e.exports=r(19)},function(e,t,r){"use strict";var i=r(2),n=r(15),a=r(7),s=r(0),o=r(13),l=r(31).KEY,u=r(3),c=r(49),d=r(44),h=r(34),f=r(5),p=r(101),g=r(72),v=r(146),m=r(57),_=r(1),y=r(4),E=r(9),b=r(16),S=r(24),T=r(33),A=r(37),w=r(104),R=r(17),L=r(56),k=r(8),O=r(35),D=R.f,C=k.f,I=w.f,x=i.Symbol,P=i.JSON,M=P&&P.stringify,F=f("_hidden"),N=f("toPrimitive"),B={}.propertyIsEnumerable,U=c("symbol-registry"),j=c("symbols"),G=c("op-symbols"),V=Object.prototype,K="function"==typeof x&&!!L.f,H=i.QObject,W=!H||!H.prototype||!H.prototype.findChild,z=a&&u((function(){return 7!=A(C({},"a",{get:function(){return C(this,"a",{value:7}).a}})).a}))?function(e,t,r){var i=D(V,t);i&&delete V[t],C(e,t,r),i&&e!==V&&C(V,t,i)}:C,q=function(e){var t=j[e]=A(x.prototype);return t._k=e,t},Y=K&&"symbol"==typeof x.iterator?function(e){return"symbol"==typeof e}:function(e){return e instanceof x},X=function(e,t,r){return e===V&&X(G,t,r),_(e),t=S(t,!0),_(r),n(j,t)?(r.enumerable?(n(e,F)&&e[F][t]&&(e[F][t]=!1),r=A(r,{enumerable:T(0,!1)})):(n(e,F)||C(e,F,T(1,{})),e[F][t]=!0),z(e,t,r)):C(e,t,r)},$=function(e,t){_(e);for(var r,i=v(t=b(t)),n=0,a=i.length;a>n;)X(e,r=i[n++],t[r]);return e},J=function(e){var t=B.call(this,e=S(e,!0));return!(this===V&&n(j,e)&&!n(G,e))&&(!(t||!n(this,e)||!n(j,e)||n(this,F)&&this[F][e])||t)},Q=function(e,t){if(e=b(e),t=S(t,!0),e!==V||!n(j,t)||n(G,t)){var r=D(e,t);return!r||!n(j,t)||n(e,F)&&e[F][t]||(r.enumerable=!0),r}},Z=function(e){for(var t,r=I(b(e)),i=[],a=0;r.length>a;)n(j,t=r[a++])||t==F||t==l||i.push(t);return i},ee=function(e){for(var t,r=e===V,i=I(r?G:b(e)),a=[],s=0;i.length>s;)!n(j,t=i[s++])||r&&!n(V,t)||a.push(j[t]);return a};K||(o((x=function(){if(this instanceof x)throw TypeError("Symbol is not a constructor!");var e=h(arguments.length>0?arguments[0]:void 0),t=function(r){this===V&&t.call(G,r),n(this,F)&&n(this[F],e)&&(this[F][e]=!1),z(this,e,T(1,r))};return a&&W&&z(V,e,{configurable:!0,set:t}),q(e)}).prototype,"toString",(function(){return this._k})),R.f=Q,k.f=X,r(38).f=w.f=Z,r(51).f=J,L.f=ee,a&&!r(30)&&o(V,"propertyIsEnumerable",J,!0),p.f=function(e){return q(f(e))}),s(s.G+s.W+s.F*!K,{Symbol:x});for(var te="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),re=0;te.length>re;)f(te[re++]);for(var ie=O(f.store),ne=0;ie.length>ne;)g(ie[ne++]);s(s.S+s.F*!K,"Symbol",{for:function(e){return n(U,e+="")?U[e]:U[e]=x(e)},keyFor:function(e){if(!Y(e))throw TypeError(e+" is not a symbol!");for(var t in U)if(U[t]===e)return t},useSetter:function(){W=!0},useSimple:function(){W=!1}}),s(s.S+s.F*!K,"Object",{create:function(e,t){return void 0===t?A(e):$(A(e),t)},defineProperty:X,defineProperties:$,getOwnPropertyDescriptor:Q,getOwnPropertyNames:Z,getOwnPropertySymbols:ee});var ae=u((function(){L.f(1)}));s(s.S+s.F*ae,"Object",{getOwnPropertySymbols:function(e){return L.f(E(e))}}),P&&s(s.S+s.F*(!K||u((function(){var e=x();return"[null]"!=M([e])||"{}"!=M({a:e})||"{}"!=M(Object(e))}))),"JSON",{stringify:function(e){for(var t,r,i=[e],n=1;arguments.length>n;)i.push(arguments[n++]);if(r=t=i[1],(y(t)||void 0!==e)&&!Y(e))return m(t)||(t=function(e,t){if("function"==typeof r&&(t=r.call(this,e,t)),!Y(t))return t}),i[1]=t,M.apply(P,i)}}),x.prototype[N]||r(12)(x.prototype,N,x.prototype.valueOf),d(x,"Symbol"),d(Math,"Math",!0),d(i.JSON,"JSON",!0)},function(e,t,r){e.exports=r(49)("native-function-to-string",Function.toString)},function(e,t,r){var i=r(35),n=r(56),a=r(51);e.exports=function(e){var t=i(e),r=n.f;if(r)for(var s,o=r(e),l=a.f,u=0;o.length>u;)l.call(e,s=o[u++])&&t.push(s);return t}},function(e,t,r){var i=r(0);i(i.S,"Object",{create:r(37)})},function(e,t,r){var i=r(0);i(i.S+i.F*!r(7),"Object",{defineProperty:r(8).f})},function(e,t,r){var i=r(0);i(i.S+i.F*!r(7),"Object",{defineProperties:r(103)})},function(e,t,r){var i=r(16),n=r(17).f;r(26)("getOwnPropertyDescriptor",(function(){return function(e,t){return n(i(e),t)}}))},function(e,t,r){var i=r(9),n=r(18);r(26)("getPrototypeOf",(function(){return function(e){return n(i(e))}}))},function(e,t,r){var i=r(9),n=r(35);r(26)("keys",(function(){return function(e){return n(i(e))}}))},function(e,t,r){r(26)("getOwnPropertyNames",(function(){return r(104).f}))},function(e,t,r){var i=r(4),n=r(31).onFreeze;r(26)("freeze",(function(e){return function(t){return e&&i(t)?e(n(t)):t}}))},function(e,t,r){var i=r(4),n=r(31).onFreeze;r(26)("seal",(function(e){return function(t){return e&&i(t)?e(n(t)):t}}))},function(e,t,r){var i=r(4),n=r(31).onFreeze;r(26)("preventExtensions",(function(e){return function(t){return e&&i(t)?e(n(t)):t}}))},function(e,t,r){var i=r(4);r(26)("isFrozen",(function(e){return function(t){return!i(t)||!!e&&e(t)}}))},function(e,t,r){var i=r(4);r(26)("isSealed",(function(e){return function(t){return!i(t)||!!e&&e(t)}}))},function(e,t,r){var i=r(4);r(26)("isExtensible",(function(e){return function(t){return!!i(t)&&(!e||e(t))}}))},function(e,t,r){var i=r(0);i(i.S+i.F,"Object",{assign:r(105)})},function(e,t,r){var i=r(0);i(i.S,"Object",{is:r(106)})},function(e,t,r){var i=r(0);i(i.S,"Object",{setPrototypeOf:r(76).set})},function(e,t,r){"use strict";var i=r(45),n={};n[r(5)("toStringTag")]="z",n+""!="[object z]"&&r(13)(Object.prototype,"toString",(function(){return"[object "+i(this)+"]"}),!0)},function(e,t,r){var i=r(0);i(i.P,"Function",{bind:r(107)})},function(e,t,r){var i=r(8).f,n=Function.prototype,a=/^\s*function ([^ (]*)/;"name"in n||r(7)&&i(n,"name",{configurable:!0,get:function(){try{return(""+this).match(a)[1]}catch(e){return""}}})},function(e,t,r){"use strict";var i=r(4),n=r(18),a=r(5)("hasInstance"),s=Function.prototype;a in s||r(8).f(s,a,{value:function(e){if("function"!=typeof this||!i(e))return!1;if(!i(this.prototype))return e instanceof this;for(;e=n(e);)if(this.prototype===e)return!0;return!1}})},function(e,t,r){var i=r(0),n=r(109);i(i.G+i.F*(parseInt!=n),{parseInt:n})},function(e,t,r){var i=r(0),n=r(110);i(i.G+i.F*(parseFloat!=n),{parseFloat:n})},function(e,t,r){"use strict";var i=r(2),n=r(15),a=r(21),s=r(78),o=r(24),l=r(3),u=r(38).f,c=r(17).f,d=r(8).f,h=r(46).trim,f=i.Number,p=f,g=f.prototype,v="Number"==a(r(37)(g)),m="trim"in String.prototype,_=function(e){var t=o(e,!1);if("string"==typeof t&&t.length>2){var r,i,n,a=(t=m?t.trim():h(t,3)).charCodeAt(0);if(43===a||45===a){if(88===(r=t.charCodeAt(2))||120===r)return NaN}else if(48===a){switch(t.charCodeAt(1)){case 66:case 98:i=2,n=49;break;case 79:case 111:i=8,n=55;break;default:return+t}for(var s,l=t.slice(2),u=0,c=l.length;un)return NaN;return parseInt(l,i)}}return+t};if(!f(" 0o1")||!f("0b1")||f("+0x1")){f=function(e){var t=arguments.length<1?0:e,r=this;return r instanceof f&&(v?l((function(){g.valueOf.call(r)})):"Number"!=a(r))?s(new p(_(t)),r,f):_(t)};for(var y,E=r(7)?u(p):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),b=0;E.length>b;b++)n(p,y=E[b])&&!n(f,y)&&d(f,y,c(p,y));f.prototype=g,g.constructor=f,r(13)(i,"Number",f)}},function(e,t,r){"use strict";var i=r(0),n=r(22),a=r(111),s=r(79),o=1..toFixed,l=Math.floor,u=[0,0,0,0,0,0],c="Number.toFixed: incorrect invocation!",d=function(e,t){for(var r=-1,i=t;++r<6;)i+=e*u[r],u[r]=i%1e7,i=l(i/1e7)},h=function(e){for(var t=6,r=0;--t>=0;)r+=u[t],u[t]=l(r/e),r=r%e*1e7},f=function(){for(var e=6,t="";--e>=0;)if(""!==t||0===e||0!==u[e]){var r=String(u[e]);t=""===t?r:t+s.call("0",7-r.length)+r}return t},p=function(e,t,r){return 0===t?r:t%2==1?p(e,t-1,r*e):p(e*e,t/2,r)};i(i.P+i.F*(!!o&&("0.000"!==8e-5.toFixed(3)||"1"!==.9.toFixed(0)||"1.25"!==1.255.toFixed(2)||"1000000000000000128"!==(0xde0b6b3a7640080).toFixed(0))||!r(3)((function(){o.call({})}))),"Number",{toFixed:function(e){var t,r,i,o,l=a(this,c),u=n(e),g="",v="0";if(u<0||u>20)throw RangeError(c);if(l!=l)return"NaN";if(l<=-1e21||l>=1e21)return String(l);if(l<0&&(g="-",l=-l),l>1e-21)if(r=(t=function(e){for(var t=0,r=e;r>=4096;)t+=12,r/=4096;for(;r>=2;)t+=1,r/=2;return t}(l*p(2,69,1))-69)<0?l*p(2,-t,1):l/p(2,t,1),r*=4503599627370496,(t=52-t)>0){for(d(0,r),i=u;i>=7;)d(1e7,0),i-=7;for(d(p(10,i,1),0),i=t-1;i>=23;)h(1<<23),i-=23;h(1<0?g+((o=v.length)<=u?"0."+s.call("0",u-o)+v:v.slice(0,o-u)+"."+v.slice(o-u)):g+v}})},function(e,t,r){"use strict";var i=r(0),n=r(3),a=r(111),s=1..toPrecision;i(i.P+i.F*(n((function(){return"1"!==s.call(1,void 0)}))||!n((function(){s.call({})}))),"Number",{toPrecision:function(e){var t=a(this,"Number#toPrecision: incorrect invocation!");return void 0===e?s.call(t):s.call(t,e)}})},function(e,t,r){var i=r(0);i(i.S,"Number",{EPSILON:Math.pow(2,-52)})},function(e,t,r){var i=r(0),n=r(2).isFinite;i(i.S,"Number",{isFinite:function(e){return"number"==typeof e&&n(e)}})},function(e,t,r){var i=r(0);i(i.S,"Number",{isInteger:r(112)})},function(e,t,r){var i=r(0);i(i.S,"Number",{isNaN:function(e){return e!=e}})},function(e,t,r){var i=r(0),n=r(112),a=Math.abs;i(i.S,"Number",{isSafeInteger:function(e){return n(e)&&a(e)<=9007199254740991}})},function(e,t,r){var i=r(0);i(i.S,"Number",{MAX_SAFE_INTEGER:9007199254740991})},function(e,t,r){var i=r(0);i(i.S,"Number",{MIN_SAFE_INTEGER:-9007199254740991})},function(e,t,r){var i=r(0),n=r(110);i(i.S+i.F*(Number.parseFloat!=n),"Number",{parseFloat:n})},function(e,t,r){var i=r(0),n=r(109);i(i.S+i.F*(Number.parseInt!=n),"Number",{parseInt:n})},function(e,t,r){var i=r(0),n=r(113),a=Math.sqrt,s=Math.acosh;i(i.S+i.F*!(s&&710==Math.floor(s(Number.MAX_VALUE))&&s(1/0)==1/0),"Math",{acosh:function(e){return(e=+e)<1?NaN:e>94906265.62425156?Math.log(e)+Math.LN2:n(e-1+a(e-1)*a(e+1))}})},function(e,t,r){var i=r(0),n=Math.asinh;i(i.S+i.F*!(n&&1/n(0)>0),"Math",{asinh:function e(t){return isFinite(t=+t)&&0!=t?t<0?-e(-t):Math.log(t+Math.sqrt(t*t+1)):t}})},function(e,t,r){var i=r(0),n=Math.atanh;i(i.S+i.F*!(n&&1/n(-0)<0),"Math",{atanh:function(e){return 0==(e=+e)?e:Math.log((1+e)/(1-e))/2}})},function(e,t,r){var i=r(0),n=r(80);i(i.S,"Math",{cbrt:function(e){return n(e=+e)*Math.pow(Math.abs(e),1/3)}})},function(e,t,r){var i=r(0);i(i.S,"Math",{clz32:function(e){return(e>>>=0)?31-Math.floor(Math.log(e+.5)*Math.LOG2E):32}})},function(e,t,r){var i=r(0),n=Math.exp;i(i.S,"Math",{cosh:function(e){return(n(e=+e)+n(-e))/2}})},function(e,t,r){var i=r(0),n=r(81);i(i.S+i.F*(n!=Math.expm1),"Math",{expm1:n})},function(e,t,r){var i=r(0);i(i.S,"Math",{fround:r(114)})},function(e,t,r){var i=r(0),n=Math.abs;i(i.S,"Math",{hypot:function(e,t){for(var r,i,a=0,s=0,o=arguments.length,l=0;s0?(i=r/l)*i:r;return l===1/0?1/0:l*Math.sqrt(a)}})},function(e,t,r){var i=r(0),n=Math.imul;i(i.S+i.F*r(3)((function(){return-5!=n(4294967295,5)||2!=n.length})),"Math",{imul:function(e,t){var r=+e,i=+t,n=65535&r,a=65535&i;return 0|n*a+((65535&r>>>16)*a+n*(65535&i>>>16)<<16>>>0)}})},function(e,t,r){var i=r(0);i(i.S,"Math",{log10:function(e){return Math.log(e)*Math.LOG10E}})},function(e,t,r){var i=r(0);i(i.S,"Math",{log1p:r(113)})},function(e,t,r){var i=r(0);i(i.S,"Math",{log2:function(e){return Math.log(e)/Math.LN2}})},function(e,t,r){var i=r(0);i(i.S,"Math",{sign:r(80)})},function(e,t,r){var i=r(0),n=r(81),a=Math.exp;i(i.S+i.F*r(3)((function(){return-2e-17!=!Math.sinh(-2e-17)})),"Math",{sinh:function(e){return Math.abs(e=+e)<1?(n(e)-n(-e))/2:(a(e-1)-a(-e-1))*(Math.E/2)}})},function(e,t,r){var i=r(0),n=r(81),a=Math.exp;i(i.S,"Math",{tanh:function(e){var t=n(e=+e),r=n(-e);return t==1/0?1:r==1/0?-1:(t-r)/(a(e)+a(-e))}})},function(e,t,r){var i=r(0);i(i.S,"Math",{trunc:function(e){return(e>0?Math.floor:Math.ceil)(e)}})},function(e,t,r){var i=r(0),n=r(36),a=String.fromCharCode,s=String.fromCodePoint;i(i.S+i.F*(!!s&&1!=s.length),"String",{fromCodePoint:function(e){for(var t,r=[],i=arguments.length,s=0;i>s;){if(t=+arguments[s++],n(t,1114111)!==t)throw RangeError(t+" is not a valid code point");r.push(t<65536?a(t):a(55296+((t-=65536)>>10),t%1024+56320))}return r.join("")}})},function(e,t,r){var i=r(0),n=r(16),a=r(6);i(i.S,"String",{raw:function(e){for(var t=n(e.raw),r=a(t.length),i=arguments.length,s=[],o=0;r>o;)s.push(String(t[o++])),o=t.length?{value:void 0,done:!0}:(e=i(t,r),this._i+=e.length,{value:e,done:!1})}))},function(e,t,r){"use strict";var i=r(0),n=r(58)(!1);i(i.P,"String",{codePointAt:function(e){return n(this,e)}})},function(e,t,r){"use strict";var i=r(0),n=r(6),a=r(84),s="".endsWith;i(i.P+i.F*r(85)("endsWith"),"String",{endsWith:function(e){var t=a(this,e,"endsWith"),r=arguments.length>1?arguments[1]:void 0,i=n(t.length),o=void 0===r?i:Math.min(n(r),i),l=String(e);return s?s.call(t,l,o):t.slice(o-l.length,o)===l}})},function(e,t,r){"use strict";var i=r(0),n=r(84);i(i.P+i.F*r(85)("includes"),"String",{includes:function(e){return!!~n(this,e,"includes").indexOf(e,arguments.length>1?arguments[1]:void 0)}})},function(e,t,r){var i=r(0);i(i.P,"String",{repeat:r(79)})},function(e,t,r){"use strict";var i=r(0),n=r(6),a=r(84),s="".startsWith;i(i.P+i.F*r(85)("startsWith"),"String",{startsWith:function(e){var t=a(this,e,"startsWith"),r=n(Math.min(arguments.length>1?arguments[1]:void 0,t.length)),i=String(e);return s?s.call(t,i,r):t.slice(r,r+i.length)===i}})},function(e,t,r){"use strict";r(14)("anchor",(function(e){return function(t){return e(this,"a","name",t)}}))},function(e,t,r){"use strict";r(14)("big",(function(e){return function(){return e(this,"big","","")}}))},function(e,t,r){"use strict";r(14)("blink",(function(e){return function(){return e(this,"blink","","")}}))},function(e,t,r){"use strict";r(14)("bold",(function(e){return function(){return e(this,"b","","")}}))},function(e,t,r){"use strict";r(14)("fixed",(function(e){return function(){return e(this,"tt","","")}}))},function(e,t,r){"use strict";r(14)("fontcolor",(function(e){return function(t){return e(this,"font","color",t)}}))},function(e,t,r){"use strict";r(14)("fontsize",(function(e){return function(t){return e(this,"font","size",t)}}))},function(e,t,r){"use strict";r(14)("italics",(function(e){return function(){return e(this,"i","","")}}))},function(e,t,r){"use strict";r(14)("link",(function(e){return function(t){return e(this,"a","href",t)}}))},function(e,t,r){"use strict";r(14)("small",(function(e){return function(){return e(this,"small","","")}}))},function(e,t,r){"use strict";r(14)("strike",(function(e){return function(){return e(this,"strike","","")}}))},function(e,t,r){"use strict";r(14)("sub",(function(e){return function(){return e(this,"sub","","")}}))},function(e,t,r){"use strict";r(14)("sup",(function(e){return function(){return e(this,"sup","","")}}))},function(e,t,r){var i=r(0);i(i.S,"Date",{now:function(){return(new Date).getTime()}})},function(e,t,r){"use strict";var i=r(0),n=r(9),a=r(24);i(i.P+i.F*r(3)((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})})),"Date",{toJSON:function(e){var t=n(this),r=a(t);return"number"!=typeof r||isFinite(r)?t.toISOString():null}})},function(e,t,r){var i=r(0),n=r(223);i(i.P+i.F*(Date.prototype.toISOString!==n),"Date",{toISOString:n})},function(e,t,r){"use strict";var i=r(3),n=Date.prototype.getTime,a=Date.prototype.toISOString,s=function(e){return e>9?e:"0"+e};e.exports=i((function(){return"0385-07-25T07:06:39.999Z"!=a.call(new Date(-50000000000001))}))||!i((function(){a.call(new Date(NaN))}))?function(){if(!isFinite(n.call(this)))throw RangeError("Invalid time value");var e=this,t=e.getUTCFullYear(),r=e.getUTCMilliseconds(),i=t<0?"-":t>9999?"+":"";return i+("00000"+Math.abs(t)).slice(i?-6:-4)+"-"+s(e.getUTCMonth()+1)+"-"+s(e.getUTCDate())+"T"+s(e.getUTCHours())+":"+s(e.getUTCMinutes())+":"+s(e.getUTCSeconds())+"."+(r>99?r:"0"+s(r))+"Z"}:a},function(e,t,r){var i=Date.prototype,n=i.toString,a=i.getTime;new Date(NaN)+""!="Invalid Date"&&r(13)(i,"toString",(function(){var e=a.call(this);return e==e?n.call(this):"Invalid Date"}))},function(e,t,r){var i=r(5)("toPrimitive"),n=Date.prototype;i in n||r(12)(n,i,r(226))},function(e,t,r){"use strict";var i=r(1),n=r(24);e.exports=function(e){if("string"!==e&&"number"!==e&&"default"!==e)throw TypeError("Incorrect hint");return n(i(this),"number"!=e)}},function(e,t,r){var i=r(0);i(i.S,"Array",{isArray:r(57)})},function(e,t,r){"use strict";var i=r(20),n=r(0),a=r(9),s=r(115),o=r(86),l=r(6),u=r(87),c=r(88);n(n.S+n.F*!r(60)((function(e){Array.from(e)})),"Array",{from:function(e){var t,r,n,d,h=a(e),f="function"==typeof this?this:Array,p=arguments.length,g=p>1?arguments[1]:void 0,v=void 0!==g,m=0,_=c(h);if(v&&(g=i(g,p>2?arguments[2]:void 0,2)),null==_||f==Array&&o(_))for(r=new f(t=l(h.length));t>m;m++)u(r,m,v?g(h[m],m):h[m]);else for(d=_.call(h),r=new f;!(n=d.next()).done;m++)u(r,m,v?s(d,g,[n.value,m],!0):n.value);return r.length=m,r}})},function(e,t,r){"use strict";var i=r(0),n=r(87);i(i.S+i.F*r(3)((function(){function e(){}return!(Array.of.call(e)instanceof e)})),"Array",{of:function(){for(var e=0,t=arguments.length,r=new("function"==typeof this?this:Array)(t);t>e;)n(r,e,arguments[e++]);return r.length=t,r}})},function(e,t,r){"use strict";var i=r(0),n=r(16),a=[].join;i(i.P+i.F*(r(50)!=Object||!r(23)(a)),"Array",{join:function(e){return a.call(n(this),void 0===e?",":e)}})},function(e,t,r){"use strict";var i=r(0),n=r(75),a=r(21),s=r(36),o=r(6),l=[].slice;i(i.P+i.F*r(3)((function(){n&&l.call(n)})),"Array",{slice:function(e,t){var r=o(this.length),i=a(this);if(t=void 0===t?r:t,"Array"==i)return l.call(this,e,t);for(var n=s(e,r),u=s(t,r),c=o(u-n),d=new Array(c),h=0;h1&&(i=Math.min(i,a(arguments[1]))),i<0&&(i=r+i);i>=0;i--)if(i in t&&t[i]===e)return i||0;return-1}})},function(e,t,r){var i=r(0);i(i.P,"Array",{copyWithin:r(117)}),r(32)("copyWithin")},function(e,t,r){var i=r(0);i(i.P,"Array",{fill:r(90)}),r(32)("fill")},function(e,t,r){"use strict";var i=r(0),n=r(27)(5),a=!0;"find"in[]&&Array(1).find((function(){a=!1})),i(i.P+i.F*a,"Array",{find:function(e){return n(this,e,arguments.length>1?arguments[1]:void 0)}}),r(32)("find")},function(e,t,r){"use strict";var i=r(0),n=r(27)(6),a="findIndex",s=!0;a in[]&&Array(1)[a]((function(){s=!1})),i(i.P+i.F*s,"Array",{findIndex:function(e){return n(this,e,arguments.length>1?arguments[1]:void 0)}}),r(32)(a)},function(e,t,r){r(39)("Array")},function(e,t,r){var i=r(2),n=r(78),a=r(8).f,s=r(38).f,o=r(59),l=r(52),u=i.RegExp,c=u,d=u.prototype,h=/a/g,f=/a/g,p=new u(h)!==h;if(r(7)&&(!p||r(3)((function(){return f[r(5)("match")]=!1,u(h)!=h||u(f)==f||"/a/i"!=u(h,"i")})))){u=function(e,t){var r=this instanceof u,i=o(e),a=void 0===t;return!r&&i&&e.constructor===u&&a?e:n(p?new c(i&&!a?e.source:e,t):c((i=e instanceof u)?e.source:e,i&&a?l.call(e):t),r?this:d,u)};for(var g=function(e){e in u||a(u,e,{configurable:!0,get:function(){return c[e]},set:function(t){c[e]=t}})},v=s(c),m=0;v.length>m;)g(v[m++]);d.constructor=u,u.prototype=d,r(13)(i,"RegExp",u)}r(39)("RegExp")},function(e,t,r){"use strict";r(120);var i=r(1),n=r(52),a=r(7),s=/./.toString,o=function(e){r(13)(RegExp.prototype,"toString",e,!0)};r(3)((function(){return"/a/b"!=s.call({source:"a",flags:"b"})}))?o((function(){var e=i(this);return"/".concat(e.source,"/","flags"in e?e.flags:!a&&e instanceof RegExp?n.call(e):void 0)})):"toString"!=s.name&&o((function(){return s.call(this)}))},function(e,t,r){"use strict";var i=r(1),n=r(6),a=r(93),s=r(61);r(62)("match",1,(function(e,t,r,o){return[function(r){var i=e(this),n=null==r?void 0:r[t];return void 0!==n?n.call(r,i):new RegExp(r)[t](String(i))},function(e){var t=o(r,e,this);if(t.done)return t.value;var l=i(e),u=String(this);if(!l.global)return s(l,u);var c=l.unicode;l.lastIndex=0;for(var d,h=[],f=0;null!==(d=s(l,u));){var p=String(d[0]);h[f]=p,""===p&&(l.lastIndex=a(u,n(l.lastIndex),c)),f++}return 0===f?null:h}]}))},function(e,t,r){"use strict";var i=r(1),n=r(9),a=r(6),s=r(22),o=r(93),l=r(61),u=Math.max,c=Math.min,d=Math.floor,h=/\$([$&`']|\d\d?|<[^>]*>)/g,f=/\$([$&`']|\d\d?)/g;r(62)("replace",2,(function(e,t,r,p){return[function(i,n){var a=e(this),s=null==i?void 0:i[t];return void 0!==s?s.call(i,a,n):r.call(String(a),i,n)},function(e,t){var n=p(r,e,this,t);if(n.done)return n.value;var d=i(e),h=String(this),f="function"==typeof t;f||(t=String(t));var v=d.global;if(v){var m=d.unicode;d.lastIndex=0}for(var _=[];;){var y=l(d,h);if(null===y)break;if(_.push(y),!v)break;""===String(y[0])&&(d.lastIndex=o(h,a(d.lastIndex),m))}for(var E,b="",S=0,T=0;T<_.length;T++){y=_[T];for(var A=String(y[0]),w=u(c(s(y.index),h.length),0),R=[],L=1;L=S&&(b+=h.slice(S,w)+D,S=w+A.length)}return b+h.slice(S)}];function g(e,t,i,a,s,o){var l=i+e.length,u=a.length,c=f;return void 0!==s&&(s=n(s),c=h),r.call(o,c,(function(r,n){var o;switch(n.charAt(0)){case"$":return"$";case"&":return e;case"`":return t.slice(0,i);case"'":return t.slice(l);case"<":o=s[n.slice(1,-1)];break;default:var c=+n;if(0===c)return r;if(c>u){var h=d(c/10);return 0===h?r:h<=u?void 0===a[h-1]?n.charAt(1):a[h-1]+n.charAt(1):r}o=a[c-1]}return void 0===o?"":o}))}}))},function(e,t,r){"use strict";var i=r(1),n=r(106),a=r(61);r(62)("search",1,(function(e,t,r,s){return[function(r){var i=e(this),n=null==r?void 0:r[t];return void 0!==n?n.call(r,i):new RegExp(r)[t](String(i))},function(e){var t=s(r,e,this);if(t.done)return t.value;var o=i(e),l=String(this),u=o.lastIndex;n(u,0)||(o.lastIndex=0);var c=a(o,l);return n(o.lastIndex,u)||(o.lastIndex=u),null===c?-1:c.index}]}))},function(e,t,r){"use strict";var i=r(59),n=r(1),a=r(53),s=r(93),o=r(6),l=r(61),u=r(92),c=r(3),d=Math.min,h=[].push,f="length",p=!c((function(){RegExp(4294967295,"y")}));r(62)("split",2,(function(e,t,r,c){var g;return g="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1)[f]||2!="ab".split(/(?:ab)*/)[f]||4!=".".split(/(.?)(.?)/)[f]||".".split(/()()/)[f]>1||"".split(/.?/)[f]?function(e,t){var n=String(this);if(void 0===e&&0===t)return[];if(!i(e))return r.call(n,e,t);for(var a,s,o,l=[],c=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),d=0,p=void 0===t?4294967295:t>>>0,g=new RegExp(e.source,c+"g");(a=u.call(g,n))&&!((s=g.lastIndex)>d&&(l.push(n.slice(d,a.index)),a[f]>1&&a.index=p));)g.lastIndex===a.index&&g.lastIndex++;return d===n[f]?!o&&g.test("")||l.push(""):l.push(n.slice(d)),l[f]>p?l.slice(0,p):l}:"0".split(void 0,0)[f]?function(e,t){return void 0===e&&0===t?[]:r.call(this,e,t)}:r,[function(r,i){var n=e(this),a=null==r?void 0:r[t];return void 0!==a?a.call(r,n,i):g.call(String(n),r,i)},function(e,t){var i=c(g,e,this,t,g!==r);if(i.done)return i.value;var u=n(e),h=String(this),f=a(u,RegExp),v=u.unicode,m=(u.ignoreCase?"i":"")+(u.multiline?"m":"")+(u.unicode?"u":"")+(p?"y":"g"),_=new f(p?u:"^(?:"+u.source+")",m),y=void 0===t?4294967295:t>>>0;if(0===y)return[];if(0===h.length)return null===l(_,h)?[h]:[];for(var E=0,b=0,S=[];ba;)s(r[a++]);e._c=[],e._n=!1,t&&!e._h&&P(e)}))}},P=function(e){m.call(l,(function(){var t,r,i,n=e._v,a=M(e);if(a&&(t=E((function(){k?A.emit("unhandledRejection",n,e):(r=l.onunhandledrejection)?r({promise:e,reason:n}):(i=l.console)&&i.error&&i.error("Unhandled promise rejection",n)})),e._h=k||M(e)?2:1),e._a=void 0,a&&t.e)throw t.v}))},M=function(e){return 1!==e._h&&0===(e._a||e._c).length},F=function(e){m.call(l,(function(){var t;k?A.emit("rejectionHandled",e):(t=l.onrejectionhandled)&&t({promise:e,reason:e._v})}))},N=function(e){var t=this;t._d||(t._d=!0,(t=t._w||t)._v=e,t._s=2,t._a||(t._a=t._c.slice()),x(t,!0))},B=function(e){var t,r=this;if(!r._d){r._d=!0,r=r._w||r;try{if(r===e)throw T("Promise can't be resolved itself");(t=I(e))?_((function(){var i={_w:r,_d:!1};try{t.call(e,u(B,i,1),u(N,i,1))}catch(e){N.call(i,e)}})):(r._v=e,r._s=1,x(r,!1))}catch(e){N.call({_w:r,_d:!1},e)}}};C||(L=function(e){p(this,L,"Promise","_h"),f(e),i.call(this);try{e(u(B,this,1),u(N,this,1))}catch(e){N.call(this,e)}},(i=function(e){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=r(42)(L.prototype,{then:function(e,t){var r=D(v(this,L));return r.ok="function"!=typeof e||e,r.fail="function"==typeof t&&t,r.domain=k?A.domain:void 0,this._c.push(r),this._a&&this._a.push(r),this._s&&x(this,!1),r.promise},catch:function(e){return this.then(void 0,e)}}),a=function(){var e=new i;this.promise=e,this.resolve=u(B,e,1),this.reject=u(N,e,1)},y.f=D=function(e){return e===L||e===s?new a(e):n(e)}),d(d.G+d.W+d.F*!C,{Promise:L}),r(44)(L,"Promise"),r(39)("Promise"),s=r(19).Promise,d(d.S+d.F*!C,"Promise",{reject:function(e){var t=D(this);return(0,t.reject)(e),t.promise}}),d(d.S+d.F*(o||!C),"Promise",{resolve:function(e){return S(o&&this===s?L:this,e)}}),d(d.S+d.F*!(C&&r(60)((function(e){L.all(e).catch(O)}))),"Promise",{all:function(e){var t=this,r=D(t),i=r.resolve,n=r.reject,a=E((function(){var r=[],a=0,s=1;g(e,!1,(function(e){var o=a++,l=!1;r.push(void 0),s++,t.resolve(e).then((function(e){l||(l=!0,r[o]=e,--s||i(r))}),n)})),--s||i(r)}));return a.e&&n(a.v),r.promise},race:function(e){var t=this,r=D(t),i=r.reject,n=E((function(){g(e,!1,(function(e){t.resolve(e).then(r.resolve,i)}))}));return n.e&&i(n.v),r.promise}})},function(e,t,r){"use strict";var i=r(127),n=r(43);r(64)("WeakSet",(function(e){return function(){return e(this,arguments.length>0?arguments[0]:void 0)}}),{add:function(e){return i.def(n(this,"WeakSet"),e,!0)}},i,!1,!0)},function(e,t,r){"use strict";var i=r(0),n=r(65),a=r(97),s=r(1),o=r(36),l=r(6),u=r(4),c=r(2).ArrayBuffer,d=r(53),h=a.ArrayBuffer,f=a.DataView,p=n.ABV&&c.isView,g=h.prototype.slice,v=n.VIEW;i(i.G+i.W+i.F*(c!==h),{ArrayBuffer:h}),i(i.S+i.F*!n.CONSTR,"ArrayBuffer",{isView:function(e){return p&&p(e)||u(e)&&v in e}}),i(i.P+i.U+i.F*r(3)((function(){return!new h(2).slice(1,void 0).byteLength})),"ArrayBuffer",{slice:function(e,t){if(void 0!==g&&void 0===t)return g.call(s(this),e);for(var r=s(this).byteLength,i=o(e,r),n=o(void 0===t?r:t,r),a=new(d(this,h))(l(n-i)),u=new f(this),c=new f(a),p=0;i=t.length)return{value:void 0,done:!0}}while(!((e=t[this._i++])in this._t));return{value:e,done:!1}})),i(i.S,"Reflect",{enumerate:function(e){return new a(e)}})},function(e,t,r){var i=r(17),n=r(18),a=r(15),s=r(0),o=r(4),l=r(1);s(s.S,"Reflect",{get:function e(t,r){var s,u,c=arguments.length<3?t:arguments[2];return l(t)===c?t[r]:(s=i.f(t,r))?a(s,"value")?s.value:void 0!==s.get?s.get.call(c):void 0:o(u=n(t))?e(u,r,c):void 0}})},function(e,t,r){var i=r(17),n=r(0),a=r(1);n(n.S,"Reflect",{getOwnPropertyDescriptor:function(e,t){return i.f(a(e),t)}})},function(e,t,r){var i=r(0),n=r(18),a=r(1);i(i.S,"Reflect",{getPrototypeOf:function(e){return n(a(e))}})},function(e,t,r){var i=r(0);i(i.S,"Reflect",{has:function(e,t){return t in e}})},function(e,t,r){var i=r(0),n=r(1),a=Object.isExtensible;i(i.S,"Reflect",{isExtensible:function(e){return n(e),!a||a(e)}})},function(e,t,r){var i=r(0);i(i.S,"Reflect",{ownKeys:r(129)})},function(e,t,r){var i=r(0),n=r(1),a=Object.preventExtensions;i(i.S,"Reflect",{preventExtensions:function(e){n(e);try{return a&&a(e),!0}catch(e){return!1}}})},function(e,t,r){var i=r(8),n=r(17),a=r(18),s=r(15),o=r(0),l=r(33),u=r(1),c=r(4);o(o.S,"Reflect",{set:function e(t,r,o){var d,h,f=arguments.length<4?t:arguments[3],p=n.f(u(t),r);if(!p){if(c(h=a(t)))return e(h,r,o,f);p=l(0)}if(s(p,"value")){if(!1===p.writable||!c(f))return!1;if(d=n.f(f,r)){if(d.get||d.set||!1===d.writable)return!1;d.value=o,i.f(f,r,d)}else i.f(f,r,l(0,o));return!0}return void 0!==p.set&&(p.set.call(f,o),!0)}})},function(e,t,r){var i=r(0),n=r(76);n&&i(i.S,"Reflect",{setPrototypeOf:function(e,t){n.check(e,t);try{return n.set(e,t),!0}catch(e){return!1}}})},function(e,t,r){"use strict";var i=r(0),n=r(55)(!0);i(i.P,"Array",{includes:function(e){return n(this,e,arguments.length>1?arguments[1]:void 0)}}),r(32)("includes")},function(e,t,r){"use strict";var i=r(0),n=r(130),a=r(9),s=r(6),o=r(10),l=r(89);i(i.P,"Array",{flatMap:function(e){var t,r,i=a(this);return o(e),t=s(i.length),r=l(i,0),n(r,i,i,t,0,1,e,arguments[1]),r}}),r(32)("flatMap")},function(e,t,r){"use strict";var i=r(0),n=r(130),a=r(9),s=r(6),o=r(22),l=r(89);i(i.P,"Array",{flatten:function(){var e=arguments[0],t=a(this),r=s(t.length),i=l(t,0);return n(i,t,t,r,0,void 0===e?1:o(e)),i}}),r(32)("flatten")},function(e,t,r){"use strict";var i=r(0),n=r(58)(!0);i(i.P,"String",{at:function(e){return n(this,e)}})},function(e,t,r){"use strict";var i=r(0),n=r(131),a=r(63),s=/Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(a);i(i.P+i.F*s,"String",{padStart:function(e){return n(this,e,arguments.length>1?arguments[1]:void 0,!0)}})},function(e,t,r){"use strict";var i=r(0),n=r(131),a=r(63),s=/Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(a);i(i.P+i.F*s,"String",{padEnd:function(e){return n(this,e,arguments.length>1?arguments[1]:void 0,!1)}})},function(e,t,r){"use strict";r(46)("trimLeft",(function(e){return function(){return e(this,1)}}),"trimStart")},function(e,t,r){"use strict";r(46)("trimRight",(function(e){return function(){return e(this,2)}}),"trimEnd")},function(e,t,r){"use strict";var i=r(0),n=r(25),a=r(6),s=r(59),o=r(52),l=RegExp.prototype,u=function(e,t){this._r=e,this._s=t};r(83)(u,"RegExp String",(function(){var e=this._r.exec(this._s);return{value:e,done:null===e}})),i(i.P,"String",{matchAll:function(e){if(n(this),!s(e))throw TypeError(e+" is not a regexp!");var t=String(this),r="flags"in l?String(e.flags):o.call(e),i=new RegExp(e.source,~r.indexOf("g")?r:"g"+r);return i.lastIndex=a(e.lastIndex),new u(i,t)}})},function(e,t,r){r(72)("asyncIterator")},function(e,t,r){r(72)("observable")},function(e,t,r){var i=r(0),n=r(129),a=r(16),s=r(17),o=r(87);i(i.S,"Object",{getOwnPropertyDescriptors:function(e){for(var t,r,i=a(e),l=s.f,u=n(i),c={},d=0;u.length>d;)void 0!==(r=l(i,t=u[d++]))&&o(c,t,r);return c}})},function(e,t,r){var i=r(0),n=r(132)(!1);i(i.S,"Object",{values:function(e){return n(e)}})},function(e,t,r){var i=r(0),n=r(132)(!0);i(i.S,"Object",{entries:function(e){return n(e)}})},function(e,t,r){"use strict";var i=r(0),n=r(9),a=r(10),s=r(8);r(7)&&i(i.P+r(66),"Object",{__defineGetter__:function(e,t){s.f(n(this),e,{get:a(t),enumerable:!0,configurable:!0})}})},function(e,t,r){"use strict";var i=r(0),n=r(9),a=r(10),s=r(8);r(7)&&i(i.P+r(66),"Object",{__defineSetter__:function(e,t){s.f(n(this),e,{set:a(t),enumerable:!0,configurable:!0})}})},function(e,t,r){"use strict";var i=r(0),n=r(9),a=r(24),s=r(18),o=r(17).f;r(7)&&i(i.P+r(66),"Object",{__lookupGetter__:function(e){var t,r=n(this),i=a(e,!0);do{if(t=o(r,i))return t.get}while(r=s(r))}})},function(e,t,r){"use strict";var i=r(0),n=r(9),a=r(24),s=r(18),o=r(17).f;r(7)&&i(i.P+r(66),"Object",{__lookupSetter__:function(e){var t,r=n(this),i=a(e,!0);do{if(t=o(r,i))return t.set}while(r=s(r))}})},function(e,t,r){var i=r(0);i(i.P+i.R,"Map",{toJSON:r(133)("Map")})},function(e,t,r){var i=r(0);i(i.P+i.R,"Set",{toJSON:r(133)("Set")})},function(e,t,r){r(67)("Map")},function(e,t,r){r(67)("Set")},function(e,t,r){r(67)("WeakMap")},function(e,t,r){r(67)("WeakSet")},function(e,t,r){r(68)("Map")},function(e,t,r){r(68)("Set")},function(e,t,r){r(68)("WeakMap")},function(e,t,r){r(68)("WeakSet")},function(e,t,r){var i=r(0);i(i.G,{global:r(2)})},function(e,t,r){var i=r(0);i(i.S,"System",{global:r(2)})},function(e,t,r){var i=r(0),n=r(21);i(i.S,"Error",{isError:function(e){return"Error"===n(e)}})},function(e,t,r){var i=r(0);i(i.S,"Math",{clamp:function(e,t,r){return Math.min(r,Math.max(t,e))}})},function(e,t,r){var i=r(0);i(i.S,"Math",{DEG_PER_RAD:Math.PI/180})},function(e,t,r){var i=r(0),n=180/Math.PI;i(i.S,"Math",{degrees:function(e){return e*n}})},function(e,t,r){var i=r(0),n=r(135),a=r(114);i(i.S,"Math",{fscale:function(e,t,r,i,s){return a(n(e,t,r,i,s))}})},function(e,t,r){var i=r(0);i(i.S,"Math",{iaddh:function(e,t,r,i){var n=e>>>0,a=r>>>0;return(t>>>0)+(i>>>0)+((n&a|(n|a)&~(n+a>>>0))>>>31)|0}})},function(e,t,r){var i=r(0);i(i.S,"Math",{isubh:function(e,t,r,i){var n=e>>>0,a=r>>>0;return(t>>>0)-(i>>>0)-((~n&a|~(n^a)&n-a>>>0)>>>31)|0}})},function(e,t,r){var i=r(0);i(i.S,"Math",{imulh:function(e,t){var r=+e,i=+t,n=65535&r,a=65535&i,s=r>>16,o=i>>16,l=(s*a>>>0)+(n*a>>>16);return s*o+(l>>16)+((n*o>>>0)+(65535&l)>>16)}})},function(e,t,r){var i=r(0);i(i.S,"Math",{RAD_PER_DEG:180/Math.PI})},function(e,t,r){var i=r(0),n=Math.PI/180;i(i.S,"Math",{radians:function(e){return e*n}})},function(e,t,r){var i=r(0);i(i.S,"Math",{scale:r(135)})},function(e,t,r){var i=r(0);i(i.S,"Math",{umulh:function(e,t){var r=+e,i=+t,n=65535&r,a=65535&i,s=r>>>16,o=i>>>16,l=(s*a>>>0)+(n*a>>>16);return s*o+(l>>>16)+((n*o>>>0)+(65535&l)>>>16)}})},function(e,t,r){var i=r(0);i(i.S,"Math",{signbit:function(e){return(e=+e)!=e?e:0==e?1/e==1/0:e>0}})},function(e,t,r){"use strict";var i=r(0),n=r(19),a=r(2),s=r(53),o=r(122);i(i.P+i.R,"Promise",{finally:function(e){var t=s(this,n.Promise||a.Promise),r="function"==typeof e;return this.then(r?function(r){return o(t,e()).then((function(){return r}))}:e,r?function(r){return o(t,e()).then((function(){throw r}))}:e)}})},function(e,t,r){"use strict";var i=r(0),n=r(96),a=r(121);i(i.S,"Promise",{try:function(e){var t=n.f(this),r=a(e);return(r.e?t.reject:t.resolve)(r.v),t.promise}})},function(e,t,r){var i=r(29),n=r(1),a=i.key,s=i.set;i.exp({defineMetadata:function(e,t,r,i){s(e,t,n(r),a(i))}})},function(e,t,r){var i=r(29),n=r(1),a=i.key,s=i.map,o=i.store;i.exp({deleteMetadata:function(e,t){var r=arguments.length<3?void 0:a(arguments[2]),i=s(n(t),r,!1);if(void 0===i||!i.delete(e))return!1;if(i.size)return!0;var l=o.get(t);return l.delete(r),!!l.size||o.delete(t)}})},function(e,t,r){var i=r(29),n=r(1),a=r(18),s=i.has,o=i.get,l=i.key,u=function(e,t,r){if(s(e,t,r))return o(e,t,r);var i=a(t);return null!==i?u(e,i,r):void 0};i.exp({getMetadata:function(e,t){return u(e,n(t),arguments.length<3?void 0:l(arguments[2]))}})},function(e,t,r){var i=r(125),n=r(134),a=r(29),s=r(1),o=r(18),l=a.keys,u=a.key,c=function(e,t){var r=l(e,t),a=o(e);if(null===a)return r;var s=c(a,t);return s.length?r.length?n(new i(r.concat(s))):s:r};a.exp({getMetadataKeys:function(e){return c(s(e),arguments.length<2?void 0:u(arguments[1]))}})},function(e,t,r){var i=r(29),n=r(1),a=i.get,s=i.key;i.exp({getOwnMetadata:function(e,t){return a(e,n(t),arguments.length<3?void 0:s(arguments[2]))}})},function(e,t,r){var i=r(29),n=r(1),a=i.keys,s=i.key;i.exp({getOwnMetadataKeys:function(e){return a(n(e),arguments.length<2?void 0:s(arguments[1]))}})},function(e,t,r){var i=r(29),n=r(1),a=r(18),s=i.has,o=i.key,l=function(e,t,r){if(s(e,t,r))return!0;var i=a(t);return null!==i&&l(e,i,r)};i.exp({hasMetadata:function(e,t){return l(e,n(t),arguments.length<3?void 0:o(arguments[2]))}})},function(e,t,r){var i=r(29),n=r(1),a=i.has,s=i.key;i.exp({hasOwnMetadata:function(e,t){return a(e,n(t),arguments.length<3?void 0:s(arguments[2]))}})},function(e,t,r){var i=r(29),n=r(1),a=r(10),s=i.key,o=i.set;i.exp({metadata:function(e,t){return function(r,i){o(e,t,(void 0!==i?n:a)(r),s(i))}}})},function(e,t,r){var i=r(0),n=r(95)(),a=r(2).process,s="process"==r(21)(a);i(i.G,{asap:function(e){var t=s&&a.domain;n(t?t.bind(e):e)}})},function(e,t,r){"use strict";var i=r(0),n=r(2),a=r(19),s=r(95)(),o=r(5)("observable"),l=r(10),u=r(1),c=r(40),d=r(42),h=r(12),f=r(41),p=f.RETURN,g=function(e){return null==e?void 0:l(e)},v=function(e){var t=e._c;t&&(e._c=void 0,t())},m=function(e){return void 0===e._o},_=function(e){m(e)||(e._o=void 0,v(e))},y=function(e,t){u(e),this._c=void 0,this._o=e,e=new E(this);try{var r=t(e),i=r;null!=r&&("function"==typeof r.unsubscribe?r=function(){i.unsubscribe()}:l(r),this._c=r)}catch(t){return void e.error(t)}m(this)&&v(this)};y.prototype=d({},{unsubscribe:function(){_(this)}});var E=function(e){this._s=e};E.prototype=d({},{next:function(e){var t=this._s;if(!m(t)){var r=t._o;try{var i=g(r.next);if(i)return i.call(r,e)}catch(e){try{_(t)}finally{throw e}}}},error:function(e){var t=this._s;if(m(t))throw e;var r=t._o;t._o=void 0;try{var i=g(r.error);if(!i)throw e;e=i.call(r,e)}catch(e){try{v(t)}finally{throw e}}return v(t),e},complete:function(e){var t=this._s;if(!m(t)){var r=t._o;t._o=void 0;try{var i=g(r.complete);e=i?i.call(r,e):void 0}catch(e){try{v(t)}finally{throw e}}return v(t),e}}});var b=function(e){c(this,b,"Observable","_f")._f=l(e)};d(b.prototype,{subscribe:function(e){return new y(e,this._f)},forEach:function(e){var t=this;return new(a.Promise||n.Promise)((function(r,i){l(e);var n=t.subscribe({next:function(t){try{return e(t)}catch(e){i(e),n.unsubscribe()}},error:i,complete:r})}))}}),d(b,{from:function(e){var t="function"==typeof this?this:b,r=g(u(e)[o]);if(r){var i=u(r.call(e));return i.constructor===t?i:new t((function(e){return i.subscribe(e)}))}return new t((function(t){var r=!1;return s((function(){if(!r){try{if(f(e,!1,(function(e){if(t.next(e),r)return p}))===p)return}catch(e){if(r)throw e;return void t.error(e)}t.complete()}})),function(){r=!0}}))},of:function(){for(var e=0,t=arguments.length,r=new Array(t);e2,n=!!i&&s.call(arguments,2);return e(i?function(){("function"==typeof t?t:Function(t)).apply(this,n)}:t,r)}};n(n.G+n.B+n.F*o,{setTimeout:l(i.setTimeout),setInterval:l(i.setInterval)})},function(e,t,r){var i=r(0),n=r(94);i(i.G+i.B,{setImmediate:n.set,clearImmediate:n.clear})},function(e,t,r){for(var i=r(91),n=r(35),a=r(13),s=r(2),o=r(12),l=r(47),u=r(5),c=u("iterator"),d=u("toStringTag"),h=l.Array,f={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},p=n(f),g=0;g=0;--n){var a=this.tryEntries[n],s=a.completion;if("root"===a.tryLoc)return r("end");if(a.tryLoc<=this.prev){var o=i.call(a,"catchLoc"),l=i.call(a,"finallyLoc");if(o&&l){if(this.prev=0;--r){var n=this.tryEntries[r];if(n.tryLoc<=this.prev&&i.call(n,"finallyLoc")&&this.prev=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),A(r),c}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var i=r.completion;if("throw"===i.type){var n=i.arg;A(r)}return n}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:R(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),c}}}function g(e,t,r,i){var n=t&&t.prototype instanceof m?t:m,a=Object.create(n.prototype),s=new w(i||[]);return a._invoke=function(e,t,r){var i="suspendedStart";return function(n,a){if("executing"===i)throw new Error("Generator is already running");if("completed"===i){if("throw"===n)throw a;return L()}for(r.method=n,r.arg=a;;){var s=r.delegate;if(s){var o=S(s,r);if(o){if(o===c)continue;return o}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===i)throw i="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);i="executing";var l=v(e,t,r);if("normal"===l.type){if(i=r.done?"completed":"suspendedYield",l.arg===c)continue;return{value:l.arg,done:r.done}}"throw"===l.type&&(i="completed",r.method="throw",r.arg=l.arg)}}}(e,r,s),a}function v(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}function m(){}function _(){}function y(){}function E(e){["next","throw","return"].forEach((function(t){e[t]=function(e){return this._invoke(t,e)}}))}function b(e){function r(t,n,a,s){var o=v(e[t],e,n);if("throw"!==o.type){var l=o.arg,u=l.value;return u&&"object"==typeof u&&i.call(u,"__await")?Promise.resolve(u.__await).then((function(e){r("next",e,a,s)}),(function(e){r("throw",e,a,s)})):Promise.resolve(u).then((function(e){l.value=e,a(l)}),s)}s(o.arg)}var n;"object"==typeof t.process&&t.process.domain&&(r=t.process.domain.bind(r)),this._invoke=function(e,t){function i(){return new Promise((function(i,n){r(e,t,i,n)}))}return n=n?n.then(i,i):i()}}function S(e,t){var r=e.iterator[t.method];if(void 0===r){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,S(e,t),"throw"===t.method))return c;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return c}var i=v(r,e.iterator,t.arg);if("throw"===i.type)return t.method="throw",t.arg=i.arg,t.delegate=null,c;var n=i.arg;return n?n.done?(t[e.resultName]=n.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,c):n:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,c)}function T(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function A(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function w(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(T,this),this.reset(!0)}function R(e){if(e){var t=e[a];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,n=function t(){for(;++r1&&void 0!==arguments[1]?arguments[1]:{};p(this,t);var i={target:null,source:null,autoplay:!1,mode:a.default.PC,currentTime:0,loop:!1,muted:!1,playbackRate:1,poster:"",volume:1,showPictureInPicture:!0,loadingNode:null,leftControls:[],rightControls:[],centerControls:[]};i.target=e;var n=g(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n.option=Object.assign({},i,r),n.video_=null,(0,d.default)()||(n.option.mode=a.default.MB),n.init(),n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),i(t,[{key:"init",value:function(){var e=this,t=this.option.target,r=this.option.source,i=this.videoTarget_=null,n=this.videoSource_=null;switch(i="string"==typeof t?document.getElementById(t):t,n=r instanceof l.default?r:new l.default({src:r}),this.option.mode){case a.default.PC:this.video_=new s.default({mode:this.option.mode,target:i,source:n,autoplay:this.option.autoplay,currentTime:this.option.currentTime,loop:this.option.loop,muted:this.option.muted,playbackRate:this.option.playbackRate,poster:this.option.poster,volume:this.option.volume,showPictureInPicture:this.option.showPictureInPicture,loadingNode:this.option.loadingNode,leftControls:this.option.leftControls,rightControls:this.option.rightControls,centerControls:this.option.centerControls});break;case a.default.MB:this.video_=new o.default({mode:this.option.mode,target:i,source:n,autoplay:this.option.autoplay,currentTime:this.option.currentTime,loop:this.option.loop,muted:this.option.muted,playbackRate:this.option.playbackRate,poster:this.option.poster,volume:this.option.volume,showPictureInPicture:this.option.showPictureInPicture,loadingNode:this.option.loadingNode,leftControls:this.option.leftControls,rightControls:this.option.rightControls,centerControls:this.option.centerControls})}this.video_.ontimeupdate_=function(t){e.dispatchEvent(c.default.CHANGE)},this.video_.onready_=function(){e.dispatchEvent(c.default.READY)},this.video_.videoEvent_=function(t){switch(e.dispatchEvent(t),t){case c.default.TIME_UPDATE:e.option.currentTime=e.video_.option.currentTime=e.video_.getCurrentTime_();break;case c.default.VOLUME_CHANGE:e.option.volume=e.video_.option.volume=e.video_.getVolume_();break;case c.default.RATE_CHANGE:e.option.playbackRate=e.video_.option.playbackRate=e.video_.getPlaybackRate_()}}}},{key:"getContainer",value:function(){return this.videoTarget_}},{key:"setPath",value:function(e){var t=this.video_;t.source_.option.blob&&t.sourceType===h.default.MP4?t.xhrBlob(e):t.video_.src=e,t.initTimes_(),t.clearBarrages_()}},{key:"setSource",value:function(e){var t=void 0;t=e instanceof l.default?e:new l.default({src:e}),this.removeSource(),this.video_.video_.load(),this.video_.addSource_(t)}},{key:"removeSource",value:function(){this.video_.video_.removeChild(this.video_.source_)}},{key:"play",value:function(){this.video_.play_()}},{key:"pause",value:function(){this.video_.pause_()}},{key:"getAllTime",value:function(){return this.video_.getAllTime_()}},{key:"getCurrentTime",value:function(){return this.video_.getCurrentTime_()}},{key:"setCurrentTime",value:function(e){this.video_.setCurrentTimeClone_(e)}},{key:"isReady",value:function(){return this.video_.isReady_()}},{key:"isEnded",value:function(){return this.video_.isEnded_()}},{key:"setLoop",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.video_.setLoop_(e)}},{key:"isLoop",value:function(){return this.video_.isLoop_()}},{key:"setMuted",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.video_.setMuted_(e)}},{key:"isMuted",value:function(){return this.video_.isMuted_()}},{key:"getNetworkState",value:function(){return this.video_.getNetworkState_()}},{key:"isPlay",value:function(){return this.video_.isPlay_()}},{key:"getPlaybackRate",value:function(){return this.video_.getPlaybackRate_()}},{key:"setPlaybackRate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;this.video_.setPlaybackRate_(e)}},{key:"setPoster",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";this.video_.setPoster_(e)}},{key:"setVolume",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;this.video_.setVolume_(e)}},{key:"getVolume",value:function(){return this.video_.getVolume_()}},{key:"addControlLeft",value:function(e){e instanceof u.default&&this.video_.addControlLeft_(e)}},{key:"addControlRight",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];e instanceof u.default&&this.video_.addControlRight_(e,t)}},{key:"addControlCenter",value:function(e){e instanceof u.default&&this.video_.addControlCenter_(e)}},{key:"fullScreen",value:function(){this.video_.fullScreen_()}},{key:"cancelFullScreen",value:function(){this.video_.cancelFullScreen_()}},{key:"addBarrage",value:function(e){this.video_.addBarrage_(e)}},{key:"clearBarrages",value:function(){this.video_.clearBarrages_()}},{key:"enterPicInPic",value:function(){this.video_.enterPicInPic_()}},{key:"leavePicInPic",value:function(){this.video_.leavePicInPic_()}}]),t}(n.default);t.default=v},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var r=0;rt?1:e>1),(a=Number(s(e[n],t)))<0?o=n+1:(l=n,u=!a);return u?o:~o},t.numberSafeCompareFunction=i,t.includes=function(e,t){return e.indexOf(t)>=0},t.linearFindNearest=function(e,t,r){var i=e.length;if(e[0]<=t)return 0;if(t<=e[i-1])return i-1;var n=void 0;if(r>0){for(n=1;n-1;i&&e.splice(r,1);return i},t.find=function(e,t){for(var r=e.length>>>0,i=void 0,n=0;n0||r&&0===a)}))}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i,n=function(){function e(e,t){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{};l(this,t);var r={target:null,source:null,autoplay:!1},i=Object.assign({},r,e);return u(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,i))}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),n(t,[{key:"setEventDefaultControl_",value:function(){var e=this,t=this.muteMenu_,r=this.mutePanel_,i=this.progressBar_,n=this.progressBtn_;t.onmouseover=function(){r.classList.remove("hide")};var a=null;t.onmouseleave=function(){a=setTimeout((function(){r.classList.add("hide"),clearTimeout(a)}),500)},r.onmouseover=function(){r.classList.remove("hide"),clearTimeout(a)},r.onmouseleave=function(){r.classList.remove("hide")},r.onclick=function(e){e.stopPropagation()},i.onmouseover=function(){i.style.height="4px"},i.onmouseout=function(){i.style.height="2px"};var s=null,l=null,u=null,c=null,d=null,h=function t(){document.removeEventListener("touchmove",f),document.removeEventListener("touchend",t),e.play_(),e.setCurrentTime_(d),e.clearBarrages_()},f=function(t){e.pause_();var r=t.targetTouches[0].clientX,i=Math.min(s,Math.max(-2,u+(r-l)))/c,a=100*i+"%";n.style.left=a,e.progressNum_.style.width=a;var h=e.getAllTime_();d=h*i,e.timeStart_.innerHTML=(0,o.formatSeconds)(d),t.preventDefault()};n.addEventListener("touchstart",(function(e){var t=e.targetTouches[0];l=t.clientX,u=n.offsetLeft,s=i.offsetWidth-n.offsetWidth,c=i.clientWidth,d=0,document.addEventListener("touchmove",f,{passive:!1}),document.addEventListener("touchend",h),e.preventDefault()}),{passive:!1})}}]),t}(s.default);t.default=c},function(e,t,r){var i;"undefined"!=typeof window&&(i=function(){return function(e){var t={};function r(i){if(t[i])return t[i].exports;var n=t[i]={i:i,l:!1,exports:{}};return e[i].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)r.d(i,n,function(t){return e[t]}.bind(null,n));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="/dist/",r(r.s="./src/hls.ts")}({"./node_modules/eventemitter3/index.js": +/*!*********************************************!*\ + !*** ./node_modules/eventemitter3/index.js ***! + \*********************************************/ +/*! no static exports found */ +/*! ModuleConcatenation bailout: Module is not an ECMAScript module */function(e,t,r){"use strict";var i=Object.prototype.hasOwnProperty,n="~";function a(){}function s(e,t,r){this.fn=e,this.context=t,this.once=r||!1}function o(e,t,r,i,a){if("function"!=typeof r)throw new TypeError("The listener must be a function");var o=new s(r,i||e,a),l=n?n+t:t;return e._events[l]?e._events[l].fn?e._events[l]=[e._events[l],o]:e._events[l].push(o):(e._events[l]=o,e._eventsCount++),e}function l(e,t){0==--e._eventsCount?e._events=new a:delete e._events[t]}function u(){this._events=new a,this._eventsCount=0}Object.create&&(a.prototype=Object.create(null),(new a).__proto__||(n=!1)),u.prototype.eventNames=function(){var e,t,r=[];if(0===this._eventsCount)return r;for(t in e=this._events)i.call(e,t)&&r.push(n?t.slice(1):t);return Object.getOwnPropertySymbols?r.concat(Object.getOwnPropertySymbols(e)):r},u.prototype.listeners=function(e){var t=n?n+e:e,r=this._events[t];if(!r)return[];if(r.fn)return[r.fn];for(var i=0,a=r.length,s=new Array(a);i0}),!1)}e.exports=function(e,t){t=t||{};var n={main:r.m},o=t.all?{main:Object.keys(n.main)}:function(e,t){for(var r={main:[t]},i={main:[]},n={main:{}};s(r);)for(var o=Object.keys(r),l=0;l>>8^255&v^99,e[f]=v,t[v]=f;var m=h[f],_=h[m],y=h[_],E=257*h[v]^16843008*v;i[f]=E<<24|E>>>8,n[f]=E<<16|E>>>16,a[f]=E<<8|E>>>24,s[f]=E,E=16843009*y^65537*_^257*m^16843008*f,l[v]=E<<24|E>>>8,u[v]=E<<16|E>>>16,c[v]=E<<8|E>>>24,d[v]=E,f?(f=m^h[h[h[y^m]]],p^=h[h[p]]):f=p=1}},t.expandKey=function(e){for(var t=this.uint8ArrayToUint32Array_(e),r=!0,i=0;i>>5}function h(e,t){return!!(t+1=e.length)return!1;var i=d(e,t);if(i<=r)return!1;var n=t+i;if(n===e.length||n+1>>6),!((l=(60&t[r+2])>>>2)>p.length-1))return c=(1&t[r+2])<<2,c|=(192&t[r+3])>>>6,o.logger.log("manifest codec:"+a+",ADTS data:type:"+s+",sampleingIndex:"+l+"["+p[l]+"Hz],channelConfig:"+c),/firefox/i.test(h)?l>=6?(s=5,d=new Array(4),u=l-3):(s=2,d=new Array(2),u=l):-1!==h.indexOf("android")?(s=2,d=new Array(2),u=l):(s=5,d=new Array(4),a&&(-1!==a.indexOf("mp4a.40.29")||-1!==a.indexOf("mp4a.40.5"))||!a&&l>=6?u=l-3:((a&&-1!==a.indexOf("mp4a.40.2")&&(l>=6&&1===c||/vivaldi/i.test(h))||!a&&1===c)&&(s=2,d=new Array(2)),u=l)),d[0]=s<<3,d[0]|=(14&l)>>1,d[1]|=(1&l)<<7,d[1]|=c<<3,5===s&&(d[1]|=(14&u)>>1,d[2]=(1&u)<<7,d[2]|=8,d[3]=0),{config:d,samplerate:p[l],channelCount:c,codec:"mp4a.40."+s,manifestCodec:f};e.trigger(i.default.ERROR,{type:n.ErrorTypes.MEDIA_ERROR,details:n.ErrorDetails.FRAG_PARSING_ERROR,fatal:!0,reason:"invalid ADTS sampling index:"+l})}(t,r,a,s);e.config=l.config,e.samplerate=l.samplerate,e.channelCount=l.channelCount,e.codec=l.codec,e.manifestCodec=l.manifestCodec,o.logger.log("parsed codec:"+e.codec+",rate:"+l.samplerate+",nb channel:"+l.channelCount)}}function g(e){return 9216e4/e}function v(e,t,r,i,n){var a=function(e,t,r,i,n){var a,s,o=e.length;if(a=c(e,t),s=d(e,t),(s-=a)>0&&t+a+s<=o)return{headerLength:a,frameLength:s,stamp:r+i*n}}(t,r,i,n,g(e.samplerate));if(a){var s=a.stamp,o=a.headerLength,l=a.frameLength,u={unit:t.subarray(r+o,r+o+l),pts:s,dts:s};return e.samples.push(u),{sample:u,length:l+o}}}var m=r("./src/demux/id3.js"),_=function(){function e(e,t,r){this.observer=e,this.config=r,this.remuxer=t}var t=e.prototype;return t.resetInitSegment=function(e,t,r,i){this._audioTrack={container:"audio/adts",type:"audio",id:0,sequenceNumber:0,isAAC:!0,samples:[],len:0,manifestCodec:t,duration:i,inputTimeScale:9e4}},t.resetTimeStamp=function(){},e.probe=function(e){if(!e)return!1;for(var t=(m.default.getID3Data(e,0)||[]).length,r=e.length;tt.length)){var a=this.parseHeader(t,r);if(a&&r+a.frameLength<=t.length){var s=i+n*(9e4*a.samplesPerFrame/a.sampleRate),o={unit:t.subarray(r,r+a.frameLength),pts:s,dts:s};return e.config=[],e.channelCount=a.channelCount,e.samplerate=a.sampleRate,e.samples.push(o),{sample:o,length:a.frameLength}}}},parseHeader:function(e,t){var r=e[t+1]>>3&3,i=e[t+1]>>1&3,n=e[t+2]>>4&15,a=e[t+2]>>2&3,s=e[t+2]>>1&1;if(1!==r&&0!==n&&15!==n&&3!==a){var o=3===r?3-i:3===i?3:4,l=1e3*E.BitratesMap[14*o+n-1],u=3===r?0:2===r?1:2,c=E.SamplingRateMap[3*u+a],d=e[t+3]>>6==3?1:2,h=E.SamplesCoefficients[r][i],f=E.BytesInSlot[i],p=8*h*f;return{sampleRate:c,channelCount:d,frameLength:parseInt(h*l/c+s,10)*f,samplesPerFrame:p}}},isHeaderPattern:function(e,t){return 255===e[t]&&224==(224&e[t+1])&&0!=(6&e[t+1])},isHeader:function(e,t){return!!(t+1e?(this.word<<=e,this.bitsAvailable-=e):(e-=this.bitsAvailable,e-=(t=e>>3)>>3,this.bytesAvailable-=t,this.loadWord(),this.word<<=e,this.bitsAvailable-=e)},t.readBits=function(e){var t=Math.min(this.bitsAvailable,e),r=this.word>>>32-t;return e>32&&o.logger.error("Cannot read more than 32 bits at a time"),this.bitsAvailable-=t,this.bitsAvailable>0?this.word<<=t:this.bytesAvailable>0&&this.loadWord(),(t=e-t)>0&&this.bitsAvailable?r<>>e))return this.word<<=e,this.bitsAvailable-=e,e;return this.loadWord(),e+this.skipLZ()},t.skipUEG=function(){this.skipBits(1+this.skipLZ())},t.skipEG=function(){this.skipBits(1+this.skipLZ())},t.readUEG=function(){var e=this.skipLZ();return this.readBits(e+1)-1},t.readEG=function(){var e=this.readUEG();return 1&e?1+e>>>1:-1*(e>>>1)},t.readBoolean=function(){return 1===this.readBits(1)},t.readUByte=function(){return this.readBits(8)},t.readUShort=function(){return this.readBits(16)},t.readUInt=function(){return this.readBits(32)},t.skipScalingList=function(e){var t,r=8,i=8;for(t=0;t=e.length)return void r();if(!(e[t].unit.length<32)){var i=this.decrypter.isSync();if(this.decryptAacSample(e,t,r,i),!i)return}}},t.getAvcEncryptedData=function(e){for(var t=16*Math.floor((e.length-48)/160)+16,r=new Int8Array(t),i=0,n=32;n<=e.length-16;n+=160,i+=16)r.set(e.subarray(n,n+16),i);return r},t.getAvcDecryptedUnit=function(e,t){t=new Uint8Array(t);for(var r=0,i=32;i<=e.length-16;i+=160,r+=16)e.set(t.subarray(r,r+16),i);return e},t.decryptAvcSample=function(e,t,r,i,n,a){var s=this.discardEPB(n.data),o=this.getAvcEncryptedData(s),l=this;this.decryptBuffer(o.buffer,(function(o){n.data=l.getAvcDecryptedUnit(s,o),a||l.decryptAvcSamples(e,t,r+1,i)}))},t.decryptAvcSamples=function(e,t,r,i){for(;;t++,r=0){if(t>=e.length)return void i();for(var n=e[t].units;!(r>=n.length);r++){var a=n[r];if(!(a.length<=48||1!==a.type&&5!==a.type)){var s=this.decrypter.isSync();if(this.decryptAvcSample(e,t,r,i,a,s),!s)return}}}},e}(),A={video:1,audio:2,id3:3,text:4},w=function(){function e(e,t,r,i){this.observer=e,this.config=r,this.typeSupported=i,this.remuxer=t,this.sampleAes=null,this.pmtUnknownTypes={}}var t=e.prototype;return t.setDecryptData=function(e){null!=e&&null!=e.key&&"SAMPLE-AES"===e.method?this.sampleAes=new T(this.observer,this.config,e,this.discardEPB):this.sampleAes=null},e.probe=function(t){var r=e._syncOffset(t);return!(r<0||(r&&o.logger.warn("MPEG2-TS detected but first sync word found @ offset "+r+", junk ahead ?"),0))},e._syncOffset=function(e){for(var t=Math.min(1e3,e.length-564),r=0;r>4>1){if((d=l+5+t[l+4])===l+188)continue}else d=l+4;switch(c){case y:u&&(T&&(h=k(T))&&O(h,!1),T={data:[],size:0}),T&&(T.data.push(t.subarray(d,l+188)),T.size+=l+188-d);break;case E:u&&(A&&(h=k(A))&&(m.isAAC?D(h):C(h)),A={data:[],size:0}),A&&(A.data.push(t.subarray(d,l+188)),A.size+=l+188-d);break;case b:u&&(w&&(h=k(w))&&I(h),w={data:[],size:0}),w&&(w.data.push(t.subarray(d,l+188)),w.size+=l+188-d);break;case 0:u&&(d+=t[d]+1),S=this._pmtId=R(t,d);break;case S:u&&(d+=t[d]+1);var P=L(t,d,!0===this.typeSupported.mpeg||!0===this.typeSupported.mp3,null!=this.sampleAes);(y=P.avc)>0&&(v.pid=y),(E=P.audio)>0&&(m.pid=E,m.isAAC=P.isAAC),(b=P.id3)>0&&(_.pid=b),p&&!g&&(o.logger.log("reparse from beginning"),p=!1,l=x-188),g=this.pmtParsed=!0;break;case 17:case 8191:break;default:p=!0}}else this.observer.trigger(i.default.ERROR,{type:n.ErrorTypes.MEDIA_ERROR,details:n.ErrorDetails.FRAG_PARSING_ERROR,fatal:!1,reason:"TS packet did not start with 0x47"});T&&(h=k(T))?(O(h,!0),v.pesData=null):v.pesData=T,A&&(h=k(A))?(m.isAAC?D(h):C(h),m.pesData=null):(A&&A.size&&o.logger.log("last AAC PES packet truncated,might overlap between fragments"),m.pesData=A),w&&(h=k(w))?(I(h),_.pesData=null):_.pesData=w,null==this.sampleAes?this.remuxer.remux(m,v,_,this._txtTrack,r,a,s):this.decryptAndRemux(m,v,_,this._txtTrack,r,a,s)},t.decryptAndRemux=function(e,t,r,i,n,a,s){if(e.samples&&e.isAAC){var o=this;this.sampleAes.decryptAacSamples(e.samples,0,(function(){o.decryptAndRemuxAvc(e,t,r,i,n,a,s)}))}else this.decryptAndRemuxAvc(e,t,r,i,n,a,s)},t.decryptAndRemuxAvc=function(e,t,r,i,n,a,s){if(t.samples){var o=this;this.sampleAes.decryptAvcSamples(t.samples,0,0,(function(){o.remuxer.remux(e,t,r,i,n,a,s)}))}else this.remuxer.remux(e,t,r,i,n,a,s)},t.destroy=function(){this._initPTS=this._initDTS=void 0,this._duration=0},t._parsePAT=function(e,t){return(31&e[t+10])<<8|e[t+11]},t._trackUnknownPmt=function(e,t,r){var i=this.pmtUnknownTypes[e]||0;return 0===i&&(this.pmtUnknownTypes[e]=0,t.call(o.logger,r)),this.pmtUnknownTypes[e]++,i},t._parsePMT=function(e,t,r,i){var n,a,s={audio:-1,avc:-1,id3:-1,isAAC:!0};for(n=t+3+((15&e[t+1])<<8|e[t+2])-4,t+=12+((15&e[t+10])<<8|e[t+11]);t1;){var h=new Uint8Array(d[0].length+d[1].length);h.set(d[0]),h.set(d[1],d[0].length),d[0]=h,d.splice(1,1)}if(1===((t=d[0])[0]<<16)+(t[1]<<8)+t[2]){if((i=(t[4]<<8)+t[5])&&i>e.size-6)return null;if(192&(r=t[7])&&((s=536870912*(14&t[9])+4194304*(255&t[10])+16384*(254&t[11])+128*(255&t[12])+(254&t[13])/2)>4294967295&&(s-=8589934592),64&r?((l=536870912*(14&t[14])+4194304*(255&t[15])+16384*(254&t[16])+128*(255&t[17])+(254&t[18])/2)>4294967295&&(l-=8589934592),s-l>54e5&&(o.logger.warn(Math.round((s-l)/9e4)+"s delta between PTS and DTS, align them"),s=l)):l=s),u=(n=t[8])+9,e.size<=u)return null;e.size-=u,a=new Uint8Array(e.size);for(var f=0,p=d.length;fg){u-=g;continue}t=t.subarray(u),g-=u,u=0}a.set(t,c),c+=g}return i&&(i-=n+3),{data:a,pts:s,dts:l,len:i}}return null},t.pushAccesUnit=function(e,t){if(e.units.length&&e.frame){var r=t.samples,i=r.length;if(isNaN(e.pts)){if(!i)return void t.dropped++;var n=r[i-1];e.pts=n.pts,e.dts=n.dts}!this.config.forceKeyFrameOnDiscontinuity||!0===e.key||t.sps&&(i||this.contiguous)?(e.id=i,r.push(e)):t.dropped++}e.debug.length&&o.logger.log(e.pts+"/"+e.dts+":"+e.debug)},t._parseAVCPES=function(e,t){var r,i,n,a=this,s=this._avcTrack,o=this._parseAVCNALu(e.data),l=this.avcSample,u=!1,c=this.pushAccesUnit.bind(this),d=function(e,t,r,i){return{key:e,pts:t,dts:r,units:[],debug:i}};e.data=null,l&&o.length&&!s.audFound&&(c(l,s),l=this.avcSample=d(!1,e.pts,e.dts,"")),o.forEach((function(t){switch(t.type){case 1:i=!0,l||(l=a.avcSample=d(!0,e.pts,e.dts,"")),l.frame=!0;var o=t.data;if(u&&o.length>4){var h=new S(o).readSliceType();2!==h&&4!==h&&7!==h&&9!==h||(l.key=!0)}break;case 5:i=!0,l||(l=a.avcSample=d(!0,e.pts,e.dts,"")),l.key=!0,l.frame=!0;break;case 6:i=!0,(r=new S(a.discardEPB(t.data))).readUByte();for(var f=0,p=0,g=!1,v=0;!g&&r.bytesAvailable>1;){f=0;do{f+=v=r.readUByte()}while(255===v);p=0;do{p+=v=r.readUByte()}while(255===v);if(4===f&&0!==r.bytesAvailable){if(g=!0,181===r.readUByte()&&49===r.readUShort()&&1195456820===r.readUInt()&&3===r.readUByte()){var _=r.readUByte(),y=31&_,E=[_,r.readUByte()];for(n=0;n16){var b=[];for(n=0;n<16;n++)b.push(r.readUByte().toString(16)),3!==n&&5!==n&&7!==n&&9!==n||b.push("-");var T=p-16,A=new Uint8Array(T);for(n=0;n0){if(t.pts>=e[r-1].pts)e.push(t);else for(var i=r-1;i>=0;i--)if(t.pts=0)i={data:e.subarray(d,a-l-1),type:n},c.push(i);else{var h=this._getLastNalUnit();if(h&&(u&&a<=4-u&&h.state&&(h.data=h.data.subarray(0,h.data.byteLength-u)),(r=a-l-1)>0)){var f=new Uint8Array(h.data.byteLength+r);f.set(h.data,0),f.set(e.subarray(0,r),h.data.byteLength),h.data=f}}a=0&&l>=0&&(i={data:e.subarray(d,s),type:n,state:l},c.push(i)),0===c.length){var p=this._getLastNalUnit();if(p){var g=new Uint8Array(p.data.byteLength+e.byteLength);g.set(p.data,0),g.set(e,p.data.byteLength),p.data=g}}return o.naluState=l,c},t.discardEPB=function(e){for(var t,r,i=e.byteLength,n=[],a=1;a1&&(o.logger.log("AAC: align PTS for overlapping frames by "+Math.round((b-m)/90)),m=b)}for(;a>24&255,t[1]=i>>16&255,t[2]=i>>8&255,t[3]=255&i,t.set(e,4),n=0,i=8;n>24&255,t>>16&255,t>>8&255,255&t,i>>24,i>>16&255,i>>8&255,255&i,n>>24,n>>16&255,n>>8&255,255&n,85,196,0,0]))},e.mdia=function(t){return e.box(e.types.mdia,e.mdhd(t.timescale,t.duration),e.hdlr(t.type),e.minf(t))},e.mfhd=function(t){return e.box(e.types.mfhd,new Uint8Array([0,0,0,0,t>>24,t>>16&255,t>>8&255,255&t]))},e.minf=function(t){return"audio"===t.type?e.box(e.types.minf,e.box(e.types.smhd,e.SMHD),e.DINF,e.stbl(t)):e.box(e.types.minf,e.box(e.types.vmhd,e.VMHD),e.DINF,e.stbl(t))},e.moof=function(t,r,i){return e.box(e.types.moof,e.mfhd(t),e.traf(i,r))},e.moov=function(t){for(var r=t.length,i=[];r--;)i[r]=e.trak(t[r]);return e.box.apply(null,[e.types.moov,e.mvhd(t[0].timescale,t[0].duration)].concat(i).concat(e.mvex(t)))},e.mvex=function(t){for(var r=t.length,i=[];r--;)i[r]=e.trex(t[r]);return e.box.apply(null,[e.types.mvex].concat(i))},e.mvhd=function(t,r){r*=t;var i=Math.floor(r/(k+1)),n=Math.floor(r%(k+1)),a=new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,t>>24&255,t>>16&255,t>>8&255,255&t,i>>24,i>>16&255,i>>8&255,255&i,n>>24,n>>16&255,n>>8&255,255&n,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]);return e.box(e.types.mvhd,a)},e.sdtp=function(t){var r,i,n=t.samples||[],a=new Uint8Array(4+n.length);for(i=0;i>>8&255),a.push(255&n),a=a.concat(Array.prototype.slice.call(i));for(r=0;r>>8&255),s.push(255&n),s=s.concat(Array.prototype.slice.call(i));var o=e.box(e.types.avcC,new Uint8Array([1,a[3],a[4],a[5],255,224|t.sps.length].concat(a).concat([t.pps.length]).concat(s))),l=t.width,u=t.height,c=t.pixelRatio[0],d=t.pixelRatio[1];return e.box(e.types.avc1,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,l>>8&255,255&l,u>>8&255,255&u,0,72,0,0,0,72,0,0,0,0,0,0,0,1,18,100,97,105,108,121,109,111,116,105,111,110,47,104,108,115,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,17]),o,e.box(e.types.btrt,new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192])),e.box(e.types.pasp,new Uint8Array([c>>24,c>>16&255,c>>8&255,255&c,d>>24,d>>16&255,d>>8&255,255&d])))},e.esds=function(e){var t=e.config.length;return new Uint8Array([0,0,0,0,3,23+t,0,1,0,4,15+t,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([t]).concat(e.config).concat([6,1,2]))},e.mp4a=function(t){var r=t.samplerate;return e.box(e.types.mp4a,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,t.channelCount,0,16,0,0,0,0,r>>8&255,255&r,0,0]),e.box(e.types.esds,e.esds(t)))},e.mp3=function(t){var r=t.samplerate;return e.box(e.types[".mp3"],new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,t.channelCount,0,16,0,0,0,0,r>>8&255,255&r,0,0]))},e.stsd=function(t){return"audio"===t.type?t.isAAC||"mp3"!==t.codec?e.box(e.types.stsd,e.STSD,e.mp4a(t)):e.box(e.types.stsd,e.STSD,e.mp3(t)):e.box(e.types.stsd,e.STSD,e.avc1(t))},e.tkhd=function(t){var r=t.id,i=t.duration*t.timescale,n=t.width,a=t.height,s=Math.floor(i/(k+1)),o=Math.floor(i%(k+1));return e.box(e.types.tkhd,new Uint8Array([1,0,0,7,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,r>>24&255,r>>16&255,r>>8&255,255&r,0,0,0,0,s>>24,s>>16&255,s>>8&255,255&s,o>>24,o>>16&255,o>>8&255,255&o,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,n>>8&255,255&n,0,0,a>>8&255,255&a,0,0]))},e.traf=function(t,r){var i=e.sdtp(t),n=t.id,a=Math.floor(r/(k+1)),s=Math.floor(r%(k+1));return e.box(e.types.traf,e.box(e.types.tfhd,new Uint8Array([0,0,0,0,n>>24,n>>16&255,n>>8&255,255&n])),e.box(e.types.tfdt,new Uint8Array([1,0,0,0,a>>24,a>>16&255,a>>8&255,255&a,s>>24,s>>16&255,s>>8&255,255&s])),e.trun(t,i.length+16+20+8+16+8+8),i)},e.trak=function(t){return t.duration=t.duration||4294967295,e.box(e.types.trak,e.tkhd(t),e.mdia(t))},e.trex=function(t){var r=t.id;return e.box(e.types.trex,new Uint8Array([0,0,0,0,r>>24,r>>16&255,r>>8&255,255&r,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]))},e.trun=function(t,r){var i,n,a,s,o,l,u=t.samples||[],c=u.length,d=12+16*c,h=new Uint8Array(d);for(r+=8+d,h.set([0,0,15,1,c>>>24&255,c>>>16&255,c>>>8&255,255&c,r>>>24&255,r>>>16&255,r>>>8&255,255&r],0),i=0;i>>24&255,a>>>16&255,a>>>8&255,255&a,s>>>24&255,s>>>16&255,s>>>8&255,255&s,o.isLeading<<2|o.dependsOn,o.isDependedOn<<6|o.hasRedundancy<<4|o.paddingValue<<1|o.isNonSync,61440&o.degradPrio,15&o.degradPrio,l>>>24&255,l>>>16&255,l>>>8&255,255&l],12+16*i);return e.box(e.types.trun,h)},e.initSegment=function(t){e.types||e.init();var r,i=e.moov(t);return(r=new Uint8Array(e.FTYP.byteLength+i.byteLength)).set(e.FTYP),r.set(i,e.FTYP.byteLength),r},e}();function D(e,t,r,i){void 0===r&&(r=1),void 0===i&&(i=!1);var n=e*t*r;return i?Math.round(n):n}function C(e,t){return void 0===t&&(t=!1),D(e,1e3,1/9e4,t)}function I(e,t){return void 0===t&&(t=1),D(e,9e4,1/t)}var x,P=I(10),M=I(.2),F=function(){function e(e,t,r,i){this.observer=e,this.config=t,this.typeSupported=r;var n=navigator.userAgent;this.isSafari=i&&i.indexOf("Apple")>-1&&n&&!n.match("CriOS"),this.ISGenerated=!1}var t=e.prototype;return t.destroy=function(){},t.resetTimeStamp=function(e){this._initPTS=this._initDTS=e},t.resetInitSegment=function(){this.ISGenerated=!1},t.remux=function(e,t,r,n,a,s,l){if(this.ISGenerated||this.generateIS(e,t,a),this.ISGenerated){var u=e.samples.length,c=t.samples.length,d=a,h=a;if(u&&c){var f=(a>0?e.samples[0].dts-t.samples[0].dts:e.samples[0].pts-t.samples[0].pts)/t.inputTimeScale;d+=Math.max(0,f),h+=Math.max(0,-f)}if(u){e.timescale||(o.logger.warn("regenerate InitSegment as audio detected"),this.generateIS(e,t,a));var p,g=this.remuxAudio(e,d,s,l);c&&(g&&(p=g.endPTS-g.startPTS),t.timescale||(o.logger.warn("regenerate InitSegment as video detected"),this.generateIS(e,t,a)),this.remuxVideo(t,h,s,p,l))}else if(c){var v=this.remuxVideo(t,h,s,0,l);v&&e.codec&&this.remuxEmptyAudio(e,d,s,v)}}r.samples.length&&this.remuxID3(r,a),n.samples.length&&this.remuxText(n,a),this.observer.trigger(i.default.FRAG_PARSED)},t.generateIS=function(e,t,r){var a,s,l=this.observer,u=e.samples,c=t.samples,d=this.typeSupported,h="audio/mp4",f={},p={tracks:f},g=void 0===this._initPTS;if(g&&(a=s=1/0),e.config&&u.length&&(e.timescale=e.samplerate,o.logger.log("audio sampling rate : "+e.samplerate),e.isAAC||(d.mpeg?(h="audio/mpeg",e.codec=""):d.mp3&&(e.codec="mp3")),f.audio={container:h,codec:e.codec,initSegment:!e.isAAC&&d.mpeg?new Uint8Array:O.initSegment([e]),metadata:{channelCount:e.channelCount}},g&&(a=s=u[0].pts-Math.round(e.inputTimeScale*r))),t.sps&&t.pps&&c.length){var v=t.inputTimeScale;if(t.timescale=v,f.video={container:"video/mp4",codec:t.codec,initSegment:O.initSegment([t]),metadata:{width:t.width,height:t.height}},g){var m=Math.round(v*r);a=Math.min(a,c[0].pts-m),s=Math.min(s,c[0].dts-m),this.observer.trigger(i.default.INIT_PTS_FOUND,{initPTS:a})}}else g&&f.audio&&this.observer.trigger(i.default.INIT_PTS_FOUND,{initPTS:a});Object.keys(f).length?(l.trigger(i.default.FRAG_PARSING_INIT_SEGMENT,p),this.ISGenerated=!0,g&&(this._initPTS=a,this._initDTS=s)):l.trigger(i.default.ERROR,{type:n.ErrorTypes.MEDIA_ERROR,details:n.ErrorDetails.FRAG_PARSING_ERROR,fatal:!1,reason:"no audio/video samples found"})},t.remuxVideo=function(e,t,r,a,s){var l,u,c,d,h,f=8,p=Number.POSITIVE_INFINITY,g=Number.NEGATIVE_INFINITY,v=e.timescale,m=e.samples,_=[],y=m.length,E=this._PTSNormalize,b=this._initPTS,S=this.nextAvcDts,T=this.isSafari;if(0!==y){T&&(r|=y&&S&&(s&&Math.abs(t-S/v)<.1||Math.abs(m[0].pts-S-b)R;(k||L<-1)&&(k?o.logger.warn("AVC: "+C(L,!0)+"ms ("+L+"dts) hole between fragments detected, filling it"):o.logger.warn("AVC: "+C(-L,!0)+"ms ("+L+"dts) overlapping between fragments detected"),d=S,p-=L,m[0].dts=d,m[0].pts=p,o.logger.log("Video: First PTS/DTS adjusted: "+C(p,!0)+"/"+C(d,!0)+", delta: "+C(L,!0)+" ms"))}d=Math.max(d,0);for(var D=0,I=0,x=0;x0?V-1:V].dts;if(Q.stretchShortVideoTrack){var ee=Q.maxBufferHole,te=Math.floor(ee*v),re=(a?p+a*v:this.nextAudioPts)-K.pts;re>te?((l=re-Z)<0&&(l=Z),o.logger.log("It is approximately "+C(re,!1)+" ms to the next segment; using duration "+C(l,!1)+" ms for the last video frame.")):l=Z}else l=Z}z=Math.round(K.pts-K.dts)}_.push({size:W,duration:l,cts:z,flags:{isLeading:0,isDependedOn:0,hasRedundancy:0,degradPrio:0,dependsOn:K.key?2:1,isNonSync:K.key?0:1}})}this.nextAvcDts=h+l;var ie=e.dropped;if(e.nbNalu=0,e.dropped=0,_.length&&navigator.userAgent.toLowerCase().indexOf("chrome")>-1){var ne=_[0].flags;ne.dependsOn=2,ne.isNonSync=0}e.samples=_,c=O.moof(e.sequenceNumber++,d,e),e.samples=[];var ae={data1:c,data2:u,startPTS:p/v,endPTS:(g+l)/v,startDTS:d/v,endDTS:this.nextAvcDts/v,type:"video",hasAudio:!1,hasVideo:!0,nb:_.length,dropped:ie};return this.observer.trigger(i.default.FRAG_PARSING_DATA,ae),ae}},t.remuxAudio=function(e,t,r,a){var s,l,u,c,d,h,f=e.inputTimeScale,p=e.timescale,g=f/p,v=(e.isAAC?1024:1152)*g,m=this._PTSNormalize,_=this._initPTS,y=!e.isAAC&&this.typeSupported.mpeg,E=y?0:8,b=e.samples,S=[],T=this.nextAudioPts;if(r|=b.length&&T&&(a&&Math.abs(t-T/f)<.1||Math.abs(b[0].pts-T-_)<20*v),b.forEach((function(e){e.pts=e.dts=m(e.pts-_,t*f)})),0!==(b=b.filter((function(e){return e.pts>=0}))).length){if(r||(T=a?t*f:b[0].pts),e.isAAC)for(var A=this.config.maxAudioFramesDrift,w=0,R=T;w=A*v&&k0&&H0&&((l=L.getSilentFrame(e.manifestCodec||e.codec,e.channelCount))||(l=V.subarray()),B+=W*l.length);else if(H<-12){o.logger.log("drop overlapping AAC sample, expected/parsed/delta: "+C(T,!0)+" ms / "+C(K,!0)+" ms / "+C(-H,!0)+" ms"),B-=V.byteLength;continue}K=T}if(d=K,!(B>0))return;B+=E;try{u=new Uint8Array(B)}catch(e){return void this.observer.trigger(i.default.ERROR,{type:n.ErrorTypes.MUX_ERROR,details:n.ErrorDetails.REMUX_ALLOC_ERROR,fatal:!1,bytes:B,reason:"fail allocating audio mdat "+B})}y||(new DataView(u.buffer).setUint32(0,B),u.set(O.types.mdat,4));for(var z=0;z=2&&(Y=S[N-2].duration,s.duration=Y),N){this.nextAudioPts=T=h+g*Y,e.samples=S,c=y?new Uint8Array:O.moof(e.sequenceNumber++,d/g,e),e.samples=[];var X=d/f,$=T/f,J={data1:c,data2:u,startPTS:X,endPTS:$,startDTS:X,endDTS:$,type:"audio",hasAudio:!0,hasVideo:!1,nb:N};return this.observer.trigger(i.default.FRAG_PARSING_DATA,J),J}return null}},t.remuxEmptyAudio=function(e,t,r,i){var n=e.inputTimeScale,a=n/(e.samplerate?e.samplerate:n),s=this.nextAudioPts,l=(void 0!==s?s:i.startDTS*n)+this._initDTS,u=i.endDTS*n+this._initDTS,c=1024*a,d=Math.ceil((u-l)/c),h=L.getSilentFrame(e.manifestCodec||e.codec,e.channelCount);if(o.logger.warn("remux empty Audio"),h){for(var f=[],p=0;p4294967296;)e+=r;return e},e}(),N=function(){function e(e){this.observer=e}var t=e.prototype;return t.destroy=function(){},t.resetTimeStamp=function(){},t.resetInitSegment=function(){},t.remux=function(e,t,r,n,a,s,o,l){var u=this.observer,c="";e&&(c+="audio"),t&&(c+="video"),u.trigger(i.default.FRAG_PARSING_DATA,{data1:l,startPTS:a,startDTS:a,type:c,hasAudio:!!e,hasVideo:!!t,nb:1,dropped:0}),u.trigger(i.default.FRAG_PARSED)},e}(),B=Object(l.getSelfScope)();try{x=B.performance.now.bind(B.performance)}catch(e){o.logger.debug("Unable to use Performance API on this environment"),x=B.Date.now}var U=function(){function e(e,t,r,i){this.observer=e,this.typeSupported=t,this.config=r,this.vendor=i}var t=e.prototype;return t.destroy=function(){var e=this.demuxer;e&&e.destroy()},t.push=function(e,t,r,n,s,o,l,u,c,d,h,f){var p=this;if(e.byteLength>0&&null!=t&&null!=t.key&&"AES-128"===t.method){var g=this.decrypter;null==g&&(g=this.decrypter=new a.default(this.observer,this.config));var v=x();g.decrypt(e,t.key.buffer,t.iv.buffer,(function(e){var a=x();p.observer.trigger(i.default.FRAG_DECRYPTED,{stats:{tstart:v,tdecrypt:a}}),p.pushDecrypted(new Uint8Array(e),t,new Uint8Array(r),n,s,o,l,u,c,d,h,f)}))}else this.pushDecrypted(new Uint8Array(e),t,new Uint8Array(r),n,s,o,l,u,c,d,h,f)},t.pushDecrypted=function(e,t,r,a,s,o,l,u,c,d,h,f){var p=this.demuxer;if(!p||(l||u)&&!this.probe(e)){for(var g=this.observer,v=this.typeSupported,m=this.config,E=[{demux:w,remux:F},{demux:y.default,remux:N},{demux:_,remux:F},{demux:R,remux:F}],b=0,S=E.length;b1?r-1:0),n=1;n1?r-1:0),n=1;n0)return t.subarray(i,i+n)},e._readSize=function(e,t){var r=0;return r=(127&e[t])<<21,r|=(127&e[t+1])<<14,r|=(127&e[t+2])<<7,r|=127&e[t+3]},e.getTimeStamp=function(t){for(var r=e.getID3Frames(t),i=0;i>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:c+=String.fromCharCode(a);break;case 12:case 13:o=e[d++],c+=String.fromCharCode((31&a)<<6|63&o);break;case 14:o=e[d++],l=e[d++],c+=String.fromCharCode((15&a)<<12|(63&o)<<6|(63&l)<<0)}}return c},e}();function s(){var e=Object(n.getSelfScope)();return i||void 0===e.TextDecoder||(i=new e.TextDecoder("utf-8")),i}var o=a._utf8ArrayToStr;t.default=a},"./src/demux/mp4demuxer.js": +/*!*********************************!*\ + !*** ./src/demux/mp4demuxer.js ***! + \*********************************/ +/*! exports provided: default */function(e,t,r){"use strict";r.r(t);var i=r(/*! ../utils/logger */"./src/utils/logger.js"),n=r(/*! ../events */"./src/events.js"),a=Math.pow(2,32)-1,s=function(){function e(e,t){this.observer=e,this.remuxer=t}var t=e.prototype;return t.resetTimeStamp=function(e){this.initPTS=e},t.resetInitSegment=function(t,r,i,a){if(t&&t.byteLength){var s=this.initData=e.parseInitSegment(t);null==r&&(r="mp4a.40.5"),null==i&&(i="avc1.42e01e");var o={};s.audio&&s.video?o.audiovideo={container:"video/mp4",codec:r+","+i,initSegment:a?t:null}:(s.audio&&(o.audio={container:"audio/mp4",codec:r,initSegment:a?t:null}),s.video&&(o.video={container:"video/mp4",codec:i,initSegment:a?t:null})),this.observer.trigger(n.default.FRAG_PARSING_INIT_SEGMENT,{tracks:o})}else r&&(this.audioCodec=r),i&&(this.videoCodec=i)},e.probe=function(t){return e.findBox({data:t,start:0,end:Math.min(t.length,16384)},["moof"]).length>0},e.bin2str=function(e){return String.fromCharCode.apply(null,e)},e.readUint16=function(e,t){e.data&&(t+=e.start,e=e.data);var r=e[t]<<8|e[t+1];return r<0?65536+r:r},e.readUint32=function(e,t){e.data&&(t+=e.start,e=e.data);var r=e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3];return r<0?4294967296+r:r},e.writeUint32=function(e,t,r){e.data&&(t+=e.start,e=e.data),e[t]=r>>24,e[t+1]=r>>16&255,e[t+2]=r>>8&255,e[t+3]=255&r},e.findBox=function(t,r){var i,n,a,s,o,l,u=[];if(t.data?(o=t.start,a=t.end,t=t.data):(o=0,a=t.byteLength),!r.length)return null;for(i=o;i1?i+n:a,e.bin2str(t.subarray(i+4,i+8))===r[0]&&(1===r.length?u.push({data:t,start:i+8,end:l}):(s=e.findBox({data:t,start:i+8,end:l},r.slice(1))).length&&(u=u.concat(s))),i=l;return u},e.parseSegmentIndex=function(t){var r,i=e.findBox(t,["moov"])[0],n=i?i.end:null,a=0,s=e.findBox(t,["sidx"]);if(!s||!s[0])return null;r=[];var o=(s=s[0]).data[0];a=0===o?8:16;var l=e.readUint32(s,a);a+=4,a+=0===o?8:16,a+=2;var u=s.end+0,c=e.readUint16(s,a);a+=2;for(var d=0;d>>31)return void console.warn("SIDX has hierarchical references (not supported)");var g=e.readUint32(s,h);h+=4,r.push({referenceSize:p,subsegmentDuration:g,info:{duration:g/l,start:u,end:u+p-1}}),u+=p,a=h+=4}return{earliestPresentationTime:0,timescale:l,version:o,referencesCount:c,references:r,moovEndOffset:n}},e.parseInitSegment=function(t){var r=[];return e.findBox(t,["moov","trak"]).forEach((function(t){var n=e.findBox(t,["tkhd"])[0];if(n){var a=n.data[n.start],s=0===a?12:20,o=e.readUint32(n,s),l=e.findBox(t,["mdia","mdhd"])[0];if(l){s=0===(a=l.data[l.start])?12:20;var u=e.readUint32(l,s),c=e.findBox(t,["mdia","hdlr"])[0];if(c){var d={soun:"audio",vide:"video"}[e.bin2str(c.data.subarray(c.start+8,c.start+12))];if(d){var h=e.findBox(t,["mdia","minf","stbl","stsd"]);if(h.length){h=h[0];var f=e.bin2str(h.data.subarray(h.start+12,h.start+16));i.logger.log("MP4Demuxer:"+d+":"+f+" found")}r[o]={timescale:u,type:d},r[d]={timescale:u,id:o}}}}}})),r},e.getStartDTS=function(t,r){var i,n,a;return i=e.findBox(r,["moof","traf"]),n=[].concat.apply([],i.map((function(r){return e.findBox(r,["tfhd"]).map((function(i){var n,a;return n=e.readUint32(i,4),a=t[n].timescale||9e4,e.findBox(r,["tfdt"]).map((function(t){var r,i;return r=t.data[t.start],i=e.readUint32(t,4),1===r&&(i*=Math.pow(2,32),i+=e.readUint32(t,8)),i}))[0]/a}))}))),a=Math.min.apply(null,n),isFinite(a)?a:0},e.offsetStartDTS=function(t,r,i){e.findBox(r,["moof","traf"]).map((function(r){return e.findBox(r,["tfhd"]).map((function(n){var s=e.readUint32(n,4),o=t[s].timescale||9e4;e.findBox(r,["tfdt"]).map((function(t){var r=t.data[t.start],n=e.readUint32(t,4);if(0===r)e.writeUint32(t,4,n-i*o);else{n*=Math.pow(2,32),n+=e.readUint32(t,8),n-=i*o,n=Math.max(n,0);var s=Math.floor(n/(a+1)),l=Math.floor(n%(a+1));e.writeUint32(t,4,s),e.writeUint32(t,8,l)}}))}))}))},t.append=function(t,r,i,a){var s=this.initData;s||(this.resetInitSegment(t,this.audioCodec,this.videoCodec,!1),s=this.initData);var o,l=this.initPTS;if(void 0===l){var u=e.getStartDTS(s,t);this.initPTS=l=u-r,this.observer.trigger(n.default.INIT_PTS_FOUND,{initPTS:l})}e.offsetStartDTS(s,t,l),o=e.getStartDTS(s,t),this.remuxer.remux(s.audio,s.video,null,null,o,i,a,t)},t.destroy=function(){},e}();t.default=s},"./src/errors.ts": +/*!***********************!*\ + !*** ./src/errors.ts ***! + \***********************/ +/*! exports provided: ErrorTypes, ErrorDetails */function(e,t,r){"use strict";var i,n;r.r(t),r.d(t,"ErrorTypes",(function(){return i})),r.d(t,"ErrorDetails",(function(){return n})),function(e){e.NETWORK_ERROR="networkError",e.MEDIA_ERROR="mediaError",e.KEY_SYSTEM_ERROR="keySystemError",e.MUX_ERROR="muxError",e.OTHER_ERROR="otherError"}(i||(i={})),function(e){e.KEY_SYSTEM_NO_KEYS="keySystemNoKeys",e.KEY_SYSTEM_NO_ACCESS="keySystemNoAccess",e.KEY_SYSTEM_NO_SESSION="keySystemNoSession",e.KEY_SYSTEM_LICENSE_REQUEST_FAILED="keySystemLicenseRequestFailed",e.KEY_SYSTEM_NO_INIT_DATA="keySystemNoInitData",e.MANIFEST_LOAD_ERROR="manifestLoadError",e.MANIFEST_LOAD_TIMEOUT="manifestLoadTimeOut",e.MANIFEST_PARSING_ERROR="manifestParsingError",e.MANIFEST_INCOMPATIBLE_CODECS_ERROR="manifestIncompatibleCodecsError",e.LEVEL_EMPTY_ERROR="levelEmptyError",e.LEVEL_LOAD_ERROR="levelLoadError",e.LEVEL_LOAD_TIMEOUT="levelLoadTimeOut",e.LEVEL_SWITCH_ERROR="levelSwitchError",e.AUDIO_TRACK_LOAD_ERROR="audioTrackLoadError",e.AUDIO_TRACK_LOAD_TIMEOUT="audioTrackLoadTimeOut",e.FRAG_LOAD_ERROR="fragLoadError",e.FRAG_LOAD_TIMEOUT="fragLoadTimeOut",e.FRAG_DECRYPT_ERROR="fragDecryptError",e.FRAG_PARSING_ERROR="fragParsingError",e.REMUX_ALLOC_ERROR="remuxAllocError",e.KEY_LOAD_ERROR="keyLoadError",e.KEY_LOAD_TIMEOUT="keyLoadTimeOut",e.BUFFER_ADD_CODEC_ERROR="bufferAddCodecError",e.BUFFER_APPEND_ERROR="bufferAppendError",e.BUFFER_APPENDING_ERROR="bufferAppendingError",e.BUFFER_STALLED_ERROR="bufferStalledError",e.BUFFER_FULL_ERROR="bufferFullError",e.BUFFER_SEEK_OVER_HOLE="bufferSeekOverHole",e.BUFFER_NUDGE_ON_STALL="bufferNudgeOnStall",e.INTERNAL_EXCEPTION="internalException"}(n||(n={}))},"./src/events.js": +/*!***********************!*\ + !*** ./src/events.js ***! + \***********************/ +/*! exports provided: default */function(e,t,r){"use strict";r.r(t),t.default={MEDIA_ATTACHING:"hlsMediaAttaching",MEDIA_ATTACHED:"hlsMediaAttached",MEDIA_DETACHING:"hlsMediaDetaching",MEDIA_DETACHED:"hlsMediaDetached",BUFFER_RESET:"hlsBufferReset",BUFFER_CODECS:"hlsBufferCodecs",BUFFER_CREATED:"hlsBufferCreated",BUFFER_APPENDING:"hlsBufferAppending",BUFFER_APPENDED:"hlsBufferAppended",BUFFER_EOS:"hlsBufferEos",BUFFER_FLUSHING:"hlsBufferFlushing",BUFFER_FLUSHED:"hlsBufferFlushed",MANIFEST_LOADING:"hlsManifestLoading",MANIFEST_LOADED:"hlsManifestLoaded",MANIFEST_PARSED:"hlsManifestParsed",LEVEL_SWITCHING:"hlsLevelSwitching",LEVEL_SWITCHED:"hlsLevelSwitched",LEVEL_LOADING:"hlsLevelLoading",LEVEL_LOADED:"hlsLevelLoaded",LEVEL_UPDATED:"hlsLevelUpdated",LEVEL_PTS_UPDATED:"hlsLevelPtsUpdated",LEVELS_UPDATED:"hlsLevelsUpdated",AUDIO_TRACKS_UPDATED:"hlsAudioTracksUpdated",AUDIO_TRACK_SWITCHING:"hlsAudioTrackSwitching",AUDIO_TRACK_SWITCHED:"hlsAudioTrackSwitched",AUDIO_TRACK_LOADING:"hlsAudioTrackLoading",AUDIO_TRACK_LOADED:"hlsAudioTrackLoaded",SUBTITLE_TRACKS_UPDATED:"hlsSubtitleTracksUpdated",SUBTITLE_TRACK_SWITCH:"hlsSubtitleTrackSwitch",SUBTITLE_TRACK_LOADING:"hlsSubtitleTrackLoading",SUBTITLE_TRACK_LOADED:"hlsSubtitleTrackLoaded",SUBTITLE_FRAG_PROCESSED:"hlsSubtitleFragProcessed",CUES_PARSED:"hlsCuesParsed",NON_NATIVE_TEXT_TRACKS_FOUND:"hlsNonNativeTextTracksFound",INIT_PTS_FOUND:"hlsInitPtsFound",FRAG_LOADING:"hlsFragLoading",FRAG_LOAD_PROGRESS:"hlsFragLoadProgress",FRAG_LOAD_EMERGENCY_ABORTED:"hlsFragLoadEmergencyAborted",FRAG_LOADED:"hlsFragLoaded",FRAG_DECRYPTED:"hlsFragDecrypted",FRAG_PARSING_INIT_SEGMENT:"hlsFragParsingInitSegment",FRAG_PARSING_USERDATA:"hlsFragParsingUserdata",FRAG_PARSING_METADATA:"hlsFragParsingMetadata",FRAG_PARSING_DATA:"hlsFragParsingData",FRAG_PARSED:"hlsFragParsed",FRAG_BUFFERED:"hlsFragBuffered",FRAG_CHANGED:"hlsFragChanged",FPS_DROP:"hlsFpsDrop",FPS_DROP_LEVEL_CAPPING:"hlsFpsDropLevelCapping",ERROR:"hlsError",DESTROYING:"hlsDestroying",KEY_LOADING:"hlsKeyLoading",KEY_LOADED:"hlsKeyLoaded",STREAM_STATE_TRANSITION:"hlsStreamStateTransition",LIVE_BACK_BUFFER_REACHED:"hlsLiveBackBufferReached"}},"./src/hls.ts": +/*!*********************************!*\ + !*** ./src/hls.ts + 50 modules ***! + \*********************************/ +/*! exports provided: default */ +/*! ModuleConcatenation bailout: Cannot concat with ./src/crypt/decrypter.js because of ./src/demux/demuxer-worker.js */ +/*! ModuleConcatenation bailout: Cannot concat with ./src/demux/demuxer-inline.js because of ./src/demux/demuxer-worker.js */ +/*! ModuleConcatenation bailout: Cannot concat with ./src/demux/id3.js because of ./src/demux/demuxer-worker.js */ +/*! ModuleConcatenation bailout: Cannot concat with ./src/demux/mp4demuxer.js because of ./src/demux/demuxer-worker.js */ +/*! ModuleConcatenation bailout: Cannot concat with ./src/errors.ts because of ./src/demux/demuxer-worker.js */ +/*! ModuleConcatenation bailout: Cannot concat with ./src/events.js because of ./src/demux/demuxer-worker.js */ +/*! ModuleConcatenation bailout: Cannot concat with ./src/polyfills/number.js because of ./src/demux/demuxer-worker.js */ +/*! ModuleConcatenation bailout: Cannot concat with ./src/utils/get-self-scope.js because of ./src/demux/demuxer-worker.js */ +/*! ModuleConcatenation bailout: Cannot concat with ./src/utils/logger.js because of ./src/demux/demuxer-worker.js */ +/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/eventemitter3/index.js (<- Module is not an ECMAScript module) */ +/*! ModuleConcatenation bailout: Cannot concat with ./node_modules/url-toolkit/src/url-toolkit.js (<- Module is not an ECMAScript module) */function(e,t,r){"use strict";r.r(t),r.d(t,"default",(function(){return ar}));var i={};r.r(i),r.d(i,"newCue",(function(){return ft}));var n,a,s=r("./node_modules/url-toolkit/src/url-toolkit.js"),o=r("./src/errors.ts"),l=r("./src/polyfills/number.js"),u=r("./src/events.js"),c=r("./src/utils/logger.js"),d={hlsEventGeneric:!0,hlsHandlerDestroying:!0,hlsHandlerDestroyed:!0},h=function(){function e(e){this.hls=void 0,this.handledEvents=void 0,this.useGenericHandler=void 0,this.hls=e,this.onEvent=this.onEvent.bind(this);for(var t=arguments.length,r=new Array(t>1?t-1:0),i=1;i>8*(15-r)&255;return t},n.setDecryptDataFromLevelKey=function(e,t){var r=e;return(null==e?void 0:e.method)&&e.uri&&!e.iv&&((r=new v(e.baseuri,e.reluri)).method=e.method,r.iv=this.createInitializationVector(t)),r},t=e,(r=[{key:"url",get:function(){return!this._url&&this.relurl&&(this._url=Object(s.buildAbsoluteURL)(this.baseurl,this.relurl,{alwaysNormalize:!0})),this._url},set:function(e){this._url=e}},{key:"byteRange",get:function(){return this._byteRange?this._byteRange:[]}},{key:"byteRangeStartOffset",get:function(){return this.byteRange[0]}},{key:"byteRangeEndOffset",get:function(){return this.byteRange[1]}},{key:"decryptdata",get:function(){if(!this.levelkey&&!this._decryptdata)return null;if(!this._decryptdata&&this.levelkey){var e=this.sn;"number"!=typeof e&&(this.levelkey&&"AES-128"===this.levelkey.method&&!this.levelkey.iv&&c.logger.warn('missing IV for initialization segment with method="'+this.levelkey.method+'" - compliance issue'),e=0),this._decryptdata=this.setDecryptDataFromLevelKey(this.levelkey,e)}return this._decryptdata}},{key:"endProgramDateTime",get:function(){if(null===this.programDateTime)return null;if(!Object(l.isFiniteNumber)(this.programDateTime))return null;var e=Object(l.isFiniteNumber)(this.duration)?this.duration:0;return this.programDateTime+1e3*e}},{key:"encrypted",get:function(){return!(!this.decryptdata||null===this.decryptdata.uri||null!==this.decryptdata.key)}}])&&m(t.prototype,r),i&&m(t,i),e}();function y(e,t){for(var r=0;rNumber.MAX_SAFE_INTEGER?1/0:t},t.hexadecimalInteger=function(e){if(this[e]){var t=(this[e]||"0x").slice(2);t=(1&t.length?"0":"")+t;for(var r=new Uint8Array(t.length/2),i=0;iNumber.MAX_SAFE_INTEGER?1/0:t},t.decimalFloatingPoint=function(e){return parseFloat(this[e])},t.enumeratedString=function(e){return this[e]},t.decimalResolution=function(e){var t=b.exec(this[e]);if(null!==t)return{width:parseInt(t[1],10),height:parseInt(t[2],10)}},e.parseAttrList=function(e){var t,r={};for(S.lastIndex=0;null!==(t=S.exec(e));){var i=t[2];0===i.indexOf('"')&&i.lastIndexOf('"')===i.length-1&&(i=i.slice(1,-1)),r[t[1]]=i}return r},e}(),A={audio:{a3ds:!0,"ac-3":!0,"ac-4":!0,alac:!0,alaw:!0,dra1:!0,"dts+":!0,"dts-":!0,dtsc:!0,dtse:!0,dtsh:!0,"ec-3":!0,enca:!0,g719:!0,g726:!0,m4ae:!0,mha1:!0,mha2:!0,mhm1:!0,mhm2:!0,mlpa:!0,mp4a:!0,"raw ":!0,Opus:!0,samr:!0,sawb:!0,sawp:!0,sevc:!0,sqcp:!0,ssmv:!0,twos:!0,ulaw:!0},video:{avc1:!0,avc2:!0,avc3:!0,avc4:!0,avcp:!0,drac:!0,dvav:!0,dvhe:!0,encv:!0,hev1:!0,hvc1:!0,mjp2:!0,mp4v:!0,mvc1:!0,mvc2:!0,mvc3:!0,mvc4:!0,resv:!0,rv60:!0,s263:!0,svc1:!0,svc2:!0,"vc-1":!0,vp08:!0,vp09:!0}};function w(e,t){return MediaSource.isTypeSupported((t||"video")+'/mp4;codecs="'+e+'"')}var R=/(?:#EXT-X-STREAM-INF:([^\n\r]*)[\r\n]+([^\r\n]+)|#EXT-X-SESSION-DATA:([^\n\r]*)[\r\n]+)/g,L=/#EXT-X-MEDIA:(.*)/g,k=new RegExp([/#EXTINF:\s*(\d*(?:\.\d+)?)(?:,(.*)\s+)?/.source,/|(?!#)([\S+ ?]+)/.source,/|#EXT-X-BYTERANGE:*(.+)/.source,/|#EXT-X-PROGRAM-DATE-TIME:(.+)/.source,/|#.*/.source].join(""),"g"),O=/(?:(?:#(EXTM3U))|(?:#EXT-X-(PLAYLIST-TYPE):(.+))|(?:#EXT-X-(MEDIA-SEQUENCE): *(\d+))|(?:#EXT-X-(TARGETDURATION): *(\d+))|(?:#EXT-X-(KEY):(.+))|(?:#EXT-X-(START):(.+))|(?:#EXT-X-(ENDLIST))|(?:#EXT-X-(DISCONTINUITY-SEQ)UENCE:(\d+))|(?:#EXT-X-(DIS)CONTINUITY))|(?:#EXT-X-(VERSION):(\d+))|(?:#EXT-X-(MAP):(.+))|(?:(#)([^:]*):(.*))|(?:(#)(.*))(?:.*)\r?\n?/,D=/\.(mp4|m4s|m4v|m4a)$/i,C=function(){function e(){}return e.findGroup=function(e,t){for(var r=0;r2?(t=r.shift()+".",t+=parseInt(r.shift()).toString(16),t+=("000"+parseInt(r.shift()).toString(16)).substr(-4)):t=e,t},e.resolve=function(e,t){return s.buildAbsoluteURL(t,e,{alwaysNormalize:!0})},e.parseMasterPlaylist=function(t,r){var i,n=[],a={},s=!1;function o(e,t){["video","audio"].forEach((function(r){var i=e.filter((function(e){return function(e,t){var r=A[t];return!!r&&!0===r[e.slice(0,4)]}(e,r)}));if(i.length){var n=i.filter((function(e){return 0===e.lastIndexOf("avc1",0)||0===e.lastIndexOf("mp4a",0)}));t[r+"Codec"]=n.length>0?n[0]:i[0],e=e.filter((function(e){return-1===i.indexOf(e)}))}})),t.unknownCodecs=e}for(R.lastIndex=0;null!=(i=R.exec(t));)if(i[1]){var l={},u=l.attrs=new T(i[1]);l.url=e.resolve(i[2],r);var c=u.decimalResolution("RESOLUTION");c&&(l.width=c.width,l.height=c.height),l.bitrate=u.decimalInteger("AVERAGE-BANDWIDTH")||u.decimalInteger("BANDWIDTH"),l.name=u.NAME,o([].concat((u.CODECS||"").split(/[ ,]+/)),l),l.videoCodec&&-1!==l.videoCodec.indexOf("avc1")&&(l.videoCodec=e.convertAVC1ToAVCOTI(l.videoCodec)),n.push(l)}else if(i[3]){var d=new T(i[3]);d["DATA-ID"]&&(s=!0,a[d["DATA-ID"]]=d)}return{levels:n,sessionData:s?a:null}},e.parseMasterPlaylistMedia=function(t,r,i,n){var a;void 0===n&&(n=[]);var s=[],o=0;for(L.lastIndex=0;null!==(a=L.exec(t));){var l=new T(a[1]);if(l.TYPE===i){var u={attrs:l,id:o++,groupId:l["GROUP-ID"],instreamId:l["INSTREAM-ID"],name:l.NAME||l.LANGUAGE,type:i,default:"YES"===l.DEFAULT,autoselect:"YES"===l.AUTOSELECT,forced:"YES"===l.FORCED,lang:l.LANGUAGE};if(l.URI&&(u.url=e.resolve(l.URI,r)),n.length){var c=e.findGroup(n,u.groupId);u.audioCodec=c?c.codec:n[0].codec}s.push(u)}}return s},e.parseLevelPlaylist=function(e,t,r,i,n){var a,s,o,u=0,d=0,h=new E(t),f=0,p=null,g=new _,m=null;for(k.lastIndex=0;null!==(a=k.exec(e));){var y=a[1];if(y){g.duration=parseFloat(y);var b=(" "+a[2]).slice(1);g.title=b||null,g.tagList.push(b?["INF",y,b]:["INF",y])}else if(a[3]){if(Object(l.isFiniteNumber)(g.duration)){var S=u++;g.type=i,g.start=d,o&&(g.levelkey=o),g.sn=S,g.level=r,g.cc=f,g.urlId=n,g.baseurl=t,g.relurl=(" "+a[3]).slice(1),I(g,p),h.fragments.push(g),p=g,d+=g.duration,g=new _}}else if(a[4]){var A=(" "+a[4]).slice(1);p?g.setByteRange(A,p):g.setByteRange(A)}else if(a[5])g.rawProgramDateTime=(" "+a[5]).slice(1),g.tagList.push(["PROGRAM-DATE-TIME",g.rawProgramDateTime]),null===m&&(m=h.fragments.length);else{if(!(a=a[0].match(O))){c.logger.warn("No matches on slow regex match for level playlist!");continue}for(s=1;s=0&&(o.method=C,o.key=null,o.iv=P));break;case"START":var M=new T(w).decimalFloatingPoint("TIME-OFFSET");Object(l.isFiniteNumber)(M)&&(h.startTimeOffset=M);break;case"MAP":var F=new T(w);g.relurl=F.URI,F.BYTERANGE&&g.setByteRange(F.BYTERANGE),g.baseurl=t,g.level=r,g.type=i,g.sn="initSegment",h.initSegment=g,(g=new _).rawProgramDateTime=h.initSegment.rawProgramDateTime;break;default:c.logger.warn("line parsed but not handled: "+a)}}}return(g=p)&&!g.relurl&&(h.fragments.pop(),d-=g.duration),h.totalduration=d,h.averagetargetduration=d/h.fragments.length,h.endSN=u-1,h.startCC=h.fragments[0]?h.fragments[0].cc:0,h.endCC=f,!h.initSegment&&h.fragments.length&&h.fragments.every((function(e){return D.test(e.relurl)}))&&(c.logger.warn("MP4 fragments found but no init segment (probably no MAP, incomplete M3U8), trying to fetch SIDX"),(g=new _).relurl=h.fragments[0].relurl,g.baseurl=t,g.level=r,g.type=i,g.sn="initSegment",h.initSegment=g,h.needSidxRanges=!0),m&&function(e,t){for(var r=e[t],i=t-1;i>=0;i--){var n=e[i];n.programDateTime=r.programDateTime-1e3*n.duration,r=n}}(h.fragments,m),h},e}();function I(e,t){e.rawProgramDateTime?e.programDateTime=Date.parse(e.rawProgramDateTime):(null==t?void 0:t.programDateTime)&&(e.programDateTime=t.endProgramDateTime),Object(l.isFiniteNumber)(e.programDateTime)||(e.programDateTime=null,e.rawProgramDateTime=null)}var x=window.performance,P=function(e){var t,r;function i(t){var r;return(r=e.call(this,t,u.default.MANIFEST_LOADING,u.default.LEVEL_LOADING,u.default.AUDIO_TRACK_LOADING,u.default.SUBTITLE_TRACK_LOADING)||this).loaders={},r}r=e,(t=i).prototype=Object.create(r.prototype),t.prototype.constructor=t,t.__proto__=r,i.canHaveQualityLevels=function(e){return e!==n.AUDIO_TRACK&&e!==n.SUBTITLE_TRACK},i.mapContextToLevelType=function(e){switch(e.type){case n.AUDIO_TRACK:return a.AUDIO;case n.SUBTITLE_TRACK:return a.SUBTITLE;default:return a.MAIN}},i.getResponseUrl=function(e,t){var r=e.url;return void 0!==r&&0!==r.indexOf("data:")||(r=t.url),r};var s=i.prototype;return s.createInternalLoader=function(e){var t=this.hls.config,r=t.pLoader,i=t.loader,n=new(r||i)(t);return e.loader=n,this.loaders[e.type]=n,n},s.getInternalLoader=function(e){return this.loaders[e.type]},s.resetInternalLoader=function(e){this.loaders[e]&&delete this.loaders[e]},s.destroyInternalLoaders=function(){for(var e in this.loaders){var t=this.loaders[e];t&&t.destroy(),this.resetInternalLoader(e)}},s.destroy=function(){this.destroyInternalLoaders(),e.prototype.destroy.call(this)},s.onManifestLoading=function(e){this.load({url:e.url,type:n.MANIFEST,level:0,id:null,responseType:"text"})},s.onLevelLoading=function(e){this.load({url:e.url,type:n.LEVEL,level:e.level,id:e.id,responseType:"text"})},s.onAudioTrackLoading=function(e){this.load({url:e.url,type:n.AUDIO_TRACK,level:null,id:e.id,responseType:"text"})},s.onSubtitleTrackLoading=function(e){this.load({url:e.url,type:n.SUBTITLE_TRACK,level:null,id:e.id,responseType:"text"})},s.load=function(e){var t=this.hls.config;c.logger.debug("Loading playlist of type "+e.type+", level: "+e.level+", id: "+e.id);var r,i,a,s,o=this.getInternalLoader(e);if(o){var l=o.context;if(l&&l.url===e.url)return c.logger.trace("playlist request ongoing"),!1;c.logger.warn("aborting previous loader for type: "+e.type),o.abort()}switch(e.type){case n.MANIFEST:r=t.manifestLoadingMaxRetry,i=t.manifestLoadingTimeOut,a=t.manifestLoadingRetryDelay,s=t.manifestLoadingMaxRetryTimeout;break;case n.LEVEL:r=0,s=0,a=0,i=t.levelLoadingTimeOut;break;default:r=t.levelLoadingMaxRetry,i=t.levelLoadingTimeOut,a=t.levelLoadingRetryDelay,s=t.levelLoadingMaxRetryTimeout}o=this.createInternalLoader(e);var u={timeout:i,maxRetry:r,retryDelay:a,maxRetryDelay:s},d={onSuccess:this.loadsuccess.bind(this),onError:this.loaderror.bind(this),onTimeout:this.loadtimeout.bind(this)};return c.logger.debug("Calling internal loader delegate for URL: "+e.url),o.load(e,u,d),!0},s.loadsuccess=function(e,t,r,i){if(void 0===i&&(i=null),r.isSidxRequest)return this._handleSidxRequest(e,r),void this._handlePlaylistLoaded(e,t,r,i);if(this.resetInternalLoader(r.type),"string"!=typeof e.data)throw new Error('expected responseType of "text" for PlaylistLoader');var n=e.data;t.tload=x.now(),0===n.indexOf("#EXTM3U")?n.indexOf("#EXTINF:")>0||n.indexOf("#EXT-X-TARGETDURATION:")>0?this._handleTrackOrLevelPlaylist(e,t,r,i):this._handleMasterPlaylist(e,t,r,i):this._handleManifestParsingError(e,r,"no EXTM3U delimiter",i)},s.loaderror=function(e,t,r){void 0===r&&(r=null),this._handleNetworkError(t,r,!1,e)},s.loadtimeout=function(e,t,r){void 0===r&&(r=null),this._handleNetworkError(t,r,!0)},s._handleMasterPlaylist=function(e,t,r,n){var a=this.hls,s=e.data,o=i.getResponseUrl(e,r),l=C.parseMasterPlaylist(s,o),d=l.levels,h=l.sessionData;if(d.length){var f=d.map((function(e){return{id:e.attrs.AUDIO,codec:e.audioCodec}})),p=C.parseMasterPlaylistMedia(s,o,"AUDIO",f),g=C.parseMasterPlaylistMedia(s,o,"SUBTITLES"),v=C.parseMasterPlaylistMedia(s,o,"CLOSED-CAPTIONS");if(p.length){var m=!1;p.forEach((function(e){e.url||(m=!0)})),!1===m&&d[0].audioCodec&&!d[0].attrs.AUDIO&&(c.logger.log("audio codec signaled in quality level, but no embedded audio track signaled, create one"),p.unshift({type:"main",name:"main",default:!1,autoselect:!1,forced:!1,id:-1,attrs:{},url:""}))}a.trigger(u.default.MANIFEST_LOADED,{levels:d,audioTracks:p,subtitles:g,captions:v,url:o,stats:t,networkDetails:n,sessionData:h})}else this._handleManifestParsingError(e,r,"no level found in manifest",n)},s._handleTrackOrLevelPlaylist=function(e,t,r,a){var s=this.hls,c=r.id,d=r.level,h=r.type,f=i.getResponseUrl(e,r),p=Object(l.isFiniteNumber)(c)?c:0,g=Object(l.isFiniteNumber)(d)?d:p,v=i.mapContextToLevelType(r),m=C.parseLevelPlaylist(e.data,f,g,v,p);if(m.tload=t.tload,m.fragments.length){if(h===n.MANIFEST){var _={url:f,details:m};s.trigger(u.default.MANIFEST_LOADED,{levels:[_],audioTracks:[],url:f,stats:t,networkDetails:a,sessionData:null})}if(t.tparsed=x.now(),m.needSidxRanges){var y=m.initSegment.url;this.load({url:y,isSidxRequest:!0,type:h,level:d,levelDetails:m,id:c,rangeStart:0,rangeEnd:2048,responseType:"arraybuffer"})}else r.levelDetails=m,this._handlePlaylistLoaded(e,t,r,a)}else s.trigger(u.default.ERROR,{type:o.ErrorTypes.NETWORK_ERROR,details:o.ErrorDetails.LEVEL_EMPTY_ERROR,fatal:!1,url:f,reason:"no fragments found in level",level:"number"==typeof r.level?r.level:void 0})},s._handleSidxRequest=function(e,t){if("string"==typeof e.data)throw new Error("sidx request must be made with responseType of array buffer");var r=f.default.parseSegmentIndex(new Uint8Array(e.data));if(r){var i=r.references,n=t.levelDetails;i.forEach((function(e,t){var r=e.info;if(n){var i=n.fragments[t];0===i.byteRange.length&&i.setByteRange(String(1+r.end-r.start)+"@"+String(r.start))}})),n&&n.initSegment.setByteRange(String(r.moovEndOffset)+"@0")}},s._handleManifestParsingError=function(e,t,r,i){this.hls.trigger(u.default.ERROR,{type:o.ErrorTypes.NETWORK_ERROR,details:o.ErrorDetails.MANIFEST_PARSING_ERROR,fatal:!0,url:e.url,reason:r,networkDetails:i})},s._handleNetworkError=function(e,t,r,i){var a,s;void 0===r&&(r=!1),void 0===i&&(i=null),c.logger.info("A network error occured while loading a "+e.type+"-type playlist");var l=this.getInternalLoader(e);switch(e.type){case n.MANIFEST:a=r?o.ErrorDetails.MANIFEST_LOAD_TIMEOUT:o.ErrorDetails.MANIFEST_LOAD_ERROR,s=!0;break;case n.LEVEL:a=r?o.ErrorDetails.LEVEL_LOAD_TIMEOUT:o.ErrorDetails.LEVEL_LOAD_ERROR,s=!1;break;case n.AUDIO_TRACK:a=r?o.ErrorDetails.AUDIO_TRACK_LOAD_TIMEOUT:o.ErrorDetails.AUDIO_TRACK_LOAD_ERROR,s=!1;break;default:s=!1}l&&(l.abort(),this.resetInternalLoader(e.type));var d={type:o.ErrorTypes.NETWORK_ERROR,details:a,fatal:s,url:e.url,loader:l,context:e,networkDetails:t};i&&(d.response=i),this.hls.trigger(u.default.ERROR,d)},s._handlePlaylistLoaded=function(e,t,r,a){var s=r.type,o=r.level,l=r.id,c=r.levelDetails;if(c&&c.targetduration)if(i.canHaveQualityLevels(r.type))this.hls.trigger(u.default.LEVEL_LOADED,{details:c,level:o||0,id:l||0,stats:t,networkDetails:a});else switch(s){case n.AUDIO_TRACK:this.hls.trigger(u.default.AUDIO_TRACK_LOADED,{details:c,id:l,stats:t,networkDetails:a});break;case n.SUBTITLE_TRACK:this.hls.trigger(u.default.SUBTITLE_TRACK_LOADED,{details:c,id:l,stats:t,networkDetails:a})}else this._handleManifestParsingError(e,r,"invalid target duration",a)},i}(h),M=function(e){var t,r;function i(t){var r;return(r=e.call(this,t,u.default.FRAG_LOADING)||this).loaders={},r}r=e,(t=i).prototype=Object.create(r.prototype),t.prototype.constructor=t,t.__proto__=r;var n=i.prototype;return n.destroy=function(){var t=this.loaders;for(var r in t){var i=t[r];i&&i.destroy()}this.loaders={},e.prototype.destroy.call(this)},n.onFragLoading=function(e){var t=e.frag,r=t.type,i=this.loaders,n=this.hls.config,a=n.fLoader,s=n.loader;t.loaded=0;var o,u,d,h=i[r];h&&(c.logger.warn("abort previous fragment loader for type: "+r),h.abort()),h=i[r]=t.loader=n.fLoader?new a(n):new s(n),o={url:t.url,frag:t,responseType:"arraybuffer",progressData:!1};var f=t.byteRangeStartOffset,p=t.byteRangeEndOffset;Object(l.isFiniteNumber)(f)&&Object(l.isFiniteNumber)(p)&&(o.rangeStart=f,o.rangeEnd=p),u={timeout:n.fragLoadingTimeOut,maxRetry:0,retryDelay:0,maxRetryDelay:n.fragLoadingMaxRetryTimeout},d={onSuccess:this.loadsuccess.bind(this),onError:this.loaderror.bind(this),onTimeout:this.loadtimeout.bind(this),onProgress:this.loadprogress.bind(this)},h.load(o,u,d)},n.loadsuccess=function(e,t,r,i){void 0===i&&(i=null);var n=e.data,a=r.frag;a.loader=void 0,this.loaders[a.type]=void 0,this.hls.trigger(u.default.FRAG_LOADED,{payload:n,frag:a,stats:t,networkDetails:i})},n.loaderror=function(e,t,r){void 0===r&&(r=null);var i=t.frag,n=i.loader;n&&n.abort(),this.loaders[i.type]=void 0,this.hls.trigger(u.default.ERROR,{type:o.ErrorTypes.NETWORK_ERROR,details:o.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:t.frag,response:e,networkDetails:r})},n.loadtimeout=function(e,t,r){void 0===r&&(r=null);var i=t.frag,n=i.loader;n&&n.abort(),this.loaders[i.type]=void 0,this.hls.trigger(u.default.ERROR,{type:o.ErrorTypes.NETWORK_ERROR,details:o.ErrorDetails.FRAG_LOAD_TIMEOUT,fatal:!1,frag:t.frag,networkDetails:r})},n.loadprogress=function(e,t,r,i){void 0===i&&(i=null);var n=t.frag;n.loaded=e.loaded,this.hls.trigger(u.default.FRAG_LOAD_PROGRESS,{frag:n,stats:e,networkDetails:i})},i}(h),F=function(e){var t,r;function i(t){var r;return(r=e.call(this,t,u.default.KEY_LOADING)||this).loaders={},r.decryptkey=null,r.decrypturl=null,r}r=e,(t=i).prototype=Object.create(r.prototype),t.prototype.constructor=t,t.__proto__=r;var n=i.prototype;return n.destroy=function(){for(var t in this.loaders){var r=this.loaders[t];r&&r.destroy()}this.loaders={},e.prototype.destroy.call(this)},n.onKeyLoading=function(e){var t=e.frag,r=t.type,i=this.loaders[r];if(t.decryptdata){var n=t.decryptdata.uri;if(n!==this.decrypturl||null===this.decryptkey){var a=this.hls.config;if(i&&(c.logger.warn("abort previous key loader for type:"+r),i.abort()),!n)return void c.logger.warn("key uri is falsy");t.loader=this.loaders[r]=new a.loader(a),this.decrypturl=n,this.decryptkey=null;var s={url:n,frag:t,responseType:"arraybuffer"},o={timeout:a.fragLoadingTimeOut,maxRetry:0,retryDelay:a.fragLoadingRetryDelay,maxRetryDelay:a.fragLoadingMaxRetryTimeout},l={onSuccess:this.loadsuccess.bind(this),onError:this.loaderror.bind(this),onTimeout:this.loadtimeout.bind(this)};t.loader.load(s,o,l)}else this.decryptkey&&(t.decryptdata.key=this.decryptkey,this.hls.trigger(u.default.KEY_LOADED,{frag:t}))}else c.logger.warn("Missing decryption data on fragment in onKeyLoading")},n.loadsuccess=function(e,t,r){var i=r.frag;i.decryptdata?(this.decryptkey=i.decryptdata.key=new Uint8Array(e.data),i.loader=void 0,delete this.loaders[i.type],this.hls.trigger(u.default.KEY_LOADED,{frag:i})):c.logger.error("after key load, decryptdata unset")},n.loaderror=function(e,t){var r=t.frag,i=r.loader;i&&i.abort(),delete this.loaders[r.type],this.hls.trigger(u.default.ERROR,{type:o.ErrorTypes.NETWORK_ERROR,details:o.ErrorDetails.KEY_LOAD_ERROR,fatal:!1,frag:r,response:e})},n.loadtimeout=function(e,t){var r=t.frag,i=r.loader;i&&i.abort(),delete this.loaders[r.type],this.hls.trigger(u.default.ERROR,{type:o.ErrorTypes.NETWORK_ERROR,details:o.ErrorDetails.KEY_LOAD_TIMEOUT,fatal:!1,frag:r})},i}(h),N="NOT_LOADED",B="APPENDING",U="PARTIAL",j="OK",G=function(e){var t,r;function i(t){var r;return(r=e.call(this,t,u.default.BUFFER_APPENDED,u.default.FRAG_BUFFERED,u.default.FRAG_LOADED)||this).bufferPadding=.2,r.fragments=Object.create(null),r.timeRanges=Object.create(null),r.config=t.config,r}r=e,(t=i).prototype=Object.create(r.prototype),t.prototype.constructor=t,t.__proto__=r;var n=i.prototype;return n.destroy=function(){this.fragments=Object.create(null),this.timeRanges=Object.create(null),this.config=null,h.prototype.destroy.call(this),e.prototype.destroy.call(this)},n.getBufferedFrag=function(e,t){var r=this.fragments,i=Object.keys(r).filter((function(i){var n=r[i];if(n.body.type!==t)return!1;if(!n.buffered)return!1;var a=n.body;return a.startPTS<=e&&e<=a.endPTS}));if(0===i.length)return null;var n=i.pop();return r[n].body},n.detectEvictedFragments=function(e,t){var r=this;Object.keys(this.fragments).forEach((function(i){var n=r.fragments[i];if(n&&n.buffered){var a=n.range[e];if(a)for(var s=a.time,o=0;o=i&&t<=n){a.push({startPTS:Math.max(e,r.start(o)),endPTS:Math.min(t,r.end(o))});break}if(ei)a.push({startPTS:Math.max(e,r.start(o)),endPTS:Math.min(t,r.end(o))}),s=!0;else if(t<=i)break}return{time:a,partial:s}},n.getFragmentKey=function(e){return e.type+"_"+e.level+"_"+e.urlId+"_"+e.sn},n.getPartialFragment=function(e){var t,r,i,n=this,a=null,s=0;return Object.keys(this.fragments).forEach((function(o){var l=n.fragments[o];n.isPartial(l)&&(r=l.body.startPTS-n.bufferPadding,i=l.body.endPTS+n.bufferPadding,e>=r&&e<=i&&(t=Math.min(e-r,i-e),s<=t&&(a=l.body,s=t)))})),a},n.getState=function(e){var t=this.getFragmentKey(e),r=this.fragments[t],i=N;return void 0!==r&&(i=r.buffered?!0===this.isPartial(r)?U:j:B),i},n.isPartial=function(e){return!0===e.buffered&&(void 0!==e.range.video&&!0===e.range.video.partial||void 0!==e.range.audio&&!0===e.range.audio.partial)},n.isTimeBuffered=function(e,t,r){for(var i,n,a=0;a=i&&t<=n)return!0;if(t<=i)return!1}return!1},n.onFragLoaded=function(e){var t=e.frag;Object(l.isFiniteNumber)(t.sn)&&!t.bitrateTest&&(this.fragments[this.getFragmentKey(t)]={body:t,range:Object.create(null),buffered:!1})},n.onBufferAppended=function(e){var t=this;this.timeRanges=e.timeRanges,Object.keys(this.timeRanges).forEach((function(e){var r=t.timeRanges[e];t.detectEvictedFragments(e,r)}))},n.onFragBuffered=function(e){this.detectPartialFragments(e.frag)},n.hasFragment=function(e){var t=this.getFragmentKey(e);return void 0!==this.fragments[t]},n.removeFragment=function(e){var t=this.getFragmentKey(e);delete this.fragments[t]},n.removeAllFragments=function(){this.fragments=Object.create(null)},i}(h),V={search:function(e,t){for(var r=0,i=e.length-1,n=null,a=null;r<=i;){var s=t(a=e[n=(r+i)/2|0]);if(s>0)r=n+1;else{if(!(s<0))return a;i=n-1}}return null}},K=function(){function e(){}return e.isBuffered=function(e,t){try{if(e)for(var r=e.buffered,i=0;i=r.start(i)&&t<=r.end(i))return!0}catch(e){}return!1},e.bufferInfo=function(e,t,r){try{if(e){var i,n=e.buffered,a=[];for(i=0;is&&(i[a-1].end=e[n].end):i.push(e[n])}else i.push(e[n])}else i=e;for(var o,l=0,u=t,c=t,d=0;d=h&&t1?t-1:0),i=1;it?(i.duration=a-i.start,i.duration<0&&c.logger.warn("negative duration computed for frag "+i.sn+",level "+i.level+", there should be some duration drift between playlist and fragment!")):(n.duration=i.start-a,n.duration<0&&c.logger.warn("negative duration computed for frag "+n.sn+",level "+n.level+", there should be some duration drift between playlist and fragment!")):n.start=r>t?i.start+i.duration:Math.max(i.start-n.duration,0)}function te(e,t,r,i,n,a){var s=r;if(Object(l.isFiniteNumber)(t.startPTS)){var o=Math.abs(t.startPTS-r);Object(l.isFiniteNumber)(t.deltaPTS)?t.deltaPTS=Math.max(o,t.deltaPTS):t.deltaPTS=o,s=Math.max(r,t.startPTS),r=Math.min(r,t.startPTS),i=Math.max(i,t.endPTS),n=Math.min(n,t.startDTS),a=Math.max(a,t.endDTS)}var u=r-t.start;t.start=t.startPTS=r,t.maxStartPTS=s,t.endPTS=i,t.startDTS=n,t.endDTS=a,t.duration=i-r;var c,d,h,f=t.sn;if(!e||fe.endSN)return 0;for(c=f-e.startSN,(d=e.fragments)[c]=t,h=c;h>0;h--)ee(d,h,h-1);for(h=c;hi.length))for(var a=0;ar.startCC||e&&e.cc=(e[e.length-1].endProgramDateTime||0))return null;r=r||0;for(var i=0;ie&&r.start?-1:0}function de(e,t,r){var i=1e3*Math.min(t,r.duration+(r.deltaPTS?r.deltaPTS:0));return(r.endProgramDateTime||0)-i>e}var he=function(){function e(e,t,r,i){this.config=e,this.media=t,this.fragmentTracker=r,this.hls=i,this.nudgeRetry=0,this.stallReported=!1,this.stalled=null,this.moved=!1,this.seeking=!1}var t=e.prototype;return t.poll=function(e){var t=this.config,r=this.media,i=this.stalled,n=r.currentTime,a=r.seeking,s=this.seeking&&!a,o=!this.seeking&&a;if(this.seeking=a,n===e){if((o||s)&&(this.stalled=null),!r.paused&&!r.ended&&0!==r.playbackRate&&r.buffered.length){var l=K.bufferInfo(r,n,0),u=l.len>0,d=l.nextStart||0;if(u||d){if(a){var h=l.len>2,f=!d||d-n>2&&!this.fragmentTracker.getPartialFragment(n);if(h||f)return;this.moved=!1}if(!this.moved&&this.stalled){var p=Math.max(d,l.start||0)-n;if(p>0&&p<=2)return void this._trySkipBufferHole(null)}var g=self.performance.now();if(null!==i){var v=g-i;!a&&v>=250&&this._reportStall(l.len);var m=K.bufferInfo(r,n,t.maxBufferHole);this._tryFixBufferStall(m,v)}else this.stalled=g}}}else if(this.moved=!0,null!==i){if(this.stallReported){var _=self.performance.now()-i;c.logger.warn("playback not stuck anymore @"+n+", after "+Math.round(_)+"ms"),this.stallReported=!1}this.stalled=null,this.nudgeRetry=0}},t._tryFixBufferStall=function(e,t){var r=this.config,i=this.fragmentTracker,n=this.media.currentTime,a=i.getPartialFragment(n);a&&this._trySkipBufferHole(a)||e.len>r.maxBufferHole&&t>1e3*r.highBufferWatchdogPeriod&&(c.logger.warn("Trying to nudge playhead over buffer-hole"),this.stalled=null,this._tryNudgeBuffer())},t._reportStall=function(e){var t=this.hls,r=this.media;this.stallReported||(this.stallReported=!0,c.logger.warn("Playback stalling at @"+r.currentTime+" due to low buffer (buffer="+e+")"),t.trigger(u.default.ERROR,{type:o.ErrorTypes.MEDIA_ERROR,details:o.ErrorDetails.BUFFER_STALLED_ERROR,fatal:!1,buffer:e}))},t._trySkipBufferHole=function(e){for(var t=this.config,r=this.hls,i=this.media,n=i.currentTime,a=0,s=0;s=a&&n1?i-1:0),a=1;a1&&(this.clearNextTick(),this._tickTimer=self.setTimeout(this._boundTick,0)),this._tickCallCount=0)},n.doTick=function(){},i}(h),ge="STOPPED",ve="STARTING",me="IDLE",_e="PAUSED",ye="KEY_LOADING",Ee="FRAG_LOADING",be="FRAG_LOADING_WAITING_RETRY",Se="WAITING_TRACK",Te="PARSING",Ae="PARSED",we="BUFFER_FLUSHING",Re="ENDED",Le="ERROR",ke="WAITING_INIT_PTS",Oe="WAITING_LEVEL",De=function(e){var t,r;function i(){return e.apply(this,arguments)||this}r=e,(t=i).prototype=Object.create(r.prototype),t.prototype.constructor=t,t.__proto__=r;var n=i.prototype;return n.doTick=function(){},n.startLoad=function(){},n.stopLoad=function(){var e=this.fragCurrent;e&&(e.loader&&e.loader.abort(),this.fragmentTracker.removeFragment(e)),this.demuxer&&(this.demuxer.destroy(),this.demuxer=null),this.fragCurrent=null,this.fragPrevious=null,this.clearInterval(),this.clearNextTick(),this.state=ge},n._streamEnded=function(e,t){var r=this.fragCurrent,i=this.fragmentTracker;if(!t.live&&r&&!r.backtracked&&r.sn===t.endSN&&!e.nextStart){var n=i.getState(r);return n===U||n===j}return!1},n.onMediaSeeking=function(){var e=this.config,t=this.media,r=this.mediaBuffer,i=this.state,n=t?t.currentTime:null,a=K.bufferInfo(r||t,n,this.config.maxBufferHole);if(Object(l.isFiniteNumber)(n)&&c.logger.log("media seeking to "+n.toFixed(3)),i===Ee){var s=this.fragCurrent;if(0===a.len&&s){var o=e.maxFragLookUpTolerance,u=s.start-o,d=s.start+s.duration+o;nd?(s.loader&&(c.logger.log("seeking outside of buffer while fragment load in progress, cancel fragment load"),s.loader.abort()),this.fragCurrent=null,this.fragPrevious=null,this.state=me):c.logger.log("seeking outside of buffer but within currently loaded fragment range")}}else i===Re&&(0===a.len&&(this.fragPrevious=null,this.fragCurrent=null),this.state=me);t&&(this.lastCurrentTime=n),this.loadedmetadata||(this.nextLoadPosition=this.startPosition=n),this.tick()},n.onMediaEnded=function(){this.startPosition=this.lastCurrentTime=0},n.onHandlerDestroying=function(){this.stopLoad(),e.prototype.onHandlerDestroying.call(this)},n.onHandlerDestroyed=function(){this.state=ge,this.fragmentTracker=null},n.computeLivePosition=function(e,t){var r=void 0!==this.config.liveSyncDuration?this.config.liveSyncDuration:this.config.liveSyncDurationCount*t.targetduration;return e+Math.max(0,t.totalduration-r)},i}(pe);function Ce(e,t){for(var r=0;r0&&-1===e&&(c.logger.log("override startPosition with lastCurrentTime @"+t.toFixed(3)),e=t),this.state=me,this.nextLoadPosition=this.startPosition=this.lastCurrentTime=e,this.tick()}else this.forceStartLoad=!0,this.state=ge},h.stopLoad=function(){this.forceStartLoad=!1,e.prototype.stopLoad.call(this)},h.doTick=function(){switch(this.state){case we:this.fragLoadError=0;break;case me:this._doTickIdle();break;case Oe:var e=this.levels[this.level];e&&e.details&&(this.state=me);break;case be:var t=window.performance.now(),r=this.retryDate;(!r||t>=r||this.media&&this.media.seeking)&&(c.logger.log("mediaController: retryDate reached, switch back to IDLE state"),this.state=me)}this._checkBuffer(),this._checkFragmentChanged()},h._doTickIdle=function(){var e=this.hls,t=e.config,r=this.media;if(void 0!==this.levelLastLoaded&&(r||!this.startFragRequested&&t.startFragPrefetch))if(this.altAudio&&this.audioOnly)this.demuxer.frag=null;else{var i;i=this.loadedmetadata?r.currentTime:this.nextLoadPosition;var n=e.nextLoadLevel,a=this.levels[n];if(a){var s,o=a.bitrate;s=o?Math.max(8*t.maxBufferSize/o,t.maxBufferLength):t.maxBufferLength,s=Math.min(s,t.maxMaxBufferLength);var l=i=s)){c.logger.trace("buffer length of "+h.toFixed(3)+" is below max of "+s.toFixed(3)+". checking for more payload ..."),this.level=e.nextLoadLevel=n;var f=a.details;if(!f||f.live&&this.levelLastLoaded!==n)this.state=Oe;else{if(this._streamEnded(d,f)){var p={};return this.altAudio&&(p.type="video"),this.hls.trigger(u.default.BUFFER_EOS,p),void(this.state=Re)}this._fetchPayloadOrEos(i,d,f)}}}}},h._fetchPayloadOrEos=function(e,t,r){var i=this.fragPrevious,n=(this.level,r.fragments),a=n.length;if(0!==a){var s,o=n[0].start,l=n[a-1].start+n[a-1].duration,u=t.end;if(r.initSegment&&!r.initSegment.data)s=r.initSegment;else if(r.live){var d=this.config.initialLiveManifestSize;if(ah&&h>u.currentTime&&(c.logger.log("buffer end: "+t.toFixed(3)+" is located too far from the end of live sliding playlist, reset currentTime to : "+h.toFixed(3)),u.currentTime=h),this.nextLoadPosition=h}if(e.PTSKnown&&t>i&&u&&u.readyState)return null;if(this.startFragRequested&&!e.PTSKnown&&n)if(e.hasProgramDateTime)c.logger.log("live playlist, switching playlist, load frag with same PDT: "+n.programDateTime),s=le(a,n.endProgramDateTime,o.maxFragLookUpTolerance);else{var f=n.sn+1;if(f>=e.startSN&&f<=e.endSN){var p=a[f-e.startSN];n.cc===p.cc&&(s=p,c.logger.log("live playlist, switching playlist, load frag with next SN: "+s.sn))}s||(s=V.search(a,(function(e){return n.cc-e.cc})))&&c.logger.log("live playlist, switching playlist, load frag with same CC: "+s.sn)}return s},h._findFragment=function(e,t,r,i,n,a,s){var o,l=this.hls.config;if(o=na-l.maxFragLookUpTolerance?0:l.maxFragLookUpTolerance):i[r-1]){var u=o.sn-s.startSN,d=t&&o.level===t.level,h=i[u-1],f=i[u+1];if(t&&o.sn===t.sn)if(d&&!o.backtracked)if(o.snl.maxBufferHole&&t.dropped&&u?(o=h,c.logger.warn("Previous fragment was dropped with large PTS gap between audio and video. Maybe fragment is not starting with a keyframe? Loading previous one to try to overcome this")):(o=f,c.logger.log("Re-loading fragment with SN: "+o.sn))}else o=null;else o.backtracked&&(f&&f.backtracked?(c.logger.warn("Already backtracked from fragment "+f.sn+", will not backtrack to fragment "+o.sn+". Loading fragment "+f.sn),o=f):(c.logger.warn("Loaded fragment with dropped frames, backtracking 1 segment to find a keyframe"),o.dropped=0,h?(o=h).backtracked=!0:u&&(o=null)))}return o},h._loadKey=function(e,t){c.logger.log("Loading key for "+e.sn+" of ["+t.startSN+" ,"+t.endSN+"],level "+this.level),this.state=ye,this.hls.trigger(u.default.KEY_LOADING,{frag:e})},h._loadFragment=function(e,t,r,i){var n=this.fragmentTracker.getState(e);this.fragCurrent=e,"initSegment"!==e.sn&&(this.startFragRequested=!0),Object(l.isFiniteNumber)(e.sn)&&!e.bitrateTest&&(this.nextLoadPosition=e.start+e.duration),e.backtracked||n===N||n===U?(e.autoLevel=this.hls.autoLevelEnabled,e.bitrateTest=this.bitrateTest,c.logger.log("Loading "+e.sn+" of ["+t.startSN+" ,"+t.endSN+"],level "+this.level+", currentTime:"+r.toFixed(3)+",bufferEnd:"+i.toFixed(3)),this.hls.trigger(u.default.FRAG_LOADING,{frag:e}),this.demuxer||(this.demuxer=new Q(this.hls,"main")),this.state=Ee):n===B&&this._reduceMaxBufferLength(e.duration)&&this.fragmentTracker.removeFragment(e)},h.getBufferedFrag=function(e){return this.fragmentTracker.getBufferedFrag(e,a.MAIN)},h.followingBufferedFrag=function(e){return e?this.getBufferedFrag(e.endPTS+.5):null},h._checkFragmentChanged=function(){var e,t,r=this.media;if(r&&r.readyState&&!1===r.seeking&&((t=r.currentTime)>this.lastCurrentTime&&(this.lastCurrentTime=t),K.isBuffered(r,t)?e=this.getBufferedFrag(t):K.isBuffered(r,t+.1)&&(e=this.getBufferedFrag(t+.1)),e)){var i=e;if(i!==this.fragPlaying){this.hls.trigger(u.default.FRAG_CHANGED,{frag:i});var n=i.level;this.fragPlaying&&this.fragPlaying.level===n||this.hls.trigger(u.default.LEVEL_SWITCHED,{level:n}),this.fragPlaying=i}}},h.immediateLevelSwitch=function(){if(c.logger.log("immediateLevelSwitch"),!this.immediateSwitch){this.immediateSwitch=!0;var e,t=this.media;t?(e=t.paused,t.pause()):e=!0,this.previouslyPaused=e}var r=this.fragCurrent;r&&r.loader&&r.loader.abort(),this.fragCurrent=null,this.flushMainBuffer(0,Number.POSITIVE_INFINITY)},h.immediateLevelSwitchEnd=function(){var e=this.media;e&&e.buffered.length&&(this.immediateSwitch=!1,K.isBuffered(e,e.currentTime)&&(e.currentTime-=1e-4),this.previouslyPaused||e.play())},h.nextLevelSwitch=function(){var e=this.media;if(e&&e.readyState){var t,r,i;if((r=this.getBufferedFrag(e.currentTime))&&r.startPTS>1&&this.flushMainBuffer(0,r.startPTS-1),e.paused)t=0;else{var n=this.hls.nextLoadLevel,a=this.levels[n],s=this.fragLastKbps;t=s&&this.fragCurrent?this.fragCurrent.duration*a.bitrate/(1e3*s)+1:0}if((i=this.getBufferedFrag(e.currentTime+t))&&(i=this.followingBufferedFrag(i))){var o=this.fragCurrent;o&&o.loader&&o.loader.abort(),this.fragCurrent=null,this.flushMainBuffer(i.maxStartPTS,Number.POSITIVE_INFINITY)}}},h.flushMainBuffer=function(e,t){this.state=we;var r={startOffset:e,endOffset:t};this.altAudio&&(r.type="video"),this.hls.trigger(u.default.BUFFER_FLUSHING,r)},h.onMediaAttached=function(e){var t=this.media=this.mediaBuffer=e.media;this.onvseeking=this.onMediaSeeking.bind(this),this.onvseeked=this.onMediaSeeked.bind(this),this.onvended=this.onMediaEnded.bind(this),t.addEventListener("seeking",this.onvseeking),t.addEventListener("seeked",this.onvseeked),t.addEventListener("ended",this.onvended);var r=this.config;this.levels&&r.autoStartLoad&&this.hls.startLoad(r.startPosition),this.gapController=new he(r,t,this.fragmentTracker,this.hls)},h.onMediaDetaching=function(){var e=this.media;e&&e.ended&&(c.logger.log("MSE detaching and video ended, reset startPosition"),this.startPosition=this.lastCurrentTime=0);var t=this.levels;t&&t.forEach((function(e){e.details&&e.details.fragments.forEach((function(e){e.backtracked=void 0}))})),e&&(e.removeEventListener("seeking",this.onvseeking),e.removeEventListener("seeked",this.onvseeked),e.removeEventListener("ended",this.onvended),this.onvseeking=this.onvseeked=this.onvended=null),this.fragmentTracker.removeAllFragments(),this.media=this.mediaBuffer=null,this.loadedmetadata=!1,this.stopLoad()},h.onMediaSeeked=function(){var e=this.media,t=e?e.currentTime:void 0;Object(l.isFiniteNumber)(t)&&c.logger.log("media seeked to "+t.toFixed(3)),this.tick()},h.onManifestLoading=function(){c.logger.log("trigger BUFFER_RESET"),this.hls.trigger(u.default.BUFFER_RESET),this.fragmentTracker.removeAllFragments(),this.stalled=!1,this.startPosition=this.lastCurrentTime=0},h.onManifestParsed=function(e){var t,r=!1,i=!1;e.levels.forEach((function(e){(t=e.audioCodec)&&(-1!==t.indexOf("mp4a.40.2")&&(r=!0),-1!==t.indexOf("mp4a.40.5")&&(i=!0))})),this.audioCodecSwitch=r&&i,this.audioCodecSwitch&&c.logger.log("both AAC/HE-AAC audio found in levels; declaring level codec as HE-AAC"),this.altAudio=e.altAudio,this.levels=e.levels,this.startFragRequested=!1;var n=this.config;(n.autoStartLoad||this.forceStartLoad)&&this.hls.startLoad(n.startPosition)},h.onLevelLoaded=function(e){var t=e.details,r=e.level,i=this.levels[this.levelLastLoaded],n=this.levels[r],a=t.totalduration,s=0;if(c.logger.log("level "+r+" loaded ["+t.startSN+","+t.endSN+"],duration:"+a),t.live){var o=n.details;o&&t.fragments.length>0?(re(o,t),s=t.fragments[0].start,this.liveSyncPosition=this.computeLivePosition(s,o),t.PTSKnown&&Object(l.isFiniteNumber)(s)?c.logger.log("live playlist sliding:"+s.toFixed(3)):(c.logger.log("live playlist - outdated PTS, unknown sliding"),oe(this.fragPrevious,i,t))):(c.logger.log("live playlist - first load, unknown sliding"),t.PTSKnown=!1,oe(this.fragPrevious,i,t))}else t.PTSKnown=!1;if(n.details=t,this.levelLastLoaded=r,this.hls.trigger(u.default.LEVEL_UPDATED,{details:t,level:r}),!1===this.startFragRequested){if(-1===this.startPosition||-1===this.lastCurrentTime){var d=t.startTimeOffset;Object(l.isFiniteNumber)(d)?(d<0&&(c.logger.log("negative start time offset "+d+", count from end of last fragment"),d=s+a+d),c.logger.log("start time offset found in playlist, adjust startPosition to "+d),this.startPosition=d):t.live?(this.startPosition=this.computeLivePosition(s,t),c.logger.log("configure startPosition to "+this.startPosition)):this.startPosition=0,this.lastCurrentTime=this.startPosition}this.nextLoadPosition=this.startPosition}this.state===Oe&&(this.state=me),this.tick()},h.onKeyLoaded=function(){this.state===ye&&(this.state=me,this.tick())},h.onFragLoaded=function(e){var t=this.fragCurrent,r=this.hls,i=this.levels,n=this.media,a=e.frag;if(this.state===Ee&&t&&"main"===a.type&&a.level===t.level&&a.sn===t.sn){var s=e.stats,o=i[t.level],l=o.details;if(this.bitrateTest=!1,this.stats=s,c.logger.log("Loaded "+t.sn+" of ["+l.startSN+" ,"+l.endSN+"],level "+t.level),a.bitrateTest&&r.nextLoadLevel)this.state=me,this.startFragRequested=!1,s.tparsed=s.tbuffered=window.performance.now(),r.trigger(u.default.FRAG_BUFFERED,{stats:s,frag:t,id:"main"}),this.tick();else if("initSegment"===a.sn)this.state=me,s.tparsed=s.tbuffered=window.performance.now(),l.initSegment.data=e.payload,r.trigger(u.default.FRAG_BUFFERED,{stats:s,frag:t,id:"main"}),this.tick();else{c.logger.log("Parsing "+t.sn+" of ["+l.startSN+" ,"+l.endSN+"],level "+t.level+", cc "+t.cc),this.state=Te,this.pendingBuffering=!0,this.appended=!1,a.bitrateTest&&(a.bitrateTest=!1,this.fragmentTracker.onFragLoaded({frag:a}));var d=!(n&&n.seeking)&&(l.PTSKnown||!l.live),h=l.initSegment?l.initSegment.data:[],f=this._getAudioCodec(o);(this.demuxer=this.demuxer||new Q(this.hls,"main")).push(e.payload,h,f,o.videoCodec,t,l.totalduration,d)}}this.fragLoadError=0},h.onFragParsingInitSegment=function(e){var t=this.fragCurrent,r=e.frag;if(t&&"main"===e.id&&r.sn===t.sn&&r.level===t.level&&this.state===Te){var i,n,a=e.tracks;if(this.audioOnly=a.audio&&!a.video,this.altAudio&&!this.audioOnly&&delete a.audio,n=a.audio){var s=this.levels[this.level].audioCodec,o=navigator.userAgent.toLowerCase();s&&this.audioCodecSwap&&(c.logger.log("swapping playlist audio codec"),s=-1!==s.indexOf("mp4a.40.5")?"mp4a.40.2":"mp4a.40.5"),this.audioCodecSwitch&&1!==n.metadata.channelCount&&-1===o.indexOf("firefox")&&(s="mp4a.40.5"),-1!==o.indexOf("android")&&"audio/mpeg"!==n.container&&(s="mp4a.40.2",c.logger.log("Android: force audio codec to "+s)),n.levelCodec=s,n.id=e.id}for(i in(n=a.video)&&(n.levelCodec=this.levels[this.level].videoCodec,n.id=e.id),this.hls.trigger(u.default.BUFFER_CODECS,a),a){n=a[i],c.logger.log("main track:"+i+",container:"+n.container+",codecs[level/parsed]=["+n.levelCodec+"/"+n.codec+"]");var l=n.initSegment;l&&(this.appended=!0,this.pendingBuffering=!0,this.hls.trigger(u.default.BUFFER_APPENDING,{type:i,data:l,parent:"main",content:"initSegment"}))}this.tick()}},h.onFragParsingData=function(e){var t=this,r=this.fragCurrent,i=e.frag;if(r&&"main"===e.id&&i.sn===r.sn&&i.level===r.level&&("audio"!==e.type||!this.altAudio)&&this.state===Te){var n=this.levels[this.level],a=r;if(Object(l.isFiniteNumber)(e.endPTS)||(e.endPTS=e.startPTS+r.duration,e.endDTS=e.startDTS+r.duration),!0===e.hasAudio&&a.addElementaryStream(g.AUDIO),!0===e.hasVideo&&a.addElementaryStream(g.VIDEO),c.logger.log("Parsed "+e.type+",PTS:["+e.startPTS.toFixed(3)+","+e.endPTS.toFixed(3)+"],DTS:["+e.startDTS.toFixed(3)+"/"+e.endDTS.toFixed(3)+"],nb:"+e.nb+",dropped:"+(e.dropped||0)),"video"===e.type)if(a.dropped=e.dropped,a.dropped)if(a.backtracked)c.logger.warn("Already backtracked on this fragment, appending with the gap",a.sn);else{var s=n.details;if(!s||a.sn!==s.startSN)return c.logger.warn("missing video frame(s), backtracking fragment",a.sn),this.fragmentTracker.removeFragment(a),a.backtracked=!0,this.nextLoadPosition=e.startPTS,this.state=me,this.fragPrevious=a,this.demuxer&&(this.demuxer.destroy(),this.demuxer=null),void this.tick();c.logger.warn("missing video frame(s) on first frag, appending with gap",a.sn)}else a.backtracked=!1;var o=te(n.details,a,e.startPTS,e.endPTS,e.startDTS,e.endDTS),d=this.hls;d.trigger(u.default.LEVEL_PTS_UPDATED,{details:n.details,level:this.level,drift:o,type:e.type,start:e.startPTS,end:e.endPTS}),[e.data1,e.data2].forEach((function(r){r&&r.length&&t.state===Te&&(t.appended=!0,t.pendingBuffering=!0,d.trigger(u.default.BUFFER_APPENDING,{type:e.type,data:r,parent:"main",content:"data"}))})),this.tick()}},h.onFragParsed=function(e){var t=this.fragCurrent,r=e.frag;t&&"main"===e.id&&r.sn===t.sn&&r.level===t.level&&this.state===Te&&(this.stats.tparsed=window.performance.now(),this.state=Ae,this._checkAppendedParsed())},h.onAudioTrackSwitching=function(e){var t=!!e.url,r=e.id;if(!t){if(this.mediaBuffer!==this.media){c.logger.log("switching on main audio, use media.buffered to schedule main fragment loading"),this.mediaBuffer=this.media;var i=this.fragCurrent;i.loader&&(c.logger.log("switching to main audio track, cancel main fragment load"),i.loader.abort()),this.fragCurrent=null,this.fragPrevious=null,this.demuxer&&(this.demuxer.destroy(),this.demuxer=null),this.state=me}var n=this.hls;n.trigger(u.default.BUFFER_FLUSHING,{startOffset:0,endOffset:Number.POSITIVE_INFINITY,type:"audio"}),n.trigger(u.default.AUDIO_TRACK_SWITCHED,{id:r}),this.altAudio=!1}},h.onAudioTrackSwitched=function(e){var t=e.id,r=!!this.hls.audioTracks[t].url;if(r){var i=this.videoBuffer;i&&this.mediaBuffer!==i&&(c.logger.log("switching on alternate audio, use video.buffered to schedule main fragment loading"),this.mediaBuffer=i)}this.altAudio=r,this.tick()},h.onBufferCreated=function(e){var t,r,i=e.tracks,n=!1;for(var a in i){var s=i[a];"main"===s.id?(r=a,t=s,"video"===a&&(this.videoBuffer=i[a].buffer)):n=!0}n&&t?(c.logger.log("alternate track found, use "+r+".buffered to schedule main fragment loading"),this.mediaBuffer=t.buffer):this.mediaBuffer=this.media},h.onBufferAppended=function(e){if("main"===e.parent){var t=this.state;t!==Te&&t!==Ae||(this.pendingBuffering=e.pending>0,this._checkAppendedParsed())}},h._checkAppendedParsed=function(){if(!(this.state!==Ae||this.appended&&this.pendingBuffering)){var e=this.fragCurrent;if(e){var t=this.mediaBuffer?this.mediaBuffer:this.media;c.logger.log("main buffered : "+ae.toString(t.buffered)),this.fragPrevious=e;var r=this.stats;r.tbuffered=window.performance.now(),this.fragLastKbps=Math.round(8*r.total/(r.tbuffered-r.tfirst)),this.hls.trigger(u.default.FRAG_BUFFERED,{stats:r,frag:e,id:"main"}),this.state=me}(this.loadedmetadata||this.startPosition<=0)&&this.tick()}},h.onError=function(e){var t=e.frag||this.fragCurrent;if(!t||"main"===t.type){var r=!!this.media&&K.isBuffered(this.media,this.media.currentTime)&&K.isBuffered(this.media,this.media.currentTime+.5);switch(e.details){case o.ErrorDetails.FRAG_LOAD_ERROR:case o.ErrorDetails.FRAG_LOAD_TIMEOUT:case o.ErrorDetails.KEY_LOAD_ERROR:case o.ErrorDetails.KEY_LOAD_TIMEOUT:if(!e.fatal)if(this.fragLoadError+1<=this.config.fragLoadingMaxRetry){var i=Math.min(Math.pow(2,this.fragLoadError)*this.config.fragLoadingRetryDelay,this.config.fragLoadingMaxRetryTimeout);c.logger.warn("mediaController: frag loading failed, retry in "+i+" ms"),this.retryDate=window.performance.now()+i,this.loadedmetadata||(this.startFragRequested=!1,this.nextLoadPosition=this.startPosition),this.fragLoadError++,this.state=be}else c.logger.error("mediaController: "+e.details+" reaches max retry, redispatch as fatal ..."),e.fatal=!0,this.state=Le;break;case o.ErrorDetails.LEVEL_LOAD_ERROR:case o.ErrorDetails.LEVEL_LOAD_TIMEOUT:this.state!==Le&&(e.fatal?(this.state=Le,c.logger.warn("streamController: "+e.details+",switch to "+this.state+" state ...")):e.levelRetry||this.state!==Oe||(this.state=me));break;case o.ErrorDetails.BUFFER_FULL_ERROR:"main"!==e.parent||this.state!==Te&&this.state!==Ae||(r?(this._reduceMaxBufferLength(this.config.maxBufferLength),this.state=me):(c.logger.warn("buffer full error also media.currentTime is not buffered, flush everything"),this.fragCurrent=null,this.flushMainBuffer(0,Number.POSITIVE_INFINITY)))}}},h._reduceMaxBufferLength=function(e){var t=this.config;return t.maxMaxBufferLength>=e&&(t.maxMaxBufferLength/=2,c.logger.warn("main:reduce max buffer length to "+t.maxMaxBufferLength+"s"),!0)},h._checkBuffer=function(){var e=this.media;if(e&&0!==e.readyState){var t=(this.mediaBuffer?this.mediaBuffer:e).buffered;!this.loadedmetadata&&t.length?(this.loadedmetadata=!0,this._seekToStartPos()):this.immediateSwitch?this.immediateLevelSwitchEnd():this.gapController.poll(this.lastCurrentTime,t)}},h.onFragLoadEmergencyAborted=function(){this.state=me,this.loadedmetadata||(this.startFragRequested=!1,this.nextLoadPosition=this.startPosition),this.tick()},h.onBufferFlushed=function(){var e=this.mediaBuffer?this.mediaBuffer:this.media;if(e){var t=this.audioOnly?g.AUDIO:g.VIDEO;this.fragmentTracker.detectEvictedFragments(t,e.buffered)}this.state=me,this.fragPrevious=null},h.onLevelsUpdated=function(e){this.levels=e.levels},h.swapAudioCodec=function(){this.audioCodecSwap=!this.audioCodecSwap},h._seekToStartPos=function(){var e=this.media,t=this.startPosition,r=e.currentTime;if(r!==t&&t>=0){if(e.seeking)return void c.logger.log("could not seek to "+t+", already seeking at "+r);c.logger.log("seek to target start position "+t+" from current time "+r+". ready state "+e.readyState),e.currentTime=t}},h._getAudioCodec=function(e){var t=this.config.defaultAudioCodec||e.audioCodec;return this.audioCodecSwap&&(c.logger.log("swapping playlist audio codec"),t&&(t=-1!==t.indexOf("mp4a.40.5")?"mp4a.40.2":"mp4a.40.5")),t},n=i,(s=[{key:"state",set:function(e){if(this.state!==e){var t=this.state;this._state=e,c.logger.log("main stream-controller: "+t+"->"+e),this.hls.trigger(u.default.STREAM_STATE_TRANSITION,{previousState:t,nextState:e})}},get:function(){return this._state}},{key:"currentLevel",get:function(){var e=this.media;if(e){var t=this.getBufferedFrag(e.currentTime);if(t)return t.level}return-1}},{key:"nextBufferedFrag",get:function(){var e=this.media;return e?this.followingBufferedFrag(this.getBufferedFrag(e.currentTime)):null}},{key:"nextLevel",get:function(){var e=this.nextBufferedFrag;return e?e.level:-1}},{key:"liveSyncPosition",get:function(){return this._liveSyncPosition},set:function(e){this._liveSyncPosition=e}}])&&Ce(n.prototype,s),d&&Ce(n,d),i}(De);function Pe(e,t){for(var r=0;r0){t=r[0].bitrate,r.sort((function(e,t){return e.bitrate-t.bitrate})),this._levels=r;for(var d=0;d=0&&e1&&d.loadError0){var t=this.currentLevelIndex,r=e.urlId,i=e.url[r];c.logger.log("Attempt loading level index "+t+" with URL-id "+r),this.hls.trigger(u.default.LEVEL_LOADING,{url:i,level:t,id:r})}}},l.removeLevel=function(e,t){var r=this.levels.filter((function(r,i){return i!==e||r.url.length>1&&void 0!==t&&(r.url=r.url.filter((function(e,r){return r!==t})),r.urlId=0,!0)})).map((function(e,t){var r=e.details;return r&&r.fragments&&r.fragments.forEach((function(e){e.level=t})),e}));this._levels=r,this.hls.trigger(u.default.LEVELS_UPDATED,{levels:r})},n=i,(a=[{key:"levels",get:function(){return this._levels}},{key:"level",get:function(){return this.currentLevelIndex},set:function(e){var t=this._levels;t&&(e=Math.min(e,t.length-1),this.currentLevelIndex===e&&t[e].details||this.setLevelInternal(e))}},{key:"manualLevel",get:function(){return this.manualLevelIndex},set:function(e){this.manualLevelIndex=e,void 0===this._startLevel&&(this._startLevel=e),-1!==e&&(this.level=e)}},{key:"firstLevel",get:function(){return this._firstLevel},set:function(e){this._firstLevel=e}},{key:"startLevel",get:function(){if(void 0===this._startLevel){var e=this.hls.config.startLevel;return void 0!==e?e:this._firstLevel}return this._startLevel},set:function(e){this._startLevel=e}},{key:"nextLoadLevel",get:function(){return-1!==this.manualLevelIndex?this.manualLevelIndex:this.hls.nextAutoLevel},set:function(e){this.level=e,-1===this.manualLevelIndex&&(this.hls.nextAutoLevel=e)}}])&&Pe(n.prototype,a),s&&Pe(n,s),i}(h),Fe=r("./src/demux/id3.js");function Ne(e,t){var r;try{r=new Event("addtrack")}catch(e){(r=document.createEvent("Event")).initEvent("addtrack",!1,!1)}r.track=e,t.dispatchEvent(r)}function Be(e){if(null==e?void 0:e.cues)for(;e.cues.length>0;)e.removeCue(e.cues[0])}var Ue=function(e){var t,r;function i(t){var r;return(r=e.call(this,t,u.default.MEDIA_ATTACHED,u.default.MEDIA_DETACHING,u.default.FRAG_PARSING_METADATA,u.default.LIVE_BACK_BUFFER_REACHED)||this).id3Track=void 0,r.media=void 0,r}r=e,(t=i).prototype=Object.create(r.prototype),t.prototype.constructor=t,t.__proto__=r;var n=i.prototype;return n.destroy=function(){h.prototype.destroy.call(this)},n.onMediaAttached=function(e){this.media=e.media,this.media},n.onMediaDetaching=function(){Be(this.id3Track),this.id3Track=void 0,this.media=void 0},n.getID3Track=function(e){for(var t=0;to&&(c.logger.warn("detected an id3 sample with endTime < startTime, adjusting endTime to (startTime + 0.25)"),o=s+.25);for(var l=0;le[e.length-1].endTime)return e[e.length-1];for(var r=0,i=e.length-1;r<=i;){var n=Math.floor((i+r)/2);if(te[n].endTime))return e[n];r=n+1}}return e[r].endTime-t=this.minWeight_},t.getEstimate=function(){return this.canEstimate()?Math.min(this.fast_.getEstimate(),this.slow_.getEstimate()):this.defaultEstimate_},t.destroy=function(){},e}();function Ve(e,t){for(var r=0;r500*r.duration/s){var o=e.levels,l=Math.max(1,n.bw?n.bw/8:1e3*n.loaded/a),d=o[r.level];if(!d)return;var h=d.realBitrate?Math.max(d.realBitrate,d.bitrate):d.bitrate,f=n.total?n.total:Math.max(n.loaded,Math.round(r.duration*h/8)),p=t.currentTime,g=(f-n.loaded)/l,v=(K.bufferInfo(t,p,e.config.maxBufferHole).end-p)/s;if(v<2*r.duration/s&&g>v){var m,_=e.minAutoLevel;for(m=r.level-1;m>_;m--){var y=o[m].realBitrate?Math.max(o[m].realBitrate,o[m].bitrate):o[m].bitrate;if(r.duration*y/(6.4*l)=i;u--){var d=l[u];if(d){var h=d.details,f=h?h.totalduration/h.fragments.length:t,p=!!h&&h.live,g=void 0;g=u<=e?s*r:o*r;var v=l[u].realBitrate?Math.max(l[u].realBitrate,l[u].bitrate):l[u].bitrate,m=v*f/g;if(c.logger.trace("level/adjustedbw/bitrate/avgDuration/maxFetchDuration/fetchDuration: "+u+"/"+Math.round(g)+"/"+v+"/"+f+"/"+a+"/"+m),g>v&&(!m||p&&!this.bitrateTestDelay||m=0)return f;c.logger.trace("rebuffering expected to happen, lets try to find a quality level minimizing the rebuffering");var p=o?Math.min(o,i.maxStarvationDelay):i.maxStarvationDelay,g=i.abrBandWidthFactor,v=i.abrBandWidthUpFactor;if(0===h){var m=this.bitrateTestDelay;m&&(p=(o?Math.min(o,i.maxLoadingDelay):i.maxLoadingDelay)-m,c.logger.trace("bitrate test took "+Math.round(1e3*m)+"ms, set first fragment max fetchDuration to "+Math.round(1e3*p)+" ms"),g=v=1)}return f=this._findBestLevel(s,o,d,n,t,h+p,g,v,r),Math.max(f,0)}}])&&Ve(n.prototype,a),s&&Ve(n,s),i}(h),We=q(),ze=function(e){var t,r;function i(t){var r;return(r=e.call(this,t,u.default.MEDIA_ATTACHING,u.default.MEDIA_DETACHING,u.default.MANIFEST_PARSED,u.default.BUFFER_RESET,u.default.BUFFER_APPENDING,u.default.BUFFER_CODECS,u.default.BUFFER_EOS,u.default.BUFFER_FLUSHING,u.default.LEVEL_PTS_UPDATED,u.default.LEVEL_UPDATED)||this)._msDuration=null,r._levelDuration=null,r._levelTargetDuration=10,r._live=null,r._objectUrl=null,r._needsFlush=!1,r._needsEos=!1,r.config=void 0,r.audioTimestampOffset=void 0,r.bufferCodecEventsExpected=0,r._bufferCodecEventsTotal=0,r.media=null,r.mediaSource=null,r.segments=[],r.parent=void 0,r.appending=!1,r.appended=0,r.appendError=0,r.flushBufferCounter=0,r.tracks={},r.pendingTracks={},r.sourceBuffer={},r.flushRange=[],r._onMediaSourceOpen=function(){c.logger.log("media source opened"),r.hls.trigger(u.default.MEDIA_ATTACHED,{media:r.media});var e=r.mediaSource;e&&e.removeEventListener("sourceopen",r._onMediaSourceOpen),r.checkPendingTracks()},r._onMediaSourceClose=function(){c.logger.log("media source closed")},r._onMediaSourceEnded=function(){c.logger.log("media source ended")},r._onSBUpdateEnd=function(){if(r.audioTimestampOffset&&r.sourceBuffer.audio){var e=r.sourceBuffer.audio;c.logger.warn("change mpeg audio timestamp offset from "+e.timestampOffset+" to "+r.audioTimestampOffset),e.timestampOffset=r.audioTimestampOffset,delete r.audioTimestampOffset}r._needsFlush&&r.doFlush(),r._needsEos&&r.checkEos(),r.appending=!1;var t=r.parent,i=r.segments.reduce((function(e,r){return r.parent===t?e+1:e}),0),n={},a=r.sourceBuffer;for(var s in a){var o=a[s];if(!o)throw Error("handling source buffer update end error: source buffer for "+s+" uninitilized and unable to update buffered TimeRanges.");n[s]=o.buffered}r.hls.trigger(u.default.BUFFER_APPENDED,{parent:t,pending:i,timeRanges:n}),r._needsFlush||r.doAppending(),r.updateMediaElementDuration(),0===i&&r.flushLiveBackBuffer()},r._onSBUpdateError=function(e){c.logger.error("sourceBuffer error:",e),r.hls.trigger(u.default.ERROR,{type:o.ErrorTypes.MEDIA_ERROR,details:o.ErrorDetails.BUFFER_APPENDING_ERROR,fatal:!1})},r.config=t.config,r}r=e,(t=i).prototype=Object.create(r.prototype),t.prototype.constructor=t,t.__proto__=r;var n=i.prototype;return n.destroy=function(){h.prototype.destroy.call(this)},n.onLevelPtsUpdated=function(e){var t=e.type,r=this.tracks.audio;if("audio"===t&&r&&"audio/mpeg"===r.container){var i=this.sourceBuffer.audio;if(!i)throw Error("Level PTS Updated and source buffer for audio uninitalized");if(Math.abs(i.timestampOffset-e.start)>.1){var n=i.updating;try{i.abort()}catch(e){c.logger.warn("can not abort audio buffer: "+e)}n?this.audioTimestampOffset=e.start:(c.logger.warn("change mpeg audio timestamp offset from "+i.timestampOffset+" to "+e.start),i.timestampOffset=e.start)}}},n.onManifestParsed=function(e){var t=2;(e.audio&&!e.video||!e.altAudio)&&(t=1),this.bufferCodecEventsExpected=this._bufferCodecEventsTotal=t,c.logger.log(this.bufferCodecEventsExpected+" bufferCodec event(s) expected")},n.onMediaAttaching=function(e){var t=this.media=e.media;if(t&&We){var r=this.mediaSource=new We;r.addEventListener("sourceopen",this._onMediaSourceOpen),r.addEventListener("sourceended",this._onMediaSourceEnded),r.addEventListener("sourceclose",this._onMediaSourceClose),t.src=window.URL.createObjectURL(r),this._objectUrl=t.src}},n.onMediaDetaching=function(){c.logger.log("media source detaching");var e=this.mediaSource;if(e){if("open"===e.readyState)try{e.endOfStream()}catch(e){c.logger.warn("onMediaDetaching:"+e.message+" while calling endOfStream")}e.removeEventListener("sourceopen",this._onMediaSourceOpen),e.removeEventListener("sourceended",this._onMediaSourceEnded),e.removeEventListener("sourceclose",this._onMediaSourceClose),this.media&&(this._objectUrl&&window.URL.revokeObjectURL(this._objectUrl),this.media.src===this._objectUrl?(this.media.removeAttribute("src"),this.media.load()):c.logger.warn("media.src was changed by a third party - skip cleanup")),this.mediaSource=null,this.media=null,this._objectUrl=null,this.bufferCodecEventsExpected=this._bufferCodecEventsTotal,this.pendingTracks={},this.tracks={},this.sourceBuffer={},this.flushRange=[],this.segments=[],this.appended=0}this.hls.trigger(u.default.MEDIA_DETACHED)},n.checkPendingTracks=function(){var e=this.bufferCodecEventsExpected,t=this.pendingTracks,r=Object.keys(t).length;(r&&!e||2===r)&&(this.createSourceBuffers(t),this.pendingTracks={},this.doAppending())},n.onBufferReset=function(){var e=this.sourceBuffer;for(var t in e){var r=e[t];try{r&&(this.mediaSource&&this.mediaSource.removeSourceBuffer(r),r.removeEventListener("updateend",this._onSBUpdateEnd),r.removeEventListener("error",this._onSBUpdateError))}catch(e){}}this.sourceBuffer={},this.flushRange=[],this.segments=[],this.appended=0},n.onBufferCodecs=function(e){var t=this;Object.keys(this.sourceBuffer).length||(Object.keys(e).forEach((function(r){t.pendingTracks[r]=e[r]})),this.bufferCodecEventsExpected=Math.max(this.bufferCodecEventsExpected-1,0),this.mediaSource&&"open"===this.mediaSource.readyState&&this.checkPendingTracks())},n.createSourceBuffers=function(e){var t=this.sourceBuffer,r=this.mediaSource;if(!r)throw Error("createSourceBuffers called when mediaSource was null");for(var i in e)if(!t[i]){var n=e[i];if(!n)throw Error("source buffer exists for track "+i+", however track does not");var a=n.levelCodec||n.codec,s=n.container+";codecs="+a;c.logger.log("creating sourceBuffer("+s+")");try{var l=t[i]=r.addSourceBuffer(s);l.addEventListener("updateend",this._onSBUpdateEnd),l.addEventListener("error",this._onSBUpdateError),this.tracks[i]={buffer:l,codec:a,id:n.id,container:n.container,levelCodec:n.levelCodec}}catch(e){c.logger.error("error while trying to add sourceBuffer:"+e.message),this.hls.trigger(u.default.ERROR,{type:o.ErrorTypes.MEDIA_ERROR,details:o.ErrorDetails.BUFFER_ADD_CODEC_ERROR,fatal:!1,err:e,mimeType:s})}}this.hls.trigger(u.default.BUFFER_CREATED,{tracks:this.tracks})},n.onBufferAppending=function(e){this._needsFlush||(this.segments?this.segments.push(e):this.segments=[e],this.doAppending())},n.onBufferEos=function(e){for(var t in this.sourceBuffer)if(!e.type||e.type===t){var r=this.sourceBuffer[t];r&&!r.ended&&(r.ended=!0,c.logger.log(t+" sourceBuffer now EOS"))}this.checkEos()},n.checkEos=function(){var e=this.sourceBuffer,t=this.mediaSource;if(t&&"open"===t.readyState){for(var r in e){var i=e[r];if(i){if(!i.ended)return;if(i.updating)return void(this._needsEos=!0)}}c.logger.log("all media data are available, signal endOfStream() to MediaSource and stop loading fragment");try{t.endOfStream()}catch(e){c.logger.warn("exception while calling mediaSource.endOfStream()")}this._needsEos=!1}else this._needsEos=!1},n.onBufferFlushing=function(e){e.type?this.flushRange.push({start:e.startOffset,end:e.endOffset,type:e.type}):(this.flushRange.push({start:e.startOffset,end:e.endOffset,type:"video"}),this.flushRange.push({start:e.startOffset,end:e.endOffset,type:"audio"})),this.flushBufferCounter=0,this.doFlush()},n.flushLiveBackBuffer=function(){if(this._live){var e=this.config.liveBackBufferLength;if(isFinite(e)&&!(e<0))if(this.media)for(var t=this.media.currentTime,r=this.sourceBuffer,i=Object.keys(r),n=t-Math.max(e,this._levelTargetDuration),a=i.length-1;a>=0;a--){var s=i[a],o=r[s];if(o){var l=o.buffered;l.length>0&&n>l.start(0)&&this.removeBufferRange(s,o,0,n)&&this.hls.trigger(u.default.LIVE_BACK_BUFFER_REACHED,{bufferEnd:n})}}else c.logger.error("flushLiveBackBuffer called without attaching media")}},n.onLevelUpdated=function(e){var t=e.details;t.fragments.length>0&&(this._levelDuration=t.totalduration+t.fragments[0].start,this._levelTargetDuration=t.averagetargetduration||t.targetduration||10,this._live=t.live,this.updateMediaElementDuration())},n.updateMediaElementDuration=function(){var e,t=this.config;if(null!==this._levelDuration&&this.media&&this.mediaSource&&this.sourceBuffer&&0!==this.media.readyState&&"open"===this.mediaSource.readyState){for(var r in this.sourceBuffer){var i=this.sourceBuffer[r];if(i&&!0===i.updating)return}e=this.media.duration,null===this._msDuration&&(this._msDuration=this.mediaSource.duration),!0===this._live&&!0===t.liveDurationInfinity?(c.logger.log("Media Source duration is set to Infinity"),this._msDuration=this.mediaSource.duration=1/0):(this._levelDuration>this._msDuration&&this._levelDuration>e||!Object(l.isFiniteNumber)(e))&&(c.logger.log("Updating Media Source duration to "+this._levelDuration.toFixed(3)),this._msDuration=this.mediaSource.duration=this._levelDuration)}},n.doFlush=function(){for(;this.flushRange.length;){var e=this.flushRange[0];if(!this.flushBuffer(e.start,e.end,e.type))return void(this._needsFlush=!0);this.flushRange.shift(),this.flushBufferCounter=0}if(0===this.flushRange.length){this._needsFlush=!1;var t=0,r=this.sourceBuffer;try{for(var i in r){var n=r[i];n&&(t+=n.buffered.length)}}catch(e){c.logger.error("error while accessing sourceBuffer.buffered")}this.appended=t,this.hls.trigger(u.default.BUFFER_FLUSHED)}},n.doAppending=function(){var e=this.config,t=this.hls,r=this.segments,i=this.sourceBuffer;if(Object.keys(i).length){if(!this.media||this.media.error)return this.segments=[],void c.logger.error("trying to append although a media error occured, flush segment and abort");if(!this.appending){var n=r.shift();if(n)try{var a=i[n.type];if(!a)return void this._onSBUpdateEnd();if(a.updating)return void r.unshift(n);a.ended=!1,this.parent=n.parent,a.appendBuffer(n.data),this.appendError=0,this.appended++,this.appending=!0}catch(i){c.logger.error("error while trying to append buffer:"+i.message),r.unshift(n);var s={type:o.ErrorTypes.MEDIA_ERROR,parent:n.parent,details:"",fatal:!1};22===i.code?(this.segments=[],s.details=o.ErrorDetails.BUFFER_FULL_ERROR):(this.appendError++,s.details=o.ErrorDetails.BUFFER_APPEND_ERROR,this.appendError>e.appendErrorMaxRetry&&(c.logger.log("fail "+e.appendErrorMaxRetry+" times to append segment in sourceBuffer"),this.segments=[],s.fatal=!0)),t.trigger(u.default.ERROR,s)}}}},n.flushBuffer=function(e,t,r){var i=this.sourceBuffer;if(!Object.keys(i).length)return!0;var n="null";if(this.media&&(n=this.media.currentTime.toFixed(3)),c.logger.log("flushBuffer,pos/start/end: "+n+"/"+e+"/"+t),this.flushBufferCounter>=this.appended)return c.logger.warn("abort flushing too many retries"),!0;var a=i[r];if(a){if(a.ended=!1,a.updating)return c.logger.warn("cannot flush, sb updating in progress"),!1;if(this.removeBufferRange(r,a,e,t))return this.flushBufferCounter++,!1}return c.logger.log("buffer flushed"),!0},n.removeBufferRange=function(e,t,r,i){try{for(var n=0;n.5){var u="null";return this.media&&(u=this.media.currentTime.toString()),c.logger.log("sb remove "+e+" ["+o+","+l+"], of ["+a+","+s+"], pos:"+u),t.remove(o,l),!0}}}catch(e){c.logger.warn("removeBufferRange failed",e)}return!1},i}(h);function qe(e,t){for(var r=0;rthis.autoLevelCapping&&t.streamController.nextLevelSwitch(),this.autoLevelCapping=t.autoLevelCapping}}},o.getMaxLevel=function(e){var t=this;if(!this.levels)return-1;var r=this.levels.filter((function(r,n){return i.isLevelAllowed(n,t.restrictedLevels)&&n<=e}));return this.clientRect=null,i.getMaxLevelByMediaSize(r,this.mediaWidth,this.mediaHeight)},o.startCapping=function(){this.timer||(this.autoLevelCapping=Number.POSITIVE_INFINITY,this.hls.firstLevel=this.getMaxLevel(this.firstLevel),clearInterval(this.timer),this.timer=setInterval(this.detectPlayerSize.bind(this),1e3),this.detectPlayerSize())},o.stopCapping=function(){this.restrictedLevels=[],this.firstLevel=null,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.timer&&(this.timer=clearInterval(this.timer),this.timer=null)},o.getDimensions=function(){if(this.clientRect)return this.clientRect;var e=this.media,t={width:0,height:0};if(e){var r=e.getBoundingClientRect();t.width=r.width,t.height=r.height,t.width||t.height||(t.width=r.right-r.left||e.width||0,t.height=r.bottom-r.top||e.height||0)}return this.clientRect=t,t},i.isLevelAllowed=function(e,t){return void 0===t&&(t=[]),-1===t.indexOf(e)},i.getMaxLevelByMediaSize=function(e,t,r){if(!e||e&&!e.length)return-1;for(var i,n,a=e.length-1,s=0;s=t||o.height>=r)&&(i=o,!(n=e[s+1])||i.width!==n.width||i.height!==n.height)){a=s;break}}return a},n=i,s=[{key:"contentScaleFactor",get:function(){var e=1;try{e=window.devicePixelRatio}catch(e){}return e}}],(a=[{key:"mediaWidth",get:function(){return this.getDimensions().width*i.contentScaleFactor}},{key:"mediaHeight",get:function(){return this.getDimensions().height*i.contentScaleFactor}}])&&qe(n.prototype,a),s&&qe(n,s),i}(h),Xe=window.performance,$e=function(e){var t,r;function i(t){return e.call(this,t,u.default.MEDIA_ATTACHING)||this}r=e,(t=i).prototype=Object.create(r.prototype),t.prototype.constructor=t,t.__proto__=r;var n=i.prototype;return n.destroy=function(){this.timer&&clearInterval(this.timer),this.isVideoPlaybackQualityAvailable=!1},n.onMediaAttaching=function(e){var t=this.hls.config;t.capLevelOnFPSDrop&&("function"==typeof(this.video=e.media instanceof window.HTMLVideoElement?e.media:null).getVideoPlaybackQuality&&(this.isVideoPlaybackQualityAvailable=!0),clearInterval(this.timer),this.timer=setInterval(this.checkFPSInterval.bind(this),t.fpsDroppedMonitoringPeriod))},n.checkFPS=function(e,t,r){var i=Xe.now();if(t){if(this.lastTime){var n=i-this.lastTime,a=r-this.lastDroppedFrames,s=t-this.lastDecodedFrames,o=1e3*a/n,l=this.hls;if(l.trigger(u.default.FPS_DROP,{currentDropped:a,currentDecoded:s,totalDroppedFrames:r}),o>0&&a>l.config.fpsDroppedMonitoringThreshold*s){var d=l.currentLevel;c.logger.warn("drop FPS ratio greater than max allowed value for currentLevel: "+d),d>0&&(-1===l.autoLevelCapping||l.autoLevelCapping>=d)&&(d-=1,l.trigger(u.default.FPS_DROP_LEVEL_CAPPING,{level:d,droppedLevel:l.currentLevel}),l.autoLevelCapping=d,l.streamController.nextLevelSwitch())}}this.lastTime=i,this.lastDroppedFrames=r,this.lastDecodedFrames=t}},n.checkFPSInterval=function(){var e=this.video;if(e)if(this.isVideoPlaybackQualityAvailable){var t=e.getVideoPlaybackQuality();this.checkFPS(e,t.totalVideoFrames,t.droppedVideoFrames)}else this.checkFPS(e,e.webkitDecodedFrameCount,e.webkitDroppedFrameCount)},i}(h),Je=function(){function e(e){e&&e.xhrSetup&&(this.xhrSetup=e.xhrSetup)}var t=e.prototype;return t.destroy=function(){this.abort(),this.loader=null},t.abort=function(){var e=this.loader;e&&4!==e.readyState&&(this.stats.aborted=!0,e.abort()),window.clearTimeout(this.requestTimeout),this.requestTimeout=null,window.clearTimeout(this.retryTimeout),this.retryTimeout=null},t.load=function(e,t,r){this.context=e,this.config=t,this.callbacks=r,this.stats={trequest:window.performance.now(),retry:0},this.retryDelay=t.retryDelay,this.loadInternal()},t.loadInternal=function(){var e,t=this.context;e=this.loader=new window.XMLHttpRequest;var r=this.stats;r.tfirst=0,r.loaded=0;var i=this.xhrSetup;try{if(i)try{i(e,t.url)}catch(r){e.open("GET",t.url,!0),i(e,t.url)}e.readyState||e.open("GET",t.url,!0)}catch(r){return void this.callbacks.onError({code:e.status,text:r.message},t,e)}t.rangeEnd&&e.setRequestHeader("Range","bytes="+t.rangeStart+"-"+(t.rangeEnd-1)),e.onreadystatechange=this.readystatechange.bind(this),e.onprogress=this.loadprogress.bind(this),e.responseType=t.responseType,this.requestTimeout=window.setTimeout(this.loadtimeout.bind(this),this.config.timeout),e.send()},t.readystatechange=function(e){var t=e.currentTarget,r=t.readyState,i=this.stats,n=this.context,a=this.config;if(!i.aborted&&r>=2)if(window.clearTimeout(this.requestTimeout),0===i.tfirst&&(i.tfirst=Math.max(window.performance.now(),i.trequest)),4===r){var s=t.status;if(s>=200&&s<300){var o,l;i.tload=Math.max(i.tfirst,window.performance.now()),l="arraybuffer"===n.responseType?(o=t.response).byteLength:(o=t.responseText).length,i.loaded=i.total=l;var u={url:t.responseURL,data:o};this.callbacks.onSuccess(u,i,n,t)}else i.retry>=a.maxRetry||s>=400&&s<499?(c.logger.error(s+" while loading "+n.url),this.callbacks.onError({code:s,text:t.statusText},n,t)):(c.logger.warn(s+" while loading "+n.url+", retrying in "+this.retryDelay+"..."),this.destroy(),this.retryTimeout=window.setTimeout(this.loadInternal.bind(this),this.retryDelay),this.retryDelay=Math.min(2*this.retryDelay,a.maxRetryDelay),i.retry++)}else this.requestTimeout=window.setTimeout(this.loadtimeout.bind(this),a.timeout)},t.loadtimeout=function(){c.logger.warn("timeout while loading "+this.context.url),this.callbacks.onTimeout(this.stats,this.context,null)},t.loadprogress=function(e){var t=e.currentTarget,r=this.stats;r.loaded=e.loaded,e.lengthComputable&&(r.total=e.total);var i=this.callbacks.onProgress;i&&i(r,this.context,null,t)},e}();function Qe(e,t){for(var r=0;r=this.tracks.length)c.logger.warn("Invalid audio track id:",e.id);else{if(c.logger.log("audioTrack "+e.id+" loaded"),this.tracks[e.id].details=e.details,e.details.live&&!this.hasInterval()){var t=1e3*e.details.targetduration;this.setInterval(t)}!e.details.live&&this.hasInterval()&&this.clearInterval()}},l.onAudioTrackSwitched=function(e){var t=this.tracks[e.id].groupId;t&&this.audioGroupId!==t&&(this.audioGroupId=t)},l.onLevelLoaded=function(e){this._selectAudioGroup(e.level)},l.onError=function(e){e.type===o.ErrorTypes.NETWORK_ERROR&&(e.fatal&&this.clearInterval(),e.details===o.ErrorDetails.AUDIO_TRACK_LOAD_ERROR&&(c.logger.warn("Network failure on audio-track id:",e.context.id),this._handleLoadError()))},l._setAudioTrack=function(e){if(this._trackId===e&&this.tracks[this._trackId].details)c.logger.debug("Same id as current audio-track passed, and track details available -> no-op");else if(e<0||e>=this.tracks.length)c.logger.warn("Invalid id passed to audio-track controller");else{var t=this.tracks[e];c.logger.log("Now switching to audio-track index "+e),this.clearInterval(),this._trackId=e;var r=t.url,i=t.type,n=t.id;this.hls.trigger(u.default.AUDIO_TRACK_SWITCHING,{id:n,type:i,url:r}),this._loadTrackDetailsIfNeeded(t)}},l.doTick=function(){this._updateTrack(this._trackId)},l._selectAudioGroup=function(e){var t=this.hls.levels[e];if(t&&t.audioGroupIds){var r=t.audioGroupIds[t.urlId];this.audioGroupId!==r&&(this.audioGroupId=r,this._selectInitialAudioTrack())}},l._selectInitialAudioTrack=function(){var e=this,t=this.tracks;if(t.length){var r=this.tracks[this._trackId],i=null;if(r&&(i=r.name),this._selectDefaultTrack){var n=t.filter((function(e){return e.default}));n.length?t=n:c.logger.warn("No default audio tracks defined")}var a=!1,s=function(){t.forEach((function(t){a||e.audioGroupId&&t.groupId!==e.audioGroupId||i&&i!==t.name||(e._setAudioTrack(t.id),a=!0)}))};s(),a||(i=null,s()),a||(c.logger.error("No track found for running audio group-ID: "+this.audioGroupId),this.hls.trigger(u.default.ERROR,{type:o.ErrorTypes.MEDIA_ERROR,details:o.ErrorDetails.AUDIO_TRACK_LOAD_ERROR,fatal:!0}))}},l._needsTrackLoading=function(e){var t=e.details,r=e.url;return!(t&&!t.live||!r)},l._loadTrackDetailsIfNeeded=function(e){if(this._needsTrackLoading(e)){var t=e.url,r=e.id;c.logger.log("loading audio-track playlist for id: "+r),this.hls.trigger(u.default.AUDIO_TRACK_LOADING,{url:t,id:r})}},l._updateTrack=function(e){if(!(e<0||e>=this.tracks.length)){this.clearInterval(),this._trackId=e,c.logger.log("trying to update audio-track "+e);var t=this.tracks[e];this._loadTrackDetailsIfNeeded(t)}},l._handleLoadError=function(){this.trackIdBlacklist[this._trackId]=!0;var e=this._trackId,t=this.tracks[e],r=t.name,i=t.language,n=t.groupId;c.logger.warn("Loading failed on audio track id: "+e+", group-id: "+n+', name/language: "'+r+'" / "'+i+'"');for(var a=e,s=0;s0&&-1===e?(c.logger.log("audio:override startPosition with lastCurrentTime @"+t.toFixed(3)),this.state=me):(this.lastCurrentTime=this.startPosition?this.startPosition:e,this.state=ve),this.nextLoadPosition=this.startPosition=this.lastCurrentTime,this.tick()}else this.startPosition=e,this.state=ge},d.doTick=function(){var e,t,r,i=this.hls,n=i.config;switch(this.state){case Le:case _e:case we:break;case ve:this.state=Se,this.loadedmetadata=!1;break;case me:var a=this.tracks;if(!a)break;if(!this.media&&(this.startFragRequested||!n.startFragPrefetch))break;if(this.loadedmetadata)e=this.media.currentTime;else if(void 0===(e=this.nextLoadPosition))break;var s=this.mediaBuffer?this.mediaBuffer:this.media,o=this.videoBuffer?this.videoBuffer:this.media,d=eA||h.nextStart))return;c.logger.log("alt audio track ahead of main track, seek to start of alt audio track"),this.media.currentTime=A+.05}if(r.initSegment&&!r.initSegment.data)b=r.initSegment;else if(g<=A){if(b=S[0],null!==this.videoTrackCC&&b.cc!==this.videoTrackCC&&(b=function(e,t){return V.search(e,(function(e){return e.cct?-1:0}))}(S,this.videoTrackCC)),r.live&&b.loadIdx&&b.loadIdx===this.fragLoadIdx){var R=h.nextStart?h.nextStart:A;return c.logger.log("no alt audio available @currentTime:"+this.media.currentTime+", seeking @"+(R+.05)),void(this.media.currentTime=R+.05)}}else{var L,k=n.maxFragLookUpTolerance,O=v?S[v.sn-S[0].sn+1]:void 0,D=function(e){var t=Math.min(k,e.duration);return e.start+e.duration-t<=g?1:e.start-t>g&&e.start?-1:0};gw-k&&(k=0),L=O&&!D(O)?O:V.search(S,D)):L=S[T-1],L&&(b=L,A=L.start,v&&b.level===v.level&&b.sn===v.sn&&(b.sn=I||x)&&(c.logger.log("audioStreamController: retryDate reached, switch back to IDLE state"),this.state=me);break;case ke:var P=this.videoTrackCC;if(void 0===this.initPTS[P])break;var M=this.waitingFragment;if(M){var F=M.frag.cc;P!==F?(t=this.tracks[this.trackId]).details&&t.details.live&&(c.logger.warn("Waiting fragment CC ("+F+") does not match video track CC ("+P+")"),this.waitingFragment=null,this.state=me):(this.state=Ee,this.onFragLoaded(this.waitingFragment),this.waitingFragment=null)}else this.state=me}},d.onMediaAttached=function(e){var t=this.media=this.mediaBuffer=e.media;this.onvseeking=this.onMediaSeeking.bind(this),this.onvended=this.onMediaEnded.bind(this),t.addEventListener("seeking",this.onvseeking),t.addEventListener("ended",this.onvended);var r=this.config;this.tracks&&r.autoStartLoad&&this.startLoad(r.startPosition)},d.onMediaDetaching=function(){var e=this.media;e&&e.ended&&(c.logger.log("MSE detaching and video ended, reset startPosition"),this.startPosition=this.lastCurrentTime=0),e&&(e.removeEventListener("seeking",this.onvseeking),e.removeEventListener("ended",this.onvended),this.onvseeking=this.onvseeked=this.onvended=null),this.media=this.mediaBuffer=this.videoBuffer=null,this.loadedmetadata=!1,this.fragmentTracker.removeAllFragments(),this.stopLoad()},d.onAudioTracksUpdated=function(e){c.logger.log("audio tracks updated"),this.tracks=e.audioTracks},d.onAudioTrackSwitching=function(e){var t=!!e.url;this.trackId=e.id,this.fragCurrent=null,this.state=_e,this.waitingFragment=null,t?this.setInterval(100):this.demuxer&&(this.demuxer.destroy(),this.demuxer=null),t&&(this.audioSwitch=!0,this.state=me),this.tick()},d.onAudioTrackLoaded=function(e){var t=e.details,r=e.id,i=this.tracks[r],n=t.totalduration,a=0;if(c.logger.log("track "+r+" loaded ["+t.startSN+","+t.endSN+"],duration:"+n),t.live){var s=i.details;s&&t.fragments.length>0?(re(s,t),a=t.fragments[0].start,t.PTSKnown?c.logger.log("live audio playlist sliding:"+a.toFixed(3)):c.logger.log("live audio playlist - outdated PTS, unknown sliding")):(t.PTSKnown=!1,c.logger.log("live audio playlist - first load, unknown sliding"))}else t.PTSKnown=!1;if(i.details=t,!this.startFragRequested){if(-1===this.startPosition){var o=t.startTimeOffset;Object(l.isFiniteNumber)(o)?(c.logger.log("start time offset found in playlist, adjust startPosition to "+o),this.startPosition=o):t.live?(this.startPosition=this.computeLivePosition(a,t),c.logger.log("compute startPosition for audio-track to "+this.startPosition)):this.startPosition=0}this.nextLoadPosition=this.startPosition}this.state===Se&&(this.state=me),this.tick()},d.onKeyLoaded=function(){this.state===ye&&(this.state=me,this.tick())},d.onFragLoaded=function(e){var t=this.fragCurrent,r=e.frag;if(this.state===Ee&&t&&"audio"===r.type&&r.level===t.level&&r.sn===t.sn){var i=this.tracks[this.trackId],n=i.details,a=n.totalduration,s=t.level,o=t.sn,l=t.cc,d=this.config.defaultAudioCodec||i.audioCodec||"mp4a.40.2",h=this.stats=e.stats;if("initSegment"===o)this.state=me,h.tparsed=h.tbuffered=tt.now(),n.initSegment.data=e.payload,this.hls.trigger(u.default.FRAG_BUFFERED,{stats:h,frag:t,id:"audio"}),this.tick();else{this.state=Te,this.appended=!1,this.demuxer||(this.demuxer=new Q(this.hls,"audio"));var f=this.initPTS[l],p=n.initSegment?n.initSegment.data:[];n.initSegment||void 0!==f?(this.pendingBuffering=!0,c.logger.log("Demuxing "+o+" of ["+n.startSN+" ,"+n.endSN+"],track "+s),this.demuxer.push(e.payload,p,d,null,t,a,!1,f)):(c.logger.log("unknown video PTS for continuity counter "+l+", waiting for video PTS before demuxing audio frag "+o+" of ["+n.startSN+" ,"+n.endSN+"],track "+s),this.waitingFragment=e,this.state=ke)}}this.fragLoadError=0},d.onFragParsingInitSegment=function(e){var t=this.fragCurrent,r=e.frag;if(t&&"audio"===e.id&&r.sn===t.sn&&r.level===t.level&&this.state===Te){var i,n=e.tracks;if(n.video&&delete n.video,i=n.audio){i.levelCodec=i.codec,i.id=e.id,this.hls.trigger(u.default.BUFFER_CODECS,n),c.logger.log("audio track:audio,container:"+i.container+",codecs[level/parsed]=["+i.levelCodec+"/"+i.codec+"]");var a=i.initSegment;if(a){var s={type:"audio",data:a,parent:"audio",content:"initSegment"};this.audioSwitch?this.pendingData=[s]:(this.appended=!0,this.pendingBuffering=!0,this.hls.trigger(u.default.BUFFER_APPENDING,s))}this.tick()}}},d.onFragParsingData=function(e){var t=this,r=this.fragCurrent,i=e.frag;if(r&&"audio"===e.id&&"audio"===e.type&&i.sn===r.sn&&i.level===r.level&&this.state===Te){var n=this.trackId,a=this.tracks[n],s=this.hls;Object(l.isFiniteNumber)(e.endPTS)||(e.endPTS=e.startPTS+r.duration,e.endDTS=e.startDTS+r.duration),r.addElementaryStream(g.AUDIO),c.logger.log("parsed "+e.type+",PTS:["+e.startPTS.toFixed(3)+","+e.endPTS.toFixed(3)+"],DTS:["+e.startDTS.toFixed(3)+"/"+e.endDTS.toFixed(3)+"],nb:"+e.nb),te(a.details,r,e.startPTS,e.endPTS);var d=this.audioSwitch,h=this.media,f=!1;if(d)if(h&&h.readyState){var p=h.currentTime;c.logger.log("switching audio track : currentTime:"+p),p>=e.startPTS&&(c.logger.log("switching audio track : flushing all audio"),this.state=we,s.trigger(u.default.BUFFER_FLUSHING,{startOffset:0,endOffset:Number.POSITIVE_INFINITY,type:"audio"}),f=!0,this.audioSwitch=!1,s.trigger(u.default.AUDIO_TRACK_SWITCHED,{id:n}))}else this.audioSwitch=!1,s.trigger(u.default.AUDIO_TRACK_SWITCHED,{id:n});var v=this.pendingData;if(!v)return c.logger.warn("Apparently attempt to enqueue media payload without codec initialization data upfront"),void s.trigger(u.default.ERROR,{type:o.ErrorTypes.MEDIA_ERROR,details:null,fatal:!0});this.audioSwitch||([e.data1,e.data2].forEach((function(t){t&&t.length&&v.push({type:e.type,data:t,parent:"audio",content:"data"})})),!f&&v.length&&(v.forEach((function(e){t.state===Te&&(t.pendingBuffering=!0,t.hls.trigger(u.default.BUFFER_APPENDING,e))})),this.pendingData=[],this.appended=!0)),this.tick()}},d.onFragParsed=function(e){var t=this.fragCurrent,r=e.frag;t&&"audio"===e.id&&r.sn===t.sn&&r.level===t.level&&this.state===Te&&(this.stats.tparsed=tt.now(),this.state=Ae,this._checkAppendedParsed())},d.onBufferReset=function(){this.mediaBuffer=this.videoBuffer=null,this.loadedmetadata=!1},d.onBufferCreated=function(e){var t=e.tracks.audio;t&&(this.mediaBuffer=t.buffer,this.loadedmetadata=!0),e.tracks.video&&(this.videoBuffer=e.tracks.video.buffer)},d.onBufferAppended=function(e){if("audio"===e.parent){var t=this.state;t!==Te&&t!==Ae||(this.pendingBuffering=e.pending>0,this._checkAppendedParsed())}},d._checkAppendedParsed=function(){if(!(this.state!==Ae||this.appended&&this.pendingBuffering)){var e=this.fragCurrent,t=this.stats,r=this.hls;if(e){this.fragPrevious=e,t.tbuffered=tt.now(),r.trigger(u.default.FRAG_BUFFERED,{stats:t,frag:e,id:"audio"});var i=this.mediaBuffer?this.mediaBuffer:this.media;i&&c.logger.log("audio buffered : "+ae.toString(i.buffered)),this.audioSwitch&&this.appended&&(this.audioSwitch=!1,r.trigger(u.default.AUDIO_TRACK_SWITCHED,{id:this.trackId})),this.state=me}this.tick()}},d.onError=function(e){var t=e.frag;if(!t||"audio"===t.type)switch(e.details){case o.ErrorDetails.FRAG_LOAD_ERROR:case o.ErrorDetails.FRAG_LOAD_TIMEOUT:var r=e.frag;if(r&&"audio"!==r.type)break;if(!e.fatal){var i=this.fragLoadError;i?i++:i=1;var n=this.config;if(i<=n.fragLoadingMaxRetry){this.fragLoadError=i;var a=Math.min(Math.pow(2,i-1)*n.fragLoadingRetryDelay,n.fragLoadingMaxRetryTimeout);c.logger.warn("AudioStreamController: frag loading failed, retry in "+a+" ms"),this.retryDate=tt.now()+a,this.state=be}else c.logger.error("AudioStreamController: "+e.details+" reaches max retry, redispatch as fatal ..."),e.fatal=!0,this.state=Le}break;case o.ErrorDetails.AUDIO_TRACK_LOAD_ERROR:case o.ErrorDetails.AUDIO_TRACK_LOAD_TIMEOUT:case o.ErrorDetails.KEY_LOAD_ERROR:case o.ErrorDetails.KEY_LOAD_TIMEOUT:this.state!==Le&&(this.state=e.fatal?Le:me,c.logger.warn("AudioStreamController: "+e.details+" while loading frag, now switching to "+this.state+" state ..."));break;case o.ErrorDetails.BUFFER_FULL_ERROR:if("audio"===e.parent&&(this.state===Te||this.state===Ae)){var s=this.mediaBuffer,l=this.media.currentTime;if(s&&K.isBuffered(s,l)&&K.isBuffered(s,l+.5)){var d=this.config;d.maxMaxBufferLength>=d.maxBufferLength&&(d.maxMaxBufferLength/=2,c.logger.warn("AudioStreamController: reduce max buffer length to "+d.maxMaxBufferLength+"s")),this.state=me}else c.logger.warn("AudioStreamController: buffer full error also media.currentTime is not buffered, flush audio buffer"),this.fragCurrent=null,this.state=we,this.hls.trigger(u.default.BUFFER_FLUSHING,{startOffset:0,endOffset:Number.POSITIVE_INFINITY,type:"audio"})}}},d.onBufferFlushed=function(){var e=this,t=this.pendingData;t&&t.length?(c.logger.log("AudioStreamController: appending pending audio data after buffer flushed"),t.forEach((function(t){e.hls.trigger(u.default.BUFFER_APPENDING,t)})),this.appended=!0,this.pendingData=[],this.state=Ae):(this.state=me,this.fragPrevious=null,this.tick())},n=i,(a=[{key:"state",set:function(e){if(this.state!==e){var t=this.state;this._state=e,c.logger.log("audio stream:"+t+"->"+e)}},get:function(){return this._state}}])&&et(n.prototype,a),s&&et(n,s),i}(De),it=function(){if("undefined"!=typeof window&&window.VTTCue)return window.VTTCue;var e={"":!0,lr:!0,rl:!0},t={start:!0,middle:!0,end:!0,left:!0,right:!0};function r(e){return"string"==typeof e&&!!t[e.toLowerCase()]&&e.toLowerCase()}function i(e){for(var t=1;t100)throw new Error("Position must be between 0 and 100.");_=e,this.hasBeenReset=!0}})),Object.defineProperty(s,"positionAlign",i({},o,{get:function(){return y},set:function(e){var t=r(e);if(!t)throw new SyntaxError("An invalid or illegal string was specified.");y=t,this.hasBeenReset=!0}})),Object.defineProperty(s,"size",i({},o,{get:function(){return E},set:function(e){if(e<0||e>100)throw new Error("Size must be between 0 and 100.");E=e,this.hasBeenReset=!0}})),Object.defineProperty(s,"align",i({},o,{get:function(){return b},set:function(e){var t=r(e);if(!t)throw new SyntaxError("An invalid or illegal string was specified.");b=t,this.hasBeenReset=!0}})),s.displayState=void 0}return n.prototype.getCueAsHTML=function(){return window.WebVTT.convertCueToDOMTree(window,this.text)},n}(),nt=function(){return{decode:function(e){if(!e)return"";if("string"!=typeof e)throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(e))}}};function at(){this.window=window,this.state="INITIAL",this.buffer="",this.decoder=new nt,this.regionList=[]}function st(){this.values=Object.create(null)}function ot(e,t,r,i){var n=i?e.split(i):[e];for(var a in n)if("string"==typeof n[a]){var s=n[a].split(r);2===s.length&&t(s[0],s[1])}}st.prototype={set:function(e,t){this.get(e)||""===t||(this.values[e]=t)},get:function(e,t,r){return r?this.has(e)?this.values[e]:t[r]:this.has(e)?this.values[e]:t},has:function(e){return e in this.values},alt:function(e,t,r){for(var i=0;i=0&&t<=100)&&(this.set(e,t),!0)}};var lt=new it(0,0,0),ut="middle"===lt.align?"middle":"center";function ct(e,t,r){var i=e;function n(){var t=function(e){function t(e,t,r,i){return 3600*(0|e)+60*(0|t)+(0|r)+(0|i)/1e3}var r=e.match(/^(\d+):(\d{2})(:\d{2})?\.(\d{3})/);return r?r[3]?t(r[1],r[2],r[3].replace(":",""),r[4]):r[1]>59?t(r[1],r[2],0,r[4]):t(0,r[1],r[2],r[4]):null}(e);if(null===t)throw new Error("Malformed timestamp: "+i);return e=e.replace(/^[^\sa-zA-Z-]+/,""),t}function a(){e=e.replace(/^\s+/,"")}if(a(),t.startTime=n(),a(),"--\x3e"!==e.substr(0,3))throw new Error("Malformed time stamp (time stamps must be separated by '--\x3e'): "+i);e=e.substr(3),a(),t.endTime=n(),a(),function(e,t){var i=new st;ot(e,(function(e,t){switch(e){case"region":for(var n=r.length-1;n>=0;n--)if(r[n].id===t){i.set(e,r[n].region);break}break;case"vertical":i.alt(e,t,["rl","lr"]);break;case"line":var a=t.split(","),s=a[0];i.integer(e,s),i.percent(e,s)&&i.set("snapToLines",!1),i.alt(e,s,["auto"]),2===a.length&&i.alt("lineAlign",a[1],["start",ut,"end"]);break;case"position":a=t.split(","),i.percent(e,a[0]),2===a.length&&i.alt("positionAlign",a[1],["start",ut,"end","line-left","line-right","auto"]);break;case"size":i.percent(e,t);break;case"align":i.alt(e,t,["start",ut,"end","left","right"])}}),/:/,/\s/),t.region=i.get("region",null),t.vertical=i.get("vertical","");var n=i.get("line","auto");"auto"===n&&-1===lt.line&&(n=-1),t.line=n,t.lineAlign=i.get("lineAlign","start"),t.snapToLines=i.get("snapToLines",!0),t.size=i.get("size",100),t.align=i.get("align",ut);var a=i.get("position","auto");"auto"===a&&50===lt.position&&(a="start"===t.align||"left"===t.align?0:"end"===t.align||"right"===t.align?100:50),t.position=a}(e,t)}function dt(e){return e.replace(//gi,"\n")}at.prototype={parse:function(e){var t=this;function r(){var e=t.buffer,r=0;for(e=dt(e);r=16?o--:o++,navigator.userAgent.match(/Firefox\//)?a.line=d+1:a.line=d>7?d-2:d+1,a.align="left",a.position=Math.max(0,Math.min(100,o/32*100)),u.push(a),e&&e.addCue(a)}return u}var pt,gt={42:225,92:233,94:237,95:243,96:250,123:231,124:247,125:209,126:241,127:9608,128:174,129:176,130:189,131:191,132:8482,133:162,134:163,135:9834,136:224,137:32,138:232,139:226,140:234,141:238,142:244,143:251,144:193,145:201,146:211,147:218,148:220,149:252,150:8216,151:161,152:42,153:8217,154:9473,155:169,156:8480,157:8226,158:8220,159:8221,160:192,161:194,162:199,163:200,164:202,165:203,166:235,167:206,168:207,169:239,170:212,171:217,172:249,173:219,174:171,175:187,176:195,177:227,178:205,179:204,180:236,181:210,182:242,183:213,184:245,185:123,186:125,187:92,188:94,189:95,190:124,191:8764,192:196,193:228,194:214,195:246,196:223,197:165,198:164,199:9475,200:197,201:229,202:216,203:248,204:9487,205:9491,206:9495,207:9499},vt=function(e){var t=e;return gt.hasOwnProperty(e)&&(t=gt[e]),String.fromCharCode(t)},mt={17:1,18:3,21:5,22:7,23:9,16:11,19:12,20:14},_t={17:2,18:4,21:6,22:8,23:10,19:13,20:15},yt={25:1,26:3,29:5,30:7,31:9,24:11,27:12,28:14},Et={25:2,26:4,29:6,30:8,31:10,27:13,28:15},bt=["white","green","blue","cyan","red","yellow","magenta","black","transparent"];!function(e){e[e.ERROR=0]="ERROR",e[e.TEXT=1]="TEXT",e[e.WARNING=2]="WARNING",e[e.INFO=2]="INFO",e[e.DEBUG=3]="DEBUG",e[e.DATA=3]="DATA"}(pt||(pt={}));var St=function(){function e(){this.time=null,this.verboseLevel=pt.ERROR}return e.prototype.log=function(e,t){this.verboseLevel>=e&&c.logger.log(this.time+" ["+e+"] "+t)},e}(),Tt=function(e){for(var t=[],r=0;r100&&(this.logger.log(pt.DEBUG,"Too large cursor position "+this.pos),this.pos=100)},t.moveCursor=function(e){var t=this.pos+e;if(e>1)for(var r=this.pos+1;r=144&&this.backSpace();var t=vt(e);this.pos>=100?this.logger.log(pt.ERROR,"Cannot insert "+e.toString(16)+" ("+t+") at position "+this.pos+". Skipping it!"):(this.chars[this.pos].setChar(t,this.currPenState),this.moveCursor(1))},t.clearFromPos=function(e){var t;for(t=e;t<100;t++)this.chars[t].reset()},t.clear=function(){this.clearFromPos(0),this.pos=0,this.currPenState.reset()},t.clearToEndOfRow=function(){this.clearFromPos(this.pos)},t.getTextString=function(){for(var e=[],t=!0,r=0;r<100;r++){var i=this.chars[r].uchar;" "!==i&&(t=!1),e.push(i)}return t?"":e.join("")},t.setPenStyles=function(e){this.currPenState.setStyles(e),this.chars[this.pos].setPenState(this.currPenState)},e}(),Lt=function(){function e(e){this.rows=void 0,this.currRow=void 0,this.nrRollUpRows=void 0,this.lastOutputScreen=void 0,this.logger=void 0,this.rows=[];for(var t=0;t<15;t++)this.rows.push(new Rt(e));this.logger=e,this.currRow=14,this.nrRollUpRows=null,this.lastOutputScreen=null,this.reset()}var t=e.prototype;return t.reset=function(){for(var e=0;e<15;e++)this.rows[e].clear();this.currRow=14},t.equals=function(e){for(var t=!0,r=0;r<15;r++)if(!this.rows[r].equals(e.rows[r])){t=!1;break}return t},t.copy=function(e){for(var t=0;t<15;t++)this.rows[t].copy(e.rows[t])},t.isEmpty=function(){for(var e=!0,t=0;t<15;t++)if(!this.rows[t].isEmpty()){e=!1;break}return e},t.backSpace=function(){this.rows[this.currRow].backSpace()},t.clearToEndOfRow=function(){this.rows[this.currRow].clearToEndOfRow()},t.insertChar=function(e){this.rows[this.currRow].insertChar(e)},t.setPen=function(e){this.rows[this.currRow].setPenStyles(e)},t.moveCursor=function(e){this.rows[this.currRow].moveCursor(e)},t.setCursor=function(e){this.logger.log(pt.INFO,"setCursor: "+e),this.rows[this.currRow].setCursor(e)},t.setPAC=function(e){this.logger.log(pt.INFO,"pacData = "+JSON.stringify(e));var t=e.row-1;if(this.nrRollUpRows&&t0&&(r=e?"["+t.join(" | ")+"]":t.join("\n")),r},t.getTextAndFormat=function(){return this.rows},e}(),kt=function(){function e(e,t,r){this.chNr=void 0,this.outputFilter=void 0,this.mode=void 0,this.verbose=void 0,this.displayedMemory=void 0,this.nonDisplayedMemory=void 0,this.lastOutputScreen=void 0,this.currRollUpRow=void 0,this.writeScreen=void 0,this.cueStartTime=void 0,this.logger=void 0,this.chNr=e,this.outputFilter=t,this.mode=null,this.verbose=0,this.displayedMemory=new Lt(r),this.nonDisplayedMemory=new Lt(r),this.lastOutputScreen=new Lt(r),this.currRollUpRow=this.displayedMemory.rows[14],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null,this.logger=r}var t=e.prototype;return t.reset=function(){this.mode=null,this.displayedMemory.reset(),this.nonDisplayedMemory.reset(),this.lastOutputScreen.reset(),this.outputFilter.reset(),this.currRollUpRow=this.displayedMemory.rows[14],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null},t.getHandler=function(){return this.outputFilter},t.setHandler=function(e){this.outputFilter=e},t.setPAC=function(e){this.writeScreen.setPAC(e)},t.setBkgData=function(e){this.writeScreen.setBkgData(e)},t.setMode=function(e){e!==this.mode&&(this.mode=e,this.logger.log(pt.INFO,"MODE="+e),"MODE_POP-ON"===this.mode?this.writeScreen=this.nonDisplayedMemory:(this.writeScreen=this.displayedMemory,this.writeScreen.reset()),"MODE_ROLL-UP"!==this.mode&&(this.displayedMemory.nrRollUpRows=null,this.nonDisplayedMemory.nrRollUpRows=null),this.mode=e)},t.insertChars=function(e){for(var t=0;t=46,t.italics)t.foreground="white";else{var r=Math.floor(e/2)-16;t.foreground=["white","green","blue","cyan","red","yellow","magenta"][r]}this.logger.log(pt.INFO,"MIDROW: "+JSON.stringify(t)),this.writeScreen.setPen(t)},t.outputDataUpdate=function(e){void 0===e&&(e=!1);var t=this.logger.time;null!==t&&this.outputFilter&&(null!==this.cueStartTime||this.displayedMemory.isEmpty()?this.displayedMemory.equals(this.lastOutputScreen)||(this.outputFilter.newCue(this.cueStartTime,t,this.lastOutputScreen),e&&this.outputFilter.dispatchCue&&this.outputFilter.dispatchCue(),this.cueStartTime=this.displayedMemory.isEmpty()?null:t):this.cueStartTime=t,this.lastOutputScreen.copy(this.displayedMemory))},t.cueSplitAtTime=function(e){this.outputFilter&&(this.displayedMemory.isEmpty()||(this.outputFilter.newCue&&this.outputFilter.newCue(this.cueStartTime,e,this.displayedMemory),this.cueStartTime=e))},e}();function Ot(e,t,r){r.a=e,r.b=t}function Dt(e,t,r){return r.a===e&&r.b===t}var Ct=function(){function e(e,t,r){this.channels=void 0,this.currentChannel=0,this.cmdHistory=void 0,this.logger=void 0;var i=new St;this.channels=[null,new kt(e,t,i),new kt(e+1,r,i)],this.cmdHistory={a:null,b:null},this.logger=i}var t=e.prototype;return t.getHandler=function(e){return this.channels[e].getHandler()},t.setHandler=function(e,t){this.channels[e].setHandler(t)},t.addData=function(e,t){var r,i,n,a=!1;this.logger.time=e;for(var s=0;s ("+Tt([i,n])+")"),(r=this.parseCmd(i,n))||(r=this.parseMidrow(i,n)),r||(r=this.parsePAC(i,n)),r||(r=this.parseBackgroundAttributes(i,n)),!r&&(a=this.parseChars(i,n))){var o=this.currentChannel;o&&o>0?this.channels[o].insertChars(a):this.logger.log(pt.WARNING,"No channel found yet. TEXT-MODE?")}r||a||this.logger.log(pt.WARNING,"Couldn't parse cleaned data "+Tt([i,n])+" orig: "+Tt([t[s],t[s+1]]))}},t.parseCmd=function(e,t){var r=this.cmdHistory;if(!((20===e||28===e||21===e||29===e)&&t>=32&&t<=47||(23===e||31===e)&&t>=33&&t<=35))return!1;if(Dt(e,t,r))return Ot(null,null,r),this.logger.log(pt.DEBUG,"Repeated command ("+Tt([e,t])+") is dropped"),!0;var i=20===e||21===e||23===e?1:2,n=this.channels[i];return 20===e||21===e||28===e||29===e?32===t?n.ccRCL():33===t?n.ccBS():34===t?n.ccAOF():35===t?n.ccAON():36===t?n.ccDER():37===t?n.ccRU(2):38===t?n.ccRU(3):39===t?n.ccRU(4):40===t?n.ccFON():41===t?n.ccRDC():42===t?n.ccTR():43===t?n.ccRTD():44===t?n.ccEDM():45===t?n.ccCR():46===t?n.ccENM():47===t&&n.ccEOC():n.ccTO(t-32),Ot(e,t,r),this.currentChannel=i,!0},t.parseMidrow=function(e,t){var r=0;if((17===e||25===e)&&t>=32&&t<=47){if((r=17===e?1:2)!==this.currentChannel)return this.logger.log(pt.ERROR,"Mismatch channel in midrow parsing"),!1;var i=this.channels[r];return!!i&&(i.ccMIDROW(t),this.logger.log(pt.DEBUG,"MIDROW ("+Tt([e,t])+")"),!0)}return!1},t.parsePAC=function(e,t){var r,i=this.cmdHistory;if(!((e>=17&&e<=23||e>=25&&e<=31)&&t>=64&&t<=127||(16===e||24===e)&&t>=64&&t<=95))return!1;if(Dt(e,t,i))return Ot(null,null,i),!0;var n=e<=23?1:2;r=t>=64&&t<=95?1===n?mt[e]:yt[e]:1===n?_t[e]:Et[e];var a=this.channels[n];return!!a&&(a.setPAC(this.interpretPAC(r,t)),Ot(e,t,i),this.currentChannel=n,!0)},t.interpretPAC=function(e,t){var r=t,i={color:null,italics:!1,indent:null,underline:!1,row:e};return r=t>95?t-96:t-64,i.underline=1==(1&r),r<=13?i.color=["white","green","blue","cyan","red","yellow","magenta","white"][Math.floor(r/2)]:r<=15?(i.italics=!0,i.color="white"):i.indent=4*Math.floor((r-16)/2),i},t.parseChars=function(e,t){var r,i=null,n=null;if(e>=25?(r=2,n=e-8):(r=1,n=e),n>=17&&n<=19){var a=t;a=17===n?t+80:18===n?t+112:t+144,this.logger.log(pt.INFO,"Special char '"+vt(a)+"' in channel "+r),i=[a]}else e>=32&&e<=127&&(i=0===t?[e]:[e,t]);if(i){var s=Tt(i);this.logger.log(pt.DEBUG,"Char codes = "+s.join(",")),Ot(e,t,this.cmdHistory)}return i},t.parseBackgroundAttributes=function(e,t){var r;if(!((16===e||24===e)&&t>=32&&t<=47||(23===e||31===e)&&t>=45&&t<=47))return!1;var i={};16===e||24===e?(r=Math.floor((t-32)/2),i.background=bt[r],t%2==1&&(i.background=i.background+"_semi")):45===t?i.background="transparent":(i.foreground="black",47===t&&(i.underline=!0));var n=e<=23?1:2;return this.channels[n].setBkgData(i),Ot(e,t,this.cmdHistory),!0},t.reset=function(){for(var e=0;ee)&&(this.startTime=e),this.endTime=t,this.screen=r,this.timelineController.createCaptionsTrack(this.trackName)},t.reset=function(){this.cueRanges=[]},e}(),xt=function(e,t,r){return e.substr(r||0,t.length)===t},Pt=function(e){for(var t=5381,r=e.length;r;)t=33*t^e.charCodeAt(--r);return(t>>>0).toString()},Mt={parse:function(e,t,r,i,n,a){var s,o=Object(Fe.utf8ArrayToStr)(new Uint8Array(e)).trim().replace(/\r\n|\n\r|\n|\r/g,"\n").split("\n"),u="00:00.000",c=0,d=0,h=0,f=[],p=!0,g=!1,v=new ht;v.oncue=function(e){var t=r[i],n=r.ccOffset;t&&t.new&&(void 0!==d?n=r.ccOffset=t.start:function(e,t,r){var i=e[t],n=e[i.prevCC];if(!n||!n.new&&i.new)return e.ccOffset=e.presentationOffset=i.start,void(i.new=!1);for(;n&&n.new;)e.ccOffset+=i.start-n.start,i.new=!1,n=e[(i=n).prevCC];e.presentationOffset=r}(r,i,h)),h&&(n=h-r.presentationOffset),g&&(e.startTime+=n-d,e.endTime+=n-d),e.id=Pt(e.startTime.toString())+Pt(e.endTime.toString())+Pt(e.text),e.text=decodeURIComponent(encodeURIComponent(e.text)),e.endTime>0&&f.push(e)},v.onparsingerror=function(e){s=e},v.onflush=function(){s&&a?a(s):n(f)},o.forEach((function(e){if(p){if(xt(e,"X-TIMESTAMP-MAP=")){p=!1,g=!0,e.substr(16).split(",").forEach((function(e){xt(e,"LOCAL:")?u=e.substr(6):xt(e,"MPEGTS:")&&(c=parseInt(e.substr(7)))}));try{t+(9e4*r[i].start||0)<0&&(t+=8589934592),c-=t,d=function(e){var t=parseInt(e.substr(-3)),r=parseInt(e.substr(-6,2)),i=parseInt(e.substr(-9,2)),n=e.length>9?parseInt(e.substr(0,e.indexOf(":"))):0;if(!(Object(l.isFiniteNumber)(t)&&Object(l.isFiniteNumber)(r)&&Object(l.isFiniteNumber)(i)&&Object(l.isFiniteNumber)(n)))throw Error("Malformed X-TIMESTAMP-MAP: Local:"+e);return t+=1e3*r,t+=6e4*i,t+=36e5*n}(u)/1e3,h=c/9e4}catch(e){g=!1,s=e}return}""===e&&(p=!1)}v.parse(e+"\n")})),v.flush()}};function Ft(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Nt(e,t){return e&&e.label===t.name&&!(e.textTrack1||e.textTrack2)}var Bt=function(e){var t,r;function i(t){var r;if((r=e.call(this,t,u.default.MEDIA_ATTACHING,u.default.MEDIA_DETACHING,u.default.FRAG_PARSING_USERDATA,u.default.FRAG_DECRYPTED,u.default.MANIFEST_LOADING,u.default.MANIFEST_LOADED,u.default.FRAG_LOADED,u.default.INIT_PTS_FOUND)||this).media=null,r.config=void 0,r.enabled=!0,r.Cues=void 0,r.textTracks=[],r.tracks=[],r.initPTS=[],r.unparsedVttFrags=[],r.captionsTracks={},r.nonNativeCaptionsTracks={},r.captionsProperties=void 0,r.cea608Parser1=void 0,r.cea608Parser2=void 0,r.lastSn=-1,r.prevCC=-1,r.vttCCs={ccOffset:0,presentationOffset:0,0:{start:0,prevCC:-1,new:!1}},r.hls=t,r.config=t.config,r.Cues=t.config.cueHandler,r.captionsProperties={textTrack1:{label:r.config.captionsTextTrack1Label,languageCode:r.config.captionsTextTrack1LanguageCode},textTrack2:{label:r.config.captionsTextTrack2Label,languageCode:r.config.captionsTextTrack2LanguageCode},textTrack3:{label:r.config.captionsTextTrack3Label,languageCode:r.config.captionsTextTrack3LanguageCode},textTrack4:{label:r.config.captionsTextTrack4Label,languageCode:r.config.captionsTextTrack4LanguageCode}},r.config.enableCEA708Captions){var i=new It(Ft(r),"textTrack1"),n=new It(Ft(r),"textTrack2"),a=new It(Ft(r),"textTrack3"),s=new It(Ft(r),"textTrack4");r.cea608Parser1=new Ct(1,i,n),r.cea608Parser2=new Ct(3,a,s)}return r}r=e,(t=i).prototype=Object.create(r.prototype),t.prototype.constructor=t,t.__proto__=r;var n=i.prototype;return n.addCues=function(e,t,r,i,n){for(var a,s,o,l,c=!1,d=n.length;d--;){var h=n[d],f=(a=h[0],s=h[1],o=t,l=r,Math.min(s,l)-Math.max(a,o));if(f>=0&&(h[0]=Math.min(h[0],t),h[1]=Math.max(h[1],r),c=!0,f/(r-t)>.5))return}if(c||n.push([t,r]),this.config.renderTextTracksNatively)this.Cues.newCue(this.captionsTracks[e],t,r,i);else{var p=this.Cues.newCue(null,t,r,i);this.hls.trigger(u.default.CUES_PARSED,{type:"captions",cues:p,track:e})}},n.onInitPtsFound=function(e){var t=this,r=e.frag,i=e.id,n=e.initPTS,a=this.unparsedVttFrags;"main"===i&&(this.initPTS[r.cc]=n),a.length&&(this.unparsedVttFrags=[],a.forEach((function(e){t.onFragLoaded(e)})))},n.getExistingTrack=function(e){var t=this.media;if(t)for(var r=0;r=a.length||r!==n||!s||this.stopped)this._clearReloadTimer();else if(c.logger.log("subtitle track "+r+" loaded"),i.live){var o=ne(s.details,i,e.stats.trequest);c.logger.log("Reloading live subtitle playlist in "+o+"ms"),this.timer=setTimeout((function(){t._loadCurrentTrack()}),o)}else this._clearReloadTimer()},o.startLoad=function(){this.stopped=!1,this._loadCurrentTrack()},o.stopLoad=function(){this.stopped=!0,this._clearReloadTimer()},o._clearReloadTimer=function(){this.timer&&(clearTimeout(this.timer),this.timer=null)},o._loadCurrentTrack=function(){var e=this.trackId,t=this.tracks,r=this.hls,i=t[e];e<0||!i||i.details&&!i.details.live||(c.logger.log("Loading subtitle track "+e),r.trigger(u.default.SUBTITLE_TRACK_LOADING,{url:i.url,id:e}))},o._toggleTrackModes=function(e){var t=this.media,r=this.subtitleDisplay,i=this.trackId;if(t){var n=jt(t.textTracks);if(-1===e)[].slice.call(n).forEach((function(e){e.mode="disabled"}));else{var a=n[i];a&&(a.mode="disabled")}var s=n[e];s&&(s.mode=r?"showing":"hidden")}},o._setSubtitleTrackInternal=function(e){var t=this.hls,r=this.tracks;!Object(l.isFiniteNumber)(e)||e<-1||e>=r.length||(this.trackId=e,c.logger.log("Switching to subtitle track "+e),t.trigger(u.default.SUBTITLE_TRACK_SWITCH,{id:e}),this._loadCurrentTrack())},o._onTextTracksChanged=function(){if(this.media&&this.hls.config.renderTextTracksNatively){for(var e=-1,t=jt(this.media.textTracks),r=0;r=i[s].start&&a<=i[s].end){n=i[s];break}var o=t.start+t.duration;n?n.end=o:(n={start:a,end:o},i.push(n))}}},n.onMediaAttached=function(e){var t=e.media;this.media=t,t.addEventListener("seeking",this._onMediaSeeking),this.state=me},n.onMediaDetaching=function(){var e=this;this.media&&(this.media.removeEventListener("seeking",this._onMediaSeeking),this.fragmentTracker.removeAllFragments(),this.currentTrackId=-1,this.tracks.forEach((function(t){e.tracksBuffered[t.id]=[]})),this.media=null,this.state=ge)},n.onError=function(e){var t=e.frag;t&&"subtitle"===t.type&&(this.state=me)},n.onSubtitleTracksUpdated=function(e){var t=this;c.logger.log("subtitle tracks updated"),this.tracksBuffered=[],this.tracks=e.subtitleTracks,this.tracks.forEach((function(e){t.tracksBuffered[e.id]=[]}))},n.onSubtitleTrackSwitch=function(e){if(this.currentTrackId=e.id,this.tracks&&this.tracks.length&&-1!==this.currentTrackId){var t=this.tracks[this.currentTrackId];t&&t.details&&this.setInterval(500)}else this.clearInterval()},n.onSubtitleTrackLoaded=function(e){var t=e.id,r=e.details,i=this.currentTrackId,n=this.tracks,a=n[i];t>=n.length||t!==i||!a||(r.live&&function(e,t,r){void 0===r&&(r=0);var i=-1;ie(e,t,(function(e,t,r){t.start=e.start,i=r}));var n=t.fragments;if(i<0)n.forEach((function(e){e.start+=r}));else for(var a=i+1;a0&&r&&r.key&&"AES-128"===r.method){var a=Ht.now();this.decrypter.decrypt(e.payload,r.key.buffer,r.iv.buffer,(function(e){var t=Ht.now();n.trigger(u.default.FRAG_DECRYPTED,{frag:i,payload:e,stats:{tstart:a,tdecrypt:t}})}))}},n.onLevelUpdated=function(e){var t=e.details.fragments;this.lastAVStart=t.length?t[0].start:0},n.doTick=function(){if(this.media)switch(this.state){case me:var e=this.config,t=this.currentTrackId,r=this.fragmentTracker,i=this.media,n=this.tracks;if(!n||!n[t]||!n[t].details)break;var a,s=e.maxBufferHole,o=e.maxFragLookUpTolerance,l=Math.min(e.maxBufferLength,e.maxMaxBufferLength),d=K.bufferedInfo(this._getBuffered(),i.currentTime,s),h=d.end,f=d.len,p=n[t].details,g=p.fragments,v=g.length,m=g[v-1].start+g[v-1].duration;if(f>l)return;var _=this.fragPrevious;h3)return void this.hls.trigger(u.default.ERROR,{type:o.ErrorTypes.KEY_SYSTEM_ERROR,details:o.ErrorDetails.KEY_SYSTEM_LICENSE_REQUEST_FAILED,fatal:!0});var n=3-this._requestLicenseFailureCount+1;c.logger.warn("Retrying license request, "+n+" attempts left"),this._requestLicense(r,i)}}},l._generateLicenseRequestChallenge=function(e,t){switch(e.mediaKeySystemDomain){case Gt.WIDEVINE:return t}throw new Error("unsupported key-system: "+e.mediaKeySystemDomain)},l._requestLicense=function(e,t){c.logger.log("Requesting content license for key-system");var r=this._mediaKeysList[0];if(!r)return c.logger.error("Fatal error: Media is encrypted but no key-system access has been obtained yet"),void this.hls.trigger(u.default.ERROR,{type:o.ErrorTypes.KEY_SYSTEM_ERROR,details:o.ErrorDetails.KEY_SYSTEM_NO_ACCESS,fatal:!0});try{var i=this.getLicenseServerUrl(r.mediaKeySystemDomain),n=this._createLicenseXhr(i,e,t);c.logger.log("Sending license request to URL: "+i);var a=this._generateLicenseRequestChallenge(r,e);n.send(a)}catch(e){c.logger.error("Failure requesting DRM license: "+e),this.hls.trigger(u.default.ERROR,{type:o.ErrorTypes.KEY_SYSTEM_ERROR,details:o.ErrorDetails.KEY_SYSTEM_LICENSE_REQUEST_FAILED,fatal:!0})}},l.onMediaAttached=function(e){if(this._emeEnabled){var t=e.media;this._media=t,t.addEventListener("encrypted",this._onMediaEncrypted)}},l.onMediaDetached=function(){var e=this._media,t=this._mediaKeysList;e&&(e.removeEventListener("encrypted",this._onMediaEncrypted),this._media=null,this._mediaKeysList=[],Promise.all(t.map((function(e){if(e.mediaKeysSession)return e.mediaKeysSession.close().catch((function(){}))}))).then((function(){return e.setMediaKeys(null)})).catch((function(){})))},l.onManifestParsed=function(e){if(this._emeEnabled){var t=e.levels.map((function(e){return e.audioCodec})),r=e.levels.map((function(e){return e.videoCodec}));this._attemptKeySystemAccess(Gt.WIDEVINE,t,r)}},n=i,(a=[{key:"requestMediaKeySystemAccess",get:function(){if(!this._requestMediaKeySystemAccess)throw new Error("No requestMediaKeySystemAccess function configured");return this._requestMediaKeySystemAccess}}])&&qt(n.prototype,a),s&&qt(n,s),i}(h);function Xt(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i)}return r}function $t(e){for(var t=1;tt)return i;return 0}},{key:"maxAutoLevel",get:function(){var e=this.levels,t=this.autoLevelCapping;return-1===t&&e&&e.length?e.length-1:t}},{key:"nextAutoLevel",get:function(){return Math.min(Math.max(this.abrController.nextAutoLevel,this.minAutoLevel),this.maxAutoLevel)},set:function(e){this.abrController.nextAutoLevel=Math.max(this.minAutoLevel,e)}},{key:"audioTracks",get:function(){var e=this.audioTrackController;return e?e.audioTracks:[]}},{key:"audioTrack",get:function(){var e=this.audioTrackController;return e?e.audioTrack:-1},set:function(e){var t=this.audioTrackController;t&&(t.audioTrack=e)}},{key:"liveSyncPosition",get:function(){return this.streamController.liveSyncPosition}},{key:"subtitleTracks",get:function(){var e=this.subtitleTrackController;return e?e.subtitleTracks:[]}},{key:"subtitleTrack",get:function(){var e=this.subtitleTrackController;return e?e.subtitleTrack:-1},set:function(e){var t=this.subtitleTrackController;t&&(t.subtitleTrack=e)}},{key:"subtitleDisplay",get:function(){var e=this.subtitleTrackController;return!!e&&e.subtitleDisplay},set:function(e){var t=this.subtitleTrackController;t&&(t.subtitleDisplay=e)}}]),i}(X);ar.defaultConfig=void 0},"./src/polyfills/number.js": +/*!*********************************!*\ + !*** ./src/polyfills/number.js ***! + \*********************************/ +/*! exports provided: isFiniteNumber, MAX_SAFE_INTEGER */function(e,t,r){"use strict";r.r(t),r.d(t,"isFiniteNumber",(function(){return i})),r.d(t,"MAX_SAFE_INTEGER",(function(){return n}));var i=Number.isFinite||function(e){return"number"==typeof e&&isFinite(e)},n=Number.MAX_SAFE_INTEGER||9007199254740991},"./src/utils/get-self-scope.js": +/*!*************************************!*\ + !*** ./src/utils/get-self-scope.js ***! + \*************************************/ +/*! exports provided: getSelfScope */function(e,t,r){"use strict";function i(){return"undefined"==typeof window?self:window}r.r(t),r.d(t,"getSelfScope",(function(){return i}))},"./src/utils/logger.js": +/*!*****************************!*\ + !*** ./src/utils/logger.js ***! + \*****************************/ +/*! exports provided: enableLogs, logger */function(e,t,r){"use strict";r.r(t),r.d(t,"enableLogs",(function(){return c})),r.d(t,"logger",(function(){return d}));var i=r(/*! ./get-self-scope */"./src/utils/get-self-scope.js");function n(){}var a={trace:n,debug:n,log:n,warn:n,info:n,error:n},s=a;function o(e,t){return t="["+e+"] > "+t}var l=Object(i.getSelfScope)();function u(e){var t=l.console[e];return t?function(){for(var r=arguments.length,i=new Array(r),n=0;n1?t-1:0),i=1;i1)for(var r=1;r0){r=!1;break}return r}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:"",r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};a(this,e);var i={color:"#ffffff",fontSize:14,fontFamily:"微软雅黑",fontWeight:600,text:t,area:.5,leftDom:null,rightDom:null};this.option=(0,n.assign)({},i,r)}return i(e,[{key:"getText",value:function(){return this.option.text}},{key:"getColor",value:function(){return this.option.color}},{key:"getFontSize",value:function(){return this.option.fontSize+"px"}},{key:"getFontFamily",value:function(){return this.option.fontFamily}},{key:"getMinTop",value:function(e){return e.clientHeight-e.clientHeight*(1-this.option.area)+80}},{key:"getLeftDom",value:function(){return this.option.leftDom}},{key:"getRightDom",value:function(){return this.option.rightDom}},{key:"getFontWeight",value:function(){return this.option.fontWeight}}]),e}();t.default=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{};s(this,t);var r={speeds:["0.5","1.0","1.25","1.5","2.0"]},i=o(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return i.option=Object.assign({},r,e),i.active_="1.0",i.activeLi_=null,i.icon_={"1.0":"",.5:"",1.25:"",1.5:"","2.0":""},i}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),n(t,[{key:"create_",value:function(){var e=this,t=this.speed_=document.createElement("div");t.className="sv-speedBtn sv-font sv-next";var r=this.span_=document.createElement("span");t.appendChild(r),r.innerHTML=this.icon_[this.active_],this.element_.appendChild(t);var i=document.createElement("div");i.className="sv-speed-btn hide",t.appendChild(i);var n=document.createElement("ul");this.option.speeds.forEach((function(t){var i=document.createElement("li");i.setAttribute("id",t),e.active_===t&&(i.className="sv-active",e.activeLi_=i),i.innerHTML=t+"X",i.onclick=function(){e.video_.setPlaybackRate_(Number(t)),e.active_=t,r.innerHTML=e.icon_[e.active_],e.activeLi_.classList.remove("sv-active"),i.className="sv-active",e.activeLi_=i},n.appendChild(i)})),i.appendChild(n),t.onmouseover=function(){i.classList.remove("hide")};var a=null;t.onmouseleave=function(){a=setTimeout((function(){i.classList.add("hide"),clearTimeout(a)}),500)},i.onmouseover=function(t){i.classList.remove("hide"),null!==e.video_.timer_&&clearTimeout(e.video_.timer_),e.video_.control_.classList.remove("hide"),e.video_.progressBar_.classList.remove("hide"),clearTimeout(a),(t||window.event).stopPropagation()},i.onmouseleave=function(){i.classList.remove("hide")}}},{key:"setSpeed",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"1.0";if(this.option.speeds.indexOf(e)>=0){this.active_=e,this.span_.innerHTML=this.icon_[this.active_];var t=document.getElementById(e);null!==this.activeLi_&&this.activeLi_.classList.remove("sv-active"),this.activeLi_=t,this.video_.setPlaybackRate_(Number(e))}}}]),t}(((i=a)&&i.__esModule?i:{default:i}).default);t.default=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{};u(this,t);var r={width:240,colors:["#FE0302","#FF7204","#FFAA02","#FFD302","#00CD00","#A0EE00","#00CD00","#019899","#4266BE","#89D5FF","#CC0273","#222222","#9B9B9B","#FFFFFF"],activeColor:"#FFFFFF",value:""},i=c(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return i.option=(0,o.assign)({},r,e),i.activeLi_=null,i}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),i(t,[{key:"create_",value:function(){var e=this,t=document.createElement("div");t.className="sv-barrage",this.element_.appendChild(t);var r=document.createElement("div");r.className="sv-barrage-a",t.appendChild(r);var i=this.barrageInput_=document.createElement("input");i.className="sv-barrage-input",i.placeholder="发个弹幕见证当下",t.appendChild(i);var n=document.createElement("button");n.className="sv-barrage-button",n.innerHTML="发送",t.appendChild(n);var o=document.createElement("div");o.innerHTML="",o.className="sv-barrage-font sv-font sv-fontBtn",t.appendChild(o);var l=document.createElement("div");l.className="sv-apanel hide",t.appendChild(l);var u=document.createElement("div");u.className="sv-apanel-item",l.appendChild(u);var c=document.createElement("span");c.innerHTML="颜色",u.appendChild(c);var d=document.createElement("ul");this.option.colors.forEach((function(t){var r=document.createElement("li");r.setAttribute("color",t),r.style.backgroundColor=t,d.appendChild(r),r.onclick=function(){e.option.activeColor=r.getAttribute("color"),r.classList.add("activeColor"),e.activeLi_.classList.remove("activeColor"),e.activeLi_=r},"#FFFFFF"===t&&(e.activeLi_=r,r.classList.add("activeColor"))})),u.appendChild(d),this.setWidth(),n.onclick=function(){var t=e.option.activeColor;e.video_.addBarrage_(new s.default(i.value,{color:t})),e.option.value=i.value,i.value="",e.dispatchEvent(a.default.SEND)},i.onkeydown=function(e){13===e.keyCode&&n.click()},o.onmouseover=function(){l.classList.remove("hide")};var h=null;o.onmouseleave=function(){h=setTimeout((function(){l.classList.add("hide"),clearTimeout(h)}),500)},l.onmouseover=function(){l.classList.remove("hide"),clearTimeout(h)},l.onmouseleave=function(){l.classList.add("hide")}}},{key:"setBarrage_",value:function(e){this.video_.addBarrage_(e)}},{key:"setWidth",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:240;this.barrageInput_.style.width=e+"px",this.option.width=e}}]),t}(n.default);t.default=d},function(e,t,r){"use strict";r.r(t);class i{static install(){Object.setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Object.assign=Object.assign||function(e){if(null==e)throw new TypeError("Cannot convert undefined or null to object");let t=Object(e);for(let e=1;e ${t}`;o.ENABLE_CALLBACK&&o.emitter.emit("log","error",r),o.ENABLE_ERROR&&(console.error?console.error(r):console.warn?console.warn(r):console.log(r))}static i(e,t){e&&!o.FORCE_GLOBAL_TAG||(e=o.GLOBAL_TAG);let r=`[${e}] > ${t}`;o.ENABLE_CALLBACK&&o.emitter.emit("log","info",r),o.ENABLE_INFO&&(console.info?console.info(r):console.log(r))}static w(e,t){e&&!o.FORCE_GLOBAL_TAG||(e=o.GLOBAL_TAG);let r=`[${e}] > ${t}`;o.ENABLE_CALLBACK&&o.emitter.emit("log","warn",r),o.ENABLE_WARN&&(console.warn?console.warn(r):console.log(r))}static d(e,t){e&&!o.FORCE_GLOBAL_TAG||(e=o.GLOBAL_TAG);let r=`[${e}] > ${t}`;o.ENABLE_CALLBACK&&o.emitter.emit("log","debug",r),o.ENABLE_DEBUG&&(console.debug?console.debug(r):console.log(r))}static v(e,t){e&&!o.FORCE_GLOBAL_TAG||(e=o.GLOBAL_TAG);let r=`[${e}] > ${t}`;o.ENABLE_CALLBACK&&o.emitter.emit("log","verbose",r),o.ENABLE_VERBOSE&&console.log(r)}}o.GLOBAL_TAG="flv.js",o.FORCE_GLOBAL_TAG=!1,o.ENABLE_ERROR=!0,o.ENABLE_INFO=!0,o.ENABLE_WARN=!0,o.ENABLE_DEBUG=!0,o.ENABLE_VERBOSE=!0,o.ENABLE_CALLBACK=!1,o.emitter=new s.a;var l=o;var u=class{constructor(){this._firstCheckpoint=0,this._lastCheckpoint=0,this._intervalBytes=0,this._totalBytes=0,this._lastSecondBytes=0,self.performance&&self.performance.now?this._now=self.performance.now.bind(self.performance):this._now=Date.now}reset(){this._firstCheckpoint=this._lastCheckpoint=0,this._totalBytes=this._intervalBytes=0,this._lastSecondBytes=0}addBytes(e){0===this._firstCheckpoint?(this._firstCheckpoint=this._now(),this._lastCheckpoint=this._firstCheckpoint,this._intervalBytes+=e,this._totalBytes+=e):this._now()-this._lastCheckpoint<1e3?(this._intervalBytes+=e,this._totalBytes+=e):(this._lastSecondBytes=this._intervalBytes,this._intervalBytes=e,this._totalBytes+=e,this._lastCheckpoint=this._now())}get currentKBps(){this.addBytes(0);let e=(this._now()-this._lastCheckpoint)/1e3;return 0==e&&(e=1),this._intervalBytes/e/1024}get lastSecondKBps(){return this.addBytes(0),0!==this._lastSecondBytes?this._lastSecondBytes/1024:this._now()-this._lastCheckpoint>=500?this.currentKBps:0}get averageKBps(){let e=(this._now()-this._firstCheckpoint)/1e3;return this._totalBytes/e/1024}};class c{constructor(e){this._message=e}get name(){return"RuntimeException"}get message(){return this._message}toString(){return this.name+": "+this.message}}class d extends c{constructor(e){super(e)}get name(){return"IllegalStateException"}}class h extends c{constructor(e){super(e)}get name(){return"InvalidArgumentException"}}class f extends c{constructor(e){super(e)}get name(){return"NotImplementedException"}}const p={kIdle:0,kConnecting:1,kBuffering:2,kError:3,kComplete:4},g={OK:"OK",EXCEPTION:"Exception",HTTP_STATUS_CODE_INVALID:"HttpStatusCodeInvalid",CONNECTING_TIMEOUT:"ConnectingTimeout",EARLY_EOF:"EarlyEof",UNRECOVERABLE_EARLY_EOF:"UnrecoverableEarlyEof"};class v{constructor(e){this._type=e||"undefined",this._status=p.kIdle,this._needStash=!1,this._onContentLengthKnown=null,this._onURLRedirect=null,this._onDataArrival=null,this._onError=null,this._onComplete=null}destroy(){this._status=p.kIdle,this._onContentLengthKnown=null,this._onURLRedirect=null,this._onDataArrival=null,this._onError=null,this._onComplete=null}isWorking(){return this._status===p.kConnecting||this._status===p.kBuffering}get type(){return this._type}get status(){return this._status}get needStashBuffer(){return this._needStash}get onContentLengthKnown(){return this._onContentLengthKnown}set onContentLengthKnown(e){this._onContentLengthKnown=e}get onURLRedirect(){return this._onURLRedirect}set onURLRedirect(e){this._onURLRedirect=e}get onDataArrival(){return this._onDataArrival}set onDataArrival(e){this._onDataArrival=e}get onError(){return this._onError}set onError(e){this._onError=e}get onComplete(){return this._onComplete}set onComplete(e){this._onComplete=e}open(e,t){throw new f("Unimplemented abstract function!")}abort(){throw new f("Unimplemented abstract function!")}}let m={};!function(){let e=self.navigator.userAgent.toLowerCase(),t=/(edge)\/([\w.]+)/.exec(e)||/(opr)[\/]([\w.]+)/.exec(e)||/(chrome)[ \/]([\w.]+)/.exec(e)||/(iemobile)[\/]([\w.]+)/.exec(e)||/(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(e)||/(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(e)||/(webkit)[ \/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(e)||/(msie) ([\w.]+)/.exec(e)||e.indexOf("trident")>=0&&/(rv)(?::| )([\w.]+)/.exec(e)||e.indexOf("compatible")<0&&/(firefox)[ \/]([\w.]+)/.exec(e)||[],r=/(ipad)/.exec(e)||/(ipod)/.exec(e)||/(windows phone)/.exec(e)||/(iphone)/.exec(e)||/(kindle)/.exec(e)||/(android)/.exec(e)||/(windows)/.exec(e)||/(mac)/.exec(e)||/(linux)/.exec(e)||/(cros)/.exec(e)||[],i={browser:t[5]||t[3]||t[1]||"",version:t[2]||t[4]||"0",majorVersion:t[4]||t[2]||"0",platform:r[0]||""},n={};if(i.browser){n[i.browser]=!0;let e=i.majorVersion.split(".");n.version={major:parseInt(i.majorVersion,10),string:i.version},e.length>1&&(n.version.minor=parseInt(e[1],10)),e.length>2&&(n.version.build=parseInt(e[2],10))}if(i.platform&&(n[i.platform]=!0),(n.chrome||n.opr||n.safari)&&(n.webkit=!0),n.rv||n.iemobile){n.rv&&delete n.rv;let e="msie";i.browser=e,n[e]=!0}if(n.edge){delete n.edge;let e="msedge";i.browser=e,n[e]=!0}if(n.opr){let e="opera";i.browser=e,n[e]=!0}if(n.safari&&n.android){let e="android";i.browser=e,n[e]=!0}n.name=i.browser,n.platform=i.platform;for(let e in m)m.hasOwnProperty(e)&&delete m[e];Object.assign(m,n)}();var _=m;var y=class extends v{static isSupported(){try{let e=_.msedge&&_.version.minor>=15048,t=!_.msedge||e;return self.fetch&&self.ReadableStream&&t}catch(e){return!1}}constructor(e,t){super("fetch-stream-loader"),this.TAG="FetchStreamLoader",this._seekHandler=e,this._config=t,this._needStash=!0,this._requestAbort=!1,this._contentLength=null,this._receivedLength=0}destroy(){this.isWorking()&&this.abort(),super.destroy()}open(e,t){this._dataSource=e,this._range=t;let r=e.url;this._config.reuseRedirectedURL&&null!=e.redirectedURL&&(r=e.redirectedURL);let i=this._seekHandler.getConfig(r,t),n=new self.Headers;if("object"==typeof i.headers){let e=i.headers;for(let t in e)e.hasOwnProperty(t)&&n.append(t,e[t])}let a={method:"GET",headers:n,mode:"cors",cache:"default",referrerPolicy:"no-referrer-when-downgrade"};if("object"==typeof this._config.headers)for(let e in this._config.headers)n.append(e,this._config.headers[e]);!1===e.cors&&(a.mode="same-origin"),e.withCredentials&&(a.credentials="include"),e.referrerPolicy&&(a.referrerPolicy=e.referrerPolicy),this._status=p.kConnecting,self.fetch(i.url,a).then(e=>{if(this._requestAbort)return this._requestAbort=!1,void(this._status=p.kIdle);if(e.ok&&e.status>=200&&e.status<=299){if(e.url!==i.url&&this._onURLRedirect){let t=this._seekHandler.removeURLParameters(e.url);this._onURLRedirect(t)}let t=e.headers.get("Content-Length");return null!=t&&(this._contentLength=parseInt(t),0!==this._contentLength&&this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength)),this._pump.call(this,e.body.getReader())}if(this._status=p.kError,!this._onError)throw new c("FetchStreamLoader: Http code invalid, "+e.status+" "+e.statusText);this._onError(g.HTTP_STATUS_CODE_INVALID,{code:e.status,msg:e.statusText})}).catch(e=>{if(this._status=p.kError,!this._onError)throw e;this._onError(g.EXCEPTION,{code:-1,msg:e.message})})}abort(){this._requestAbort=!0}_pump(e){return e.read().then(t=>{if(t.done)if(null!==this._contentLength&&this._receivedLength{if(11===e.code&&_.msedge)return;this._status=p.kError;let t=0,r=null;if(19!==e.code&&"network error"!==e.message||!(null===this._contentLength||null!==this._contentLength&&this._receivedLength299)){if(this._status=p.kError,!this._onError)throw new c("MozChunkedLoader: Http code invalid, "+t.status+" "+t.statusText);this._onError(g.HTTP_STATUS_CODE_INVALID,{code:t.status,msg:t.statusText})}else this._status=p.kBuffering}}_onProgress(e){if(this._status===p.kError)return;null===this._contentLength&&null!==e.total&&0!==e.total&&(this._contentLength=e.total,this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength));let t=e.target.response,r=this._range.from+this._receivedLength;this._receivedLength+=t.byteLength,this._onDataArrival&&this._onDataArrival(t,r,this._receivedLength)}_onLoadEnd(e){!0!==this._requestAbort?this._status!==p.kError&&(this._status=p.kComplete,this._onComplete&&this._onComplete(this._range.from,this._range.from+this._receivedLength-1)):this._requestAbort=!1}_onXhrError(e){this._status=p.kError;let t=0,r=null;if(this._contentLength&&e.loaded=this._contentLength&&(r=this._range.from+this._contentLength-1),this._currentRequestRange={from:t,to:r},this._internalOpen(this._dataSource,this._currentRequestRange)}_internalOpen(e,t){this._lastTimeLoaded=0;let r=e.url;this._config.reuseRedirectedURL&&(null!=this._currentRedirectedURL?r=this._currentRedirectedURL:null!=e.redirectedURL&&(r=e.redirectedURL));let i=this._seekHandler.getConfig(r,t);this._currentRequestURL=i.url;let n=this._xhr=new XMLHttpRequest;if(n.open("GET",i.url,!0),n.responseType="arraybuffer",n.onreadystatechange=this._onReadyStateChange.bind(this),n.onprogress=this._onProgress.bind(this),n.onload=this._onLoad.bind(this),n.onerror=this._onXhrError.bind(this),e.withCredentials&&(n.withCredentials=!0),"object"==typeof i.headers){let e=i.headers;for(let t in e)e.hasOwnProperty(t)&&n.setRequestHeader(t,e[t])}if("object"==typeof this._config.headers){let e=this._config.headers;for(let t in e)e.hasOwnProperty(t)&&n.setRequestHeader(t,e[t])}n.send()}abort(){this._requestAbort=!0,this._internalAbort(),this._status=p.kComplete}_internalAbort(){this._xhr&&(this._xhr.onreadystatechange=null,this._xhr.onprogress=null,this._xhr.onload=null,this._xhr.onerror=null,this._xhr.abort(),this._xhr=null)}_onReadyStateChange(e){let t=e.target;if(2===t.readyState){if(null!=t.responseURL){let e=this._seekHandler.removeURLParameters(t.responseURL);t.responseURL!==this._currentRequestURL&&e!==this._currentRedirectedURL&&(this._currentRedirectedURL=e,this._onURLRedirect&&this._onURLRedirect(e))}if(t.status>=200&&t.status<=299){if(this._waitForTotalLength)return;this._status=p.kBuffering}else{if(this._status=p.kError,!this._onError)throw new c("RangeLoader: Http code invalid, "+t.status+" "+t.statusText);this._onError(g.HTTP_STATUS_CODE_INVALID,{code:t.status,msg:t.statusText})}}}_onProgress(e){if(this._status===p.kError)return;if(null===this._contentLength){let t=!1;if(this._waitForTotalLength){this._waitForTotalLength=!1,this._totalLengthReceived=!0,t=!0;let r=e.total;this._internalAbort(),null!=r&0!==r&&(this._totalLength=r)}if(-1===this._range.to?this._contentLength=this._totalLength-this._range.from:this._contentLength=this._range.to-this._range.from+1,t)return void this._openSubRange();this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength)}let t=e.loaded-this._lastTimeLoaded;this._lastTimeLoaded=e.loaded,this._speedSampler.addBytes(t)}_normalizeSpeed(e){let t=this._chunkSizeKBList,r=t.length-1,i=0,n=0,a=r;if(e=t[i]&&e=3&&(t=this._speedSampler.currentKBps)),0!==t){let e=this._normalizeSpeed(t);this._currentSpeedNormalized!==e&&(this._currentSpeedNormalized=e,this._currentChunkSizeKB=e)}let r=e.target.response,i=this._range.from+this._receivedLength;this._receivedLength+=r.byteLength;let n=!1;null!=this._contentLength&&this._receivedLength0&&this._receivedLength{this._dispatchArrayBuffer(t.result)},t.readAsArrayBuffer(e.data)}else{this._status=p.kError;let t={code:-1,msg:"Unsupported WebSocket message type: "+e.data.constructor.name};if(!this._onError)throw new c(t.msg);this._onError(g.EXCEPTION,t)}}_dispatchArrayBuffer(e){let t=e,r=this._receivedLength;this._receivedLength+=t.byteLength,this._onDataArrival&&this._onDataArrival(t,r,this._receivedLength)}_onWebSocketError(e){this._status=p.kError;let t={code:e.code,msg:e.message};if(!this._onError)throw new c(t.msg);this._onError(g.EXCEPTION,t)}};var T=class{constructor(e){this._zeroStart=e||!1}getConfig(e,t){let r={};if(0!==t.from||-1!==t.to){let e;e=-1!==t.to?`bytes=${t.from.toString()}-${t.to.toString()}`:`bytes=${t.from.toString()}-`,r.Range=e}else this._zeroStart&&(r.Range="bytes=0-");return{url:e,headers:r}}removeURLParameters(e){return e}};var A=class{constructor(e,t){this._startName=e,this._endName=t}getConfig(e,t){let r=e;if(0!==t.from||-1!==t.to){let e=!0;-1===r.indexOf("?")&&(r+="?",e=!1),e&&(r+="&"),r+=`${this._startName}=${t.from.toString()}`,-1!==t.to&&(r+=`&${this._endName}=${t.to.toString()}`)}return{url:r,headers:{}}}removeURLParameters(e){let t=e.split("?")[0],r=void 0,i=e.indexOf("?");-1!==i&&(r=e.substring(i+1));let n="";if(null!=r&&r.length>0){let e=r.split("&");for(let t=0;t0;r[0]!==this._startName&&r[0]!==this._endName&&(i&&(n+="&"),n+=e[t])}}return 0===n.length?t:t+"?"+n}};var w=class{constructor(e,t,r){this.TAG="IOController",this._config=t,this._extraData=r,this._stashInitialSize=393216,null!=t.stashInitialSize&&t.stashInitialSize>0&&(this._stashInitialSize=t.stashInitialSize),this._stashUsed=0,this._stashSize=this._stashInitialSize,this._bufferSize=3145728,this._stashBuffer=new ArrayBuffer(this._bufferSize),this._stashByteStart=0,this._enableStash=!0,!1===t.enableStashBuffer&&(this._enableStash=!1),this._loader=null,this._loaderClass=null,this._seekHandler=null,this._dataSource=e,this._isWebSocketURL=/wss?:\/\/(.+?)/.test(e.url),this._refTotalLength=e.filesize?e.filesize:null,this._totalLength=this._refTotalLength,this._fullRequestFlag=!1,this._currentRange=null,this._redirectedURL=null,this._speedNormalized=0,this._speedSampler=new u,this._speedNormalizeList=[64,128,256,384,512,768,1024,1536,2048,3072,4096],this._isEarlyEofReconnecting=!1,this._paused=!1,this._resumeFrom=0,this._onDataArrival=null,this._onSeeked=null,this._onError=null,this._onComplete=null,this._onRedirect=null,this._onRecoveredEarlyEof=null,this._selectSeekHandler(),this._selectLoader(),this._createLoader()}destroy(){this._loader.isWorking()&&this._loader.abort(),this._loader.destroy(),this._loader=null,this._loaderClass=null,this._dataSource=null,this._stashBuffer=null,this._stashUsed=this._stashSize=this._bufferSize=this._stashByteStart=0,this._currentRange=null,this._speedSampler=null,this._isEarlyEofReconnecting=!1,this._onDataArrival=null,this._onSeeked=null,this._onError=null,this._onComplete=null,this._onRedirect=null,this._onRecoveredEarlyEof=null,this._extraData=null}isWorking(){return this._loader&&this._loader.isWorking()&&!this._paused}isPaused(){return this._paused}get status(){return this._loader.status}get extraData(){return this._extraData}set extraData(e){this._extraData=e}get onDataArrival(){return this._onDataArrival}set onDataArrival(e){this._onDataArrival=e}get onSeeked(){return this._onSeeked}set onSeeked(e){this._onSeeked=e}get onError(){return this._onError}set onError(e){this._onError=e}get onComplete(){return this._onComplete}set onComplete(e){this._onComplete=e}get onRedirect(){return this._onRedirect}set onRedirect(e){this._onRedirect=e}get onRecoveredEarlyEof(){return this._onRecoveredEarlyEof}set onRecoveredEarlyEof(e){this._onRecoveredEarlyEof=e}get currentURL(){return this._dataSource.url}get hasRedirect(){return null!=this._redirectedURL||null!=this._dataSource.redirectedURL}get currentRedirectedURL(){return this._redirectedURL||this._dataSource.redirectedURL}get currentSpeed(){return this._loaderClass===b?this._loader.currentSpeed:this._speedSampler.lastSecondKBps}get loaderType(){return this._loader.type}_selectSeekHandler(){let e=this._config;if("range"===e.seekType)this._seekHandler=new T(this._config.rangeLoadZeroStart);else if("param"===e.seekType){let t=e.seekParamStart||"bstart",r=e.seekParamEnd||"bend";this._seekHandler=new A(t,r)}else{if("custom"!==e.seekType)throw new h("Invalid seekType in config: "+e.seekType);if("function"!=typeof e.customSeekHandler)throw new h("Custom seekType specified in config but invalid customSeekHandler!");this._seekHandler=new e.customSeekHandler}}_selectLoader(){if(null!=this._config.customLoader)this._loaderClass=this._config.customLoader;else if(this._isWebSocketURL)this._loaderClass=S;else if(y.isSupported())this._loaderClass=y;else if(E.isSupported())this._loaderClass=E;else{if(!b.isSupported())throw new c("Your browser doesn't support xhr with arraybuffer responseType!");this._loaderClass=b}}_createLoader(){this._loader=new this._loaderClass(this._seekHandler,this._config),!1===this._loader.needStashBuffer&&(this._enableStash=!1),this._loader.onContentLengthKnown=this._onContentLengthKnown.bind(this),this._loader.onURLRedirect=this._onURLRedirect.bind(this),this._loader.onDataArrival=this._onLoaderChunkArrival.bind(this),this._loader.onComplete=this._onLoaderComplete.bind(this),this._loader.onError=this._onLoaderError.bind(this)}open(e){this._currentRange={from:0,to:-1},e&&(this._currentRange.from=e),this._speedSampler.reset(),e||(this._fullRequestFlag=!0),this._loader.open(this._dataSource,Object.assign({},this._currentRange))}abort(){this._loader.abort(),this._paused&&(this._paused=!1,this._resumeFrom=0)}pause(){this.isWorking()&&(this._loader.abort(),0!==this._stashUsed?(this._resumeFrom=this._stashByteStart,this._currentRange.to=this._stashByteStart-1):this._resumeFrom=this._currentRange.to+1,this._stashUsed=0,this._stashByteStart=0,this._paused=!0)}resume(){if(this._paused){this._paused=!1;let e=this._resumeFrom;this._resumeFrom=0,this._internalSeek(e,!0)}}seek(e){this._paused=!1,this._stashUsed=0,this._stashByteStart=0,this._internalSeek(e,!0)}_internalSeek(e,t){this._loader.isWorking()&&this._loader.abort(),this._flushStashBuffer(t),this._loader.destroy(),this._loader=null;let r={from:e,to:-1};this._currentRange={from:r.from,to:-1},this._speedSampler.reset(),this._stashSize=this._stashInitialSize,this._createLoader(),this._loader.open(this._dataSource,r),this._onSeeked&&this._onSeeked()}updateUrl(e){if(!e||"string"!=typeof e||0===e.length)throw new h("Url must be a non-empty string!");this._dataSource.url=e}_expandBuffer(e){let t=this._stashSize;for(;t+10485760){let e=new Uint8Array(this._stashBuffer,0,this._stashUsed);new Uint8Array(r,0,t).set(e,0)}this._stashBuffer=r,this._bufferSize=t}_normalizeSpeed(e){let t=this._speedNormalizeList,r=t.length-1,i=0,n=0,a=r;if(e=t[i]&&e=512&&e<=1024?Math.floor(1.5*e):2*e,t>8192&&(t=8192);let r=1024*t+1048576;this._bufferSize0){let t=this._stashBuffer.slice(0,this._stashUsed),i=this._dispatchChunks(t,this._stashByteStart);if(i0){let e=new Uint8Array(t,i);r.set(e,0),this._stashUsed=e.byteLength,this._stashByteStart+=i}}else this._stashUsed=0,this._stashByteStart+=i;this._stashUsed+e.byteLength>this._bufferSize&&(this._expandBuffer(this._stashUsed+e.byteLength),r=new Uint8Array(this._stashBuffer,0,this._bufferSize)),r.set(new Uint8Array(e),this._stashUsed),this._stashUsed+=e.byteLength}else{let i=this._dispatchChunks(e,t);if(ithis._bufferSize&&(this._expandBuffer(n),r=new Uint8Array(this._stashBuffer,0,this._bufferSize)),r.set(new Uint8Array(e,i),0),this._stashUsed+=n,this._stashByteStart=t+i}}}else if(0===this._stashUsed){let r=this._dispatchChunks(e,t);if(rthis._bufferSize&&this._expandBuffer(i),new Uint8Array(this._stashBuffer,0,this._bufferSize).set(new Uint8Array(e,r),0),this._stashUsed+=i,this._stashByteStart=t+r}}else{this._stashUsed+e.byteLength>this._bufferSize&&this._expandBuffer(this._stashUsed+e.byteLength);let t=new Uint8Array(this._stashBuffer,0,this._bufferSize);t.set(new Uint8Array(e),this._stashUsed),this._stashUsed+=e.byteLength;let r=this._dispatchChunks(this._stashBuffer.slice(0,this._stashUsed),this._stashByteStart);if(r0){let e=new Uint8Array(this._stashBuffer,r);t.set(e,0)}this._stashUsed-=r,this._stashByteStart+=r}}_flushStashBuffer(e){if(this._stashUsed>0){let t=this._stashBuffer.slice(0,this._stashUsed),r=this._dispatchChunks(t,this._stashByteStart),i=t.byteLength-r;if(r0){let e=new Uint8Array(this._stashBuffer,0,this._bufferSize),i=new Uint8Array(t,r);e.set(i,0),this._stashUsed=i.byteLength,this._stashByteStart+=r}return 0}l.w(this.TAG,i+" bytes unconsumed data remain when flush buffer, dropped")}return this._stashUsed=0,this._stashByteStart=0,i}return 0}_onLoaderComplete(e,t){this._flushStashBuffer(!0),this._onComplete&&this._onComplete(this._extraData)}_onLoaderError(e,t){switch(l.e(this.TAG,`Loader error, code = ${t.code}, msg = ${t.msg}`),this._flushStashBuffer(!1),this._isEarlyEofReconnecting&&(this._isEarlyEofReconnecting=!1,e=g.UNRECOVERABLE_EARLY_EOF),e){case g.EARLY_EOF:if(!this._config.isLive&&this._totalLength){let e=this._currentRange.to+1;return void(e0){let t=C.getConfig();e.emit("change",t)}}static registerListener(e){C.emitter.addListener("change",e)}static removeListener(e){C.emitter.removeListener("change",e)}static addLogListener(e){l.emitter.addListener("log",e),l.emitter.listenerCount("log")>0&&(l.ENABLE_CALLBACK=!0,C._notifyChange())}static removeLogListener(e){l.emitter.removeListener("log",e),0===l.emitter.listenerCount("log")&&(l.ENABLE_CALLBACK=!1,C._notifyChange())}}C.emitter=new s.a;var I=C;var x=class{constructor(){this.mimeType=null,this.duration=null,this.hasAudio=null,this.hasVideo=null,this.audioCodec=null,this.videoCodec=null,this.audioDataRate=null,this.videoDataRate=null,this.audioSampleRate=null,this.audioChannelCount=null,this.width=null,this.height=null,this.fps=null,this.profile=null,this.level=null,this.refFrames=null,this.chromaFormat=null,this.sarNum=null,this.sarDen=null,this.metadata=null,this.segments=null,this.segmentCount=null,this.hasKeyframesIndex=null,this.keyframesIndex=null}isComplete(){let e=!1===this.hasAudio||!0===this.hasAudio&&null!=this.audioCodec&&null!=this.audioSampleRate&&null!=this.audioChannelCount,t=!1===this.hasVideo||!0===this.hasVideo&&null!=this.videoCodec&&null!=this.width&&null!=this.height&&null!=this.fps&&null!=this.profile&&null!=this.level&&null!=this.refFrames&&null!=this.chromaFormat&&null!=this.sarNum&&null!=this.sarDen;return null!=this.mimeType&&null!=this.duration&&null!=this.metadata&&null!=this.hasKeyframesIndex&&e&&t}isSeekable(){return!0===this.hasKeyframesIndex}getNearestKeyframe(e){if(null==this.keyframesIndex)return null;let t=this.keyframesIndex,r=this._search(t.times,e);return{index:r,milliseconds:t.times[r],fileposition:t.filepositions[r]}}_search(e,t){let r=0,i=e.length-1,n=0,a=0,s=i;for(t=e[n]&&t=128){t.push(String.fromCharCode(65535&e)),i+=2;continue}}}else if(r[i]<240){if(P(r,i,2)){let e=(15&r[i])<<12|(63&r[i+1])<<6|63&r[i+2];if(e>=2048&&55296!=(63488&e)){t.push(String.fromCharCode(65535&e)),i+=3;continue}}}else if(r[i]<248&&P(r,i,3)){let e=(7&r[i])<<18|(63&r[i+1])<<12|(63&r[i+2])<<6|63&r[i+3];if(e>65536&&e<1114112){e-=65536,t.push(String.fromCharCode(e>>>10|55296)),t.push(String.fromCharCode(1023&e|56320)),i+=4;continue}}t.push(String.fromCharCode(65533)),++i}return t.join("")};let F=function(){let e=new ArrayBuffer(2);return new DataView(e).setInt16(0,256,!0),256===new Int16Array(e)[0]}();class N{static parseScriptData(e,t,r){let i={};try{let n=N.parseValue(e,t,r),a=N.parseValue(e,t+n.size,r-n.size);i[n.data]=a.data}catch(e){l.e("AMF",e.toString())}return i}static parseObject(e,t,r){if(r<3)throw new d("Data not enough when parse ScriptDataObject");let i=N.parseString(e,t,r),n=N.parseValue(e,t+i.size,r-i.size),a=n.objectEnd;return{data:{name:i.data,value:n.data},size:i.size+n.size,objectEnd:a}}static parseVariable(e,t,r){return N.parseObject(e,t,r)}static parseString(e,t,r){if(r<2)throw new d("Data not enough when parse String");let i,n=new DataView(e,t,r).getUint16(0,!F);return i=n>0?M(new Uint8Array(e,t+2,n)):"",{data:i,size:2+n}}static parseLongString(e,t,r){if(r<4)throw new d("Data not enough when parse LongString");let i,n=new DataView(e,t,r).getUint32(0,!F);return i=n>0?M(new Uint8Array(e,t+4,n)):"",{data:i,size:4+n}}static parseDate(e,t,r){if(r<10)throw new d("Data size invalid when parse Date");let i=new DataView(e,t,r),n=i.getFloat64(0,!F);return n+=60*i.getInt16(8,!F)*1e3,{data:new Date(n),size:10}}static parseValue(e,t,r){if(r<1)throw new d("Data not enough when parse Value");let i,n=new DataView(e,t,r),a=1,s=n.getUint8(0),o=!1;try{switch(s){case 0:i=n.getFloat64(1,!F),a+=8;break;case 1:i=!!n.getUint8(1),a+=1;break;case 2:{let n=N.parseString(e,t+1,r-1);i=n.data,a+=n.size;break}case 3:{i={};let s=0;for(9==(16777215&n.getUint32(r-4,!F))&&(s=3);a32)throw new h("ExpGolomb: readBits() bits exceeded max 32bits!");if(e<=this._current_word_bits_left){let t=this._current_word>>>32-e;return this._current_word<<=e,this._current_word_bits_left-=e,t}let t=this._current_word_bits_left?this._current_word:0;t>>>=32-this._current_word_bits_left;let r=e-this._current_word_bits_left;this._fillCurrentWord();let i=Math.min(r,this._current_word_bits_left),n=this._current_word>>>32-i;return this._current_word<<=i,this._current_word_bits_left-=i,t=t<>>e))return this._current_word<<=e,this._current_word_bits_left-=e,e;return this._fillCurrentWord(),e+this._skipLeadingZero()}readUEG(){let e=this._skipLeadingZero();return this.readBits(e+1)-1}readSEG(){let e=this.readUEG();return 1&e?e+1>>>1:-1*(e>>>1)}};class j{static _ebsp2rbsp(e){let t=e,r=t.byteLength,i=new Uint8Array(r),n=0;for(let e=0;e=2&&3===t[e]&&0===t[e-1]&&0===t[e-2]||(i[n]=t[e],n++);return new Uint8Array(i.buffer,0,n)}static parseSPS(e){let t=j._ebsp2rbsp(e),r=new U(t);r.readByte();let i=r.readByte();r.readByte();let n=r.readByte();r.readUEG();let a=j.getProfileString(i),s=j.getLevelString(n),o=1,l=420,u=[0,420,422,444],c=8;if((100===i||110===i||122===i||244===i||44===i||83===i||86===i||118===i||128===i||138===i||144===i)&&(o=r.readUEG(),3===o&&r.readBits(1),o<=3&&(l=u[o]),c=r.readUEG()+8,r.readUEG(),r.readBits(1),r.readBool())){let e=3!==o?8:12;for(let t=0;t0&&e<16?(E=t[e-1],b=i[e-1]):255===e&&(E=r.readByte()<<8|r.readByte(),b=r.readByte()<<8|r.readByte())}if(r.readBool()&&r.readBool(),r.readBool()&&(r.readBits(4),r.readBool()&&r.readBits(24)),r.readBool()&&(r.readUEG(),r.readUEG()),r.readBool()){let e=r.readBits(32),t=r.readBits(32);T=r.readBool(),A=t,w=2*e,S=A/w}}let R=1;1===E&&1===b||(R=E/b);let L=0,k=0;if(0===o)L=1,k=2-g;else{L=3===o?1:2,k=(1===o?2:1)*(2-g)}let O=16*(f+1),D=16*(p+1)*(2-g);O-=(v+m)*L,D-=(_+y)*k;let C=Math.ceil(O*R);return r.destroy(),r=null,{profile_string:a,level_string:s,bit_depth:c,ref_frames:h,chroma_format:l,chroma_format_string:j.getChromaFormatString(l),frame_rate:{fixed:T,fps:S,fps_den:w,fps_num:A},sar_ratio:{width:E,height:b},codec_size:{width:O,height:D},present_size:{width:C,height:D}}}static _skipScalingList(e,t){let r=8,i=8,n=0;for(let a=0;a>>2!=0,n=0!=(1&t[4]),a=(s=t)[o=5]<<24|s[o+1]<<16|s[o+2]<<8|s[o+3];var s,o;return a<9?r:{match:!0,consumed:a,dataOffset:a,hasAudioTrack:i,hasVideoTrack:n}}bindDataSource(e){return e.onDataArrival=this.parseChunks.bind(this),this}get onTrackMetadata(){return this._onTrackMetadata}set onTrackMetadata(e){this._onTrackMetadata=e}get onMediaInfo(){return this._onMediaInfo}set onMediaInfo(e){this._onMediaInfo=e}get onMetaDataArrived(){return this._onMetaDataArrived}set onMetaDataArrived(e){this._onMetaDataArrived=e}get onScriptDataArrived(){return this._onScriptDataArrived}set onScriptDataArrived(e){this._onScriptDataArrived=e}get onError(){return this._onError}set onError(e){this._onError=e}get onDataAvailable(){return this._onDataAvailable}set onDataAvailable(e){this._onDataAvailable=e}get timestampBase(){return this._timestampBase}set timestampBase(e){this._timestampBase=e}get overridedDuration(){return this._duration}set overridedDuration(e){this._durationOverrided=!0,this._duration=e,this._mediaInfo.duration=e}set overridedHasAudio(e){this._hasAudioFlagOverrided=!0,this._hasAudio=e,this._mediaInfo.hasAudio=e}set overridedHasVideo(e){this._hasVideoFlagOverrided=!0,this._hasVideo=e,this._mediaInfo.hasVideo=e}resetMediaInfo(){this._mediaInfo=new x}_isInitialMetadataDispatched(){return this._hasAudio&&this._hasVideo?this._audioInitialMetadataDispatched&&this._videoInitialMetadataDispatched:this._hasAudio&&!this._hasVideo?this._audioInitialMetadataDispatched:!(this._hasAudio||!this._hasVideo)&&this._videoInitialMetadataDispatched}parseChunks(e,t){if(!(this._onError&&this._onMediaInfo&&this._onTrackMetadata&&this._onDataAvailable))throw new d("Flv: onError & onMediaInfo & onTrackMetadata & onDataAvailable callback must be specified");let r=0,i=this._littleEndian;if(0===t){if(!(e.byteLength>13))return 0;r=K.probe(e).dataOffset}if(this._firstParse){this._firstParse=!1,t+r!==this._dataOffset&&l.w(this.TAG,"First time parsing but chunk byteStart invalid!"),0!==new DataView(e,r).getUint32(0,!i)&&l.w(this.TAG,"PrevTagSize0 !== 0 !!!"),r+=4}for(;re.byteLength)break;let a=n.getUint8(0),s=16777215&n.getUint32(0,!i);if(r+11+s+4>e.byteLength)break;if(8!==a&&9!==a&&18!==a){l.w(this.TAG,`Unsupported tag type ${a}, skipped`),r+=11+s+4;continue}let o=n.getUint8(4),u=n.getUint8(5),c=n.getUint8(6)|u<<8|o<<16|n.getUint8(7)<<24;0!==(16777215&n.getUint32(7,!i))&&l.w(this.TAG,"Meet tag which has StreamID != 0!");let d=r+11;switch(a){case 8:this._parseAudioData(e,d,s,c);break;case 9:this._parseVideoData(e,d,s,c,t+r);break;case 18:this._parseScriptData(e,d,s)}let h=n.getUint32(11+s,!i);h!==11+s&&l.w(this.TAG,"Invalid PrevTagSize "+h),r+=11+s+4}return this._isInitialMetadataDispatched()&&this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack),r}_parseScriptData(e,t,r){let i=B.parseScriptData(e,t,r);if(i.hasOwnProperty("onMetaData")){if(null==i.onMetaData||"object"!=typeof i.onMetaData)return void l.w(this.TAG,"Invalid onMetaData structure!");this._metadata&&l.w(this.TAG,"Found another onMetaData tag!"),this._metadata=i;let e=this._metadata.onMetaData;if(this._onMetaDataArrived&&this._onMetaDataArrived(Object.assign({},e)),"boolean"==typeof e.hasAudio&&!1===this._hasAudioFlagOverrided&&(this._hasAudio=e.hasAudio,this._mediaInfo.hasAudio=this._hasAudio),"boolean"==typeof e.hasVideo&&!1===this._hasVideoFlagOverrided&&(this._hasVideo=e.hasVideo,this._mediaInfo.hasVideo=this._hasVideo),"number"==typeof e.audiodatarate&&(this._mediaInfo.audioDataRate=e.audiodatarate),"number"==typeof e.videodatarate&&(this._mediaInfo.videoDataRate=e.videodatarate),"number"==typeof e.width&&(this._mediaInfo.width=e.width),"number"==typeof e.height&&(this._mediaInfo.height=e.height),"number"==typeof e.duration){if(!this._durationOverrided){let t=Math.floor(e.duration*this._timescale);this._duration=t,this._mediaInfo.duration=t}}else this._mediaInfo.duration=0;if("number"==typeof e.framerate){let t=Math.floor(1e3*e.framerate);if(t>0){let e=t/1e3;this._referenceFrameRate.fixed=!0,this._referenceFrameRate.fps=e,this._referenceFrameRate.fps_num=t,this._referenceFrameRate.fps_den=1e3,this._mediaInfo.fps=e}}if("object"==typeof e.keyframes){this._mediaInfo.hasKeyframesIndex=!0;let t=e.keyframes;this._mediaInfo.keyframesIndex=this._parseKeyframesIndex(t),e.keyframes=null}else this._mediaInfo.hasKeyframesIndex=!1;this._dispatch=!1,this._mediaInfo.metadata=e,l.v(this.TAG,"Parsed onMetaData"),this._mediaInfo.isComplete()&&this._onMediaInfo(this._mediaInfo)}Object.keys(i).length>0&&this._onScriptDataArrived&&this._onScriptDataArrived(Object.assign({},i))}_parseKeyframesIndex(e){let t=[],r=[];for(let i=1;i>>4;if(2!==a&&10!==a)return void this._onError(V.CODEC_UNSUPPORTED,"Flv: Unsupported audio codec idx: "+a);let s=0,o=(12&n)>>>2;if(!(o>=0&&o<=4))return void this._onError(V.FORMAT_ERROR,"Flv: Invalid audio sample rate idx: "+o);s=this._flvSoundRateTable[o];let u=1&n,c=this._audioMetadata,d=this._audioTrack;if(c||(!1===this._hasAudio&&!1===this._hasAudioFlagOverrided&&(this._hasAudio=!0,this._mediaInfo.hasAudio=!0),c=this._audioMetadata={},c.type="audio",c.id=d.id,c.timescale=this._timescale,c.duration=this._duration,c.audioSampleRate=s,c.channelCount=0===u?1:2),10===a){let n=this._parseAACAudioData(e,t+1,r-1);if(null==n)return;if(0===n.packetType){c.config&&l.w(this.TAG,"Found another AudioSpecificConfig!");let e=n.data;c.audioSampleRate=e.samplingRate,c.channelCount=e.channelCount,c.codec=e.codec,c.originalCodec=e.originalCodec,c.config=e.config,c.refSampleDuration=1024/c.audioSampleRate*c.timescale,l.v(this.TAG,"Parsed AudioSpecificConfig"),this._isInitialMetadataDispatched()?this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack):this._audioInitialMetadataDispatched=!0,this._dispatch=!1,this._onTrackMetadata("audio",c);let t=this._mediaInfo;t.audioCodec=c.originalCodec,t.audioSampleRate=c.audioSampleRate,t.audioChannelCount=c.channelCount,t.hasVideo?null!=t.videoCodec&&(t.mimeType='video/x-flv; codecs="'+t.videoCodec+","+t.audioCodec+'"'):t.mimeType='video/x-flv; codecs="'+t.audioCodec+'"',t.isComplete()&&this._onMediaInfo(t)}else if(1===n.packetType){let e=this._timestampBase+i,t={unit:n.data,length:n.data.byteLength,dts:e,pts:e};d.samples.push(t),d.length+=n.data.length}else l.e(this.TAG,"Flv: Unsupported AAC data type "+n.packetType)}else if(2===a){if(!c.codec){let i=this._parseMP3AudioData(e,t+1,r-1,!0);if(null==i)return;c.audioSampleRate=i.samplingRate,c.channelCount=i.channelCount,c.codec=i.codec,c.originalCodec=i.originalCodec,c.refSampleDuration=1152/c.audioSampleRate*c.timescale,l.v(this.TAG,"Parsed MPEG Audio Frame Header"),this._audioInitialMetadataDispatched=!0,this._onTrackMetadata("audio",c);let n=this._mediaInfo;n.audioCodec=c.codec,n.audioSampleRate=c.audioSampleRate,n.audioChannelCount=c.channelCount,n.audioDataRate=i.bitRate,n.hasVideo?null!=n.videoCodec&&(n.mimeType='video/x-flv; codecs="'+n.videoCodec+","+n.audioCodec+'"'):n.mimeType='video/x-flv; codecs="'+n.audioCodec+'"',n.isComplete()&&this._onMediaInfo(n)}let n=this._parseMP3AudioData(e,t+1,r-1,!1);if(null==n)return;let a=this._timestampBase+i,s={unit:n,length:n.byteLength,dts:a,pts:a};d.samples.push(s),d.length+=n.length}}_parseAACAudioData(e,t,r){if(r<=1)return void l.w(this.TAG,"Flv: Invalid AAC packet, missing AACPacketType or/and Data!");let i={},n=new Uint8Array(e,t,r);return i.packetType=n[0],0===n[0]?i.data=this._parseAACAudioSpecificConfig(e,t+1,r-1):i.data=n.subarray(1),i}_parseAACAudioSpecificConfig(e,t,r){let i=new Uint8Array(e,t,r),n=null,a=0,s=0,o=null,l=0,u=null;if(a=s=i[0]>>>3,l=(7&i[0])<<1|i[1]>>>7,l<0||l>=this._mpegSamplingRates.length)return void this._onError(V.FORMAT_ERROR,"Flv: AAC invalid sampling frequency index!");let c=this._mpegSamplingRates[l],d=(120&i[1])>>>3;if(d<0||d>=8)return void this._onError(V.FORMAT_ERROR,"Flv: AAC invalid channel configuration");5===a&&(u=(7&i[1])<<1|i[2]>>>7,o=(124&i[2])>>>2);let h=self.navigator.userAgent.toLowerCase();return-1!==h.indexOf("firefox")?l>=6?(a=5,n=new Array(4),u=l-3):(a=2,n=new Array(2),u=l):-1!==h.indexOf("android")?(a=2,n=new Array(2),u=l):(a=5,u=l,n=new Array(4),l>=6?u=l-3:1===d&&(a=2,n=new Array(2),u=l)),n[0]=a<<3,n[0]|=(15&l)>>>1,n[1]=(15&l)<<7,n[1]|=(15&d)<<3,5===a&&(n[1]|=(15&u)>>>1,n[2]=(1&u)<<7,n[2]|=8,n[3]=0),{config:n,samplingRate:c,channelCount:d,codec:"mp4a.40."+a,originalCodec:"mp4a.40."+s}}_parseMP3AudioData(e,t,r,i){if(r<4)return void l.w(this.TAG,"Flv: Invalid MP3 packet, header missing!");this._littleEndian;let n=new Uint8Array(e,t,r),a=null;if(i){if(255!==n[0])return;let e=n[1]>>>3&3,t=(6&n[1])>>1,r=(240&n[2])>>>4,i=(12&n[2])>>>2,s=3!==(n[3]>>>6&3)?2:1,o=0,l=0,u=34,c="mp3";switch(e){case 0:o=this._mpegAudioV25SampleRateTable[i];break;case 2:o=this._mpegAudioV20SampleRateTable[i];break;case 3:o=this._mpegAudioV10SampleRateTable[i]}switch(t){case 1:u=34,r>>4,o=15&a;7===o?this._parseAVCVideoPacket(e,t+1,r-1,i,n,s):this._onError(V.CODEC_UNSUPPORTED,"Flv: Unsupported codec in video frame: "+o)}_parseAVCVideoPacket(e,t,r,i,n,a){if(r<4)return void l.w(this.TAG,"Flv: Invalid AVC packet, missing AVCPacketType or/and CompositionTime");let s=this._littleEndian,o=new DataView(e,t,r),u=o.getUint8(0),c=(16777215&o.getUint32(0,!s))<<8>>8;if(0===u)this._parseAVCDecoderConfigurationRecord(e,t+4,r-4);else if(1===u)this._parseAVCVideoData(e,t+4,r-4,i,n,a,c);else if(2!==u)return void this._onError(V.FORMAT_ERROR,"Flv: Invalid video packet type "+u)}_parseAVCDecoderConfigurationRecord(e,t,r){if(r<7)return void l.w(this.TAG,"Flv: Invalid AVCDecoderConfigurationRecord, lack of data!");let i=this._videoMetadata,n=this._videoTrack,a=this._littleEndian,s=new DataView(e,t,r);i?void 0!==i.avcc&&l.w(this.TAG,"Found another AVCDecoderConfigurationRecord!"):(!1===this._hasVideo&&!1===this._hasVideoFlagOverrided&&(this._hasVideo=!0,this._mediaInfo.hasVideo=!0),i=this._videoMetadata={},i.type="video",i.id=n.id,i.timescale=this._timescale,i.duration=this._duration);let o=s.getUint8(0),u=s.getUint8(1);s.getUint8(2),s.getUint8(3);if(1!==o||0===u)return void this._onError(V.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord");if(this._naluLengthSize=1+(3&s.getUint8(4)),3!==this._naluLengthSize&&4!==this._naluLengthSize)return void this._onError(V.FORMAT_ERROR,"Flv: Strange NaluLengthSizeMinusOne: "+(this._naluLengthSize-1));let c=31&s.getUint8(5);if(0===c)return void this._onError(V.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord: No SPS");c>1&&l.w(this.TAG,"Flv: Strange AVCDecoderConfigurationRecord: SPS Count = "+c);let d=6;for(let r=0;r1&&l.w(this.TAG,"Flv: Strange AVCDecoderConfigurationRecord: PPS Count = "+h),d++;for(let e=0;e=r){l.w(this.TAG,`Malformed Nalu near timestamp ${p}, offset = ${h}, dataSize = ${r}`);break}let i=u.getUint32(h,!o);if(3===f&&(i>>>=8),i>r-f)return void l.w(this.TAG,`Malformed Nalus near timestamp ${p}, NaluSize > DataSize!`);let n=31&u.getUint8(h+f);5===n&&(g=!0);let a=new Uint8Array(e,t+h,f+i),s={type:n,data:a};c.push(s),d+=a.byteLength,h+=f+i}if(c.length){let e=this._videoTrack,t={units:c,length:d,isKeyframe:g,dts:p,cts:s,pts:p+s};g&&(t.fileposition=n),e.samples.push(t),e.length+=d}}}var H=K;class W{static init(){W.types={avc1:[],avcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],mvex:[],mvhd:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[],".mp3":[]};for(let e in W.types)W.types.hasOwnProperty(e)&&(W.types[e]=[e.charCodeAt(0),e.charCodeAt(1),e.charCodeAt(2),e.charCodeAt(3)]);let e=W.constants={};e.FTYP=new Uint8Array([105,115,111,109,0,0,0,1,105,115,111,109,97,118,99,49]),e.STSD_PREFIX=new Uint8Array([0,0,0,0,0,0,0,1]),e.STTS=new Uint8Array([0,0,0,0,0,0,0,0]),e.STSC=e.STCO=e.STTS,e.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),e.HDLR_VIDEO=new Uint8Array([0,0,0,0,0,0,0,0,118,105,100,101,0,0,0,0,0,0,0,0,0,0,0,0,86,105,100,101,111,72,97,110,100,108,101,114,0]),e.HDLR_AUDIO=new Uint8Array([0,0,0,0,0,0,0,0,115,111,117,110,0,0,0,0,0,0,0,0,0,0,0,0,83,111,117,110,100,72,97,110,100,108,101,114,0]),e.DREF=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),e.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),e.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0])}static box(e){let t=8,r=null,i=Array.prototype.slice.call(arguments,1),n=i.length;for(let e=0;e>>24&255,r[1]=t>>>16&255,r[2]=t>>>8&255,r[3]=255&t,r.set(e,4);let a=8;for(let e=0;e>>24&255,e>>>16&255,e>>>8&255,255&e,t>>>24&255,t>>>16&255,t>>>8&255,255&t,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]))}static trak(e){return W.box(W.types.trak,W.tkhd(e),W.mdia(e))}static tkhd(e){let t=e.id,r=e.duration,i=e.presentWidth,n=e.presentHeight;return W.box(W.types.tkhd,new Uint8Array([0,0,0,7,0,0,0,0,0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t,0,0,0,0,r>>>24&255,r>>>16&255,r>>>8&255,255&r,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,i>>>8&255,255&i,0,0,n>>>8&255,255&n,0,0]))}static mdia(e){return W.box(W.types.mdia,W.mdhd(e),W.hdlr(e),W.minf(e))}static mdhd(e){let t=e.timescale,r=e.duration;return W.box(W.types.mdhd,new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t,r>>>24&255,r>>>16&255,r>>>8&255,255&r,85,196,0,0]))}static hdlr(e){let t=null;return t="audio"===e.type?W.constants.HDLR_AUDIO:W.constants.HDLR_VIDEO,W.box(W.types.hdlr,t)}static minf(e){let t=null;return t="audio"===e.type?W.box(W.types.smhd,W.constants.SMHD):W.box(W.types.vmhd,W.constants.VMHD),W.box(W.types.minf,t,W.dinf(),W.stbl(e))}static dinf(){return W.box(W.types.dinf,W.box(W.types.dref,W.constants.DREF))}static stbl(e){return W.box(W.types.stbl,W.stsd(e),W.box(W.types.stts,W.constants.STTS),W.box(W.types.stsc,W.constants.STSC),W.box(W.types.stsz,W.constants.STSZ),W.box(W.types.stco,W.constants.STCO))}static stsd(e){return"audio"===e.type?"mp3"===e.codec?W.box(W.types.stsd,W.constants.STSD_PREFIX,W.mp3(e)):W.box(W.types.stsd,W.constants.STSD_PREFIX,W.mp4a(e)):W.box(W.types.stsd,W.constants.STSD_PREFIX,W.avc1(e))}static mp3(e){let t=e.channelCount,r=e.audioSampleRate,i=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,t,0,16,0,0,0,0,r>>>8&255,255&r,0,0]);return W.box(W.types[".mp3"],i)}static mp4a(e){let t=e.channelCount,r=e.audioSampleRate,i=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,t,0,16,0,0,0,0,r>>>8&255,255&r,0,0]);return W.box(W.types.mp4a,i,W.esds(e))}static esds(e){let t=e.config||[],r=t.length,i=new Uint8Array([0,0,0,0,3,23+r,0,1,0,4,15+r,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([r]).concat(t).concat([6,1,2]));return W.box(W.types.esds,i)}static avc1(e){let t=e.avcc,r=e.codecWidth,i=e.codecHeight,n=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,r>>>8&255,255&r,i>>>8&255,255&i,0,72,0,0,0,72,0,0,0,0,0,0,0,1,10,120,113,113,47,102,108,118,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,255,255]);return W.box(W.types.avc1,n,W.box(W.types.avcC,t))}static mvex(e){return W.box(W.types.mvex,W.trex(e))}static trex(e){let t=e.id,r=new Uint8Array([0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]);return W.box(W.types.trex,r)}static moof(e,t){return W.box(W.types.moof,W.mfhd(e.sequenceNumber),W.traf(e,t))}static mfhd(e){let t=new Uint8Array([0,0,0,0,e>>>24&255,e>>>16&255,e>>>8&255,255&e]);return W.box(W.types.mfhd,t)}static traf(e,t){let r=e.id,i=W.box(W.types.tfhd,new Uint8Array([0,0,0,0,r>>>24&255,r>>>16&255,r>>>8&255,255&r])),n=W.box(W.types.tfdt,new Uint8Array([0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t])),a=W.sdtp(e),s=W.trun(e,a.byteLength+16+16+8+16+8+8);return W.box(W.types.traf,i,n,s,a)}static sdtp(e){let t=e.samples||[],r=t.length,i=new Uint8Array(4+r);for(let e=0;e>>24&255,i>>>16&255,i>>>8&255,255&i,t>>>24&255,t>>>16&255,t>>>8&255,255&t],0);for(let e=0;e>>24&255,t>>>16&255,t>>>8&255,255&t,i>>>24&255,i>>>16&255,i>>>8&255,255&i,n.isLeading<<2|n.dependsOn,n.isDependedOn<<6|n.hasRedundancy<<4|n.isNonSync,0,0,s>>>24&255,s>>>16&255,s>>>8&255,255&s],12+16*e)}return W.box(W.types.trun,a)}static mdat(e){return W.box(W.types.mdat,e)}}W.init();var z=W;var q=class{static getSilentFrame(e,t){if("mp4a.40.2"===e){if(1===t)return new Uint8Array([0,200,0,128,35,128]);if(2===t)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(3===t)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(4===t)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(5===t)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,56]);if(6===t)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,0,178,0,32,8,224])}else{if(1===t)return new Uint8Array([1,64,34,128,163,78,230,128,186,8,0,0,0,28,6,241,193,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(2===t)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(3===t)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94])}return null}};class Y{constructor(e,t,r,i,n){this.dts=e,this.pts=t,this.duration=r,this.originalDts=i,this.isSyncPoint=n,this.fileposition=null}}class X{constructor(){this.beginDts=0,this.endDts=0,this.beginPts=0,this.endPts=0,this.originalBeginDts=0,this.originalEndDts=0,this.syncPoints=[],this.firstSample=null,this.lastSample=null}appendSyncPoint(e){e.isSyncPoint=!0,this.syncPoints.push(e)}}class ${constructor(){this._list=[]}clear(){this._list=[]}appendArray(e){let t=this._list;0!==e.length&&(t.length>0&&e[0].originalDts=t[n].dts&&et[i].lastSample.originalDts&&e=t[i].lastSample.originalDts&&(i===t.length-1||i0&&(n=this._searchNearestSegmentBefore(r.originalBeginDts)+1),this._lastAppendLocation=n,this._list.splice(n,0,r)}getLastSegmentBefore(e){let t=this._searchNearestSegmentBefore(e);return t>=0?this._list[t]:null}getLastSampleBefore(e){let t=this.getLastSegmentBefore(e);return null!=t?t.lastSample:null}getLastSyncPointBefore(e){let t=this._searchNearestSegmentBefore(e),r=this._list[t].syncPoints;for(;0===r.length&&t>0;)t--,r=this._list[t].syncPoints;return r.length>0?r[r.length-1]:null}}var Q=class{constructor(e){this.TAG="MP4Remuxer",this._config=e,this._isLive=!0===e.isLive,this._dtsBase=-1,this._dtsBaseInited=!1,this._audioDtsBase=1/0,this._videoDtsBase=1/0,this._audioNextDts=void 0,this._videoNextDts=void 0,this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._audioMeta=null,this._videoMeta=null,this._audioSegmentInfoList=new J("audio"),this._videoSegmentInfoList=new J("video"),this._onInitSegment=null,this._onMediaSegment=null,this._forceFirstIDR=!(!_.chrome||!(_.version.major<50||50===_.version.major&&_.version.build<2661)),this._fillSilentAfterSeek=_.msedge||_.msie,this._mp3UseMpegAudio=!_.firefox,this._fillAudioTimestampGap=this._config.fixAudioTimestampGap}destroy(){this._dtsBase=-1,this._dtsBaseInited=!1,this._audioMeta=null,this._videoMeta=null,this._audioSegmentInfoList.clear(),this._audioSegmentInfoList=null,this._videoSegmentInfoList.clear(),this._videoSegmentInfoList=null,this._onInitSegment=null,this._onMediaSegment=null}bindDataSource(e){return e.onDataAvailable=this.remux.bind(this),e.onTrackMetadata=this._onTrackMetadataReceived.bind(this),this}get onInitSegment(){return this._onInitSegment}set onInitSegment(e){this._onInitSegment=e}get onMediaSegment(){return this._onMediaSegment}set onMediaSegment(e){this._onMediaSegment=e}insertDiscontinuity(){this._audioNextDts=this._videoNextDts=void 0}seek(e){this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._videoSegmentInfoList.clear(),this._audioSegmentInfoList.clear()}remux(e,t){if(!this._onMediaSegment)throw new d("MP4Remuxer: onMediaSegment callback must be specificed!");this._dtsBaseInited||this._calculateDtsBase(e,t),this._remuxVideo(t),this._remuxAudio(e)}_onTrackMetadataReceived(e,t){let r=null,i="mp4",n=t.codec;if("audio"===e)this._audioMeta=t,"mp3"===t.codec&&this._mp3UseMpegAudio?(i="mpeg",n="",r=new Uint8Array):r=z.generateInitSegment(t);else{if("video"!==e)return;this._videoMeta=t,r=z.generateInitSegment(t)}if(!this._onInitSegment)throw new d("MP4Remuxer: onInitSegment callback must be specified!");this._onInitSegment(e,{type:e,data:r.buffer,codec:n,container:`${e}/${i}`,mediaDuration:t.duration})}_calculateDtsBase(e,t){this._dtsBaseInited||(e.samples&&e.samples.length&&(this._audioDtsBase=e.samples[0].dts),t.samples&&t.samples.length&&(this._videoDtsBase=t.samples[0].dts),this._dtsBase=Math.min(this._audioDtsBase,this._videoDtsBase),this._dtsBaseInited=!0)}flushStashedSamples(){let e=this._videoStashedLastSample,t=this._audioStashedLastSample,r={type:"video",id:1,sequenceNumber:0,samples:[],length:0};null!=e&&(r.samples.push(e),r.length=e.length);let i={type:"audio",id:2,sequenceNumber:0,samples:[],length:0};null!=t&&(i.samples.push(t),i.length=t.length),this._videoStashedLastSample=null,this._audioStashedLastSample=null,this._remuxVideo(r,!0),this._remuxAudio(i,!0)}_remuxAudio(e,t){if(null==this._audioMeta)return;let r=e,i=r.samples,n=void 0,a=-1,s=-1,o=this._audioMeta.refSampleDuration,u="mp3"===this._audioMeta.codec&&this._mp3UseMpegAudio,c=this._dtsBaseInited&&void 0===this._audioNextDts,d=!1;if(!i||0===i.length)return;if(1===i.length&&!t)return;let h=0,f=null,p=0;u?(h=0,p=r.length):(h=8,p=8+r.length);let g=null;if(i.length>1&&(g=i.pop(),p-=g.length),null!=this._audioStashedLastSample){let e=this._audioStashedLastSample;this._audioStashedLastSample=null,i.unshift(e),p+=e.length}null!=g&&(this._audioStashedLastSample=g);let v=i[0].dts-this._dtsBase;if(this._audioNextDts)n=v-this._audioNextDts;else if(this._audioSegmentInfoList.isEmpty())n=0,this._fillSilentAfterSeek&&!this._videoSegmentInfoList.isEmpty()&&"mp3"!==this._audioMeta.originalCodec&&(d=!0);else{let e=this._audioSegmentInfoList.getLastSampleBefore(v);if(null!=e){let t=v-(e.originalDts+e.duration);t<=3&&(t=0),n=v-(e.dts+e.duration+t)}else n=0}if(d){let e=v-n,t=this._videoSegmentInfoList.getLastSegmentBefore(v);if(null!=t&&t.beginDts=1?m[m.length-1].duration:Math.floor(o);let d=!1,h=null;if(c>1.5*o&&"mp3"!==this._audioMeta.codec&&this._fillAudioTimestampGap&&!_.safari){d=!0;let e=Math.abs(c-o),t=Math.ceil(e/o),i=u+o;l.w(this.TAG,`Large audio timestamp gap detected, may cause AV sync to drift. Silent frames will be generated to avoid unsync.\ndts: ${u+c} ms, expected: ${u+Math.round(o)} ms, delta: ${Math.round(e)} ms, generate: ${t} frames`);let n=q.getSilentFrame(this._audioMeta.originalCodec,this._audioMeta.channelCount);null==n&&(l.w(this.TAG,`Unable to generate silent frame for ${this._audioMeta.originalCodec} with ${this._audioMeta.channelCount} channels, repeat last frame`),n=r),h=[];for(let e=0;e0){let t=h[h.length-1];t.duration=e-t.dts}let t={dts:e,pts:e,cts:0,unit:n,size:n.byteLength,duration:0,originalDts:s,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0}};h.push(t),p+=t.size,i+=o}let a=h[h.length-1];a.duration=u+c-a.dts,c=Math.round(o)}m.push({dts:u,pts:u,cts:0,unit:t.unit,size:t.unit.byteLength,duration:c,originalDts:s,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0}}),d&&m.push.apply(m,h)}u?f=new Uint8Array(p):(f=new Uint8Array(p),f[0]=p>>>24&255,f[1]=p>>>16&255,f[2]=p>>>8&255,f[3]=255&p,f.set(z.types.mdat,4));for(let e=0;e1&&(h=i.pop(),d-=h.length),null!=this._videoStashedLastSample){let e=this._videoStashedLastSample;this._videoStashedLastSample=null,i.unshift(e),d+=e.length}null!=h&&(this._videoStashedLastSample=h);let f=i[0].dts-this._dtsBase;if(this._videoNextDts)n=f-this._videoNextDts;else if(this._videoSegmentInfoList.isEmpty())n=0;else{let e=this._videoSegmentInfoList.getLastSampleBefore(f);if(null!=e){let t=f-(e.originalDts+e.duration);t<=3&&(t=0),n=f-(e.dts+e.duration+t)}else n=0}let p=new X,g=[];for(let e=0;e=1?g[g.length-1].duration:Math.floor(this._videoMeta.refSampleDuration);if(s){let e=new Y(l,c,d,t.dts,!0);e.fileposition=t.fileposition,p.appendSyncPoint(e)}g.push({dts:l,pts:c,cts:u,units:t.units,size:t.length,isKeyframe:s,duration:d,originalDts:r,flags:{isLeading:0,dependsOn:s?2:1,isDependedOn:s?1:0,hasRedundancy:0,isNonSync:s?0:1}})}c=new Uint8Array(d),c[0]=d>>>24&255,c[1]=d>>>16&255,c[2]=d>>>8&255,c[3]=255&d,c.set(z.types.mdat,4);for(let e=0;e{i.timestampBase=r,r+=i.duration,i.cors=e.cors,i.withCredentials=e.withCredentials,t.referrerPolicy&&(i.referrerPolicy=t.referrerPolicy)}),isNaN(r)||this._mediaDataSource.duration===r||(this._mediaDataSource.duration=r),this._mediaInfo=null,this._demuxer=null,this._remuxer=null,this._ioctl=null,this._pendingSeekTime=null,this._pendingResolveSeekPoint=null,this._statisticsReporter=null}destroy(){this._mediaInfo=null,this._mediaDataSource=null,this._statisticsReporter&&this._disableStatisticsReporter(),this._ioctl&&(this._ioctl.destroy(),this._ioctl=null),this._demuxer&&(this._demuxer.destroy(),this._demuxer=null),this._remuxer&&(this._remuxer.destroy(),this._remuxer=null),this._emitter.removeAllListeners(),this._emitter=null}on(e,t){this._emitter.addListener(e,t)}off(e,t){this._emitter.removeListener(e,t)}start(){this._loadSegment(0),this._enableStatisticsReporter()}_loadSegment(e,t){this._currentSegmentIndex=e;let r=this._mediaDataSource.segments[e],i=this._ioctl=new w(r,this._config,e);i.onError=this._onIOException.bind(this),i.onSeeked=this._onIOSeeked.bind(this),i.onComplete=this._onIOComplete.bind(this),i.onRedirect=this._onIORedirect.bind(this),i.onRecoveredEarlyEof=this._onIORecoveredEarlyEof.bind(this),t?this._demuxer.bindDataSource(this._ioctl):i.onDataArrival=this._onInitChunkArrival.bind(this),i.open(t)}stop(){this._internalAbort(),this._disableStatisticsReporter()}_internalAbort(){this._ioctl&&(this._ioctl.destroy(),this._ioctl=null)}pause(){this._ioctl&&this._ioctl.isWorking()&&(this._ioctl.pause(),this._disableStatisticsReporter())}resume(){this._ioctl&&this._ioctl.isPaused()&&(this._ioctl.resume(),this._enableStatisticsReporter())}seek(e){if(null==this._mediaInfo||!this._mediaInfo.isSeekable())return;let t=this._searchSegmentIndexContains(e);if(t===this._currentSegmentIndex){let r=this._mediaInfo.segments[t];if(null==r)this._pendingSeekTime=e;else{let t=r.getNearestKeyframe(e);this._remuxer.seek(t.milliseconds),this._ioctl.seek(t.fileposition),this._pendingResolveSeekPoint=t.milliseconds}}else{let r=this._mediaInfo.segments[t];if(null==r)this._pendingSeekTime=e,this._internalAbort(),this._remuxer.seek(),this._remuxer.insertDiscontinuity(),this._loadSegment(t);else{let i=r.getNearestKeyframe(e);this._internalAbort(),this._remuxer.seek(e),this._remuxer.insertDiscontinuity(),this._demuxer.resetMediaInfo(),this._demuxer.timestampBase=this._mediaDataSource.segments[t].timestampBase,this._loadSegment(t,i.fileposition),this._pendingResolveSeekPoint=i.milliseconds,this._reportSegmentMediaInfo(t)}}this._enableStatisticsReporter()}_searchSegmentIndexContains(e){let t=this._mediaDataSource.segments,r=t.length-1;for(let i=0;i0)this._demuxer.bindDataSource(this._ioctl),this._demuxer.timestampBase=this._mediaDataSource.segments[this._currentSegmentIndex].timestampBase,i=this._demuxer.parseChunks(e,t);else if((r=H.probe(e)).match){this._demuxer=new H(r,this._config),this._remuxer||(this._remuxer=new Q(this._config));let n=this._mediaDataSource;null==n.duration||isNaN(n.duration)||(this._demuxer.overridedDuration=n.duration),"boolean"==typeof n.hasAudio&&(this._demuxer.overridedHasAudio=n.hasAudio),"boolean"==typeof n.hasVideo&&(this._demuxer.overridedHasVideo=n.hasVideo),this._demuxer.timestampBase=n.segments[this._currentSegmentIndex].timestampBase,this._demuxer.onError=this._onDemuxException.bind(this),this._demuxer.onMediaInfo=this._onMediaInfo.bind(this),this._demuxer.onMetaDataArrived=this._onMetaDataArrived.bind(this),this._demuxer.onScriptDataArrived=this._onScriptDataArrived.bind(this),this._remuxer.bindDataSource(this._demuxer.bindDataSource(this._ioctl)),this._remuxer.onInitSegment=this._onRemuxerInitSegmentArrival.bind(this),this._remuxer.onMediaSegment=this._onRemuxerMediaSegmentArrival.bind(this),i=this._demuxer.parseChunks(e,t)}else r=null,l.e(this.TAG,"Non-FLV, Unsupported media type!"),Promise.resolve().then(()=>{this._internalAbort()}),this._emitter.emit(Z.DEMUX_ERROR,V.FORMAT_UNSUPPORTED,"Non-FLV, Unsupported media type"),i=0;return i}_onMediaInfo(e){null==this._mediaInfo&&(this._mediaInfo=Object.assign({},e),this._mediaInfo.keyframesIndex=null,this._mediaInfo.segments=[],this._mediaInfo.segmentCount=this._mediaDataSource.segments.length,Object.setPrototypeOf(this._mediaInfo,x.prototype));let t=Object.assign({},e);Object.setPrototypeOf(t,x.prototype),this._mediaInfo.segments[this._currentSegmentIndex]=t,this._reportSegmentMediaInfo(this._currentSegmentIndex),null!=this._pendingSeekTime&&Promise.resolve().then(()=>{let e=this._pendingSeekTime;this._pendingSeekTime=null,this.seek(e)})}_onMetaDataArrived(e){this._emitter.emit(Z.METADATA_ARRIVED,e)}_onScriptDataArrived(e){this._emitter.emit(Z.SCRIPTDATA_ARRIVED,e)}_onIOSeeked(){this._remuxer.insertDiscontinuity()}_onIOComplete(e){let t=e+1;t0&&e[0].originalDts===r&&(r=e[0].pts),this._emitter.emit(Z.RECOMMEND_SEEKPOINT,r)}}_enableStatisticsReporter(){null==this._statisticsReporter&&(this._statisticsReporter=self.setInterval(this._reportStatisticsInfo.bind(this),this._config.statisticsInfoReportInterval))}_disableStatisticsReporter(){this._statisticsReporter&&(self.clearInterval(this._statisticsReporter),this._statisticsReporter=null)}_reportSegmentMediaInfo(e){let t=this._mediaInfo.segments[e],r=Object.assign({},t);r.duration=this._mediaInfo.duration,r.segmentCount=this._mediaInfo.segmentCount,delete r.segments,delete r.keyframesIndex,this._emitter.emit(Z.MEDIA_INFO,r)}_reportStatisticsInfo(){let e={};e.url=this._ioctl.currentURL,e.hasRedirect=this._ioctl.hasRedirect,e.hasRedirect&&(e.redirectedURL=this._ioctl.currentRedirectedURL),e.speed=this._ioctl.currentSpeed,e.loaderType=this._ioctl.loaderType,e.currentSegmentIndex=this._currentSegmentIndex,e.totalSegmentCount=this._mediaDataSource.segments.length,this._emitter.emit(Z.STATISTICS_INFO,e)}};var te=function(e){let t=null,r=function(t,r){e.postMessage({msg:"logcat_callback",data:{type:t,logcat:r}})}.bind(this);function i(t,r){let i={msg:Z.INIT_SEGMENT,data:{type:t,data:r}};e.postMessage(i,[r.data])}function a(t,r){let i={msg:Z.MEDIA_SEGMENT,data:{type:t,data:r}};e.postMessage(i,[r.data])}function s(){let t={msg:Z.LOADING_COMPLETE};e.postMessage(t)}function o(){let t={msg:Z.RECOVERED_EARLY_EOF};e.postMessage(t)}function l(t){let r={msg:Z.MEDIA_INFO,data:t};e.postMessage(r)}function u(t){let r={msg:Z.METADATA_ARRIVED,data:t};e.postMessage(r)}function c(t){let r={msg:Z.SCRIPTDATA_ARRIVED,data:t};e.postMessage(r)}function d(t){let r={msg:Z.STATISTICS_INFO,data:t};e.postMessage(r)}function h(t,r){e.postMessage({msg:Z.IO_ERROR,data:{type:t,info:r}})}function f(t,r){e.postMessage({msg:Z.DEMUX_ERROR,data:{type:t,info:r}})}function p(t){e.postMessage({msg:Z.RECOMMEND_SEEKPOINT,data:t})}n.install(),e.addEventListener("message",(function(n){switch(n.data.cmd){case"init":t=new ee(n.data.param[0],n.data.param[1]),t.on(Z.IO_ERROR,h.bind(this)),t.on(Z.DEMUX_ERROR,f.bind(this)),t.on(Z.INIT_SEGMENT,i.bind(this)),t.on(Z.MEDIA_SEGMENT,a.bind(this)),t.on(Z.LOADING_COMPLETE,s.bind(this)),t.on(Z.RECOVERED_EARLY_EOF,o.bind(this)),t.on(Z.MEDIA_INFO,l.bind(this)),t.on(Z.METADATA_ARRIVED,u.bind(this)),t.on(Z.SCRIPTDATA_ARRIVED,c.bind(this)),t.on(Z.STATISTICS_INFO,d.bind(this)),t.on(Z.RECOMMEND_SEEKPOINT,p.bind(this));break;case"destroy":t&&(t.destroy(),t=null),e.postMessage({msg:"destroyed"});break;case"start":t.start();break;case"stop":t.stop();break;case"seek":t.seek(n.data.param);break;case"pause":t.pause();break;case"resume":t.resume();break;case"logging_config":{let e=n.data.param;I.applyConfig(e),!0===e.enableCallback?I.addLogListener(r):I.removeLogListener(r);break}}}))};var re=class{constructor(e,t){if(this.TAG="Transmuxer",this._emitter=new s.a,t.enableWorker&&"undefined"!=typeof Worker)try{let i=r(353);this._worker=i(te),this._workerDestroying=!1,this._worker.addEventListener("message",this._onWorkerMessage.bind(this)),this._worker.postMessage({cmd:"init",param:[e,t]}),this.e={onLoggingConfigChanged:this._onLoggingConfigChanged.bind(this)},I.registerListener(this.e.onLoggingConfigChanged),this._worker.postMessage({cmd:"logging_config",param:I.getConfig()})}catch(r){l.e(this.TAG,"Error while initialize transmuxing worker, fallback to inline transmuxing"),this._worker=null,this._controller=new ee(e,t)}else this._controller=new ee(e,t);if(this._controller){let e=this._controller;e.on(Z.IO_ERROR,this._onIOError.bind(this)),e.on(Z.DEMUX_ERROR,this._onDemuxError.bind(this)),e.on(Z.INIT_SEGMENT,this._onInitSegment.bind(this)),e.on(Z.MEDIA_SEGMENT,this._onMediaSegment.bind(this)),e.on(Z.LOADING_COMPLETE,this._onLoadingComplete.bind(this)),e.on(Z.RECOVERED_EARLY_EOF,this._onRecoveredEarlyEof.bind(this)),e.on(Z.MEDIA_INFO,this._onMediaInfo.bind(this)),e.on(Z.METADATA_ARRIVED,this._onMetaDataArrived.bind(this)),e.on(Z.SCRIPTDATA_ARRIVED,this._onScriptDataArrived.bind(this)),e.on(Z.STATISTICS_INFO,this._onStatisticsInfo.bind(this)),e.on(Z.RECOMMEND_SEEKPOINT,this._onRecommendSeekpoint.bind(this))}}destroy(){this._worker?this._workerDestroying||(this._workerDestroying=!0,this._worker.postMessage({cmd:"destroy"}),I.removeListener(this.e.onLoggingConfigChanged),this.e=null):(this._controller.destroy(),this._controller=null),this._emitter.removeAllListeners(),this._emitter=null}on(e,t){this._emitter.addListener(e,t)}off(e,t){this._emitter.removeListener(e,t)}hasWorker(){return null!=this._worker}open(){this._worker?this._worker.postMessage({cmd:"start"}):this._controller.start()}close(){this._worker?this._worker.postMessage({cmd:"stop"}):this._controller.stop()}seek(e){this._worker?this._worker.postMessage({cmd:"seek",param:e}):this._controller.seek(e)}pause(){this._worker?this._worker.postMessage({cmd:"pause"}):this._controller.pause()}resume(){this._worker?this._worker.postMessage({cmd:"resume"}):this._controller.resume()}_onInitSegment(e,t){Promise.resolve().then(()=>{this._emitter.emit(Z.INIT_SEGMENT,e,t)})}_onMediaSegment(e,t){Promise.resolve().then(()=>{this._emitter.emit(Z.MEDIA_SEGMENT,e,t)})}_onLoadingComplete(){Promise.resolve().then(()=>{this._emitter.emit(Z.LOADING_COMPLETE)})}_onRecoveredEarlyEof(){Promise.resolve().then(()=>{this._emitter.emit(Z.RECOVERED_EARLY_EOF)})}_onMediaInfo(e){Promise.resolve().then(()=>{this._emitter.emit(Z.MEDIA_INFO,e)})}_onMetaDataArrived(e){Promise.resolve().then(()=>{this._emitter.emit(Z.METADATA_ARRIVED,e)})}_onScriptDataArrived(e){Promise.resolve().then(()=>{this._emitter.emit(Z.SCRIPTDATA_ARRIVED,e)})}_onStatisticsInfo(e){Promise.resolve().then(()=>{this._emitter.emit(Z.STATISTICS_INFO,e)})}_onIOError(e,t){Promise.resolve().then(()=>{this._emitter.emit(Z.IO_ERROR,e,t)})}_onDemuxError(e,t){Promise.resolve().then(()=>{this._emitter.emit(Z.DEMUX_ERROR,e,t)})}_onRecommendSeekpoint(e){Promise.resolve().then(()=>{this._emitter.emit(Z.RECOMMEND_SEEKPOINT,e)})}_onLoggingConfigChanged(e){this._worker&&this._worker.postMessage({cmd:"logging_config",param:e})}_onWorkerMessage(e){let t=e.data,r=t.data;if("destroyed"===t.msg||this._workerDestroying)return this._workerDestroying=!1,this._worker.terminate(),void(this._worker=null);switch(t.msg){case Z.INIT_SEGMENT:case Z.MEDIA_SEGMENT:this._emitter.emit(t.msg,r.type,r.data);break;case Z.LOADING_COMPLETE:case Z.RECOVERED_EARLY_EOF:this._emitter.emit(t.msg);break;case Z.MEDIA_INFO:Object.setPrototypeOf(r,x.prototype),this._emitter.emit(t.msg,r);break;case Z.METADATA_ARRIVED:case Z.SCRIPTDATA_ARRIVED:case Z.STATISTICS_INFO:this._emitter.emit(t.msg,r);break;case Z.IO_ERROR:case Z.DEMUX_ERROR:this._emitter.emit(t.msg,r.type,r.info);break;case Z.RECOMMEND_SEEKPOINT:this._emitter.emit(t.msg,r);break;case"logcat_callback":l.emitter.emit("log",r.type,r.logcat)}}};var ie={ERROR:"error",SOURCE_OPEN:"source_open",UPDATE_END:"update_end",BUFFER_FULL:"buffer_full"};var ne=class{constructor(e){this.TAG="MSEController",this._config=e,this._emitter=new s.a,this._config.isLive&&null==this._config.autoCleanupSourceBuffer&&(this._config.autoCleanupSourceBuffer=!0),this.e={onSourceOpen:this._onSourceOpen.bind(this),onSourceEnded:this._onSourceEnded.bind(this),onSourceClose:this._onSourceClose.bind(this),onSourceBufferError:this._onSourceBufferError.bind(this),onSourceBufferUpdateEnd:this._onSourceBufferUpdateEnd.bind(this)},this._mediaSource=null,this._mediaSourceObjectURL=null,this._mediaElement=null,this._isBufferFull=!1,this._hasPendingEos=!1,this._requireSetMediaDuration=!1,this._pendingMediaDuration=0,this._pendingSourceBufferInit=[],this._mimeTypes={video:null,audio:null},this._sourceBuffers={video:null,audio:null},this._lastInitSegments={video:null,audio:null},this._pendingSegments={video:[],audio:[]},this._pendingRemoveRanges={video:[],audio:[]},this._idrList=new $}destroy(){(this._mediaElement||this._mediaSource)&&this.detachMediaElement(),this.e=null,this._emitter.removeAllListeners(),this._emitter=null}on(e,t){this._emitter.addListener(e,t)}off(e,t){this._emitter.removeListener(e,t)}attachMediaElement(e){if(this._mediaSource)throw new d("MediaSource has been attached to an HTMLMediaElement!");let t=this._mediaSource=new window.MediaSource;t.addEventListener("sourceopen",this.e.onSourceOpen),t.addEventListener("sourceended",this.e.onSourceEnded),t.addEventListener("sourceclose",this.e.onSourceClose),this._mediaElement=e,this._mediaSourceObjectURL=window.URL.createObjectURL(this._mediaSource),e.src=this._mediaSourceObjectURL}detachMediaElement(){if(this._mediaSource){let e=this._mediaSource;for(let t in this._sourceBuffers){let r=this._pendingSegments[t];r.splice(0,r.length),this._pendingSegments[t]=null,this._pendingRemoveRanges[t]=null,this._lastInitSegments[t]=null;let i=this._sourceBuffers[t];if(i){if("closed"!==e.readyState){try{e.removeSourceBuffer(i)}catch(e){l.e(this.TAG,e.message)}i.removeEventListener("error",this.e.onSourceBufferError),i.removeEventListener("updateend",this.e.onSourceBufferUpdateEnd)}this._mimeTypes[t]=null,this._sourceBuffers[t]=null}}if("open"===e.readyState)try{e.endOfStream()}catch(e){l.e(this.TAG,e.message)}e.removeEventListener("sourceopen",this.e.onSourceOpen),e.removeEventListener("sourceended",this.e.onSourceEnded),e.removeEventListener("sourceclose",this.e.onSourceClose),this._pendingSourceBufferInit=[],this._isBufferFull=!1,this._idrList.clear(),this._mediaSource=null}this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src"),this._mediaElement=null),this._mediaSourceObjectURL&&(window.URL.revokeObjectURL(this._mediaSourceObjectURL),this._mediaSourceObjectURL=null)}appendInitSegment(e,t){if(!this._mediaSource||"open"!==this._mediaSource.readyState)return this._pendingSourceBufferInit.push(e),void this._pendingSegments[e.type].push(e);let r=e,i=""+r.container;r.codec&&r.codec.length>0&&(i+=";codecs="+r.codec);let n=!1;if(l.v(this.TAG,"Received Initialization Segment, mimeType: "+i),this._lastInitSegments[r.type]=r,i!==this._mimeTypes[r.type]){if(this._mimeTypes[r.type])l.v(this.TAG,`Notice: ${r.type} mimeType changed, origin: ${this._mimeTypes[r.type]}, target: ${i}`);else{n=!0;try{let e=this._sourceBuffers[r.type]=this._mediaSource.addSourceBuffer(i);e.addEventListener("error",this.e.onSourceBufferError),e.addEventListener("updateend",this.e.onSourceBufferUpdateEnd)}catch(e){return l.e(this.TAG,e.message),void this._emitter.emit(ie.ERROR,{code:e.code,msg:e.message})}}this._mimeTypes[r.type]=i}t||this._pendingSegments[r.type].push(r),n||this._sourceBuffers[r.type]&&!this._sourceBuffers[r.type].updating&&this._doAppendSegments(),_.safari&&"audio/mpeg"===r.container&&r.mediaDuration>0&&(this._requireSetMediaDuration=!0,this._pendingMediaDuration=r.mediaDuration/1e3,this._updateMediaSourceDuration())}appendMediaSegment(e){let t=e;this._pendingSegments[t.type].push(t),this._config.autoCleanupSourceBuffer&&this._needCleanupSourceBuffer()&&this._doCleanupSourceBuffer();let r=this._sourceBuffers[t.type];!r||r.updating||this._hasPendingRemoveRanges()||this._doAppendSegments()}seek(e){for(let e in this._sourceBuffers){if(!this._sourceBuffers[e])continue;let t=this._sourceBuffers[e];if("open"===this._mediaSource.readyState)try{t.abort()}catch(e){l.e(this.TAG,e.message)}this._idrList.clear();let r=this._pendingSegments[e];if(r.splice(0,r.length),"closed"!==this._mediaSource.readyState){for(let r=0;r=1&&e-t.start(0)>=this._config.autoCleanupMaxBackwardDuration)return!0}}return!1}_doCleanupSourceBuffer(){let e=this._mediaElement.currentTime;for(let t in this._sourceBuffers){let r=this._sourceBuffers[t];if(r){let i=r.buffered,n=!1;for(let r=0;r=this._config.autoCleanupMaxBackwardDuration){n=!0;let r=e-this._config.autoCleanupMinBackwardDuration;this._pendingRemoveRanges[t].push({start:a,end:r})}}else s0&&(isNaN(t)||r>t)&&(l.v(this.TAG,`Update MediaSource duration from ${t} to ${r}`),this._mediaSource.duration=r),this._requireSetMediaDuration=!1,this._pendingMediaDuration=0}_doRemoveRanges(){for(let e in this._pendingRemoveRanges){if(!this._sourceBuffers[e]||this._sourceBuffers[e].updating)continue;let t=this._sourceBuffers[e],r=this._pendingRemoveRanges[e];for(;r.length&&!t.updating;){let e=r.shift();t.remove(e.start,e.end)}}}_doAppendSegments(){let e=this._pendingSegments;for(let t in e)if(this._sourceBuffers[t]&&!this._sourceBuffers[t].updating&&e[t].length>0){let r=e[t].shift();if(r.timestampOffset){let e=this._sourceBuffers[t].timestampOffset,i=r.timestampOffset/1e3;Math.abs(e-i)>.1&&(l.v(this.TAG,`Update MPEG audio timestampOffset from ${e} to ${i}`),this._sourceBuffers[t].timestampOffset=i),delete r.timestampOffset}if(!r.data||0===r.data.byteLength)continue;try{this._sourceBuffers[t].appendBuffer(r.data),this._isBufferFull=!1,"video"===t&&r.hasOwnProperty("info")&&this._idrList.appendArray(r.info.syncPoints)}catch(e){this._pendingSegments[t].unshift(r),22===e.code?(this._isBufferFull||this._emitter.emit(ie.BUFFER_FULL),this._isBufferFull=!0):(l.e(this.TAG,e.message),this._emitter.emit(ie.ERROR,{code:e.code,msg:e.message}))}}}_onSourceOpen(){if(l.v(this.TAG,"MediaSource onSourceOpen"),this._mediaSource.removeEventListener("sourceopen",this.e.onSourceOpen),this._pendingSourceBufferInit.length>0){let e=this._pendingSourceBufferInit;for(;e.length;){let t=e.shift();this.appendInitSegment(t,!0)}}this._hasPendingSegments()&&this._doAppendSegments(),this._emitter.emit(ie.SOURCE_OPEN)}_onSourceEnded(){l.v(this.TAG,"MediaSource onSourceEnded")}_onSourceClose(){l.v(this.TAG,"MediaSource onSourceClose"),this._mediaSource&&null!=this.e&&(this._mediaSource.removeEventListener("sourceopen",this.e.onSourceOpen),this._mediaSource.removeEventListener("sourceended",this.e.onSourceEnded),this._mediaSource.removeEventListener("sourceclose",this.e.onSourceClose))}_hasPendingSegments(){let e=this._pendingSegments;return e.video.length>0||e.audio.length>0}_hasPendingRemoveRanges(){let e=this._pendingRemoveRanges;return e.video.length>0||e.audio.length>0}_onSourceBufferUpdateEnd(){this._requireSetMediaDuration?this._updateMediaSourceDuration():this._hasPendingRemoveRanges()?this._doRemoveRanges():this._hasPendingSegments()?this._doAppendSegments():this._hasPendingEos&&this.endOfStream(),this._emitter.emit(ie.UPDATE_END)}_onSourceBufferError(e){l.e(this.TAG,"SourceBuffer Error: "+e)}};const ae={NETWORK_ERROR:"NetworkError",MEDIA_ERROR:"MediaError",OTHER_ERROR:"OtherError"},se={NETWORK_EXCEPTION:g.EXCEPTION,NETWORK_STATUS_CODE_INVALID:g.HTTP_STATUS_CODE_INVALID,NETWORK_TIMEOUT:g.CONNECTING_TIMEOUT,NETWORK_UNRECOVERABLE_EARLY_EOF:g.UNRECOVERABLE_EARLY_EOF,MEDIA_MSE_ERROR:"MediaMSEError",MEDIA_FORMAT_ERROR:V.FORMAT_ERROR,MEDIA_FORMAT_UNSUPPORTED:V.FORMAT_UNSUPPORTED,MEDIA_CODEC_UNSUPPORTED:V.CODEC_UNSUPPORTED};var oe=class{constructor(e,t){if(this.TAG="FlvPlayer",this._type="FlvPlayer",this._emitter=new s.a,this._config=L(),"object"==typeof t&&Object.assign(this._config,t),"flv"!==e.type.toLowerCase())throw new h("FlvPlayer requires an flv MediaDataSource input!");!0===e.isLive&&(this._config.isLive=!0),this.e={onvLoadedMetadata:this._onvLoadedMetadata.bind(this),onvSeeking:this._onvSeeking.bind(this),onvCanPlay:this._onvCanPlay.bind(this),onvStalled:this._onvStalled.bind(this),onvProgress:this._onvProgress.bind(this)},self.performance&&self.performance.now?this._now=self.performance.now.bind(self.performance):this._now=Date.now,this._pendingSeekTime=null,this._requestSetTime=!1,this._seekpointRecord=null,this._progressChecker=null,this._mediaDataSource=e,this._mediaElement=null,this._msectl=null,this._transmuxer=null,this._mseSourceOpened=!1,this._hasPendingLoad=!1,this._receivedCanPlay=!1,this._mediaInfo=null,this._statisticsInfo=null;let r=_.chrome&&(_.version.major<50||50===_.version.major&&_.version.build<2661);this._alwaysSeekKeyframe=!!(r||_.msedge||_.msie),this._alwaysSeekKeyframe&&(this._config.accurateSeek=!1)}destroy(){null!=this._progressChecker&&(window.clearInterval(this._progressChecker),this._progressChecker=null),this._transmuxer&&this.unload(),this._mediaElement&&this.detachMediaElement(),this.e=null,this._mediaDataSource=null,this._emitter.removeAllListeners(),this._emitter=null}on(e,t){e===D.MEDIA_INFO?null!=this._mediaInfo&&Promise.resolve().then(()=>{this._emitter.emit(D.MEDIA_INFO,this.mediaInfo)}):e===D.STATISTICS_INFO&&null!=this._statisticsInfo&&Promise.resolve().then(()=>{this._emitter.emit(D.STATISTICS_INFO,this.statisticsInfo)}),this._emitter.addListener(e,t)}off(e,t){this._emitter.removeListener(e,t)}attachMediaElement(e){if(this._mediaElement=e,e.addEventListener("loadedmetadata",this.e.onvLoadedMetadata),e.addEventListener("seeking",this.e.onvSeeking),e.addEventListener("canplay",this.e.onvCanPlay),e.addEventListener("stalled",this.e.onvStalled),e.addEventListener("progress",this.e.onvProgress),this._msectl=new ne(this._config),this._msectl.on(ie.UPDATE_END,this._onmseUpdateEnd.bind(this)),this._msectl.on(ie.BUFFER_FULL,this._onmseBufferFull.bind(this)),this._msectl.on(ie.SOURCE_OPEN,()=>{this._mseSourceOpened=!0,this._hasPendingLoad&&(this._hasPendingLoad=!1,this.load())}),this._msectl.on(ie.ERROR,e=>{this._emitter.emit(D.ERROR,ae.MEDIA_ERROR,se.MEDIA_MSE_ERROR,e)}),this._msectl.attachMediaElement(e),null!=this._pendingSeekTime)try{e.currentTime=this._pendingSeekTime,this._pendingSeekTime=null}catch(e){}}detachMediaElement(){this._mediaElement&&(this._msectl.detachMediaElement(),this._mediaElement.removeEventListener("loadedmetadata",this.e.onvLoadedMetadata),this._mediaElement.removeEventListener("seeking",this.e.onvSeeking),this._mediaElement.removeEventListener("canplay",this.e.onvCanPlay),this._mediaElement.removeEventListener("stalled",this.e.onvStalled),this._mediaElement.removeEventListener("progress",this.e.onvProgress),this._mediaElement=null),this._msectl&&(this._msectl.destroy(),this._msectl=null)}load(){if(!this._mediaElement)throw new d("HTMLMediaElement must be attached before load()!");if(this._transmuxer)throw new d("FlvPlayer.load() has been called, please call unload() first!");this._hasPendingLoad||(this._config.deferLoadAfterSourceOpen&&!1===this._mseSourceOpened?this._hasPendingLoad=!0:(this._mediaElement.readyState>0&&(this._requestSetTime=!0,this._mediaElement.currentTime=0),this._transmuxer=new re(this._mediaDataSource,this._config),this._transmuxer.on(Z.INIT_SEGMENT,(e,t)=>{this._msectl.appendInitSegment(t)}),this._transmuxer.on(Z.MEDIA_SEGMENT,(e,t)=>{if(this._msectl.appendMediaSegment(t),this._config.lazyLoad&&!this._config.isLive){let e=this._mediaElement.currentTime;t.info.endDts>=1e3*(e+this._config.lazyLoadMaxDuration)&&null==this._progressChecker&&(l.v(this.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),this._suspendTransmuxer())}}),this._transmuxer.on(Z.LOADING_COMPLETE,()=>{this._msectl.endOfStream(),this._emitter.emit(D.LOADING_COMPLETE)}),this._transmuxer.on(Z.RECOVERED_EARLY_EOF,()=>{this._emitter.emit(D.RECOVERED_EARLY_EOF)}),this._transmuxer.on(Z.IO_ERROR,(e,t)=>{this._emitter.emit(D.ERROR,ae.NETWORK_ERROR,e,t)}),this._transmuxer.on(Z.DEMUX_ERROR,(e,t)=>{this._emitter.emit(D.ERROR,ae.MEDIA_ERROR,e,{code:-1,msg:t})}),this._transmuxer.on(Z.MEDIA_INFO,e=>{this._mediaInfo=e,this._emitter.emit(D.MEDIA_INFO,Object.assign({},e))}),this._transmuxer.on(Z.METADATA_ARRIVED,e=>{this._emitter.emit(D.METADATA_ARRIVED,e)}),this._transmuxer.on(Z.SCRIPTDATA_ARRIVED,e=>{this._emitter.emit(D.SCRIPTDATA_ARRIVED,e)}),this._transmuxer.on(Z.STATISTICS_INFO,e=>{this._statisticsInfo=this._fillStatisticsInfo(e),this._emitter.emit(D.STATISTICS_INFO,Object.assign({},this._statisticsInfo))}),this._transmuxer.on(Z.RECOMMEND_SEEKPOINT,e=>{this._mediaElement&&!this._config.accurateSeek&&(this._requestSetTime=!0,this._mediaElement.currentTime=e/1e3)}),this._transmuxer.open()))}unload(){this._mediaElement&&this._mediaElement.pause(),this._msectl&&this._msectl.seek(0),this._transmuxer&&(this._transmuxer.close(),this._transmuxer.destroy(),this._transmuxer=null)}play(){return this._mediaElement.play()}pause(){this._mediaElement.pause()}get type(){return this._type}get buffered(){return this._mediaElement.buffered}get duration(){return this._mediaElement.duration}get volume(){return this._mediaElement.volume}set volume(e){this._mediaElement.volume=e}get muted(){return this._mediaElement.muted}set muted(e){this._mediaElement.muted=e}get currentTime(){return this._mediaElement?this._mediaElement.currentTime:0}set currentTime(e){this._mediaElement?this._internalSeek(e):this._pendingSeekTime=e}get mediaInfo(){return Object.assign({},this._mediaInfo)}get statisticsInfo(){return null==this._statisticsInfo&&(this._statisticsInfo={}),this._statisticsInfo=this._fillStatisticsInfo(this._statisticsInfo),Object.assign({},this._statisticsInfo)}_fillStatisticsInfo(e){if(e.playerType=this._type,!(this._mediaElement instanceof HTMLVideoElement))return e;let t=!0,r=0,i=0;if(this._mediaElement.getVideoPlaybackQuality){let e=this._mediaElement.getVideoPlaybackQuality();r=e.totalVideoFrames,i=e.droppedVideoFrames}else null!=this._mediaElement.webkitDecodedFrameCount?(r=this._mediaElement.webkitDecodedFrameCount,i=this._mediaElement.webkitDroppedFrameCount):t=!1;return t&&(e.decodedFrames=r,e.droppedFrames=i),e}_onmseUpdateEnd(){if(!this._config.lazyLoad||this._config.isLive)return;let e=this._mediaElement.buffered,t=this._mediaElement.currentTime,r=0,i=0;for(let n=0;n=t+this._config.lazyLoadMaxDuration&&null==this._progressChecker&&(l.v(this.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),this._suspendTransmuxer())}_onmseBufferFull(){l.v(this.TAG,"MSE SourceBuffer is full, suspend transmuxing task"),null==this._progressChecker&&this._suspendTransmuxer()}_suspendTransmuxer(){this._transmuxer&&(this._transmuxer.pause(),null==this._progressChecker&&(this._progressChecker=window.setInterval(this._checkProgressAndResume.bind(this),1e3)))}_checkProgressAndResume(){let e=this._mediaElement.currentTime,t=this._mediaElement.buffered,r=!1;for(let i=0;i=n&&e=a-this._config.lazyLoadRecoverDuration&&(r=!0);break}}r&&(window.clearInterval(this._progressChecker),this._progressChecker=null,r&&(l.v(this.TAG,"Continue loading from paused position"),this._transmuxer.resume()))}_isTimepointBuffered(e){let t=this._mediaElement.buffered;for(let r=0;r=i&&e0){let t=this._mediaElement.buffered.start(0);(t<1&&e0&&t.currentTime0){let e=r.start(0);if(e<1&&t{this._emitter.emit(D.MEDIA_INFO,this.mediaInfo)}):e===D.STATISTICS_INFO&&null!=this._mediaElement&&0!==this._mediaElement.readyState&&Promise.resolve().then(()=>{this._emitter.emit(D.STATISTICS_INFO,this.statisticsInfo)}),this._emitter.addListener(e,t)}off(e,t){this._emitter.removeListener(e,t)}attachMediaElement(e){if(this._mediaElement=e,e.addEventListener("loadedmetadata",this.e.onvLoadedMetadata),null!=this._pendingSeekTime)try{e.currentTime=this._pendingSeekTime,this._pendingSeekTime=null}catch(e){}}detachMediaElement(){this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src"),this._mediaElement.removeEventListener("loadedmetadata",this.e.onvLoadedMetadata),this._mediaElement=null),null!=this._statisticsReporter&&(window.clearInterval(this._statisticsReporter),this._statisticsReporter=null)}load(){if(!this._mediaElement)throw new d("HTMLMediaElement must be attached before load()!");this._mediaElement.src=this._mediaDataSource.url,this._mediaElement.readyState>0&&(this._mediaElement.currentTime=0),this._mediaElement.preload="auto",this._mediaElement.load(),this._statisticsReporter=window.setInterval(this._reportStatisticsInfo.bind(this),this._config.statisticsInfoReportInterval)}unload(){this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src")),null!=this._statisticsReporter&&(window.clearInterval(this._statisticsReporter),this._statisticsReporter=null)}play(){return this._mediaElement.play()}pause(){this._mediaElement.pause()}get type(){return this._type}get buffered(){return this._mediaElement.buffered}get duration(){return this._mediaElement.duration}get volume(){return this._mediaElement.volume}set volume(e){this._mediaElement.volume=e}get muted(){return this._mediaElement.muted}set muted(e){this._mediaElement.muted=e}get currentTime(){return this._mediaElement?this._mediaElement.currentTime:0}set currentTime(e){this._mediaElement?this._mediaElement.currentTime=e:this._pendingSeekTime=e}get mediaInfo(){let e={mimeType:(this._mediaElement instanceof HTMLAudioElement?"audio/":"video/")+this._mediaDataSource.type};return this._mediaElement&&(e.duration=Math.floor(1e3*this._mediaElement.duration),this._mediaElement instanceof HTMLVideoElement&&(e.width=this._mediaElement.videoWidth,e.height=this._mediaElement.videoHeight)),e}get statisticsInfo(){let e={playerType:this._type,url:this._mediaDataSource.url};if(!(this._mediaElement instanceof HTMLVideoElement))return e;let t=!0,r=0,i=0;if(this._mediaElement.getVideoPlaybackQuality){let e=this._mediaElement.getVideoPlaybackQuality();r=e.totalVideoFrames,i=e.droppedVideoFrames}else null!=this._mediaElement.webkitDecodedFrameCount?(r=this._mediaElement.webkitDecodedFrameCount,i=this._mediaElement.webkitDroppedFrameCount):t=!1;return t&&(e.decodedFrames=r,e.droppedFrames=i),e}_onvLoadedMetadata(e){null!=this._pendingSeekTime&&(this._mediaElement.currentTime=this._pendingSeekTime,this._pendingSeekTime=null),this._emitter.emit(D.MEDIA_INFO,this.mediaInfo)}_reportStatisticsInfo(){this._emitter.emit(D.STATISTICS_INFO,this.statisticsInfo)}};n.install();let ue={createPlayer:function(e,t){let r=e;if(null==r||"object"!=typeof r)throw new h("MediaDataSource must be an javascript object!");if(!r.hasOwnProperty("type"))throw new h("MediaDataSource must has type field to indicate video file type!");switch(r.type){case"flv":return new oe(r,t);default:return new le(r,t)}},isSupported:function(){return O.supportMSEH264Playback()},getFeatureList:function(){return O.getFeatureList()}};ue.BaseLoader=v,ue.LoaderStatus=p,ue.LoaderErrors=g,ue.Events=D,ue.ErrorTypes=ae,ue.ErrorDetails=se,ue.FlvPlayer=oe,ue.NativePlayer=le,ue.LoggingControl=I,Object.defineProperty(ue,"version",{enumerable:!0,get:function(){return"__VERSION__"}});t.default=ue},function(e,t){},,,,,function(e,t){}]).default})); \ No newline at end of file diff --git a/templates/nav/videolist.html b/templates/nav/videolist.html new file mode 100644 index 0000000..c9b7ce6 --- /dev/null +++ b/templates/nav/videolist.html @@ -0,0 +1,47 @@ +{% extends 'template.html' %} +{% block title %} + 教学视频 + {% load static %} + +{% endblock %} +{% block content %} +
+{% endblock %} \ No newline at end of file diff --git a/templates/nav/videoview.html b/templates/nav/videoview.html new file mode 100644 index 0000000..e262e17 --- /dev/null +++ b/templates/nav/videoview.html @@ -0,0 +1,157 @@ +{% extends 'template.html' %} +{% block title %} + {% load static %} + + + + + + + + + 视频播放 + +{% endblock %} +{% block content %} + +
+
+ +
+ +{% endblock %} +{% block foot %} +{% endblock %} \ No newline at end of file