@hopeplayer/core 1.4.0 → 1.5.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 (88) hide show
  1. package/dist/HopePlayerElement.d.ts +18 -2
  2. package/dist/HopePlayerElement.d.ts.map +1 -1
  3. package/dist/chunks/NativeEme-CXosVcw8.js +80 -0
  4. package/dist/chunks/NativeEme-CXosVcw8.js.map +1 -0
  5. package/dist/chunks/{accessibility-DeUIoAda.js → accessibility-DFx4CE0H.js} +9 -8
  6. package/dist/chunks/{accessibility-DeUIoAda.js.map → accessibility-DFx4CE0H.js.map} +1 -1
  7. package/dist/chunks/{ads-CdWbE9aD.js → ads-C4tDPsUs.js} +3 -3
  8. package/dist/chunks/ads-C4tDPsUs.js.map +1 -0
  9. package/dist/chunks/analytics-DEjTAJO9.js +281 -0
  10. package/dist/chunks/analytics-DEjTAJO9.js.map +1 -0
  11. package/dist/chunks/{cast-BQ-suTcF.js → cast-Baxvu76A.js} +2 -2
  12. package/dist/chunks/{cast-BQ-suTcF.js.map → cast-Baxvu76A.js.map} +1 -1
  13. package/dist/chunks/dash-CWjy-y7B.js +22 -0
  14. package/dist/chunks/dash-CWjy-y7B.js.map +1 -0
  15. package/dist/chunks/{history-DAbqEhNB.js → history-CvydU0aN.js} +2 -2
  16. package/dist/chunks/{history-DAbqEhNB.js.map → history-CvydU0aN.js.map} +1 -1
  17. package/dist/chunks/keySystems-CNzjRq6e.js +70 -0
  18. package/dist/chunks/keySystems-CNzjRq6e.js.map +1 -0
  19. package/dist/chunks/{markers-B04NMI79.js → markers-Dr4-CCxE.js} +2 -2
  20. package/dist/chunks/{markers-B04NMI79.js.map → markers-Dr4-CCxE.js.map} +1 -1
  21. package/dist/chunks/{player-D7WQxMzr.js → player-DV4Hf5Cw.js} +1230 -997
  22. package/dist/chunks/player-DV4Hf5Cw.js.map +1 -0
  23. package/dist/chunks/{playlist-C6Mh9BE8.js → playlist-DJsdK6xm.js} +29 -21
  24. package/dist/chunks/playlist-DJsdK6xm.js.map +1 -0
  25. package/dist/chunks/pluginHost-GxNfyP5E.js +566 -0
  26. package/dist/chunks/pluginHost-GxNfyP5E.js.map +1 -0
  27. package/dist/chunks/{redirectScreen-5HAVRtxe.js → redirectScreen-BT_26-5g.js} +2 -2
  28. package/dist/chunks/{redirectScreen-5HAVRtxe.js.map → redirectScreen-BT_26-5g.js.map} +1 -1
  29. package/dist/chunks/{rewardedUnlock-CGhQyWOk.js → rewardedUnlock-jFOdzfSq.js} +2 -2
  30. package/dist/chunks/{rewardedUnlock-CGhQyWOk.js.map → rewardedUnlock-jFOdzfSq.js.map} +1 -1
  31. package/dist/chunks/{segments-gCPrWRig.js → segments--hl_QVrI.js} +2 -2
  32. package/dist/chunks/{segments-gCPrWRig.js.map → segments--hl_QVrI.js.map} +1 -1
  33. package/dist/chunks/{skipSegments-BbWzPpXz.js → skipSegments-vJMhdiJn.js} +2 -2
  34. package/dist/chunks/{skipSegments-BbWzPpXz.js.map → skipSegments-vJMhdiJn.js.map} +1 -1
  35. package/dist/chunks/{spriteThumbnails-B7oDZFTo.js → spriteThumbnails-BoxVY--_.js} +76 -53
  36. package/dist/chunks/spriteThumbnails-BoxVY--_.js.map +1 -0
  37. package/dist/chunks/{statsPanel-DSClIwA3.js → statsPanel-D0DtoFgS.js} +2 -2
  38. package/dist/chunks/statsPanel-D0DtoFgS.js.map +1 -0
  39. package/dist/chunks/{story-BLBij82f.js → story-BRkhSDhR.js} +2 -2
  40. package/dist/chunks/{story-BLBij82f.js.map → story-BRkhSDhR.js.map} +1 -1
  41. package/dist/controls/SeekBar.d.ts.map +1 -1
  42. package/dist/drm/NativeEme.d.ts +23 -0
  43. package/dist/drm/NativeEme.d.ts.map +1 -0
  44. package/dist/drm/keySystems.d.ts +18 -0
  45. package/dist/drm/keySystems.d.ts.map +1 -0
  46. package/dist/hls/SourceManager.d.ts +31 -5
  47. package/dist/hls/SourceManager.d.ts.map +1 -1
  48. package/dist/hls/dashEngine.d.ts +85 -0
  49. package/dist/hls/dashEngine.d.ts.map +1 -0
  50. package/dist/hls/sourceGroups.d.ts.map +1 -1
  51. package/dist/hope-player.js +1 -1
  52. package/dist/i18n/locales/en.d.ts.map +1 -1
  53. package/dist/i18n/locales/tr.d.ts.map +1 -1
  54. package/dist/i18n/types.d.ts +3 -0
  55. package/dist/i18n/types.d.ts.map +1 -1
  56. package/dist/index.d.ts +2 -2
  57. package/dist/index.d.ts.map +1 -1
  58. package/dist/keyboard/KeyboardController.d.ts +14 -0
  59. package/dist/keyboard/KeyboardController.d.ts.map +1 -1
  60. package/dist/plugin-api/PluginAds.d.ts +61 -0
  61. package/dist/plugin-api/PluginAds.d.ts.map +1 -0
  62. package/dist/plugin-api/PluginHost.d.ts +6 -0
  63. package/dist/plugin-api/PluginHost.d.ts.map +1 -1
  64. package/dist/plugin-api/types.d.ts +39 -0
  65. package/dist/plugin-api/types.d.ts.map +1 -1
  66. package/dist/plugins/accessibility/Accessibility.d.ts.map +1 -1
  67. package/dist/plugins/ads/AdsController.d.ts +2 -0
  68. package/dist/plugins/ads/AdsController.d.ts.map +1 -1
  69. package/dist/plugins/analytics/QoeTracker.d.ts +71 -0
  70. package/dist/plugins/analytics/QoeTracker.d.ts.map +1 -0
  71. package/dist/plugins/analytics/index.d.ts +6 -0
  72. package/dist/plugins/analytics/index.d.ts.map +1 -0
  73. package/dist/plugins/playlist/PlaylistRunner.d.ts +2 -0
  74. package/dist/plugins/playlist/PlaylistRunner.d.ts.map +1 -1
  75. package/dist/plugins/sprite-thumbnails/SpriteThumbnails.d.ts +8 -0
  76. package/dist/plugins/sprite-thumbnails/SpriteThumbnails.d.ts.map +1 -1
  77. package/dist/screens/ErrorScreen.d.ts +1 -1
  78. package/dist/screens/ErrorScreen.d.ts.map +1 -1
  79. package/dist/types/index.d.ts +156 -4
  80. package/dist/types/index.d.ts.map +1 -1
  81. package/package.json +2 -1
  82. package/dist/chunks/ads-CdWbE9aD.js.map +0 -1
  83. package/dist/chunks/player-D7WQxMzr.js.map +0 -1
  84. package/dist/chunks/playlist-C6Mh9BE8.js.map +0 -1
  85. package/dist/chunks/pluginHost-DjvLmMYZ.js +0 -376
  86. package/dist/chunks/pluginHost-DjvLmMYZ.js.map +0 -1
  87. package/dist/chunks/spriteThumbnails-B7oDZFTo.js.map +0 -1
  88. package/dist/chunks/statsPanel-DSClIwA3.js.map +0 -1
