@hopeplayer/core 1.3.0 → 1.4.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 (53) hide show
  1. package/README.md +4 -0
  2. package/dist/HopePlayerElement.d.ts +11 -2
  3. package/dist/HopePlayerElement.d.ts.map +1 -1
  4. package/dist/chunks/{accessibility-CehDBG3h.js → accessibility-DeUIoAda.js} +43 -40
  5. package/dist/chunks/accessibility-DeUIoAda.js.map +1 -0
  6. package/dist/chunks/{ads-Cd6ON12M.js → ads-CdWbE9aD.js} +2 -2
  7. package/dist/chunks/{ads-Cd6ON12M.js.map → ads-CdWbE9aD.js.map} +1 -1
  8. package/dist/chunks/{cast-Do1ierzb.js → cast-BQ-suTcF.js} +2 -2
  9. package/dist/chunks/{cast-Do1ierzb.js.map → cast-BQ-suTcF.js.map} +1 -1
  10. package/dist/chunks/{history-D1nwP4qx.js → history-DAbqEhNB.js} +2 -2
  11. package/dist/chunks/{history-D1nwP4qx.js.map → history-DAbqEhNB.js.map} +1 -1
  12. package/dist/chunks/{markers-CUe9BuTY.js → markers-B04NMI79.js} +2 -2
  13. package/dist/chunks/{markers-CUe9BuTY.js.map → markers-B04NMI79.js.map} +1 -1
  14. package/dist/chunks/{player-B0p2gi63.js → player-D7WQxMzr.js} +572 -456
  15. package/dist/chunks/player-D7WQxMzr.js.map +1 -0
  16. package/dist/chunks/{playlist-jZ5Ek0N9.js → playlist-C6Mh9BE8.js} +2 -2
  17. package/dist/chunks/{playlist-jZ5Ek0N9.js.map → playlist-C6Mh9BE8.js.map} +1 -1
  18. package/dist/chunks/pluginHost-DjvLmMYZ.js +376 -0
  19. package/dist/chunks/pluginHost-DjvLmMYZ.js.map +1 -0
  20. package/dist/chunks/{redirectScreen-CwQF3ZRc.js → redirectScreen-5HAVRtxe.js} +2 -2
  21. package/dist/chunks/{redirectScreen-CwQF3ZRc.js.map → redirectScreen-5HAVRtxe.js.map} +1 -1
  22. package/dist/chunks/{rewardedUnlock-B2CB2JZy.js → rewardedUnlock-CGhQyWOk.js} +2 -2
  23. package/dist/chunks/{rewardedUnlock-B2CB2JZy.js.map → rewardedUnlock-CGhQyWOk.js.map} +1 -1
  24. package/dist/chunks/{segments-RC0zYT2a.js → segments-gCPrWRig.js} +2 -2
  25. package/dist/chunks/{segments-RC0zYT2a.js.map → segments-gCPrWRig.js.map} +1 -1
  26. package/dist/chunks/{skipSegments-BwMHrQxt.js → skipSegments-BbWzPpXz.js} +55 -42
  27. package/dist/chunks/{skipSegments-BwMHrQxt.js.map → skipSegments-BbWzPpXz.js.map} +1 -1
  28. package/dist/chunks/{spriteThumbnails-BaSn9kUY.js → spriteThumbnails-B7oDZFTo.js} +2 -2
  29. package/dist/chunks/{spriteThumbnails-BaSn9kUY.js.map → spriteThumbnails-B7oDZFTo.js.map} +1 -1
  30. package/dist/chunks/{story-BVhbvY-4.js → story-BLBij82f.js} +2 -2
  31. package/dist/chunks/{story-BVhbvY-4.js.map → story-BLBij82f.js.map} +1 -1
  32. package/dist/controls/ControlBar.d.ts +14 -0
  33. package/dist/controls/ControlBar.d.ts.map +1 -1
  34. package/dist/controls/SettingsMenu.d.ts +12 -1
  35. package/dist/controls/SettingsMenu.d.ts.map +1 -1
  36. package/dist/hope-player.js +6 -3
  37. package/dist/index.d.ts +3 -0
  38. package/dist/index.d.ts.map +1 -1
  39. package/dist/plugin-api/PluginHost.d.ts +65 -0
  40. package/dist/plugin-api/PluginHost.d.ts.map +1 -0
  41. package/dist/plugin-api/registry.d.ts +10 -0
  42. package/dist/plugin-api/registry.d.ts.map +1 -0
  43. package/dist/plugin-api/types.d.ts +170 -0
  44. package/dist/plugin-api/types.d.ts.map +1 -0
  45. package/dist/plugins/accessibility/Accessibility.d.ts +5 -0
  46. package/dist/plugins/accessibility/Accessibility.d.ts.map +1 -1
  47. package/dist/plugins/skip-segments/index.d.ts +2 -0
  48. package/dist/plugins/skip-segments/index.d.ts.map +1 -1
  49. package/dist/types/index.d.ts +11 -0
  50. package/dist/types/index.d.ts.map +1 -1
  51. package/package.json +1 -1
  52. package/dist/chunks/accessibility-CehDBG3h.js.map +0 -1
  53. package/dist/chunks/player-B0p2gi63.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAM7E,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,CAAC;AAClD,YAAY,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,YAAY,EACR,eAAe,EACf,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,UAAU,EACV,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACV,cAAc,EACd,WAAW,EACX,uBAAuB,EACvB,sBAAsB,EACtB,iBAAiB,EACjB,wBAAwB,EACxB,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,kBAAkB,EAClB,UAAU,EACV,cAAc,EACd,SAAS,EACT,UAAU,EACV,SAAS,EACT,YAAY,EACZ,cAAc,EACd,oBAAoB,EACpB,UAAU,EACV,cAAc,EACd,cAAc,EACd,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,qBAAqB,EACrB,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,SAAS,EACT,eAAe,EACf,mBAAmB,EACnB,UAAU,EACV,WAAW,EACX,UAAU,GACb,MAAM,SAAS,CAAC;AACjB,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACvF,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAElF,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,qBAAqB;QAC3B,aAAa,EAAE,iBAAiB,CAAC;KACpC;CACJ"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAM7E,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,YAAY,EACR,UAAU,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,aAAa,EACb,WAAW,EACX,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,oBAAoB,GACvB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,YAAY,EACR,eAAe,EACf,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,UAAU,EACV,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACV,cAAc,EACd,WAAW,EACX,uBAAuB,EACvB,sBAAsB,EACtB,iBAAiB,EACjB,wBAAwB,EACxB,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,kBAAkB,EAClB,UAAU,EACV,cAAc,EACd,SAAS,EACT,UAAU,EACV,SAAS,EACT,YAAY,EACZ,cAAc,EACd,oBAAoB,EACpB,UAAU,EACV,cAAc,EACd,cAAc,EACd,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,qBAAqB,EACrB,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,SAAS,EACT,eAAe,EACf,mBAAmB,EACnB,UAAU,EACV,WAAW,EACX,UAAU,GACb,MAAM,SAAS,CAAC;AACjB,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACvF,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAElF,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,qBAAqB;QAC3B,aAAa,EAAE,iBAAiB,CAAC;KACpC;CACJ"}
