@vope/utils 1.4.26 → 1.4.27
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/cjs/index.js +36 -38
- package/lib/memory/basic.js +2 -2
- package/lib/storage/offline.js +11 -11
- package/package.json +1 -1
- package/types/memory/basic.d.ts +1 -1
- package/types/memory/list.d.ts +1 -1
- package/types/memory/power.d.ts +1 -1
- package/types/memory/simple.d.ts +1 -1
package/cjs/index.js
CHANGED
|
@@ -9,8 +9,8 @@ var __commonJS = (cb, mod) => function __require() {
|
|
|
9
9
|
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
10
10
|
};
|
|
11
11
|
var __export = (target, all) => {
|
|
12
|
-
for (var
|
|
13
|
-
__defProp(target,
|
|
12
|
+
for (var name in all)
|
|
13
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
14
14
|
};
|
|
15
15
|
var __copyProps = (to, from, except, desc) => {
|
|
16
16
|
if (from && typeof from === "object" || typeof from === "function") {
|
|
@@ -6164,13 +6164,11 @@ var flatURLParams = (data, serializes) => {
|
|
|
6164
6164
|
return params.toString();
|
|
6165
6165
|
};
|
|
6166
6166
|
|
|
6167
|
-
// package.json
|
|
6168
|
-
var name = "@vope/utils";
|
|
6169
|
-
|
|
6170
6167
|
// src/storage/offline.ts
|
|
6171
6168
|
var import_localforage = __toESM(require_localforage(), 1);
|
|
6172
6169
|
var import_sm_crypto = __toESM(require_src(), 1);
|
|
6173
|
-
var
|
|
6170
|
+
var NAME = "@vope/utils";
|
|
6171
|
+
var PREFIX = NAME + "_";
|
|
6174
6172
|
var key = [25, 144, 1, 32, 25, 135, 6, 40, 32, 23, 18, 19, 32, 36, 9, 5];
|
|
6175
6173
|
var iv = [182, 59, 9, 29, 86, 64, 118, 111, 112, 101, 47, 117, 116, 105, 108, 115];
|
|
6176
6174
|
var config = {
|
|
@@ -6178,7 +6176,7 @@ var config = {
|
|
|
6178
6176
|
mode: "cbc",
|
|
6179
6177
|
iv
|
|
6180
6178
|
};
|
|
6181
|
-
var HEADER = "." + import_sm_crypto.sm4.encrypt(
|
|
6179
|
+
var HEADER = "." + import_sm_crypto.sm4.encrypt(NAME, key, config);
|
|
6182
6180
|
var encrypt = (data) => {
|
|
6183
6181
|
let text = "";
|
|
6184
6182
|
for (const key2 in data) {
|
|
@@ -6217,9 +6215,9 @@ var MESSAGES = {
|
|
|
6217
6215
|
update: "Cannot update data to expired databases",
|
|
6218
6216
|
get: "Cannot get data from expired databases"
|
|
6219
6217
|
};
|
|
6220
|
-
var createInstance = (
|
|
6218
|
+
var createInstance = (name, version = 2) => import_localforage.default.createInstance({
|
|
6221
6219
|
driver: import_localforage.default.INDEXEDDB,
|
|
6222
|
-
name
|
|
6220
|
+
name,
|
|
6223
6221
|
version
|
|
6224
6222
|
});
|
|
6225
6223
|
var OfflineStorage = class _OfflineStorage {
|
|
@@ -6237,12 +6235,12 @@ var OfflineStorage = class _OfflineStorage {
|
|
|
6237
6235
|
return this.#mounted;
|
|
6238
6236
|
}
|
|
6239
6237
|
constructor({
|
|
6240
|
-
name
|
|
6238
|
+
name,
|
|
6241
6239
|
expire: newExpire,
|
|
6242
6240
|
token: newToken,
|
|
6243
6241
|
crypto
|
|
6244
6242
|
}) {
|
|
6245
|
-
const forage = this.#forage = createInstance(import_sm_crypto.sm4.encrypt(PREFIX +
|
|
6243
|
+
const forage = this.#forage = createInstance(import_sm_crypto.sm4.encrypt(PREFIX + name, key, config));
|
|
6246
6244
|
this.#mount = new Promise(async (resolve) => {
|
|
6247
6245
|
const keys = await forage.keys().then((keys2) => keys2).catch(() => []);
|
|
6248
6246
|
let size = 0;
|
|
@@ -6371,18 +6369,18 @@ var OfflineStorage = class _OfflineStorage {
|
|
|
6371
6369
|
const size = PREFIX.length;
|
|
6372
6370
|
const databases = await indexedDB.databases();
|
|
6373
6371
|
const tasks = [];
|
|
6374
|
-
for (const { name
|
|
6375
|
-
if (
|
|
6372
|
+
for (const { name, version } of databases) {
|
|
6373
|
+
if (name === void 0)
|
|
6376
6374
|
continue;
|
|
6377
6375
|
let text;
|
|
6378
6376
|
try {
|
|
6379
|
-
text = import_sm_crypto.sm4.decrypt(
|
|
6377
|
+
text = import_sm_crypto.sm4.decrypt(name, key, config);
|
|
6380
6378
|
} catch {
|
|
6381
6379
|
continue;
|
|
6382
6380
|
}
|
|
6383
6381
|
if (text.slice(0, size) !== PREFIX)
|
|
6384
6382
|
continue;
|
|
6385
|
-
const forage = createInstance(
|
|
6383
|
+
const forage = createInstance(name, version);
|
|
6386
6384
|
const value = await forage.getItem(HEADER);
|
|
6387
6385
|
if (value === null || decrypt(value).token !== token || callback && callback(text.slice(size)))
|
|
6388
6386
|
continue;
|
|
@@ -6423,61 +6421,61 @@ var css = (...args) => {
|
|
|
6423
6421
|
var Subscriber = class {
|
|
6424
6422
|
#listeners = {};
|
|
6425
6423
|
#once = {};
|
|
6426
|
-
$on(
|
|
6424
|
+
$on(name, listener) {
|
|
6427
6425
|
const listeners = this.#listeners;
|
|
6428
|
-
if (
|
|
6429
|
-
listeners[
|
|
6426
|
+
if (name in listeners) {
|
|
6427
|
+
listeners[name].push(listener);
|
|
6430
6428
|
} else {
|
|
6431
|
-
listeners[
|
|
6429
|
+
listeners[name] = [listener];
|
|
6432
6430
|
}
|
|
6433
6431
|
return this;
|
|
6434
6432
|
}
|
|
6435
|
-
$once(
|
|
6436
|
-
this.$on(
|
|
6437
|
-
const index = this.#listeners[
|
|
6433
|
+
$once(name, listener) {
|
|
6434
|
+
this.$on(name, listener);
|
|
6435
|
+
const index = this.#listeners[name].length - 1;
|
|
6438
6436
|
const once2 = this.#once;
|
|
6439
|
-
if (
|
|
6440
|
-
once2[
|
|
6437
|
+
if (name in once2) {
|
|
6438
|
+
once2[name].push(index);
|
|
6441
6439
|
} else {
|
|
6442
|
-
once2[
|
|
6440
|
+
once2[name] = [index];
|
|
6443
6441
|
}
|
|
6444
6442
|
return this;
|
|
6445
6443
|
}
|
|
6446
|
-
$emit(
|
|
6447
|
-
const listeners = this.#listeners[
|
|
6444
|
+
$emit(name, ...args) {
|
|
6445
|
+
const listeners = this.#listeners[name];
|
|
6448
6446
|
if (!listeners)
|
|
6449
6447
|
return this;
|
|
6450
|
-
const once2 = hash8strings(this.#once[
|
|
6451
|
-
this.#listeners[
|
|
6448
|
+
const once2 = hash8strings(this.#once[name] || []);
|
|
6449
|
+
this.#listeners[name] = listeners.reduce((list, listener, index) => {
|
|
6452
6450
|
listener(...args);
|
|
6453
6451
|
index in once2 || list.push(listener);
|
|
6454
6452
|
return list;
|
|
6455
6453
|
}, []);
|
|
6456
|
-
delete this.#once[
|
|
6454
|
+
delete this.#once[name];
|
|
6457
6455
|
return this;
|
|
6458
6456
|
}
|
|
6459
|
-
$off(
|
|
6457
|
+
$off(name, listener) {
|
|
6460
6458
|
const listeners = this.#listeners;
|
|
6461
6459
|
const once2 = this.#once;
|
|
6462
|
-
if (
|
|
6460
|
+
if (name in listeners === false)
|
|
6463
6461
|
return this;
|
|
6464
6462
|
if (listener) {
|
|
6465
6463
|
let count;
|
|
6466
|
-
listeners[
|
|
6464
|
+
listeners[name].some((value, index) => {
|
|
6467
6465
|
if (value === listener) {
|
|
6468
6466
|
count = index;
|
|
6469
|
-
listeners[
|
|
6467
|
+
listeners[name].splice(index, 1);
|
|
6470
6468
|
return true;
|
|
6471
6469
|
}
|
|
6472
|
-
}) && once2[
|
|
6470
|
+
}) && once2[name].some((value, index) => {
|
|
6473
6471
|
if (value === count) {
|
|
6474
|
-
listeners[
|
|
6472
|
+
listeners[name].splice(index, 1);
|
|
6475
6473
|
return true;
|
|
6476
6474
|
}
|
|
6477
6475
|
});
|
|
6478
6476
|
} else {
|
|
6479
|
-
delete listeners[
|
|
6480
|
-
delete this.#once[
|
|
6477
|
+
delete listeners[name];
|
|
6478
|
+
delete this.#once[name];
|
|
6481
6479
|
}
|
|
6482
6480
|
return this;
|
|
6483
6481
|
}
|
package/lib/memory/basic.js
CHANGED
|
@@ -134,8 +134,8 @@ class MemoryBasic {
|
|
|
134
134
|
if (!memorys.has(type))
|
|
135
135
|
return this;
|
|
136
136
|
const local = hash8strings(this.#reflex(memorys.get(type)));
|
|
137
|
-
const
|
|
138
|
-
const imitator = new
|
|
137
|
+
const Memory = this.constructor;
|
|
138
|
+
const imitator = new Memory(this.key, {
|
|
139
139
|
mount: this.#mount,
|
|
140
140
|
reflex: this.#reflex
|
|
141
141
|
});
|
package/lib/storage/offline.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { name } from "@package";
|
|
2
1
|
import localforage from "localforage";
|
|
3
2
|
import { isString } from "lodash-es";
|
|
4
3
|
import { sm4 } from "sm-crypto";
|
|
5
|
-
const
|
|
4
|
+
const NAME = "@vope/utils";
|
|
5
|
+
const PREFIX = NAME + "_";
|
|
6
6
|
const key = [25, 144, 1, 32, 25, 135, 6, 40, 32, 23, 18, 19, 32, 36, 9, 5];
|
|
7
7
|
const iv = [182, 59, 9, 29, 86, 64, 118, 111, 112, 101, 47, 117, 116, 105, 108, 115];
|
|
8
8
|
const config = {
|
|
@@ -10,7 +10,7 @@ const config = {
|
|
|
10
10
|
mode: "cbc",
|
|
11
11
|
iv
|
|
12
12
|
};
|
|
13
|
-
const HEADER = "." + sm4.encrypt(
|
|
13
|
+
const HEADER = "." + sm4.encrypt(NAME, key, config);
|
|
14
14
|
const encrypt = (data) => {
|
|
15
15
|
let text = "";
|
|
16
16
|
for (const key2 in data) {
|
|
@@ -49,9 +49,9 @@ const MESSAGES = {
|
|
|
49
49
|
update: "Cannot update data to expired databases",
|
|
50
50
|
get: "Cannot get data from expired databases"
|
|
51
51
|
};
|
|
52
|
-
const createInstance = (
|
|
52
|
+
const createInstance = (name, version = 2) => localforage.createInstance({
|
|
53
53
|
driver: localforage.INDEXEDDB,
|
|
54
|
-
name
|
|
54
|
+
name,
|
|
55
55
|
version
|
|
56
56
|
});
|
|
57
57
|
class OfflineStorage {
|
|
@@ -69,12 +69,12 @@ class OfflineStorage {
|
|
|
69
69
|
return this.#mounted;
|
|
70
70
|
}
|
|
71
71
|
constructor({
|
|
72
|
-
name
|
|
72
|
+
name,
|
|
73
73
|
expire: newExpire,
|
|
74
74
|
token: newToken,
|
|
75
75
|
crypto
|
|
76
76
|
}) {
|
|
77
|
-
const forage = this.#forage = createInstance(sm4.encrypt(PREFIX +
|
|
77
|
+
const forage = this.#forage = createInstance(sm4.encrypt(PREFIX + name, key, config));
|
|
78
78
|
this.#mount = new Promise(async (resolve) => {
|
|
79
79
|
const keys = await forage.keys().then((keys2) => keys2).catch(() => []);
|
|
80
80
|
let size = 0;
|
|
@@ -203,18 +203,18 @@ class OfflineStorage {
|
|
|
203
203
|
const size = PREFIX.length;
|
|
204
204
|
const databases = await indexedDB.databases();
|
|
205
205
|
const tasks = [];
|
|
206
|
-
for (const { name
|
|
207
|
-
if (
|
|
206
|
+
for (const { name, version } of databases) {
|
|
207
|
+
if (name === void 0)
|
|
208
208
|
continue;
|
|
209
209
|
let text;
|
|
210
210
|
try {
|
|
211
|
-
text = sm4.decrypt(
|
|
211
|
+
text = sm4.decrypt(name, key, config);
|
|
212
212
|
} catch {
|
|
213
213
|
continue;
|
|
214
214
|
}
|
|
215
215
|
if (text.slice(0, size) !== PREFIX)
|
|
216
216
|
continue;
|
|
217
|
-
const forage = createInstance(
|
|
217
|
+
const forage = createInstance(name, version);
|
|
218
218
|
const value = await forage.getItem(HEADER);
|
|
219
219
|
if (value === null || decrypt(value).token !== token || callback && callback(text.slice(size)))
|
|
220
220
|
continue;
|
package/package.json
CHANGED
package/types/memory/basic.d.ts
CHANGED
package/types/memory/list.d.ts
CHANGED
package/types/memory/power.d.ts
CHANGED
package/types/memory/simple.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Assign } from '@vope/types';
|
|
2
2
|
import { MemoryBasic } from './basic';
|
|
3
|
-
import { Memory } from './type';
|
|
3
|
+
import { type Memory } from './type';
|
|
4
4
|
type Transform<T, V> = {
|
|
5
5
|
[P in keyof T]: T[P] extends (...args: any) => any ? (...args: Parameters<T[P]>) => ReturnType<T[P]> extends T ? V : ReturnType<T[P]> : T[P];
|
|
6
6
|
};
|