@dxos/echo 0.8.4-main.e098934 → 0.8.4-main.ead640a
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/browser/chunk-HKFCK2GL.mjs +175 -0
- package/dist/lib/browser/chunk-HKFCK2GL.mjs.map +7 -0
- package/dist/lib/browser/{chunk-EIXXFUN5.mjs → chunk-MAAYELT7.mjs} +477 -486
- package/dist/lib/browser/chunk-MAAYELT7.mjs.map +7 -0
- package/dist/lib/browser/chunk-MB6MMNFP.mjs +3857 -0
- package/dist/lib/browser/chunk-MB6MMNFP.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +12 -7
- package/dist/lib/browser/internal/index.mjs +332 -0
- package/dist/lib/browser/internal/index.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/query/index.mjs +15 -0
- package/dist/lib/browser/query/index.mjs.map +7 -0
- package/dist/lib/browser/testing/index.mjs +260 -32
- package/dist/lib/browser/testing/index.mjs.map +4 -4
- package/dist/lib/node-esm/{chunk-TCY7IVTS.mjs → chunk-5NWDGIBT.mjs} +477 -486
- package/dist/lib/node-esm/chunk-5NWDGIBT.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-AUAH4E2J.mjs +175 -0
- package/dist/lib/node-esm/chunk-AUAH4E2J.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-BQRA4VLX.mjs +3857 -0
- package/dist/lib/node-esm/chunk-BQRA4VLX.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +12 -7
- package/dist/lib/node-esm/internal/index.mjs +332 -0
- package/dist/lib/node-esm/internal/index.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/query/index.mjs +15 -0
- package/dist/lib/node-esm/query/index.mjs.map +7 -0
- package/dist/lib/node-esm/testing/index.mjs +260 -32
- package/dist/lib/node-esm/testing/index.mjs.map +4 -4
- package/dist/types/src/Obj.d.ts +22 -5
- package/dist/types/src/Obj.d.ts.map +1 -1
- package/dist/types/src/Ref.d.ts +1 -1
- package/dist/types/src/Ref.d.ts.map +1 -1
- package/dist/types/src/Relation.d.ts +5 -4
- package/dist/types/src/Relation.d.ts.map +1 -1
- package/dist/types/src/Type.d.ts +16 -17
- package/dist/types/src/Type.d.ts.map +1 -1
- package/dist/types/src/errors.d.ts +8 -8
- package/dist/types/src/index.d.ts +2 -2
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/internal/ast/annotation-helper.d.ts +8 -0
- package/dist/types/src/internal/ast/annotation-helper.d.ts.map +1 -0
- package/dist/types/src/internal/ast/annotations.d.ts +125 -0
- package/dist/types/src/internal/ast/annotations.d.ts.map +1 -0
- package/dist/types/src/internal/ast/annotations.test.d.ts +2 -0
- package/dist/types/src/internal/ast/annotations.test.d.ts.map +1 -0
- package/dist/types/src/internal/ast/entity-kind.d.ts +10 -0
- package/dist/types/src/internal/ast/entity-kind.d.ts.map +1 -0
- package/dist/types/src/internal/ast/index.d.ts +5 -0
- package/dist/types/src/internal/ast/index.d.ts.map +1 -0
- package/dist/types/src/internal/ast/types.d.ts +6 -0
- package/dist/types/src/internal/ast/types.d.ts.map +1 -0
- package/dist/types/src/internal/formats/date.d.ts +63 -0
- package/dist/types/src/internal/formats/date.d.ts.map +1 -0
- package/dist/types/src/internal/formats/date.test.d.ts +2 -0
- package/dist/types/src/internal/formats/date.test.d.ts.map +1 -0
- package/dist/types/src/internal/formats/format.d.ts +30 -0
- package/dist/types/src/internal/formats/format.d.ts.map +1 -0
- package/dist/types/src/internal/formats/format.test.d.ts +2 -0
- package/dist/types/src/internal/formats/format.test.d.ts.map +1 -0
- package/dist/types/src/internal/formats/index.d.ts +8 -0
- package/dist/types/src/internal/formats/index.d.ts.map +1 -0
- package/dist/types/src/internal/formats/number.d.ts +31 -0
- package/dist/types/src/internal/formats/number.d.ts.map +1 -0
- package/dist/types/src/internal/formats/object.d.ts +35 -0
- package/dist/types/src/internal/formats/object.d.ts.map +1 -0
- package/dist/types/src/internal/formats/select.d.ts +11 -0
- package/dist/types/src/internal/formats/select.d.ts.map +1 -0
- package/dist/types/src/internal/formats/string.d.ts +38 -0
- package/dist/types/src/internal/formats/string.d.ts.map +1 -0
- package/dist/types/src/internal/formats/types.d.ts +68 -0
- package/dist/types/src/internal/formats/types.d.ts.map +1 -0
- package/dist/types/src/internal/index.d.ts +15 -0
- package/dist/types/src/internal/index.d.ts.map +1 -0
- package/dist/types/src/internal/json/annotations.d.ts +19 -0
- package/dist/types/src/internal/json/annotations.d.ts.map +1 -0
- package/dist/types/src/internal/json/effect-schema.test.d.ts +2 -0
- package/dist/types/src/internal/json/effect-schema.test.d.ts.map +1 -0
- package/dist/types/src/internal/json/index.d.ts +2 -0
- package/dist/types/src/internal/json/index.d.ts.map +1 -0
- package/dist/types/src/internal/json/json-schema.d.ts +28 -0
- package/dist/types/src/internal/json/json-schema.d.ts.map +1 -0
- package/dist/types/src/internal/json/json-schema.test.d.ts +2 -0
- package/dist/types/src/internal/json/json-schema.test.d.ts.map +1 -0
- package/dist/types/src/internal/json-schema/index.d.ts +3 -0
- package/dist/types/src/internal/json-schema/index.d.ts.map +1 -0
- package/dist/types/src/internal/json-schema/json-schema-normalize.d.ts +7 -0
- package/dist/types/src/internal/json-schema/json-schema-normalize.d.ts.map +1 -0
- package/dist/types/src/internal/json-schema/json-schema-type.d.ts +250 -0
- package/dist/types/src/internal/json-schema/json-schema-type.d.ts.map +1 -0
- package/dist/types/src/internal/object/accessors.d.ts +37 -0
- package/dist/types/src/internal/object/accessors.d.ts.map +1 -0
- package/dist/types/src/internal/object/common.d.ts +18 -0
- package/dist/types/src/internal/object/common.d.ts.map +1 -0
- package/dist/types/src/internal/object/create.d.ts +40 -0
- package/dist/types/src/internal/object/create.d.ts.map +1 -0
- package/dist/types/src/internal/object/create.test.d.ts +2 -0
- package/dist/types/src/internal/object/create.test.d.ts.map +1 -0
- package/dist/types/src/internal/object/deleted.d.ts +6 -0
- package/dist/types/src/internal/object/deleted.d.ts.map +1 -0
- package/dist/types/src/internal/object/entity.d.ts +33 -0
- package/dist/types/src/internal/object/entity.d.ts.map +1 -0
- package/dist/types/src/internal/object/expando.d.ts +14 -0
- package/dist/types/src/internal/object/expando.d.ts.map +1 -0
- package/dist/types/src/internal/object/ids.d.ts +6 -0
- package/dist/types/src/internal/object/ids.d.ts.map +1 -0
- package/dist/types/src/internal/object/index.d.ts +16 -0
- package/dist/types/src/internal/object/index.d.ts.map +1 -0
- package/dist/types/src/internal/object/inspect.d.ts +2 -0
- package/dist/types/src/internal/object/inspect.d.ts.map +1 -0
- package/dist/types/src/internal/object/json-serializer.d.ts +32 -0
- package/dist/types/src/internal/object/json-serializer.d.ts.map +1 -0
- package/dist/types/src/internal/object/json-serializer.test.d.ts +2 -0
- package/dist/types/src/internal/object/json-serializer.test.d.ts.map +1 -0
- package/dist/types/src/internal/object/meta.d.ts +31 -0
- package/dist/types/src/internal/object/meta.d.ts.map +1 -0
- package/dist/types/src/internal/object/model.d.ts +117 -0
- package/dist/types/src/internal/object/model.d.ts.map +1 -0
- package/dist/types/src/internal/object/relation.d.ts +17 -0
- package/dist/types/src/internal/object/relation.d.ts.map +1 -0
- package/dist/types/src/internal/object/schema-validator.d.ts +15 -0
- package/dist/types/src/internal/object/schema-validator.d.ts.map +1 -0
- package/dist/types/src/internal/object/schema-validator.test.d.ts +2 -0
- package/dist/types/src/internal/object/schema-validator.test.d.ts.map +1 -0
- package/dist/types/src/internal/object/typed-object.d.ts +31 -0
- package/dist/types/src/internal/object/typed-object.d.ts.map +1 -0
- package/dist/types/src/internal/object/typed-object.test.d.ts +2 -0
- package/dist/types/src/internal/object/typed-object.test.d.ts.map +1 -0
- package/dist/types/src/internal/object/typename.d.ts +15 -0
- package/dist/types/src/internal/object/typename.d.ts.map +1 -0
- package/dist/types/src/internal/object/version.d.ts +14 -0
- package/dist/types/src/internal/object/version.d.ts.map +1 -0
- package/dist/types/src/internal/projection/compose.d.ts +6 -0
- package/dist/types/src/internal/projection/compose.d.ts.map +1 -0
- package/dist/types/src/internal/projection/compose.test.d.ts +2 -0
- package/dist/types/src/internal/projection/compose.test.d.ts.map +1 -0
- package/dist/types/src/internal/projection/index.d.ts +2 -0
- package/dist/types/src/internal/projection/index.d.ts.map +1 -0
- package/dist/types/src/internal/proxy/handler.test.d.ts +2 -0
- package/dist/types/src/internal/proxy/handler.test.d.ts.map +1 -0
- package/dist/types/src/internal/proxy/reactive-object.d.ts +15 -0
- package/dist/types/src/internal/proxy/reactive-object.d.ts.map +1 -0
- package/dist/types/src/internal/proxy/schema.test.d.ts +2 -0
- package/dist/types/src/internal/proxy/schema.test.d.ts.map +1 -0
- package/dist/types/src/internal/proxy/typed-handler.d.ts +44 -0
- package/dist/types/src/internal/proxy/typed-handler.d.ts.map +1 -0
- package/dist/types/src/internal/proxy/typed-handler.test.d.ts +2 -0
- package/dist/types/src/internal/proxy/typed-handler.test.d.ts.map +1 -0
- package/dist/types/src/internal/proxy/typed-object.test.d.ts +2 -0
- package/dist/types/src/internal/proxy/typed-object.test.d.ts.map +1 -0
- package/dist/types/src/internal/query/index.d.ts +2 -0
- package/dist/types/src/internal/query/index.d.ts.map +1 -0
- package/dist/types/src/internal/query/query.d.ts +17 -0
- package/dist/types/src/internal/query/query.d.ts.map +1 -0
- package/dist/types/src/internal/ref/index.d.ts +3 -0
- package/dist/types/src/internal/ref/index.d.ts.map +1 -0
- package/dist/types/src/internal/ref/ref-array.d.ts +21 -0
- package/dist/types/src/internal/ref/ref-array.d.ts.map +1 -0
- package/dist/types/src/internal/ref/ref.d.ts +206 -0
- package/dist/types/src/internal/ref/ref.d.ts.map +1 -0
- package/dist/types/src/internal/ref/ref.test.d.ts +2 -0
- package/dist/types/src/internal/ref/ref.test.d.ts.map +1 -0
- package/dist/types/src/internal/schema/echo-schema.d.ts +168 -0
- package/dist/types/src/internal/schema/echo-schema.d.ts.map +1 -0
- package/dist/types/src/internal/schema/index.d.ts +7 -0
- package/dist/types/src/internal/schema/index.d.ts.map +1 -0
- package/dist/types/src/internal/schema/manipulation.d.ts +10 -0
- package/dist/types/src/internal/schema/manipulation.d.ts.map +1 -0
- package/dist/types/src/internal/schema/runtime-schema-registry.d.ts +18 -0
- package/dist/types/src/internal/schema/runtime-schema-registry.d.ts.map +1 -0
- package/dist/types/src/internal/schema/snapshot.d.ts +6 -0
- package/dist/types/src/internal/schema/snapshot.d.ts.map +1 -0
- package/dist/types/src/internal/schema/stored-schema.d.ts +13 -0
- package/dist/types/src/internal/schema/stored-schema.d.ts.map +1 -0
- package/dist/types/src/internal/testing/index.d.ts +3 -0
- package/dist/types/src/internal/testing/index.d.ts.map +1 -0
- package/dist/types/src/internal/testing/types.d.ts +455 -0
- package/dist/types/src/internal/testing/types.d.ts.map +1 -0
- package/dist/types/src/internal/testing/utils.d.ts +10 -0
- package/dist/types/src/internal/testing/utils.d.ts.map +1 -0
- package/dist/types/src/internal/types/index.d.ts +3 -0
- package/dist/types/src/internal/types/index.d.ts.map +1 -0
- package/dist/types/src/internal/types/types.d.ts +79 -0
- package/dist/types/src/internal/types/types.d.ts.map +1 -0
- package/dist/types/src/internal/types/types.test.d.ts +2 -0
- package/dist/types/src/internal/types/types.test.d.ts.map +1 -0
- package/dist/types/src/internal/types/util.d.ts +5 -0
- package/dist/types/src/internal/types/util.d.ts.map +1 -0
- package/dist/types/src/query/index.d.ts +2 -1
- package/dist/types/src/query/index.d.ts.map +1 -1
- package/dist/types/src/query/{dsl.d.ts → query.d.ts} +28 -23
- package/dist/types/src/query/query.d.ts.map +1 -0
- package/dist/types/src/query/query.test.d.ts +2 -0
- package/dist/types/src/query/query.test.d.ts.map +1 -0
- package/dist/types/src/query/tag.d.ts +17 -0
- package/dist/types/src/query/tag.d.ts.map +1 -0
- package/dist/types/src/testing/echo-schema.d.ts +7 -0
- package/dist/types/src/testing/echo-schema.d.ts.map +1 -0
- package/dist/types/src/testing/index.d.ts +2 -0
- package/dist/types/src/testing/index.d.ts.map +1 -1
- package/dist/types/src/testing/types.d.ts +18 -18
- package/dist/types/src/testing/types.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +29 -18
- package/src/Obj.ts +77 -12
- package/src/Ref.ts +1 -2
- package/src/Relation.ts +15 -5
- package/src/Type.ts +29 -30
- package/src/index.ts +2 -2
- package/src/internal/ast/annotation-helper.ts +22 -0
- package/src/internal/ast/annotations.test.ts +98 -0
- package/src/internal/ast/annotations.ts +219 -0
- package/src/internal/ast/entity-kind.ts +15 -0
- package/src/internal/ast/index.ts +8 -0
- package/src/internal/ast/types.ts +17 -0
- package/src/internal/formats/date.test.ts +56 -0
- package/src/internal/formats/date.ts +217 -0
- package/src/internal/formats/format.test.ts +77 -0
- package/src/internal/formats/format.ts +52 -0
- package/src/internal/formats/index.ts +12 -0
- package/src/internal/formats/number.ts +89 -0
- package/src/internal/formats/object.ts +80 -0
- package/src/internal/formats/select.ts +16 -0
- package/src/internal/formats/string.ts +76 -0
- package/src/internal/formats/types.ts +175 -0
- package/src/internal/index.ts +22 -0
- package/src/internal/json/annotations.ts +50 -0
- package/src/internal/json/effect-schema.test.ts +143 -0
- package/src/internal/json/index.ts +5 -0
- package/src/internal/json/json-schema.test.ts +857 -0
- package/src/internal/json/json-schema.ts +519 -0
- package/src/internal/json-schema/index.ts +6 -0
- package/src/internal/json-schema/json-schema-normalize.ts +109 -0
- package/src/internal/json-schema/json-schema-type.ts +403 -0
- package/src/internal/object/accessors.ts +153 -0
- package/src/internal/object/common.ts +76 -0
- package/src/internal/object/create.test.ts +118 -0
- package/src/internal/object/create.ts +96 -0
- package/src/internal/object/deleted.ts +19 -0
- package/src/internal/object/entity.ts +248 -0
- package/src/internal/object/expando.ts +21 -0
- package/src/internal/object/ids.ts +12 -0
- package/src/internal/object/index.ts +19 -0
- package/src/internal/object/inspect.ts +48 -0
- package/src/internal/object/json-serializer.test.ts +99 -0
- package/src/internal/object/json-serializer.ts +225 -0
- package/src/internal/object/meta.ts +61 -0
- package/src/internal/object/model.ts +170 -0
- package/src/internal/object/relation.ts +24 -0
- package/src/internal/object/schema-validator.test.ts +186 -0
- package/src/internal/object/schema-validator.ts +241 -0
- package/src/internal/object/typed-object.test.ts +34 -0
- package/src/internal/object/typed-object.ts +88 -0
- package/src/internal/object/typename.ts +61 -0
- package/src/internal/object/version.ts +22 -0
- package/src/internal/projection/compose.test.ts +43 -0
- package/src/internal/projection/compose.ts +36 -0
- package/src/internal/projection/index.ts +5 -0
- package/src/internal/proxy/handler.test.ts +163 -0
- package/src/internal/proxy/reactive-object.ts +108 -0
- package/src/internal/proxy/schema.test.ts +136 -0
- package/src/internal/proxy/typed-handler.test.ts +102 -0
- package/src/internal/proxy/typed-handler.ts +228 -0
- package/src/internal/proxy/typed-object.test.ts +100 -0
- package/src/internal/query/index.ts +5 -0
- package/src/internal/query/query.ts +23 -0
- package/src/internal/ref/index.ts +6 -0
- package/src/internal/ref/ref-array.ts +39 -0
- package/src/internal/ref/ref.test.ts +100 -0
- package/src/internal/ref/ref.ts +521 -0
- package/src/internal/schema/echo-schema.ts +383 -0
- package/src/internal/schema/index.ts +10 -0
- package/src/internal/schema/manipulation.ts +92 -0
- package/src/internal/schema/runtime-schema-registry.ts +78 -0
- package/src/internal/schema/snapshot.ts +25 -0
- package/src/internal/schema/stored-schema.ts +26 -0
- package/src/internal/testing/index.ts +6 -0
- package/src/internal/testing/types.ts +211 -0
- package/src/internal/testing/utils.ts +54 -0
- package/src/internal/types/index.ts +6 -0
- package/src/internal/types/types.test.ts +48 -0
- package/src/internal/types/types.ts +176 -0
- package/src/internal/types/util.ts +9 -0
- package/src/query/index.ts +2 -1
- package/src/query/query.test.ts +401 -0
- package/src/query/{dsl.ts → query.ts} +82 -45
- package/src/query/tag.ts +37 -0
- package/src/test/api.test.ts +9 -9
- package/src/testing/echo-schema.ts +39 -0
- package/src/testing/index.ts +2 -0
- package/src/testing/types.ts +1 -1
- package/dist/lib/browser/chunk-EIXXFUN5.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-TCY7IVTS.mjs.map +0 -7
- package/dist/types/src/experimental/database.d.ts +0 -8
- package/dist/types/src/experimental/database.d.ts.map +0 -1
- package/dist/types/src/experimental/index.d.ts +0 -1
- package/dist/types/src/experimental/index.d.ts.map +0 -1
- package/dist/types/src/experimental/queue.d.ts +0 -8
- package/dist/types/src/experimental/queue.d.ts.map +0 -1
- package/dist/types/src/experimental/space.d.ts +0 -8
- package/dist/types/src/experimental/space.d.ts.map +0 -1
- package/dist/types/src/query/dsl.d.ts.map +0 -1
- package/dist/types/src/query/dsl.test.d.ts +0 -2
- package/dist/types/src/query/dsl.test.d.ts.map +0 -1
- package/src/experimental/database.ts +0 -11
- package/src/experimental/index.ts +0 -7
- package/src/experimental/queue.ts +0 -11
- package/src/experimental/space.ts +0 -11
- package/src/query/dsl.test.ts +0 -362
|
@@ -1,254 +1,48 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
2
|
+
import {
|
|
3
|
+
EchoObject,
|
|
4
|
+
EchoRelation,
|
|
5
|
+
EntityKind,
|
|
6
|
+
EntityKindId,
|
|
7
|
+
Expando,
|
|
8
|
+
Format,
|
|
9
|
+
JsonSchemaType,
|
|
10
|
+
LabelAnnotation,
|
|
11
|
+
MetaId,
|
|
12
|
+
ObjectVersionId,
|
|
13
|
+
Ref,
|
|
14
|
+
RefArray,
|
|
15
|
+
VersionTypeId,
|
|
16
|
+
__export,
|
|
17
|
+
getDescription,
|
|
18
|
+
getLabel,
|
|
19
|
+
getMeta,
|
|
20
|
+
getObjectDXN,
|
|
21
|
+
getSchema,
|
|
22
|
+
getSchemaDXN,
|
|
23
|
+
getSchemaTypename,
|
|
24
|
+
getSchemaVersion,
|
|
25
|
+
getType,
|
|
26
|
+
getTypeAnnotation,
|
|
27
|
+
getTypeReference,
|
|
28
|
+
isDeleted,
|
|
29
|
+
isInstanceOf,
|
|
30
|
+
isMutable,
|
|
31
|
+
live,
|
|
32
|
+
objectFromJSON,
|
|
33
|
+
objectToJSON,
|
|
34
|
+
setDescription,
|
|
35
|
+
setLabel,
|
|
36
|
+
toEffectSchema,
|
|
37
|
+
toJsonSchema
|
|
38
|
+
} from "./chunk-BQRA4VLX.mjs";
|
|
30
39
|
|
|
31
|
-
// src/
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
}
|
|
37
|
-
import { SpaceId, ObjectId } from "@dxos/keys";
|
|
38
|
-
|
|
39
|
-
// src/Obj.ts
|
|
40
|
-
var Obj_exports = {};
|
|
41
|
-
__export(Obj_exports, {
|
|
42
|
-
Meta: () => Meta,
|
|
43
|
-
VersionTypeId: () => VersionTypeId2,
|
|
44
|
-
clone: () => clone,
|
|
45
|
-
compareVersions: () => compareVersions,
|
|
46
|
-
decodeVersion: () => decodeVersion,
|
|
47
|
-
deleteKeys: () => deleteKeys,
|
|
48
|
-
encodeVersion: () => encodeVersion,
|
|
49
|
-
fromJSON: () => fromJSON,
|
|
50
|
-
getDXN: () => getDXN,
|
|
51
|
-
getKeys: () => getKeys,
|
|
52
|
-
getLabel: () => getLabel2,
|
|
53
|
-
getMeta: () => getMeta2,
|
|
54
|
-
getSchema: () => getSchema2,
|
|
55
|
-
getSnapshot: () => getSnapshot2,
|
|
56
|
-
getTypeDXN: () => getTypeDXN,
|
|
57
|
-
getTypename: () => getTypename,
|
|
58
|
-
instanceOf: () => instanceOf,
|
|
59
|
-
isDeleted: () => isDeleted2,
|
|
60
|
-
isObject: () => isObject,
|
|
61
|
-
isVersion: () => isVersion,
|
|
62
|
-
make: () => make,
|
|
63
|
-
setLabel: () => setLabel2,
|
|
64
|
-
toJSON: () => toJSON,
|
|
65
|
-
version: () => version,
|
|
66
|
-
versionValid: () => versionValid
|
|
67
|
-
});
|
|
68
|
-
import { Schema } from "effect";
|
|
69
|
-
import { dual } from "effect/Function";
|
|
70
|
-
import * as EchoSchema from "@dxos/echo-schema";
|
|
71
|
-
import { assertArgument, invariant } from "@dxos/invariant";
|
|
72
|
-
import * as LiveObject from "@dxos/live-object";
|
|
73
|
-
import { live } from "@dxos/live-object";
|
|
74
|
-
import { assumeType, deepMapValues } from "@dxos/util";
|
|
75
|
-
var __dxlog_file = "/__w/dxos/dxos/packages/core/echo/echo/src/Obj.ts";
|
|
76
|
-
var Meta = EchoSchema.MetaId;
|
|
77
|
-
var make = (schema, props, meta) => {
|
|
78
|
-
assertArgument(EchoSchema.getTypeAnnotation(schema)?.kind === EchoSchema.EntityKind.Object, "schema", "Expected an object schema");
|
|
79
|
-
if (props[EchoSchema.MetaId] != null) {
|
|
80
|
-
meta = props[EchoSchema.MetaId];
|
|
81
|
-
delete props[EchoSchema.MetaId];
|
|
82
|
-
}
|
|
83
|
-
return live(schema, props, meta);
|
|
84
|
-
};
|
|
85
|
-
var isObject = (obj) => {
|
|
86
|
-
assumeType(obj);
|
|
87
|
-
return typeof obj === "object" && obj !== null && obj[EchoSchema.EntityKindId] === EchoSchema.EntityKind.Object;
|
|
88
|
-
};
|
|
89
|
-
var instanceOf = (...args) => {
|
|
90
|
-
if (args.length === 1) {
|
|
91
|
-
return (obj) => EchoSchema.isInstanceOf(args[0], obj);
|
|
92
|
-
}
|
|
93
|
-
return EchoSchema.isInstanceOf(args[0], args[1]);
|
|
94
|
-
};
|
|
95
|
-
var getSchema2 = EchoSchema.getSchema;
|
|
96
|
-
var getDXN = (obj) => {
|
|
97
|
-
assertArgument(!Schema.isSchema(obj), "obj", "Object should not be a schema.");
|
|
98
|
-
const dxn = EchoSchema.getObjectDXN(obj);
|
|
99
|
-
invariant(dxn != null, "Invalid object.", {
|
|
100
|
-
F: __dxlog_file,
|
|
101
|
-
L: 113,
|
|
102
|
-
S: void 0,
|
|
103
|
-
A: [
|
|
104
|
-
"dxn != null",
|
|
105
|
-
"'Invalid object.'"
|
|
106
|
-
]
|
|
107
|
-
});
|
|
108
|
-
return dxn;
|
|
109
|
-
};
|
|
110
|
-
var getTypeDXN = EchoSchema.getType;
|
|
111
|
-
var getTypename = (obj) => {
|
|
112
|
-
const schema = getSchema2(obj);
|
|
113
|
-
if (schema == null) {
|
|
114
|
-
return EchoSchema.getType(obj)?.asTypeDXN()?.type;
|
|
115
|
-
}
|
|
116
|
-
return EchoSchema.getSchemaTypename(schema);
|
|
117
|
-
};
|
|
118
|
-
var getMeta2 = (obj) => {
|
|
119
|
-
const meta = EchoSchema.getMeta(obj);
|
|
120
|
-
invariant(meta != null, "Invalid object.", {
|
|
121
|
-
F: __dxlog_file,
|
|
122
|
-
L: 141,
|
|
123
|
-
S: void 0,
|
|
124
|
-
A: [
|
|
125
|
-
"meta != null",
|
|
126
|
-
"'Invalid object.'"
|
|
127
|
-
]
|
|
128
|
-
});
|
|
129
|
-
return meta;
|
|
130
|
-
};
|
|
131
|
-
var getKeys = dual(2, (obj, source) => {
|
|
132
|
-
const meta = EchoSchema.getMeta(obj);
|
|
133
|
-
invariant(meta != null, "Invalid object.", {
|
|
134
|
-
F: __dxlog_file,
|
|
135
|
-
L: 153,
|
|
136
|
-
S: void 0,
|
|
137
|
-
A: [
|
|
138
|
-
"meta != null",
|
|
139
|
-
"'Invalid object.'"
|
|
140
|
-
]
|
|
141
|
-
});
|
|
142
|
-
return meta.keys.filter((key) => key.source === source);
|
|
143
|
-
});
|
|
144
|
-
var deleteKeys = (obj, source) => {
|
|
145
|
-
const meta = EchoSchema.getMeta(obj);
|
|
146
|
-
for (let i = 0; i < meta.keys.length; i++) {
|
|
147
|
-
if (meta.keys[i].source === source) {
|
|
148
|
-
meta.keys.splice(i, 1);
|
|
149
|
-
i--;
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
};
|
|
153
|
-
var isDeleted2 = (obj) => {
|
|
154
|
-
const deleted = EchoSchema.isDeleted(obj);
|
|
155
|
-
invariant(typeof deleted === "boolean", "Invalid object.", {
|
|
156
|
-
F: __dxlog_file,
|
|
157
|
-
L: 175,
|
|
158
|
-
S: void 0,
|
|
159
|
-
A: [
|
|
160
|
-
"typeof deleted === 'boolean'",
|
|
161
|
-
"'Invalid object.'"
|
|
162
|
-
]
|
|
163
|
-
});
|
|
164
|
-
return deleted;
|
|
165
|
-
};
|
|
166
|
-
var getLabel2 = (obj) => {
|
|
167
|
-
const schema = getSchema2(obj);
|
|
168
|
-
if (schema != null) {
|
|
169
|
-
return EchoSchema.getLabel(schema, obj);
|
|
170
|
-
}
|
|
171
|
-
};
|
|
172
|
-
var setLabel2 = (obj, label) => {
|
|
173
|
-
const schema = getSchema2(obj);
|
|
174
|
-
if (schema != null) {
|
|
175
|
-
EchoSchema.setLabel(schema, obj, label);
|
|
176
|
-
}
|
|
177
|
-
};
|
|
178
|
-
var toJSON = (obj) => EchoSchema.objectToJSON(obj);
|
|
179
|
-
var fromJSON = EchoSchema.objectFromJSON;
|
|
180
|
-
var getSnapshot2 = LiveObject.getSnapshot;
|
|
181
|
-
var clone = (obj, opts) => {
|
|
182
|
-
const { id, ...data } = obj;
|
|
183
|
-
const schema = getSchema2(obj);
|
|
184
|
-
invariant(schema != null, "Object should have a schema", {
|
|
185
|
-
F: __dxlog_file,
|
|
186
|
-
L: 240,
|
|
187
|
-
S: void 0,
|
|
188
|
-
A: [
|
|
189
|
-
"schema != null",
|
|
190
|
-
"'Object should have a schema'"
|
|
191
|
-
]
|
|
192
|
-
});
|
|
193
|
-
const props = deepMapValues(data, (value, recurse) => {
|
|
194
|
-
if (EchoSchema.Ref.isRef(value)) {
|
|
195
|
-
return value;
|
|
196
|
-
}
|
|
197
|
-
return recurse(value);
|
|
198
|
-
});
|
|
199
|
-
if (opts?.retainId) {
|
|
200
|
-
props.id = id;
|
|
201
|
-
}
|
|
202
|
-
const meta = getMeta2(obj);
|
|
203
|
-
props[EchoSchema.MetaId] = deepMapValues(meta, (value, recurse) => {
|
|
204
|
-
if (EchoSchema.Ref.isRef(value)) {
|
|
205
|
-
return value;
|
|
206
|
-
}
|
|
207
|
-
return recurse(value);
|
|
208
|
-
});
|
|
209
|
-
return make(schema, props);
|
|
210
|
-
};
|
|
211
|
-
var VersionTypeId2 = EchoSchema.VersionTypeId;
|
|
212
|
-
var unversioned = {
|
|
213
|
-
[VersionTypeId2]: {},
|
|
214
|
-
versioned: false
|
|
215
|
-
};
|
|
216
|
-
var isVersion = (obj) => {
|
|
217
|
-
return obj != null && typeof obj === "object" && VersionTypeId2 in obj;
|
|
218
|
-
};
|
|
219
|
-
var version = (obj) => {
|
|
220
|
-
const version2 = obj[EchoSchema.ObjectVersionId];
|
|
221
|
-
if (version2 === void 0) {
|
|
222
|
-
return unversioned;
|
|
223
|
-
}
|
|
224
|
-
return version2;
|
|
225
|
-
};
|
|
226
|
-
var versionValid = (version2) => {
|
|
227
|
-
assertArgument(isVersion(version2), "version", "Invalid version object");
|
|
228
|
-
return !!version2.versioned;
|
|
229
|
-
};
|
|
230
|
-
var compareVersions = (version1, version2) => {
|
|
231
|
-
assertArgument(isVersion(version1), "version1", "Invalid version object");
|
|
232
|
-
assertArgument(isVersion(version2), "version2", "Invalid version object");
|
|
233
|
-
if (!versionValid(version1) || !versionValid(version2)) {
|
|
234
|
-
return "unversioned";
|
|
235
|
-
}
|
|
236
|
-
if (version1.automergeHeads?.length !== version2.automergeHeads?.length) {
|
|
237
|
-
return "different";
|
|
238
|
-
}
|
|
239
|
-
if (version1.automergeHeads?.some((head) => !version2.automergeHeads?.includes(head))) {
|
|
240
|
-
return "different";
|
|
241
|
-
}
|
|
242
|
-
return "equal";
|
|
243
|
-
};
|
|
244
|
-
var encodeVersion = (version2) => {
|
|
245
|
-
return JSON.stringify(version2);
|
|
246
|
-
};
|
|
247
|
-
var decodeVersion = (version2) => {
|
|
248
|
-
const parsed = JSON.parse(version2);
|
|
249
|
-
parsed[VersionTypeId2] = {};
|
|
250
|
-
return parsed;
|
|
251
|
-
};
|
|
40
|
+
// src/query/query.ts
|
|
41
|
+
import * as Match from "effect/Match";
|
|
42
|
+
import * as Schema from "effect/Schema";
|
|
43
|
+
import { raise } from "@dxos/debug";
|
|
44
|
+
import { assertArgument } from "@dxos/invariant";
|
|
45
|
+
import { DXN, ObjectId } from "@dxos/keys";
|
|
252
46
|
|
|
253
47
|
// src/Ref.ts
|
|
254
48
|
var Ref_exports = {};
|
|
@@ -256,210 +50,30 @@ __export(Ref_exports, {
|
|
|
256
50
|
Array: () => Array2,
|
|
257
51
|
fromDXN: () => fromDXN,
|
|
258
52
|
isRef: () => isRef,
|
|
259
|
-
make: () =>
|
|
260
|
-
});
|
|
261
|
-
import * as EchoSchema2 from "@dxos/echo-schema";
|
|
262
|
-
var Array2 = EchoSchema2.RefArray;
|
|
263
|
-
var isRef = EchoSchema2.Ref.isRef;
|
|
264
|
-
var make2 = EchoSchema2.Ref.make;
|
|
265
|
-
var fromDXN = EchoSchema2.Ref.fromDXN;
|
|
266
|
-
|
|
267
|
-
// src/Relation.ts
|
|
268
|
-
var Relation_exports = {};
|
|
269
|
-
__export(Relation_exports, {
|
|
270
|
-
Source: () => Source,
|
|
271
|
-
Target: () => Target,
|
|
272
|
-
getSource: () => getSource,
|
|
273
|
-
getSourceDXN: () => getSourceDXN,
|
|
274
|
-
getTarget: () => getTarget,
|
|
275
|
-
getTargetDXN: () => getTargetDXN,
|
|
276
|
-
isRelation: () => isRelation,
|
|
277
|
-
make: () => make3
|
|
278
|
-
});
|
|
279
|
-
import { raise } from "@dxos/debug";
|
|
280
|
-
import * as EchoSchema3 from "@dxos/echo-schema";
|
|
281
|
-
import { assertArgument as assertArgument2, invariant as invariant2 } from "@dxos/invariant";
|
|
282
|
-
import { DXN } from "@dxos/keys";
|
|
283
|
-
import { live as live2 } from "@dxos/live-object";
|
|
284
|
-
import { assumeType as assumeType2 } from "@dxos/util";
|
|
285
|
-
var __dxlog_file2 = "/__w/dxos/dxos/packages/core/echo/echo/src/Relation.ts";
|
|
286
|
-
var Source = EchoSchema3.RelationSourceId;
|
|
287
|
-
var Target = EchoSchema3.RelationTargetId;
|
|
288
|
-
var make3 = (schema, props, meta) => {
|
|
289
|
-
assertArgument2(EchoSchema3.getTypeAnnotation(schema)?.kind === EchoSchema3.EntityKind.Relation, "schema", "Expected a relation schema");
|
|
290
|
-
if (props[EchoSchema3.MetaId] != null) {
|
|
291
|
-
meta = props[EchoSchema3.MetaId];
|
|
292
|
-
delete props[EchoSchema3.MetaId];
|
|
293
|
-
}
|
|
294
|
-
const sourceDXN = EchoSchema3.getObjectDXN(props[Source]) ?? raise(new Error("Unresolved relation source"));
|
|
295
|
-
const targetDXN = EchoSchema3.getObjectDXN(props[Target]) ?? raise(new Error("Unresolved relation target"));
|
|
296
|
-
props[EchoSchema3.RelationSourceDXNId] = sourceDXN;
|
|
297
|
-
props[EchoSchema3.RelationTargetDXNId] = targetDXN;
|
|
298
|
-
return live2(schema, props, meta);
|
|
299
|
-
};
|
|
300
|
-
var isRelation = (value) => {
|
|
301
|
-
if (typeof value !== "object" || value === null) {
|
|
302
|
-
return false;
|
|
303
|
-
}
|
|
304
|
-
if (EchoSchema3.ATTR_RELATION_SOURCE in value || EchoSchema3.ATTR_RELATION_TARGET in value) {
|
|
305
|
-
return true;
|
|
306
|
-
}
|
|
307
|
-
const kind = value[EchoSchema3.EntityKindId];
|
|
308
|
-
return kind === EchoSchema3.EntityKind.Relation;
|
|
309
|
-
};
|
|
310
|
-
var getSourceDXN = (value) => {
|
|
311
|
-
assertArgument2(isRelation(value), "Expected a relation");
|
|
312
|
-
assumeType2(value);
|
|
313
|
-
const dxn = value[EchoSchema3.RelationSourceDXNId];
|
|
314
|
-
invariant2(dxn instanceof DXN, void 0, {
|
|
315
|
-
F: __dxlog_file2,
|
|
316
|
-
L: 100,
|
|
317
|
-
S: void 0,
|
|
318
|
-
A: [
|
|
319
|
-
"dxn instanceof DXN",
|
|
320
|
-
""
|
|
321
|
-
]
|
|
322
|
-
});
|
|
323
|
-
return dxn;
|
|
324
|
-
};
|
|
325
|
-
var getTargetDXN = (value) => {
|
|
326
|
-
assertArgument2(isRelation(value), "Expected a relation");
|
|
327
|
-
assumeType2(value);
|
|
328
|
-
const dxn = value[EchoSchema3.RelationTargetDXNId];
|
|
329
|
-
invariant2(dxn instanceof DXN, void 0, {
|
|
330
|
-
F: __dxlog_file2,
|
|
331
|
-
L: 112,
|
|
332
|
-
S: void 0,
|
|
333
|
-
A: [
|
|
334
|
-
"dxn instanceof DXN",
|
|
335
|
-
""
|
|
336
|
-
]
|
|
337
|
-
});
|
|
338
|
-
return dxn;
|
|
339
|
-
};
|
|
340
|
-
var getSource = (relation) => {
|
|
341
|
-
assertArgument2(isRelation(relation), "Expected a relation");
|
|
342
|
-
assumeType2(relation);
|
|
343
|
-
const obj = relation[EchoSchema3.RelationSourceId];
|
|
344
|
-
invariant2(obj !== void 0, `Invalid source: ${relation.id}`, {
|
|
345
|
-
F: __dxlog_file2,
|
|
346
|
-
L: 124,
|
|
347
|
-
S: void 0,
|
|
348
|
-
A: [
|
|
349
|
-
"obj !== undefined",
|
|
350
|
-
"`Invalid source: ${relation.id}`"
|
|
351
|
-
]
|
|
352
|
-
});
|
|
353
|
-
return obj;
|
|
354
|
-
};
|
|
355
|
-
var getTarget = (relation) => {
|
|
356
|
-
assertArgument2(isRelation(relation), "Expected a relation");
|
|
357
|
-
assumeType2(relation);
|
|
358
|
-
const obj = relation[EchoSchema3.RelationTargetId];
|
|
359
|
-
invariant2(obj !== void 0, `Invalid target: ${relation.id}`, {
|
|
360
|
-
F: __dxlog_file2,
|
|
361
|
-
L: 136,
|
|
362
|
-
S: void 0,
|
|
363
|
-
A: [
|
|
364
|
-
"obj !== undefined",
|
|
365
|
-
"`Invalid target: ${relation.id}`"
|
|
366
|
-
]
|
|
367
|
-
});
|
|
368
|
-
return obj;
|
|
369
|
-
};
|
|
370
|
-
|
|
371
|
-
// src/Type.ts
|
|
372
|
-
var Type_exports = {};
|
|
373
|
-
__export(Type_exports, {
|
|
374
|
-
DXN: () => DXN2,
|
|
375
|
-
Expando: () => Expando2,
|
|
376
|
-
Format: () => Format,
|
|
377
|
-
JsonSchema: () => JsonSchemaType,
|
|
378
|
-
Kind: () => Kind,
|
|
379
|
-
KindId: () => KindId,
|
|
380
|
-
Obj: () => Obj,
|
|
381
|
-
ObjectId: () => ObjectId2,
|
|
382
|
-
Ref: () => Ref4,
|
|
383
|
-
Relation: () => Relation,
|
|
384
|
-
SpaceId: () => SpaceId2,
|
|
385
|
-
getDXN: () => getDXN2,
|
|
386
|
-
getMeta: () => getMeta3,
|
|
387
|
-
getTypename: () => getTypename2,
|
|
388
|
-
getVersion: () => getVersion,
|
|
389
|
-
isMutable: () => isMutable2,
|
|
390
|
-
toEffectSchema: () => toEffectSchema,
|
|
391
|
-
toJsonSchema: () => toJsonSchema
|
|
53
|
+
make: () => make
|
|
392
54
|
});
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
var __dxlog_file3 = "/__w/dxos/dxos/packages/core/echo/echo/src/Type.ts";
|
|
398
|
-
var KindId = EchoSchema4.EntityKindId;
|
|
399
|
-
var Kind = EchoSchema4.EntityKind;
|
|
400
|
-
var Obj = EchoSchema4.EchoObject;
|
|
401
|
-
var Expando2 = EchoSchema4.Expando;
|
|
402
|
-
var Relation = EchoSchema4.EchoRelation;
|
|
403
|
-
var Ref4 = EchoSchema4.Ref;
|
|
404
|
-
var getDXN2 = (schema) => {
|
|
405
|
-
return EchoSchema4.getSchemaDXN(schema);
|
|
406
|
-
};
|
|
407
|
-
var getTypename2 = (schema) => {
|
|
408
|
-
const typename = EchoSchema4.getSchemaTypename(schema);
|
|
409
|
-
invariant3(typeof typename === "string" && !typename.startsWith("dxn:"), "Invalid typename", {
|
|
410
|
-
F: __dxlog_file3,
|
|
411
|
-
L: 212,
|
|
412
|
-
S: void 0,
|
|
413
|
-
A: [
|
|
414
|
-
"typeof typename === 'string' && !typename.startsWith('dxn:')",
|
|
415
|
-
"'Invalid typename'"
|
|
416
|
-
]
|
|
417
|
-
});
|
|
418
|
-
return typename;
|
|
419
|
-
};
|
|
420
|
-
var getVersion = (schema) => {
|
|
421
|
-
const version2 = EchoSchema4.getSchemaVersion(schema);
|
|
422
|
-
invariant3(typeof version2 === "string" && version2.match(/^\d+\.\d+\.\d+$/), "Invalid version", {
|
|
423
|
-
F: __dxlog_file3,
|
|
424
|
-
L: 222,
|
|
425
|
-
S: void 0,
|
|
426
|
-
A: [
|
|
427
|
-
"typeof version === 'string' && version.match(/^\\d+\\.\\d+\\.\\d+$/)",
|
|
428
|
-
"'Invalid version'"
|
|
429
|
-
]
|
|
430
|
-
});
|
|
431
|
-
return version2;
|
|
432
|
-
};
|
|
433
|
-
var isMutable2 = EchoSchema4.isMutable;
|
|
434
|
-
var getMeta3 = (schema) => {
|
|
435
|
-
return EchoSchema4.getTypeAnnotation(schema);
|
|
436
|
-
};
|
|
437
|
-
|
|
438
|
-
// src/index.ts
|
|
439
|
-
import { DXN as DXN4 } from "@dxos/keys";
|
|
55
|
+
var Array2 = RefArray;
|
|
56
|
+
var isRef = Ref.isRef;
|
|
57
|
+
var make = Ref.make;
|
|
58
|
+
var fromDXN = Ref.fromDXN;
|
|
440
59
|
|
|
441
|
-
// src/query/
|
|
442
|
-
|
|
443
|
-
import { raise as raise2 } from "@dxos/debug";
|
|
444
|
-
import { getTypeReference } from "@dxos/echo-schema";
|
|
445
|
-
import { assertArgument as assertArgument3 } from "@dxos/invariant";
|
|
446
|
-
import { DXN as DXN3, ObjectId as ObjectId3 } from "@dxos/keys";
|
|
447
|
-
function _define_property(obj, key, value) {
|
|
60
|
+
// src/query/query.ts
|
|
61
|
+
function _define_property(obj, key, value2) {
|
|
448
62
|
if (key in obj) {
|
|
449
63
|
Object.defineProperty(obj, key, {
|
|
450
|
-
value,
|
|
64
|
+
value: value2,
|
|
451
65
|
enumerable: true,
|
|
452
66
|
configurable: true,
|
|
453
67
|
writable: true
|
|
454
68
|
});
|
|
455
69
|
} else {
|
|
456
|
-
obj[key] =
|
|
70
|
+
obj[key] = value2;
|
|
457
71
|
}
|
|
458
72
|
return obj;
|
|
459
73
|
}
|
|
460
74
|
var OrderClass = class _OrderClass {
|
|
461
|
-
static is(
|
|
462
|
-
return typeof
|
|
75
|
+
static is(value2) {
|
|
76
|
+
return typeof value2 === "object" && value2 !== null && "~Order" in value2;
|
|
463
77
|
}
|
|
464
78
|
constructor(ast) {
|
|
465
79
|
_define_property(this, "ast", void 0);
|
|
@@ -480,8 +94,11 @@ _define_property(OrderClass, "variance", {});
|
|
|
480
94
|
});
|
|
481
95
|
})(Order || (Order = {}));
|
|
482
96
|
var FilterClass = class _FilterClass {
|
|
483
|
-
static is(
|
|
484
|
-
return typeof
|
|
97
|
+
static is(value2) {
|
|
98
|
+
return typeof value2 === "object" && value2 !== null && "~Filter" in value2;
|
|
99
|
+
}
|
|
100
|
+
static fromAst(ast) {
|
|
101
|
+
return new _FilterClass(ast);
|
|
485
102
|
}
|
|
486
103
|
static everything() {
|
|
487
104
|
return new _FilterClass({
|
|
@@ -508,7 +125,7 @@ var FilterClass = class _FilterClass {
|
|
|
508
125
|
});
|
|
509
126
|
}
|
|
510
127
|
static ids(...ids) {
|
|
511
|
-
|
|
128
|
+
assertArgument(ids.every((id) => ObjectId.isValid(id)), "ids", "ids must be valid");
|
|
512
129
|
if (ids.length === 0) {
|
|
513
130
|
return Filter.nothing();
|
|
514
131
|
}
|
|
@@ -520,7 +137,7 @@ var FilterClass = class _FilterClass {
|
|
|
520
137
|
});
|
|
521
138
|
}
|
|
522
139
|
static type(schema, props) {
|
|
523
|
-
const dxn =
|
|
140
|
+
const dxn = getTypeDXNFromSpecifier(schema);
|
|
524
141
|
return new _FilterClass({
|
|
525
142
|
type: "object",
|
|
526
143
|
typename: dxn.toString(),
|
|
@@ -528,10 +145,10 @@ var FilterClass = class _FilterClass {
|
|
|
528
145
|
});
|
|
529
146
|
}
|
|
530
147
|
static typename(typename) {
|
|
531
|
-
|
|
148
|
+
assertArgument(!typename.startsWith("dxn:"), "typename", "Typename must no be qualified");
|
|
532
149
|
return new _FilterClass({
|
|
533
150
|
type: "object",
|
|
534
|
-
typename:
|
|
151
|
+
typename: DXN.fromTypename(typename).toString(),
|
|
535
152
|
props: {}
|
|
536
153
|
});
|
|
537
154
|
}
|
|
@@ -542,10 +159,13 @@ var FilterClass = class _FilterClass {
|
|
|
542
159
|
props: {}
|
|
543
160
|
});
|
|
544
161
|
}
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
162
|
+
static tag(tag) {
|
|
163
|
+
return new _FilterClass({
|
|
164
|
+
type: "tag",
|
|
165
|
+
tag
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
static props(props) {
|
|
549
169
|
return new _FilterClass({
|
|
550
170
|
type: "object",
|
|
551
171
|
typename: null,
|
|
@@ -560,7 +180,7 @@ var FilterClass = class _FilterClass {
|
|
|
560
180
|
});
|
|
561
181
|
}
|
|
562
182
|
static foreignKeys(schema, keys) {
|
|
563
|
-
const dxn =
|
|
183
|
+
const dxn = getTypeDXNFromSpecifier(schema);
|
|
564
184
|
return new _FilterClass({
|
|
565
185
|
type: "object",
|
|
566
186
|
typename: dxn.toString(),
|
|
@@ -568,49 +188,49 @@ var FilterClass = class _FilterClass {
|
|
|
568
188
|
foreignKeys: keys
|
|
569
189
|
});
|
|
570
190
|
}
|
|
571
|
-
static eq(
|
|
572
|
-
if (!isRef(
|
|
191
|
+
static eq(value2) {
|
|
192
|
+
if (!isRef(value2) && typeof value2 === "object" && value2 !== null) {
|
|
573
193
|
throw new TypeError("Cannot use object as a value for eq filter");
|
|
574
194
|
}
|
|
575
195
|
return new _FilterClass({
|
|
576
196
|
type: "compare",
|
|
577
197
|
operator: "eq",
|
|
578
|
-
value: isRef(
|
|
198
|
+
value: isRef(value2) ? value2.noInline().encode() : value2
|
|
579
199
|
});
|
|
580
200
|
}
|
|
581
|
-
static neq(
|
|
201
|
+
static neq(value2) {
|
|
582
202
|
return new _FilterClass({
|
|
583
203
|
type: "compare",
|
|
584
204
|
operator: "neq",
|
|
585
|
-
value
|
|
205
|
+
value: value2
|
|
586
206
|
});
|
|
587
207
|
}
|
|
588
|
-
static gt(
|
|
208
|
+
static gt(value2) {
|
|
589
209
|
return new _FilterClass({
|
|
590
210
|
type: "compare",
|
|
591
211
|
operator: "gt",
|
|
592
|
-
value
|
|
212
|
+
value: value2
|
|
593
213
|
});
|
|
594
214
|
}
|
|
595
|
-
static gte(
|
|
215
|
+
static gte(value2) {
|
|
596
216
|
return new _FilterClass({
|
|
597
217
|
type: "compare",
|
|
598
218
|
operator: "gte",
|
|
599
|
-
value
|
|
219
|
+
value: value2
|
|
600
220
|
});
|
|
601
221
|
}
|
|
602
|
-
static lt(
|
|
222
|
+
static lt(value2) {
|
|
603
223
|
return new _FilterClass({
|
|
604
224
|
type: "compare",
|
|
605
225
|
operator: "lt",
|
|
606
|
-
value
|
|
226
|
+
value: value2
|
|
607
227
|
});
|
|
608
228
|
}
|
|
609
|
-
static lte(
|
|
229
|
+
static lte(value2) {
|
|
610
230
|
return new _FilterClass({
|
|
611
231
|
type: "compare",
|
|
612
232
|
operator: "lte",
|
|
613
|
-
value
|
|
233
|
+
value: value2
|
|
614
234
|
});
|
|
615
235
|
}
|
|
616
236
|
static in(...values) {
|
|
@@ -619,10 +239,10 @@ var FilterClass = class _FilterClass {
|
|
|
619
239
|
values
|
|
620
240
|
});
|
|
621
241
|
}
|
|
622
|
-
static contains(
|
|
242
|
+
static contains(value2) {
|
|
623
243
|
return new _FilterClass({
|
|
624
244
|
type: "contains",
|
|
625
|
-
value
|
|
245
|
+
value: value2
|
|
626
246
|
});
|
|
627
247
|
}
|
|
628
248
|
static between(from, to) {
|
|
@@ -662,11 +282,11 @@ var Filter = FilterClass;
|
|
|
662
282
|
var propsFilterToAst = (predicates) => {
|
|
663
283
|
let idFilter;
|
|
664
284
|
if ("id" in predicates) {
|
|
665
|
-
|
|
285
|
+
assertArgument(typeof predicates.id === "string" || Array.isArray(predicates.id), "predicates.id", "invalid id filter");
|
|
666
286
|
idFilter = typeof predicates.id === "string" ? [
|
|
667
287
|
predicates.id
|
|
668
288
|
] : predicates.id;
|
|
669
|
-
|
|
289
|
+
Schema.Array(ObjectId).pipe(Schema.validateSync)(idFilter);
|
|
670
290
|
}
|
|
671
291
|
return {
|
|
672
292
|
id: idFilter,
|
|
@@ -685,9 +305,9 @@ var processPredicate = (predicate) => {
|
|
|
685
305
|
throw new Error("Array predicates are not yet supported.");
|
|
686
306
|
}),
|
|
687
307
|
Match.when((predicate2) => !isRef(predicate2) && typeof predicate2 === "object" && predicate2 !== null, (predicate2) => {
|
|
688
|
-
const nestedProps = Object.fromEntries(Object.entries(predicate2).map(([key,
|
|
308
|
+
const nestedProps = Object.fromEntries(Object.entries(predicate2).map(([key, value2]) => [
|
|
689
309
|
key,
|
|
690
|
-
processPredicate(
|
|
310
|
+
processPredicate(value2)
|
|
691
311
|
]));
|
|
692
312
|
return {
|
|
693
313
|
type: "object",
|
|
@@ -695,12 +315,12 @@ var processPredicate = (predicate) => {
|
|
|
695
315
|
props: nestedProps
|
|
696
316
|
};
|
|
697
317
|
}),
|
|
698
|
-
Match.orElse((
|
|
318
|
+
Match.orElse((value2) => Filter.eq(value2).ast)
|
|
699
319
|
);
|
|
700
320
|
};
|
|
701
321
|
var QueryClass = class _QueryClass {
|
|
702
|
-
static is(
|
|
703
|
-
return typeof
|
|
322
|
+
static is(value2) {
|
|
323
|
+
return typeof value2 === "object" && value2 !== null && "~Query" in value2;
|
|
704
324
|
}
|
|
705
325
|
static fromAst(ast) {
|
|
706
326
|
return new _QueryClass(ast);
|
|
@@ -744,7 +364,7 @@ var QueryClass = class _QueryClass {
|
|
|
744
364
|
return new _QueryClass({
|
|
745
365
|
type: "filter",
|
|
746
366
|
selection: this.ast,
|
|
747
|
-
filter: FilterClass.
|
|
367
|
+
filter: FilterClass.props(filter).ast
|
|
748
368
|
});
|
|
749
369
|
}
|
|
750
370
|
}
|
|
@@ -756,7 +376,7 @@ var QueryClass = class _QueryClass {
|
|
|
756
376
|
});
|
|
757
377
|
}
|
|
758
378
|
referencedBy(target, key) {
|
|
759
|
-
const dxn =
|
|
379
|
+
const dxn = getTypeDXNFromSpecifier(target);
|
|
760
380
|
return new _QueryClass({
|
|
761
381
|
type: "incoming-references",
|
|
762
382
|
anchor: this.ast,
|
|
@@ -817,23 +437,394 @@ var QueryClass = class _QueryClass {
|
|
|
817
437
|
};
|
|
818
438
|
_define_property(QueryClass, "variance", {});
|
|
819
439
|
var Query = QueryClass;
|
|
440
|
+
var getTypeDXNFromSpecifier = (input) => {
|
|
441
|
+
if (Schema.isSchema(input)) {
|
|
442
|
+
return getTypeReference(input)?.toDXN() ?? raise(new TypeError("Schema has no DXN"));
|
|
443
|
+
} else {
|
|
444
|
+
assertArgument(typeof input === "string", "input");
|
|
445
|
+
assertArgument(!input.startsWith("dxn:"), "input");
|
|
446
|
+
return DXN.fromTypename(input);
|
|
447
|
+
}
|
|
448
|
+
};
|
|
820
449
|
var Order;
|
|
821
450
|
|
|
822
|
-
// src/
|
|
823
|
-
|
|
451
|
+
// src/query/tag.ts
|
|
452
|
+
var tag_exports = {};
|
|
453
|
+
__export(tag_exports, {
|
|
454
|
+
Tag: () => Tag,
|
|
455
|
+
createTagList: () => createTagList,
|
|
456
|
+
findTagByLabel: () => findTagByLabel,
|
|
457
|
+
make: () => make3,
|
|
458
|
+
sortTags: () => sortTags
|
|
459
|
+
});
|
|
460
|
+
import * as Schema3 from "effect/Schema";
|
|
461
|
+
|
|
462
|
+
// src/Obj.ts
|
|
463
|
+
var Obj_exports = {};
|
|
464
|
+
__export(Obj_exports, {
|
|
465
|
+
Any: () => Any,
|
|
466
|
+
Meta: () => Meta,
|
|
467
|
+
VersionTypeId: () => VersionTypeId2,
|
|
468
|
+
clone: () => clone,
|
|
469
|
+
compareVersions: () => compareVersions,
|
|
470
|
+
decodeVersion: () => decodeVersion,
|
|
471
|
+
deleteKeys: () => deleteKeys,
|
|
472
|
+
encodeVersion: () => encodeVersion,
|
|
473
|
+
fromJSON: () => fromJSON,
|
|
474
|
+
getDXN: () => getDXN2,
|
|
475
|
+
getDescription: () => getDescription2,
|
|
476
|
+
getKeys: () => getKeys,
|
|
477
|
+
getLabel: () => getLabel2,
|
|
478
|
+
getMeta: () => getMeta3,
|
|
479
|
+
getSchema: () => getSchema2,
|
|
480
|
+
getSnapshot: () => getSnapshot2,
|
|
481
|
+
getTypeDXN: () => getTypeDXN,
|
|
482
|
+
getTypename: () => getTypename2,
|
|
483
|
+
instanceOf: () => instanceOf,
|
|
484
|
+
isDeleted: () => isDeleted2,
|
|
485
|
+
isObject: () => isObject,
|
|
486
|
+
isVersion: () => isVersion,
|
|
487
|
+
make: () => make2,
|
|
488
|
+
setDescription: () => setDescription2,
|
|
489
|
+
setLabel: () => setLabel2,
|
|
490
|
+
sort: () => sort,
|
|
491
|
+
sortByLabel: () => sortByLabel,
|
|
492
|
+
sortByTypename: () => sortByTypename,
|
|
493
|
+
toJSON: () => toJSON,
|
|
494
|
+
version: () => version,
|
|
495
|
+
versionValid: () => versionValid
|
|
496
|
+
});
|
|
497
|
+
import * as Function from "effect/Function";
|
|
498
|
+
import * as Schema2 from "effect/Schema";
|
|
499
|
+
import { assertArgument as assertArgument2, invariant as invariant2 } from "@dxos/invariant";
|
|
500
|
+
import * as LiveObject from "@dxos/live-object";
|
|
501
|
+
import { assumeType, deepMapValues } from "@dxos/util";
|
|
502
|
+
|
|
503
|
+
// src/Type.ts
|
|
504
|
+
var Type_exports = {};
|
|
505
|
+
__export(Type_exports, {
|
|
506
|
+
DXN: () => DXN2,
|
|
507
|
+
Expando: () => Expando2,
|
|
508
|
+
Format: () => Format,
|
|
509
|
+
JsonSchema: () => JsonSchemaType,
|
|
510
|
+
Kind: () => Kind,
|
|
511
|
+
KindId: () => KindId,
|
|
512
|
+
Obj: () => Obj,
|
|
513
|
+
ObjectId: () => ObjectId2,
|
|
514
|
+
Ref: () => Ref2,
|
|
515
|
+
Relation: () => Relation,
|
|
516
|
+
SpaceId: () => SpaceId,
|
|
517
|
+
getDXN: () => getDXN,
|
|
518
|
+
getMeta: () => getMeta2,
|
|
519
|
+
getTypename: () => getTypename,
|
|
520
|
+
getVersion: () => getVersion,
|
|
521
|
+
isMutable: () => isMutable2,
|
|
522
|
+
toEffectSchema: () => toEffectSchema,
|
|
523
|
+
toJsonSchema: () => toJsonSchema
|
|
524
|
+
});
|
|
525
|
+
import { invariant } from "@dxos/invariant";
|
|
526
|
+
import { SpaceId, ObjectId as ObjectId2, DXN as DXN2 } from "@dxos/keys";
|
|
527
|
+
var __dxlog_file = "/__w/dxos/dxos/packages/core/echo/echo/src/Type.ts";
|
|
528
|
+
var KindId = EntityKindId;
|
|
529
|
+
var Kind = EntityKind;
|
|
530
|
+
var Obj = EchoObject;
|
|
531
|
+
var Expando2 = Expando;
|
|
532
|
+
var Relation = EchoRelation;
|
|
533
|
+
var Ref2 = Ref;
|
|
534
|
+
var getDXN = (schema) => {
|
|
535
|
+
return getSchemaDXN(schema);
|
|
536
|
+
};
|
|
537
|
+
var getTypename = (schema) => {
|
|
538
|
+
const typename = getSchemaTypename(schema);
|
|
539
|
+
invariant(typeof typename === "string" && !typename.startsWith("dxn:"), "Invalid typename", {
|
|
540
|
+
F: __dxlog_file,
|
|
541
|
+
L: 211,
|
|
542
|
+
S: void 0,
|
|
543
|
+
A: [
|
|
544
|
+
"typeof typename === 'string' && !typename.startsWith('dxn:')",
|
|
545
|
+
"'Invalid typename'"
|
|
546
|
+
]
|
|
547
|
+
});
|
|
548
|
+
return typename;
|
|
549
|
+
};
|
|
550
|
+
var getVersion = (schema) => {
|
|
551
|
+
const version2 = getSchemaVersion(schema);
|
|
552
|
+
invariant(typeof version2 === "string" && version2.match(/^\d+\.\d+\.\d+$/), "Invalid version", {
|
|
553
|
+
F: __dxlog_file,
|
|
554
|
+
L: 221,
|
|
555
|
+
S: void 0,
|
|
556
|
+
A: [
|
|
557
|
+
"typeof version === 'string' && version.match(/^\\d+\\.\\d+\\.\\d+$/)",
|
|
558
|
+
"'Invalid version'"
|
|
559
|
+
]
|
|
560
|
+
});
|
|
561
|
+
return version2;
|
|
562
|
+
};
|
|
563
|
+
var isMutable2 = isMutable;
|
|
564
|
+
var getMeta2 = (schema) => {
|
|
565
|
+
return getTypeAnnotation(schema);
|
|
566
|
+
};
|
|
567
|
+
|
|
568
|
+
// src/Obj.ts
|
|
569
|
+
var __dxlog_file2 = "/__w/dxos/dxos/packages/core/echo/echo/src/Obj.ts";
|
|
570
|
+
var Any = Schema2.Struct({}).pipe(Obj({
|
|
571
|
+
typename: "dxos.org/types/Any",
|
|
572
|
+
version: "0.1.0"
|
|
573
|
+
}));
|
|
574
|
+
var Meta = MetaId;
|
|
575
|
+
var DEFAULT_META = {
|
|
576
|
+
keys: []
|
|
577
|
+
};
|
|
578
|
+
var make2 = (schema, props, meta) => {
|
|
579
|
+
assertArgument2(getTypeAnnotation(schema)?.kind === EntityKind.Object, "schema", "Expected an object schema");
|
|
580
|
+
if (props[MetaId] != null) {
|
|
581
|
+
meta = {
|
|
582
|
+
...structuredClone(DEFAULT_META),
|
|
583
|
+
...props[MetaId]
|
|
584
|
+
};
|
|
585
|
+
delete props[MetaId];
|
|
586
|
+
}
|
|
587
|
+
const filterUndefined = Object.fromEntries(Object.entries(props).filter(([_, v]) => v !== void 0));
|
|
588
|
+
return live(schema, filterUndefined, {
|
|
589
|
+
keys: [],
|
|
590
|
+
...meta
|
|
591
|
+
});
|
|
592
|
+
};
|
|
593
|
+
var isObject = (obj) => {
|
|
594
|
+
assumeType(obj);
|
|
595
|
+
return typeof obj === "object" && obj !== null && obj[EntityKindId] === EntityKind.Object;
|
|
596
|
+
};
|
|
597
|
+
var instanceOf = (...args) => {
|
|
598
|
+
if (args.length === 1) {
|
|
599
|
+
return (obj) => isInstanceOf(args[0], obj);
|
|
600
|
+
}
|
|
601
|
+
return isInstanceOf(args[0], args[1]);
|
|
602
|
+
};
|
|
603
|
+
var getSchema2 = getSchema;
|
|
604
|
+
var getDXN2 = (obj) => {
|
|
605
|
+
assertArgument2(!Schema2.isSchema(obj), "obj", "Object should not be a schema.");
|
|
606
|
+
const dxn = getObjectDXN(obj);
|
|
607
|
+
invariant2(dxn != null, "Invalid object.", {
|
|
608
|
+
F: __dxlog_file2,
|
|
609
|
+
L: 136,
|
|
610
|
+
S: void 0,
|
|
611
|
+
A: [
|
|
612
|
+
"dxn != null",
|
|
613
|
+
"'Invalid object.'"
|
|
614
|
+
]
|
|
615
|
+
});
|
|
616
|
+
return dxn;
|
|
617
|
+
};
|
|
618
|
+
var getTypeDXN = getType;
|
|
619
|
+
var getTypename2 = (obj) => {
|
|
620
|
+
const schema = getSchema2(obj);
|
|
621
|
+
if (schema == null) {
|
|
622
|
+
return getType(obj)?.asTypeDXN()?.type;
|
|
623
|
+
}
|
|
624
|
+
return getSchemaTypename(schema);
|
|
625
|
+
};
|
|
626
|
+
var getMeta3 = (obj) => {
|
|
627
|
+
const meta = getMeta(obj);
|
|
628
|
+
invariant2(meta != null, "Invalid object.", {
|
|
629
|
+
F: __dxlog_file2,
|
|
630
|
+
L: 164,
|
|
631
|
+
S: void 0,
|
|
632
|
+
A: [
|
|
633
|
+
"meta != null",
|
|
634
|
+
"'Invalid object.'"
|
|
635
|
+
]
|
|
636
|
+
});
|
|
637
|
+
return meta;
|
|
638
|
+
};
|
|
639
|
+
var getKeys = Function.dual(2, (obj, source) => {
|
|
640
|
+
const meta = getMeta(obj);
|
|
641
|
+
invariant2(meta != null, "Invalid object.", {
|
|
642
|
+
F: __dxlog_file2,
|
|
643
|
+
L: 176,
|
|
644
|
+
S: void 0,
|
|
645
|
+
A: [
|
|
646
|
+
"meta != null",
|
|
647
|
+
"'Invalid object.'"
|
|
648
|
+
]
|
|
649
|
+
});
|
|
650
|
+
return meta.keys.filter((key) => key.source === source);
|
|
651
|
+
});
|
|
652
|
+
var deleteKeys = (obj, source) => {
|
|
653
|
+
const meta = getMeta(obj);
|
|
654
|
+
for (let i = 0; i < meta.keys.length; i++) {
|
|
655
|
+
if (meta.keys[i].source === source) {
|
|
656
|
+
meta.keys.splice(i, 1);
|
|
657
|
+
i--;
|
|
658
|
+
}
|
|
659
|
+
}
|
|
660
|
+
};
|
|
661
|
+
var isDeleted2 = (obj) => {
|
|
662
|
+
const deleted = isDeleted(obj);
|
|
663
|
+
invariant2(typeof deleted === "boolean", "Invalid object.", {
|
|
664
|
+
F: __dxlog_file2,
|
|
665
|
+
L: 198,
|
|
666
|
+
S: void 0,
|
|
667
|
+
A: [
|
|
668
|
+
"typeof deleted === 'boolean'",
|
|
669
|
+
"'Invalid object.'"
|
|
670
|
+
]
|
|
671
|
+
});
|
|
672
|
+
return deleted;
|
|
673
|
+
};
|
|
674
|
+
var getLabel2 = (obj) => {
|
|
675
|
+
const schema = getSchema2(obj);
|
|
676
|
+
if (schema != null) {
|
|
677
|
+
return getLabel(schema, obj);
|
|
678
|
+
}
|
|
679
|
+
};
|
|
680
|
+
var setLabel2 = (obj, label) => {
|
|
681
|
+
const schema = getSchema2(obj);
|
|
682
|
+
if (schema != null) {
|
|
683
|
+
setLabel(schema, obj, label);
|
|
684
|
+
}
|
|
685
|
+
};
|
|
686
|
+
var getDescription2 = (obj) => {
|
|
687
|
+
const schema = getSchema2(obj);
|
|
688
|
+
if (schema != null) {
|
|
689
|
+
return getDescription(schema, obj);
|
|
690
|
+
}
|
|
691
|
+
};
|
|
692
|
+
var setDescription2 = (obj, description) => {
|
|
693
|
+
const schema = getSchema2(obj);
|
|
694
|
+
if (schema != null) {
|
|
695
|
+
setDescription(schema, obj, description);
|
|
696
|
+
}
|
|
697
|
+
};
|
|
698
|
+
var compare = (a, b) => {
|
|
699
|
+
if (a == null) {
|
|
700
|
+
return b == null ? 0 : 1;
|
|
701
|
+
}
|
|
702
|
+
if (b == null) {
|
|
703
|
+
return -1;
|
|
704
|
+
}
|
|
705
|
+
return a.localeCompare(b);
|
|
706
|
+
};
|
|
707
|
+
var sortByLabel = (a, b) => compare(getLabel2(a), getLabel2(b));
|
|
708
|
+
var sortByTypename = (a, b) => compare(getTypename2(a), getTypename2(b));
|
|
709
|
+
var sort = (...comparators) => {
|
|
710
|
+
return (a, b) => {
|
|
711
|
+
for (const comparator of comparators) {
|
|
712
|
+
const result = comparator(a, b);
|
|
713
|
+
if (result !== 0) {
|
|
714
|
+
return result;
|
|
715
|
+
}
|
|
716
|
+
}
|
|
717
|
+
return 0;
|
|
718
|
+
};
|
|
719
|
+
};
|
|
720
|
+
var toJSON = (obj) => objectToJSON(obj);
|
|
721
|
+
var fromJSON = objectFromJSON;
|
|
722
|
+
var getSnapshot2 = LiveObject.getSnapshot;
|
|
723
|
+
var clone = (obj, opts) => {
|
|
724
|
+
const { id, ...data } = obj;
|
|
725
|
+
const schema = getSchema2(obj);
|
|
726
|
+
invariant2(schema != null, "Object should have a schema", {
|
|
727
|
+
F: __dxlog_file2,
|
|
728
|
+
L: 305,
|
|
729
|
+
S: void 0,
|
|
730
|
+
A: [
|
|
731
|
+
"schema != null",
|
|
732
|
+
"'Object should have a schema'"
|
|
733
|
+
]
|
|
734
|
+
});
|
|
735
|
+
const props = deepMapValues(data, (value2, recurse) => {
|
|
736
|
+
if (Ref.isRef(value2)) {
|
|
737
|
+
return value2;
|
|
738
|
+
}
|
|
739
|
+
return recurse(value2);
|
|
740
|
+
});
|
|
741
|
+
if (opts?.retainId) {
|
|
742
|
+
props.id = id;
|
|
743
|
+
}
|
|
744
|
+
const meta = getMeta3(obj);
|
|
745
|
+
props[MetaId] = deepMapValues(meta, (value2, recurse) => {
|
|
746
|
+
if (Ref.isRef(value2)) {
|
|
747
|
+
return value2;
|
|
748
|
+
}
|
|
749
|
+
return recurse(value2);
|
|
750
|
+
});
|
|
751
|
+
return make2(schema, props);
|
|
752
|
+
};
|
|
753
|
+
var VersionTypeId2 = VersionTypeId;
|
|
754
|
+
var unversioned = {
|
|
755
|
+
[VersionTypeId2]: {},
|
|
756
|
+
versioned: false
|
|
757
|
+
};
|
|
758
|
+
var isVersion = (obj) => {
|
|
759
|
+
return obj != null && typeof obj === "object" && VersionTypeId2 in obj;
|
|
760
|
+
};
|
|
761
|
+
var version = (obj) => {
|
|
762
|
+
const version2 = obj[ObjectVersionId];
|
|
763
|
+
if (version2 === void 0) {
|
|
764
|
+
return unversioned;
|
|
765
|
+
}
|
|
766
|
+
return version2;
|
|
767
|
+
};
|
|
768
|
+
var versionValid = (version2) => {
|
|
769
|
+
assertArgument2(isVersion(version2), "version", "Invalid version object");
|
|
770
|
+
return !!version2.versioned;
|
|
771
|
+
};
|
|
772
|
+
var compareVersions = (version1, version2) => {
|
|
773
|
+
assertArgument2(isVersion(version1), "version1", "Invalid version object");
|
|
774
|
+
assertArgument2(isVersion(version2), "version2", "Invalid version object");
|
|
775
|
+
if (!versionValid(version1) || !versionValid(version2)) {
|
|
776
|
+
return "unversioned";
|
|
777
|
+
}
|
|
778
|
+
if (version1.automergeHeads?.length !== version2.automergeHeads?.length) {
|
|
779
|
+
return "different";
|
|
780
|
+
}
|
|
781
|
+
if (version1.automergeHeads?.some((head) => !version2.automergeHeads?.includes(head))) {
|
|
782
|
+
return "different";
|
|
783
|
+
}
|
|
784
|
+
return "equal";
|
|
785
|
+
};
|
|
786
|
+
var encodeVersion = (version2) => {
|
|
787
|
+
return JSON.stringify(version2);
|
|
788
|
+
};
|
|
789
|
+
var decodeVersion = (version2) => {
|
|
790
|
+
const parsed = JSON.parse(version2);
|
|
791
|
+
parsed[VersionTypeId2] = {};
|
|
792
|
+
return parsed;
|
|
793
|
+
};
|
|
794
|
+
|
|
795
|
+
// src/query/tag.ts
|
|
796
|
+
var Tag = Schema3.Struct({
|
|
797
|
+
label: Schema3.String,
|
|
798
|
+
hue: Schema3.optional(Schema3.String)
|
|
799
|
+
}).pipe(Obj({
|
|
800
|
+
typename: "dxos.org/type/Tag",
|
|
801
|
+
version: "0.1.0"
|
|
802
|
+
}), LabelAnnotation.set([
|
|
803
|
+
"label"
|
|
804
|
+
]));
|
|
805
|
+
var make3 = (props) => make2(Tag, props);
|
|
806
|
+
var sortTags = ({ label: a }, { label: b }) => a.localeCompare(b);
|
|
807
|
+
var createTagList = (tags) => Object.entries(tags).map(([id, tag]) => ({
|
|
808
|
+
...tag,
|
|
809
|
+
id
|
|
810
|
+
})).sort(sortTags);
|
|
811
|
+
var findTagByLabel = (tags, name) => {
|
|
812
|
+
const entry = Object.entries(tags ?? {}).find(([_, tag]) => tag.label.toLowerCase() === name.toLowerCase());
|
|
813
|
+
return entry ? {
|
|
814
|
+
...entry[1],
|
|
815
|
+
id: entry[0]
|
|
816
|
+
} : void 0;
|
|
817
|
+
};
|
|
824
818
|
|
|
825
819
|
export {
|
|
826
|
-
SchemaNotFoundError,
|
|
827
|
-
ObjectNotFoundError,
|
|
828
|
-
Key_exports,
|
|
829
|
-
Obj_exports,
|
|
830
820
|
Ref_exports,
|
|
831
|
-
Relation_exports,
|
|
832
|
-
Type_exports,
|
|
833
821
|
Filter,
|
|
834
822
|
Query,
|
|
835
823
|
Order,
|
|
836
|
-
|
|
837
|
-
|
|
824
|
+
Relation,
|
|
825
|
+
Type_exports,
|
|
826
|
+
Any,
|
|
827
|
+
Obj_exports,
|
|
828
|
+
tag_exports
|
|
838
829
|
};
|
|
839
|
-
//# sourceMappingURL=chunk-
|
|
830
|
+
//# sourceMappingURL=chunk-5NWDGIBT.mjs.map
|