@@ -0,0 +1,65 @@
1
+ import type { SettingsSubmenuDef } from '../controls/SettingsMenu';
2
+ import { PLUGIN_API_VERSION, type PluginEntry } from './types';
3
+ /** Player → PluginHost bağlamı (eklentiler görmez). */
4
+ export interface PluginHostContext {
5
+ element: HTMLElement;
6
+ video: HTMLVideoElement;
7
+ videoArea: HTMLElement;
8
+ /** Alt katmanlar bunun önüne eklenir. */
9
+ chromeEl: HTMLElement;
10
+ labels: Readonly<Record<string, unknown>>;
11
+ locale(): string;
12
+ currentSrc(): string | null;
13
+ isAdPlaying(): boolean;
14
+ isFullscreen(): boolean;
15
+ addControlButton(button: HTMLButtonElement, position: 'left' | 'right'): void;
16
+ settings: {
17
+ registerToggle(row: {
18
+ key: string;
19
+ label: string;
20
+ getValueLabel(): string;
21
+ onToggle(): void;
22
+ }): void;
23
+ unregisterToggle(key: string): void;
24
+ registerSubmenu(def: SettingsSubmenuDef): void;
25
+ unregisterSubmenu(key: string): void;
26
+ };
27
+ log(message: string, details?: Record<string, string | number | boolean | undefined>): void;
28
+ }
29
+ export interface PluginShortcut {
30
+ keys: string[];
31
+ description: string;
32
+ }
33
+ export declare class PluginHost {
34
+ private readonly ctx;
35
+ private readonly instances;
36
+ private readonly shortcutList;
37
+ private syncSeq;
38
+ private toastEl;
39
+ private toastTimer;
40
+ /** Ayar satırı anahtarları. */
41
+ private keySeq;
42
+ constructor(ctx: PluginHostContext);
43
+ /** Listeye eşitler: kurar, kaldırır, günceller (aynı adlıda sonraki kazanır). */
44
+ sync(builtin: PluginEntry[], user: PluginEntry[]): Promise<void>;
45
+ /** Dil değişince. */
46
+ refreshLabels(): void;
47
+ /** `?` listesi için. */
48
+ shortcuts(): PluginShortcut[];
49
+ has(name: string): boolean;
50
+ destroy(): void;
51
+ private resolveEntry;
52
+ private install;
53
+ private dispose;
54
+ private report;
55
+ /** Eklenti kodu hep bundan çağrılır; hata player'a geçmez. */
56
+ private guard;
57
+ private readonly onKeyDown;
58
+ private createApi;
59
+ private addButton;
60
+ private addLayer;
61
+ private toast;
62
+ }
63
+ export { PLUGIN_API_VERSION };
64
+ export type { PluginShortcut as Shortcut };
65
+ //# sourceMappingURL=PluginHost.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,10 @@
1
+ import type { HopePlugin, PluginEntry, PluginLoader } from './types';
2
+ /** Eklenti tanımlar (tip yardımcısı + ad denetimi). */
3
+ export declare function definePlugin<O = unknown>(plugin: HopePlugin<O>): HopePlugin<O>;
4
+ /** Eklentiyi sayfadaki tüm player'lara ekler; player'ın kendi aynı adlı eklentisi kazanır. */
5
+ export declare function registerPlugin<O>(plugin: HopePlugin<O> | PluginLoader, options?: O): () => void;
6
+ /** @internal */
7
+ export declare function globalPluginEntries(): PluginEntry[];
8
+ /** @internal */
9
+ export declare function onGlobalPluginsChange(listener: () => void): () => void;
10
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/plugin-api/registry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAErE,uDAAuD;AACvD,wBAAgB,YAAY,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAM9E;AAKD,8FAA8F;AAC9F,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,YAAY,EAAE,OAAO,CAAC,EAAE,CAAC,GAAG,MAAM,IAAI,CAW/F;AAED,gBAAgB;AAChB,wBAAgB,mBAAmB,IAAI,WAAW,EAAE,CAEnD;AAED,gBAAgB;AAChB,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAGtE"}
@@ -0,0 +1,170 @@
1
+ /** API sürümü; eklenti daha yenisini isterse uyarı yazılır. */
2
+ export declare const PLUGIN_API_VERSION = 1;
3
+ /** Metin ya da güncel metni döndüren fonksiyon (dil değişince yeniden okunur). */
4
+ export type PluginLabel = string | (() => string);
5
+ export type PluginCleanup = () => void;
6
+ export interface HopePlugin<O = unknown> {
7
+ /** Benzersiz ad; olay öneki de budur. */
8
+ name: string;
9
+ apiVersion?: number;
10
+ /** API ile eklenen her şey eklenti kaldırılınca kendiliğinden temizlenir. */
11
+ setup(player: PlayerApi, options: O): void | PluginCleanup | Promise<void | PluginCleanup>;
12
+ /** Seçenekler değişince; yoksa eklenti yeniden kurulur. */
13
+ update?(options: O): void;
14
+ }
15
+ /** Tembel yükleme: `() => import('./my-plugin')` (default ya da `plugin` export'u). */
16
+ export type PluginLoader = () => Promise<HopePlugin<any> | {
17
+ default: HopePlugin<any>;
18
+ } | {
19
+ plugin: HopePlugin<any>;
20
+ }>;
21
+ /** Eklenti, yükleyici ya da `[eklenti | yükleyici, seçenekler]`. */
22
+ export type PluginEntry = HopePlugin<any> | PluginLoader | [HopePlugin<any> | PluginLoader, unknown?];
23
+ export interface PluginButtonOptions {
24
+ label: PluginLabel;
25
+ /** Satır içi SVG ya da player ikon adı (`play`, `settings`, `loop`…). */
26
+ icon: string;
27
+ /** Varsayılan `'right'`. */
28
+ position?: 'left' | 'right';
29
+ /** Verilirse aç / kapa butonu (`aria-pressed`). */
30
+ active?: boolean;
31
+ onClick?(event: MouseEvent, button: PluginButtonHandle): void;
32
+ }
33
+ export interface PluginButtonHandle {
34
+ readonly el: HTMLButtonElement;
35
+ readonly active: boolean;
36
+ setLabel(label: PluginLabel): void;
37
+ setIcon(icon: string): void;
38
+ setActive(active: boolean): void;
39
+ show(): void;
40
+ hide(): void;
41
+ remove(): void;
42
+ }
43
+ export type PluginLayerPosition = 'fill' | 'top' | 'bottom' | 'center' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
44
+ export interface PluginLayerOptions {
45
+ /** Varsayılan `'fill'`. */
46
+ position?: PluginLayerPosition;
47
+ /** Kontrollerin üstünde (varsayılan altında). */
48
+ above?: boolean;
49
+ /** Kontrollerle birlikte gizlenir. */
50
+ autoHide?: boolean;
51
+ /** Tüm katman tıklanabilir; varsayılan yalnızca içindeki butonlar / linkler. */
52
+ interactive?: boolean;
53
+ /** Katmana CSS (shadow DOM içinde). */
54
+ css?: string;
55
+ /** Varsayılan true. */
56
+ visible?: boolean;
57
+ }
58
+ export interface PluginLayerHandle {
59
+ readonly el: HTMLDivElement;
60
+ readonly visible: boolean;
61
+ show(): void;
62
+ hide(): void;
63
+ toggle(force?: boolean): void;
64
+ remove(): void;
65
+ }
66
+ export interface PluginUiApi {
67
+ addButton(options: PluginButtonOptions): PluginButtonHandle;
68
+ addLayer(options?: PluginLayerOptions): PluginLayerHandle;
69
+ toast(message: string, options?: {
70
+ durationMs?: number;
71
+ }): void;
72
+ }
73
+ export interface PluginSettingsItem {
74
+ label: PluginLabel;
75
+ active?: boolean;
76
+ onSelect(): void;
77
+ }
78
+ export interface PluginSettingsHandle {
79
+ /** Satırı güncel değerle yeniden çizer. */
80
+ refresh(): void;
81
+ remove(): void;
82
+ }
83
+ export interface PluginSettingsApi {
84
+ /** Ana menüde aç / kapa satırı. */
85
+ addToggle(options: {
86
+ label: PluginLabel;
87
+ get(): boolean;
88
+ set(value: boolean): void;
89
+ }): PluginSettingsHandle;
90
+ /** Alt menüde seçenek listesi. */
91
+ addSelect<V extends string | number>(options: {
92
+ label: PluginLabel;
93
+ options: Array<{
94
+ value: V;
95
+ label: PluginLabel;
96
+ }> | (() => Array<{
97
+ value: V;
98
+ label: PluginLabel;
99
+ }>);
100
+ get(): V;
101
+ set(value: V): void;
102
+ }): PluginSettingsHandle;
103
+ /** Serbest alt menü; satırlar her açılışta `items()` ile üretilir. */
104
+ addSubmenu(options: {
105
+ label: PluginLabel;
106
+ value?: () => string;
107
+ items(): PluginSettingsItem[];
108
+ }): PluginSettingsHandle;
109
+ }
110
+ export interface PluginKeysApi {
111
+ /** `'w'`, `'Shift+W'`, `'Alt+l'`; player'ın kendi tuşlarını ezmez, `?` listesinde görünür. */
112
+ add(key: string, handler: (event: KeyboardEvent) => void, description?: PluginLabel): () => void;
113
+ }
114
+ export interface PluginI18nApi {
115
+ /** `{ tr: { key: '…' }, en: { key: '…' } }` */
116
+ add(strings: Record<string, Record<string, string>>): void;
117
+ /** Player dili → İngilizce → `fallback` → anahtar. */
118
+ t(key: string, fallback?: string): string;
119
+ }
120
+ export interface PluginStorageApi {
121
+ /** Eklentiye ayrılmış localStorage alanı. */
122
+ get<T>(key: string, fallback?: T): T | undefined;
123
+ set(key: string, value: unknown): void;
124
+ remove(key: string): void;
125
+ }
126
+ export interface PlayerApi {
127
+ readonly plugin: string;
128
+ readonly apiVersion: number;
129
+ /** `<hope-player>` elementi. */
130
+ readonly element: HTMLElement;
131
+ /** İçerik videosu (reklamlar ayrı öğede). */
132
+ readonly video: HTMLVideoElement;
133
+ readonly locale: string;
134
+ /** Player'ın kendi metinleri (salt okunur). */
135
+ readonly labels: Readonly<Record<string, unknown>>;
136
+ readonly currentTime: number;
137
+ readonly duration: number;
138
+ readonly paused: boolean;
139
+ readonly isLive: boolean;
140
+ readonly isAdPlaying: boolean;
141
+ readonly isFullscreen: boolean;
142
+ readonly src: string | null;
143
+ play(): Promise<void>;
144
+ pause(): void;
145
+ seek(time: number): void;
146
+ /** Video olayları ve `hp:*` olayları; dönen fonksiyon dinlemeyi bırakır. */
147
+ on(event: string, handler: (event: Event) => void): () => void;
148
+ once(event: string, handler: (event: Event) => void): () => void;
149
+ /** Elementte `<eklenti>:<olay>` CustomEvent'i yayar. */
150
+ emit(event: string, detail?: unknown): void;
151
+ onSourceChange(handler: (src: string | null) => void): () => void;
152
+ onLocaleChange(handler: (locale: string) => void): () => void;
153
+ onDestroy(handler: () => void): void;
154
+ /** Eklenti kaldırılınca iptal edilen zamanlayıcılar. */
155
+ setTimeout(handler: () => void, ms: number): number;
156
+ setInterval(handler: () => void, ms: number): number;
157
+ readonly ui: PluginUiApi;
158
+ readonly settings: PluginSettingsApi;
159
+ readonly keys: PluginKeysApi;
160
+ readonly i18n: PluginI18nApi;
161
+ readonly storage: PluginStorageApi;
162
+ /** Player'ın hata kaydına yazar. */
163
+ log(message: string, details?: Record<string, string | number | boolean | undefined>): void;
164
+ }
165
+ /** `player.use()` tutamacı. */
166
+ export interface PluginInstanceHandle {
167
+ readonly name: string;
168
+ remove(): void;
169
+ }
170
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/plugin-api/types.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,11 @@ export interface AccessibilityPlayerContext {
12
12
  addQuickButton(btn: HTMLButtonElement, getDef: () => SettingsSubmenuDef, getParents: () => SettingsSubmenuDef[]): void;
13
13
  /** Klavyeyle sarma adımı (sn) — kısayol listesinde gösterilir. */
14
14
  seekStep(): number;
15
+ /** Eklentilerin kısayolları (listeye eklenir). */
16
+ extraShortcuts?(): Array<{
17
+ keys: string[];
18
+ description: string;
19
+ }>;
15
20
  }
