tmg-media-player 0.0.9 → 0.0.10
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.
- package/dist/{chunk-IL5VRN3J.js → chunk-2KWQ2BJA.js} +4 -5
- package/dist/chunk-2KWQ2BJA.js.map +1 -0
- package/dist/{chunk-RSR33DL7.js → chunk-2Q353YGH.js} +49 -49
- package/dist/{chunk-DYYDBZVH.js → chunk-52QBFKDH.js} +2 -2
- package/dist/{chunk-X5N2SOX5.js → chunk-7P37TRZ5.js} +2 -2
- package/dist/{chunk-2BAQUGMN.js → chunk-CQOLKYPW.js} +4 -4
- package/dist/{chunk-JKKHPOIM.js → chunk-DK6YNSCO.js} +92 -92
- package/dist/{chunk-KMGCIVPM.js → chunk-E7AZFMQX.js} +17 -17
- package/dist/{chunk-S2QOATBM.js → chunk-F3PAGLUZ.js} +4 -4
- package/dist/{chunk-LSRNWSOS.js → chunk-IUSUPM45.js} +7 -7
- package/dist/{chunk-JB26PVHJ.js → chunk-JBAZVIWT.js} +2 -2
- package/dist/{chunk-PWHHD7T3.js → chunk-JC6UPKIA.js} +2 -2
- package/dist/{chunk-2TLAKFB7.js → chunk-OCU2ZQZV.js} +32 -32
- package/dist/{chunk-4HLCTO2J.js → chunk-POYDDFOW.js} +19 -19
- package/dist/{chunk-RNSCVEVT.js → chunk-SHDHGTLI.js} +47 -47
- package/dist/{chunk-RXMOYOS7.js → chunk-SNL5HLFG.js} +5 -5
- package/dist/{chunk-E5EK4GIX.js → chunk-VZVGUEAL.js} +4 -4
- package/dist/{chunk-UUG777H2.js → chunk-YFIWARZK.js} +4 -4
- package/dist/{chunk-Z4KCSX56.js → chunk-YLPGT7GW.js} +2 -2
- package/dist/{chunk-FL3K4GMT.js → chunk-YOMNGHJS.js} +111 -111
- package/dist/{chunk-63OCIEHV.js → chunk-ZLWOCMYX.js} +2 -2
- package/dist/chunk-ZLWOCMYX.js.map +1 -0
- package/dist/{chunk-SOIQEVRA.js → chunk-ZPYCRCIN.js} +7 -7
- package/dist/components/controls/airplay.js +1 -1
- package/dist/components/controls/backward10.js +1 -1
- package/dist/components/controls/bignext.js +1 -1
- package/dist/components/controls/bigplaypause.js +1 -1
- package/dist/components/controls/bigprevious.js +1 -1
- package/dist/components/controls/brightness/index.js +1 -1
- package/dist/components/controls/captions.js +1 -1
- package/dist/components/controls/capture.js +1 -1
- package/dist/components/controls/cast.js +1 -1
- package/dist/components/controls/expandminiplayer.js +1 -1
- package/dist/components/controls/forward10.js +1 -1
- package/dist/components/controls/fullscreen.js +1 -1
- package/dist/components/controls/fullscreenlock.js +1 -1
- package/dist/components/controls/fullscreenorientation.js +1 -1
- package/dist/components/controls/next.js +1 -1
- package/dist/components/controls/objectfit.js +1 -1
- package/dist/components/controls/pictureinpicture.js +1 -1
- package/dist/components/controls/playpause.js +1 -1
- package/dist/components/controls/previous.js +1 -1
- package/dist/components/controls/removeminiplayer.js +1 -1
- package/dist/components/controls/settings.js +1 -1
- package/dist/components/controls/theater.js +1 -1
- package/dist/components/controls/volume/index.js +1 -1
- package/dist/components/holders/airplayplaceholder.js +1 -1
- package/dist/components/holders/castplaceholder.js +1 -1
- package/dist/components/holders/pipplaceholder.js +3 -3
- package/dist/components/icons/z-register.js +22 -22
- package/dist/components/notifiers/airplay.js +1 -1
- package/dist/components/notifiers/brightness.js +1 -1
- package/dist/components/notifiers/captions.js +1 -1
- package/dist/components/notifiers/capture.js +1 -1
- package/dist/components/notifiers/cast.js +1 -1
- package/dist/components/notifiers/fastplay.js +1 -1
- package/dist/components/notifiers/fwdbwd.js +1 -1
- package/dist/components/notifiers/objectfit.js +1 -1
- package/dist/components/notifiers/playbackrate.js +1 -1
- package/dist/components/notifiers/playpause.js +1 -1
- package/dist/components/notifiers/prevnext.js +1 -1
- package/dist/components/notifiers/scrub.js +1 -1
- package/dist/components/notifiers/timer.js +1 -1
- package/dist/components/notifiers/touchbrightness.js +1 -1
- package/dist/components/notifiers/touchvolume.js +1 -1
- package/dist/components/notifiers/volume.js +1 -1
- package/dist/components/notifiers/z-register.js +8 -8
- package/dist/components/screenlock.js +1 -1
- package/dist/components/z-register.js +13 -13
- package/dist/core/controller.cjs +8 -9
- package/dist/core/controller.cjs.map +1 -1
- package/dist/core/controller.js +4 -4
- package/dist/index.cjs +3 -4
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +5 -7
- package/dist/init.cjs +3 -3
- package/dist/init.cjs.map +1 -1
- package/dist/init.js +5 -5
- package/dist/plugs/base/index.js +1 -1
- package/dist/plugs/base/slider.js +1 -1
- package/dist/plugs/main/disabled/index.js +1 -1
- package/dist/plugs/main/lightState/index.js +1 -1
- package/dist/plugs/main/playlist/index.js +3 -3
- package/dist/plugs/main/skeleton/index.js +1 -1
- package/dist/plugs/menus/z-register.js +17 -17
- package/dist/plugs/settings/airplay/index.js +1 -1
- package/dist/plugs/settings/ambience/index.js +1 -1
- package/dist/plugs/settings/auto/index.js +3 -3
- package/dist/plugs/settings/brightness/index.js +1 -1
- package/dist/plugs/settings/captions/index.js +5 -5
- package/dist/plugs/settings/cast/index.js +1 -1
- package/dist/plugs/settings/controlPanel/draggable.js +3 -3
- package/dist/plugs/settings/controlPanel/index.js +3 -3
- package/dist/plugs/settings/css/index.js +1 -1
- package/dist/plugs/settings/errors/index.js +1 -1
- package/dist/plugs/settings/fastPlay/index.js +1 -1
- package/dist/plugs/settings/frame/index.js +3 -3
- package/dist/plugs/settings/gesture/base.js +3 -3
- package/dist/plugs/settings/gesture/index.js +3 -3
- package/dist/plugs/settings/gesture/touch.js +3 -3
- package/dist/plugs/settings/gesture/wheel.js +3 -3
- package/dist/plugs/settings/keys/index.js +5 -5
- package/dist/plugs/settings/locked/index.js +1 -1
- package/dist/plugs/settings/metadata/index.js +1 -1
- package/dist/plugs/settings/modes/fullscreen.cjs +0 -6
- package/dist/plugs/settings/modes/fullscreen.cjs.map +1 -1
- package/dist/plugs/settings/modes/fullscreen.js +5 -5
- package/dist/plugs/settings/modes/index.cjs +0 -4
- package/dist/plugs/settings/modes/index.cjs.map +1 -1
- package/dist/plugs/settings/modes/index.js +5 -5
- package/dist/plugs/settings/modes/miniplayer.cjs +0 -7
- package/dist/plugs/settings/modes/miniplayer.cjs.map +1 -1
- package/dist/plugs/settings/modes/miniplayer.js +5 -5
- package/dist/plugs/settings/modes/pictureInPicture.cjs +0 -5
- package/dist/plugs/settings/modes/pictureInPicture.cjs.map +1 -1
- package/dist/plugs/settings/modes/pictureInPicture.js +5 -5
- package/dist/plugs/settings/modes/theater.cjs +0 -7
- package/dist/plugs/settings/modes/theater.cjs.map +1 -1
- package/dist/plugs/settings/modes/theater.js +5 -5
- package/dist/plugs/settings/notifiers/index.js +1 -1
- package/dist/plugs/settings/objectFit/index.js +3 -3
- package/dist/plugs/settings/overlay/index.js +1 -1
- package/dist/plugs/settings/persist/index.js +1 -1
- package/dist/plugs/settings/playbackRate/index.js +1 -1
- package/dist/plugs/settings/poster/index.js +1 -1
- package/dist/plugs/settings/settingsView/index.cjs +1 -1
- package/dist/plugs/settings/settingsView/index.cjs.map +1 -1
- package/dist/plugs/settings/settingsView/index.js +3 -3
- package/dist/plugs/settings/settingsView/menu/index.cjs +1 -1
- package/dist/plugs/settings/settingsView/menu/index.cjs.map +1 -1
- package/dist/plugs/settings/settingsView/menu/index.js +2 -2
- package/dist/plugs/settings/settingsView/menu/panel/main.js +1 -1
- package/dist/plugs/settings/settingsView/menu/panel/sub.js +1 -1
- package/dist/plugs/settings/settingsView/menu/widgets/base.js +1 -1
- package/dist/plugs/settings/settingsView/menu/widgets/button.js +1 -1
- package/dist/plugs/settings/settingsView/menu/widgets/color.js +1 -1
- package/dist/plugs/settings/settingsView/menu/widgets/dragselect.js +1 -1
- package/dist/plugs/settings/settingsView/menu/widgets/group.js +1 -1
- package/dist/plugs/settings/settingsView/menu/widgets/index.js +1 -1
- package/dist/plugs/settings/settingsView/menu/widgets/input.js +1 -1
- package/dist/plugs/settings/settingsView/menu/widgets/limits.js +1 -1
- package/dist/plugs/settings/settingsView/menu/widgets/range.js +1 -1
- package/dist/plugs/settings/settingsView/menu/widgets/select.js +1 -1
- package/dist/plugs/settings/settingsView/menu/widgets/toggle.js +1 -1
- package/dist/plugs/settings/sleepTimer/index.js +4 -4
- package/dist/plugs/settings/time/index.js +3 -3
- package/dist/plugs/settings/timeTravel/index.cjs +5 -10
- package/dist/plugs/settings/timeTravel/index.cjs.map +1 -1
- package/dist/plugs/settings/timeTravel/index.js +5 -5
- package/dist/plugs/settings/toasts/index.js +1 -1
- package/dist/plugs/settings/voice/index.js +1 -1
- package/dist/plugs/settings/volume/index.cjs +0 -4
- package/dist/plugs/settings/volume/index.cjs.map +1 -1
- package/dist/plugs/settings/volume/index.js +5 -5
- package/dist/plugs/z-register.cjs +6 -9
- package/dist/plugs/z-register.cjs.map +1 -1
- package/dist/plugs/z-register.js +43 -43
- package/dist/super/components/icons.js +47 -47
- package/dist/super/components/index.js +126 -126
- package/dist/super/components/notifiers.js +18 -18
- package/dist/super/consts.js +7 -7
- package/dist/super/plugs/index.cjs +1 -4
- package/dist/super/plugs/index.cjs.map +1 -1
- package/dist/super/plugs/index.js +114 -114
- package/dist/super/plugs/menus.js +39 -39
- package/dist/super/techs.js +6 -6
- package/dist/super.cjs +4 -5
- package/dist/super.cjs.map +1 -1
- package/dist/super.global.js +4 -5
- package/dist/super.global.js.map +1 -1
- package/dist/super.js +157 -159
- package/dist/techs/z-register.js +6 -6
- package/dist/tools/player.cjs +8 -9
- package/dist/tools/player.cjs.map +1 -1
- package/dist/tools/player.js +4 -4
- package/dist/tools/runtime.cjs +3 -4
- package/dist/tools/runtime.cjs.map +1 -1
- package/dist/tools/runtime.js +4 -6
- package/package.json +1 -1
- package/dist/chunk-63OCIEHV.js.map +0 -1
- package/dist/chunk-IL5VRN3J.js.map +0 -1
- /package/dist/{chunk-RSR33DL7.js.map → chunk-2Q353YGH.js.map} +0 -0
- /package/dist/{chunk-DYYDBZVH.js.map → chunk-52QBFKDH.js.map} +0 -0
- /package/dist/{chunk-X5N2SOX5.js.map → chunk-7P37TRZ5.js.map} +0 -0
- /package/dist/{chunk-2BAQUGMN.js.map → chunk-CQOLKYPW.js.map} +0 -0
- /package/dist/{chunk-JKKHPOIM.js.map → chunk-DK6YNSCO.js.map} +0 -0
- /package/dist/{chunk-KMGCIVPM.js.map → chunk-E7AZFMQX.js.map} +0 -0
- /package/dist/{chunk-S2QOATBM.js.map → chunk-F3PAGLUZ.js.map} +0 -0
- /package/dist/{chunk-LSRNWSOS.js.map → chunk-IUSUPM45.js.map} +0 -0
- /package/dist/{chunk-JB26PVHJ.js.map → chunk-JBAZVIWT.js.map} +0 -0
- /package/dist/{chunk-PWHHD7T3.js.map → chunk-JC6UPKIA.js.map} +0 -0
- /package/dist/{chunk-2TLAKFB7.js.map → chunk-OCU2ZQZV.js.map} +0 -0
- /package/dist/{chunk-4HLCTO2J.js.map → chunk-POYDDFOW.js.map} +0 -0
- /package/dist/{chunk-RNSCVEVT.js.map → chunk-SHDHGTLI.js.map} +0 -0
- /package/dist/{chunk-RXMOYOS7.js.map → chunk-SNL5HLFG.js.map} +0 -0
- /package/dist/{chunk-E5EK4GIX.js.map → chunk-VZVGUEAL.js.map} +0 -0
- /package/dist/{chunk-UUG777H2.js.map → chunk-YFIWARZK.js.map} +0 -0
- /package/dist/{chunk-Z4KCSX56.js.map → chunk-YLPGT7GW.js.map} +0 -0
- /package/dist/{chunk-FL3K4GMT.js.map → chunk-YOMNGHJS.js.map} +0 -0
- /package/dist/{chunk-SOIQEVRA.js.map → chunk-ZPYCRCIN.js.map} +0 -0
|
@@ -60,7 +60,6 @@ var flagMutationId;
|
|
|
60
60
|
var AUDIO_CONTEXT = null;
|
|
61
61
|
var AUDIO_LIMITER = null;
|
|
62
62
|
var IS_DOC_TRANSIENT = false;
|
|
63
|
-
var STATE_BUILD = { readyState: 0, audioContextReady: !!AUDIO_CONTEXT, mediaIntersecting: true, mediaParentIntersecting: true, dimensions: { container: { width: 0, height: 0, tier: "x" }, pseudoContainer: { width: 0, height: 0, tier: "x" }, window: { width: win?.innerWidth, height: win?.innerHeight } }, screenOrientation: { type: win?.screen?.orientation?.type ?? "", angle: win?.screen?.orientation?.angle ?? win?.orientation ?? 0 }, docVisibilityState: win?.document.visibilityState, docInFullscreen: queryFullscreen() };
|
|
64
63
|
var Controllers = [];
|
|
65
64
|
function handleVidMutation(mutations) {
|
|
66
65
|
for (const mutation of mutations) {
|
|
@@ -198,7 +197,7 @@ var Controller = class {
|
|
|
198
197
|
guardAllMethods(this, this.guard);
|
|
199
198
|
const defs = merge(getMediaReport(medium), build.media);
|
|
200
199
|
this.config = reactive(volatile(build), { referenceTracking: true, smartCloning: true, debug: false });
|
|
201
|
-
this.state = reactive(
|
|
200
|
+
this.state = reactive({ readyState: 0, audioContextReady: !!AUDIO_CONTEXT, mediaIntersecting: true, mediaParentIntersecting: true, dimensions: { container: { width: 0, height: 0, tier: "x" }, pseudoContainer: { width: 0, height: 0, tier: "x" }, window: { width: window.innerWidth, height: window.innerHeight } }, screenOrientation: { type: screen.orientation?.type ?? "", angle: screen.orientation?.angle ?? 0 }, docVisibilityState: document.visibilityState, docInFullscreen: queryFullscreen() }, { debug: false });
|
|
202
201
|
this.state.watch("readyState", (v) => (this.payload.readyState = v, this.payload.initialized = v > 0, this.payload.wired = v > 1, this.payload.destroyed = v < 0), { signal: this.signal });
|
|
203
202
|
this.media = reactive({ intent: volatile(intent(defs.intent)), state: defs.state, status: defs.status, settings: volatile(intent(defs.settings)), type: medium.tagName.toLowerCase(), tech: inert({}), features: {}, element: medium, pseudoElement: createEl(medium.tagName.toLowerCase()), container: createEl("div"), pseudoContainer: createEl("div") }, { debug: false, crossRealms: true });
|
|
204
203
|
this.media.set("tech", (t) => inert(t), { signal: this.signal });
|
|
@@ -307,7 +306,8 @@ var Controller = class {
|
|
|
307
306
|
step.op === "toggle" ? setPath(root, step.path, !cur) : step.op === "increment" ? setPath(root, step.path, cur + (step.value ?? 1)) : step.op === "decrement" ? setPath(root, step.path, cur - (step.value ?? 1)) : setPath(root, step.path, step.value);
|
|
308
307
|
}
|
|
309
308
|
}
|
|
310
|
-
|
|
309
|
+
const can = !action.gates?.some((g) => this.media.features[g] === false);
|
|
310
|
+
can && action.notify && this.plug("settings.notifiers")?.notify(action.notify), action.fn?.(...args), can && action.toast && this.plug("settings.toasts")?.toast?.((isFunc(action.toast.render) ? action.toast.render() : action.toast.render) || `Executed ${action.label ?? action.id}`, action.toast);
|
|
311
311
|
}, action.label ?? action.id);
|
|
312
312
|
}
|
|
313
313
|
isLogicPath(path) {
|
|
@@ -437,7 +437,6 @@ export {
|
|
|
437
437
|
AUDIO_CONTEXT,
|
|
438
438
|
AUDIO_LIMITER,
|
|
439
439
|
IS_DOC_TRANSIENT,
|
|
440
|
-
STATE_BUILD,
|
|
441
440
|
Controllers,
|
|
442
441
|
handleVidMutation,
|
|
443
442
|
handleDOMMutation,
|
|
@@ -448,4 +447,4 @@ export {
|
|
|
448
447
|
init,
|
|
449
448
|
Controller
|
|
450
449
|
};
|
|
451
|
-
//# sourceMappingURL=chunk-
|
|
450
|
+
//# sourceMappingURL=chunk-2KWQ2BJA.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/ts/tools/runtime.ts","../src/ts/core/controller.ts","../src/ts/tools/player.ts"],"sourcesContent":["import { Player } from \"./player\";\r\nimport { type Controller } from \"@core/controller\";\r\nimport { type Dimensions } from \"@defs/generics\";\r\nimport { setTimeout } from \"@utils/fn\";\r\nimport { queryFullscreen, observeMutation } from \"@utils/dom\";\r\nconst win = \"undefined\" !== typeof window ? window : undefined;\r\n\r\n// Defines states explicitly managed by the TMG Environment Observers\r\nexport interface CtlrState {\r\n readyState: number;\r\n audioContextReady: boolean;\r\n mediaIntersecting: boolean;\r\n mediaParentIntersecting: boolean;\r\n dimensions: { container: Dimensions & { tier: string }; pseudoContainer: Dimensions & { tier: string }; window: Dimensions };\r\n screenOrientation: { type: string; angle: number };\r\n docVisibilityState: DocumentVisibilityState;\r\n docInFullscreen: boolean;\r\n frameReadyPromise?: Promise<null> | null;\r\n}\r\n\r\n// --- GLOBAL STATE ---\r\nconst flagMutationSet = new WeakSet<HTMLElement>(); // weak set for true magic\r\nlet flagMutationId: number | undefined;\r\n// --- EXPORTS ---\r\nexport let AUDIO_CONTEXT: AudioContext | null = null;\r\nexport let AUDIO_LIMITER: DynamicsCompressorNode | null = null;\r\nexport let IS_DOC_TRANSIENT = false;\r\nexport const Controllers: Controller[] = [];\r\n\r\nexport function handleVidMutation(mutations: MutationRecord[]): void {\r\n for (const mutation of mutations) {\r\n if (mutation.type !== \"attributes\") continue;\r\n const target = mutation.target as HTMLMediaElement;\r\n if (mutation.attributeName === \"tmgcontrols\") !flagMutationSet.has(target) && (target.tmgcontrols = target.hasAttribute(\"tmgcontrols\"));\r\n else if (mutation.attributeName?.startsWith(\"tmg\")) target.hasAttribute(mutation.attributeName) && target.tmgPlayer?.fetchOptions();\r\n else if (mutation.attributeName === \"controls\") target.hasAttribute(\"tmgcontrols\") && target.removeAttribute(\"controls\");\r\n }\r\n}\r\n\r\nexport function handleDOMMutation(mutations: MutationRecord[]): void {\r\n for (const mutation of mutations) {\r\n for (const node of Array.from(mutation.addedNodes)) {\r\n if (!(node instanceof HTMLElement)) continue;\r\n const els = node.matches(\":is(video,audio):not(.tmg-host)\") ? [node] : node.querySelectorAll(\":is(video,audio):not(.tmg-host)\");\r\n for (const el of els) {\r\n observeMutation(el, handleVidMutation, { attributes: true });\r\n (el as HTMLMediaElement).tmgcontrols = el.hasAttribute(\"tmgcontrols\");\r\n }\r\n }\r\n for (const node of Array.from(mutation.removedNodes)) {\r\n if (!(node instanceof HTMLElement)) continue;\r\n const els = node.matches(\".tmg-host\") ? [node] : node.querySelectorAll(\".tmg-host\");\r\n for (const el of els) !(el as HTMLMediaElement).tmgPlayer?.Controller?.mutatingDOMM && (el as HTMLMediaElement).tmgPlayer?.detach();\r\n }\r\n }\r\n}\r\n\r\nfunction flagMutation(m: HTMLElement, check = true): void {\r\n !flagMutationSet.has(m) && check && flagMutationSet.add(m);\r\n}\r\n\r\nfunction freeMutation(m: HTMLElement): void {\r\n clearTimeout(flagMutationId);\r\n flagMutationId = setTimeout(() => !(flagMutationId = undefined) && flagMutationSet.delete(m));\r\n}\r\n\r\nexport function mountMedia() {\r\n if (\"undefined\" === typeof HTMLMediaElement) return;\r\n for (const el of [HTMLVideoElement, HTMLAudioElement])\r\n Object.defineProperty(el.prototype, \"tmgcontrols\", {\r\n get: function () {\r\n return this.hasAttribute(\"tmgcontrols\");\r\n },\r\n set: async function (value) {\r\n if (value) {\r\n flagMutation(this);\r\n await ((this as HTMLMediaElement).tmgPlayer || new Player()).attach(this);\r\n this.setAttribute(\"tmgcontrols\", \"\");\r\n freeMutation(this);\r\n } else {\r\n flagMutation(this, this.hasAttribute(\"tmgcontrols\"));\r\n this.removeAttribute(\"tmgcontrols\");\r\n (this as HTMLMediaElement).tmgPlayer?.detach();\r\n freeMutation(this);\r\n }\r\n },\r\n enumerable: true,\r\n configurable: true,\r\n });\r\n}\r\n\r\nexport function unmountMedia(): void {\r\n for (const el of [HTMLVideoElement, HTMLAudioElement]) delete (el.prototype as any).tmgcontrols;\r\n}\r\n\r\nexport function startAudioManager(): void {\r\n if (!AUDIO_CONTEXT && IS_DOC_TRANSIENT) {\r\n AUDIO_CONTEXT = new (win!.AudioContext || (win as any).webkitAudioContext)() as AudioContext;\r\n const L = (AUDIO_LIMITER = AUDIO_CONTEXT!.createDynamicsCompressor());\r\n (L.threshold.value = -1.0), (L.knee.value = 0.0), (L.ratio.value = 20), (L.attack.value = 0.001), (L.release.value = 0.05);\r\n for (const c of Controllers) if (c.state) c.state.audioContextReady = true;\r\n } else if (AUDIO_CONTEXT?.state === \"suspended\") AUDIO_CONTEXT.resume();\r\n}\r\n\r\nexport function connectMediaToAudioManager(medium: HTMLMediaElement) {\r\n if (!AUDIO_CONTEXT) return \"unavailable\";\r\n medium.mediaElementSourceNode ??= AUDIO_CONTEXT.createMediaElementSource(medium);\r\n medium._tmgGainNode ??= AUDIO_CONTEXT.createGain();\r\n medium._tmgDynamicsCompressorNode ??= AUDIO_CONTEXT.createDynamicsCompressor();\r\n medium.mediaElementSourceNode.connect(medium._tmgDynamicsCompressorNode);\r\n medium._tmgDynamicsCompressorNode.connect(medium._tmgGainNode);\r\n medium._tmgGainNode.connect(AUDIO_LIMITER!);\r\n AUDIO_LIMITER!.connect(AUDIO_CONTEXT!.destination);\r\n}\r\n\r\nexport function init(): void {\r\n mountMedia();\r\n for (const e of [\"click\", \"pointerdown\", \"keydown\"]) document.addEventListener(e, () => ((IS_DOC_TRANSIENT = true), startAudioManager()), true);\r\n for (const medium of document.querySelectorAll<HTMLMediaElement>(\"video,audio\")) {\r\n observeMutation(medium, handleVidMutation, { attributes: true });\r\n medium.tmgcontrols = medium.hasAttribute(\"tmgcontrols\");\r\n }\r\n observeMutation(document.documentElement, handleDOMMutation, { childList: true, subtree: true });\r\n win!.addEventListener(\"resize\", () => {\r\n for (const c of Controllers) if (c.state) (c.state.dimensions.window.width = win!.innerWidth), (c.state.dimensions.window.height = win!.innerHeight);\r\n });\r\n if (win?.screen?.orientation)\r\n win.screen.orientation.addEventListener(\"change\", ({ target }, t = target as ScreenOrientation) => {\r\n for (const c of Controllers) if (c.state) (c.state.screenOrientation.type = t.type), (c.state.screenOrientation.angle = t.angle);\r\n });\r\n else\r\n win?.addEventListener(\"orientationchange\", () => {\r\n for (const c of Controllers) if (c.state) c.state.screenOrientation.angle = (win as any).orientation || 0;\r\n });\r\n document.addEventListener(\"visibilitychange\", () => {\r\n for (const c of Controllers) if (c.state) c.state.docVisibilityState = document.visibilityState;\r\n });\r\n for (const e of [\"fullscreenchange\", \"webkitfullscreenchange\", \"mozfullscreenchange\", \"msfullscreenchange\"])\r\n document.addEventListener(e, (_, inFs = queryFullscreen()) => {\r\n for (const c of Controllers) if (c.state) c.state.docInFullscreen = inFs;\r\n });\r\n}\r\n","import type { CtlrConfig } from \"@defs/config\";\r\nimport type { CtlrMedia } from \"@defs/contract\";\r\nimport type { Action } from \"@defs/actions\";\r\nimport { TechRegistry, PlugRegistry } from \"./registries\";\r\nimport { AUDIO_CONTEXT, type CtlrState } from \"@tools/runtime\";\r\nimport { HTML5Tech } from \"@techs/html5\";\r\nimport type { TechConstructor } from \"@techs/base\";\r\nimport { PlugConstructor as PC, type BasePlug as Plug } from \"@plugs/base\";\r\nimport { guardAllMethods, guardMethod } from \"@utils/methd\";\r\nimport { setTimeout, throttle, cancelRAFLoop, RAFLoop, mockAsync, debounce } from \"@utils/fn\";\r\nimport { getWindow, queryFullscreen } from \"@utils/dom\";\r\nimport { createEl, observeIntersection, observeResize } from \"@utils/dom\";\r\nimport { uncamelize } from \"@utils/str\";\r\nimport { cloneMedia, getMediaReport, isSameSources, getSizeTier } from \"@utils/media\";\r\nimport { type Volatile, reactive, type Reactive, inert, intent, volatile, getRaw } from \"sia-reactor\";\r\nimport { fanout, getPath, mergeObjs as merge, nuke, setPath } from \"sia-reactor/utils\";\r\nimport type { PlugRegistryMap, ControllerDOMMap } from \"@defs/registries\";\r\nimport { isFunc, isStr } from \"@utils/obj\";\r\nimport { silence, transaction } from \"sia-reactor/modules\";\r\nimport { AUDIO_EXTENSIONS } from \"@utils/match\";\r\nimport { MediaType } from \"@defs/generics\";\r\n\r\n// --- CONTROLLER (The Orchestrator) ---\r\nexport class Controller {\r\n // --- CORE SYSTEM ---\r\n private ac = new AbortController();\r\n public readonly signal = this.ac.signal;\r\n public plugs = new Map<string, Plug>();\r\n // --- RUNTIME (Global Controller States) ---\r\n public media: Reactive<CtlrMedia>;\r\n public state: Reactive<CtlrState> & Record<string, any>; // runtime state and states to be populated for easy reach\r\n public config: Reactive<Volatile<CtlrConfig>>;\r\n public get settings() {\r\n return this.config.settings; // can change ref\r\n } // for easy reach, better devx\r\n public get actions() {\r\n return this.config.actions; // for easy reach\r\n }\r\n // --- MEMORY ---\r\n public payload: { readyState: number; initialized: boolean; wired: boolean; destroyed: boolean; instance: Controller } = { instance: this } as any;\r\n public _build: CtlrConfig; // Build Cache\r\n // DOM References (Utilized by Externals)\r\n public DOM: ControllerDOMMap = {}; // To be populated with common elements for easy reach\r\n public mutatingDOMM = true; // mutatingDOMMedia: for external watchers that need to know\r\n\r\n constructor(medium: HTMLMediaElement, build: CtlrConfig) {\r\n guardAllMethods(this, this.guard);\r\n const defs = merge(getMediaReport(medium), build.media); // returns defaults and initials\r\n this.config = reactive(volatile(build), { referenceTracking: true, smartCloning: true, debug: false }); // `lineageTracing: false` so clone before reassigning \"already in state\" objects\r\n this.state = reactive<CtlrState>({ readyState: 0, audioContextReady: !!AUDIO_CONTEXT, mediaIntersecting: true, mediaParentIntersecting: true, dimensions: { container: { width: 0, height: 0, tier: \"x\" }, pseudoContainer: { width: 0, height: 0, tier: \"x\" }, window: { width: window.innerWidth, height: window.innerHeight } }, screenOrientation: { type: screen.orientation?.type ?? \"\", angle: screen.orientation?.angle ?? 0 }, docVisibilityState: document.visibilityState, docInFullscreen: queryFullscreen() }, { debug: false });\r\n this.state.watch(\"readyState\", (v) => ((this.payload.readyState = v), (this.payload.initialized = v > 0), (this.payload.wired = v > 1), (this.payload.destroyed = v < 0)), { signal: this.signal });\r\n this.media = reactive({ intent: volatile(intent(defs.intent)), state: defs.state, status: defs.status, settings: volatile(intent(defs.settings)), type: medium.tagName.toLowerCase() as MediaType, tech: inert({}), features: {}, element: medium, pseudoElement: createEl(medium.tagName.toLowerCase()), container: createEl(\"div\"), pseudoContainer: createEl(\"div\") }, { debug: false, crossRealms: true }) as any;\r\n this.media.set(\"tech\", (t) => inert(t!), { signal: this.signal });\r\n this.log((this._build = this.config.snapshot())), delete this.config.media; // clone for resets and fast subsequents\r\n this.setReadyState(0), this.boot();\r\n }\r\n\r\n private async boot(): Promise<void> {\r\n this.connectPlugs(), this.wireTechHandler(), this.wireStateHandler();\r\n await mockAsync(0), this.setReadyState(1); // wiring the machinery\r\n this.state.wonce(\"readyState\", () => (!this.media.state.paused ? this.setReadyState(3) : this.media.wonce(\"state.paused\", () => this.setReadyState(3), { signal: this.signal })), { signal: this.signal }); // first play(ed), matters to some\r\n await mockAsync(0), this.setReadyState(2); // block `set` to stall, e.g lightState\r\n setTimeout(() => (this.mutatingDOMM = false), 0, this.signal);\r\n }\r\n\r\n public connectPlugs(Plugs = PlugRegistry.getOrdered()): void {\r\n if (!this.payload.wired) for (const Plug of Plugs) this.plugIn(Plug); // solve the \"must wire before tech to capture\" or plugs go from \"higher power\" to slaves on re-connect\r\n const plugs = this.payload.wired && Plugs.filter((Plug) => this.config.noPlugList !== \"*\" && (!this.config.noPlugList.includes(Plug.fullName) || Plug.isCore)).map((Plug) => new Plug(this));\r\n if (plugs) plugs.forEach((plug) => plug.mount?.()), plugs.forEach((plug) => plug.wire?.()); // plugs might rely on others being plugged in\r\n }\r\n public disconnectPlugs(): void {\r\n for (const plug of [...this.plugs.values()].reverse()) plug.destroy();\r\n }\r\n public plugIn(Plug: PC, config?: any): this {\r\n return this.config.noPlugList !== \"*\" && (!this.config.noPlugList.includes(Plug.fullName) || Plug.isCore) && new Plug(this, config).setup(), this; // #RESPONSIBLE: no external setup\r\n }\r\n public plug<K extends keyof PlugRegistryMap>(fullName: K): InstanceType<PlugRegistryMap[K]> | undefined;\r\n public plug<T extends Plug = Plug>(fullName: string): T | undefined;\r\n public plug(fullName: string): any {\r\n return this.plugs.get(fullName);\r\n }\r\n\r\n protected wireTechHandler(): void {\r\n this.media.watch(\"intent.src\", this.handleTech, { signal: this.signal, init: true }); // load initial\r\n this.media.watch(\"intent.sources\", this.handleTech, { signal: this.signal });\r\n this.media.watch(\"settings.srcObject\", this.handleTech, { signal: this.signal });\r\n }\r\n protected handleTech(): void {\r\n const { src, sources } = this.media.intent;\r\n if (this.media.settings.srcObject) return this.useTech(); // `MediaProvider` is native only\r\n let selectedTech: TechConstructor | null = TechRegistry.pick(src, this.config.settings.techOrder),\r\n selectedSource: string | null = selectedTech ? src : null;\r\n if (!selectedTech && !isSameSources(sources, this.media.state.sources))\r\n for (const source of sources) {\r\n selectedTech = TechRegistry.pick(source.src, this.config.settings.techOrder);\r\n if (selectedTech) {\r\n selectedSource = source.src;\r\n break;\r\n }\r\n }\r\n (getRaw(this.media.state).src = src), (getRaw(this.media.state).sources = inert(sources)); // for tech fanout accuracy\r\n this.useTech(selectedTech || undefined);\r\n if (selectedSource !== src && !this.media.features.sources) silence(() => (this.media.intent.src = selectedSource!)); // bonus since tech can't handle sources\r\n }\r\n public useTech(TechClass: TechConstructor = HTML5Tech, reload = false): void {\r\n this.media.type = AUDIO_EXTENSIONS.test(this.media.state.src) ? \"audio\" : \"video\";\r\n (reload || TechClass !== this.media.tech.constructor) && (this.media.tech = new TechClass(this)).setup(); // #RESPONSIBLE: no external setup\r\n }\r\n public get techTruth(): \"state\" | \"intent\" {\r\n return this.payload.wired ? \"state\" : \"intent\";\r\n }\r\n public get isNativeEl(): boolean {\r\n return this.media.element === this.media.tech.element;\r\n }\r\n\r\n private wireStateHandler(): void {\r\n observeIntersection(this.media.container.parentElement!, (entry) => (this.state.mediaParentIntersecting = entry.isIntersecting), this.signal);\r\n observeIntersection(this.media.container, (entry) => (this.state.mediaIntersecting = entry.isIntersecting), this.signal);\r\n observeResize(this.media.container, () => fanout(this.state.dimensions.container, getSizeTier(this.media.container)), this.signal);\r\n observeResize(this.media.pseudoContainer, () => fanout(this.state.dimensions.pseudoContainer, getSizeTier(this.media.pseudoContainer)), this.signal);\r\n }\r\n\r\n public setReadyState(state?: number): void {\r\n this.state.readyState = !this.state ? 0 : state ?? this.state.readyState + 1;\r\n const rS = this.state.readyState; // incase of blocked sets, e.g. lightState\r\n this.fire(\"tmgreadystatechange\", this.payload), this.fire(rS === 0 ? \"tmgcreate\" : rS === 1 ? \"tmginit\" : rS === 2 ? \"tmgwire\" : rS === 3 ? \"tmgfirstplay\" : rS === -1 ? \"tmgdestroy\" : \"\", this.payload);\r\n }\r\n\r\n public guard = <Fn extends Function>(fn: Fn, silent = false) => guardMethod(fn, (e) => this.notice(e, \"error\", !silent)); // `()=>{}`: needs to be bounded even before initialization\r\n public notice(mssg: any, type: \"error\" | \"warn\" | \"log\" = \"error\", toast?: string | boolean | null, swallow = true): void {\r\n this.log(mssg, type, swallow), toast !== false && (type === \"log\" || (type === \"error\" && swallow && !this.config.devMode) ? this.plug(\"settings.toasts\")?.toast : this.plug(\"settings.toasts\")?.toast?.[type])?.(toast === null || this.config.devMode ? mssg : isStr(toast) ? toast : \"Something went wrong\", { tag: \"tmg-stwr\" });\r\n }\r\n\r\n public log(mssg: any, type: \"error\" | \"warn\" | \"log\" = \"log\", swallow = false): void {\r\n if (!this.config.debug) return;\r\n if (type === \"error\") return swallow && !this.config.devMode ? console.warn(`[TMG Controller] Error swallowed:`, mssg) : console.error(`[TMG Controller] Error occurred:`, mssg);\r\n else type === \"warn\" ? console.warn(`[TMG Controller] Warning:`, mssg) : console.log(`[TMG Controller] Log:`, mssg);\r\n }\r\n\r\n public fire(eN: string, detail: any = null, el: HTMLElement | EventTarget = this.media.element, bubbles = true, cancelable = true): void {\r\n eN && el?.dispatchEvent(new CustomEvent(eN, { detail, bubbles, cancelable }));\r\n }\r\n\r\n public zenlist: string[] = [\"settings\"]; // plugs append here to block actions while their UI is active\r\n public registerAction(key: string, action: Omit<Action, \"id\">): void {\r\n const existing = this.actions.entries[key] ?? {};\r\n this.actions.entries[key] = { ...action, ...existing, id: key as any, fn: action.fn }; // fn always comes from the registering plug (runtime source of truth), persisted fields (label, logic, notify) survive from existing entry\r\n this.config.on(`actions.entries.${key}` as any, () => this.actions.entries[key] && this.actions.entries[key].fn !== action.fn && (this.actions.entries[key].fn = action.fn), { signal: this.signal });\r\n }\r\n public unregisterAction(key: string): void {\r\n delete this.actions.entries[key];\r\n }\r\n public runAction(id: string, ...args: any[]): void {\r\n const action = this.actions.entries[id];\r\n if (!action || (!action.zen && this.zenlist.some(this.isUIActive))) return;\r\n transaction(() => {\r\n if (action.logic?.length) {\r\n const root = { media: this.media, settings: this.config.settings } as any;\r\n for (const step of action.logic) {\r\n const cur = getPath(root, step.path as any);\r\n step.op === \"toggle\" ? setPath(root, step.path as any, !cur) : step.op === \"increment\" ? setPath(root, step.path as any, (cur as number) + (step.value ?? 1)) : step.op === \"decrement\" ? setPath(root, step.path as any, (cur as number) - (step.value ?? 1)) : setPath(root, step.path as any, step.value);\r\n }\r\n }\r\n const can = !action.gates?.some((g) => this.media.features[g] === false);\r\n can && action.notify && this.plug(\"settings.notifiers\")?.notify(action.notify), action.fn?.(...args), can && action.toast && this.plug(\"settings.toasts\")?.toast?.((isFunc(action.toast.render) ? action.toast.render() : action.toast.render) || `Executed ${action.label ?? action.id}`, action.toast);\r\n }, action.label ?? action.id);\r\n }\r\n public isLogicPath(path: string): boolean {\r\n return this.config.actions.logicPathBlacklist.some((b) => path === b || path.startsWith(b + \".\")) || (path.startsWith(\"media.intent.\") && (this.media.features as any)[path.split(\".\").pop()!] === false) ? false : true;\r\n }\r\n\r\n public throttle(key: string, fn: Function, delay = 30, strict: ((fn: Function) => number) | boolean = true, signal = this.signal) {\r\n throttle(this.config.id + key, fn, delay, strict, signal, getWindow(this.media.container));\r\n }\r\n public debounce(key: string, fn: Function, delay = 30, strict = true, signal = this.signal) {\r\n debounce(this.config.id + key, fn, delay, strict, signal, getWindow(this.media.container));\r\n }\r\n public RAFLoop(key: string, fn: Function, signal = this.signal): void {\r\n RAFLoop(this.config.id + key, fn, signal, getWindow(this.media.container));\r\n }\r\n public cancelRAFLoop(key: string): void {\r\n cancelRAFLoop(this.config.id + key);\r\n }\r\n public cancelAllLoops(): void {\r\n if (t007._RAFLoopers) for (const k of t007._RAFLoopers.keys()) k.startsWith(this.config.id) && cancelRAFLoop(k);\r\n }\r\n\r\n public isUIActive(mode: string): boolean {\r\n return this.media.container.classList.contains(`tmg-media-${uncamelize(mode === \"settings\" ? \"settings-view\" : mode, \"-\")}`);\r\n }\r\n public queryDOM<K extends keyof HTMLElementTagNameMap>(query: K, all: true, isPseudo?: boolean): NodeListOf<HTMLElementTagNameMap[K]>;\r\n public queryDOM<E extends Element = HTMLElement>(query: string, all: true, isPseudo?: boolean): NodeListOf<E>;\r\n public queryDOM<K extends keyof HTMLElementTagNameMap>(query: K, all?: false, isPseudo?: boolean): HTMLElementTagNameMap[K] | null;\r\n public queryDOM<E extends Element = HTMLElement>(query: string, all?: false, isPseudo?: boolean): E | null;\r\n public queryDOM(query: string, all = false, isPseudo = false) {\r\n return all ? (isPseudo ? this.media.pseudoContainer : this.media.container).querySelectorAll(query) : (isPseudo ? this.media.pseudoContainer : this.media.container).querySelector(query);\r\n }\r\n\r\n public syncImgLoadState(img: HTMLImageElement, now = true): HTMLImageElement {\r\n return [\"load\", \"error\"].forEach((ev) => img.addEventListener(ev, this.setImgLoadState, { signal: this.signal })), now && this.setImgLoadState({ target: img }), img;\r\n }\r\n public setImgLoadState<Ev extends Partial<Pick<Event, \"target\" | \"type\">>>({ target: img, type = \"load\" }: Ev): void {\r\n img instanceof HTMLImageElement && img?.setAttribute(\"data-loaded\", String(type === \"load\" && img.complete && img.naturalWidth > 0));\r\n }\r\n public setImgFallback<Ev extends Partial<Pick<Event, \"target\">>>({ target: img }: Ev): void {\r\n img instanceof HTMLImageElement && img.src !== window.TMG_MEDIA_ALT_IMG_SRC && (img.src = window.TMG_MEDIA_ALT_IMG_SRC!);\r\n }\r\n private altImg?: HTMLImageElement;\r\n public setCanvasFallback(canvas: HTMLCanvasElement, context?: CanvasRenderingContext2D | null, _callback = (img = this.altImg) => context?.drawImage((this.altImg = img)!, 0, 0, canvas.width, canvas.height)): void {\r\n const _img = canvas && (this.altImg && this.altImg.src === window.TMG_MEDIA_ALT_IMG_SRC ? _callback() : createEl(\"img\", { src: window.TMG_MEDIA_ALT_IMG_SRC, onload: () => _callback(_img as HTMLImageElement) }));\r\n }\r\n\r\n public destroy() {\r\n this.mutatingDOMM = true; // destruction will mutate, flag external watchers\r\n this.setReadyState(-1);\r\n this.ac.abort(\"[TMG Controller] Instance is being destroyed\"), this.cancelAllLoops();\r\n this.disconnectPlugs(), this.media.tech.destroy();\r\n const el = this.config.cloneOnDetach ? cloneMedia(this.media.element) : this.media.element;\r\n this.state.destroy(), this.config.destroy(), this.media.destroy();\r\n return nuke(this), el;\r\n }\r\n}\r\n","import { Controller } from \"@core/controller\";\r\nimport { Controllers } from \"./runtime\";\r\nimport { loadResource } from \"@utils/dom\";\r\nimport { isIter, isObj, setHTMLConfig } from \"@utils/obj\";\r\nimport { luid } from \"@utils/str\";\r\nimport { CONFIG_BUILD } from \"@consts/config\";\r\nimport type { CtlrConfig } from \"@defs/config\";\r\nimport { DeepPartial, Paths, PathValue } from \"sia-reactor\";\r\nimport { mergeObjs, parsePathObj } from \"sia-reactor/utils\";\r\n\r\nexport type BuildParam = DeepPartial<CtlrConfig> & Record<Paths<CtlrConfig>, PathValue<CtlrConfig>>;\r\n\r\nexport class Player {\r\n private medium: HTMLMediaElement | null = null;\r\n private active: boolean = false;\r\n private _build: CtlrConfig = structuredClone(CONFIG_BUILD) as CtlrConfig;\r\n private controller: Controller | null = null;\r\n public get Controller() {\r\n return this.controller;\r\n }\r\n public get build(): CtlrConfig {\r\n return this._build;\r\n }\r\n public set build(build: BuildParam) {\r\n this.configure(build);\r\n }\r\n\r\n constructor(build: BuildParam = {} as BuildParam) {\r\n this.configure({ ...build, id: build.id ?? `${luid()}_Controller_${Controllers.length + 1}` });\r\n }\r\n\r\n private queryBuild(): boolean {\r\n return !this.active || (this.notice({ error: \"Already deployed the custom controls of your build configuration\", tip: \"Consider setting your build configuration before attaching your media element\" }), false);\r\n }\r\n public configure(build: BuildParam): void {\r\n if (this.queryBuild() && isObj(build)) this._build = mergeObjs(this._build, parsePathObj(build));\r\n }\r\n\r\n public async attach(medium: HTMLMediaElement) {\r\n if (isIter(medium)) return this.notice({ error: \"An iterable argument cannot be attached to the TMG media player\", tip: \"Consider looping the iterable argument to instantiate a new 'tmg.Player' for each\" });\r\n if (this.active) return medium;\r\n medium.tmgPlayer?.detach();\r\n Controllers.push(this.build.id as any); // dummy for liveness\r\n this.build.debug && console.time(`TMG Controller ${Controllers.length} Attach`);\r\n medium.tmgPlayer = this;\r\n this.medium = medium;\r\n await this.fetchOptions(), await this.deployController();\r\n this.build.debug && console.timeEnd(`TMG Controller ${Controllers.indexOf(this.controller!) + 1} Attach`);\r\n return this.controller?.fire(\"tmgattach\", this.controller.payload), medium;\r\n }\r\n public detach() {\r\n if (!this.active) return;\r\n const medium = this.controller?.destroy() ?? ({} as any);\r\n this.controller && Controllers.splice(Controllers.indexOf(this.controller), 1);\r\n medium.classList?.remove(`tmg-${medium.tagName.toLowerCase()}`, \"tmg-media\", \"tmg-host\");\r\n medium.tmgcontrols = this.active = false;\r\n // this.controller?.fire(\"tmgdetach\", this.controller.payload);\r\n return (medium.tmgPlayer = this.controller = this.medium = null), medium;\r\n }\r\n\r\n public async fetchOptions() {\r\n if (!this.medium) return;\r\n if (this.medium.getAttribute(\"tmg\")?.includes(\".json\"))\r\n await fetch(this.medium.getAttribute(\"tmg\")!)\r\n .then((res) => {\r\n if (!res.ok) throw new Error(`JSON file not found at provided URL!. Status: ${res.status}`);\r\n return res.json();\r\n })\r\n .then((json) => this.configure(json))\r\n .catch(({ message }) => this.notice({ error: message, tip: \"A valid JSON file is required for parsing your build configuration\" }));\r\n const build = {} as BuildParam,\r\n attributes = this.medium.getAttributeNames().filter((attr) => attr.startsWith(\"tmg--\"));\r\n for (const attr of attributes) setHTMLConfig<BuildParam>(build, attr as any, this.medium!.getAttribute(attr)!);\r\n this.configure(build);\r\n }\r\n\r\n private async deployController() {\r\n if (this.active || !this.medium?.isConnected) return;\r\n if (!(this.medium instanceof HTMLMediaElement)) return this.notice({ error: `Could not deploy custom controls on the '${(this.medium as HTMLElement).tagName}' element as it is not supported`, warning: \"Only the 'VIDEO' and 'AUDIO' elements are currently supported\", tip: \"\" });\r\n this.medium.controls = false;\r\n this.medium.tmgcontrols = this.active = true;\r\n this.medium.classList.add(`tmg-${this.medium.tagName.toLowerCase()}`, \"tmg-media\", \"tmg-host\");\r\n await Promise.all([loadResource(window.TMG_MEDIA_CSS_SRC!), loadResource(window.T007_TOAST_JS_SRC!, \"script\", { module: true }), loadResource(window.T007_INPUT_JS_SRC!, \"script\")]); // await\r\n Controllers[Controllers.indexOf(this.build.id as any)] = this.controller = new Controller(this.medium, this._build);\r\n }\r\n\r\n private notice({ error, warning, tip }: Partial<Record<\"error\" | \"warning\" | \"tip\", string>>): void {\r\n if (this.build.debug) error && console.error(`[TMG Player] ${error}`), warning && console.warn(`[TMG Player] ${warning}`), tip && console.info(`[TMG Player] ${tip}`);\r\n }\r\n}\r\n\r\nexport function getCtlrIdx(ctlr: Controller): number {\r\n const i = Controllers.indexOf(ctlr.config.id as any);\r\n return i === -1 ? Controllers.indexOf(ctlr) : i; // a magician never reveals his tricks :)\r\n}\r\n"],"mappings":"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","names":[]}
|
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
import {
|
|
2
|
+
tripletriangleright
|
|
3
|
+
} from "./chunk-YF3LWJL4.js";
|
|
4
|
+
import {
|
|
5
|
+
unlock
|
|
6
|
+
} from "./chunk-TMTWPBFD.js";
|
|
7
|
+
import {
|
|
8
|
+
videotrack
|
|
9
|
+
} from "./chunk-QDNY2FAX.js";
|
|
1
10
|
import {
|
|
2
11
|
volumehigh
|
|
3
12
|
} from "./chunk-JRWYWTTT.js";
|
|
@@ -7,6 +16,15 @@ import {
|
|
|
7
16
|
import {
|
|
8
17
|
volumemuted
|
|
9
18
|
} from "./chunk-EF7RQIJK.js";
|
|
19
|
+
import {
|
|
20
|
+
replay
|
|
21
|
+
} from "./chunk-YHTCXXEG.js";
|
|
22
|
+
import {
|
|
23
|
+
returnback
|
|
24
|
+
} from "./chunk-VCVMCKZI.js";
|
|
25
|
+
import {
|
|
26
|
+
settings
|
|
27
|
+
} from "./chunk-2J3FJY73.js";
|
|
10
28
|
import {
|
|
11
29
|
shuffle
|
|
12
30
|
} from "./chunk-OEHNS7YX.js";
|
|
@@ -23,14 +41,14 @@ import {
|
|
|
23
41
|
tripletriangleleft
|
|
24
42
|
} from "./chunk-NTNVW4BG.js";
|
|
25
43
|
import {
|
|
26
|
-
|
|
27
|
-
} from "./chunk-
|
|
44
|
+
pause
|
|
45
|
+
} from "./chunk-OOXUZMZ7.js";
|
|
28
46
|
import {
|
|
29
|
-
|
|
30
|
-
} from "./chunk-
|
|
47
|
+
pipplaceholder
|
|
48
|
+
} from "./chunk-S2XKXJNC.js";
|
|
31
49
|
import {
|
|
32
|
-
|
|
33
|
-
} from "./chunk-
|
|
50
|
+
play
|
|
51
|
+
} from "./chunk-K4UHBEDT.js";
|
|
34
52
|
import {
|
|
35
53
|
playbackrate
|
|
36
54
|
} from "./chunk-NGX5YDCB.js";
|
|
@@ -47,14 +65,14 @@ import {
|
|
|
47
65
|
removeminiplayer
|
|
48
66
|
} from "./chunk-N2Q3TZXW.js";
|
|
49
67
|
import {
|
|
50
|
-
|
|
51
|
-
} from "./chunk-
|
|
68
|
+
leavepip
|
|
69
|
+
} from "./chunk-3WHPH6Q5.js";
|
|
52
70
|
import {
|
|
53
|
-
|
|
54
|
-
} from "./chunk-
|
|
71
|
+
leavetheater
|
|
72
|
+
} from "./chunk-2VOAIUTU.js";
|
|
55
73
|
import {
|
|
56
|
-
|
|
57
|
-
} from "./chunk-
|
|
74
|
+
lock
|
|
75
|
+
} from "./chunk-R5PBXGKK.js";
|
|
58
76
|
import {
|
|
59
77
|
loop
|
|
60
78
|
} from "./chunk-OSDM6ZVT.js";
|
|
@@ -71,14 +89,14 @@ import {
|
|
|
71
89
|
objectfitfill
|
|
72
90
|
} from "./chunk-MJ26PFRF.js";
|
|
73
91
|
import {
|
|
74
|
-
|
|
75
|
-
} from "./chunk-
|
|
92
|
+
enterfullscreen
|
|
93
|
+
} from "./chunk-3OZEBWCF.js";
|
|
76
94
|
import {
|
|
77
|
-
|
|
78
|
-
} from "./chunk-
|
|
95
|
+
enterpip
|
|
96
|
+
} from "./chunk-WQXLL5IV.js";
|
|
79
97
|
import {
|
|
80
|
-
|
|
81
|
-
} from "./chunk-
|
|
98
|
+
entertheater
|
|
99
|
+
} from "./chunk-H24E5FRE.js";
|
|
82
100
|
import {
|
|
83
101
|
expandminiplayer
|
|
84
102
|
} from "./chunk-RKBRRJY6.js";
|
|
@@ -95,14 +113,14 @@ import {
|
|
|
95
113
|
leavefullscreen
|
|
96
114
|
} from "./chunk-IVA7LFT2.js";
|
|
97
115
|
import {
|
|
98
|
-
|
|
99
|
-
} from "./chunk-
|
|
116
|
+
cast
|
|
117
|
+
} from "./chunk-6S5BMP4A.js";
|
|
100
118
|
import {
|
|
101
|
-
|
|
102
|
-
} from "./chunk-
|
|
119
|
+
castplaceholder
|
|
120
|
+
} from "./chunk-ATE4NMIF.js";
|
|
103
121
|
import {
|
|
104
|
-
|
|
105
|
-
} from "./chunk-
|
|
122
|
+
chapters
|
|
123
|
+
} from "./chunk-2W5XWGGE.js";
|
|
106
124
|
import {
|
|
107
125
|
deleteicon
|
|
108
126
|
} from "./chunk-UJTVBENE.js";
|
|
@@ -119,14 +137,14 @@ import {
|
|
|
119
137
|
edit
|
|
120
138
|
} from "./chunk-UDZLXFLI.js";
|
|
121
139
|
import {
|
|
122
|
-
|
|
123
|
-
} from "./chunk-
|
|
140
|
+
autoplay
|
|
141
|
+
} from "./chunk-WTHHXWQM.js";
|
|
124
142
|
import {
|
|
125
|
-
|
|
126
|
-
} from "./chunk-
|
|
143
|
+
backward10
|
|
144
|
+
} from "./chunk-3KD22Z7D.js";
|
|
127
145
|
import {
|
|
128
|
-
|
|
129
|
-
} from "./chunk-
|
|
146
|
+
brightnessdark
|
|
147
|
+
} from "./chunk-6IFGKHVM.js";
|
|
130
148
|
import {
|
|
131
149
|
brightnesshigh
|
|
132
150
|
} from "./chunk-5TJURBKV.js";
|
|
@@ -142,15 +160,6 @@ import {
|
|
|
142
160
|
import {
|
|
143
161
|
capture
|
|
144
162
|
} from "./chunk-HA2GK6KH.js";
|
|
145
|
-
import {
|
|
146
|
-
cast
|
|
147
|
-
} from "./chunk-6S5BMP4A.js";
|
|
148
|
-
import {
|
|
149
|
-
castplaceholder
|
|
150
|
-
} from "./chunk-ATE4NMIF.js";
|
|
151
|
-
import {
|
|
152
|
-
chapters
|
|
153
|
-
} from "./chunk-2W5XWGGE.js";
|
|
154
163
|
import {
|
|
155
164
|
add
|
|
156
165
|
} from "./chunk-ID72UAJE.js";
|
|
@@ -166,15 +175,6 @@ import {
|
|
|
166
175
|
import {
|
|
167
176
|
audiotrack
|
|
168
177
|
} from "./chunk-OSYK6DSS.js";
|
|
169
|
-
import {
|
|
170
|
-
autoplay
|
|
171
|
-
} from "./chunk-WTHHXWQM.js";
|
|
172
|
-
import {
|
|
173
|
-
backward10
|
|
174
|
-
} from "./chunk-3KD22Z7D.js";
|
|
175
|
-
import {
|
|
176
|
-
brightnessdark
|
|
177
|
-
} from "./chunk-6IFGKHVM.js";
|
|
178
178
|
import {
|
|
179
179
|
IconRegistry
|
|
180
180
|
} from "./chunk-445PI4JX.js";
|
|
@@ -242,4 +242,4 @@ IconRegistry.registerAll({
|
|
|
242
242
|
add,
|
|
243
243
|
edit
|
|
244
244
|
});
|
|
245
|
-
//# sourceMappingURL=chunk-
|
|
245
|
+
//# sourceMappingURL=chunk-2Q353YGH.js.map
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
import {
|
|
8
8
|
AUDIO_CONTEXT,
|
|
9
9
|
connectMediaToAudioManager
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-2KWQ2BJA.js";
|
|
11
11
|
import {
|
|
12
12
|
clamp
|
|
13
13
|
} from "./chunk-YWBPJGAR.js";
|
|
@@ -107,4 +107,4 @@ __publicField(VolumePlug, "BUILD", VOLUME_BUILD);
|
|
|
107
107
|
export {
|
|
108
108
|
VolumePlug
|
|
109
109
|
};
|
|
110
|
-
//# sourceMappingURL=chunk-
|
|
110
|
+
//# sourceMappingURL=chunk-52QBFKDH.js.map
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
} from "./chunk-GUFNBA6P.js";
|
|
7
7
|
import {
|
|
8
8
|
getCtlrIdx
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-2KWQ2BJA.js";
|
|
10
10
|
import {
|
|
11
11
|
__publicField
|
|
12
12
|
} from "./chunk-UVKRO5ER.js";
|
|
@@ -55,4 +55,4 @@ __publicField(TimeTravelPlug, "BUILD", TIME_TRAVEL_BUILD);
|
|
|
55
55
|
export {
|
|
56
56
|
TimeTravelPlug
|
|
57
57
|
};
|
|
58
|
-
//# sourceMappingURL=chunk-
|
|
58
|
+
//# sourceMappingURL=chunk-7P37TRZ5.js.map
|
|
@@ -4,12 +4,12 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
BasePlug
|
|
6
6
|
} from "./chunk-GUFNBA6P.js";
|
|
7
|
-
import {
|
|
8
|
-
formatMediaTime
|
|
9
|
-
} from "./chunk-J3OR7IU3.js";
|
|
10
7
|
import {
|
|
11
8
|
IconRegistry
|
|
12
9
|
} from "./chunk-445PI4JX.js";
|
|
10
|
+
import {
|
|
11
|
+
formatMediaTime
|
|
12
|
+
} from "./chunk-J3OR7IU3.js";
|
|
13
13
|
import {
|
|
14
14
|
__publicField
|
|
15
15
|
} from "./chunk-UVKRO5ER.js";
|
|
@@ -54,4 +54,4 @@ __publicField(SleepTimerPlug, "BUILD", SLEEP_TIMER_BUILD);
|
|
|
54
54
|
export {
|
|
55
55
|
SleepTimerPlug
|
|
56
56
|
};
|
|
57
|
-
//# sourceMappingURL=chunk-
|
|
57
|
+
//# sourceMappingURL=chunk-CQOLKYPW.js.map
|
|
@@ -1,52 +1,51 @@
|
|
|
1
|
+
import {
|
|
2
|
+
VoicePlug
|
|
3
|
+
} from "./chunk-F452XVZC.js";
|
|
4
|
+
import {
|
|
5
|
+
VOICE_BUILD
|
|
6
|
+
} from "./chunk-MB5D2ET7.js";
|
|
1
7
|
import {
|
|
2
8
|
VolumePlug
|
|
3
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-52QBFKDH.js";
|
|
4
10
|
import {
|
|
5
11
|
VOLUME_BUILD
|
|
6
12
|
} from "./chunk-Q2XYS26I.js";
|
|
7
13
|
import {
|
|
8
|
-
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import {
|
|
11
|
-
ERRORS_BUILD,
|
|
12
|
-
ERROR_CODES
|
|
13
|
-
} from "./chunk-4PWG5DNN.js";
|
|
14
|
+
TimePlug
|
|
15
|
+
} from "./chunk-U2XH3FHI.js";
|
|
14
16
|
import {
|
|
15
17
|
SleepTimerPlug
|
|
16
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-CQOLKYPW.js";
|
|
19
|
+
import {
|
|
20
|
+
SLEEP_TIMER_BUILD
|
|
21
|
+
} from "./chunk-RGPGW4ZJ.js";
|
|
17
22
|
import {
|
|
18
23
|
TimeTravelPlug
|
|
19
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-7P37TRZ5.js";
|
|
20
25
|
import {
|
|
21
26
|
TIME_TRAVEL_BUILD
|
|
22
27
|
} from "./chunk-M653CZPD.js";
|
|
23
|
-
import {
|
|
24
|
-
VoicePlug
|
|
25
|
-
} from "./chunk-F452XVZC.js";
|
|
26
|
-
import {
|
|
27
|
-
VOICE_BUILD
|
|
28
|
-
} from "./chunk-MB5D2ET7.js";
|
|
29
|
-
import {
|
|
30
|
-
TimePlug
|
|
31
|
-
} from "./chunk-U2XH3FHI.js";
|
|
32
|
-
import {
|
|
33
|
-
TIME_BUILD
|
|
34
|
-
} from "./chunk-274C5J22.js";
|
|
35
28
|
import {
|
|
36
29
|
SettingsViewPlug
|
|
37
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-YLPGT7GW.js";
|
|
38
31
|
import {
|
|
39
32
|
SETTINGS_BUILD
|
|
40
33
|
} from "./chunk-NPTM6BGC.js";
|
|
41
|
-
import {
|
|
42
|
-
SLEEP_TIMER_BUILD
|
|
43
|
-
} from "./chunk-RGPGW4ZJ.js";
|
|
44
34
|
import {
|
|
45
35
|
PlaybackRatePlug
|
|
46
36
|
} from "./chunk-SJ4JQ3N7.js";
|
|
47
37
|
import {
|
|
48
38
|
PLAYBACK_RATE_BUILD
|
|
49
39
|
} from "./chunk-K7AAKFQF.js";
|
|
40
|
+
import {
|
|
41
|
+
TIME_BUILD
|
|
42
|
+
} from "./chunk-274C5J22.js";
|
|
43
|
+
import {
|
|
44
|
+
OverlayPlug
|
|
45
|
+
} from "./chunk-WWYLXTLC.js";
|
|
46
|
+
import {
|
|
47
|
+
OVERLAY_BUILD
|
|
48
|
+
} from "./chunk-PXU563OY.js";
|
|
50
49
|
import {
|
|
51
50
|
PersistPlug
|
|
52
51
|
} from "./chunk-HW3NSLNH.js";
|
|
@@ -62,6 +61,9 @@ import {
|
|
|
62
61
|
import {
|
|
63
62
|
NotifiersPlug
|
|
64
63
|
} from "./chunk-OORIO2JT.js";
|
|
64
|
+
import {
|
|
65
|
+
NOTIFIERS_BUILD
|
|
66
|
+
} from "./chunk-ZCMJVQ6P.js";
|
|
65
67
|
import {
|
|
66
68
|
ObjectFitPlug
|
|
67
69
|
} from "./chunk-L4FVJWVD.js";
|
|
@@ -69,37 +71,19 @@ import {
|
|
|
69
71
|
OBJECT_FIT_BUILD,
|
|
70
72
|
objectFits
|
|
71
73
|
} from "./chunk-KD3OBG25.js";
|
|
72
|
-
import {
|
|
73
|
-
OverlayPlug
|
|
74
|
-
} from "./chunk-WWYLXTLC.js";
|
|
75
|
-
import {
|
|
76
|
-
OVERLAY_BUILD
|
|
77
|
-
} from "./chunk-PXU563OY.js";
|
|
78
74
|
import {
|
|
79
75
|
MetadataPlug
|
|
80
76
|
} from "./chunk-LV46QIYT.js";
|
|
81
77
|
import {
|
|
82
78
|
METADATA_BUILD
|
|
83
79
|
} from "./chunk-BGODOEUS.js";
|
|
84
|
-
import {
|
|
85
|
-
LockedPlug
|
|
86
|
-
} from "./chunk-KICE2FTX.js";
|
|
87
|
-
import {
|
|
88
|
-
LOCKED_BUILD
|
|
89
|
-
} from "./chunk-FHL5Z6MX.js";
|
|
90
|
-
import {
|
|
91
|
-
NOTIFIERS_BUILD
|
|
92
|
-
} from "./chunk-ZCMJVQ6P.js";
|
|
93
|
-
import {
|
|
94
|
-
KeysPlug
|
|
95
|
-
} from "./chunk-S2QOATBM.js";
|
|
96
80
|
import {
|
|
97
81
|
ModesFullscreenPin,
|
|
98
82
|
ModesMiniplayerPin,
|
|
99
83
|
ModesPictureInPicturePin,
|
|
100
84
|
ModesPlug,
|
|
101
85
|
ModesTheaterPin
|
|
102
|
-
} from "./chunk-
|
|
86
|
+
} from "./chunk-JBAZVIWT.js";
|
|
103
87
|
import {
|
|
104
88
|
MODES_BUILD,
|
|
105
89
|
MODES_FULLSCREEN_BUILD,
|
|
@@ -108,6 +92,19 @@ import {
|
|
|
108
92
|
MODES_THEATER_BUILD,
|
|
109
93
|
ORIENTATION_OPTIONS
|
|
110
94
|
} from "./chunk-NDUYN2X2.js";
|
|
95
|
+
import {
|
|
96
|
+
LockedPlug
|
|
97
|
+
} from "./chunk-KICE2FTX.js";
|
|
98
|
+
import {
|
|
99
|
+
KeysPlug
|
|
100
|
+
} from "./chunk-F3PAGLUZ.js";
|
|
101
|
+
import {
|
|
102
|
+
AutoPlug
|
|
103
|
+
} from "./chunk-M2PZB5PA.js";
|
|
104
|
+
import {
|
|
105
|
+
APT_AUTOPLAY_OPTIONS,
|
|
106
|
+
AUTO_BUILD
|
|
107
|
+
} from "./chunk-LJKSIFLD.js";
|
|
111
108
|
import {
|
|
112
109
|
GesturePlug,
|
|
113
110
|
GestureTouchPin,
|
|
@@ -119,30 +116,12 @@ import {
|
|
|
119
116
|
GESTURE_WHEEL_BUILD
|
|
120
117
|
} from "./chunk-MEAGFRLE.js";
|
|
121
118
|
import {
|
|
122
|
-
|
|
123
|
-
} from "./chunk-
|
|
124
|
-
import {
|
|
125
|
-
FAST_PLAY_BUILD
|
|
126
|
-
} from "./chunk-OBASYXH2.js";
|
|
127
|
-
import {
|
|
128
|
-
FramePlug
|
|
129
|
-
} from "./chunk-53TJ5GMK.js";
|
|
130
|
-
import {
|
|
131
|
-
FRAME_BUILD
|
|
132
|
-
} from "./chunk-4QQXED6P.js";
|
|
133
|
-
import {
|
|
134
|
-
CSSPlug
|
|
135
|
-
} from "./chunk-QVRXLLHK.js";
|
|
136
|
-
import {
|
|
137
|
-
CSS_BUILD
|
|
138
|
-
} from "./chunk-UCBDCGYX.js";
|
|
139
|
-
import {
|
|
140
|
-
CastPlug
|
|
141
|
-
} from "./chunk-WU3EQI72.js";
|
|
119
|
+
LOCKED_BUILD
|
|
120
|
+
} from "./chunk-FHL5Z6MX.js";
|
|
142
121
|
import {
|
|
143
122
|
ControlPanelDraggablePin,
|
|
144
123
|
ControlPanelPlug
|
|
145
|
-
} from "./chunk-
|
|
124
|
+
} from "./chunk-SNL5HLFG.js";
|
|
146
125
|
import {
|
|
147
126
|
ToastsPlug,
|
|
148
127
|
tutorialOpts
|
|
@@ -151,24 +130,30 @@ import {
|
|
|
151
130
|
TOASTS_BUILD
|
|
152
131
|
} from "./chunk-IFYBKLFH.js";
|
|
153
132
|
import {
|
|
154
|
-
|
|
155
|
-
} from "./chunk-
|
|
133
|
+
FramePlug
|
|
134
|
+
} from "./chunk-53TJ5GMK.js";
|
|
156
135
|
import {
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
} from "./chunk-LJKSIFLD.js";
|
|
136
|
+
FRAME_BUILD
|
|
137
|
+
} from "./chunk-4QQXED6P.js";
|
|
160
138
|
import {
|
|
161
|
-
|
|
162
|
-
} from "./chunk-
|
|
139
|
+
FastPlayPlug
|
|
140
|
+
} from "./chunk-UMYJXWZ2.js";
|
|
163
141
|
import {
|
|
164
|
-
|
|
165
|
-
} from "./chunk-
|
|
142
|
+
FAST_PLAY_BUILD
|
|
143
|
+
} from "./chunk-OBASYXH2.js";
|
|
166
144
|
import {
|
|
167
|
-
|
|
168
|
-
} from "./chunk-
|
|
145
|
+
CSSPlug
|
|
146
|
+
} from "./chunk-QVRXLLHK.js";
|
|
169
147
|
import {
|
|
170
|
-
|
|
171
|
-
} from "./chunk-
|
|
148
|
+
CSS_BUILD
|
|
149
|
+
} from "./chunk-UCBDCGYX.js";
|
|
150
|
+
import {
|
|
151
|
+
ErrorsPlug
|
|
152
|
+
} from "./chunk-5D4UUGQD.js";
|
|
153
|
+
import {
|
|
154
|
+
ERRORS_BUILD,
|
|
155
|
+
ERROR_CODES
|
|
156
|
+
} from "./chunk-4PWG5DNN.js";
|
|
172
157
|
import {
|
|
173
158
|
AmbiencePlug
|
|
174
159
|
} from "./chunk-7E337RWO.js";
|
|
@@ -176,8 +161,14 @@ import {
|
|
|
176
161
|
AMBIENT_BUILD
|
|
177
162
|
} from "./chunk-WIHCBWQL.js";
|
|
178
163
|
import {
|
|
179
|
-
|
|
180
|
-
} from "./chunk-
|
|
164
|
+
CaptionsPlug
|
|
165
|
+
} from "./chunk-YFIWARZK.js";
|
|
166
|
+
import {
|
|
167
|
+
CastPlug
|
|
168
|
+
} from "./chunk-WU3EQI72.js";
|
|
169
|
+
import {
|
|
170
|
+
AirPlayPlug
|
|
171
|
+
} from "./chunk-I43HEKW2.js";
|
|
181
172
|
import {
|
|
182
173
|
SkeletonPlug
|
|
183
174
|
} from "./chunk-IHVE6Q4K.js";
|
|
@@ -185,11 +176,11 @@ import {
|
|
|
185
176
|
SKELETON_BUILD
|
|
186
177
|
} from "./chunk-QZ63RGAN.js";
|
|
187
178
|
import {
|
|
188
|
-
|
|
189
|
-
} from "./chunk-
|
|
179
|
+
BrightnessPlug
|
|
180
|
+
} from "./chunk-O25FBBRN.js";
|
|
190
181
|
import {
|
|
191
|
-
|
|
192
|
-
} from "./chunk-
|
|
182
|
+
BRIGHTNESS_BUILD
|
|
183
|
+
} from "./chunk-JPWNE7JO.js";
|
|
193
184
|
import {
|
|
194
185
|
LightStatePlug
|
|
195
186
|
} from "./chunk-VB24TO7N.js";
|
|
@@ -197,14 +188,14 @@ import {
|
|
|
197
188
|
LIGHT_STATE_BUILD
|
|
198
189
|
} from "./chunk-GM7YMURS.js";
|
|
199
190
|
import {
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
} from "./chunk-GUFNBA6P.js";
|
|
191
|
+
PlaylistPlug
|
|
192
|
+
} from "./chunk-VZVGUEAL.js";
|
|
203
193
|
import {
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
194
|
+
DisabledPlug
|
|
195
|
+
} from "./chunk-XY53YSY2.js";
|
|
196
|
+
import {
|
|
197
|
+
DISABLED_BUILD
|
|
198
|
+
} from "./chunk-WW56NFQS.js";
|
|
208
199
|
import {
|
|
209
200
|
CAPTIONS_BUILD,
|
|
210
201
|
ROTATE_PATHS,
|
|
@@ -216,10 +207,19 @@ import {
|
|
|
216
207
|
CONTROL_PANEL_DRAGGABLE_BUILD,
|
|
217
208
|
ROWS_ARR
|
|
218
209
|
} from "./chunk-5WUVFNKH.js";
|
|
210
|
+
import {
|
|
211
|
+
KEYS_BUILD,
|
|
212
|
+
KEYS_WHITELIST,
|
|
213
|
+
KEY_SHORTCUT_MOD_ACTIONS
|
|
214
|
+
} from "./chunk-W7UIRU3J.js";
|
|
219
215
|
import {
|
|
220
216
|
PLAYLIST_BUILD,
|
|
221
217
|
PLAYLIST_ITEM_BUILD
|
|
222
218
|
} from "./chunk-GSNYL64O.js";
|
|
219
|
+
import {
|
|
220
|
+
BasePin,
|
|
221
|
+
BasePlug
|
|
222
|
+
} from "./chunk-GUFNBA6P.js";
|
|
223
223
|
import {
|
|
224
224
|
__export
|
|
225
225
|
} from "./chunk-UVKRO5ER.js";
|
|
@@ -324,4 +324,4 @@ __export(plugs_exports, {
|
|
|
324
324
|
export {
|
|
325
325
|
plugs_exports
|
|
326
326
|
};
|
|
327
|
-
//# sourceMappingURL=chunk-
|
|
327
|
+
//# sourceMappingURL=chunk-DK6YNSCO.js.map
|