@dxos/echo 0.8.4-main.d05673bc65 → 0.8.4-main.dfabb4ec29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- 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 +21 -17
- package/dist/lib/neutral/Filter.mjs +21 -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 -16
- package/dist/lib/neutral/QueryResult.mjs +1 -1
- package/dist/lib/neutral/Ref.mjs +7 -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-OENWMTE6.mjs → chunk-5SL5LDLD.mjs} +4 -2
- package/dist/lib/neutral/chunk-5SL5LDLD.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-YWXWXIE5.mjs → chunk-6VIJV543.mjs} +2 -2
- package/dist/lib/neutral/{chunk-YWXWXIE5.mjs.map → chunk-6VIJV543.mjs.map} +2 -2
- package/dist/lib/neutral/{chunk-ANHVGJI4.mjs → chunk-7RVZT53K.mjs} +1 -1
- package/dist/lib/neutral/{chunk-BNCCGLJN.mjs → chunk-BICZKPQG.mjs} +1 -1
- package/dist/lib/neutral/{chunk-NEGC54NE.mjs → chunk-FHYIM4RD.mjs} +17 -19
- package/dist/lib/neutral/chunk-FHYIM4RD.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-RMLF7JOZ.mjs → chunk-FZHVQEHN.mjs} +6 -22
- package/dist/lib/neutral/{chunk-RMLF7JOZ.mjs.map → chunk-FZHVQEHN.mjs.map} +3 -3
- package/dist/lib/neutral/chunk-GWFFC34K.mjs +50 -0
- package/dist/lib/neutral/chunk-GWFFC34K.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-724GQYEN.mjs → chunk-HPNQTEEQ.mjs} +4 -4
- package/dist/lib/neutral/{chunk-UFDK26FO.mjs → chunk-LVGOVFDV.mjs} +12 -8
- package/dist/lib/neutral/chunk-LVGOVFDV.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-43Y5DOS6.mjs → chunk-MPAI2MHO.mjs} +16 -66
- package/dist/lib/neutral/chunk-MPAI2MHO.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-BOZZPUXE.mjs → chunk-O5LRY6CO.mjs} +12 -65
- package/dist/lib/neutral/chunk-O5LRY6CO.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-UTBRYVQC.mjs → chunk-QGMIH2SN.mjs} +2 -2
- package/dist/lib/neutral/{chunk-VA2F47ZC.mjs → chunk-QXIANHKU.mjs} +68 -14
- package/dist/lib/neutral/chunk-QXIANHKU.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-NXMFBIT5.mjs → chunk-RF7ZBZ4A.mjs} +59 -4
- package/dist/lib/neutral/chunk-RF7ZBZ4A.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-DYDJBZEG.mjs → chunk-S7IMFVTB.mjs} +51 -21
- package/dist/lib/neutral/chunk-S7IMFVTB.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-TQQZLKB7.mjs → chunk-SJKBWMJY.mjs} +193 -469
- package/dist/lib/neutral/chunk-SJKBWMJY.mjs.map +7 -0
- package/dist/lib/neutral/chunk-SUZMWP3Y.mjs +36 -0
- package/dist/lib/neutral/chunk-SUZMWP3Y.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-NQRLRYJM.mjs → chunk-SW5CUSBY.mjs} +119 -12
- package/dist/lib/neutral/chunk-SW5CUSBY.mjs.map +7 -0
- 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-KTAWP7GI.mjs → chunk-VGKLHHRT.mjs} +42 -7
- package/dist/lib/neutral/chunk-VGKLHHRT.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-FXEG7EOK.mjs → chunk-VYAGNFSJ.mjs} +3 -3
- package/dist/lib/neutral/{chunk-CIRHIEMW.mjs → chunk-WRVRDZDA.mjs} +18 -46
- package/dist/lib/neutral/chunk-WRVRDZDA.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 +13 -1
- 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 +37 -20
- package/dist/types/src/Feed.d.ts.map +1 -1
- package/dist/types/src/Filter.d.ts +33 -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/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 +57 -0
- package/dist/types/src/Migration.d.ts.map +1 -0
- package/dist/types/src/Obj.d.ts +41 -27
- 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.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/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.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.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 +24 -14
- package/src/Annotation.ts +1 -0
- package/src/Collection.ts +5 -0
- package/src/Database.ts +49 -14
- package/src/Entity.ts +18 -12
- package/src/Extension.test.ts +235 -0
- package/src/Extension.ts +122 -0
- package/src/Feed.ts +79 -32
- package/src/Filter.test.ts +90 -0
- package/src/Filter.ts +66 -3
- package/src/Json.test.ts +175 -0
- package/src/Json.ts +102 -0
- package/src/Migration.ts +94 -0
- package/src/Obj.test.ts +105 -13
- package/src/Obj.ts +153 -33
- package/src/Query.test.ts +198 -8
- package/src/Query.ts +46 -1
- package/src/Relation.ts +24 -20
- package/src/Type.ts +1 -1
- package/src/View.ts +5 -0
- 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/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/json-serializer.test.ts +4 -5
- package/src/internal/Obj/json-serializer.ts +22 -15
- package/src/internal/Obj/set-value.test.ts +24 -24
- package/src/internal/Obj/set-value.ts +1 -1
- package/src/internal/Query.ts +137 -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/Type/persistent-schema.ts +2 -2
- 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/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 +0 -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-BOZZPUXE.mjs.map +0 -7
- package/dist/lib/neutral/chunk-CIRHIEMW.mjs.map +0 -7
- package/dist/lib/neutral/chunk-DYDJBZEG.mjs.map +0 -7
- package/dist/lib/neutral/chunk-KTAWP7GI.mjs.map +0 -7
- package/dist/lib/neutral/chunk-NEGC54NE.mjs.map +0 -7
- package/dist/lib/neutral/chunk-NQRLRYJM.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-SEMVAGBM.mjs.map +0 -7
- package/dist/lib/neutral/chunk-TQQZLKB7.mjs.map +0 -7
- package/dist/lib/neutral/chunk-UFDK26FO.mjs.map +0 -7
- package/dist/lib/neutral/chunk-VA2F47ZC.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-724GQYEN.mjs.map → chunk-HPNQTEEQ.mjs.map} +0 -0
- /package/dist/lib/neutral/{chunk-UTBRYVQC.mjs.map → chunk-QGMIH2SN.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
- /package/dist/lib/neutral/{chunk-FXEG7EOK.mjs.map → chunk-VYAGNFSJ.mjs.map} +0 -0
|
@@ -3,12 +3,12 @@ import {
|
|
|
3
3
|
JsonSchemaType,
|
|
4
4
|
toEffectSchema,
|
|
5
5
|
toJsonSchema
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-O5LRY6CO.mjs";
|
|
7
7
|
import {
|
|
8
8
|
Ref,
|
|
9
9
|
refFromEncodedReference,
|
|
10
10
|
setRefResolver
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-MPAI2MHO.mjs";
|
|
12
12
|
import {
|
|
13
13
|
ATTR_PARENT,
|
|
14
14
|
ATTR_TYPE,
|
|
@@ -33,14 +33,14 @@ import {
|
|
|
33
33
|
getTypename,
|
|
34
34
|
setSchema,
|
|
35
35
|
setTypename
|
|
36
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-TNBK56IN.mjs";
|
|
37
37
|
import {
|
|
38
38
|
EntityKind,
|
|
39
39
|
KindId,
|
|
40
40
|
SchemaKindId,
|
|
41
41
|
SnapshotKindId,
|
|
42
42
|
makeTypeJsonSchemaAnnotation
|
|
43
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-N4B7FHQT.mjs";
|
|
44
44
|
|
|
45
45
|
// src/internal/index.ts
|
|
46
46
|
import { JsonPath, JsonProp, getValue, splitJsonPath } from "@dxos/effect";
|
|
@@ -76,15 +76,7 @@ var ObjectMetaSchema = Schema2.Struct({
|
|
|
76
76
|
});
|
|
77
77
|
var getMeta = (obj) => {
|
|
78
78
|
const metadata = obj[MetaId];
|
|
79
|
-
invariant(metadata, "ObjectMeta not found.", {
|
|
80
|
-
F: __dxlog_file,
|
|
81
|
-
L: 55,
|
|
82
|
-
S: void 0,
|
|
83
|
-
A: [
|
|
84
|
-
"metadata",
|
|
85
|
-
"'ObjectMeta not found.'"
|
|
86
|
-
]
|
|
87
|
-
});
|
|
79
|
+
invariant(metadata, "ObjectMeta not found.", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 37, S: void 0, A: ["metadata", "'ObjectMeta not found.'"] });
|
|
88
80
|
return metadata;
|
|
89
81
|
};
|
|
90
82
|
var foreignKey = (source, id) => ({
|
|
@@ -141,29 +133,13 @@ var __dxlog_file2 = "/__w/dxos/dxos/packages/core/echo/echo/src/internal/common/
|
|
|
141
133
|
function getMetaChecked(entity) {
|
|
142
134
|
assertArgument(entity, "entity", "Should be an entity.");
|
|
143
135
|
const meta = getMeta(entity);
|
|
144
|
-
invariant2(meta != null, "Invalid entity.", {
|
|
145
|
-
F: __dxlog_file2,
|
|
146
|
-
L: 34,
|
|
147
|
-
S: this,
|
|
148
|
-
A: [
|
|
149
|
-
"meta != null",
|
|
150
|
-
"'Invalid entity.'"
|
|
151
|
-
]
|
|
152
|
-
});
|
|
136
|
+
invariant2(meta != null, "Invalid entity.", { "~LogMeta": "~LogMeta", F: __dxlog_file2, L: 9, S: this, A: ["meta != null", "'Invalid entity.'"] });
|
|
153
137
|
return meta;
|
|
154
138
|
}
|
|
155
139
|
var getKeys = (entity, source) => {
|
|
156
140
|
assertArgument(entity, "entity", "Should be an entity.");
|
|
157
141
|
const meta = getMetaChecked(entity);
|
|
158
|
-
invariant2(meta != null, "Invalid entity.", {
|
|
159
|
-
F: __dxlog_file2,
|
|
160
|
-
L: 45,
|
|
161
|
-
S: void 0,
|
|
162
|
-
A: [
|
|
163
|
-
"meta != null",
|
|
164
|
-
"'Invalid entity.'"
|
|
165
|
-
]
|
|
166
|
-
});
|
|
142
|
+
invariant2(meta != null, "Invalid entity.", { "~LogMeta": "~LogMeta", F: __dxlog_file2, L: 18, S: void 0, A: ["meta != null", "'Invalid entity.'"] });
|
|
167
143
|
return meta.keys.filter((key) => key.source === source);
|
|
168
144
|
};
|
|
169
145
|
var deleteKeys = (entity, source) => {
|
|
@@ -282,7 +258,7 @@ var defineHiddenProperty = (object, key, value2) => {
|
|
|
282
258
|
// src/internal/common/proxy/errors.ts
|
|
283
259
|
var MutationOutsideChangeContextError = class extends Error {
|
|
284
260
|
constructor(operation, suggestion) {
|
|
285
|
-
super(`Cannot ${operation} outside of Obj.
|
|
261
|
+
super(`Cannot ${operation} outside of Obj.update(). Use Obj.update(obj, (mutableObj) => { ${suggestion} }) instead.`);
|
|
286
262
|
this.name = "MutationOutsideChangeContextError";
|
|
287
263
|
}
|
|
288
264
|
};
|
|
@@ -330,28 +306,12 @@ var typedJsonSerializer = function() {
|
|
|
330
306
|
}
|
|
331
307
|
if (this[RelationSourceDXNId]) {
|
|
332
308
|
const sourceDXN = this[RelationSourceDXNId];
|
|
333
|
-
invariant3(sourceDXN instanceof DXN, void 0, {
|
|
334
|
-
F: __dxlog_file3,
|
|
335
|
-
L: 64,
|
|
336
|
-
S: this,
|
|
337
|
-
A: [
|
|
338
|
-
"sourceDXN instanceof DXN",
|
|
339
|
-
""
|
|
340
|
-
]
|
|
341
|
-
});
|
|
309
|
+
invariant3(sourceDXN instanceof DXN, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file3, L: 42, S: this, A: ["sourceDXN instanceof DXN", ""] });
|
|
342
310
|
result[ATTR_RELATION_SOURCE] = sourceDXN.toString();
|
|
343
311
|
}
|
|
344
312
|
if (this[RelationTargetDXNId]) {
|
|
345
313
|
const targetDXN = this[RelationTargetDXNId];
|
|
346
|
-
invariant3(targetDXN instanceof DXN, void 0, {
|
|
347
|
-
F: __dxlog_file3,
|
|
348
|
-
L: 69,
|
|
349
|
-
S: this,
|
|
350
|
-
A: [
|
|
351
|
-
"targetDXN instanceof DXN",
|
|
352
|
-
""
|
|
353
|
-
]
|
|
354
|
-
});
|
|
314
|
+
invariant3(targetDXN instanceof DXN, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file3, L: 47, S: this, A: ["targetDXN instanceof DXN", ""] });
|
|
355
315
|
result[ATTR_RELATION_TARGET] = targetDXN.toString();
|
|
356
316
|
}
|
|
357
317
|
Object.assign(result, serializeData(rest));
|
|
@@ -388,15 +348,7 @@ var isValidProxyTarget = (value2) => {
|
|
|
388
348
|
};
|
|
389
349
|
var getProxySlot = (proxy) => {
|
|
390
350
|
const value2 = proxy[symbolIsProxy];
|
|
391
|
-
invariant4(value2 instanceof ProxyHandlerSlot, void 0, {
|
|
392
|
-
F: __dxlog_file4,
|
|
393
|
-
L: 32,
|
|
394
|
-
S: void 0,
|
|
395
|
-
A: [
|
|
396
|
-
"value instanceof ProxyHandlerSlot",
|
|
397
|
-
""
|
|
398
|
-
]
|
|
399
|
-
});
|
|
351
|
+
invariant4(value2 instanceof ProxyHandlerSlot, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file4, L: 22, S: void 0, A: ["value instanceof ProxyHandlerSlot", ""] });
|
|
400
352
|
return value2;
|
|
401
353
|
};
|
|
402
354
|
var getProxyTarget = (proxy) => {
|
|
@@ -430,15 +382,7 @@ var ProxyHandlerSlot = class {
|
|
|
430
382
|
this._handler = _handler;
|
|
431
383
|
}
|
|
432
384
|
get handler() {
|
|
433
|
-
invariant4(this._handler, void 0, {
|
|
434
|
-
F: __dxlog_file4,
|
|
435
|
-
L: 91,
|
|
436
|
-
S: this,
|
|
437
|
-
A: [
|
|
438
|
-
"this._handler",
|
|
439
|
-
""
|
|
440
|
-
]
|
|
441
|
-
});
|
|
385
|
+
invariant4(this._handler, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file4, L: 71, S: this, A: ["this._handler", ""] });
|
|
442
386
|
return this._handler;
|
|
443
387
|
}
|
|
444
388
|
// TODO(burdon): Requires comment.
|
|
@@ -528,15 +472,7 @@ var setOwnerRecursive = (value2, owner, options = {}) => {
|
|
|
528
472
|
}
|
|
529
473
|
if (!isRootEchoObject) {
|
|
530
474
|
const ownershipAllowed = existingOwner == null || existingOwner === owner || existingOwner === newAllowedPreviousOwner;
|
|
531
|
-
invariant5(ownershipAllowed, "Cannot reassign ownership of a nested record to a different ECHO object. Use deep copy first.", {
|
|
532
|
-
F: __dxlog_file5,
|
|
533
|
-
L: 102,
|
|
534
|
-
S: void 0,
|
|
535
|
-
A: [
|
|
536
|
-
"ownershipAllowed",
|
|
537
|
-
"'Cannot reassign ownership of a nested record to a different ECHO object. Use deep copy first.'"
|
|
538
|
-
]
|
|
539
|
-
});
|
|
475
|
+
invariant5(ownershipAllowed, "Cannot reassign ownership of a nested record to a different ECHO object. Use deep copy first.", { "~LogMeta": "~LogMeta", F: __dxlog_file5, L: 76, S: void 0, A: ["ownershipAllowed", "'Cannot reassign ownership of a nested record to a different ECHO object. Use deep copy first.'"] });
|
|
540
476
|
}
|
|
541
477
|
defineHiddenProperty(actualValue, EchoOwner, owner);
|
|
542
478
|
const recursiveOptions = {
|
|
@@ -603,15 +539,7 @@ var hasForeignOwner = (value2, target) => traverseObjectGraph(value2, (v) => {
|
|
|
603
539
|
});
|
|
604
540
|
var MAX_OWNER_DEPTH = 100;
|
|
605
541
|
var getEchoRoot = (target, depth = 0) => {
|
|
606
|
-
invariant5(depth < MAX_OWNER_DEPTH, "Owner chain too deep - possible circular ownership", {
|
|
607
|
-
F: __dxlog_file5,
|
|
608
|
-
L: 221,
|
|
609
|
-
S: void 0,
|
|
610
|
-
A: [
|
|
611
|
-
"depth < MAX_OWNER_DEPTH",
|
|
612
|
-
"'Owner chain too deep - possible circular ownership'"
|
|
613
|
-
]
|
|
614
|
-
});
|
|
542
|
+
invariant5(depth < MAX_OWNER_DEPTH, "Owner chain too deep - possible circular ownership", { "~LogMeta": "~LogMeta", F: __dxlog_file5, L: 169, S: void 0, A: ["depth < MAX_OWNER_DEPTH", "'Owner chain too deep - possible circular ownership'"] });
|
|
615
543
|
if (KindId in target) {
|
|
616
544
|
return target;
|
|
617
545
|
}
|
|
@@ -733,12 +661,7 @@ var SchemaValidator = class {
|
|
|
733
661
|
log.warn("unknown property", {
|
|
734
662
|
path: propertyPath,
|
|
735
663
|
property: propertyName
|
|
736
|
-
}, {
|
|
737
|
-
F: __dxlog_file6,
|
|
738
|
-
L: 71,
|
|
739
|
-
S: this,
|
|
740
|
-
C: (f, a) => f(...a)
|
|
741
|
-
});
|
|
664
|
+
}, { "~LogMeta": "~LogMeta", F: __dxlog_file6, L: 60, S: this });
|
|
742
665
|
continue;
|
|
743
666
|
}
|
|
744
667
|
schema = Schema3.make(propertyType).annotations(propertyType.annotations);
|
|
@@ -748,15 +671,7 @@ var SchemaValidator = class {
|
|
|
748
671
|
}
|
|
749
672
|
static getTargetPropertySchema(target, prop) {
|
|
750
673
|
const schema = target[SchemaId];
|
|
751
|
-
invariant6(schema, "target has no schema", {
|
|
752
|
-
F: __dxlog_file6,
|
|
753
|
-
L: 84,
|
|
754
|
-
S: this,
|
|
755
|
-
A: [
|
|
756
|
-
"schema",
|
|
757
|
-
"'target has no schema'"
|
|
758
|
-
]
|
|
759
|
-
});
|
|
674
|
+
invariant6(schema, "target has no schema", { "~LogMeta": "~LogMeta", F: __dxlog_file6, L: 73, S: this, A: ["schema", "'target has no schema'"] });
|
|
760
675
|
const arrayAst = unwrapArray(schema.ast);
|
|
761
676
|
if (arrayAst != null) {
|
|
762
677
|
return getArrayElementSchema(arrayAst, prop);
|
|
@@ -765,30 +680,14 @@ var SchemaValidator = class {
|
|
|
765
680
|
if (propertyType == null) {
|
|
766
681
|
return Schema3.Any;
|
|
767
682
|
}
|
|
768
|
-
invariant6(propertyType, `invalid property: ${prop.toString()}`, {
|
|
769
|
-
F: __dxlog_file6,
|
|
770
|
-
L: 95,
|
|
771
|
-
S: this,
|
|
772
|
-
A: [
|
|
773
|
-
"propertyType",
|
|
774
|
-
"`invalid property: ${prop.toString()}`"
|
|
775
|
-
]
|
|
776
|
-
});
|
|
683
|
+
invariant6(propertyType, `invalid property: ${prop.toString()}`, { "~LogMeta": "~LogMeta", F: __dxlog_file6, L: 82, S: this, A: ["propertyType", "`invalid property: ${prop.toString()}`"] });
|
|
777
684
|
return Schema3.make(propertyType);
|
|
778
685
|
}
|
|
779
686
|
};
|
|
780
687
|
var getArrayElementSchema = (tupleAst, property) => {
|
|
781
688
|
const elementIndex = typeof property === "string" ? parseInt(property, 10) : Number.NaN;
|
|
782
689
|
if (Number.isNaN(elementIndex)) {
|
|
783
|
-
invariant6(property === "length", `invalid array property: ${String(property)}`, {
|
|
784
|
-
F: __dxlog_file6,
|
|
785
|
-
L: 111,
|
|
786
|
-
S: void 0,
|
|
787
|
-
A: [
|
|
788
|
-
"property === 'length'",
|
|
789
|
-
"`invalid array property: ${String(property)}`"
|
|
790
|
-
]
|
|
791
|
-
});
|
|
690
|
+
invariant6(property === "length", `invalid array property: ${String(property)}`, { "~LogMeta": "~LogMeta", F: __dxlog_file6, L: 93, S: void 0, A: ["property === 'length'", "`invalid array property: ${String(property)}`"] });
|
|
792
691
|
return Schema3.Number;
|
|
793
692
|
}
|
|
794
693
|
if (elementIndex < tupleAst.elements.length) {
|
|
@@ -813,15 +712,7 @@ var getProperties = (typeAst, getTargetPropertyFn) => {
|
|
|
813
712
|
const typeDiscriminators = getTypeDiscriminators(typeAstList);
|
|
814
713
|
const targetPropertyValue = getTargetPropertyFn(String(typeDiscriminators[0].name));
|
|
815
714
|
const typeIndex = typeDiscriminators.findIndex((p) => targetPropertyValue === p.type.literal);
|
|
816
|
-
invariant6(typeIndex !== -1, "discriminator field not set on target", {
|
|
817
|
-
F: __dxlog_file6,
|
|
818
|
-
L: 142,
|
|
819
|
-
S: void 0,
|
|
820
|
-
A: [
|
|
821
|
-
"typeIndex !== -1",
|
|
822
|
-
"'discriminator field not set on target'"
|
|
823
|
-
]
|
|
824
|
-
});
|
|
715
|
+
invariant6(typeIndex !== -1, "discriminator field not set on target", { "~LogMeta": "~LogMeta", F: __dxlog_file6, L: 118, S: void 0, A: ["typeIndex !== -1", "'discriminator field not set on target'"] });
|
|
825
716
|
return SchemaAST2.getPropertySignatures(typeAstList[typeIndex]);
|
|
826
717
|
};
|
|
827
718
|
var getPropertyType = (ast, propertyName, getTargetPropertyFn) => {
|
|
@@ -851,15 +742,7 @@ var getTypeDiscriminators = (typeAstList) => {
|
|
|
851
742
|
const isValidDiscriminator = discriminatorPropCandidates.every((p) => p.name === propertyName && !p.isOptional);
|
|
852
743
|
const everyTypeHasDiscriminator = discriminatorPropCandidates.length === typeAstList.length;
|
|
853
744
|
const isDiscriminatedUnion = isValidDiscriminator && everyTypeHasDiscriminator;
|
|
854
|
-
invariant6(isDiscriminatedUnion, "type ambiguity: every type in a union must have a single unique-literal field", {
|
|
855
|
-
F: __dxlog_file6,
|
|
856
|
-
L: 193,
|
|
857
|
-
S: void 0,
|
|
858
|
-
A: [
|
|
859
|
-
"isDiscriminatedUnion",
|
|
860
|
-
"'type ambiguity: every type in a union must have a single unique-literal field'"
|
|
861
|
-
]
|
|
862
|
-
});
|
|
745
|
+
invariant6(isDiscriminatedUnion, "type ambiguity: every type in a union must have a single unique-literal field", { "~LogMeta": "~LogMeta", F: __dxlog_file6, L: 148, S: void 0, A: ["isDiscriminatedUnion", "'type ambiguity: every type in a union must have a single unique-literal field'"] });
|
|
863
746
|
return discriminatorPropCandidates;
|
|
864
747
|
};
|
|
865
748
|
var unwrapAst = (rootAst, predicate) => {
|
|
@@ -885,15 +768,7 @@ var unwrapAst = (rootAst, predicate) => {
|
|
|
885
768
|
};
|
|
886
769
|
var unwrapArray = (ast) => unwrapAst(ast, SchemaAST2.isTupleType);
|
|
887
770
|
var checkIdNotPresentOnSchema = (schema) => {
|
|
888
|
-
invariant6(SchemaAST2.isTypeLiteral(schema.ast), void 0, {
|
|
889
|
-
F: __dxlog_file6,
|
|
890
|
-
L: 236,
|
|
891
|
-
S: void 0,
|
|
892
|
-
A: [
|
|
893
|
-
"SchemaAST.isTypeLiteral(schema.ast)",
|
|
894
|
-
""
|
|
895
|
-
]
|
|
896
|
-
});
|
|
771
|
+
invariant6(SchemaAST2.isTypeLiteral(schema.ast), void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file6, L: 184, S: void 0, A: ["SchemaAST.isTypeLiteral(schema.ast)", ""] });
|
|
897
772
|
const idProperty = SchemaAST2.getPropertySignatures(schema.ast).find((prop) => prop.name === "id");
|
|
898
773
|
if (idProperty != null) {
|
|
899
774
|
throw new Error('"id" property name is reserved');
|
|
@@ -954,24 +829,8 @@ var TypedReactiveHandler = class _TypedReactiveHandler {
|
|
|
954
829
|
constructor() {
|
|
955
830
|
}
|
|
956
831
|
init(target) {
|
|
957
|
-
invariant7(typeof target === "object" && target !== null, void 0, {
|
|
958
|
-
|
|
959
|
-
L: 147,
|
|
960
|
-
S: this,
|
|
961
|
-
A: [
|
|
962
|
-
"typeof target === 'object' && target !== null",
|
|
963
|
-
""
|
|
964
|
-
]
|
|
965
|
-
});
|
|
966
|
-
invariant7(SchemaId in target, "Schema is not defined for the target", {
|
|
967
|
-
F: __dxlog_file7,
|
|
968
|
-
L: 148,
|
|
969
|
-
S: this,
|
|
970
|
-
A: [
|
|
971
|
-
"SchemaId in target",
|
|
972
|
-
"'Schema is not defined for the target'"
|
|
973
|
-
]
|
|
974
|
-
});
|
|
832
|
+
invariant7(typeof target === "object" && target !== null, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file7, L: 99, S: this, A: ["typeof target === 'object' && target !== null", ""] });
|
|
833
|
+
invariant7(SchemaId in target, "Schema is not defined for the target", { "~LogMeta": "~LogMeta", F: __dxlog_file7, L: 100, S: this, A: ["SchemaId in target", "'Schema is not defined for the target'"] });
|
|
975
834
|
const hasOwner = !!getOwner(target);
|
|
976
835
|
if (!(EventId in target) && !hasOwner) {
|
|
977
836
|
defineHiddenProperty(target, EventId, new Event());
|
|
@@ -1028,7 +887,7 @@ var TypedReactiveHandler = class _TypedReactiveHandler {
|
|
|
1028
887
|
const isInitialized = ChangeId in echoRoot || EventId in echoRoot;
|
|
1029
888
|
const isSymbolProp = typeof prop === "symbol";
|
|
1030
889
|
if (isInitialized && !isSymbolProp && !isInChangeContext(echoRoot)) {
|
|
1031
|
-
throw new Error(`Cannot modify object property "${String(prop)}" outside of Obj.
|
|
890
|
+
throw new Error(`Cannot modify object property "${String(prop)}" outside of Obj.update(). Use Obj.update(obj, (mutableObj) => { mutableObj.property = value; }) instead.`);
|
|
1032
891
|
}
|
|
1033
892
|
let result = false;
|
|
1034
893
|
this._inSet = true;
|
|
@@ -1067,7 +926,7 @@ var TypedReactiveHandler = class _TypedReactiveHandler {
|
|
|
1067
926
|
const isInitialized = ChangeId in echoRoot || EventId in echoRoot;
|
|
1068
927
|
const isSymbolProp = typeof property === "symbol";
|
|
1069
928
|
if (isInitialized && !isSymbolProp && !isInChangeContext(echoRoot)) {
|
|
1070
|
-
throw new Error(`Cannot modify object property "${String(property)}" outside of Obj.
|
|
929
|
+
throw new Error(`Cannot modify object property "${String(property)}" outside of Obj.update(). Use Obj.update(obj, (mutableObj) => { mutableObj.property = value; }) instead.`);
|
|
1071
930
|
}
|
|
1072
931
|
const { echoRoot: _, preparedValue } = this._prepareValueForAssignment(target, property, attributes.value);
|
|
1073
932
|
const result = Reflect.defineProperty(target, property, {
|
|
@@ -1240,6 +1099,10 @@ var initMeta = (obj, meta = {
|
|
|
1240
1099
|
|
|
1241
1100
|
// src/internal/common/proxy/reactive.ts
|
|
1242
1101
|
var subscribe = (obj, callback) => {
|
|
1102
|
+
if (!isProxy(obj)) {
|
|
1103
|
+
return () => {
|
|
1104
|
+
};
|
|
1105
|
+
}
|
|
1243
1106
|
const target = getProxyTarget(obj);
|
|
1244
1107
|
if (target && EventId in target) {
|
|
1245
1108
|
return target[EventId].on(callback);
|
|
@@ -1266,80 +1129,16 @@ import { DXN as DXN2, ObjectId as ObjectId2 } from "@dxos/keys";
|
|
|
1266
1129
|
import { assumeType } from "@dxos/util";
|
|
1267
1130
|
var __dxlog_file8 = "/__w/dxos/dxos/packages/core/echo/echo/src/internal/Entity/model.ts";
|
|
1268
1131
|
function assertObjectModel(obj) {
|
|
1269
|
-
invariant8(typeof obj === "object" && obj !== null, "Invalid object model: not an object", {
|
|
1270
|
-
F: __dxlog_file8,
|
|
1271
|
-
L: 94,
|
|
1272
|
-
S: this,
|
|
1273
|
-
A: [
|
|
1274
|
-
"typeof obj === 'object' && obj !== null",
|
|
1275
|
-
"'Invalid object model: not an object'"
|
|
1276
|
-
]
|
|
1277
|
-
});
|
|
1132
|
+
invariant8(typeof obj === "object" && obj !== null, "Invalid object model: not an object", { "~LogMeta": "~LogMeta", F: __dxlog_file8, L: 12, S: this, A: ["typeof obj === 'object' && obj !== null", "'Invalid object model: not an object'"] });
|
|
1278
1133
|
assumeType(obj);
|
|
1279
|
-
invariant8(ObjectId2.isValid(obj.id), "Invalid object model: invalid id", {
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
S: this,
|
|
1283
|
-
A: [
|
|
1284
|
-
"ObjectId.isValid(obj.id)",
|
|
1285
|
-
"'Invalid object model: invalid id'"
|
|
1286
|
-
]
|
|
1287
|
-
});
|
|
1288
|
-
invariant8(obj[TypeId] === void 0 || obj[TypeId] instanceof DXN2, "Invalid object model: invalid type", {
|
|
1289
|
-
F: __dxlog_file8,
|
|
1290
|
-
L: 97,
|
|
1291
|
-
S: this,
|
|
1292
|
-
A: [
|
|
1293
|
-
"obj[TypeId] === undefined || obj[TypeId] instanceof DXN",
|
|
1294
|
-
"'Invalid object model: invalid type'"
|
|
1295
|
-
]
|
|
1296
|
-
});
|
|
1297
|
-
invariant8(obj[KindId] === EntityKind.Object || obj[KindId] === EntityKind.Relation, "Invalid object model: invalid entity kind", {
|
|
1298
|
-
F: __dxlog_file8,
|
|
1299
|
-
L: 98,
|
|
1300
|
-
S: this,
|
|
1301
|
-
A: [
|
|
1302
|
-
"obj[KindId] === EntityKind.Object || obj[KindId] === EntityKind.Relation",
|
|
1303
|
-
"'Invalid object model: invalid entity kind'"
|
|
1304
|
-
]
|
|
1305
|
-
});
|
|
1134
|
+
invariant8(ObjectId2.isValid(obj.id), "Invalid object model: invalid id", { "~LogMeta": "~LogMeta", F: __dxlog_file8, L: 14, S: this, A: ["ObjectId.isValid(obj.id)", "'Invalid object model: invalid id'"] });
|
|
1135
|
+
invariant8(obj[TypeId] === void 0 || obj[TypeId] instanceof DXN2, "Invalid object model: invalid type", { "~LogMeta": "~LogMeta", F: __dxlog_file8, L: 15, S: this, A: ["obj[TypeId] === undefined || obj[TypeId] instanceof DXN", "'Invalid object model: invalid type'"] });
|
|
1136
|
+
invariant8(obj[KindId] === EntityKind.Object || obj[KindId] === EntityKind.Relation, "Invalid object model: invalid entity kind", { "~LogMeta": "~LogMeta", F: __dxlog_file8, L: 16, S: this, A: ["obj[KindId] === EntityKind.Object || obj[KindId] === EntityKind.Relation", "'Invalid object model: invalid entity kind'"] });
|
|
1306
1137
|
if (obj[KindId] === EntityKind.Relation) {
|
|
1307
|
-
invariant8(obj[RelationSourceDXNId] instanceof DXN2, "Invalid object model: invalid relation source", {
|
|
1308
|
-
|
|
1309
|
-
|
|
1310
|
-
|
|
1311
|
-
A: [
|
|
1312
|
-
"obj[RelationSourceDXNId] instanceof DXN",
|
|
1313
|
-
"'Invalid object model: invalid relation source'"
|
|
1314
|
-
]
|
|
1315
|
-
});
|
|
1316
|
-
invariant8(obj[RelationTargetDXNId] instanceof DXN2, "Invalid object model: invalid relation target", {
|
|
1317
|
-
F: __dxlog_file8,
|
|
1318
|
-
L: 105,
|
|
1319
|
-
S: this,
|
|
1320
|
-
A: [
|
|
1321
|
-
"obj[RelationTargetDXNId] instanceof DXN",
|
|
1322
|
-
"'Invalid object model: invalid relation target'"
|
|
1323
|
-
]
|
|
1324
|
-
});
|
|
1325
|
-
invariant8(!(obj[RelationSourceId] instanceof DXN2), "Invalid object model: source pointer is a DXN", {
|
|
1326
|
-
F: __dxlog_file8,
|
|
1327
|
-
L: 106,
|
|
1328
|
-
S: this,
|
|
1329
|
-
A: [
|
|
1330
|
-
"!(obj[RelationSourceId] instanceof DXN)",
|
|
1331
|
-
"'Invalid object model: source pointer is a DXN'"
|
|
1332
|
-
]
|
|
1333
|
-
});
|
|
1334
|
-
invariant8(!(obj[RelationTargetId] instanceof DXN2), "Invalid object model: target pointer is a DXN", {
|
|
1335
|
-
F: __dxlog_file8,
|
|
1336
|
-
L: 107,
|
|
1337
|
-
S: this,
|
|
1338
|
-
A: [
|
|
1339
|
-
"!(obj[RelationTargetId] instanceof DXN)",
|
|
1340
|
-
"'Invalid object model: target pointer is a DXN'"
|
|
1341
|
-
]
|
|
1342
|
-
});
|
|
1138
|
+
invariant8(obj[RelationSourceDXNId] instanceof DXN2, "Invalid object model: invalid relation source", { "~LogMeta": "~LogMeta", F: __dxlog_file8, L: 18, S: this, A: ["obj[RelationSourceDXNId] instanceof DXN", "'Invalid object model: invalid relation source'"] });
|
|
1139
|
+
invariant8(obj[RelationTargetDXNId] instanceof DXN2, "Invalid object model: invalid relation target", { "~LogMeta": "~LogMeta", F: __dxlog_file8, L: 19, S: this, A: ["obj[RelationTargetDXNId] instanceof DXN", "'Invalid object model: invalid relation target'"] });
|
|
1140
|
+
invariant8(!(obj[RelationSourceId] instanceof DXN2), "Invalid object model: source pointer is a DXN", { "~LogMeta": "~LogMeta", F: __dxlog_file8, L: 20, S: this, A: ["!(obj[RelationSourceId] instanceof DXN)", "'Invalid object model: source pointer is a DXN'"] });
|
|
1141
|
+
invariant8(!(obj[RelationTargetId] instanceof DXN2), "Invalid object model: target pointer is a DXN", { "~LogMeta": "~LogMeta", F: __dxlog_file8, L: 21, S: this, A: ["!(obj[RelationTargetId] instanceof DXN)", "'Invalid object model: target pointer is a DXN'"] });
|
|
1343
1142
|
}
|
|
1344
1143
|
}
|
|
1345
1144
|
|
|
@@ -1350,27 +1149,11 @@ import { DXN as DXN3, ObjectId as ObjectId3 } from "@dxos/keys";
|
|
|
1350
1149
|
import { assumeType as assumeType2 } from "@dxos/util";
|
|
1351
1150
|
var __dxlog_file9 = "/__w/dxos/dxos/packages/core/echo/echo/src/internal/Entity/util.ts";
|
|
1352
1151
|
var getObjectDXN = (object) => {
|
|
1353
|
-
invariant9(!Schema5.isSchema(object), "schema not allowed in this function", {
|
|
1354
|
-
F: __dxlog_file9,
|
|
1355
|
-
L: 19,
|
|
1356
|
-
S: void 0,
|
|
1357
|
-
A: [
|
|
1358
|
-
"!Schema.isSchema(object)",
|
|
1359
|
-
"'schema not allowed in this function'"
|
|
1360
|
-
]
|
|
1361
|
-
});
|
|
1152
|
+
invariant9(!Schema5.isSchema(object), "schema not allowed in this function", { "~LogMeta": "~LogMeta", F: __dxlog_file9, L: 14, S: void 0, A: ["!Schema.isSchema(object)", "'schema not allowed in this function'"] });
|
|
1362
1153
|
assertArgument2(typeof object === "object" && object != null, "object", "expected object");
|
|
1363
1154
|
assumeType2(object);
|
|
1364
1155
|
if (object[SelfDXNId]) {
|
|
1365
|
-
invariant9(object[SelfDXNId] instanceof DXN3, "Invalid object model: invalid self dxn", {
|
|
1366
|
-
F: __dxlog_file9,
|
|
1367
|
-
L: 24,
|
|
1368
|
-
S: void 0,
|
|
1369
|
-
A: [
|
|
1370
|
-
"object[SelfDXNId] instanceof DXN",
|
|
1371
|
-
"'Invalid object model: invalid self dxn'"
|
|
1372
|
-
]
|
|
1373
|
-
});
|
|
1156
|
+
invariant9(object[SelfDXNId] instanceof DXN3, "Invalid object model: invalid self dxn", { "~LogMeta": "~LogMeta", F: __dxlog_file9, L: 18, S: void 0, A: ["object[SelfDXNId] instanceof DXN", "'Invalid object model: invalid self dxn'"] });
|
|
1374
1157
|
return object[SelfDXNId];
|
|
1375
1158
|
}
|
|
1376
1159
|
if (!ObjectId3.isValid(object.id)) {
|
|
@@ -1383,15 +1166,7 @@ var getObjectDXN = (object) => {
|
|
|
1383
1166
|
var __dxlog_file10 = "/__w/dxos/dxos/packages/core/echo/echo/src/internal/Entity/api.ts";
|
|
1384
1167
|
var getDXN = (entity) => {
|
|
1385
1168
|
const dxn = getObjectDXN(entity);
|
|
1386
|
-
invariant10(dxn != null, "Invalid entity.", {
|
|
1387
|
-
F: __dxlog_file10,
|
|
1388
|
-
L: 20,
|
|
1389
|
-
S: void 0,
|
|
1390
|
-
A: [
|
|
1391
|
-
"dxn != null",
|
|
1392
|
-
"'Invalid entity.'"
|
|
1393
|
-
]
|
|
1394
|
-
});
|
|
1169
|
+
invariant10(dxn != null, "Invalid entity.", { "~LogMeta": "~LogMeta", F: __dxlog_file10, L: 13, S: void 0, A: ["dxn != null", "'Invalid entity.'"] });
|
|
1395
1170
|
return dxn;
|
|
1396
1171
|
};
|
|
1397
1172
|
var getDatabase = (entity) => {
|
|
@@ -1435,24 +1210,8 @@ import { invariant as invariant11 } from "@dxos/invariant";
|
|
|
1435
1210
|
var __dxlog_file11 = "/__w/dxos/dxos/packages/core/echo/echo/src/internal/Entity/object.ts";
|
|
1436
1211
|
var EchoObjectSchema = ({ typename, version: version2 }) => {
|
|
1437
1212
|
return (self) => {
|
|
1438
|
-
invariant11(typeof TypeAnnotationId === "symbol", "Sanity.", {
|
|
1439
|
-
|
|
1440
|
-
L: 37,
|
|
1441
|
-
S: void 0,
|
|
1442
|
-
A: [
|
|
1443
|
-
"typeof TypeAnnotationId === 'symbol'",
|
|
1444
|
-
"'Sanity.'"
|
|
1445
|
-
]
|
|
1446
|
-
});
|
|
1447
|
-
invariant11(SchemaAST4.isTypeLiteral(self.ast), "Schema must be a TypeLiteral.", {
|
|
1448
|
-
F: __dxlog_file11,
|
|
1449
|
-
L: 38,
|
|
1450
|
-
S: void 0,
|
|
1451
|
-
A: [
|
|
1452
|
-
"SchemaAST.isTypeLiteral(self.ast)",
|
|
1453
|
-
"'Schema must be a TypeLiteral.'"
|
|
1454
|
-
]
|
|
1455
|
-
});
|
|
1213
|
+
invariant11(typeof TypeAnnotationId === "symbol", "Sanity.", { "~LogMeta": "~LogMeta", F: __dxlog_file11, L: 15, S: void 0, A: ["typeof TypeAnnotationId === 'symbol'", "'Sanity.'"] });
|
|
1214
|
+
invariant11(SchemaAST4.isTypeLiteral(self.ast), "Schema must be a TypeLiteral.", { "~LogMeta": "~LogMeta", F: __dxlog_file11, L: 16, S: void 0, A: ["SchemaAST.isTypeLiteral(self.ast)", "'Schema must be a TypeLiteral.'"] });
|
|
1456
1215
|
const fields = self.fields ?? {};
|
|
1457
1216
|
const schemaWithId = Schema7.extend(self, Schema7.Struct({
|
|
1458
1217
|
id: Schema7.String
|
|
@@ -1495,15 +1254,7 @@ var EchoRelationSchema = ({ source, target, typename, version: version2 }) => {
|
|
|
1495
1254
|
raise(new Error("Target schema must be an echo object schema."));
|
|
1496
1255
|
}
|
|
1497
1256
|
return (self) => {
|
|
1498
|
-
invariant12(SchemaAST5.isTypeLiteral(self.ast), "Schema must be a TypeLiteral.", {
|
|
1499
|
-
F: __dxlog_file12,
|
|
1500
|
-
L: 110,
|
|
1501
|
-
S: void 0,
|
|
1502
|
-
A: [
|
|
1503
|
-
"SchemaAST.isTypeLiteral(self.ast)",
|
|
1504
|
-
"'Schema must be a TypeLiteral.'"
|
|
1505
|
-
]
|
|
1506
|
-
});
|
|
1257
|
+
invariant12(SchemaAST5.isTypeLiteral(self.ast), "Schema must be a TypeLiteral.", { "~LogMeta": "~LogMeta", F: __dxlog_file12, L: 27, S: void 0, A: ["SchemaAST.isTypeLiteral(self.ast)", "'Schema must be a TypeLiteral.'"] });
|
|
1507
1258
|
const fields = self.fields ?? {};
|
|
1508
1259
|
const schemaWithId = Schema8.extend(self, Schema8.Struct({
|
|
1509
1260
|
id: Schema8.String
|
|
@@ -1745,33 +1496,17 @@ import { assumeType as assumeType4, deepMapValues as deepMapValues2, visitValues
|
|
|
1745
1496
|
var __dxlog_file13 = "/__w/dxos/dxos/packages/core/echo/echo/src/internal/Obj/json-serializer.ts";
|
|
1746
1497
|
var objectToJSON = (obj) => {
|
|
1747
1498
|
const typename = getTypeDXN(obj)?.toString();
|
|
1748
|
-
invariant13(typename && typeof typename === "string", void 0, {
|
|
1749
|
-
F: __dxlog_file13,
|
|
1750
|
-
L: 66,
|
|
1751
|
-
S: void 0,
|
|
1752
|
-
A: [
|
|
1753
|
-
"typename && typeof typename === 'string'",
|
|
1754
|
-
""
|
|
1755
|
-
]
|
|
1756
|
-
});
|
|
1499
|
+
invariant13(typename && typeof typename === "string", void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 21, S: void 0, A: ["typename && typeof typename === 'string'", ""] });
|
|
1757
1500
|
return typedJsonSerializer.call(obj);
|
|
1758
1501
|
};
|
|
1759
|
-
var objectFromJSON = async (jsonData, { refResolver, dxn, database } = {}) => {
|
|
1502
|
+
var objectFromJSON = async (jsonData, { refResolver, dxn, database, parent } = {}) => {
|
|
1760
1503
|
assumeType4(jsonData);
|
|
1761
1504
|
assertArgument5(typeof jsonData === "object" && jsonData !== null, "jsonData", "expect object");
|
|
1762
1505
|
assertArgument5(typeof jsonData[ATTR_TYPE] === "string", "jsonData[ATTR_TYPE]", "expected object to have a type");
|
|
1763
1506
|
assertArgument5(typeof jsonData.id === "string", "jsonData.id", "expected object to have an id");
|
|
1764
1507
|
const type = DXN5.parse(jsonData[ATTR_TYPE]);
|
|
1765
1508
|
const schema = await refResolver?.resolveSchema(type);
|
|
1766
|
-
invariant13(schema === void 0 || Schema10.isSchema(schema), void 0, {
|
|
1767
|
-
F: __dxlog_file13,
|
|
1768
|
-
L: 92,
|
|
1769
|
-
S: void 0,
|
|
1770
|
-
A: [
|
|
1771
|
-
"schema === undefined || Schema.isSchema(schema)",
|
|
1772
|
-
""
|
|
1773
|
-
]
|
|
1774
|
-
});
|
|
1509
|
+
invariant13(schema === void 0 || Schema10.isSchema(schema), void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 41, S: void 0, A: ["schema === undefined || Schema.isSchema(schema)", ""] });
|
|
1775
1510
|
const decodedInput = stripInternalJsonKeys(jsonData);
|
|
1776
1511
|
let obj;
|
|
1777
1512
|
if (schema != null) {
|
|
@@ -1784,15 +1519,7 @@ var objectFromJSON = async (jsonData, { refResolver, dxn, database } = {}) => {
|
|
|
1784
1519
|
refResolver
|
|
1785
1520
|
});
|
|
1786
1521
|
}
|
|
1787
|
-
invariant13(ObjectId4.isValid(obj.id), "Invalid object id", {
|
|
1788
|
-
F: __dxlog_file13,
|
|
1789
|
-
L: 105,
|
|
1790
|
-
S: void 0,
|
|
1791
|
-
A: [
|
|
1792
|
-
"ObjectId.isValid(obj.id)",
|
|
1793
|
-
"'Invalid object id'"
|
|
1794
|
-
]
|
|
1795
|
-
});
|
|
1522
|
+
invariant13(ObjectId4.isValid(obj.id), "Invalid object id", { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 54, S: void 0, A: ["ObjectId.isValid(obj.id)", "'Invalid object id'"] });
|
|
1796
1523
|
setTypename(obj, type);
|
|
1797
1524
|
if (schema) {
|
|
1798
1525
|
setSchema(obj, schema);
|
|
@@ -1813,15 +1540,7 @@ var objectFromJSON = async (jsonData, { refResolver, dxn, database } = {}) => {
|
|
|
1813
1540
|
}
|
|
1814
1541
|
if (typeof jsonData[ATTR_META] === "object") {
|
|
1815
1542
|
const meta = await ObjectMetaSchema.pipe(Schema10.decodeUnknownPromise)(jsonData[ATTR_META]);
|
|
1816
|
-
invariant13(Array.isArray(meta.keys), void 0, {
|
|
1817
|
-
F: __dxlog_file13,
|
|
1818
|
-
L: 131,
|
|
1819
|
-
S: void 0,
|
|
1820
|
-
A: [
|
|
1821
|
-
"Array.isArray(meta.keys)",
|
|
1822
|
-
""
|
|
1823
|
-
]
|
|
1824
|
-
});
|
|
1543
|
+
invariant13(Array.isArray(meta.keys), void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 75, S: void 0, A: ["Array.isArray(meta.keys)", ""] });
|
|
1825
1544
|
defineHiddenProperty(obj, MetaId, meta);
|
|
1826
1545
|
} else {
|
|
1827
1546
|
defineHiddenProperty(obj, MetaId, {
|
|
@@ -1830,7 +1549,9 @@ var objectFromJSON = async (jsonData, { refResolver, dxn, database } = {}) => {
|
|
|
1830
1549
|
}
|
|
1831
1550
|
if (jsonData[ATTR_PARENT]) {
|
|
1832
1551
|
const parentDxn = DXN5.parse(jsonData[ATTR_PARENT]);
|
|
1833
|
-
const
|
|
1552
|
+
const resolvedParent = await refResolver?.resolve(parentDxn);
|
|
1553
|
+
defineHiddenProperty(obj, ParentId, resolvedParent);
|
|
1554
|
+
} else if (parent) {
|
|
1834
1555
|
defineHiddenProperty(obj, ParentId, parent);
|
|
1835
1556
|
}
|
|
1836
1557
|
if (dxn) {
|
|
@@ -1840,60 +1561,12 @@ var objectFromJSON = async (jsonData, { refResolver, dxn, database } = {}) => {
|
|
|
1840
1561
|
defineHiddenProperty(obj, ObjectDatabaseId, database);
|
|
1841
1562
|
}
|
|
1842
1563
|
assertObjectModel(obj);
|
|
1843
|
-
invariant13(obj[ATTR_TYPE] === void 0, "Invalid object model", {
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
"'Invalid object model'"
|
|
1850
|
-
]
|
|
1851
|
-
});
|
|
1852
|
-
invariant13(obj[ATTR_META] === void 0, "Invalid object model", {
|
|
1853
|
-
F: __dxlog_file13,
|
|
1854
|
-
L: 155,
|
|
1855
|
-
S: void 0,
|
|
1856
|
-
A: [
|
|
1857
|
-
"(obj as any)[ATTR_META] === undefined",
|
|
1858
|
-
"'Invalid object model'"
|
|
1859
|
-
]
|
|
1860
|
-
});
|
|
1861
|
-
invariant13(obj[ATTR_DELETED] === void 0, "Invalid object model", {
|
|
1862
|
-
F: __dxlog_file13,
|
|
1863
|
-
L: 156,
|
|
1864
|
-
S: void 0,
|
|
1865
|
-
A: [
|
|
1866
|
-
"(obj as any)[ATTR_DELETED] === undefined",
|
|
1867
|
-
"'Invalid object model'"
|
|
1868
|
-
]
|
|
1869
|
-
});
|
|
1870
|
-
invariant13(obj[ATTR_SELF_DXN] === void 0, "Invalid object model", {
|
|
1871
|
-
F: __dxlog_file13,
|
|
1872
|
-
L: 157,
|
|
1873
|
-
S: void 0,
|
|
1874
|
-
A: [
|
|
1875
|
-
"(obj as any)[ATTR_SELF_DXN] === undefined",
|
|
1876
|
-
"'Invalid object model'"
|
|
1877
|
-
]
|
|
1878
|
-
});
|
|
1879
|
-
invariant13(obj[ATTR_RELATION_SOURCE] === void 0, "Invalid object model", {
|
|
1880
|
-
F: __dxlog_file13,
|
|
1881
|
-
L: 158,
|
|
1882
|
-
S: void 0,
|
|
1883
|
-
A: [
|
|
1884
|
-
"(obj as any)[ATTR_RELATION_SOURCE] === undefined",
|
|
1885
|
-
"'Invalid object model'"
|
|
1886
|
-
]
|
|
1887
|
-
});
|
|
1888
|
-
invariant13(obj[ATTR_RELATION_TARGET] === void 0, "Invalid object model", {
|
|
1889
|
-
F: __dxlog_file13,
|
|
1890
|
-
L: 159,
|
|
1891
|
-
S: void 0,
|
|
1892
|
-
A: [
|
|
1893
|
-
"(obj as any)[ATTR_RELATION_TARGET] === undefined",
|
|
1894
|
-
"'Invalid object model'"
|
|
1895
|
-
]
|
|
1896
|
-
});
|
|
1564
|
+
invariant13(obj[ATTR_TYPE] === void 0, "Invalid object model", { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 96, S: void 0, A: ["obj[ATTR_TYPE] === undefined", "'Invalid object model'"] });
|
|
1565
|
+
invariant13(obj[ATTR_META] === void 0, "Invalid object model", { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 97, S: void 0, A: ["obj[ATTR_META] === undefined", "'Invalid object model'"] });
|
|
1566
|
+
invariant13(obj[ATTR_DELETED] === void 0, "Invalid object model", { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 98, S: void 0, A: ["obj[ATTR_DELETED] === undefined", "'Invalid object model'"] });
|
|
1567
|
+
invariant13(obj[ATTR_SELF_DXN] === void 0, "Invalid object model", { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 99, S: void 0, A: ["obj[ATTR_SELF_DXN] === undefined", "'Invalid object model'"] });
|
|
1568
|
+
invariant13(obj[ATTR_RELATION_SOURCE] === void 0, "Invalid object model", { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 100, S: void 0, A: ["obj[ATTR_RELATION_SOURCE] === undefined", "'Invalid object model'"] });
|
|
1569
|
+
invariant13(obj[ATTR_RELATION_TARGET] === void 0, "Invalid object model", { "~LogMeta": "~LogMeta", F: __dxlog_file13, L: 101, S: void 0, A: ["obj[ATTR_RELATION_TARGET] === undefined", "'Invalid object model'"] });
|
|
1897
1570
|
return obj;
|
|
1898
1571
|
};
|
|
1899
1572
|
var decodeGeneric = (jsonData, options) => {
|
|
@@ -1988,25 +1661,9 @@ import { getArrayElementType, getBaseType, getProperties as getProperties2, isAr
|
|
|
1988
1661
|
import { invariant as invariant14 } from "@dxos/invariant";
|
|
1989
1662
|
var __dxlog_file14 = "/__w/dxos/dxos/packages/core/echo/echo/src/internal/Obj/set-value.ts";
|
|
1990
1663
|
var setValue = (obj, path, value2) => {
|
|
1991
|
-
invariant14(path.length > 0, "Path must not be empty", {
|
|
1992
|
-
F: __dxlog_file14,
|
|
1993
|
-
L: 27,
|
|
1994
|
-
S: void 0,
|
|
1995
|
-
A: [
|
|
1996
|
-
"path.length > 0",
|
|
1997
|
-
"'Path must not be empty'"
|
|
1998
|
-
]
|
|
1999
|
-
});
|
|
1664
|
+
invariant14(path.length > 0, "Path must not be empty", { "~LogMeta": "~LogMeta", F: __dxlog_file14, L: 14, S: void 0, A: ["path.length > 0", "'Path must not be empty'"] });
|
|
2000
1665
|
const schema = getSchema(obj);
|
|
2001
|
-
invariant14(schema != null, "Object must have a schema", {
|
|
2002
|
-
F: __dxlog_file14,
|
|
2003
|
-
L: 30,
|
|
2004
|
-
S: void 0,
|
|
2005
|
-
A: [
|
|
2006
|
-
"schema != null",
|
|
2007
|
-
"'Object must have a schema'"
|
|
2008
|
-
]
|
|
2009
|
-
});
|
|
1666
|
+
invariant14(schema != null, "Object must have a schema", { "~LogMeta": "~LogMeta", F: __dxlog_file14, L: 16, S: void 0, A: ["schema != null", "'Object must have a schema'"] });
|
|
2010
1667
|
let parent = obj;
|
|
2011
1668
|
let currentAST = schema.ast;
|
|
2012
1669
|
for (let i = 0; i < path.length - 1; i++) {
|
|
@@ -2148,15 +1805,7 @@ var __dxlog_file15 = "/__w/dxos/dxos/packages/core/echo/echo/src/internal/Obj/cl
|
|
|
2148
1805
|
var clone = (obj, opts) => {
|
|
2149
1806
|
const { id, ...data } = obj;
|
|
2150
1807
|
const schema = getSchema(obj);
|
|
2151
|
-
invariant15(schema != null, "Object should have a schema", {
|
|
2152
|
-
F: __dxlog_file15,
|
|
2153
|
-
L: 21,
|
|
2154
|
-
S: void 0,
|
|
2155
|
-
A: [
|
|
2156
|
-
"schema != null",
|
|
2157
|
-
"'Object should have a schema'"
|
|
2158
|
-
]
|
|
2159
|
-
});
|
|
1808
|
+
invariant15(schema != null, "Object should have a schema", { "~LogMeta": "~LogMeta", F: __dxlog_file15, L: 16, S: void 0, A: ["schema != null", "'Object should have a schema'"] });
|
|
2160
1809
|
const props = deepMapValues4(data, (value2, recurse) => {
|
|
2161
1810
|
if (Ref.isRef(value2)) {
|
|
2162
1811
|
if (opts?.deep) {
|
|
@@ -2181,6 +1830,127 @@ var clone = (obj, opts) => {
|
|
|
2181
1830
|
return makeObject(schema, props, meta);
|
|
2182
1831
|
};
|
|
2183
1832
|
|
|
1833
|
+
// src/internal/Query.ts
|
|
1834
|
+
var prettyFilter = (filter) => {
|
|
1835
|
+
switch (filter.type) {
|
|
1836
|
+
case "object": {
|
|
1837
|
+
const parts = [];
|
|
1838
|
+
if (filter.typename !== null) {
|
|
1839
|
+
parts.push(String(filter.typename));
|
|
1840
|
+
}
|
|
1841
|
+
if (filter.id !== void 0 && filter.id.length > 0) {
|
|
1842
|
+
parts.push(`id: [${filter.id.join(", ")}]`);
|
|
1843
|
+
}
|
|
1844
|
+
const propEntries = Object.entries(filter.props);
|
|
1845
|
+
if (propEntries.length > 0) {
|
|
1846
|
+
const propsStr = propEntries.map(([k, v]) => `${k}: ${prettyFilter(v)}`).join(", ");
|
|
1847
|
+
parts.push(`{ ${propsStr} }`);
|
|
1848
|
+
}
|
|
1849
|
+
if (filter.foreignKeys !== void 0 && filter.foreignKeys.length > 0) {
|
|
1850
|
+
parts.push(`foreignKeys: [${filter.foreignKeys.map((fk) => JSON.stringify(fk)).join(", ")}]`);
|
|
1851
|
+
}
|
|
1852
|
+
return parts.length > 0 ? `Filter.type(${parts.join(", ")})` : "Filter.everything()";
|
|
1853
|
+
}
|
|
1854
|
+
case "compare":
|
|
1855
|
+
return `Filter.${filter.operator}(${JSON.stringify(filter.value)})`;
|
|
1856
|
+
case "in":
|
|
1857
|
+
return `Filter.in([${filter.values.map((v) => JSON.stringify(v)).join(", ")}])`;
|
|
1858
|
+
case "contains":
|
|
1859
|
+
return `Filter.contains(${JSON.stringify(filter.value)})`;
|
|
1860
|
+
case "tag":
|
|
1861
|
+
return `Filter.tag(${JSON.stringify(filter.tag)})`;
|
|
1862
|
+
case "range":
|
|
1863
|
+
return `Filter.range(${JSON.stringify(filter.from)}, ${JSON.stringify(filter.to)})`;
|
|
1864
|
+
case "text-search":
|
|
1865
|
+
return filter.searchKind ? `Filter.textSearch(${JSON.stringify(filter.text)}, ${JSON.stringify(filter.searchKind)})` : `Filter.textSearch(${JSON.stringify(filter.text)})`;
|
|
1866
|
+
case "timestamp":
|
|
1867
|
+
return `Filter.${filter.field}.${filter.operator}(${filter.value})`;
|
|
1868
|
+
case "child-of":
|
|
1869
|
+
return `Filter.childOf([${filter.parents.map((p) => JSON.stringify(p)).join(", ")}], { transitive: ${filter.transitive} })`;
|
|
1870
|
+
case "not":
|
|
1871
|
+
return `Filter.not(${prettyFilter(filter.filter)})`;
|
|
1872
|
+
case "and":
|
|
1873
|
+
return `Filter.and(${filter.filters.map(prettyFilter).join(", ")})`;
|
|
1874
|
+
case "or":
|
|
1875
|
+
return `Filter.or(${filter.filters.map(prettyFilter).join(", ")})`;
|
|
1876
|
+
}
|
|
1877
|
+
};
|
|
1878
|
+
var prettyQuery = (query) => {
|
|
1879
|
+
switch (query.type) {
|
|
1880
|
+
case "select":
|
|
1881
|
+
return `Query.select(${prettyFilter(query.filter)})`;
|
|
1882
|
+
case "filter":
|
|
1883
|
+
return `${prettyQuery(query.selection)}.select(${prettyFilter(query.filter)})`;
|
|
1884
|
+
case "reference-traversal":
|
|
1885
|
+
return `${prettyQuery(query.anchor)}.reference(${JSON.stringify(query.property)})`;
|
|
1886
|
+
case "incoming-references": {
|
|
1887
|
+
const args = [];
|
|
1888
|
+
if (query.typename !== null) {
|
|
1889
|
+
args.push(String(query.typename));
|
|
1890
|
+
}
|
|
1891
|
+
if (query.property !== null) {
|
|
1892
|
+
args.push(JSON.stringify(query.property));
|
|
1893
|
+
}
|
|
1894
|
+
return `${prettyQuery(query.anchor)}.referencedBy(${args.join(", ")})`;
|
|
1895
|
+
}
|
|
1896
|
+
case "relation": {
|
|
1897
|
+
const method = query.direction === "outgoing" ? "sourceOf" : query.direction === "incoming" ? "targetOf" : "relationOf";
|
|
1898
|
+
const filterStr = query.filter !== void 0 ? prettyFilter(query.filter) : "";
|
|
1899
|
+
return `${prettyQuery(query.anchor)}.${method}(${filterStr})`;
|
|
1900
|
+
}
|
|
1901
|
+
case "relation-traversal":
|
|
1902
|
+
return `${prettyQuery(query.anchor)}.${query.direction}()`;
|
|
1903
|
+
case "hierarchy-traversal":
|
|
1904
|
+
return query.direction === "to-parent" ? `${prettyQuery(query.anchor)}.parent()` : `${prettyQuery(query.anchor)}.children()`;
|
|
1905
|
+
case "union":
|
|
1906
|
+
return `Query.all(${query.queries.map(prettyQuery).join(", ")})`;
|
|
1907
|
+
case "set-difference":
|
|
1908
|
+
return `Query.without(${prettyQuery(query.source)}, ${prettyQuery(query.exclude)})`;
|
|
1909
|
+
case "order": {
|
|
1910
|
+
const orders = query.order.map((o) => {
|
|
1911
|
+
if (o.kind === "natural") {
|
|
1912
|
+
return "Order.natural()";
|
|
1913
|
+
} else if (o.kind === "rank") {
|
|
1914
|
+
return `Order.rank(${JSON.stringify(o.direction)})`;
|
|
1915
|
+
} else {
|
|
1916
|
+
return `Order.property(${JSON.stringify(o.property)}, ${JSON.stringify(o.direction)})`;
|
|
1917
|
+
}
|
|
1918
|
+
});
|
|
1919
|
+
return `${prettyQuery(query.query)}.orderBy(${orders.join(", ")})`;
|
|
1920
|
+
}
|
|
1921
|
+
case "options": {
|
|
1922
|
+
const opts = query.options;
|
|
1923
|
+
const parts = [];
|
|
1924
|
+
if (opts.deleted !== void 0) {
|
|
1925
|
+
parts.push(`deleted: ${JSON.stringify(opts.deleted)}`);
|
|
1926
|
+
}
|
|
1927
|
+
if (opts.debugLabel !== void 0) {
|
|
1928
|
+
parts.push(`debugLabel: ${JSON.stringify(opts.debugLabel)}`);
|
|
1929
|
+
}
|
|
1930
|
+
return `${prettyQuery(query.query)}.options({ ${parts.join(", ")} })`;
|
|
1931
|
+
}
|
|
1932
|
+
case "from": {
|
|
1933
|
+
if (query.from._tag === "scope") {
|
|
1934
|
+
const scope = query.from.scope;
|
|
1935
|
+
const parts = [];
|
|
1936
|
+
if (scope.spaceIds !== void 0) {
|
|
1937
|
+
parts.push(`spaceIds: [${scope.spaceIds.map((s) => JSON.stringify(s)).join(", ")}]`);
|
|
1938
|
+
}
|
|
1939
|
+
if (scope.queues !== void 0) {
|
|
1940
|
+
parts.push(`queues: [${scope.queues.map(String).join(", ")}]`);
|
|
1941
|
+
}
|
|
1942
|
+
if (scope.allQueuesFromSpaces !== void 0) {
|
|
1943
|
+
parts.push(`allQueuesFromSpaces: ${scope.allQueuesFromSpaces}`);
|
|
1944
|
+
}
|
|
1945
|
+
return `${prettyQuery(query.query)}.from({ ${parts.join(", ")} })`;
|
|
1946
|
+
}
|
|
1947
|
+
return `${prettyQuery(query.query)}.from(${prettyQuery(query.from.query)})`;
|
|
1948
|
+
}
|
|
1949
|
+
case "limit":
|
|
1950
|
+
return `${prettyQuery(query.query)}.limit(${query.limit})`;
|
|
1951
|
+
}
|
|
1952
|
+
};
|
|
1953
|
+
|
|
2184
1954
|
// src/internal/Type/echo-schema.ts
|
|
2185
1955
|
import * as Schema13 from "effect/Schema";
|
|
2186
1956
|
import * as SchemaAST8 from "effect/SchemaAST";
|
|
@@ -2198,15 +1968,7 @@ var addFieldsToSchema = (schema, fields) => {
|
|
|
2198
1968
|
};
|
|
2199
1969
|
var updateFieldsInSchema = (schema, fields) => {
|
|
2200
1970
|
const ast = schema.ast;
|
|
2201
|
-
invariant16(SchemaAST7.isTypeLiteral(ast), void 0, {
|
|
2202
|
-
F: __dxlog_file16,
|
|
2203
|
-
L: 29,
|
|
2204
|
-
S: void 0,
|
|
2205
|
-
A: [
|
|
2206
|
-
"SchemaAST.isTypeLiteral(ast)",
|
|
2207
|
-
""
|
|
2208
|
-
]
|
|
2209
|
-
});
|
|
1971
|
+
invariant16(SchemaAST7.isTypeLiteral(ast), void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file16, L: 16, S: void 0, A: ["SchemaAST.isTypeLiteral(ast)", ""] });
|
|
2210
1972
|
const updatedProperties = [
|
|
2211
1973
|
...ast.propertySignatures
|
|
2212
1974
|
];
|
|
@@ -2226,28 +1988,12 @@ var removeFieldsFromSchema = (schema, fieldNames) => {
|
|
|
2226
1988
|
};
|
|
2227
1989
|
var updateFieldNameInSchema = (schema, { before, after }) => {
|
|
2228
1990
|
const ast = schema.ast;
|
|
2229
|
-
invariant16(SchemaAST7.isTypeLiteral(ast), void 0, {
|
|
2230
|
-
F: __dxlog_file16,
|
|
2231
|
-
L: 57,
|
|
2232
|
-
S: void 0,
|
|
2233
|
-
A: [
|
|
2234
|
-
"SchemaAST.isTypeLiteral(ast)",
|
|
2235
|
-
""
|
|
2236
|
-
]
|
|
2237
|
-
});
|
|
1991
|
+
invariant16(SchemaAST7.isTypeLiteral(ast), void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file16, L: 36, S: void 0, A: ["SchemaAST.isTypeLiteral(ast)", ""] });
|
|
2238
1992
|
return Schema11.make(new SchemaAST7.TypeLiteral(ast.propertySignatures.map((p) => p.name === before ? new SchemaAST7.PropertySignature(after, p.type, p.isOptional, p.isReadonly, p.annotations) : p), ast.indexSignatures, ast.annotations));
|
|
2239
1993
|
};
|
|
2240
1994
|
var setTypenameInSchema = (schema, typename) => {
|
|
2241
1995
|
const existingAnnotation = schema.ast.annotations[TypeAnnotationId];
|
|
2242
|
-
invariant16(existingAnnotation, `Missing ${String(TypeAnnotationId)}`, {
|
|
2243
|
-
F: __dxlog_file16,
|
|
2244
|
-
L: 77,
|
|
2245
|
-
S: void 0,
|
|
2246
|
-
A: [
|
|
2247
|
-
"existingAnnotation",
|
|
2248
|
-
"`Missing ${String(TypeAnnotationId)}`"
|
|
2249
|
-
]
|
|
2250
|
-
});
|
|
1996
|
+
invariant16(existingAnnotation, `Missing ${String(TypeAnnotationId)}`, { "~LogMeta": "~LogMeta", F: __dxlog_file16, L: 41, S: void 0, A: ["existingAnnotation", "`Missing ${String(TypeAnnotationId)}`"] });
|
|
2251
1997
|
return schema.annotations({
|
|
2252
1998
|
...schema.ast.annotations,
|
|
2253
1999
|
[TypeAnnotationId]: {
|
|
@@ -2276,8 +2022,8 @@ var PersistentSchema = Schema12.Struct({
|
|
|
2276
2022
|
}), LabelAnnotation.set([
|
|
2277
2023
|
"name"
|
|
2278
2024
|
]), IconAnnotation.set({
|
|
2279
|
-
icon: "ph--
|
|
2280
|
-
hue: "
|
|
2025
|
+
icon: "ph--database--regular",
|
|
2026
|
+
hue: "green"
|
|
2281
2027
|
}));
|
|
2282
2028
|
|
|
2283
2029
|
// src/internal/Type/echo-schema.ts
|
|
@@ -2288,15 +2034,7 @@ var ImmutableSchema = class {
|
|
|
2288
2034
|
constructor(_schema) {
|
|
2289
2035
|
this._schema = _schema;
|
|
2290
2036
|
this._objectAnnotation = getTypeAnnotation(this._schema);
|
|
2291
|
-
invariant17(this._objectAnnotation, void 0, {
|
|
2292
|
-
F: __dxlog_file17,
|
|
2293
|
-
L: 49,
|
|
2294
|
-
S: this,
|
|
2295
|
-
A: [
|
|
2296
|
-
"this._objectAnnotation",
|
|
2297
|
-
""
|
|
2298
|
-
]
|
|
2299
|
-
});
|
|
2037
|
+
invariant17(this._objectAnnotation, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file17, L: 24, S: this, A: ["this._objectAnnotation", ""] });
|
|
2300
2038
|
}
|
|
2301
2039
|
//
|
|
2302
2040
|
// Effect Schema (push to abstract base class).
|
|
@@ -2450,15 +2188,7 @@ var EchoSchema = class extends EchoSchemaConstructor() {
|
|
|
2450
2188
|
* Returns a mutable schema.
|
|
2451
2189
|
*/
|
|
2452
2190
|
get mutable() {
|
|
2453
|
-
invariant17(!this.readonly, "Schema is not mutable", {
|
|
2454
|
-
F: __dxlog_file17,
|
|
2455
|
-
L: 279,
|
|
2456
|
-
S: this,
|
|
2457
|
-
A: [
|
|
2458
|
-
"!this.readonly",
|
|
2459
|
-
"'Schema is not mutable'"
|
|
2460
|
-
]
|
|
2461
|
-
});
|
|
2191
|
+
invariant17(!this.readonly, "Schema is not mutable", { "~LogMeta": "~LogMeta", F: __dxlog_file17, L: 203, S: this, A: ["!this.readonly", "'Schema is not mutable'"] });
|
|
2462
2192
|
return this;
|
|
2463
2193
|
}
|
|
2464
2194
|
//
|
|
@@ -2491,15 +2221,7 @@ var EchoSchema = class extends EchoSchemaConstructor() {
|
|
|
2491
2221
|
}
|
|
2492
2222
|
getProperties() {
|
|
2493
2223
|
const ast = this._getSchema().ast;
|
|
2494
|
-
invariant17(SchemaAST8.isTypeLiteral(ast), void 0, {
|
|
2495
|
-
F: __dxlog_file17,
|
|
2496
|
-
L: 314,
|
|
2497
|
-
S: this,
|
|
2498
|
-
A: [
|
|
2499
|
-
"SchemaAST.isTypeLiteral(ast)",
|
|
2500
|
-
""
|
|
2501
|
-
]
|
|
2502
|
-
});
|
|
2224
|
+
invariant17(SchemaAST8.isTypeLiteral(ast), void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file17, L: 233, S: this, A: ["SchemaAST.isTypeLiteral(ast)", ""] });
|
|
2503
2225
|
return [
|
|
2504
2226
|
...ast.propertySignatures
|
|
2505
2227
|
].filter((p) => p.name !== "id").map(unwrapOptionality);
|
|
@@ -2559,7 +2281,7 @@ var EchoSchema = class extends EchoSchemaConstructor() {
|
|
|
2559
2281
|
});
|
|
2560
2282
|
}
|
|
2561
2283
|
/**
|
|
2562
|
-
* Wrapper for Obj.
|
|
2284
|
+
* Wrapper for Obj.update that handles the change context for the persistent schema.
|
|
2563
2285
|
*/
|
|
2564
2286
|
_change(callback) {
|
|
2565
2287
|
const changeFn = this._persistentSchema[ChangeId];
|
|
@@ -2695,6 +2417,8 @@ export {
|
|
|
2695
2417
|
setValue,
|
|
2696
2418
|
getSnapshot,
|
|
2697
2419
|
clone,
|
|
2420
|
+
prettyFilter,
|
|
2421
|
+
prettyQuery,
|
|
2698
2422
|
addFieldsToSchema,
|
|
2699
2423
|
updateFieldsInSchema,
|
|
2700
2424
|
removeFieldsFromSchema,
|
|
@@ -2709,4 +2433,4 @@ export {
|
|
|
2709
2433
|
getValue,
|
|
2710
2434
|
splitJsonPath
|
|
2711
2435
|
};
|
|
2712
|
-
//# sourceMappingURL=chunk-
|
|
2436
|
+
//# sourceMappingURL=chunk-SJKBWMJY.mjs.map
|