@actdim/utico 1.1.0 → 1.1.2
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/cache/cacheContracts.d.ts +11 -11
- package/dist/cache/cacheContracts.d.ts.map +1 -1
- package/dist/cache/cacheContracts.es.js.map +1 -1
- package/dist/cache/persistentCache.d.ts +17 -17
- package/dist/cache/persistentCache.d.ts.map +1 -1
- package/dist/cache/persistentCache.es.js +48 -48
- package/dist/cache/persistentCache.es.js.map +1 -1
- package/dist/gfx/canvasUtils.d.ts +4 -5
- package/dist/gfx/canvasUtils.d.ts.map +1 -1
- package/dist/gfx/canvasUtils.es.js +77 -84
- package/dist/gfx/canvasUtils.es.js.map +1 -1
- package/dist/metadata.d.ts +1 -0
- package/dist/metadata.d.ts.map +1 -1
- package/dist/metadata.es.js +20 -14
- package/dist/metadata.es.js.map +1 -1
- package/dist/store/dataStore.d.ts +23 -23
- package/dist/store/dataStore.d.ts.map +1 -1
- package/dist/store/dataStore.es.js +120 -120
- package/dist/store/dataStore.es.js.map +1 -1
- package/dist/store/persistentStore.d.ts +3 -3
- package/dist/store/persistentStore.d.ts.map +1 -1
- package/dist/store/persistentStore.es.js +12 -12
- package/dist/store/persistentStore.es.js.map +1 -1
- package/dist/store/storeContracts.d.ts +20 -20
- package/dist/store/storeContracts.d.ts.map +1 -1
- package/dist/store/storeContracts.es.js.map +1 -1
- package/dist/store/storeDb.es.js +33 -33
- package/dist/store/storeDb.es.js.map +1 -1
- package/dist/typeCore.d.ts +12 -12
- package/dist/typeCore.d.ts.map +1 -1
- package/dist/typeCore.es.js.map +1 -1
- package/dist/utils.d.ts +4 -3
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.es.js +70 -61
- package/dist/utils.es.js.map +1 -1
- package/package.json +6 -4
package/dist/utils.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.es.js","sources":["D:/Src/my/actdim/public/utico/src/utils.ts"],"sourcesContent":["import { v4 as uuid } from \"uuid\";\r\n\r\n// @filename: util.ts\r\n\r\n// export function guid() {\r\n// function s4() {\r\n// return Math.floor((1 + Math.random()) * 0x10000)\r\n// .toString(16)\r\n// .substring(1);\r\n// }\r\n// return s4() + s4() + '-' + s4() + '-' + s4() + '-' + s4() + '-' + s4() + s4() + s4();\r\n// }\r\n\r\nexport const normalize = (v: number) => (!v || !isFinite(v) ? 0 : v);\r\n\r\n// numericalOr\r\nexport function numericOr(...values: number[]) {\r\n for (const value of values) {\r\n if (value != undefined) {\r\n return value;\r\n }\r\n }\r\n return undefined;\r\n}\r\n\r\n// funcArgCacheKeyResolver(Provider/Builder)\r\nexport const buildFuncArgCacheKey = (() => {\r\n const weakMap = new WeakMap<any, string>();\r\n return (...args: any[]) => {\r\n const keys: string[] = [];\r\n for (const arg of args) {\r\n let key: string = undefined;\r\n if (typeof arg === \"number\" || typeof arg === \"string\" || typeof arg === \"boolean\" || arg == undefined) {\r\n key = \"\" + arg;\r\n } else {\r\n key = weakMap.get(arg);\r\n if (!key) {\r\n key = uuid();\r\n weakMap.set(arg, key);\r\n }\r\n }\r\n keys.push(key);\r\n }\r\n return `\"${keys.join(\"/\")}\"`;\r\n };\r\n})();\r\n\r\nexport const delayAsync = (ms: number) => {\r\n return new Promise<void>((resolve) => setTimeout(resolve, ms));\r\n};\r\n\r\n// scheduleErrorAsync\r\nexport const delayErrorAsync = (ms: number, errFactory?: () => Error) => {\r\n return new Promise<never>((_, reject) =>\r\n setTimeout(\r\n () => {\r\n // Do not throw!\r\n const err = errFactory ? errFactory() : new Error(\"Timeout exceeded\");\r\n reject(err);\r\n },\r\n ms\r\n )\r\n );\r\n};\r\n\r\nexport function withTimeoutAsync<T>(promise: Promise<T>, ms: number): Promise<T> {\r\n // return new Promise((resolve, reject) => {\r\n // const timer = setTimeout(() => reject(new Error('Timeout exceeded')), ms);\r\n // promise.then((value) => {\r\n // clearTimeout(timer);\r\n // resolve(value);\r\n // }, reject);\r\n // });\r\n return Promise.race([delayErrorAsync(ms), promise]);\r\n}\r\n\r\n/**\r\n * Search node in a tree\r\n * @param predicate filter\r\n * @param childSelector\r\n * @param treeNodes\r\n */\r\nexport function searchTree<T>(treeNodes: T[], predicate: (item: T) => boolean, childSelector: (item: T) => T[]) {\r\n if (!treeNodes) {\r\n return undefined;\r\n }\r\n for (const treeNode of treeNodes) {\r\n if (predicate(treeNode)) {\r\n return treeNode;\r\n }\r\n const node = searchTree(childSelector(treeNode), predicate, childSelector);\r\n if (node) {\r\n return node;\r\n }\r\n }\r\n return undefined;\r\n}\r\n\r\nexport const suppressConsole = (action: () => void) => {\r\n const origConsole: any = {};\r\n const result: {\r\n method: keyof Console;\r\n args: any[];\r\n }[] = [];\r\n const keys: (keyof Console)[] = [\"log\" /*, \"debug\", \"warn\", \"info\"*/];\r\n for (const key of keys) {\r\n origConsole[key] = console[key];\r\n console[key] = function (...args: any[]) {\r\n result.push({\r\n method: key,\r\n args: args\r\n });\r\n } as any;\r\n }\r\n try {\r\n action();\r\n } finally {\r\n for (const key of keys) {\r\n console[key] = origConsole[key];\r\n }\r\n }\r\n return result;\r\n};\r\n\r\nexport function removePrefix(str: string, prefixes: string[]): string {\r\n let removed = true;\r\n while (removed) {\r\n removed = false;\r\n for (const prefix of prefixes) {\r\n if (prefix && str.startsWith(prefix)) {\r\n str = str.slice(prefix.length);\r\n removed = true;\r\n break;\r\n }\r\n }\r\n }\r\n return str;\r\n}\r\n\r\nexport function removeSuffix(str: string, suffixes: string[]): string {\r\n let removed = true;\r\n while (removed) {\r\n removed = false;\r\n for (const suffix of suffixes) {\r\n if (suffix && str.endsWith(suffix)) {\r\n str = str.slice(0, -suffix.length);\r\n removed = true;\r\n break;\r\n }\r\n }\r\n }\r\n return str;\r\n}\r\n\r\n// another comparator example\r\n// const deepEqual = (a: any, b: any) => JSON.stringify(a) === JSON.stringify(b);\r\n// depEffect\r\nexport function memoEffect<TDep, TResult>(\r\n getValue: () => TDep, // getDep\r\n callback: (v: TDep) => TResult, // onChange/action\r\n comparator: (a: TDep, b: TDep) => boolean = (a, b) => a === b // equals\r\n) {\r\n let val: TDep | undefined;\r\n let initialized = false;\r\n let retVal: TResult;\r\n return () => {\r\n const next = getValue();\r\n if (!initialized || !comparator(next, val!)) {\r\n val = next;\r\n initialized = true;\r\n retVal = callback(next);\r\n }\r\n return retVal;\r\n };\r\n}\r\n\r\nexport function lazy<T>(factory: () => T): () => T {\r\n let instance: T | undefined;\r\n let initialized = false;\r\n\r\n return () => {\r\n if (!initialized) {\r\n instance = factory();\r\n initialized = true;\r\n }\r\n return instance!;\r\n };\r\n}\r\n\r\n// TODO:\r\n/*\r\nfunction getMetadata<T>(\r\n store: WeakMap<object, Map<PropertyKey, T>>,\r\n target: object,\r\n prop: PropertyKey,\r\n): T | undefined {\r\n return store.get(target)?.get(prop) as T | undefined;\r\n}\r\n\r\nfunction setMetadata<T>(\r\n store: WeakMap<object, Map<PropertyKey, T>>,\r\n target: object,\r\n prop: PropertyKey,\r\n value: T,\r\n) {\r\n let propMap = store.get(target);\r\n if (!propMap) {\r\n propMap = new Map();\r\n store.set(target, propMap);\r\n }\r\n propMap.set(prop, value);\r\n}\r\n\r\nfunction hasMetadata(\r\n store: WeakMap<object, Map<PropertyKey, any>>,\r\n target: object,\r\n prop: PropertyKey,\r\n): boolean {\r\n return store.get(target)?.has(prop) ?? false;\r\n}\r\n*/\r\n\r\n/*\r\nexport function memoizeThrottle<T extends Func>(\r\n func: T,\r\n wait = 0,\r\n options?: Parameters<typeof _.throttle<T>>[2],\r\n resolver?: Parameters<typeof _.memoize<(...args: Parameters<T>) => ReturnType<typeof _.throttle<T>>>>[1]\r\n) {\r\n const mem = _.memoize<(...args: Parameters<T>) => ReturnType<typeof _.throttle<T>>>(() => {\r\n return _.throttle<T>(func, wait, options);\r\n }, resolver);\r\n\r\n return (...args: Parameters<T>) => {\r\n return mem(...args)(...args);\r\n };\r\n}\r\n\r\nexport function memoizeDebounce<T extends Func>(\r\n func: T,\r\n wait = 0,\r\n options?: Parameters<typeof _.debounce<T>>[2],\r\n resolver?: Parameters<typeof _.memoize<(...args: Parameters<T>) => ReturnType<typeof _.debounce<T>>>>[1]\r\n) {\r\n const mem = _.memoize<(...args: Parameters<T>) => ReturnType<typeof _.debounce<T>>>(() => {\r\n return _.debounce<T>(func, wait, options);\r\n }, resolver);\r\n\r\n return (...args: Parameters<T>) => {\r\n return mem(...args)(...args);\r\n };\r\n}\r\n*/\r\n"],"names":["normalize","v","numericOr","values","value","buildFuncArgCacheKey","weakMap","args","keys","arg","key","uuid","delayAsync","ms","resolve","delayErrorAsync","errFactory","_","reject","err","withTimeoutAsync","promise","searchTree","treeNodes","predicate","childSelector","treeNode","node","suppressConsole","action","origConsole","result","removePrefix","str","prefixes","removed","prefix","removeSuffix","suffixes","suffix","memoEffect","getValue","callback","comparator","a","b","val","initialized","retVal","next","lazy","factory","instance"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.es.js","sources":["D:/Src/my/actdim/public/utico/src/utils.ts"],"sourcesContent":["import { v4 as uuid } from \"uuid\";\r\n\r\n// @filename: util.ts\r\n\r\n// export function guid() {\r\n// function s4() {\r\n// return Math.floor((1 + Math.random()) * 0x10000)\r\n// .toString(16)\r\n// .substring(1);\r\n// }\r\n// return s4() + s4() + '-' + s4() + '-' + s4() + '-' + s4() + '-' + s4() + s4() + s4();\r\n// }\r\n\r\nexport const normalize = (v: number) => (!v || !isFinite(v) ? 0 : v);\r\n\r\n// numericalOr\r\nexport function numericOr(...values: number[]) {\r\n for (const value of values) {\r\n if (value != undefined) {\r\n return value;\r\n }\r\n }\r\n return undefined;\r\n}\r\n\r\n// funcArgCacheKeyResolver(Provider/Builder)\r\nexport const buildFuncArgCacheKey = (() => {\r\n const weakMap = new WeakMap<any, string>();\r\n return (...args: any[]) => {\r\n const keys: string[] = [];\r\n for (const arg of args) {\r\n let key: string = undefined;\r\n if (typeof arg === \"number\" || typeof arg === \"string\" || typeof arg === \"boolean\" || arg == undefined) {\r\n key = \"\" + arg;\r\n } else {\r\n key = weakMap.get(arg);\r\n if (!key) {\r\n key = uuid();\r\n weakMap.set(arg, key);\r\n }\r\n }\r\n keys.push(key);\r\n }\r\n return `\"${keys.join(\"/\")}\"`;\r\n };\r\n})();\r\n\r\nexport const delay = (ms: number) => {\r\n return new Promise<void>((resolve) => setTimeout(resolve, ms));\r\n};\r\n\r\n// scheduleError\r\nexport const delayError = (ms: number, errFactory?: () => Error) => {\r\n return new Promise<never>((_, reject) =>\r\n setTimeout(\r\n () => {\r\n // Do not throw!\r\n const err = errFactory ? errFactory() : new Error(\"Timeout exceeded\");\r\n reject(err);\r\n },\r\n ms\r\n )\r\n );\r\n};\r\n\r\nexport function withTimeout<T>(promise: Promise<T>, ms: number): Promise<T> {\r\n // return new Promise((resolve, reject) => {\r\n // const timer = setTimeout(() => reject(new Error('Timeout exceeded')), ms);\r\n // promise.then((value) => {\r\n // clearTimeout(timer);\r\n // resolve(value);\r\n // }, reject);\r\n // });\r\n return Promise.race([delayError(ms), promise]);\r\n}\r\n\r\n/**\r\n * Search node in a tree\r\n * @param predicate filter\r\n * @param childSelector\r\n * @param treeNodes\r\n */\r\nexport function searchTree<T>(treeNodes: T[], predicate: (item: T) => boolean, childSelector: (item: T) => T[]) {\r\n if (!treeNodes) {\r\n return undefined;\r\n }\r\n for (const treeNode of treeNodes) {\r\n if (predicate(treeNode)) {\r\n return treeNode;\r\n }\r\n const node = searchTree(childSelector(treeNode), predicate, childSelector);\r\n if (node) {\r\n return node;\r\n }\r\n }\r\n return undefined;\r\n}\r\n\r\nexport const suppressConsole = (action: () => void) => {\r\n const origConsole: any = {};\r\n const result: {\r\n method: keyof Console;\r\n args: any[];\r\n }[] = [];\r\n const keys: (keyof Console)[] = [\"log\" /*, \"debug\", \"warn\", \"info\"*/];\r\n for (const key of keys) {\r\n origConsole[key] = console[key];\r\n console[key] = function (...args: any[]) {\r\n result.push({\r\n method: key,\r\n args: args\r\n });\r\n } as any;\r\n }\r\n try {\r\n action();\r\n } finally {\r\n for (const key of keys) {\r\n console[key] = origConsole[key];\r\n }\r\n }\r\n return result;\r\n};\r\n\r\nexport function removePrefix(str: string, prefixes: string[]): string {\r\n let removed = true;\r\n while (removed) {\r\n removed = false;\r\n for (const prefix of prefixes) {\r\n if (prefix && str.startsWith(prefix)) {\r\n str = str.slice(prefix.length);\r\n removed = true;\r\n break;\r\n }\r\n }\r\n }\r\n return str;\r\n}\r\n\r\nexport function removeSuffix(str: string, suffixes: string[]): string {\r\n let removed = true;\r\n while (removed) {\r\n removed = false;\r\n for (const suffix of suffixes) {\r\n if (suffix && str.endsWith(suffix)) {\r\n str = str.slice(0, -suffix.length);\r\n removed = true;\r\n break;\r\n }\r\n }\r\n }\r\n return str;\r\n}\r\n\r\n// another comparator example\r\n// const deepEqual = (a: any, b: any) => JSON.stringify(a) === JSON.stringify(b);\r\n// depEffect\r\nexport function memoEffect<TDep, TResult>(\r\n getValue: () => TDep, // getDep\r\n callback: (v: TDep) => TResult, // onChange/action\r\n comparator: (a: TDep, b: TDep) => boolean = (a, b) => a === b // equals\r\n) {\r\n let val: TDep | undefined;\r\n let initialized = false;\r\n let retVal: TResult;\r\n return () => {\r\n const next = getValue();\r\n if (!initialized || !comparator(next, val!)) {\r\n val = next;\r\n initialized = true;\r\n retVal = callback(next);\r\n }\r\n return retVal;\r\n };\r\n}\r\n\r\nexport function lazy<T>(factory: () => T): () => T {\r\n let instance: T | undefined;\r\n let initialized = false;\r\n\r\n return () => {\r\n if (!initialized) {\r\n instance = factory();\r\n initialized = true;\r\n }\r\n return instance!;\r\n };\r\n}\r\n\r\nexport function makeNonEnumerable<T>(obj: T, propertyNames: (keyof T)[]) {\r\n let propertyDescriptorMap: PropertyDescriptorMap = {};\r\n for (const propertyName of propertyNames) {\r\n propertyDescriptorMap[propertyName] = {\r\n enumerable: false\r\n };\r\n }\r\n Object.defineProperties(obj, propertyDescriptorMap);\r\n}\r\n\r\n// TODO:\r\n/*\r\nfunction getMetadata<T>(\r\n store: WeakMap<object, Map<PropertyKey, T>>,\r\n target: object,\r\n prop: PropertyKey,\r\n): T | undefined {\r\n return store.get(target)?.get(prop) as T | undefined;\r\n}\r\n\r\nfunction setMetadata<T>(\r\n store: WeakMap<object, Map<PropertyKey, T>>,\r\n target: object,\r\n prop: PropertyKey,\r\n value: T,\r\n) {\r\n let propMap = store.get(target);\r\n if (!propMap) {\r\n propMap = new Map();\r\n store.set(target, propMap);\r\n }\r\n propMap.set(prop, value);\r\n}\r\n\r\nfunction hasMetadata(\r\n store: WeakMap<object, Map<PropertyKey, any>>,\r\n target: object,\r\n prop: PropertyKey,\r\n): boolean {\r\n return store.get(target)?.has(prop) ?? false;\r\n}\r\n*/\r\n\r\n/*\r\nexport function memoizeThrottle<T extends Func>(\r\n func: T,\r\n wait = 0,\r\n options?: Parameters<typeof _.throttle<T>>[2],\r\n resolver?: Parameters<typeof _.memoize<(...args: Parameters<T>) => ReturnType<typeof _.throttle<T>>>>[1]\r\n) {\r\n const mem = _.memoize<(...args: Parameters<T>) => ReturnType<typeof _.throttle<T>>>(() => {\r\n return _.throttle<T>(func, wait, options);\r\n }, resolver);\r\n\r\n return (...args: Parameters<T>) => {\r\n return mem(...args)(...args);\r\n };\r\n}\r\n\r\nexport function memoizeDebounce<T extends Func>(\r\n func: T,\r\n wait = 0,\r\n options?: Parameters<typeof _.debounce<T>>[2],\r\n resolver?: Parameters<typeof _.memoize<(...args: Parameters<T>) => ReturnType<typeof _.debounce<T>>>>[1]\r\n) {\r\n const mem = _.memoize<(...args: Parameters<T>) => ReturnType<typeof _.debounce<T>>>(() => {\r\n return _.debounce<T>(func, wait, options);\r\n }, resolver);\r\n\r\n return (...args: Parameters<T>) => {\r\n return mem(...args)(...args);\r\n };\r\n}\r\n*/\r\n"],"names":["normalize","v","numericOr","values","value","buildFuncArgCacheKey","weakMap","args","keys","arg","key","uuid","delay","ms","resolve","delayError","errFactory","_","reject","err","withTimeout","promise","searchTree","treeNodes","predicate","childSelector","treeNode","node","suppressConsole","action","origConsole","result","removePrefix","str","prefixes","removed","prefix","removeSuffix","suffixes","suffix","memoEffect","getValue","callback","comparator","a","b","val","initialized","retVal","next","lazy","factory","instance","makeNonEnumerable","obj","propertyNames","propertyDescriptorMap","propertyName"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@actdim/utico",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.2",
|
|
4
4
|
"description": "A modern foundation toolkit for complex TypeScript apps",
|
|
5
5
|
"author": "Pavel Borodaev",
|
|
6
6
|
"license": "Proprietary",
|
|
@@ -52,8 +52,8 @@
|
|
|
52
52
|
"test": "npx vitest --config=vitest.node.config.ts --no-cache",
|
|
53
53
|
"test:w": "npx vitest --config=vitest.node.config.ts --watch",
|
|
54
54
|
"test:v8": "npx vite",
|
|
55
|
-
"lint": "eslint
|
|
56
|
-
"build": "tsc -b && vite build",
|
|
55
|
+
"lint": "eslint \"./**/*.{ts,tsx}\" -f visualstudio --ext .ts,.tsx --report-unused-disable-directives --max-warnings 0",
|
|
56
|
+
"build": "tsc -b tsconfig.json --noEmit && vite build",
|
|
57
57
|
"pnpm:u": "pnpm update",
|
|
58
58
|
"pnpm:ou": "pnpm outdated",
|
|
59
59
|
"ncu:l": "ncu",
|
|
@@ -62,7 +62,8 @@
|
|
|
62
62
|
"nvm:la": "nvm list available",
|
|
63
63
|
"nvm:il": "nvm install lts",
|
|
64
64
|
"format": "prettier --write .",
|
|
65
|
-
"format:check": "prettier --check ."
|
|
65
|
+
"format:check": "prettier --check .",
|
|
66
|
+
"typecheck": "tsc -p tsconfig.json --noEmit"
|
|
66
67
|
},
|
|
67
68
|
"peerDependencies": {
|
|
68
69
|
"dexie": "^4.2.0",
|
|
@@ -70,6 +71,7 @@
|
|
|
70
71
|
"uuid": "^13.0.0"
|
|
71
72
|
},
|
|
72
73
|
"devDependencies": {
|
|
74
|
+
"@eslint/js": "^9.39.2",
|
|
73
75
|
"@types/chai": "^5.2.3",
|
|
74
76
|
"@types/mocha": "^10.0.10",
|
|
75
77
|
"@types/node": "^24.10.0",
|