16
21
  /**
17
22
  * Erişilebilirlik alt menüsü: yakınlaştırma (sürükle / Shift+ok / iki parmak), görüntü filtreleri, mono ses, ses
@@ -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;CACtB;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;IA2ErB,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;IA4ErB,OAAO,CAAC,cAAc;CAOzB"}
@@ -1,6 +1,8 @@
1
1
  import { SkipSegments, type SkipSegmentsPlayerContext } from './SkipSegments';
2
2
  import type { SkipSegment } from '../../types';
3
3
  export declare function installSkipSegments(ctx: SkipSegmentsPlayerContext, segments: SkipSegment[]): SkipSegments;
4
+ /** "İntroyu atla", herkese açık eklenti API'si üzerinden. */
5
+ export declare const skipSegmentsPlugin: import("../..").HopePlugin<SkipSegment[]>;
4
6
  export { SkipSegments };
5
7
  export type { SkipSegmentsPlayerContext };
6
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/skip-segments/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,yBAAyB,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,YAAY,CAEzG;AAED,OAAO,EAAE,YAAY,EAAE,CAAC;AACxB,YAAY,EAAE,yBAAyB,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/skip-segments/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAI/C,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,yBAAyB,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,YAAY,CAEzG;AAED,6DAA6D;AAC7D,eAAO,MAAM,kBAAkB,2CAiB7B,CAAC;AAEH,OAAO,EAAE,YAAY,EAAE,CAAC;AACxB,YAAY,EAAE,yBAAyB,EAAE,CAAC"}
@@ -1,3 +1,4 @@
1
+ import type { PluginEntry } from '../plugin-api/types';
1
2
  import type { HlsConfig } from 'hls.js';
2
3
  import type { HopeLocale, HopeLocaleStrings } from '../i18n/types';
3
4
  export type { HopeLocale, HopeLocaleStrings };
