@flowplayer/player 3.35.0-rc → 3.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/core.js +1 -1
  2. package/default.js +1 -1
  3. package/embed.js +2 -2
  4. package/package.json +1 -2364
  5. package/plugins/ads.js +1 -1
  6. package/plugins/analytics.js +1 -1
  7. package/plugins/rts.js +1 -1
  8. package/plugins/ssai.js +1 -1
  9. package/package/core/events.d.ts +0 -710
  10. package/package/core/events.js +0 -403
  11. package/package/core.js +0 -1
  12. package/package/default.js +0 -1
  13. package/package/embed.js +0 -7
  14. package/package/flowplayer.css +0 -1
  15. package/package/index.d.ts +0 -2238
  16. package/package/plugins/ads.d.ts +0 -4468
  17. package/package/plugins/ads.js +0 -7
  18. package/package/plugins/airplay.d.ts +0 -2152
  19. package/package/plugins/airplay.js +0 -1
  20. package/package/plugins/analytics.d.ts +0 -2146
  21. package/package/plugins/analytics.js +0 -1
  22. package/package/plugins/asel.d.ts +0 -2293
  23. package/package/plugins/asel.js +0 -1
  24. package/package/plugins/audio.d.ts +0 -2146
  25. package/package/plugins/audio.js +0 -1
  26. package/package/plugins/chapters.d.ts +0 -2155
  27. package/package/plugins/chapters.js +0 -1
  28. package/package/plugins/chromecast.d.ts +0 -2221
  29. package/package/plugins/chromecast.js +0 -1
  30. package/package/plugins/comscore.d.ts +0 -2146
  31. package/package/plugins/comscore.js +0 -1
  32. package/package/plugins/consent.d.ts +0 -2194
  33. package/package/plugins/consent.js +0 -1
  34. package/package/plugins/context-menu.d.ts +0 -2160
  35. package/package/plugins/context-menu.js +0 -1
  36. package/package/plugins/cuepoints.d.ts +0 -2270
  37. package/package/plugins/cuepoints.js +0 -1
  38. package/package/plugins/dash.d.ts +0 -2302
  39. package/package/plugins/dash.js +0 -2
  40. package/package/plugins/drm.d.ts +0 -2271
  41. package/package/plugins/drm.js +0 -1
  42. package/package/plugins/endscreen.d.ts +0 -2165
  43. package/package/plugins/endscreen.js +0 -1
  44. package/package/plugins/fas.d.ts +0 -2200
  45. package/package/plugins/fas.js +0 -1
  46. package/package/plugins/float-on-scroll.d.ts +0 -2234
  47. package/package/plugins/float-on-scroll.js +0 -1
  48. package/package/plugins/ga4.d.ts +0 -2146
  49. package/package/plugins/ga4.js +0 -1
  50. package/package/plugins/gemius.d.ts +0 -2171
  51. package/package/plugins/gemius.js +0 -1
  52. package/package/plugins/google-analytics.d.ts +0 -2146
  53. package/package/plugins/google-analytics.js +0 -1
  54. package/package/plugins/hls.d.ts +0 -2271
  55. package/package/plugins/hls.js +0 -1
  56. package/package/plugins/id3.d.ts +0 -2212
  57. package/package/plugins/id3.js +0 -1
  58. package/package/plugins/iframe.d.ts +0 -2147
  59. package/package/plugins/iframe.js +0 -1
  60. package/package/plugins/keyboard.d.ts +0 -2146
  61. package/package/plugins/keyboard.js +0 -1
  62. package/package/plugins/media-session.d.ts +0 -2146
  63. package/package/plugins/media-session.js +0 -1
  64. package/package/plugins/message.d.ts +0 -2205
  65. package/package/plugins/message.js +0 -1
  66. package/package/plugins/ovp.d.ts +0 -2208
  67. package/package/plugins/ovp.js +0 -1
  68. package/package/plugins/playlist.d.ts +0 -2465
  69. package/package/plugins/playlist.js +0 -1
  70. package/package/plugins/preview.d.ts +0 -2236
  71. package/package/plugins/preview.js +0 -1
  72. package/package/plugins/qsel.d.ts +0 -2236
  73. package/package/plugins/qsel.js +0 -1
  74. package/package/plugins/qul.d.ts +0 -2161
  75. package/package/plugins/qul.js +0 -1
  76. package/package/plugins/rts.d.ts +0 -2551
  77. package/package/plugins/rts.js +0 -25
  78. package/package/plugins/share.d.ts +0 -2181
  79. package/package/plugins/share.js +0 -1
  80. package/package/plugins/speed.d.ts +0 -2173
  81. package/package/plugins/speed.js +0 -1
  82. package/package/plugins/ssai.d.ts +0 -2502
  83. package/package/plugins/ssai.js +0 -7
  84. package/package/plugins/subtitles.d.ts +0 -2287
  85. package/package/plugins/subtitles.js +0 -1
  86. package/package/plugins/thumbnails.d.ts +0 -2164
  87. package/package/plugins/thumbnails.js +0 -1
  88. package/package/plugins/tizen.d.ts +0 -2152
  89. package/package/plugins/tizen.js +0 -1
  90. package/package/plugins/vtsel.d.ts +0 -2250
  91. package/package/plugins/vtsel.js +0 -1
  92. package/package/plugins/webos.d.ts +0 -2152
  93. package/package/plugins/webos.js +0 -1
  94. package/package/util/loader.d.ts +0 -2163
  95. package/package/util/loader.js +0 -63
