@wexample/js-helpers 0.0.19 → 0.0.21

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,6 +1,6 @@
1
1
  # @wexample/js-helpers
2
2
 
3
- Version: 0.0.19
3
+ Version: 0.0.21
4
4
 
5
5
  Modern, type-safe helper utilities for Wexample projects.
6
6
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Helper/Function.ts","../../src/Common/AsyncConstructor.ts"],"names":[],"mappings":";;;AAAO,SAAS,eACd,KAAA,EACgC;AAChC,EAAA,OAAO,OAAO,KAAA,KAAU,UAAA;AAC1B;;;ACAA,IAA8B,mBAA9B,MAAoF;AAAA,EAApF,WAAA,GAAA;AACE,IAAA,IAAA,CAAQ,QAAA,GAAW,KAAA;AACnB,IAAA,IAAA,CAAQ,UAAA,GAA2B,IAAA;AACnC,IAAA,IAAA,CAAiB,iBAA4C,EAAC;AAAA,EAAA;AAAA,EAE9D,IAAI,OAAA,GAAmB;AACrB,IAAA,OAAO,IAAA,CAAK,QAAA;AAAA,EACd;AAAA,EAEU,MAAM,EAAA,EAAsB;AACpC,IAAA,IAAI,OAAO,cAAA,KAAmB,UAAA,EAAY,cAAA,CAAe,EAAE,CAAA;AAAA,SACtD,UAAA,CAAW,IAAI,CAAC,CAAA;AAAA,EACvB;AAAA,EAEA,MAAM,EAAA,EAA8B;AAClC,IAAA,IAAI,KAAK,QAAA,EAAU;AACjB,MAAA,MAAM,IAAA,GAAO,IAAA,CAAK,UAAA,IAAe,EAAC;AAClC,MAAA,IAAA,CAAK,MAAM,MAAM,KAAK,GAAG,KAAA,CAAM,IAAA,EAAM,IAAI,CAAC,CAAA;AAC1C,MAAA;AAAA,IACF;AACA,IAAA,IAAA,CAAK,cAAA,CAAe,KAAK,EAAE,CAAA;AAAA,EAC7B;AAAA,EAEA,MAAgB,iBAAiB,IAAA,EAA4B;AAC3D,IAAA,IAAI,KAAK,QAAA,EAAU;AAEnB,IAAA,IAAA,CAAK,QAAA,GAAW,IAAA;AAChB,IAAA,IAAA,CAAK,UAAA,GAAa,IAAA;AAElB,IAAA,MAAM,SAAA,GAAY,IAAA,CAAK,cAAA,CAAe,MAAA,CAAO,CAAC,CAAA;AAE9C,IAAA,KAAA,MAAW,MAAM,SAAA,EAAW;AAC1B,MAAA,IAAI,CAAC,cAAA,CAAe,EAAE,CAAA,EAAG;AACvB,QAAA,MAAM,IAAI,UAAU,oCAAoC,CAAA;AAAA,MAC1D;AACA,MAAA,MAAM,EAAA,CAAG,KAAA,CAAM,IAAA,EAAM,IAAI,CAAA;AAAA,IAC3B;AAAA,EACF;AAAA,EAEU,IAAA,GAAa;AACrB,IAAA,MAAA,CAAO,KAAK,IAAI,CAAA;AAAA,EAClB;AACF","file":"AsyncConstructor.cjs","sourcesContent":["export function functionIsType<TArgs extends unknown[] = unknown[], R = unknown>(\n value: unknown\n): value is (...args: TArgs) => R {\n return typeof value === 'function';\n}\n","import { functionIsType } from '../Helper/Function';\n\ntype AnyFn<TThis, TArgs extends unknown[]> = (this: TThis, ...args: TArgs) => void | Promise<void>;\n\nexport default abstract class AsyncConstructor<TArgs extends unknown[] = unknown[]> {\n private _isReady = false;\n private _readyArgs: TArgs | null = null;\n private readonly readyCallbacks: Array<AnyFn<this, TArgs>> = [];\n\n get isReady(): boolean {\n return this._isReady;\n }\n\n protected defer(fn: () => void): void {\n if (typeof queueMicrotask === 'function') queueMicrotask(fn);\n else setTimeout(fn, 0);\n }\n\n ready(cb: AnyFn<this, TArgs>): void {\n if (this._isReady) {\n const args = this._readyArgs ?? ([] as unknown as TArgs);\n this.defer(() => void cb.apply(this, args));\n return;\n }\n this.readyCallbacks.push(cb);\n }\n\n protected async readyComplete(...args: TArgs): Promise<void> {\n if (this._isReady) return;\n\n this._isReady = true;\n this._readyArgs = args;\n\n const callbacks = this.readyCallbacks.splice(0);\n\n for (const cb of callbacks) {\n if (!functionIsType(cb)) {\n throw new TypeError('Ready callback must be a function.');\n }\n await cb.apply(this, args);\n }\n }\n\n protected seal(): void {\n Object.seal(this);\n }\n}\n"]}
1
+ {"version":3,"sources":["../../src/Helper/Function.ts","../../src/Common/AsyncConstructor.ts"],"names":[],"mappings":";;;AAAO,SAAS,eACd,KAAA,EACgC;AAChC,EAAA,OAAO,OAAO,KAAA,KAAU,UAAA;AAC1B;;;ACAA,IAA8B,mBAA9B,MAAoF;AAAA,EAApF,WAAA,GAAA;AACE,IAAA,IAAA,CAAQ,QAAA,GAAW,KAAA;AACnB,IAAA,IAAA,CAAQ,UAAA,GAA2B,IAAA;AACnC,IAAA,IAAA,CAAiB,iBAA4C,EAAC;AAAA,EAAA;AAAA,EAE9D,IAAI,OAAA,GAAmB;AACrB,IAAA,OAAO,IAAA,CAAK,QAAA;AAAA,EACd;AAAA,EAEU,MAAM,EAAA,EAAsB;AACpC,IAAA,IAAI,OAAO,cAAA,KAAmB,UAAA,EAAY,cAAA,CAAe,EAAE,CAAA;AAAA,SACtD,UAAA,CAAW,IAAI,CAAC,CAAA;AAAA,EACvB;AAAA,EAEA,MAAM,EAAA,EAA8B;AAClC,IAAA,IAAI,KAAK,QAAA,EAAU;AACjB,MAAA,MAAM,IAAA,GAAO,IAAA,CAAK,UAAA,IAAe,EAAC;AAClC,MAAA,IAAA,CAAK,MAAM,MAAM,KAAK,GAAG,KAAA,CAAM,IAAA,EAAM,IAAI,CAAC,CAAA;AAC1C,MAAA;AAAA,IACF;AACA,IAAA,IAAA,CAAK,cAAA,CAAe,KAAK,EAAE,CAAA;AAAA,EAC7B;AAAA,EAEA,MAAgB,iBAAiB,IAAA,EAA4B;AAC3D,IAAA,IAAI,KAAK,QAAA,EAAU;AAEnB,IAAA,IAAA,CAAK,QAAA,GAAW,IAAA;AAChB,IAAA,IAAA,CAAK,UAAA,GAAa,IAAA;AAElB,IAAA,MAAM,SAAA,GAAY,IAAA,CAAK,cAAA,CAAe,MAAA,CAAO,CAAC,CAAA;AAE9C,IAAA,KAAA,MAAW,MAAM,SAAA,EAAW;AAC1B,MAAA,IAAI,CAAC,cAAA,CAAe,EAAE,CAAA,EAAG;AACvB,QAAA,MAAM,IAAI,UAAU,oCAAoC,CAAA;AAAA,MAC1D;AACA,MAAA,MAAM,EAAA,CAAG,KAAA,CAAM,IAAA,EAAM,IAAI,CAAA;AAAA,IAC3B;AAAA,EACF;AAAA,EAEU,IAAA,GAAa;AACrB,IAAA,MAAA,CAAO,KAAK,IAAI,CAAA;AAAA,EAClB;AACF","file":"AsyncConstructor.cjs","sourcesContent":["export function functionIsType<TArgs extends unknown[] = unknown[], R = unknown>(\n value: unknown\n): value is (...args: TArgs) => R {\n return typeof value === 'function';\n}\n","import { functionIsType } from '../Helper/Function.js';\n\ntype AnyFn<TThis, TArgs extends unknown[]> = (this: TThis, ...args: TArgs) => void | Promise<void>;\n\nexport default abstract class AsyncConstructor<TArgs extends unknown[] = unknown[]> {\n private _isReady = false;\n private _readyArgs: TArgs | null = null;\n private readonly readyCallbacks: Array<AnyFn<this, TArgs>> = [];\n\n get isReady(): boolean {\n return this._isReady;\n }\n\n protected defer(fn: () => void): void {\n if (typeof queueMicrotask === 'function') queueMicrotask(fn);\n else setTimeout(fn, 0);\n }\n\n ready(cb: AnyFn<this, TArgs>): void {\n if (this._isReady) {\n const args = this._readyArgs ?? ([] as unknown as TArgs);\n this.defer(() => void cb.apply(this, args));\n return;\n }\n this.readyCallbacks.push(cb);\n }\n\n protected async readyComplete(...args: TArgs): Promise<void> {\n if (this._isReady) return;\n\n this._isReady = true;\n this._readyArgs = args;\n\n const callbacks = this.readyCallbacks.splice(0);\n\n for (const cb of callbacks) {\n if (!functionIsType(cb)) {\n throw new TypeError('Ready callback must be a function.');\n }\n await cb.apply(this, args);\n }\n }\n\n protected seal(): void {\n Object.seal(this);\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Helper/Function.ts","../../src/Common/AsyncConstructor.ts"],"names":[],"mappings":";AAAO,SAAS,eACd,KAAA,EACgC;AAChC,EAAA,OAAO,OAAO,KAAA,KAAU,UAAA;AAC1B;;;ACAA,IAA8B,mBAA9B,MAAoF;AAAA,EAApF,WAAA,GAAA;AACE,IAAA,IAAA,CAAQ,QAAA,GAAW,KAAA;AACnB,IAAA,IAAA,CAAQ,UAAA,GAA2B,IAAA;AACnC,IAAA,IAAA,CAAiB,iBAA4C,EAAC;AAAA,EAAA;AAAA,EAE9D,IAAI,OAAA,GAAmB;AACrB,IAAA,OAAO,IAAA,CAAK,QAAA;AAAA,EACd;AAAA,EAEU,MAAM,EAAA,EAAsB;AACpC,IAAA,IAAI,OAAO,cAAA,KAAmB,UAAA,EAAY,cAAA,CAAe,EAAE,CAAA;AAAA,SACtD,UAAA,CAAW,IAAI,CAAC,CAAA;AAAA,EACvB;AAAA,EAEA,MAAM,EAAA,EAA8B;AAClC,IAAA,IAAI,KAAK,QAAA,EAAU;AACjB,MAAA,MAAM,IAAA,GAAO,IAAA,CAAK,UAAA,IAAe,EAAC;AAClC,MAAA,IAAA,CAAK,MAAM,MAAM,KAAK,GAAG,KAAA,CAAM,IAAA,EAAM,IAAI,CAAC,CAAA;AAC1C,MAAA;AAAA,IACF;AACA,IAAA,IAAA,CAAK,cAAA,CAAe,KAAK,EAAE,CAAA;AAAA,EAC7B;AAAA,EAEA,MAAgB,iBAAiB,IAAA,EAA4B;AAC3D,IAAA,IAAI,KAAK,QAAA,EAAU;AAEnB,IAAA,IAAA,CAAK,QAAA,GAAW,IAAA;AAChB,IAAA,IAAA,CAAK,UAAA,GAAa,IAAA;AAElB,IAAA,MAAM,SAAA,GAAY,IAAA,CAAK,cAAA,CAAe,MAAA,CAAO,CAAC,CAAA;AAE9C,IAAA,KAAA,MAAW,MAAM,SAAA,EAAW;AAC1B,MAAA,IAAI,CAAC,cAAA,CAAe,EAAE,CAAA,EAAG;AACvB,QAAA,MAAM,IAAI,UAAU,oCAAoC,CAAA;AAAA,MAC1D;AACA,MAAA,MAAM,EAAA,CAAG,KAAA,CAAM,IAAA,EAAM,IAAI,CAAA;AAAA,IAC3B;AAAA,EACF;AAAA,EAEU,IAAA,GAAa;AACrB,IAAA,MAAA,CAAO,KAAK,IAAI,CAAA;AAAA,EAClB;AACF","file":"AsyncConstructor.js","sourcesContent":["export function functionIsType<TArgs extends unknown[] = unknown[], R = unknown>(\n value: unknown\n): value is (...args: TArgs) => R {\n return typeof value === 'function';\n}\n","import { functionIsType } from '../Helper/Function';\n\ntype AnyFn<TThis, TArgs extends unknown[]> = (this: TThis, ...args: TArgs) => void | Promise<void>;\n\nexport default abstract class AsyncConstructor<TArgs extends unknown[] = unknown[]> {\n private _isReady = false;\n private _readyArgs: TArgs | null = null;\n private readonly readyCallbacks: Array<AnyFn<this, TArgs>> = [];\n\n get isReady(): boolean {\n return this._isReady;\n }\n\n protected defer(fn: () => void): void {\n if (typeof queueMicrotask === 'function') queueMicrotask(fn);\n else setTimeout(fn, 0);\n }\n\n ready(cb: AnyFn<this, TArgs>): void {\n if (this._isReady) {\n const args = this._readyArgs ?? ([] as unknown as TArgs);\n this.defer(() => void cb.apply(this, args));\n return;\n }\n this.readyCallbacks.push(cb);\n }\n\n protected async readyComplete(...args: TArgs): Promise<void> {\n if (this._isReady) return;\n\n this._isReady = true;\n this._readyArgs = args;\n\n const callbacks = this.readyCallbacks.splice(0);\n\n for (const cb of callbacks) {\n if (!functionIsType(cb)) {\n throw new TypeError('Ready callback must be a function.');\n }\n await cb.apply(this, args);\n }\n }\n\n protected seal(): void {\n Object.seal(this);\n }\n}\n"]}
1
+ {"version":3,"sources":["../../src/Helper/Function.ts","../../src/Common/AsyncConstructor.ts"],"names":[],"mappings":";AAAO,SAAS,eACd,KAAA,EACgC;AAChC,EAAA,OAAO,OAAO,KAAA,KAAU,UAAA;AAC1B;;;ACAA,IAA8B,mBAA9B,MAAoF;AAAA,EAApF,WAAA,GAAA;AACE,IAAA,IAAA,CAAQ,QAAA,GAAW,KAAA;AACnB,IAAA,IAAA,CAAQ,UAAA,GAA2B,IAAA;AACnC,IAAA,IAAA,CAAiB,iBAA4C,EAAC;AAAA,EAAA;AAAA,EAE9D,IAAI,OAAA,GAAmB;AACrB,IAAA,OAAO,IAAA,CAAK,QAAA;AAAA,EACd;AAAA,EAEU,MAAM,EAAA,EAAsB;AACpC,IAAA,IAAI,OAAO,cAAA,KAAmB,UAAA,EAAY,cAAA,CAAe,EAAE,CAAA;AAAA,SACtD,UAAA,CAAW,IAAI,CAAC,CAAA;AAAA,EACvB;AAAA,EAEA,MAAM,EAAA,EAA8B;AAClC,IAAA,IAAI,KAAK,QAAA,EAAU;AACjB,MAAA,MAAM,IAAA,GAAO,IAAA,CAAK,UAAA,IAAe,EAAC;AAClC,MAAA,IAAA,CAAK,MAAM,MAAM,KAAK,GAAG,KAAA,CAAM,IAAA,EAAM,IAAI,CAAC,CAAA;AAC1C,MAAA;AAAA,IACF;AACA,IAAA,IAAA,CAAK,cAAA,CAAe,KAAK,EAAE,CAAA;AAAA,EAC7B;AAAA,EAEA,MAAgB,iBAAiB,IAAA,EAA4B;AAC3D,IAAA,IAAI,KAAK,QAAA,EAAU;AAEnB,IAAA,IAAA,CAAK,QAAA,GAAW,IAAA;AAChB,IAAA,IAAA,CAAK,UAAA,GAAa,IAAA;AAElB,IAAA,MAAM,SAAA,GAAY,IAAA,CAAK,cAAA,CAAe,MAAA,CAAO,CAAC,CAAA;AAE9C,IAAA,KAAA,MAAW,MAAM,SAAA,EAAW;AAC1B,MAAA,IAAI,CAAC,cAAA,CAAe,EAAE,CAAA,EAAG;AACvB,QAAA,MAAM,IAAI,UAAU,oCAAoC,CAAA;AAAA,MAC1D;AACA,MAAA,MAAM,EAAA,CAAG,KAAA,CAAM,IAAA,EAAM,IAAI,CAAA;AAAA,IAC3B;AAAA,EACF;AAAA,EAEU,IAAA,GAAa;AACrB,IAAA,MAAA,CAAO,KAAK,IAAI,CAAA;AAAA,EAClB;AACF","file":"AsyncConstructor.js","sourcesContent":["export function functionIsType<TArgs extends unknown[] = unknown[], R = unknown>(\n value: unknown\n): value is (...args: TArgs) => R {\n return typeof value === 'function';\n}\n","import { functionIsType } from '../Helper/Function.js';\n\ntype AnyFn<TThis, TArgs extends unknown[]> = (this: TThis, ...args: TArgs) => void | Promise<void>;\n\nexport default abstract class AsyncConstructor<TArgs extends unknown[] = unknown[]> {\n private _isReady = false;\n private _readyArgs: TArgs | null = null;\n private readonly readyCallbacks: Array<AnyFn<this, TArgs>> = [];\n\n get isReady(): boolean {\n return this._isReady;\n }\n\n protected defer(fn: () => void): void {\n if (typeof queueMicrotask === 'function') queueMicrotask(fn);\n else setTimeout(fn, 0);\n }\n\n ready(cb: AnyFn<this, TArgs>): void {\n if (this._isReady) {\n const args = this._readyArgs ?? ([] as unknown as TArgs);\n this.defer(() => void cb.apply(this, args));\n return;\n }\n this.readyCallbacks.push(cb);\n }\n\n protected async readyComplete(...args: TArgs): Promise<void> {\n if (this._isReady) return;\n\n this._isReady = true;\n this._readyArgs = args;\n\n const callbacks = this.readyCallbacks.splice(0);\n\n for (const cb of callbacks) {\n if (!functionIsType(cb)) {\n throw new TypeError('Ready callback must be a function.');\n }\n await cb.apply(this, args);\n }\n }\n\n protected seal(): void {\n Object.seal(this);\n }\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wexample/js-helpers",
3
- "version": "0.0.19",
3
+ "version": "0.0.21",
4
4
  "description": "Modern, type-safe helper utilities for Wexample projects.",
5
5
  "license": "MIT",
6
6
  "type": "module",