diff --git a/pyrogram/client/style/html.py b/pyrogram/client/style/html.py
index 9376f793..1748fa58 100644
--- a/pyrogram/client/style/html.py
+++ b/pyrogram/client/style/html.py
@@ -20,11 +20,11 @@ import html
import re
from collections import OrderedDict
from html.parser import HTMLParser
-from struct import unpack
import pyrogram
from pyrogram.api import types
from pyrogram.errors import PeerIdInvalid
+from . import utils
class Parser(HTMLParser):
@@ -111,28 +111,11 @@ class Parser(HTMLParser):
class HTML:
- # SMP = Supplementary Multilingual Plane: https://en.wikipedia.org/wiki/Plane_(Unicode)#Overview
- SMP_RE = re.compile(r"[\U00010000-\U0010FFFF]")
-
def __init__(self, client: "pyrogram.BaseClient" = None):
self.client = client
- @staticmethod
- def add_surrogates(text):
- # Replace each SMP code point with a surrogate pair
- return HTML.SMP_RE.sub(
- lambda match: # Split SMP in two surrogates
- "".join(chr(i) for i in unpack("
+#
+# This file is part of Pyrogram.
+#
+# Pyrogram is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published
+# by the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# Pyrogram is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with Pyrogram. If not, see .
+
+import re
+from struct import unpack
+
+# SMP = Supplementary Multilingual Plane: https://en.wikipedia.org/wiki/Plane_(Unicode)#Overview
+SMP_RE = re.compile(r"[\U00010000-\U0010FFFF]")
+
+
+def add_surrogates(text):
+ # Replace each SMP code point with a surrogate pair
+ return SMP_RE.sub(
+ lambda match: # Split SMP in two surrogates
+ "".join(chr(i) for i in unpack("