@@ -0,0 +1,61 @@
1
+ import type { PluginAdBreak, PluginAdBreakOptions, PluginAdBreakType, PluginCleanup } from './types';
2
+ export interface PluginAdsContext {
3
+ element: HTMLElement;
4
+ video: HTMLVideoElement;
5
+ videoArea: HTMLElement;
6
+ isAdPlaying(): boolean;
7
+ /** Player'ın reklam kilidi (kontroller gizli, isAdPlaying true). */
8
+ blockAds(): void;
9
+ unblockAds(): void;
10
+ log(message: string, details?: Record<string, string | number | boolean | undefined>): void;
11
+ }
12
+ type Guard = <A extends unknown[]>(fn: (...args: A) => unknown, where?: string) => (...args: A) => void;
13
+ export declare class PluginAds {
14
+ private readonly ctx;
15
+ private active;
16
+ private prerolls;
17
+ private mids;
18
+ private pauses;
19
+ private endeds;
20
+ private transforms;
21
+ private prerollDone;
22
+ private gateRunning;
23
+ private contentStarted;
24
+ private lastPos;
25
+ private seekPending;
26
+ private pauseTimer;
27
+ private pauseCleanups;
28
+ constructor(ctx: PluginAdsContext);
29
+ destroy(): void;
30
+ /** Eklenti kaldırılınca onun kayıtları ve süren arası. */
31
+ removeOwner(owner: string): void;
32
+ /** IMA isteği öncesi tüm eklentilerin dönüşümleri. */
33
+ transformTag(url: string, type: PluginAdBreakType): string;
34
+ /** Bir eklentiye verilen `ads` nesnesi. */
35
+ api(owner: string, guard: Guard): {
36
+ requestBreak: (run: (ad: PluginAdBreak) => void | Promise<void>, options?: PluginAdBreakOptions) => Promise<boolean>;
37
+ beforeContent: (run: () => unknown) => () => void;
38
+ atTime: (seconds: number | number[], run: (s: number) => unknown, options?: {
39
+ seekPast?: "last" | "skip";
40
+ }) => () => void;
41
+ onPause: (run: () => void | PluginCleanup, options?: {
42
+ delayMs?: number;
43
+ }) => () => void;
44
+ onEnded: (run: () => unknown) => () => void;
45
+ transformTag: (fn: (url: string, type: PluginAdBreakType) => string) => () => void;
46
+ };
47
+ private requestBreak;
48
+ private emit;
49
+ private readonly onLoadStart;
50
+ private readonly onPlay;
51
+ private runPrerolls;
52
+ private readonly onPlaying;
53
+ private readonly onSeeking;
54
+ private readonly onTimeUpdate;
55
+ private readonly onPause;
56
+ private clearPause;
57
+ private readonly onEnded;
58
+ private readonly onKeyDown;
59
+ }
60
+ export {};
61
+ //# sourceMappingURL=PluginAds.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PluginAds.d.ts","sourceRoot":"","sources":["../../src/plugin-api/PluginAds.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAErG,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,gBAAgB,CAAC;IACxB,SAAS,EAAE,WAAW,CAAC;IACvB,WAAW,IAAI,OAAO,CAAC;IACvB,oEAAoE;IACpE,QAAQ,IAAI,IAAI,CAAC;IACjB,UAAU,IAAI,IAAI,CAAC;IACnB,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC;CAC/F;AAQD,KAAK,KAAK,GAAG,CAAC,CAAC,SAAS,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;AAexG,qBAAa,SAAS;IAeN,OAAO,CAAC,QAAQ,CAAC,GAAG;IAdhC,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,QAAQ,CAAoD;IACpE,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,MAAM,CAAqE;IACnF,OAAO,CAAC,MAAM,CAAiD;IAC/D,OAAO,CAAC,UAAU,CAAsF;IACxG,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,UAAU,CAA8C;IAChE,OAAO,CAAC,aAAa,CAAyB;gBAEjB,GAAG,EAAE,gBAAgB;IAalD,OAAO,IAAI,IAAI;IAcf,0DAA0D;IAC1D,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAShC,sDAAsD;IACtD,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,GAAG,MAAM;IAa1D,2CAA2C;IAC3C,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK;4BASH,CAAC,EAAE,EAAE,aAAa,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,oBAAoB;6BAC1E,MAAM,OAAO,WATM,IAAI;0BAU1B,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,YAAY;YAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,WAVlE,IAAI;uBAe7B,MAAM,IAAI,GAAG,aAAa,YAAY;YAAE,OAAO,CAAC,EAAE,MAAM,CAAA;SAAE,WAfjC,IAAI;uBAiB7B,MAAM,OAAO,WAjBY,IAAI;2BAkBzB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,KAAK,MAAM,WAlB3B,IAAI;;IAwBpD,OAAO,CAAC,YAAY;IAoDpB,OAAO,CAAC,IAAI;IAMZ,OAAO,CAAC,QAAQ,CAAC,WAAW,CAM1B;IAEF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAYrB;YAEY,WAAW;IAgBzB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAExB;IAEF,OAAO,CAAC,QAAQ,CAAC,SAAS,CAExB;IAEF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAgB3B;IAEF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAiBtB;IAEF,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAGtB;IAEF,OAAO,CAAC,QAAQ,CAAC,SAAS,CAExB;CACL"}
@@ -11,6 +11,9 @@ export interface PluginHostContext {
11
11
  locale(): string;
12
12
  currentSrc(): string | null;
13
13
  isAdPlaying(): boolean;
14
+ /** Reklam kilidi (`blockChrome('ads')`). */
15
+ blockAds(): void;
16
+ unblockAds(): void;
14
17
  isFullscreen(): boolean;
15
18
  addControlButton(button: HTMLButtonElement, position: 'left' | 'right'): void;
16
19
  settings: {
@@ -39,7 +42,10 @@ export declare class PluginHost {
39
42
  private toastTimer;
40
43
  /** Ayar satırı anahtarları. */
41
44
  private keySeq;
45
+ private readonly ads;
42
46
  constructor(ctx: PluginHostContext);
47
+ /** IMA tag'i eklenti dönüşümlerinden geçirir. */
48
+ transformAdTag(url: string, type: 'preroll' | 'midroll' | 'postroll'): string;
43
49
  /** Listeye eşitler: kurar, kaldırır, günceller (aynı adlıda sonraki kazanır). */
44
50
  sync(builtin: PluginEntry[], user: PluginEntry[]): Promise<void>;
45
51
  /** Dil değişince. */
@@ -1 +1 @@
1
- {"version":3,"file":"PluginHost.d.ts","sourceRoot":"","sources":["../../src/plugin-api/PluginHost.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAuB,MAAM,0BAA0B,CAAC;AACxF,OAAO,EACH,kBAAkB,EAMlB,KAAK,WAAW,EAMnB,MAAM,SAAS,CAAC;AAEjB,uDAAuD;AACvD,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,gBAAgB,CAAC;IACxB,SAAS,EAAE,WAAW,CAAC;IACvB,yCAAyC;IACzC,QAAQ,EAAE,WAAW,CAAC;IACtB,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1C,MAAM,IAAI,MAAM,CAAC;IACjB,UAAU,IAAI,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,IAAI,OAAO,CAAC;IACvB,YAAY,IAAI,OAAO,CAAC;IACxB,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;IAC9E,QAAQ,EAAE;QACN,cAAc,CAAC,GAAG,EAAE;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,aAAa,IAAI,MAAM,CAAC;YAAC,QAAQ,IAAI,IAAI,CAAA;SAAE,GAAG,IAAI,CAAC;QACrG,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;QACpC,eAAe,CAAC,GAAG,EAAE,kBAAkB,GAAG,IAAI,CAAC;QAC/C,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;KACxC,CAAC;IACF,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC;CAC/F;AAuBD,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACvB;AAuBD,qBAAa,UAAU;IASP,OAAO,CAAC,QAAQ,CAAC,GAAG;IARhC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA+B;IACzD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAyI;IACtK,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,OAAO,CAA+B;IAC9C,OAAO,CAAC,UAAU,CAA8C;IAChE,+BAA+B;IAC/B,OAAO,CAAC,MAAM,CAAK;gBAEU,GAAG,EAAE,iBAAiB;IAInD,iFAAiF;IAC3E,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBtE,qBAAqB;IACrB,aAAa,IAAI,IAAI;IAOrB,wBAAwB;IACxB,SAAS,IAAI,cAAc,EAAE;IAI7B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B,OAAO,IAAI,IAAI;YAUD,YAAY;YAeZ,OAAO;IAqBrB,OAAO,CAAC,OAAO;IAiBf,OAAO,CAAC,MAAM;IAMd,8DAA8D;IAC9D,OAAO,CAAC,KAAK;IAWb,OAAO,CAAC,QAAQ,CAAC,SAAS,CAYxB;IAIF,OAAO,CAAC,SAAS;IA+LjB,OAAO,CAAC,SAAS;IA+DjB,OAAO,CAAC,QAAQ;IAwChB,OAAO,CAAC,KAAK;CAchB;AAwBD,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAC9B,YAAY,EAAE,cAAc,IAAI,QAAQ,EAAE,CAAC"}
1
+ {"version":3,"file":"PluginHost.d.ts","sourceRoot":"","sources":["../../src/plugin-api/PluginHost.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAuB,MAAM,0BAA0B,CAAC;AACxF,OAAO,EACH,kBAAkB,EAMlB,KAAK,WAAW,EAMnB,MAAM,SAAS,CAAC;AAEjB,uDAAuD;AACvD,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,gBAAgB,CAAC;IACxB,SAAS,EAAE,WAAW,CAAC;IACvB,yCAAyC;IACzC,QAAQ,EAAE,WAAW,CAAC;IACtB,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1C,MAAM,IAAI,MAAM,CAAC;IACjB,UAAU,IAAI,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,IAAI,OAAO,CAAC;IACvB,4CAA4C;IAC5C,QAAQ,IAAI,IAAI,CAAC;IACjB,UAAU,IAAI,IAAI,CAAC;IACnB,YAAY,IAAI,OAAO,CAAC;IACxB,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;IAC9E,QAAQ,EAAE;QACN,cAAc,CAAC,GAAG,EAAE;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,aAAa,IAAI,MAAM,CAAC;YAAC,QAAQ,IAAI,IAAI,CAAA;SAAE,GAAG,IAAI,CAAC;QACrG,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;QACpC,eAAe,CAAC,GAAG,EAAE,kBAAkB,GAAG,IAAI,CAAC;QAC/C,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;KACxC,CAAC;IACF,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC;CAC/F;AAuBD,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACvB;AAuBD,qBAAa,UAAU;IAUP,OAAO,CAAC,QAAQ,CAAC,GAAG;IAThC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA+B;IACzD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAyI;IACtK,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,OAAO,CAA+B;IAC9C,OAAO,CAAC,UAAU,CAA8C;IAChE,+BAA+B;IAC/B,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAY;gBAEH,GAAG,EAAE,iBAAiB;IAKnD,iDAAiD;IACjD,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,MAAM;IAI7E,iFAAiF;IAC3E,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBtE,qBAAqB;IACrB,aAAa,IAAI,IAAI;IAOrB,wBAAwB;IACxB,SAAS,IAAI,cAAc,EAAE;IAI7B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B,OAAO,IAAI,IAAI;YAWD,YAAY;YAeZ,OAAO;IAqBrB,OAAO,CAAC,OAAO;IAkBf,OAAO,CAAC,MAAM;IAMd,8DAA8D;IAC9D,OAAO,CAAC,KAAK;IAWb,OAAO,CAAC,QAAQ,CAAC,SAAS,CAYxB;IAIF,OAAO,CAAC,SAAS;IAiNjB,OAAO,CAAC,SAAS;IA+DjB,OAAO,CAAC,QAAQ;IA8ChB,OAAO,CAAC,KAAK;CAchB;AAwBD,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAC9B,YAAY,EAAE,cAAc,IAAI,QAAQ,EAAE,CAAC"}
@@ -123,6 +123,44 @@ export interface PluginStorageApi {
123
123
  set(key: string, value: unknown): void;
124
124
  remove(key: string): void;
125
125
  }
126
+ export type PluginAdBreakType = 'preroll' | 'midroll' | 'postroll';
127
+ /** `requestBreak` içinde reklamın çizildiği ve bittiğinin bildirildiği nesne. */
128
+ export interface PluginAdBreak {
129
+ readonly type: PluginAdBreakType;
130
+ /** Video alanını kaplayan, kontrollerin üstündeki tıklanabilir katman. */
131
+ readonly layer: HTMLDivElement;
132
+ /** Arayı player bitirince (zaman aşımı, eklenti kaldırıldı) iptal olur. */
133
+ readonly signal: AbortSignal;
134
+ /** Arayı hemen bitirir (ör. "Reklamı geç"). */
135
+ end(): void;
136
+ }
137
+ export interface PluginAdBreakOptions {
138
+ /** Verilmezse durumdan çıkarılır (başta preroll, bitişte postroll, arada midroll). */
139
+ type?: PluginAdBreakType;
140
+ /** Ara en fazla bu kadar sürer. Varsayılan 60000 ms. */
141
+ timeoutMs?: number;
142
+ }
143
+ export interface PluginAdsApi {
144
+ /**
145
+ * Reklam arası: içerik durur, kontroller ve sarma kilitlenir, `isAdPlaying` true, `hp:adstart` / `hp:adend`.
146
+ * `run` bitince içerik kaldığı yerden sürer. Başka bir reklam oynuyorsa başlamaz (`false`).
147
+ */
148
+ requestBreak(run: (ad: PluginAdBreak) => void | Promise<void>, options?: PluginAdBreakOptions): Promise<boolean>;
149
+ /** Preroll: içerik ilk oynatmada bu bitene kadar bekler (kaynak başına bir kez). */
150
+ beforeContent(handler: () => void | Promise<unknown>): () => void;
151
+ /** Midroll: oynatma bu saniyelere doğal yoldan gelince. İleri sarılırsa varsayılan: geçilen son nokta bir kez. */
152
+ atTime(seconds: number | number[], handler: (seconds: number) => void | Promise<unknown>, options?: {
153
+ seekPast?: 'last' | 'skip';
154
+ }): () => void;
155
+ /** İzleyici duraklatınca (`delayMs` sonra hâlâ duraklatılmışsa). Dönen fonksiyon oynatılınca çağrılır. */
156
+ onPause(handler: () => void | PluginCleanup, options?: {
157
+ delayMs?: number;
158
+ }): () => void;
159
+ /** Postroll: video bitince; playlist ve yönlendirme reklam arası bitene kadar bekler. */
160
+ onEnded(handler: () => void | Promise<unknown>): () => void;
161
+ /** IMA tag adresini istek öncesi değiştirir (ör. hedefleme parametresi eklemek). */
162
+ transformTag(transform: (url: string, type: PluginAdBreakType) => string): () => void;
163
+ }
126
164
  export interface PlayerApi {
127
165
  readonly plugin: string;
128
166
  readonly apiVersion: number;
@@ -159,6 +197,7 @@ export interface PlayerApi {
159
197
  readonly keys: PluginKeysApi;
160
198
  readonly i18n: PluginI18nApi;
161
199
  readonly storage: PluginStorageApi;
200
+ readonly ads: PluginAdsApi;
162
201
  /** Player'ın hata kaydına yazar. */
163
202
  log(message: string, details?: Record<string, string | number | boolean | undefined>): void;
164
203
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/plugin-api/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/plugin-api/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Accessibility.d.ts","sourceRoot":"","sources":["../../../src/plugins/accessibility/Accessibility.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAuB,oBAAoB,EAAsB,MAAM,aAAa,CAAC;AACjG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAuB,MAAM,6BAA6B,CAAC;AAG3F,MAAM,WAAW,0BAA0B;IACvC,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,WAAW,EAAE,WAAW,CAAC;IACzB,IAAI,EAAE,iBAAiB,CAAC;IACxB,eAAe,CAAC,GAAG,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC/C,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,kFAAkF;IAClF,cAAc,CAAC,GAAG,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,kBAAkB,EAAE,UAAU,EAAE,MAAM,kBAAkB,EAAE,GAAG,IAAI,CAAC;IACvH,kEAAkE;IAClE,QAAQ,IAAI,MAAM,CAAC;IACnB,kDAAkD;IAClD,cAAc,CAAC,IAAI,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACrE;AAqDD;;;GAGG;AACH,qBAAa,aAAa;IAgBlB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAhB5B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgG;IACtH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAW;IACtC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAW;IACvC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwB;IAChD,gFAAgF;IAChF,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,WAAW,CAA+B;IAClD,OAAO,CAAC,IAAI,CAAiF;IAC7F,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+C;IACvE,OAAO,CAAC,KAAK,CAA+C;IAC5D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAyC;gBAGjD,GAAG,EAAE,0BAA0B,EAC/B,OAAO,EAAE,oBAAoB;IAsBlD,OAAO,IAAI,IAAI;IAyBf,kEAAkE;IAClE,aAAa,IAAI,IAAI;IAWrB,OAAO,CAAC,IAAI;IAyCZ,OAAO,CAAC,OAAO;IASf,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,QAAQ;IAShB,kGAAkG;IAClG,OAAO,CAAC,SAAS;IAejB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAgCxB,OAAO,CAAC,WAAW;IAiBnB,OAAO,CAAC,GAAG;IAQX,OAAO,CAAC,OAAO;IAQf,OAAO,CAAC,QAAQ;IAQhB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAkBxB;IAEF,OAAO,CAAC,WAAW;IAOnB;;;OAGG;IACH,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,UAAU;IAwBlB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAE1B;IAIF,OAAO,CAAC,OAAO;IAef,OAAO,CAAC,IAAI;IAYZ,OAAO,CAAC,QAAQ,CAAC,aAAa,CAa5B;IAEF,OAAO,CAAC,QAAQ,CAAC,aAAa,CAmB5B;IAEF,OAAO,CAAC,QAAQ,CAAC,WAAW,CAa1B;IAEF,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAgCxB;IAIF,OAAO,CAAC,aAAa;IA4ErB,OAAO,CAAC,cAAc;CAOzB"}
1
+ {"version":3,"file":"Accessibility.d.ts","sourceRoot":"","sources":["../../../src/plugins/accessibility/Accessibility.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAuB,oBAAoB,EAAsB,MAAM,aAAa,CAAC;AACjG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAuB,MAAM,6BAA6B,CAAC;AAG3F,MAAM,WAAW,0BAA0B;IACvC,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,WAAW,EAAE,WAAW,CAAC;IACzB,IAAI,EAAE,iBAAiB,CAAC;IACxB,eAAe,CAAC,GAAG,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC/C,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,kFAAkF;IAClF,cAAc,CAAC,GAAG,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,kBAAkB,EAAE,UAAU,EAAE,MAAM,kBAAkB,EAAE,GAAG,IAAI,CAAC;IACvH,kEAAkE;IAClE,QAAQ,IAAI,MAAM,CAAC;IACnB,kDAAkD;IAClD,cAAc,CAAC,IAAI,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACrE;AAqDD;;;GAGG;AACH,qBAAa,aAAa;IAgBlB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAhB5B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgG;IACtH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAW;IACtC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAW;IACvC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwB;IAChD,gFAAgF;IAChF,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,WAAW,CAA+B;IAClD,OAAO,CAAC,IAAI,CAAiF;IAC7F,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+C;IACvE,OAAO,CAAC,KAAK,CAA+C;IAC5D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAyC;gBAGjD,GAAG,EAAE,0BAA0B,EAC/B,OAAO,EAAE,oBAAoB;IAsBlD,OAAO,IAAI,IAAI;IAyBf,kEAAkE;IAClE,aAAa,IAAI,IAAI;IAWrB,OAAO,CAAC,IAAI;IAyCZ,OAAO,CAAC,OAAO;IASf,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,QAAQ;IAShB,kGAAkG;IAClG,OAAO,CAAC,SAAS;IAejB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAgCxB,OAAO,CAAC,WAAW;IAiBnB,OAAO,CAAC,GAAG;IAQX,OAAO,CAAC,OAAO;IAQf,OAAO,CAAC,QAAQ;IAQhB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAkBxB;IAEF,OAAO,CAAC,WAAW;IAOnB;;;OAGG;IACH,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,UAAU;IAwBlB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAE1B;IAIF,OAAO,CAAC,OAAO;IAef,OAAO,CAAC,IAAI;IAYZ,OAAO,CAAC,QAAQ,CAAC,aAAa,CAa5B;IAEF,OAAO,CAAC,QAAQ,CAAC,aAAa,CAmB5B;IAEF,OAAO,CAAC,QAAQ,CAAC,WAAW,CAa1B;IAEF,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAgCxB;IAIF,OAAO,CAAC,aAAa;IA6ErB,OAAO,CAAC,cAAc;CAOzB"}
@@ -32,6 +32,8 @@ export interface AdsPlayerContext {
32
32
  surface?: AdSurfaceGuardContext;
33
33
  /** Ses reklamında IMA'nın göstereceği görsel (options.audio.adPoster) — mutlak URL. Yoksa player'ın kendi sahnesi görünür. */
34
34
  audioPoster?: string;
35
+ /** Eklentilerin `ads.transformTag` dönüşümleri. */
36
+ transformTag?(url: string, type: 'preroll' | 'midroll' | 'postroll'): Promise<string>;
35
37
  }
36
38
  /** Google IMA SDK ile doğrudan konuşan reklam çekirdeği (preroll/midroll/postroll, VMAP, retry, Prebid, SCTE-35). */
37
39
  export declare class AdsController {
@@ -1 +1 @@
1
- {"version":3,"file":"AdsController.d.ts","sourceRoot":"","sources":["../../../src/plugins/ads/AdsController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AdsController.d.ts","sourceRoot":"","sources":["../../../src/plugins/ads/AdsController.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,71 @@
1
+ import type { HopeAnalyticsOptions, HopeQoeMetrics } from '../../types';
2
+ export interface AnalyticsPlayerContext {
3
+ hostEl: HTMLElement;
4
+ videoEl: HTMLVideoElement;
5
+ currentSrc(): string | null;
6
+ isAdActive(): boolean;
7
+ currentLevel(): {
8
+ height: number;
9
+ bitrate: number | null;
10
+ } | null;
11
+ engine(): string;
12
+ isFullscreen(): boolean;
13
+ /** `options.id`. */
14
+ playerId(): string | undefined;
15
+ /** Kaynağın oturum kimliği (CMCD ile aynı). */
16
+ sessionId?(): string;
17
+ }
18
+ export declare class QoeTracker {
19
+ private readonly ctx;
20
+ private readonly options;
21
+ private sessionId;
22
+ private sessionStart;
23
+ private queue;
24
+ private m;
25
+ private playIntentAt;
26
+ private started;
27
+ private lastPos;
28
+ private seeking;
29
+ private stallAt;
30
+ private adStartAt;
31
+ private volumeTimer;
32
+ private lastVolumeKey;
33
+ private fullscreen;
34
+ private pip;
35
+ private bitrateTime;
36
+ private bitrateSum;
37
+ private lastLevelKey;
38
+ private milestones;
39
+ private timer;
40
+ private srcAtStart;
41
+ constructor(ctx: AnalyticsPlayerContext, options: HopeAnalyticsOptions);
42
+ get metrics(): HopeQoeMetrics;
43
+ destroy(): void;
44
+ private readonly onLoadStart;
45
+ private readonly onPlay;
46
+ private readonly onPlaying;
47
+ private readonly onPause;
48
+ private readonly onWaiting;
49
+ private endStall;
50
+ private readonly onSeeking;
51
+ private readonly onSeeked;
52
+ private readonly onTimeUpdate;
53
+ private checkLevel;
54
+ private readonly onEnded;
55
+ private readonly onError;
56
+ private readonly onPlayerError;
57
+ private readonly onAdStart;
58
+ private readonly onVolume;
59
+ private readonly onFullscreen;
60
+ private readonly onPip;
61
+ private readonly onAdEnd;
62
+ private readonly onInterval;
63
+ private readonly onPageHide;
64
+ private readonly onVisibility;
65
+ private track;
66
+ private endSession;
67
+ private flush;
68
+ private ga4;
69
+ private snapshot;
70
+ }
71
+ //# sourceMappingURL=QoeTracker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QoeTracker.d.ts","sourceRoot":"","sources":["../../../src/plugins/analytics/QoeTracker.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAA8C,oBAAoB,EAAwB,cAAc,EAAE,MAAM,aAAa,CAAC;AAE1I,MAAM,WAAW,sBAAsB;IACnC,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,UAAU,IAAI,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,IAAI,OAAO,CAAC;IACtB,YAAY,IAAI;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;IAClE,MAAM,IAAI,MAAM,CAAC;IACjB,YAAY,IAAI,OAAO,CAAC;IACxB,oBAAoB;IACpB,QAAQ,IAAI,MAAM,GAAG,SAAS,CAAC;IAC/B,+CAA+C;IAC/C,SAAS,CAAC,IAAI,MAAM,CAAC;CACxB;AAsBD,qBAAa,UAAU;IAuBf,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAvB5B,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,CAAC,CAAkC;IAC3C,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,WAAW,CAA8C;IACjE,OAAO,CAAC,aAAa,CAAM;IAC3B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,YAAY,CAAM;IAC1B,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,KAAK,CAA+C;IAC5D,OAAO,CAAC,UAAU,CAAuB;gBAGpB,GAAG,EAAE,sBAAsB,EAC3B,OAAO,EAAE,oBAAoB;IA6BlD,IAAI,OAAO,IAAI,cAAc,CAE5B;IAED,OAAO,IAAI,IAAI;IA6Bf,OAAO,CAAC,QAAQ,CAAC,WAAW,CAwB1B;IAEF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAOrB;IAEF,OAAO,CAAC,QAAQ,CAAC,SAAS,CAQxB;IAEF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAKtB;IAEF,OAAO,CAAC,QAAQ,CAAC,SAAS,CAIxB;IAEF,OAAO,CAAC,QAAQ;IAUhB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAOxB;IAEF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAGvB;IAEF,OAAO,CAAC,QAAQ,CAAC,YAAY,CA6B3B;IAEF,OAAO,CAAC,UAAU;IAclB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAOtB;IAEF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAKtB;IAEF,OAAO,CAAC,QAAQ,CAAC,aAAa,CAM5B;IAEF,OAAO,CAAC,QAAQ,CAAC,SAAS,CAKxB;IAEF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAiBvB;IAEF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAM3B;IAEF,OAAO,CAAC,QAAQ,CAAC,KAAK,CAOpB;IAEF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAOtB;IAEF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAIzB;IAEF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2C;IAEtE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAE3B;IAIF,OAAO,CAAC,KAAK;IAYb,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,KAAK;IAgCb,OAAO,CAAC,GAAG;IAyBX,OAAO,CAAC,QAAQ;CAenB"}
@@ -0,0 +1,6 @@
1
+ import { QoeTracker, type AnalyticsPlayerContext } from './QoeTracker';
2
+ import type { HopeAnalyticsOptions } from '../../types';
3
+ export declare function installAnalytics(ctx: AnalyticsPlayerContext, options: HopeAnalyticsOptions): QoeTracker;
4
+ export { QoeTracker };
5
+ export type { AnalyticsPlayerContext };
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/analytics/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,KAAK,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACvE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAExD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,sBAAsB,EAAE,OAAO,EAAE,oBAAoB,GAAG,UAAU,CAEvG;AAED,OAAO,EAAE,UAAU,EAAE,CAAC;AACtB,YAAY,EAAE,sBAAsB,EAAE,CAAC"}
@@ -9,6 +9,8 @@ export interface PlaylistPlayerContext {
9
9
  setPoster(url: string): void;
10
10
  /** AdsController varsa retry/VMAP durumunu sıfırlayıp item'ın (varsa) kendi adTagPreroll'üyle yeniden reklam ister — yoksa no-op. */
11
11
  requestFreshAd(prerollTag?: string): void;
12
+ /** Postroll sürüyorsa sonraki öğe `hp:adend`'i bekler. */
13
+ isAdActive?(): boolean;
12
14
  i18n: HopeLocaleStrings;
13
15
  }
14
16
  /** Tek player üzerinde sıralı oynatma listesi (startMode, loop, hata fallback zinciri). */
@@ -1 +1 @@
1
- {"version":3,"file":"PlaylistRunner.d.ts","sourceRoot":"","sources":["../../../src/plugins/playlist/PlaylistRunner.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAgB,eAAe,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAG1D,MAAM,WAAW,qBAAqB;IAClC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,MAAM,EAAE,WAAW,CAAC;IACpB,iEAAiE;IACjE,OAAO,EAAE,WAAW,CAAC;IACrB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,qIAAqI;IACrI,cAAc,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,IAAI,EAAE,iBAAiB,CAAC;CAC3B;AAqBD,2FAA2F;AAC3F,qBAAa,cAAc;IA0BnB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,UAAU;IA1B/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmE;IAC3F,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiB;IAEvC,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,wBAAwB,CAAS;IACzC,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,mBAAmB,CAAuB;IAClD,OAAO,CAAC,sBAAsB,CAAS;IAEvC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAOjB;gBAGmB,GAAG,EAAE,qBAAqB,EAC1B,UAAU,EAAE,eAAe;IAahD,OAAO,CAAC,IAAI;IAcZ,aAAa,IAAI,IAAI;IAUrB,OAAO,IAAI,IAAI;IAWf,KAAK,CAAC,IAAI,GAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,IAAI;IAS1C,IAAI,IAAI,IAAI;IAYZ,IAAI,IAAI,IAAI;IASZ,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAQzB,QAAQ,IAAI,MAAM;IAIlB,QAAQ,IAAI,OAAO;IAMnB,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAEzB;IAEF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAStB;IAEF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAQtB;IAEF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAE3B;YAIY,WAAW;YAgDX,cAAc;IAyB5B,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,YAAY;IAapB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,OAAO;IA+Ef,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,SAAS;IAUjB,OAAO,CAAC,SAAS;IAcjB,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,UAAU;CAMrB"}
1
+ {"version":3,"file":"PlaylistRunner.d.ts","sourceRoot":"","sources":["../../../src/plugins/playlist/PlaylistRunner.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAgB,eAAe,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAG1D,MAAM,WAAW,qBAAqB;IAClC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,MAAM,EAAE,WAAW,CAAC;IACpB,iEAAiE;IACjE,OAAO,EAAE,WAAW,CAAC;IACrB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,qIAAqI;IACrI,cAAc,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,0DAA0D;IAC1D,UAAU,CAAC,IAAI,OAAO,CAAC;IACvB,IAAI,EAAE,iBAAiB,CAAC;CAC3B;AAqBD,2FAA2F;AAC3F,qBAAa,cAAc;IA0BnB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,UAAU;IA1B/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmE;IAC3F,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiB;IAEvC,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,wBAAwB,CAAS;IACzC,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,mBAAmB,CAAuB;IAClD,OAAO,CAAC,sBAAsB,CAAS;IAEvC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAOjB;gBAGmB,GAAG,EAAE,qBAAqB,EAC1B,UAAU,EAAE,eAAe;IAahD,OAAO,CAAC,IAAI;IAcZ,aAAa,IAAI,IAAI;IAUrB,OAAO,IAAI,IAAI;IAWf,KAAK,CAAC,IAAI,GAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,IAAI;IAS1C,IAAI,IAAI,IAAI;IAYZ,IAAI,IAAI,IAAI;IASZ,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAQzB,QAAQ,IAAI,MAAM;IAIlB,QAAQ,IAAI,OAAO;IAMnB,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAEzB;IAEF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAkBtB;IAEF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAQtB;IAEF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAE3B;YAIY,WAAW;YAgDX,cAAc;IAyB5B,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,YAAY;IAapB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,OAAO;IA+Ef,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,SAAS;IAUjB,OAAO,CAAC,SAAS;IAcjB,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,UAAU;CAMrB"}
@@ -38,6 +38,10 @@ export declare class SpriteThumbnails {
38
38
  private vttLoading;
39
39
  /** Çok parçalı modda otomatik hesaplanan sheet süresi (ilk sheet yüklenince). */
40
40
  private derivedSheetDuration;
41
+ /** `lowRes` sheet'i — LRU dışında, hep bellekte. */
42
+ private lowSheet;
43
+ /** Son çizilen asıl karenin genişliği (VTT'de `width` yok). */
44
+ private lastFrameWidth;
41
45
  private warmed;
42
46
  private hovering;
43
47
  private lastClientX;
@@ -54,6 +58,8 @@ export declare class SpriteThumbnails {
54
58
  private render;
55
59
  private scale;
56
60
  private isNetworkEligible;
61
+ /** `lowRes` sheet'inden saniyedeki kare (hazır değilse null). */
62
+ private lowResFrameAt;
57
63
  /** Saniyedeki kareyi döner; gereken sheet hazır değilse yüklemeyi başlatıp null döner (yüklenince render tekrar çağrılır). */
58
64
  private frameAt;
59
65
  private isMultiSheet;
@@ -66,6 +72,8 @@ export declare class SpriteThumbnails {
66
72
  private preloadAround;
67
73
  private vttFrameAt;
68
74
  private ensureSheet;
75
+ /** Görseli yükler; decode bitmeden hazır sayılmaz (sheet geçişinde titreme olmasın). */
76
+ private createSheet;
69
77
  /** Çok parçalı modda `sheetDuration` verilmediyse ilk yüklenen sheet'in ızgara kapasitesinden hesapla. */
70
78
  private learnSheetDuration;
71
79
  /** LRU: kullanılan sheet'i sona taşı. */
@@ -1 +1 @@
1
- {"version":3,"file":"SpriteThumbnails.d.ts","sourceRoot":"","sources":["../../../src/plugins/sprite-thumbnails/SpriteThumbnails.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAG3D,MAAM,WAAW,6BAA6B;IAC1C,OAAO,EAAE,gBAAgB,CAAC;IAC1B,+GAA+G;IAC/G,OAAO,EAAE;QACL,QAAQ,CAAC,EAAE,EAAE,WAAW,CAAC;QACzB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;QACxC,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI,CAAC;KAC7D,CAAC;IACF,6FAA6F;IAC7F,WAAW,IAAI,MAAM,CAAC;CACzB;AAkBD,MAAM,WAAW,MAAM;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,4CAA4C;IAC5C,IAAI,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CAC/D;AAOD;;;;GAIG;AACH,qBAAa,gBAAgB;IAgBrB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAhB5B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IACtC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4B;IACnD,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,UAAU,CAA8B;IAChD,iFAAiF;IACjF,OAAO,CAAC,oBAAoB,CAAuB;IACnD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,SAAS,CAAS;gBAGL,GAAG,EAAE,6BAA6B,EAClC,OAAO,EAAE,uBAAuB;IAoBrD,OAAO,IAAI,IAAI;IAef,OAAO,CAAC,QAAQ,CAAC,cAAc,CAK7B;IAEF,OAAO,CAAC,QAAQ,CAAC,aAAa,CAI5B;IAEF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAG7B;IAEF,gGAAgG;IAChG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAWnB;IAEF,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,MAAM;IAgCd,OAAO,CAAC,KAAK;IAMb,OAAO,CAAC,iBAAiB;IASzB,8HAA8H;IAC9H,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,YAAY;IAIpB,4HAA4H;IAC5H,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,YAAY;IASpB,uCAAuC;IACvC,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,WAAW;IAgCnB,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,UAAU;IA+BlB,OAAO,CAAC,WAAW;IA+BnB,0GAA0G;IAC1G,OAAO,CAAC,kBAAkB;IAQ1B,yCAAyC;IACzC,OAAO,CAAC,KAAK;IAOb,OAAO,CAAC,KAAK;IAUb,OAAO,CAAC,OAAO;CAoBlB;AAQD,mGAAmG;AACnG,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAqBzE"}
1
+ {"version":3,"file":"SpriteThumbnails.d.ts","sourceRoot":"","sources":["../../../src/plugins/sprite-thumbnails/SpriteThumbnails.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAG3D,MAAM,WAAW,6BAA6B;IAC1C,OAAO,EAAE,gBAAgB,CAAC;IAC1B,+GAA+G;IAC/G,OAAO,EAAE;QACL,QAAQ,CAAC,EAAE,EAAE,WAAW,CAAC;QACzB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;QACxC,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI,CAAC;KAC7D,CAAC;IACF,6FAA6F;IAC7F,WAAW,IAAI,MAAM,CAAC;CACzB;AAkBD,MAAM,WAAW,MAAM;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,4CAA4C;IAC5C,IAAI,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CAC/D;AAOD;;;;GAIG;AACH,qBAAa,gBAAgB;IAoBrB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IApB5B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IACtC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4B;IACnD,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,UAAU,CAA8B;IAChD,iFAAiF;IACjF,OAAO,CAAC,oBAAoB,CAAuB;IACnD,oDAAoD;IACpD,OAAO,CAAC,QAAQ,CAAsB;IACtC,+DAA+D;IAC/D,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,SAAS,CAAS;gBAGL,GAAG,EAAE,6BAA6B,EAClC,OAAO,EAAE,uBAAuB;IAoBrD,OAAO,IAAI,IAAI;IAgBf,OAAO,CAAC,QAAQ,CAAC,cAAc,CAK7B;IAEF,OAAO,CAAC,QAAQ,CAAC,aAAa,CAI5B;IAEF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAG7B;IAEF,gGAAgG;IAChG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAanB;IAEF,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,MAAM;IAqCd,OAAO,CAAC,KAAK;IAMb,OAAO,CAAC,iBAAiB;IASzB,iEAAiE;IACjE,OAAO,CAAC,aAAa;IAWrB,8HAA8H;IAC9H,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,YAAY;IAIpB,4HAA4H;IAC5H,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,YAAY;IASpB,uCAAuC;IACvC,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,WAAW;IAgCnB,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,UAAU;IA+BlB,OAAO,CAAC,WAAW;IAcnB,wFAAwF;IACxF,OAAO,CAAC,WAAW;IAuBnB,0GAA0G;IAC1G,OAAO,CAAC,kBAAkB;IAQ1B,yCAAyC;IACzC,OAAO,CAAC,KAAK;IAOb,OAAO,CAAC,KAAK;IAUb,OAAO,CAAC,OAAO;CAoBlB;AAQD,mGAAmG;AACnG,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAqBzE"}
@@ -28,7 +28,7 @@ export declare class ErrorScreen {
28
28
  * hls.js'in ölümcül hataları `video.error` üretmez — player donmuş görünmesin diye ekran elle açılır.
29
29
  * `code`: MediaError kodu (2 = ağ, 3 = çözümleme).
30
30
  */
31
- showStreamError(code: 2 | 3): void;
31
+ showStreamError(code: 2 | 3 | 4 | 5): void;
32
32
  /** Yeni kaynak yüklenirken önceki hatayı kapat. */
33
33
  dismiss(): void;
34
34
  get visible(): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"ErrorScreen.d.ts","sourceRoot":"","sources":["../../src/screens/ErrorScreen.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAOvD;;;GAGG;AACH,qBAAa,WAAW;IACpB,QAAQ,CAAC,EAAE,EAAE,cAAc,CAAC;IAC5B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAmB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAuB;IACjD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuB;IAC9C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoB;IAC7C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;IAC5C,OAAO,CAAC,OAAO,CAA6B;IAC5C,+GAA+G;IAC/G,OAAO,CAAC,OAAO,CAAoE;IACnF,OAAO,CAAC,UAAU,CAA6B;gBAEnC,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,iBAAiB;IA0C9D,UAAU,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI;IAIhC,UAAU,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAAG,IAAI;IAIvE,OAAO,CAAC,IAAI;IAOZ,2FAA2F;IAC3F,aAAa,CAAC,EAAE,EAAE,MAAM,OAAO,GAAG,IAAI;IAItC;;;OAGG;IACH,eAAe,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI;IAMlC,mDAAmD;IACnD,OAAO,IAAI,IAAI;IAKf,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,aAAa,IAAI,IAAI;IAKrB,oEAAoE;IACpE,OAAO,CAAC,eAAe,CAAK;IAE5B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAQnB;IAEF,OAAO,CAAC,MAAM;IAad,OAAO,CAAC,IAAI;IAIZ,OAAO,IAAI,IAAI;CAGlB"}
1
+ {"version":3,"file":"ErrorScreen.d.ts","sourceRoot":"","sources":["../../src/screens/ErrorScreen.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAOvD;;;GAGG;AACH,qBAAa,WAAW;IACpB,QAAQ,CAAC,EAAE,EAAE,cAAc,CAAC;IAC5B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAmB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAuB;IACjD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuB;IAC9C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoB;IAC7C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;IAC5C,OAAO,CAAC,OAAO,CAA6B;IAC5C,+GAA+G;IAC/G,OAAO,CAAC,OAAO,CAAoE;IACnF,OAAO,CAAC,UAAU,CAA6B;gBAEnC,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,iBAAiB;IA0C9D,UAAU,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI;IAIhC,UAAU,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAAG,IAAI;IAIvE,OAAO,CAAC,IAAI;IAOZ,2FAA2F;IAC3F,aAAa,CAAC,EAAE,EAAE,MAAM,OAAO,GAAG,IAAI;IAItC;;;OAGG;IACH,eAAe,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI;IAM1C,mDAAmD;IACnD,OAAO,IAAI,IAAI;IAKf,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,aAAa,IAAI,IAAI;IAKrB,oEAAoE;IACpE,OAAO,CAAC,eAAe,CAAK;IAE5B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAQnB;IAEF,OAAO,CAAC,MAAM;IAed,OAAO,CAAC,IAAI;IAIZ,OAAO,IAAI,IAAI;CAGlB"}
@@ -1,11 +1,12 @@
1
1
  import type { PluginEntry } from '../plugin-api/types';
2
2
  import type { HlsConfig } from 'hls.js';
3
+ import type { MediaPlayerSettingClass } from 'dashjs';
3
4
  import type { HopeLocale, HopeLocaleStrings } from '../i18n/types';
4
5
  export type { HopeLocale, HopeLocaleStrings };
5
6
  /** Hazır tema preset'leri — bkz. theme/tailwind.css ve docs/THEMING.md. */
6
7
  export type HopeThemePreset = 'glass-light' | 'glass-dark' | 'neo-dark' | 'mono';
7
- /** Kaynak biçimi: `hls` (.m3u8), `mp4` ya da dosya uzantısı (`webm`, `mov`, `mp3`…) — bkz. `sourcePriority`. */
8
- export type HopeSourceFormat = 'hls' | 'mp4' | 'webm' | (string & {});
8
+ /** Kaynak biçimi: `hls` (.m3u8), `dash` (.mpd), `mp4` ya da dosya uzantısı (`webm`, `mov`, `mp3`…) — bkz. `sourcePriority`. */
9
+ export type HopeSourceFormat = 'hls' | 'dash' | 'mp4' | 'webm' | (string & {});
9
10
  export interface HopeSourceOption {
10
11
  src: string;
11
12
  type?: string;
@@ -791,6 +792,18 @@ export interface SpriteThumbnailsOptions {
791
792
  responsive?: number;
792
793
  /** navigator.connection.downlink bu değerin altındaysa (ve sheet daha önce cache'lenmediyse) sprite atlanır. */
793
794
  downlink?: number;
795
+ /** Önizlemenin ekrandaki genişliği (CSS px). Kare daha büyükse (ör. 320×180 → 160) retina'da keskin görünür. */
796
+ displayWidth?: number;
797
+ /** Tüm videoyu kapsayan küçük sheet: asıl sheet inene kadar anında (bulanık) önizleme. */
798
+ lowRes?: SpriteLowResOptions;
799
+ }
800
+ /** `spriteThumbnails.lowRes` — ör. 48×27 karelerden tek görsel. */
801
+ export interface SpriteLowResOptions {
802
+ url: string;
803
+ width: number;
804
+ height: number;
805
+ /** Kareler arası saniye; verilmezse `süre / kare sayısı`. */
806
+ interval?: number;
794
807
  }
795
808
  export interface CountdownScreenOptions {
796
809
  /** Hedef tarih/saat — Date() ile parse edilebilir herhangi bir string. */
@@ -870,6 +883,127 @@ export interface HopeHlsOptions {
870
883
  /** Manifest/segment isteklerinde cookie ve kimlik bilgisi gönder (CORS `credentials: include`). */
871
884
  withCredentials?: boolean;
872
885
  }
886
+ /** DASH (.mpd) oynatma ayarları — dash.js yalnızca DASH kaynağı gelince indirilir. */
887
+ export interface HopeDashOptions {
888
+ /** dash.js ayarları — olduğu gibi `player.updateSettings()`'e geçer (buffer, ABR, düşük gecikme...). */
889
+ settings?: MediaPlayerSettingClass;
890
+ /** Manifest / segment isteklerinde cookie ve kimlik bilgisi gönder. */
891
+ withCredentials?: boolean;
892
+ }
893
+ /** Bir DRM sisteminin lisans sunucusu. */
894
+ export interface HopeDrmLicense {
895
+ licenseUrl: string;
896
+ /** Lisans isteğine eklenecek başlıklar (ör. yetki token'ı). */
897
+ headers?: Record<string, string>;
898
+ /** Lisans isteğinde cookie gönder. */
899
+ withCredentials?: boolean;
900
+ }
901
+ export interface HopeFairPlayOptions extends HopeDrmLicense {
902
+ /** FairPlay sertifikası (ikili `.cer`) adresi. */
903
+ certificateUrl: string;
904
+ /** SPC'den istek gövdesi üretir (sunucu base64 / JSON istiyorsa). Varsayılan: ham ikili SPC. */
905
+ prepareLicenseRequest?(spc: Uint8Array, initData: Uint8Array): BodyInit | Promise<BodyInit>;
906
+ /** Sunucu yanıtından CKC'yi çıkarır. Varsayılan: yanıtın kendisi. */
907
+ parseLicenseResponse?(response: ArrayBuffer): BufferSource | Promise<BufferSource>;
908
+ }
909
+ /**
910
+ * Şifreli içerik (EME). Yalnızca verilen sistemler denenir; tarayıcı desteklediği ilkini kullanır:
911
+ * Chrome / Firefox / Android → Widevine, Edge → Widevine / PlayReady, Safari → FairPlay. ClearKey test içindir.
912
+ */
913
+ export interface HopeDrmOptions {
914
+ widevine?: HopeDrmLicense & {
915
+ robustness?: string;
916
+ };
917
+ playready?: HopeDrmLicense;
918
+ fairplay?: HopeFairPlayOptions;
919
+ clearkey?: HopeDrmLicense;
920
+ }
921
+ export type HopeAnalyticsEventType = 'session_start' | 'start' | 'pause' | 'resume' | 'seek' | 'rebuffer' | 'quality' | 'progress' | 'ended' | 'error' | 'ad_start' | 'ad_end' | 'volume' | 'fullscreen' | 'pip' | 'heartbeat' | 'session_end';
922
+ /** Oturumun deneyim (QoE) ölçümleri — `player.qoe` ve her gönderimde. */
923
+ export interface HopeQoeMetrics {
924
+ /** Oynatma isteğinden ilk kareye (ms, reklam hariç); başlamadıysa null. */
925
+ startupMs: number | null;
926
+ /** İzlenen içerik süresi (sn) — sarılan kısımlar sayılmaz. */
927
+ watchedSeconds: number;
928
+ rebufferCount: number;
929
+ rebufferMs: number;
930
+ /** Takılma süresi / (izleme + takılma). */
931
+ rebufferRatio: number;
932
+ seekCount: number;
933
+ qualitySwitches: number;
934
+ /** İzleme süresine göre ağırlıklı ortalama video bit hızı (bps); bilinmiyorsa null. */
935
+ avgBitrate: number | null;
936
+ /** O anki video yüksekliği ve bit hızı. */
937
+ height: number | null;
938
+ bitrate: number | null;
939
+ /** Ulaşılan en ileri konum (%, canlıda 0). */
940
+ maxProgress: number;
941
+ errors: number;
942
+ adCount: number;
943
+ adMs: number;
944
+ droppedFrames: number;
945
+ }
946
+ export interface HopeAnalyticsEvent {
947
+ type: HopeAnalyticsEventType;
948
+ /** Oturum başından beri (ms). */
949
+ at: number;
950
+ /** Video konumu (sn). */
951
+ position: number;
952
+ data?: Record<string, string | number | boolean | null>;
953
+ }
954
+ /** Uç noktaya gönderilen paket. */
955
+ export interface HopeAnalyticsPayload {
956
+ v: 1;
957
+ sessionId: string;
958
+ videoId: string;
959
+ src: string | null;
960
+ /** `interval` | `end` | `pagehide` | `source` | `destroy`. */
961
+ reason: string;
962
+ sentAt: number;
963
+ events: HopeAnalyticsEvent[];
964
+ metrics: HopeQoeMetrics;
965
+ custom?: Record<string, string | number | boolean>;
966
+ engine: string;
967
+ live: boolean;
968
+ duration: number | null;
969
+ }
970
+ export interface HopeAnalyticsOptions {
971
+ /** Paketlerin POST edileceği adres (JSON). Verilmezse yalnızca olaylar / `onEvent` / GA4. */
972
+ endpoint?: string;
973
+ /** Toplu gönderim aralığı (ms). Varsayılan 15000. */
974
+ intervalMs?: number;
975
+ /** Video kimliği. Varsayılan `options.id`, yoksa kaynak adresi. */
976
+ videoId?: string;
977
+ /** Her pakete eklenen alanlar (ör. kullanıcı segmenti, sayfa türü). */
978
+ custom?: Record<string, string | number | boolean>;
979
+ /** Verilirse `sendBeacon` yerine `fetch` (keepalive) kullanılır. */
980
+ headers?: Record<string, string>;
981
+ /**
982
+ * GA4 video olayları (`video_start`, `video_progress`, `video_complete`). `true`: `gtag` varsa onunla, yoksa
983
+ * `dataLayer.push({ event, … })` (Google Tag Manager). `'gtag'` / `'dataLayer'` yolu zorlar.
984
+ */
985
+ ga4?: boolean | 'gtag' | 'dataLayer';
986
+ /** Her olayda. */
987
+ onEvent?(event: HopeAnalyticsEvent, metrics: HopeQoeMetrics): void;
988
+ /** Gönderim öncesi paketi değiştirir; `false` dönerse gönderilmez. */
989
+ beforeSend?(payload: HopeAnalyticsPayload): HopeAnalyticsPayload | false;
990
+ }
991
+ /** CMCD (CTA-5004): segment isteklerine oturum / buffer / bit hızı bilgisi — CDN loglarında QoE. */
992
+ export interface HopeCmcdOptions {
993
+ /** İçerik kimliği (`cid`). Varsayılan `options.id`. */
994
+ contentId?: string;
995
+ /** `'query'` (varsayılan, `?CMCD=…`) ya da `'header'` (CMCD-* başlıkları; CDN'de CORS izni gerekir). */
996
+ mode?: 'query' | 'header';
997
+ }
998
+ /** Kalite sınırları — veri tasarrufu ve gereksiz yüksek çözünürlüğü önlemek için. */
999
+ export interface QualityLimitOptions {
1000
+ /** Bu yükseklikten büyük kaliteler kullanılmaz ve menüde görünmez (ör. `1080`). HLS, DASH ve MP4 kaliteleri. */
1001
+ max?: number;
1002
+ /** Tarayıcıda "Veri tasarrufu" açıksa ya da bağlantı yavaşsa (2G / 3G) otomatik kalite bu yükseklikte durur; menüden yine yükseği seçilebilir. `true` = 480. */
1003
+ dataSaver?: boolean | number;
1004
+ /** Player'ın ekrandaki boyutundan (× piksel yoğunluğu) büyük kalite indirilmez. HLS ve DASH (ABR). */
1005
+ fitPlayer?: boolean;
1006
+ }
873
1007
  /** Çoklu dokunuş hareketi türü — ileride `'tripletap'` eklenebilir. */
874
1008
  export type TapGestureType = 'doubletap';
875
1009
  /** Ekranın bölgesi: sol/sağ üçte bir, orta, ya da tamamı. */
@@ -982,6 +1116,10 @@ export interface HopePlayerOptions {
982
1116
  * Varsayılan true; `false` gizler.
983
1117
  */
984
1118
  qualityBadge?: boolean;
1119
+ /** CMCD: HLS / DASH segment isteklerine CDN için oturum ve oynatma bilgisi. `analytics` açıksa aynı oturum kimliği. */
1120
+ cmcd?: boolean | HopeCmcdOptions;
1121
+ /** Kalite sınırları: en yüksek kalite, veri tasarrufu, player boyutuna sığdırma. Varsayılan kapalı. */
1122
+ qualityLimit?: QualityLimitOptions;
985
1123
  /**
986
1124
  * Canlı yayında ilerleme çubuğu (geri sarılabilir canlıda DVR çubuğu). Varsayılan true; `false` canlıda gizler —
987
1125
  * "● CANLI" rozeti ve klavyeyle sarma kalır. VOD'u etkilemez.
@@ -1031,8 +1169,16 @@ export interface HopePlayerOptions {
1031
1169
  skipButtons?: boolean | SkipButtonsOptions;
1032
1170
  /** ←/→ ve J/L klavye kısayollarıyla kaç saniye sarılır. Varsayılan 5. */
1033
1171
  keyboardSeekStep?: number;
1172
+ /** `,` / `.` ile kare kare ilerlemede kare hızı (fps). Verilmezse oynarken ölçülür, ölçülemezse 30. */
1173
+ frameRate?: number;
1034
1174
  /** HLS oynatma ayarları — motor seçimi, hls.js config'i (buffer/ABR/düşük gecikme), kimlik bilgisi. */
1035
1175
  hls?: HopeHlsOptions;
1176
+ /** DASH (.mpd) oynatma ayarları. */
1177
+ dash?: HopeDashOptions;
1178
+ /** Şifreli içerik (Widevine / PlayReady / FairPlay / ClearKey). HLS, DASH ve MP4'te çalışır. */
1179
+ drm?: HopeDrmOptions;
1180
+ /** Deneyim (QoE) ölçümleri ve izlenme olayları; `true` = yalnızca `hp:analytics` olayı. */
1181
+ analytics?: boolean | HopeAnalyticsOptions;
1036
1182
  /** Sağ tık menüsü (player adı + sürüm). Varsayılan açık; `false` tarayıcının kendi menüsünü geri getirir. */
1037
1183
  contextMenu?: boolean | ContextMenuOptions;
1038
1184
  /** Ekranın sol/sağına çift dokunma hareketleri. `true` = solda 10 sn geri, sağda 10 sn ileri (dokunmatik). Varsayılan kapalı. */
@@ -1131,6 +1277,10 @@ export type HopePlayerEventMap = {
1131
1277
  message: string;
1132
1278
  code?: number;
1133
1279
  }>;
1280
+ 'hp:analytics': CustomEvent<{
1281
+ event: HopeAnalyticsEvent;
1282
+ metrics: HopeQoeMetrics;
1283
+ }>;
1134
1284
  'hp:qualitychange': CustomEvent<{
1135
1285
  label: string;
1136
1286
  }>;
@@ -1150,11 +1300,13 @@ export type HopePlayerEventMap = {
1150
1300
  /** `linear: false` → overlay (non-linear) reklam: içerik durmaz, reklam içeriğin üstünde gösterilir. */
1151
1301
  'hp:adstart': CustomEvent<{
1152
1302
  type: 'preroll' | 'midroll' | 'postroll';
1153
- linear?: boolean;
1303
+ linear?: boolean; /** Eklenti reklamıysa eklenti adı. */
1304
+ plugin?: string;
1154
1305
  }>;
1155
1306
  'hp:adend': CustomEvent<{
1156
1307
  type: 'preroll' | 'midroll' | 'postroll';
1157
- linear?: boolean;
1308
+ linear?: boolean; /** Eklenti reklamıysa eklenti adı. */
1309
+ plugin?: string;
1158
1310
  }>;
1159
1311
  /**
1160
1312
  * Reklam gösterilemedi. `code`: IMA hata kodu (ör. 1009 boş VAST, 301 zaman aşımı), `vastCode`: VAST hata numarası,