@banou/stub 0.0.18 → 0.0.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/build/.well-known/fkn.json +1 -1
  2. package/build/assets/lib-Preview-B6uZKyhl.js +82 -0
  3. package/build/assets/lib-account-BuVN6Bsx.js +41 -0
  4. package/build/assets/lib-account-Cw8yCZtf.js +2 -0
  5. package/build/assets/lib-api-DLvscoll-DhlBp9Wz.js +312 -0
  6. package/build/assets/lib-api-DVwR-22s.js +2 -0
  7. package/build/assets/lib-build-DEOZ3A7n.js +1846 -0
  8. package/build/assets/lib-compat-D8G4_Lzi.js +860 -0
  9. package/build/assets/lib-custom-media-element-CnANKrGl.js +217 -0
  10. package/build/assets/lib-dash.all.min-CDvdorbj.js +27251 -0
  11. package/build/assets/lib-dist-Dv8d3Kr0.js +7 -0
  12. package/build/assets/lib-dist-S8Gxnnq-.js +12468 -0
  13. package/build/assets/lib-dist-T0QlKbbk.js +18578 -0
  14. package/build/assets/lib-dist-xBHT3Lfz.js +911 -0
  15. package/build/assets/lib-react-BEg4mBBK.js +112 -0
  16. package/build/assets/lib-react-C0OCUIWX.js +434 -0
  17. package/build/assets/lib-react-CAkOlDha.js +367 -0
  18. package/build/assets/lib-react-CGlZXIjl.js +2187 -0
  19. package/build/assets/lib-react-CLVoi_ZM.js +334 -0
  20. package/build/assets/lib-react-DUxKSzCt.js +311 -0
  21. package/build/assets/lib-react-QvmpnEVK.js +334 -0
  22. package/build/assets/lib-react-WTnxAo6F.js +202 -0
  23. package/build/assets/lib-remote-DeY2A2G7.js +416 -0
  24. package/build/assets/lib-remote-DxEZmpd0.js +2 -0
  25. package/build/assets/lib-rolldown-runtime-B1bRi_D7.js +27 -0
  26. package/build/assets/lib-worker-anime-index-Jbe1K3rX.js +1 -0
  27. package/build/assets/lib-worker-anime-seasons-CVM0BQGM.js +1 -0
  28. package/build/assets/lib-worker-index-C7ynIZYg.js +1401 -0
  29. package/build/assets/{main-C8JOinyp.js → main-q4eQ72Te.js} +1 -1
  30. package/build/fkn.json +1 -1
  31. package/build/index.html +1 -1
  32. package/build/index.js +40639 -0
  33. package/fkn.json +1 -1
  34. package/package.json +2 -2
