# Generated by tools/bundle.py from plugin.json + src/ — do not edit; edit the sources. __id__ = 'telegraph_media_forward' __name__ = 'Telegraph Media Forward' __description__ = 'Adds a Forward action to media opened from telegra.ph pages: downloads the media and re-sends it from your account with a link back to the article.' __author__ = '@lyuksovannyy' __version__ = '1.0.0' __icon__ = 'exteraPlugins/1' __app_version__ = '>=12.5.1' __sdk_version__ = '>=1.4.4.3' _BUNDLE_BLOB = ( "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" "JOqlHa0shgduj5cmU3cHne/ezz///H8J2Xde" ) import base64 as _b64, builtins as _bi, json as _j, linecache as _lc, types as _t, zlib as _z _BUNDLE = _j.loads(_z.decompress(_b64.b64decode(_BUNDLE_BLOB)).decode("utf-8")) _MODS = _BUNDLE["modules"] _LOADED = {} _ROOTS = {n.partition(".")[0] for n in _MODS} _REAL_IMPORT = _bi.__import__ def _bundle_register_source(info): lines = info["src"].splitlines(True) _lc.cache[info["file"]] = (len(info["src"]), None, lines, info["file"]) def _bundle_load(name): mod = _LOADED.get(name) if mod is not None: return mod info = _MODS.get(name) if info is None: raise ImportError("no bundled module named %r" % name) parent = name.rpartition(".")[0] if parent: _bundle_load(parent) mod = _t.ModuleType(name) mod.__file__ = info["file"] mod.__package__ = name if info["pkg"] else parent if info["pkg"]: mod.__path__ = [] builtins_ns = dict(vars(_bi)) builtins_ns["__import__"] = _bundle_import mod.__dict__["__builtins__"] = builtins_ns _LOADED[name] = mod _bundle_register_source(info) try: exec(compile(info["src"], info["file"], "exec"), mod.__dict__) except BaseException: _LOADED.pop(name, None) raise if parent: setattr(_LOADED[parent], name.rpartition(".")[2], mod) return mod def _bundle_import(name, globals=None, locals=None, fromlist=(), level=0): if level: pkg = (globals or {}).get("__package__") or "" parts = pkg.split(".") if pkg else [] if level > 1: parts = parts[: 1 - level] if not parts: return _REAL_IMPORT(name, globals, locals, fromlist, level) full = ".".join(parts) + ("." + name if name else "") else: full = name if full.partition(".")[0] not in _ROOTS or full not in _MODS: return _REAL_IMPORT(name, globals, locals, fromlist, level) mod = _bundle_load(full) if not fromlist: return mod if level else _bundle_load(full.partition(".")[0]) for item in fromlist: if item != "*" and not hasattr(mod, item) and full + "." + item in _MODS: _bundle_load(full + "." + item) return mod _ENTRY = _MODS[_BUNDLE["entry"]] _bundle_register_source(_ENTRY) _bundle_builtins = dict(vars(_bi)) _bundle_builtins["__import__"] = _bundle_import globals()["__builtins__"] = _bundle_builtins exec(compile(_ENTRY["src"], _ENTRY["file"], "exec"), globals())