GLEGram 12.5 — Initial public release

Based on Swiftgram 12.5 (Telegram iOS 12.5).
All GLEGram features ported and organized in GLEGram/ folder.

Features: Ghost Mode, Saved Deleted Messages, Content Protection Bypass,
Font Replacement, Fake Profile, Chat Export, Plugin System, and more.

See CHANGELOG_12.5.md for full details.
This commit is contained in:
Leeksov
2026-04-06 09:48:12 +03:00
commit 4647310322
39685 changed files with 11052678 additions and 0 deletions
@@ -0,0 +1,85 @@
export class TextTrackStub extends EventTarget {
constructor(kind = '', label = '', language = '') {
super();
this.kind = kind;
this.label = label;
this.language = language;
this.mode = 'disabled'; // 'disabled', 'hidden', or 'showing'
this.cues = new TextTrackCueListStub();
this.activeCues = new TextTrackCueListStub();
}
addCue(cue) {
this.cues._add(cue);
}
removeCue(cue) {
this.cues._remove(cue);
}
}
export class TextTrackCueListStub {
constructor() {
this._cues = [];
}
get length() {
return this._cues.length;
}
item(index) {
return this._cues[index];
}
getCueById(id) {
return this._cues.find(cue => cue.id === id) || null;
}
_add(cue) {
this._cues.push(cue);
}
_remove(cue) {
const index = this._cues.indexOf(cue);
if (index !== -1) {
this._cues.splice(index, 1);
}
}
[Symbol.iterator]() {
return this._cues[Symbol.iterator]();
}
}
export class TextTrackListStub extends EventTarget {
constructor() {
super();
this._tracks = [];
}
get length() {
return this._tracks.length;
}
item(index) {
return this._tracks[index];
}
_add(track) {
this._tracks.push(track);
this.dispatchEvent(new Event('addtrack'));
}
_remove(track) {
const index = this._tracks.indexOf(track);
if (index !== -1) {
this._tracks.splice(index, 1);
this.dispatchEvent(new Event('removetrack'));
}
}
[Symbol.iterator]() {
return this._tracks[Symbol.iterator]();
}
}