@@ -1,403 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- /**
6
- * all events used by Flowplayer
7
- */
8
- const /**
9
- @public
10
- * when a new player is inserted into the HTML
11
- */ MOUNT = "mount",
12
- // native events that flowplayer use
13
- /**
14
- * @public
15
- */
16
- RETRY = "retry",
17
- // native events that flowplayer use
18
- /**
19
- * @public
20
- */
21
- ERROR = "error",
22
- /**
23
- * @public
24
- */
25
- CONTEXT_MENU = "contextmenu",
26
- /**
27
- * @public
28
- */
29
- CLICK = "click",
30
- /**
31
- * @public
32
- */
33
- DBL_CLICK = "dblclick",
34
- /**
35
- * @public
36
- */
37
- KEYUP = "keyup",
38
- /**
39
- * @public
40
- */
41
- KEYDOWN = "keydown",
42
- /**
43
- * @public
44
- */
45
- LOAD = "load",
46
- /**
47
- * @public
48
- */
49
- MOUSE_ENTER = "mouseenter",
50
- /**
51
- * @public
52
- */
53
- MOUSE_LEAVE = "mouseleave",
54
- /**
55
- * @public
56
- */
57
- MOUSE_UP = "mouseup",
58
- /**
59
- * @public
60
- */
61
- MOUSE_DOWN = "mousedown",
62
- /**
63
- * @public
64
- */
65
- MOUSE_MOVE = "mousemove",
66
- /**
67
- * @public
68
- */
69
- TOUCH_START = "touchstart",
70
- /**
71
- * @public
72
- */
73
- TOUCH_MOVE = "touchmove",
74
- /**
75
- * @public
76
- */
77
- TOUCH_END = "touchend",
78
- /**
79
- * @public
80
- */
81
- TOUCH_CANCEL = "touchcancel",
82
- /**
83
- * @public
84
- */
85
- RESIZE = "resize",
86
- /**
87
- * @public
88
- */
89
- SCROLL = "scroll",
90
- /**
91
- * @public
92
- */
93
- FULLSCREEN_ENTER = "fullscreenenter",
94
- /**
95
- * @public
96
- */
97
- FULLSCREEN_EXIT = "fullscreenexit",
98
- /**
99
- * @public
100
- */
101
- FULLSCREEN_CHANGE = "fullscreenchange",
102
- /**
103
- * @public
104
- * general video events flowplayer uses internally
105
- * https://developer.mozilla.org/en-US/docs/Web/Guide/Events/Media_events
106
- */
107
- METADATA = "loadedmetadata",
108
- /**
109
- * @public
110
- */
111
- DATA = "loadeddata",
112
- /**
113
- * @public
114
- */
115
- PROGRESS = "progress",
116
- /**
117
- * @public
118
- */
119
- TIME_UPDATE = "timeupdate",
120
- /**
121
- * @public
122
- */
123
- LOAD_START = "loadstart",
124
- /**
125
- * @public
126
- */
127
- VOLUME_CHANGE = "volumechange",
128
- /**
129
- * @public
130
- */
131
- PAUSE = "pause",
132
- /**
133
- * @public
134
- */
135
- PLAYING = "playing",
136
- /**
137
- * @public
138
- */
139
- PLAY = "play",
140
- /**
141
- * @public
142
- */
143
- WAITING = "waiting",
144
- /**
145
- * @public
146
- */
147
- CAN_PLAY = "canplay",
148
- /**
149
- * @public
150
- */
151
- ENDED = "ended",
152
- /**
153
- * @public
154
- */
155
- SEEKED = "seeked",
156
- /**
157
- * @public
158
- */
159
- SEEKING = "seeking",
160
- /**
161
- * @public
162
- */
163
- DURATION_CHANGE = "durationchange",
164
- /**
165
- * @public
166
- * when a player enters the viewpoint
167
- */
168
- VIEW_ENTER = "viewenter",
169
- /**
170
- * @public
171
- * when a player leaves the viewport
172
- */
173
- VIEW_LEAVE = "viewleave",
174
- /**
175
- * @public
176
- * emitted when a valid source is found prior to mounting
177
- */
178
- SOURCE = "src",
179
- /**
180
- * @public
181
- * emitted when it is safe to clean up a fp instance
182
- */
183
- REAP = "reap",
184
- /**
185
- * @public
186
- * emitted whenever a list of qualities has been made available
187
- * when index 0 is the highest quality and index 0+N is the lowest
188
- */
189
- QUALITIES = "qualities",
190
- /**
191
- * @public
192
- * emitted whenever the media changes quality
193
- */
194
- QUALITY_CHANGE = "qualitychange",
195
- /**
196
- * @public
197
- * emitted whenever multiple video tracks are detected
198
- */
199
- VIDEO_TRACKS = "videoTracks", // TODO move to VTSEL plugin
200
- /**
201
- * @public
202
- * @deprecated please use Qsel.events.SET_QUALITY
203
- */
204
- SET_QUALITY = "quality:set",
205
- /**
206
- * @public
207
- * emitted when a video track is selected
208
- */
209
- VIDEO_TRACK_SELECT = "tracks:video:select", // TODO move to VTSEL plugin
210
- /**
211
- * @deprecated please use Endscreen.events.RECOMMENDATIONS_READY / flowplayer.endscreen.events.RECOMMENDATIONS_READY
212
- **/
213
- /**
214
- * @public
215
- */
216
- RECOMMENDATIONS_READY = "recommendationsready",
217
- /**
218
- * @public
219
- */
220
- LANDSCAPE = "landscape", // TODO not an event
221
- /**
222
- * @public
223
- */
224
- PORTRAIT = "portrait", // TODO: not an event
225
- /**
226
- * @public
227
- * when the player has started playing dvr content
228
- */
229
- DVR = "dvr",
230
- /**
231
- * @public
232
- * when src is a livestream
233
- */
234
- LIVE = "live",
235
- /**
236
- * @public
237
- * emitted when an Error recovery is attempted
238
- */
239
- RECOVER = "recover",
240
- /**
241
- * @internal
242
- */
243
- SEEK_QUEUED = "seek:queued",
244
- /**
245
- * @internal
246
- */
247
- SEEK_CANCEL = "seek:cancel",
248
- /**
249
- * @internal
250
- */
251
- PLUGIN_REGISTERED = "plugin:registered",
252
- /**
253
- * @internal
254
- */
255
- REMOTE_SESSION_STARTED = "remotesession:started", // TODO move to Chromecast plugin
256
- /**
257
- * @internal
258
- */
259
- REMOTE_SESSION_ENDED = "remotesession:ended", // TODO move to Chromecast plugin
260
- /**
261
- * @internal
262
- */
263
- INTERSECTIONCHANGE = "intersectionchange",
264
- /**
265
- * @internal
266
- */
267
- WEBKIT_NEEDKEY = "webkitneedkey",
268
- /**
269
- * @internal
270
- */
271
- RENDER_PLUGIN = "renderplugin",
272
- /**
273
- * @internal
274
- */
275
- AUDIO_ONLY_SOURCE = "audioonlysource",
276
- /**
277
- * @internal
278
- * error that is fatal in a sense where nothing can be done and
279
- * player should be destroyed
280
- */
281
- NON_RECOVERABLE_ERROR = "error:fatal",
282
- /**
283
- * @internal
284
- * emitted whenever config is changed
285
- */
286
- CONFIG = "config",
287
- /**
288
- * @internal
289
- * Player (UI) state changed
290
- */
291
- STATE = "state",
292
- /**
293
- * @internal
294
- * Custom video events
295
- */
296
- BEFORE_PLAY = "beforeplay",
297
- /**
298
- * @internal
299
- */
300
- BEFORE_PAUSE = "beforepause",
301
- /**
302
- * @internal
303
- * Emitted to normalize that content has started loading across various browsers & plugin combinations for analytics timing
304
- */
305
- CONTENT_REAL_LOAD_START = "content:loadstart",
306
- /**
307
- * @public
308
- * @deprecated
309
- * cuepoints parsing is asynchronous
310
- * you cannot rely on them existing until
311
- * this event is emitted
312
- */
313
- CUEPOINTS = "cuepoints",
314
- /**
315
- * @public
316
- * @deprecated
317
- * when a cuepoint is active
318
- */
319
- CUEPOINT_START = "cuepointstart",
320
- /**
321
- * @public
322
- * @deprecated
323
- * when a cuepoint becomes inactive
324
- */
325
- CUEPOINT_END = "cuepointend",
326
- /**
327
- * @public
328
- * emitted to handle playback related errors
329
- */
330
- STANDARD_ERROR = "flowplayer:error";
331
-
332
- exports.AUDIO_ONLY_SOURCE = AUDIO_ONLY_SOURCE;
333
- exports.BEFORE_PAUSE = BEFORE_PAUSE;
334
- exports.BEFORE_PLAY = BEFORE_PLAY;
335
- exports.CAN_PLAY = CAN_PLAY;
336
- exports.CLICK = CLICK;
337
- exports.CONFIG = CONFIG;
338
- exports.CONTENT_REAL_LOAD_START = CONTENT_REAL_LOAD_START;
339
- exports.CONTEXT_MENU = CONTEXT_MENU;
340
- exports.CUEPOINTS = CUEPOINTS;
341
- exports.CUEPOINT_END = CUEPOINT_END;
342
- exports.CUEPOINT_START = CUEPOINT_START;
343
- exports.DATA = DATA;
344
- exports.DBL_CLICK = DBL_CLICK;
345
- exports.DURATION_CHANGE = DURATION_CHANGE;
346
- exports.DVR = DVR;
347
- exports.ENDED = ENDED;
348
- exports.ERROR = ERROR;
349
- exports.FULLSCREEN_CHANGE = FULLSCREEN_CHANGE;
350
- exports.FULLSCREEN_ENTER = FULLSCREEN_ENTER;
351
- exports.FULLSCREEN_EXIT = FULLSCREEN_EXIT;
352
- exports.INTERSECTIONCHANGE = INTERSECTIONCHANGE;
353
- exports.KEYDOWN = KEYDOWN;
354
- exports.KEYUP = KEYUP;
355
- exports.LANDSCAPE = LANDSCAPE;
356
- exports.LIVE = LIVE;
357
- exports.LOAD = LOAD;
358
- exports.LOAD_START = LOAD_START;
359
- exports.METADATA = METADATA;
360
- exports.MOUNT = MOUNT;
361
- exports.MOUSE_DOWN = MOUSE_DOWN;
362
- exports.MOUSE_ENTER = MOUSE_ENTER;
363
- exports.MOUSE_LEAVE = MOUSE_LEAVE;
364
- exports.MOUSE_MOVE = MOUSE_MOVE;
365
- exports.MOUSE_UP = MOUSE_UP;
366
- exports.NON_RECOVERABLE_ERROR = NON_RECOVERABLE_ERROR;
367
- exports.PAUSE = PAUSE;
368
- exports.PLAY = PLAY;
369
- exports.PLAYING = PLAYING;
370
- exports.PLUGIN_REGISTERED = PLUGIN_REGISTERED;
371
- exports.PORTRAIT = PORTRAIT;
372
- exports.PROGRESS = PROGRESS;
373
- exports.QUALITIES = QUALITIES;
374
- exports.QUALITY_CHANGE = QUALITY_CHANGE;
375
- exports.REAP = REAP;
376
- exports.RECOMMENDATIONS_READY = RECOMMENDATIONS_READY;
377
- exports.RECOVER = RECOVER;
378
- exports.REMOTE_SESSION_ENDED = REMOTE_SESSION_ENDED;
379
- exports.REMOTE_SESSION_STARTED = REMOTE_SESSION_STARTED;
380
- exports.RENDER_PLUGIN = RENDER_PLUGIN;
381
- exports.RESIZE = RESIZE;
382
- exports.RETRY = RETRY;
383
- exports.SCROLL = SCROLL;
384
- exports.SEEKED = SEEKED;
385
- exports.SEEKING = SEEKING;
386
- exports.SEEK_CANCEL = SEEK_CANCEL;
387
- exports.SEEK_QUEUED = SEEK_QUEUED;
388
- exports.SET_QUALITY = SET_QUALITY;
389
- exports.SOURCE = SOURCE;
390
- exports.STANDARD_ERROR = STANDARD_ERROR;
391
- exports.STATE = STATE;
392
- exports.TIME_UPDATE = TIME_UPDATE;
393
- exports.TOUCH_CANCEL = TOUCH_CANCEL;
394
- exports.TOUCH_END = TOUCH_END;
395
- exports.TOUCH_MOVE = TOUCH_MOVE;
396
- exports.TOUCH_START = TOUCH_START;
397
- exports.VIDEO_TRACKS = VIDEO_TRACKS;
398
- exports.VIDEO_TRACK_SELECT = VIDEO_TRACK_SELECT;
399
- exports.VIEW_ENTER = VIEW_ENTER;
400
- exports.VIEW_LEAVE = VIEW_LEAVE;
401
- exports.VOLUME_CHANGE = VOLUME_CHANGE;
402
- exports.WAITING = WAITING;
403
- exports.WEBKIT_NEEDKEY = WEBKIT_NEEDKEY;
package/package/core.js DELETED
@@ -1 +0,0 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).flowplayer=t()}(this,function(){"use strict";const e=[],t=[];function n(){const e="undefined"!=typeof document&&"undefined"!=typeof window,t=e?navigator.userAgent:"",n=/iP(hone|od)/i.test(t)&&!/iPad/.test(t)&&!/IEMobile/i.test(t),o=/Android/.test(t)&&!/Firefox/.test(t),r=/^((?!chrome|android).)*safari/i.test(t),i=/chrome|crios/i.test(t)&&!/opr|opera|chromium|edg|ucbrowser|googlebot/i.test(t),a=/firefox|fxios/i.test(t)&&!/seamonkey/i.test(t),s=/edg/i.test(t),l=/opr|opera/i.test(t),c=/SamsungBrowser/.test(t),d=c&&/SMART-TV/.test(t);return{controls:!n,video:function(t){return e&&document.createElement("video").canPlayType(t)},lang:e&&window.navigator.language,android:o,iphone:n,safari:r,edge:s,opera:l,chrome:i,firefox:a,ios:e&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream,samsung:c,samsung_tv:c&&d,touch:"ontouchstart"in window,tizen:"tizen"in window,webOS:"webos"in window}}const o="mount",r="retry",i="error",a="click",s="touchend",l="resize",c="fullscreenenter",d="fullscreenexit",u="loadedmetadata",p="loadeddata",f="progress",h="timeupdate",m="loadstart",y="volumechange",E="pause",g="playing",w="play",_="waiting",v="canplay",S="ended",N="seeked",b="seeking",A="viewenter",O="viewleave",T="src",I="reap",k="qualitychange",P="live",R="recover",C="seek:queued",L="seek:cancel",D="remotesession:ended",U="intersectionchange",M="renderplugin",F="audioonlysource",H="error:fatal",W="config",x="state",V="beforeplay",j="beforepause",K="content:loadstart",B="flowplayer:error";var G=Object.freeze({__proto__:null,MOUNT:o,RETRY:r,ERROR:i,CONTEXT_MENU:"contextmenu",CLICK:a,DBL_CLICK:"dblclick",KEYUP:"keyup",KEYDOWN:"keydown",LOAD:"load",MOUSE_ENTER:"mouseenter",MOUSE_LEAVE:"mouseleave",MOUSE_UP:"mouseup",MOUSE_DOWN:"mousedown",MOUSE_MOVE:"mousemove",TOUCH_START:"touchstart",TOUCH_MOVE:"touchmove",TOUCH_END:s,TOUCH_CANCEL:"touchcancel",RESIZE:l,SCROLL:"scroll",FULLSCREEN_ENTER:c,FULLSCREEN_EXIT:d,FULLSCREEN_CHANGE:"fullscreenchange",METADATA:u,DATA:p,PROGRESS:f,TIME_UPDATE:h,LOAD_START:m,VOLUME_CHANGE:y,PAUSE:E,PLAYING:g,PLAY:w,WAITING:_,CAN_PLAY:v,ENDED:S,SEEKED:N,SEEKING:b,DURATION_CHANGE:"durationchange",VIEW_ENTER:A,VIEW_LEAVE:O,SOURCE:T,REAP:I,QUALITIES:"qualities",QUALITY_CHANGE:k,VIDEO_TRACKS:"videoTracks",SET_QUALITY:"quality:set",VIDEO_TRACK_SELECT:"tracks:video:select",RECOMMENDATIONS_READY:"recommendationsready",LANDSCAPE:"landscape",PORTRAIT:"portrait",DVR:"dvr",LIVE:P,RECOVER:R,SEEK_QUEUED:C,SEEK_CANCEL:L,PLUGIN_REGISTERED:"plugin:registered",REMOTE_SESSION_STARTED:"remotesession:started",REMOTE_SESSION_ENDED:D,INTERSECTIONCHANGE:U,WEBKIT_NEEDKEY:"webkitneedkey",RENDER_PLUGIN:M,AUDIO_ONLY_SOURCE:F,NON_RECOVERABLE_ERROR:H,CONFIG:W,STATE:x,BEFORE_PLAY:V,BEFORE_PAUSE:j,CONTENT_REAL_LOAD_START:K,CUEPOINTS:"cuepoints",CUEPOINT_START:"cuepointstart",CUEPOINT_END:"cuepointend",STANDARD_ERROR:B});var q=Object.freeze({__proto__:null,SUBTITLES_MENU:"flowplayer-subtitles-menu",SHARE_MENU:"flowplayer-share-menu",SPEED_MENU:"flowplayer-speed-menu",QUALITY_MENU:"flowplayer-quality-menu",AUDIO_MENU:"flowplayer-audio-menu",VIDEO_MENU:"flowplayer-video-menu",UI:"flowplayer-ui",LOGO:"flowplayer-logo",CONTROL:"flowplayer-control",CONTROL_BUTTONS:"flowplayer-control-buttons",LIVE_STATUS:"flowplayer-live-status",ELAPSED:"flowplayer-elapsed-time",TIMELINE:"flowplayer-timeline-bar",CHAPTERS_TIMELINE:"flowplayer-chapters-timeline-bar",CONTROL_DURATION:"flowplayer-control-duration",VOLUME_CONTROL:"flowplayer-volume-control",VOLUME_BAR:"flowplayer-volume-bar",HEADER:"flowplayer-header",HEADER_LEFT_ZONE:"flowplayer-header-left-zone",HEADER_RIGHT_ZONE:"flowplayer-header-right-zone",HEADER_DURATION:"flowplayer-header-duration",MIDDLE:"flowplayer-middle",MIDDLE_ZONE:"flowplayer-middle-zone",WAIT:"flowplayer-wait",MIDDLE_BUTTONS:"flowplayer-middle-buttons",MIDDLE_LEFT_ZONE:"flowplayer-middle-left-zone",MIDDLE_RIGHT_ZONE:"flowplayer-middle-right-zone",ENDSCREEN_INTERSTITIAL:"flowplayer-endscreen-interstitial",ENDSCREEN_UP_NEXT:"flowplayer-endscreen-up-next",ENDSCREEN_GRID:"flowplayer-endscreen-grid",PLAYLIST_INTERSTITIAL:"flowplayer-playlist-interstitial",AIRPLAY_ICON:"flowplayer-airplay-icon",CHROMECAST_ICON:"flowplayer-chromecast-icon",SMALL_PLAY_ICON:"flowplayer-small-play-icon",SMALL_PAUSE_ICON:"flowplayer-small-pause-icon",PLAY_ICON:"flowplayer-play-icon",PAUSE_ICON:"flowplayer-pause-icon",FULLSCREEN_ENTER_ICON:"flowplayer-fullscreen-enter-icon",FULLSCREEN_EXIT_ICON:"flowplayer-fullscreen-exit-icon",SKIP_NEXT_ICON:"flowplayer-skip-next-icon",SKIP_PREVIOUS_ICON:"flowplayer-skip-previous-icon",FAST_FORWARD_ICON:"flowplayer-fast-forward-icon",REWIND_ICON:"flowplayer-rewind-icon",SHARE_ICON:"flowplayer-share-icon",SUBTITLES_MENU_ICON:"flowplayer-subs-menu-icon",MENU_BACK_ICON:"flowplayer-menu-back",VOLUME_ICON:"flowplayer-volume-icon",MUTE_ICON:"flowplayer-mute-icon",UNMUTE_ICON:"flowplayer-unmute-icon",CLOSE_ICON:"flowplayer-close-icon",FACEBOOK_ICON:"flowplayer-facebook-icon",TWITTER_ICON:"flowplayer-twitter-icon",LINK_ICON:"flowplayer-link-icon",EMBED_ICON:"flowplayer-embed-icon",LIVE_COUNTDOWN:"flowplayer-live-countdown",PLAYLIST_CONTROLS:"flowplayer-playlist-controls",THUMBNAILS_CAROUSEL:"flowplayer-thumbnails-carousel",ERROR_COMPONENT:"flowplayer-error",TV_MENU:"flowplayer-tv-menu",CUE_COMPONENT:"flowplayer-cue",SSAI_UI:"flowplayer-ssai-ui",SSAI_CONTROLS:"flowplayer-ssai-controls",SSAI_TIMELINE:"flowplayer-ssai-timeline",SSAI_INDICATOR:"flowplayer-ssai-indicator"});const Y="is-playing",z="is-paused",$="is-loaded",J="is-loading",Q="is-starting",Z="is-seeking",X="is-disabled",ee="is-small",te="is-tiny",ne="is-rtl",oe="is-ended",re="is-live",ie="is-error",ae="is-waiting",se="is-autoplay",le="is-toggling",ce="is-live-seeked",de="no-timeline",ue="has-poster",pe="will-play",fe="will-pause",he="will-seek",me="is-seekable",ye="is-in-viewport",Ee="no-controls",ge="is-destroyed";var we=Object.freeze({__proto__:null,PLAYING:Y,FULLSCREEN:"is-fullscreen",PAUSED:z,MUTED:"is-muted",LOADED:$,LOADING:J,STARTING:Q,SEEKING:Z,GRABBING:"is-grabbing",DISABLED:X,SMALL:ee,TINY:te,RTL:ne,TV:"is-tv",ENDED:oe,LIVE:re,ERRORED:ie,WAITING:ae,AUTOPLAY:se,SEAMLESS:"is-seamless",TOGGLING:le,LIVE_SEEKED:ce,NO_DVR:de,HAS_POSTER:ue,WILL_PLAY:pe,WILL_PAUSE:fe,MENU_OPENED:"has-menu-opened",TOUCHED:"is-touched",HOVERED:"is-hovered",TOUCH_DEVICE:"is-touch-device",WILL_SEEK:he,SEEKABLE:me,IN_VIEWPORT:ye,NO_CONTROLS:Ee,DESTROYED:ge,IS_SOURCE_PROCESSING:"is-source-processing"});function _e(e){this.message=e}_e.prototype=new Error,_e.prototype.name="InvalidCharacterError";var ve="undefined"!=typeof window&&window.atob&&window.atob.bind(window)||function(e){var t=String(e).replace(/=+$/,"");if(t.length%4==1)throw new _e("'atob' failed: The string to be decoded is not correctly encoded.");for(var n,o,r=0,i=0,a="";o=t.charAt(i++);~o&&(n=r%4?64*n+o:o,r++%4)?a+=String.fromCharCode(255&n>>(-2*r&6)):0)o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(o);return a};var Se=function(e){var t=e.replace(/-/g,"+").replace(/_/g,"/");switch(t.length%4){case 0:break;case 2:t+="==";break;case 3:t+="=";break;default:throw"Illegal base64url string!"}try{return function(e){return decodeURIComponent(ve(e).replace(/(.)/g,function(e,t){var n=t.charCodeAt(0).toString(16).toUpperCase();return n.length<2&&(n="0"+n),"%"+n}))}(t)}catch(e){return ve(t)}};function Ne(e){this.message=e}Ne.prototype=new Error,Ne.prototype.name="InvalidTokenError";var be=function(e,t){if("string"!=typeof e)throw new Ne("Invalid token specified");var n=!0===(t=t||{}).header?0:1;try{return JSON.parse(Se(e.split(".")[n]))}catch(e){throw new Ne("Invalid token specified: "+e.message)}};be.InvalidTokenError=Ne;const Ae=new Map,Oe=(e,t)=>new(((e,t)=>{const n=e.get(t);if(!n)throw new Error(`no flowplayer component with the name ${t} exists`);const o=window.customElements.get(t);if(!o)throw new Error(`no default flowplayer component with the name ${t} exists`);const r=window.customElements.get(n);return"function"!=typeof r?o:r})(e._customElements,t))(e);var Te,Ie;!function(e){e[e.LOW=1]="LOW",e[e.MEDIUM=2]="MEDIUM",e[e.HIGH=4]="HIGH"}(Te||(Te={})),function(e){e[e.OFF=0]="OFF",e[e.ON=1]="ON",e[e.AUDIO_REQUIRED=2]="AUDIO_REQUIRED"}(Ie||(Ie={}));const ke={Unknown:"00-00",MediaUnknown:"01-00",MediaUnavailable:"01-01",MediaUnsupportedVideoFormat:"01-02",MediaUnsupportedAudioFormat:"01-03",MediaBitrateExceeded:"01-04",MediaBufferOverread:"01-05",MediaIntegerOverflow:"01-06",MediaQuotaExceeded:"01-07",MediaInvalidCompositionDuration:"01-08",MediaInvalidCompositionSourceDuration:"01-09",MediaInvalidCompositionSourceStartTime:"01-10",MediaMalformedDepth:"01-11",PlaybackUnknown:"02-00",PlaybackVideoBufferUnderRun:"02-01",PlaybackAudioBufferUnderRun:"02-02",PlaybackVideoBufferingTimeout:"02-03",PlaybackAudioBufferingTimeout:"02-04",PlaybackManifestParseError:"02-05",PlaybackVideoDecodeError:"02-06",PlaybackAudioDecodeError:"02-07",PlaybackDroppedFramesExceeded:"02-08",PlaybackPlayheadExceedsDuration:"02-09",PlaybackUnsupportedDevice:"02-10",PlaybackManifestLoadError:"02-11",PlaybackManifestLoadTimeout:"02-12",PlaybackManifestParsingError:"02-13",PlaybackManifestIncompatibleCodecs:"02-14",PlaybackLevelEmptyError:"02-15",PlaybackLevelLoadError:"02-16",PlaybackLevelLoadTimeout:"02-17",PlaybackLevelSwitchError:"02-18",PlaybackAudioTrackLoadError:"02-19",PlaybackAudioTrackLoadTimeout:"02-20",PlaybackFragLoadError:"02-21",PlaybackFragLoadTimeout:"02-22",PlaybackFragDecryptError:"02-23",PlaybackFragParsingError:"02-24",PlaybackFragGap:"02-25",PlaybackRemuxAllocError:"02-26",PlaybackBufferAddCodecError:"02-27",PlaybackBufferIncompatibleCodecs:"02-28",PlaybackBufferAppendError:"02-29",PlaybackBufferStalledError:"02-30",PlaybackBufferFullError:"02-31",PlaybackBufferSeekOverHole:"02-32",PlaybackBufferNudgeOnStall:"02-33",PlaybackInternalException:"02-34",PlaybackInternalAborted:"02-35",PlaybackManifestLoaderFailure:"02-36",PlaybackSegmentBaseLoaderError:"02-37",PlaybackTimeSyncFailed:"02-38",PlaybackFragmentLoaderFailure:"02-39",PlaybackAppendError:"02-40",PlaybackRemoveError:"02-41",PlaybackDataUpdateFailed:"02-42",PlaybackManifestNoStreams:"02-43",PlaybackUnknownManifestType:"02-44",PlaybackDashInsufficientSegmentInfo:"02-45",PlaybackDashNoRepresentations:"02-46",PlaybackDashNoAdaptationSets:"02-47",PlaybackDashNoInitSegment:"02-48",PlaybackDashUnsupportedContainerFormat:"02-49",PlaybackDashKeySystemMismatch:"02-50",PlaybackMultipleKeyIDs:"02-51",PlaybackDashConflictingKeyIDs:"02-52",PlaybackRestrictedStreams:"02-53",PlaybackHlsMasterAndMediaTags:"02-54",PlaybackRepresentationIdConflict:"02-55",PlaybackHlsUnsupportedKeyFormats:"02-56",PlaybackManifestNoVariants:"02-57",PlaybackHlsUndeclaredVariables:"02-58",PlaybackAes128InvalidKeyLength:"02-59",PlaybackDashConflictingAes128Keys:"02-60",PlaybackDashUnsupportedAes128Encryption:"02-61",PlaybackManifestPatchMismatch:"02-62",PlaybackEmptyMediaPlaylist:"02-63",PlaybackNonContiguousCompositionTrack:"02-64",PlaybackDecoderNotFound:"02-65",PlaybackDecoderTemporarilyUnavailable:"02-66",PlaybackIncompatibleAsset:"02-67",PlaybackNoCompatibleExternalDisplay:"02-69",PlaybackOutOfMemory:"02-70",PlaybackToneMappingFailed:"02-71",PlaybackVideoCompositorFailed:"02-72",NetworkUnknown:"03-00",NetworkNoInternet:"03-01",NetworkRequestTimeout:"03-02",NetworkUnableToResolveHost:"03-03",NetworkResourceNotFound:"03-04",NetworkExpiredUrl:"03-05",NetworkUrlResolutionFailed:"03-06",NetworkDownloadErrorIdManifest:"03-07",NetworkDownloadErrorIdSidx:"03-08",NetworkDownloadErrorIdContent:"03-09",NetworkDownloadErrorIdInitialization:"03-10",NetworkDownloadErrorIdXlink:"03-11",NetworkHttpRequestFailed:"03-12",NetworkMaxRetriesExceeded:"03-13",NetworkSegmentMissing:"03-14",NetworkHttp400BadRequest:"03-400",NetworkHttp401Unauthorized:"03-401",NetworkHttp402PaymentRequired:"03-402",NetworkHttp403Forbidden:"03-403",NetworkHttp404NotFound:"03-404",NetworkHttp405MethodNotAllowed:"03-405",NetworkHttp406NotAcceptable:"03-406",NetworkHttp407ProxyAuthenticationRequired:"03-407",NetworkHttp408RequestTimeout:"03-408",NetworkHttp409Conflict:"03-409",NetworkHttp410Gone:"03-410",NetworkHttp411LengthRequired:"03-411",NetworkHttp412PreconditionFailed:"03-412",NetworkHttp413PayloadTooLarge:"03-413",NetworkHttp414URITooLong:"03-414",NetworkHttp415UnsupportedMediaType:"03-415",NetworkHttp416RangeNotSatisfiable:"03-416",NetworkHttp417ExpectationFailed:"03-417",NetworkHttp418ImATeapot:"03-418",NetworkHttp421MisdirectedRequest:"03-421",NetworkHttp422UnprocessableEntity:"03-422",NetworkHttp423Locked:"03-423",NetworkHttp424FailedDependency:"03-424",NetworkHttp425TooEarly:"03-425",NetworkHttp426UpgradeRequired:"03-426",NetworkHttp428PreconditionRequired:"03-428",NetworkHttp429TooManyRequests:"03-429",NetworkHttp431RequestHeaderFieldsTooLarge:"03-431",NetworkHttp451UnavailableForLegalReasons:"03-451",NetworkHttp500InternalServerError:"03-500",NetworkHttp501NotImplemented:"03-501",NetworkHttp502BadGateway:"03-502",NetworkHttp503ServiceUnavailable:"03-503",NetworkHttp504GatewayTimeout:"03-504",NetworkHttp505HTTPVersionNotSupported:"03-505",NetworkHttp506VariantAlsoNegotiates:"03-506",NetworkHttp507InsufficientStorage:"03-507",NetworkHttp508LoopDetected:"03-508",NetworkHttp510NotExtended:"03-510",NetworkHttp511NetworkAuthenticationRequired:"03-511",ContentProtectionUnknown:"04-00",ContentProtectionConcurrentStreamLimitExceeded:"04-01",ContentProtectionEntitlementRefused:"04-02",ContentProtectionLicenseExpired:"04-03",ContentProtectionBadLicenseRequest:"04-04",ContentProtectionLicenseServerTimeout:"04-05",ContentProtectionInsufficientHDCPSupport:"04-06",ContentProtectionGeoRestricted:"04-07",ContentProtectionParentalControlRestricted:"04-08",ContentProtectionCDNUnauthorized:"04-09",ContentProtectionInvalidAccessToken:"04-10",ContentProtectionKeySystemNoKeys:"04-11",ContentProtectionKeySystemNoAccess:"04-12",ContentProtectionKeySystemNoSession:"04-13",ContentProtectionKeySystemNoConfiguredLicense:"04-14",ContentProtectionKeySystemCertificateRequestFailed:"04-15",ContentProtectionKeySystemCertificateUpdateFailed:"04-16",ContentProtectionKeySystemSessionUpdateFailed:"04-17",ContentProtectionKeySystemStatusOutputRestricted:"04-18",ContentProtectionKeySystemStatusInternalError:"04-19",ContentProtectionKeyLoadError:"04-20",ContentProtectionKeyLoadTimeout:"04-21",ContentProtectionCapabilityMediaKeysError:"04-22",ContentProtectionManifestKeySystemUnknown:"04-23",ContentProtectionKeySystemUnavailable:"04-24",ContentProtectionCDMCreationFailed:"04-25",ContentProtectionCDMAttachFailed:"04-26",ContentProtectionCDMServerCertificateRejected:"04-27",ContentProtectionCDMSessionCreationFailed:"04-28",ContentProtectionCDMLicenseRequestFailed:"04-29",ContentProtectionCDMLicenseResponseRejected:"04-30",ContentProtectionManifestMissingDRMInfo:"04-31",ContentProtectionLicenseServerMissing:"04-32",ContentProtectionOfflineSessionRemoved:"04-33",ContentProtectionInitDataTransformationError:"04-34",ContentProtectionServerCertificateRequestFailed:"04-35",ContentProtectionInsufficientHDCPVersion:"04-36",ContentProtectionHDCPVersionCheckFailed:"04-37",AdsUnknown:"08-00",AdsVastParseError:"08-100",AdsInvalidVastSchema:"08-101",AdsVastVersionNotSupported:"08-102",AdsUnexpectedAdType:"08-200",AdsCreativeLinearityMismatch:"08-201",AdsCreativeDurationMismatch:"08-202",AdsCreativeSizeMismatch:"08-203",AdsWrapperVastError:"08-300",AdsVastResponseRedirectTimeout:"08-301",AdsWrapperLimitReached:"08-302",AdsVastResponseEmpty:"08-303",AdsLinearAdDisplayError:"08-400",AdsMediaFileNotFound:"08-401",AdsMediaFileUnavailable:"08-402",AdsUnsupportedMimeType:"08-403",AdsUnableToDisplayMediaFile:"08-405",AdsMezzanineFileMissing:"08-406",AdsMezzanineFileDownloaded:"08-407",AdsRejectedAd:"08-408",AdsInteractiveCreativeError:"08-409",AdsVerificationNodeExecutionError:"08-410",AdsNonLinearAdDisplayError:"08-500",AdsNonLinearAdSizeMismatch:"08-501",AdsNonLinearAdFetchError:"08-502",AdsNonLinearUnsupportedType:"08-503",AdsCompanionAdDisplayError:"08-600",AdsCompanionAdSizeMismatch:"08-601",AdsRequiredCompanionAdError:"08-602",AdsCompanionAdFetchError:"08-603",AdsUndefinedVastError:"08-900",AdsUnknownVpaidError:"08-901",AdsVastDocumentEmpty:"08-999"},Pe=Object.fromEntries(Object.entries(ke).map(([e,t])=>[t,e]));const Re=e=>{return e.autoplay&&Ie.AUDIO_REQUIRED&(!0===(t=e.autoplay)?Ie.ON:!1===t?Ie.OFF:t);var t};function Ce(e,t,n){const o="boolean"==typeof n;if("boolean"!=typeof n&&(n=!!e.hasState(fe)||e.paused),function(e,t,n){const o=e.poll(t?V:j,{forced:n});return o&&o.defaultPrevented}(e,n,o))return Promise.resolve();if(!n)return e.hasState(pe)?(e.setState(fe,!0),e.setState(pe,!1),Promise.resolve()):Promise.resolve(e.pause());if(0==e.reaper)return Promise.resolve();const r=e.reaper.get("__pending_play");return e.paused||r?r?(r.src!==De(e.original_src)&&Le(e),r):(function(e){return(0==e.networkState||0==e.readyState)&&e.currentSrc==De(e.original_src)}(e)&&Le(e),function(e){const t=e.hasState(se),n=t&&Re(e.opts);n&&(e.muted&&e.toggleMute(!1),0==e.volume&&(e.volume=1));t&&e.setState(se,!1);return e.play().then(()=>{e.hasState(fe)&&e.togglePlay(!1)}).catch(o=>{if(console.warn(t?n?"[flowplayer/play] autoplay audio required\n%s":"[flowplayer/play] attempting muted autoplay\n%s":"",o.message,"\ninstance:",e),t&&!n)return e.muted=!0,e.play()})}(e)):(e.setState(fe,!1),!e.hasState(Y)&&e.setState(pe,!0),Promise.resolve())}function Le(e){e.opts.is_native&&(e.hasState($)||(e.hasState(J)||e.emit(K),e.setState(J,!0),e.load()))}function De(e){const t=document.createElement("a");return t.href=e,t.href}function Ue(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n}function Me(e){const t=document.createElement("a");t.href=e;const n=t.pathname&&t.pathname.split(".");return n.length>1&&n[n.length-1]}function Fe(e){switch(e){case"video/mpd":return"application/dash+xml";case"video/m3u8":return"application/x-mpegurl";default:return e}}const He=e=>{var{src:t}=e,n=Ue(e,["src"]);return[Object.assign({src:t,type:t?Fe("video/"+Me(t)):""},n)]};function We(e){return He({src:e})}function xe(e){var{src:t,type:n}=e,o=Ue(e,["src","type"]);return t&&n?[Object.assign({src:t,type:n},o)]:n&&!t?[Object.assign({type:n},o)]:He(Object.assign({src:t},o))}const Ve="health:record",je="rebuffer",Ke="rebuffer:ended",Be="display",Ge="insights:ttff",qe="insights:time_to_first_frag_loaded",Ye="insights:watched_interval",ze="flowplayer:feature",$e="health:ready";var Je=Object.freeze({__proto__:null,RECORD:Ve,REBUFFER:je,REBUFFER_ENDED:Ke,DISPLAY:Be,TIME_TO_FIRST_FRAME:Ge,TIME_TO_FIRST_FRAGMENT_LOADED:qe,WATCHED_INTERVAL:Ye,FEATURE_USAGE:ze,HEALTH_SERVICE_READY:$e});const Qe={All:1,High:.1,Medium:.01,Low:.001,None:0};function Ze(e,{feature_name:t,behavior:n,sample_rate:o}){t&&(o||(o=Qe.All),e.emit(ze,{feature_name:t,behavior:n,sample_rate:o}))}var Xe;function et(e,t,n,o={safari:!1}){const r=function(e){return"string"==typeof e?We(e):Array.isArray(e)||"object"!=typeof e?e.reduce(function(e,t){return"string"==typeof t&&(t=We(t)),"object"!=typeof t||Array.isArray(t)||(t=xe(t)),e.concat(t)},[]):xe(e)}(n);return function(e){[Z,fe,pe,Y,z,J,$,ce].forEach(t=>e.setState(t,!1)),e.setState(Q,!0)}(e),Array(...Array(r.length)).map((e,t)=>t).some(n=>{const i=r[n];if(Xe.Ok==function(e,t,n){e.emit(T,n),t.playback_token&&"string"==typeof n.src&&n.src.startsWith("https://")&&(n.src=function(e,t){const n=new URL(e);return n.pathname=`/pt:${t}${n.pathname}`,n.toString()}(n.src,t.playback_token),Ze(e,{feature_name:"signed-urls",behavior:"used",sample_rate:.1}));"string"==typeof n.src&&(e.original_src=n.src);const o=function(e,t,n){return e.plugins.filter(e=>{return(t=e)&&"wants"in t;var t}).find(e=>e.wants(n.src||"",n,t))}(e,t,n);return e.setOpts({is_native:!o}),o?(o.onload(t,e.root,e,n),Xe.Ok):Xe.Err}(e,t,i)||Xe.Ok==function(e,t,n,o={safari:!1}){var r;/^audio\//.test(n.type||"")&&e.emit(F);t.start_time&&(n.src=n.src+"#t="+t.start_time);if(""==e.canPlayType(n.type||""))return Xe.Err;if(n.drm&&(!n.drm["com.apple.fps.1_0"]||!o.safari))return Xe.Err;"string"==typeof n.src&&(e.preload=null!==(r=t.preload)&&void 0!==r?r:"auto",e.src=n.src);return Xe.Ok}(e,t,i,o))return!0;n==r.length-1&&"string"==typeof i.src&&(e.src=i.src)}),e}!function(e){e[e.Err=0]="Err",e[e.Ok=1]="Ok"}(Xe||(Xe={}));const tt=[I,b,T,L];var nt;function ot(e,t,n){return isNaN(e.duration)||isNaN(e.currentTime)?{}:(t.offset+=n,0==t.offset?rt(e,t):(t.timer&&clearTimeout(t.timer),t.timer=setTimeout(function(){0!=e.reaper&&(e.currentTime=function(e,t,n=0){return Math.max(Math.min(t,e),n)}(e.currentTime+t.offset,e.duration),t.timer=0,rt(e,t))},1e3),function(e,t){e.setState(he,!0),e.setState(nt.BACKWARD,t.offset<0),e.setState(nt.FORWARD,t.offset>0)}(e,t),e.emit(C,t),t))}function rt(e,t){t.timer&&clearTimeout(t.timer),t.timer=t.offset=0,function(e){e.setState(nt.FORWARD,!1),e.setState(nt.BACKWARD,!1),e.setState(he,!1)}(e)}function it(){if("undefined"==typeof document)return!1;const e=document.documentElement;return e&&"rtl"==e.getAttribute("dir")}function at(e,t,n){const o=function(e){return Array.isArray(e)?e.slice(0):e.split(".")}(t);for(;o.length;){if(null==e)return n;const t=o.shift();if("string"!=typeof t)return n;e=e[t]}return null==e?n:e}function st(e,t,n,o){if((o=o||0)>=e.length)return n;return at(e[o],t,st(e,t,n,o+1))}!function(e){e.FORWARD="forward",e.BACKWARD="backward"}(nt||(nt={}));const lt=[1e7]+""+-1e3+-4e3+-8e3+-1e11,ct=()=>"undefined"==typeof crypto?"":lt.replace(/[018]/g,e=>(e^crypto.getRandomValues(new Uint8Array(1))[0]&15>>e/4).toString(16)),dt="flowplayer/uuid";let ut="";!function(){let e=!1;try{const t=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("testPassive",null,t),window.removeEventListener("testPassive",null,t)}catch(e){}}();const pt=["touchstart","touchmove"];function ft(e,t){const n=new CustomEvent(e,{detail:t,cancelable:!0});return t&&Object.defineProperty(n,"data",{get:()=>t}),n}function ht(e,t,n){const o=ft(t,n);return e.dispatchEvent(o),e}function mt(e,t,n){const o=ft(t,n);return e.dispatchEvent(o),o}function yt(e,t,n,o){Array.isArray(t)?t.forEach(t=>Et(e,t,n,o)):Et(e,t,n,o)}function Et(e,t,n,o){if(r=t,!~pt.indexOf(r))return e.addEventListener(t,n,o),e;var r;const i=Object.assign(o||{},{passive:!0});return e.addEventListener(t,n,i),e}function gt(e,t,n,o){return yt(e,t,n,Object.assign(o||{},{once:!0}))}class PlayerStorage{constructor(e,t){this.implementation=e,t&&t.keys().forEach(e=>{"string"==typeof t.implementation[e]&&this.implementation.setItem(e,t.implementation[e])})}keys(){var e;const t=[];for(var n=0;n<this.implementation.length;n++)(null===(e=this.implementation.key(n))||void 0===e?void 0:e.startsWith("flowplayer/"))&&t.push(this.implementation.key(n));return t}removeItem(e){try{this.implementation.removeItem(`flowplayer/${e}`)}catch(e){}}getItem(e){try{return this.implementation.getItem(`flowplayer/${e}`)}catch(e){return null}}setItem(e,t){try{this.implementation.setItem(`flowplayer/${e}`,t)}catch(e){}}clear(){try{this.keys().forEach(e=>this.implementation.removeItem(e))}catch(e){}}get length(){try{return this.keys().length}catch(e){return 0}}key(e){try{return this.implementation.key(e)}catch(e){return null}}}class InMemoryStorage{constructor(){this.pairs=[]}get length(){return this.pairs.length}clear(){this.pairs=[]}getItem(e){var t;return(null===(t=this.pairs.find(t=>t[0]===e))||void 0===t?void 0:t[1])||null}key(e){return this.pairs[e][0]||null}removeItem(e){this.pairs=this.pairs.filter(t=>t[0]!==e)}setItem(e,t){this.removeItem(e),this.pairs.push([e,t])}}const wt={preload:"auto",rtl:!1,controls:!0},_t=["muted","preload"];function vt(e,o,r){let i;r.live_state={dvr_window:void 0,get dvr(){return i},set dvr(t){i=t;const n=!(!e.live||t);r.hasState(de)!=n&&r.setState(de,n)}},r._storage=new PlayerStorage(["localStorage","sessionStorage"].map(e=>{try{const t=window[e];return t.getItem(""),t}catch(t){return console.debug(`Access to window.${e} denied, trying next option`),null}}).find(e=>!!e)||new InMemoryStorage),r.toJSON=function(){return{duration:r.duration,volume:r.volume,currentTime:r.currentTime,states:r.root.className}},r.setSrc=function(t){return et(r,e,t,n())},r.playerState=r.playerState||{},r.setState=function(e,t){if(r.playerState[e]===!!t)return r;const n=Object.assign({},r.playerState,{[e]:t});return r.playerState=n,ht(r,x,r.playerState),r},r.createComponents=function(...e){return Array.from({length:e.length}).map((t,n)=>Oe(this,e[n]))},r.hasState=function(e){return!!r.playerState[e]},r.transitionState=function(e,t,n){!r.hasState(e)&&r.hasState(t)||(n=0),n&&r.setState(le,!0),r.setState(t,!1),r.setState(e,!0),n&&setTimeout(function(){r.setState(le,!1)},n)},r.emit=(e,t)=>(ht(r,e,t),r),r.on=(e,t)=>(yt(r,e,t),r),r.once=(e,t)=>(gt(r,e,t),r),r.off=(e,t)=>{var n,o;return n=e,o=t,r.removeEventListener(n,o),r},r.poll=(e,t)=>mt(r,e,t),r.togglePlay=function(e){return r.hasState(ie)?Promise.reject():Ce(r,0,e)},r.toggleMute=function(e){e=null==e?!r.muted:!!e,r.muted=e,r.muted||r.volume||(r.volume=1),ht(r,y)},r.toggleDisable=function(e){e=null==e?!r.disabled:!!e,r.setState(X,e),r.disabled=e},r.destroy=function(){r.pause();const e=t.indexOf(r);~e&&t.splice(e,1),setTimeout(function(){r.setSrc([]),r.reaper&&r.reaper.clear(),ht(r,I),r.setState(ge,!0)},0)},r.setAttrs=function(e){return _t.forEach(t=>{if(!(t in e))return;const n=e[t];n?r.setAttribute(t,n.toString()):r.removeAttribute(t)}),r},r.opt=function(t,n){return n=void 0===n?at(wt,t):n,at(e,t,n)},r.i18n=function(e,t){if(!r.reaper)return"";const n=r.reaper.get("translations");return n?st(n,e,t||""):t||""},r.setOpts=function(t){Object.assign(e,t),e.live&&!r.hasState(re)&&(r.setState(de,!0),ht(r,P)),"disabled"in t&&void 0!==t.disabled&&r.toggleDisable(t.disabled),"muted"in t&&void 0!==t.muted&&r.toggleMute(t.muted),"dvr"in e&&(r.live_state.dvr=r.opt("dvr")),r.setState(ne,r.opt("rtl",function(e){if(!e)return it();const t=e.getAttribute("dir");return t?"rtl"==t:it()}(o))),r.setState(re,!!e.live),r.setState(ue,"string"==typeof e.poster&&e.poster.length>0),r.setState(me,!!e.seekable),r.setState(Ee,0==e.controls),o.style.backgroundImage=r.hasState(ue)?"url('"+e.poster+"')":"",ht(r,W,e)},r.renderPlugin=function(e){mt(r,M,e).defaultPrevented||r.root.appendChild(e)};const a={offset:0,timer:0};var s,l;l=a,(s=r).on(tt,function(){rt(s,l)}),r.enqueueSeek=function(e){if(0!=r.opts.seekable&&!(1==r.opts.disabled&&e>0))return ot(r,a,e)},r.deviceId=function(){return function(e){if(ut)return ut;try{const t=e.getItem(dt);if(t)return t;const n=ct();return e.setItem(dt,n),n}catch(e){return ut=ct()}}(r._storage)}}var St="undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{};const Nt=["localhost","127.0.0.1","0.0.0.0","s.codepen.io","cdpn.io","try.flowplayer.com"];function bt(e,t){return!!~Nt.indexOf(e)||e.indexOf(t)===e.length-t.length}bt.check_whitelist=function(e){return!!~Nt.indexOf(e)};const At="production";function Ot(e,t){const n={valid_jwt:!1,raw:"",data:{acl:0},exp:0};let o={c:"{}",exp:0};t=t||{};try{o=be(e),n.valid_jwt=!0}catch(e){}return n.raw=e,n.data=JSON.parse(o.c),n.exp=o.exp,t.require_valid_token&&Ot.validate(n),n}var Tt;function It(e){return{grant:e,is_granted:t=>(e&t)===t}}function kt({root:e,video:t,data:n}){t&&t.destroy(),console.error(new Error(n.details||n.reason)),e.innerHTML="",e.classList.remove("flowplayer"),e.classList.add("flowplayer-fatal"),e.style.removeProperty("background-image");const o=document.createElement("h2");o.textContent="Playback Error";const r=document.createElement("p");r.textContent="Are you the site owner?";const i=document.createElement("a");i.classList.add("troubleshoot"),i.target="_blank",i.href="https://docs.flowplayer.com/troubleshooting/player#"+n.reason,i.textContent="Troubleshoot?";const a=document.createElement("img");a.src="https://flowplayer.com/user/pages/images/logo-white.png",a.alt="Flowplayer Logo",e.append(o,r,i,a)}function Pt(e){return t=>{setTimeout(function(){if(!t.defaultPrevented&&!t.prevented)return e(t)},0)}}Ot.validate=function(e){if("string"==typeof e&&(e=Ot(e)),!e||!e.raw){if(bt.check_whitelist(window.location.hostname)||"dev"===At.toString())return!0;throw new Error("No token provided in configuration")}if(!e.valid_jwt)throw new Error("Invalid token provided");const t=window.location.hostname,n=bt.bind(null,t);if("dev"!==At.toString()&&e.data.domain&&e.data.domain.length&&!e.data.domain.some(n))throw new Error("Domain not allowed");if("dev"!==At.toString()&&1e3*e.exp-Date.now()<0)throw new Error("Expired token");return!0},Ot.id=function(e){if(e)return"string"==typeof e&&(e=Ot(e)),e.data.id},function(e){e[e.ADS=2]="ADS",e[e.ANALYTICS=4]="ANALYTICS",e[e.NO_METERING=8]="NO_METERING",e[e.DEVELOPER_PLAN=16]="DEVELOPER_PLAN",e[e.WOWZA_VIDEO=32]="WOWZA_VIDEO"}(Tt||(Tt={})),It.of=It,It.from_token=function(e){const t=Ot(e,{require_valid_token:!0});return It.of(t.data.acl)},It.permissions=Tt;const Rt="is-casting",Ct="has-casted";function Lt(e){return function(e,t){const n=e.seekable;if("object"!=typeof e.opts||0==n.length)return{head:0,tail:0};const o=Dt(e),r=t||e.live_state.dvr_window;return{head:o,tail:"number"!=typeof r||o-r<0?n.start(0):o-r}}(e).tail}function Dt(e){var t;const n=e.seekable;return n.length?e.hasState("is-chromecast-playing")||!(null===(t=e.hls)||void 0===t?void 0:t.liveSyncPosition)?n.end(n.length-1):e.hls.liveSyncPosition:0}function Ut(e){try{e.dvr_offset=0,e.currentTime=Dt(e)}catch(e){console.warn("failed to seek to now: %j",e)}}function Mt(e,t){const n=t.clientWidth;t.classList.toggle(ee,n<600),t.classList.toggle(te,n<400)}function Ft(e,t,n){let o=!0;t.classList.add("flowplayer"),Mt(0,t),gt(n,m,()=>{void 0!==e.start_quality&&Ze(n,{feature_name:"start-quality",behavior:String(e.start_quality),sample_rate:Qe.High})}),yt(n,m,()=>{if(!n.hasState(J)&&!n.hasState($)&&e.is_native&&"none"!==e.preload)return"metadata"===e.preload?(n.setState(J,!0),n.emit(K)):void Le(n)}),yt(n,u,()=>{e.is_native&&"metadata"===e.preload&&n.paused&&n.emit(v)}),yt(n,[m,l],function(){Mt(0,t)}),yt(n,x,function(){Object.entries(n.playerState).forEach(function([e,n]){t.classList.toggle(e,n)})}),yt(n,h,function(){n.setState(ae,!n.hasState(Rt)&&!n.hasState(Q)&&n.readyState<3)}),yt(n,S,function(t){const o=n.original_src;Pt(()=>{if(o===n.original_src){if(n.setState(oe,!0),gt(n,h,function(){n.setState(oe,!1),o===n.original_src&&n.setState(Q,!e.loop&&!!e.rewind&&n.paused)}),e.loop)return n.togglePlay(!0);e.rewind&&(n.currentTime=0)}})(t)}),yt(n,[b,N],function(e){n.setState(Z,e.type==b)}),yt(n,D,function(e){setTimeout(()=>{e.defaultPrevented||(n.currentTime=e.detail.currentTime)},0)}),yt(n,S,function(){n.setState(Y,!1),o=!0}),yt(n,f,()=>{if(!n.opts.live||!n.opts.is_native)return;const e=n.seekable;0!=e.length&&n.emit("dvr/window",e.end(e.length-1)-e.start(0))}),yt(n,p,function(){n.setState($,!0),n.setState(J,!1)}),yt(n,w,()=>{n.setState(pe,!0)}),yt(n,[_,v,m],function(t){if(!n.hasState(Z)&&(t.type!=v||e.autoplay||n.setState(ae,!1),t.type!=m||"none"!=n.opt("preload")||e.autoplay)){if(t.type==m&&e.autoplay)return gt(n,g,function(){n.setState(ae,!1)});t.type!=_||n.hasState($)||n.setState(J,!0),n.setState(oe,!1),n.setState(ae,t.type==_)}}),yt(n,[g,E],function(t){setTimeout(()=>{const e=new CustomEvent("flowplayer/"+t.type,{detail:n});document.dispatchEvent(e)},0);const r=t.type==g,i=n.currentTime==n.duration,a=r&&o&&e.autoplay||n.hasState(ae);if(r&&(n.started=!0,o=!1),n.setState(ae,!1).setState(pe,!1),!r&&n.setState(fe,!1),i)return;const s=r?Y:z,l=r?z:Y;n.transitionState(s,l,a?0:300),!n.hasState(Q)||n.root.classList.contains("ad-hide-first-frame")||n.root.classList.contains("preroll-ios")||function(e,t){if(!e.hasState(re)||![void 0,0,-1].includes(t)||!e.seekable.length||e.hasState(Ct))return e.setState(Q,!1);e.once(N,()=>e.setState(Q,!1)),0===t?function(e){e.currentTime=Lt(e)}(e):Ut(e)}(n,e.start_time)})}const Ht=[0].concat(Array.from({length:100}).map((e,t)=>(t+1)/100));function Wt(){return t.find(e=>e.hasState(Rt))}const xt=.5625;function Vt(e){if("number"==typeof e&&!isNaN(e))return Number(e);if("string"==typeof e){const t=e.split(":");return Number(t[1])/Number(t[0])}return e}class ExplorerPlan{constructor(){this.cleanUp=this.cleanUp.bind(this),this.render=this.render.bind(this),this.wireUp=this.wireUp.bind(this)}init(e,t,n){this.root=t,this.player=n,this.wireUp()}wireUp(){var e,t;this.cleanUp(),null===(e=this.player)||void 0===e||e.once(g,this.render),null===(t=this.player)||void 0===t||t.once(S,this.wireUp)}cleanUp(){var e,t,n,o;null===(t=null===(e=this._logo)||void 0===e?void 0:e.parentElement)||void 0===t||t.removeChild(this._logo),null===(n=this.player)||void 0===n||n.off(g,this.render),null===(o=this.player)||void 0===o||o.off(S,this.wireUp)}render(){var e,t,n;null===(t=null===(e=this._logo)||void 0===e?void 0:e.parentElement)||void 0===t||t.removeChild(this._logo);const o=(null===(n=this.root)||void 0===n?void 0:n.querySelector(".fp-ui"))||this.root;if(!o)return;const r=this._logo=document.createElement("a");r.href="https://explorer.flowplayer.com",r.target="_blank",Object.entries(jt).forEach(([e,t])=>{r.style.setProperty(e,t,"important")}),o.appendChild(r)}}ExplorerPlan.pluginName="explorer-plan";const jt={display:"block",opacity:"1",visibility:"visible",width:"33%","padding-top":"9%",position:"absolute","z-index":"9999",bottom:"25%",left:"10%","background-size":"cover","background-image":"url(https://static.flowplayer.com/explorer/explorer.svg)"},Kt="flowplayer/"+g;function Bt(e,t){const n=[];e.addEventListener("contextmenu",o=>{const r=o.timeStamp;for(n.push(r);n.length>3;)n.shift();n.length>=3&&n.every(e=>e-r<3e3)&&(console.debug("flowplayer/debug rendering info"),function(e,t){var n;!function(e){const t=e.querySelector(".debug-info");null==t||t.remove()}(e);const o=document.createElement("div");o.classList.add("debug-info");const r=Gt("flowplayer.version","3.34.3-rc");o.append(r);const i=null===(n=null==t?void 0:t.hls)||void 0===n?void 0:n.constructor;if(i&&i.version){const e=Gt("hls.version",i.version);o.append(e)}e.appendChild(o)}(e,t))})}const Gt=(e,t)=>{const n=document.createElement("div");n.classList.add("row",e);const o=document.createElement("span");o.classList.add("attr"),o.textContent=e;const r=document.createElement("span");return r.textContent=t,r.classList.add("value"),n.append(o,r),n};function qt(e,t){const n=function(){try{return localStorage.getItem("flowplayer/debug")}catch(e){return""}}(),o=(o,...r)=>{try{const i=(null==t?void 0:t.debug)||n;i&&e.match(i)&&console.log(`flowplayer/${e} -- ${o}`,...r)}catch(e){console.warn(e)}};return o.log=o,o}const Yt="without_recovery",zt="off";class FlowplayerError extends Error{static getErrorKey(e){return e in Pe?Pe[e]:Pe["00-00"]}constructor(e,t,n={}){super(e),this.message=e,this.flowplayerErrorCode=t,this.config=n,this.id=ct(),this.isFatal=!!n.isFatal,this.errorKey=FlowplayerError.getErrorKey(this.flowplayerErrorCode)||"unknown"}toJSON(){return{message:this.message,flowplayer_error_code:this.flowplayerErrorCode,id:this.id,root_error_id:this.config.rootErrorId,resource:this.config.resource,is_fatal:this.isFatal,is_retry:!!this.config.isRetry}}}const $t=qt("core/retry");function Jt(e,t){const n={pending:void 0,count:0};e.on(B,o=>{var i,a,s,l,c;const d=null===(i=o.detail)||void 0===i?void 0:i.error;d.config.isRetry=!!n.count,void 0===n.pending&&(null===(s=null===(a=d.config)||void 0===a?void 0:a.retryOpts)||void 0===s?void 0:s.retry)!==zt&&(t.retry||(null===(c=null===(l=d.config)||void 0===l?void 0:l.retryOpts)||void 0===c?void 0:c.retry))&&(++n.count,n.pending=function(e,t,n){var o,i;return setTimeout(()=>{var o;e.hasState(ge)||(t.pending=void 0,(null===(o=n.config.retryOpts)||void 0===o?void 0:o.retry)!==Yt&&e.emit(R),e.emit(r,{error:n}),$t("%s try",t.count))},null!==(i=null===(o=n.config.retryOpts)||void 0===o?void 0:o.retryTimeout)&&void 0!==i?i:3e3*t.count)}(e,n,d))}),e.on(g,()=>{n.count=0}),e.on([T,R],e=>{e.type===T&&(n.count=0),clearTimeout(n.pending),n.pending=void 0}),e.on(r,Pt(()=>{e.load()}))}const Qt=[K,i,T];function Zt(e){try{return!!new URL(e)}catch(e){return!1}}const Xt=navigator;function en(e){var t,n;const o=null===(t=e.hls)||void 0===t?void 0:t.bandwidthEstimate;return o?1e-6*o:(null===(n=Xt.connection)||void 0===n?void 0:n.downlink)||-1}function tn(e,t){return async function(e,t){try{await fetch(e,{body:t,method:"POST",mode:"no-cors"})}catch(e){}}(e,JSON.stringify({events:t}))}const nn=e=>{switch(e){case!0:return Ie.ON;case!1:return Ie.OFF;default:return e}};function on(){try{const e=window.location!==window.parent.location?document.referrer:document.location.href;return"string"==typeof e&&e.slice(0,200)}catch(e){return!1}}const rn=[],an="https://ihi.flowplayer.com/v1/health/events";function sn(e){if(e.suspended)return;const t=rn.slice(0);rn.length=0,0!=t.length&&(e.logger.log(`:dispatch events={${t.length}}`),tn(function(){try{return"undefined"==typeof window?an:window.__FLOWPLAYER_INSIGHTS_URL?window.__FLOWPLAYER_INSIGHTS_URL:an}catch(e){return an}}(),t))}async function ln(e,t,n){const o=await dn();rn.push(Object.assign(t,o)),e.logger.log(":enqueue",t.event,t),rn.length<10&&!n||sn(e)}const cn=()=>{var e,t;try{const n=window;return null===(t=null===(e=null==n?void 0:n.google)||void 0===e?void 0:e.ima)||void 0===t?void 0:t.VERSION}catch(e){return}},dn=async()=>({client_time:Date.now()}),un=(e,t)=>Object.assign(e,{detail:t}),pn=(e,{event:t,media_session_id:n,session_id:o,play_range_id:r})=>({event:t,media_session_id:n,session_id:o,play_range_id:r,device_id:e.deviceId(),version:"3.34.3-rc",commit:"44d6a439e2b00e6b058cff99650467be8274135e",ima_sdk_version:cn(),preload:e.opt("preload"),autoplay:nn(e.opt("autoplay")),live:e.opt("live"),dvr:!!e.live_state.dvr,source:e.original_src,downlink_mbs:en(e),page_url:on(),player_id:e.opt("metadata.player_id"),media_id:e.opt("metadata.media_id")||e.opt("metadata.stream_target_id"),site_id:e.opt("metadata.site_id"),category_id:e.opt("metadata.category_id"),sitegroup_id:e.opt("metadata.sitegroup_id"),token:e.token,plugins:e.plugins.map(e=>e.constructor.name).sort((e,t)=>e.localeCompare(t)),current_time:e.currentTime,external_media_id:e.opt("external_media_id")}),fn=e=>({bitrate:null==e?void 0:e.bitrate,resolution:null==e?void 0:e.attrs.RESOLUTION,frame_rate:null==e?void 0:e.attrs["FRAME-RATE"]});const hn=(e,t)=>{let n=null;return(...o)=>{null!==n&&(clearTimeout(n),n=null),n=setTimeout(()=>t(...o),e)}};var mn;!function(e){e[e.Starting=0]="Starting",e[e.ConfigFinalized=1]="ConfigFinalized",e[e.TimerStartedWithAutoplay=2]="TimerStartedWithAutoplay",e[e.TimerStartedWithUserGesture=3]="TimerStartedWithUserGesture",e[e.MetricReported=4]="MetricReported"}(mn||(mn={}));const yn=[a,s];class TimeToFirstFrame{constructor(e=mn.Starting,t=!1){this.state=e,this.loadedAd=t}reset(){this.state=mn.Starting,this.loadedAd=!1,this.start=void 0,this.end=void 0,this.adDetails=void 0}adInfo(){const{ad_tag_id:e,vast_ad_id:t}=this.adDetails||{};return{ad_tag_id:e,vast_ad_id:t}}toJSON(){return Object.assign({ad_was_requested:this.loadedAd,ms_to_first_frame:Math.round(this.end&&this.start?this.end-this.start:-1)},this.adInfo())}startTimer(e){this.state==mn.ConfigFinalized&&(this.state=e,this.start=performance.now())}hasStarted(){return[mn.TimerStartedWithAutoplay,mn.TimerStartedWithUserGesture].includes(this.state)}stopTimer(e){this.hasStarted()&&(this.end||(this.end=performance.now()),this.state=mn.MetricReported,e())}}function En(e){return Math.round(1e3*e)/1e3}class EWMA{constructor(e){this.tickInterval=e,this.ewma=0,this.startTime=Date.now()}decay(){const e=Date.now()-this.startTime;return Math.pow(2,-e/(4*this.tickInterval))}update(e){const t=this.decay();return this.ewma=t*this.ewma+(1-t)*e,this.ewma}toJSON(){return this.ewma}}const gn={skipUnreliableSegments:!0};class WatchedState{constructor(e){this.player=e,this.marchingInterval=void 0,this.lastWatchedPoint=void 0,this.watchedSum=0,this.lastReportedSum=0,this.ewmaTickWatched=new EWMA(WatchedState.AccuracyMilliseconds)}reset(){this.onNotWatching(),this.watchedSum=0,this.lastReportedSum=0,this.lastWatchedPoint=void 0}onNotWatching(){this.marchingInterval&&(this.updateWatched(),this.marchingInterval=clearInterval(this.marchingInterval))}onWatching(){this.marchingInterval||(this.lastWatchedPoint=this.createWatchedPoint(),this.marchingInterval=setInterval(()=>{this.updateWatched()},WatchedState.AccuracyMilliseconds))}createWatchedPoint(){return{currentTime:this.player.currentTime,paused:this.player.paused}}updateWatched(){const e=this.createWatchedPoint();this.lastWatchedPoint&&this.calculateTimeWatched(this.lastWatchedPoint,e),this.lastWatchedPoint=e}calculateTimeWatched(e,t){var n,o;const r=t.currentTime-e.currentTime,i=this.ewmaTickWatched.update(r);if(!(r<0)&&!(!1!==(null===(o=null===(n=this.player.opts)||void 0===n?void 0:n.health)||void 0===o?void 0:o.skipUnreliableSegments)&&1e3*r>1.3*WatchedState.AccuracyMilliseconds)&&(this.watchedSum+=r,this.watchedSum!=this.lastReportedSum&&(this.watchedSum>this.lastReportedSum+WatchedState.ReportingIntervalSeconds||this.player.ended))){const e=En(i),t={total_watched_seconds:En(this.watchedSum),tick_watched_seconds:e,batch_watched_seconds:En(this.watchedSum-this.lastReportedSum)};this.lastReportedSum=this.watchedSum,this.player.emit(Ye,t)}}}WatchedState.ReportingIntervalSeconds=5,WatchedState.AccuracyMilliseconds=160;const wn=ct();class Health{constructor(e,t){let n;this.session_id=wn,this.suspended=!1,this.logger=qt("health",t.opts),this.media_session_id=ct(),this.play_range_id=ct(),this.analyticsLoop=setInterval(()=>sn(this),2e3),t.on(I,()=>clearInterval(this.analyticsLoop)),t.on(g,()=>{n!==this.media_session_id&&(n=this.media_session_id,this.first_playing_event_timestamp=Date.now()),this.play_range_id=ct()});let o=Date.now()-1e3;t.on(h,e=>{if(n!==this.media_session_id)return;const r=Date.now();if(r<o)return;o=Date.now()+5e3;const i=pn(t,this.eventInfo(e.type)),a=un(i,{duration:(s=t.duration,Number.isFinite(s)?s:s===1/0?-1:void 0)});var s;this.first_playing_event_timestamp&&(Object.assign(a,{ms_since_first_playing:r-this.first_playing_event_timestamp}),this.first_playing_event_timestamp=void 0),ln(this,a)});const r=this;if(t.health={get media_session_id(){return r.media_session_id},set media_session_id(e){r.media_session_id=e},get session_id(){return r.session_id},set session_id(e){r.session_id=e},toggle(e){e?r.resume():r.suspend()}},!Health._UNLOAD_SUBSCRIBED){Health._UNLOAD_SUBSCRIBED=!0;const t=t=>e.instances.forEach(e=>e.emit(t.type));document.addEventListener("visibilitychange",e=>{"hidden"==document.visibilityState&&t(e)}),window.addEventListener("pagehide",t)}}eventInfo(e){return{event:e,media_session_id:this.media_session_id,session_id:this.session_id,play_range_id:this.play_range_id}}suspend(){this.suspended=!0,clearInterval(this.analyticsLoop)}resume(){this.suspended=!1,this.analyticsLoop=setInterval(()=>sn(this),2e3)}init(e,t,n){if(on().toString().startsWith("data:"))return this.suspend();!function(e){let t=null;const n=()=>{t=null};e.on(_,function(t){e.seeking||e.networkState===e.NETWORK_LOADING&&(e.readyState<HTMLMediaElement.HAVE_CURRENT_DATA||e.emit(je))}),e.on(je,e=>{t=e}),e.on(v,o=>{if(t){const r=o.timeStamp-t.timeStamp;if(n(),r<31)return;if(r>3e5)return;e.emit(Ke,{rebuffer_duration:r/1e3})}}),Qt.forEach(t=>e.on(t,n))}(n),function(e){let t;[v,K].forEach(n=>{e.on(n,n=>{const o=Date.now();switch(n.type){case K:return t=o;case v:if(t)return e.emit(qe,{ms_since_loading_started:o-t}),t=null}})})}(n),function(e){if(void 0===window.performance)return;const t=new TimeToFirstFrame;e.on(T,()=>{if(!e.opt("metadata.media_id"))return t.reset();t.reset(),t.state=mn.ConfigFinalized}),e.on(K,()=>{(e.root.classList.contains("ad-hide-first-frame")||e.opt("autoplay"))&&t.startTimer(mn.TimerStartedWithAutoplay)}),yn.forEach(n=>{e.on(n,()=>{e.opt("autoplay")||t.startTimer(mn.TimerStartedWithUserGesture)})}),e.on("ad-requested",()=>{t.loadedAd=!0}),e.on(h,()=>{if(!(e.readyState<HTMLMediaElement.HAVE_CURRENT_DATA)){if(e.root.classList.contains("ad-hide-first-frame"))return!t.end&&(t.end=performance.now());switch(t.state){case mn.TimerStartedWithAutoplay:case mn.TimerStartedWithUserGesture:return t.stopTimer(()=>e.emit(Ge,t.toJSON()))}}}),e.on("ad-started",n=>{switch(t.end=void 0,t.adDetails=n.detail,t.state){case mn.TimerStartedWithAutoplay:case mn.TimerStartedWithUserGesture:return t.stopTimer(()=>e.emit(Ge,t.toJSON()))}})}(n),function(e){const t=new WatchedState(e);e.on(K,()=>t.reset()),e.on(g,()=>t.onWatching()),e.on(Ke,()=>!e.paused&&t.onWatching()),e.on(je,()=>t.onNotWatching()),e.on(E,()=>t.onNotWatching()),e.on(b,()=>{e.currentTime>1&&t.updateWatched(),t.onNotWatching()}),e.on(N,()=>{e.paused||t.onWatching()}),e.on(S,()=>t.updateWatched()),e.on("visibilitychange",()=>t.updateWatched())}(n),n.on(Be,e=>{ln(this,pn(n,this.eventInfo(e.type)),!0)}),n.on(Ve,({detail:e})=>{const t=pn(n,this.eventInfo(e.event));Object.assign(t,e.detail||{}),ln(this,t)}),n.on(ze,e=>{if(t=e.detail.sample_rate,!Object.values(Qe).includes(t))return console.debug(`sample_rate=${e.detail.sample_rate} is invalid`);var t,o;if(!(0!==(o=e.detail).sample_rate&&Math.random()<=o.sample_rate))return;const r=pn(n,this.eventInfo(e.type));ln(this,un(r,e.detail))}),n.on(T,()=>{n.opt("metadata.media_id")&&n.emit($e)}),[m,u,p,f,_,je].forEach(e=>{n.on(e,e=>{ln(this,pn(n,this.eventInfo(e.type)))})}),[Ke,Ge,qe,Ye].forEach(e=>{n.on(e,e=>{const t=pn(n,this.eventInfo(e.type));ln(this,Object.assign(t,e.detail))})}),[g,E,b,N,S,c,d,v,K].forEach(e=>{n.on(e,e=>{ln(this,pn(n,this.eventInfo(e.type)))})}),n.on(y,hn(800,e=>{const t=pn(n,this.eventInfo(e.type));ln(this,un(t,{volume:parseFloat(n.volume.toFixed(2)),muted:n.muted}))})),n.on(l,hn(800,e=>{const o=pn(n,this.eventInfo(e.type));ln(this,un(o,{height:t.clientHeight,width:t.clientWidth}))})),n.on("hls/failover",e=>{const t=pn(n,this.eventInfo(e.type)),o=e.detail,{reason:r,from:i}=o;ln(this,un(t,{reason:r,from:i}))}),n.on(k,({type:e,detail:t})=>{if("hls"===t.plugin)return function(e,t,n,o){const r=pn(t,e.eventInfo(n)),i=Object.assign({before:fn(o.before),after:fn(o.after),automatic:o.automatic,downscale:o.downscale},o.before?{}:{start_quality:t.opts.start_quality});ln(e,Object.assign(Object.assign({},r),{state:i}))}(this,n,e,t)}),n.on(B,e=>{const t=pn(n,this.eventInfo(e.type)),o=e.detail.error;if(!o)return ln(this,t,!0);return ln(this,un(t,o.toJSON()),!0)}),n.on(T,e=>{var t;const o=null===(t=e.detail)||void 0===t?void 0:t.src;if("string"!=typeof o)return;if(!Zt(n.original_src))return;if(!Zt(o))return;if(o==n.original_src)return;this.media_session_id=ct();ln(this,pn(n,this.eventInfo(e.type))),sn(this),n.setOpts({health:Object.assign(Object.assign({},n.opts.health),gn)})}),n.on("visibilitychange",e=>{ln(this,pn(n,this.eventInfo(e.type))),sn(this)})}}function _n(e,t){return function(e){return e.extensions.reduce((e,t)=>e.find(e=>e.pluginName===t.pluginName)?(console.warn("flowplayer: duplicate plugin %s detected, plugin names should be unique",t.name),e):(e.push(t),e),[])}(e).map(n=>new n(e,t))}function vn(e,t={}){var n,o,r,i,a,s;switch(e.code){case MediaError.MEDIA_ERR_ABORTED:return new FlowplayerError(null!==(n=e.message)&&void 0!==n?n:"The playback was aborted, typically by the user.",ke.PlaybackInternalAborted,Object.assign({isFatal:!1,retryOpts:{retry:zt}},t));case MediaError.MEDIA_ERR_NETWORK:return new FlowplayerError(null!==(o=e.message)&&void 0!==o?o:"A network error prevented media from being downloaded.",ke.NetworkHttpRequestFailed,Object.assign({isFatal:!0},t));case MediaError.MEDIA_ERR_DECODE:return new FlowplayerError(null!==(r=e.message)&&void 0!==r?r:"An error occurred while decoding the media.",ke.PlaybackVideoDecodeError,Object.assign({isFatal:!0},t));case MediaError.MEDIA_ERR_SRC_NOT_SUPPORTED:return new FlowplayerError(null!==(i=e.message)&&void 0!==i?i:"The media could not be loaded because the format is not supported.",ke.MediaUnsupportedVideoFormat,Object.assign({isFatal:!0},t));case 5:return new FlowplayerError(null!==(a=e.message)&&void 0!==a?a:"Encrypted content could not be played due to missing keys or unsupported protection scheme.",ke.ContentProtectionKeySystemNoKeys,Object.assign({isFatal:!0},t));default:return new FlowplayerError(null!==(s=e.message)&&void 0!==s?s:"An unknown playback error occurred.",ke.PlaybackUnknown,Object.assign({isFatal:!0},t))}}Health.pluginName="health",Health.events=Je,Health._UNLOAD_SUBSCRIBED=!1;const Sn=function(){const e="undefined"!=typeof window?window:void 0!==St?St:{},t=e.flowplayer?e.flowplayer:{extensions:[]};return Array.isArray(t.extensions)||(t.extensions=[]),t}();function Nn(n,r){if("function"==typeof n)return e.push(...[...arguments].filter(e=>"function"==typeof e)),Nn;"string"==typeof r&&(r={src:r}),r||(r={}),r.token||"string"!=typeof window.__FLOWPLAYER_TOKEN||(r.token=window.__FLOWPLAYER_TOKEN);const a="string"==typeof n?document.querySelector(n):n;if(!a)return console.error(new Error("Flowplayer: '"+n.toString()+"' not found"));const s=a.querySelector("video.fp-engine");if(s)return s;const c=function(e){try{return Ot.validate(e),{success:!0,message:""}}catch(e){return{success:!1,message:e.message}}}(r.token);if(!c.success)return kt({root:a,data:{reason:"token",details:c.message}});const d=new Map,f=function(e,t){const n=t.querySelector("video"),o=n||(e._video_element_callback?e._video_element_callback(e):document.createElement("video"));return o.classList.add("fp-engine"),o.playsInline=!0,n||t.append(o),o}(r,a);var h;f.reaper=d,f._customElements=Ae,Object.defineProperty(f,"token",{value:"string"==typeof r.token?Ot.id(r.token):"",writable:!1}),f.addEventListener(I,()=>{d.clear(),f.reaper=0,delete f.root}),f.root=a,r.token&&It.from_token(r.token).is_granted(It.permissions.DEVELOPER_PLAN)&&e.push(ExplorerPlan),!~t.indexOf(f)&&t.push(f),vt(r,a,f),f.setAttrs(r),f.plugins=_n(Nn,f),Ft(r,a,f),function(e,t,n){if(!window.IntersectionObserver)return;const o={should_resume:!!e.autoplay,locked:!1};yt(n,w,function(){o.locked||(o.should_resume=!0)});const r=()=>{if(!e.autoplay)return;if(n.hasState(ye)&&o.should_resume)return n.togglePlay(!0);const t=n.currentSrc;e.autopause||n.hasState(ye)||!o.should_resume||gt(n,A,()=>{e.autoplay&&o.should_resume&&t===n.currentSrc&&n.togglePlay(!0)})},i=()=>{if(!e.autoplay)return;if(!e.is_native)return;if("auto"===e.preload)return;if(n.hasState(ye))return Le(n);const t=n.currentSrc;gt(n,A,()=>{t!==n.currentSrc||n.readyState>1||!n.paused||Le(n)})};yt(n,T,function(){o.should_resume=!!e.autoplay,n.off(m,i),n.once(m,i),n.off(v,r),n.once(v,r)}),yt(n,E,function(){o.locked||(o.should_resume=!1)});const a=new IntersectionObserver(e=>{e.forEach(e=>{setTimeout(()=>{const t=e.intersectionRatio,o=n.hasState(ye);if(n.setState(ye,t>=.2),n.emit(U,{ratio:t}),o===n.hasState(ye))return;const r=n.hasState(ye)?A:O;n.emit(r)},0)})},{threshold:Ht});a.observe(t),n.on(I,()=>a.disconnect()),yt(n,A,function(){!o.should_resume||!e.autopause||Wt()||n.opts.autoplay&&!n.readyState||n.togglePlay(!0)}),yt(n,O,function(){if(!e.autopause||Wt())return;const t=!n.paused;o.locked=!0,n.pause(),setTimeout(function(){o.should_resume=t,o.locked=!1},0)})}(r,a,f),function(e,t){if(!window.ResizeObserver)return;const n=new ResizeObserver(e=>{const n=e[e.length-1];t.emit(l,n)});n.observe(e),t.on(I,()=>n.disconnect())}(a,f),function(e,t,n){const o=!!e.ratio,r=document.createElement("div");r.classList.add("fp-ratio"),t.append(r);let i=Vt(e.ratio||xt);r.style.paddingTop=100*i+"%";const a=[p,u];n.on(a,function(){if(o)return;const e=n.videoHeight&&n.videoWidth&&n.videoHeight/n.videoWidth;e&&n.setOpts({ratio:e})}),n.on(W,function(){const t=n.videoHeight&&n.videoWidth&&n.videoHeight/n.videoWidth,o=Vt((null==e?void 0:e.ratio)||t||xt);i!==o&&(i=o,r.style.paddingTop=100*o+"%")})}(r,a,f),function(e){const t=t=>{t.detail!==e&&!1===e.opt("multiplay")&&e.togglePlay(!1)};e.on(I,()=>document.removeEventListener(Kt,t)),document.addEventListener(Kt,t)}(f),Bt(a,f),Jt(f,r),(h=f).on(i,Pt(e=>{const t=e instanceof MediaError?e:h.error;t&&h.emit(B,{error:vn(t,{resource:h.original_src})})})),f.plugins.forEach(e=>{try{e.init(r,a,f)}catch(t){console.log("Error(plugin/%s)",e.constructor.name,t)}}),f.setOpts(r),f.opts=r,r.src&&f.setSrc(r.src);const y=f.readyState;return y>0&&f.currentSrc&&f.emit(u),y>2&&f.currentSrc&&f.emit(v),f.emit(o),f.on(H,function(e){kt({root:a,video:f,data:e.data||{}})}),setTimeout(ht,0,document,"flowplayer:player:created",f),f}return Object.assign(Nn,Sn),function(o){Array.isArray(o.extensions)&&o.extensions.forEach(t=>e.push(t)),o.customElements=Ae,o.defaultElements=q,o.version="3.34.3-rc",o.commit="44d6a439e2b00e6b058cff99650467be8274135e",o.instances=t,o.extensions=e,o.support=n,o.events=G,o.states=we,o.errors=ke,o.jwt=be,o.autoplay=Ie,o.quality=Te}(Nn),"object"==typeof document&&setTimeout(ht,0,document,"flowplayer:umd",Nn),Nn.extensions.unshift.apply(Nn.extensions,[Health]),Nn});