@actdim/utico 0.9.6 → 0.9.9
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/dist/array.es.js.map +1 -1
- package/dist/arrayExtensions.es.js.map +1 -1
- package/dist/{mutex.d.ts → asyncMutex.d.ts} +1 -1
- package/dist/asyncMutex.d.ts.map +1 -0
- package/dist/{mutex.es.js → asyncMutex.es.js} +1 -1
- package/dist/asyncMutex.es.js.map +1 -0
- package/dist/cache/cacheContracts.d.ts +21 -0
- package/dist/cache/cacheContracts.d.ts.map +1 -0
- package/dist/cache/cacheContracts.es.js +13 -0
- package/dist/cache/cacheContracts.es.js.map +1 -0
- package/dist/cache/memoryCache.es.js.map +1 -1
- package/dist/cache/persistentCache.d.ts +26 -15
- package/dist/cache/persistentCache.d.ts.map +1 -1
- package/dist/cache/persistentCache.es.js +124 -72
- package/dist/cache/persistentCache.es.js.map +1 -1
- package/dist/dataFormats.es.js.map +1 -1
- package/dist/dateTimeDataFormat.es.js.map +1 -1
- package/dist/gfx/canvasUtils.es.js.map +1 -1
- package/dist/gfx/color.es.js.map +1 -1
- package/dist/i18n/cultures.es.js.map +1 -1
- package/dist/i18n/enUsCulture.es.js.map +1 -1
- package/dist/math.es.js.map +1 -1
- package/dist/metadata.es.js.map +1 -1
- package/dist/patterns.es.js.map +1 -1
- package/dist/store/dataStore.d.ts +68 -25
- package/dist/store/dataStore.d.ts.map +1 -1
- package/dist/store/dataStore.es.js +213 -114
- package/dist/store/dataStore.es.js.map +1 -1
- package/dist/store/persistentStore.d.ts +3 -5
- package/dist/store/persistentStore.d.ts.map +1 -1
- package/dist/store/persistentStore.es.js +10 -18
- package/dist/store/persistentStore.es.js.map +1 -1
- package/dist/store/storeContracts.d.ts +55 -5
- package/dist/store/storeContracts.d.ts.map +1 -1
- package/dist/store/storeContracts.es.js +15 -1
- package/dist/store/storeContracts.es.js.map +1 -1
- package/dist/store/storeDb.es.js +84 -53
- package/dist/store/storeDb.es.js.map +1 -1
- package/dist/stringCore.es.js.map +1 -1
- package/dist/structEvent.es.js.map +1 -1
- package/dist/typeCore.d.ts +20 -0
- package/dist/typeCore.d.ts.map +1 -1
- package/dist/typeCore.es.js.map +1 -1
- package/dist/typeUtils.es.js.map +1 -1
- package/dist/utils.es.js.map +1 -1
- package/dist/watchable.es.js.map +1 -1
- package/package.json +28 -23
- package/dist/mutex.d.ts.map +0 -1
- package/dist/mutex.es.js.map +0 -1
- package/dist/store/storeDb.d.ts +0 -42
- package/dist/store/storeDb.d.ts.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@actdim/utico",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.9",
|
|
4
4
|
"description": "A modern foundation toolkit for complex TypeScript apps",
|
|
5
5
|
"author": "Pavel Borodaev",
|
|
6
6
|
"license": "Proprietary",
|
|
@@ -47,46 +47,51 @@
|
|
|
47
47
|
},
|
|
48
48
|
"sideEffects": false,
|
|
49
49
|
"sideEffects?": [],
|
|
50
|
+
"packageManager": "pnpm@10.20.0",
|
|
50
51
|
"scripts": {
|
|
51
|
-
"test": "npx vitest",
|
|
52
|
-
"
|
|
53
|
-
"
|
|
52
|
+
"test": "npx vitest --config=vitest.node.config.ts --no-cache",
|
|
53
|
+
"test:w": "npx vitest --config=vitest.node.config.ts --watch",
|
|
54
|
+
"test:v8": "npx vite",
|
|
54
55
|
"lint": "eslint . -f visualstudio --ext .ts,.tsx --report-unused-disable-directives --max-warnings 0",
|
|
55
56
|
"build": "tsc -b && vite build",
|
|
56
|
-
"
|
|
57
|
-
"
|
|
58
|
-
"ncu": "ncu",
|
|
57
|
+
"pnpm:u": "pnpm update",
|
|
58
|
+
"pnpm:ou": "pnpm outdated",
|
|
59
|
+
"ncu:l": "ncu",
|
|
59
60
|
"ncu:u": "ncu -u",
|
|
60
61
|
"ncu:ud": "ncu -u --dev",
|
|
61
62
|
"nvm:la": "nvm list available",
|
|
62
|
-
"nvm:il": "nvm install lts"
|
|
63
|
+
"nvm:il": "nvm install lts",
|
|
64
|
+
"format": "prettier --write .",
|
|
65
|
+
"format:check": "prettier --check ."
|
|
63
66
|
},
|
|
64
67
|
"peerDependencies": {
|
|
65
68
|
"dexie": "^4.2.0",
|
|
66
69
|
"moment": "^2.30.1",
|
|
67
70
|
"uuid": "^13.0.0"
|
|
68
71
|
},
|
|
69
|
-
"devDependencies": {
|
|
70
|
-
"@types/
|
|
71
|
-
"@types/
|
|
72
|
-
"@
|
|
73
|
-
"@typescript-eslint/
|
|
74
|
-
"eslint": "^
|
|
72
|
+
"devDependencies": {
|
|
73
|
+
"@types/chai": "^5.2.3",
|
|
74
|
+
"@types/mocha": "^10.0.10",
|
|
75
|
+
"@types/node": "^24.9.2",
|
|
76
|
+
"@typescript-eslint/eslint-plugin": "^8.46.2",
|
|
77
|
+
"@typescript-eslint/parser": "^8.46.2",
|
|
78
|
+
"chai": "^6.2.0",
|
|
79
|
+
"eslint": "^9.39.0",
|
|
75
80
|
"eslint-config-prettier": "^10.1.8",
|
|
76
|
-
"eslint-formatter-visualstudio": "^
|
|
81
|
+
"eslint-formatter-visualstudio": "^9.0.1",
|
|
77
82
|
"eslint-plugin-prettier": "^5.5.4",
|
|
78
|
-
"fake-indexeddb": "^6.2.
|
|
79
|
-
"globals": "^16.
|
|
80
|
-
"
|
|
83
|
+
"fake-indexeddb": "^6.2.4",
|
|
84
|
+
"globals": "^16.5.0",
|
|
85
|
+
"mocha": "^11.7.4",
|
|
86
|
+
"npm-check-updates": "^19.1.2",
|
|
81
87
|
"prettier": "^3.6.2",
|
|
82
|
-
"prettier-plugin-classnames": "^0.8.
|
|
88
|
+
"prettier-plugin-classnames": "^0.8.5",
|
|
83
89
|
"shx": "^0.4.0",
|
|
84
|
-
"ts-node": "^10.9.2",
|
|
85
90
|
"typescript": "^5.9.3",
|
|
86
|
-
"typescript-eslint": "^8.
|
|
87
|
-
"vite": "^7.1.
|
|
91
|
+
"typescript-eslint": "^8.46.2",
|
|
92
|
+
"vite": "^7.1.12",
|
|
88
93
|
"vite-plugin-dts": "^4.5.4",
|
|
89
94
|
"vite-tsconfig-paths": "^5.1.4",
|
|
90
|
-
"vitest": "^
|
|
95
|
+
"vitest": "^4.0.6"
|
|
91
96
|
}
|
|
92
97
|
}
|
package/dist/mutex.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mutex.d.ts","sourceRoot":"","sources":["../src/mutex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAQtC,cAAM,UAAU;IACZ,OAAO,CAAC,KAAK,CAAqB;IAElC,OAAO,CAAC,MAAM,CAAS;IAEjB,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC;IAgCnD,OAAO,IAAI,MAAM,IAAI,GAAG,IAAI;IAiBtB,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;CAQrE;AAGD,OAAO,EACH,UAAU,EACb,CAAC"}
|
package/dist/mutex.es.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mutex.es.js","sources":["../src/mutex.ts"],"sourcesContent":["import { Executor } from './typeCore';\r\n/**\r\n * Example:\r\n * const mutex = new Mutex();\r\n * await mutex.dispatch(async () => {...});\r\n */\r\n// type Executor<T> = () => Promise<T> | T;\r\n\r\nclass AsyncMutex { // or Mutex\r\n private mutex = Promise.resolve();\r\n\r\n private locked = false;\r\n \r\n async lock(timeoutMs?: number): Promise<() => void> {\r\n let begin: (unlock: () => void) => void = () => { };\r\n let timer: NodeJS.Timeout | undefined;\r\n\r\n const previous = this.mutex;\r\n this.mutex = this.mutex.then(() => new Promise(begin));\r\n this.locked = true;\r\n \r\n const lockPromise = new Promise<() => void>((resolve, reject) => {\r\n begin = resolve;\r\n\r\n if (timeoutMs) {\r\n timer = setTimeout(() => {\r\n reject(new Error(\"Mutex lock timeout\"));\r\n }, timeoutMs);\r\n }\r\n });\r\n\r\n try {\r\n const unlock = await lockPromise;\r\n clearTimeout(timer);\r\n return () => {\r\n this.locked = false;\r\n unlock();\r\n };\r\n } catch (err) {\r\n this.mutex = previous;\r\n this.locked = false;\r\n throw err;\r\n }\r\n }\r\n\r\n tryLock(): () => void | null {\r\n if (this.locked) return null;\r\n\r\n let unlock!: () => void;\r\n this.locked = true;\r\n this.mutex = this.mutex.then(\r\n () =>\r\n new Promise<void>(res => {\r\n unlock = () => {\r\n this.locked = false;\r\n res();\r\n };\r\n })\r\n );\r\n return unlock;\r\n }\r\n\r\n async dispatch<T>(fn: Executor<T>, timeoutMs?: number): Promise<T> {\r\n const unlock = await this.lock(timeoutMs);\r\n try {\r\n return await fn();\r\n } finally {\r\n unlock();\r\n }\r\n }\r\n}\r\n\r\n\r\nexport {\r\n AsyncMutex\r\n};"],"names":["AsyncMutex","timeoutMs","begin","timer","previous","lockPromise","resolve","reject","unlock","err","res","fn"],"mappings":"AAQA,MAAMA,EAAW;AAAA;AAAA,EACL,QAAQ,QAAQ,QAAA;AAAA,EAEhB,SAAS;AAAA,EAEjB,MAAM,KAAKC,GAAyC;AAChD,QAAIC,IAAsC,MAAM;AAAA,IAAE,GAC9CC;AAEJ,UAAMC,IAAW,KAAK;AACtB,SAAK,QAAQ,KAAK,MAAM,KAAK,MAAM,IAAI,QAAQF,CAAK,CAAC,GACrD,KAAK,SAAS;AAEd,UAAMG,IAAc,IAAI,QAAoB,CAACC,GAASC,MAAW;AAC7D,MAAAL,IAAQI,GAEJL,MACAE,IAAQ,WAAW,MAAM;AACrB,QAAAI,EAAO,IAAI,MAAM,oBAAoB,CAAC;AAAA,MAC1C,GAAGN,CAAS;AAAA,IAEpB,CAAC;AAED,QAAI;AACA,YAAMO,IAAS,MAAMH;AACrB,0BAAaF,CAAK,GACX,MAAM;AACT,aAAK,SAAS,IACdK,EAAA;AAAA,MACJ;AAAA,IACJ,SAASC,GAAK;AACV,iBAAK,QAAQL,GACb,KAAK,SAAS,IACRK;AAAA,IACV;AAAA,EACJ;AAAA,EAEA,UAA6B;AACzB,QAAI,KAAK,OAAQ,QAAO;AAExB,QAAID;AACJ,gBAAK,SAAS,IACd,KAAK,QAAQ,KAAK,MAAM;AAAA,MACpB,MACI,IAAI,QAAc,CAAAE,MAAO;AACrB,QAAAF,IAAS,MAAM;AACX,eAAK,SAAS,IACdE,EAAA;AAAA,QACJ;AAAA,MACJ,CAAC;AAAA,IAAA,GAEFF;AAAA,EACX;AAAA,EAEA,MAAM,SAAYG,GAAiBV,GAAgC;AAC/D,UAAMO,IAAS,MAAM,KAAK,KAAKP,CAAS;AACxC,QAAI;AACA,aAAO,MAAMU,EAAA;AAAA,IACjB,UAAA;AACI,MAAAH,EAAA;AAAA,IACJ;AAAA,EACJ;AACJ;"}
|
package/dist/store/storeDb.d.ts
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { default as Dexie } from 'dexie';
|
|
2
|
-
export interface IDataEntry {
|
|
3
|
-
id: string;
|
|
4
|
-
createdAt: number;
|
|
5
|
-
updatedAt: number;
|
|
6
|
-
}
|
|
7
|
-
export interface ICacheDataEntry extends IDataEntry {
|
|
8
|
-
accessedAt?: number;
|
|
9
|
-
slidingExpiration?: number;
|
|
10
|
-
expiresAt?: number;
|
|
11
|
-
}
|
|
12
|
-
export type EntryTypes = {
|
|
13
|
-
default: IDataEntry;
|
|
14
|
-
cache: ICacheDataEntry;
|
|
15
|
-
};
|
|
16
|
-
export interface IDataItem {
|
|
17
|
-
readonly id: string;
|
|
18
|
-
readonly value: any;
|
|
19
|
-
}
|
|
20
|
-
export declare class DataEntry implements IDataEntry {
|
|
21
|
-
id: string;
|
|
22
|
-
createdAt: number;
|
|
23
|
-
updatedAt: number;
|
|
24
|
-
constructor(src: Partial<DataEntry>);
|
|
25
|
-
}
|
|
26
|
-
export declare class CacheDataEntry extends DataEntry {
|
|
27
|
-
accessedAt?: number;
|
|
28
|
-
slidingExpiration?: number;
|
|
29
|
-
expiresAt?: number;
|
|
30
|
-
constructor(src: Partial<CacheDataEntry>);
|
|
31
|
-
}
|
|
32
|
-
export declare class DataItem<T = any> implements IDataItem {
|
|
33
|
-
id: string;
|
|
34
|
-
value: T;
|
|
35
|
-
constructor(src: Partial<DataItem>);
|
|
36
|
-
}
|
|
37
|
-
export declare class StoreDb<TEntryTemplate extends keyof EntryTypes> extends Dexie {
|
|
38
|
-
registry: Dexie.Table<EntryTypes[TEntryTemplate], string>;
|
|
39
|
-
data: Dexie.Table<IDataItem, string>;
|
|
40
|
-
constructor(name: string, entryTemplate: TEntryTemplate);
|
|
41
|
-
}
|
|
42
|
-
//# sourceMappingURL=storeDb.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"storeDb.d.ts","sourceRoot":"","sources":["../../src/store/storeDb.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,MAAM,WAAW,UAAU;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB;AAID,MAAM,WAAW,eAAgB,SAAQ,UAAU;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,UAAU,GAAG;IACrB,OAAO,EAAE,UAAU,CAAC;IACpB,KAAK,EAAE,eAAe,CAAA;CACzB,CAAA;AAGD,MAAM,WAAW,SAAS;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC;CACvB;AAcD,qBAAa,SAAU,YAAW,UAAU;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;gBAEN,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC;CAStC;AAED,qBAAa,cAAe,SAAQ,SAAS;IACzC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,SAAS,CAAC,EAAE,MAAM,CAAC;gBAEP,GAAG,EAAE,OAAO,CAAC,cAAc,CAAC;CAI3C;AAGD,qBAAa,QAAQ,CAAC,CAAC,GAAG,GAAG,CAAE,YAAW,SAAS;IAC/C,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,CAAC,CAAC;gBAEG,GAAG,EAAE,OAAO,CAAC,QAAQ,CAAC;CAQrC;AAMD,qBAAa,OAAO,CAAC,cAAc,SAAS,MAAM,UAAU,CAAE,SAAQ,KAAK;IAEvE,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,CAAC;IAC1D,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;gBAEzB,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,cAAc;CA0C1D"}
|