chore: optimize compress helper
diff --git a/src/common/helper.js b/src/common/helper.js
index 964ce3f..dcc7a41 100644
--- a/src/common/helper.js
+++ b/src/common/helper.js
@@ -1,5 +1,6 @@
import { store } from './store';
import { SCRIPT_URLS } from './config';
+import { compressToBase64, decompressFromBase64 } from 'lz-string';
const promisesCache = {};
@@ -88,7 +89,23 @@
});
}
-export {
- compressToBase64 as compressStr,
- decompressFromBase64 as decompressStr
-} from 'lz-string';
+export function compressStr(str) {
+ if (!str || !(str = str.trim())) {
+ return str;
+ }
+ return compressToBase64(str)
+ .replace(/\+/g, '-') // Convert '+' to '-'
+ .replace(/\//g, '_') // Convert '/' to '_'
+ .replace(/=+$/, ''); // Remove ending '='
+}
+
+export function decompressStr(str) {
+ if (!str || !(str = str.trim())) {
+ return str;
+ }
+ return decompressFromBase64(
+ str
+ .replace(/\-/g, '+') // Convert '-' to '+'
+ .replace(/_/g, '/') // Convert '_' to '/'
+ );
+}