@teamturing/react-native-tex 1.1.7 → 1.1.8

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.
@@ -149,25 +149,37 @@
149
149
  const onPhantomBoxPressed = (index) => {
150
150
  window.ReactNativeWebView.postMessage(JSON.stringify({ event: "phantom-box-pressed", index }));
151
151
  };
152
+
153
+ let debounceHandler = -1;
154
+ const debounce = (fn) => {
155
+ if(debounceHandler !== -1) clearTimeout(debounceHandler);
156
+ debounceHandler = setTimeout(() => {
157
+ fn();
158
+ debounceHandler = -1;
159
+ }, 500);
160
+ }
161
+
152
162
  let lastScrollHeight = 0;
153
163
  let lastScrollWidth = 0;
154
164
  let lastClientWidth = 0;
155
165
  const onDocumentResized = () => {
156
- const container = document.getElementById("container");
157
- if (container && Math.abs(lastScrollHeight - container.scrollHeight) +
158
- Math.abs(lastScrollWidth - container.scrollWidth) + Math.abs(lastClientWidth - container.clientWidth) >= 15) {
159
- lastScrollHeight = container.scrollHeight;
160
- lastScrollWidth = container.scrollWidth;
161
- lastClientWidth = container.clientWidth;
162
- window.ReactNativeWebView.postMessage(
163
- JSON.stringify({
164
- event: "set-layout",
165
- scrollHeight: container.scrollHeight,
166
- scrollWidth: container.scrollWidth,
167
- clientWidth: container.clientWidth
168
- })
169
- );
170
- }
166
+ debounce(() => {
167
+ const container = document.getElementById("container");
168
+ if (container && Math.abs(lastScrollHeight - container.scrollHeight) +
169
+ Math.abs(lastScrollWidth - container.scrollWidth) + Math.abs(lastClientWidth - container.clientWidth) >= 15) {
170
+ lastScrollHeight = container.scrollHeight;
171
+ lastScrollWidth = container.scrollWidth;
172
+ lastClientWidth = container.clientWidth;
173
+ window.ReactNativeWebView.postMessage(
174
+ JSON.stringify({
175
+ event: "set-layout",
176
+ scrollHeight: container.scrollHeight,
177
+ scrollWidth: container.scrollWidth,
178
+ clientWidth: container.clientWidth
179
+ })
180
+ );
181
+ }
182
+ });
171
183
  };
172
184
 
