Comparing version 0.8.0 to 0.9.0
@@ -106,3 +106,3 @@ import type { array } from "./arrays.ts"; | ||
export type BuiltinObjects = instantiateConstructors<BuiltinObjectKind>; | ||
export type objectKindOf<data extends object> = object extends data ? keyof builtinConstructors | undefined : data extends Fn ? "Function" : instantiableObjectKind<data> extends never ? keyof builtinConstructors | undefined : instantiableObjectKind<data>; | ||
export type objectKindOf<data extends object> = object extends data ? keyof builtinConstructors | undefined : data extends Fn ? "Function" : instantiableObjectKind<data> extends never ? undefined : instantiableObjectKind<data>; | ||
export type describeObject<o extends object, opts extends DescribeOptions = {}> = objectKindOf<o> extends string ? [ | ||
@@ -109,0 +109,0 @@ opts["includeArticles"] |
@@ -30,2 +30,8 @@ import type { array } from "./arrays.ts"; | ||
}; | ||
/** Returns true if a type can be homomorphically mapped without losing information. | ||
* Useful for avoiding e.g. classes with private properties while mapping. | ||
*/ | ||
export type isSafelyMappable<t> = { | ||
[k in keyof t]: t[k]; | ||
} extends t ? true : false; | ||
export type keySet<key extends string = string> = { | ||
@@ -32,0 +38,0 @@ readonly [_ in key]?: 1; |
@@ -1,2 +0,2 @@ | ||
export declare const arkUtilVersion = "0.8.0"; | ||
export declare const arkUtilVersion = "0.9.0"; | ||
export declare const initialRegistryContents: { | ||
@@ -3,0 +3,0 @@ version: string; |
@@ -8,6 +8,6 @@ import { domainOf } from "./domain.js"; | ||
// For now, we assert this matches the package.json version via a unit test. | ||
export const arkUtilVersion = "0.8.0"; | ||
export const arkUtilVersion = "0.9.0"; | ||
export const initialRegistryContents = { | ||
version: arkUtilVersion, | ||
filename: import.meta.filename, | ||
filename: import.meta.filename ?? globalThis.__filename ?? "unknown", | ||
FileConstructor | ||
@@ -17,3 +17,3 @@ }; | ||
const namesByResolution = new WeakMap(); | ||
const nameCounts = {}; | ||
const nameCounts = Object.create(null); | ||
export const register = (value) => { | ||
@@ -20,0 +20,0 @@ const existingName = namesByResolution.get(value); |
{ | ||
"name": "@ark/util", | ||
"version": "0.8.0", | ||
"version": "0.9.0", | ||
"author": { | ||
@@ -5,0 +5,0 @@ "name": "David Blass", |
@@ -10,2 +10,3 @@ { | ||
"strict": true, | ||
"noUncheckedSideEffectImports": true, | ||
"declaration": true, | ||
@@ -12,0 +13,0 @@ "verbatimModuleSyntax": true, |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
88772
1911