ranui
Version:
A framework-agnostic Web Components UI library built on native custom elements, with TypeScript types, light/dark theming, SSR and PWA support.
1,139 lines (1,138 loc) • 848 kB
JavaScript
import { t as Oo } from "./rolldown-runtime-9ZSF5uba.js";
import { _ as Uo, a as xo, g as at, h as Ct, l as Wt, n as Mo, o as Po, p as Xt, r as Qo, y as No } from "./utils-D1iZnChu.js";
import { _ as Bt, i as ie } from "./factory-ZNhcQ4tf.js";
import { a as Ko, t as Yo } from "./ssr-DSGwPtEd.js";
import "./select-DRKYa3W2.js";
var Go = /* @__PURE__ */ Oo(((y, b) => {
(function O(H) {
var _ = this, $ = function() {
"use strict";
function ce(s, n) {
var e = Object.keys(s);
if (Object.getOwnPropertySymbols) {
var t = Object.getOwnPropertySymbols(s);
n && (t = t.filter(function(r) {
return Object.getOwnPropertyDescriptor(s, r).enumerable;
})), e.push.apply(e, t);
}
return e;
}
function q(s) {
for (var n = 1; n < arguments.length; n++) {
var e = arguments[n] != null ? arguments[n] : {};
n % 2 ? ce(Object(e), !0).forEach(function(t) {
Dr(s, t, e[t]);
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(s, Object.getOwnPropertyDescriptors(e)) : ce(Object(e)).forEach(function(t) {
Object.defineProperty(s, t, Object.getOwnPropertyDescriptor(e, t));
});
}
return s;
}
function st(s, n) {
for (var e = 0; e < n.length; e++) {
var t = n[e];
t.enumerable = t.enumerable || !1, t.configurable = !0, "value" in t && (t.writable = !0), Object.defineProperty(s, wt(t.key), t);
}
}
function ae(s, n, e) {
return n && st(s.prototype, n), e && st(s, e), Object.defineProperty(s, "prototype", { writable: !1 }), s;
}
function Dr(s, n, e) {
return (n = wt(n)) in s ? Object.defineProperty(s, n, {
value: e,
enumerable: !0,
configurable: !0,
writable: !0
}) : s[n] = e, s;
}
function oe() {
return oe = Object.assign ? Object.assign.bind() : function(s) {
for (var n = 1; n < arguments.length; n++) {
var e = arguments[n];
for (var t in e) Object.prototype.hasOwnProperty.call(e, t) && (s[t] = e[t]);
}
return s;
}, oe.apply(this, arguments);
}
function fe(s, n) {
s.prototype = Object.create(n.prototype), s.prototype.constructor = s, Te(s, n);
}
function We(s) {
return We = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(n) {
return n.__proto__ || Object.getPrototypeOf(n);
}, We(s);
}
function Te(s, n) {
return Te = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) {
return e.__proto__ = t, e;
}, Te(s, n);
}
function Rr() {
if (typeof Reflect > "u" || !Reflect.construct || Reflect.construct.sham) return !1;
if (typeof Proxy == "function") return !0;
try {
return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {
})), !0;
} catch {
return !1;
}
}
function It(s, n, e) {
return It = Rr() ? Reflect.construct.bind() : function(t, r, i) {
var a = [null];
a.push.apply(a, r);
var o = new (Function.bind.apply(t, a))();
return i && Te(o, i.prototype), o;
}, It.apply(null, arguments);
}
function Xe(s) {
var n = typeof Map == "function" ? /* @__PURE__ */ new Map() : void 0;
return Xe = function(e) {
if (e === null || (t = e, Function.toString.call(t).indexOf("[native code]") === -1)) return e;
var t;
if (typeof e != "function") throw new TypeError("Super expression must either be null or a function");
if (n !== void 0) {
if (n.has(e)) return n.get(e);
n.set(e, r);
}
function r() {
return It(e, arguments, We(this).constructor);
}
return r.prototype = Object.create(e.prototype, { constructor: {
value: r,
enumerable: !1,
writable: !0,
configurable: !0
} }), Te(r, e);
}, Xe(s);
}
function Jt(s, n) {
(n == null || n > s.length) && (n = s.length);
for (var e = 0, t = new Array(n); e < n; e++) t[e] = s[e];
return t;
}
function Ge(s, n) {
var e = typeof Symbol < "u" && s[Symbol.iterator] || s["@@iterator"];
if (e) return (e = e.call(s)).next.bind(e);
if (Array.isArray(s) || (e = (function(r, i) {
if (r) {
if (typeof r == "string") return Jt(r, i);
var a = Object.prototype.toString.call(r).slice(8, -1);
return a === "Object" && r.constructor && (a = r.constructor.name), a === "Map" || a === "Set" ? Array.from(r) : a === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a) ? Jt(r, i) : void 0;
}
})(s)) || n && s && typeof s.length == "number") {
e && (s = e);
var t = 0;
return function() {
return t >= s.length ? { done: !0 } : {
done: !1,
value: s[t++]
};
};
}
throw new TypeError(`Invalid attempt to iterate non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
}
function wt(s) {
var n = (function(e, t) {
if (typeof e != "object" || e === null) return e;
var r = e[Symbol.toPrimitive];
if (r !== void 0) {
var i = r.call(e, t || "default");
if (typeof i != "object") return i;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return (t === "string" ? String : Number)(e);
})(s, "string");
return typeof n == "symbol" ? n : String(n);
}
function qt(s) {
return s && s.__esModule && Object.prototype.hasOwnProperty.call(s, "default") ? s.default : s;
}
var ot = { exports: {} };
(function(s, n) {
var e = /^(?=((?:[a-zA-Z0-9+\-.]+:)?))\1(?=((?:\/\/[^\/?#]*)?))\2(?=((?:(?:[^?#\/]*\/)*[^;?#\/]*)?))\3((?:;[^?#]*)?)(\?[^#]*)?(#[^]*)?$/, t = /^(?=([^\/?#]*))\1([^]*)$/, r = /(?:\/|^)\.(?=\/)/g, i = /(?:\/|^)\.\.\/(?!\.\.\/)[^\/]*(?=\/)/g, a = {
buildAbsoluteURL: function(o, l, u) {
if (u = u || {}, o = o.trim(), !(l = l.trim())) {
if (!u.alwaysNormalize) return o;
var c = a.parseURL(o);
if (!c) throw new Error("Error trying to parse base URL.");
return c.path = a.normalizePath(c.path), a.buildURLFromParts(c);
}
var h = a.parseURL(l);
if (!h) throw new Error("Error trying to parse relative URL.");
if (h.scheme) return u.alwaysNormalize ? (h.path = a.normalizePath(h.path), a.buildURLFromParts(h)) : l;
var d = a.parseURL(o);
if (!d) throw new Error("Error trying to parse base URL.");
if (!d.netLoc && d.path && d.path[0] !== "/") {
var g = t.exec(d.path);
d.netLoc = g[1], d.path = g[2];
}
d.netLoc && !d.path && (d.path = "/");
var A = {
scheme: d.scheme,
netLoc: h.netLoc,
path: null,
params: h.params,
query: h.query,
fragment: h.fragment
};
if (!h.netLoc && (A.netLoc = d.netLoc, h.path[0] !== "/")) if (h.path) {
var p = d.path, E = p.substring(0, p.lastIndexOf("/") + 1) + h.path;
A.path = a.normalizePath(E);
} else A.path = d.path, h.params || (A.params = d.params, h.query || (A.query = d.query));
return A.path === null && (A.path = u.alwaysNormalize ? a.normalizePath(h.path) : h.path), a.buildURLFromParts(A);
},
parseURL: function(o) {
var l = e.exec(o);
return l ? {
scheme: l[1] || "",
netLoc: l[2] || "",
path: l[3] || "",
params: l[4] || "",
query: l[5] || "",
fragment: l[6] || ""
} : null;
},
normalizePath: function(o) {
for (o = o.split("").reverse().join("").replace(r, ""); o.length !== (o = o.replace(i, "")).length; ) ;
return o.split("").reverse().join("");
},
buildURLFromParts: function(o) {
return o.scheme + o.netLoc + o.path + o.params + o.query + o.fragment;
}
};
s.exports = a;
})(ot);
var St = ot.exports, N = Number.isFinite || function(s) {
return typeof s == "number" && isFinite(s);
}, m = (function(s) {
return s.MEDIA_ATTACHING = "hlsMediaAttaching", s.MEDIA_ATTACHED = "hlsMediaAttached", s.MEDIA_DETACHING = "hlsMediaDetaching", s.MEDIA_DETACHED = "hlsMediaDetached", s.BUFFER_RESET = "hlsBufferReset", s.BUFFER_CODECS = "hlsBufferCodecs", s.BUFFER_CREATED = "hlsBufferCreated", s.BUFFER_APPENDING = "hlsBufferAppending", s.BUFFER_APPENDED = "hlsBufferAppended", s.BUFFER_EOS = "hlsBufferEos", s.BUFFER_FLUSHING = "hlsBufferFlushing", s.BUFFER_FLUSHED = "hlsBufferFlushed", s.MANIFEST_LOADING = "hlsManifestLoading", s.MANIFEST_LOADED = "hlsManifestLoaded", s.MANIFEST_PARSED = "hlsManifestParsed", s.LEVEL_SWITCHING = "hlsLevelSwitching", s.LEVEL_SWITCHED = "hlsLevelSwitched", s.LEVEL_LOADING = "hlsLevelLoading", s.LEVEL_LOADED = "hlsLevelLoaded", s.LEVEL_UPDATED = "hlsLevelUpdated", s.LEVEL_PTS_UPDATED = "hlsLevelPtsUpdated", s.LEVELS_UPDATED = "hlsLevelsUpdated", s.AUDIO_TRACKS_UPDATED = "hlsAudioTracksUpdated", s.AUDIO_TRACK_SWITCHING = "hlsAudioTrackSwitching", s.AUDIO_TRACK_SWITCHED = "hlsAudioTrackSwitched", s.AUDIO_TRACK_LOADING = "hlsAudioTrackLoading", s.AUDIO_TRACK_LOADED = "hlsAudioTrackLoaded", s.SUBTITLE_TRACKS_UPDATED = "hlsSubtitleTracksUpdated", s.SUBTITLE_TRACKS_CLEARED = "hlsSubtitleTracksCleared", s.SUBTITLE_TRACK_SWITCH = "hlsSubtitleTrackSwitch", s.SUBTITLE_TRACK_LOADING = "hlsSubtitleTrackLoading", s.SUBTITLE_TRACK_LOADED = "hlsSubtitleTrackLoaded", s.SUBTITLE_FRAG_PROCESSED = "hlsSubtitleFragProcessed", s.CUES_PARSED = "hlsCuesParsed", s.NON_NATIVE_TEXT_TRACKS_FOUND = "hlsNonNativeTextTracksFound", s.INIT_PTS_FOUND = "hlsInitPtsFound", s.FRAG_LOADING = "hlsFragLoading", s.FRAG_LOAD_EMERGENCY_ABORTED = "hlsFragLoadEmergencyAborted", s.FRAG_LOADED = "hlsFragLoaded", s.FRAG_DECRYPTED = "hlsFragDecrypted", s.FRAG_PARSING_INIT_SEGMENT = "hlsFragParsingInitSegment", s.FRAG_PARSING_USERDATA = "hlsFragParsingUserdata", s.FRAG_PARSING_METADATA = "hlsFragParsingMetadata", s.FRAG_PARSED = "hlsFragParsed", s.FRAG_BUFFERED = "hlsFragBuffered", s.FRAG_CHANGED = "hlsFragChanged", s.FPS_DROP = "hlsFpsDrop", s.FPS_DROP_LEVEL_CAPPING = "hlsFpsDropLevelCapping", s.ERROR = "hlsError", s.DESTROYING = "hlsDestroying", s.KEY_LOADING = "hlsKeyLoading", s.KEY_LOADED = "hlsKeyLoaded", s.LIVE_BACK_BUFFER_REACHED = "hlsLiveBackBufferReached", s.BACK_BUFFER_REACHED = "hlsBackBufferReached", s;
})({}), K = (function(s) {
return s.NETWORK_ERROR = "networkError", s.MEDIA_ERROR = "mediaError", s.KEY_SYSTEM_ERROR = "keySystemError", s.MUX_ERROR = "muxError", s.OTHER_ERROR = "otherError", s;
})({}), k = (function(s) {
return s.KEY_SYSTEM_NO_KEYS = "keySystemNoKeys", s.KEY_SYSTEM_NO_ACCESS = "keySystemNoAccess", s.KEY_SYSTEM_NO_SESSION = "keySystemNoSession", s.KEY_SYSTEM_NO_CONFIGURED_LICENSE = "keySystemNoConfiguredLicense", s.KEY_SYSTEM_LICENSE_REQUEST_FAILED = "keySystemLicenseRequestFailed", s.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED = "keySystemServerCertificateRequestFailed", s.KEY_SYSTEM_SERVER_CERTIFICATE_UPDATE_FAILED = "keySystemServerCertificateUpdateFailed", s.KEY_SYSTEM_SESSION_UPDATE_FAILED = "keySystemSessionUpdateFailed", s.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED = "keySystemStatusOutputRestricted", s.KEY_SYSTEM_STATUS_INTERNAL_ERROR = "keySystemStatusInternalError", s.MANIFEST_LOAD_ERROR = "manifestLoadError", s.MANIFEST_LOAD_TIMEOUT = "manifestLoadTimeOut", s.MANIFEST_PARSING_ERROR = "manifestParsingError", s.MANIFEST_INCOMPATIBLE_CODECS_ERROR = "manifestIncompatibleCodecsError", s.LEVEL_EMPTY_ERROR = "levelEmptyError", s.LEVEL_LOAD_ERROR = "levelLoadError", s.LEVEL_LOAD_TIMEOUT = "levelLoadTimeOut", s.LEVEL_PARSING_ERROR = "levelParsingError", s.LEVEL_SWITCH_ERROR = "levelSwitchError", s.AUDIO_TRACK_LOAD_ERROR = "audioTrackLoadError", s.AUDIO_TRACK_LOAD_TIMEOUT = "audioTrackLoadTimeOut", s.SUBTITLE_LOAD_ERROR = "subtitleTrackLoadError", s.SUBTITLE_TRACK_LOAD_TIMEOUT = "subtitleTrackLoadTimeOut", s.FRAG_LOAD_ERROR = "fragLoadError", s.FRAG_LOAD_TIMEOUT = "fragLoadTimeOut", s.FRAG_DECRYPT_ERROR = "fragDecryptError", s.FRAG_PARSING_ERROR = "fragParsingError", s.FRAG_GAP = "fragGap", s.REMUX_ALLOC_ERROR = "remuxAllocError", s.KEY_LOAD_ERROR = "keyLoadError", s.KEY_LOAD_TIMEOUT = "keyLoadTimeOut", s.BUFFER_ADD_CODEC_ERROR = "bufferAddCodecError", s.BUFFER_INCOMPATIBLE_CODECS_ERROR = "bufferIncompatibleCodecsError", s.BUFFER_APPEND_ERROR = "bufferAppendError", s.BUFFER_APPENDING_ERROR = "bufferAppendingError", s.BUFFER_STALLED_ERROR = "bufferStalledError", s.BUFFER_FULL_ERROR = "bufferFullError", s.BUFFER_SEEK_OVER_HOLE = "bufferSeekOverHole", s.BUFFER_NUDGE_ON_STALL = "bufferNudgeOnStall", s.INTERNAL_EXCEPTION = "internalException", s.INTERNAL_ABORTED = "aborted", s.UNKNOWN = "unknown", s;
})({}), xe = function() {
}, Tt = {
trace: xe,
debug: xe,
log: xe,
warn: xe,
info: xe,
error: xe
}, Je = Tt;
function br(s) {
var n = self.console[s];
return n ? n.bind(self.console, "[" + s + "] >") : xe;
}
function zt(s, n) {
if (self.console && s === !0 || typeof s == "object") {
(function(e) {
for (var t = arguments.length, r = new Array(t > 1 ? t - 1 : 0), i = 1; i < t; i++) r[i - 1] = arguments[i];
r.forEach(function(a) {
Je[a] = e[a] ? e[a].bind(e) : br(a);
});
})(s, "debug", "log", "info", "warn", "error");
try {
Je.log('Debug logs enabled for "' + n + '" in hls.js version 1.4.12');
} catch {
Je = Tt;
}
} else Je = Tt;
}
var w = Je, Lr = /^(\d+)x(\d+)$/, Zt = /(.+?)=(".*?"|.*?)(?:,|$)/g, ne = (function() {
function s(e) {
for (var t in typeof e == "string" && (e = s.parseAttrList(e)), e) e.hasOwnProperty(t) && (t.substring(0, 2) === "X-" && (this.clientAttrs = this.clientAttrs || [], this.clientAttrs.push(t)), this[t] = e[t]);
}
var n = s.prototype;
return n.decimalInteger = function(e) {
var t = parseInt(this[e], 10);
return t > Number.MAX_SAFE_INTEGER ? 1 / 0 : t;
}, n.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; i < t.length / 2; i++) r[i] = parseInt(t.slice(2 * i, 2 * i + 2), 16);
return r;
}
return null;
}, n.hexadecimalIntegerAsNumber = function(e) {
var t = parseInt(this[e], 16);
return t > Number.MAX_SAFE_INTEGER ? 1 / 0 : t;
}, n.decimalFloatingPoint = function(e) {
return parseFloat(this[e]);
}, n.optionalFloat = function(e, t) {
var r = this[e];
return r ? parseFloat(r) : t;
}, n.enumeratedString = function(e) {
return this[e];
}, n.bool = function(e) {
return this[e] === "YES";
}, n.decimalResolution = function(e) {
var t = Lr.exec(this[e]);
if (t !== null) return {
width: parseInt(t[1], 10),
height: parseInt(t[2], 10)
};
}, s.parseAttrList = function(e) {
var t, r = {};
for (Zt.lastIndex = 0; (t = Zt.exec(e)) !== null; ) {
var i = t[2];
i.indexOf('"') === 0 && i.lastIndexOf('"') === i.length - 1 && (i = i.slice(1, -1)), r[t[1].trim()] = i;
}
return r;
}, s;
})();
function Fr(s) {
return s === "SCTE35-OUT" || s === "SCTE35-IN";
}
var jt = (function() {
function s(n, e) {
if (this.attr = void 0, this._startDate = void 0, this._endDate = void 0, this._badValueForSameId = void 0, e) {
var t = e.attr;
for (var r in t) if (Object.prototype.hasOwnProperty.call(n, r) && n[r] !== t[r]) {
w.warn('DATERANGE tag attribute: "' + r + '" does not match for tags with ID: "' + n.ID + '"'), this._badValueForSameId = r;
break;
}
n = oe(new ne({}), t, n);
}
if (this.attr = n, this._startDate = new Date(n["START-DATE"]), "END-DATE" in this.attr) {
var i = new Date(this.attr["END-DATE"]);
N(i.getTime()) && (this._endDate = i);
}
}
return ae(s, [
{
key: "id",
get: function() {
return this.attr.ID;
}
},
{
key: "class",
get: function() {
return this.attr.CLASS;
}
},
{
key: "startDate",
get: function() {
return this._startDate;
}
},
{
key: "endDate",
get: function() {
if (this._endDate) return this._endDate;
var n = this.duration;
return n !== null ? new Date(this._startDate.getTime() + 1e3 * n) : null;
}
},
{
key: "duration",
get: function() {
if ("DURATION" in this.attr) {
var n = this.attr.decimalFloatingPoint("DURATION");
if (N(n)) return n;
} else if (this._endDate) return (this._endDate.getTime() - this._startDate.getTime()) / 1e3;
return null;
}
},
{
key: "plannedDuration",
get: function() {
return "PLANNED-DURATION" in this.attr ? this.attr.decimalFloatingPoint("PLANNED-DURATION") : null;
}
},
{
key: "endOnNext",
get: function() {
return this.attr.bool("END-ON-NEXT");
}
},
{
key: "isValid",
get: function() {
return !!this.id && !this._badValueForSameId && N(this.startDate.getTime()) && (this.duration === null || this.duration >= 0) && (!this.endOnNext || !!this.class);
}
}
]), s;
})(), lt = function() {
this.aborted = !1, this.loaded = 0, this.retry = 0, this.total = 0, this.chunkCount = 0, this.bwEstimate = 0, this.loading = {
start: 0,
first: 0,
end: 0
}, this.parsing = {
start: 0,
end: 0
}, this.buffering = {
start: 0,
first: 0,
end: 0
};
}, he = "audio", me = "video", kt = "audiovideo", _t = (function() {
function s(n) {
var e;
this._byteRange = null, this._url = null, this.baseurl = void 0, this.relurl = void 0, this.elementaryStreams = ((e = {})[he] = null, e[me] = null, e[kt] = null, e), this.baseurl = n;
}
return s.prototype.setByteRange = function(n, e) {
var t = n.split("@", 2), r = [];
t.length === 1 ? r[0] = e ? e.byteRangeEndOffset : 0 : r[0] = parseInt(t[1]), r[1] = parseInt(t[0]) + r[0], this._byteRange = r;
}, ae(s, [
{
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: "url",
get: function() {
return !this._url && this.baseurl && this.relurl && (this._url = St.buildAbsoluteURL(this.baseurl, this.relurl, { alwaysNormalize: !0 })), this._url || "";
},
set: function(n) {
this._url = n;
}
}
]), s;
})(), Dt = (function(s) {
function n(t, r) {
var i;
return (i = s.call(this, r) || this)._decryptdata = null, i.rawProgramDateTime = null, i.programDateTime = null, i.tagList = [], i.duration = 0, i.sn = 0, i.levelkeys = void 0, i.type = void 0, i.loader = null, i.keyLoader = null, i.level = -1, i.cc = 0, i.startPTS = void 0, i.endPTS = void 0, i.startDTS = void 0, i.endDTS = void 0, i.start = 0, i.deltaPTS = void 0, i.maxStartPTS = void 0, i.minEndPTS = void 0, i.stats = new lt(), i.urlId = 0, i.data = void 0, i.bitrateTest = !1, i.title = null, i.initSegment = null, i.endList = void 0, i.gap = void 0, i.type = t, i;
}
fe(n, s);
var e = n.prototype;
return e.setKeyFormat = function(t) {
if (this.levelkeys) {
var r = this.levelkeys[t];
r && !this._decryptdata && (this._decryptdata = r.getDecryptData(this.sn));
}
}, e.abortRequests = function() {
var t, r;
(t = this.loader) == null || t.abort(), (r = this.keyLoader) == null || r.abort();
}, e.setElementaryStreamInfo = function(t, r, i, a, o, l) {
l === void 0 && (l = !1);
var u = this.elementaryStreams, c = u[t];
c ? (c.startPTS = Math.min(c.startPTS, r), c.endPTS = Math.max(c.endPTS, i), c.startDTS = Math.min(c.startDTS, a), c.endDTS = Math.max(c.endDTS, o)) : u[t] = {
startPTS: r,
endPTS: i,
startDTS: a,
endDTS: o,
partial: l
};
}, e.clearElementaryStreamInfo = function() {
var t = this.elementaryStreams;
t[he] = null, t[me] = null, t[kt] = null;
}, ae(n, [
{
key: "decryptdata",
get: function() {
if (!this.levelkeys && !this._decryptdata) return null;
if (!this._decryptdata && this.levelkeys && !this.levelkeys.NONE) {
var t = this.levelkeys.identity;
if (t) this._decryptdata = t.getDecryptData(this.sn);
else {
var r = Object.keys(this.levelkeys);
if (r.length === 1) return this._decryptdata = this.levelkeys[r[0]].getDecryptData(this.sn);
}
}
return this._decryptdata;
}
},
{
key: "end",
get: function() {
return this.start + this.duration;
}
},
{
key: "endProgramDateTime",
get: function() {
if (this.programDateTime === null || !N(this.programDateTime)) return null;
var t = N(this.duration) ? this.duration : 0;
return this.programDateTime + 1e3 * t;
}
},
{
key: "encrypted",
get: function() {
var t;
if ((t = this._decryptdata) != null && t.encrypted) return !0;
if (this.levelkeys) {
var r = Object.keys(this.levelkeys), i = r.length;
if (i > 1 || i === 1 && this.levelkeys[r[0]].encrypted) return !0;
}
return !1;
}
}
]), n;
})(_t), Or = (function(s) {
function n(e, t, r, i, a) {
var o;
(o = s.call(this, r) || this).fragOffset = 0, o.duration = 0, o.gap = !1, o.independent = !1, o.relurl = void 0, o.fragment = void 0, o.index = void 0, o.stats = new lt(), o.duration = e.decimalFloatingPoint("DURATION"), o.gap = e.bool("GAP"), o.independent = e.bool("INDEPENDENT"), o.relurl = e.enumeratedString("URI"), o.fragment = t, o.index = i;
var l = e.enumeratedString("BYTERANGE");
return l && o.setByteRange(l, a), a && (o.fragOffset = a.fragOffset + a.duration), o;
}
return fe(n, s), ae(n, [
{
key: "start",
get: function() {
return this.fragment.start + this.fragOffset;
}
},
{
key: "end",
get: function() {
return this.start + this.duration;
}
},
{
key: "loaded",
get: function() {
var e = this.elementaryStreams;
return !!(e.audio || e.video || e.audiovideo);
}
}
]), n;
})(_t), Ur = (function() {
function s(n) {
this.PTSKnown = !1, this.alignedSliding = !1, this.averagetargetduration = void 0, this.endCC = 0, this.endSN = 0, this.fragments = void 0, this.fragmentHint = void 0, this.partList = null, this.dateRanges = void 0, this.live = !0, this.ageHeader = 0, this.advancedDateTime = void 0, this.updated = !0, this.advanced = !0, this.availabilityDelay = void 0, this.misses = 0, this.startCC = 0, this.startSN = 0, this.startTimeOffset = null, this.targetduration = 0, this.totalduration = 0, this.type = null, this.url = void 0, this.m3u8 = "", this.version = null, this.canBlockReload = !1, this.canSkipUntil = 0, this.canSkipDateRanges = !1, this.skippedSegments = 0, this.recentlyRemovedDateranges = void 0, this.partHoldBack = 0, this.holdBack = 0, this.partTarget = 0, this.preloadHint = void 0, this.renditionReports = void 0, this.tuneInGoal = 0, this.deltaUpdateFailed = void 0, this.driftStartTime = 0, this.driftEndTime = 0, this.driftStart = 0, this.driftEnd = 0, this.encryptedFragments = void 0, this.playlistParsingError = null, this.variableList = null, this.hasVariableRefs = !1, this.fragments = [], this.encryptedFragments = [], this.dateRanges = {}, this.url = n;
}
return s.prototype.reloaded = function(n) {
if (!n) return this.advanced = !0, void (this.updated = !0);
var e = this.lastPartSn - n.lastPartSn, t = this.lastPartIndex - n.lastPartIndex;
this.updated = this.endSN !== n.endSN || !!t || !!e || !this.live, this.advanced = this.endSN > n.endSN || e > 0 || e === 0 && t > 0, this.updated || this.advanced ? this.misses = Math.floor(0.6 * n.misses) : this.misses = n.misses + 1, this.availabilityDelay = n.availabilityDelay;
}, ae(s, [
{
key: "hasProgramDateTime",
get: function() {
return !!this.fragments.length && N(this.fragments[this.fragments.length - 1].programDateTime);
}
},
{
key: "levelTargetDuration",
get: function() {
return this.averagetargetduration || this.targetduration || 10;
}
},
{
key: "drift",
get: function() {
var n = this.driftEndTime - this.driftStartTime;
return n > 0 ? 1e3 * (this.driftEnd - this.driftStart) / n : 1;
}
},
{
key: "edge",
get: function() {
return this.partEnd || this.fragmentEnd;
}
},
{
key: "partEnd",
get: function() {
var n;
return (n = this.partList) != null && n.length ? this.partList[this.partList.length - 1].end : this.fragmentEnd;
}
},
{
key: "fragmentEnd",
get: function() {
var n;
return (n = this.fragments) != null && n.length ? this.fragments[this.fragments.length - 1].end : 0;
}
},
{
key: "age",
get: function() {
return this.advancedDateTime ? Math.max(Date.now() - this.advancedDateTime, 0) / 1e3 : 0;
}
},
{
key: "lastPartIndex",
get: function() {
var n;
return (n = this.partList) != null && n.length ? this.partList[this.partList.length - 1].index : -1;
}
},
{
key: "lastPartSn",
get: function() {
var n;
return (n = this.partList) != null && n.length ? this.partList[this.partList.length - 1].fragment.sn : this.endSN;
}
}
]), s;
})();
function Rt(s) {
return Uint8Array.from(atob(s), function(n) {
return n.charCodeAt(0);
});
}
function xr(s) {
var n, e, t = s.split(":"), r = null;
if (t[0] === "data" && t.length === 2) {
var i = t[1].split(";"), a = i[i.length - 1].split(",");
if (a.length === 2) {
var o = a[0] === "base64", l = a[1];
o ? (i.splice(-1, 1), r = Rt(l)) : (n = $t(l).subarray(0, 16), (e = /* @__PURE__ */ new Uint8Array(16)).set(n, 16 - n.length), r = e);
}
}
return r;
}
function $t(s) {
return Uint8Array.from(unescape(encodeURIComponent(s)), function(n) {
return n.charCodeAt(0);
});
}
var re = {
CLEARKEY: "org.w3.clearkey",
FAIRPLAY: "com.apple.fps",
PLAYREADY: "com.microsoft.playready",
WIDEVINE: "com.widevine.alpha"
}, bt = "org.w3.clearkey", Lt = "com.apple.streamingkeydelivery", qe = "com.microsoft.playready", er = "urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed";
function Mi(s) {
switch (s) {
case Lt:
return re.FAIRPLAY;
case qe:
return re.PLAYREADY;
case er:
return re.WIDEVINE;
case bt:
return re.CLEARKEY;
}
}
var Pi = "edef8ba979d64acea3c827dcd51d21ed";
function Qi(s) {
switch (s) {
case re.FAIRPLAY:
return Lt;
case re.PLAYREADY:
return qe;
case re.WIDEVINE:
return er;
case re.CLEARKEY:
return bt;
}
}
function Mr(s) {
var n = s.drmSystems, e = s.widevineLicenseUrl, t = n ? [
re.FAIRPLAY,
re.WIDEVINE,
re.PLAYREADY,
re.CLEARKEY
].filter(function(r) {
return !!n[r];
}) : [];
return !t[re.WIDEVINE] && e && t.push(re.WIDEVINE), t;
}
var Ni = typeof self < "u" && self.navigator && self.navigator.requestMediaKeySystemAccess ? self.navigator.requestMediaKeySystemAccess.bind(self.navigator) : null;
function ze(s, n, e) {
return Uint8Array.prototype.slice ? s.slice(n, e) : new Uint8Array(Array.prototype.slice.call(s, n, e));
}
var Pr, Qr = function(s, n) {
return n + 10 <= s.length && s[n] === 73 && s[n + 1] === 68 && s[n + 2] === 51 && s[n + 3] < 255 && s[n + 4] < 255 && s[n + 6] < 128 && s[n + 7] < 128 && s[n + 8] < 128 && s[n + 9] < 128;
}, Ki = function(s, n) {
return n + 10 <= s.length && s[n] === 51 && s[n + 1] === 68 && s[n + 2] === 73 && s[n + 3] < 255 && s[n + 4] < 255 && s[n + 6] < 128 && s[n + 7] < 128 && s[n + 8] < 128 && s[n + 9] < 128;
}, tr = function(s, n) {
for (var e = n, t = 0; Qr(s, n); ) t += 10, t += rr(s, n + 6), Ki(s, n + 10) && (t += 10), n += t;
if (t > 0) return s.subarray(e, e + t);
}, rr = function(s, n) {
var e = 0;
return e = (127 & s[n]) << 21, e |= (127 & s[n + 1]) << 14, e |= (127 & s[n + 2]) << 7, e |= 127 & s[n + 3];
}, Oa = function(s, n) {
return Qr(s, n) && rr(s, n + 6) + 10 <= s.length - n;
}, Yi = function(s) {
return s && s.key === "PRIV" && s.info === "com.apple.streaming.transportStreamTimestamp";
}, Ua = function(s) {
var n = String.fromCharCode(s[0], s[1], s[2], s[3]), e = rr(s, 4);
return {
type: n,
size: e,
data: s.subarray(10, 10 + e)
};
}, Gi = function(s) {
for (var n = 0, e = []; Qr(s, n); ) {
for (var t = rr(s, n + 6), r = (n += 10) + t; n + 8 < r; ) {
var i = Ua(s.subarray(n)), a = xa(i);
a && e.push(a), n += i.size + 10;
}
Ki(s, n) && (n += 10);
}
return e;
}, xa = function(s) {
return s.type === "PRIV" ? Ma(s) : s.type[0] === "W" ? Qa(s) : Pa(s);
}, Ma = function(s) {
if (!(s.size < 2)) {
var n = be(s.data, !0), e = new Uint8Array(s.data.subarray(n.length + 1));
return {
key: s.type,
info: n,
data: e.buffer
};
}
}, Pa = function(s) {
if (!(s.size < 2)) {
if (s.type === "TXXX") {
var n = 1, e = be(s.data.subarray(n), !0);
n += e.length + 1;
var t = be(s.data.subarray(n));
return {
key: s.type,
info: e,
data: t
};
}
var r = be(s.data.subarray(1));
return {
key: s.type,
data: r
};
}
}, Qa = function(s) {
if (s.type === "WXXX") {
if (s.size < 2) return;
var n = 1, e = be(s.data.subarray(n), !0);
n += e.length + 1;
var t = be(s.data.subarray(n));
return {
key: s.type,
info: e,
data: t
};
}
var r = be(s.data);
return {
key: s.type,
data: r
};
}, Na = function(s) {
if (s.data.byteLength === 8) {
var n = new Uint8Array(s.data), e = 1 & n[3], t = (n[4] << 23) + (n[5] << 15) + (n[6] << 7) + n[7];
return t /= 45, e && (t += 4772185884e-2), Math.round(t);
}
}, be = function(s, n) {
n === void 0 && (n = !1);
var e = Ka();
if (e) {
var t = e.decode(s);
if (n) {
var r = t.indexOf("\0");
return r !== -1 ? t.substring(0, r) : t;
}
return t.replace(/\0/g, "");
}
for (var i, a, o, l = s.length, u = "", c = 0; c < l; ) {
if ((i = s[c++]) === 0 && n) return u;
if (i !== 0 && i !== 3) switch (i >> 4) {
case 0:
case 1:
case 2:
case 3:
case 4:
case 5:
case 6:
case 7:
u += String.fromCharCode(i);
break;
case 12:
case 13:
a = s[c++], u += String.fromCharCode((31 & i) << 6 | 63 & a);
break;
case 14:
a = s[c++], o = s[c++], u += String.fromCharCode((15 & i) << 12 | (63 & a) << 6 | (63 & o) << 0);
}
}
return u;
};
function Ka() {
return Pr || self.TextDecoder === void 0 || (Pr = new self.TextDecoder("utf-8")), Pr;
}
var Le = function(s) {
for (var n = "", e = 0; e < s.length; e++) {
var t = s[e].toString(16);
t.length < 2 && (t = "0" + t), n += t;
}
return n;
}, ir = Math.pow(2, 32) - 1, Ya = [].push, Hi = {
video: 1,
audio: 2,
id3: 3,
text: 4
};
function de(s) {
return String.fromCharCode.apply(null, s);
}
function Vi(s, n) {
var e = s[n] << 8 | s[n + 1];
return e < 0 ? 65536 + e : e;
}
function V(s, n) {
var e = Wi(s, n);
return e < 0 ? 4294967296 + e : e;
}
function Wi(s, n) {
return s[n] << 24 | s[n + 1] << 16 | s[n + 2] << 8 | s[n + 3];
}
function Nr(s, n, e) {
s[n] = e >> 24, s[n + 1] = e >> 16 & 255, s[n + 2] = e >> 8 & 255, s[n + 3] = 255 & e;
}
function z(s, n) {
var e = [];
if (!n.length) return e;
for (var t = s.byteLength, r = 0; r < t; ) {
var i = V(s, r), a = i > 1 ? r + i : t;
if (de(s.subarray(r + 4, r + 8)) === n[0]) if (n.length === 1) e.push(s.subarray(r + 8, a));
else {
var o = z(s.subarray(r + 8, a), n.slice(1));
o.length && Ya.apply(e, o);
}
r = a;
}
return e;
}
function Ga(s) {
var n = [], e = s[0], t = 8, r = V(s, t);
t += 4, t += e === 0 ? 8 : 16, t += 2;
var i = s.length + 0, a = Vi(s, t);
t += 2;
for (var o = 0; o < a; o++) {
var l = t, u = V(s, l);
l += 4;
var c = 2147483647 & u;
if ((2147483648 & u) >>> 31 == 1) return w.warn("SIDX has hierarchical references (not supported)"), null;
var h = V(s, l);
l += 4, n.push({
referenceSize: c,
subsegmentDuration: h,
info: {
duration: h / r,
start: i,
end: i + c - 1
}
}), i += c, t = l += 4;
}
return {
earliestPresentationTime: 0,
timescale: r,
version: e,
referencesCount: a,
references: n
};
}
function Xi(s) {
for (var n = [], e = z(s, ["moov", "trak"]), t = 0; t < e.length; t++) {
var r = e[t], i = z(r, ["tkhd"])[0];
if (i) {
var a = i[0], o = a === 0 ? 12 : 20, l = V(i, o), u = z(r, ["mdia", "mdhd"])[0];
if (u) {
var c = V(u, o = (a = u[0]) === 0 ? 12 : 20), h = z(r, ["mdia", "hdlr"])[0];
if (h) {
var d = de(h.subarray(8, 12)), g = {
soun: he,
vide: me
}[d];
if (g) {
var A = z(r, [
"mdia",
"minf",
"stbl",
"stsd"
])[0], p = void 0;
A && (p = de(A.subarray(12, 16))), n[l] = {
timescale: c,
type: g
}, n[g] = {
timescale: c,
id: l,
codec: p
};
}
}
}
}
}
return z(s, [
"moov",
"mvex",
"trex"
]).forEach(function(E) {
var f = n[V(E, 4)];
f && (f.default = {
duration: V(E, 12),
flags: V(E, 20)
});
}), n;
}
function Ji(s) {
var n = z(s, ["schm"])[0];
if (n) {
var e = de(n.subarray(4, 8));
if (e === "cbcs" || e === "cenc") return z(s, ["schi", "tenc"])[0];
}
return w.error("[eme] missing 'schm' box"), null;
}
function Ha(s) {
var n = V(s, 0), e = 8;
1 & n && (e += 4), 4 & n && (e += 4);
for (var t = 0, r = V(s, 4), i = 0; i < r; i++) 256 & n && (t += V(s, e), e += 4), 512 & n && (e += 4), 1024 & n && (e += 4), 2048 & n && (e += 4);
return t;
}
function Ze(s, n) {
var e = new Uint8Array(s.length + n.length);
return e.set(s), e.set(n, s.length), e;
}
function qi(s, n) {
var e = [], t = n.samples, r = n.timescale, i = n.id, a = !1;
return z(t, ["moof"]).map(function(o) {
var l = o.byteOffset - 8;
z(o, ["traf"]).map(function(u) {
var c = z(u, ["tfdt"]).map(function(h) {
var d = h[0], g = V(h, 4);
return d === 1 && (g *= Math.pow(2, 32), g += V(h, 8)), g / r;
})[0];
return c !== void 0 && (s = c), z(u, ["tfhd"]).map(function(h) {
var d = V(h, 4), g = 16777215 & V(h, 0), A = 0, p = (16 & g) != 0, E = 0, f = (32 & g) != 0, v = 8;
d === i && ((1 & g) != 0 && (v += 8), (2 & g) != 0 && (v += 4), (8 & g) != 0 && (A = V(h, v), v += 4), p && (E = V(h, v), v += 4), f && (v += 4), n.type === "video" && (a = (function(B) {
if (!B) return !1;
var C = B.indexOf("."), I = C < 0 ? B : B.substring(0, C);
return I === "hvc1" || I === "hev1" || I === "dvh1" || I === "dvhe";
})(n.codec)), z(u, ["trun"]).map(function(B) {
var C = B[0], I = 16777215 & V(B, 0), S = (1 & I) != 0, T = 0, L = (4 & I) != 0, D = (256 & I) != 0, R = 0, U = (512 & I) != 0, F = 0, M = (1024 & I) != 0, Y = (2048 & I) != 0, P = 0, Q = V(B, 4), G = 8;
S && (T = V(B, G), G += 4), L && (G += 4);
for (var x = T + l, W = 0; W < Q; W++) {
if (D ? (R = V(B, G), G += 4) : R = A, U ? (F = V(B, G), G += 4) : F = E, M && (G += 4), Y && (P = C === 0 ? V(B, G) : Wi(B, G), G += 4), n.type === me) for (var X = 0; X < F; ) {
var Z = V(t, x);
Va(a, t[x += 4]) && zi(t.subarray(x, x + Z), a ? 2 : 1, s + P / r, e), x += Z, X += Z + 4;
}
s += R / r;
}
}));
});
});
}), e;
}
function Va(s, n) {
if (s) {
var e = n >> 1 & 63;
return e === 39 || e === 40;
}
return (31 & n) == 6;
}
function zi(s, n, e, t) {
var r = Zi(s), i = 0;
i += n;
for (var a = 0, o = 0, l = !1, u = 0; i < r.length; ) {
a = 0;
do {
if (i >= r.length) break;
a += u = r[i++];
} while (u === 255);
o = 0;
do {
if (i >= r.length) break;
o += u = r[i++];
} while (u === 255);
var c = r.length - i;
if (!l && a === 4 && i < r.length) {
if (l = !0, r[i++] === 181) {
var h = Vi(r, i);
if (i += 2, h === 49) {
var d = V(r, i);
if (i += 4, d === 1195456820) {
var g = r[i++];
if (g === 3) {
var A = r[i++], p = 64 & A, E = p ? 2 + 3 * (31 & A) : 0, f = new Uint8Array(E);
if (p) {
f[0] = A;
for (var v = 1; v < E; v++) f[v] = r[i++];
}
t.push({
type: g,
payloadType: a,
pts: e,
bytes: f
});
}
}
}
}
} else if (a === 5 && o < c) {
if (l = !0, o > 16) {
for (var B = [], C = 0; C < 16; C++) {
var I = r[i++].toString(16);
B.push(I.length == 1 ? "0" + I : I), C !== 3 && C !== 5 && C !== 7 && C !== 9 || B.push("-");
}
for (var S = o - 16, T = new Uint8Array(S), L = 0; L < S; L++) T[L] = r[i++];
t.push({
payloadType: a,
pts: e,
uuid: B.join(""),
userData: be(T),
userDataBytes: T
});
}
} else if (o < c) i += o;
else if (o > c) break;
}
}
function Zi(s) {
for (var n = s.byteLength, e = [], t = 1; t < n - 2; ) s[t] === 0 && s[t + 1] === 0 && s[t + 2] === 3 ? (e.push(t + 2), t += 2) : t++;
if (e.length === 0) return s;
var r = n - e.length, i = new Uint8Array(r), a = 0;
for (t = 0; t < r; a++, t++) a === e[0] && (a++, e.shift()), i[t] = s[a];
return i;
}
function Wa(s, n, e) {
if (s.byteLength !== 16) throw new RangeError("Invalid system id");
var t, r, i;
if (n) {
t = 1, r = new Uint8Array(16 * n.length);
for (var a = 0; a < n.length; a++) {
var o = n[a];
if (o.byteLength !== 16) throw new RangeError("Invalid key");
r.set(o, 16 * a);
}
} else t = 0, r = /* @__PURE__ */ new Uint8Array();
t > 0 ? (i = /* @__PURE__ */ new Uint8Array(4), n.length > 0 && new DataView(i.buffer).setUint32(0, n.length, !1)) : i = /* @__PURE__ */ new Uint8Array();
var l = /* @__PURE__ */ new Uint8Array(4);
return e && e.byteLength > 0 && new DataView(l.buffer).setUint32(0, e.byteLength, !1), (function(u) {
for (var c = arguments.length, h = new Array(c > 1 ? c - 1 : 0), d = 1; d < c; d++) h[d - 1] = arguments[d];
for (var g = h.length, A = 8, p = g; p--; ) A += h[p].byteLength;
var E = new Uint8Array(A);
for (E[0] = A >> 24 & 255, E[1] = A >> 16 & 255, E[2] = A >> 8 & 255, E[3] = 255 & A, E.set(u, 4), p = 0, A = 8; p < g; p++) E.set(h[p], A), A += h[p].byteLength;
return E;
})([
112,
115,
115,
104
], new Uint8Array([
t,
0,
0,
0
]), s, i, r, l, e || /* @__PURE__ */ new Uint8Array());
}
var nr = {}, Kr = (function() {
function s(e, t, r, i, a) {
i === void 0 && (i = [1]), a === void 0 && (a = null), this.uri = void 0, this.method = void 0, this.keyFormat = void 0, this.keyFormatVersions = void 0, this.encrypted = void 0, this.isCommonEncryption = void 0, this.iv = null, this.key = null, this.keyId = null, this.pssh = null, this.method = e, this.uri = t, this.keyFormat = r, this.keyFormatVersions = i, this.iv = a, this.encrypted = !!e && e !== "NONE", this.isCommonEncryption = this.encrypted && e !== "AES-128";
}
s.clearKeyUriToKeyIdMap = function() {
nr = {};
};
var n = s.prototype;
return n.isSupported = function() {
if (this.method) {
if (this.method === "AES-128" || this.method === "NONE") return !0;
if (this.keyFormat === "identity") return this.method === "SAMPLE-AES";
switch (this.keyFormat) {
case Lt:
case er:
case qe:
case bt:
return [
"ISO-23001-7",
"SAMPLE-AES",
"SAMPLE-AES-CENC",
"SAMPLE-AES-CTR"
].indexOf(this.method) !== -1;
}
}
return !1;
}, n.getDecryptData = function(e) {
if (!this.encrypted || !this.uri) return null;
if (this.method === "AES-128" && this.uri && !this.iv) {
typeof e != "number" && (this.method !== "AES-128" || this.iv || w.warn('missing IV for initialization segment with method="' + this.method + '" - compliance issue'), e = 0);
var t = (function(E) {
for (var f = /* @__PURE__ */ new Uint8Array(16), v = 12; v < 16; v++) f[v] = E >> 8 * (15 - v) & 255;
return f;
})(e);
return new s(this.method, this.uri, "identity", this.keyFormatVersions, t);
}
var r = xr(this.uri);
if (r) switch (this.keyFormat) {
case er:
this.pssh = r, r.length >= 22 && (this.keyId = r.subarray(r.length - 22, r.length - 6));
break;
case qe:
var i = new Uint8Array([
154,
4,
240,
121,
152,
64,
66,
134,
171,
146,
230,
91,
224,
136,
95,
149
]);
this.pssh = Wa(i, null, r);
var a = new Uint16Array(r.buffer, r.byteOffset, r.byteLength / 2), o = String.fromCharCode.apply(null, Array.from(a)), l = o.substring(o.indexOf("<"), o.length), u = new DOMParser().parseFromString(l, "text/xml").getElementsByTagName("KID")[0];
if (u) {
var c = u.childNodes[0] ? u.childNodes[0].nodeValue : u.getAttribute("VALUE");
if (c) {
var h = Rt(c).subarray(0, 16);
(function(E) {
var f = function(v, B, C) {
var I = v[B];
v[B] = v[C], v[C] = I;
};
f(E, 0, 3), f(E, 1, 2), f(E, 4, 5), f(E, 6, 7);
})(h), this.keyId = h;
}
}
break;
default:
var d = r.subarray(0, 16);
if (d.length !== 16) {
var g = /* @__PURE__ */ new Uint8Array(16);
g.set(d, 16 - d.length), d = g;
}
this.keyId = d;
}
if (!this.keyId || this.keyId.byteLength !== 16) {
var A = nr[this.uri];
if (!A) {
var p = Object.keys(nr).length % Number.MAX_SAFE_INTEGER;
A = /* @__PURE__ */ new Uint8Array(16), new DataView(A.buffer, 12, 4).setUint32(0, p), nr[this.uri] = A;
}
this.keyId = A;
}
return this;
}, s;
})(), ji = /\{\$([a-zA-Z0-9-_]+)\}/g;
function _i(s) {
return ji.test(s);
}
function ve(s, n, e) {
if (s.variableList !== null || s.hasVariableRefs) for (var t = e.length; t--; ) {
var r = e[t], i = n[r];
i && (n[r] = Yr(s, i));
}
}
function Yr(s, n) {
if (s.variableList !== null || s.hasVariableRefs) {
var e = s.variableList;
return n.replace(ji, function(t) {
var r = t.substring(2, t.length - 1), i = e?.[r];