mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
Unminify using 1.5.323
Repo with tag: https://github.com/MediaBrowser/emby-webcomponents/tree/1.5.323
This commit is contained in:
parent
4678528d00
commit
de6ac33ec1
289 changed files with 78483 additions and 54701 deletions
|
@ -1,166 +1,373 @@
|
|||
! function(name, context, definition) {
|
||||
context[name] = definition(), "undefined" != typeof module && module.exports ? module.exports = context[name] : "function" == typeof define && define.amd && define(function() {
|
||||
return context[name]
|
||||
})
|
||||
}("Promise", "undefined" != typeof global ? global : this, function() {
|
||||
"use strict";
|
||||
/*! Native Promise Only
|
||||
v0.8.0-a (c) Kyle Simpson
|
||||
MIT License: http://getify.mit-license.org
|
||||
*/
|
||||
|
||||
function schedule(fn, self) {
|
||||
scheduling_queue.add(fn, self), cycle || (cycle = timer(scheduling_queue.drain))
|
||||
}
|
||||
(function UMD(name,context,definition){
|
||||
// special form of UMD for polyfilling across evironments
|
||||
context[name] = definition();
|
||||
if (typeof module != "undefined" && module.exports) { module.exports = context[name]; }
|
||||
else if (typeof define == "function" && define.amd) { define(function $AMD$(){ return context[name]; }); }
|
||||
})("Promise",typeof global != "undefined" ? global : this,function DEF(){
|
||||
/*jshint validthis:true */
|
||||
"use strict";
|
||||
|
||||
function isThenable(o) {
|
||||
var _then, o_type = typeof o;
|
||||
return null == o || "object" != o_type && "function" != o_type || (_then = o.then), "function" == typeof _then && _then
|
||||
}
|
||||
var builtInProp, cycle, scheduling_queue,
|
||||
ToString = Object.prototype.toString,
|
||||
timer = (typeof setImmediate != "undefined") ?
|
||||
function timer(fn) { return setImmediate(fn); } :
|
||||
setTimeout
|
||||
;
|
||||
|
||||
function notify() {
|
||||
for (var i = 0; i < this.chain.length; i++) notifyIsolated(this, 1 === this.state ? this.chain[i].success : this.chain[i].failure, this.chain[i]);
|
||||
this.chain.length = 0
|
||||
}
|
||||
// dammit, IE8.
|
||||
try {
|
||||
Object.defineProperty({},"x",{});
|
||||
builtInProp = function builtInProp(obj,name,val,config) {
|
||||
return Object.defineProperty(obj,name,{
|
||||
value: val,
|
||||
writable: true,
|
||||
configurable: config !== false
|
||||
});
|
||||
};
|
||||
}
|
||||
catch (err) {
|
||||
builtInProp = function builtInProp(obj,name,val) {
|
||||
obj[name] = val;
|
||||
return obj;
|
||||
};
|
||||
}
|
||||
|
||||
function notifyIsolated(self, cb, chain) {
|
||||
var ret, _then;
|
||||
try {
|
||||
!1 === cb ? chain.reject(self.msg) : (ret = !0 === cb ? self.msg : cb.call(void 0, self.msg), ret === chain.promise ? chain.reject(TypeError("Promise-chain cycle")) : (_then = isThenable(ret)) ? _then.call(ret, chain.resolve, chain.reject) : chain.resolve(ret))
|
||||
} catch (err) {
|
||||
chain.reject(err)
|
||||
}
|
||||
}
|
||||
// Note: using a queue instead of array for efficiency
|
||||
scheduling_queue = (function Queue() {
|
||||
var first, last, item;
|
||||
|
||||
function resolve(msg) {
|
||||
var _then, self = this;
|
||||
if (!self.triggered) {
|
||||
self.triggered = !0, self.def && (self = self.def);
|
||||
try {
|
||||
(_then = isThenable(msg)) ? schedule(function() {
|
||||
var def_wrapper = new MakeDefWrapper(self);
|
||||
try {
|
||||
_then.call(msg, function() {
|
||||
resolve.apply(def_wrapper, arguments)
|
||||
}, function() {
|
||||
reject.apply(def_wrapper, arguments)
|
||||
})
|
||||
} catch (err) {
|
||||
reject.call(def_wrapper, err)
|
||||
}
|
||||
}): (self.msg = msg, self.state = 1, self.chain.length > 0 && schedule(notify, self))
|
||||
} catch (err) {
|
||||
reject.call(new MakeDefWrapper(self), err)
|
||||
}
|
||||
}
|
||||
}
|
||||
function Item(fn,self) {
|
||||
this.fn = fn;
|
||||
this.self = self;
|
||||
this.next = void 0;
|
||||
}
|
||||
|
||||
function reject(msg) {
|
||||
var self = this;
|
||||
self.triggered || (self.triggered = !0, self.def && (self = self.def), self.msg = msg, self.state = 2, self.chain.length > 0 && schedule(notify, self))
|
||||
}
|
||||
return {
|
||||
add: function add(fn,self) {
|
||||
item = new Item(fn,self);
|
||||
if (last) {
|
||||
last.next = item;
|
||||
}
|
||||
else {
|
||||
first = item;
|
||||
}
|
||||
last = item;
|
||||
item = void 0;
|
||||
},
|
||||
drain: function drain() {
|
||||
var f = first;
|
||||
first = last = cycle = void 0;
|
||||
|
||||
function iteratePromises(Constructor, arr, resolver, rejecter) {
|
||||
for (var idx = 0; idx < arr.length; idx++) ! function(idx) {
|
||||
Constructor.resolve(arr[idx]).then(function(msg) {
|
||||
resolver(idx, msg)
|
||||
}, rejecter)
|
||||
}(idx)
|
||||
}
|
||||
while (f) {
|
||||
f.fn.call(f.self);
|
||||
f = f.next;
|
||||
}
|
||||
}
|
||||
};
|
||||
})();
|
||||
|
||||
function MakeDefWrapper(self) {
|
||||
this.def = self, this.triggered = !1
|
||||
}
|
||||
function schedule(fn,self) {
|
||||
scheduling_queue.add(fn,self);
|
||||
if (!cycle) {
|
||||
cycle = timer(scheduling_queue.drain);
|
||||
}
|
||||
}
|
||||
|
||||
function MakeDef(self) {
|
||||
this.promise = self, this.state = 0, this.triggered = !1, this.chain = [], this.msg = void 0
|
||||
}
|
||||
// promise duck typing
|
||||
function isThenable(o) {
|
||||
var _then, o_type = typeof o;
|
||||
|
||||
function Promise(executor) {
|
||||
if ("function" != typeof executor) throw TypeError("Not a function");
|
||||
if (0 !== this.__NPO__) throw TypeError("Not a promise");
|
||||
this.__NPO__ = 1;
|
||||
var def = new MakeDef(this);
|
||||
this.then = function(success, failure) {
|
||||
var o = {
|
||||
success: "function" != typeof success || success,
|
||||
failure: "function" == typeof failure && failure
|
||||
};
|
||||
return o.promise = new this.constructor(function(resolve, reject) {
|
||||
if ("function" != typeof resolve || "function" != typeof reject) throw TypeError("Not a function");
|
||||
o.resolve = resolve, o.reject = reject
|
||||
}), def.chain.push(o), 0 !== def.state && schedule(notify, def), o.promise
|
||||
}, this.catch = function(failure) {
|
||||
return this.then(void 0, failure)
|
||||
};
|
||||
try {
|
||||
executor.call(void 0, function(msg) {
|
||||
resolve.call(def, msg)
|
||||
}, function(msg) {
|
||||
reject.call(def, msg)
|
||||
})
|
||||
} catch (err) {
|
||||
reject.call(def, err)
|
||||
}
|
||||
}
|
||||
var builtInProp, cycle, scheduling_queue, ToString = Object.prototype.toString,
|
||||
timer = "undefined" != typeof setImmediate ? function(fn) {
|
||||
return setImmediate(fn)
|
||||
} : setTimeout;
|
||||
try {
|
||||
Object.defineProperty({}, "x", {}), builtInProp = function(obj, name, val, config) {
|
||||
return Object.defineProperty(obj, name, {
|
||||
value: val,
|
||||
writable: !0,
|
||||
configurable: !1 !== config
|
||||
})
|
||||
}
|
||||
} catch (err) {
|
||||
builtInProp = function(obj, name, val) {
|
||||
return obj[name] = val, obj
|
||||
}
|
||||
}
|
||||
scheduling_queue = function() {
|
||||
function Item(fn, self) {
|
||||
this.fn = fn, this.self = self, this.next = void 0
|
||||
}
|
||||
var first, last, item;
|
||||
return {
|
||||
add: function(fn, self) {
|
||||
item = new Item(fn, self), last ? last.next = item : first = item, last = item, item = void 0
|
||||
},
|
||||
drain: function() {
|
||||
var f = first;
|
||||
for (first = last = cycle = void 0; f;) f.fn.call(f.self), f = f.next
|
||||
}
|
||||
}
|
||||
}();
|
||||
var PromisePrototype = builtInProp({}, "constructor", Promise, !1);
|
||||
return Promise.prototype = PromisePrototype, builtInProp(PromisePrototype, "__NPO__", 0, !1), builtInProp(Promise, "resolve", function(msg) {
|
||||
var Constructor = this;
|
||||
return msg && "object" == typeof msg && 1 === msg.__NPO__ ? msg : new Constructor(function(resolve, reject) {
|
||||
if ("function" != typeof resolve || "function" != typeof reject) throw TypeError("Not a function");
|
||||
resolve(msg)
|
||||
})
|
||||
}), builtInProp(Promise, "reject", function(msg) {
|
||||
return new this(function(resolve, reject) {
|
||||
if ("function" != typeof resolve || "function" != typeof reject) throw TypeError("Not a function");
|
||||
reject(msg)
|
||||
})
|
||||
}), builtInProp(Promise, "all", function(arr) {
|
||||
var Constructor = this;
|
||||
return "[object Array]" != ToString.call(arr) ? Constructor.reject(TypeError("Not an array")) : 0 === arr.length ? Constructor.resolve([]) : new Constructor(function(resolve, reject) {
|
||||
if ("function" != typeof resolve || "function" != typeof reject) throw TypeError("Not a function");
|
||||
var len = arr.length,
|
||||
msgs = Array(len),
|
||||
count = 0;
|
||||
iteratePromises(Constructor, arr, function(idx, msg) {
|
||||
msgs[idx] = msg, ++count === len && resolve(msgs)
|
||||
}, reject)
|
||||
})
|
||||
}), builtInProp(Promise, "race", function(arr) {
|
||||
var Constructor = this;
|
||||
return "[object Array]" != ToString.call(arr) ? Constructor.reject(TypeError("Not an array")) : new Constructor(function(resolve, reject) {
|
||||
if ("function" != typeof resolve || "function" != typeof reject) throw TypeError("Not a function");
|
||||
iteratePromises(Constructor, arr, function(idx, msg) {
|
||||
resolve(msg)
|
||||
}, reject)
|
||||
})
|
||||
}), Promise
|
||||
});
|
||||
if (o != null &&
|
||||
(
|
||||
o_type == "object" || o_type == "function"
|
||||
)
|
||||
) {
|
||||
_then = o.then;
|
||||
}
|
||||
return typeof _then == "function" ? _then : false;
|
||||
}
|
||||
|
||||
function notify() {
|
||||
for (var i=0; i<this.chain.length; i++) {
|
||||
notifyIsolated(
|
||||
this,
|
||||
(this.state === 1) ? this.chain[i].success : this.chain[i].failure,
|
||||
this.chain[i]
|
||||
);
|
||||
}
|
||||
this.chain.length = 0;
|
||||
}
|
||||
|
||||
// NOTE: This is a separate function to isolate
|
||||
// the `try..catch` so that other code can be
|
||||
// optimized better
|
||||
function notifyIsolated(self,cb,chain) {
|
||||
var ret, _then;
|
||||
try {
|
||||
if (cb === false) {
|
||||
chain.reject(self.msg);
|
||||
}
|
||||
else {
|
||||
if (cb === true) {
|
||||
ret = self.msg;
|
||||
}
|
||||
else {
|
||||
ret = cb.call(void 0,self.msg);
|
||||
}
|
||||
|
||||
if (ret === chain.promise) {
|
||||
chain.reject(TypeError("Promise-chain cycle"));
|
||||
}
|
||||
else if (_then = isThenable(ret)) {
|
||||
_then.call(ret,chain.resolve,chain.reject);
|
||||
}
|
||||
else {
|
||||
chain.resolve(ret);
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (err) {
|
||||
chain.reject(err);
|
||||
}
|
||||
}
|
||||
|
||||
function resolve(msg) {
|
||||
var _then, self = this;
|
||||
|
||||
// already triggered?
|
||||
if (self.triggered) { return; }
|
||||
|
||||
self.triggered = true;
|
||||
|
||||
// unwrap
|
||||
if (self.def) {
|
||||
self = self.def;
|
||||
}
|
||||
|
||||
try {
|
||||
if (_then = isThenable(msg)) {
|
||||
schedule(function(){
|
||||
var def_wrapper = new MakeDefWrapper(self);
|
||||
try {
|
||||
_then.call(msg,
|
||||
function $resolve$(){ resolve.apply(def_wrapper,arguments); },
|
||||
function $reject$(){ reject.apply(def_wrapper,arguments); }
|
||||
);
|
||||
}
|
||||
catch (err) {
|
||||
reject.call(def_wrapper,err);
|
||||
}
|
||||
})
|
||||
}
|
||||
else {
|
||||
self.msg = msg;
|
||||
self.state = 1;
|
||||
if (self.chain.length > 0) {
|
||||
schedule(notify,self);
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (err) {
|
||||
reject.call(new MakeDefWrapper(self),err);
|
||||
}
|
||||
}
|
||||
|
||||
function reject(msg) {
|
||||
var self = this;
|
||||
|
||||
// already triggered?
|
||||
if (self.triggered) { return; }
|
||||
|
||||
self.triggered = true;
|
||||
|
||||
// unwrap
|
||||
if (self.def) {
|
||||
self = self.def;
|
||||
}
|
||||
|
||||
self.msg = msg;
|
||||
self.state = 2;
|
||||
if (self.chain.length > 0) {
|
||||
schedule(notify,self);
|
||||
}
|
||||
}
|
||||
|
||||
function iteratePromises(Constructor,arr,resolver,rejecter) {
|
||||
for (var idx=0; idx<arr.length; idx++) {
|
||||
(function IIFE(idx){
|
||||
Constructor.resolve(arr[idx])
|
||||
.then(
|
||||
function $resolver$(msg){
|
||||
resolver(idx,msg);
|
||||
},
|
||||
rejecter
|
||||
);
|
||||
})(idx);
|
||||
}
|
||||
}
|
||||
|
||||
function MakeDefWrapper(self) {
|
||||
this.def = self;
|
||||
this.triggered = false;
|
||||
}
|
||||
|
||||
function MakeDef(self) {
|
||||
this.promise = self;
|
||||
this.state = 0;
|
||||
this.triggered = false;
|
||||
this.chain = [];
|
||||
this.msg = void 0;
|
||||
}
|
||||
|
||||
function Promise(executor) {
|
||||
if (typeof executor != "function") {
|
||||
throw TypeError("Not a function");
|
||||
}
|
||||
|
||||
if (this.__NPO__ !== 0) {
|
||||
throw TypeError("Not a promise");
|
||||
}
|
||||
|
||||
// instance shadowing the inherited "brand"
|
||||
// to signal an already "initialized" promise
|
||||
this.__NPO__ = 1;
|
||||
|
||||
var def = new MakeDef(this);
|
||||
|
||||
this["then"] = function then(success,failure) {
|
||||
var o = {
|
||||
success: typeof success == "function" ? success : true,
|
||||
failure: typeof failure == "function" ? failure : false
|
||||
};
|
||||
// Note: `then(..)` itself can be borrowed to be used against
|
||||
// a different promise constructor for making the chained promise,
|
||||
// by substituting a different `this` binding.
|
||||
o.promise = new this.constructor(function extractChain(resolve,reject) {
|
||||
if (typeof resolve != "function" || typeof reject != "function") {
|
||||
throw TypeError("Not a function");
|
||||
}
|
||||
|
||||
o.resolve = resolve;
|
||||
o.reject = reject;
|
||||
});
|
||||
def.chain.push(o);
|
||||
|
||||
if (def.state !== 0) {
|
||||
schedule(notify,def);
|
||||
}
|
||||
|
||||
return o.promise;
|
||||
};
|
||||
this["catch"] = function $catch$(failure) {
|
||||
return this.then(void 0,failure);
|
||||
};
|
||||
|
||||
try {
|
||||
executor.call(
|
||||
void 0,
|
||||
function publicResolve(msg){
|
||||
resolve.call(def,msg);
|
||||
},
|
||||
function publicReject(msg) {
|
||||
reject.call(def,msg);
|
||||
}
|
||||
);
|
||||
}
|
||||
catch (err) {
|
||||
reject.call(def,err);
|
||||
}
|
||||
}
|
||||
|
||||
var PromisePrototype = builtInProp({},"constructor",Promise,
|
||||
/*configurable=*/false
|
||||
);
|
||||
|
||||
// Note: Android 4 cannot use `Object.defineProperty(..)` here
|
||||
Promise.prototype = PromisePrototype;
|
||||
|
||||
// built-in "brand" to signal an "uninitialized" promise
|
||||
builtInProp(PromisePrototype,"__NPO__",0,
|
||||
/*configurable=*/false
|
||||
);
|
||||
|
||||
builtInProp(Promise,"resolve",function Promise$resolve(msg) {
|
||||
var Constructor = this;
|
||||
|
||||
// spec mandated checks
|
||||
// note: best "isPromise" check that's practical for now
|
||||
if (msg && typeof msg == "object" && msg.__NPO__ === 1) {
|
||||
return msg;
|
||||
}
|
||||
|
||||
return new Constructor(function executor(resolve,reject){
|
||||
if (typeof resolve != "function" || typeof reject != "function") {
|
||||
throw TypeError("Not a function");
|
||||
}
|
||||
|
||||
resolve(msg);
|
||||
});
|
||||
});
|
||||
|
||||
builtInProp(Promise,"reject",function Promise$reject(msg) {
|
||||
return new this(function executor(resolve,reject){
|
||||
if (typeof resolve != "function" || typeof reject != "function") {
|
||||
throw TypeError("Not a function");
|
||||
}
|
||||
|
||||
reject(msg);
|
||||
});
|
||||
});
|
||||
|
||||
builtInProp(Promise,"all",function Promise$all(arr) {
|
||||
var Constructor = this;
|
||||
|
||||
// spec mandated checks
|
||||
if (ToString.call(arr) != "[object Array]") {
|
||||
return Constructor.reject(TypeError("Not an array"));
|
||||
}
|
||||
if (arr.length === 0) {
|
||||
return Constructor.resolve([]);
|
||||
}
|
||||
|
||||
return new Constructor(function executor(resolve,reject){
|
||||
if (typeof resolve != "function" || typeof reject != "function") {
|
||||
throw TypeError("Not a function");
|
||||
}
|
||||
|
||||
var len = arr.length, msgs = Array(len), count = 0;
|
||||
|
||||
iteratePromises(Constructor,arr,function resolver(idx,msg) {
|
||||
msgs[idx] = msg;
|
||||
if (++count === len) {
|
||||
resolve(msgs);
|
||||
}
|
||||
},reject);
|
||||
});
|
||||
});
|
||||
|
||||
builtInProp(Promise,"race",function Promise$race(arr) {
|
||||
var Constructor = this;
|
||||
|
||||
// spec mandated checks
|
||||
if (ToString.call(arr) != "[object Array]") {
|
||||
return Constructor.reject(TypeError("Not an array"));
|
||||
}
|
||||
|
||||
return new Constructor(function executor(resolve,reject){
|
||||
if (typeof resolve != "function" || typeof reject != "function") {
|
||||
throw TypeError("Not a function");
|
||||
}
|
||||
|
||||
iteratePromises(Constructor,arr,function resolver(idx,msg){
|
||||
resolve(msg);
|
||||
},reject);
|
||||
});
|
||||
});
|
||||
|
||||
return Promise;
|
||||
});
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue