@xylabs/object 4.13.14 → 4.13.16

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.
Files changed (50) hide show
  1. package/README.md +22 -31
  2. package/dist/neutral/AsObjectFactory.d.ts +7 -0
  3. package/dist/neutral/AsObjectFactory.d.ts.map +1 -0
  4. package/dist/neutral/AsTypeFactory.d.ts +7 -0
  5. package/dist/neutral/AsTypeFactory.d.ts.map +1 -0
  6. package/dist/neutral/EmptyObject.d.ts +9 -0
  7. package/dist/neutral/EmptyObject.d.ts.map +1 -0
  8. package/dist/neutral/IsObjectFactory.d.ts +8 -0
  9. package/dist/neutral/IsObjectFactory.d.ts.map +1 -0
  10. package/dist/neutral/JsonObject.d.ts +10 -0
  11. package/dist/neutral/JsonObject.d.ts.map +1 -0
  12. package/dist/neutral/ObjectWrapper.d.ts +8 -0
  13. package/dist/neutral/ObjectWrapper.d.ts.map +1 -0
  14. package/dist/neutral/OmitStartsWith.d.ts +10 -0
  15. package/dist/neutral/OmitStartsWith.d.ts.map +1 -0
  16. package/dist/neutral/Optional.d.ts +2 -0
  17. package/dist/neutral/Optional.d.ts.map +1 -0
  18. package/dist/neutral/Override.d.ts +3 -0
  19. package/dist/neutral/Override.d.ts.map +1 -0
  20. package/dist/neutral/PartialRecord.d.ts +5 -0
  21. package/dist/neutral/PartialRecord.d.ts.map +1 -0
  22. package/dist/neutral/PickStartsWith.d.ts +7 -0
  23. package/dist/neutral/PickStartsWith.d.ts.map +1 -0
  24. package/dist/neutral/StringKeyObject.d.ts +4 -0
  25. package/dist/neutral/StringKeyObject.d.ts.map +1 -0
  26. package/dist/neutral/Validator.d.ts +11 -0
  27. package/dist/neutral/Validator.d.ts.map +1 -0
  28. package/dist/neutral/WithAdditional.d.ts +3 -0
  29. package/dist/neutral/WithAdditional.d.ts.map +1 -0
  30. package/dist/neutral/asObject.d.ts +3 -0
  31. package/dist/neutral/asObject.d.ts.map +1 -0
  32. package/dist/neutral/deepMerge.d.ts +49 -0
  33. package/dist/neutral/deepMerge.d.ts.map +1 -0
  34. package/dist/neutral/index.d.ts +23 -157
  35. package/dist/neutral/index.d.ts.map +1 -0
  36. package/dist/neutral/isObject.d.ts +2 -0
  37. package/dist/neutral/isObject.d.ts.map +1 -0
  38. package/dist/neutral/isType.d.ts +3 -0
  39. package/dist/neutral/isType.d.ts.map +1 -0
  40. package/dist/neutral/omitBy.d.ts +6 -0
  41. package/dist/neutral/omitBy.d.ts.map +1 -0
  42. package/dist/neutral/pickBy.d.ts +6 -0
  43. package/dist/neutral/pickBy.d.ts.map +1 -0
  44. package/dist/neutral/removeFields.d.ts +3 -0
  45. package/dist/neutral/removeFields.d.ts.map +1 -0
  46. package/dist/neutral/spec/deepMerge.spec.d.ts +2 -0
  47. package/dist/neutral/spec/deepMerge.spec.d.ts.map +1 -0
  48. package/dist/neutral/toJson.d.ts +7 -0
  49. package/dist/neutral/toJson.d.ts.map +1 -0
  50. package/package.json +7 -7
