@dxos/echo 0.10.0 → 0.11.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/Annotation.mjs +3 -0
- package/dist/lib/Blob.mjs +160 -0
- package/dist/lib/Blob.mjs.map +1 -0
- package/dist/lib/Database.mjs +2 -0
- package/dist/lib/Entity.mjs +231 -0
- package/dist/lib/Entity.mjs.map +1 -0
- package/dist/lib/Err.mjs +105 -0
- package/dist/lib/Err.mjs.map +1 -0
- package/dist/lib/Feed.mjs +338 -0
- package/dist/lib/Feed.mjs.map +1 -0
- package/dist/lib/Filter.mjs +380 -0
- package/dist/lib/Filter.mjs.map +1 -0
- package/dist/lib/Format.mjs +47 -0
- package/dist/lib/Format.mjs.map +1 -0
- package/dist/lib/JsonSchema.mjs +21 -0
- package/dist/lib/JsonSchema.mjs.map +1 -0
- package/dist/lib/Key.mjs +15 -0
- package/dist/lib/Key.mjs.map +1 -0
- package/dist/lib/Migration.mjs +38 -0
- package/dist/lib/Migration.mjs.map +1 -0
- package/dist/lib/Obj.mjs +660 -0
- package/dist/lib/Obj.mjs.map +1 -0
- package/dist/lib/Order.mjs +65 -0
- package/dist/lib/Order.mjs.map +1 -0
- package/dist/lib/Query.mjs +336 -0
- package/dist/lib/Query.mjs.map +1 -0
- package/dist/lib/QueryResult.mjs +7 -0
- package/dist/lib/QueryResult.mjs.map +1 -0
- package/dist/lib/Ref.mjs +44 -0
- package/dist/lib/Ref.mjs.map +1 -0
- package/dist/lib/Registry.mjs +35 -0
- package/dist/lib/Registry.mjs.map +1 -0
- package/dist/lib/Relation.mjs +397 -0
- package/dist/lib/Relation.mjs.map +1 -0
- package/dist/lib/Scope.mjs +51 -0
- package/dist/lib/Scope.mjs.map +1 -0
- package/dist/lib/Tag.mjs +70 -0
- package/dist/lib/Tag.mjs.map +1 -0
- package/dist/lib/Text.mjs +82 -0
- package/dist/lib/Text.mjs.map +1 -0
- package/dist/lib/Type.mjs +371 -0
- package/dist/lib/Type.mjs.map +1 -0
- package/dist/lib/chunk-Annotation.mjs +221 -0
- package/dist/lib/chunk-Annotation.mjs.map +1 -0
- package/dist/lib/chunk-Database.mjs +918 -0
- package/dist/lib/chunk-Database.mjs.map +1 -0
- package/dist/lib/chunk-atom-snapshot.mjs +249 -0
- package/dist/lib/chunk-atom-snapshot.mjs.map +1 -0
- package/dist/lib/chunk-internal.mjs +2775 -0
- package/dist/lib/chunk-internal.mjs.map +1 -0
- package/dist/lib/chunk-json-schema.mjs +660 -0
- package/dist/lib/chunk-json-schema.mjs.map +1 -0
- package/dist/lib/chunk-number.mjs +164 -0
- package/dist/lib/chunk-number.mjs.map +1 -0
- package/dist/lib/chunk-ref-array.mjs +31 -0
- package/dist/lib/chunk-ref-array.mjs.map +1 -0
- package/dist/lib/chunk-ref.mjs +590 -0
- package/dist/lib/chunk-ref.mjs.map +1 -0
- package/dist/lib/chunk-rolldown-runtime.mjs +13 -0
- package/dist/lib/chunk-select.mjs +186 -0
- package/dist/lib/chunk-select.mjs.map +1 -0
- package/dist/lib/chunk-src.mjs +234 -0
- package/dist/lib/chunk-src.mjs.map +1 -0
- package/dist/lib/chunk-util.mjs +140 -0
- package/dist/lib/chunk-util.mjs.map +1 -0
- package/dist/lib/index.mjs +24 -0
- package/dist/lib/internal.mjs +10 -0
- package/dist/lib/testing.mjs +346 -0
- package/dist/lib/testing.mjs.map +1 -0
- package/dist/types/src/Aggregate.d.ts +86 -0
- package/dist/types/src/Aggregate.d.ts.map +1 -0
- package/dist/types/src/Blob.d.ts +153 -0
- package/dist/types/src/Blob.d.ts.map +1 -0
- package/dist/types/src/Blob.test.d.ts +2 -0
- package/dist/types/src/Blob.test.d.ts.map +1 -0
- package/dist/types/src/Database.d.ts +153 -4
- package/dist/types/src/Database.d.ts.map +1 -1
- package/dist/types/src/Err.d.ts +116 -0
- package/dist/types/src/Err.d.ts.map +1 -1
- package/dist/types/src/Feed.d.ts +116 -28
- package/dist/types/src/Feed.d.ts.map +1 -1
- package/dist/types/src/Feed.test.d.ts +2 -0
- package/dist/types/src/Feed.test.d.ts.map +1 -0
- package/dist/types/src/Filter.d.ts +14 -6
- package/dist/types/src/Filter.d.ts.map +1 -1
- package/dist/types/src/Hypergraph.d.ts +18 -0
- package/dist/types/src/Hypergraph.d.ts.map +1 -1
- package/dist/types/src/Json.d.ts.map +1 -1
- package/dist/types/src/Obj.d.ts +14 -1
- package/dist/types/src/Obj.d.ts.map +1 -1
- package/dist/types/src/Order.d.ts +9 -3
- package/dist/types/src/Order.d.ts.map +1 -1
- package/dist/types/src/Query.d.ts +107 -26
- package/dist/types/src/Query.d.ts.map +1 -1
- package/dist/types/src/Relation.d.ts +6 -0
- package/dist/types/src/Relation.d.ts.map +1 -1
- package/dist/types/src/Type.d.ts.map +1 -1
- package/dist/types/src/View.d.ts +1 -1
- package/dist/types/src/index.d.ts +2 -0
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/internal/Entity/api.d.ts +6 -0
- package/dist/types/src/internal/Entity/api.d.ts.map +1 -1
- package/dist/types/src/internal/Entity/model.d.ts +3 -2
- package/dist/types/src/internal/Entity/model.d.ts.map +1 -1
- package/dist/types/src/internal/Filter/match.d.ts.map +1 -1
- package/dist/types/src/internal/JsonSchema/json-schema-type.d.ts +34 -8
- package/dist/types/src/internal/JsonSchema/json-schema-type.d.ts.map +1 -1
- package/dist/types/src/internal/JsonSchema/json-schema.d.ts.map +1 -1
- package/dist/types/src/internal/Obj/atoms.d.ts.map +1 -1
- package/dist/types/src/internal/Obj/json-serializer.d.ts.map +1 -1
- package/dist/types/src/internal/Query/pretty.d.ts.map +1 -1
- package/dist/types/src/internal/Query/query-result-effect.d.ts.map +1 -1
- package/dist/types/src/internal/common/proxy/make-object.d.ts +13 -0
- package/dist/types/src/internal/common/proxy/make-object.d.ts.map +1 -1
- package/dist/types/src/internal/common/proxy/reactive.d.ts.map +1 -1
- package/dist/types/src/internal/common/proxy/symbols.d.ts.map +1 -1
- package/dist/types/src/internal/common/proxy/typed-handler.d.ts +12 -0
- package/dist/types/src/internal/common/proxy/typed-handler.d.ts.map +1 -1
- package/dist/types/src/internal/common/types/index.d.ts +1 -0
- package/dist/types/src/internal/common/types/index.d.ts.map +1 -1
- package/dist/types/src/internal/common/types/model-symbols.d.ts +5 -0
- package/dist/types/src/internal/common/types/model-symbols.d.ts.map +1 -1
- package/dist/types/src/internal/common/types/projection.d.ts +32 -0
- package/dist/types/src/internal/common/types/projection.d.ts.map +1 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +40 -35
- package/src/Aggregate.ts +105 -0
- package/src/Blob.test.ts +45 -0
- package/src/Blob.ts +205 -0
- package/src/Database.ts +207 -17
- package/src/Err.ts +36 -0
- package/src/Feed.test.ts +188 -0
- package/src/Feed.ts +238 -62
- package/src/Filter.ts +28 -10
- package/src/Hypergraph.ts +18 -0
- package/src/Json.ts +1 -0
- package/src/Obj.test.ts +2 -2
- package/src/Obj.ts +21 -1
- package/src/Order.ts +16 -9
- package/src/Query.test.ts +319 -2
- package/src/Query.ts +165 -51
- package/src/Relation.ts +14 -0
- package/src/Type.ts +5 -6
- package/src/index.ts +2 -0
- package/src/internal/Entity/api.ts +11 -1
- package/src/internal/Entity/model.ts +3 -0
- package/src/internal/Filter/match.ts +30 -1
- package/src/internal/JsonSchema/json-schema-type.ts +14 -2
- package/src/internal/JsonSchema/json-schema.test.ts +28 -1
- package/src/internal/JsonSchema/json-schema.ts +33 -6
- package/src/internal/Obj/atoms.ts +4 -2
- package/src/internal/Obj/json-serializer.test.ts +162 -2
- package/src/internal/Obj/json-serializer.ts +6 -0
- package/src/internal/Query/pretty.ts +19 -1
- package/src/internal/Query/query-result-effect.ts +2 -4
- package/src/internal/Ref/atoms.ts +1 -1
- package/src/internal/common/proxy/change-context.ts +1 -1
- package/src/internal/common/proxy/make-object.ts +42 -3
- package/src/internal/common/proxy/reactive.ts +5 -0
- package/src/internal/common/proxy/symbols.ts +1 -0
- package/src/internal/common/proxy/typed-handler.ts +71 -29
- package/src/internal/common/types/index.ts +1 -0
- package/src/internal/common/types/model-symbols.ts +6 -0
- package/src/internal/common/types/projection.ts +45 -0
- package/src/testing/test-data.ts +14 -14
- package/dist/lib/neutral/Annotation.mjs +0 -90
- package/dist/lib/neutral/Annotation.mjs.map +0 -7
- package/dist/lib/neutral/Database.mjs +0 -42
- package/dist/lib/neutral/Database.mjs.map +0 -7
- package/dist/lib/neutral/Entity.mjs +0 -76
- package/dist/lib/neutral/Entity.mjs.map +0 -7
- package/dist/lib/neutral/Err.mjs +0 -16
- package/dist/lib/neutral/Err.mjs.map +0 -7
- package/dist/lib/neutral/Feed.mjs +0 -50
- package/dist/lib/neutral/Feed.mjs.map +0 -7
- package/dist/lib/neutral/Filter.mjs +0 -72
- package/dist/lib/neutral/Filter.mjs.map +0 -7
- package/dist/lib/neutral/Format.mjs +0 -82
- package/dist/lib/neutral/Format.mjs.map +0 -7
- package/dist/lib/neutral/JsonSchema.mjs +0 -18
- package/dist/lib/neutral/JsonSchema.mjs.map +0 -7
- package/dist/lib/neutral/Key.mjs +0 -16
- package/dist/lib/neutral/Key.mjs.map +0 -7
- package/dist/lib/neutral/Migration.mjs +0 -18
- package/dist/lib/neutral/Migration.mjs.map +0 -7
- package/dist/lib/neutral/Obj.mjs +0 -128
- package/dist/lib/neutral/Obj.mjs.map +0 -7
- package/dist/lib/neutral/Order.mjs +0 -16
- package/dist/lib/neutral/Order.mjs.map +0 -7
- package/dist/lib/neutral/Query.mjs +0 -38
- package/dist/lib/neutral/Query.mjs.map +0 -7
- package/dist/lib/neutral/QueryResult.mjs +0 -2
- package/dist/lib/neutral/QueryResult.mjs.map +0 -7
- package/dist/lib/neutral/Ref.mjs +0 -25
- package/dist/lib/neutral/Ref.mjs.map +0 -7
- package/dist/lib/neutral/Registry.mjs +0 -14
- package/dist/lib/neutral/Registry.mjs.map +0 -7
- package/dist/lib/neutral/Relation.mjs +0 -97
- package/dist/lib/neutral/Relation.mjs.map +0 -7
- package/dist/lib/neutral/Scope.mjs +0 -12
- package/dist/lib/neutral/Scope.mjs.map +0 -7
- package/dist/lib/neutral/Tag.mjs +0 -32
- package/dist/lib/neutral/Tag.mjs.map +0 -7
- package/dist/lib/neutral/Text.mjs +0 -25
- package/dist/lib/neutral/Text.mjs.map +0 -7
- package/dist/lib/neutral/Type.mjs +0 -65
- package/dist/lib/neutral/Type.mjs.map +0 -7
- package/dist/lib/neutral/chunk-2HKGAQM4.mjs +0 -1394
- package/dist/lib/neutral/chunk-2HKGAQM4.mjs.map +0 -7
- package/dist/lib/neutral/chunk-2ZHECXUR.mjs +0 -95
- package/dist/lib/neutral/chunk-2ZHECXUR.mjs.map +0 -7
- package/dist/lib/neutral/chunk-3KTE2Y7Q.mjs +0 -336
- package/dist/lib/neutral/chunk-3KTE2Y7Q.mjs.map +0 -7
- package/dist/lib/neutral/chunk-3TN2VMI4.mjs +0 -714
- package/dist/lib/neutral/chunk-3TN2VMI4.mjs.map +0 -7
- package/dist/lib/neutral/chunk-42L4HJ3Z.mjs +0 -104
- package/dist/lib/neutral/chunk-42L4HJ3Z.mjs.map +0 -7
- package/dist/lib/neutral/chunk-4A2NWKRJ.mjs +0 -747
- package/dist/lib/neutral/chunk-4A2NWKRJ.mjs.map +0 -7
- package/dist/lib/neutral/chunk-7LOUAPYZ.mjs +0 -25
- package/dist/lib/neutral/chunk-7LOUAPYZ.mjs.map +0 -7
- package/dist/lib/neutral/chunk-ACFAOTKJ.mjs +0 -1531
- package/dist/lib/neutral/chunk-ACFAOTKJ.mjs.map +0 -7
- package/dist/lib/neutral/chunk-BEFR7LEA.mjs +0 -170
- package/dist/lib/neutral/chunk-BEFR7LEA.mjs.map +0 -7
- package/dist/lib/neutral/chunk-BXIKXT7Q.mjs +0 -89
- package/dist/lib/neutral/chunk-BXIKXT7Q.mjs.map +0 -7
- package/dist/lib/neutral/chunk-C57XMMBY.mjs +0 -206
- package/dist/lib/neutral/chunk-C57XMMBY.mjs.map +0 -7
- package/dist/lib/neutral/chunk-C62JYFAD.mjs +0 -183
- package/dist/lib/neutral/chunk-C62JYFAD.mjs.map +0 -7
- package/dist/lib/neutral/chunk-FSGX2R62.mjs +0 -48
- package/dist/lib/neutral/chunk-FSGX2R62.mjs.map +0 -7
- package/dist/lib/neutral/chunk-HBXT3GSB.mjs +0 -459
- package/dist/lib/neutral/chunk-HBXT3GSB.mjs.map +0 -7
- package/dist/lib/neutral/chunk-IQR45HAD.mjs +0 -31
- package/dist/lib/neutral/chunk-IQR45HAD.mjs.map +0 -7
- package/dist/lib/neutral/chunk-J5LGTIGS.mjs +0 -10
- package/dist/lib/neutral/chunk-J5LGTIGS.mjs.map +0 -7
- package/dist/lib/neutral/chunk-KCBW4BR6.mjs +0 -424
- package/dist/lib/neutral/chunk-KCBW4BR6.mjs.map +0 -7
- package/dist/lib/neutral/chunk-L3E5IXAE.mjs +0 -575
- package/dist/lib/neutral/chunk-L3E5IXAE.mjs.map +0 -7
- package/dist/lib/neutral/chunk-PRC4FEKJ.mjs +0 -56
- package/dist/lib/neutral/chunk-PRC4FEKJ.mjs.map +0 -7
- package/dist/lib/neutral/chunk-SCT6FFCR.mjs +0 -351
- package/dist/lib/neutral/chunk-SCT6FFCR.mjs.map +0 -7
- package/dist/lib/neutral/chunk-TOCVVFK2.mjs +0 -75
- package/dist/lib/neutral/chunk-TOCVVFK2.mjs.map +0 -7
- package/dist/lib/neutral/chunk-U53LSQQA.mjs +0 -41
- package/dist/lib/neutral/chunk-U53LSQQA.mjs.map +0 -7
- package/dist/lib/neutral/chunk-UGFFV2FR.mjs +0 -27
- package/dist/lib/neutral/chunk-UGFFV2FR.mjs.map +0 -7
- package/dist/lib/neutral/chunk-UWLP4RFM.mjs +0 -7
- package/dist/lib/neutral/chunk-UWLP4RFM.mjs.map +0 -7
- package/dist/lib/neutral/chunk-UZHCQ6NI.mjs +0 -283
- package/dist/lib/neutral/chunk-UZHCQ6NI.mjs.map +0 -7
- package/dist/lib/neutral/chunk-WISOH2XH.mjs +0 -36
- package/dist/lib/neutral/chunk-WISOH2XH.mjs.map +0 -7
- package/dist/lib/neutral/chunk-WKIT2YY5.mjs +0 -34
- package/dist/lib/neutral/chunk-WKIT2YY5.mjs.map +0 -7
- package/dist/lib/neutral/chunk-XB6ISRAO.mjs +0 -271
- package/dist/lib/neutral/chunk-XB6ISRAO.mjs.map +0 -7
- package/dist/lib/neutral/chunk-XXL42WCB.mjs +0 -84
- package/dist/lib/neutral/chunk-XXL42WCB.mjs.map +0 -7
- package/dist/lib/neutral/chunk-XXWK4J53.mjs +0 -117
- package/dist/lib/neutral/chunk-XXWK4J53.mjs.map +0 -7
- package/dist/lib/neutral/index.mjs +0 -115
- package/dist/lib/neutral/index.mjs.map +0 -7
- package/dist/lib/neutral/internal/index.mjs +0 -581
- package/dist/lib/neutral/internal/index.mjs.map +0 -7
- package/dist/lib/neutral/meta.json +0 -1
- package/dist/lib/neutral/testing/index.mjs +0 -477
- package/dist/lib/neutral/testing/index.mjs.map +0 -7
|
@@ -1,477 +0,0 @@
|
|
|
1
|
-
import "../chunk-C57XMMBY.mjs";
|
|
2
|
-
import "../chunk-UWLP4RFM.mjs";
|
|
3
|
-
import "../chunk-3KTE2Y7Q.mjs";
|
|
4
|
-
import "../chunk-42L4HJ3Z.mjs";
|
|
5
|
-
import "../chunk-XXL42WCB.mjs";
|
|
6
|
-
import "../chunk-PRC4FEKJ.mjs";
|
|
7
|
-
import "../chunk-7LOUAPYZ.mjs";
|
|
8
|
-
import "../chunk-U53LSQQA.mjs";
|
|
9
|
-
import "../chunk-XXWK4J53.mjs";
|
|
10
|
-
import "../chunk-SCT6FFCR.mjs";
|
|
11
|
-
import "../chunk-BXIKXT7Q.mjs";
|
|
12
|
-
import "../chunk-UZHCQ6NI.mjs";
|
|
13
|
-
import {
|
|
14
|
-
Service,
|
|
15
|
-
TypeId
|
|
16
|
-
} from "../chunk-IQR45HAD.mjs";
|
|
17
|
-
import "../chunk-WISOH2XH.mjs";
|
|
18
|
-
import "../chunk-UGFFV2FR.mjs";
|
|
19
|
-
import {
|
|
20
|
-
Unknown
|
|
21
|
-
} from "../chunk-HBXT3GSB.mjs";
|
|
22
|
-
import {
|
|
23
|
-
Ref
|
|
24
|
-
} from "../chunk-FSGX2R62.mjs";
|
|
25
|
-
import "../chunk-BEFR7LEA.mjs";
|
|
26
|
-
import {
|
|
27
|
-
Type_exports,
|
|
28
|
-
makeObject as makeObject2,
|
|
29
|
-
makeRelation
|
|
30
|
-
} from "../chunk-XB6ISRAO.mjs";
|
|
31
|
-
import {
|
|
32
|
-
TypeSchema
|
|
33
|
-
} from "../chunk-ACFAOTKJ.mjs";
|
|
34
|
-
import "../chunk-WKIT2YY5.mjs";
|
|
35
|
-
import "../chunk-C62JYFAD.mjs";
|
|
36
|
-
import {
|
|
37
|
-
makeObject
|
|
38
|
-
} from "../chunk-2HKGAQM4.mjs";
|
|
39
|
-
import {
|
|
40
|
-
toJsonSchema
|
|
41
|
-
} from "../chunk-4A2NWKRJ.mjs";
|
|
42
|
-
import "../chunk-KCBW4BR6.mjs";
|
|
43
|
-
import {
|
|
44
|
-
subscribe
|
|
45
|
-
} from "../chunk-L3E5IXAE.mjs";
|
|
46
|
-
import {
|
|
47
|
-
getSchemaTypename
|
|
48
|
-
} from "../chunk-3TN2VMI4.mjs";
|
|
49
|
-
import {
|
|
50
|
-
getStaticTypeSchema
|
|
51
|
-
} from "../chunk-2ZHECXUR.mjs";
|
|
52
|
-
import "../chunk-TOCVVFK2.mjs";
|
|
53
|
-
import "../chunk-J5LGTIGS.mjs";
|
|
54
|
-
|
|
55
|
-
// src/testing/registry.ts
|
|
56
|
-
import * as Atom from "@effect-atom/atom/Atom";
|
|
57
|
-
import * as Layer from "effect/Layer";
|
|
58
|
-
import { Event } from "@dxos/async";
|
|
59
|
-
var registryLayerNoop = Layer.succeed(Service, {
|
|
60
|
-
[TypeId]: TypeId,
|
|
61
|
-
id: "noop-registry",
|
|
62
|
-
changed: new Event(),
|
|
63
|
-
local: [],
|
|
64
|
-
add: () => {
|
|
65
|
-
},
|
|
66
|
-
remove: () => false,
|
|
67
|
-
clear: () => {
|
|
68
|
-
},
|
|
69
|
-
get: () => void 0,
|
|
70
|
-
getByURI: () => void 0,
|
|
71
|
-
list: () => [],
|
|
72
|
-
// QueryFn is an overloaded interface — a single generic function cannot satisfy both overload
|
|
73
|
-
// signatures without a cast. This is the intentional type-system boundary.
|
|
74
|
-
query: (_queryOrFilter) => ({
|
|
75
|
-
results: [],
|
|
76
|
-
entries: [],
|
|
77
|
-
run: async () => [],
|
|
78
|
-
runEntries: async () => [],
|
|
79
|
-
runSync: () => [],
|
|
80
|
-
runSyncEntries: () => [],
|
|
81
|
-
first: async () => {
|
|
82
|
-
throw new Error("registryLayerNoop: registry is empty");
|
|
83
|
-
},
|
|
84
|
-
firstOrUndefined: async () => void 0,
|
|
85
|
-
subscribe: () => () => {
|
|
86
|
-
},
|
|
87
|
-
atom: Atom.make(() => [])
|
|
88
|
-
})
|
|
89
|
-
});
|
|
90
|
-
|
|
91
|
-
// src/testing/test-data.ts
|
|
92
|
-
import { DatabaseDirectory, EntityStructure } from "@dxos/echo-protocol";
|
|
93
|
-
import { EID, EntityId, PublicKey } from "@dxos/keys";
|
|
94
|
-
|
|
95
|
-
// src/testing/test-schema.ts
|
|
96
|
-
import * as Schema from "effect/Schema";
|
|
97
|
-
import { DXN } from "@dxos/keys";
|
|
98
|
-
(function(TestSchema2) {
|
|
99
|
-
class Expando extends makeObject2(DXN.make("com.example.type.expando", "0.1.0"))(Schema.Struct({}, {
|
|
100
|
-
key: Schema.String,
|
|
101
|
-
value: Schema.Any
|
|
102
|
-
})) {
|
|
103
|
-
}
|
|
104
|
-
TestSchema2.Expando = Expando;
|
|
105
|
-
const Nested = Schema.Struct({
|
|
106
|
-
field: Schema.String
|
|
107
|
-
});
|
|
108
|
-
class TestClass {
|
|
109
|
-
field = "value";
|
|
110
|
-
toJSON() {
|
|
111
|
-
return {
|
|
112
|
-
field: this.field
|
|
113
|
-
};
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
TestSchema2.TestClass = TestClass;
|
|
117
|
-
TestSchema2.ExampleSchema = Schema.Struct({
|
|
118
|
-
string: Schema.String,
|
|
119
|
-
number: Schema.Number,
|
|
120
|
-
boolean: Schema.Boolean,
|
|
121
|
-
null: Schema.Null,
|
|
122
|
-
undefined: Schema.Undefined,
|
|
123
|
-
stringArray: Schema.Array(Schema.String),
|
|
124
|
-
twoDimNumberArray: Schema.Array(Schema.Array(Schema.Number)),
|
|
125
|
-
nested: Nested,
|
|
126
|
-
nestedArray: Schema.Array(Nested),
|
|
127
|
-
nestedNullableArray: Schema.Array(Schema.Union(Nested, Schema.Null)),
|
|
128
|
-
reference: Schema.suspend(() => Ref(Example)),
|
|
129
|
-
referenceArray: Schema.Array(Schema.suspend(() => Ref(Example))),
|
|
130
|
-
classInstance: Schema.instanceOf(TestClass),
|
|
131
|
-
other: Schema.Any
|
|
132
|
-
}).pipe(Schema.partial);
|
|
133
|
-
class Example extends makeObject2(DXN.make("com.example.type.example", "0.1.0"))(TestSchema2.ExampleSchema) {
|
|
134
|
-
}
|
|
135
|
-
TestSchema2.Example = Example;
|
|
136
|
-
TestSchema2.MessageStruct = Schema.Struct({
|
|
137
|
-
// TODO(burdon): Support S.Date; Custom Timestamp (with defaults).
|
|
138
|
-
// TODO(burdon): Support defaults (update create and create).
|
|
139
|
-
timestamp: Schema.String.pipe(Schema.propertySignature, Schema.withConstructorDefault(() => (/* @__PURE__ */ new Date()).toISOString()))
|
|
140
|
-
});
|
|
141
|
-
class Message extends makeObject2(DXN.make("com.example.type.message", "0.1.0"))(TestSchema2.MessageStruct) {
|
|
142
|
-
}
|
|
143
|
-
TestSchema2.Message = Message;
|
|
144
|
-
class Organization extends makeObject2(DXN.make("com.example.type.organization", "0.1.0"))(Schema.Struct({
|
|
145
|
-
name: Schema.String,
|
|
146
|
-
properties: Schema.optional(Schema.Record({
|
|
147
|
-
key: Schema.String,
|
|
148
|
-
value: Schema.String
|
|
149
|
-
}))
|
|
150
|
-
})) {
|
|
151
|
-
}
|
|
152
|
-
TestSchema2.Organization = Organization;
|
|
153
|
-
class Person extends makeObject2(DXN.make("com.example.type.person", "0.1.0"))(Schema.Struct({
|
|
154
|
-
name: Schema.String,
|
|
155
|
-
username: Schema.String,
|
|
156
|
-
email: Schema.String,
|
|
157
|
-
age: Schema.Number.pipe(Schema.optional),
|
|
158
|
-
tasks: Schema.Array(Schema.suspend(() => Ref(Task))),
|
|
159
|
-
employer: Schema.optional(Ref(Organization)),
|
|
160
|
-
address: Schema.Struct({
|
|
161
|
-
city: Schema.optional(Schema.String),
|
|
162
|
-
state: Schema.optional(Schema.String),
|
|
163
|
-
zip: Schema.optional(Schema.String),
|
|
164
|
-
coordinates: Schema.Struct({
|
|
165
|
-
lat: Schema.optional(Schema.Number),
|
|
166
|
-
lng: Schema.optional(Schema.Number)
|
|
167
|
-
})
|
|
168
|
-
}),
|
|
169
|
-
fields: Schema.Struct({
|
|
170
|
-
label: Schema.String,
|
|
171
|
-
value: Schema.String
|
|
172
|
-
}).pipe(Schema.Array, Schema.optional)
|
|
173
|
-
}).pipe(Schema.partial)) {
|
|
174
|
-
}
|
|
175
|
-
TestSchema2.Person = Person;
|
|
176
|
-
class Task extends makeObject2(DXN.make("com.example.type.task", "0.1.0"))(Schema.Struct({
|
|
177
|
-
title: Schema.optional(Schema.String),
|
|
178
|
-
deadline: Schema.optional(Schema.String),
|
|
179
|
-
completed: Schema.optional(Schema.Boolean),
|
|
180
|
-
assignee: Schema.optional(Ref(Person)),
|
|
181
|
-
previous: Schema.optional(Schema.suspend(() => Ref(Task))),
|
|
182
|
-
subTasks: Schema.optional(Schema.Array(Schema.suspend(() => Ref(Task)))),
|
|
183
|
-
description: Schema.optional(Schema.String)
|
|
184
|
-
}).pipe(Schema.partial)) {
|
|
185
|
-
}
|
|
186
|
-
TestSchema2.Task = Task;
|
|
187
|
-
class HasManager extends makeRelation(DXN.make("com.example.type.hasManager", "0.1.0"))({
|
|
188
|
-
source: Person,
|
|
189
|
-
target: Person
|
|
190
|
-
})(Schema.Struct({})) {
|
|
191
|
-
}
|
|
192
|
-
TestSchema2.HasManager = HasManager;
|
|
193
|
-
class EmployedBy extends makeRelation(DXN.make("com.example.type.employedBy", "0.1.0"))({
|
|
194
|
-
source: Person,
|
|
195
|
-
target: Organization
|
|
196
|
-
})(Schema.Struct({
|
|
197
|
-
role: Schema.String,
|
|
198
|
-
since: Schema.optional(Schema.String)
|
|
199
|
-
})) {
|
|
200
|
-
}
|
|
201
|
-
TestSchema2.EmployedBy = EmployedBy;
|
|
202
|
-
(function(RecordType) {
|
|
203
|
-
RecordType[RecordType["UNDEFINED"] = 0] = "UNDEFINED";
|
|
204
|
-
RecordType[RecordType["PERSONAL"] = 1] = "PERSONAL";
|
|
205
|
-
RecordType[RecordType["WORK"] = 2] = "WORK";
|
|
206
|
-
})(TestSchema2.RecordType || (TestSchema2.RecordType = {}));
|
|
207
|
-
class Container extends makeObject2(DXN.make("com.example.type.container", "0.1.0"))(Schema.Struct({
|
|
208
|
-
objects: Schema.Array(Ref(Unknown)),
|
|
209
|
-
records: Schema.Array(Schema.partial(Schema.Struct({
|
|
210
|
-
title: Schema.String,
|
|
211
|
-
description: Schema.String,
|
|
212
|
-
contacts: Schema.Array(Ref(Person)),
|
|
213
|
-
type: Schema.Enums(TestSchema2.RecordType)
|
|
214
|
-
})))
|
|
215
|
-
}).pipe(Schema.partial)) {
|
|
216
|
-
}
|
|
217
|
-
TestSchema2.Container = Container;
|
|
218
|
-
})(TestSchema || (TestSchema = {}));
|
|
219
|
-
var TestSchema;
|
|
220
|
-
|
|
221
|
-
// src/testing/test-data.ts
|
|
222
|
-
var cachedSpaceKeyHex;
|
|
223
|
-
var getSpaceKeyHex = () => {
|
|
224
|
-
if (cachedSpaceKeyHex === void 0) {
|
|
225
|
-
cachedSpaceKeyHex = PublicKey.random().toHex();
|
|
226
|
-
}
|
|
227
|
-
return cachedSpaceKeyHex;
|
|
228
|
-
};
|
|
229
|
-
var cachedPeopleAlice;
|
|
230
|
-
var cachedPeopleBob;
|
|
231
|
-
var cachedOrgsDxos;
|
|
232
|
-
var cachedOrgsCyberdyne;
|
|
233
|
-
var cachedWorksFredCyberdyne;
|
|
234
|
-
var cachedWorksAliceAperture;
|
|
235
|
-
var cachedTasksTask1;
|
|
236
|
-
var cachedTasksTask2;
|
|
237
|
-
var PEOPLE = {
|
|
238
|
-
get alice() {
|
|
239
|
-
if (cachedPeopleAlice === void 0) {
|
|
240
|
-
cachedPeopleAlice = DatabaseDirectory.make({
|
|
241
|
-
spaceKey: getSpaceKeyHex(),
|
|
242
|
-
objects: {
|
|
243
|
-
[EntityId.random()]: EntityStructure.makeObject({
|
|
244
|
-
type: Type_exports.getURI(TestSchema.Person),
|
|
245
|
-
data: {
|
|
246
|
-
name: "Alice"
|
|
247
|
-
}
|
|
248
|
-
})
|
|
249
|
-
}
|
|
250
|
-
});
|
|
251
|
-
}
|
|
252
|
-
return cachedPeopleAlice;
|
|
253
|
-
},
|
|
254
|
-
get bob() {
|
|
255
|
-
if (cachedPeopleBob === void 0) {
|
|
256
|
-
cachedPeopleBob = DatabaseDirectory.make({
|
|
257
|
-
spaceKey: getSpaceKeyHex(),
|
|
258
|
-
objects: {
|
|
259
|
-
[EntityId.random()]: EntityStructure.makeObject({
|
|
260
|
-
type: Type_exports.getURI(TestSchema.Person),
|
|
261
|
-
data: {
|
|
262
|
-
name: "Bob"
|
|
263
|
-
}
|
|
264
|
-
})
|
|
265
|
-
}
|
|
266
|
-
});
|
|
267
|
-
}
|
|
268
|
-
return cachedPeopleBob;
|
|
269
|
-
}
|
|
270
|
-
};
|
|
271
|
-
var ORGS = {
|
|
272
|
-
get dxos() {
|
|
273
|
-
if (cachedOrgsDxos === void 0) {
|
|
274
|
-
cachedOrgsDxos = DatabaseDirectory.make({
|
|
275
|
-
spaceKey: getSpaceKeyHex(),
|
|
276
|
-
objects: {
|
|
277
|
-
[EntityId.random()]: EntityStructure.makeObject({
|
|
278
|
-
type: Type_exports.getURI(TestSchema.Organization),
|
|
279
|
-
data: {
|
|
280
|
-
name: "DXOS",
|
|
281
|
-
founded: "2023"
|
|
282
|
-
}
|
|
283
|
-
})
|
|
284
|
-
}
|
|
285
|
-
});
|
|
286
|
-
}
|
|
287
|
-
return cachedOrgsDxos;
|
|
288
|
-
},
|
|
289
|
-
get cyberdyne() {
|
|
290
|
-
if (cachedOrgsCyberdyne === void 0) {
|
|
291
|
-
cachedOrgsCyberdyne = DatabaseDirectory.make({
|
|
292
|
-
spaceKey: getSpaceKeyHex(),
|
|
293
|
-
objects: {
|
|
294
|
-
[EntityId.random()]: EntityStructure.makeObject({
|
|
295
|
-
type: Type_exports.getURI(TestSchema.Organization),
|
|
296
|
-
data: {
|
|
297
|
-
name: "Cyberdyne Systems",
|
|
298
|
-
founded: "1984"
|
|
299
|
-
}
|
|
300
|
-
})
|
|
301
|
-
}
|
|
302
|
-
});
|
|
303
|
-
}
|
|
304
|
-
return cachedOrgsCyberdyne;
|
|
305
|
-
}
|
|
306
|
-
};
|
|
307
|
-
var WORKS_FOR = {
|
|
308
|
-
get fredWorksForCyberdyne() {
|
|
309
|
-
if (cachedWorksFredCyberdyne === void 0) {
|
|
310
|
-
cachedWorksFredCyberdyne = DatabaseDirectory.make({
|
|
311
|
-
spaceKey: getSpaceKeyHex(),
|
|
312
|
-
objects: {
|
|
313
|
-
[EntityId.random()]: EntityStructure.makeRelation({
|
|
314
|
-
type: Type_exports.getURI(TestSchema.EmployedBy),
|
|
315
|
-
source: {
|
|
316
|
-
"/": EID.make({
|
|
317
|
-
entityId: Object.keys(PEOPLE.bob.objects)[0]
|
|
318
|
-
})
|
|
319
|
-
},
|
|
320
|
-
target: {
|
|
321
|
-
"/": EID.make({
|
|
322
|
-
entityId: Object.keys(ORGS.cyberdyne.objects)[0]
|
|
323
|
-
})
|
|
324
|
-
},
|
|
325
|
-
data: {
|
|
326
|
-
since: "2020",
|
|
327
|
-
position: "Engineer"
|
|
328
|
-
}
|
|
329
|
-
})
|
|
330
|
-
}
|
|
331
|
-
});
|
|
332
|
-
}
|
|
333
|
-
return cachedWorksFredCyberdyne;
|
|
334
|
-
},
|
|
335
|
-
get aliceWorksForAperture() {
|
|
336
|
-
if (cachedWorksAliceAperture === void 0) {
|
|
337
|
-
cachedWorksAliceAperture = DatabaseDirectory.make({
|
|
338
|
-
spaceKey: getSpaceKeyHex(),
|
|
339
|
-
objects: {
|
|
340
|
-
[EntityId.random()]: EntityStructure.makeRelation({
|
|
341
|
-
type: Type_exports.getURI(TestSchema.EmployedBy),
|
|
342
|
-
source: {
|
|
343
|
-
"/": EID.make({
|
|
344
|
-
entityId: Object.keys(PEOPLE.alice.objects)[0]
|
|
345
|
-
})
|
|
346
|
-
},
|
|
347
|
-
target: {
|
|
348
|
-
"/": EID.make({
|
|
349
|
-
entityId: Object.keys(ORGS.dxos.objects)[0]
|
|
350
|
-
})
|
|
351
|
-
},
|
|
352
|
-
data: {
|
|
353
|
-
since: "2018",
|
|
354
|
-
position: "Research Scientist"
|
|
355
|
-
}
|
|
356
|
-
})
|
|
357
|
-
}
|
|
358
|
-
});
|
|
359
|
-
}
|
|
360
|
-
return cachedWorksAliceAperture;
|
|
361
|
-
}
|
|
362
|
-
};
|
|
363
|
-
var TASKS = {
|
|
364
|
-
get task1() {
|
|
365
|
-
if (cachedTasksTask1 === void 0) {
|
|
366
|
-
cachedTasksTask1 = DatabaseDirectory.make({
|
|
367
|
-
spaceKey: getSpaceKeyHex(),
|
|
368
|
-
objects: {
|
|
369
|
-
[EntityId.random()]: EntityStructure.makeObject({
|
|
370
|
-
type: Type_exports.getURI(TestSchema.Task),
|
|
371
|
-
data: {
|
|
372
|
-
title: "Complete project documentation",
|
|
373
|
-
description: "Write comprehensive documentation for the new system",
|
|
374
|
-
status: "in-progress",
|
|
375
|
-
dueDate: "2023-12-31",
|
|
376
|
-
assignee: {
|
|
377
|
-
"/": EID.make({
|
|
378
|
-
entityId: Object.keys(PEOPLE.bob.objects)[0]
|
|
379
|
-
})
|
|
380
|
-
}
|
|
381
|
-
}
|
|
382
|
-
})
|
|
383
|
-
}
|
|
384
|
-
});
|
|
385
|
-
}
|
|
386
|
-
return cachedTasksTask1;
|
|
387
|
-
},
|
|
388
|
-
get task2() {
|
|
389
|
-
if (cachedTasksTask2 === void 0) {
|
|
390
|
-
cachedTasksTask2 = DatabaseDirectory.make({
|
|
391
|
-
spaceKey: getSpaceKeyHex(),
|
|
392
|
-
objects: {
|
|
393
|
-
[EntityId.random()]: EntityStructure.makeObject({
|
|
394
|
-
type: Type_exports.getURI(TestSchema.Task),
|
|
395
|
-
data: {
|
|
396
|
-
title: "Run experiments",
|
|
397
|
-
description: "Conduct series of experiments on the portal device",
|
|
398
|
-
status: "pending",
|
|
399
|
-
dueDate: "2023-11-15",
|
|
400
|
-
assignee: {
|
|
401
|
-
"/": EID.make({
|
|
402
|
-
entityId: Object.keys(PEOPLE.alice.objects)[0]
|
|
403
|
-
})
|
|
404
|
-
}
|
|
405
|
-
}
|
|
406
|
-
})
|
|
407
|
-
}
|
|
408
|
-
});
|
|
409
|
-
}
|
|
410
|
-
return cachedTasksTask2;
|
|
411
|
-
}
|
|
412
|
-
};
|
|
413
|
-
|
|
414
|
-
// src/testing/util.ts
|
|
415
|
-
import { assertArgument } from "@dxos/invariant";
|
|
416
|
-
import { deepMapValues } from "@dxos/util";
|
|
417
|
-
var createEchoSchema = (schema, version = "0.1.0") => {
|
|
418
|
-
const jsonSchema = toJsonSchema(schema);
|
|
419
|
-
const typename = getSchemaTypename(schema);
|
|
420
|
-
assertArgument(typename, "typename", "Schema does not have a typename.");
|
|
421
|
-
return makeObject(getStaticTypeSchema(TypeSchema), {
|
|
422
|
-
jsonSchema
|
|
423
|
-
}, {
|
|
424
|
-
keys: [],
|
|
425
|
-
key: typename,
|
|
426
|
-
version
|
|
427
|
-
}, TypeSchema);
|
|
428
|
-
};
|
|
429
|
-
var prepareAstForCompare = (obj) => deepMapValues(obj, (value, recurse) => {
|
|
430
|
-
if (typeof value === "function") {
|
|
431
|
-
return null;
|
|
432
|
-
}
|
|
433
|
-
if (value instanceof RegExp) {
|
|
434
|
-
return value;
|
|
435
|
-
}
|
|
436
|
-
if (typeof value === "object") {
|
|
437
|
-
const clone = {
|
|
438
|
-
...value
|
|
439
|
-
};
|
|
440
|
-
for (const sym of Object.getOwnPropertySymbols(clone)) {
|
|
441
|
-
clone[sym.toString()] = clone[sym];
|
|
442
|
-
delete clone[sym];
|
|
443
|
-
}
|
|
444
|
-
return recurse(clone);
|
|
445
|
-
}
|
|
446
|
-
return recurse(value);
|
|
447
|
-
});
|
|
448
|
-
var updateCounter = (...objects) => {
|
|
449
|
-
let updateCount = 0;
|
|
450
|
-
const unsubscribes = objects.map((obj) => subscribe(obj, () => {
|
|
451
|
-
updateCount++;
|
|
452
|
-
}));
|
|
453
|
-
const unsubscribeAll = () => {
|
|
454
|
-
for (const unsub of unsubscribes) {
|
|
455
|
-
unsub();
|
|
456
|
-
}
|
|
457
|
-
};
|
|
458
|
-
return {
|
|
459
|
-
// https://github.com/tc39/proposal-explicit-resource-management
|
|
460
|
-
[Symbol.dispose]: unsubscribeAll,
|
|
461
|
-
get count() {
|
|
462
|
-
return updateCount;
|
|
463
|
-
}
|
|
464
|
-
};
|
|
465
|
-
};
|
|
466
|
-
export {
|
|
467
|
-
ORGS,
|
|
468
|
-
PEOPLE,
|
|
469
|
-
TASKS,
|
|
470
|
-
TestSchema,
|
|
471
|
-
WORKS_FOR,
|
|
472
|
-
createEchoSchema,
|
|
473
|
-
prepareAstForCompare,
|
|
474
|
-
registryLayerNoop,
|
|
475
|
-
updateCounter
|
|
476
|
-
};
|
|
477
|
-
//# sourceMappingURL=index.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/testing/registry.ts", "../../../../src/testing/test-data.ts", "../../../../src/testing/test-schema.ts", "../../../../src/testing/util.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2026 DXOS.org\n//\n\nimport * as Atom from '@effect-atom/atom/Atom';\nimport * as Layer from 'effect/Layer';\n\nimport { Event } from '@dxos/async';\n\nimport * as Registry from '../Registry';\n\n/**\n * Noop `Registry.Service` layer for testing — always returns empty query results.\n * Use this in test layer stacks that require `Registry.Service` but don't need\n * actual registry contents.\n */\nexport const registryLayerNoop: Layer.Layer<Registry.Service> = Layer.succeed(Registry.Service, {\n [Registry.TypeId]: Registry.TypeId,\n id: 'noop-registry',\n changed: new Event<void>(),\n local: [],\n add: () => {},\n remove: () => false,\n clear: () => {},\n get: () => undefined,\n getByURI: () => undefined,\n list: () => [],\n // QueryFn is an overloaded interface — a single generic function cannot satisfy both overload\n // signatures without a cast. This is the intentional type-system boundary.\n query: ((_queryOrFilter: unknown) => ({\n results: [],\n entries: [],\n run: async () => [],\n runEntries: async () => [],\n runSync: () => [],\n runSyncEntries: () => [],\n first: async (): Promise<never> => {\n throw new Error('registryLayerNoop: registry is empty');\n },\n firstOrUndefined: async () => undefined,\n subscribe: () => () => {},\n atom: Atom.make((): never[] => []),\n })) as Registry.Registry['query'],\n} satisfies Registry.Registry);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { DatabaseDirectory, EntityStructure } from '@dxos/echo-protocol';\nimport { EID, EntityId, PublicKey } from '@dxos/keys';\n\nimport { Type } from '../index';\nimport { TestSchema } from './test-schema';\n\n// Lazy init: Cloudflare workers disallow non-determinism at module scope (e.g. random keys).\nlet cachedSpaceKeyHex: string | undefined;\nconst getSpaceKeyHex = (): string => {\n if (cachedSpaceKeyHex === undefined) {\n cachedSpaceKeyHex = PublicKey.random().toHex();\n }\n return cachedSpaceKeyHex;\n};\n\nlet cachedPeopleAlice: DatabaseDirectory | undefined;\nlet cachedPeopleBob: DatabaseDirectory | undefined;\nlet cachedOrgsDxos: DatabaseDirectory | undefined;\nlet cachedOrgsCyberdyne: DatabaseDirectory | undefined;\nlet cachedWorksFredCyberdyne: DatabaseDirectory | undefined;\nlet cachedWorksAliceAperture: DatabaseDirectory | undefined;\nlet cachedTasksTask1: DatabaseDirectory | undefined;\nlet cachedTasksTask2: DatabaseDirectory | undefined;\n\n// TODO(burdon): Use Obj.make.\n\nexport const PEOPLE = {\n get alice(): DatabaseDirectory {\n if (cachedPeopleAlice === undefined) {\n cachedPeopleAlice = DatabaseDirectory.make({\n spaceKey: getSpaceKeyHex(),\n objects: {\n [EntityId.random()]: EntityStructure.makeObject({\n type: Type.getURI(TestSchema.Person)!,\n data: {\n name: 'Alice',\n },\n }),\n },\n });\n }\n return cachedPeopleAlice;\n },\n\n get bob(): DatabaseDirectory {\n if (cachedPeopleBob === undefined) {\n cachedPeopleBob = DatabaseDirectory.make({\n spaceKey: getSpaceKeyHex(),\n objects: {\n [EntityId.random()]: EntityStructure.makeObject({\n type: Type.getURI(TestSchema.Person)!,\n data: {\n name: 'Bob',\n },\n }),\n },\n });\n }\n return cachedPeopleBob;\n },\n};\n\nexport const ORGS = {\n get dxos(): DatabaseDirectory {\n if (cachedOrgsDxos === undefined) {\n cachedOrgsDxos = DatabaseDirectory.make({\n spaceKey: getSpaceKeyHex(),\n objects: {\n [EntityId.random()]: EntityStructure.makeObject({\n type: Type.getURI(TestSchema.Organization)!,\n data: {\n name: 'DXOS',\n founded: '2023',\n },\n }),\n },\n });\n }\n return cachedOrgsDxos;\n },\n\n get cyberdyne(): DatabaseDirectory {\n if (cachedOrgsCyberdyne === undefined) {\n cachedOrgsCyberdyne = DatabaseDirectory.make({\n spaceKey: getSpaceKeyHex(),\n objects: {\n [EntityId.random()]: EntityStructure.makeObject({\n type: Type.getURI(TestSchema.Organization)!,\n data: {\n name: 'Cyberdyne Systems',\n founded: '1984',\n },\n }),\n },\n });\n }\n return cachedOrgsCyberdyne;\n },\n};\n\nexport const WORKS_FOR = {\n get fredWorksForCyberdyne(): DatabaseDirectory {\n if (cachedWorksFredCyberdyne === undefined) {\n cachedWorksFredCyberdyne = DatabaseDirectory.make({\n spaceKey: getSpaceKeyHex(),\n objects: {\n [EntityId.random()]: EntityStructure.makeRelation({\n type: Type.getURI(TestSchema.EmployedBy)!,\n source: { '/': EID.make({ entityId: Object.keys(PEOPLE.bob.objects!)[0] }) },\n target: { '/': EID.make({ entityId: Object.keys(ORGS.cyberdyne.objects!)[0] }) },\n data: {\n since: '2020',\n position: 'Engineer',\n },\n }),\n },\n });\n }\n return cachedWorksFredCyberdyne;\n },\n\n get aliceWorksForAperture(): DatabaseDirectory {\n if (cachedWorksAliceAperture === undefined) {\n cachedWorksAliceAperture = DatabaseDirectory.make({\n spaceKey: getSpaceKeyHex(),\n objects: {\n [EntityId.random()]: EntityStructure.makeRelation({\n type: Type.getURI(TestSchema.EmployedBy)!,\n source: { '/': EID.make({ entityId: Object.keys(PEOPLE.alice.objects!)[0] }) },\n target: { '/': EID.make({ entityId: Object.keys(ORGS.dxos.objects!)[0] }) },\n data: {\n since: '2018',\n position: 'Research Scientist',\n },\n }),\n },\n });\n }\n return cachedWorksAliceAperture;\n },\n};\n\nexport const TASKS = {\n get task1(): DatabaseDirectory {\n if (cachedTasksTask1 === undefined) {\n cachedTasksTask1 = DatabaseDirectory.make({\n spaceKey: getSpaceKeyHex(),\n objects: {\n [EntityId.random()]: EntityStructure.makeObject({\n type: Type.getURI(TestSchema.Task)!,\n data: {\n title: 'Complete project documentation',\n description: 'Write comprehensive documentation for the new system',\n status: 'in-progress',\n dueDate: '2023-12-31',\n assignee: { '/': EID.make({ entityId: Object.keys(PEOPLE.bob.objects!)[0] }) },\n },\n }),\n },\n });\n }\n return cachedTasksTask1;\n },\n\n get task2(): DatabaseDirectory {\n if (cachedTasksTask2 === undefined) {\n cachedTasksTask2 = DatabaseDirectory.make({\n spaceKey: getSpaceKeyHex(),\n objects: {\n [EntityId.random()]: EntityStructure.makeObject({\n type: Type.getURI(TestSchema.Task)!,\n data: {\n title: 'Run experiments',\n description: 'Conduct series of experiments on the portal device',\n status: 'pending',\n dueDate: '2023-11-15',\n assignee: { '/': EID.make({ entityId: Object.keys(PEOPLE.alice.objects!)[0] }) },\n },\n }),\n },\n });\n }\n return cachedTasksTask2;\n },\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport { DXN } from '@dxos/keys';\n\nimport * as Obj from '../Obj';\nimport * as Ref from '../Ref';\nimport * as Type from '../Type';\n\nexport namespace TestSchema {\n //\n // Expando\n //\n\n /**\n * Expando object is an object with an arbitrary set of properties.\n * This is the test variant with example.com namespace.\n */\n export class Expando extends Type.makeObject<Expando>(DXN.make('com.example.type.expando', '0.1.0'))(\n Schema.Struct({}, { key: Schema.String, value: Schema.Any }),\n ) {}\n\n //\n // Example\n //\n\n const Nested = Schema.Struct({\n field: Schema.String,\n });\n\n export class TestClass {\n field = 'value';\n toJSON() {\n return { field: this.field };\n }\n }\n\n /** @deprecated Use another test schema or create a specific local test schema. */\n export const ExampleSchema = Schema.Struct({\n string: Schema.String,\n number: Schema.Number,\n boolean: Schema.Boolean,\n null: Schema.Null,\n undefined: Schema.Undefined,\n stringArray: Schema.Array(Schema.String),\n twoDimNumberArray: Schema.Array(Schema.Array(Schema.Number)),\n nested: Nested,\n nestedArray: Schema.Array(Nested),\n nestedNullableArray: Schema.Array(Schema.Union(Nested, Schema.Null)),\n reference: Schema.suspend((): Ref.RefSchema<Example> => Ref.Ref(Example)),\n referenceArray: Schema.Array(Schema.suspend((): Ref.RefSchema<Example> => Ref.Ref(Example))),\n classInstance: Schema.instanceOf(TestClass),\n other: Schema.Any,\n }).pipe(Schema.partial);\n\n /** @deprecated Use another test schema or create a specific local test schema. */\n export interface ExampleSchema extends Schema.Schema.Type<typeof ExampleSchema> {}\n\n /** @deprecated Use another test schema or create a specific local test schema. */\n export class Example extends Type.makeObject<Example>(DXN.make('com.example.type.example', '0.1.0'))(ExampleSchema) {}\n\n //\n // Message\n //\n\n // TODO(burdon): Support defaults directly on Type: `make` is erased by `pipe(Type.Obj)`.\n export const MessageStruct = Schema.Struct({\n // TODO(burdon): Support S.Date; Custom Timestamp (with defaults).\n // TODO(burdon): Support defaults (update create and create).\n timestamp: Schema.String.pipe(\n Schema.propertySignature,\n Schema.withConstructorDefault(() => new Date().toISOString()),\n ),\n });\n\n export class Message extends Type.makeObject<Message>(DXN.make('com.example.type.message', '0.1.0'))(MessageStruct) {}\n\n //\n // Organization\n //\n\n export class Organization extends Type.makeObject<Organization>(DXN.make('com.example.type.organization', '0.1.0'))(\n Schema.Struct({\n name: Schema.String,\n properties: Schema.optional(\n Schema.Record({\n key: Schema.String,\n value: Schema.String,\n }),\n ),\n }),\n ) {}\n\n //\n // Person\n //\n\n export class Person extends Type.makeObject<Person>(DXN.make('com.example.type.person', '0.1.0'))(\n Schema.Struct({\n name: Schema.String,\n username: Schema.String,\n email: Schema.String,\n age: Schema.Number.pipe(Schema.optional),\n tasks: Schema.Array(Schema.suspend((): Ref.RefSchema<Task> => Ref.Ref(Task))),\n employer: Schema.optional(Ref.Ref(Organization)),\n address: Schema.Struct({\n city: Schema.optional(Schema.String),\n state: Schema.optional(Schema.String),\n zip: Schema.optional(Schema.String),\n coordinates: Schema.Struct({\n lat: Schema.optional(Schema.Number),\n lng: Schema.optional(Schema.Number),\n }),\n }),\n fields: Schema.Struct({\n label: Schema.String,\n value: Schema.String,\n }).pipe(Schema.Array, Schema.optional),\n }).pipe(Schema.partial),\n ) {}\n\n //\n // Task\n //\n\n export class Task extends Type.makeObject<Task>(DXN.make('com.example.type.task', '0.1.0'))(\n Schema.Struct({\n title: Schema.optional(Schema.String),\n deadline: Schema.optional(Schema.String),\n completed: Schema.optional(Schema.Boolean),\n assignee: Schema.optional(Ref.Ref(Person)),\n previous: Schema.optional(Schema.suspend((): Ref.RefSchema<Task> => Ref.Ref(Task))),\n subTasks: Schema.optional(Schema.Array(Schema.suspend((): Ref.RefSchema<Task> => Ref.Ref(Task)))),\n description: Schema.optional(Schema.String),\n }).pipe(Schema.partial),\n ) {}\n\n //\n // HasManager\n //\n\n export class HasManager extends Type.makeRelation<HasManager>(DXN.make('com.example.type.hasManager', '0.1.0'))({\n source: Person,\n target: Person,\n })(Schema.Struct({})) {}\n\n //\n // EmployedBy\n //\n\n export class EmployedBy extends Type.makeRelation<EmployedBy>(DXN.make('com.example.type.employedBy', '0.1.0'))({\n source: Person,\n target: Organization,\n })(\n Schema.Struct({\n role: Schema.String,\n since: Schema.optional(Schema.String),\n }),\n ) {}\n\n //\n // RecordType\n //\n\n export enum RecordType {\n UNDEFINED = 0,\n PERSONAL = 1,\n WORK = 2,\n }\n\n export class Container extends Type.makeObject<Container>(DXN.make('com.example.type.container', '0.1.0'))(\n Schema.Struct({\n objects: Schema.Array(Ref.Ref(Obj.Unknown)),\n records: Schema.Array(\n Schema.partial(\n Schema.Struct({\n title: Schema.String,\n description: Schema.String,\n contacts: Schema.Array(Ref.Ref(Person)),\n type: Schema.Enums(RecordType),\n }),\n ),\n ),\n }).pipe(Schema.partial),\n ) {}\n}\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport type * as Schema from 'effect/Schema';\nimport type * as SchemaAST from 'effect/SchemaAST';\n\nimport { assertArgument } from '@dxos/invariant';\nimport { deepMapValues } from '@dxos/util';\n\nimport { TypeSchema, getSchemaTypename, getStaticTypeSchema, makeObject, subscribe, toJsonSchema } from '../internal';\nimport type * as Type from '../Type';\n\n/**\n * Create an in-memory `Type.Type` entity (a `TypeSchema` object) for tests.\n * Accepts a raw Effect Schema. Pass `Type.getSchema(entity)` to convert a\n * `Type.Type` entity to its underlying source schema first.\n */\n// TODO(dmaretskyi): Should be replaced by registration of typed object.\nexport const createEchoSchema = (schema: Schema.Schema.AnyNoContext, version = '0.1.0'): Type.Type => {\n const jsonSchema = toJsonSchema(schema);\n const typename = getSchemaTypename(schema);\n assertArgument(typename, 'typename', 'Schema does not have a typename.');\n // typename/version are routed via EntityMeta (the canonical registry-provenance\n // pair); they're no longer data fields on `TypeSchema`.\n return makeObject(\n getStaticTypeSchema(TypeSchema) as any,\n { jsonSchema },\n { keys: [], key: typename, version },\n TypeSchema,\n ) as unknown as Type.Type;\n};\n\n/**\n * Converts AST to a format that can be compared with test matchers.\n */\nexport const prepareAstForCompare = (obj: SchemaAST.AST): any =>\n deepMapValues(obj, (value: any, recurse: any) => {\n if (typeof value === 'function') {\n return null;\n }\n\n if (value instanceof RegExp) {\n return value;\n }\n\n // Convert symbols to strings.\n if (typeof value === 'object') {\n const clone = { ...value };\n for (const sym of Object.getOwnPropertySymbols(clone as any)) {\n clone[sym.toString()] = clone[sym];\n delete clone[sym];\n }\n\n return recurse(clone);\n }\n\n return recurse(value);\n });\n\n/**\n * Creates an update counter that tracks changes to reactive objects.\n * @param objects - Reactive objects to subscribe to.\n * @returns An object with a count property and Symbol.dispose for cleanup.\n */\nexport const updateCounter = (...objects: object[]) => {\n let updateCount = 0;\n\n const unsubscribes = objects.map((obj) =>\n subscribe(obj, () => {\n updateCount++;\n }),\n );\n\n const unsubscribeAll = () => {\n for (const unsub of unsubscribes) {\n unsub();\n }\n };\n\n return {\n // https://github.com/tc39/proposal-explicit-resource-management\n [Symbol.dispose]: unsubscribeAll,\n get count() {\n return updateCount;\n },\n };\n};\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,YAAYA,UAAU;AACtB,YAAYC,WAAW;AAEvB,SAASC,aAAa;AASf,IAAMC,oBAAyDC,cAAiBC,SAAS;EAC9F,CAAUC,MAAM,GAAYA;EAC5BC,IAAI;EACJC,SAAS,IAAIC,MAAAA;EACbC,OAAO,CAAA;EACPC,KAAK,MAAA;EAAO;EACZC,QAAQ,MAAM;EACdC,OAAO,MAAA;EAAO;EACdC,KAAK,MAAMC;EACXC,UAAU,MAAMD;EAChBE,MAAM,MAAM,CAAA;;;EAGZC,OAAQ,CAACC,oBAA6B;IACpCC,SAAS,CAAA;IACTC,SAAS,CAAA;IACTC,KAAK,YAAY,CAAA;IACjBC,YAAY,YAAY,CAAA;IACxBC,SAAS,MAAM,CAAA;IACfC,gBAAgB,MAAM,CAAA;IACtBC,OAAO,YAAA;AACL,YAAM,IAAIC,MAAM,sCAAA;IAClB;IACAC,kBAAkB,YAAYb;IAC9Bc,WAAW,MAAM,MAAA;IAAO;IACxBC,MAAWC,UAAK,MAAe,CAAA,CAAE;EACnC;AACF,CAAA;;;ACvCA,SAASC,mBAAmBC,uBAAuB;AACnD,SAASC,KAAKC,UAAUC,iBAAiB;;;ACDzC,YAAYC,YAAY;AAExB,SAASC,WAAW;UAMHC,aAAAA;EASR,MAAMC,gBAAqBC,YAAoBC,IAAIC,KAAK,4BAA4B,OAAA,CAAA,EAClFC,cAAO,CAAC,GAAG;IAAEC,KAAYC;IAAQC,OAAcC;EAAI,CAAA,CAAA,EAAA;EACzD;AAHF,EAAAT,YACYC,UAAAA;AAQb,QAAMS,SAAgBL,cAAO;IAC3BM,OAAcJ;EAChB,CAAA;EAEO,MAAMK,UAAAA;IACXD,QAAQ;IACRE,SAAS;AACP,aAAO;QAAEF,OAAO,KAAKA;MAAM;IAC7B;EACF;cALaC,YAAAA;cAQAE,gBAAuBT,cAAO;IACzCU,QAAeR;IACfS,QAAeC;IACfC,SAAgBC;IAChBC,MAAaC;IACbC,WAAkBC;IAClBC,aAAoBC,aAAalB,aAAM;IACvCmB,mBAA0BD,aAAaA,aAAaR,aAAM,CAAA;IAC1DU,QAAQjB;IACRkB,aAAoBH,aAAMf,MAAAA;IAC1BmB,qBAA4BJ,aAAaK,aAAMpB,QAAeW,WAAI,CAAA;IAClEU,WAAkBC,eAAQ,MAAkCC,IAAIC,OAAAA,CAAAA;IAChEC,gBAAuBV,aAAaO,eAAQ,MAAkCC,IAAIC,OAAAA,CAAAA,CAAAA;IAClFE,eAAsBC,kBAAWzB,SAAAA;IACjC0B,OAAc7B;EAChB,CAAA,EAAG8B,KAAYC,cAAO;EAMf,MAAMN,gBAAqBhC,YAAoBC,IAAIC,KAAK,4BAA4B,OAAA,CAAA,EAAAJ,YAAUc,aAAAA,EAAAA;EAAgB;AADrC,EAAAd,YACnEkC,UAAAA;cAOAO,gBAAuBpC,cAAO;;;IAGzCqC,WAAkBnC,cAAOgC,KAChBI,0BACAC,8BAAuB,OAAM,oBAAIC,KAAAA,GAAOC,YAAW,CAAA,CAAA;EAE9D,CAAA;EAEO,MAAMC,gBAAqB7C,YAAoBC,IAAIC,KAAK,4BAA4B,OAAA,CAAA,EAAAJ,YAAUyC,aAAAA,EAAAA;EAAgB;cAAxGM,UAAAA;EAMN,MAAMC,qBAA0B9C,YAAyBC,IAAIC,KAAK,iCAAiC,OAAA,CAAA,EACjGC,cAAO;IACZ4C,MAAa1C;IACb2C,YAAmBC,gBACVC,cAAO;MACZ9C,KAAYC;MACZC,OAAcD;IAChB,CAAA,CAAA;EAEJ,CAAA,CAAA,EAAA;EACC;cAVUyC,eAAAA;EAgBN,MAAMK,eAAoBnD,YAAmBC,IAAIC,KAAK,2BAA2B,OAAA,CAAA,EAC/EC,cAAO;IACZ4C,MAAa1C;IACb+C,UAAiB/C;IACjBgD,OAAchD;IACdiD,KAAYvC,cAAOsB,KAAYY,eAAQ;IACvCM,OAAchC,aAAaO,eAAQ,MAA+BC,IAAIyB,IAAAA,CAAAA,CAAAA;IACtEC,UAAiBR,gBAAalB,IAAIe,YAAAA,CAAAA;IAClCY,SAAgBvD,cAAO;MACrBwD,MAAaV,gBAAgB5C,aAAM;MACnCuD,OAAcX,gBAAgB5C,aAAM;MACpCwD,KAAYZ,gBAAgB5C,aAAM;MAClCyD,aAAoB3D,cAAO;QACzB4D,KAAYd,gBAAgBlC,aAAM;QAClCiD,KAAYf,gBAAgBlC,aAAM;MACpC,CAAA;IACF,CAAA;IACAkD,QAAe9D,cAAO;MACpB+D,OAAc7D;MACdC,OAAcD;IAChB,CAAA,EAAGgC,KAAYd,cAAc0B,eAAQ;EACvC,CAAA,EAAGZ,KAAYC,cAAO,CAAA,EAAA;EACrB;cAtBUa,SAAAA;EA4BN,MAAMK,aAAkBxD,YAAiBC,IAAIC,KAAK,yBAAyB,OAAA,CAAA,EACzEC,cAAO;IACZgE,OAAclB,gBAAgB5C,aAAM;IACpC+D,UAAiBnB,gBAAgB5C,aAAM;IACvCgE,WAAkBpB,gBAAgBhC,cAAO;IACzCqD,UAAiBrB,gBAAalB,IAAIoB,MAAAA,CAAAA;IAClCoB,UAAiBtB,gBAAgBnB,eAAQ,MAA+BC,IAAIyB,IAAAA,CAAAA,CAAAA;IAC5EgB,UAAiBvB,gBAAgB1B,aAAaO,eAAQ,MAA+BC,IAAIyB,IAAAA,CAAAA,CAAAA,CAAAA;IACzFiB,aAAoBxB,gBAAgB5C,aAAM;EAC5C,CAAA,EAAGgC,KAAYC,cAAO,CAAA,EAAA;EACrB;cAVUkB,OAAAA;EAgBN,MAAMkB,mBAAwBC,aAAyB1E,IAAIC,KAAK,+BAA+B,OAAA,CAAA,EAAU;IAC9G0E,QAAQzB;IACR0B,QAAQ1B;EACV,CAAA,EAAUhD,cAAO,CAAC,CAAA,CAAA,EAAA;EAAK;cAHVuE,aAAAA;EASN,MAAMI,mBAAwBH,aAAyB1E,IAAIC,KAAK,+BAA+B,OAAA,CAAA,EAAU;IAC9G0E,QAAQzB;IACR0B,QAAQ/B;EACV,CAAA,EACS3C,cAAO;IACZ4E,MAAa1E;IACb2E,OAAc/B,gBAAgB5C,aAAM;EACtC,CAAA,CAAA,EAAA;EACC;cARUyE,aAAAA;YAcDG,YAAAA;;;;iBAAAA,eAAAA,YAAAA,aAAAA,CAAAA,EAAAA;EAML,MAAMC,kBAAuBlF,YAAsBC,IAAIC,KAAK,8BAA8B,OAAA,CAAA,EACxFC,cAAO;IACZgF,SAAgB5D,aAAUQ,IAAQqD,OAAO,CAAA;IACzCC,SAAgB9D,aACPe,eACEnC,cAAO;MACZgE,OAAc9D;MACdoE,aAAoBpE;MACpBiF,UAAiB/D,aAAUQ,IAAIoB,MAAAA,CAAAA;MAC/BoC,MAAaC,aAAK1F,YAACmF,UAAAA;IACrB,CAAA,CAAA,CAAA;EAGN,CAAA,EAAG5C,KAAYC,cAAO,CAAA,EAAA;EACrB;cAdU4C,YAAAA;AAef,GAhLiBpF,eAAAA,aAAAA,CAAAA,EAAAA;;;;ADDjB,IAAI2F;AACJ,IAAMC,iBAAiB,MAAA;AACrB,MAAID,sBAAsBE,QAAW;AACnCF,wBAAoBG,UAAUC,OAAM,EAAGC,MAAK;EAC9C;AACA,SAAOL;AACT;AAEA,IAAIM;AACJ,IAAIC;AACJ,IAAIC;AACJ,IAAIC;AACJ,IAAIC;AACJ,IAAIC;AACJ,IAAIC;AACJ,IAAIC;AAIG,IAAMC,SAAS;EACpB,IAAIC,QAA2B;AAC7B,QAAIT,sBAAsBJ,QAAW;AACnCI,0BAAoBU,kBAAkBC,KAAK;QACzCC,UAAUjB,eAAAA;QACVkB,SAAS;UACP,CAACC,SAAShB,OAAM,CAAA,GAAKiB,gBAAgBC,WAAW;YAC9CC,MAAMC,aAAKC,OAAOC,WAAWC,MAAM;YACnCC,MAAM;cACJC,MAAM;YACR;UACF,CAAA;QACF;MACF,CAAA;IACF;AACA,WAAOvB;EACT;EAEA,IAAIwB,MAAyB;AAC3B,QAAIvB,oBAAoBL,QAAW;AACjCK,wBAAkBS,kBAAkBC,KAAK;QACvCC,UAAUjB,eAAAA;QACVkB,SAAS;UACP,CAACC,SAAShB,OAAM,CAAA,GAAKiB,gBAAgBC,WAAW;YAC9CC,MAAMC,aAAKC,OAAOC,WAAWC,MAAM;YACnCC,MAAM;cACJC,MAAM;YACR;UACF,CAAA;QACF;MACF,CAAA;IACF;AACA,WAAOtB;EACT;AACF;AAEO,IAAMwB,OAAO;EAClB,IAAIC,OAA0B;AAC5B,QAAIxB,mBAAmBN,QAAW;AAChCM,uBAAiBQ,kBAAkBC,KAAK;QACtCC,UAAUjB,eAAAA;QACVkB,SAAS;UACP,CAACC,SAAShB,OAAM,CAAA,GAAKiB,gBAAgBC,WAAW;YAC9CC,MAAMC,aAAKC,OAAOC,WAAWO,YAAY;YACzCL,MAAM;cACJC,MAAM;cACNK,SAAS;YACX;UACF,CAAA;QACF;MACF,CAAA;IACF;AACA,WAAO1B;EACT;EAEA,IAAI2B,YAA+B;AACjC,QAAI1B,wBAAwBP,QAAW;AACrCO,4BAAsBO,kBAAkBC,KAAK;QAC3CC,UAAUjB,eAAAA;QACVkB,SAAS;UACP,CAACC,SAAShB,OAAM,CAAA,GAAKiB,gBAAgBC,WAAW;YAC9CC,MAAMC,aAAKC,OAAOC,WAAWO,YAAY;YACzCL,MAAM;cACJC,MAAM;cACNK,SAAS;YACX;UACF,CAAA;QACF;MACF,CAAA;IACF;AACA,WAAOzB;EACT;AACF;AAEO,IAAM2B,YAAY;EACvB,IAAIC,wBAA2C;AAC7C,QAAI3B,6BAA6BR,QAAW;AAC1CQ,iCAA2BM,kBAAkBC,KAAK;QAChDC,UAAUjB,eAAAA;QACVkB,SAAS;UACP,CAACC,SAAShB,OAAM,CAAA,GAAKiB,gBAAgBiB,aAAa;YAChDf,MAAMC,aAAKC,OAAOC,WAAWa,UAAU;YACvCC,QAAQ;cAAE,KAAKC,IAAIxB,KAAK;gBAAEyB,UAAUC,OAAOC,KAAK9B,OAAOgB,IAAIX,OAAO,EAAG,CAAA;cAAG,CAAA;YAAG;YAC3E0B,QAAQ;cAAE,KAAKJ,IAAIxB,KAAK;gBAAEyB,UAAUC,OAAOC,KAAKb,KAAKI,UAAUhB,OAAO,EAAG,CAAA;cAAG,CAAA;YAAG;YAC/ES,MAAM;cACJkB,OAAO;cACPC,UAAU;YACZ;UACF,CAAA;QACF;MACF,CAAA;IACF;AACA,WAAOrC;EACT;EAEA,IAAIsC,wBAA2C;AAC7C,QAAIrC,6BAA6BT,QAAW;AAC1CS,iCAA2BK,kBAAkBC,KAAK;QAChDC,UAAUjB,eAAAA;QACVkB,SAAS;UACP,CAACC,SAAShB,OAAM,CAAA,GAAKiB,gBAAgBiB,aAAa;YAChDf,MAAMC,aAAKC,OAAOC,WAAWa,UAAU;YACvCC,QAAQ;cAAE,KAAKC,IAAIxB,KAAK;gBAAEyB,UAAUC,OAAOC,KAAK9B,OAAOC,MAAMI,OAAO,EAAG,CAAA;cAAG,CAAA;YAAG;YAC7E0B,QAAQ;cAAE,KAAKJ,IAAIxB,KAAK;gBAAEyB,UAAUC,OAAOC,KAAKb,KAAKC,KAAKb,OAAO,EAAG,CAAA;cAAG,CAAA;YAAG;YAC1ES,MAAM;cACJkB,OAAO;cACPC,UAAU;YACZ;UACF,CAAA;QACF;MACF,CAAA;IACF;AACA,WAAOpC;EACT;AACF;AAEO,IAAMsC,QAAQ;EACnB,IAAIC,QAA2B;AAC7B,QAAItC,qBAAqBV,QAAW;AAClCU,yBAAmBI,kBAAkBC,KAAK;QACxCC,UAAUjB,eAAAA;QACVkB,SAAS;UACP,CAACC,SAAShB,OAAM,CAAA,GAAKiB,gBAAgBC,WAAW;YAC9CC,MAAMC,aAAKC,OAAOC,WAAWyB,IAAI;YACjCvB,MAAM;cACJwB,OAAO;cACPC,aAAa;cACbC,QAAQ;cACRC,SAAS;cACTC,UAAU;gBAAE,KAAKf,IAAIxB,KAAK;kBAAEyB,UAAUC,OAAOC,KAAK9B,OAAOgB,IAAIX,OAAO,EAAG,CAAA;gBAAG,CAAA;cAAG;YAC/E;UACF,CAAA;QACF;MACF,CAAA;IACF;AACA,WAAOP;EACT;EAEA,IAAI6C,QAA2B;AAC7B,QAAI5C,qBAAqBX,QAAW;AAClCW,yBAAmBG,kBAAkBC,KAAK;QACxCC,UAAUjB,eAAAA;QACVkB,SAAS;UACP,CAACC,SAAShB,OAAM,CAAA,GAAKiB,gBAAgBC,WAAW;YAC9CC,MAAMC,aAAKC,OAAOC,WAAWyB,IAAI;YACjCvB,MAAM;cACJwB,OAAO;cACPC,aAAa;cACbC,QAAQ;cACRC,SAAS;cACTC,UAAU;gBAAE,KAAKf,IAAIxB,KAAK;kBAAEyB,UAAUC,OAAOC,KAAK9B,OAAOC,MAAMI,OAAO,EAAG,CAAA;gBAAG,CAAA;cAAG;YACjF;UACF,CAAA;QACF;MACF,CAAA;IACF;AACA,WAAON;EACT;AACF;;;AErLA,SAAS6C,sBAAsB;AAC/B,SAASC,qBAAqB;AAWvB,IAAMC,mBAAmB,CAACC,QAAoCC,UAAU,YAAO;AACpF,QAAMC,aAAaC,aAAaH,MAAAA;AAChC,QAAMI,WAAWC,kBAAkBL,MAAAA;AACnCM,iBAAeF,UAAU,YAAY,kCAAA;AAGrC,SAAOG,WACLC,oBAAoBC,UAAAA,GACpB;IAAEP;EAAW,GACb;IAAEQ,MAAM,CAAA;IAAIC,KAAKP;IAAUH;EAAQ,GACnCQ,UAAAA;AAEJ;AAKO,IAAMG,uBAAuB,CAACC,QACnCC,cAAcD,KAAK,CAACE,OAAYC,YAAAA;AAC9B,MAAI,OAAOD,UAAU,YAAY;AAC/B,WAAO;EACT;AAEA,MAAIA,iBAAiBE,QAAQ;AAC3B,WAAOF;EACT;AAGA,MAAI,OAAOA,UAAU,UAAU;AAC7B,UAAMG,QAAQ;MAAE,GAAGH;IAAM;AACzB,eAAWI,OAAOC,OAAOC,sBAAsBH,KAAAA,GAAe;AAC5DA,YAAMC,IAAIG,SAAQ,CAAA,IAAMJ,MAAMC,GAAAA;AAC9B,aAAOD,MAAMC,GAAAA;IACf;AAEA,WAAOH,QAAQE,KAAAA;EACjB;AAEA,SAAOF,QAAQD,KAAAA;AACjB,CAAA;AAOK,IAAMQ,gBAAgB,IAAIC,YAAAA;AAC/B,MAAIC,cAAc;AAElB,QAAMC,eAAeF,QAAQG,IAAI,CAACd,QAChCe,UAAUf,KAAK,MAAA;AACbY;EACF,CAAA,CAAA;AAGF,QAAMI,iBAAiB,MAAA;AACrB,eAAWC,SAASJ,cAAc;AAChCI,YAAAA;IACF;EACF;AAEA,SAAO;;IAEL,CAACC,OAAOC,OAAO,GAAGH;IAClB,IAAII,QAAQ;AACV,aAAOR;IACT;EACF;AACF;",
|
|
6
|
-
"names": ["Atom", "Layer", "Event", "registryLayerNoop", "succeed", "Service", "TypeId", "id", "changed", "Event", "local", "add", "remove", "clear", "get", "undefined", "getByURI", "list", "query", "_queryOrFilter", "results", "entries", "run", "runEntries", "runSync", "runSyncEntries", "first", "Error", "firstOrUndefined", "subscribe", "atom", "make", "DatabaseDirectory", "EntityStructure", "EID", "EntityId", "PublicKey", "Schema", "DXN", "TestSchema", "Expando", "makeObject", "DXN", "make", "Struct", "key", "String", "value", "Any", "Nested", "field", "TestClass", "toJSON", "ExampleSchema", "string", "number", "Number", "boolean", "Boolean", "null", "Null", "undefined", "Undefined", "stringArray", "Array", "twoDimNumberArray", "nested", "nestedArray", "nestedNullableArray", "Union", "reference", "suspend", "Ref", "Example", "referenceArray", "classInstance", "instanceOf", "other", "pipe", "partial", "MessageStruct", "timestamp", "propertySignature", "withConstructorDefault", "Date", "toISOString", "Message", "Organization", "name", "properties", "optional", "Record", "Person", "username", "email", "age", "tasks", "Task", "employer", "address", "city", "state", "zip", "coordinates", "lat", "lng", "fields", "label", "title", "deadline", "completed", "assignee", "previous", "subTasks", "description", "HasManager", "makeRelation", "source", "target", "EmployedBy", "role", "since", "RecordType", "Container", "objects", "Unknown", "records", "contacts", "type", "Enums", "cachedSpaceKeyHex", "getSpaceKeyHex", "undefined", "PublicKey", "random", "toHex", "cachedPeopleAlice", "cachedPeopleBob", "cachedOrgsDxos", "cachedOrgsCyberdyne", "cachedWorksFredCyberdyne", "cachedWorksAliceAperture", "cachedTasksTask1", "cachedTasksTask2", "PEOPLE", "alice", "DatabaseDirectory", "make", "spaceKey", "objects", "EntityId", "EntityStructure", "makeObject", "type", "Type", "getURI", "TestSchema", "Person", "data", "name", "bob", "ORGS", "dxos", "Organization", "founded", "cyberdyne", "WORKS_FOR", "fredWorksForCyberdyne", "makeRelation", "EmployedBy", "source", "EID", "entityId", "Object", "keys", "target", "since", "position", "aliceWorksForAperture", "TASKS", "task1", "Task", "title", "description", "status", "dueDate", "assignee", "task2", "assertArgument", "deepMapValues", "createEchoSchema", "schema", "version", "jsonSchema", "toJsonSchema", "typename", "getSchemaTypename", "assertArgument", "makeObject", "getStaticTypeSchema", "TypeSchema", "keys", "key", "prepareAstForCompare", "obj", "deepMapValues", "value", "recurse", "RegExp", "clone", "sym", "Object", "getOwnPropertySymbols", "toString", "updateCounter", "objects", "updateCount", "unsubscribes", "map", "subscribe", "unsubscribeAll", "unsub", "Symbol", "dispose", "count"]
|
|
7
|
-
}
|