@@ -0,0 +1,112 @@
1
+ import { f as e, i as t } from "./lib-compat-D8G4_Lzi.js";
2
+ import { t as n } from "./lib-custom-media-element-CnANKrGl.js";
3
+ //#region node_modules/dash-video-element/dist/dash-video-element.js
4
+ e();
5
+ var r = class extends n {
6
+ static shadowRootOptions = { ...n.shadowRootOptions };
7
+ static getTemplateHTML = (e) => {
8
+ let { src: t, ...r } = e;
9
+ return n.getTemplateHTML(r);
10
+ };
11
+ #e;
12
+ attributeChangedCallback(e, t, n) {
13
+ e !== "src" && super.attributeChangedCallback(e, t, n), e === "src" && t != n && this.load();
14
+ }
15
+ async load() {
16
+ if (this.#e) this.api.attachSource(this.src);
17
+ else {
18
+ this.#e = !0;
19
+ let e = await import("./lib-dash.all.min-CDvdorbj.js");
20
+ this.api = e.MediaPlayer().create(), this.api.initialize(this.nativeEl, this.src, this.autoplay);
21
+ }
22
+ }
23
+ };
24
+ globalThis.customElements && !globalThis.customElements.get("dash-video") && globalThis.customElements.define("dash-video", r);
25
+ var i = r, a = /* @__PURE__ */ new Set([
26
+ "style",
27
+ "children",
28
+ "ref",
29
+ "key",
30
+ "suppressContentEditableWarning",
31
+ "suppressHydrationWarning",
32
+ "dangerouslySetInnerHTML"
33
+ ]), o = {
34
+ className: "class",
35
+ htmlFor: "for"
36
+ };
37
+ function s(e) {
38
+ return e.toLowerCase();
39
+ }
40
+ function c(e) {
41
+ if (typeof e == "boolean") return e ? "" : void 0;
42
+ if (typeof e != "function" && !(typeof e == "object" && e)) return e;
43
+ }
44
+ function l({ react: e, tagName: t, elementClass: n, events: r, displayName: i, defaultProps: l, toAttributeName: d = s, toAttributeValue: f = c }) {
45
+ let p = Number.parseInt(e.version) >= 19, m = e.forwardRef((i, s) => {
46
+ let m = e.useRef(null), h = e.useRef(/* @__PURE__ */ new Map()), g = {}, _ = {}, v = {}, y = {};
47
+ for (let [e, t] of Object.entries(i)) {
48
+ if (a.has(e)) {
49
+ v[e] = t;
50
+ continue;
51
+ }
52
+ let r = d(o[e] ?? e);
53
+ if (e in n.prototype && !(e in (globalThis.HTMLElement?.prototype ?? {})) && !n.observedAttributes?.some((e) => e === r)) {
54
+ y[e] = t;
55
+ continue;
56
+ }
57
+ if (e.startsWith("on")) {
58
+ g[e] = t;
59
+ continue;
60
+ }
61
+ let i = f(t);
62
+ r && i != null && (_[r] = String(i), p || (v[r] = i)), r && p && (i === c(t) ? v[r] = t : v[r] = i);
63
+ }
64
+ if (typeof window < "u") {
65
+ for (let t in g) {
66
+ let n = g[t], i = t.endsWith("Capture"), a = (r?.[t] ?? t.slice(2).toLowerCase()).slice(0, i ? -7 : void 0);
67
+ e.useLayoutEffect(() => {
68
+ let e = m?.current;
69
+ if (!(!e || typeof n != "function")) return e.addEventListener(a, n, i), () => {
70
+ e.removeEventListener(a, n, i);
71
+ };
72
+ }, [m?.current, n]);
73
+ }
74
+ e.useLayoutEffect(() => {
75
+ if (m.current === null) return;
76
+ let e = /* @__PURE__ */ new Map();
77
+ for (let t in y) u(m.current, t, y[t]), h.current.delete(t), e.set(t, y[t]);
78
+ for (let [e, t] of h.current) u(m.current, e, void 0);
79
+ h.current = e;
80
+ });
81
+ }
82
+ if (typeof window > "u" && n?.getTemplateHTML && n?.shadowRootOptions) {
83
+ let { mode: t, delegatesFocus: r } = n.shadowRootOptions;
84
+ v.children = [e.createElement("template", {
85
+ shadowrootmode: t,
86
+ shadowrootdelegatesfocus: r,
87
+ dangerouslySetInnerHTML: { __html: n.getTemplateHTML(_, i) }
88
+ }), v.children];
89
+ }
90
+ return e.createElement(t, {
91
+ ...l,
92
+ ...v,
93
+ ref: e.useCallback((e) => {
94
+ m.current = e, typeof s == "function" ? s(e) : s !== null && (s.current = e);
95
+ }, [s])
96
+ });
97
+ });
98
+ return m.displayName = i ?? n.name, m;
99
+ }
100
+ function u(e, t, n) {
101
+ e[t] = n, n == null && t in (globalThis.HTMLElement?.prototype ?? {}) && e.removeAttribute(t);
102
+ }
103
+ var d = l({
104
+ react: t,
105
+ tagName: "dash-video",
106
+ elementClass: i,
107
+ toAttributeName(e) {
108
+ return e === "muted" ? "" : e === "defaultMuted" ? "muted" : s(e);
109
+ }
110
+ });
111
+ //#endregion
112
+ export { d as default };
@@ -0,0 +1,434 @@
1
+ import { f as e, i as t } from "./lib-compat-D8G4_Lzi.js";
2
+ //#region node_modules/youtube-video-element/dist/youtube-video-element.js
3
+ e();
4
+ var n = "https://www.youtube.com/embed", r = "https://www.youtube-nocookie.com/embed", i = "https://www.youtube.com/iframe_api", a = "YT", o = "onYouTubeIframeAPIReady", s = /(?:youtu\.be\/|youtube(?:-nocookie)?\.com\/(?:embed\/|v\/|watch\?v=|watch\?.+&v=|shorts\/|live\/))((\w|-){11})/, c = /(?:youtu\.be\/|youtube(?:-nocookie)?\.com\/.*?[?&]list=)([\w_-]+)/;
5
+ function l(e, t = {}) {
6
+ let n = {
7
+ src: u(e, t),
8
+ frameborder: 0,
9
+ width: "100%",
10
+ height: "100%",
11
+ allow: "accelerometer; fullscreen; autoplay; encrypted-media; gyroscope; picture-in-picture"
12
+ };
13
+ return t.config && (n["data-config"] = JSON.stringify(t.config)), `
14
+ <style>
15
+ :host {
16
+ display: inline-block;
17
+ line-height: 0;
18
+ position: relative;
19
+ min-width: 300px;
20
+ min-height: 150px;
21
+ }
22
+ iframe {
23
+ position: absolute;
24
+ top: 0;
25
+ left: 0;
26
+ }
27
+ </style>
28
+ <iframe${f(n)}></iframe>
29
+ `;
30
+ }
31
+ function u(e, t) {
32
+ if (!e.src) return;
33
+ let i = e.src.includes("-nocookie") ? r : n, a = {
34
+ controls: e.controls === "" ? null : 0,
35
+ autoplay: e.autoplay,
36
+ loop: e.loop,
37
+ mute: e.muted,
38
+ playsinline: e.playsinline,
39
+ preload: e.preload ?? "metadata",
40
+ enablejsapi: 1,
41
+ showinfo: 0,
42
+ rel: 0,
43
+ iv_load_policy: 3,
44
+ modestbranding: 1,
45
+ ...t.config
46
+ };
47
+ if (s.test(e.src)) {
48
+ let t = e.src.match(s);
49
+ return `${i}/${t && t[1]}?${m(a)}`;
50
+ }
51
+ let o = e.src.match(c);
52
+ return `${i}?${m({
53
+ listType: "playlist",
54
+ list: o && o[1],
55
+ ...a
56
+ })}`;
57
+ }
58
+ var d = class extends (globalThis.HTMLElement ?? class {}) {
59
+ static getTemplateHTML = l;
60
+ static shadowRootOptions = { mode: "open" };
61
+ static observedAttributes = [
62
+ "autoplay",
63
+ "controls",
64
+ "crossorigin",
65
+ "loop",
66
+ "muted",
67
+ "playsinline",
68
+ "poster",
69
+ "preload",
70
+ "src"
71
+ ];
72
+ loadComplete = new S();
73
+ #loadRequested;
74
+ #hasLoaded;
75
+ #readyState = 0;
76
+ #seeking = !1;
77
+ #seekComplete;
78
+ isLoaded = !1;
79
+ #error = null;
80
+ #config = null;
81
+ constructor() {
82
+ super(), this.#upgradeProperty("config");
83
+ }
84
+ get config() {
85
+ return this.#config;
86
+ }
87
+ set config(e) {
88
+ this.#config = e;
89
+ }
90
+ async load() {
91
+ if (this.#loadRequested) return;
92
+ this.shadowRoot || this.attachShadow({ mode: "open" });
93
+ let e = !this.#hasLoaded;
94
+ this.#hasLoaded && (this.loadComplete = new S(), this.isLoaded = !1), this.#hasLoaded = !0, await (this.#loadRequested = Promise.resolve()), this.#loadRequested = null, this.#readyState = 0, this.dispatchEvent(new Event("emptied"));
95
+ let t = this.api;
96
+ if (this.api = null, !this.src) {
97
+ t?.destroy();
98
+ return;
99
+ }
100
+ this.dispatchEvent(new Event("loadstart"));
101
+ let n = this.shadowRoot.querySelector("iframe"), r = g(this.attributes);
102
+ e && n && (this.#config = JSON.parse(n.getAttribute("data-config") || "{}")), (!n?.src || n.src !== u(r, this)) && (this.shadowRoot.innerHTML = l(r, this), n = this.shadowRoot.querySelector("iframe"));
103
+ let s = await v(i, a, o);
104
+ this.api = new s.Player(n, { events: {
105
+ onReady: () => {
106
+ this.#readyState = 1, this.dispatchEvent(new Event("loadedmetadata")), this.dispatchEvent(new Event("durationchange")), this.dispatchEvent(new Event("volumechange")), this.dispatchEvent(new Event("loadcomplete")), this.isLoaded = !0, this.loadComplete.resolve();
107
+ },
108
+ onError: (e) => {
109
+ console.error(e), this.#error = {
110
+ code: e.data,
111
+ message: `YouTube iframe player error #${e.data}; visit https://developers.google.com/youtube/iframe_api_reference#onError for the full error message.`
112
+ }, this.dispatchEvent(new Event("error"));
113
+ }
114
+ } });
115
+ let c = !1;
116
+ this.api.addEventListener("onStateChange", (e) => {
117
+ var t;
118
+ let n = e.data;
119
+ if ((n === s.PlayerState.PLAYING || n === s.PlayerState.BUFFERING) && (c || (c = !0, this.dispatchEvent(new Event("play")))), n === s.PlayerState.PLAYING) this.seeking && (this.#seeking = !1, (t = this.#seekComplete) == null || t.resolve(), this.dispatchEvent(new Event("seeked"))), this.#readyState = 3, this.dispatchEvent(new Event("playing"));
120
+ else if (n === s.PlayerState.PAUSED) {
121
+ let e = Math.abs(this.currentTime - d);
122
+ !this.seeking && e > .1 && (this.#seeking = !0, this.dispatchEvent(new Event("seeking"))), c = !1, this.dispatchEvent(new Event("pause"));
123
+ }
124
+ n === s.PlayerState.ENDED && (c = !1, this.dispatchEvent(new Event("pause")), this.dispatchEvent(new Event("ended")), this.loop && this.play());
125
+ }), this.api.addEventListener("onPlaybackRateChange", () => {
126
+ this.dispatchEvent(new Event("ratechange"));
127
+ }), this.api.addEventListener("onVolumeChange", () => {
128
+ this.dispatchEvent(new Event("volumechange"));
129
+ }), this.api.addEventListener("onVideoProgress", () => {
130
+ this.dispatchEvent(new Event("timeupdate"));
131
+ }), await this.loadComplete;
132
+ let d = 0;
133
+ setInterval(() => {
134
+ var e;
135
+ let t = Math.abs(this.currentTime - d), n = this.buffered.end(this.buffered.length - 1);
136
+ this.seeking && n > .1 ? (this.#seeking = !1, (e = this.#seekComplete) == null || e.resolve(), this.dispatchEvent(new Event("seeked"))) : !this.seeking && t > .1 && (this.#seeking = !0, this.dispatchEvent(new Event("seeking"))), d = this.currentTime;
137
+ }, 50);
138
+ let f, p = setInterval(() => {
139
+ let e = this.buffered.end(this.buffered.length - 1);
140
+ e >= this.duration && (clearInterval(p), this.#readyState = 4), f != e && (f = e, this.dispatchEvent(new Event("progress")));
141
+ }, 100);
142
+ }
143
+ async attributeChangedCallback(e, t, n) {
144
+ if (t !== n) switch (e) {
145
+ case "src":
146
+ case "autoplay":
147
+ case "controls":
148
+ case "loop":
149
+ case "playsinline": this.load();
150
+ }
151
+ }
152
+ async play() {
153
+ var e;
154
+ return this.#seekComplete = null, await this.loadComplete, (e = this.api) == null || e.playVideo(), x(this);
155
+ }
156
+ async pause() {
157
+ return await this.loadComplete, this.api?.pauseVideo();
158
+ }
159
+ get seeking() {
160
+ return this.#seeking;
161
+ }
162
+ get readyState() {
163
+ return this.#readyState;
164
+ }
165
+ get src() {
166
+ return this.getAttribute("src");
167
+ }
168
+ set src(e) {
169
+ this.src != e && this.setAttribute("src", e);
170
+ }
171
+ get error() {
172
+ return this.#error;
173
+ }
174
+ get paused() {
175
+ var e;
176
+ return this.isLoaded ? [
177
+ -1,
178
+ 0,
179
+ 2,
180
+ 5
181
+ ].includes(((e = this.api)?.getPlayerState)?.call(e)) : !this.autoplay;
182
+ }
183
+ get duration() {
184
+ var e;
185
+ return ((e = this.api)?.getDuration)?.call(e) ?? NaN;
186
+ }
187
+ get autoplay() {
188
+ return this.hasAttribute("autoplay");
189
+ }
190
+ set autoplay(e) {
191
+ this.autoplay != e && this.toggleAttribute("autoplay", !!e);
192
+ }
193
+ get buffered() {
194
+ if (!this.isLoaded) return C();
195
+ let e = this.api?.getVideoLoadedFraction() * this.api?.getDuration();
196
+ return e > 0 ? C(0, e) : C();
197
+ }
198
+ get controls() {
199
+ return this.hasAttribute("controls");
200
+ }
201
+ set controls(e) {
202
+ this.controls != e && this.toggleAttribute("controls", !!e);
203
+ }
204
+ get currentTime() {
205
+ var e;
206
+ return ((e = this.api)?.getCurrentTime)?.call(e) ?? 0;
207
+ }
208
+ set currentTime(e) {
209
+ this.currentTime != e && (this.#seekComplete = new S(), this.loadComplete.then(() => {
210
+ var t, n;
211
+ (t = this.api) == null || t.seekTo(e, !0), this.paused && ((n = this.#seekComplete) == null || n.then(() => {
212
+ var e;
213
+ this.#seekComplete && ((e = this.api) == null || e.pauseVideo());
214
+ }));
215
+ }));
216
+ }
217
+ set defaultMuted(e) {
218
+ this.defaultMuted != e && this.toggleAttribute("muted", !!e);
219
+ }
220
+ get defaultMuted() {
221
+ return this.hasAttribute("muted");
222
+ }
223
+ get loop() {
224
+ return this.hasAttribute("loop");
225
+ }
226
+ set loop(e) {
227
+ this.loop != e && this.toggleAttribute("loop", !!e);
228
+ }
229
+ set muted(e) {
230
+ this.muted != e && this.loadComplete.then(() => {
231
+ var t, n;
232
+ e ? (t = this.api) == null || t.mute() : (n = this.api) == null || n.unMute();
233
+ });
234
+ }
235
+ get muted() {
236
+ var e;
237
+ return this.isLoaded ? ((e = this.api)?.isMuted)?.call(e) : this.defaultMuted;
238
+ }
239
+ get playbackRate() {
240
+ var e;
241
+ return ((e = this.api)?.getPlaybackRate)?.call(e) ?? 1;
242
+ }
243
+ set playbackRate(e) {
244
+ this.playbackRate != e && this.loadComplete.then(() => {
245
+ var t;
246
+ (t = this.api) == null || t.setPlaybackRate(e);
247
+ });
248
+ }
249
+ get playsInline() {
250
+ return this.hasAttribute("playsinline");
251
+ }
252
+ set playsInline(e) {
253
+ this.playsInline != e && this.toggleAttribute("playsinline", !!e);
254
+ }
255
+ get poster() {
256
+ return this.getAttribute("poster");
257
+ }
258
+ set poster(e) {
259
+ this.poster != e && this.setAttribute("poster", `${e}`);
260
+ }
261
+ set volume(e) {
262
+ this.volume != e && this.loadComplete.then(() => {
263
+ var t;
264
+ (t = this.api) == null || t.setVolume(e * 100);
265
+ });
266
+ }
267
+ get volume() {
268
+ return this.isLoaded ? this.api?.getVolume() / 100 : 1;
269
+ }
270
+ #upgradeProperty(e) {
271
+ if (Object.prototype.hasOwnProperty.call(this, e)) {
272
+ let t = this[e];
273
+ delete this[e], this[e] = t;
274
+ }
275
+ }
276
+ };
277
+ function f(e) {
278
+ let t = "";
279
+ for (let n in e) {
280
+ let r = e[n];
281
+ r === "" ? t += ` ${p(n)}` : t += ` ${p(n)}="${p(`${r}`)}"`;
282
+ }
283
+ return t;
284
+ }
285
+ function p(e) {
286
+ return e.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&apos;").replace(/`/g, "&#x60;");
287
+ }
288
+ function m(e) {
289
+ return String(new URLSearchParams(h(e)));
290
+ }
291
+ function h(e) {
292
+ let t = {};
293
+ for (let n in e) {
294
+ let r = e[n];
295
+ r === !0 || r === "" ? t[n] = 1 : r === !1 ? t[n] = 0 : r != null && (t[n] = r);
296
+ }
297
+ return t;
298
+ }
299
+ function g(e) {
300
+ let t = {};
301
+ for (let n of e) t[n.name] = n.value;
302
+ return t;
303
+ }
304
+ var _ = {};
305
+ async function v(e, t, n) {
306
+ return _[e] ? _[e] : t && self[t] ? (await y(0), self[t]) : _[e] = new Promise(function(r, i) {
307
+ let a = document.createElement("script");
308
+ a.src = e;
309
+ let o = () => r(self[t]);
310
+ n && (self[n] = o), a.onload = () => !n && o(), a.onerror = i, document.head.append(a);
311
+ });
312
+ }
313
+ var y = (e) => new Promise((t) => setTimeout(t, e));
314
+ function b(e) {
315
+ return (...t) => new Promise((n) => {
316
+ e(...t, (...e) => {
317
+ e.length > 1 ? n(e) : n(e[0]);
318
+ });
319
+ });
320
+ }
321
+ function x(e) {
322
+ return b((t, n) => {
323
+ let r;
324
+ e.addEventListener(t, r = () => {
325
+ e.removeEventListener(t, r), n();
326
+ });
327
+ })("playing");
328
+ }
329
+ var S = class extends Promise {
330
+ constructor(e = () => {}) {
331
+ let t, n;
332
+ super((r, i) => {
333
+ e(r, i), t = r, n = i;
334
+ }), this.resolve = t, this.reject = n;
335
+ }
336
+ };
337
+ function C(e, t) {
338
+ return w(Array.isArray(e) ? e : e == null || t == null || e === 0 && t === 0 ? [[0, 0]] : [[e, t]]);
339
+ }
340
+ function w(e) {
341
+ return Object.defineProperties(e, {
342
+ start: { value: (t) => e[t][0] },
343
+ end: { value: (t) => e[t][1] }
344
+ }), e;
345
+ }
346
+ globalThis.customElements && !globalThis.customElements.get("youtube-video") && globalThis.customElements.define("youtube-video", d);
347
+ var T = d, E = /* @__PURE__ */ new Set([
348
+ "style",
349
+ "children",
350
+ "ref",
351
+ "key",
352
+ "suppressContentEditableWarning",
353
+ "suppressHydrationWarning",
354
+ "dangerouslySetInnerHTML"
355
+ ]), D = {
356
+ className: "class",
357
+ htmlFor: "for"
358
+ };
359
+ function O(e) {
360
+ return e.toLowerCase();
361
+ }
362
+ function k(e) {
363
+ if (typeof e == "boolean") return e ? "" : void 0;
364
+ if (typeof e != "function" && !(typeof e == "object" && e)) return e;
365
+ }
366
+ function A({ react: e, tagName: t, elementClass: n, events: r, displayName: i, defaultProps: a, toAttributeName: o = O, toAttributeValue: s = k }) {
367
+ let c = Number.parseInt(e.version) >= 19, l = e.forwardRef((i, l) => {
368
+ let u = e.useRef(null), d = e.useRef(/* @__PURE__ */ new Map()), f = {}, p = {}, m = {}, h = {};
369
+ for (let [e, t] of Object.entries(i)) {
370
+ if (E.has(e)) {
371
+ m[e] = t;
372
+ continue;
373
+ }
374
+ let r = o(D[e] ?? e);
375
+ if (e in n.prototype && !(e in (globalThis.HTMLElement?.prototype ?? {})) && !n.observedAttributes?.some((e) => e === r)) {
376
+ h[e] = t;
377
+ continue;
378
+ }
379
+ if (e.startsWith("on")) {
380
+ f[e] = t;
381
+ continue;
382
+ }
383
+ let i = s(t);
384
+ r && i != null && (p[r] = String(i), c || (m[r] = i)), r && c && (i === k(t) ? m[r] = t : m[r] = i);
385
+ }
386
+ if (typeof window < "u") {
387
+ for (let t in f) {
388
+ let n = f[t], i = t.endsWith("Capture"), a = (r?.[t] ?? t.slice(2).toLowerCase()).slice(0, i ? -7 : void 0);
389
+ e.useLayoutEffect(() => {
390
+ let e = u?.current;
391
+ if (!(!e || typeof n != "function")) return e.addEventListener(a, n, i), () => {
392
+ e.removeEventListener(a, n, i);
393
+ };
394
+ }, [u?.current, n]);
395
+ }
396
+ e.useLayoutEffect(() => {
397
+ if (u.current === null) return;
398
+ let e = /* @__PURE__ */ new Map();
399
+ for (let t in h) j(u.current, t, h[t]), d.current.delete(t), e.set(t, h[t]);
400
+ for (let [e, t] of d.current) j(u.current, e, void 0);
401
+ d.current = e;
402
+ });
403
+ }
404
+ if (typeof window > "u" && n?.getTemplateHTML && n?.shadowRootOptions) {
405
+ let { mode: t, delegatesFocus: r } = n.shadowRootOptions;
406
+ m.children = [e.createElement("template", {
407
+ shadowrootmode: t,
408
+ shadowrootdelegatesfocus: r,
409
+ dangerouslySetInnerHTML: { __html: n.getTemplateHTML(p, i) }
410
+ }), m.children];
411
+ }
412
+ return e.createElement(t, {
413
+ ...a,
414
+ ...m,
415
+ ref: e.useCallback((e) => {
416
+ u.current = e, typeof l == "function" ? l(e) : l !== null && (l.current = e);
417
+ }, [l])
418
+ });
419
+ });
420
+ return l.displayName = i ?? n.name, l;
421
+ }
422
+ function j(e, t, n) {
423
+ e[t] = n, n == null && t in (globalThis.HTMLElement?.prototype ?? {}) && e.removeAttribute(t);
424
+ }
425
+ var M = A({
426
+ react: t,
427
+ tagName: "youtube-video",
428
+ elementClass: T,
429
+ toAttributeName(e) {
430
+ return e === "muted" ? "" : e === "defaultMuted" ? "muted" : O(e);
431
+ }
432
+ });
433
+ //#endregion
434
+ export { M as default };