package/README.md CHANGED
@@ -1,63 +1,54 @@
1
- [![logo][]](https://xylabs.com)
2
-
3
1
  # @xylabs/object
4
2
 
3
+ [![logo][]](https://xylabs.com)
4
+
5
+ [![main-build][]][main-build-link]
5
6
  [![npm-badge][]][npm-link]
6
7
  [![npm-downloads-badge][]][npm-link]
7
8
  [![jsdelivr-badge][]][jsdelivr-link]
8
9
  [![npm-license-badge][]](LICENSE)
10
+ [![codacy-badge][]][codacy-link]
11
+ [![codeclimate-badge][]][codeclimate-link]
12
+ [![snyk-badge][]][snyk-link]
9
13
  [![socket-badge][]][socket-link]
10
14
 
11
- > XY Labs generalized Javascript library
12
-
13
- ## Table of Contents
14
-
15
- - [Description](#description)
16
- - [Install](#install)
17
- - [Maintainers](#maintainers)
18
- - [License](#license)
19
- - [Credits](#credits)
20
-
21
- ## Description
15
+ Version: 4.13.15
22
16
 
23
- Common Javascript code that is used throughout XYO projects that use React.
17
+ Primary SDK for using XYO Protocol 2.0
24
18
 
25
- ## Install
26
-
27
- Using npm:
28
-
29
- ```sh
30
- npm i --save @xylabs/object
31
- ```
19
+ ## Documentation
32
20
 
33
- Using yarn:
21
+ Coming Soon!
34
22
 
35
- ```sh
36
- yarn add @xylabs/object
37
- ```
38
-
39
- ## Documentation
40
- [Developer Reference](https://xylabs.github.io/sdk-js)
23
+ Part of [sdk-js](https://www.npmjs.com/package/@xyo-network/sdk-js)
41
24
 
42
25
  ## Maintainers
43
26
 
44
27
  - [Arie Trouw](https://github.com/arietrouw) ([arietrouw.com](https://arietrouw.com))
45
- - [Joel Carter](https://github.com/JoelBCarter)
46
28
  - [Matt Jones](https://github.com/jonesmac)
29
+ - [Joel Carter](https://github.com/JoelBCarter)
47
30
  - [Jordan Trouw](https://github.com/jordantrouw)
48
31
 
49
32
  ## License
50
33
 
51
- See the [LICENSE](LICENSE) file for license details
34
+ > See the [LICENSE](LICENSE) file for license details
52
35
 
53
36
  ## Credits
54
37
 
55
- [Made with 🔥and ❄️ by XY Labs](https://xylabs.com)
38
+ [Made with 🔥 and ❄️ by XYLabs](https://xylabs.com)
56
39
 
57
40
  [logo]: https://cdn.xy.company/img/brand/XYPersistentCompany_Logo_Icon_Colored.svg
58
41
 
42
+ [main-build]: https://github.com/xylabs/sdk-js/actions/workflows/build.yml/badge.svg
43
+ [main-build-link]: https://github.com/xylabs/sdk-js/actions/workflows/build.yml
59
44
  [npm-badge]: https://img.shields.io/npm/v/@xylabs/object.svg
60
45
  [npm-link]: https://www.npmjs.com/package/@xylabs/object
46
+ [codacy-badge]: https://app.codacy.com/project/badge/Grade/c8e15e14f37741c18cfb47ac7245c698
47
+ [codacy-link]: https://www.codacy.com/gh/xylabs/sdk-js/dashboard?utm_source=github.com&utm_medium=referral&utm_content=xylabs/sdk-js&utm_campaign=Badge_Grade
48
+ [codeclimate-badge]: https://api.codeclimate.com/v1/badges/c5eb068f806f0b047ea7/maintainability
49
+ [codeclimate-link]: https://codeclimate.com/github/xylabs/sdk-js/maintainability
50
+ [snyk-badge]: https://snyk.io/test/github/xylabs/sdk-js/badge.svg?targetFile=package.json
51
+ [snyk-link]: https://snyk.io/test/github/xylabs/sdk-js?targetFile=package.json
61
52
 
62
53
  [npm-downloads-badge]: https://img.shields.io/npm/dw/@xylabs/object
63
54
  [npm-license-badge]: https://img.shields.io/npm/l/@xylabs/object
@@ -0,0 +1,7 @@
1
+ import type { TypeCheck } from '@xylabs/object-model';
2
+ import type { TypedObject } from '@xylabs/typeof';
3
+ export declare const AsObjectFactory: {
4
+ create: <T extends TypedObject>(typeCheck: TypeCheck<T>) => import("@xylabs/object-model").AsTypeFunction<T>;
5
+ createOptional: <T extends TypedObject>(typeCheck: TypeCheck<T>) => (value: import("@xylabs/promise").AnyNonPromise) => T | undefined;
6
+ };
7
+ //# sourceMappingURL=AsObjectFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AsObjectFactory.d.ts","sourceRoot":"","sources":["../../src/AsObjectFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAIjD,eAAO,MAAM,eAAe;aACjB,CAAC,SAAS,WAAW,aAAa,SAAS,CAAC,CAAC,CAAC;qBAGtC,CAAC,SAAS,WAAW,aAAa,SAAS,CAAC,CAAC,CAAC;CAGhE,CAAA"}
@@ -0,0 +1,7 @@
1
+ import type { AsTypeFunction, TypeCheck } from '@xylabs/object-model';
2
+ import type { AnyNonPromise } from '@xylabs/promise';
3
+ export declare const AsTypeFactory: {
4
+ create: <T extends AnyNonPromise>(typeCheck: TypeCheck<T>) => AsTypeFunction<T>;
5
+ createOptional: <T extends AnyNonPromise>(typeCheck: TypeCheck<T>) => (value: AnyNonPromise) => T | undefined;
6
+ };
7
+ //# sourceMappingURL=AsTypeFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AsTypeFactory.d.ts","sourceRoot":"","sources":["../../src/AsTypeFactory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,cAAc,EACS,SAAS,EAEjC,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAIpD,eAAO,MAAM,aAAa;aACf,CAAC,SAAS,aAAa,aAAa,SAAS,CAAC,CAAC,CAAC,KAAG,cAAc,CAAC,CAAC,CAAC;qBAgC5D,CAAC,SAAS,aAAa,aAAa,SAAS,CAAC,CAAC,CAAC,aAC1C,aAAa,KAAG,CAAC,GAAG,SAAS;CASrD,CAAA"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * An empty object, which means that it does enforce the set of field names, defaulting to an empty set until
3
+ * extended from, which then adds only those additional fields
4
+ */
5
+ export type EmptyObject<T extends object = object> = {
6
+ [K in keyof T]?: never;
7
+ };
8
+ export type EmptyObjectOf<T extends object> = EmptyObject<T> extends T ? EmptyObject<T> : never;
9
+ //# sourceMappingURL=EmptyObject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmptyObject.d.ts","sourceRoot":"","sources":["../../src/EmptyObject.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK;CAAE,CAAA;AAE/E,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,MAAM,IAAI,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,KAAK,CAAA"}
@@ -0,0 +1,8 @@
1
+ import type { TypeCheck, TypeCheckConfig } from '@xylabs/object-model';
2
+ import { type ObjectTypeShape, type TypedObject } from '@xylabs/typeof';
3
+ export interface ObjectTypeConfig extends TypeCheckConfig {
4
+ }
5
+ export declare class IsObjectFactory<T extends TypedObject> {
6
+ create(shape?: ObjectTypeShape, additionalChecks?: TypeCheck<TypedObject>[]): TypeCheck<T>;
7
+ }
8
+ //# sourceMappingURL=IsObjectFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IsObjectFactory.d.ts","sourceRoot":"","sources":["../../src/IsObjectFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtE,OAAO,EAEL,KAAK,eAAe,EAAE,KAAK,WAAW,EACvC,MAAM,gBAAgB,CAAA;AAIvB,MAAM,WAAW,gBAAiB,SAAQ,eAAe;CAAG;AAE5D,qBAAa,eAAe,CAAC,CAAC,SAAS,WAAW;IAChD,MAAM,CAAC,KAAK,CAAC,EAAE,eAAe,EAAE,gBAAgB,CAAC,EAAE,SAAS,CAAC,WAAW,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC;CAsB3F"}
@@ -0,0 +1,10 @@
1
+ export type JsonValue = string | number | boolean | null | JsonObject | JsonArray;
2
+ export type JsonObject = {
3
+ [key: string]: JsonValue;
4
+ };
5
+ export type JsonArray = JsonValue[];
6
+ export declare const isJsonValue: (value: unknown) => value is JsonValue;
7
+ export declare const isJsonArray: (value: unknown) => value is JsonArray;
8
+ export declare const isValidJsonFieldPair: ([key, value]: [key: unknown, value: unknown]) => boolean;
9
+ export declare const isJsonObject: (value: unknown) => value is JsonObject;
10
+ //# sourceMappingURL=JsonObject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JsonObject.d.ts","sourceRoot":"","sources":["../../src/JsonObject.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,UAAU,GAAG,SAAS,CAAA;AACjF,MAAM,MAAM,UAAU,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAA;AACrD,MAAM,MAAM,SAAS,GAAG,SAAS,EAAE,CAAA;AAEnC,eAAO,MAAM,WAAW,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,SAWrD,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,SAErD,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,YAEhF,CAAA;AAED,eAAO,MAAM,YAAY,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,UAMtD,CAAA"}
@@ -0,0 +1,8 @@
1
+ import type { EmptyObject } from './EmptyObject.ts';
2
+ import type { StringKeyObject } from './StringKeyObject.ts';
3
+ export declare abstract class ObjectWrapper<T extends EmptyObject = EmptyObject> {
4
+ readonly obj: T;
5
+ constructor(obj: T);
6
+ protected get stringKeyObj(): StringKeyObject;
7
+ }
8
+ //# sourceMappingURL=ObjectWrapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObjectWrapper.d.ts","sourceRoot":"","sources":["../../src/ObjectWrapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAE3D,8BAAsB,aAAa,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW;IACrE,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAA;gBACH,GAAG,EAAE,CAAC;IAIlB,SAAS,KAAK,YAAY,IACL,eAAe,CACnC;CACF"}
@@ -0,0 +1,10 @@
1
+ export type OmitStartsWith<T, Prefix extends string> = {
2
+ [K in keyof T as K extends `${Prefix}${string}` ? never : K]: T[K];
3
+ };
4
+ export type DeepOmitStartsWith<T, Prefix extends string> = T extends (infer U)[] ? DeepOmitStartsWith<U, Prefix>[] : T extends object ? {
5
+ [K in keyof T as K extends string ? K extends `${Prefix}${string}` ? never : K : K]: DeepOmitStartsWith<T[K], Prefix>;
6
+ } : T;
7
+ export type DeepRestrictToStringKeys<T> = {
8
+ [K in keyof T as K extends string ? K : never]: T[K] extends (infer U)[] ? DeepRestrictToStringKeys<U>[] : T[K] extends object ? DeepRestrictToStringKeys<T[K]> : T[K];
9
+ };
10
+ //# sourceMappingURL=OmitStartsWith.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OmitStartsWith.d.ts","sourceRoot":"","sources":["../../src/OmitStartsWith.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,CAAC,CAAC,EAAE,MAAM,SAAS,MAAM,IAAI;KACpD,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACnE,CAAA;AAED,MAAM,MAAM,kBAAkB,CAAC,CAAC,EAAE,MAAM,SAAS,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GAC5E,kBAAkB,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,GAC/B,CAAC,SAAS,MAAM,GACd;KACG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,MAAM,GAC7B,CAAC,SAAS,GAAG,MAAM,GAAG,MAAM,EAAE,GAC5B,KAAK,GACL,CAAC,GACH,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;CACzC,GACD,CAAC,CAAA;AAEP,MAAM,MAAM,wBAAwB,CAAC,CAAC,IAAI;KACvC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,MAAM,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GACpE,wBAAwB,CAAC,CAAC,CAAC,EAAE,GAC7B,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GACjB,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAC9B,CAAC,CAAC,CAAC,CAAC;CACX,CAAA"}
@@ -0,0 +1,2 @@
1
+ export type Optional<T extends object, F extends keyof T> = Omit<T, F> & Partial<Pick<T, F>>;
2
+ //# sourceMappingURL=Optional.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Optional.d.ts","sourceRoot":"","sources":["../../src/Optional.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ type Override<T1, T2> = Omit<T1, keyof T2> & T2;
2
+ export type { Override };
3
+ //# sourceMappingURL=Override.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Override.d.ts","sourceRoot":"","sources":["../../src/Override.ts"],"names":[],"mappings":"AAAA,KAAK,QAAQ,CAAC,EAAE,EAAE,EAAE,IAAI,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,CAAA;AAE/C,YAAY,EAAE,QAAQ,EAAE,CAAA"}
@@ -0,0 +1,5 @@
1
+ /** @deprecated use Partial<Record<>> instead */
2
+ export type PartialRecord<K extends keyof any, T> = {
3
+ [P in K]?: T;
4
+ };
5
+ //# sourceMappingURL=PartialRecord.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PartialRecord.d.ts","sourceRoot":"","sources":["../../src/PartialRecord.ts"],"names":[],"mappings":"AAEA,gDAAgD;AAChD,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,MAAM,GAAG,EAAE,CAAC,IAAI;KACjD,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;CACb,CAAA"}
@@ -0,0 +1,7 @@
1
+ export type PickStartsWith<T, Prefix extends string> = {
2
+ [K in keyof T as K extends `${Prefix}${string}` ? K : never]: T[K];
3
+ };
4
+ export type DeepPickStartsWith<T, Prefix extends string> = T extends (infer U)[] ? DeepPickStartsWith<U, Prefix>[] : T extends object ? {
5
+ [K in keyof T as K extends string ? K extends `${Prefix}${string}` ? K : never : K]: DeepPickStartsWith<T[K], Prefix>;
6
+ } : T;
7
+ //# sourceMappingURL=PickStartsWith.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PickStartsWith.d.ts","sourceRoot":"","sources":["../../src/PickStartsWith.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,CAAC,CAAC,EAAE,MAAM,SAAS,MAAM,IAAI;KACpD,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;CACnE,CAAA;AAED,MAAM,MAAM,kBAAkB,CAAC,CAAC,EAAE,MAAM,SAAS,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GAC5E,kBAAkB,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,GAC/B,CAAC,SAAS,MAAM,GACd;KACG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,MAAM,GAC7B,CAAC,SAAS,GAAG,MAAM,GAAG,MAAM,EAAE,GAC5B,CAAC,GACD,KAAK,GACP,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;CACzC,GACD,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ export type StringKeyObject<T = unknown> = {
2
+ [key: string]: T;
3
+ };
4
+ //# sourceMappingURL=StringKeyObject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StringKeyObject.d.ts","sourceRoot":"","sources":["../../src/StringKeyObject.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,CAAC,CAAC,GAAG,OAAO,IAAI;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAA;CAAE,CAAA"}
@@ -0,0 +1,11 @@
1
+ import type { AnyObject } from '@xylabs/object-model';
2
+ import type { Promisable } from '@xylabs/promise';
3
+ import type { EmptyObject } from './EmptyObject.ts';
4
+ import { ObjectWrapper } from './ObjectWrapper.ts';
5
+ export interface Validator<T extends EmptyObject = AnyObject> {
6
+ validate(payload: T): Promisable<Error[]>;
7
+ }
8
+ export declare abstract class ValidatorBase<T extends EmptyObject = AnyObject> extends ObjectWrapper<Partial<T>> implements Validator<T> {
9
+ abstract validate(payload: T): Promisable<Error[]>;
10
+ }
11
+ //# sourceMappingURL=Validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Validator.d.ts","sourceRoot":"","sources":["../../src/Validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAEjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,MAAM,WAAW,SAAS,CAAC,CAAC,SAAS,WAAW,GAAG,SAAS;IAC1D,QAAQ,CAAC,OAAO,EAAE,CAAC,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC,CAAA;CAC1C;AAED,8BAAsB,aAAa,CAAC,CAAC,SAAS,WAAW,GAAG,SAAS,CAAE,SAAQ,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAE,YAAW,SAAS,CAAC,CAAC,CAAC;IAC9H,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC;CACnD"}
@@ -0,0 +1,3 @@
1
+ import type { EmptyObject } from './EmptyObject.ts';
2
+ export type WithAdditional<T extends EmptyObject | void, TAdditional extends EmptyObject | void = void> = TAdditional extends EmptyObject ? T & TAdditional : T;
3
+ //# sourceMappingURL=WithAdditional.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WithAdditional.d.ts","sourceRoot":"","sources":["../../src/WithAdditional.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAEnD,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,WAAW,GAAG,IAAI,EAAE,WAAW,SAAS,WAAW,GAAG,IAAI,GAAG,IAAI,IAClG,WAAW,SAAS,WAAW,GAAG,CAAC,GAAG,WAAW,GAAG,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ import type { AnyObject } from '@xylabs/object-model';
2
+ export declare const asAnyObject: import("@xylabs/object-model").AsTypeFunction<AnyObject>;
3
+ //# sourceMappingURL=asObject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asObject.d.ts","sourceRoot":"","sources":["../../src/asObject.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAKrD,eAAO,MAAM,WAAW,0DAA8G,CAAA"}
@@ -0,0 +1,49 @@
1
+ import type { AnyObject } from '@xylabs/object-model';
2
+ /**
3
+ * Deeply merges two types into a new type.
4
+ */
5
+ type DeepMerge<A, B> = {
6
+ [K in keyof A | keyof B]: K extends keyof B ? K extends keyof A ? A[K] extends object ? B[K] extends object ? DeepMerge<A[K], B[K]> : B[K] : B[K] : B[K] : K extends keyof A ? A[K] : never;
7
+ };
8
+ /**
9
+ * Merges multiple types into a new type.
10
+ */
11
+ type MergeAll<T extends object[], R = {}> = T extends [infer First extends object, ...infer Rest extends object[]] ? MergeAll<Rest, DeepMerge<R, First>> : R;
12
+ /**
13
+ * Options for merging objects in the deep merge function.
14
+ */
15
+ type MergeOptions = {
16
+ /**
17
+ * Strategy for merging arrays.
18
+ * - 'overwrite': Overwrites the array with the last object's value.
19
+ * - 'concat': Concatenates arrays from all objects.
20
+ * @default 'overwrite'
21
+ */
22
+ arrayStrategy?: 'overwrite' | 'concat';
23
+ /**
24
+ * Mutate the first object in the list instead of creating a new one.
25
+ * @default false
26
+ */
27
+ mutate?: boolean;
28
+ };
29
+ /**
30
+ * Creates a deep merge function with the specified options.
31
+ * @param options Options for merging.
32
+ * @returns A deep merge function configured for the specified options.
33
+ */
34
+ export declare function createDeepMerge(options: MergeOptions): <T extends AnyObject[]>(...objects: T) => MergeAll<T>;
35
+ /**
36
+ * Deeply merges multiple objects into a new object.
37
+ * @param objects Multiple objects to merge deeply.
38
+ * The function merges properties from all objects into a new object.
39
+ * If a property exists in multiple objects, the last object's value will be used.
40
+ * If a property is an object, it will be merged recursively.
41
+ * If a property is an array, it will be overwritten by the last object's value.
42
+ * If a property is a primitive value, it will be overwritten by the last object's value.
43
+ * If a property is undefined in the source, it will be skipped.
44
+ * If a property is a symbol, it will be merged as well.
45
+ * @returns A new object with the merged properties.
46
+ */
47
+ export declare const deepMerge: <T extends AnyObject[]>(...objects: T) => MergeAll<T>;
48
+ export {};
49
+ //# sourceMappingURL=deepMerge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deepMerge.d.ts","sourceRoot":"","sources":["../../src/deepMerge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAErD;;GAEG;AACH,KAAK,SAAS,CAAC,CAAC,EAAE,CAAC,IAAI;KACpB,CAAC,IAAI,MAAM,CAAC,GAAG,MAAM,CAAC,GACvB,CAAC,SAAS,MAAM,CAAC,GACb,CAAC,SAAS,MAAM,CAAC,GACf,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GACjB,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GACjB,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GACrB,CAAC,CAAC,CAAC,CAAC,GACN,CAAC,CAAC,CAAC,CAAC,GACN,CAAC,CAAC,CAAC,CAAC,GACN,CAAC,SAAS,MAAM,CAAC,GACf,CAAC,CAAC,CAAC,CAAC,GACJ,KAAK;CACZ,CAAA;AAED;;GAEG;AACH,KAAK,QAAQ,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,CAAC,GAAG,EAAE,IACpC,CAAC,SAAS,CAAC,MAAM,KAAK,SAAS,MAAM,EAAE,GAAG,MAAM,IAAI,SAAS,MAAM,EAAE,CAAC,GACpE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,GACnC,CAAC,CAAA;AAEP;;GAEG;AACH,KAAK,YAAY,GAAG;IAClB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,WAAW,GAAG,QAAQ,CAAA;IACtC;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA;AAiCD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,YAAY,IACzB,CAAC,SAAS,SAAS,EAAE,EAAE,GAAG,SAAS,CAAC,KAAG,QAAQ,CAAC,CAAC,CAAC,CAO7E;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,SAAS,GArBM,CAAC,SAAS,SAAS,EAAE,cAAc,CAAC,KAAG,QAAQ,CAAC,CAAC,CAqBU,CAAA"}
@@ -1,158 +1,24 @@
1
- import * as _xylabs_object_model from '@xylabs/object-model';
2
- import { AnyObject, TypeCheck, AsTypeFunction, TypeCheckConfig } from '@xylabs/object-model';
1
+ export * from './asObject.ts';
2
+ export * from './AsObjectFactory.ts';
3
+ export * from './AsTypeFactory.ts';
4
+ export * from './deepMerge.ts';
5
+ export * from './EmptyObject.ts';
6
+ export * from './isObject.ts';
7
+ export * from './IsObjectFactory.ts';
8
+ export * from './isType.ts';
9
+ export * from './JsonObject.ts';
10
+ export * from './ObjectWrapper.ts';
11
+ export * from './omitBy.ts';
12
+ export * from './OmitStartsWith.ts';
13
+ export * from './Optional.ts';
14
+ export * from './Override.ts';
15
+ export * from './PartialRecord.ts';
16
+ export * from './pickBy.ts';
17
+ export * from './PickStartsWith.ts';
18
+ export * from './removeFields.ts';
19
+ export * from './StringKeyObject.ts';
20
+ export * from './toJson.ts';
21
+ export * from './Validator.ts';
22
+ export * from './WithAdditional.ts';
3
23
  export * from '@xylabs/object-model';
4
- import * as _xylabs_promise from '@xylabs/promise';
5
- import { AnyNonPromise, Promisable } from '@xylabs/promise';
6
- import { TypedObject, ObjectTypeShape, FieldType } from '@xylabs/typeof';
7
-
8
- declare const asAnyObject: _xylabs_object_model.AsTypeFunction<AnyObject>;
9
-
10
- declare const AsObjectFactory: {
11
- create: <T extends TypedObject>(typeCheck: TypeCheck<T>) => _xylabs_object_model.AsTypeFunction<T>;
12
- createOptional: <T extends TypedObject>(typeCheck: TypeCheck<T>) => (value: _xylabs_promise.AnyNonPromise) => T | undefined;
13
- };
14
-
15
- declare const AsTypeFactory: {
16
- create: <T extends AnyNonPromise>(typeCheck: TypeCheck<T>) => AsTypeFunction<T>;
17
- createOptional: <T extends AnyNonPromise>(typeCheck: TypeCheck<T>) => (value: AnyNonPromise) => T | undefined;
18
- };
19
-
20
- /**
21
- * Deeply merges two types into a new type.
22
- */
23
- type DeepMerge<A, B> = {
24
- [K in keyof A | keyof B]: K extends keyof B ? K extends keyof A ? A[K] extends object ? B[K] extends object ? DeepMerge<A[K], B[K]> : B[K] : B[K] : B[K] : K extends keyof A ? A[K] : never;
25
- };
26
- /**
27
- * Merges multiple types into a new type.
28
- */
29
- type MergeAll<T extends object[], R = {}> = T extends [infer First extends object, ...infer Rest extends object[]] ? MergeAll<Rest, DeepMerge<R, First>> : R;
30
- /**
31
- * Options for merging objects in the deep merge function.
32
- */
33
- type MergeOptions = {
34
- /**
35
- * Strategy for merging arrays.
36
- * - 'overwrite': Overwrites the array with the last object's value.
37
- * - 'concat': Concatenates arrays from all objects.
38
- * @default 'overwrite'
39
- */
40
- arrayStrategy?: 'overwrite' | 'concat';
41
- /**
42
- * Mutate the first object in the list instead of creating a new one.
43
- * @default false
44
- */
45
- mutate?: boolean;
46
- };
47
- /**
48
- * Creates a deep merge function with the specified options.
49
- * @param options Options for merging.
50
- * @returns A deep merge function configured for the specified options.
51
- */
52
- declare function createDeepMerge(options: MergeOptions): <T extends AnyObject[]>(...objects: T) => MergeAll<T>;
53
- /**
54
- * Deeply merges multiple objects into a new object.
55
- * @param objects Multiple objects to merge deeply.
56
- * The function merges properties from all objects into a new object.
57
- * If a property exists in multiple objects, the last object's value will be used.
58
- * If a property is an object, it will be merged recursively.
59
- * If a property is an array, it will be overwritten by the last object's value.
60
- * If a property is a primitive value, it will be overwritten by the last object's value.
61
- * If a property is undefined in the source, it will be skipped.
62
- * If a property is a symbol, it will be merged as well.
63
- * @returns A new object with the merged properties.
64
- */
65
- declare const deepMerge: <T extends AnyObject[]>(...objects: T) => MergeAll<T>;
66
-
67
- /**
68
- * An empty object, which means that it does enforce the set of field names, defaulting to an empty set until
69
- * extended from, which then adds only those additional fields
70
- */
71
- type EmptyObject<T extends object = object> = {
72
- [K in keyof T]?: never;
73
- };
74
- type EmptyObjectOf<T extends object> = EmptyObject<T> extends T ? EmptyObject<T> : never;
75
-
76
- declare const isObject: <T>(value: T) => value is T & object;
77
-
78
- interface ObjectTypeConfig extends TypeCheckConfig {
79
- }
80
- declare class IsObjectFactory<T extends TypedObject> {
81
- create(shape?: ObjectTypeShape, additionalChecks?: TypeCheck<TypedObject>[]): TypeCheck<T>;
82
- }
83
-
84
- declare const isType: (value: unknown, expectedType: FieldType) => boolean;
85
-
86
- type JsonValue = string | number | boolean | null | JsonObject | JsonArray;
87
- type JsonObject = {
88
- [key: string]: JsonValue;
89
- };
90
- type JsonArray = JsonValue[];
91
- declare const isJsonValue: (value: unknown) => value is JsonValue;
92
- declare const isJsonArray: (value: unknown) => value is JsonArray;
93
- declare const isValidJsonFieldPair: ([key, value]: [key: unknown, value: unknown]) => boolean;
94
- declare const isJsonObject: (value: unknown) => value is JsonObject;
95
-
96
- type StringKeyObject<T = unknown> = {
97
- [key: string]: T;
98
- };
99
-
100
- declare abstract class ObjectWrapper<T extends EmptyObject = EmptyObject> {
101
- readonly obj: T;
102
- constructor(obj: T);
103
- protected get stringKeyObj(): StringKeyObject;
104
- }
105
-
106
- type OmitStartsWith<T, Prefix extends string> = {
107
- [K in keyof T as K extends `${Prefix}${string}` ? never : K]: T[K];
108
- };
109
- type DeepOmitStartsWith<T, Prefix extends string> = T extends (infer U)[] ? DeepOmitStartsWith<U, Prefix>[] : T extends object ? {
110
- [K in keyof T as K extends string ? K extends `${Prefix}${string}` ? never : K : K]: DeepOmitStartsWith<T[K], Prefix>;
111
- } : T;
112
- type DeepRestrictToStringKeys<T> = {
113
- [K in keyof T as K extends string ? K : never]: T[K] extends (infer U)[] ? DeepRestrictToStringKeys<U>[] : T[K] extends object ? DeepRestrictToStringKeys<T[K]> : T[K];
114
- };
115
-
116
- type OmitByPredicate<T extends EmptyObject = Record<string, unknown>> = (value: T[keyof T], key: keyof T) => boolean;
117
- declare const omitBy: <T extends EmptyObject>(obj: T, predicate: OmitByPredicate, maxDepth?: number) => Partial<T>;
118
- declare const omitByPrefix: <T extends EmptyObject, P extends string>(payload: T, prefix: P, maxDepth?: number) => DeepOmitStartsWith<T, P>;
119
-
120
- type Optional<T extends object, F extends keyof T> = Omit<T, F> & Partial<Pick<T, F>>;
121
-
122
- type Override<T1, T2> = Omit<T1, keyof T2> & T2;
123
-
124
- /** @deprecated use Partial<Record<>> instead */
125
- type PartialRecord<K extends keyof any, T> = {
126
- [P in K]?: T;
127
- };
128
-
129
- type PickStartsWith<T, Prefix extends string> = {
130
- [K in keyof T as K extends `${Prefix}${string}` ? K : never]: T[K];
131
- };
132
- type DeepPickStartsWith<T, Prefix extends string> = T extends (infer U)[] ? DeepPickStartsWith<U, Prefix>[] : T extends object ? {
133
- [K in keyof T as K extends string ? K extends `${Prefix}${string}` ? K : never : K]: DeepPickStartsWith<T[K], Prefix>;
134
- } : T;
135
-
136
- type PickByPredicate<T extends EmptyObject = Record<string, unknown>> = (value: T[keyof T], key: keyof T) => boolean;
137
- declare const pickBy: <T extends EmptyObject>(obj: T, predicate: PickByPredicate, maxDepth?: number) => Partial<T>;
138
- declare const pickByPrefix: <T extends EmptyObject, P extends string>(payload: T, prefix: P, maxDepth?: number) => DeepPickStartsWith<T, P>;
139
-
140
- declare const removeFields: <T extends EmptyObject, K extends keyof T>(obj: T, fields: K[]) => Omit<T, K>;
141
-
142
- declare const toJsonArray: (value: unknown[], cycleList?: unknown[], maxDepth?: number) => JsonArray;
143
- declare const toJsonObject: (value: object, cycleList?: unknown[], maxDepth?: number) => JsonObject;
144
- declare const toJsonValue: (value: unknown, cycleList?: unknown[], maxDepth?: number) => JsonValue;
145
- declare const toJsonString: (value: unknown, maxDepth?: number) => string;
146
- declare const toJson: (value: unknown, maxDepth?: number) => JsonValue;
147
-
148
- interface Validator<T extends EmptyObject = AnyObject> {
149
- validate(payload: T): Promisable<Error[]>;
150
- }
151
- declare abstract class ValidatorBase<T extends EmptyObject = AnyObject> extends ObjectWrapper<Partial<T>> implements Validator<T> {
152
- abstract validate(payload: T): Promisable<Error[]>;
153
- }
154
-
155
- type WithAdditional<T extends EmptyObject | void, TAdditional extends EmptyObject | void = void> = TAdditional extends EmptyObject ? T & TAdditional : T;
156
-
157
- export { AsObjectFactory, AsTypeFactory, IsObjectFactory, ObjectWrapper, ValidatorBase, asAnyObject, createDeepMerge, deepMerge, isJsonArray, isJsonObject, isJsonValue, isObject, isType, isValidJsonFieldPair, omitBy, omitByPrefix, pickBy, pickByPrefix, removeFields, toJson, toJsonArray, toJsonObject, toJsonString, toJsonValue };
158
- export type { DeepOmitStartsWith, DeepPickStartsWith, DeepRestrictToStringKeys, EmptyObject, EmptyObjectOf, JsonArray, JsonObject, JsonValue, ObjectTypeConfig, OmitByPredicate, OmitStartsWith, Optional, Override, PartialRecord, PickByPredicate, PickStartsWith, StringKeyObject, Validator, WithAdditional };
24
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAChC,cAAc,eAAe,CAAA;AAC7B,cAAc,sBAAsB,CAAA;AACpC,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA;AAC3B,cAAc,qBAAqB,CAAA;AACnC,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA;AAC3B,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA;AACjC,cAAc,sBAAsB,CAAA;AACpC,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const isObject: <T>(value: T) => value is T & object;
2
+ //# sourceMappingURL=isObject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isObject.d.ts","sourceRoot":"","sources":["../../src/isObject.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ,GAAI,CAAC,EAAE,OAAO,CAAC,KAAG,KAAK,IAAI,CAAC,GAAG,MAEnD,CAAA"}
@@ -0,0 +1,3 @@
1
+ import type { FieldType } from '@xylabs/typeof';
2
+ export declare const isType: (value: unknown, expectedType: FieldType) => boolean;
3
+ //# sourceMappingURL=isType.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isType.d.ts","sourceRoot":"","sources":["../../src/isType.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE/C,eAAO,MAAM,MAAM,GAAI,OAAO,OAAO,EAAE,cAAc,SAAS,YAwB7D,CAAA"}
@@ -0,0 +1,6 @@
1
+ import type { EmptyObject } from './EmptyObject.ts';
2
+ import type { DeepOmitStartsWith } from './OmitStartsWith.ts';
3
+ export type OmitByPredicate<T extends EmptyObject = Record<string, unknown>> = (value: T[keyof T], key: keyof T) => boolean;
4
+ export declare const omitBy: <T extends EmptyObject>(obj: T, predicate: OmitByPredicate, maxDepth?: number) => Partial<T>;
5
+ export declare const omitByPrefix: <T extends EmptyObject, P extends string>(payload: T, prefix: P, maxDepth?: number) => DeepOmitStartsWith<T, P>;
6
+ //# sourceMappingURL=omitBy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"omitBy.d.ts","sourceRoot":"","sources":["../../src/omitBy.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAEnD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAE7D,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,KAAK,OAAO,CAAA;AA+B3H,eAAO,MAAM,MAAM,GAAI,CAAC,SAAS,WAAW,EAC1C,KAAK,CAAC,EACN,WAAW,eAAe,EAC1B,iBAAY,KACX,OAAO,CAAC,CAAC,CAMX,CAAA;AAOD,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,MAAM,EAAE,SAAS,CAAC,EAAE,QAAQ,CAAC,EAAE,iBAAc,KAAG,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAEpI,CAAA"}
@@ -0,0 +1,6 @@
1
+ import type { EmptyObject } from './EmptyObject.ts';
2
+ import type { DeepPickStartsWith } from './PickStartsWith.ts';
3
+ export type PickByPredicate<T extends EmptyObject = Record<string, unknown>> = (value: T[keyof T], key: keyof T) => boolean;
4
+ export declare const pickBy: <T extends EmptyObject>(obj: T, predicate: PickByPredicate, maxDepth?: number) => Partial<T>;
5
+ export declare const pickByPrefix: <T extends EmptyObject, P extends string>(payload: T, prefix: P, maxDepth?: number) => DeepPickStartsWith<T, P>;
6
+ //# sourceMappingURL=pickBy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pickBy.d.ts","sourceRoot":"","sources":["../../src/pickBy.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAEnD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAE7D,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,KAAK,OAAO,CAAA;AA+B3H,eAAO,MAAM,MAAM,GAAI,CAAC,SAAS,WAAW,EAC1C,KAAK,CAAC,EACN,WAAW,eAAe,EAC1B,iBAAY,KACX,OAAO,CAAC,CAAC,CAMX,CAAA;AAOD,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,MAAM,EAAE,SAAS,CAAC,EAAE,QAAQ,CAAC,EAAE,iBAAc,KAAG,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAEpI,CAAA"}
@@ -0,0 +1,3 @@
1
+ import type { EmptyObject } from './EmptyObject.ts';
2
+ export declare const removeFields: <T extends EmptyObject, K extends keyof T>(obj: T, fields: K[]) => Omit<T, K>;
3
+ //# sourceMappingURL=removeFields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"removeFields.d.ts","sourceRoot":"","sources":["../../src/removeFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAEnD,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,KAAK,CAAC,EAAE,QAAQ,CAAC,EAAE,KAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAMrG,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=deepMerge.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deepMerge.spec.d.ts","sourceRoot":"","sources":["../../../src/spec/deepMerge.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import type { JsonArray, JsonObject, JsonValue } from './JsonObject.ts';
2
+ export declare const toJsonArray: (value: unknown[], cycleList?: unknown[], maxDepth?: number) => JsonArray;
3
+ export declare const toJsonObject: (value: object, cycleList?: unknown[], maxDepth?: number) => JsonObject;
4
+ export declare const toJsonValue: (value: unknown, cycleList?: unknown[], maxDepth?: number) => JsonValue;
5
+ export declare const toJsonString: (value: unknown, maxDepth?: number) => string;
6
+ export declare const toJson: (value: unknown, maxDepth?: number) => JsonValue;
7
+ //# sourceMappingURL=toJson.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toJson.d.ts","sourceRoot":"","sources":["../../src/toJson.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EAAE,UAAU,EAAE,SAAS,EACjC,MAAM,iBAAiB,CAAA;AAExB,eAAO,MAAM,WAAW,GAAI,OAAO,OAAO,EAAE,EAAE,YAAY,OAAO,EAAE,EAAE,iBAAY,KAAG,SAEnF,CAAA;AAED,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,EAAE,YAAY,OAAO,EAAE,EAAE,iBAAY,KAAG,UAMjF,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,OAAO,OAAO,EAAE,YAAY,OAAO,EAAE,EAAE,iBAAY,KAAG,SAyBjF,CAAA;AAED,eAAO,MAAM,YAAY,GAAI,OAAO,OAAO,EAAE,iBAAY,WAExD,CAAA;AAED,eAAO,MAAM,MAAM,GAAI,OAAO,OAAO,EAAE,iBAAY,KAAG,SAErD,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xylabs/object",
3
- "version": "4.13.14",
3
+ "version": "4.13.16",
4
4
  "description": "Primary SDK for using XYO Protocol 2.0",
5
5
  "homepage": "https://xyo.network",
6
6
  "bugs": {
@@ -29,14 +29,14 @@
29
29
  "module": "dist/neutral/index.mjs",
30
30
  "types": "dist/neutral/index.d.ts",
31
31
  "dependencies": {
32
- "@xylabs/assert": "^4.13.14",
33
- "@xylabs/object-model": "^4.13.14",
34
- "@xylabs/promise": "^4.13.14",
35
- "@xylabs/typeof": "^4.13.14"
32
+ "@xylabs/assert": "^4.13.16",
33
+ "@xylabs/object-model": "^4.13.16",
34
+ "@xylabs/promise": "^4.13.16",
35
+ "@xylabs/typeof": "^4.13.16"
36
36
  },
37
37
  "devDependencies": {
38
- "@xylabs/ts-scripts-yarn3": "^7.0.0-rc.12",
39
- "@xylabs/tsconfig": "^7.0.0-rc.12",
38
+ "@xylabs/ts-scripts-yarn3": "^7.0.0-rc.27",
39
+ "@xylabs/tsconfig": "^7.0.0-rc.27",
40
40
  "typescript": "^5.8.3",
41
41
  "vitest": "^3.2.4"
42
42
  },