Merge remote-tracking branch 'origin/shenzhendev' into guoshengxiong

This commit is contained in:
Administrator 2023-02-23 09:01:07 +08:00
commit c944acfd3b
35 changed files with 644 additions and 3 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,5 +1,5 @@
@font-face { @font-face {
font-family: '思源黑体'; /* font-family: '思源黑体'; */
src: url('./NotoSansHans-Black.otf'); src: url('./NotoSansHans-Black.otf');
font-weight: normal; font-weight: normal;
font-style: normal; font-style: normal;

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,188 @@
'use strict'
// A linked list to keep track of recently-used-ness
const Yallist = require('yallist')
const MAX = Symbol('max')
const LENGTH = Symbol('length')
const LENGTH_CALCULATOR = Symbol('lengthCalculator')
const ALLOW_STALE = Symbol('allowStale')
const MAX_AGE = Symbol('maxAge')
const DISPOSE = Symbol('dispose')
const NO_DISPOSE_ON_SET = Symbol('noDisposeOnSet')
const LRU_LIST = Symbol('lruList')
const CACHE = Symbol('cache')
const UPDATE_AGE_ON_GET = Symbol('updateAgeOnGet')
const naiveLength = () => 1
// lruList is a yallist where the head is the youngest
// item, and the tail is the oldest. the list contains the Hit
// objects as the entries.
// Each Hit object has a reference to its Yallist.Node. This
// never changes.
//
// cache is a Map (or PseudoMap) that matches the keys to
// the Yallist.Node object.
class LRUCache {
constructor (options) {
if (typeof options === 'number')
options = { max: options }
if (!options)
options = {}
if (options.max && (typeof options.max !== 'number' || options.max < 0))
throw new TypeError('max must be a non-negative number')
// Kind of weird to have a default max of Infinity, but oh well.
const max = this[MAX] = options.max || Infinity
const lc = options.length || naiveLength
this[LENGTH_CALCULATOR] = (typeof lc !== 'function') ? naiveLength : lc
this[ALLOW_STALE] = options.stale || false
if (options.maxAge && typeof options.maxAge !== 'number')
throw new TypeError('maxAge must be a number')
this[MAX_AGE] = options.maxAge || 0
this[DISPOSE] = options.dispose
this[NO_DISPOSE_ON_SET] = options.noDisposeOnSet || false
this[UPDATE_AGE_ON_GET] = options.updateAgeOnGet || false
this.reset()
}
// resize the cache when the max changes.
set max (mL) {
if (typeof mL !== 'number' || mL < 0)
throw new TypeError('max must be a non-negative number')
this[MAX] = mL || Infinity
trim(this)
}
get max () {
return this[MAX]
}
set allowStale (allowStale) {
this[ALLOW_STALE] = !!allowStale
}
get allowStale () {
return this[ALLOW_STALE]
}
set maxAge (mA) {
if (typeof mA !== 'number')
throw new TypeError('maxAge must be a non-negative number')
this[MAX_AGE] = mA
trim(this)
}
get maxAge () {
return this[MAX_AGE]
}
// resize the cache when the lengthCalculator changes.
set lengthCalculator (lC) {
if (typeof lC !== 'function')
lC = naiveLength
if (lC !== this[LENGTH_CALCULATOR]) {
this[LENGTH_CALCULATOR] = lC
this[LENGTH] = 0
this[LRU_LIST].forEach(hit => {
hit.length = this[LENGTH_CALCULATOR](hit.value, hit.key)
this[LENGTH] += hit.length
})
}
trim(this)
}
get lengthCalculator () { return this[LENGTH_CALCULATOR] }
get length () { return this[LENGTH] }
get itemCount () { return this[LRU_LIST].length }
rforEach (fn, thisp) {
thisp = thisp || this
for (let walker = this[LRU_LIST].tail; walker !== null;) {
const prev = walker.prev
forEachStep(this, fn, walker, thisp)
walker = prev
}
}
forEach (fn, thisp) {
thisp = thisp || this
for (let walker = this[LRU_LIST].head; walker !== null;) {
const next = walker.next
forEachStep(this, fn, walker, thisp)
walker = next
}
}
keys () {
return this[LRU_LIST].toArray().map(k => k.key)
}
values () {
return this[LRU_LIST].toArray().map(k => k.value)
}
reset () {
if (this[DISPOSE] &&
this[LRU_LIST] &&
this[LRU_LIST].length) {
this[LRU_LIST].forEach(hit => this[DISPOSE](hit.key, hit.value))
}
this[CACHE] = new Map() // hash of items by key
this[LRU_LIST] = new Yallist() // list of items in order of use recency
this[LENGTH] = 0 // length of items in the list
}
dump () {
return this[LRU_LIST].map(hit =>
isStale(this, hit) ? false : {
k: hit.key,
v: hit.value,
e: hit.now + (hit.maxAge || 0)
}).toArray().filter(h => h)
}
dumpLru () {
return this[LRU_LIST]
}
set (key, value, maxAge) {
maxAge = maxAge || this[MAX_AGE]
if (maxAge && typeof maxAge !== 'number')
throw new TypeError('maxAge must be a number')
const now = maxAge ? Date.now() : 0
const len = this[LENGTH_CALCULATOR](value, key)
if (this[CACHE].has(key)) {
if (len > this[MAX]) {
del(this, this[CACHE].get(key))
return false
}
const node = this[CACHE].get(key)
const item = node.value
// dispose of the old one before overwriting
// split out into 2 ifs for better coverage tracking
if (this[DISPOSE]) {
if (!this[NO_DISPOSE_ON_SET])
this[DISPOSE](key, item.value)
}
item.now = now
item.maxAge = maxAge
item.value = value
this[LENGTH] += len - item.length
item.length = len
this.get(key)
trim(this)
return true
}
const hit = new Entry(key, value, l

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,27 @@
/*!
* The buffer module from node.js, for the browser.
*
* @author Feross Aboukhadijeh <http://feross.org>
* @license MIT
*/
/*!
* better-scroll / better-scroll
* (c) 2016-2021 ustbhuangyi
* Released under the MIT License.
*/
/*! *****************************************************************************
Copyright (c) Microsoft Corporation.
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-2d2077b3","chunk-2d2077b3","chunk-2d2077b3","chunk-2d2077b3","chunk-2d2077b3","chunk-2d2077b3"],{a15b:function(n,c,o){"use strict";var d=o("23e7"),u=o("44ad"),a=o("fc6a"),b=o("a640"),i=[].join,t=u!=Object,r=b("join",",");d({target:"Array",proto:!0,forced:t||!r},{join:function(n){return i.call(a(this),void 0===n?",":n)}})}}]);

View File

@ -0,0 +1 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-4e6cfaa0","chunk-2d2077b3","chunk-2d2077b3","chunk-2d2077b3","chunk-2d2077b3","chunk-2d2077b3","chunk-2d2077b3"],{a15b:function(e,n,t){"use strict";var r=t("23e7"),c=t("44ad"),o=t("fc6a"),i=t("a640"),a=[].join,d=c!=Object,h=i("join",",");r({target:"Array",proto:!0,forced:d||!h},{join:function(e){return a.call(o(this),void 0===e?",":e)}})},a434:function(e,n,t){"use strict";var r=t("23e7"),c=t("23cb"),o=t("a691"),i=t("50c4"),a=t("7b0b"),d=t("65f0"),h=t("8418"),f=t("1dde"),u=t("ae40"),l=f("splice"),b=u("splice",{ACCESSORS:!0,0:0,1:2}),s=Math.max,p=Math.min,k=9007199254740991,w="Maximum allowed length exceeded";r({target:"Array",proto:!0,forced:!l||!b},{splice:function(e,n){var t,r,f,u,l,b,g=a(this),j=i(g.length),m=c(e,j),v=arguments.length;if(0===v?t=r=0:1===v?(t=0,r=j-m):(t=v-2,r=p(s(o(n),0),j-m)),j+t-r>k)throw TypeError(w);for(f=d(g,r),u=0;u<r;u++)(l=m+u)in g&&h(f,u,g[l]);if(f.length=r,t<r){for(u=m;u<j-r;u++)b=u+t,(l=u+r)in g?g[b]=g[l]:delete g[b];for(u=j;u>j-r+t;u--)delete g[u-1]}else if(t>r)for(u=j-r;u>m;u--)b=u+t-1,(l=u+r-1)in g?g[b]=g[l]:delete g[b];for(u=0;u<t;u++)g[u+m]=arguments[u+2];return g.length=j-r+t,f}})}}]);

View File

@ -0,0 +1 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-4e6d65c7","chunk-4e6d65c7","chunk-4e6d65c7","chunk-2d2077b3","chunk-2d2077b3","chunk-2d2077b3","chunk-2d2077b3","chunk-2d2077b3","chunk-2d2077b3"],{a15b:function(n,c,t){"use strict";var o=t("23e7"),u=t("44ad"),i=t("fc6a"),r=t("a640"),a=[].join,e=u!=Object,b=r("join",",");o({target:"Array",proto:!0,forced:e||!b},{join:function(n){return a.call(i(this),void 0===n?",":n)}})},b0c0:function(n,c,t){var o=t("83ab"),u=t("9bf2").f,i=Function.prototype,r=i.toString,a=/^\s*function ([^ (]*)/,e="name";o&&!(e in i)&&u(i,e,{configurable:!0,get:function(){try{return r.call(this).match(a)[1]}catch(n){return""}}})}}]);

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,20 @@
/*!
* better-scroll / better-scroll
* (c) 2016-2021 ustbhuangyi
* Released under the MIT License.
*/
/*! *****************************************************************************
Copyright (c) Microsoft Corporation.
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,293 @@
/*!
* @overview es6-promise - a tiny implementation of Promises/A+.
* @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald)
* @license Licensed under MIT license
* See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE
* @version v4.2.8+1e68dce6
*/
/*! ../config.js */
/*! ../core/media-info.js */
/*! ../core/media-segment-info.js */
/*! ../core/mse-controller.js */
/*! ../core/mse-events.js */
/*! ../core/transmuxer.js */
/*! ../core/transmuxing-events.js */
/*! ../demux/demux-errors.js */
/*! ../demux/flv-demuxer.js */
/*! ../io/io-controller.js */
/*! ../io/loader.js */
/*! ../remux/mp4-remuxer.js */
/*! ../utils/browser.js */
/*! ../utils/exception.js */
/*! ../utils/logger.js */
/*! ../utils/logging-control.js */
/*! ../utils/polyfill.js */
/*! ../utils/utf8-conv.js */
/*! ./aac-silent.js */
/*! ./amf-parser.js */
/*! ./core/features.js */
/*! ./demux-errors.js */
/*! ./exp-golomb.js */
/*! ./fetch-stream-loader.js */
/*! ./flv.js */
/*! ./io/loader.js */
/*! ./loader.js */
/*! ./logger.js */
/*! ./media-info.js */
/*! ./media-segment-info.js */
/*! ./mp4-generator.js */
/*! ./mse-events.js */
/*! ./param-seek-handler.js */
/*! ./player-errors.js */
/*! ./player-events.js */
/*! ./player/flv-player.js */
/*! ./player/native-player.js */
/*! ./player/player-errors.js */
/*! ./player/player-events.js */
/*! ./range-seek-handler.js */
/*! ./speed-sampler.js */
/*! ./sps-parser.js */
/*! ./transmuxing-controller.js */
/*! ./transmuxing-events.js */
/*! ./transmuxing-worker */
/*! ./utils/exception.js */
/*! ./utils/logging-control.js */
/*! ./utils/polyfill.js */
/*! ./websocket-loader.js */
/*! ./xhr-moz-chunked-loader.js */
/*! ./xhr-range-loader.js */
/*! es6-promise */
/*! events */
/*! webworkify-webpack */
/*!********************!*\
!*** ./src/flv.js ***!
\********************/
/*!**********************!*\
!*** ./src/index.js ***!
\**********************/
/*!***********************!*\
!*** ./src/config.js ***!
\***********************/
/*!**************************!*\
!*** ./src/io/loader.js ***!
\**************************/
/*!*****************************!*\
!*** ./src/utils/logger.js ***!
\*****************************/
/*!******************************!*\
!*** ./src/core/features.js ***!
\******************************/
/*!******************************!*\
!*** ./src/utils/browser.js ***!
\******************************/
/*!*******************************!*\
!*** ./src/utils/polyfill.js ***!
\*******************************/
/*!********************************!*\
!*** ./src/core/media-info.js ***!
\********************************/
/*!********************************!*\
!*** ./src/core/mse-events.js ***!
\********************************/
/*!********************************!*\
!*** ./src/core/transmuxer.js ***!
\********************************/
/*!********************************!*\
!*** ./src/utils/exception.js ***!
\********************************/
/*!********************************!*\
!*** ./src/utils/utf8-conv.js ***!
\********************************/
/*!*********************************!*\
!*** ./src/demux/amf-parser.js ***!
\*********************************/
/*!*********************************!*\
!*** ./src/demux/exp-golomb.js ***!
\*********************************/
/*!*********************************!*\
!*** ./src/demux/sps-parser.js ***!
\*********************************/
/*!*********************************!*\
!*** ./src/io/io-controller.js ***!
\*********************************/
/*!*********************************!*\
!*** ./src/io/speed-sampler.js ***!
\*********************************/
/*!*********************************!*\
!*** ./src/remux/aac-silent.js ***!
\*********************************/
/*!**********************************!*\
!*** ./src/demux/flv-demuxer.js ***!
\**********************************/
/*!**********************************!*\
!*** ./src/player/flv-player.js ***!
\**********************************/
/*!**********************************!*\
!*** ./src/remux/mp4-remuxer.js ***!
\**********************************/
/*!***********************************!*\
!*** ./src/demux/demux-errors.js ***!
\***********************************/
/*!************************************!*\
!*** ./src/core/mse-controller.js ***!
\************************************/
/*!************************************!*\
!*** ./src/io/websocket-loader.js ***!
\************************************/
/*!************************************!*\
!*** ./src/io/xhr-range-loader.js ***!
\************************************/
/*!************************************!*\
!*** ./src/remux/mp4-generator.js ***!
\************************************/
/*!*************************************!*\
!*** ./src/player/native-player.js ***!
\*************************************/
/*!*************************************!*\
!*** ./src/player/player-errors.js ***!
\*************************************/
/*!*************************************!*\
!*** ./src/player/player-events.js ***!
\*************************************/
/*!**************************************!*\
!*** ./src/io/param-seek-handler.js ***!
\**************************************/
/*!**************************************!*\
!*** ./src/io/range-seek-handler.js ***!
\**************************************/
/*!**************************************!*\
!*** ./src/utils/logging-control.js ***!
\**************************************/
/*!***************************************!*\
!*** ./node_modules/events/events.js ***!
\***************************************/
/*!***************************************!*\
!*** ./src/io/fetch-stream-loader.js ***!
\***************************************/
/*!****************************************!*\
!*** ./src/core/media-segment-info.js ***!
\****************************************/
/*!****************************************!*\
!*** ./src/core/transmuxing-events.js ***!
\****************************************/
/*!****************************************!*\
!*** ./src/core/transmuxing-worker.js ***!
\****************************************/
/*!******************************************!*\
!*** ./src/io/xhr-moz-chunked-loader.js ***!
\******************************************/
/*!********************************************!*\
!*** ./src/core/transmuxing-controller.js ***!
\********************************************/
/*!**************************************************!*\
!*** ./node_modules/webworkify-webpack/index.js ***!
\**************************************************/
/*!******************************************************!*\
!*** ./node_modules/es6-promise/dist/es6-promise.js ***!
\******************************************************/
/**
* [js-md5]{@link https://github.com/emn178/js-md5}
*
* @namespace md5
* @version 0.7.3
* @author Chen, Yi-Cyuan [emn178@gmail.com]
* @copyright Chen, Yi-Cyuan 2014-2017
* @license MIT
*/

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-f1e2a20c","chunk-4e6cfaa0","chunk-4e6d65c7","chunk-4e6d65c7","chunk-4e6d65c7","chunk-2d2077b3","chunk-2d2077b3","chunk-2d2077b3","chunk-2d2077b3","chunk-2d2077b3","chunk-2d2077b3"],{a15b:function(e,n,c){"use strict";var t=c("23e7"),r=c("44ad"),o=c("fc6a"),i=c("a640"),a=[].join,u=r!=Object,h=i("join",",");t({target:"Array",proto:!0,forced:u||!h},{join:function(e){return a.call(o(this),void 0===e?",":e)}})},a434:function(e,n,c){"use strict";var t=c("23e7"),r=c("23cb"),o=c("a691"),i=c("50c4"),a=c("7b0b"),u=c("65f0"),h=c("8418"),f=c("1dde"),d=c("ae40"),l=f("splice"),b=d("splice",{ACCESSORS:!0,0:0,1:2}),s=Math.max,k=Math.min,p=9007199254740991,g="Maximum allowed length exceeded";t({target:"Array",proto:!0,forced:!l||!b},{splice:function(e,n){var c,t,f,d,l,b,w=a(this),m=i(w.length),v=r(e,m),y=arguments.length;if(0===y?c=t=0:1===y?(c=0,t=m-v):(c=y-2,t=k(s(o(n),0),m-v)),m+c-t>p)throw TypeError(g);for(f=u(w,t),d=0;d<t;d++)(l=v+d)in w&&h(f,d,w[l]);if(f.length=t,c<t){for(d=v;d<m-t;d++)b=d+c,(l=d+t)in w?w[b]=w[l]:delete w[b];for(d=m;d>m-t+c;d--)delete w[d-1]}else if(c>t)for(d=m-t;d>v;d--)b=d+c-1,(l=d+t-1)in w?w[b]=w[l]:delete w[b];for(d=0;d<c;d++)w[d+v]=arguments[d+2];return w.length=m-t+c,f}})},b0c0:function(e,n,c){var t=c("83ab"),r=c("9bf2").f,o=Function.prototype,i=o.toString,a=/^\s*function ([^ (]*)/,u="name";t&&!(u in o)&&r(o,u,{configurable:!0,get:function(){try{return i.call(this).match(a)[1]}catch(e){return""}}})}}]);

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,82 @@
/*!
* vue-router v3.4.1
* (c) 2020 Evan You
* @license MIT
*/
/*!
* Quill Editor v1.3.7
* https://quilljs.com/
* Copyright (c) 2014, Jason Chen
* Copyright (c) 2013, salesforce.com
*/
/*!
* The buffer module from node.js, for the browser.
*
* @author Feross Aboukhadijeh <http://feross.org>
* @license MIT
*/
/*!
* Vue.js v2.6.11
* (c) 2014-2019 Evan You
* Released under the MIT License.
*/
/*!
* vue-i18n v8.21.0
* (c) 2020 kazuya kawaguchi
* Released under the MIT License.
*/
/*!
* vuex v3.5.1
* (c) 2020 Evan You
* @license MIT
*/
/*! *****************************************************************************
Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of the
License at http://www.apache.org/licenses/LICENSE-2.0
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
MERCHANTABLITY OR NON-INFRINGEMENT.
See the Apache Version 2.0 License for specific language governing permissions
and limitations under the License.
***************************************************************************** */
/*! PhotoSwipe - v4.1.3 - 2019-01-08
* http://photoswipe.com
* Copyright (c) 2019 Dmitry Semenov; */
/*! PhotoSwipe Default UI - 4.1.3 - 2019-01-08
* http://photoswipe.com
* Copyright (c) 2019 Dmitry Semenov; */
/**
* @file vue-awesome-swiper v4.0.4
* @copyright Copyright (c) Surmon. All rights reserved.
* @license Released under the MIT License.
* @author Surmon <https://github.com/surmon-china>
*/
/**
* Checks if an event is supported in the current execution environment.
*
* NOTE: This will not work correctly for non-generic events such as `change`,
* `reset`, `load`, `error`, and `select`.
*
* Borrows from Modernizr.
*
* @param {string} eventNameSuffix Event name, e.g. "click".
* @param {?boolean} capture Check if the capture phase is supported.
* @return {boolean} True if the event is supported.
* @internal
* @license Modernizr 3.0.0pre (Custom Build) | MIT
*/

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long