@bessemer/cornerstone 0.5.74 → 0.5.76
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/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/object/object-diff.d.ts +13 -16
- package/dist/object/object-diff.d.ts.map +1 -1
- package/dist/object/object-diff.js.map +1 -1
- package/dist/object/object-path.d.ts +1 -1
- package/dist/object/object-path.d.ts.map +1 -1
- package/dist/object/object-path.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
@@ -25,6 +25,7 @@ import * as Crypto from '@bessemer/cornerstone/crypto';
|
|
25
25
|
import * as Globs from '@bessemer/cornerstone/glob';
|
26
26
|
import * as Ranges from '@bessemer/cornerstone/range';
|
27
27
|
import * as ObjectPaths from '@bessemer/cornerstone/object/object-path';
|
28
|
+
import * as TypePaths from '@bessemer/cornerstone/object/type-path';
|
28
29
|
import * as ObjectDiffs from '@bessemer/cornerstone/object/object-diff';
|
29
30
|
import * as ZodUtil from '@bessemer/cornerstone/zod-util';
|
30
31
|
import * as Tags from '@bessemer/cornerstone/tag';
|
@@ -52,5 +53,5 @@ import * as CountryCodes from '@bessemer/cornerstone/intl/country-code';
|
|
52
53
|
import * as CountrySubdivisionCodes from '@bessemer/cornerstone/intl/country-subdivision-code';
|
53
54
|
import * as LanguageCodes from '@bessemer/cornerstone/intl/language-code';
|
54
55
|
import * as Locales from '@bessemer/cornerstone/intl/locale';
|
55
|
-
export { Objects, Functions, Arrays, Strings, Async, AsyncValues, Maths, Maps, Sets, Dates, Comparators, Equalitors, Durations, Uris, Urls, Loggers, Errors, ErrorEvents, Assertions, Uuids, Ulids, Entries, Hashes, Crypto, Globs, Ranges, ObjectPaths, ObjectDiffs, ZodUtil, Tags, Promises, References, Signatures, Eithers, Results, Lazy, Patches, Content, Combinables, Properties, RichTexts, Retry, Stores, Misc, Json, AspectRatios, DataSizes, MimeTypes, CurrencyCodes, MonetaryAmounts, CountryCodes, CountrySubdivisionCodes, LanguageCodes, Locales, };
|
56
|
+
export { Objects, Functions, Arrays, Strings, Async, AsyncValues, Maths, Maps, Sets, Dates, Comparators, Equalitors, Durations, Uris, Urls, Loggers, Errors, ErrorEvents, Assertions, Uuids, Ulids, Entries, Hashes, Crypto, Globs, Ranges, ObjectPaths, TypePaths, ObjectDiffs, ZodUtil, Tags, Promises, References, Signatures, Eithers, Results, Lazy, Patches, Content, Combinables, Properties, RichTexts, Retry, Stores, Misc, Json, AspectRatios, DataSizes, MimeTypes, CurrencyCodes, MonetaryAmounts, CountryCodes, CountrySubdivisionCodes, LanguageCodes, Locales, };
|
56
57
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
@@ -26,6 +26,7 @@ import * as Crypto from "@bessemer/cornerstone/crypto";
|
|
26
26
|
import * as Globs from "@bessemer/cornerstone/glob";
|
27
27
|
import * as Ranges from "@bessemer/cornerstone/range";
|
28
28
|
import * as ObjectPaths from "@bessemer/cornerstone/object/object-path";
|
29
|
+
import * as TypePaths from "@bessemer/cornerstone/object/type-path";
|
29
30
|
import * as ObjectDiffs from "@bessemer/cornerstone/object/object-diff";
|
30
31
|
import * as ZodUtil from "@bessemer/cornerstone/zod-util";
|
31
32
|
import * as Tags from "@bessemer/cornerstone/tag";
|
@@ -103,6 +104,7 @@ export {
|
|
103
104
|
Stores,
|
104
105
|
Strings,
|
105
106
|
Tags,
|
107
|
+
TypePaths,
|
106
108
|
Ulids,
|
107
109
|
Uris,
|
108
110
|
Urls,
|
package/dist/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["import * as Objects from '@bessemer/cornerstone/object'\nimport * as Functions from '@bessemer/cornerstone/function'\nimport * as Arrays from '@bessemer/cornerstone/array'\nimport * as Strings from '@bessemer/cornerstone/string'\nimport * as Async from '@bessemer/cornerstone/async'\nimport * as AsyncValues from '@bessemer/cornerstone/async-value'\nimport * as Maths from '@bessemer/cornerstone/math'\nimport * as Maps from '@bessemer/cornerstone/map'\nimport * as Sets from '@bessemer/cornerstone/set'\nimport * as Dates from '@bessemer/cornerstone/date'\nimport * as Comparators from '@bessemer/cornerstone/comparator'\nimport * as Equalitors from '@bessemer/cornerstone/equalitor'\nimport * as Durations from '@bessemer/cornerstone/duration'\nimport * as Uris from '@bessemer/cornerstone/uri'\nimport * as Urls from '@bessemer/cornerstone/url'\nimport * as Loggers from '@bessemer/cornerstone/logger'\nimport * as Errors from '@bessemer/cornerstone/error'\nimport * as ErrorEvents from '@bessemer/cornerstone/error-event'\nimport * as Assertions from '@bessemer/cornerstone/assertion'\nimport * as Uuids from '@bessemer/cornerstone/uuid'\nimport * as Ulids from '@bessemer/cornerstone/ulid'\nimport * as Entries from '@bessemer/cornerstone/entry'\nimport * as Hashes from '@bessemer/cornerstone/hash'\nimport * as Crypto from '@bessemer/cornerstone/crypto'\nimport * as Globs from '@bessemer/cornerstone/glob'\nimport * as Ranges from '@bessemer/cornerstone/range'\nimport * as ObjectPaths from '@bessemer/cornerstone/object/object-path'\nimport * as ObjectDiffs from '@bessemer/cornerstone/object/object-diff'\n\nimport * as ZodUtil from '@bessemer/cornerstone/zod-util'\nimport * as Tags from '@bessemer/cornerstone/tag'\nimport * as Promises from '@bessemer/cornerstone/promise'\nimport * as References from '@bessemer/cornerstone/reference'\nimport * as Signatures from '@bessemer/cornerstone/signature'\nimport * as Eithers from '@bessemer/cornerstone/either'\nimport * as Results from '@bessemer/cornerstone/result'\nimport * as Lazy from '@bessemer/cornerstone/lazy'\nimport * as Patches from '@bessemer/cornerstone/patch'\nimport * as Content from '@bessemer/cornerstone/content'\nimport * as Combinables from '@bessemer/cornerstone/combinable'\nimport * as Properties from '@bessemer/cornerstone/property'\nimport * as RichTexts from '@bessemer/cornerstone/rich-text'\nimport * as Retry from '@bessemer/cornerstone/retry'\nimport * as Stores from '@bessemer/cornerstone/store'\nimport * as Misc from '@bessemer/cornerstone/misc'\nimport * as Json from '@bessemer/cornerstone/json'\nimport * as AspectRatios from '@bessemer/cornerstone/aspect-ratio'\nimport * as DataSizes from '@bessemer/cornerstone/data-size'\nimport * as MimeTypes from '@bessemer/cornerstone/mime-type'\nimport * as MonetaryAmounts from '@bessemer/cornerstone/monetary-amount'\nimport * as CurrencyCodes from '@bessemer/cornerstone/intl/currency-code'\nimport * as CountryCodes from '@bessemer/cornerstone/intl/country-code'\nimport * as CountrySubdivisionCodes from '@bessemer/cornerstone/intl/country-subdivision-code'\nimport * as LanguageCodes from '@bessemer/cornerstone/intl/language-code'\nimport * as Locales from '@bessemer/cornerstone/intl/locale'\n\nexport {\n Objects,\n Functions,\n Arrays,\n Strings,\n Async,\n AsyncValues,\n Maths,\n Maps,\n Sets,\n Dates,\n Comparators,\n Equalitors,\n Durations,\n Uris,\n Urls,\n Loggers,\n Errors,\n ErrorEvents,\n Assertions,\n Uuids,\n Ulids,\n Entries,\n Hashes,\n Crypto,\n Globs,\n Ranges,\n ObjectPaths,\n ObjectDiffs,\n ZodUtil,\n Tags,\n Promises,\n References,\n Signatures,\n Eithers,\n Results,\n Lazy,\n Patches,\n Content,\n Combinables,\n Properties,\n RichTexts,\n Retry,\n Stores,\n Misc,\n Json,\n AspectRatios,\n DataSizes,\n MimeTypes,\n CurrencyCodes,\n MonetaryAmounts,\n CountryCodes,\n CountrySubdivisionCodes,\n LanguageCodes,\n Locales,\n}\n"],"mappings":";AAAA,YAAY,aAAa;AACzB,YAAY,eAAe;AAC3B,YAAY,YAAY;AACxB,YAAY,aAAa;AACzB,YAAY,WAAW;AACvB,YAAY,iBAAiB;AAC7B,YAAY,WAAW;AACvB,YAAY,UAAU;AACtB,YAAY,UAAU;AACtB,YAAY,WAAW;AACvB,YAAY,iBAAiB;AAC7B,YAAY,gBAAgB;AAC5B,YAAY,eAAe;AAC3B,YAAY,UAAU;AACtB,YAAY,UAAU;AACtB,YAAY,aAAa;AACzB,YAAY,YAAY;AACxB,YAAY,iBAAiB;AAC7B,YAAY,gBAAgB;AAC5B,YAAY,WAAW;AACvB,YAAY,WAAW;AACvB,YAAY,aAAa;AACzB,YAAY,YAAY;AACxB,YAAY,YAAY;AACxB,YAAY,WAAW;AACvB,YAAY,YAAY;AACxB,YAAY,iBAAiB;AAC7B,YAAY,iBAAiB;AAE7B,YAAY,aAAa;AACzB,YAAY,UAAU;AACtB,YAAY,cAAc;AAC1B,YAAY,gBAAgB;AAC5B,YAAY,gBAAgB;AAC5B,YAAY,aAAa;AACzB,YAAY,aAAa;AACzB,YAAY,UAAU;AACtB,YAAY,aAAa;AACzB,YAAY,aAAa;AACzB,YAAY,iBAAiB;AAC7B,YAAY,gBAAgB;AAC5B,YAAY,eAAe;AAC3B,YAAY,WAAW;AACvB,YAAY,YAAY;AACxB,YAAY,UAAU;AACtB,YAAY,UAAU;AACtB,YAAY,kBAAkB;AAC9B,YAAY,eAAe;AAC3B,YAAY,eAAe;AAC3B,YAAY,qBAAqB;AACjC,YAAY,mBAAmB;AAC/B,YAAY,kBAAkB;AAC9B,YAAY,6BAA6B;AACzC,YAAY,mBAAmB;AAC/B,YAAY,aAAa;","names":[]}
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["import * as Objects from '@bessemer/cornerstone/object'\nimport * as Functions from '@bessemer/cornerstone/function'\nimport * as Arrays from '@bessemer/cornerstone/array'\nimport * as Strings from '@bessemer/cornerstone/string'\nimport * as Async from '@bessemer/cornerstone/async'\nimport * as AsyncValues from '@bessemer/cornerstone/async-value'\nimport * as Maths from '@bessemer/cornerstone/math'\nimport * as Maps from '@bessemer/cornerstone/map'\nimport * as Sets from '@bessemer/cornerstone/set'\nimport * as Dates from '@bessemer/cornerstone/date'\nimport * as Comparators from '@bessemer/cornerstone/comparator'\nimport * as Equalitors from '@bessemer/cornerstone/equalitor'\nimport * as Durations from '@bessemer/cornerstone/duration'\nimport * as Uris from '@bessemer/cornerstone/uri'\nimport * as Urls from '@bessemer/cornerstone/url'\nimport * as Loggers from '@bessemer/cornerstone/logger'\nimport * as Errors from '@bessemer/cornerstone/error'\nimport * as ErrorEvents from '@bessemer/cornerstone/error-event'\nimport * as Assertions from '@bessemer/cornerstone/assertion'\nimport * as Uuids from '@bessemer/cornerstone/uuid'\nimport * as Ulids from '@bessemer/cornerstone/ulid'\nimport * as Entries from '@bessemer/cornerstone/entry'\nimport * as Hashes from '@bessemer/cornerstone/hash'\nimport * as Crypto from '@bessemer/cornerstone/crypto'\nimport * as Globs from '@bessemer/cornerstone/glob'\nimport * as Ranges from '@bessemer/cornerstone/range'\nimport * as ObjectPaths from '@bessemer/cornerstone/object/object-path'\nimport * as TypePaths from '@bessemer/cornerstone/object/type-path'\nimport * as ObjectDiffs from '@bessemer/cornerstone/object/object-diff'\n\nimport * as ZodUtil from '@bessemer/cornerstone/zod-util'\nimport * as Tags from '@bessemer/cornerstone/tag'\nimport * as Promises from '@bessemer/cornerstone/promise'\nimport * as References from '@bessemer/cornerstone/reference'\nimport * as Signatures from '@bessemer/cornerstone/signature'\nimport * as Eithers from '@bessemer/cornerstone/either'\nimport * as Results from '@bessemer/cornerstone/result'\nimport * as Lazy from '@bessemer/cornerstone/lazy'\nimport * as Patches from '@bessemer/cornerstone/patch'\nimport * as Content from '@bessemer/cornerstone/content'\nimport * as Combinables from '@bessemer/cornerstone/combinable'\nimport * as Properties from '@bessemer/cornerstone/property'\nimport * as RichTexts from '@bessemer/cornerstone/rich-text'\nimport * as Retry from '@bessemer/cornerstone/retry'\nimport * as Stores from '@bessemer/cornerstone/store'\nimport * as Misc from '@bessemer/cornerstone/misc'\nimport * as Json from '@bessemer/cornerstone/json'\nimport * as AspectRatios from '@bessemer/cornerstone/aspect-ratio'\nimport * as DataSizes from '@bessemer/cornerstone/data-size'\nimport * as MimeTypes from '@bessemer/cornerstone/mime-type'\nimport * as MonetaryAmounts from '@bessemer/cornerstone/monetary-amount'\nimport * as CurrencyCodes from '@bessemer/cornerstone/intl/currency-code'\nimport * as CountryCodes from '@bessemer/cornerstone/intl/country-code'\nimport * as CountrySubdivisionCodes from '@bessemer/cornerstone/intl/country-subdivision-code'\nimport * as LanguageCodes from '@bessemer/cornerstone/intl/language-code'\nimport * as Locales from '@bessemer/cornerstone/intl/locale'\n\nexport {\n Objects,\n Functions,\n Arrays,\n Strings,\n Async,\n AsyncValues,\n Maths,\n Maps,\n Sets,\n Dates,\n Comparators,\n Equalitors,\n Durations,\n Uris,\n Urls,\n Loggers,\n Errors,\n ErrorEvents,\n Assertions,\n Uuids,\n Ulids,\n Entries,\n Hashes,\n Crypto,\n Globs,\n Ranges,\n ObjectPaths,\n TypePaths,\n ObjectDiffs,\n ZodUtil,\n Tags,\n Promises,\n References,\n Signatures,\n Eithers,\n Results,\n Lazy,\n Patches,\n Content,\n Combinables,\n Properties,\n RichTexts,\n Retry,\n Stores,\n Misc,\n Json,\n AspectRatios,\n DataSizes,\n MimeTypes,\n CurrencyCodes,\n MonetaryAmounts,\n CountryCodes,\n CountrySubdivisionCodes,\n LanguageCodes,\n Locales,\n}\n"],"mappings":";AAAA,YAAY,aAAa;AACzB,YAAY,eAAe;AAC3B,YAAY,YAAY;AACxB,YAAY,aAAa;AACzB,YAAY,WAAW;AACvB,YAAY,iBAAiB;AAC7B,YAAY,WAAW;AACvB,YAAY,UAAU;AACtB,YAAY,UAAU;AACtB,YAAY,WAAW;AACvB,YAAY,iBAAiB;AAC7B,YAAY,gBAAgB;AAC5B,YAAY,eAAe;AAC3B,YAAY,UAAU;AACtB,YAAY,UAAU;AACtB,YAAY,aAAa;AACzB,YAAY,YAAY;AACxB,YAAY,iBAAiB;AAC7B,YAAY,gBAAgB;AAC5B,YAAY,WAAW;AACvB,YAAY,WAAW;AACvB,YAAY,aAAa;AACzB,YAAY,YAAY;AACxB,YAAY,YAAY;AACxB,YAAY,WAAW;AACvB,YAAY,YAAY;AACxB,YAAY,iBAAiB;AAC7B,YAAY,eAAe;AAC3B,YAAY,iBAAiB;AAE7B,YAAY,aAAa;AACzB,YAAY,UAAU;AACtB,YAAY,cAAc;AAC1B,YAAY,gBAAgB;AAC5B,YAAY,gBAAgB;AAC5B,YAAY,aAAa;AACzB,YAAY,aAAa;AACzB,YAAY,UAAU;AACtB,YAAY,aAAa;AACzB,YAAY,aAAa;AACzB,YAAY,iBAAiB;AAC7B,YAAY,gBAAgB;AAC5B,YAAY,eAAe;AAC3B,YAAY,WAAW;AACvB,YAAY,YAAY;AACxB,YAAY,UAAU;AACtB,YAAY,UAAU;AACtB,YAAY,kBAAkB;AAC9B,YAAY,eAAe;AAC3B,YAAY,eAAe;AAC3B,YAAY,qBAAqB;AACjC,YAAY,mBAAmB;AAC/B,YAAY,kBAAkB;AAC9B,YAAY,6BAA6B;AACzC,YAAY,mBAAmB;AAC/B,YAAY,aAAa;","names":[]}
|
@@ -1,40 +1,37 @@
|
|
1
1
|
import { Get } from 'type-fest';
|
2
|
-
import {
|
2
|
+
import { ConstrainObjectPathTypes, ObjectPath } from '@bessemer/cornerstone/object/object-path';
|
3
3
|
export declare enum ObjectDiffType {
|
4
4
|
Add = "Add",
|
5
5
|
Remove = "Remove",
|
6
6
|
Update = "Update",
|
7
7
|
Move = "Move"
|
8
8
|
}
|
9
|
-
export type AddObjectDiff<N, T extends
|
9
|
+
export type AddObjectDiff<N, T extends ConstrainObjectPathTypes<N> = ConstrainObjectPathTypes<N>> = {
|
10
10
|
type: ObjectDiffType.Add;
|
11
|
-
path: T
|
11
|
+
path: ObjectPath<T>;
|
12
12
|
value: Get<N, T>;
|
13
13
|
};
|
14
|
-
export type RemoveObjectDiff<N, T extends
|
14
|
+
export type RemoveObjectDiff<N, T extends ConstrainObjectPathTypes<N> = ConstrainObjectPathTypes<N>> = {
|
15
15
|
type: ObjectDiffType.Remove;
|
16
|
-
path: T
|
16
|
+
path: ObjectPath<T>;
|
17
17
|
originalValue: Get<N, T>;
|
18
18
|
};
|
19
|
-
export type UpdateObjectDiff<N, T extends
|
19
|
+
export type UpdateObjectDiff<N, T extends ConstrainObjectPathTypes<N> = ConstrainObjectPathTypes<N>> = {
|
20
20
|
type: ObjectDiffType.Update;
|
21
|
-
path: T
|
21
|
+
path: ObjectPath<T>;
|
22
22
|
value: Get<N, T>;
|
23
23
|
originalValue: Get<N, T>;
|
24
24
|
};
|
25
|
-
export type MoveObjectDiff<N, T extends
|
25
|
+
export type MoveObjectDiff<N, T extends ConstrainObjectPathTypes<N> = ConstrainObjectPathTypes<N>> = {
|
26
26
|
type: ObjectDiffType.Move;
|
27
|
-
path: T
|
27
|
+
path: ObjectPath<T>;
|
28
28
|
value: Get<N, T>;
|
29
29
|
position: number;
|
30
30
|
originalPosition: number;
|
31
31
|
};
|
32
|
-
export type ObjectDiffEntry<N, T extends
|
33
|
-
export type ConstrainObjectDiffEntries<N, T extends ConstrainObjectPaths<N> = ConstrainObjectPaths<N>> = Extract<ObjectDiffEntry<N, T>, {
|
34
|
-
type: T;
|
35
|
-
}>;
|
32
|
+
export type ObjectDiffEntry<N, T extends ConstrainObjectPathTypes<N> = ConstrainObjectPathTypes<N>> = AddObjectDiff<N, T> | RemoveObjectDiff<N, T> | UpdateObjectDiff<N, T> | MoveObjectDiff<N, T>;
|
36
33
|
export type ObjectDiff<N> = Array<ObjectDiffEntry<N>>;
|
37
|
-
export declare const add: <N, T extends
|
38
|
-
export declare const remove: <N, T extends
|
39
|
-
export declare const update: <N, T extends
|
34
|
+
export declare const add: <N, T extends ConstrainObjectPathTypes<N> = ConstrainObjectPathTypes<N>>(path: ObjectPath<T>, value: Get<N, T>) => AddObjectDiff<N, T>;
|
35
|
+
export declare const remove: <N, T extends ConstrainObjectPathTypes<N> = ConstrainObjectPathTypes<N>>(path: ObjectPath<T>, originalValue: Get<N, T>) => RemoveObjectDiff<N, T>;
|
36
|
+
export declare const update: <N, T extends ConstrainObjectPathTypes<N> = ConstrainObjectPathTypes<N>>(path: ObjectPath<T>, value: Get<N, T>, originalValue: Get<N, T>) => UpdateObjectDiff<N, T>;
|
40
37
|
//# sourceMappingURL=object-diff.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"object-diff.d.ts","sourceRoot":"","sources":["../../src/object/object-diff.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAC/B,OAAO,EAAE,
|
1
|
+
{"version":3,"file":"object-diff.d.ts","sourceRoot":"","sources":["../../src/object/object-diff.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../src/object/object-diff.ts"],"sourcesContent":["import { Get } from 'type-fest'\nimport {
|
1
|
+
{"version":3,"sources":["../../src/object/object-diff.ts"],"sourcesContent":["import { Get } from 'type-fest'\nimport { ConstrainObjectPathTypes, ObjectPath } from '@bessemer/cornerstone/object/object-path'\n\nexport enum ObjectDiffType {\n Add = 'Add',\n Remove = 'Remove',\n Update = 'Update',\n Move = 'Move',\n}\n\nexport type AddObjectDiff<N, T extends ConstrainObjectPathTypes<N> = ConstrainObjectPathTypes<N>> = {\n type: ObjectDiffType.Add\n path: ObjectPath<T>\n value: Get<N, T>\n}\n\nexport type RemoveObjectDiff<N, T extends ConstrainObjectPathTypes<N> = ConstrainObjectPathTypes<N>> = {\n type: ObjectDiffType.Remove\n path: ObjectPath<T>\n originalValue: Get<N, T>\n}\n\nexport type UpdateObjectDiff<N, T extends ConstrainObjectPathTypes<N> = ConstrainObjectPathTypes<N>> = {\n type: ObjectDiffType.Update\n path: ObjectPath<T>\n value: Get<N, T>\n originalValue: Get<N, T>\n}\n\nexport type MoveObjectDiff<N, T extends ConstrainObjectPathTypes<N> = ConstrainObjectPathTypes<N>> = {\n type: ObjectDiffType.Move\n path: ObjectPath<T>\n value: Get<N, T>\n position: number\n originalPosition: number\n}\n\nexport type ObjectDiffEntry<N, T extends ConstrainObjectPathTypes<N> = ConstrainObjectPathTypes<N>> =\n | AddObjectDiff<N, T>\n | RemoveObjectDiff<N, T>\n | UpdateObjectDiff<N, T>\n | MoveObjectDiff<N, T>\n\nexport type ObjectDiff<N> = Array<ObjectDiffEntry<N>>\n\nexport const add = <N, T extends ConstrainObjectPathTypes<N> = ConstrainObjectPathTypes<N>>(\n path: ObjectPath<T>,\n value: Get<N, T>\n): AddObjectDiff<N, T> => {\n return { type: ObjectDiffType.Add, path, value }\n}\n\nexport const remove = <N, T extends ConstrainObjectPathTypes<N> = ConstrainObjectPathTypes<N>>(\n path: ObjectPath<T>,\n originalValue: Get<N, T>\n): RemoveObjectDiff<N, T> => {\n return { type: ObjectDiffType.Remove, path, originalValue }\n}\n\nexport const update = <N, T extends ConstrainObjectPathTypes<N> = ConstrainObjectPathTypes<N>>(\n path: ObjectPath<T>,\n value: Get<N, T>,\n originalValue: Get<N, T>\n): UpdateObjectDiff<N, T> => {\n return { type: ObjectDiffType.Update, path, value, originalValue }\n}\n"],"mappings":";AAGO,IAAK,iBAAL,kBAAKA,oBAAL;AACL,EAAAA,gBAAA,SAAM;AACN,EAAAA,gBAAA,YAAS;AACT,EAAAA,gBAAA,YAAS;AACT,EAAAA,gBAAA,UAAO;AAJG,SAAAA;AAAA,GAAA;AA0CL,IAAM,MAAM,CACjB,MACA,UACwB;AACxB,SAAO,EAAE,MAAM,iBAAoB,MAAM,MAAM;AACjD;AAEO,IAAM,SAAS,CACpB,MACA,kBAC2B;AAC3B,SAAO,EAAE,MAAM,uBAAuB,MAAM,cAAc;AAC5D;AAEO,IAAM,SAAS,CACpB,MACA,OACA,kBAC2B;AAC3B,SAAO,EAAE,MAAM,uBAAuB,MAAM,OAAO,cAAc;AACnE;","names":["ObjectDiffType"]}
|
@@ -2,8 +2,8 @@ import Zod from 'zod';
|
|
2
2
|
import { Get, Paths, UnknownRecord } from 'type-fest';
|
3
3
|
import { JoinPath, NominalType, ToString, ToStringArray } from '@bessemer/cornerstone/types';
|
4
4
|
export type ObjectPathType = string;
|
5
|
+
export type ConstrainObjectPathTypes<N> = ToString<Paths<N>>;
|
5
6
|
export type ObjectPath<T extends ObjectPathType = ObjectPathType> = NominalType<Array<string>, ['ObjectPath', T]>;
|
6
|
-
export type ConstrainObjectPaths<N> = ObjectPath<ToString<Paths<N>>>;
|
7
7
|
export declare const of: <T extends Array<string | number>>(value: T) => ObjectPath<JoinPath<ToStringArray<T>>>;
|
8
8
|
export declare const fromString: <T extends ObjectPathType>(path: T) => ObjectPath<T>;
|
9
9
|
export declare const Schema: Zod.ZodPipe<Zod.ZodUnion<readonly [Zod.ZodArray<Zod.ZodUnion<readonly [Zod.ZodString, Zod.ZodNumber]>>, Zod.ZodString]>, Zod.ZodTransform<ObjectPath<string>, string | (string | number)[]>>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"object-path.d.ts","sourceRoot":"","sources":["../../src/object/object-path.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;AACrB,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAMrD,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAE5F,MAAM,MAAM,cAAc,GAAG,MAAM,CAAA;AACnC,MAAM,MAAM,
|
1
|
+
{"version":3,"file":"object-path.d.ts","sourceRoot":"","sources":["../../src/object/object-path.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;AACrB,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAMrD,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAE5F,MAAM,MAAM,cAAc,GAAG,MAAM,CAAA;AACnC,MAAM,MAAM,wBAAwB,CAAC,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;AAE5D,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAA;AAEjH,eAAO,MAAM,EAAE,GAAI,CAAC,SAAS,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,OAAO,CAAC,KAAG,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAEpG,CAAA;AAID,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,cAAc,EAAE,MAAM,CAAC,KAAG,UAAU,CAAC,CAAC,CAG1E,CAAA;AAED,eAAO,MAAM,MAAM,8LAMjB,CAAA;AAEF,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,aAAa,EAAE,CAAC,SAAS,cAAc,EAAE,QAAQ,CAAC,EAAE,MAAM,UAAU,CAAC,CAAC,CAAC,KAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAQpH,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,aAAa,EAAE,CAAC,SAAS,cAAc,EAAE,QAAQ,CAAC,EAAE,MAAM,UAAU,CAAC,CAAC,CAAC,KAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAQzH,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,QAAQ,aAAa,EAAE,MAAM,UAAU,EAAE,cAAc,OAAO,KAAG,OAc3F,CAAA"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../src/object/object-path.ts"],"sourcesContent":["import Zod from 'zod'\nimport { Get, Paths, UnknownRecord } from 'type-fest'\nimport { isObject } from '@bessemer/cornerstone/object'\nimport { produce } from 'immer'\nimport { assert } from '@bessemer/cornerstone/assertion'\nimport { isEmpty } from '@bessemer/cornerstone/array'\nimport { failure, Result, success } from '@bessemer/cornerstone/result'\nimport { JoinPath, NominalType, ToString, ToStringArray } from '@bessemer/cornerstone/types'\n\nexport type ObjectPathType = string\nexport type ObjectPath<T extends ObjectPathType = ObjectPathType> = NominalType<Array<string>, ['ObjectPath', T]>\
|
1
|
+
{"version":3,"sources":["../../src/object/object-path.ts"],"sourcesContent":["import Zod from 'zod'\nimport { Get, Paths, UnknownRecord } from 'type-fest'\nimport { isObject } from '@bessemer/cornerstone/object'\nimport { produce } from 'immer'\nimport { assert } from '@bessemer/cornerstone/assertion'\nimport { isEmpty } from '@bessemer/cornerstone/array'\nimport { failure, Result, success } from '@bessemer/cornerstone/result'\nimport { JoinPath, NominalType, ToString, ToStringArray } from '@bessemer/cornerstone/types'\n\nexport type ObjectPathType = string\nexport type ConstrainObjectPathTypes<N> = ToString<Paths<N>>\n\nexport type ObjectPath<T extends ObjectPathType = ObjectPathType> = NominalType<Array<string>, ['ObjectPath', T]>\n\nexport const of = <T extends Array<string | number>>(value: T): ObjectPath<JoinPath<ToStringArray<T>>> => {\n return value.map((it) => `${it}`) as ObjectPath<JoinPath<ToStringArray<T>>>\n}\n\nconst ObjectPathRegex = /^[a-zA-Z_$][a-zA-Z0-9_$]*(?:\\.[a-zA-Z_$][a-zA-Z0-9_$]*|\\.\\d+)*$/\n\nexport const fromString = <T extends ObjectPathType>(path: T): ObjectPath<T> => {\n assert(ObjectPathRegex.test(path), () => `Unable to parse ObjectPath from string: ${path}`)\n return of(path.split('.')) as ObjectPath<T>\n}\n\nexport const Schema = Zod.union([Zod.array(Zod.union([Zod.string(), Zod.number()])), Zod.string()]).transform((it) => {\n if (Array.isArray(it)) {\n return of(it)\n } else {\n return fromString(it)\n }\n})\n\nexport const getValue = <N extends UnknownRecord, T extends ObjectPathType>(object: N, path: ObjectPath<T>): Get<N, T> => {\n const result = getValueResult(object, path)\n\n if (result.isSuccess) {\n return result.value\n } else {\n throw new Error(`Unable to resolve ObjectPath: ${path} against record: ${JSON.stringify(object)}`)\n }\n}\n\nexport const findValue = <N extends UnknownRecord, T extends ObjectPathType>(object: N, path: ObjectPath<T>): Get<N, T> | undefined => {\n const result = getValueResult(object, path)\n\n if (result.isSuccess) {\n return result.value\n } else {\n return undefined\n }\n}\n\nexport const applyValue = (object: UnknownRecord, path: ObjectPath, valueToApply: unknown): unknown => {\n if (isEmpty(path)) {\n return valueToApply\n }\n\n return produce(object, (draft) => {\n const rest = path.slice(0, -1)\n const last = path[path.length - 1]!\n const parent: any = isEmpty(rest) ? draft : getValue(draft, of(rest))\n\n // Check to make sure the last index is ok\n assertLegalIndex(parent, last, object, path)\n parent[last] = valueToApply\n })\n}\n\nconst getValueResult = (object: UnknownRecord, path: ObjectPath): Result<any> => {\n let value: any = object\n\n for (const key of path) {\n if (Array.isArray(value)) {\n const numberKey = Number(key)\n if (numberKey < 0 || numberKey >= value.length) {\n return failure()\n }\n\n value = value[numberKey]\n } else if (isObject(value)) {\n if (!(key in value)) {\n return failure()\n }\n\n value = value[key]\n } else {\n return failure()\n }\n }\n\n return success(value)\n}\n\nconst assertLegalIndex = (value: any, _key: string, object: UnknownRecord, path: ObjectPath): void => {\n if (Array.isArray(value) || isObject(value)) {\n return\n } else {\n throw new Error(`Unable to resolve ObjectPath: ${path} against record: ${JSON.stringify(object)}`)\n }\n}\n"],"mappings":";AAAA,OAAO,SAAS;AAEhB,SAAS,gBAAgB;AACzB,SAAS,eAAe;AACxB,SAAS,cAAc;AACvB,SAAS,eAAe;AACxB,SAAS,SAAiB,eAAe;AAQlC,IAAM,KAAK,CAAmC,UAAqD;AACxG,SAAO,MAAM,IAAI,CAAC,OAAO,GAAG,EAAE,EAAE;AAClC;AAEA,IAAM,kBAAkB;AAEjB,IAAM,aAAa,CAA2B,SAA2B;AAC9E,SAAO,gBAAgB,KAAK,IAAI,GAAG,MAAM,2CAA2C,IAAI,EAAE;AAC1F,SAAO,GAAG,KAAK,MAAM,GAAG,CAAC;AAC3B;AAEO,IAAM,SAAS,IAAI,MAAM,CAAC,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,OAAO,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,UAAU,CAAC,OAAO;AACpH,MAAI,MAAM,QAAQ,EAAE,GAAG;AACrB,WAAO,GAAG,EAAE;AAAA,EACd,OAAO;AACL,WAAO,WAAW,EAAE;AAAA,EACtB;AACF,CAAC;AAEM,IAAM,WAAW,CAAoD,QAAW,SAAmC;AACxH,QAAM,SAAS,eAAe,QAAQ,IAAI;AAE1C,MAAI,OAAO,WAAW;AACpB,WAAO,OAAO;AAAA,EAChB,OAAO;AACL,UAAM,IAAI,MAAM,iCAAiC,IAAI,oBAAoB,KAAK,UAAU,MAAM,CAAC,EAAE;AAAA,EACnG;AACF;AAEO,IAAM,YAAY,CAAoD,QAAW,SAA+C;AACrI,QAAM,SAAS,eAAe,QAAQ,IAAI;AAE1C,MAAI,OAAO,WAAW;AACpB,WAAO,OAAO;AAAA,EAChB,OAAO;AACL,WAAO;AAAA,EACT;AACF;AAEO,IAAM,aAAa,CAAC,QAAuB,MAAkB,iBAAmC;AACrG,MAAI,QAAQ,IAAI,GAAG;AACjB,WAAO;AAAA,EACT;AAEA,SAAO,QAAQ,QAAQ,CAAC,UAAU;AAChC,UAAM,OAAO,KAAK,MAAM,GAAG,EAAE;AAC7B,UAAM,OAAO,KAAK,KAAK,SAAS,CAAC;AACjC,UAAM,SAAc,QAAQ,IAAI,IAAI,QAAQ,SAAS,OAAO,GAAG,IAAI,CAAC;AAGpE,qBAAiB,QAAQ,MAAM,QAAQ,IAAI;AAC3C,WAAO,IAAI,IAAI;AAAA,EACjB,CAAC;AACH;AAEA,IAAM,iBAAiB,CAAC,QAAuB,SAAkC;AAC/E,MAAI,QAAa;AAEjB,aAAW,OAAO,MAAM;AACtB,QAAI,MAAM,QAAQ,KAAK,GAAG;AACxB,YAAM,YAAY,OAAO,GAAG;AAC5B,UAAI,YAAY,KAAK,aAAa,MAAM,QAAQ;AAC9C,eAAO,QAAQ;AAAA,MACjB;AAEA,cAAQ,MAAM,SAAS;AAAA,IACzB,WAAW,SAAS,KAAK,GAAG;AAC1B,UAAI,EAAE,OAAO,QAAQ;AACnB,eAAO,QAAQ;AAAA,MACjB;AAEA,cAAQ,MAAM,GAAG;AAAA,IACnB,OAAO;AACL,aAAO,QAAQ;AAAA,IACjB;AAAA,EACF;AAEA,SAAO,QAAQ,KAAK;AACtB;AAEA,IAAM,mBAAmB,CAAC,OAAY,MAAc,QAAuB,SAA2B;AACpG,MAAI,MAAM,QAAQ,KAAK,KAAK,SAAS,KAAK,GAAG;AAC3C;AAAA,EACF,OAAO;AACL,UAAM,IAAI,MAAM,iCAAiC,IAAI,oBAAoB,KAAK,UAAU,MAAM,CAAC,EAAE;AAAA,EACnG;AACF;","names":[]}
|