@@ -973,6 +974,7 @@ export interface HopePlayerOptions {
973
974
  */
974
975
  theme?: HopeThemePreset | (string & {});
975
976
  subtitles?: HopeSubtitleOption[];
977
+ /** Ayarlar menüsündeki oynatma hızları. Varsayılan [0.5, 0.75, 1, 1.25, 1.5, 2]. `[]` "Oynatma hızı" satırını kaldırır. */
976
978
  playbackRates?: number[];
977
979
  /**
978
980
  * Ayarlar ikonunun köşesinde oynayan görüntünün kalite rozeti: "HD" (720p+), "2K" (1440p), "4K" (2160p), "8K".
@@ -985,6 +987,13 @@ export interface HopePlayerOptions {
985
987
  * "● CANLI" rozeti ve klavyeyle sarma kalır. VOD'u etkilemez.
986
988
  */
987
989
  liveSeekBar?: boolean;
990
+ /** Kontrol çubuğundaki Picture-in-Picture butonu. Varsayılan true (tarayıcı destekliyorsa); `false` gizler. */
991
+ pipButton?: boolean;
992
+ /**
993
+ * Kontrol çubuğundaki tam ekran butonu. Varsayılan true; `false` gizler. Yalnızca buton: `F` kısayolu ve
994
+ * `tapGestures`'taki `toggleFullscreen` çalışmaya devam eder.
995
+ */
996
+ fullscreenButton?: boolean;
988
997
  /** Fare video üzerinden ayrılınca kontrol çubuğunun/merkez play butonunun kaybolmadan önce beklediği süre (ms). Varsayılan 1200. */
989
998
  autoHideDelayMs?: number;
990
999
  /** Video oynarken fare bu süre (ms) kıpırdamazsa imleç gizlenir; `false` = hiç gizleme. Varsayılan 5000. */
@@ -1076,6 +1085,8 @@ export interface HopePlayerOptions {
1076
1085
  * ses seviyesi / sessiz durumu hatırlanır. Kayıtlar izleyicinin tarayıcısında. Varsayılan kapalı.
1077
1086
  */
1078
1087
  history?: boolean | HistoryOptions;
1088
+ /** Eklentiler: `[eklenti]`, `[[eklenti, seçenekler]]` ya da yükleyici `() => import('./x')`. Bkz. `definePlugin`. */
1089
+ plugins?: PluginEntry[];
1079
1090
  /** Seekbar üzerinde hover-scrub sprite sheet önizlemesi. */
1080
1091
  spriteThumbnails?: SpriteThumbnailsOptions;
1081
1092
  /** Oynatıcı yüklenmeden önce hedef tarihe kadar geri sayım ekranı. */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hopeplayer/core",
3
- "version": "1.3.0",
3
+ "version": "1.4.0",
4
4
  "description": "HopePlayer core — dependency-free <hope-player> custom element (Shadow DOM + Tailwind)",
5
5
  "keywords": ["video-player", "video", "player", "html5-video", "hls", "m3u8", "web-component", "custom-element", "ima", "vast", "vmap", "prebid", "ads", "monetization", "chromecast", "airplay", "subtitles", "shadow-dom", "audio-player", "live-streaming", "scte-35", "dai", "om-sdk", "rewarded-ads", "sprite-thumbnails", "typescript", "hopeplayer"],
6
6
  "repository": {
@@ -1 +0,0 @@
1
- {"version":3,"file":"accessibility-CehDBG3h.js","sources":["../../src/plugins/accessibility/colorBlind.ts","../../src/plugins/accessibility/Accessibility.ts","../../src/plugins/accessibility/index.ts"],"sourcesContent":["// Renk körlüğü filtreleri: daltonizasyon (renk körünün ayırt edemediği renk farkını gördüğü kanallara kaydırma).\n// Simülasyon matrisi S ile: M = I + E·(I − S). E hatayı görülebilen kanallara dağıtır. Sonuç tek bir 3×3 renk\n// matrisi — CSS `filter: url(...)` ile bir SVG feColorMatrix olarak uygulanır (shadow DOM'da #id başvurusu tarayıcıdan\n// tarayıcıya değiştiği için filtre veri adresinin içinde gelir).\n\ntype M3 = [number, number, number, number, number, number, number, number, number];\ntype Kind = 'protanopia' | 'deuteranopia' | 'tritanopia';\n\n/** RGB uzayında yaygın kullanılan renk körlüğü simülasyon matrisleri. */\nconst SIMULATE: Record<Kind, M3> = {\n protanopia: [0.567, 0.433, 0, 0.558, 0.442, 0, 0, 0.242, 0.758],\n deuteranopia: [0.625, 0.375, 0, 0.7, 0.3, 0, 0, 0.3, 0.7],\n tritanopia: [0.95, 0.05, 0, 0, 0.433, 0.567, 0, 0.475, 0.525],\n};\n\n/** Kırmızı / yeşil körlüğünde hata yeşil ve maviye; mavi körlüğünde kırmızı ve yeşile kaydırılır. */\nconst SHIFT: Record<Kind, M3> = {\n protanopia: [0, 0, 0, 0.7, 1, 0, 0.7, 0, 1],\n deuteranopia: [0, 0, 0, 0.7, 1, 0, 0.7, 0, 1],\n tritanopia: [1, 0, 0.7, 0, 1, 0.7, 0, 0, 0],\n};\n\nconst I: M3 = [1, 0, 0, 0, 1, 0, 0, 0, 1];\n\nfunction mul(a: M3, b: M3): M3 {\n const r = new Array<number>(9) as M3;\n for (let i = 0; i < 3; i++) for (let j = 0; j < 3; j++) r[i * 3 + j] = a[i * 3]! * b[j]! + a[i * 3 + 1]! * b[3 + j]! + a[i * 3 + 2]! * b[6 + j]!;\n return r;\n}\n\nexport function daltonizeMatrix(kind: Kind): M3 {\n const s = SIMULATE[kind];\n const err = I.map((v, i) => v - s[i]!) as M3;\n const shifted = mul(SHIFT[kind], err);\n return I.map((v, i) => v + shifted[i]!) as M3;\n}\n\nconst cache = new Map<Kind, string>();\n\nexport function colorBlindFilterUrl(kind: Kind): string {\n let url = cache.get(kind);\n if (!url) {\n const m = daltonizeMatrix(kind).map((n) => Math.round(n * 1000) / 1000);\n const values = [m[0], m[1], m[2], 0, 0, m[3], m[4], m[5], 0, 0, m[6], m[7], m[8], 0, 0, 0, 0, 0, 1, 0].join(' ');\n const svg = `<svg xmlns='http://www.w3.org/2000/svg'><filter id='f' color-interpolation-filters='sRGB'><feColorMatrix type='matrix' values='${values}'/></filter></svg>`;\n url = `url(\"data:image/svg+xml,${encodeURIComponent(svg)}#f\")`;\n cache.set(kind, url);\n }\n return url;\n}\n","import type { AccessibilityFilter, AccessibilityOptions, AccessibilityState } from '../../types';\nimport type { HopeLocaleStrings } from '../../i18n/types';\nimport type { SettingsSubmenuDef, SettingsSubmenuItem } from '../../controls/SettingsMenu';\nimport { colorBlindFilterUrl } from './colorBlind';\n\nexport interface AccessibilityPlayerContext {\n hostEl: HTMLElement;\n videoEl: HTMLVideoElement;\n videoAreaEl: HTMLElement;\n i18n: HopeLocaleStrings;\n registerSubmenu(def: SettingsSubmenuDef): void;\n unregisterSubmenu(key: string): void;\n /** Ayarlar butonunun sağına hızlı erişim butonu (SettingsMenu.addQuickButton). */\n addQuickButton(btn: HTMLButtonElement, getDef: () => SettingsSubmenuDef, getParents: () => SettingsSubmenuDef[]): void;\n /** Klavyeyle sarma adımı (sn) — kısayol listesinde gösterilir. */\n seekStep(): number;\n}\n\nconst DEFAULT_ZOOM = [1, 1.25, 1.5, 2, 3];\nconst DEFAULT_BOOST = [1, 1.5, 2, 3];\nconst ALL_FILTERS: AccessibilityFilter[] = ['none', 'grayscale', 'daylight', 'night', 'contrast', 'protanopia', 'deuteranopia', 'tritanopia'];\nconst STORAGE_KEY = 'hp-accessibility';\n/** Shift + ok ile bir adımda kaydırma (yakınlaştırılmış alanın oranı). */\nconst PAN_STEP = 0.15;\nconst SUBMENU_KEY = 'accessibility';\n/** Bundan fazla kayan basış sürükleme sayılır — ardından gelen tık yutulur. */\nconst DRAG_THRESHOLD_PX = 6;\n/**\n * Bunların üstünde başlayan sürükleme / iki parmak görüntüyü kaydırmaz (butonlar, ilerleme çubuğu, menüler). Ortadaki\n * oynat butonu hariç: duraklatılmışken bütün alanı kaplıyor — onun üstünde de kaydırılabilmeli.\n */\nconst CONTROL_SELECTOR = 'button:not(.hp-center-play), a, input, [role=\"slider\"], [part=\"control-bar\"], .hp-chip, .hp-chip-panel, .hp-shortcuts, .hp-top-bar';\n\n/** CSS filtreleri. Renk körlüğü filtreleri SVG renk matrisi (daltonizasyon) — bkz. colorBlind.ts. */\nconst CSS_FILTERS: Record<AccessibilityFilter, string> = {\n none: '',\n grayscale: 'grayscale(1)',\n // Aydınlık ortamda (gün ışığında ekran) seçilebilirlik: daha parlak, daha kontrastlı.\n daylight: 'brightness(1.18) contrast(1.18) saturate(1.1)',\n // Gece: sıcak ton, mavi ışık azaltılmış, biraz karartılmış.\n night: 'sepia(0.4) saturate(1.15) hue-rotate(-12deg) brightness(0.9)',\n contrast: 'contrast(1.55) saturate(1.25)',\n protanopia: '',\n deuteranopia: '',\n tritanopia: '',\n};\n\ntype QuickId = 'zoom' | 'filter' | 'mono' | 'boost' | 'largeControls';\n\n/** Hızlı erişim butonlarının ikonları (satır içi SVG — ikon fontunda karşılıkları yok). */\nconst svg = (body: string): string =>\n `<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"width:var(--hp-ctrl-icon-size);height:var(--hp-ctrl-icon-size)\">${body}</svg>`;\nconst QUICK_ICONS: Record<QuickId, string> = {\n // Büyüteç + artı\n zoom: svg('<circle cx=\"11\" cy=\"11\" r=\"6.5\"/><path d=\"M20.5 20.5l-4.9-4.9M11 8.2v5.6M8.2 11h5.6\"/>'),\n // Yarısı dolu daire (renk / kontrast)\n filter: svg('<circle cx=\"12\" cy=\"12\" r=\"8.5\"/><path d=\"M12 3.5a8.5 8.5 0 0 1 0 17z\" fill=\"currentColor\" stroke=\"none\"/>'),\n // Tek dalgalı hoparlör + \"1\"\n mono: svg('<path d=\"M4 9.5h3.5L12 5.5v13l-4.5-4H4z\"/><path d=\"M15.5 9.5a3.5 3.5 0 0 1 0 5\"/><path d=\"M19 8.5v7\"/>'),\n // Hoparlör + artı\n boost: svg('<path d=\"M3 9.5h3.5L11 5.5v13l-4.5-4H3z\"/><path d=\"M14.5 12h6M17.5 9v6\"/>'),\n // Büyüyen kare (dışa oklar)\n largeControls: svg('<path d=\"M9 4H4v5M15 4h5v5M9 20H4v-5M15 20h5v-5\"/><rect x=\"8.5\" y=\"8.5\" width=\"7\" height=\"7\" rx=\"1.2\"/>'),\n};\ninterface AudioGraph {\n ctx: AudioContext;\n gain: GainNode;\n}\n\n/**\n * Erişilebilirlik alt menüsü: yakınlaştırma (sürükle / Shift+ok / iki parmak), görüntü filtreleri, mono ses, ses\n * güçlendirme (Web Audio), büyük kontroller ve klavye kısayolları paneli (`?`). Seçimler tarayıcıda hatırlanır.\n */\nexport class Accessibility {\n private readonly state: AccessibilityState = { zoom: 1, filter: 'none', mono: false, boost: 1, largeControls: false };\n private readonly zoomLevels: number[];\n private readonly boostLevels: number[];\n private readonly filters: AccessibilityFilter[];\n /** Kaydırma — her eksende -1…1 (yakınlaştırılmış görüntünün kenarına kadar). */\n private panX = 0;\n private panY = 0;\n private graph: AudioGraph | null = null;\n private shortcutsEl: HTMLDivElement | null = null;\n private drag: { id: number; x: number; y: number; panX: number; panY: number } | null = null;\n private readonly touches = new Map<number, { x: number; y: number }>();\n private pinch: { dist: number; zoom: number } | null = null;\n private readonly quickButtons = new Map<QuickId, HTMLButtonElement>();\n\n constructor(\n private readonly ctx: AccessibilityPlayerContext,\n private readonly options: AccessibilityOptions\n ) {\n this.zoomLevels = options.zoom === false ? [] : normalizeLevels(Array.isArray(options.zoom) ? options.zoom : DEFAULT_ZOOM);\n this.boostLevels = options.audio === false ? [] : normalizeLevels(options.boostLevels ?? DEFAULT_BOOST);\n this.filters = options.filters === false ? [] : Array.isArray(options.filters) ? ['none', ...options.filters.filter((f) => f !== 'none' && f in CSS_FILTERS)] : ALL_FILTERS;\n\n this.restore();\n ctx.registerSubmenu(this.menu());\n ctx.hostEl.addEventListener('keydown', this.onKeyDown, true);\n if (this.zoomLevels.length > 1) {\n // Video alanının tamamı (oynat butonu / altyazı katmanı videonun üstünde) — kontrollerden başlayan sürükleme hariç.\n const area = ctx.videoAreaEl;\n area.addEventListener('pointerdown', this.onPointerDown);\n area.addEventListener('pointermove', this.onPointerMove);\n area.addEventListener('pointerup', this.onPointerUp);\n area.addEventListener('pointercancel', this.onPointerUp);\n window.addEventListener('resize', this.applyZoom);\n }\n ctx.videoEl.addEventListener('play', this.resumeAudio);\n this.applyAll();\n }\n\n destroy(): void {\n const v = this.ctx.videoEl;\n this.ctx.unregisterSubmenu(SUBMENU_KEY);\n this.ctx.hostEl.removeEventListener('keydown', this.onKeyDown, true);\n const area = this.ctx.videoAreaEl;\n area.removeEventListener('pointerdown', this.onPointerDown);\n area.removeEventListener('pointermove', this.onPointerMove);\n area.removeEventListener('pointerup', this.onPointerUp);\n area.removeEventListener('pointercancel', this.onPointerUp);\n v.removeEventListener('play', this.resumeAudio);\n window.removeEventListener('resize', this.applyZoom);\n this.closeShortcuts();\n for (const btn of this.quickButtons.values()) btn.remove();\n this.quickButtons.clear();\n Object.assign(v.style, { transform: '', transformOrigin: '', filter: '', touchAction: '' });\n this.ctx.hostEl.removeAttribute('data-large-controls');\n this.ctx.hostEl.removeAttribute('data-zoomed');\n // Web Audio grafiği geri alınamaz (createMediaElementSource kalıcı) — nötr değerlere çekilir.\n if (this.graph) {\n this.state.mono = false;\n this.state.boost = 1;\n this.applyAudio();\n }\n }\n\n /** Dil değişince alt menü yeni etiketlerle yeniden kaydedilir. */\n refreshLabels(): void {\n this.ctx.registerSubmenu(this.menu());\n this.syncQuickButtons();\n if (this.shortcutsEl) {\n this.closeShortcuts();\n this.openShortcuts();\n }\n }\n\n // ── Menü ──\n\n private menu(): SettingsSubmenuDef {\n const t = this.ctx.i18n;\n return {\n key: SUBMENU_KEY,\n title: t.a11yMenu,\n getValueLabel: () => '',\n getItems: () => {\n const items: SettingsSubmenuItem[] = [];\n const sub = (label: string, value: string, children: () => SettingsSubmenuDef): SettingsSubmenuItem => ({ label, value, active: false, onSelect: () => {}, children });\n if (this.zoomLevels.length > 1) items.push(sub(t.a11yZoom, pct(this.state.zoom), () => this.zoomDef()));\n if (this.filters.length > 1) items.push(sub(t.a11yFilter, this.filterLabel(this.state.filter), () => this.filterDef()));\n if (this.boostLevels.length) {\n const ok = this.audioAllowed();\n items.push({\n label: t.a11yMono,\n value: ok ? (this.state.mono ? t.a11yOn : t.a11yOff) : t.a11yUnavailable,\n active: this.state.mono,\n keepOpen: true,\n onSelect: () => {\n if (ok) this.set('mono', !this.state.mono);\n },\n });\n if (this.boostLevels.length > 1) items.push(sub(t.a11yBoost, ok ? pct(this.state.boost) : t.a11yUnavailable, () => this.boostDef()));\n }\n if (this.options.largeControls !== false)\n items.push({\n label: t.a11yLargeControls,\n value: this.state.largeControls ? t.a11yOn : t.a11yOff,\n active: this.state.largeControls,\n keepOpen: true,\n onSelect: () => this.set('largeControls', !this.state.largeControls),\n });\n if (this.options.shortcuts !== false)\n items.push({ label: t.a11yShortcuts, value: '?', active: false, onSelect: () => queueMicrotask(() => this.openShortcuts()) });\n return items;\n },\n };\n }\n\n // Özelliklerin kendi alt menüleri — hem Erişilebilirlik menüsünden hem hızlı erişim butonlarından açılır.\n\n private zoomDef(): SettingsSubmenuDef {\n return {\n key: 'a11y-zoom',\n title: this.ctx.i18n.a11yZoom,\n getValueLabel: () => '',\n getItems: () => this.zoomLevels.map((z) => ({ label: pct(z), active: Math.abs(this.state.zoom - z) < 0.001, onSelect: () => this.setZoom(z) })),\n };\n }\n\n private filterDef(): SettingsSubmenuDef {\n return {\n key: 'a11y-filter',\n title: this.ctx.i18n.a11yFilter,\n getValueLabel: () => '',\n getItems: () => this.filters.map((f) => ({ label: this.filterLabel(f), active: this.state.filter === f, onSelect: () => this.set('filter', f) })),\n };\n }\n\n private boostDef(): SettingsSubmenuDef {\n return {\n key: 'a11y-boost',\n title: this.ctx.i18n.a11yBoost,\n getValueLabel: () => '',\n getItems: () => (this.audioAllowed() ? this.boostLevels.map((b) => ({ label: pct(b), active: this.state.boost === b, onSelect: () => this.set('boost', b) })) : []),\n };\n }\n\n /** Aç / kapa özellikleri (mono, büyük kontroller) için hızlı butonun açtığı iki satırlık menü. */\n private toggleDef(key: 'mono' | 'largeControls', title: string): SettingsSubmenuDef {\n const t = this.ctx.i18n;\n return {\n key: `a11y-${key}`,\n title,\n getValueLabel: () => '',\n getItems: () => [\n { label: t.a11yOn, active: this.state[key], onSelect: () => this.set(key, true) },\n { label: t.a11yOff, active: !this.state[key], onSelect: () => this.set(key, false) },\n ],\n };\n }\n\n // ── Hızlı erişim butonları ──\n\n /**\n * Açık olan her özelliğin ayarlar butonunun sağında kendi butonu olur; basınca doğrudan o özelliğin ayarları açılır\n * (yakınlaştırma seviyeleri, filtre listesi…). Özellik kapanınca buton kalkar. \"Geri\" Erişilebilirlik menüsüne döner.\n */\n private syncQuickButtons(): void {\n const t = this.ctx.i18n;\n const s = this.state;\n const specs: { id: QuickId; on: boolean; label: string; def: () => SettingsSubmenuDef }[] = [\n { id: 'zoom', on: s.zoom > 1.001, label: `${t.a11yZoom}: ${pct(s.zoom)}`, def: () => this.zoomDef() },\n { id: 'filter', on: s.filter !== 'none', label: `${t.a11yFilter}: ${this.filterLabel(s.filter)}`, def: () => this.filterDef() },\n { id: 'mono', on: s.mono, label: `${t.a11yMono}: ${t.a11yOn}`, def: () => this.toggleDef('mono', t.a11yMono) },\n { id: 'boost', on: s.boost !== 1, label: `${t.a11yBoost}: ${pct(s.boost)}`, def: () => this.boostDef() },\n { id: 'largeControls', on: s.largeControls, label: `${t.a11yLargeControls}: ${t.a11yOn}`, def: () => this.toggleDef('largeControls', t.a11yLargeControls) },\n ];\n for (const spec of specs) {\n let btn = this.quickButtons.get(spec.id);\n if (!spec.on) {\n btn?.remove();\n this.quickButtons.delete(spec.id);\n continue;\n }\n if (!btn) {\n btn = document.createElement('button');\n btn.type = 'button';\n btn.className =\n 'hp-chip hp-a11y-quick hp:flex hp:items-center hp:justify-center hp:w-[var(--hp-ctrl-btn-size)] hp:h-[var(--hp-ctrl-btn-size)] hp:cursor-pointer';\n btn.setAttribute('part', `a11y-quick a11y-quick-${spec.id}`);\n btn.setAttribute('data-a11y', spec.id);\n btn.innerHTML = QUICK_ICONS[spec.id];\n this.ctx.addQuickButton(btn, spec.def, () => [this.menu()]);\n this.quickButtons.set(spec.id, btn);\n }\n // Tooltip ve ekran okuyucu: özelliğin adı + değeri (\"Yakınlaştırma: 200%\").\n btn.setAttribute('aria-label', spec.label);\n }\n }\n private filterLabel(f: AccessibilityFilter): string {\n const t = this.ctx.i18n;\n const labels: Record<AccessibilityFilter, string> = {\n none: t.a11yFilterNone,\n grayscale: t.a11yFilterGrayscale,\n daylight: t.a11yFilterDaylight,\n night: t.a11yFilterNight,\n contrast: t.a11yFilterContrast,\n protanopia: t.a11yFilterProtanopia,\n deuteranopia: t.a11yFilterDeuteranopia,\n tritanopia: t.a11yFilterTritanopia,\n };\n return labels[f];\n }\n\n // ── Durum ──\n\n private set<K extends keyof AccessibilityState>(key: K, value: AccessibilityState[K]): void {\n if (this.state[key] === value) return;\n this.state[key] = value;\n this.applyAll();\n this.save();\n this.ctx.hostEl.dispatchEvent(new CustomEvent('hp:accessibility', { detail: { ...this.state, changed: key } }));\n }\n\n private setZoom(z: number): void {\n if (z <= 1) {\n this.panX = 0;\n this.panY = 0;\n }\n this.set('zoom', z);\n }\n\n private applyAll(): void {\n this.applyZoom();\n this.applyFilter();\n this.applyAudio();\n this.ctx.hostEl.toggleAttribute('data-large-controls', this.state.largeControls);\n this.syncQuickButtons();\n }\n\n private readonly applyZoom = (): void => {\n const v = this.ctx.videoEl;\n const z = this.state.zoom;\n this.ctx.hostEl.toggleAttribute('data-zoomed', z > 1);\n if (this.zoomLevels.length > 1) {\n // Yakınlaştırılmamışken sayfa kaydırması serbest, tarayıcının kendi iki parmak büyütmesi kapalı (bizimki çalışsın);\n // yakınlaştırılmışken sürükleme görüntüyü kaydırır.\n v.style.touchAction = z > 1 ? 'none' : 'pan-x pan-y';\n }\n if (z <= 1) {\n v.style.transform = '';\n return;\n }\n // Kenar dışına kaydırılamaz: en fazla (z-1)/2 genişlik kadar.\n const maxX = ((z - 1) * v.clientWidth) / 2;\n const maxY = ((z - 1) * v.clientHeight) / 2;\n v.style.transformOrigin = 'center center';\n v.style.transform = `translate(${(-this.panX * maxX).toFixed(1)}px, ${(-this.panY * maxY).toFixed(1)}px) scale(${z})`;\n };\n\n private applyFilter(): void {\n const f = this.state.filter;\n this.ctx.videoEl.style.filter = f === 'protanopia' || f === 'deuteranopia' || f === 'tritanopia' ? colorBlindFilterUrl(f) : CSS_FILTERS[f];\n }\n\n // ── Ses (Web Audio) ──\n\n /**\n * Web Audio kaynağı başka alan adındaysa ve CORS'la yüklenmediyse tarayıcı sesi sıfırlar — o zaman kapalı kalır.\n * blob: (hls.js / MSE; hls.js zaten CORS'la indirir) ve aynı origin güvenli.\n */\n private audioAllowed(): boolean {\n if (typeof AudioContext === 'undefined') return false;\n const src = this.ctx.videoEl.currentSrc;\n if (!src || src.startsWith('blob:') || src.startsWith('data:')) return true;\n try {\n if (new URL(src, location.href).origin === location.origin) return true;\n } catch {\n return false;\n }\n return this.ctx.videoEl.crossOrigin !== null;\n }\n\n private applyAudio(): void {\n const needed = this.state.mono || this.state.boost !== 1;\n if (!needed && !this.graph) return;\n if (!this.graph) {\n if (!this.audioAllowed()) return;\n try {\n const ctx = new AudioContext();\n const source = ctx.createMediaElementSource(this.ctx.videoEl);\n const gain = ctx.createGain();\n source.connect(gain).connect(ctx.destination);\n this.graph = { ctx, gain };\n } catch {\n return;\n }\n }\n const { gain, ctx } = this.graph;\n gain.gain.value = this.state.boost;\n // Mono: kanalları 'speakers' kuralıyla tek kanala indir ((L+R)/2); çıkış iki hoparlöre aynı gider.\n gain.channelCountMode = this.state.mono ? 'explicit' : 'max';\n gain.channelCount = this.state.mono ? 1 : 2;\n gain.channelInterpretation = 'speakers';\n if (ctx.state === 'suspended') void ctx.resume().catch(() => {});\n }\n\n private readonly resumeAudio = (): void => {\n if (this.graph?.ctx.state === 'suspended') void this.graph.ctx.resume().catch(() => {});\n };\n\n // ── Kalıcılık ──\n\n private restore(): void {\n if (this.options.remember === false) return;\n try {\n const saved = JSON.parse(localStorage.getItem(STORAGE_KEY) ?? 'null') as Partial<AccessibilityState> | null;\n if (!saved) return;\n if (saved.filter && this.filters.includes(saved.filter)) this.state.filter = saved.filter;\n if (typeof saved.mono === 'boolean' && this.boostLevels.length) this.state.mono = saved.mono;\n if (typeof saved.boost === 'number' && this.boostLevels.includes(saved.boost)) this.state.boost = saved.boost;\n if (typeof saved.largeControls === 'boolean' && this.options.largeControls !== false) this.state.largeControls = saved.largeControls;\n // Yakınlaştırma bilerek hatırlanmaz — bir sonraki videoda kadrajı kaçırmasın.\n } catch {\n /* gizli sekme / bozuk kayıt — varsayılanlar */\n }\n }\n\n private save(): void {\n if (this.options.remember === false) return;\n try {\n const { filter, mono, boost, largeControls } = this.state;\n localStorage.setItem(STORAGE_KEY, JSON.stringify({ filter, mono, boost, largeControls }));\n } catch {\n /* depolama yok — yalnızca bu oturum */\n }\n }\n\n // ── Yakınlaştırma: sürükle, iki parmak ──\n\n private readonly onPointerDown = (e: PointerEvent): void => {\n const target = e.composedPath()[0];\n if (target instanceof Element && target.closest(CONTROL_SELECTOR)) return;\n if (e.pointerType === 'touch') {\n this.touches.set(e.pointerId, { x: e.clientX, y: e.clientY });\n if (this.touches.size === 2) {\n this.pinch = { dist: this.touchDistance(), zoom: this.state.zoom };\n this.drag = null;\n return;\n }\n }\n if (this.state.zoom <= 1 || (e.pointerType === 'mouse' && e.button !== 0)) return;\n this.drag = { id: e.pointerId, x: e.clientX, y: e.clientY, panX: this.panX, panY: this.panY };\n };\n\n private readonly onPointerMove = (e: PointerEvent): void => {\n if (e.pointerType === 'touch' && this.touches.has(e.pointerId)) this.touches.set(e.pointerId, { x: e.clientX, y: e.clientY });\n if (this.pinch && this.touches.size === 2) {\n const max = this.zoomLevels[this.zoomLevels.length - 1]!;\n const z = Math.min(max, Math.max(1, (this.pinch.zoom * this.touchDistance()) / this.pinch.dist));\n this.state.zoom = Math.round(z * 100) / 100;\n if (this.state.zoom <= 1) this.panX = this.panY = 0;\n this.applyZoom();\n return;\n }\n if (!this.drag || this.drag.id !== e.pointerId) return;\n const v = this.ctx.videoEl;\n const z = this.state.zoom;\n const maxX = ((z - 1) * v.clientWidth) / 2 || 1;\n const maxY = ((z - 1) * v.clientHeight) / 2 || 1;\n // Görüntü parmağı / imleci takip eder (sağa sürükle → görüntü sağa → sol taraf görünür).\n this.panX = clamp(this.drag.panX - (e.clientX - this.drag.x) / maxX);\n this.panY = clamp(this.drag.panY - (e.clientY - this.drag.y) / maxY);\n this.applyZoom();\n };\n\n private readonly onPointerUp = (e: PointerEvent): void => {\n this.touches.delete(e.pointerId);\n if (this.pinch && this.touches.size < 2) {\n this.pinch = null;\n this.syncQuickButtons();\n // İki parmakla serbest büyütme bitince olay / kayıt bir kez.\n this.ctx.hostEl.dispatchEvent(new CustomEvent('hp:accessibility', { detail: { ...this.state, changed: 'zoom' } }));\n }\n if (this.drag?.id === e.pointerId) {\n // Gerçekten sürüklendiyse ardından gelen tık oynat / duraklat sayılmasın (oynat butonu bütün alanı kaplayabiliyor).\n if (Math.hypot(e.clientX - this.drag.x, e.clientY - this.drag.y) > DRAG_THRESHOLD_PX) this.swallowNextClick();\n this.drag = null;\n }\n };\n\n private swallowNextClick(): void {\n const area = this.ctx.videoAreaEl;\n const swallow = (ev: Event): void => {\n ev.stopPropagation();\n ev.preventDefault();\n };\n area.addEventListener('click', swallow, { capture: true, once: true });\n // Tık hiç gelmezse (ör. dokunmatik) sonraki gerçek tık yutulmasın.\n setTimeout(() => area.removeEventListener('click', swallow, { capture: true }), 400);\n }\n\n private touchDistance(): number {\n const [a, b] = [...this.touches.values()];\n return a && b ? Math.hypot(a.x - b.x, a.y - b.y) || 1 : 1;\n }\n\n // ── Klavye ──\n\n private readonly onKeyDown = (e: KeyboardEvent): void => {\n if (e.defaultPrevented || e.ctrlKey || e.metaKey || e.altKey) return;\n if (this.shortcutsEl && e.key === 'Escape') {\n e.preventDefault();\n this.closeShortcuts();\n return;\n }\n if (e.key === '?' && this.options.shortcuts !== false) {\n e.preventDefault();\n if (this.shortcutsEl) this.closeShortcuts();\n else this.openShortcuts();\n return;\n }\n if (this.zoomLevels.length < 2) return;\n if (e.key === '+' || e.key === '=') {\n e.preventDefault();\n this.setZoom(this.zoomLevels.find((z) => z > this.state.zoom + 0.001) ?? this.state.zoom);\n } else if (e.key === '-' || e.key === '_') {\n e.preventDefault();\n this.setZoom([...this.zoomLevels].reverse().find((z) => z < this.state.zoom - 0.001) ?? 1);\n } else if (e.key === '0' && this.state.zoom > 1) {\n e.preventDefault();\n this.setZoom(1);\n } else if (e.shiftKey && this.state.zoom > 1 && e.key.startsWith('Arrow')) {\n // Shift + ok: yakınlaştırılmış görüntüde gezin (oklar tek başına sarma / ses olarak kalır).\n e.preventDefault();\n if (e.key === 'ArrowLeft') this.panX = clamp(this.panX - PAN_STEP);\n if (e.key === 'ArrowRight') this.panX = clamp(this.panX + PAN_STEP);\n if (e.key === 'ArrowUp') this.panY = clamp(this.panY - PAN_STEP);\n if (e.key === 'ArrowDown') this.panY = clamp(this.panY + PAN_STEP);\n this.applyZoom();\n }\n };\n\n // ── Kısayol paneli ──\n\n private openShortcuts(): void {\n if (this.shortcutsEl) return;\n const t = this.ctx.i18n;\n const el = document.createElement('div');\n el.className = 'hp-shortcuts';\n el.setAttribute('part', 'shortcuts');\n el.setAttribute('role', 'dialog');\n el.setAttribute('aria-modal', 'true');\n el.setAttribute('aria-labelledby', 'hp-shortcuts-title');\n\n const box = document.createElement('div');\n box.className = 'hp-shortcuts-box';\n const head = document.createElement('div');\n head.className = 'hp-shortcuts-head';\n const title = document.createElement('h2');\n title.id = 'hp-shortcuts-title';\n title.textContent = t.a11yShortcuts;\n const close = document.createElement('button');\n close.type = 'button';\n close.className = 'hp-shortcuts-close';\n close.setAttribute('aria-label', t.a11yClose);\n close.textContent = '✕';\n close.addEventListener('click', () => this.closeShortcuts());\n head.append(title, close);\n\n const rows: [string[], string][] = [\n [['Space', 'K'], t.a11yKeyPlay],\n [['←', '→', 'J', 'L'], t.a11yKeySeek(this.ctx.seekStep())],\n [['↑', '↓'], t.a11yKeyVolume],\n [['M'], t.a11yKeyMute],\n [['F'], t.a11yKeyFullscreen],\n ];\n if (this.zoomLevels.length > 1) {\n rows.push([['+', '−', '0'], t.a11yKeyZoom]);\n rows.push([['Shift', '+', '←↑↓→'], t.a11yKeyPan]);\n }\n rows.push([['?'], t.a11yKeyShortcuts]);\n\n const list = document.createElement('dl');\n list.className = 'hp-shortcuts-list';\n for (const [keys, desc] of rows) {\n const dt = document.createElement('dt');\n for (const k of keys) {\n if (k === '+' && keys[0] === 'Shift') {\n dt.append(' + ');\n continue;\n }\n const kbd = document.createElement('kbd');\n kbd.textContent = k;\n dt.appendChild(kbd);\n }\n const dd = document.createElement('dd');\n dd.textContent = desc;\n list.append(dt, dd);\n }\n box.append(head, list);\n el.appendChild(box);\n // Arka plana tıklama kapatır; panelin içindeki tıklama oynat/duraklat'a geçmez.\n el.addEventListener('click', (e) => {\n e.stopPropagation();\n if (e.target === el) this.closeShortcuts();\n });\n for (const ev of ['pointerdown', 'mousedown', 'mouseup', 'touchstart', 'touchend', 'dblclick'] as const) el.addEventListener(ev, (e) => e.stopPropagation());\n // Odak paneli terk etmesin (Tab tek butonda kalır).\n el.addEventListener('keydown', (e) => {\n if (e.key === 'Tab') {\n e.preventDefault();\n close.focus();\n }\n });\n this.ctx.videoAreaEl.appendChild(el);\n this.shortcutsEl = el;\n close.focus({ preventScroll: true });\n }\n\n private closeShortcuts(): void {\n if (!this.shortcutsEl) return;\n const hadFocus = this.shortcutsEl.contains((this.ctx.hostEl.shadowRoot ?? document).activeElement);\n this.shortcutsEl.remove();\n this.shortcutsEl = null;\n if (hadFocus) this.ctx.hostEl.focus({ preventScroll: true });\n }\n}\n\nfunction normalizeLevels(levels: number[]): number[] {\n const valid = levels.filter((n) => Number.isFinite(n) && n >= 1 && n <= 8);\n return [...new Set([1, ...valid])].sort((a, b) => a - b);\n}\n\nconst clamp = (n: number): number => Math.min(1, Math.max(-1, n));\nconst pct = (n: number): string => `${Math.round(n * 100)}%`;\n","import { Accessibility, type AccessibilityPlayerContext } from './Accessibility';\nimport type { AccessibilityOptions } from '../../types';\n\nexport function installAccessibility(ctx: AccessibilityPlayerContext, options: AccessibilityOptions): Accessibility {\n return new Accessibility(ctx, options);\n}\n\nexport { Accessibility };\nexport type { AccessibilityPlayerContext };\n"],"names":["SIMULATE","SHIFT","I","mul","a","b","r","i","j","daltonizeMatrix","kind","s","err","v","shifted","cache","colorBlindFilterUrl","url","m","n","svg","DEFAULT_ZOOM","DEFAULT_BOOST","ALL_FILTERS","STORAGE_KEY","PAN_STEP","SUBMENU_KEY","DRAG_THRESHOLD_PX","CONTROL_SELECTOR","CSS_FILTERS","body","QUICK_ICONS","Accessibility","ctx","options","__publicField","z","maxX","maxY","_a","e","target","max","clamp","normalizeLevels","f","area","btn","items","sub","label","value","children","pct","ok","key","title","t","specs","spec","src","source","gain","saved","filter","mono","boost","largeControls","swallow","ev","el","box","head","close","rows","list","keys","desc","dt","k","kbd","dd","hadFocus","levels","valid","installAccessibility"],"mappings":"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"}