173
185
  const scrollToTop = () => {
@@ -161,25 +161,37 @@ const text = ({
161
161
  const onPhantomBoxPressed = (index) => {
162
162
  window.ReactNativeWebView.postMessage(JSON.stringify({ event: "phantom-box-pressed", index }));
163
163
  };
164
+
165
+ let debounceHandler = -1;
166
+ const debounce = (fn) => {
167
+ if(debounceHandler !== -1) clearTimeout(debounceHandler);
168
+ debounceHandler = setTimeout(() => {
169
+ fn();
170
+ debounceHandler = -1;
171
+ }, 500);
172
+ }
173
+
164
174
  let lastScrollHeight = 0;
165
175
  let lastScrollWidth = 0;
166
176
  let lastClientWidth = 0;
167
177
  const onDocumentResized = () => {
168
- const container = document.getElementById("container");
169
- if (container && Math.abs(lastScrollHeight - container.scrollHeight) +
170
- Math.abs(lastScrollWidth - container.scrollWidth) + Math.abs(lastClientWidth - container.clientWidth) >= 15) {
171
- lastScrollHeight = container.scrollHeight;
172
- lastScrollWidth = container.scrollWidth;
173
- lastClientWidth = container.clientWidth;
174
- window.ReactNativeWebView.postMessage(
175
- JSON.stringify({
176
- event: "set-layout",
177
- scrollHeight: container.scrollHeight,
178
- scrollWidth: container.scrollWidth,
179
- clientWidth: container.clientWidth
180
- })
181
- );
182
- }
178
+ debounce(() => {
179
+ const container = document.getElementById("container");
180
+ if (container && Math.abs(lastScrollHeight - container.scrollHeight) +
181
+ Math.abs(lastScrollWidth - container.scrollWidth) + Math.abs(lastClientWidth - container.clientWidth) >= 15) {
182
+ lastScrollHeight = container.scrollHeight;
183
+ lastScrollWidth = container.scrollWidth;
184
+ lastClientWidth = container.clientWidth;
185
+ window.ReactNativeWebView.postMessage(
186
+ JSON.stringify({
187
+ event: "set-layout",
188
+ scrollHeight: container.scrollHeight,
189
+ scrollWidth: container.scrollWidth,
190
+ clientWidth: container.clientWidth
191
+ })
192
+ );
193
+ }
194
+ });
183
195
  };
184
196
 
185
197
  const scrollToTop = () => {
@@ -1 +1 @@
1
- {"version":3,"names":["text","fontSize","String","raw","_default","exports","default"],"sourceRoot":"../../../src","sources":["html/LaTexHtmlText.ts"],"mappings":";;;;;;AAAA;AACA,MAAMA,IAAI,GAAGA,CAAC;EAAEC;AAA+B,CAAC,GAAG;EAAEA,QAAQ,EAAE;AAAG,CAAC,KAAKC,MAAM,CAACC,GAAG;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuBF,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAAA,IAAAG,QAAA,GAAAC,OAAA,CAAAC,OAAA,GACcN,IAAI","ignoreList":[]}
1
+ {"version":3,"names":["text","fontSize","String","raw","_default","exports","default"],"sourceRoot":"../../../src","sources":["html/LaTexHtmlText.ts"],"mappings":";;;;;;AAAA;AACA,MAAMA,IAAI,GAAGA,CAAC;EAAEC;AAA+B,CAAC,GAAG;EAAEA,QAAQ,EAAE;AAAG,CAAC,KAAKC,MAAM,CAACC,GAAG;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuBF,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAAA,IAAAG,QAAA,GAAAC,OAAA,CAAAC,OAAA,GACcN,IAAI","ignoreList":[]}
@@ -149,25 +149,37 @@
149
149
  const onPhantomBoxPressed = (index) => {
150
150
  window.ReactNativeWebView.postMessage(JSON.stringify({ event: "phantom-box-pressed", index }));
151
151
  };
152
+
153
+ let debounceHandler = -1;
154
+ const debounce = (fn) => {
155
+ if(debounceHandler !== -1) clearTimeout(debounceHandler);
156
+ debounceHandler = setTimeout(() => {
157
+ fn();
158
+ debounceHandler = -1;
159
+ }, 500);
160
+ }
161
+
152
162
  let lastScrollHeight = 0;
153
163
  let lastScrollWidth = 0;
154
164
  let lastClientWidth = 0;
155
165
  const onDocumentResized = () => {
156
- const container = document.getElementById("container");
157
- if (container && Math.abs(lastScrollHeight - container.scrollHeight) +
158
- Math.abs(lastScrollWidth - container.scrollWidth) + Math.abs(lastClientWidth - container.clientWidth) >= 15) {
159
- lastScrollHeight = container.scrollHeight;
160
- lastScrollWidth = container.scrollWidth;
161
- lastClientWidth = container.clientWidth;
162
- window.ReactNativeWebView.postMessage(
163
- JSON.stringify({
164
- event: "set-layout",
165
- scrollHeight: container.scrollHeight,
166
- scrollWidth: container.scrollWidth,
167
- clientWidth: container.clientWidth
168
- })
169
- );
170
- }
166
+ debounce(() => {
167
+ const container = document.getElementById("container");
168
+ if (container && Math.abs(lastScrollHeight - container.scrollHeight) +
169
+ Math.abs(lastScrollWidth - container.scrollWidth) + Math.abs(lastClientWidth - container.clientWidth) >= 15) {
170
+ lastScrollHeight = container.scrollHeight;
171
+ lastScrollWidth = container.scrollWidth;
172
+ lastClientWidth = container.clientWidth;
173
+ window.ReactNativeWebView.postMessage(
174
+ JSON.stringify({
175
+ event: "set-layout",
176
+ scrollHeight: container.scrollHeight,
177
+ scrollWidth: container.scrollWidth,
178
+ clientWidth: container.clientWidth
179
+ })
180
+ );
181
+ }
182
+ });
171
183
  };
172
184
 
173
185
  const scrollToTop = () => {
@@ -157,25 +157,37 @@ const text = ({
157
157
  const onPhantomBoxPressed = (index) => {
158
158
  window.ReactNativeWebView.postMessage(JSON.stringify({ event: "phantom-box-pressed", index }));
159
159
  };
160
+
161
+ let debounceHandler = -1;
162
+ const debounce = (fn) => {
163
+ if(debounceHandler !== -1) clearTimeout(debounceHandler);
164
+ debounceHandler = setTimeout(() => {
165
+ fn();
166
+ debounceHandler = -1;
167
+ }, 500);
168
+ }
169
+
160
170
  let lastScrollHeight = 0;
161
171
  let lastScrollWidth = 0;
162
172
  let lastClientWidth = 0;
163
173
  const onDocumentResized = () => {
164
- const container = document.getElementById("container");
165
- if (container && Math.abs(lastScrollHeight - container.scrollHeight) +
166
- Math.abs(lastScrollWidth - container.scrollWidth) + Math.abs(lastClientWidth - container.clientWidth) >= 15) {
167
- lastScrollHeight = container.scrollHeight;
168
- lastScrollWidth = container.scrollWidth;
169
- lastClientWidth = container.clientWidth;
170
- window.ReactNativeWebView.postMessage(
171
- JSON.stringify({
172
- event: "set-layout",
173
- scrollHeight: container.scrollHeight,
174
- scrollWidth: container.scrollWidth,
175
- clientWidth: container.clientWidth
176
- })
177
- );
178
- }
174
+ debounce(() => {
175
+ const container = document.getElementById("container");
176
+ if (container && Math.abs(lastScrollHeight - container.scrollHeight) +
177
+ Math.abs(lastScrollWidth - container.scrollWidth) + Math.abs(lastClientWidth - container.clientWidth) >= 15) {
178
+ lastScrollHeight = container.scrollHeight;
179
+ lastScrollWidth = container.scrollWidth;
180
+ lastClientWidth = container.clientWidth;
181
+ window.ReactNativeWebView.postMessage(
182
+ JSON.stringify({
183
+ event: "set-layout",
184
+ scrollHeight: container.scrollHeight,
185
+ scrollWidth: container.scrollWidth,
186
+ clientWidth: container.clientWidth
187
+ })
188
+ );
189
+ }
190
+ });
179
191
  };
180
192
 
181
193
  const scrollToTop = () => {
@@ -1 +1 @@
1
- {"version":3,"names":["text","fontSize","String","raw"],"sourceRoot":"../../../src","sources":["html/LaTexHtmlText.ts"],"mappings":";;AAAA;AACA,MAAMA,IAAI,GAAGA,CAAC;EAAEC;AAA+B,CAAC,GAAG;EAAEA,QAAQ,EAAE;AAAG,CAAC,KAAKC,MAAM,CAACC,GAAG;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuBF,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD,eAAeD,IAAI","ignoreList":[]}
1
+ {"version":3,"names":["text","fontSize","String","raw"],"sourceRoot":"../../../src","sources":["html/LaTexHtmlText.ts"],"mappings":";;AAAA;AACA,MAAMA,IAAI,GAAGA,CAAC;EAAEC;AAA+B,CAAC,GAAG;EAAEA,QAAQ,EAAE;AAAG,CAAC,KAAKC,MAAM,CAACC,GAAG;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuBF,QAAQ;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD,eAAeD,IAAI","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"LaTexHtmlText.d.ts","sourceRoot":"","sources":["../../../../../src/html/LaTexHtmlText.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,IAAI;cAA8B,MAAM;YA2e7C,CAAA;AACD,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"LaTexHtmlText.d.ts","sourceRoot":"","sources":["../../../../../src/html/LaTexHtmlText.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,IAAI;cAA8B,MAAM;YAuf7C,CAAA;AACD,eAAe,IAAI,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"LaTexHtmlText.d.ts","sourceRoot":"","sources":["../../../../../src/html/LaTexHtmlText.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,IAAI;cAA8B,MAAM;YA2e7C,CAAA;AACD,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"LaTexHtmlText.d.ts","sourceRoot":"","sources":["../../../../../src/html/LaTexHtmlText.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,IAAI;cAA8B,MAAM;YAuf7C,CAAA;AACD,eAAe,IAAI,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@teamturing/react-native-tex",
3
- "version": "1.1.7",
3
+ "version": "1.1.8",
4
4
  "description": "React Native Tex Module for Team Turing",
5
5
  "scripts": {
6
6
  "check:type": "tsc",
@@ -129,5 +129,5 @@
129
129
  "bugs": {
130
130
  "url": "https://github.com/weareteamturing/bombe/issues"
131
131
  },
132
- "gitHead": "d0c9fb4a0fefdfa965aadd3074943a0b7ebbc2ad"
132
+ "gitHead": "1172ed7d692691c7e10457469733fb26766a3abc"
133
133
  }
@@ -149,25 +149,37 @@
149
149
  const onPhantomBoxPressed = (index) => {
150
150
  window.ReactNativeWebView.postMessage(JSON.stringify({ event: "phantom-box-pressed", index }));
151
151
  };
152
+
153
+ let debounceHandler = -1;
154
+ const debounce = (fn) => {
155
+ if(debounceHandler !== -1) clearTimeout(debounceHandler);
156
+ debounceHandler = setTimeout(() => {
157
+ fn();
158
+ debounceHandler = -1;
159
+ }, 500);
160
+ }
161
+
152
162
  let lastScrollHeight = 0;
153
163
  let lastScrollWidth = 0;
154
164
  let lastClientWidth = 0;
155
165
  const onDocumentResized = () => {
156
- const container = document.getElementById("container");
157
- if (container && Math.abs(lastScrollHeight - container.scrollHeight) +
158
- Math.abs(lastScrollWidth - container.scrollWidth) + Math.abs(lastClientWidth - container.clientWidth) >= 15) {
159
- lastScrollHeight = container.scrollHeight;
160
- lastScrollWidth = container.scrollWidth;
161
- lastClientWidth = container.clientWidth;
162
- window.ReactNativeWebView.postMessage(
163
- JSON.stringify({
164
- event: "set-layout",
165
- scrollHeight: container.scrollHeight,
166
- scrollWidth: container.scrollWidth,
167
- clientWidth: container.clientWidth
168
- })
169
- );
170
- }
166
+ debounce(() => {
167
+ const container = document.getElementById("container");
168
+ if (container && Math.abs(lastScrollHeight - container.scrollHeight) +
169
+ Math.abs(lastScrollWidth - container.scrollWidth) + Math.abs(lastClientWidth - container.clientWidth) >= 15) {
170
+ lastScrollHeight = container.scrollHeight;
171
+ lastScrollWidth = container.scrollWidth;
172
+ lastClientWidth = container.clientWidth;
173
+ window.ReactNativeWebView.postMessage(
174
+ JSON.stringify({
175
+ event: "set-layout",
176
+ scrollHeight: container.scrollHeight,
177
+ scrollWidth: container.scrollWidth,
178
+ clientWidth: container.clientWidth
179
+ })
180
+ );
181
+ }
182
+ });
171
183
  };
172
184
 
173
185
  const scrollToTop = () => {
@@ -151,25 +151,37 @@ const text = ({ fontSize }: { fontSize: number } = { fontSize: 13 }) => String.r
151
151
  const onPhantomBoxPressed = (index) => {
152
152
  window.ReactNativeWebView.postMessage(JSON.stringify({ event: "phantom-box-pressed", index }));
153
153
  };
154
+
155
+ let debounceHandler = -1;
156
+ const debounce = (fn) => {
157
+ if(debounceHandler !== -1) clearTimeout(debounceHandler);
158
+ debounceHandler = setTimeout(() => {
159
+ fn();
160
+ debounceHandler = -1;
161
+ }, 500);
162
+ }
163
+
154
164
  let lastScrollHeight = 0;
155
165
  let lastScrollWidth = 0;
156
166
  let lastClientWidth = 0;
157
167
  const onDocumentResized = () => {
158
- const container = document.getElementById("container");
159
- if (container && Math.abs(lastScrollHeight - container.scrollHeight) +
160
- Math.abs(lastScrollWidth - container.scrollWidth) + Math.abs(lastClientWidth - container.clientWidth) >= 15) {
161
- lastScrollHeight = container.scrollHeight;
162
- lastScrollWidth = container.scrollWidth;
163
- lastClientWidth = container.clientWidth;
164
- window.ReactNativeWebView.postMessage(
165
- JSON.stringify({
166
- event: "set-layout",
167
- scrollHeight: container.scrollHeight,
168
- scrollWidth: container.scrollWidth,
169
- clientWidth: container.clientWidth
170
- })
171
- );
172
- }
168
+ debounce(() => {
169
+ const container = document.getElementById("container");
170
+ if (container && Math.abs(lastScrollHeight - container.scrollHeight) +
171
+ Math.abs(lastScrollWidth - container.scrollWidth) + Math.abs(lastClientWidth - container.clientWidth) >= 15) {
172
+ lastScrollHeight = container.scrollHeight;
173
+ lastScrollWidth = container.scrollWidth;
174
+ lastClientWidth = container.clientWidth;
175
+ window.ReactNativeWebView.postMessage(
176
+ JSON.stringify({
177
+ event: "set-layout",
178
+ scrollHeight: container.scrollHeight,
179
+ scrollWidth: container.scrollWidth,
180
+ clientWidth: container.clientWidth
181
+ })
182
+ );
183
+ }
184
+ });
173
185
  };
174
186
 
175
187
  const scrollToTop = () => {