smol-string 1.0.2 → 1.0.4

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.
package/README.md CHANGED
@@ -1,22 +1,22 @@
1
- # smol-string
2
-
3
- `smol-string` is a compression library designed for use with browsers' `localStorage` (and `sessionStorage`). It serves as a faster alternative to [`lz-string`](https://github.com/pieroxy/lz-string).
4
-
5
- For more information, check the [GitHub Repository](https://github.com/Senryoku/smol-string).
6
-
7
- ## Installation
8
-
9
- ```
10
- npm install -S smol-string
11
- ```
12
-
13
- ## Basic Usage
14
-
15
- ```ts
16
- import { compress, decompress } from "smol-string";
17
-
18
- const input = "Any JS String";
19
-
20
- const compressed = compress(input);
21
- const decompressed = decompress(compressed);
22
- ```
1
+ # smol-string
2
+
3
+ `smol-string` is a compression library designed for use with browsers' `localStorage` (and `sessionStorage`). It serves as a faster alternative to [`lz-string`](https://github.com/pieroxy/lz-string).
4
+
5
+ For more information, check the [GitHub Repository](https://github.com/Senryoku/smol-string).
6
+
7
+ ## Installation
8
+
9
+ ```
10
+ npm install -S smol-string
11
+ ```
12
+
13
+ ## Basic Usage
14
+
15
+ ```ts
16
+ import { compress, decompress } from "smol-string";
17
+
18
+ const input = "Any JS String";
19
+
20
+ const compressed = compress(input);
21
+ const decompressed = decompress(compressed);
22
+ ```
@@ -1,46 +1,141 @@
1
- const l = "KGFzeW5jKCk9PntmdW5jdGlvbiBlKEEsQil7Y29uc3QgST1uZXcgVGV4dEVuY29kZXIoKS5lbmNvZGUoQSksZz1CLmFsbG9jVWludDgoSS5sZW5ndGgpO3JldHVybiBuZXcgVWludDhBcnJheShCLm1lbW9yeS5idWZmZXIsZyxJLmxlbmd0aCkuc2V0KEkpLHtwdHI6ZyxsZW5ndGg6SS5sZW5ndGh9fWZ1bmN0aW9uIEYoQSl7Y29uc3QgQj1uZXcgQXJyYXkoQS5sZW5ndGgpO2ZvcihsZXQgST0wO0k8QS5sZW5ndGg7SSsrKUJbSV09U3RyaW5nLmZyb21DaGFyQ29kZShBW0ldKTtyZXR1cm4gQi5qb2luKCIiKX1mdW5jdGlvbiB0KEEsQil7Y29uc3QgST1uZXcgVWludDMyQXJyYXkoQS5idWZmZXIuc2xpY2UoQixCKzgpKSxnPUkuYXQoMCksUT1JLmF0KDEpO3JldHVybntzdGFydDpCLWcsZW5kOkIsY2FwYWNpdHk6UX19dmFyIHI9YXN5bmMoQT17fSxCKT0+e2xldCBJO2lmKEIuc3RhcnRzV2l0aCgiZGF0YToiKSl7Y29uc3QgZz1CLnJlcGxhY2UoL15kYXRhOi4qP2Jhc2U2NCwvLCIiKTtsZXQgUTtpZih0eXBlb2YgQnVmZmVyPT0iZnVuY3Rpb24iJiZ0eXBlb2YgQnVmZmVyLmZyb209PSJmdW5jdGlvbiIpUT1CdWZmZXIuZnJvbShnLCJiYXNlNjQiKTtlbHNlIGlmKHR5cGVvZiBhdG9iPT0iZnVuY3Rpb24iKXtjb25zdCBFPWF0b2IoZyk7UT1uZXcgVWludDhBcnJheShFLmxlbmd0aCk7Zm9yKGxldCBpPTA7aTxFLmxlbmd0aDtpKyspUVtpXT1FLmNoYXJDb2RlQXQoaSl9ZWxzZSB0aHJvdyBuZXcgRXJyb3IoIkZhaWxlZCB0byBkZWNvZGUgYmFzZTY0LWVuY29kZWQgZGF0YSBVUkwsIEJ1ZmZlciBhbmQgYXRvYiBhcmUgbm90IHN1cHBvcnRlZCIpO0k9YXdhaXQgV2ViQXNzZW1ibHkuaW5zdGFudGlhdGUoUSxBKX1lbHNle2NvbnN0IGc9YXdhaXQgZmV0Y2goQiksUT1nLmhlYWRlcnMuZ2V0KCJDb250ZW50LVR5cGUiKXx8IiI7aWYoImluc3RhbnRpYXRlU3RyZWFtaW5nImluIFdlYkFzc2VtYmx5JiZRLnN0YXJ0c1dpdGgoImFwcGxpY2F0aW9uL3dhc20iKSlJPWF3YWl0IFdlYkFzc2VtYmx5Lmluc3RhbnRpYXRlU3RyZWFtaW5nKGcsQSk7ZWxzZXtjb25zdCBFPWF3YWl0IGcuYXJyYXlCdWZmZXIoKTtJPWF3YWl0IFdlYkFzc2VtYmx5Lmluc3RhbnRpYXRlKEUsQSl9fXJldHVybiBJLmluc3RhbmNlfSxmPUE9PnIoQSwiZGF0YTphcHBsaWNhdGlvbi93YXNtO2Jhc2U2NCxBR0Z6YlFFQUFBQUJWZzFnQkg5L2YzOEJmMkFGZjM5L2YzOEFZQUovZndGL1lBTi9mMzhBWUFKL2Z3QmdCbjkvZjM5L2Z3Ri9ZQUYvQUdBRWYzOS9md0JnQVg4QmYyQUNmMzhCZm1BRGYzOS9BWDlnQW41K0FYNWdCSDkvZm40QUF4OGVCZ1FIQ1FBRUFnSURBZ0lHQUFBREF3SUlBd2dFQ2djRUF3QUZBUXNNQkFVQmNBRUVCQVVEQVFBUkJna0Jmd0ZCZ0lEQUFBc0hSQVlHYldWdGIzSjVBZ0FJWTI5dGNISmxjM01BQmdwa1pXTnZiWEJ5WlhOekFBd0tZV3hzYjJOVmFXNTBPQUFSQzJGc2JHOWpWV2x1ZERFMkFCTUVabkpsWlFBVUNRa0JBRUVCQ3dNWkdoc01BUU1LN2tJZUN3QWdBQ0FBUVF4cUVBRUxYZ0lDZndGK0lBQW9BZ0FpQWdSQUlBSkJER3NpQWtFSWFpZ0NBRUVOYkVFUGFrRjhjU0lEQkVBZ0FTa0NBQ0lFcHlBQ1FhclZxdFY2SUFNYklBTkJBa0VBSUFSQ0lJaW5LQUlJRVFFQUN5QUFRUUEyQWdnZ0FFRUFOZ0lBQ3d1N0FnSUlmd0YrSXdCQkVHc2lCQ1FBSUFFb0FnQWhCVUgwZ01BQUlRZ0NRQ0FCS0FJRVJRMEFJQUlnQXhBRElRd2dCVUVJYXlFSkFuOGdCVVVFUUVGL0RBRUxJQVZCQkdzb0FnQWlCa0VCYXdzaUNpQU1wM0VoQVNBTVFqbUlweUVMQTBBZ0FTQUZhaXdBQUNJSFJRMEJJQVpGRFFFQ1FDQUhRUUJPRFFBZ0N5QUhRZjhBY1VjTkFDQUNJQU1nQ1NnQ0FDQUJRUU4wYWlJSEtBSUFJQWNvQWdRUUJFRUJjVVVOQUNBRVFRRTZBQXdnQkNBQk5nSUlJQVJCQ0dvaENBd0NDeUFHUVFGcklRWWdBVUVCYWlBS2NTRUJEQUFMQUFzZ0FBSitJQWd0QUFSRkJFQkNBQ0VNUWdBTUFRc2dCQ0FGUVF4cktBSUFJQWdvQWdCQkFuUnFJZ0ZCQW1vdEFBQkJEM0U2QUFJZ0JDQUJMd0VBT3dFQVFvQ0FnSUFRSVF3Z0JETUJBQ0FFTVFBQ1FoQ0doQXNnRElRM0FnQWdCRUVRYWlRQUMrSUtBZ3QrQVg4akFFRkFhaUlOSkFBZ0FhMGhBd0orSUFGQklFMEVRQ0FCUVJGSkJFQWdBVUVJVHdSQUlBTkNBWVpDc2YrK2c4MjRwWS9sQUgwaUFpQUFJQUZxUVFocktRQUFJZ1FnQUNrQUFFS3gvNzZEemJpbGorVUFmU0lGUWllSmZINGhBeUFDSUFJZ0F5QUVRaHVKSUFKK0lBVjhoU0FDZmlJQ0lBTWdBa0l2aUlXRmZpSUNJQUpDTDRpRmZnd0RDeUFCUVFSUEJFQWdBMElCaGtLeC83NkR6YmlsaitVQWZTSUNJQUFnQVdwQkJHczFBQUFpQkNBQU5RQUFRZ09HSUFOOGhYNGhBeUFDSUFOQ0w0Z2dCSVVnQTRVZ0FuNGlBaUFDUWkrSWhYNE1Bd3RDejREQi9MTEgydkNhZnlBQlJRMENHaUFBSUFGcVFRRnJMUUFBUVFKMElBRnFyVUtuNHF5K3lZdnkwa04rSUFBeEFBQWdBQ0FCUVFGMmFqRUFBRUlJaG9SQ3o0REIvTExIMnZDYWYzNkZJZ0lnQWtJdmlJVkN6NERCL0xMSDJ2Q2FmMzRNQWdzZ0EwSUJoa0t4Lzc2RHpiaWxqK1VBZlNJQ0lBQWdBV29pQVVFSWF5a0FBSDRpQkNBQUtRQUFRdlBrNC9UN3phM0p0SDkrSWdVZ0FDa0FDQ0lHUXJIL3ZvUE51S1dQNVFCOVFpNkpmSHdoQXlBQ0lBSWdBeUFFUWlLSklBVWdCbnhDRllsOElBRkJFR3NwQUFCQ3o0REIvTExIMnZDYWYzNThoU0FDZmlJQ0lBTWdBa0l2aUlXRmZpSUNJQUpDTDRpRmZnd0JDeUFCUWNFQVR3UkFJQUFnQVdvaUFVRW9heWtBQUNFSElBRkJPR3NwQUFBaEJDQUJRUkJyS1FBQUlRZ2dEU0FCUVVCcUlBTWdBVUV3YXlrQUFDQURmQ0FCUVJocktRQUFFQndpQWhBZElBMHBBd2doQlNBTktRTUFJUVlnRFVFUWFpQUJRU0JySUFRZ0NId2lCRUtObTV5TGhMTFN0c3NBZlNBSEVCMUNBQ0FEUWdGOVFrQ0RmU0VMSUFBcEFBQWdCMEx6NU9QMCs4MnR5YlIvZm53aENTQU5LUU1ZSVFjZ0RTa0RFQ0VJQTBBZ0FDa0FNQ0VNSUFBcEFDZ2hDaUFOUVNCcUlBQWdCVUx6NU9QMCs4MnR5YlIvZmlBQUtRQUlJQVFnQm53Z0NYeDhRaHVKUXZQazQvVDd6YTNKdEg5K0lBZUZJZ01nQ0h3UUhTQUdJQXA4SVFvZ0JDQUZmQ0VFSUEwcEF5Z2hCU0FOS1FNZ0lRWWdEVUV3YWlBQVFTQnFJQUlnQ0h4Q0g0bEM4K1RqOVB2TnJjbTBmMzRpQ1NBSGZDQUtJQVFnREh4Q0ZvbEM4K1RqOVB2TnJjbTBmMzU4SWdRZ0FDa0FFSHdRSFNBQVFVQnJJUUFnRFNrRE9DRUhJQTBwQXpBaENDQURJUUlnQzBKQWZTSUxRZ0JTRFFBTElBWWdDQkFjSUFSQ0w0Z2dCSVZDOCtUajlQdk5yY20wZjM0Z0FueDhJQVVnQnhBY0lBbDhFQndNQVFzZ0EwSUJoa0t4Lzc2RHpiaWxqK1VBZlNJRElBQWdBV29pQVVFUWF5a0FBSDRoQkNBQUtRQVlRZ2wrSWdJZ0FDa0FFRUxQZ01IOHNzZmE4SnAvZm53aUJ5QUJRUmhyS1FBQUlnVjhJUVlnQWlBQlFTQnJLUUFBSWdnZ0FVRUlheWtBQUNJSklBQXBBQUJDejREQi9MTEgydkNhZjM1OElndUZmRUlCZkNJTUlBQXBBQWdpQ2tJaWlTQUZmRUlKZmlBTFFoV0pmSHdnQTM0aEFpQUVJQWg4SUFZZ0Nud2dCMElXaVNBRmZDSUZJQVlnQ1h4OElBUWdESHdnQWtJNGhpQUNRb0QrQTROQ0tJYUVJQUpDZ0lEOEI0TkNHSVlnQWtLQWdJRDRENE5DQ0lhRWhDQUNRZ2lJUW9DQWdQZ1BneUFDUWhpSVFvQ0EvQWVEaENBQ1FpaUlRb0QrQTRNZ0FrSTRpSVNFaEh3Z0EzNGlBa0k0aGlBQ1FvRCtBNE5DS0lhRUlBSkNnSUQ4QjROQ0dJWWdBa0tBZ0lENEQ0TkNDSWFFaENBQ1FnaUlRb0NBZ1BnUGd5QUNRaGlJUW9DQS9BZURoQ0FDUWlpSVFvRCtBNE1nQWtJNGlJU0VoSHdnQTM0aUFrSTRoaUFDUW9EK0E0TkNLSWFFSUFKQ2dJRDhCNE5DR0lZZ0FrS0FnSUQ0RDROQ0NJYUVoQ0FDUWdpSVFvQ0FnUGdQZ3lBQ1FoaUlRb0NBL0FlRGhDQUNRaWlJUW9EK0E0TWdBa0k0aUlTRWhId2dBMzU4SVFJZ0FrSXZpQ0FDaFNBRGZpQUZmQXNnRFVGQWF5UUFDNVlCQVFWL0FrQWdBU0FEUncwQUlBRkJBblpCQVdvaEJTQUNJUU1nQUNFRUEwQWdCVUVCYXlJRkJFQWdBeWdBQUNBRUtBQUFJQU5CQkdvaEF5QUVRUVJxSVFSR0RRRU1BZ3NMSUFGQkEzRWhBeUFBSUFGQmZIRWlBR29oQkNBQUlBSnFJUVVEUUNBRFJTSUFJUVlnQUEwQklBTkJBV3NoQXlBRkxRQUFJQVF0QUFBZ0JFRUJhaUVFSUFWQkFXb2hCVVlOQUFzTElBWUxud0lCQTM4Q1FDQUFMUUFjSWdKQkZFOE5BQ0FBS0FJWVFZQUNha0YvSUFKMFFYOXpTUTBBSUFBZ0FrRUJhaUlDT2dBY0N5QUFBbjhnQWtIL0FYRkJ3QUFnQUMwQUhTSURheUlFUWY4QmNVMEVRQ0FBS0FJQUlBQW9BZ1JCQTNScVFRaHJJZ1FnQkNrREFDQUJyVUwvL3orRFFRQWdBaUFEYW10QlAzR3Rob1EzQXdBZ0FDMEFIQ0FBTFFBZGFnd0JDeUFEUWNBQVJ3UkFJQUFvQWdBZ0FDZ0NCRUVEZEdwQkNHc2lBeUFES1FNQUlBRkIvLzgvY1NBQ0lBUnJkcTJFTndNQUlBQXRBQndoQWdzZ0FDQUFLQUlFSWdOQkFXbzJBZ1FnQUNnQ0FDQURRUU4wYWlBQnJVTC8veitESUFRZ0FtdEJQM0d0aGpjREFDQUFMUUFjSUFSckN6b0FIU0FBSUFBb0FoUkJBV28yQWhRZ0FDQUFLQUlZUVFGcU5nSVlDL1VSQXc1L0JYMENmaU1BUWZBRmF5SUNKQUFDUUFKQUFrQWdBa0hZQkdvQ2Z3SkFBa0FnQVVVRVFDQUNRUWs3QWNRRklBSkNBRGNDdkFVZ0FrS3ExYXJWQ2pjQ3FBVWdBa0VBTmdLd0JTQUNRWkNBd0FBcEF3QTNBclFGSUFKQnFBVnFJZ1ZCQVJBSFFmLy9BM0VOQVNBQ0tBS29CU0FDS0FLc0JTSUFRUU4wYWtJQU53TUFJQUpCSUdvaUEwRUlhaUFGUVFocUtRSUFOd01BSUFOQkVHb2dCVUVRYWlrQ0FEY0RBQ0FEUVJocUlBVkJHR29wQWdBM0F3QWdBaUFBUVFGcU5nS3NCU0FDSUFJcEFxZ0ZOd01nREFVTElBSkJ5QUJxUVFBMkFnQWdBa0lBTndOQUlBSkJrSURBQUNrREFDSVdOd0pNSUFKQkFEWUNyQVVnQWlBV053UElCVUVJUWdGQklFSC8vejhnQVNBQlFmLy9QMDhiUWVRQWJFSFFBRzVuYTYyR3B5SURJQU5CQ0UwYklnbEJEMm9oQlNBQ1FkQUZhaUFDUWNnRmFpQUZJQWxCQTNScUlnTWdDVUVDZEdwQmZIRVFDQUpBSUFJcEE5QUZJaFZDZ0lDQWdQRC9QNE5DQUZJTkFDQUNRY3dBYWlFS0lCV25JZ1lnQ1RZQ0NDQUdJQVlnQlVGOGNXbzJBZ1FnQmlBR0lBTkJmSEZxTmdJQUlBSWdCa0VNYWlJRE5nS29CU0FKQkVBZ0EwRUFJQW44Q3dBTElBSkJxQVZxSWdoQkNHb2lCeUFKUWRBQWJFSGtBRzRpQmpZQ0FDQUNRY2dBYWlJRktBSUFJUU1nQlNBR05nSUFJQWNnQXpZQ0FDQUNRUUEyQWtRZ0Fpa0RRQ0VWSUFJZ0Fpa0RxQVUzQTBBZ0FpQVZOd09vQlNBSUlBb1FBUU5BSUFSQmdBUkhCRUFnQWtIWUFHb2dCR3BCQVRzQkFDQUVRUUpxSVFRTUFRc0xJQUlnRmpjQ3RBVWdBa0VBTmdLd0JTQUNRcXJWcXRVS053S29CU0FDUWFnRmFrRVVBbjhDUUFKQUlBR3pRd0FBZ0QrU0loRzhJZ2RCZ0lDQUJFZ0VRRU1BQU1CL1F3QUFnUDhnQjBILy8vLy9CM0VpQXhzaEVDQUhRUUJJRFFJZ0EwVU5BaUFSUXdBQUFFeVV2Q0VIUWVoK0lRWU1BUXNnRVNFUUlBZEIvLy8vK3dkTERRRkJnWDhoQmtNQUFBQUFJUkFnQjBHQWdJRDhBMFlOQVFzZ0IwR045cXNDYWlJRFFmLy8vd054UWZPSjFQa0RhcjVEQUFDQXY1SWlFU0FSUXdBQUFEK1VsQ0VTSUJFZ0VVTUFBQUJBa3BVaUZDQVVsQ0lRSUJDVUlSTWdFU0FSSUJLVHZFR0FZSEcrSWhHVElCS1RJQlFnRWlBUUlCTkQ3dW1SUHBSRHFxb3FQNUtVSUJNZ0UwTW1ubmcrbEVNVHpzdytrcFNTa3BTU0lSQWdFVU1Bc0xnL2xDQVFRd0N3dUQrVUlCQWdFWkpEMUpvNHVaU1NraUFHSUFOQkYzWnFzcEloRUFzZ0VFTUFBSUJQWFNBUVF3QUFBQUJnY1FSQUlCQ3BEQUVMUVFBTElnTWdBMEVVVHhzZ0FXeEJRR3RCQm5aQkFXb1FDVUgvL3dOeERRQWdBaWdDc0FVaEJpQUNLUUswQlNFVklBSW9BcWdGSWdNZ0FpZ0NyQVVpQlVFRGRHcENBRGNEQUNBQ1FRazdBZlFFSUFKQ0FEY0M3QVFnQWlBVk53TGtCQ0FDSUFZMkF1QUVJQUlnQXpZQzJBUWdBaUFGUVFGcU5nTGNCRUdBQWlFRkEwQkJBU0VFSUFFZ0RHc2lDaUFDUWRnQWFpQUFJQXhxSWdZdEFBQWlBMEVCZEdvdkFRQWlCeUFISUFwTEd5RUpBMEFnQkVFQmFpQUpTUVJBSUFKQitBUnFJQUpCUUdzZ0JpQUpJQVJyUVFGMklBUnFJZ2dRQWlBSklBaEJBV3NnQWkwQS9BUWlCeHNoQ1NBSUlBUWdCeHNoQkNBQ0x3SDRCQ0FDTFFENkJFRVFkSElnQXlBSEd5RUREQUVMQ3lBQ1FkZ0VhaUFFSUFsSkJFQWdBa0dBQldvZ0FrRkFheUFHSUFrUUFpQUpJQVFnQWkwQWhBVWlCeHNoQkNBQ0x3R0FCU0FDTFFDQ0JVRVFkSElnQXlBSEd5RURDeUFERUFVZ0JDQU1haUVNQWtBZ0NrRUJheUFFVFFSQUlBRWdERTBOQnlBTVFRRnFJZ1VnQVVrTkFTQUFJQXhxTFFBQURBWUxJQVZCLy84L2NVSC8vejlIQkVBZ0FrSFlBR29nQmkwQUFFRUJkR29pQXk4QkFDRUlJQU1nQ0NBRVFRRnFJZ05CLy84RGNTSUhJQWNnQ0VrYk93RUFJQU1oQjBFQUlRNGpBRUVRYXlJRUpBQUNRQ0FDUVVCcklnMG9BZ1JGRFFBZ0RTZ0NBQ0VQSUFZZ0F4QURJUlVnRDBFSWF5RUpJQThFZnlBUFFRUnJLQUlBSWc1QkFXc0ZRWDhMSWdNZ0ZhZHhJUXNnRlVJNWlLY2hDZ05BSUFzZ0Qyb3NBQUFpQ0VVTkFTQU9SUTBCQWtBZ0NFRUFUZzBBSUFvZ0NFSC9BSEZIRFFBZ0JpQUhJQWtvQWdBZ0MwRURkR29pQ0NnQ0FDQUlLQUlFRUFSQkFYRkZEUUFnQkVFQk9nQU1EQUlMSUE1QkFXc2hEaUFMUVFGcUlBTnhJUXNNQUFzQUN5QUdJQWNRQXlFVlFYOGhDaUFOS0FJQUlnZ0VRQ0FJUVFScktBSUFRUUZySVFvTElBb2dGYWR4SVFzRFFDQUlJQXRxSWdNc0FBQkJBRWdFUUNBTFFRRnFJQXB4SVFzTUFRc0xJQTBnRFNnQ0NFRUJhellDQ0NBRElCVkNPWWluUVlBQmNqb0FBQ0FOS0FJQVFRaHJLQUlBSUF0QkEzUnFJZ01nQnpZQ0JDQURJQVkyQWdBZ0RTZ0NBRUVNYXlnQ0FDQUxRUUowYWlJRElBVTdBUUFnQTBFQ2FpQUZRZi8vUDNGQkVIWTZBQUFnRFNBTktBSUVRUUZxTmdJRUlBUkJFR29rQUNBRlFRRnFJUVVNQWdzZ0FpZ0NRQ0lGQkVBZ0JVRUVheWdDQUNJREJFQWdCVUVBSUFQOEN3QUxJQUpCQURZQ1JDQUNJQU90UXRBQWZrTGtBSUErQWtnTFFRQWhCQU5BSUFSQmdBUkhCRUFnQWtIWUFHb2dCR3BCQVRzQkFDQUVRUUpxSVFRTUFRc0xJQUpCMkFScVFmLy9QeEFGSUFKQkFEWUM4QVFnQWtFSk9nRDBCRUdBQWlFRkRBRUxDeUFDUVlnRmFpSUdRUkJxSUFKQlFHc2lBMEVRYWlnQ0FEWUNBQ0FHUVFocUlBTkJDR29wQXdBM0F3QWdBaUFDS1FOQU53T0lCU0FDUWFBRmFpQUdJQUFnREdvaUEwRUNFQUlnQWkwQXBBVkZEUUlnQWk4Qm9BVWdBaTBBb2dWQkVIUnlEQU1MSUFKQlFHc1FBQXRCZnlFRURBUUxJQUpCMkFScUlBTXRBQUFRQlNBQUlBVnFMUUFBQ3hBRkN5QUNRU0JxSWdOQkdHb2dBa0hZQkdvaUFFRVlhaWtDQURjREFDQURRUkJxSUFCQkVHb3BBZ0EzQXdBZ0EwRUlhaUFBUVFocUtRSUFOd01BSUFJZ0Fpa0MyQVEzQXlBZ0FrRkFheEFBQ3lBQ1FSaHFJQUpCSUdvaUFFRVlhaWtEQURjREFDQUNRUkJxSUFCQkVHb3BBd0EzQXdBZ0FrRUlhaUFBUVFocUtRTUFOd01BSUFJZ0Fpa0RJRGNEQUVGL0lRUWdBaUFDS0FJRUlnVkJBbW9RQjBILy93TnhEUUFnQWlnQ0FDSURJQUlvQWdSQkEzUnFJZ0FnQWpVQ0ZDQUJyVUlnaG9RM0F3QWdBRUVJYWlBRlFRTjBRUWhxSWdDdElBSTFBZ2hDSTRhRU53TUFJQUFnQTJvaEJBc2dBa0h3Qldva0FDQUVDeDRCQW44Z0FTQUFLQUlJSWdOTEJIOGdBQ0FESUFFUUNoQUpCVUVBQ3d0UUFRRitJQUpGQkVBZ0FFTDgvLy8vRHpjQ0FBOExJQUVwQWdBaUE2Y2dBa0VDUVFBZ0EwSWdpS2NvQWdBUkFBQWlBVVVFUUNBQVFvQ0FnSUFRTndJQUR3c2dBQ0FCTmdJQUlBQkJBRHNCQkF1NUFnSUdmd0YrSXdCQkVHc2lCQ1FBQWtBZ0FDZ0NDQ0lESUFGUERRQWdBQ2dDQUNFR0FrQWdBMFVOQUNBRUlBRkIvLy8vL3dGTE9nQUlJQUZCZ0lDQWdBSlBEUUFnQUNrQ0RDSUlweUFHSUFOQkEzUkJBeUFCUVFOMFFRQWdDRUlnaUtjb0FnUVJCUUJCQVhGRkRRQWdBQ0FCTmdJSURBRUxJQUFwQWd3aENDQUVJQUZCLy8vLy93RkxPZ0FNQWtBZ0FVR0FnSUNBQWs4TkFBSkFJQUZCQTNRaUFrVUVRRUY0SVFVTUFRc2dDS2NnQWtFRFFRQWdDRUlnaUtjb0FnQVJBQUFpQlVVTkFRc2dBQ2dDQkNJQ0JFQWdCU0FBS0FJQUlBSkJBM1Q4Q2dBQUMwRUFJUUlnQTBFRGRFRUFJQU1iSWdjRVFDQUFLUUlNSWdpbklBWkJxdFdxMVhvZ0F4c2dCMEVEUVFBZ0NFSWdpS2NvQWdnUkFRQUxJQUFnQVRZQ0NDQUFJQVUyQWdBTUFRdEJBU0VDQ3lBRVFSQnFKQUFnQWdzbEFRRi9BMEFnQVVGL0lBQkJBWFlnQUdwQkNHb2lBaUFBSUFKTEd5SUFTdzBBQ3lBQUMyY0NCSDhCZmlNQVFSQnJJZ0VrQUNBQklBQXBBZ3czQXdnZ0FVRUlhaUVDSUFBb0FnQWhBeUFBS0FJSUlnQkJBM1JCQUNBQUd5SUVCRUFnQWlrQ0FDSUZweUFEUWFyVnF0VjZJQUFiSUFSQkFrRUFJQVZDSUlpbktBSUlFUUVBQ3lBQlFSQnFKQUFMbHd3Q0RIOENmaU1BUWVBQWF5SUVKQUFnQkVFQU5nSlFJQVJDcXRXcTFRbzNBa2dnQkVHUWdNQUFLUU1BSWhBM0FsUUNRQUpBQWtBZ0FrVUVRRUdxMWFyVmVpRUlEQUVMUWFyVnF0VjZJUWdnQWlFTUlBUkIxQUJxSWdGQnF0V3ExWHBCQUNBQ0VBMUJBWEVOQUNBRVFTQnFJQUVnQWhBT0lBUXZBU2dOQVNBRUtBSWdJUWdnQkNnQ0pDRU1DeUFJSVFwQkNTRUZRUUFoQVFOQUFrQUNRQUpBQWtBZ0FpQUxSd1JBSUFWQi93RnhJZ2RCRkVrTkFRd0VDeUFFSUJBM0F6Z0NRQ0FFUVRocUlBZ2dEQ0FDRUExQkFYRUVRQ0FJSVFBTUFRc2dCRUhJQUdvZ0JFRTRhaUFDRUE0Z0JDOEJVQTBHSUFRb0FrZ2hBQ0FFS0FKTUlnSUVRQ0FBSUFnZ0FrRUNkUHdLQUFBTElBUWdFRGNESUNBRVFTQnFJQWdnREJBUEN5QUNSUVJBUVFBaEFVR3ExYXJWZWlFR1FRQWhDUXdDQ3lBRUlCQTNBaXdnQkVFQU5nSW9JQVJDcXRXcTFRbzNBaUFnQkVFQVFmLy9QeEFLSWdGQi8vLy8vd0ZMT2dCRUlBRkJnSUNBZ0FKUERRSWdCQ0FRTndNNElBUkJ5QUJxSUFSQk9Hb2dBVUVEZEJBSUlBUXBBMGdpRVVLQWdJQ0E4UDgvZzBJQVVnMENJQVFnQVRZQ0tDQUVJQkduSWdnMkFpQkJBQ0VGQTBBZ0JVSDQvLzhEUmtVRVFDQUZJQWhxUWdBM0FnQWdCVUVJYWlFRkRBRUxDeUFFUWYvL1B6WUNKQ0FFSUJBM0FsUkJBQ0VGSUFSQkFEWUNVQ0FFUXFyVnF0VUtOd0pJSUFSQnlBQnFJQU1RRUVILy93TnhEUUlnQkNrQ1ZDRVFJQVFvQWxBaENTQUVLQUpJSWdZZ0JDZ0NUQ0lCYWlBQUxRQUFPZ0FBSUFnZ0FDOEJBQ0FBUVFKcUxRQUFRUkIwY2tFRGRHb2lBMEVCTmdJRUlBTWdCallDQUNBQlFRRnFJUU5CZ0FJaERFRUJJUXNEUUNBRElRRUNmd0pBQWtBQ1FDQUNJQXRORFFBQ1FBSkFJQUFnQzBFQ2RHb2lBeThCQUNBRFFRSnFMUUFBUVJCMGNpSURRZi8vUDBjRVFDQURRWUFDVHcwQklBRWdCbW9nQXpvQUFDQUJRUUZxSVFNTUJRc2dDMEVCYWlJTElBSlBEUUpCQUNFRkEwQWdCVUg0Ly84RFJnMENJQVVnQ0dwQ0FEY0NBQ0FGUVFocUlRVU1BQXNBQ3lBSUlBTkJBM1JxSWdNb0FnQWlCd1JBSUFNb0FnUWlDaUFCYWlFRElBcEZEUVFnQVNBR2FpQUhJQXI4Q2dBQURBUUxJQVVnQm1vaEF5QUJJQVZySWdjZ0FXb2hDaUFCSUFWSEJFQWdBU0FHYWlBRElBZjhDZ0FBQ3lBR0lBcHFJQU10QUFBNkFBQWdDa0VCYWlFRERBTUxJQUFnQzBFQ2RHb2lBeThCQUNBRFFRSnFMUUFBUVJCMGNpSURRWUFDU1EwQklBUkIvLzgvTmdJa0RBY0xJQVJCLy84L05nSWtJQVJCSUdvUUN3d0ZDeUFCSUFacUlBTTZBQUFnQVVFQmFpRURRWUFDREFFTElBZ2dERUgvL3o5eFFRTjBhaUlLSUFFZ0JXdEJBV28yQWdRZ0NpQUZJQVpxTmdJQUlBeEJBV29MSVF3Z0MwRUJhaUVMSUFFaEJRd0FDd0FMSUFVZ0NVR0FBbXBCZnlBSGRFRi9jMDlxSVFVTUFnc2dCQ0FRTndJWUlBUWdCallDRENBRUlBRTJBaEFnQkNBSk5nSVVJQWtnQVVFSWFpSUFUd1IvSUFFRlFYOGhCU0FFUVF4cUlBa2dBQkFLRUJCQi8vOERjUTBGSUFRb0Fnd2hCaUFFS0FJVUlRa2dCQ2dDRUFzZ0Jtb2lBQ0FCT2dBQUlBQkJCMm9nQ1VFWWRqb0FBQ0FBUVFacUlBbEJFSFk2QUFBZ0FFRUZhaUFKUVFoMk9nQUFJQUJCQkdvZ0NUb0FBQ0FBUVFOcUlBRkJHSFk2QUFBZ0FFRUNhaUFCUVJCMk9nQUFJQUJCQVdvZ0FVRUlkam9BQUNBQklBWnFJUVVNQkFzZ0JFRWdhaEFMREFJTEFuOGdCVUgvQVhFaUIwSEFBQ0FCYXlJTlFmOEJjU0lPVFFSQUlBZEJBblJCbUlEQUFHb2lEek1CQUNBUFFRSnFNUUFBUWhDR2hDQUFJQVpCQTNScUtRTUFJQTBnQld0QlAzR3RpSU1oRVVFQUlBRWdCV29nQnlBT1JpSUhHeUVCSUFZZ0Iyb01BUXNnQlNBTmF5SUJRZjhCY1VFQ2RFR1lnTUFBYWlJSE13RUFJQWRCQW1veEFBQkNFSWFFSUFBZ0JrRUJhaUlIUVFOMGFpa0RBRUVBSUFGclFUOXhyWWlESUFBZ0JrRURkR29wQXdBZ0RrRUNkRUdZZ01BQWFpSUdNd0VBSUFaQkFtb3hBQUJDRUlhRWd5QUJRVDl4cllhRUlSRWdCd3NoQmlBS0lCR25JZ2M3QVFBZ0NrRUNhaUFIUWYvL1AzRWlCMEVRZGpvQUFFRUFJQWxCQVdvZ0IwSC8vejlHSWdjYklRbEJDU0FGSUFjYklRVWdDMEVCYWlFTElBcEJCR29oQ2d3QUN3QUxRWDhoQlFzZ0JFSGdBR29rQUNBRkMzMENBbjhCZmlNQVFSQnJJZ1FrQUFKQUlBTkZCRUFnQkNBQUtRSUFOd01BSUFRZ0FTQUNFQTlCQVNFRkRBRUxJQUpGRFFBZ0JDQURRZi8vLy84RFN6b0FEQ0FEUVlDQWdJQUVUdzBBSUFBcEFnQWlCcWNnQVNBQ1FRSjBRUUlnQTBFQ2RFRUFJQVpDSUlpbktBSUVFUVVBSVFVTElBUkJFR29rQUNBRkM3SUJBZ0YvQVg0akFFRXdheUlESkFBZ0FTa0NBQ0VFSUFNZ0FrSC8vLy8vQTBzNkFDd2dBQUovQWtBQ1FDQUNRWUNBZ0lBRVR3UkFRUUVoQVF3QkN5QURJQVEzQXhnZ0EwRWdhaUFEUVJocUlBSkJBblFRQ0NBREtRTWdJZ1JDSUlpbklnRkIvLzhEY1VVTkFRc2dBeUFCT3dFSUlBTU1BUXNnQXlBQ05nSVFJQU1nQkQ0Q0RDQURRUUE3QVJRZ0EwRU1hZ3NpQWlrQ0FEY0NBQ0FBUVFocUlBSkJDR29vQWdBMkFnQWdBMEV3YWlRQUN6b0NBWDhCZmlBQ1FRSjBRUUFnQWhzaUF3UkFJQUFwQWdBaUJLY2dBVUdxMWFyVmVpQUNHeUFEUVFKQkFDQUVRaUNJcHlnQ0NCRUJBQXNMNkFFQ0IzOEJmaU1BUVNCcklnSWtBQUpBSUFBb0FnZ2lBeUFCVHcwQUlBQkJER29oQlNBQUtBSUFJUVlDUUNBRFJRMEFJQVVwQWdBaUNhY2dCaUFEUVFBZ0FVRUFJQWxDSUlpbktBSUVFUVVBUVFGeFJRMEFJQUFnQVRZQ0NBd0JDeUFDSUFVcEFnQTNBeEFnQWtFWWFpQUNRUkJxSUFFUUVpQUNMd0VjSWdRRVFDQUVJUWNNQVFzZ0FpZ0NHQ0VFSUFBb0FnUWlDQVJBSUFRZ0FDZ0NBQ0FJL0FvQUFBc2dBd1JBSUFVcEFnQWlDYWNnQmtHcTFhclZlaUFER3lBRFFRQkJBQ0FKUWlDSXB5Z0NDQkVCQUFzZ0FDQUJOZ0lJSUFBZ0JEWUNBQXNnQWtFZ2FpUUFJQWNMUEFFQmZ5TUFRUkJySWdFa0FDQUJRWkNBd0FBcEF3QTNBd0FnQVVFSWFpQUJJQUFRRWlBQkx3RU1SUVJBSUFFb0FnZ2dBVUVRYWlRQUR3c0FDMHdDQVg4QmZpTUFRUkJySWdNa0FDQUFJQUlFZmlBQktRSUFJZ1NuSUFKQkFFRUFJQVJDSUlpbktBSUFFUUFBSWdHdElBRkZyVUlnaG9RRlF2Ly8vLzhQQ3pjQ0FDQURRUkJxSkFBTFl3SUNmd0YrSXdCQkVHc2lBU1FBSUFFZ0FFRUFTQ0lDT2dBTUFrQWdBZzBBQWtBZ0FFRUJkQ0lBUlFSQVFYNGhBQXdCQzBHUWdNQUFLUU1BSWdPbklBQkJBVUVBSUFOQ0lJaW5LQUlBRVFBQUlnQkZEUUVMSUFGQkVHb2tBQ0FBRHdzQUN6RUJBWDRnQVFSQVFaQ0F3QUFwQWdBaUFxY2dBRUdxMWFyVmVpQUJHeUFCUVFCQkFDQUNRaUNJcHlnQ0NCRUJBQXNMdmdJQ0RYOEJmaU1BUVJCcklnVWtBQ0FBS0FJRUlRZ2dBQ2dDQUNFSklBSkIvd0Z4SVFvRFFBSkFBa0FnQkNBSVJnUkFRWDhoQXd3QkN5QUpJQVJCQkhScUlnSkJDR29wQXdBaUVFSUFXUVJBSUFJcEF3QjdJQkI3ZktjZ0FVa05BZ3NnQkVFSGRDSURRWUFCYWlFTEEwQWdBeUFMVHcwQ0lBTWdBQ2tDQUNJUVFobUlwMEdBZjNFaUFpQUNJQU5KR3lJTUlBTnJJUTBnRUtkQnF0V3ExWG9nRUVJZ2lLY2JJUTRnQTBFUWRHZ2hEMEVBSVFJQ1FBTkFJQUlnRFVZRVFDQU1JUVlNQWdzZ0FpQURhaUlHUVFkeElRY2dEaUFHUVFOMmFpMEFBRUVCSUFkMFFmOEJJQWRCQjNOMmNYRkZEUUVnQWtFQmFpSUNJQUZKRFFBZ0NpQVBTdzBBQ3lBRklCQTNBd2dnQlVFSWFpQURJQUZCQUJBV0RBSUxJQVpCQVdvaEF3d0FDd0FMSUFWQkVHb2tBQ0FERHdzZ0JFRUJhaUVFREFBTEFBdFZBUUYvSUFOQkFYRWhBd05BSUFJRVFDQUJRUU4ySUFBb0FnQkJxdFdxMVhvZ0FDZ0NCQnRxSWdRZ0JDMEFBRUYrSUFGQkIzRWlCSGR4SUFNZ0JIUnlPZ0FBSUFGQkFXb2hBU0FDUVFGcklRSU1BUXNMQzU4QkFRSi9Jd0JCRUdzaUFpUUFJQUJCZ0JCSkJFQkI3SURBQUNBQVFZQVFJQUVnQVVHQUVFOGJJQUJyRUJnTElBRkJnQkJMQkVCQmhJSEFBQ2dDQUVVRVFFR0VnY0FBUVlBZ05nSUFRWUNCd0FBZ0FVRUJheUlCUVJCMElnTTJBZ0FnQTBFQVFZQ0FCUHdMQUFzZ0FrR0FnY0FBS1FNQU53TUlJQUpCQ0dwQmdCQWdBQ0FBUVlBUVRSc2lBRUdBRUdzZ0FTQUFheEFZQ3lBQ1FSQnFKQUFMS3dFQmZ5TUFRUkJySWdNa0FDQURJQUFwQWdBM0F3Z2dBMEVJYWlBQklBSkJBUkFXSUFOQkVHb2tBQXVaQVFFQmZ3Si9RUUFnQVVHQmdIeFBEUUFhQWtCQjdJREFBQ0FCUWYvL0EycEJFSFlpQVNBQ0VCVWlBRUYvUncwQVFZQ0J3QUFnQVNBQ0VCVWlBRUYvUndSQUlBQkJnQkJxSVFBTUFRdEJBQ0FCUVFFZ0FuUWlCRDhBSWdKQkVIUWlBMnBCQVd0QkFDQUVhM0VpQkNBRGEwRVFkaUlBYWtBQVFRQk1EUUVhSUFBZ0Ftb2hBQ0FESUFSR0RRQWdBaUFBRUJjTElBQkJFSFFMQzBrQUFrQWdBa0gvL3dOcUlnQkJnSUI4Y1NBRVR5SUNSUTBBSUFSQi8vOERha0VRZGlJRElBQkJFSFlpQUVZTkFDQUJRZi8vQTJwQkVIWWlBU0FEYWlBQUlBRnFFQmNMSUFJTEhRQWdBVUgvL3dOcVFSQjJJZ0FnQUNBQ1FmLy9BMnBCRUhacUVCY0xQZ0FnQUNBQmhVTHAydURaanNINjc1MS9maUlBSUFCQ0w0Z2dBWVdGUXVuYTRObU93ZnJ2blg5K0lnQWdBRUl2aUlWQzZkcmcyWTdCK3UrZGYzNExRZ0VDZmlBQUlBRXBBQkFnQVNrQUFDQUNmQ0lDSUFFcEFBaDhmQ0lFSUFFcEFCZ2lCWHczQXdBZ0FDQUVRaFNKSUFKOElBVWdBaUFEZkh4Q0s0bDhOd01JQ3d1QkFRTUFRWUNBd0FBTENRRUFBQUFDQUFBQUF3QkJsb0RBQUF0YkVBQUFBQUFBQVFBQUFBTUFBQUFIQUFBQUR3QUFBQjhBQUFBL0FBQUFmd0FBQVA4QUFBRC9BUUFBL3dNQUFQOEhBQUQvRHdBQS94OEFBUDgvQUFEL2Z3QUEvLzhBQVAvL0FRRC8vd01BLy84SEFQLy9Ed0NJQUJBQUVBQkJnSUhBQUFzRXFxcXFxZz09Iik7Y29uc3QgaD1hd2FpdCBmKCksQz1oLmV4cG9ydHM7ZnVuY3Rpb24gYyhBKXtjb25zdHtwdHI6QixsZW5ndGg6SX09ZShBLEMpLGc9Qy5jb21wcmVzcyhCLEkpO2lmKEMuZnJlZShCLEkpLGc8MCl0aHJvdyBuZXcgRXJyb3IoIkVycm9yIGNvbXByZXNzaW5nIHN0cmluZy4iKTtjb25zdHtzdGFydDpRLGVuZDpFLGNhcGFjaXR5Oml9PXQoQy5tZW1vcnksZyksRD1uZXcgVWludDE2QXJyYXkoQy5tZW1vcnkuYnVmZmVyLnNsaWNlKFEsRSkpLG89RihEKTtyZXR1cm4gQy5mcmVlKFEsaSksb31mdW5jdGlvbiBrKEEpe2NvbnN0IEI9KEEuY2hhckNvZGVBdChBLmxlbmd0aC0zKTw8MTYpK0EuY2hhckNvZGVBdChBLmxlbmd0aC00KSxJPShBLmNoYXJDb2RlQXQoQS5sZW5ndGgtMSk8PDE2KStBLmNoYXJDb2RlQXQoQS5sZW5ndGgtMiksZz1BLmxlbmd0aC00O2xldCBRPUMuYWxsb2NVaW50MTYoZyksRT1uZXcgVWludDE2QXJyYXkoQy5tZW1vcnkuYnVmZmVyLFEsZyk7Zm9yKGxldCBhPTA7YTxnO2ErKylFW2FdPUEuY2hhckNvZGVBdChhKTtjb25zdCBpPUMuZGVjb21wcmVzcyhRLGcsQixJKTtpZihDLmZyZWUoUSwyKmcpLGk8MCl0aHJvdyBuZXcgRXJyb3IoIkVycm9yIGRlY29tcHJlc3Npbmcgc3RyaW5nLiIpO2NvbnN0e3N0YXJ0OkQsZW5kOm8sY2FwYWNpdHk6d309dChDLm1lbW9yeSxpKSxzPW5ldyBVaW50OEFycmF5KEMubWVtb3J5LmJ1ZmZlci5zbGljZShELG8pKSxuPW5ldyBUZXh0RGVjb2RlcigpLmRlY29kZShzKTtyZXR1cm4gQy5mcmVlKEQsdyksbn1zZWxmLm9ubWVzc2FnZT1mdW5jdGlvbihBKXtjb25zdHtjb21tYW5kOkIsaWQ6SSxkYXRhOmd9PUEuZGF0YTtzd2l0Y2goQil7Y2FzZSJkZWNvbXByZXNzIjp7c2VsZi5wb3N0TWVzc2FnZSh7aWQ6SSxkYXRhOmsoZyl9KTticmVha31jYXNlImNvbXByZXNzIjp7c2VsZi5wb3N0TWVzc2FnZSh7aWQ6SSxkYXRhOmMoZyl9KTticmVha319fX0pKCk7", d = (F) => Uint8Array.from(atob(F), (U) => U.charCodeAt(0)), V = typeof window < "u" && window.Blob && new Blob(["URL.revokeObjectURL(import.meta.url);", d(l)], { type: "text/javascript;charset=utf-8" });
2
- function S(F) {
3
- let U;
1
+ const E = `function n(A, Q) {
2
+ const I = new TextEncoder().encode(A), g = Q.allocUint8(I.length);
3
+ return new Uint8Array(
4
+ Q.memory.buffer,
5
+ g,
6
+ I.length
7
+ ).set(I), { ptr: g, length: I.length };
8
+ }
9
+ function h(A) {
10
+ const Q = new Array(A.length);
11
+ for (let I = 0; I < A.length; I++)
12
+ Q[I] = String.fromCharCode(A[I]);
13
+ return Q.join("");
14
+ }
15
+ function D(A, Q) {
16
+ const I = new Uint32Array(
17
+ A.buffer.slice(Q, Q + 8)
18
+ ), g = I.at(0), B = I.at(1);
19
+ return {
20
+ start: Q - g,
21
+ end: Q,
22
+ capacity: B
23
+ };
24
+ }
25
+ var r = async (A = {}, Q) => {
26
+ let I;
27
+ if (Q.startsWith("data:")) {
28
+ const g = Q.replace(/^data:.*?base64,/, "");
29
+ let B;
30
+ if (typeof Buffer == "function" && typeof Buffer.from == "function") B = Buffer.from(g, "base64");
31
+ else if (typeof atob == "function") {
32
+ const E = atob(g);
33
+ B = new Uint8Array(E.length);
34
+ for (let i = 0; i < E.length; i++) B[i] = E.charCodeAt(i);
35
+ } else throw new Error("Failed to decode base64-encoded data URL, Buffer and atob are not supported");
36
+ I = await WebAssembly.instantiate(B, A);
37
+ } else {
38
+ const g = await fetch(Q), B = g.headers.get("Content-Type") || "";
39
+ if ("instantiateStreaming" in WebAssembly && B.startsWith("application/wasm")) I = await WebAssembly.instantiateStreaming(g, A);
40
+ else {
41
+ const E = await g.arrayBuffer();
42
+ I = await WebAssembly.instantiate(E, A);
43
+ }
44
+ }
45
+ return I.instance;
46
+ }, G = (A) => r(A, "data:application/wasm;base64,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/z8QBCACQQA2ArgEIAJBCToAvARBgAIhDgwBCwsgAkGoBGogACAPai0AABAECyAGQQJ0IgAEQCAIKAIAIAxBqtWq1XogBhsgAEECQQAgCCgCBCgCDBEAAAsgBkEDdCIABEAgCCgCACALQarVqtV6IAYbIABBAkEAIAgoAgQoAgwRAAALIBMgCSAGQQBBACAUKAIMEQAAC0F/IQMgAkGoBGogAigCrAQiAEECahAGQf//A3ENACACKAKoBCIEIAIoAqwEQQN0aiIFIAI1ArQEIAGtQiCGhDcDACAFQQhqIABBA3RBCGoiAK0gAjUCsARCI4aENwMAIAAgBGohAwsgAkHgBGokACADCzkBAn8gASAAKAIIIgJLBH8DQEF/IAJBAXYgAmpBCGoiAyACIANLGyICIAFJDQALIAAgAhAJBUEACwtGAQF/IwBBEGsiAyQAIAAgAgR+IAEoAgAgAkEAQQAgASgCBCgCABEBACIBrSABRa1CIIaEBUL/////Dws3AgAgA0EQaiQAC3YBAn8jAEEQayIDJAAgASgCBCEEIAEoAgAhASADIAJB/////wNLOgAMIAACfkKAgICAECACQYCAgIAETw0AGkL8////DyACQQJ0IgJFDQAaIAEgAkECQQAgBCgCABEBACIBrSABRa1CIIaECzcCACADQRBqJAALtAIBBX8jAEEQayIFJAACfwJAIAAoAggiBCABTw0AIAAoAgAhBgJ/AkAgBEUNACAFIAFB/////wFLOgAIIAFBgICAgAJPDQAgACAGIARBA3RBAyABQQN0IgMgABAKIgJFDQAgAkGq1arVeiADGyECIAFB/////wFxQQAgAxsMAQtBACECQQALIQMgAgRAIAAgAjYCACAAIAM2AggMAQsgBSABQf////8BSzoADAJAIAFBgICAgAJPDQACQCABQQN0IgJFBEBBeCECDAELIAAgAkEDIAAQCyICRQ0BCyAAKAIEQQN0IgMEQCACIAAoAgAgA/wKAAALIARBA3QiAwRAIAAgBkGq1arVeiAEGyADQQMgABAMCyAAIAE2AgggACACNgIADAELQQEMAQtBAAsgBUEQaiQACxgAIAFBACAEIAQgAiADIAQgBBAWQQFxGwvvAQECfyMAQRBrIgMkACADIAJBH3E6AA9BACEAAkBBfyABQQRqIgQgASAESxsiAUEBIAJ0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");
47
+ const y = await G(), C = y.exports;
48
+ function f(A) {
49
+ const { ptr: Q, length: I } = n(A, C), g = C.compress(Q, I);
50
+ if (C.free(Q, I), g < 0) throw new Error("Error compressing string.");
51
+ const { start: B, end: E, capacity: i } = D(C.memory, g), o = new Uint16Array(C.memory.buffer.slice(B, E)), t = h(o);
52
+ return C.free(B, i), t;
53
+ }
54
+ function R(A) {
55
+ const Q = (A.charCodeAt(A.length - 3) << 16) + A.charCodeAt(A.length - 4), I = (A.charCodeAt(A.length - 1) << 16) + A.charCodeAt(A.length - 2), g = A.length - 4;
56
+ let B = C.allocUint16(g), E = new Uint16Array(
57
+ C.memory.buffer,
58
+ B,
59
+ g
60
+ );
61
+ for (let a = 0; a < g; a++)
62
+ E[a] = A.charCodeAt(a);
63
+ const i = C.decompress(
64
+ B,
65
+ g,
66
+ Q,
67
+ I
68
+ );
69
+ if (C.free(B, 2 * g), i < 0) throw new Error("Error decompressing string.");
70
+ const { start: o, end: t, capacity: s } = D(C.memory, i), e = new Uint8Array(C.memory.buffer.slice(o, t)), w = new TextDecoder().decode(e);
71
+ return C.free(o, s), w;
72
+ }
73
+ self.onmessage = function(A) {
74
+ const { command: Q, id: I, data: g } = A.data;
75
+ switch (Q) {
76
+ case "decompress": {
77
+ self.postMessage({ id: I, data: R(g) });
78
+ break;
79
+ }
80
+ case "compress": {
81
+ self.postMessage({ id: I, data: f(g) });
82
+ break;
83
+ }
84
+ }
85
+ };
86
+ self.postMessage({ id: -1, data: "worker_ready" });
87
+ `, C = typeof self < "u" && self.Blob && new Blob(["URL.revokeObjectURL(import.meta.url);", E], { type: "text/javascript;charset=utf-8" });
88
+ function n(A) {
89
+ let I;
4
90
  try {
5
- if (U = V && (window.URL || window.webkitURL).createObjectURL(V), !U)
6
- throw "";
7
- const Q = new Worker(U, {
91
+ if (I = C && (self.URL || self.webkitURL).createObjectURL(C), !I) throw "";
92
+ const g = new Worker(I, {
8
93
  type: "module",
9
- name: F?.name
94
+ name: A?.name
10
95
  });
11
- return Q.addEventListener("error", () => {
12
- (window.URL || window.webkitURL).revokeObjectURL(U);
13
- }), Q;
96
+ return g.addEventListener("error", () => {
97
+ (self.URL || self.webkitURL).revokeObjectURL(I);
98
+ }), g;
14
99
  } catch {
15
100
  return new Worker(
16
- "data:text/javascript;base64," + l,
101
+ "data:text/javascript;charset=utf-8," + encodeURIComponent(E),
17
102
  {
18
103
  type: "module",
19
- name: F?.name
104
+ name: A?.name
20
105
  }
21
106
  );
22
107
  }
23
108
  }
24
- const R = new S();
25
- let J = 0;
26
- const B = {};
27
- R.onmessage = function(F) {
28
- const U = F.data.id;
29
- B[U](F.data.data), delete B[U];
109
+ const B = new n();
110
+ let i = 0;
111
+ const Q = {};
112
+ let o;
113
+ const a = new Promise((A) => {
114
+ o = A;
115
+ });
116
+ B.onmessage = function(A) {
117
+ if (A.data.id == -1 && A.data.data === "worker_ready") {
118
+ o();
119
+ return;
120
+ }
121
+ const I = A.data.id;
122
+ Q[I](A.data.data), delete Q[I];
30
123
  };
31
- async function Z(F) {
32
- const U = J++;
33
- return new Promise((Q) => {
34
- B[U] = Q, R.postMessage({ command: "compress", id: U, data: F });
124
+ async function t(A) {
125
+ await a;
126
+ const I = i++;
127
+ return new Promise((g) => {
128
+ Q[I] = g, B.postMessage({ command: "compress", id: I, data: A });
35
129
  });
36
130
  }
37
- async function W(F) {
38
- const U = J++;
39
- return new Promise((Q) => {
40
- B[U] = Q, R.postMessage({ command: "decompress", id: U, data: F });
131
+ async function e(A) {
132
+ await a;
133
+ const I = i++;
134
+ return new Promise((g) => {
135
+ Q[I] = g, B.postMessage({ command: "decompress", id: I, data: A });
41
136
  });
42
137
  }
43
138
  export {
44
- Z as compress,
45
- W as decompress
139
+ t as compress,
140
+ e as decompress
46
141
  };
@@ -1,81 +1,75 @@
1
- function F(A, B) {
2
- const I = new TextEncoder().encode(A), g = B.allocUint8(I.length);
1
+ function n(A, Q) {
2
+ const I = new TextEncoder().encode(A), g = Q.allocUint8(I.length);
3
3
  return new Uint8Array(
4
- B.memory.buffer,
4
+ Q.memory.buffer,
5
5
  g,
6
6
  I.length
7
7
  ).set(I), { ptr: g, length: I.length };
8
8
  }
9
- function f(A) {
10
- const B = new Array(A.length);
9
+ function r(A) {
10
+ const Q = new Array(A.length);
11
11
  for (let I = 0; I < A.length; I++)
12
- B[I] = String.fromCharCode(A[I]);
13
- return B.join("");
12
+ Q[I] = String.fromCharCode(A[I]);
13
+ return Q.join("");
14
14
  }
15
- function w(A, B) {
15
+ function a(A, Q) {
16
16
  const I = new Uint32Array(
17
- A.buffer.slice(B, B + 8)
18
- ), g = I.at(0), Q = I.at(1);
17
+ A.buffer.slice(Q, Q + 8)
18
+ ), g = I.at(0), B = I.at(1);
19
19
  return {
20
- start: B - g,
21
- end: B,
22
- capacity: Q
20
+ start: Q - g,
21
+ end: Q,
22
+ capacity: B
23
23
  };
24
24
  }
25
- const r = async (A = {}, B) => {
25
+ const G = async (A = {}, Q) => {
26
26
  let I;
27
- if (B.startsWith("data:")) {
28
- const g = B.replace(/^data:.*?base64,/, "");
29
- let Q;
30
- if (typeof Buffer == "function" && typeof Buffer.from == "function")
31
- Q = Buffer.from(g, "base64");
27
+ if (Q.startsWith("data:")) {
28
+ const g = Q.replace(/^data:.*?base64,/, "");
29
+ let B;
30
+ if (typeof Buffer == "function" && typeof Buffer.from == "function") B = Buffer.from(g, "base64");
32
31
  else if (typeof atob == "function") {
33
32
  const E = atob(g);
34
- Q = new Uint8Array(E.length);
35
- for (let i = 0; i < E.length; i++)
36
- Q[i] = E.charCodeAt(i);
37
- } else
38
- throw new Error("Failed to decode base64-encoded data URL, Buffer and atob are not supported");
39
- I = await WebAssembly.instantiate(Q, A);
33
+ B = new Uint8Array(E.length);
34
+ for (let i = 0; i < E.length; i++) B[i] = E.charCodeAt(i);
35
+ } else throw new Error("Failed to decode base64-encoded data URL, Buffer and atob are not supported");
36
+ I = await WebAssembly.instantiate(B, A);
40
37
  } else {
41
- const g = await fetch(B), Q = g.headers.get("Content-Type") || "";
42
- if ("instantiateStreaming" in WebAssembly && Q.startsWith("application/wasm"))
43
- I = await WebAssembly.instantiateStreaming(g, A);
38
+ const g = await fetch(Q), B = g.headers.get("Content-Type") || "";
39
+ if ("instantiateStreaming" in WebAssembly && B.startsWith("application/wasm")) I = await WebAssembly.instantiateStreaming(g, A);
44
40
  else {
45
41
  const E = await g.arrayBuffer();
46
42
  I = await WebAssembly.instantiate(E, A);
47
43
  }
48
44
  }
49
45
  return I.instance;
50
- }, e = (A) => r(A, "data:application/wasm;base64,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"), h = await e(), C = h.exports;
51
- function k(A) {
52
- const { ptr: B, length: I } = F(A, C), g = C.compress(B, I);
53
- if (C.free(B, I), g < 0)
54
- throw new Error("Error compressing string.");
55
- const { start: Q, end: E, capacity: i } = w(C.memory, g), D = new Uint16Array(C.memory.buffer.slice(Q, E)), a = f(D);
56
- return C.free(Q, i), a;
46
+ }, y = (A) => G(A, "data:application/wasm;base64,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/z8QBCACQQA2ArgEIAJBCToAvARBgAIhDgwBCwsgAkGoBGogACAPai0AABAECyAGQQJ0IgAEQCAIKAIAIAxBqtWq1XogBhsgAEECQQAgCCgCBCgCDBEAAAsgBkEDdCIABEAgCCgCACALQarVqtV6IAYbIABBAkEAIAgoAgQoAgwRAAALIBMgCSAGQQBBACAUKAIMEQAAC0F/IQMgAkGoBGogAigCrAQiAEECahAGQf//A3ENACACKAKoBCIEIAIoAqwEQQN0aiIFIAI1ArQEIAGtQiCGhDcDACAFQQhqIABBA3RBCGoiAK0gAjUCsARCI4aENwMAIAAgBGohAwsgAkHgBGokACADCzkBAn8gASAAKAIIIgJLBH8DQEF/IAJBAXYgAmpBCGoiAyACIANLGyICIAFJDQALIAAgAhAJBUEACwtGAQF/IwBBEGsiAyQAIAAgAgR+IAEoAgAgAkEAQQAgASgCBCgCABEBACIBrSABRa1CIIaEBUL/////Dws3AgAgA0EQaiQAC3YBAn8jAEEQayIDJAAgASgCBCEEIAEoAgAhASADIAJB/////wNLOgAMIAACfkKAgICAECACQYCAgIAETw0AGkL8////DyACQQJ0IgJFDQAaIAEgAkECQQAgBCgCABEBACIBrSABRa1CIIaECzcCACADQRBqJAALtAIBBX8jAEEQayIFJAACfwJAIAAoAggiBCABTw0AIAAoAgAhBgJ/AkAgBEUNACAFIAFB/////wFLOgAIIAFBgICAgAJPDQAgACAGIARBA3RBAyABQQN0IgMgABAKIgJFDQAgAkGq1arVeiADGyECIAFB/////wFxQQAgAxsMAQtBACECQQALIQMgAgRAIAAgAjYCACAAIAM2AggMAQsgBSABQf////8BSzoADAJAIAFBgICAgAJPDQACQCABQQN0IgJFBEBBeCECDAELIAAgAkEDIAAQCyICRQ0BCyAAKAIEQQN0IgMEQCACIAAoAgAgA/wKAAALIARBA3QiAwRAIAAgBkGq1arVeiAEGyADQQMgABAMCyAAIAE2AgggACACNgIADAELQQEMAQtBAAsgBUEQaiQACxgAIAFBACAEIAQgAiADIAQgBBAWQQFxGwvvAQECfyMAQRBrIgMkACADIAJBH3E6AA9BACEAAkBBfyABQQRqIgQgASAESxsiAUEBIAJ0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"), e = await y(), C = e.exports;
47
+ function R(A) {
48
+ const { ptr: Q, length: I } = n(A, C), g = C.compress(Q, I);
49
+ if (C.free(Q, I), g < 0) throw new Error("Error compressing string.");
50
+ const { start: B, end: E, capacity: i } = a(C.memory, g), o = new Uint16Array(C.memory.buffer.slice(B, E)), t = r(o);
51
+ return C.free(B, i), t;
57
52
  }
58
- function U(A) {
59
- const B = (A.charCodeAt(A.length - 3) << 16) + A.charCodeAt(A.length - 4), I = (A.charCodeAt(A.length - 1) << 16) + A.charCodeAt(A.length - 2), g = A.length - 4;
60
- let Q = C.allocUint16(g), E = new Uint16Array(
53
+ function f(A) {
54
+ const Q = (A.charCodeAt(A.length - 3) << 16) + A.charCodeAt(A.length - 4), I = (A.charCodeAt(A.length - 1) << 16) + A.charCodeAt(A.length - 2), g = A.length - 4;
55
+ let B = C.allocUint16(g), E = new Uint16Array(
61
56
  C.memory.buffer,
62
- Q,
57
+ B,
63
58
  g
64
59
  );
65
- for (let o = 0; o < g; o++)
66
- E[o] = A.charCodeAt(o);
60
+ for (let D = 0; D < g; D++)
61
+ E[D] = A.charCodeAt(D);
67
62
  const i = C.decompress(
68
- Q,
69
- g,
70
63
  B,
64
+ g,
65
+ Q,
71
66
  I
72
67
  );
73
- if (C.free(Q, 2 * g), i < 0)
74
- throw new Error("Error decompressing string.");
75
- const { start: D, end: a, capacity: t } = w(C.memory, i), n = new Uint8Array(C.memory.buffer.slice(D, a)), s = new TextDecoder().decode(n);
76
- return C.free(D, t), s;
68
+ if (C.free(B, 2 * g), i < 0) throw new Error("Error decompressing string.");
69
+ const { start: o, end: t, capacity: w } = a(C.memory, i), h = new Uint8Array(C.memory.buffer.slice(o, t)), s = new TextDecoder().decode(h);
70
+ return C.free(o, w), s;
77
71
  }
78
72
  export {
79
- k as compress,
80
- U as decompress
73
+ R as compress,
74
+ f as decompress
81
75
  };
package/package.json CHANGED
@@ -1,57 +1,60 @@
1
- {
2
- "name": "smol-string",
3
- "version": "1.0.2",
4
- "description": "Compression for browser localStorage",
5
- "author": "Senryoku <maretverdant@gmail.com>",
6
- "repository": {
7
- "type": "git",
8
- "url": "git+https://github.com/Senryoku/smol-string.git"
9
- },
10
- "license": "MIT",
11
- "keywords": [
12
- "compression",
13
- "browser",
14
- "localStorage",
15
- "zig",
16
- "typescript"
17
- ],
18
- "bugs": {
19
- "url": "https://github.com/Senryoku/smol-string/issues"
20
- },
21
- "homepage": "https://github.com/Senryoku/smol-string",
22
- "type": "module",
23
- "scripts": {
24
- "dev": "vite",
25
- "build": "tsc && vite build",
26
- "preview": "vite preview",
27
- "test": "vitest",
28
- "test:chrome": "vitest --browser.name=chrome --browser.headless --config browser.vitest.config.ts",
29
- "test:firefox": "vitest --browser.name=firefox --browser.headless --config browser.vitest.config.ts",
30
- "test:edge": "vitest --browser.name=edge --browser.headless --config browser.vitest.config.ts",
31
- "test:safari": "vitest --browser.name=safari --no-browser.headless --config browser.vitest.config.ts",
32
- "bench": "vitest bench",
33
- "wasm-opt": "wasm-opt -O4 --all-features ../zig-out/bin/smol-string.wasm -o ./src/module.wasm"
34
- },
35
- "main": "./dist/smol-string.js",
36
- "exports": {
37
- ".": {
38
- "types": "./dist/smol-string.d.ts",
39
- "import": "./dist/smol-string.js"
40
- },
41
- "./worker": {
42
- "types": "./dist/smol-string-worker.d.ts",
43
- "import": "./dist/smol-string-worker.js"
44
- }
45
- },
46
- "devDependencies": {
47
- "@vitest/browser": "^1.4.0",
48
- "binaryen": "^116.0.0",
49
- "smol-string": "^1.0.0",
50
- "typescript": "^5.2.2",
51
- "vite": "^5.0.0",
52
- "vite-plugin-dts": "^3.6.2",
53
- "vite-plugin-top-level-await": "^1.3.1",
54
- "vitest": "^1.4.0",
55
- "webdriverio": "^8.20.4"
56
- }
57
- }
1
+ {
2
+ "name": "smol-string",
3
+ "version": "1.0.4",
4
+ "description": "Compression for browser localStorage",
5
+ "author": "Senryoku <maretverdant@gmail.com>",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "git+https://github.com/Senryoku/smol-string.git"
9
+ },
10
+ "license": "MIT",
11
+ "keywords": [
12
+ "compression",
13
+ "browser",
14
+ "localStorage",
15
+ "zig",
16
+ "typescript"
17
+ ],
18
+ "bugs": {
19
+ "url": "https://github.com/Senryoku/smol-string/issues"
20
+ },
21
+ "homepage": "https://github.com/Senryoku/smol-string",
22
+ "type": "module",
23
+ "scripts": {
24
+ "dev": "vite",
25
+ "build": "tsc && vite build",
26
+ "preview": "vite preview",
27
+ "test": "vitest",
28
+ "test:chrome": "vitest --browser.instances.0.name=chrome --browser.instances.0.browser=chrome --browser.headless --config browser.vitest.config.ts",
29
+ "test:firefox": "vitest --browser.instances.0.name=firefox --browser.instances.0.browser=firefox --browser.headless --config browser.vitest.config.ts",
30
+ "test:edge": "vitest --browser.instances.0.name=edge --browser.instances.0.browser=edge --browser.headless --config browser.vitest.config.ts",
31
+ "test:safari": "vitest --browser.instances.0.name=safari --browser.instances.0.browser=safari --no-browser.headless --config browser.vitest.config.ts",
32
+ "bench": "vitest bench",
33
+ "bench:chrome": "vitest bench --no-watch --browser.instances.0.name=chrome --browser.instances.0.browser=chrome --browser.headless --config browser.vitest.config.ts",
34
+ "bench:firefox": "vitest bench --no-watch --browser.instances.0.name=firefox --browser.instances.0.browser=firefox --browser.headless --config browser.vitest.config.ts",
35
+ "bench:edge": "vitest bench --no-watch --browser.instances.0.name=edge --browser.instances.0.browser=edge --browser.headless --config browser.vitest.config.ts",
36
+ "bench:safari": "vitest bench --no-watch --browser.instances.0.name=safari --browser.instances.0.browser=safari --no-browser.headless --config browser.vitest.config.ts",
37
+ "wasm-opt": "wasm-opt -O4 --all-features ../zig-out/bin/smol-string.wasm -o ./src/module.wasm"
38
+ },
39
+ "main": "./dist/smol-string.js",
40
+ "exports": {
41
+ ".": {
42
+ "types": "./dist/smol-string.d.ts",
43
+ "import": "./dist/smol-string.js"
44
+ },
45
+ "./worker": {
46
+ "types": "./dist/smol-string-worker.d.ts",
47
+ "import": "./dist/smol-string-worker.js"
48
+ }
49
+ },
50
+ "devDependencies": {
51
+ "@vitest/browser": "^3.2.4",
52
+ "binaryen": "^124.0.0",
53
+ "smol-string": "^1.0.3",
54
+ "typescript": "^5.2.2",
55
+ "vite": "^7.1.10",
56
+ "vite-plugin-dts": "^4.3.0",
57
+ "vitest": "^3.2.4",
58
+ "webdriverio": "^9.2.11"
59
+ }
60
+ }