Joys

自用阿里云依赖库

此脚本不应直接安装,它是一个供其他脚本使用的外部库。如果您需要使用该库,请在脚本元属性加入:// @require https://update.cn-greasyfork.org/scripts/477467/1265010/Joys.js

  1. "undefined" != typeof window && (window.Joysound = window.Joysound || function() {
  2. return function(t) {
  3. var e = {};
  4. function n(i) {
  5. if (e[i]) return e[i].exports;
  6. var r = e[i] = {
  7. i: i,
  8. l: !1,
  9. exports: {}
  10. };
  11. return t[i].call(r.exports, r, r.exports, n), r.l = !0, r.exports
  12. }
  13. return n.m = t, n.c = e, n.d = function(t, e, i) {
  14. n.o(t, e) || Object.defineProperty(t, e, {
  15. enumerable: !0,
  16. get: i
  17. })
  18. }, n.r = function(t) {
  19. "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(t, Symbol.toStringTag, {
  20. value: "Module"
  21. }), Object.defineProperty(t, "__esModule", {
  22. value: !0
  23. })
  24. }, n.t = function(t, e) {
  25. if (1 & e && (t = n(t)), 8 & e) return t;
  26. if (4 & e && "object" == typeof t && t && t.__esModule) return t;
  27. var i = Object.create(null);
  28. if (n.r(i), Object.defineProperty(i, "default", {
  29. enumerable: !0,
  30. value: t
  31. }), 2 & e && "string" != typeof t)
  32. for (var r in t) n.d(i, r, function(e) {
  33. return t[e]
  34. }.bind(null, r));
  35. return i
  36. }, n.n = function(t) {
  37. var e = t && t.__esModule ? function() {
  38. return t.default
  39. } : function() {
  40. return t
  41. };
  42. return n.d(e, "a", e), e
  43. }, n.o = function(t, e) {
  44. return Object.prototype.hasOwnProperty.call(t, e)
  45. }, n.p = "", n(n.s = "./src/index.ts")
  46. }({
  47. "./node_modules/@babel/runtime/helpers/construct.js": function(t, e, n) {
  48. var i = n("./node_modules/@babel/runtime/helpers/setPrototypeOf.js"),
  49. r = n("./node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js");
  50. function a(e, n, o) {
  51. return r() ? (t.exports = a = Reflect.construct, t.exports.default = t.exports, t.exports.__esModule = !0) : (t.exports = a = function(t, e, n) {
  52. var r = [null];
  53. r.push.apply(r, e);
  54. var a = new(Function.bind.apply(t, r));
  55. return n && i(a, n.prototype), a
  56. }, t.exports.default = t.exports, t.exports.__esModule = !0), a.apply(null, arguments)
  57. }
  58. t.exports = a, t.exports.default = t.exports, t.exports.__esModule = !0
  59. },
  60. "./node_modules/@babel/runtime/helpers/createClass.js": function(t, e) {
  61. function n(t, e) {
  62. for (var n = 0; n < e.length; n++) {
  63. var i = e[n];
  64. i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), Object.defineProperty(t, i.key, i)
  65. }
  66. }
  67. t.exports = function(t, e, i) {
  68. return e && n(t.prototype, e), i && n(t, i), t
  69. }, t.exports.default = t.exports, t.exports.__esModule = !0
  70. },
  71. "./node_modules/@babel/runtime/helpers/extends.js": function(t, e) {
  72. function n() {
  73. return t.exports = n = Object.assign || function(t) {
  74. for (var e = 1; e < arguments.length; e++) {
  75. var n = arguments[e];
  76. for (var i in n) Object.prototype.hasOwnProperty.call(n, i) && (t[i] = n[i])
  77. }
  78. return t
  79. }, t.exports.default = t.exports, t.exports.__esModule = !0, n.apply(this, arguments)
  80. }
  81. t.exports = n, t.exports.default = t.exports, t.exports.__esModule = !0
  82. },
  83. "./node_modules/@babel/runtime/helpers/getPrototypeOf.js": function(t, e) {
  84. function n(e) {
  85. return t.exports = n = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) {
  86. return t.__proto__ || Object.getPrototypeOf(t)
  87. }, t.exports.default = t.exports, t.exports.__esModule = !0, n(e)
  88. }
  89. t.exports = n, t.exports.default = t.exports, t.exports.__esModule = !0
  90. },
  91. "./node_modules/@babel/runtime/helpers/inheritsLoose.js": function(t, e, n) {
  92. var i = n("./node_modules/@babel/runtime/helpers/setPrototypeOf.js");
  93. t.exports = function(t, e) {
  94. t.prototype = Object.create(e.prototype), t.prototype.constructor = t, i(t, e)
  95. }, t.exports.default = t.exports, t.exports.__esModule = !0
  96. },
  97. "./node_modules/@babel/runtime/helpers/isNativeFunction.js": function(t, e) {
  98. t.exports = function(t) {
  99. return -1 !== Function.toString.call(t).indexOf("[native code]")
  100. }, t.exports.default = t.exports, t.exports.__esModule = !0
  101. },
  102. "./node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js": function(t, e) {
  103. t.exports = function() {
  104. if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
  105. if (Reflect.construct.sham) return !1;
  106. if ("function" == typeof Proxy) return !0;
  107. try {
  108. return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], (function() {}))), !0
  109. } catch (t) {
  110. return !1
  111. }
  112. }, t.exports.default = t.exports, t.exports.__esModule = !0
  113. },
  114. "./node_modules/@babel/runtime/helpers/setPrototypeOf.js": function(t, e) {
  115. function n(e, i) {
  116. return t.exports = n = Object.setPrototypeOf || function(t, e) {
  117. return t.__proto__ = e, t
  118. }, t.exports.default = t.exports, t.exports.__esModule = !0, n(e, i)
  119. }
  120. t.exports = n, t.exports.default = t.exports, t.exports.__esModule = !0
  121. },
  122. "./node_modules/@babel/runtime/helpers/wrapNativeSuper.js": function(t, e, n) {
  123. var i = n("./node_modules/@babel/runtime/helpers/getPrototypeOf.js"),
  124. r = n("./node_modules/@babel/runtime/helpers/setPrototypeOf.js"),
  125. a = n("./node_modules/@babel/runtime/helpers/isNativeFunction.js"),
  126. o = n("./node_modules/@babel/runtime/helpers/construct.js");
  127. function s(e) {
  128. var n = "function" == typeof Map ? new Map : void 0;
  129. return t.exports = s = function(t) {
  130. if (null === t || !a(t)) return t;
  131. if ("function" != typeof t) throw new TypeError("Super expression must either be null or a function");
  132. if (void 0 !== n) {
  133. if (n.has(t)) return n.get(t);
  134. n.set(t, e)
  135. }
  136. function e() {
  137. return o(t, arguments, i(this).constructor)
  138. }
  139. return e.prototype = Object.create(t.prototype, {
  140. constructor: {
  141. value: e,
  142. enumerable: !1,
  143. writable: !0,
  144. configurable: !0
  145. }
  146. }), r(e, t)
  147. }, t.exports.default = t.exports, t.exports.__esModule = !0, s(e)
  148. }
  149. t.exports = s, t.exports.default = t.exports, t.exports.__esModule = !0
  150. },
  151. "./node_modules/events/events.js": function(t, e, n) {
  152. "use strict";
  153. var i, r = "object" == typeof Reflect ? Reflect : null,
  154. a = r && "function" == typeof r.apply ? r.apply : function(t, e, n) {
  155. return Function.prototype.apply.call(t, e, n)
  156. };
  157. i = r && "function" == typeof r.ownKeys ? r.ownKeys : Object.getOwnPropertySymbols ? function(t) {
  158. return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))
  159. } : function(t) {
  160. return Object.getOwnPropertyNames(t)
  161. };
  162. var o = Number.isNaN || function(t) {
  163. return t != t
  164. };
  165. function s() {
  166. s.init.call(this)
  167. }
  168. t.exports = s, t.exports.once = function(t, e) {
  169. return new Promise((function(n, i) {
  170. function r(n) {
  171. t.removeListener(e, a), i(n)
  172. }
  173. function a() {
  174. "function" == typeof t.removeListener && t.removeListener("error", r), n([].slice.call(arguments))
  175. }
  176. m(t, e, a, {
  177. once: !0
  178. }), "error" !== e && function(t, e, n) {
  179. "function" == typeof t.on && m(t, "error", e, n)
  180. }(t, r, {
  181. once: !0
  182. })
  183. }))
  184. }, s.EventEmitter = s, s.prototype._events = void 0, s.prototype._eventsCount = 0, s.prototype._maxListeners = void 0;
  185. var l = 10;
  186. function c(t) {
  187. if ("function" != typeof t) throw new TypeError('The "listener" argument must be of type Function. Received type ' + typeof t)
  188. }
  189. function u(t) {
  190. return void 0 === t._maxListeners ? s.defaultMaxListeners : t._maxListeners
  191. }
  192. function p(t, e, n, i) {
  193. var r, a, o, s;
  194. if (c(n), void 0 === (a = t._events) ? (a = t._events = Object.create(null), t._eventsCount = 0) : (void 0 !== a.newListener && (t.emit("newListener", e, n.listener ? n.listener : n), a = t._events), o = a[e]), void 0 === o) o = a[e] = n, ++t._eventsCount;
  195. else if ("function" == typeof o ? o = a[e] = i ? [n, o] : [o, n] : i ? o.unshift(n) : o.push(n), (r = u(t)) > 0 && o.length > r && !o.warned) {
  196. o.warned = !0;
  197. var l = new Error("Possible EventEmitter memory leak detected. " + o.length + " " + String(e) + " listeners added. Use emitter.setMaxListeners() to increase limit");
  198. l.name = "MaxListenersExceededWarning", l.emitter = t, l.type = e, l.count = o.length, s = l, console && console.warn && console.warn(s)
  199. }
  200. return t
  201. }
  202. function h() {
  203. 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)
  204. }
  205. function d(t, e, n) {
  206. var i = {
  207. fired: !1,
  208. wrapFn: void 0,
  209. target: t,
  210. type: e,
  211. listener: n
  212. },
  213. r = h.bind(i);
  214. return r.listener = n, i.wrapFn = r, r
  215. }
  216. function f(t, e, n) {
  217. var i = t._events;
  218. if (void 0 === i) return [];
  219. var r = i[e];
  220. return void 0 === r ? [] : "function" == typeof r ? n ? [r.listener || r] : [r] : n ? function(t) {
  221. for (var e = new Array(t.length), n = 0; n < e.length; ++n) e[n] = t[n].listener || t[n];
  222. return e
  223. }(r) : A(r, r.length)
  224. }
  225. function g(t) {
  226. var e = this._events;
  227. if (void 0 !== e) {
  228. var n = e[t];
  229. if ("function" == typeof n) return 1;
  230. if (void 0 !== n) return n.length
  231. }
  232. return 0
  233. }
  234. function A(t, e) {
  235. for (var n = new Array(e), i = 0; i < e; ++i) n[i] = t[i];
  236. return n
  237. }
  238. function m(t, e, n, i) {
  239. if ("function" == typeof t.on) i.once ? t.once(e, n) : t.on(e, n);
  240. else {
  241. if ("function" != typeof t.addEventListener) throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type ' + typeof t);
  242. t.addEventListener(e, (function r(a) {
  243. i.once && t.removeEventListener(e, r), n(a)
  244. }))
  245. }
  246. }
  247. Object.defineProperty(s, "defaultMaxListeners", {
  248. enumerable: !0,
  249. get: function() {
  250. return l
  251. },
  252. set: function(t) {
  253. if ("number" != typeof t || t < 0 || o(t)) throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received ' + t + ".");
  254. l = t
  255. }
  256. }), s.init = function() {
  257. void 0 !== this._events && this._events !== Object.getPrototypeOf(this)._events || (this._events = Object.create(null), this._eventsCount = 0), this._maxListeners = this._maxListeners || void 0
  258. }, s.prototype.setMaxListeners = function(t) {
  259. if ("number" != typeof t || t < 0 || o(t)) throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received ' + t + ".");
  260. return this._maxListeners = t, this
  261. }, s.prototype.getMaxListeners = function() {
  262. return u(this)
  263. }, s.prototype.emit = function(t) {
  264. for (var e = [], n = 1; n < arguments.length; n++) e.push(arguments[n]);
  265. var i = "error" === t,
  266. r = this._events;
  267. if (void 0 !== r) i = i && void 0 === r.error;
  268. else if (!i) return !1;
  269. if (i) {
  270. var o;
  271. if (e.length > 0 && (o = e[0]), o instanceof Error) throw o;
  272. var s = new Error("Unhandled error." + (o ? " (" + o.message + ")" : ""));
  273. throw s.context = o, s
  274. }
  275. var l = r[t];
  276. if (void 0 === l) return !1;
  277. if ("function" == typeof l) a(l, this, e);
  278. else {
  279. var c = l.length,
  280. u = A(l, c);
  281. for (n = 0; n < c; ++n) a(u[n], this, e)
  282. }
  283. return !0
  284. }, s.prototype.addListener = function(t, e) {
  285. return p(this, t, e, !1)
  286. }, s.prototype.on = s.prototype.addListener, s.prototype.prependListener = function(t, e) {
  287. return p(this, t, e, !0)
  288. }, s.prototype.once = function(t, e) {
  289. return c(e), this.on(t, d(this, t, e)), this
  290. }, s.prototype.prependOnceListener = function(t, e) {
  291. return c(e), this.prependListener(t, d(this, t, e)), this
  292. }, s.prototype.removeListener = function(t, e) {
  293. var n, i, r, a, o;
  294. if (c(e), void 0 === (i = this._events)) return this;
  295. if (void 0 === (n = i[t])) return this;
  296. if (n === e || n.listener === e) 0 == --this._eventsCount ? this._events = Object.create(null) : (delete i[t], i.removeListener && this.emit("removeListener", t, n.listener || e));
  297. else if ("function" != typeof n) {
  298. for (r = -1, a = n.length - 1; a >= 0; a--)
  299. if (n[a] === e || n[a].listener === e) {
  300. o = n[a].listener, r = a;
  301. break
  302. } if (r < 0) return this;
  303. 0 === r ? n.shift() : function(t, e) {
  304. for (; e + 1 < t.length; e++) t[e] = t[e + 1];
  305. t.pop()
  306. }(n, r), 1 === n.length && (i[t] = n[0]), void 0 !== i.removeListener && this.emit("removeListener", t, o || e)
  307. }
  308. return this
  309. }, s.prototype.off = s.prototype.removeListener, s.prototype.removeAllListeners = function(t) {
  310. var e, n, i;
  311. if (void 0 === (n = this._events)) return this;
  312. if (void 0 === n.removeListener) return 0 === arguments.length ? (this._events = Object.create(null), this._eventsCount = 0) : void 0 !== n[t] && (0 == --this._eventsCount ? this._events = Object.create(null) : delete n[t]), this;
  313. if (0 === arguments.length) {
  314. var r, a = Object.keys(n);
  315. for (i = 0; i < a.length; ++i) "removeListener" !== (r = a[i]) && this.removeAllListeners(r);
  316. return this.removeAllListeners("removeListener"), this._events = Object.create(null), this._eventsCount = 0, this
  317. }
  318. if ("function" == typeof(e = n[t])) this.removeListener(t, e);
  319. else if (void 0 !== e)
  320. for (i = e.length - 1; i >= 0; i--) this.removeListener(t, e[i]);
  321. return this
  322. }, s.prototype.listeners = function(t) {
  323. return f(this, t, !0)
  324. }, s.prototype.rawListeners = function(t) {
  325. return f(this, t, !1)
  326. }, s.listenerCount = function(t, e) {
  327. return "function" == typeof t.listenerCount ? t.listenerCount(e) : g.call(t, e)
  328. }, s.prototype.listenerCount = g, s.prototype.eventNames = function() {
  329. return this._eventsCount > 0 ? i(this._events) : []
  330. }
  331. },
  332. "./node_modules/js-base64/base64.js": function(t, n, i) {
  333. var r;
  334. ! function(e, i) {
  335. t.exports = function(e) {
  336. "use strict";
  337. var i, a = (e = e || {}).Base64,
  338. o = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",
  339. s = function(t) {
  340. for (var e = {}, n = 0, i = t.length; n < i; n++) e[t.charAt(n)] = n;
  341. return e
  342. }(o),
  343. l = String.fromCharCode,
  344. c = function(t) {
  345. if (t.length < 2) return (e = t.charCodeAt(0)) < 128 ? t : e < 2048 ? l(192 | e >>> 6) + l(128 | 63 & e) : l(224 | e >>> 12 & 15) + l(128 | e >>> 6 & 63) + l(128 | 63 & e);
  346. var e = 65536 + 1024 * (t.charCodeAt(0) - 55296) + (t.charCodeAt(1) - 56320);
  347. return l(240 | e >>> 18 & 7) + l(128 | e >>> 12 & 63) + l(128 | e >>> 6 & 63) + l(128 | 63 & e)
  348. },
  349. u = /[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,
  350. p = function(t) {
  351. return t.replace(u, c)
  352. },
  353. h = function(t) {
  354. var e = [0, 2, 1][t.length % 3],
  355. n = t.charCodeAt(0) << 16 | (t.length > 1 ? t.charCodeAt(1) : 0) << 8 | (t.length > 2 ? t.charCodeAt(2) : 0);
  356. return [o.charAt(n >>> 18), o.charAt(n >>> 12 & 63), e >= 2 ? "=" : o.charAt(n >>> 6 & 63), e >= 1 ? "=" : o.charAt(63 & n)].join("")
  357. },
  358. d = e.btoa && "function" == typeof e.btoa ? function(t) {
  359. return e.btoa(t)
  360. } : function(t) {
  361. if (t.match(/[^\x00-\xFF]/)) throw new RangeError("The string contains invalid characters.");
  362. return t.replace(/[\s\S]{1,3}/g, h)
  363. },
  364. f = function(t) {
  365. return d(p(String(t)))
  366. },
  367. g = function(t) {
  368. return t.replace(/[+\/]/g, (function(t) {
  369. return "+" == t ? "-" : "_"
  370. })).replace(/=/g, "")
  371. },
  372. A = function(t, e) {
  373. return e ? g(f(t)) : f(t)
  374. };
  375. e.Uint8Array && (i = function(t, e) {
  376. for (var n = "", i = 0, r = t.length; i < r; i += 3) {
  377. var a = t[i],
  378. s = t[i + 1],
  379. l = t[i + 2],
  380. c = a << 16 | s << 8 | l;
  381. n += o.charAt(c >>> 18) + o.charAt(c >>> 12 & 63) + (void 0 !== s ? o.charAt(c >>> 6 & 63) : "=") + (void 0 !== l ? o.charAt(63 & c) : "=")
  382. }
  383. return e ? g(n) : n
  384. });
  385. var m, y = /[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,
  386. v = function(t) {
  387. switch (t.length) {
  388. case 4:
  389. var e = ((7 & t.charCodeAt(0)) << 18 | (63 & t.charCodeAt(1)) << 12 | (63 & t.charCodeAt(2)) << 6 | 63 & t.charCodeAt(3)) - 65536;
  390. return l(55296 + (e >>> 10)) + l(56320 + (1023 & e));
  391. case 3:
  392. return l((15 & t.charCodeAt(0)) << 12 | (63 & t.charCodeAt(1)) << 6 | 63 & t.charCodeAt(2));
  393. default:
  394. return l((31 & t.charCodeAt(0)) << 6 | 63 & t.charCodeAt(1))
  395. }
  396. },
  397. I = function(t) {
  398. return t.replace(y, v)
  399. },
  400. b = function(t) {
  401. var e = t.length,
  402. n = e % 4,
  403. i = (e > 0 ? s[t.charAt(0)] << 18 : 0) | (e > 1 ? s[t.charAt(1)] << 12 : 0) | (e > 2 ? s[t.charAt(2)] << 6 : 0) | (e > 3 ? s[t.charAt(3)] : 0),
  404. r = [l(i >>> 16), l(i >>> 8 & 255), l(255 & i)];
  405. return r.length -= [0, 0, 2, 1][n], r.join("")
  406. },
  407. M = e.atob && "function" == typeof e.atob ? function(t) {
  408. return e.atob(t)
  409. } : function(t) {
  410. return t.replace(/\S{1,4}/g, b)
  411. },
  412. x = function(t) {
  413. return M(String(t).replace(/[^A-Za-z0-9\+\/]/g, ""))
  414. },
  415. C = function(t) {
  416. return String(t).replace(/[-_]/g, (function(t) {
  417. return "-" == t ? "+" : "/"
  418. })).replace(/[^A-Za-z0-9\+\/]/g, "")
  419. },
  420. w = function(t) {
  421. return function(t) {
  422. return I(M(t))
  423. }(C(t))
  424. };
  425. if (e.Uint8Array && (m = function(t) {
  426. return Uint8Array.from(x(C(t)), (function(t) {
  427. return t.charCodeAt(0)
  428. }))
  429. }), e.Base64 = {
  430. VERSION: "2.6.4",
  431. atob: x,
  432. btoa: d,
  433. fromBase64: w,
  434. toBase64: A,
  435. utob: p,
  436. encode: A,
  437. encodeURI: function(t) {
  438. return A(t, !0)
  439. },
  440. btou: I,
  441. decode: w,
  442. noConflict: function() {
  443. var t = e.Base64;
  444. return e.Base64 = a, t
  445. },
  446. fromUint8Array: i,
  447. toUint8Array: m
  448. }, "function" == typeof Object.defineProperty) {
  449. var D = function(t) {
  450. return {
  451. value: t,
  452. enumerable: !1,
  453. writable: !0,
  454. configurable: !0
  455. }
  456. };
  457. e.Base64.extendString = function() {
  458. Object.defineProperty(String.prototype, "fromBase64", D((function() {
  459. return w(this)
  460. }))), Object.defineProperty(String.prototype, "toBase64", D((function(t) {
  461. return A(this, t)
  462. }))), Object.defineProperty(String.prototype, "toBase64URI", D((function() {
  463. return A(this, !0)
  464. })))
  465. }
  466. }
  467. return e.Meteor && (Base64 = e.Base64), t.exports ? t.exports.Base64 = e.Base64 : void 0 === (r = function() {
  468. return e.Base64
  469. }.apply(n, [])) || (t.exports = r), {
  470. Base64: e.Base64
  471. }
  472. }(e)
  473. }("undefined" != typeof self ? self : "undefined" != typeof window ? window : void 0 !== e ? e : this)
  474. },
  475. "./src/events.ts": function(t, e, n) {
  476. "use strict";
  477. var i;
  478. n.r(e),
  479. function(t) {
  480. t.ERROR = "error", t.STATU_CHANGE = "statuChange", t.JSWW_INIT_COMPLETE = "jswwInitComplete"
  481. }(i || (i = {})), e.default = i
  482. },
  483. "./src/index.ts": function(t, e, n) {
  484. "use strict";
  485. n.r(e);
  486. var i, r, a = n("./node_modules/@babel/runtime/helpers/createClass.js"),
  487. o = n.n(a),
  488. s = n("./node_modules/@babel/runtime/helpers/inheritsLoose.js"),
  489. l = n.n(s),
  490. c = n("./node_modules/events/events.js"),
  491. u = n("./node_modules/@babel/runtime/helpers/extends.js"),
  492. p = n.n(u),
  493. h = n("./src/utils/log.ts"),
  494. d = {
  495. logLevel: h.LOG_LEVEL.LEVEL_ERROR
  496. },
  497. f = function() {
  498. function t() {}
  499. return t.processConfig = function(t) {
  500. var e = p()({}, d);
  501. return p()(e, t), e
  502. }, t
  503. }();
  504. ! function(t) {
  505. t[t.LIB_LOAD_ERROR = 10] = "LIB_LOAD_ERROR", t[t.INIT_ERROR = 100] = "INIT_ERROR", t[t.CREATE_SOURCE_ERROR = 101] = "CREATE_SOURCE_ERROR"
  506. }(i || (i = {})),
  507. function(t) {
  508. t.NETWORK_ERROR = "networkError", t.MAIN_ERROR = "mainError"
  509. }(r || (r = {}));
  510. var g = n("./src/events.ts"),
  511. A = n("./src/lib/libjs-wrapper.ts"),
  512. m = n("./node_modules/js-base64/base64.js");
  513. function y() {
  514. return m.Base64.toUint8Array(v)
  515. }
  516. var v = "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dGoLECoaIAMgARBJIANBCGogAxBIBEADQCADKAIMGiADIAMoAgxBBGoiAjYCDCACIAMoAggiAigCAGtBgCBGBEAgAyACQQRqNgIIIAMgAigCBDYCDAsgA0EIaiADEEgNAAsLIAEQDUEANgIAIAEQFUECSwRAA0AgASgCBCgCABAHIAEQJCABEBVBAksNAAsLQYAEIQICQAJAAkAgARAVQQFrDgIBAAILQYAIIQILIAEgAjYCEAsgA0EQaiQAIAQoAgQiASAEKAIIIgJHBEADQCAEEA0aIAEoAgAQByABQQRqIgEgAkcNAAsLIAQiASICKAIEIgMgASgCCEcEQANAIAIQBhogAiACKAIIQQRrNgIIIAIoAgggA0cNAAsLIAQoAgAEQCABEAYaIAEoAgAhBCABECMaIAQQBwsgAAsQBwsL0gIBB38jAEEgayIDJAAgAyAAKAIcIgQ2AhAgACgCFCEFIAMgAjYCHCADIAE2AhggAyAFIARrIgE2AhQgASACaiEEQQIhByADQRBqIQECfwJAAkAgACgCPCADQRBqQQIgA0EMahAAEC9FBEADQCAEIAMoAgwiBUYNAiAFQX9MDQMgASAFIAEoAgQiCEsiBkEDdGoiCSAFIAhBACAGG2siCCAJKAIAajYCACABQQxBBCAGG2oiCSAJKAIAIAhrNgIAIAQgBWshBCAAKAI8IAFBCGogASAGGyIBIAcgBmsiByADQQxqEAAQL0UNAAsLIARBf0cNAQsgACAAKAIsIgE2AhwgACABNgIUIAAgASAAKAIwajYCECACDAELIABBADYCHCAAQgA3AxAgACAAKAIAQSByNgIAQQAgB0ECRg0AGiACIAEoAgRrCyEEIANBIGokACAEC7gEAQZ/QeAAEAghAiMAQRBrIgQkACACIAE2AgQgAiAANgIAIwBBEGsiASQAIwBBEGsiAyQAIAJBDGoiByIFIgZBADYCCCAGQgA3AgAgA0EANgIMIAZBDGogA0EMahBEIANBEGokACAFQQA2AhAgAUEANgIMIAVBFGogAUEMahBFIAFBEGokACACQgA3AlAgAkF/NgJMIAJBAToASiACQQA7AUggAiAAQTJtNgJEIAJBADYCQCACQQA7ATQgAkEANgIwIAIgAEHoB202AiwgAkIANwJYAkACQAJAAkACQCACKAIAIgBB//kBTARAIABBgP0ARiAAQcC7AUZyDQEMAgsgAEGA+gFGIABBgPcCRnINACAAQcTYAkcNAQsgAigCBEEBa0EBSw0BQQEhAANAIARBADYCDCAHIARBDGoQECAAQeoHRwRAIABBAWohAAwBCwsgAkGA2AQQCCIANgIIIABBgNgEEAogAkGA2AQQCCIANgI4IABBgNgEEAogAkGA2AQQCCIANgI8IABBgNgEEAogAkF/IAIoAiwiAUEDdCIAIAFBAXQiAUH+////A3EgAUcbIgEQCCIDNgIkIAMgABAKIAIgARAIIgE2AiggASAAEAoMAwsgAigCBEEBa0ECSQ0BC0HxCRAWIAIoAgAhAAsCQCAAQf/5AUwEQCAAQYD9AEYNAiAAQcC7AUcNAQwCCyAAQYD6AUYgAEHE2AJGciAAQYD3AkZyDQELQYcKEBYLIARBEGokACACCxoAIAAgASgCCCAFEA4EQCABIAIgAyAEEDILCzcAIAAgASgCCCAFEA4EQCABIAIgAyAEEDIPCyAAKAIIIgAgASACIAMgBCAFIAAoAgAoAhQRBwALkQEAIAAgASgCCCAEEA4EQCABIAIgAxAxDwsCQCAAIAEoAgAgBBAORQ0AAkAgAiABKAIQRwRAIAEoAhQgAkcNAQsgA0EBRw0BIAFBATYCIA8LIAEgAjYCFCABIAM2AiAgASABKAIoQQFqNgIoAkAgASgCJEEBRw0AIAEoAhhBAkcNACABQQE6ADYLIAFBBDYCLAsL8gEAIAAgASgCCCAEEA4EQCABIAIgAxAxDwsCQCAAIAEoAgAgBBAOBEACQCACIAEoAhBHBEAgASgCFCACRw0BCyADQQFHDQIgAUEBNgIgDwsgASADNgIgAkAgASgCLEEERg0AIAFBADsBNCAAKAIIIgAgASACIAJBASAEIAAoAgAoAhQRBwAgAS0ANQRAIAFBAzYCLCABLQA0RQ0BDAMLIAFBBDYCLAsgASACNgIUIAEgASgCKEEBajYCKCABKAIkQQFHDQEgASgCGEECRw0BIAFBAToANg8LIAAoAggiACABIAIgAyAEIAAoAgAoAhgRCgALCzEAIAAgASgCCEEAEA4EQCABIAIgAxAzDwsgACgCCCIAIAEgAiADIAAoAgAoAhwRBQALGAAgACABKAIIQQAQDgRAIAEgAiADEDMLC7IDAQV/IwBBQGoiBCQAAn9BASAAIAFBABAODQAaQQAgAUUNABojAEFAaiIDJAAgASgCACIFQQRrKAIAIQYgBUEIaygCACEHIANBADYCFCADQdwkNgIQIAMgATYCDCADQYwlNgIIQQAhBSADQRhqQScQCiABIAdqIQECQCAGQYwlQQAQDgRAIANBATYCOCAGIANBCGogASABQQFBACAGKAIAKAIUEQcAIAFBACADKAIgQQFGGyEFDAELIAYgA0EIaiABQQFBACAGKAIAKAIYEQoAAkACQCADKAIsDgIAAQILIAMoAhxBACADKAIoQQFGG0EAIAMoAiRBAUYbQQAgAygCMEEBRhshBQwBCyADKAIgQQFHBEAgAygCMA0BIAMoAiRBAUcNASADKAIoQQFHDQELIAMoAhghBQsgA0FAayQAQQAgBSIBRQ0AGiAEQQhqQQRyQTQQCiAEQQE2AjggBEF/NgIUIAQgADYCECAEIAE2AgggASAEQQhqIAIoAgBBASABKAIAKAIcEQUAIAQoAiAiAEEBRgRAIAIgBCgCGDYCAAsgAEEBRgshACAEQUBrJAAgAAsLACAAECUaIAAQBwsIACAAECUQBwsFAEGACAsIACAAEDwQBwsIACAAED4QBwsIACAAED8QBwsIACAAEEAQBwsHACAAKAIECwwAIAAgASoCADgCAAvMDAELfyMAQTBrIgYkACAAEA0hAQJAIAAoAhBBgAhPBEAgACAAKAIQQYAIazYCECAGIAAoAgQoAgA2AhggABAkIAAgBkEYahBDDAELAkAgABAVIAAQI0kEQCAAEAYoAgAgACgCCGtBAnVFDQEgBkGACBAiNgIYIAZBGGohAiMAQTBrIgMkAAJAIAAiASgCCCABEAYoAgBHDQAgAUEIaiEEIAFBBGohByABKAIEIgAgASgCACIFSwRAIAQgACAEKAIAIAAgACAFa0ECdUEBakF+bUECdCIEahAoNgIAIAcgBygCACAEajYCAAwBCyADIAEQBigCACABKAIAa0EBdTYCGCADQQE2AiwgA0EYaiADQRhqIANBLGoQGygCACIAIABBAnYgARAGEBohACADQRBqIAEoAgQQDyEFIANBCGogASgCCBAPIQggACAFKAIAIAgoAgAQHiABIAAQCSAHIABBBGoQCSAEIABBCGoQCSABEAYgABAGEAkgABAZCyABEAYgASgCCCACEBggASABKAIIQQRqNgIIIANBMGokAAwCCyAGIAAQI0EBdDYCCCAGQQE2AgAgBkEYaiAGQQhqIAYQGygCACAAEBUgABAGEBohA0GACBAiIQQgBiABQYAIECohByMAQRBrIgEkACABIAQ2AgwgBkEIaiIEIgIgAUEMahBFIAIgBykCADcCBCABQRBqJAAgBiAEKAIANgIAIAYhByMAQTBrIgIkAAJAIAMiASgCCCABEAYoAgBHDQAgAUEIaiEIIAFBBGohCSABKAIEIgUgASgCACIKSwRAIAggBSAIKAIAIAUgBSAKa0ECdUEBakF+bUECdCIIahAoNgIAIAkgCSgCACAIajYCAAwBCyACIAEQBigCACABKAIAa0EBdTYCGCACQQE2AiwgAkEYaiACQRhqIAJBLGoQGygCACIFIAVBAnYgASgCEBAaIQUgAkEQaiABKAIEEA8hCiACQQhqIAEoAggQDyELIAUgCigCACALKAIAEB4gASAFEAkgCSAFQQRqEAkgCCAFQQhqEAkgARAGIAUQBhAJIAUQGQsgASgCECABKAIIIAcQGCABIAEoAghBBGo2AgggAkEwaiQAIAQoAgAaIARBADYCACAAKAIIIgUgACgCBEcEQANAIAVBBGsiBSEIIwBBMGsiByQAAkAgAygCBCABKAIARw0AIAEoAgggARAGKAIASQRAIAEQBiEJIAEgASgCBCABKAIIIgIgAiAJKAIAIAJrQQJ1QQFqQQJtQQJ0IglqEEE2AgQgASABKAIIIAlqNgIIDAELIAcgARAGKAIAIAEoAgBrQQF1NgIYIAdBATYCLCAHQRhqIAdBGGogB0EsahAbKAIAIgIgAkEDakECdiABKAIQEBohAiAHQRBqIAEoAgQQDyEJIAdBCGogASgCCBAPIQogAiAJKAIAIAooAgAQHiABIAIQCSABQQRqIAJBBGoQCSABQQhqIAJBCGoQCSABEAYgAhAGEAkgAhAZCyABKAIQIAEoAgRBBGsgCBAYIAEgASgCBEEEazYCBCAHQTBqJAAgBSAAKAIERw0ACwsgACADEAkgAEEEaiADQQRqEAkgAEEIaiADQQhqEAkgABAGIAMQBhAJIAQiACgCACEBIABBADYCACABBEAgACgCBBogACgCCBogARAHCyADEBkMAQsgBkGACBAiNgIYIAZBGGohByMAQTBrIgMkAAJAIAAiASgC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",
  517. I = {};
  518. ! function() {
  519. var t = self.navigator.userAgent.toLowerCase(),
  520. e = /(edge)\/([\w.]+)/.exec(t) || /(opr)[\/]([\w.]+)/.exec(t) || /(chrome)[ \/]([\w.]+)/.exec(t) || /(iemobile)[\/]([\w.]+)/.exec(t) || /(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(t) || /(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(t) || /(webkit)[ \/]([\w.]+)/.exec(t) || /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(t) || /(msie) ([\w.]+)/.exec(t) || t.indexOf("trident") >= 0 && /(rv)(?::| )([\w.]+)/.exec(t) || t.indexOf("compatible") < 0 && /(firefox)[ \/]([\w.]+)/.exec(t) || [],
  521. n = /(ipad)/.exec(t) || /(ipod)/.exec(t) || /(windows phone)/.exec(t) || /(iphone)/.exec(t) || /(kindle)/.exec(t) || /(android)/.exec(t) || /(windows)/.exec(t) || /(mac)/.exec(t) || /(linux)/.exec(t) || /(cros)/.exec(t) || [],
  522. i = {
  523. browser: e[5] || e[3] || e[1] || "",
  524. version: e[2] || e[4] || "0",
  525. majorVersion: e[4] || e[2] || "0",
  526. platform: n[0] || ""
  527. },
  528. r = {};
  529. if (i.browser) {
  530. r[i.browser] = !0;
  531. var a = i.majorVersion.split(".");
  532. r.version = {
  533. major: parseInt(i.majorVersion, 10),
  534. string: i.version
  535. }, a.length > 1 && (r.version.minor = parseInt(a[1], 10)), a.length > 2 && (r.version.build = parseInt(a[2], 10))
  536. }
  537. for (var o in i.platform && (r[i.platform] = !0), (r.chrome || r.opr || r.safari) && (r.webkit = !0), (r.rv || r.iemobile) && (r.rv && delete r.rv, i.browser = "msie", r.msie = !0), r.edge && (delete r.edge, i.browser = "msedge", r.msedge = !0), r.opr && (i.browser = "opera", r.opera = !0), r.safari && r.android && (i.browser = "android", r.android = !0), r.name = i.browser, r.platform = i.platform, I) I.hasOwnProperty(o) && delete I[o];
  538. I = r
  539. }();
  540. var b = I,
  541. M = n("./src/utils/webworkify-webpack.js"),
  542. x = n.n(M),
  543. C = n("./src/node/worker-cmd.ts"),
  544. w = "joysound-node",
  545. D = function() {
  546. function t(t, e) {
  547. var n = this;
  548. this._eventEmitter = void 0, this._config = void 0, this._jsww = void 0, this._ctx = void 0, this._script = void 0, this._input = void 0, this._output = void 0, this._bufferSize = 1024, this._pendingData = void 0, this._workletBlob = "", this._worklet = void 0, this._scriptProcess = function(t) {
  549. for (var e = [], i = n._pendingData, r = function(n) {
  550. var r = t.inputBuffer.getChannelData(n);
  551. i && r.forEach((function(e, r) {
  552. i[r * t.inputBuffer.numberOfChannels + n] = e
  553. })), e.push(t.outputBuffer.getChannelData(n))
  554. }, a = 0; a < t.inputBuffer.numberOfChannels; a++) r(a);
  555. n._pendingData && n._jsww && n._jsww.process(n._pendingData).forEach((function(t, n) {
  556. e[n % 2][Math.floor(n / 2)] = t
  557. }))
  558. }, this._onMessage = function(t) {
  559. switch (t.data.cmd) {
  560. case C.WorkerCmd.JSWW_INIT_COMPLETE:
  561. n._eventEmitter.emit(g.default.JSWW_INIT_COMPLETE);
  562. break;
  563. case C.WorkerCmd.STATU_CHANGE:
  564. n._eventEmitter.emit(g.default.STATU_CHANGE, {
  565. enabled: t.data.enabled
  566. })
  567. }
  568. }, this._eventEmitter = t, this._config = e, !window.AudioWorkletNode || b.chrome && b.version.major < 67 ? h.Log.i(w, "use script") : (this._workletBlob = URL.createObjectURL(x()("./src/node/jsww.worklet.js", {
  569. bare: !0,
  570. worklet: !0
  571. })), h.Log.i(w, "use worklet"))
  572. }
  573. var e = t.prototype;
  574. return e.init = function(t) {
  575. var e = this;
  576. return this._ctx = t, this._input = t.createGain(), this._input.channelCountMode = "explicit", this._input.channelCount = 2, this._output = t.createGain(), this._workletBlob ? t.audioWorklet.addModule(this._workletBlob).then((function() {
  577. e._input && e._output && (e._worklet = new AudioWorkletNode(t, "jsww"), e._worklet.port.start(), e._worklet.port.postMessage({
  578. cmd: C.WorkerCmd.INIT,
  579. lib: y(),
  580. logLevel: e._config.logLevel,
  581. channelCount: e._input.channelCount,
  582. sampleRate: t.sampleRate,
  583. bufferSize: e._bufferSize
  584. }), e._worklet.port.onmessage = e._onMessage, e._input.connect(e._worklet), e._worklet.connect(e._output))
  585. })) : (this._jsww = new A.default(this._eventEmitter), this._script = t.createScriptProcessor(this._bufferSize, this._input.channelCount, 2), this._script.onaudioprocess = this._scriptProcess, this._input.connect(this._script), this._script.connect(this._output), this._loadLib(), Promise.resolve())
  586. }, e.setEnabled = function(t) {
  587. this._jsww ? this._jsww.setEnabled(t) : this._worklet && this._worklet.port.postMessage({
  588. cmd: C.WorkerCmd.SET_ENABLED,
  589. value: t
  590. })
  591. }, e.connect = function(t) {
  592. this._output && this._output.connect(t)
  593. }, e.disconnect = function() {
  594. this._output && this._output.disconnect()
  595. }, e.flush = function() {
  596. this._worklet && this._worklet.port.postMessage({
  597. cmd: C.WorkerCmd.FLUSH
  598. })
  599. }, e.destroy = function() {
  600. this._jsww && this._jsww.destroy(), this._worklet && this._worklet.port.postMessage({
  601. cmd: C.WorkerCmd.DESTROY
  602. })
  603. }, e._loadLib = function() {
  604. var t = y();
  605. this._jsww && this._jsww.init(t), this._updateInfo()
  606. }, e._updateInfo = function() {
  607. this._ctx && this._input && this._jsww && (this._pendingData = new Float32Array(this._bufferSize * this._input.channelCount), this._jsww.updateInfo(this._ctx.sampleRate, this._input.channelCount, this._bufferSize))
  608. }, o()(t, [{
  609. key: "source",
  610. get: function() {
  611. return this._input
  612. }
  613. }, {
  614. key: "context",
  615. get: function() {
  616. return this._ctx
  617. }
  618. }]), t
  619. }();
  620. function E() {
  621. return window.AudioContext || window.webkitAudioContext
  622. }
  623. var k = {
  624. 400: "01",
  625. 401: "02",
  626. 403: "03",
  627. 404: "04",
  628. other4xx: "05",
  629. serverError: "06",
  630. timeoutOpen: "07",
  631. timeoutIO: "08",
  632. 200: "09",
  633. 206: "09"
  634. },
  635. T = function() {
  636. function t() {
  637. this.timeout = 6048e5
  638. }
  639. var e = t.prototype;
  640. return e.write = function(e, n) {
  641. if (t.available) try {
  642. localStorage.setItem(e, JSON.stringify({
  643. value: n,
  644. time: Date.now()
  645. }))
  646. } catch (t) {}
  647. }, e.read = function(e, n) {
  648. if (void 0 === n && (n = !0), t.available) try {
  649. var i = localStorage.getItem(e);
  650. if (i) {
  651. var r = JSON.parse(i),
  652. a = r.value,
  653. o = r.time,
  654. s = void 0 === o ? 0 : o;
  655. if (!n) return a;
  656. if (Date.now() - s < this.timeout) return a
  657. }
  658. } catch (t) {}
  659. }, o()(t, null, [{
  660. key: "available",
  661. get: function() {
  662. if (void 0 === t._available) try {
  663. localStorage.setItem("alg", "test"), t._available = !0
  664. } catch (e) {
  665. t._available = !1
  666. }
  667. return t._available
  668. }
  669. }]), t
  670. }();
  671. T._available = void 0;
  672. var N = T,
  673. S = "kwai-jsww",
  674. j = function(t) {
  675. function e(n) {
  676. var i;
  677. (i = t.call(this) || this)._eventEmitter = void 0, i._ctx = void 0, i._mediaElement = void 0, i._source = void 0, i._destination = void 0, i._enabled = !1, i._config = void 0, i._jsNode = void 0, i._onError = function(t) {
  678. var e = t.details;
  679. return t.type === r.NETWORK_ERROR && function(t, e, n) {
  680. if (void 0 === n && (n = 0), t >= 100) return t;
  681. var i = "00";
  682. "timeout" === e ? i = n ? k.timeoutIO || i : k.timeoutOpen || i : k.hasOwnProperty(n) ? i = k[n] || i : /^4\d{2}$/.test(n.toString()) ? i = k.other4xx || i : /^5\d{2}$/.test(n.toString()) && (i = k.serverError || i), parseInt(t + i, 10)
  683. }(e, t.reason, t.statusCode || 0), {
  684. code: e,
  685. fatal: t.fatal,
  686. type: t.type,
  687. reason: t.reason
  688. }
  689. }, i.off || (i.off = i.removeListener), i._config = f.processConfig(n);
  690. var a = (new N).read("kwai-joysound-log");
  691. return a && (h.Log.level(a), i._config.logLevel = a), i._eventEmitter = new c.EventEmitter, i._eventEmitter.on(g.default.ERROR, i._onError), i._eventEmitter.on(g.default.STATU_CHANGE, (function(t) {
  692. i.emit(g.default.STATU_CHANGE, t)
  693. })), i._jsNode = new D(i._eventEmitter, i._config), h.Log.i(S, e.version), i
  694. }
  695. l()(e, t), e.isSupport = function(t) {
  696. return void 0 === t && (t = !0), !(!E() || !window.OfflineAudioContext && !window.webkitOfflineAudioContext || t && b.safari)
  697. };
  698. var n = e.prototype;
  699. return n.init = function(t) {
  700. var n = this;
  701. if (h.Log.i(S, "init", t), !e.isSupport()) return this._onError({
  702. type: r.MAIN_ERROR,
  703. details: i.INIT_ERROR,
  704. fatal: !0,
  705. reason: "already bind source"
  706. }), !1;
  707. if (this._source) return this._onError({
  708. type: r.MAIN_ERROR,
  709. details: i.INIT_ERROR,
  710. fatal: !0,
  711. reason: "already bind source"
  712. }), !1;
  713. if (t instanceof HTMLMediaElement) this._mediaElement = t;
  714. else {
  715. if (!(t instanceof AudioNode)) return this._onError({
  716. type: r.MAIN_ERROR,
  717. details: i.INIT_ERROR,
  718. fatal: !0,
  719. reason: "unsupported source"
  720. }), !1;
  721. this._source = t
  722. }
  723. return this._ctx || this._initAudioContext().then((function() {
  724. n._initSource(), n.setEnabled(n._enabled)
  725. })), !0
  726. }, n.destroy = function() {
  727. h.Log.i(S, "destroy"), this._disconnect(), this._jsNode.destroy(), this._ctx && (this._ctx.close(), this._ctx = void 0), this._eventEmitter.removeAllListeners(), this._mediaElement = void 0, this._source = void 0, this._destination = void 0, this.removeAllListeners()
  728. }, n.setEnabled = function(t) {
  729. h.Log.i(S, "setEnabled", t), this._enabled = t, this._ctx && this._jsNode.setEnabled(t)
  730. }, n.setVolume = function(t, e) {
  731. if (this._jsNode) this._jsNode._output.gain.value = 1 + t * (e || 10);
  732. }, n.setDestination = function(t) {
  733. this._destination = t
  734. }, n.hasSource = function() {
  735. return !!this._mediaElement
  736. }, n._initAudioContext = function() {
  737. if (!this._ctx) {
  738. if (this._source) this._ctx = this._source.context, this._ctx.resume();
  739. else {
  740. var t = E();
  741. this._ctx = new t
  742. }
  743. return this._destination = this._destination || this._ctx.destination, this._jsNode.init(this._ctx)
  744. }
  745. return Promise.resolve()
  746. }, n._initSource = function() {
  747. if (this._ctx && this._mediaElement) {
  748. if (!this._source) try {
  749. this._source = this._ctx.createMediaElementSource(this._mediaElement)
  750. } catch (t) {
  751. return void this._onError({
  752. type: r.MAIN_ERROR,
  753. details: i.INIT_ERROR,
  754. fatal: !0,
  755. reason: "already bind source"
  756. })
  757. }
  758. this._source.disconnect(), this._connect()
  759. }
  760. }, n._disconnect = function() {
  761. this._source && (this._jsNode.disconnect(), this._source.disconnect())
  762. }, n._connect = function() {
  763. if (this._disconnect(), this._source && this._destination) {
  764. var t = this._source;
  765. this._jsNode.source ? (t.connect(this._jsNode.source), this._jsNode.connect(this._destination)) : t.connect(this._destination)
  766. }
  767. }, o()(e, null, [{
  768. key: "version",
  769. get: function() {
  770. return "1.0.1"
  771. }
  772. }]), e
  773. }(c.EventEmitter);
  774. e.default = j
  775. },
  776. "./src/lib/libjs-wrapper.ts": function(t, e, n) {
  777. "use strict";
  778. n.r(e);
  779. var i = n("./node_modules/@babel/runtime/helpers/createClass.js"),
  780. r = n.n(i),
  781. a = n("./src/events.ts"),
  782. o = n("./src/utils/log.ts"),
  783. s = n("./src/lib/libjsww.js"),
  784. l = n.n(s),
  785. c = "libjs-wrapper",
  786. u = function() {
  787. function t(t) {
  788. this._eventEmitter = void 0, this._module = void 0, this._libjsww = void 0, this._ctx = void 0, this._inputPtr = void 0, this._outputPtr = void 0, this._sampleRate = 44100, this._channel = 2, this._frameLen = 1024, this._enabled = !1, this._eventEmitter = t
  789. }
  790. var e = t.prototype;
  791. return e.init = function(t) {
  792. var e = this;
  793. o.Log.i(c, "init libjsww");
  794. var n = {
  795. wasmBinary: t
  796. };
  797. l()(n).then((function(t) {
  798. e._module = t, e._cwrapLibjswwFun(), e._initIOBuffer(), e._initCtx()
  799. }))
  800. }, e.process = function(t) {
  801. return this._module ? (this._module.HEAPF32.set(t, this._inputPtr >> 2), this._libjsww.AudioJoySoundProcessor_process(this._ctx, this._outputPtr, this._inputPtr, this._frameLen), this._module.HEAPF32.subarray(this._outputPtr >> 2, (this._outputPtr >> 2) + this._frameLen * this._channel)) : t
  802. }, e.setEnabled = function(t) {
  803. this._enabled = t, this._libjsww && this._ctx && (o.Log.i(c, "set enabled: " + t), this._libjsww.AudioJoySoundProcessor_Set_Switch_Status(this._ctx, t), this._eventEmitter.emit(a.default.STATU_CHANGE, {
  804. enabled: t
  805. }))
  806. }, e.destroy = function() {
  807. o.Log.i(c, "destroy"), this._destroyIOBuffer(), this._destroyCtx()
  808. }, e.updateInfo = function(t, e, n) {
  809. o.Log.i(c, "sampleRate: " + t + " channel: " + e + " frameLen: " + n);
  810. var i = !1;
  811. this._sampleRate === t && this._channel === e && this._frameLen === n || (this._sampleRate = t, this._channel = e, this._frameLen = n, i = !0), i && this._ctx && (this._initCtx(), this._initIOBuffer())
  812. }, e._initIOBuffer = function() {
  813. this._module && (o.Log.i(c, "init io buffer"), this._destroyIOBuffer(), this._inputPtr = this._module._malloc(4 * this._frameLen * this._channel), this._outputPtr = this._module._malloc(4 * this._frameLen * this._channel))
  814. }, e._destroyIOBuffer = function() {
  815. this._module && this._module._free && (void 0 !== this._inputPtr && this._module._free(this._inputPtr), void 0 !== this._outputPtr && this._module._free(this._outputPtr))
  816. }, e._destroyCtx = function() {
  817. this._ctx && this._libjsww && (o.Log.i(c, "destroy ctx"), this._libjsww.AudioJoySoundProcessor_free(this._ctx), this._ctx = void 0)
  818. }, e._initCtx = function() {
  819. o.Log.i(c, "init ctx"), this._ctx && this._destroyCtx(), this._ctx = this._libjsww.AudioJoySoundProcessor_init(this._sampleRate, this._channel), this.setEnabled(this._enabled), this._eventEmitter.emit(a.default.JSWW_INIT_COMPLETE)
  820. }, e._cwrapLibjswwFun = function() {
  821. this._libjsww = {
  822. AudioJoySoundProcessor_init: this._module.cwrap("AudioJoySoundProcessor_init", "number", ["number", "number"]),
  823. AudioJoySoundProcessor_free: this._module.cwrap("AudioJoySoundProcessor_free", "number", ["number"]),
  824. AudioJoySoundProcessor_process: this._module.cwrap("AudioJoySoundProcessor_process", "number", ["number", "number", "number", "number"]),
  825. AudioJoySoundProcessor_setParamCtl: this._module.cwrap("AudioJoySoundProcessor_setParamCtl", "number", ["number", "number", "void"]),
  826. AudioJoySoundProcessor_Set_Switch_Status: this._module.cwrap("AudioJoySoundProcessor_Set_Switch_Status", "number", ["number", "boolean"]),
  827. AudioJoySoundProcessor_Get_Switch_Status: this._module.cwrap("AudioJoySoundProcessor_Get_Switch_Status", "number", ["numbner"]),
  828. JOYSOUND_EFFECT_SET_SWITCH: 0,
  829. JOYSOUND_EFFECT_GET_SWITCH: 1,
  830. JOYSOUND_EFFECT_SET_MODE: 2,
  831. JOYSOUND_EFFECT_SET_SCREEN_DIRECTION: 3,
  832. module: this._module
  833. }
  834. }, r()(t, [{
  835. key: "libjsww",
  836. get: function() {
  837. return this._libjsww
  838. }
  839. }, {
  840. key: "sampleRate",
  841. get: function() {
  842. return this._sampleRate
  843. }
  844. }, {
  845. key: "channel",
  846. get: function() {
  847. return this._channel
  848. }
  849. }, {
  850. key: "frameLen",
  851. get: function() {
  852. return this._frameLen
  853. }
  854. }]), t
  855. }();
  856. e.default = u
  857. },
  858. "./src/lib/libjsww.js": function(t, e, n) {
  859. var i, r = (i = "undefined" != typeof document && document.currentScript ? document.currentScript.src : void 0, function(t) {
  860. var e, n, r;
  861. t = t || {}, e || (e = void 0 !== t ? t : {}), e.ready = new Promise((function(t, e) {
  862. n = t, r = e
  863. }));
  864. var a, o = {};
  865. for (a in e) e.hasOwnProperty(a) && (o[a] = e[a]);
  866. var s = "";
  867. "undefined" != typeof document && document.currentScript && (s = document.currentScript.src), i && (s = i), s = 0 !== s.indexOf("blob:") ? s.substr(0, s.lastIndexOf("/") + 1) : "";
  868. var l = e.print || console.log.bind(console),
  869. c = e.printErr || console.warn.bind(console);
  870. for (a in o) o.hasOwnProperty(a) && (e[a] = o[a]);
  871. o = null;
  872. var u, p, h = [];
  873. e.wasmBinary && (p = e.wasmBinary), e.noExitRuntime, "object" != typeof WebAssembly && Q("no native wasm support detected");
  874. var d, f = !1;
  875. function g(t) {
  876. var n = e["_" + t];
  877. return n || Q("Assertion failed: Cannot call unknown function " + t + ", make sure it is exported"), n
  878. }
  879. function A(t, e, n, i) {
  880. var r, a = {
  881. string: function(t) {
  882. var e = 0;
  883. if (null != t && 0 !== t) {
  884. var n = 1 + (t.length << 2),
  885. i = e = J(n),
  886. r = v;
  887. if (0 < n) {
  888. n = i + n - 1;
  889. for (var a = 0; a < t.length; ++a) {
  890. var o = t.charCodeAt(a);
  891. if (55296 <= o && 57343 >= o && (o = 65536 + ((1023 & o) << 10) | 1023 & t.charCodeAt(++a)), 127 >= o) {
  892. if (i >= n) break;
  893. r[i++] = o
  894. } else {
  895. if (2047 >= o) {
  896. if (i + 1 >= n) break;
  897. r[i++] = 192 | o >> 6
  898. } else {
  899. if (65535 >= o) {
  900. if (i + 2 >= n) break;
  901. r[i++] = 224 | o >> 12
  902. } else {
  903. if (i + 3 >= n) break;
  904. r[i++] = 240 | o >> 18, r[i++] = 128 | o >> 12 & 63
  905. }
  906. r[i++] = 128 | o >> 6 & 63
  907. }
  908. r[i++] = 128 | 63 & o
  909. }
  910. }
  911. r[i] = 0
  912. }
  913. }
  914. return e
  915. },
  916. array: function(t) {
  917. var e = J(t.length);
  918. return y.set(t, e), e
  919. }
  920. },
  921. o = g(t),
  922. s = [];
  923. if (t = 0, i)
  924. for (var l = 0; l < i.length; l++) {
  925. var c = a[n[l]];
  926. c ? (0 === t && (t = Z()), s[l] = c(i[l])) : s[l] = i[l]
  927. }
  928. return n = o.apply(null, s), r = n, n = "string" === e ? r ? w(v, r, void 0) : "" : "boolean" === e ? !!r : r, 0 !== t && W(t), n
  929. }
  930. var m, y, v, I, b, M, x, C = "undefined" != typeof TextDecoder ? new TextDecoder("utf8") : void 0;
  931. function w(t, e, n) {
  932. var i = e + n;
  933. for (n = e; t[n] && !(n >= i);) ++n;
  934. if (16 < n - e && t.subarray && C) return C.decode(t.subarray(e, n));
  935. for (i = ""; e < n;) {
  936. var r = t[e++];
  937. if (128 & r) {
  938. var a = 63 & t[e++];
  939. if (192 == (224 & r)) i += String.fromCharCode((31 & r) << 6 | a);
  940. else {
  941. var o = 63 & t[e++];
  942. 65536 > (r = 224 == (240 & r) ? (15 & r) << 12 | a << 6 | o : (7 & r) << 18 | a << 12 | o << 6 | 63 & t[e++]) ? i += String.fromCharCode(r) : (r -= 65536, i += String.fromCharCode(55296 | r >> 10, 56320 | 1023 & r))
  943. }
  944. } else i += String.fromCharCode(r)
  945. }
  946. return i
  947. }
  948. function D() {
  949. var t = d.buffer;
  950. m = t, e.HEAP8 = y = new Int8Array(t), e.HEAP16 = I = new Int16Array(t), e.HEAP32 = b = new Int32Array(t), e.HEAPU8 = v = new Uint8Array(t), e.HEAPU16 = new Uint16Array(t), e.HEAPU32 = new Uint32Array(t), e.HEAPF32 = M = new Float32Array(t), e.HEAPF64 = x = new Float64Array(t)
  951. }
  952. var E, k = [],
  953. T = [],
  954. N = [];
  955. function S() {
  956. var t = e.preRun.shift();
  957. k.unshift(t)
  958. }
  959. var j, B, L, z = 0,
  960. P = null,
  961. O = null;
  962. function Q(t) {
  963. throw e.onAbort && e.onAbort(t), c(t), f = !0, t = new WebAssembly.RuntimeError("abort(" + t + "). Build with -s ASSERTIONS=1 for more info."), r(t), t
  964. }
  965. function R() {
  966. return j.startsWith("data:application/octet-stream;base64,")
  967. }
  968. if (e.preloadedImages = {}, e.preloadedAudios = {}, j = "libjsww.wasm", !R()) {
  969. var F = j;
  970. j = e.locateFile ? e.locateFile(F, s) : s + F
  971. }
  972. function G() {
  973. var t = j;
  974. try {
  975. if (t == j && p) return new Uint8Array(p);
  976. throw "both async and sync fetching of the wasm failed"
  977. } catch (t) {
  978. Q(t)
  979. }
  980. }
  981. function U(t) {
  982. for (; 0 < t.length;) {
  983. var n = t.shift();
  984. if ("function" == typeof n) n(e);
  985. else {
  986. var i = n.H;
  987. "number" == typeof i ? void 0 === n.v ? E.get(i)() : E.get(i)(n.v) : i(void 0 === n.v ? null : n.v)
  988. }
  989. }
  990. }
  991. function Y(t) {
  992. this.u = t - 16, this.G = function(t) {
  993. b[this.u + 8 >> 2] = t
  994. }, this.C = function(t) {
  995. b[this.u + 0 >> 2] = t
  996. }, this.D = function() {
  997. b[this.u + 4 >> 2] = 0
  998. }, this.B = function() {
  999. y[this.u + 12 >> 0] = 0
  1000. }, this.F = function() {
  1001. y[this.u + 13 >> 0] = 0
  1002. }, this.A = function(t, e) {
  1003. this.G(t), this.C(e), this.D(), this.B(), this.F()
  1004. }
  1005. }
  1006. var _ = [null, [],
  1007. []
  1008. ],
  1009. V = {
  1010. f: function(t) {
  1011. return q(t + 16) + 16
  1012. },
  1013. e: function(t, e, n) {
  1014. throw new Y(t).A(e, n), t
  1015. },
  1016. d: function() {
  1017. Q()
  1018. },
  1019. b: function(t, e, n) {
  1020. v.copyWithin(t, e, e + n)
  1021. },
  1022. c: function(t) {
  1023. var e = v.length;
  1024. if (2147483648 < (t >>>= 0)) return !1;
  1025. for (var n = 1; 4 >= n; n *= 2) {
  1026. var i = e * (1 + .2 / n);
  1027. i = Math.min(i, t + 100663296), 0 < (i = Math.max(t, i)) % 65536 && (i += 65536 - i % 65536);
  1028. t: {
  1029. try {
  1030. d.grow(Math.min(2147483648, i) - m.byteLength + 65535 >>> 16), D();
  1031. var r = 1;
  1032. break t
  1033. } catch (t) {}
  1034. r = void 0
  1035. }
  1036. if (r) return !0
  1037. }
  1038. return !1
  1039. },
  1040. a: function(t, e, n, i) {
  1041. for (var r = 0, a = 0; a < n; a++) {
  1042. for (var o = b[e + 8 * a >> 2], s = b[e + (8 * a + 4) >> 2], u = 0; u < s; u++) {
  1043. var p = v[o + u],
  1044. h = _[t];
  1045. 0 === p || 10 === p ? ((1 === t ? l : c)(w(h, 0)), h.length = 0) : h.push(p)
  1046. }
  1047. r += s
  1048. }
  1049. return b[i >> 2] = r, 0
  1050. }
  1051. };
  1052. ! function() {
  1053. function t(t) {
  1054. e.asm = t.exports, d = e.asm.g, D(), E = e.asm.o, T.unshift(e.asm.h), z--, e.monitorRunDependencies && e.monitorRunDependencies(z), 0 == z && (null !== P && (clearInterval(P), P = null), O && (t = O, O = null, t()))
  1055. }
  1056. function n(e) {
  1057. t(e.instance)
  1058. }
  1059. function i(t) {
  1060. return (p || "function" != typeof fetch ? Promise.resolve().then((function() {
  1061. return G()
  1062. })) : fetch(j, {
  1063. credentials: "same-origin"
  1064. }).then((function(t) {
  1065. if (!t.ok) throw "failed to load wasm binary file at '" + j + "'";
  1066. return t.arrayBuffer()
  1067. })).catch((function() {
  1068. return G()
  1069. }))).then((function(t) {
  1070. return WebAssembly.instantiate(t, a)
  1071. })).then(t, (function(t) {
  1072. c("failed to asynchronously prepare wasm: " + t), Q(t)
  1073. }))
  1074. }
  1075. var a = {
  1076. a: V
  1077. };
  1078. if (z++, e.monitorRunDependencies && e.monitorRunDependencies(z), e.instantiateWasm) try {
  1079. return e.instantiateWasm(a, t)
  1080. } catch (t) {
  1081. return c("Module.instantiateWasm callback failed with error: " + t), !1
  1082. }(p || "function" != typeof WebAssembly.instantiateStreaming || R() || "function" != typeof fetch ? i(n) : fetch(j, {
  1083. credentials: "same-origin"
  1084. }).then((function(t) {
  1085. return WebAssembly.instantiateStreaming(t, a).then(n, (function(t) {
  1086. return c("wasm streaming compile failed: " + t), c("falling back to ArrayBuffer instantiation"), i(n)
  1087. }))
  1088. }))).catch(r)
  1089. }(), e.___wasm_call_ctors = function() {
  1090. return (e.___wasm_call_ctors = e.asm.h).apply(null, arguments)
  1091. }, e._AudioJoySoundProcessor_init = function() {
  1092. return (e._AudioJoySoundProcessor_init = e.asm.i).apply(null, arguments)
  1093. }, e._AudioJoySoundProcessor_free = function() {
  1094. return (e._AudioJoySoundProcessor_free = e.asm.j).apply(null, arguments)
  1095. }, e._AudioJoySoundProcessor_process = function() {
  1096. return (e._AudioJoySoundProcessor_process = e.asm.k).apply(null, arguments)
  1097. }, e._AudioJoySoundProcessor_setParamCtl = function() {
  1098. return (e._AudioJoySoundProcessor_setParamCtl = e.asm.l).apply(null, arguments)
  1099. }, e._AudioJoySoundProcessor_Set_Switch_Status = function() {
  1100. return (e._AudioJoySoundProcessor_Set_Switch_Status = e.asm.m).apply(null, arguments)
  1101. }, e._AudioJoySoundProcessor_Get_Switch_Status = function() {
  1102. return (e._AudioJoySoundProcessor_Get_Switch_Status = e.asm.n).apply(null, arguments)
  1103. };
  1104. var H, Z = e.stackSave = function() {
  1105. return (Z = e.stackSave = e.asm.p).apply(null, arguments)
  1106. },
  1107. W = e.stackRestore = function() {
  1108. return (W = e.stackRestore = e.asm.q).apply(null, arguments)
  1109. },
  1110. J = e.stackAlloc = function() {
  1111. return (J = e.stackAlloc = e.asm.r).apply(null, arguments)
  1112. },
  1113. q = e._malloc = function() {
  1114. return (q = e._malloc = e.asm.s).apply(null, arguments)
  1115. };
  1116. function K() {
  1117. function t() {
  1118. if (!H && (H = !0, e.calledRun = !0, !f)) {
  1119. if (U(T), n(e), e.onRuntimeInitialized && e.onRuntimeInitialized(), e.postRun)
  1120. for ("function" == typeof e.postRun && (e.postRun = [e.postRun]); e.postRun.length;) {
  1121. var t = e.postRun.shift();
  1122. N.unshift(t)
  1123. }
  1124. U(N)
  1125. }
  1126. }
  1127. if (!(0 < z)) {
  1128. if (e.preRun)
  1129. for ("function" == typeof e.preRun && (e.preRun = [e.preRun]); e.preRun.length;) S();
  1130. U(k), 0 < z || (e.setStatus ? (e.setStatus("Running..."), setTimeout((function() {
  1131. setTimeout((function() {
  1132. e.setStatus("")
  1133. }), 1), t()
  1134. }), 1)) : t())
  1135. }
  1136. }
  1137. if (e._free = function() {
  1138. return (e._free = e.asm.t).apply(null, arguments)
  1139. }, e.cwrap = function(t, e, n, i) {
  1140. var r = (n = n || []).every((function(t) {
  1141. return "number" === t
  1142. }));
  1143. return "string" !== e && r && !i ? g(t) : function() {
  1144. return A(t, e, n, arguments)
  1145. }
  1146. }, e.setValue = function(t, e, n) {
  1147. switch ("*" === (n = n || "i8").charAt(n.length - 1) && (n = "i32"), n) {
  1148. case "i1":
  1149. case "i8":
  1150. y[t >> 0] = e;
  1151. break;
  1152. case "i16":
  1153. I[t >> 1] = e;
  1154. break;
  1155. case "i32":
  1156. b[t >> 2] = e;
  1157. break;
  1158. case "i64":
  1159. L = [e >>> 0, (B = e, 1 <= +Math.abs(B) ? 0 < B ? (0 | Math.min(+Math.floor(B / 4294967296), 4294967295)) >>> 0 : ~~+Math.ceil((B - +(~~B >>> 0)) / 4294967296) >>> 0 : 0)], b[t >> 2] = L[0], b[t + 4 >> 2] = L[1];
  1160. break;
  1161. case "float":
  1162. M[t >> 2] = e;
  1163. break;
  1164. case "double":
  1165. x[t >> 3] = e;
  1166. break;
  1167. default:
  1168. Q("invalid type for setValue: " + n)
  1169. }
  1170. }, e.getValue = function(t, e) {
  1171. switch ("*" === (e = e || "i8").charAt(e.length - 1) && (e = "i32"), e) {
  1172. case "i1":
  1173. case "i8":
  1174. return y[t >> 0];
  1175. case "i16":
  1176. return I[t >> 1];
  1177. case "i32":
  1178. case "i64":
  1179. return b[t >> 2];
  1180. case "float":
  1181. return M[t >> 2];
  1182. case "double":
  1183. return x[t >> 3];
  1184. default:
  1185. Q("invalid type for getValue: " + e)
  1186. }
  1187. return null
  1188. }, e.addFunction = function(t, e) {
  1189. if (!u) {
  1190. u = new WeakMap;
  1191. for (var n = 0; n < E.length; n++) {
  1192. var i = E.get(n);
  1193. i && u.set(i, n)
  1194. }
  1195. }
  1196. if (u.has(t)) t = u.get(t);
  1197. else {
  1198. if (h.length) n = h.pop();
  1199. else {
  1200. try {
  1201. E.grow(1)
  1202. } catch (t) {
  1203. if (!(t instanceof RangeError)) throw t;
  1204. throw "Unable to grow wasm table. Set ALLOW_TABLE_GROWTH."
  1205. }
  1206. n = E.length - 1
  1207. }
  1208. try {
  1209. E.set(n, t)
  1210. } catch (s) {
  1211. if (!(s instanceof TypeError)) throw s;
  1212. if ("function" == typeof WebAssembly.Function) {
  1213. var r = {
  1214. i: "i32",
  1215. j: "i64",
  1216. f: "f32",
  1217. d: "f64"
  1218. },
  1219. a = {
  1220. parameters: [],
  1221. results: "v" == e[0] ? [] : [r[e[0]]]
  1222. };
  1223. for (i = 1; i < e.length; ++i) a.parameters.push(r[e[i]]);
  1224. e = new WebAssembly.Function(a, t)
  1225. } else {
  1226. r = [1, 0, 1, 96], a = e.slice(0, 1), e = e.slice(1);
  1227. var o = {
  1228. i: 127,
  1229. j: 126,
  1230. f: 125,
  1231. d: 124
  1232. };
  1233. for (r.push(e.length), i = 0; i < e.length; ++i) r.push(o[e[i]]);
  1234. "v" == a ? r.push(0) : r = r.concat([1, o[a]]), r[1] = r.length - 2, e = new Uint8Array([0, 97, 115, 109, 1, 0, 0, 0].concat(r, [2, 7, 1, 1, 101, 1, 102, 0, 0, 7, 5, 1, 1, 102, 0, 0])), e = new WebAssembly.Module(e), e = new WebAssembly.Instance(e, {
  1235. e: {
  1236. f: t
  1237. }
  1238. }).exports.f
  1239. }
  1240. E.set(n, e)
  1241. }
  1242. u.set(t, n), t = n
  1243. }
  1244. return t
  1245. }, O = function t() {
  1246. H || K(), H || (O = t)
  1247. }, e.run = K, e.preInit)
  1248. for ("function" == typeof e.preInit && (e.preInit = [e.preInit]); 0 < e.preInit.length;) e.preInit.pop()();
  1249. return K(), t.ready
  1250. });
  1251. t.exports = r
  1252. },
  1253. "./src/node/jsww.worklet.js": function(t, e, n) {
  1254. "use strict";
  1255. n.r(e);
  1256. var i = n("./node_modules/@babel/runtime/helpers/inheritsLoose.js"),
  1257. r = n.n(i),
  1258. a = n("./node_modules/@babel/runtime/helpers/wrapNativeSuper.js"),
  1259. o = n.n(a),
  1260. s = n("./src/lib/libjs-wrapper.ts"),
  1261. l = n("./node_modules/events/events.js"),
  1262. c = n("./src/events.ts"),
  1263. u = n("./src/node/worker-cmd.ts"),
  1264. p = n("./src/utils/log.ts"),
  1265. h = "worklet",
  1266. d = function(t) {
  1267. function e(e) {
  1268. var n;
  1269. return (n = t.call(this, e) || this)._jsww = void 0, n._enabled = void 0, n.port.onmessage = function(t) {
  1270. var e = t.data;
  1271. if (e.cmd === u.WorkerCmd.INIT) {
  1272. p.Log.level(e.logLevel);
  1273. var i = e.lib;
  1274. n._eventEmitter = new l.EventEmitter, n._jsww = new s.default(n._eventEmitter), n._eventEmitter.on(c.default.JSWW_INIT_COMPLETE, (function() {
  1275. n.port.postMessage({
  1276. cmd: u.WorkerCmd.JSWW_INIT_COMPLETE
  1277. })
  1278. })), n._eventEmitter.on(c.default.STATU_CHANGE, (function(t) {
  1279. n.port.postMessage({
  1280. cmd: u.WorkerCmd.STATU_CHANGE,
  1281. enabled: t.enabled
  1282. })
  1283. })), n._jsww.init(i), p.Log.i(h, "init sampleRate: " + e.sampleRate + " channelCount: " + e.channelCount + " bufferSize: " + e.bufferSize), n._updateInfo(e.sampleRate, e.channelCount, e.bufferSize), void 0 !== n._enabled && n._jsww.setEnabled(n._enabled)
  1284. } else e.cmd === u.WorkerCmd.SET_ENABLED ? n._jsww ? n._jsww.setEnabled(e.value) : n._enabled = e.value : e.cmd === u.WorkerCmd.FLUSH && (p.Log.i(h, "flush"), n._inputBufIndex = 0, n._outputBuf && (n._outputBufIndex = n._outputBuf.length))
  1285. }, n
  1286. }
  1287. r()(e, t);
  1288. var n = e.prototype;
  1289. return n.process = function(t, e, n) {
  1290. var i = this,
  1291. r = t[0],
  1292. a = e[0];
  1293. return this._inputBuf ? function() {
  1294. i._channelCount !== r.length && (p.Log.i(h, "channel count change. " + i._channelCount + " -> " + r.length), i._updateInfo(i._sampleRate, r.length, i._bufferSize));
  1295. for (var t = r.length, e = function(e) {
  1296. r[e].forEach((function(n, r) {
  1297. i._inputBuf[i._inputBufIndex + r * t + e] = n
  1298. }))
  1299. }, n = 0; n < t; n++) e(n);
  1300. if (i._inputBufIndex += 128 * t, i._inputBufIndex >= i._inputBuf.length && (i._outputBuf = i._jsww.process(i._inputBuf), i._inputBufIndex = 0, i._outputBufIndex = 0), i._outputBufIndex < i._outputBuf.length)
  1301. if (a.length === t)
  1302. for (var o = 0; o < 128 * a.length; o++) a[i._outputBufIndex % t][Math.floor(o / t)] = i._outputBuf[i._outputBufIndex], i._outputBufIndex++;
  1303. else i._outputBufIndex += 128 * t;
  1304. else a.forEach((function(t) {
  1305. for (var e = 0; e < 128; e++) t[e] = 0
  1306. }))
  1307. }() : r.forEach((function(t, e) {
  1308. t.forEach((function(t, n) {
  1309. a[e][n] = t
  1310. }))
  1311. })), !0
  1312. }, n._initBuf = function(t) {
  1313. p.Log.i(h, "init buffer " + t), this._inputBuf = new Float32Array(t), this._outputBuf = new Float32Array(t), this._inputBufIndex = 0, this._outputBufIndex = t
  1314. }, n._updateInfo = function(t, e, n) {
  1315. this._bufferSize = 128 * Math.floor(n / 128), this._sampleRate = t, this._channelCount = e, this._initBuf(this._bufferSize * e), this._jsww.updateInfo(this._sampleRate, this._channelCount, this._bufferSize)
  1316. }, e
  1317. }(o()(AudioWorkletProcessor));
  1318. registerProcessor("jsww", d)
  1319. },
  1320. "./src/node/worker-cmd.ts": function(t, e, n) {
  1321. "use strict";
  1322. var i;
  1323. n.r(e), n.d(e, "WorkerCmd", (function() {
  1324. return i
  1325. })),
  1326. function(t) {
  1327. t.INIT = "init", t.FLUSH = "flush", t.ERROR = "error", t.SET_ENABLED = "setEnabled", t.STATU_CHANGE = "statuChange", t.DESTROY = "destroy", t.JSWW_INIT_COMPLETE = "jswwInitComplete"
  1328. }(i || (i = {}))
  1329. },
  1330. "./src/utils/log.ts": function(t, e, n) {
  1331. "use strict";
  1332. n.r(e), n.d(e, "Log", (function() {
  1333. return s
  1334. })), n.d(e, "LOG_LEVEL", (function() {
  1335. return i
  1336. }));
  1337. var i, r = "kwai-joysound",
  1338. a = !0;
  1339. function o(t, e) {
  1340. return e && 0 !== e.length || (e = [t], t = ""), t = a ? r + (t ? "::" + t : "") : t || r, e.unshift("[" + t + "] > "), e
  1341. }! function(t) {
  1342. t.LEVEL_ERROR = "e", t.LEVEL_WARN = "w", t.LEVEL_INFO = "i", t.LEVEL_DEBUG = "d", t.LEVEL_VERBOSE = "v"
  1343. }(i || (i = {}));
  1344. var s = function() {
  1345. function t() {}
  1346. return t.level = function(e) {
  1347. switch (t.ENABLE_ERROR = t.ENABLE_WARN = t.ENABLE_INFO = t.ENABLE_DEBUG = t.ENABLE_VERBOSE = !1, e) {
  1348. case i.LEVEL_ERROR:
  1349. t.ENABLE_ERROR = !0;
  1350. break;
  1351. case i.LEVEL_WARN:
  1352. t.ENABLE_ERROR = t.ENABLE_WARN = !0;
  1353. break;
  1354. case i.LEVEL_INFO:
  1355. t.ENABLE_ERROR = t.ENABLE_WARN = t.ENABLE_INFO = !0;
  1356. break;
  1357. case i.LEVEL_DEBUG:
  1358. t.ENABLE_ERROR = t.ENABLE_WARN = t.ENABLE_INFO = t.ENABLE_DEBUG = !0;
  1359. break;
  1360. case i.LEVEL_VERBOSE:
  1361. t.ENABLE_ERROR = t.ENABLE_WARN = t.ENABLE_INFO = t.ENABLE_DEBUG = t.ENABLE_VERBOSE = !0
  1362. }
  1363. }, t.e = function(e) {
  1364. if (t.ENABLE_ERROR) {
  1365. for (var n = arguments.length, i = new Array(n > 1 ? n - 1 : 0), r = 1; r < n; r++) i[r - 1] = arguments[r];
  1366. var a = o(e, i);
  1367. (console.error || console.warn || console.log).apply(console, a)
  1368. }
  1369. }, t.w = function(e) {
  1370. if (t.ENABLE_WARN) {
  1371. for (var n = arguments.length, i = new Array(n > 1 ? n - 1 : 0), r = 1; r < n; r++) i[r - 1] = arguments[r];
  1372. var a = o(e, i);
  1373. (console.warn || console.log).apply(console, a)
  1374. }
  1375. }, t.i = function(e) {
  1376. if (t.ENABLE_INFO) {
  1377. for (var n = arguments.length, i = new Array(n > 1 ? n - 1 : 0), r = 1; r < n; r++) i[r - 1] = arguments[r];
  1378. var a = o(e, i);
  1379. (console.info || console.log).apply(console, a)
  1380. }
  1381. }, t.d = function(e) {
  1382. if (t.ENABLE_DEBUG) {
  1383. for (var n = arguments.length, i = new Array(n > 1 ? n - 1 : 0), r = 1; r < n; r++) i[r - 1] = arguments[r];
  1384. var a = o(e, i);
  1385. (console.debug || console.log).apply(console, a)
  1386. }
  1387. }, t.v = function(e) {
  1388. if (t.ENABLE_VERBOSE) {
  1389. for (var n = arguments.length, i = new Array(n > 1 ? n - 1 : 0), r = 1; r < n; r++) i[r - 1] = arguments[r];
  1390. var a = o(e, i);
  1391. console.log.apply(console, a)
  1392. }
  1393. }, t
  1394. }();
  1395. s.ENABLE_ERROR = !0, s.ENABLE_WARN = !1, s.ENABLE_INFO = !1, s.ENABLE_DEBUG = !1, s.ENABLE_VERBOSE = !1
  1396. },
  1397. "./src/utils/webworkify-webpack.js": function(t, e, n) {
  1398. function i(t) {
  1399. var e = {};
  1400. function n(i) {
  1401. if (e[i]) return e[i].exports;
  1402. var r = e[i] = {
  1403. i: i,
  1404. l: !1,
  1405. exports: {}
  1406. };
  1407. return t[i].call(r.exports, r, r.exports, n), r.l = !0, r.exports
  1408. }
  1409. n.m = t, n.c = e, n.i = function(t) {
  1410. return t
  1411. }, n.d = function(t, e, i) {
  1412. n.o(t, e) || Object.defineProperty(t, e, {
  1413. configurable: !1,
  1414. enumerable: !0,
  1415. get: i
  1416. })
  1417. }, n.r = function(t) {
  1418. Object.defineProperty(t, "__esModule", {
  1419. value: !0
  1420. })
  1421. }, n.n = function(t) {
  1422. var e = t && t.__esModule ? function() {
  1423. return t.default
  1424. } : function() {
  1425. return t
  1426. };
  1427. return n.d(e, "a", e), e
  1428. }, n.o = function(t, e) {
  1429. return Object.prototype.hasOwnProperty.call(t, e)
  1430. }, n.p = "/", n.oe = function(t) {
  1431. throw console.error(t), t
  1432. };
  1433. var i = n(n.s = ENTRY_MODULE);
  1434. return i.default || i
  1435. }
  1436. var r = "[\\.|\\-|\\+|\\w|/|@]+",
  1437. a = "\\(\\s*(/\\*.*?\\*/)?\\s*.*?(" + r + ").*?\\)";
  1438. function o(t) {
  1439. return (t + "").replace(/[.?*+^$[\]\\(){}|-]/g, "\\$&")
  1440. }
  1441. function s(t, e, i) {
  1442. var s = {};
  1443. s[i] = [];
  1444. var l = e.toString(),
  1445. c = l.match(/^function\s?\w*\(\w+,\s*\w+,\s*(\w+)\)/);
  1446. if (!c) return s;
  1447. for (var u, p = c[1], h = new RegExp("(\\\\n|\\W)" + o(p) + a, "g"); u = h.exec(l);) "dll-reference" !== u[3] && s[i].push(u[3]);
  1448. for (h = new RegExp("\\(" + o(p) + '\\("(dll-reference\\s(' + r + '))"\\)\\)' + a, "g"); u = h.exec(l);) t[u[2]] || (s[i].push(u[1]), t[u[2]] = n(u[1]).m), s[u[2]] = s[u[2]] || [], s[u[2]].push(u[4]);
  1449. for (var d, f = Object.keys(s), g = 0; g < f.length; g++)
  1450. for (var A = 0; A < s[f[g]].length; A++) d = s[f[g]][A], isNaN(1 * d) || (s[f[g]][A] = 1 * s[f[g]][A]);
  1451. return s
  1452. }
  1453. function l(t) {
  1454. return Object.keys(t).reduce((function(e, n) {
  1455. return e || t[n].length > 0
  1456. }), !1)
  1457. }
  1458. t.exports = function(t, e) {
  1459. e = e || {};
  1460. var r = {
  1461. main: n.m
  1462. },
  1463. a = e.all ? {
  1464. main: Object.keys(r.main)
  1465. } : function(t, e) {
  1466. for (var n = {
  1467. main: [e]
  1468. }, i = {
  1469. main: []
  1470. }, r = {
  1471. main: {}
  1472. }; l(n);)
  1473. for (var a = Object.keys(n), o = 0; o < a.length; o++) {
  1474. var c = a[o],
  1475. u = n[c].pop();
  1476. if (r[c] = r[c] || {}, !r[c][u] && t[c][u]) {
  1477. r[c][u] = !0, i[c] = i[c] || [], i[c].push(u);
  1478. for (var p = s(t, t[c][u], c), h = Object.keys(p), d = 0; d < h.length; d++) n[h[d]] = n[h[d]] || [], n[h[d]] = n[h[d]].concat(p[h[d]])
  1479. }
  1480. }
  1481. return i
  1482. }(r, t),
  1483. o = "";
  1484. Object.keys(a).filter((function(t) {
  1485. return "main" !== t
  1486. })).forEach((function(t) {
  1487. for (var e = 0; a[t][e];) e++;
  1488. a[t].push(e), r[t][e] = "(function(module, exports, __webpack_require__) { module.exports = __webpack_require__; })", o = o + "var " + t + " = (" + i.toString().replace("ENTRY_MODULE", JSON.stringify(e)) + ")({" + a[t].map((function(e) {
  1489. return JSON.stringify(e) + ": " + r[t][e].toString()
  1490. })).join(",") + "});\n"
  1491. })), o = e.worklet ? o + "((" + i.toString().replace("ENTRY_MODULE", JSON.stringify(t)) + ")({" + a.main.map((function(t) {
  1492. return JSON.stringify(t) + ": " + r.main[t].toString()
  1493. })).join(",") + "}));" : o + "new ((" + i.toString().replace("ENTRY_MODULE", JSON.stringify(t)) + ")({" + a.main.map((function(t) {
  1494. return JSON.stringify(t) + ": " + r.main[t].toString()
  1495. })).join(",") + "}))(self);";
  1496. var c = new window.Blob([o], {
  1497. type: "text/javascript"
  1498. });
  1499. if (e.bare) return c;
  1500. var u = (window.URL || window.webkitURL || window.mozURL || window.msURL).createObjectURL(c),
  1501. p = new window.Worker(u);
  1502. return p.objectURL = u, p
  1503. }
  1504. }
  1505. }).default
  1506. }());