tmg-media-player 0.0.47 → 0.0.49
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-52WLRMWV.js → chunk-2COEQIWO.js} +32 -32
- package/dist/{chunk-JX4ED2TF.js → chunk-4AULKZY5.js} +5 -5
- package/dist/{chunk-ULQ2MD6B.js → chunk-52C7I5MC.js} +26 -26
- package/dist/{chunk-GAYJ2V53.js → chunk-5TK2MCDO.js} +5 -5
- package/dist/{chunk-XKQBBXIV.js → chunk-77SZDKWV.js} +2 -2
- package/dist/{chunk-U5F6FS7Q.js → chunk-7P3SODHT.js} +7 -7
- package/dist/{chunk-QXSJAEBE.js → chunk-7QDSSDRH.js} +2 -2
- package/dist/{chunk-4T7ZVCMS.js → chunk-CDKSSYGF.js} +2 -2
- package/dist/{chunk-VYC7N5ZY.js → chunk-EBFAGVND.js} +41 -41
- package/dist/{chunk-XHV5LEY3.js → chunk-FFUPTYZL.js} +17 -17
- package/dist/chunk-FFUPTYZL.js.map +1 -0
- package/dist/{chunk-GW634LFX.js → chunk-JLUX5NZJ.js} +19 -19
- package/dist/{chunk-WX72UHLA.js → chunk-KJX3SSWX.js} +4 -4
- package/dist/{chunk-SA4OYBCQ.js → chunk-LASLQXJC.js} +2 -2
- package/dist/chunk-LASLQXJC.js.map +1 -0
- package/dist/{chunk-ALQVOK6Q.js → chunk-LD6EP37L.js} +2 -2
- package/dist/{chunk-CAM6IQ3T.js → chunk-LDT7RVZX.js} +2 -2
- package/dist/{chunk-CCGWYDVN.js → chunk-OSUNW323.js} +2 -2
- package/dist/{chunk-YXTU4XMT.js → chunk-PCC327MG.js} +62 -62
- package/dist/{chunk-YDRDOSZ5.js → chunk-QAMLWLEZ.js} +14 -14
- package/dist/{chunk-VNXTVJXF.js → chunk-QAZGBRF3.js} +7 -7
- package/dist/{chunk-EXTGGYPL.js → chunk-QPHJOYEO.js} +27 -27
- package/dist/{chunk-W5GYHJAH.js → chunk-UKS5MJPA.js} +2 -2
- package/dist/{chunk-QXVEPU5G.js → chunk-W23DZJNI.js} +2 -2
- package/dist/{chunk-26BY5N4X.js → chunk-YMTSIRUK.js} +5 -5
- package/dist/components/controls/fullscreenOrientation.js +2 -2
- package/dist/components/controls/timeline/index.js +3 -3
- package/dist/components/holders/pipPlaceholder.js +3 -3
- package/dist/components/icons/z-register.js +9 -9
- package/dist/components/z-register.js +10 -10
- package/dist/core/controller.js +2 -2
- package/dist/index.css +14 -13
- package/dist/index.css.map +1 -1
- package/dist/index.js +3 -3
- package/dist/init.js +3 -3
- package/dist/plugs/menus/main/actions.js +2 -2
- package/dist/plugs/menus/settings/auto.js +2 -2
- package/dist/plugs/menus/settings/frame.js +2 -2
- package/dist/plugs/menus/settings/modes.js +2 -2
- package/dist/plugs/menus/settings/sleepTimer.js +2 -2
- package/dist/plugs/menus/settings/toasts.js +2 -2
- package/dist/plugs/menus/settings/voice.js +2 -2
- package/dist/plugs/menus/z-register.js +13 -13
- package/dist/plugs/settings/auto/index.cjs +1 -1
- package/dist/plugs/settings/auto/index.cjs.map +1 -1
- package/dist/plugs/settings/auto/index.js +3 -3
- package/dist/plugs/settings/captions/index.js +3 -3
- package/dist/plugs/settings/modes/airplay.js +4 -4
- package/dist/plugs/settings/modes/cast.js +4 -4
- package/dist/plugs/settings/modes/fullscreen.js +3 -3
- package/dist/plugs/settings/modes/index.js +3 -3
- package/dist/plugs/settings/modes/miniplayer.js +3 -3
- package/dist/plugs/settings/modes/pictureInPicture.js +3 -3
- package/dist/plugs/settings/modes/theater.js +3 -3
- package/dist/plugs/settings/panel/index.cjs +16 -16
- package/dist/plugs/settings/panel/index.cjs.map +1 -1
- package/dist/plugs/settings/panel/index.js +1 -1
- package/dist/plugs/settings/sleepTimer/index.js +1 -1
- package/dist/plugs/settings/timeTravel/index.js +3 -3
- package/dist/plugs/settings/voice/index.js +2 -2
- package/dist/plugs/settings/volume/index.js +3 -3
- package/dist/plugs/z-register.cjs +17 -17
- package/dist/plugs/z-register.cjs.map +1 -1
- package/dist/plugs/z-register.js +33 -33
- package/dist/super/components/icons.js +19 -19
- package/dist/super/components/index.js +47 -47
- package/dist/super/plugs/index.cjs +17 -17
- package/dist/super/plugs/index.cjs.map +1 -1
- package/dist/super/plugs/index.js +82 -82
- package/dist/super/plugs/menus.js +32 -32
- package/dist/super/techs.js +9 -9
- package/dist/super/utils.js +26 -26
- package/dist/super.cjs +17 -17
- package/dist/super.cjs.map +1 -1
- package/dist/super.css +14 -13
- package/dist/super.css.map +1 -1
- package/dist/super.global.js +17 -17
- package/dist/super.global.js.map +1 -1
- package/dist/super.js +73 -73
- package/dist/techs/dash.js +3 -3
- package/dist/techs/hls.js +3 -3
- package/dist/techs/html5.js +2 -2
- package/dist/techs/shaka.js +3 -3
- package/dist/techs/youtube.js +2 -2
- package/dist/techs/z-register.js +6 -6
- package/dist/tools/player.js +2 -2
- package/dist/tools/runtime/index.js +2 -2
- package/package.json +1 -3
- package/dist/chunk-SA4OYBCQ.js.map +0 -1
- package/dist/chunk-XHV5LEY3.js.map +0 -1
- /package/dist/{chunk-52WLRMWV.js.map → chunk-2COEQIWO.js.map} +0 -0
- /package/dist/{chunk-JX4ED2TF.js.map → chunk-4AULKZY5.js.map} +0 -0
- /package/dist/{chunk-ULQ2MD6B.js.map → chunk-52C7I5MC.js.map} +0 -0
- /package/dist/{chunk-GAYJ2V53.js.map → chunk-5TK2MCDO.js.map} +0 -0
- /package/dist/{chunk-XKQBBXIV.js.map → chunk-77SZDKWV.js.map} +0 -0
- /package/dist/{chunk-U5F6FS7Q.js.map → chunk-7P3SODHT.js.map} +0 -0
- /package/dist/{chunk-QXSJAEBE.js.map → chunk-7QDSSDRH.js.map} +0 -0
- /package/dist/{chunk-4T7ZVCMS.js.map → chunk-CDKSSYGF.js.map} +0 -0
- /package/dist/{chunk-VYC7N5ZY.js.map → chunk-EBFAGVND.js.map} +0 -0
- /package/dist/{chunk-GW634LFX.js.map → chunk-JLUX5NZJ.js.map} +0 -0
- /package/dist/{chunk-WX72UHLA.js.map → chunk-KJX3SSWX.js.map} +0 -0
- /package/dist/{chunk-ALQVOK6Q.js.map → chunk-LD6EP37L.js.map} +0 -0
- /package/dist/{chunk-CAM6IQ3T.js.map → chunk-LDT7RVZX.js.map} +0 -0
- /package/dist/{chunk-CCGWYDVN.js.map → chunk-OSUNW323.js.map} +0 -0
- /package/dist/{chunk-YXTU4XMT.js.map → chunk-PCC327MG.js.map} +0 -0
- /package/dist/{chunk-YDRDOSZ5.js.map → chunk-QAMLWLEZ.js.map} +0 -0
- /package/dist/{chunk-VNXTVJXF.js.map → chunk-QAZGBRF3.js.map} +0 -0
- /package/dist/{chunk-EXTGGYPL.js.map → chunk-QPHJOYEO.js.map} +0 -0
- /package/dist/{chunk-W5GYHJAH.js.map → chunk-UKS5MJPA.js.map} +0 -0
- /package/dist/{chunk-QXVEPU5G.js.map → chunk-W23DZJNI.js.map} +0 -0
- /package/dist/{chunk-26BY5N4X.js.map → chunk-YMTSIRUK.js.map} +0 -0
|
@@ -3,56 +3,55 @@ import {
|
|
|
3
3
|
} from "./chunk-EDDHWZ2G.js";
|
|
4
4
|
import {
|
|
5
5
|
VolumePlug
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import {
|
|
8
|
-
SleepTimerPlug
|
|
9
|
-
} from "./chunk-FLRUCL3K.js";
|
|
6
|
+
} from "./chunk-CDKSSYGF.js";
|
|
10
7
|
import {
|
|
11
8
|
TimePlug
|
|
12
9
|
} from "./chunk-6HJQ4657.js";
|
|
13
10
|
import {
|
|
14
|
-
|
|
15
|
-
} from "./chunk-
|
|
11
|
+
SleepTimerPlug
|
|
12
|
+
} from "./chunk-FLRUCL3K.js";
|
|
16
13
|
import {
|
|
17
|
-
|
|
18
|
-
} from "./chunk-
|
|
14
|
+
TimeTravelPlug
|
|
15
|
+
} from "./chunk-LDT7RVZX.js";
|
|
19
16
|
import {
|
|
20
17
|
PlaybackRatePlug
|
|
21
18
|
} from "./chunk-HJTL3RDC.js";
|
|
22
19
|
import {
|
|
23
|
-
|
|
24
|
-
} from "./chunk-
|
|
20
|
+
PosterPlug
|
|
21
|
+
} from "./chunk-7Z3ELIF5.js";
|
|
25
22
|
import {
|
|
26
|
-
|
|
27
|
-
} from "./chunk-
|
|
23
|
+
OverlayPlug
|
|
24
|
+
} from "./chunk-YDEE32IH.js";
|
|
28
25
|
import {
|
|
29
26
|
PersistPlug
|
|
30
27
|
} from "./chunk-7VQGFCDP.js";
|
|
31
28
|
import {
|
|
32
|
-
|
|
33
|
-
} from "./chunk-
|
|
29
|
+
PanelPlug
|
|
30
|
+
} from "./chunk-FFUPTYZL.js";
|
|
34
31
|
import {
|
|
35
32
|
NotifiersPlug
|
|
36
33
|
} from "./chunk-6IHIYGRC.js";
|
|
34
|
+
import {
|
|
35
|
+
ObjectFitPlug
|
|
36
|
+
} from "./chunk-AFFUBWU7.js";
|
|
37
37
|
import {
|
|
38
38
|
ModesAirPlayPin
|
|
39
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-W23DZJNI.js";
|
|
40
40
|
import {
|
|
41
41
|
ModesCastPin
|
|
42
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-77SZDKWV.js";
|
|
43
43
|
import {
|
|
44
44
|
ModesFullscreenPin,
|
|
45
45
|
ModesMiniplayerPin,
|
|
46
46
|
ModesPictureInPicturePin,
|
|
47
47
|
ModesPlug,
|
|
48
48
|
ModesTheaterPin
|
|
49
|
-
} from "./chunk-
|
|
50
|
-
import {
|
|
51
|
-
KeysPlug
|
|
52
|
-
} from "./chunk-MVECTY6M.js";
|
|
49
|
+
} from "./chunk-OSUNW323.js";
|
|
53
50
|
import {
|
|
54
|
-
|
|
55
|
-
|
|
51
|
+
GesturePlug,
|
|
52
|
+
GestureTouchPin,
|
|
53
|
+
GestureWheelPin
|
|
54
|
+
} from "./chunk-B6L2LNRR.js";
|
|
56
55
|
import {
|
|
57
56
|
MetadataPlug
|
|
58
57
|
} from "./chunk-VXVCJNJA.js";
|
|
@@ -60,10 +59,11 @@ import {
|
|
|
60
59
|
FramePlug
|
|
61
60
|
} from "./chunk-MTX3WPFZ.js";
|
|
62
61
|
import {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
62
|
+
KeysPlug
|
|
63
|
+
} from "./chunk-MVECTY6M.js";
|
|
64
|
+
import {
|
|
65
|
+
LockedPlug
|
|
66
|
+
} from "./chunk-U32SPBGP.js";
|
|
67
67
|
import {
|
|
68
68
|
ErrorsPlug
|
|
69
69
|
} from "./chunk-TO4CTNVU.js";
|
|
@@ -72,7 +72,7 @@ import {
|
|
|
72
72
|
} from "./chunk-SSEY3TRB.js";
|
|
73
73
|
import {
|
|
74
74
|
CaptionsPlug
|
|
75
|
-
} from "./chunk-
|
|
75
|
+
} from "./chunk-LD6EP37L.js";
|
|
76
76
|
import {
|
|
77
77
|
ControlPanelDraggablePin,
|
|
78
78
|
ControlPanelPlug
|
|
@@ -85,22 +85,22 @@ import {
|
|
|
85
85
|
} from "./chunk-33S55DYW.js";
|
|
86
86
|
import {
|
|
87
87
|
AutoPlug
|
|
88
|
-
} from "./chunk-
|
|
88
|
+
} from "./chunk-LASLQXJC.js";
|
|
89
89
|
import {
|
|
90
90
|
BrightnessPlug
|
|
91
91
|
} from "./chunk-P7AWQTKX.js";
|
|
92
92
|
import {
|
|
93
93
|
AmbiencePlug
|
|
94
94
|
} from "./chunk-EJTIHJQW.js";
|
|
95
|
+
import {
|
|
96
|
+
LightPlug
|
|
97
|
+
} from "./chunk-2DR4K47N.js";
|
|
95
98
|
import {
|
|
96
99
|
SkeletonPlug
|
|
97
100
|
} from "./chunk-HJSF7FIY.js";
|
|
98
101
|
import {
|
|
99
102
|
DisabledPlug
|
|
100
103
|
} from "./chunk-L7JGVG2M.js";
|
|
101
|
-
import {
|
|
102
|
-
LightPlug
|
|
103
|
-
} from "./chunk-2DR4K47N.js";
|
|
104
104
|
import {
|
|
105
105
|
PlaylistPlug
|
|
106
106
|
} from "./chunk-II6VPOU3.js";
|
|
@@ -162,4 +162,4 @@ for (const Pin of [
|
|
|
162
162
|
GestureTouchPin
|
|
163
163
|
])
|
|
164
164
|
PinRegistry.register(Pin);
|
|
165
|
-
//# sourceMappingURL=chunk-
|
|
165
|
+
//# sourceMappingURL=chunk-2COEQIWO.js.map
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
HTML5Tech
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-KJX3SSWX.js";
|
|
4
|
+
import {
|
|
5
|
+
MSE_ENABLED
|
|
6
|
+
} from "./chunk-RNETXJ63.js";
|
|
4
7
|
import {
|
|
5
8
|
DASH_EXTENSIONS,
|
|
6
9
|
HLS_EXTENSIONS
|
|
7
10
|
} from "./chunk-2XJFCVED.js";
|
|
8
|
-
import {
|
|
9
|
-
MSE_ENABLED
|
|
10
|
-
} from "./chunk-RNETXJ63.js";
|
|
11
11
|
import {
|
|
12
12
|
loadResource
|
|
13
13
|
} from "./chunk-RCQPJKYI.js";
|
|
@@ -177,4 +177,4 @@ __publicField(ShakaTech, "techName", "shaka");
|
|
|
177
177
|
export {
|
|
178
178
|
ShakaTech
|
|
179
179
|
};
|
|
180
|
-
//# sourceMappingURL=chunk-
|
|
180
|
+
//# sourceMappingURL=chunk-4AULKZY5.js.map
|
|
@@ -1,10 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
formatSize,
|
|
3
|
-
getExtension,
|
|
4
|
-
getMimeTypeFromExtension,
|
|
5
|
-
noExtension,
|
|
6
|
-
smartFlatSort
|
|
7
|
-
} from "./chunk-MPZ62IDU.js";
|
|
8
1
|
import {
|
|
9
2
|
clampRGBBri,
|
|
10
3
|
convertToMonoChrome,
|
|
@@ -12,6 +5,13 @@ import {
|
|
|
12
5
|
getRGBBri,
|
|
13
6
|
getRGBSat
|
|
14
7
|
} from "./chunk-BUEWWAKN.js";
|
|
8
|
+
import {
|
|
9
|
+
formatSize,
|
|
10
|
+
getExtension,
|
|
11
|
+
getMimeTypeFromExtension,
|
|
12
|
+
noExtension,
|
|
13
|
+
smartFlatSort
|
|
14
|
+
} from "./chunk-MPZ62IDU.js";
|
|
15
15
|
import {
|
|
16
16
|
DUMMY_AUD,
|
|
17
17
|
DUMMY_VID,
|
|
@@ -26,24 +26,6 @@ import {
|
|
|
26
26
|
guardMethod,
|
|
27
27
|
onAllMethods
|
|
28
28
|
} from "./chunk-LB3KCUUK.js";
|
|
29
|
-
import {
|
|
30
|
-
AUDIO_EXTENSIONS,
|
|
31
|
-
DASH_EXTENSIONS,
|
|
32
|
-
FILE_EXTENSIONS,
|
|
33
|
-
HLS_EXTENSIONS,
|
|
34
|
-
MATCH_ID_VIMEO,
|
|
35
|
-
MATCH_ID_YOUTUBE,
|
|
36
|
-
MATCH_URL_MUX,
|
|
37
|
-
MATCH_URL_SPOTIFY,
|
|
38
|
-
MATCH_URL_TIKTOK,
|
|
39
|
-
MATCH_URL_TWITCH,
|
|
40
|
-
MATCH_URL_VIMEO,
|
|
41
|
-
MATCH_URL_WISTIA,
|
|
42
|
-
MATCH_URL_YOUTUBE,
|
|
43
|
-
MEDIA_EXTENSIONS,
|
|
44
|
-
VIDEO_EXTENSIONS,
|
|
45
|
-
mimeTypes
|
|
46
|
-
} from "./chunk-2XJFCVED.js";
|
|
47
29
|
import {
|
|
48
30
|
ANDROID_VERSION,
|
|
49
31
|
CHROME_VERSION,
|
|
@@ -71,6 +53,24 @@ import {
|
|
|
71
53
|
TOUCH_ENABLED,
|
|
72
54
|
queryMediaMobile
|
|
73
55
|
} from "./chunk-RNETXJ63.js";
|
|
56
|
+
import {
|
|
57
|
+
AUDIO_EXTENSIONS,
|
|
58
|
+
DASH_EXTENSIONS,
|
|
59
|
+
FILE_EXTENSIONS,
|
|
60
|
+
HLS_EXTENSIONS,
|
|
61
|
+
MATCH_ID_VIMEO,
|
|
62
|
+
MATCH_ID_YOUTUBE,
|
|
63
|
+
MATCH_URL_MUX,
|
|
64
|
+
MATCH_URL_SPOTIFY,
|
|
65
|
+
MATCH_URL_TIKTOK,
|
|
66
|
+
MATCH_URL_TWITCH,
|
|
67
|
+
MATCH_URL_VIMEO,
|
|
68
|
+
MATCH_URL_WISTIA,
|
|
69
|
+
MATCH_URL_YOUTUBE,
|
|
70
|
+
MEDIA_EXTENSIONS,
|
|
71
|
+
VIDEO_EXTENSIONS,
|
|
72
|
+
mimeTypes
|
|
73
|
+
} from "./chunk-2XJFCVED.js";
|
|
74
74
|
import {
|
|
75
75
|
addSources,
|
|
76
76
|
addTracks,
|
|
@@ -434,4 +434,4 @@ __export(utils_exports, {
|
|
|
434
434
|
export {
|
|
435
435
|
utils_exports
|
|
436
436
|
};
|
|
437
|
-
//# sourceMappingURL=chunk-
|
|
437
|
+
//# sourceMappingURL=chunk-52C7I5MC.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
HTML5Tech
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import {
|
|
5
|
-
HLS_EXTENSIONS
|
|
6
|
-
} from "./chunk-2XJFCVED.js";
|
|
3
|
+
} from "./chunk-KJX3SSWX.js";
|
|
7
4
|
import {
|
|
8
5
|
MSE_ENABLED
|
|
9
6
|
} from "./chunk-RNETXJ63.js";
|
|
7
|
+
import {
|
|
8
|
+
HLS_EXTENSIONS
|
|
9
|
+
} from "./chunk-2XJFCVED.js";
|
|
10
10
|
import {
|
|
11
11
|
loadResource
|
|
12
12
|
} from "./chunk-RCQPJKYI.js";
|
|
@@ -157,4 +157,4 @@ __publicField(HLSTech, "techName", "hls");
|
|
|
157
157
|
export {
|
|
158
158
|
HLSTech
|
|
159
159
|
};
|
|
160
|
-
//# sourceMappingURL=chunk-
|
|
160
|
+
//# sourceMappingURL=chunk-5TK2MCDO.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ModesPlug
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-OSUNW323.js";
|
|
4
4
|
import {
|
|
5
5
|
MODES_CAST_BUILD
|
|
6
6
|
} from "./chunk-OBT4ZZUV.js";
|
|
@@ -145,4 +145,4 @@ __publicField(ModesCastPin, "BUILD", MODES_CAST_BUILD);
|
|
|
145
145
|
export {
|
|
146
146
|
ModesCastPin
|
|
147
147
|
};
|
|
148
|
-
//# sourceMappingURL=chunk-
|
|
148
|
+
//# sourceMappingURL=chunk-77SZDKWV.js.map
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
ShakaTech
|
|
3
|
-
} from "./chunk-JX4ED2TF.js";
|
|
4
1
|
import {
|
|
5
2
|
VIMEO_EVENTS,
|
|
6
3
|
VimeoTech
|
|
@@ -10,16 +7,19 @@ import {
|
|
|
10
7
|
} from "./chunk-S3LYKHDY.js";
|
|
11
8
|
import {
|
|
12
9
|
DashTech
|
|
13
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-YMTSIRUK.js";
|
|
14
11
|
import {
|
|
15
12
|
HLSTech
|
|
16
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-5TK2MCDO.js";
|
|
14
|
+
import {
|
|
15
|
+
ShakaTech
|
|
16
|
+
} from "./chunk-4AULKZY5.js";
|
|
17
17
|
import {
|
|
18
18
|
IMATech
|
|
19
19
|
} from "./chunk-FRT22KFJ.js";
|
|
20
20
|
import {
|
|
21
21
|
HTML5Tech
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-KJX3SSWX.js";
|
|
23
23
|
import {
|
|
24
24
|
BaseTech,
|
|
25
25
|
cacheKeys
|
|
@@ -46,4 +46,4 @@ __export(techs_exports, {
|
|
|
46
46
|
export {
|
|
47
47
|
techs_exports
|
|
48
48
|
};
|
|
49
|
-
//# sourceMappingURL=chunk-
|
|
49
|
+
//# sourceMappingURL=chunk-7P3SODHT.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
init
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-KJX3SSWX.js";
|
|
4
4
|
import {
|
|
5
5
|
globalState
|
|
6
6
|
} from "./chunk-CFTZJH7J.js";
|
|
@@ -27,4 +27,4 @@ if ("undefined" !== typeof window) {
|
|
|
27
27
|
console.log("\x1B[38;2;139;69;19mTMG Media Player Unavailable\x1B[0m");
|
|
28
28
|
console.error("TMG Media Player cannot run in a terminal!"), console.warn("Consider moving to a browser environment to use the TMG Media Player");
|
|
29
29
|
}
|
|
30
|
-
//# sourceMappingURL=chunk-
|
|
30
|
+
//# sourceMappingURL=chunk-7QDSSDRH.js.map
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
AUDIO_CONTEXT,
|
|
9
9
|
connectToAudioManager,
|
|
10
10
|
disconnectFromAudioManager
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-KJX3SSWX.js";
|
|
12
12
|
import {
|
|
13
13
|
globalState
|
|
14
14
|
} from "./chunk-CFTZJH7J.js";
|
|
@@ -107,4 +107,4 @@ __publicField(VolumePlug, "BUILD", VOLUME_BUILD);
|
|
|
107
107
|
export {
|
|
108
108
|
VolumePlug
|
|
109
109
|
};
|
|
110
|
-
//# sourceMappingURL=chunk-
|
|
110
|
+
//# sourceMappingURL=chunk-CDKSSYGF.js.map
|
|
@@ -43,6 +43,15 @@ import {
|
|
|
43
43
|
import {
|
|
44
44
|
PlaybackRateNotifier
|
|
45
45
|
} from "./chunk-Q7S5GXUJ.js";
|
|
46
|
+
import {
|
|
47
|
+
volumeHigh
|
|
48
|
+
} from "./chunk-W6TNR6NH.js";
|
|
49
|
+
import {
|
|
50
|
+
volumeLow
|
|
51
|
+
} from "./chunk-CRVRDKEG.js";
|
|
52
|
+
import {
|
|
53
|
+
volumeMuted
|
|
54
|
+
} from "./chunk-2WOP45O7.js";
|
|
46
55
|
import {
|
|
47
56
|
AirPlayNotifier
|
|
48
57
|
} from "./chunk-XTIGTJKL.js";
|
|
@@ -55,21 +64,6 @@ import {
|
|
|
55
64
|
import {
|
|
56
65
|
BaseNotifier
|
|
57
66
|
} from "./chunk-EWCRERLL.js";
|
|
58
|
-
import {
|
|
59
|
-
videoTrack
|
|
60
|
-
} from "./chunk-AIJWNUXU.js";
|
|
61
|
-
import {
|
|
62
|
-
volumeHigh
|
|
63
|
-
} from "./chunk-W6TNR6NH.js";
|
|
64
|
-
import {
|
|
65
|
-
volumeLow
|
|
66
|
-
} from "./chunk-CRVRDKEG.js";
|
|
67
|
-
import {
|
|
68
|
-
volumeMuted
|
|
69
|
-
} from "./chunk-2WOP45O7.js";
|
|
70
|
-
import {
|
|
71
|
-
shuffle
|
|
72
|
-
} from "./chunk-OEHNS7YX.js";
|
|
73
67
|
import {
|
|
74
68
|
sort
|
|
75
69
|
} from "./chunk-QP2X53HC.js";
|
|
@@ -92,8 +86,8 @@ import {
|
|
|
92
86
|
unlock
|
|
93
87
|
} from "./chunk-TMTWPBFD.js";
|
|
94
88
|
import {
|
|
95
|
-
|
|
96
|
-
} from "./chunk-
|
|
89
|
+
videoTrack
|
|
90
|
+
} from "./chunk-AIJWNUXU.js";
|
|
97
91
|
import {
|
|
98
92
|
playlist
|
|
99
93
|
} from "./chunk-KLAI7YSD.js";
|
|
@@ -116,8 +110,8 @@ import {
|
|
|
116
110
|
settings
|
|
117
111
|
} from "./chunk-2J3FJY73.js";
|
|
118
112
|
import {
|
|
119
|
-
|
|
120
|
-
} from "./chunk-
|
|
113
|
+
shuffle
|
|
114
|
+
} from "./chunk-OEHNS7YX.js";
|
|
121
115
|
import {
|
|
122
116
|
next
|
|
123
117
|
} from "./chunk-MP2GRDUX.js";
|
|
@@ -140,8 +134,8 @@ import {
|
|
|
140
134
|
play
|
|
141
135
|
} from "./chunk-K4UHBEDT.js";
|
|
142
136
|
import {
|
|
143
|
-
|
|
144
|
-
} from "./chunk-
|
|
137
|
+
playbackRate
|
|
138
|
+
} from "./chunk-C3IEUYR3.js";
|
|
145
139
|
import {
|
|
146
140
|
expandMiniplayer
|
|
147
141
|
} from "./chunk-DN4TFOZV.js";
|
|
@@ -164,8 +158,8 @@ import {
|
|
|
164
158
|
loop
|
|
165
159
|
} from "./chunk-OSDM6ZVT.js";
|
|
166
160
|
import {
|
|
167
|
-
|
|
168
|
-
} from "./chunk-
|
|
161
|
+
mic
|
|
162
|
+
} from "./chunk-PEKXIISU.js";
|
|
169
163
|
import {
|
|
170
164
|
edit
|
|
171
165
|
} from "./chunk-NLJQAJZB.js";
|
|
@@ -188,8 +182,8 @@ import {
|
|
|
188
182
|
exitPip
|
|
189
183
|
} from "./chunk-OCWLEK2W.js";
|
|
190
184
|
import {
|
|
191
|
-
|
|
192
|
-
} from "./chunk-
|
|
185
|
+
exitTheater
|
|
186
|
+
} from "./chunk-CRH6DM5A.js";
|
|
193
187
|
import {
|
|
194
188
|
capture
|
|
195
189
|
} from "./chunk-HA2GK6KH.js";
|
|
@@ -212,8 +206,8 @@ import {
|
|
|
212
206
|
doubleTriangleRight
|
|
213
207
|
} from "./chunk-Q5TE3ZDK.js";
|
|
214
208
|
import {
|
|
215
|
-
|
|
216
|
-
} from "./chunk-
|
|
209
|
+
dragIndicator
|
|
210
|
+
} from "./chunk-ZLZCQ3KJ.js";
|
|
217
211
|
import {
|
|
218
212
|
autoplay
|
|
219
213
|
} from "./chunk-WTHHXWQM.js";
|
|
@@ -235,6 +229,9 @@ import {
|
|
|
235
229
|
import {
|
|
236
230
|
bwd
|
|
237
231
|
} from "./chunk-PV24XKW2.js";
|
|
232
|
+
import {
|
|
233
|
+
captions
|
|
234
|
+
} from "./chunk-CTSPKWKN.js";
|
|
238
235
|
import {
|
|
239
236
|
add
|
|
240
237
|
} from "./chunk-ID72UAJE.js";
|
|
@@ -248,20 +245,20 @@ import {
|
|
|
248
245
|
ambience
|
|
249
246
|
} from "./chunk-XHXIXEGS.js";
|
|
250
247
|
import {
|
|
251
|
-
|
|
252
|
-
} from "./chunk-
|
|
248
|
+
audioTrack
|
|
249
|
+
} from "./chunk-AH2VE4UI.js";
|
|
253
250
|
import {
|
|
254
251
|
Timeline
|
|
255
|
-
} from "./chunk-
|
|
252
|
+
} from "./chunk-UKS5MJPA.js";
|
|
253
|
+
import {
|
|
254
|
+
VolumeControl
|
|
255
|
+
} from "./chunk-RE2YAOIL.js";
|
|
256
256
|
import {
|
|
257
257
|
BrightnessControl
|
|
258
258
|
} from "./chunk-HFP6PLGE.js";
|
|
259
259
|
import {
|
|
260
260
|
RangeInput
|
|
261
261
|
} from "./chunk-C2QWEEZM.js";
|
|
262
|
-
import {
|
|
263
|
-
TheaterButton
|
|
264
|
-
} from "./chunk-CTXFLY7V.js";
|
|
265
262
|
import {
|
|
266
263
|
TimeButton
|
|
267
264
|
} from "./chunk-5D3HDH6Z.js";
|
|
@@ -271,9 +268,6 @@ import {
|
|
|
271
268
|
import {
|
|
272
269
|
VoiceButton
|
|
273
270
|
} from "./chunk-V7NE5HVK.js";
|
|
274
|
-
import {
|
|
275
|
-
Meta
|
|
276
|
-
} from "./chunk-WMDE4WR7.js";
|
|
277
271
|
import {
|
|
278
272
|
NextButton
|
|
279
273
|
} from "./chunk-ZJTUWRBI.js";
|
|
@@ -296,8 +290,8 @@ import {
|
|
|
296
290
|
SettingsButton
|
|
297
291
|
} from "./chunk-WZINXIIW.js";
|
|
298
292
|
import {
|
|
299
|
-
|
|
300
|
-
} from "./chunk-
|
|
293
|
+
TheaterButton
|
|
294
|
+
} from "./chunk-CTXFLY7V.js";
|
|
301
295
|
import {
|
|
302
296
|
ChapterButton
|
|
303
297
|
} from "./chunk-TBXDQT5T.js";
|
|
@@ -320,8 +314,8 @@ import {
|
|
|
320
314
|
FullscreenOrientationButton
|
|
321
315
|
} from "./chunk-ZYZP6OTZ.js";
|
|
322
316
|
import {
|
|
323
|
-
|
|
324
|
-
} from "./chunk-
|
|
317
|
+
Meta
|
|
318
|
+
} from "./chunk-WMDE4WR7.js";
|
|
325
319
|
import {
|
|
326
320
|
AirPlayButton
|
|
327
321
|
} from "./chunk-X3RI4YSK.js";
|
|
@@ -343,6 +337,9 @@ import {
|
|
|
343
337
|
import {
|
|
344
338
|
CaptureButton
|
|
345
339
|
} from "./chunk-EJV73FIY.js";
|
|
340
|
+
import {
|
|
341
|
+
CastButton
|
|
342
|
+
} from "./chunk-6OT6DHIW.js";
|
|
346
343
|
import {
|
|
347
344
|
AirPlayPlaceholder
|
|
348
345
|
} from "./chunk-6QYP3OA6.js";
|
|
@@ -352,6 +349,9 @@ import {
|
|
|
352
349
|
import {
|
|
353
350
|
ErrorPlaceholder
|
|
354
351
|
} from "./chunk-IU2B6VX5.js";
|
|
352
|
+
import {
|
|
353
|
+
PiPPlaceholder
|
|
354
|
+
} from "./chunk-6XZXEBLR.js";
|
|
355
355
|
import {
|
|
356
356
|
Buffer
|
|
357
357
|
} from "./chunk-IA77Q36X.js";
|
|
@@ -498,4 +498,4 @@ __export(components_exports, {
|
|
|
498
498
|
export {
|
|
499
499
|
components_exports
|
|
500
500
|
};
|
|
501
|
-
//# sourceMappingURL=chunk-
|
|
501
|
+
//# sourceMappingURL=chunk-EBFAGVND.js.map
|
|
@@ -120,31 +120,31 @@ var PanelPlug = class extends BasePlug {
|
|
|
120
120
|
</div>
|
|
121
121
|
<h3 style="margin-top: 0; margin-bottom: 10px; border-bottom: 1px solid currentColor; padding-bottom: 5px; opacity: 0.85;">\u{1F39B}\uFE0F The Smart Canvas (Mouse & Touch)</h3>
|
|
122
122
|
<ul style="padding-left: 20px; line-height: 1.6; margin-bottom: 25px;">
|
|
123
|
-
<li><strong>Hyper-speed on demand:</strong> Click and hold the right side of the video screen or the play key (<strong>Spacebar</strong>) to fast-forward, left side or <strong>Shift</strong> + play key rewinds.</li>
|
|
124
|
-
<li><strong>Smart scrubbing:</strong> Don't hunt for the tiny progress bar. Just scroll horizontally across the middle of the screen to scrub smoothly through time.</li>
|
|
125
|
-
<li><strong>Invisible sliders:</strong> Scroll vertically on the <em>right edge</em> for Volume, and the <em>left edge</em> for Brightness.</li>
|
|
126
|
-
<li><strong>Precision taps:</strong> Double-tap the edges to skip forward or backward. Double tap the center to toggle Fullscreen (or Play/Pause on mobile).</li>
|
|
123
|
+
<li><p><strong>Hyper-speed on demand:</strong> Click and hold the right side of the video screen or the play key (<strong>Spacebar</strong>) to fast-forward, left side or <strong>Shift</strong> + play key rewinds.</p></li>
|
|
124
|
+
<li><p><strong>Smart scrubbing:</strong> Don't hunt for the tiny progress bar. Just scroll horizontally across the middle of the screen to scrub smoothly through time.</p></li>
|
|
125
|
+
<li><p><strong>Invisible sliders:</strong> Scroll vertically on the <em>right edge</em> for Volume, and the <em>left edge</em> for Brightness.</p></li>
|
|
126
|
+
<li><p><strong>Precision taps:</strong> Double-tap the edges to skip forward or backward. Double tap the center to toggle Fullscreen (or Play/Pause on mobile).</p></li>
|
|
127
127
|
</ul>
|
|
128
128
|
<h3 style="margin-top: 0; margin-bottom: 10px; border-bottom: 1px solid currentColor; padding-bottom: 5px; opacity: 0.85;">\u{1F3D7}\uFE0F Total UI Control</h3>
|
|
129
129
|
<ul style="padding-left: 20px; line-height: 1.6; margin-bottom: 25px;">
|
|
130
|
-
<li><strong>Build your own player:</strong> Don't like our layout? <strong>Click and drag</strong> almost "any" button on the control bars to physically rearrange the interface exactly how you want it.</li>
|
|
131
|
-
<li><strong>Draggable subtitles:</strong> Subtitles blocking a crucial part of the scene? Just grab the text box and drag it anywhere else on the screen.</li>
|
|
132
|
-
<li><strong>The chameleon engine:</strong> Head to settings and set your Brand/Theme colors to "Video Derived". TVP will actively analyze the video frames and extract dominant colors to paint the UI dynamically.</li>
|
|
133
|
-
<li><strong>Descriptive hints:</strong> Hover over the controls to expose their tooltips and get more information about how to trigger each function.</li>
|
|
130
|
+
<li><p><strong>Build your own player:</strong> Don't like our layout? <strong>Click and drag</strong> almost "any" button on the control bars to physically rearrange the interface exactly how you want it.</p></li>
|
|
131
|
+
<li><p><strong>Draggable subtitles:</strong> Subtitles blocking a crucial part of the scene? Just grab the text box and drag it anywhere else on the screen.</p></li>
|
|
132
|
+
<li><p><strong>The chameleon engine:</strong> Head to settings and set your Brand/Theme colors to "Video Derived". TVP will actively analyze the video frames and extract dominant colors to paint the UI dynamically.</p></li>
|
|
133
|
+
<li><p><strong>Descriptive hints:</strong> Hover over the controls to expose their tooltips and get more information about how to trigger each function.</p></li>
|
|
134
134
|
</ul>
|
|
135
135
|
<h3 style="margin-top: 0; margin-bottom: 10px; border-bottom: 1px solid currentColor; padding-bottom: 5px; opacity: 0.85;">\u2328\uFE0F Keyboard Ninja Status</h3>
|
|
136
136
|
<ul style="padding-left: 20px; line-height: 1.6; margin-bottom: 25px;">
|
|
137
|
-
<li><strong>The playback trinity (J, K, L):</strong> Skip backward, Play/Pause, and Skip forward like a pro editor. Do the same with arrow keys, hold <strong>Ctrl</strong>, <strong>Shift</strong> or <strong>Alt</strong> to spice things up.</li>
|
|
138
|
-
<li><strong>Time travel:</strong> Hit any number key to jump to that percentage of the video (e.g., hitting '5' jumps to the exact middle). <em>(Easter Egg: Undo or Redo with <strong>Ctrl + Z</strong> and <strong>Ctrl + Y</strong>)</em></li>
|
|
139
|
-
<li><strong>Frame-by-frame:</strong> Paused the video? Use <strong>,</strong> (comma) and <strong>.</strong> (period) to step backward or forward one single frame at a time.</li>
|
|
140
|
-
<li><strong>Warp speed:</strong> Use <strong>></strong> and <strong><</strong> to crank the playback speed up or down.</li>
|
|
137
|
+
<li><p><strong>The playback trinity (J, K, L):</strong> Skip backward, Play/Pause, and Skip forward like a pro editor. Do the same with arrow keys, hold <strong>Ctrl</strong>, <strong>Shift</strong> or <strong>Alt</strong> to spice things up.</p></li>
|
|
138
|
+
<li><p><strong>Time travel:</strong> Hit any number key to jump to that percentage of the video (e.g., hitting '5' jumps to the exact middle). <em>(Easter Egg: Undo or Redo with <strong>Ctrl + Z</strong> and <strong>Ctrl + Y</strong>)</em></p></li>
|
|
139
|
+
<li><p><strong>Frame-by-frame:</strong> Paused the video? Use <strong>,</strong> (comma) and <strong>.</strong> (period) to step backward or forward one single frame at a time.</p></li>
|
|
140
|
+
<li><p><strong>Warp speed:</strong> Use <strong>></strong> and <strong><</strong> to crank the playback speed up or down.</p></li>
|
|
141
141
|
</ul>
|
|
142
142
|
<h3 style="margin-top: 0; margin-bottom: 10px; border-bottom: 1px solid currentColor; padding-bottom: 5px; opacity: 0.85;">\u{1F52C} Advanced Window Tech</h3>
|
|
143
143
|
<ul style="padding-left: 20px; line-height: 1.6; margin-bottom: 20px;">
|
|
144
|
-
<li><strong>The snapshot engine:</strong> Click the Camera icon or press <strong>s</strong> to screenshot a high-res image of the exact frame. <em>(Easter Egg: Double-Click or press <strong>Alt + s</strong> to capture in pure Black & White!)</em></li>
|
|
145
|
-
<li><strong>Ultra-readable time:</strong> Click the time display or press <strong>q</strong> to toggle between elapsed time and remaining time. <em>(Easter Egg: Double-Click or press <strong>z</strong> to display the time in different formats!)</em></li>
|
|
146
|
-
<li><strong>Floating miniplayer:</strong> Start playing a video and just scroll down the page. TVP will automatically detach into a draggable miniplayer so you never miss a second.</li>
|
|
147
|
-
<li><strong>Custom picture-in-picture:</strong> We bypassed standard browser limits to give you a floating player that actually keeps all your custom UI controls intact.</li>
|
|
144
|
+
<li><p><strong>The snapshot engine:</strong> Click the Camera icon or press <strong>s</strong> to screenshot a high-res image of the exact frame. <em>(Easter Egg: Double-Click or press <strong>Alt + s</strong> to capture in pure Black & White!)</em></p></li>
|
|
145
|
+
<li><p><strong>Ultra-readable time:</strong> Click the time display or press <strong>q</strong> to toggle between elapsed time and remaining time. <em>(Easter Egg: Double-Click or press <strong>z</strong> to display the time in different formats!)</em></p></li>
|
|
146
|
+
<li><p><strong>Floating miniplayer:</strong> Start playing a video and just scroll down the page. TVP will automatically detach into a draggable miniplayer so you never miss a second.</p></li>
|
|
147
|
+
<li><p><strong>Custom picture-in-picture:</strong> We bypassed standard browser limits to give you a floating player that actually keeps all your custom UI controls intact.</p></li>
|
|
148
148
|
</ul>
|
|
149
149
|
<div style="text-align: center; margin-top: 30px; padding: 15px; border-radius: 8px; background: rgba(128, 128, 128, 0.1);">
|
|
150
150
|
<p style="margin: 0 0 10px 0;"><strong>Enjoy the player.</strong> We're still in active development, but already miles ahead. Welcome to the bleeding edge.</p>
|
|
@@ -167,4 +167,4 @@ __publicField(PanelPlug, "BUILD", SETTINGS_BUILD);
|
|
|
167
167
|
export {
|
|
168
168
|
PanelPlug
|
|
169
169
|
};
|
|
170
|
-
//# sourceMappingURL=chunk-
|
|
170
|
+
//# sourceMappingURL=chunk-FFUPTYZL.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/ts/plugs/settings/panel/index.ts"],"sourcesContent":["import { silence } from \"sia-reactor/modules\";\r\nimport { BasePlug } from \"../../base\";\r\nimport { SETTINGS_BUILD } from \"./build\";\r\nimport type { panelConfig, panelState } from \"./types\";\r\nimport { SettingsMenu } from \"./menu\";\r\nimport { createEl } from \"@utils/dom\";\r\nimport { mockAsync } from \"@utils/fn\";\r\nimport { parseCSSTime } from \"@utils/str\";\r\nimport type { Controller } from \"@core/controller\";\r\nimport { isPOJO } from \"@utils/obj\";\r\n\r\nexport class PanelPlug extends BasePlug<panelConfig, panelState> {\r\n public static readonly plugName = \"panel\";\r\n public static readonly BUILD = SETTINGS_BUILD;\r\n public closeBtn!: HTMLButtonElement | null;\r\n public menu!: SettingsMenu;\r\n protected wasPaused = false;\r\n\r\n constructor(ctlr: Controller, config = ctlr.settings.panel) {\r\n super(ctlr, config, { viewOpen: false });\r\n this.menu = new SettingsMenu(this.ctlr, this.config.menu);\r\n }\r\n\r\n public override mount(): void {\r\n this.closeBtn = this.ctlr.queryDOM(\".tmg-media-settings-close-btn\")!;\r\n this.menu.onViewClick = this.toggleView;\r\n }\r\n public override unmount(): void {\r\n this.media.container.classList.remove(\"tmg-media-more-settings\");\r\n this.ctlr.queryDOM(\".tmg-media-settings-tips-btn\")?.remove(), this.ctlr.queryDOM(\".tmg-media-settings-brand-wrapper\")?.remove(), this.ctlr.queryDOM(\".tmg-media-settings-theme-wrapper\")?.remove();\r\n }\r\n\r\n public override wire(): void {\r\n // Event Listeners\r\n this.closeBtn?.addEventListener(\"click\", this.exitMore, { signal: this.signal });\r\n // Ctlr Media Listeners\r\n this.media.on(\"state.paused\", ({ value }) => !value && this.exitMore(), { signal: this.signal });\r\n // Post Wiring\r\n this.ctlr.learn(\"settings\", { fn: () => this.menu.toggle(undefined, true) }, this.signal);\r\n !this.config.menu.disabled && this.menu.wire(), super.wire();\r\n }\r\n\r\n public async enterMore(): Promise<void> {\r\n if (this.ctlr.isUIActive(\"moreSettings\")) return;\r\n if (!this.viewReady) this.initView(), (this.viewReady = true);\r\n (this.wasPaused = this.media.state.paused), this.config.autoPause && silence(() => (this.media.intent.paused = true));\r\n !isPOJO(this.menu.anchor) && this.menu.close(), this.media.container.classList.add(\"tmg-media-more-settings\"), (this.state.viewOpen = true);\r\n await mockAsync(parseCSSTime(this.settings.css.panelTransitionTime));\r\n this.ctlr.plug(\"settings.overlay\")?.show();\r\n this.ctlr.DOM.settings?.removeAttribute(\"inert\"), this.ctlr.DOM.containerContent?.setAttribute(\"inert\", \"\");\r\n !isPOJO(this.menu.anchor) && this.closeBtn?.focus();\r\n } // #STANDALONE: needs scoped behavior\r\n private viewReady = false;\r\n\r\n public async exitMore(): Promise<void> {\r\n if (!this.ctlr.isUIActive(\"moreSettings\")) return;\r\n !isPOJO(this.menu.anchor) && this.menu.close(), this.media.container.classList.remove(\"tmg-media-more-settings\"), (this.state.viewOpen = false);\r\n await mockAsync(parseCSSTime(this.settings.css.panelTransitionTime));\r\n this.config.autoPause && silence(() => (this.media.intent.paused = this.wasPaused));\r\n this.ctlr.DOM.settings?.setAttribute(\"inert\", \"\"), this.ctlr.DOM.containerContent?.removeAttribute(\"inert\");\r\n } // #STANDALONE: needs scoped behavior\r\n\r\n public async toggleView(): Promise<void> {\r\n this.ctlr.isUIActive(\"moreSettings\") ? await this.exitMore() : await this.enterMore();\r\n }\r\n\r\n private initView() {\r\n // Theming\r\n // prettier-ignore\r\n const options = [{ option: \"Light Blue\", value: \"#3198f5\" }, { option: \"Hot Pink\", value: \"#ff69b4\" }, { option: \"Fiery Red\", value: \"#ff0033\" }, { option: \"Dark Turquoise\", value: \"#00ced1\" }, { option: \"Custom Hue\", value: \"custom\" }, { option: \"Video Derived\", value: \"auto\" }],\r\n gcolors = options.slice(0, -2).map((opt) => opt.value),\r\n defs = { brand: this.settings.css.brandColor as string ?? \"#e26e02\", theme: this.settings.css.themeColor as string ?? \"#ffffff\", bcolors: [\"#e26e02\", ...gcolors], tcolors: [\"#ffffff\", ...gcolors] },\r\n bField = t007.field({ type: \"select\", label: \"Brand Color\", helperText: { info: \"Try changing your brand color\" }, options: [{ option: \"Tastey Orange\", value: \"#e26e02\" }, ...options], value: !defs.bcolors.includes(defs.brand as string) ? (!this.settings.css.syncWithMedia.brandColor ? \"custom\" : \"auto\") : defs.brand }),\r\n cBField = t007.field({ type: \"color\" }),\r\n tField = t007.field({ type: \"select\", label: \"Theme Color\", helperText: { info: \"Also try changing your theme color\" }, options: [{ option: \"Pure White\", value: \"#ffffff\" }, ...options], value: !defs.tcolors.includes(defs.theme as string) ? (!this.settings.css.syncWithMedia.themeColor ? \"custom\" : \"auto\") : defs.theme }),\r\n cTField = t007.field({ type: \"color\" }),\r\n bWrapper = createEl(\"div\", { className: \"tmg-media-settings-brand-wrapper\" }),\r\n tWrapper = createEl(\"div\", { className: \"tmg-media-settings-theme-wrapper\" });\r\n this.ctlr.config.watch(\"settings.css.brandColor\", (v = defs.brand) => ((v = (v as string).toLowerCase()), (cBField.inputEl.value = v), (bField.inputEl.value = !defs.bcolors.includes(v) ? (!this.settings.css.syncWithMedia.brandColor ? \"custom\" : \"auto\") : v)), { init: true, signal: this.signal });\r\n this.ctlr.config.watch(\"settings.css.themeColor\", (v = defs.theme) => ((v = (v as string).toLowerCase()), (cTField.inputEl.value = v), (tField.inputEl.value = !defs.tcolors.includes(v) ? (!this.settings.css.syncWithMedia.themeColor ? \"custom\" : \"auto\") : v)), { init: true, signal: this.signal });\r\n this.ctlr.DOM.settingsBottomPanel?.append((bWrapper.append(bField, cBField), bWrapper), (tWrapper.append(tField, cTField), tWrapper));\r\n const id = { theme: \"\", brand: \"\" },\r\n sync = (cb: any, req = true, type = \"brand\") => ((this.settings.css.syncWithMedia[`${type}Color`] = req), cb(req)),\r\n assert = (opts: any, type: \"brand\" | \"theme\" = \"brand\") => this.ctlr.toast?.update(id[type], opts),\r\n onBColorChange = ({ target: { value: val } }: any) =>\r\n this.ctlr.throttle(\r\n \"brandColorPicking\",\r\n async () => {\r\n id.brand && t007.toast?.dismiss(id.brand);\r\n let col;\r\n if (val === \"custom\") return cBField.inputEl.click();\r\n if (val !== \"auto\") col = this.settings.css.brandColor = val;\r\n else col = this.settings.css.brandColor = (this.media.status.loadedData ? await this.ctlr.plug(\"settings.frame\")?.getMainColor(this.media.state.currentTime, this.media.features.frameCapture ? \"\" : undefined) : null) ?? this.ctlr.plug(\"settings.css\")?.build.brandColor!; // said 'video' not 'poster' derived\r\n const cb = (s: any) => (bField.inputEl.value = defs.bcolors.includes(col as string) ? (col as string) : s ? \"auto\" : \"custom\"),\r\n No = () => (sync(cb, false), assert({ actions: { Yes } })),\r\n Yes = () => (sync(cb, true), assert({ actions: { No } }));\r\n sync(cb, val === \"auto\");\r\n val === \"auto\" && (id.brand = this.ctlr.toast?.(\"The brand color will change anytime a video loads\", { icon: \"🎨\", autoClose: 15000, hideProgressBar: false, actions: { No }, onClose: () => (id.brand = \"\"), signal: this.signal }) || \"\");\r\n },\r\n 150\r\n ),\r\n onTColorChange = ({ target: { value: val } }: any) =>\r\n this.ctlr.throttle(\r\n \"themeColorPicking\",\r\n async () => {\r\n id.theme && t007.toast?.dismiss(id.theme);\r\n let col;\r\n if (val === \"custom\") return cTField.inputEl.click();\r\n if (val !== \"auto\") col = this.settings.css.themeColor = val;\r\n else col = this.settings.css.themeColor = (this.media.status.loadedData ? await this.ctlr.plug(\"settings.frame\")?.getMainColor(this.media.state.currentTime, this.media.features.frameCapture ? \"\" : undefined) : null) ?? this.ctlr.plug(\"settings.css\")?.build.themeColor!;\r\n const cb = (s: any) => (tField.inputEl.value = defs.tcolors.includes(col as string) ? (col as string) : s ? \"auto\" : \"custom\"),\r\n No = () => (sync(cb, false, \"theme\"), assert({ actions: { Yes } }, \"theme\")),\r\n Yes = () => (sync(cb, true, \"theme\"), assert({ actions: { No } }, \"theme\"));\r\n sync(cb, val === \"auto\", \"theme\");\r\n val === \"auto\" && (id.theme = this.ctlr.toast?.(\"The theme color will change anytime a video loads\", { icon: \"🎨\", autoClose: 15000, hideProgressBar: false, actions: { No }, onClose: () => (id.theme = \"\"), signal: this.signal }) || \"\");\r\n },\r\n 150\r\n );\r\n bField.inputEl.addEventListener(\"input\", onBColorChange, { signal: this.signal }), cBField.inputEl.addEventListener(\"input\", onBColorChange, { signal: this.signal });\r\n tField.inputEl.addEventListener(\"input\", onTColorChange, { signal: this.signal }), cTField.inputEl.addEventListener(\"input\", onTColorChange, { signal: this.signal });\r\n // Helpful Tips\r\n const tipsBtn = createEl(\"button\", { className: \"tmg-media-settings-tips-btn\", innerHTML: `<span>💡 Did You Know?</span>` });\r\n this.closeBtn?.insertAdjacentElement(\"afterend\", tipsBtn);\r\n tipsBtn.addEventListener(\"click\", this.showTipsDialog, { signal: this.signal });\r\n }\r\n\r\n private getTipsHTML() {\r\n return `\r\n <div style=\"font-family: inherit; color: inherit;\">\r\n <div style=\"text-align: center; margin-bottom: 25px;\">\r\n <h2 style=\"margin: 0 0 10px 0; letter-spacing: -0.5px;\">🎬 Welcome to TVP</h2>\r\n <p style=\"margin: 0; opacity: 0.9; line-height: 1.5;\">\r\n You aren't just watching a video; you're sitting in the cockpit of the most advanced, performance-first media engine on the web. We are thrilled to have you here. \r\n <br><strong>Here is your official flight manual to unlock its full power:</strong>\r\n </p>\r\n </div>\r\n <h3 style=\"margin-top: 0; margin-bottom: 10px; border-bottom: 1px solid currentColor; padding-bottom: 5px; opacity: 0.85;\">🎛️ The Smart Canvas (Mouse & Touch)</h3>\r\n <ul style=\"padding-left: 20px; line-height: 1.6; margin-bottom: 25px;\">\r\n <li><p><strong>Hyper-speed on demand:</strong> Click and hold the right side of the video screen or the play key (<strong>Spacebar</strong>) to fast-forward, left side or <strong>Shift</strong> + play key rewinds.</p></li>\r\n <li><p><strong>Smart scrubbing:</strong> Don't hunt for the tiny progress bar. Just scroll horizontally across the middle of the screen to scrub smoothly through time.</p></li>\r\n <li><p><strong>Invisible sliders:</strong> Scroll vertically on the <em>right edge</em> for Volume, and the <em>left edge</em> for Brightness.</p></li>\r\n <li><p><strong>Precision taps:</strong> Double-tap the edges to skip forward or backward. Double tap the center to toggle Fullscreen (or Play/Pause on mobile).</p></li>\r\n </ul>\r\n <h3 style=\"margin-top: 0; margin-bottom: 10px; border-bottom: 1px solid currentColor; padding-bottom: 5px; opacity: 0.85;\">🏗️ Total UI Control</h3>\r\n <ul style=\"padding-left: 20px; line-height: 1.6; margin-bottom: 25px;\">\r\n <li><p><strong>Build your own player:</strong> Don't like our layout? <strong>Click and drag</strong> almost \"any\" button on the control bars to physically rearrange the interface exactly how you want it.</p></li>\r\n <li><p><strong>Draggable subtitles:</strong> Subtitles blocking a crucial part of the scene? Just grab the text box and drag it anywhere else on the screen.</p></li>\r\n <li><p><strong>The chameleon engine:</strong> Head to settings and set your Brand/Theme colors to \"Video Derived\". TVP will actively analyze the video frames and extract dominant colors to paint the UI dynamically.</p></li>\r\n <li><p><strong>Descriptive hints:</strong> Hover over the controls to expose their tooltips and get more information about how to trigger each function.</p></li>\r\n </ul>\r\n <h3 style=\"margin-top: 0; margin-bottom: 10px; border-bottom: 1px solid currentColor; padding-bottom: 5px; opacity: 0.85;\">⌨️ Keyboard Ninja Status</h3>\r\n <ul style=\"padding-left: 20px; line-height: 1.6; margin-bottom: 25px;\">\r\n <li><p><strong>The playback trinity (J, K, L):</strong> Skip backward, Play/Pause, and Skip forward like a pro editor. Do the same with arrow keys, hold <strong>Ctrl</strong>, <strong>Shift</strong> or <strong>Alt</strong> to spice things up.</p></li>\r\n <li><p><strong>Time travel:</strong> Hit any number key to jump to that percentage of the video (e.g., hitting '5' jumps to the exact middle). <em>(Easter Egg: Undo or Redo with <strong>Ctrl + Z</strong> and <strong>Ctrl + Y</strong>)</em></p></li>\r\n <li><p><strong>Frame-by-frame:</strong> Paused the video? Use <strong>,</strong> (comma) and <strong>.</strong> (period) to step backward or forward one single frame at a time.</p></li>\r\n <li><p><strong>Warp speed:</strong> Use <strong>></strong> and <strong><</strong> to crank the playback speed up or down.</p></li>\r\n </ul>\r\n <h3 style=\"margin-top: 0; margin-bottom: 10px; border-bottom: 1px solid currentColor; padding-bottom: 5px; opacity: 0.85;\">🔬 Advanced Window Tech</h3>\r\n <ul style=\"padding-left: 20px; line-height: 1.6; margin-bottom: 20px;\">\r\n <li><p><strong>The snapshot engine:</strong> Click the Camera icon or press <strong>s</strong> to screenshot a high-res image of the exact frame. <em>(Easter Egg: Double-Click or press <strong>Alt + s</strong> to capture in pure Black & White!)</em></p></li>\r\n <li><p><strong>Ultra-readable time:</strong> Click the time display or press <strong>q</strong> to toggle between elapsed time and remaining time. <em>(Easter Egg: Double-Click or press <strong>z</strong> to display the time in different formats!)</em></p></li>\r\n <li><p><strong>Floating miniplayer:</strong> Start playing a video and just scroll down the page. TVP will automatically detach into a draggable miniplayer so you never miss a second.</p></li>\r\n <li><p><strong>Custom picture-in-picture:</strong> We bypassed standard browser limits to give you a floating player that actually keeps all your custom UI controls intact.</p></li>\r\n </ul>\r\n <div style=\"text-align: center; margin-top: 30px; padding: 15px; border-radius: 8px; background: rgba(128, 128, 128, 0.1);\">\r\n <p style=\"margin: 0 0 10px 0;\"><strong>Enjoy the player.</strong> We're still in active development, but already miles ahead. Welcome to the bleeding edge.</p>\r\n <p style=\"margin: 0; opacity: 0.8;\">🧪 <strong>beta tester?</strong> Find the Settings advanced menu to travel through linear time, or <a href=\"mailto:tobioketade007@gmail.com\" style=\"color: inherit; text-decoration: underline;\">drop me an email</a> to collaborate!</p>\r\n </div>\r\n </div>\r\n `;\r\n }\r\n\r\n private async showTipsDialog() {\r\n await this.exitMore();\r\n t007.alert(this.getTipsHTML(), { id: `${this.ctlr.config.id}-tips-dialog`, rootElement: this.ctlr.DOM.containerContent, confirmText: \"Got it!\" });\r\n }\r\n\r\n protected override onDestroy(): void {\r\n this.menu.destroy(), super.onDestroy();\r\n }\r\n}\r\n\r\ndeclare module \"@defs/registries\" {\r\n interface PlugRegistryMap {\r\n \"settings.panel\": typeof PanelPlug;\r\n }\r\n}\r\n\r\ndeclare module \"@defs/config\" {\r\n interface Settings {\r\n panel: panelConfig;\r\n }\r\n}\r\n\r\nexport type * from \"./types\";\r\nexport * from \"./build\";\r\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAS,eAAe;AAWjB,IAAM,YAAN,cAAwB,SAAkC;AAAA,EAO/D,YAAY,MAAkB,SAAS,KAAK,SAAS,OAAO;AAC1D,UAAM,MAAM,QAAQ,EAAE,UAAU,MAAM,CAAC;AALzC,wBAAO;AACP,wBAAO;AACP,wBAAU,aAAY;AAoCtB;AAAA,wBAAQ,aAAY;AAhClB,SAAK,OAAO,IAAI,aAAa,KAAK,MAAM,KAAK,OAAO,IAAI;AAAA,EAC1D;AAAA,EAEgB,QAAc;AAC5B,SAAK,WAAW,KAAK,KAAK,SAAS,+BAA+B;AAClE,SAAK,KAAK,cAAc,KAAK;AAAA,EAC/B;AAAA,EACgB,UAAgB;AAC9B,SAAK,MAAM,UAAU,UAAU,OAAO,yBAAyB;AAC/D,SAAK,KAAK,SAAS,8BAA8B,GAAG,OAAO,GAAG,KAAK,KAAK,SAAS,mCAAmC,GAAG,OAAO,GAAG,KAAK,KAAK,SAAS,mCAAmC,GAAG,OAAO;AAAA,EACnM;AAAA,EAEgB,OAAa;AAE3B,SAAK,UAAU,iBAAiB,SAAS,KAAK,UAAU,EAAE,QAAQ,KAAK,OAAO,CAAC;AAE/E,SAAK,MAAM,GAAG,gBAAgB,CAAC,EAAE,MAAM,MAAM,CAAC,SAAS,KAAK,SAAS,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC;AAE/F,SAAK,KAAK,MAAM,YAAY,EAAE,IAAI,MAAM,KAAK,KAAK,OAAO,QAAW,IAAI,EAAE,GAAG,KAAK,MAAM;AACxF,KAAC,KAAK,OAAO,KAAK,YAAY,KAAK,KAAK,KAAK,GAAG,MAAM,KAAK;AAAA,EAC7D;AAAA,EAEA,MAAa,YAA2B;AACtC,QAAI,KAAK,KAAK,WAAW,cAAc,EAAG;AAC1C,QAAI,CAAC,KAAK,UAAW,MAAK,SAAS,GAAI,KAAK,YAAY;AACxD,IAAC,KAAK,YAAY,KAAK,MAAM,MAAM,QAAS,KAAK,OAAO,aAAa,QAAQ,MAAO,KAAK,MAAM,OAAO,SAAS,IAAK;AACpH,KAAC,OAAO,KAAK,KAAK,MAAM,KAAK,KAAK,KAAK,MAAM,GAAG,KAAK,MAAM,UAAU,UAAU,IAAI,yBAAyB,GAAI,KAAK,MAAM,WAAW;AACtI,UAAM,UAAU,aAAa,KAAK,SAAS,IAAI,mBAAmB,CAAC;AACnE,SAAK,KAAK,KAAK,kBAAkB,GAAG,KAAK;AACzC,SAAK,KAAK,IAAI,UAAU,gBAAgB,OAAO,GAAG,KAAK,KAAK,IAAI,kBAAkB,aAAa,SAAS,EAAE;AAC1G,KAAC,OAAO,KAAK,KAAK,MAAM,KAAK,KAAK,UAAU,MAAM;AAAA,EACpD;AAAA,EAGA,MAAa,WAA0B;AACrC,QAAI,CAAC,KAAK,KAAK,WAAW,cAAc,EAAG;AAC3C,KAAC,OAAO,KAAK,KAAK,MAAM,KAAK,KAAK,KAAK,MAAM,GAAG,KAAK,MAAM,UAAU,UAAU,OAAO,yBAAyB,GAAI,KAAK,MAAM,WAAW;AACzI,UAAM,UAAU,aAAa,KAAK,SAAS,IAAI,mBAAmB,CAAC;AACnE,SAAK,OAAO,aAAa,QAAQ,MAAO,KAAK,MAAM,OAAO,SAAS,KAAK,SAAU;AAClF,SAAK,KAAK,IAAI,UAAU,aAAa,SAAS,EAAE,GAAG,KAAK,KAAK,IAAI,kBAAkB,gBAAgB,OAAO;AAAA,EAC5G;AAAA;AAAA,EAEA,MAAa,aAA4B;AACvC,SAAK,KAAK,WAAW,cAAc,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,UAAU;AAAA,EACtF;AAAA,EAEQ,WAAW;AAGjB,UAAM,UAAU,CAAC,EAAE,QAAQ,cAAc,OAAO,UAAU,GAAG,EAAE,QAAQ,YAAY,OAAO,UAAU,GAAG,EAAE,QAAQ,aAAa,OAAO,UAAU,GAAG,EAAE,QAAQ,kBAAkB,OAAO,UAAU,GAAG,EAAE,QAAQ,cAAc,OAAO,SAAS,GAAG,EAAE,QAAQ,iBAAiB,OAAO,OAAO,CAAC,GACrR,UAAU,QAAQ,MAAM,GAAG,EAAE,EAAE,IAAI,CAAC,QAAQ,IAAI,KAAK,GACrD,OAAO,EAAE,OAAO,KAAK,SAAS,IAAI,cAAwB,WAAW,OAAO,KAAK,SAAS,IAAI,cAAwB,WAAW,SAAS,CAAC,WAAW,GAAG,OAAO,GAAG,SAAS,CAAC,WAAW,GAAG,OAAO,EAAE,GACpM,SAAS,KAAK,MAAM,EAAE,MAAM,UAAU,OAAO,eAAe,YAAY,EAAE,MAAM,gCAAgC,GAAG,SAAS,CAAC,EAAE,QAAQ,iBAAiB,OAAO,UAAU,GAAG,GAAG,OAAO,GAAG,OAAO,CAAC,KAAK,QAAQ,SAAS,KAAK,KAAe,IAAK,CAAC,KAAK,SAAS,IAAI,cAAc,aAAa,WAAW,SAAU,KAAK,MAAM,CAAC,GAC/T,UAAU,KAAK,MAAM,EAAE,MAAM,QAAQ,CAAC,GACtC,SAAS,KAAK,MAAM,EAAE,MAAM,UAAU,OAAO,eAAe,YAAY,EAAE,MAAM,qCAAqC,GAAG,SAAS,CAAC,EAAE,QAAQ,cAAc,OAAO,UAAU,GAAG,GAAG,OAAO,GAAG,OAAO,CAAC,KAAK,QAAQ,SAAS,KAAK,KAAe,IAAK,CAAC,KAAK,SAAS,IAAI,cAAc,aAAa,WAAW,SAAU,KAAK,MAAM,CAAC,GACjU,UAAU,KAAK,MAAM,EAAE,MAAM,QAAQ,CAAC,GACtC,WAAW,SAAS,OAAO,EAAE,WAAW,mCAAmC,CAAC,GAC5E,WAAW,SAAS,OAAO,EAAE,WAAW,mCAAmC,CAAC;AAC9E,SAAK,KAAK,OAAO,MAAM,2BAA2B,CAAC,IAAI,KAAK,WAAY,IAAK,EAAa,YAAY,GAAK,QAAQ,QAAQ,QAAQ,GAAK,OAAO,QAAQ,QAAQ,CAAC,KAAK,QAAQ,SAAS,CAAC,IAAK,CAAC,KAAK,SAAS,IAAI,cAAc,aAAa,WAAW,SAAU,IAAK,EAAE,MAAM,MAAM,QAAQ,KAAK,OAAO,CAAC;AACvS,SAAK,KAAK,OAAO,MAAM,2BAA2B,CAAC,IAAI,KAAK,WAAY,IAAK,EAAa,YAAY,GAAK,QAAQ,QAAQ,QAAQ,GAAK,OAAO,QAAQ,QAAQ,CAAC,KAAK,QAAQ,SAAS,CAAC,IAAK,CAAC,KAAK,SAAS,IAAI,cAAc,aAAa,WAAW,SAAU,IAAK,EAAE,MAAM,MAAM,QAAQ,KAAK,OAAO,CAAC;AACvS,SAAK,KAAK,IAAI,qBAAqB,QAAQ,SAAS,OAAO,QAAQ,OAAO,GAAG,YAAY,SAAS,OAAO,QAAQ,OAAO,GAAG,SAAS;AACpI,UAAM,KAAK,EAAE,OAAO,IAAI,OAAO,GAAG,GAChC,OAAO,CAAC,IAAS,MAAM,MAAM,OAAO,aAAc,KAAK,SAAS,IAAI,cAAc,GAAG,IAAI,OAAO,IAAI,KAAM,GAAG,GAAG,IAChH,SAAS,CAAC,MAAW,OAA0B,YAAY,KAAK,KAAK,OAAO,OAAO,GAAG,IAAI,GAAG,IAAI,GACjG,iBAAiB,CAAC,EAAE,QAAQ,EAAE,OAAO,IAAI,EAAE,MACzC,KAAK,KAAK;AAAA,MACR;AAAA,MACA,YAAY;AACV,WAAG,SAAS,KAAK,OAAO,QAAQ,GAAG,KAAK;AACxC,YAAI;AACJ,YAAI,QAAQ,SAAU,QAAO,QAAQ,QAAQ,MAAM;AACnD,YAAI,QAAQ,OAAQ,OAAM,KAAK,SAAS,IAAI,aAAa;AAAA,YACpD,OAAM,KAAK,SAAS,IAAI,cAAc,KAAK,MAAM,OAAO,aAAa,MAAM,KAAK,KAAK,KAAK,gBAAgB,GAAG,aAAa,KAAK,MAAM,MAAM,aAAa,KAAK,MAAM,SAAS,eAAe,KAAK,MAAS,IAAI,SAAS,KAAK,KAAK,KAAK,cAAc,GAAG,MAAM;AACjQ,cAAM,KAAK,CAAC,MAAY,OAAO,QAAQ,QAAQ,KAAK,QAAQ,SAAS,GAAa,IAAK,MAAiB,IAAI,SAAS,UACnH,KAAK,OAAO,KAAK,IAAI,KAAK,GAAG,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,IACxD,MAAM,OAAO,KAAK,IAAI,IAAI,GAAG,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;AACzD,aAAK,IAAI,QAAQ,MAAM;AACvB,gBAAQ,WAAW,GAAG,QAAQ,KAAK,KAAK,QAAQ,qDAAqD,EAAE,MAAM,aAAM,WAAW,MAAO,iBAAiB,OAAO,SAAS,EAAE,GAAG,GAAG,SAAS,MAAO,GAAG,QAAQ,IAAK,QAAQ,KAAK,OAAO,CAAC,KAAK;AAAA,MAC1O;AAAA,MACA;AAAA,IACF,GACF,iBAAiB,CAAC,EAAE,QAAQ,EAAE,OAAO,IAAI,EAAE,MACzC,KAAK,KAAK;AAAA,MACR;AAAA,MACA,YAAY;AACV,WAAG,SAAS,KAAK,OAAO,QAAQ,GAAG,KAAK;AACxC,YAAI;AACJ,YAAI,QAAQ,SAAU,QAAO,QAAQ,QAAQ,MAAM;AACnD,YAAI,QAAQ,OAAQ,OAAM,KAAK,SAAS,IAAI,aAAa;AAAA,YACpD,OAAM,KAAK,SAAS,IAAI,cAAc,KAAK,MAAM,OAAO,aAAa,MAAM,KAAK,KAAK,KAAK,gBAAgB,GAAG,aAAa,KAAK,MAAM,MAAM,aAAa,KAAK,MAAM,SAAS,eAAe,KAAK,MAAS,IAAI,SAAS,KAAK,KAAK,KAAK,cAAc,GAAG,MAAM;AACjQ,cAAM,KAAK,CAAC,MAAY,OAAO,QAAQ,QAAQ,KAAK,QAAQ,SAAS,GAAa,IAAK,MAAiB,IAAI,SAAS,UACnH,KAAK,OAAO,KAAK,IAAI,OAAO,OAAO,GAAG,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,IAC1E,MAAM,OAAO,KAAK,IAAI,MAAM,OAAO,GAAG,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,OAAO;AAC3E,aAAK,IAAI,QAAQ,QAAQ,OAAO;AAChC,gBAAQ,WAAW,GAAG,QAAQ,KAAK,KAAK,QAAQ,qDAAqD,EAAE,MAAM,aAAM,WAAW,MAAO,iBAAiB,OAAO,SAAS,EAAE,GAAG,GAAG,SAAS,MAAO,GAAG,QAAQ,IAAK,QAAQ,KAAK,OAAO,CAAC,KAAK;AAAA,MAC1O;AAAA,MACA;AAAA,IACF;AACJ,WAAO,QAAQ,iBAAiB,SAAS,gBAAgB,EAAE,QAAQ,KAAK,OAAO,CAAC,GAAG,QAAQ,QAAQ,iBAAiB,SAAS,gBAAgB,EAAE,QAAQ,KAAK,OAAO,CAAC;AACpK,WAAO,QAAQ,iBAAiB,SAAS,gBAAgB,EAAE,QAAQ,KAAK,OAAO,CAAC,GAAG,QAAQ,QAAQ,iBAAiB,SAAS,gBAAgB,EAAE,QAAQ,KAAK,OAAO,CAAC;AAEpK,UAAM,UAAU,SAAS,UAAU,EAAE,WAAW,+BAA+B,WAAW,uCAAgC,CAAC;AAC3H,SAAK,UAAU,sBAAsB,YAAY,OAAO;AACxD,YAAQ,iBAAiB,SAAS,KAAK,gBAAgB,EAAE,QAAQ,KAAK,OAAO,CAAC;AAAA,EAChF;AAAA,EAEQ,cAAc;AACpB,WAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EA2CT;AAAA,EAEA,MAAc,iBAAiB;AAC7B,UAAM,KAAK,SAAS;AACpB,SAAK,MAAM,KAAK,YAAY,GAAG,EAAE,IAAI,GAAG,KAAK,KAAK,OAAO,EAAE,gBAAgB,aAAa,KAAK,KAAK,IAAI,kBAAkB,aAAa,UAAU,CAAC;AAAA,EAClJ;AAAA,EAEmB,YAAkB;AACnC,SAAK,KAAK,QAAQ,GAAG,MAAM,UAAU;AAAA,EACvC;AACF;AAxKE,cADW,WACY,YAAW;AAClC,cAFW,WAEY,SAAQ;","names":[]}
|