@dxos/echo 0.8.4-main.8360d9e660 → 0.8.4-main.8baae0fced
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/LICENSE +102 -5
- package/README.md +3 -3
- package/dist/lib/neutral/Annotation.mjs +5 -3
- package/dist/lib/neutral/Database.mjs +8 -4
- package/dist/lib/neutral/Entity.mjs +16 -14
- package/dist/lib/neutral/Err.mjs +1 -1
- package/dist/lib/neutral/Extension.mjs +18 -0
- package/dist/lib/neutral/Extension.mjs.map +7 -0
- package/dist/lib/neutral/Feed.mjs +23 -18
- package/dist/lib/neutral/Filter.mjs +23 -13
- package/dist/lib/neutral/Format.mjs +3 -3
- package/dist/lib/neutral/JsonSchema.mjs +8 -8
- package/dist/lib/neutral/Key.mjs +1 -1
- package/dist/lib/neutral/Migration.mjs +17 -0
- package/dist/lib/neutral/Migration.mjs.map +7 -0
- package/dist/lib/neutral/Obj.mjs +16 -13
- package/dist/lib/neutral/Order.mjs +1 -1
- package/dist/lib/neutral/Query.mjs +19 -17
- package/dist/lib/neutral/QueryResult.mjs +1 -1
- package/dist/lib/neutral/Ref.mjs +9 -7
- package/dist/lib/neutral/Relation.mjs +15 -14
- package/dist/lib/neutral/SchemaRegistry.mjs +1 -1
- package/dist/lib/neutral/Tag.mjs +14 -13
- package/dist/lib/neutral/Type.mjs +10 -10
- package/dist/lib/neutral/{chunk-FZO7LQO7.mjs → chunk-44HT3MEC.mjs} +2 -2
- package/dist/lib/neutral/{chunk-ROAGDPV7.mjs → chunk-4A2GS5LQ.mjs} +12 -8
- package/dist/lib/neutral/chunk-4A2GS5LQ.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-OENWMTE6.mjs → chunk-5SL5LDLD.mjs} +4 -2
- package/dist/lib/neutral/chunk-5SL5LDLD.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-ANHVGJI4.mjs → chunk-7RVZT53K.mjs} +1 -1
- package/dist/lib/neutral/{chunk-YWXWXIE5.mjs → chunk-APHSOTIX.mjs} +2 -2
- package/dist/lib/neutral/{chunk-YWXWXIE5.mjs.map → chunk-APHSOTIX.mjs.map} +2 -2
- package/dist/lib/neutral/{chunk-6DNYDXCV.mjs → chunk-B2P7IVG3.mjs} +61 -14
- package/dist/lib/neutral/chunk-B2P7IVG3.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-BNCCGLJN.mjs → chunk-BICZKPQG.mjs} +1 -1
- package/dist/lib/neutral/{chunk-43Y5DOS6.mjs → chunk-BMB7IHGB.mjs} +16 -66
- package/dist/lib/neutral/chunk-BMB7IHGB.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-6K2MVI2O.mjs → chunk-BUBEC474.mjs} +4 -4
- package/dist/lib/neutral/{chunk-YMNSMKKW.mjs → chunk-C4PSESGN.mjs} +6 -22
- package/dist/lib/neutral/{chunk-YMNSMKKW.mjs.map → chunk-C4PSESGN.mjs.map} +3 -3
- package/dist/lib/neutral/chunk-FIWO2FZK.mjs +36 -0
- package/dist/lib/neutral/chunk-FIWO2FZK.mjs.map +7 -0
- package/dist/lib/neutral/chunk-GWFFC34K.mjs +50 -0
- package/dist/lib/neutral/chunk-GWFFC34K.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-NXMFBIT5.mjs → chunk-HKETO4L4.mjs} +72 -6
- package/dist/lib/neutral/chunk-HKETO4L4.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-NEGC54NE.mjs → chunk-I2DARWPX.mjs} +17 -19
- package/dist/lib/neutral/chunk-I2DARWPX.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-7VNVH63N.mjs → chunk-IVSI7QO6.mjs} +50 -20
- package/dist/lib/neutral/chunk-IVSI7QO6.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-BOZZPUXE.mjs → chunk-MLS7U7AT.mjs} +12 -65
- package/dist/lib/neutral/chunk-MLS7U7AT.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-WYOKA6AE.mjs → chunk-N4B7FHQT.mjs} +2 -2
- package/dist/lib/neutral/{chunk-WYOKA6AE.mjs.map → chunk-N4B7FHQT.mjs.map} +1 -1
- package/dist/lib/neutral/{chunk-FXEG7EOK.mjs → chunk-N7VOEPSV.mjs} +6 -3
- package/dist/lib/neutral/{chunk-FXEG7EOK.mjs.map → chunk-N7VOEPSV.mjs.map} +3 -3
- package/dist/lib/neutral/{chunk-UTBRYVQC.mjs → chunk-QRZ2I3ZM.mjs} +2 -2
- package/dist/lib/neutral/{chunk-SEMVAGBM.mjs → chunk-TNBK56IN.mjs} +19 -24
- package/dist/lib/neutral/chunk-TNBK56IN.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-B5OXLWZL.mjs → chunk-TRPZU2HV.mjs} +2 -2
- package/dist/lib/neutral/{chunk-UI6MWK5W.mjs → chunk-TTCSATUD.mjs} +1 -1
- package/dist/lib/neutral/{chunk-OMUPQMLR.mjs → chunk-V72DY6LU.mjs} +1 -1
- package/dist/lib/neutral/{chunk-6GPU7XC3.mjs → chunk-VW42HESL.mjs} +54 -17
- package/dist/lib/neutral/chunk-VW42HESL.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-4JRI2ZJI.mjs → chunk-X3356HPV.mjs} +120 -12
- package/dist/lib/neutral/chunk-X3356HPV.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-W47JKR3X.mjs → chunk-XEXM5HWQ.mjs} +18 -46
- package/dist/lib/neutral/chunk-XEXM5HWQ.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-C4JZK4J7.mjs → chunk-Z5GKP74O.mjs} +231 -479
- package/dist/lib/neutral/chunk-Z5GKP74O.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-UBEZSGXY.mjs → chunk-ZISMEVKD.mjs} +1 -1
- package/dist/lib/neutral/{chunk-UBEZSGXY.mjs.map → chunk-ZISMEVKD.mjs.map} +2 -2
- package/dist/lib/neutral/index.mjs +38 -28
- package/dist/lib/neutral/internal/index.mjs +15 -9
- package/dist/lib/neutral/meta.json +1 -1
- package/dist/lib/neutral/testing/index.mjs +185 -129
- package/dist/lib/neutral/testing/index.mjs.map +3 -3
- package/dist/types/src/Annotation.d.ts +1 -1
- package/dist/types/src/Annotation.d.ts.map +1 -1
- package/dist/types/src/Collection.d.ts.map +1 -1
- package/dist/types/src/Database.d.ts +14 -2
- package/dist/types/src/Database.d.ts.map +1 -1
- package/dist/types/src/Dataset.d.ts +2 -1
- package/dist/types/src/Dataset.d.ts.map +1 -1
- package/dist/types/src/Entity.d.ts +17 -11
- package/dist/types/src/Entity.d.ts.map +1 -1
- package/dist/types/src/Err.d.ts +18 -18
- package/dist/types/src/Err.d.ts.map +1 -1
- package/dist/types/src/Extension.d.ts +80 -0
- package/dist/types/src/Extension.d.ts.map +1 -0
- package/dist/types/src/Extension.test.d.ts +2 -0
- package/dist/types/src/Extension.test.d.ts.map +1 -0
- package/dist/types/src/Feed.d.ts +62 -21
- package/dist/types/src/Feed.d.ts.map +1 -1
- package/dist/types/src/Filter.d.ts +54 -4
- package/dist/types/src/Filter.d.ts.map +1 -1
- package/dist/types/src/Filter.test.d.ts +2 -0
- package/dist/types/src/Filter.test.d.ts.map +1 -0
- package/dist/types/src/Hypergraph.d.ts +3 -3
- package/dist/types/src/Hypergraph.d.ts.map +1 -1
- package/dist/types/src/Json.d.ts +33 -0
- package/dist/types/src/Json.d.ts.map +1 -0
- package/dist/types/src/Json.test.d.ts +2 -0
- package/dist/types/src/Json.test.d.ts.map +1 -0
- package/dist/types/src/JsonSchema.d.ts +1 -1
- package/dist/types/src/Migration.d.ts +69 -0
- package/dist/types/src/Migration.d.ts.map +1 -0
- package/dist/types/src/Obj.d.ts +42 -28
- package/dist/types/src/Obj.d.ts.map +1 -1
- package/dist/types/src/Order.d.ts.map +1 -1
- package/dist/types/src/Query.d.ts +13 -2
- package/dist/types/src/Query.d.ts.map +1 -1
- package/dist/types/src/Ref.d.ts +1 -0
- package/dist/types/src/Ref.d.ts.map +1 -1
- package/dist/types/src/Relation.d.ts +17 -18
- package/dist/types/src/Relation.d.ts.map +1 -1
- package/dist/types/src/Tag.d.ts +2 -2
- package/dist/types/src/Tag.d.ts.map +1 -1
- package/dist/types/src/Type.d.ts +3 -3
- package/dist/types/src/Type.d.ts.map +1 -1
- package/dist/types/src/View.d.ts +1 -1
- package/dist/types/src/View.d.ts.map +1 -1
- package/dist/types/src/exemplars.test.d.ts +2 -0
- package/dist/types/src/exemplars.test.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +3 -0
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/internal/Annotation/annotations.d.ts +12 -2
- package/dist/types/src/internal/Annotation/annotations.d.ts.map +1 -1
- package/dist/types/src/internal/Annotation/sorting.d.ts.map +1 -1
- package/dist/types/src/internal/Annotation/util.d.ts +1 -1
- package/dist/types/src/internal/Annotation/util.d.ts.map +1 -1
- package/dist/types/src/internal/Entity/api.d.ts.map +1 -1
- package/dist/types/src/internal/Entity/model.d.ts +2 -0
- package/dist/types/src/internal/Entity/model.d.ts.map +1 -1
- package/dist/types/src/internal/Entity/object.d.ts.map +1 -1
- package/dist/types/src/internal/Entity/relation.d.ts.map +1 -1
- package/dist/types/src/internal/Entity/version.d.ts.map +1 -1
- package/dist/types/src/internal/Format/date.d.ts.map +1 -1
- package/dist/types/src/internal/Format/format.d.ts.map +1 -1
- package/dist/types/src/internal/Format/number.d.ts.map +1 -1
- package/dist/types/src/internal/Format/object.d.ts.map +1 -1
- package/dist/types/src/internal/Format/types.d.ts.map +1 -1
- package/dist/types/src/internal/JsonSchema/json-schema-normalize.d.ts.map +1 -1
- package/dist/types/src/internal/JsonSchema/json-schema-type.d.ts +28 -28
- package/dist/types/src/internal/JsonSchema/json-schema-type.d.ts.map +1 -1
- package/dist/types/src/internal/JsonSchema/json-schema.d.ts +1 -1
- package/dist/types/src/internal/JsonSchema/json-schema.d.ts.map +1 -1
- package/dist/types/src/internal/Obj/clone.d.ts.map +1 -1
- package/dist/types/src/internal/Obj/common.d.ts.map +1 -1
- package/dist/types/src/internal/Obj/create-object.d.ts.map +1 -1
- package/dist/types/src/internal/Obj/deleted.d.ts.map +1 -1
- package/dist/types/src/internal/Obj/ids.d.ts +1 -1
- package/dist/types/src/internal/Obj/ids.d.ts.map +1 -1
- package/dist/types/src/internal/Obj/json-serializer.d.ts +4 -3
- package/dist/types/src/internal/Obj/json-serializer.d.ts.map +1 -1
- package/dist/types/src/internal/Obj/set-value.d.ts +1 -1
- package/dist/types/src/internal/Obj/set-value.d.ts.map +1 -1
- package/dist/types/src/internal/Obj/snapshot.d.ts.map +1 -1
- package/dist/types/src/internal/Query.d.ts +10 -0
- package/dist/types/src/internal/Query.d.ts.map +1 -0
- package/dist/types/src/internal/Ref/ref-array.d.ts.map +1 -1
- package/dist/types/src/internal/Ref/ref.d.ts +14 -1
- package/dist/types/src/internal/Ref/ref.d.ts.map +1 -1
- package/dist/types/src/internal/Type/compose.d.ts.map +1 -1
- package/dist/types/src/internal/Type/echo-schema.d.ts +2 -2
- package/dist/types/src/internal/Type/echo-schema.d.ts.map +1 -1
- package/dist/types/src/internal/Type/manipulation.d.ts.map +1 -1
- package/dist/types/src/internal/common/api/meta.d.ts +3 -3
- package/dist/types/src/internal/common/api/meta.d.ts.map +1 -1
- package/dist/types/src/internal/common/proxy/change-context.d.ts +1 -1
- package/dist/types/src/internal/common/proxy/change-context.d.ts.map +1 -1
- package/dist/types/src/internal/common/proxy/define-hidden-property.d.ts.map +1 -1
- package/dist/types/src/internal/common/proxy/errors.d.ts +1 -1
- package/dist/types/src/internal/common/proxy/errors.d.ts.map +1 -1
- package/dist/types/src/internal/common/proxy/event-batch.d.ts.map +1 -1
- package/dist/types/src/internal/common/proxy/json-serializer.d.ts.map +1 -1
- package/dist/types/src/internal/common/proxy/make-object.d.ts.map +1 -1
- package/dist/types/src/internal/common/proxy/ownership.d.ts.map +1 -1
- package/dist/types/src/internal/common/proxy/proxy-utils.d.ts.map +1 -1
- package/dist/types/src/internal/common/proxy/reactive-array.d.ts +1 -1
- package/dist/types/src/internal/common/proxy/reactive.d.ts +1 -1
- package/dist/types/src/internal/common/proxy/reactive.d.ts.map +1 -1
- package/dist/types/src/internal/common/proxy/reactive.test.d.ts +2 -0
- package/dist/types/src/internal/common/proxy/reactive.test.d.ts.map +1 -0
- package/dist/types/src/internal/common/proxy/schema-validator.d.ts.map +1 -1
- package/dist/types/src/internal/common/proxy/typed-handler.d.ts.map +1 -1
- package/dist/types/src/internal/common/types/base.d.ts.map +1 -1
- package/dist/types/src/internal/common/types/entity.d.ts +4 -4
- package/dist/types/src/internal/common/types/entity.d.ts.map +1 -1
- package/dist/types/src/internal/common/types/meta.d.ts +10 -0
- package/dist/types/src/internal/common/types/meta.d.ts.map +1 -1
- package/dist/types/src/internal/common/types/version.d.ts +1 -1
- package/dist/types/src/internal/index.d.ts +1 -0
- package/dist/types/src/internal/index.d.ts.map +1 -1
- package/dist/types/src/testing/test-data.d.ts +8 -8
- package/dist/types/src/testing/test-data.d.ts.map +1 -1
- package/dist/types/src/testing/test-schema.d.ts +53 -53
- package/dist/types/src/testing/test-schema.d.ts.map +1 -1
- package/dist/types/src/testing/util.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +25 -15
- package/src/Annotation.ts +1 -0
- package/src/Collection.ts +2 -2
- package/src/Database.ts +50 -15
- package/src/Entity.ts +18 -12
- package/src/Extension.test.ts +235 -0
- package/src/Extension.ts +122 -0
- package/src/Feed.ts +107 -34
- package/src/Filter.test.ts +90 -0
- package/src/Filter.ts +97 -3
- package/src/Hypergraph.ts +3 -3
- package/src/Json.test.ts +175 -0
- package/src/Json.ts +102 -0
- package/src/Migration.ts +106 -0
- package/src/Obj.test.ts +105 -13
- package/src/Obj.ts +154 -33
- package/src/Query.test.ts +199 -9
- package/src/Query.ts +58 -8
- package/src/Ref.ts +2 -0
- package/src/Relation.ts +24 -20
- package/src/Type.ts +1 -1
- package/src/View.ts +1 -1
- package/src/exemplars.test.ts +21 -0
- package/src/index.ts +4 -0
- package/src/internal/Annotation/annotations.test.ts +51 -2
- package/src/internal/Annotation/annotations.ts +33 -14
- package/src/internal/Annotation/sorting.ts +0 -1
- package/src/internal/Entity/api.ts +0 -1
- package/src/internal/Entity/model.ts +2 -0
- package/src/internal/Entity/object.ts +0 -1
- package/src/internal/Entity/version.ts +0 -1
- package/src/internal/Format/date.test.ts +0 -1
- package/src/internal/Format/format.test.ts +0 -1
- package/src/internal/JsonSchema/json-schema-type.ts +1 -1
- package/src/internal/JsonSchema/json-schema.test.ts +1 -2
- package/src/internal/JsonSchema/json-schema.ts +1 -2
- package/src/internal/Obj/clone.ts +1 -1
- package/src/internal/Obj/create-object.test.ts +2 -4
- package/src/internal/Obj/create-object.ts +2 -3
- package/src/internal/Obj/deleted.ts +1 -1
- package/src/internal/Obj/ids.ts +1 -1
- package/src/internal/Obj/json-serializer.test.ts +49 -5
- package/src/internal/Obj/json-serializer.ts +47 -25
- package/src/internal/Obj/set-value.test.ts +24 -24
- package/src/internal/Obj/set-value.ts +1 -1
- package/src/internal/Query.ts +156 -0
- package/src/internal/Ref/ref-array.ts +0 -1
- package/src/internal/Ref/ref.test.ts +0 -1
- package/src/internal/Ref/ref.ts +18 -1
- package/src/internal/Type/compose.test.ts +0 -1
- package/src/internal/Type/echo-schema.ts +3 -4
- package/src/internal/common/README.md +1 -1
- package/src/internal/common/api/meta.ts +3 -3
- package/src/internal/common/proxy/change-context.ts +1 -1
- package/src/internal/common/proxy/change.test.ts +94 -94
- package/src/internal/common/proxy/errors.ts +2 -2
- package/src/internal/common/proxy/handler.test.ts +0 -2
- package/src/internal/common/proxy/json-serializer.ts +4 -1
- package/src/internal/common/proxy/make-object.ts +0 -1
- package/src/internal/common/proxy/ownership.ts +0 -1
- package/src/internal/common/proxy/reactive-array.ts +1 -1
- package/src/internal/common/proxy/reactive.test.ts +54 -0
- package/src/internal/common/proxy/reactive.ts +11 -3
- package/src/internal/common/proxy/typed-handler.test.ts +0 -1
- package/src/internal/common/proxy/typed-handler.ts +8 -10
- package/src/internal/common/proxy/typed-object.test.ts +2 -3
- package/src/internal/common/types/entity.ts +1 -1
- package/src/internal/common/types/meta.ts +12 -1
- package/src/internal/index.ts +1 -0
- package/src/testing/api.test.ts +0 -1
- package/src/testing/test-data.ts +157 -98
- package/dist/lib/neutral/chunk-43Y5DOS6.mjs.map +0 -7
- package/dist/lib/neutral/chunk-4JRI2ZJI.mjs.map +0 -7
- package/dist/lib/neutral/chunk-6DNYDXCV.mjs.map +0 -7
- package/dist/lib/neutral/chunk-6GPU7XC3.mjs.map +0 -7
- package/dist/lib/neutral/chunk-7VNVH63N.mjs.map +0 -7
- package/dist/lib/neutral/chunk-BOZZPUXE.mjs.map +0 -7
- package/dist/lib/neutral/chunk-C4JZK4J7.mjs.map +0 -7
- package/dist/lib/neutral/chunk-NEGC54NE.mjs.map +0 -7
- package/dist/lib/neutral/chunk-NXMFBIT5.mjs.map +0 -7
- package/dist/lib/neutral/chunk-OENWMTE6.mjs.map +0 -7
- package/dist/lib/neutral/chunk-ROAGDPV7.mjs.map +0 -7
- package/dist/lib/neutral/chunk-SEMVAGBM.mjs.map +0 -7
- package/dist/lib/neutral/chunk-W47JKR3X.mjs.map +0 -7
- /package/dist/lib/neutral/{chunk-FZO7LQO7.mjs.map → chunk-44HT3MEC.mjs.map} +0 -0
- /package/dist/lib/neutral/{chunk-ANHVGJI4.mjs.map → chunk-7RVZT53K.mjs.map} +0 -0
- /package/dist/lib/neutral/{chunk-BNCCGLJN.mjs.map → chunk-BICZKPQG.mjs.map} +0 -0
- /package/dist/lib/neutral/{chunk-6K2MVI2O.mjs.map → chunk-BUBEC474.mjs.map} +0 -0
- /package/dist/lib/neutral/{chunk-UTBRYVQC.mjs.map → chunk-QRZ2I3ZM.mjs.map} +0 -0
- /package/dist/lib/neutral/{chunk-B5OXLWZL.mjs.map → chunk-TRPZU2HV.mjs.map} +0 -0
- /package/dist/lib/neutral/{chunk-UI6MWK5W.mjs.map → chunk-TTCSATUD.mjs.map} +0 -0
- /package/dist/lib/neutral/{chunk-OMUPQMLR.mjs.map → chunk-V72DY6LU.mjs.map} +0 -0
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import * as Database from './Database';
|
|
2
|
+
/**
|
|
3
|
+
* `JSON.stringify` replacer signature.
|
|
4
|
+
*
|
|
5
|
+
* Defined here (rather than re-imported from a UI package) so other ECHO-aware utilities can
|
|
6
|
+
* share a stable signature without creating a dependency edge into the UI tree.
|
|
7
|
+
*/
|
|
8
|
+
export type JsonReplacer = (key: string, value: any) => any;
|
|
9
|
+
export type CreateRefReplacerOptions = {
|
|
10
|
+
db: Database.Database;
|
|
11
|
+
/** How many ref hops to follow. `0` leaves all refs as-is. Default: `1`. */
|
|
12
|
+
depth?: number;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Returns a {@link JsonReplacer} that inlines ECHO ref objects (`{ "/": "dxn:echo:..." }`) up to
|
|
16
|
+
* `depth` ref hops. Beyond that depth refs are left in their encoded form.
|
|
17
|
+
*
|
|
18
|
+
* Implemented as a per-call `JSON.stringify` replacer (not a one-shot tree walk at root) so it
|
|
19
|
+
* composes with wrappers like `safeStringify` that intercept the root call. JSON.stringify
|
|
20
|
+
* already drives the recursion; we only need to (a) detect a ref at the current callback,
|
|
21
|
+
* (b) resolve and return the target if hop budget remains, and (c) tag the returned object
|
|
22
|
+
* with its hop count so children know how far in they are.
|
|
23
|
+
*
|
|
24
|
+
* The hop count is tracked per-object via a `WeakMap`: a ref-resolved target's children inherit
|
|
25
|
+
* `parentHops + 1`; a regular intermediate object's children inherit `parentHops`. This makes the
|
|
26
|
+
* budget count *ref hops*, not tree depth — a ref deep in a tree still resolves once when
|
|
27
|
+
* `depth >= 1`.
|
|
28
|
+
*
|
|
29
|
+
* Note: ECHO objects' `toJSON` runs before the replacer is invoked, so by the time we see a
|
|
30
|
+
* value refs are already encoded as `{ "/": "dxn:..." }`.
|
|
31
|
+
*/
|
|
32
|
+
export declare const createRefReplacer: ({ db, depth }: CreateRefReplacerOptions) => JsonReplacer;
|
|
33
|
+
//# sourceMappingURL=Json.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Json.d.ts","sourceRoot":"","sources":["../../../src/Json.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AAGvC;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;AAE5D,MAAM,MAAM,wBAAwB,GAAG;IACrC,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACtB,4EAA4E;IAC5E,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAUF;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,iBAAiB,kBAAuB,wBAAwB,KAAG,YAoD/E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Json.test.d.ts","sourceRoot":"","sources":["../../../src/Json.test.ts"],"names":[],"mappings":""}
|
|
@@ -3,7 +3,7 @@ import * as jsonSchemaInternal from './internal/JsonSchema';
|
|
|
3
3
|
/**
|
|
4
4
|
* Decode JSON Schema to Effect Schema.
|
|
5
5
|
*/
|
|
6
|
-
export declare const toEffectSchema: (root: jsonSchemaInternal.JsonSchemaType, _defs?: jsonSchemaInternal.JsonSchemaType[
|
|
6
|
+
export declare const toEffectSchema: (root: jsonSchemaInternal.JsonSchemaType, _defs?: jsonSchemaInternal.JsonSchemaType['$defs']) => Schema.Schema.AnyNoContext;
|
|
7
7
|
/**
|
|
8
8
|
* Encode Effect Schema to JSON Schema.
|
|
9
9
|
*/
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import type * as Schema from 'effect/Schema';
|
|
2
|
+
import { type DXN } from '@dxos/keys';
|
|
3
|
+
import type * as Database from './Database';
|
|
4
|
+
import type * as Entity from './Entity';
|
|
5
|
+
import { MetaId, type ObjectMeta } from './internal';
|
|
6
|
+
/**
|
|
7
|
+
* Result returned by a migration's `transform` callback.
|
|
8
|
+
* The data shape matches the target schema; the optional `[Obj.Meta]` symbol key lets the
|
|
9
|
+
* transform update the object's meta (e.g. `key` / `version`) atomically with the data swap.
|
|
10
|
+
*/
|
|
11
|
+
export type TransformResult<To extends Schema.Schema.AnyNoContext> = Omit<Schema.Schema.Type<To>, 'id' | Entity.KindId> & {
|
|
12
|
+
[MetaId]?: Partial<ObjectMeta>;
|
|
13
|
+
};
|
|
14
|
+
type DefineObjectMigrationOptions<From extends Schema.Schema.AnyNoContext, To extends Schema.Schema.AnyNoContext> = {
|
|
15
|
+
from: From;
|
|
16
|
+
to: To;
|
|
17
|
+
/**
|
|
18
|
+
* Pure function that converts the old object data to the new object data.
|
|
19
|
+
*
|
|
20
|
+
* The returned object may include an optional `[Obj.Meta]` entry to update the object's meta
|
|
21
|
+
* (e.g. registry `key` / `version`) atomically with the data swap.
|
|
22
|
+
*/
|
|
23
|
+
transform: (from: Schema.Schema.Type<From>, context: ObjectMigrationContext) => Promise<TransformResult<To>>;
|
|
24
|
+
/**
|
|
25
|
+
* Callback that is called after the object is migrated. Called for every object that is migrated.
|
|
26
|
+
*
|
|
27
|
+
* NOTE: Database mutations performed in this callback are not guaranteed to be idempotent.
|
|
28
|
+
* If multiple peers run the migration separately, the effects may be applied multiple times.
|
|
29
|
+
*/
|
|
30
|
+
onMigration?: (params: OnMigrateProps<From, To>) => Promise<void>;
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Context passed to object migration callbacks.
|
|
34
|
+
*/
|
|
35
|
+
export type ObjectMigrationContext = {
|
|
36
|
+
db: Database.Database;
|
|
37
|
+
};
|
|
38
|
+
type OnMigrateProps<From extends Schema.Schema.AnyNoContext, To extends Schema.Schema.AnyNoContext> = {
|
|
39
|
+
before: Schema.Schema.Type<From>;
|
|
40
|
+
object: Schema.Schema.Type<To>;
|
|
41
|
+
db: Database.Database;
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Definition of a migration from one object schema version to another.
|
|
45
|
+
*/
|
|
46
|
+
export type ObjectMigration = {
|
|
47
|
+
fromType: DXN;
|
|
48
|
+
toType: DXN;
|
|
49
|
+
fromSchema: Schema.Schema.AnyNoContext;
|
|
50
|
+
toSchema: Schema.Schema.AnyNoContext;
|
|
51
|
+
transform: (from: unknown, context: ObjectMigrationContext) => Promise<unknown>;
|
|
52
|
+
onMigration?: (params: OnMigrateProps<any, any>) => Promise<void>;
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* Define a migration between two object schemas.
|
|
56
|
+
*
|
|
57
|
+
* @example
|
|
58
|
+
* ```ts
|
|
59
|
+
* const migration = Migration.define({
|
|
60
|
+
* from: ContactV1,
|
|
61
|
+
* to: ContactV2,
|
|
62
|
+
* transform: async (from) => ({ name: `${from.firstName} ${from.lastName}` }),
|
|
63
|
+
* onMigration: async () => {},
|
|
64
|
+
* });
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
export declare const define: <From extends Schema.Schema.AnyNoContext, To extends Schema.Schema.AnyNoContext>(options: DefineObjectMigrationOptions<From, To>) => ObjectMigration;
|
|
68
|
+
export {};
|
|
69
|
+
//# sourceMappingURL=Migration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Migration.d.ts","sourceRoot":"","sources":["../../../src/Migration.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAE7C,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,KAAK,UAAU,EAAgB,MAAM,YAAY,CAAC;AAEnE;;;;GAIG;AACH,MAAM,MAAM,eAAe,CAAC,EAAE,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,IAAI,IAAI,CACvE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EACtB,IAAI,GAAG,MAAM,CAAC,MAAM,CACrB,GAAG;IACF,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;CAChC,CAAC;AAEF,KAAK,4BAA4B,CAAC,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,IAAI;IAClH,IAAI,EAAE,IAAI,CAAC;IACX,EAAE,EAAE,EAAE,CAAC;IACP;;;;;OAKG;IAEH,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,sBAAsB,KAAK,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC;IAE7G;;;;;OAKG;IACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACnE,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;CACvB,CAAC;AAEF,KAAK,cAAc,CAAC,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,IAAI;IACpG,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/B,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,EAAE,GAAG,CAAC;IACd,MAAM,EAAE,GAAG,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;IACvC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;IACrC,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,sBAAsB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAChF,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACnE,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,MAAM,GAAI,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,WAC1F,4BAA4B,CAAC,IAAI,EAAE,EAAE,CAAC,KAC9C,eAkBF,CAAC"}
|
package/dist/types/src/Obj.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ import type * as Database from './Database';
|
|
|
7
7
|
import * as Entity from './Entity';
|
|
8
8
|
import * as Err from './Err';
|
|
9
9
|
import * as internal from './internal';
|
|
10
|
-
import
|
|
10
|
+
import * as Ref from './Ref';
|
|
11
11
|
import type * as Type from './Type';
|
|
12
12
|
/**
|
|
13
13
|
* Base type for all ECHO objects.
|
|
@@ -50,8 +50,6 @@ export interface Unknown extends BaseObj {
|
|
|
50
50
|
* ```
|
|
51
51
|
*/
|
|
52
52
|
export declare const Unknown: Type.Obj<Unknown>;
|
|
53
|
-
/**
|
|
54
|
-
|
|
55
53
|
/**
|
|
56
54
|
* Object with arbitrary properties.
|
|
57
55
|
*
|
|
@@ -184,40 +182,40 @@ export type CloneOptions = {
|
|
|
184
182
|
export declare const clone: <T extends Unknown>(obj: T, opts?: CloneOptions) => T;
|
|
185
183
|
/**
|
|
186
184
|
* Makes all properties mutable recursively.
|
|
187
|
-
* Used to provide a mutable view of an object within `Obj.
|
|
185
|
+
* Used to provide a mutable view of an object within `Obj.update`.
|
|
188
186
|
*/
|
|
189
187
|
export type Mutable<T> = internal.Mutable<T>;
|
|
190
188
|
/**
|
|
191
189
|
* Perform mutations on an echo object within a controlled context.
|
|
192
190
|
*
|
|
193
191
|
* All mutations within the callback are batched and trigger a single notification
|
|
194
|
-
* when the callback completes. Direct mutations outside of `Obj.
|
|
192
|
+
* when the callback completes. Direct mutations outside of `Obj.update` will throw
|
|
195
193
|
* an error for echo objects.
|
|
196
194
|
*
|
|
197
195
|
* This function also works with nested objects within echo objects (e.g., Template structs)
|
|
198
196
|
* that are reactive at runtime.
|
|
199
197
|
*
|
|
200
|
-
* @param obj - The echo object to mutate. Use `Relation.
|
|
198
|
+
* @param obj - The echo object to mutate. Use `Relation.update` for relations.
|
|
201
199
|
* @param callback - The callback that performs mutations on the object.
|
|
202
200
|
*
|
|
203
201
|
* @example
|
|
204
202
|
* ```ts
|
|
205
203
|
* const person = Obj.make(Person, { name: 'John', age: 25 });
|
|
206
204
|
*
|
|
207
|
-
* // Mutate within Obj.
|
|
208
|
-
* Obj.
|
|
209
|
-
*
|
|
210
|
-
*
|
|
205
|
+
* // Mutate within Obj.update
|
|
206
|
+
* Obj.update(person, (obj) => {
|
|
207
|
+
* obj.name = 'Jane';
|
|
208
|
+
* obj.age = 30;
|
|
211
209
|
* });
|
|
212
210
|
* // ONE notification fires here
|
|
213
211
|
*
|
|
214
212
|
* // Direct mutation throws
|
|
215
|
-
* person.name = 'Bob'; // Error: Cannot modify outside Obj.
|
|
213
|
+
* person.name = 'Bob'; // Error: Cannot modify outside Obj.update()
|
|
216
214
|
* ```
|
|
217
215
|
*
|
|
218
|
-
* Note: Only accepts objects. Use `Relation.
|
|
216
|
+
* Note: Only accepts objects. Use `Relation.update` for relations.
|
|
219
217
|
*/
|
|
220
|
-
export declare const
|
|
218
|
+
export declare const update: <T extends Unknown>(obj: T, callback: internal.ChangeCallback<T>) => void;
|
|
221
219
|
/**
|
|
222
220
|
* Get a deeply nested property from an object.
|
|
223
221
|
*
|
|
@@ -246,7 +244,7 @@ export declare const getValue: (obj: Unknown | Snapshot, path: readonly (string
|
|
|
246
244
|
* whether to initialize nested data as an empty object or array.
|
|
247
245
|
*
|
|
248
246
|
* Similar to lodash.set and setDeep from @dxos/util, but schema-aware.
|
|
249
|
-
* Must be called within an `Obj.
|
|
247
|
+
* Must be called within an `Obj.update` callback.
|
|
250
248
|
*
|
|
251
249
|
* NOTE: TypeScript's structural typing allows readonly objects to be passed to `Mutable<T>`
|
|
252
250
|
* parameters, so there is no compile-time error. Enforcement is runtime-only.
|
|
@@ -260,8 +258,8 @@ export declare const getValue: (obj: Unknown | Snapshot, path: readonly (string
|
|
|
260
258
|
* ```ts
|
|
261
259
|
* const person = Obj.make(Person, { name: 'John' });
|
|
262
260
|
* // Person schema has: addresses: Schema.Array(Address)
|
|
263
|
-
* Obj.
|
|
264
|
-
* Obj.setValue(
|
|
261
|
+
* Obj.update(person, (obj) => {
|
|
262
|
+
* Obj.setValue(obj, ['addresses', 0, 'street'], '123 Main St');
|
|
265
263
|
* });
|
|
266
264
|
* // Creates: person.addresses = [{ street: '123 Main St' }]
|
|
267
265
|
* ```
|
|
@@ -309,13 +307,14 @@ export declare const getDXN: (entity: Unknown | Snapshot) => DXN;
|
|
|
309
307
|
/**
|
|
310
308
|
* @returns The DXN of the object's type.
|
|
311
309
|
* @example dxn:com.example.type.person:1.0.0
|
|
310
|
+
* @throws If the object is missing its type (corrupted object).
|
|
312
311
|
*/
|
|
313
|
-
export declare const getTypeDXN: (obj:
|
|
312
|
+
export declare const getTypeDXN: (obj: Unknown | Snapshot) => DXN;
|
|
314
313
|
/**
|
|
315
314
|
* Get the schema of the object.
|
|
316
315
|
* Returns the branded ECHO schema used to create the object.
|
|
317
316
|
*/
|
|
318
|
-
export declare const getSchema: (obj:
|
|
317
|
+
export declare const getSchema: (obj: Unknown | Snapshot) => Type.AnyEntity | undefined;
|
|
319
318
|
/**
|
|
320
319
|
* @returns The typename of the object's type.
|
|
321
320
|
* Accepts both reactive objects and snapshots.
|
|
@@ -339,12 +338,12 @@ export declare const Meta: symbol;
|
|
|
339
338
|
*/
|
|
340
339
|
export type ReadonlyMeta = internal.ReadonlyMeta;
|
|
341
340
|
/**
|
|
342
|
-
* Mutable meta type returned by `Obj.getMeta` inside an `Obj.
|
|
341
|
+
* Mutable meta type returned by `Obj.getMeta` inside an `Obj.update` callback.
|
|
343
342
|
*/
|
|
344
343
|
export type Meta = internal.Meta;
|
|
345
344
|
/**
|
|
346
345
|
* Get the metadata for an object.
|
|
347
|
-
* Returns mutable meta when passed a mutable object (inside `Obj.
|
|
346
|
+
* Returns mutable meta when passed a mutable object (inside `Obj.update` callback).
|
|
348
347
|
* Returns read-only meta when passed a regular object or snapshot.
|
|
349
348
|
*
|
|
350
349
|
* @example
|
|
@@ -353,8 +352,8 @@ export type Meta = internal.Meta;
|
|
|
353
352
|
* const meta = Obj.getMeta(person); // ReadonlyMeta
|
|
354
353
|
*
|
|
355
354
|
* // Mutable access inside change callback
|
|
356
|
-
* Obj.
|
|
357
|
-
* const meta = Obj.getMeta(
|
|
355
|
+
* Obj.update(person, (obj) => {
|
|
356
|
+
* const meta = Obj.getMeta(obj); // ObjectMeta (mutable)
|
|
358
357
|
* meta.tags ??= [];
|
|
359
358
|
* meta.tags.push('important');
|
|
360
359
|
* });
|
|
@@ -372,7 +371,7 @@ export declare const getKeys: {
|
|
|
372
371
|
};
|
|
373
372
|
/**
|
|
374
373
|
* Delete all keys from the object for the specified source.
|
|
375
|
-
* Must be called within an `Obj.
|
|
374
|
+
* Must be called within an `Obj.update` callback.
|
|
376
375
|
*
|
|
377
376
|
* NOTE: TypeScript's structural typing allows readonly objects to be passed to `Mutable<T>`
|
|
378
377
|
* parameters, so there is no compile-time error. Enforcement is runtime-only.
|
|
@@ -380,7 +379,7 @@ export declare const getKeys: {
|
|
|
380
379
|
export declare const deleteKeys: (entity: Mutable<Unknown>, source: string) => void;
|
|
381
380
|
/**
|
|
382
381
|
* Add a tag to the object.
|
|
383
|
-
* Must be called within an `Obj.
|
|
382
|
+
* Must be called within an `Obj.update` callback.
|
|
384
383
|
*
|
|
385
384
|
* NOTE: TypeScript's structural typing allows readonly objects to be passed to `Mutable<T>`
|
|
386
385
|
* parameters, so there is no compile-time error. Enforcement is runtime-only.
|
|
@@ -388,7 +387,7 @@ export declare const deleteKeys: (entity: Mutable<Unknown>, source: string) => v
|
|
|
388
387
|
export declare const addTag: (entity: Mutable<Unknown>, tag: string) => void;
|
|
389
388
|
/**
|
|
390
389
|
* Remove a tag from the object.
|
|
391
|
-
* Must be called within an `Obj.
|
|
390
|
+
* Must be called within an `Obj.update` callback.
|
|
392
391
|
*
|
|
393
392
|
* NOTE: TypeScript's structural typing allows readonly objects to be passed to `Mutable<T>`
|
|
394
393
|
* parameters, so there is no compile-time error. Enforcement is runtime-only.
|
|
@@ -406,7 +405,7 @@ export declare const isDeleted: (entity: Unknown | Snapshot) => boolean;
|
|
|
406
405
|
export declare const getLabel: (entity: Unknown | Snapshot) => string | undefined;
|
|
407
406
|
/**
|
|
408
407
|
* Set the label of the object.
|
|
409
|
-
* Must be called within an `Obj.
|
|
408
|
+
* Must be called within an `Obj.update` callback.
|
|
410
409
|
*
|
|
411
410
|
* NOTE: TypeScript's structural typing allows readonly objects to be passed to `Mutable<T>`
|
|
412
411
|
* parameters, so there is no compile-time error. Enforcement is runtime-only.
|
|
@@ -419,7 +418,7 @@ export declare const setLabel: (entity: Mutable<Unknown>, label: string) => void
|
|
|
419
418
|
export declare const getDescription: (entity: Unknown | Snapshot) => string | undefined;
|
|
420
419
|
/**
|
|
421
420
|
* Set the description of the object.
|
|
422
|
-
* Must be called within an `Obj.
|
|
421
|
+
* Must be called within an `Obj.update` callback.
|
|
423
422
|
*
|
|
424
423
|
* NOTE: TypeScript's structural typing allows readonly objects to be passed to `Mutable<T>`
|
|
425
424
|
* parameters, so there is no compile-time error. Enforcement is runtime-only.
|
|
@@ -448,7 +447,21 @@ export declare const getParent: (entity: Unknown | Snapshot) => Unknown | undefi
|
|
|
448
447
|
* If a parent (or any transitive parent) is deleted, the object will be deleted.
|
|
449
448
|
* Only objects are allowed to have a parent.
|
|
450
449
|
*/
|
|
451
|
-
export declare const setParent: (entity: Unknown, parent: Any | undefined) =>
|
|
450
|
+
export declare const setParent: (entity: Unknown, parent: Any | undefined) => Unknown & internal.InternalObjectProps;
|
|
451
|
+
interface UpdateFromOptions<T> {
|
|
452
|
+
exclude?: (keyof T)[];
|
|
453
|
+
include?: (keyof T)[];
|
|
454
|
+
}
|
|
455
|
+
/**
|
|
456
|
+
* For each key present on `source` (except `id`), assigns `target[key]` when the current value differs.
|
|
457
|
+
* References are compared by target DXN; other values use Effect `Equal.equals` inside a structural region,
|
|
458
|
+
* with recursive comparison for arrays and plain object-shaped property bags (excluding `id`).
|
|
459
|
+
*
|
|
460
|
+
* Must be called within an `Obj.update` callback.
|
|
461
|
+
*
|
|
462
|
+
* @returns Whether any property was updated.
|
|
463
|
+
*/
|
|
464
|
+
export declare const updateFrom: <T extends Unknown>(target: Mutable<T>, source: T, options?: UpdateFromOptions<T>) => boolean;
|
|
452
465
|
/**
|
|
453
466
|
* JSON representation of an object.
|
|
454
467
|
*/
|
|
@@ -474,6 +487,7 @@ export declare const fromJSON: (json: unknown, options?: {
|
|
|
474
487
|
refResolver?: Ref.Resolver;
|
|
475
488
|
dxn?: DXN;
|
|
476
489
|
database?: Database.Database;
|
|
490
|
+
parent?: Unknown;
|
|
477
491
|
}) => Promise<Unknown>;
|
|
478
492
|
/**
|
|
479
493
|
* Comparator function type for sorting objects.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Obj.d.ts","sourceRoot":"","sources":["../../../src/Obj.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"Obj.d.ts","sourceRoot":"","sources":["../../../src/Obj.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Order.d.ts","sourceRoot":"","sources":["../../../src/Order.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,WAAW,KAAK,CAAC,CAAC;IAEtB,QAAQ,EAAE;QAAE,KAAK,EAAE,CAAC,CAAA;KAAE,CAAC;IAEvB,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC;CACrB;AAED,MAAM,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;AAc7B,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,GAAG,CAAuC,CAAC;AACvE,eAAO,MAAM,QAAQ,GAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"Order.d.ts","sourceRoot":"","sources":["../../../src/Order.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,WAAW,KAAK,CAAC,CAAC;IAEtB,QAAQ,EAAE;QAAE,KAAK,EAAE,CAAC,CAAA;KAAE,CAAC;IAEvB,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC;CACrB;AAED,MAAM,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;AAc7B,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,GAAG,CAAuC,CAAC;AACvE,eAAO,MAAM,QAAQ,GAAI,CAAC,YAAY,MAAM,CAAC,GAAG,MAAM,aAAa,QAAQ,CAAC,cAAc,KAAG,KAAK,CAAC,CAAC,CAKhG,CAAC;AAEL;;;GAGG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,cAAa,QAAQ,CAAC,cAAc,KAAY,KAAK,CAAC,CAAC,CAIzE,CAAC"}
|
|
@@ -154,6 +154,10 @@ export interface Query<T> {
|
|
|
154
154
|
* Add options to a query.
|
|
155
155
|
*/
|
|
156
156
|
'options'(options: QueryAST.QueryOptions): Query<T>;
|
|
157
|
+
/**
|
|
158
|
+
* Attach a diagnostic label for logs and tooling (execution semantics unchanged).
|
|
159
|
+
*/
|
|
160
|
+
'debugLabel'(label: string): Query<T>;
|
|
157
161
|
}
|
|
158
162
|
export type Any = Query<any>;
|
|
159
163
|
export type Type<Q extends Any> = Q extends Query<infer T> ? T : never;
|
|
@@ -174,7 +178,10 @@ export declare const select: <F extends Filter.Any>(filter: F) => Query<Filter.T
|
|
|
174
178
|
*
|
|
175
179
|
* Shorthand for: `Query.select(Filter.type(schema, predicates))`.
|
|
176
180
|
*/
|
|
177
|
-
export declare const type:
|
|
181
|
+
export declare const type: {
|
|
182
|
+
<S extends Schema.Schema.All>(schema: S, predicates?: Filter.Props<Schema.Schema.Type<S>>): Query<Schema.Schema.Type<S>>;
|
|
183
|
+
(schema: string, predicates?: Filter.Props<unknown>): Query<any>;
|
|
184
|
+
};
|
|
178
185
|
/**
|
|
179
186
|
* Combine results of multiple queries.
|
|
180
187
|
* @param queries - Queries to combine.
|
|
@@ -195,8 +202,12 @@ export declare const without: <T>(source: Query<T>, exclude: Query<T>) => Query<
|
|
|
195
202
|
* @param source - Data source: database, feed, 'all-accessible-spaces', or another query.
|
|
196
203
|
* @returns Query scoped to the given source.
|
|
197
204
|
*/
|
|
198
|
-
export declare const from: (source: Database.Database | Database.Database[] | Feed.Feed | Feed.Feed[] | Any | QueryAST.Scope |
|
|
205
|
+
export declare const from: (source: Database.Database | Database.Database[] | Feed.Feed | Feed.Feed[] | Any | QueryAST.Scope | 'all-accessible-spaces', options?: {
|
|
199
206
|
includeFeeds?: boolean;
|
|
200
207
|
}) => Any;
|
|
208
|
+
/**
|
|
209
|
+
* Returns a human-readable string representation of a Query AST.
|
|
210
|
+
*/
|
|
211
|
+
export declare const pretty: (query: Any) => string;
|
|
201
212
|
export {};
|
|
202
213
|
//# sourceMappingURL=Query.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Query.d.ts","sourceRoot":"","sources":["../../../src/Query.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Query.d.ts","sourceRoot":"","sources":["../../../src/Query.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,KAAK,WAAW,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAE7C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAGpD,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,KAAK,OAAO,MAAM,WAAW,CAAC;AAC1C,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AAGnC,OAAO,KAAK,KAAK,KAAK,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,KAAK,GAAG,MAAM,OAAO,CAAC;AAClC,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAO5C;;GAEG;AAEH,KAAK,UAAU,CAAC,CAAC,IAAI,MAAM,CAAC,GAAG,MAAM,CAAC;AAGtC,MAAM,WAAW,KAAK,CAAC,CAAC;IAEtB,QAAQ,EAAE;QAAE,KAAK,EAAE,CAAC,CAAA;KAAE,CAAC;IAEvB,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC;IAEpB;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAC7C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAE3C;;;;OAIG;IACH,WAAW,CAAC,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,EACjC,GAAG,EAAE,CAAC,GACL,KAAK,CACN,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,OAAO,GACpB,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAChB,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,OAAO,GAAG,SAAS,GAClC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,GACpC,KAAK,CACZ,CAAC;IAEF;;;;;OAKG;IAGH,cAAc,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EACxC,MAAM,EAAE,CAAC,GAAG,MAAM,EAClB,GAAG,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GACrC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAChC,cAAc,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9F,cAAc,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IAE7B;;;;;OAKG;IACH,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EACpC,QAAQ,CAAC,EAAE,CAAC,GAAG,MAAM,EACrB,UAAU,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAC/C,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAEhC;;;;;OAKG;IACH,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EACpC,QAAQ,CAAC,EAAE,CAAC,GAAG,MAAM,EACrB,UAAU,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAC/C,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAEhC;;;OAGG;IACH,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAExC;;;OAGG;IACH,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAExC;;;OAGG;IACH,QAAQ,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IAEvB;;;OAGG;IACH,UAAU,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IAEzB;;;;;OAKG;IACH,SAAS,CAAC,GAAG,KAAK,EAAE,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAEzE;;;;OAIG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAEjC;;;;;;;;;;OAUG;IACH,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAE1G;;;;;;;;;OASG;IACH,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAEjD;;;;;;;;;;OAUG;IACH,MAAM,CAAC,SAAS,EAAE,uBAAuB,EAAE,OAAO,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAE3F;;;;;;;;;OASG;IACH,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAE3C;;;;;;;;OAQG;IACH,MAAM,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAE7B;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAExC;;OAEG;IACH,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAEpD;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;CACvC;AAED,MAAM,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;AAE7B,MAAM,MAAM,IAAI,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAgPvE,eAAO,MAAM,EAAE,UAAW,OAAO,KAAG,KAAK,IAAI,GAE5C,CAAC;AAEF,qCAAqC;AACrC,eAAO,MAAM,OAAO,QAAS,QAAQ,CAAC,KAAK,KAAG,GAE7C,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,SAAS,MAAM,CAAC,GAAG,UAAU,CAAC,KAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAK5E,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,IAAI,EAAE;IACjB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAC1B,MAAM,EAAE,CAAC,EACT,UAAU,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAC/C,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;CAMlE,CAAC;AAEF;;;;GAIG;AAEH,eAAO,MAAM,GAAG,eAAgB,GAAG,EAAE,KAAG,GAUvC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,OAAO,GAAI,CAAC,UAAU,KAAK,CAAC,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,CAAC,KAAG,KAAK,CAAC,CAAC,CAMvE,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,IAAI,WAEX,QAAQ,CAAC,QAAQ,GACjB,QAAQ,CAAC,QAAQ,EAAE,GACnB,IAAI,CAAC,IAAI,GACT,IAAI,CAAC,IAAI,EAAE,GACX,GAAG,GACH,QAAQ,CAAC,KAAK,GACd,uBAAuB,YACjB;IAAE,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,KACnC,GAOF,CAAC;AAYF;;GAEG;AACH,eAAO,MAAM,MAAM,UAAW,GAAG,KAAG,MAAyC,CAAC"}
|
package/dist/types/src/Ref.d.ts
CHANGED
|
@@ -67,5 +67,6 @@ export type Resolver = refInternal.RefResolver;
|
|
|
67
67
|
export declare const isRef: (value: unknown) => value is Unknown;
|
|
68
68
|
export declare const make: <T extends import("./internal").AnyEntity>(object: T) => refInternal.Ref<T>;
|
|
69
69
|
export declare const fromDXN: (dxn: import("@dxos/keys").DXN) => refInternal.Ref<any>;
|
|
70
|
+
export declare const hasObjectId: (id: import("@dxos/keys").ObjectId) => (ref: refInternal.Ref<any>) => boolean;
|
|
70
71
|
export declare const isRefType: (ast: SchemaAST.AST) => boolean;
|
|
71
72
|
//# sourceMappingURL=Ref.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Ref.d.ts","sourceRoot":"","sources":["../../../src/Ref.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAC;AAE9C,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAE9C,OAAO,KAAK,KAAK,GAAG,MAAM,OAAO,CAAC;AAElC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACxC,MAAM,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAEnD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,GAAG,EAAE,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,KAAK,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAmB,CAAC;AAEjH,eAAO,MAAM,KAAK;;;;EAAuB,CAAC;AAE1C;;;;;;;;;;;;;GAaG;AAIH,MAAM,WAAW,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,OAAO,CAAE,SAAQ,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC;CAAG;AAExF;;GAEG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,OAAO,IAAI,CAAC,SAAS,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAEvF;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,WAAW,CAAC,WAAW,CAAC;AAE/C,eAAO,MAAM,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,KAAK,IAAI,OAA+B,CAAC;AAEjF,eAAO,MAAM,IAAI,6EAAuB,CAAC;AAGzC,eAAO,MAAM,OAAO,yDAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"Ref.d.ts","sourceRoot":"","sources":["../../../src/Ref.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,SAAS,MAAM,kBAAkB,CAAC;AAE9C,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAE9C,OAAO,KAAK,KAAK,GAAG,MAAM,OAAO,CAAC;AAElC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACxC,MAAM,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAEnD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,GAAG,EAAE,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,KAAK,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAmB,CAAC;AAEjH,eAAO,MAAM,KAAK;;;;EAAuB,CAAC;AAE1C;;;;;;;;;;;;;GAaG;AAIH,MAAM,WAAW,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,OAAO,CAAE,SAAQ,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC;CAAG;AAExF;;GAEG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,OAAO,IAAI,CAAC,SAAS,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAEvF;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,WAAW,CAAC,WAAW,CAAC;AAE/C,eAAO,MAAM,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,KAAK,IAAI,OAA+B,CAAC;AAEjF,eAAO,MAAM,IAAI,6EAAuB,CAAC;AAGzC,eAAO,MAAM,OAAO,yDAA0B,CAAC;AAE/C,eAAO,MAAM,WAAW,+EAA8B,CAAC;AAGvD,eAAO,MAAM,SAAS,QAAS,SAAS,CAAC,GAAG,KAAG,OAS9C,CAAC"}
|
|
@@ -3,7 +3,6 @@ import type { ForeignKey } from '@dxos/echo-protocol';
|
|
|
3
3
|
import { DXN, type ObjectId } from '@dxos/keys';
|
|
4
4
|
import type * as Database from './Database';
|
|
5
5
|
import * as Entity from './Entity';
|
|
6
|
-
import * as entityInternal from './internal/Entity';
|
|
7
6
|
import * as internal from './internal';
|
|
8
7
|
import * as Obj from './Obj';
|
|
9
8
|
import type * as Type from './Type';
|
|
@@ -135,17 +134,17 @@ export declare const getSource: <T extends Unknown | Snapshot>(relation: T) => S
|
|
|
135
134
|
export declare const getTarget: <T extends Unknown | Snapshot>(relation: T) => TargetOf<T>;
|
|
136
135
|
/**
|
|
137
136
|
* Makes all properties mutable recursively.
|
|
138
|
-
* Used to provide a mutable view of a relation within `Relation.
|
|
137
|
+
* Used to provide a mutable view of a relation within `Relation.update`.
|
|
139
138
|
*/
|
|
140
139
|
export type Mutable<T> = internal.Mutable<T>;
|
|
141
140
|
/**
|
|
142
141
|
* Perform mutations on an echo relation within a controlled context.
|
|
143
142
|
*
|
|
144
143
|
* All mutations within the callback are batched and trigger a single notification
|
|
145
|
-
* when the callback completes. Direct mutations outside of `Relation.
|
|
144
|
+
* when the callback completes. Direct mutations outside of `Relation.update` will throw
|
|
146
145
|
* an error for echo relations.
|
|
147
146
|
*
|
|
148
|
-
* @param relation - The echo relation to mutate. Use `Obj.
|
|
147
|
+
* @param relation - The echo relation to mutate. Use `Obj.update` for objects.
|
|
149
148
|
* @param callback - The callback that performs mutations on the relation.
|
|
150
149
|
*
|
|
151
150
|
* @example
|
|
@@ -156,15 +155,15 @@ export type Mutable<T> = internal.Mutable<T>;
|
|
|
156
155
|
* role: 'Engineer',
|
|
157
156
|
* });
|
|
158
157
|
*
|
|
159
|
-
* // Mutate within Relation.
|
|
160
|
-
* Relation.
|
|
161
|
-
*
|
|
158
|
+
* // Mutate within Relation.update
|
|
159
|
+
* Relation.update(worksFor, (obj) => {
|
|
160
|
+
* obj.role = 'Senior Engineer';
|
|
162
161
|
* });
|
|
163
162
|
* ```
|
|
164
163
|
*
|
|
165
|
-
* Note: Only accepts relations. Use `Obj.
|
|
164
|
+
* Note: Only accepts relations. Use `Obj.update` for objects.
|
|
166
165
|
*/
|
|
167
|
-
export declare const
|
|
166
|
+
export declare const update: <T extends Unknown>(relation: T, callback: internal.ChangeCallback<T>) => void;
|
|
168
167
|
/**
|
|
169
168
|
* Returns an immutable snapshot of a relation.
|
|
170
169
|
* The snapshot is branded with SnapshotKindId instead of KindId,
|
|
@@ -185,7 +184,7 @@ export declare const subscribe: (rel: Unknown, callback: () => void) => (() => v
|
|
|
185
184
|
export declare const getValue: (rel: Unknown | Snapshot, path: readonly (string | number)[]) => any;
|
|
186
185
|
/**
|
|
187
186
|
* Set a deeply nested property on a relation.
|
|
188
|
-
* Must be called within a `Relation.
|
|
187
|
+
* Must be called within a `Relation.update` callback.
|
|
189
188
|
*
|
|
190
189
|
* NOTE: TypeScript's structural typing allows readonly objects to be passed to `Mutable<T>`
|
|
191
190
|
* parameters, so there is no compile-time error. Enforcement is runtime-only.
|
|
@@ -226,12 +225,12 @@ export declare const Meta: symbol;
|
|
|
226
225
|
*/
|
|
227
226
|
export type ReadonlyMeta = internal.ReadonlyMeta;
|
|
228
227
|
/**
|
|
229
|
-
* Mutable meta type returned by `Relation.getMeta` inside a `Relation.
|
|
228
|
+
* Mutable meta type returned by `Relation.getMeta` inside a `Relation.update` callback.
|
|
230
229
|
*/
|
|
231
230
|
export type Meta = internal.Meta;
|
|
232
231
|
/**
|
|
233
232
|
* Get the metadata for a relation.
|
|
234
|
-
* Returns mutable meta when passed a mutable relation (inside `Relation.
|
|
233
|
+
* Returns mutable meta when passed a mutable relation (inside `Relation.update` callback).
|
|
235
234
|
* Returns read-only meta when passed a regular relation or snapshot.
|
|
236
235
|
*/
|
|
237
236
|
export declare function getMeta(entity: Mutable<Unknown>): Meta;
|
|
@@ -243,7 +242,7 @@ export declare function getMeta(entity: Unknown | Snapshot): ReadonlyMeta;
|
|
|
243
242
|
export declare const getKeys: (entity: Unknown | Snapshot, source: string) => ForeignKey[];
|
|
244
243
|
/**
|
|
245
244
|
* Delete all keys from the relation for the specified source.
|
|
246
|
-
* Must be called within a `Relation.
|
|
245
|
+
* Must be called within a `Relation.update` callback.
|
|
247
246
|
*
|
|
248
247
|
* NOTE: TypeScript's structural typing allows readonly objects to be passed to `Mutable<T>`
|
|
249
248
|
* parameters, so there is no compile-time error. Enforcement is runtime-only.
|
|
@@ -251,7 +250,7 @@ export declare const getKeys: (entity: Unknown | Snapshot, source: string) => Fo
|
|
|
251
250
|
export declare const deleteKeys: (entity: Mutable<Unknown>, source: string) => void;
|
|
252
251
|
/**
|
|
253
252
|
* Add a tag to the relation.
|
|
254
|
-
* Must be called within a `Relation.
|
|
253
|
+
* Must be called within a `Relation.update` callback.
|
|
255
254
|
*
|
|
256
255
|
* NOTE: TypeScript's structural typing allows readonly objects to be passed to `Mutable<T>`
|
|
257
256
|
* parameters, so there is no compile-time error. Enforcement is runtime-only.
|
|
@@ -259,7 +258,7 @@ export declare const deleteKeys: (entity: Mutable<Unknown>, source: string) => v
|
|
|
259
258
|
export declare const addTag: (entity: Mutable<Unknown>, tag: string) => void;
|
|
260
259
|
/**
|
|
261
260
|
* Remove a tag from the relation.
|
|
262
|
-
* Must be called within a `Relation.
|
|
261
|
+
* Must be called within a `Relation.update` callback.
|
|
263
262
|
*
|
|
264
263
|
* NOTE: TypeScript's structural typing allows readonly objects to be passed to `Mutable<T>`
|
|
265
264
|
* parameters, so there is no compile-time error. Enforcement is runtime-only.
|
|
@@ -277,7 +276,7 @@ export declare const isDeleted: (entity: Unknown | Snapshot) => boolean;
|
|
|
277
276
|
export declare const getLabel: (entity: Unknown | Snapshot) => string | undefined;
|
|
278
277
|
/**
|
|
279
278
|
* Set the label of the relation.
|
|
280
|
-
* Must be called within a `Relation.
|
|
279
|
+
* Must be called within a `Relation.update` callback.
|
|
281
280
|
*
|
|
282
281
|
* NOTE: TypeScript's structural typing allows readonly objects to be passed to `Mutable<T>`
|
|
283
282
|
* parameters, so there is no compile-time error. Enforcement is runtime-only.
|
|
@@ -290,7 +289,7 @@ export declare const setLabel: (entity: Mutable<Unknown>, label: string) => void
|
|
|
290
289
|
export declare const getDescription: (entity: Unknown | Snapshot) => string | undefined;
|
|
291
290
|
/**
|
|
292
291
|
* Set the description of the relation.
|
|
293
|
-
* Must be called within a `Relation.
|
|
292
|
+
* Must be called within a `Relation.update` callback.
|
|
294
293
|
*
|
|
295
294
|
* NOTE: TypeScript's structural typing allows readonly objects to be passed to `Mutable<T>`
|
|
296
295
|
* parameters, so there is no compile-time error. Enforcement is runtime-only.
|
|
@@ -314,7 +313,7 @@ export declare const sortByLabel: Comparator;
|
|
|
314
313
|
export declare const sortByTypename: Comparator;
|
|
315
314
|
export declare const sort: (...comparators: Comparator[]) => Comparator;
|
|
316
315
|
export declare const VersionTypeId: "~@dxos/echo/VersionTypeId";
|
|
317
|
-
export declare const isVersion: (entity: unknown) => entity is
|
|
316
|
+
export declare const isVersion: (entity: unknown) => entity is internal.EntityVersion;
|
|
318
317
|
/**
|
|
319
318
|
* Represent relation version.
|
|
320
319
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Relation.d.ts","sourceRoot":"","sources":["../../../src/Relation.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGtD,OAAO,EAAE,GAAG,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGhD,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"Relation.d.ts","sourceRoot":"","sources":["../../../src/Relation.ts"],"names":[],"mappings":"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"}
|
package/dist/types/src/Tag.d.ts
CHANGED
|
@@ -3,13 +3,13 @@ import * as internal from './internal';
|
|
|
3
3
|
import * as Obj from './Obj';
|
|
4
4
|
import * as Type from './Type';
|
|
5
5
|
export declare const Tag: Type.Obj<{
|
|
6
|
-
readonly hue?: string | undefined;
|
|
7
6
|
readonly label: string;
|
|
7
|
+
readonly hue?: string | undefined;
|
|
8
8
|
}, Schema.Struct.Fields>;
|
|
9
9
|
export type Tag = Schema.Schema.Type<typeof Tag>;
|
|
10
10
|
export declare const make: (props: Obj.MakeProps<typeof Tag>) => Obj.OfShape<import("./Entity").OfKind<internal.EntityKind.Object> & {
|
|
11
|
-
readonly hue?: string | undefined;
|
|
12
11
|
readonly label: string;
|
|
12
|
+
readonly hue?: string | undefined;
|
|
13
13
|
}>;
|
|
14
14
|
export type Map = Record<string, Tag>;
|
|
15
15
|
export declare const sortTags: ({ label: a }: Tag, { label: b }: Tag) => number;
|