@dxos/echo 0.8.4-main.c85a9c8dae → 0.8.4-main.d05539e30a
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +102 -5
- package/README.md +3 -3
- package/dist/lib/neutral/Annotation.mjs +5 -3
- package/dist/lib/neutral/Database.mjs +8 -4
- package/dist/lib/neutral/Entity.mjs +16 -11
- package/dist/lib/neutral/Err.mjs +1 -1
- package/dist/lib/neutral/Extension.mjs +18 -0
- package/dist/lib/neutral/Extension.mjs.map +7 -0
- package/dist/lib/neutral/Feed.mjs +23 -14
- package/dist/lib/neutral/Filter.mjs +23 -10
- package/dist/lib/neutral/Format.mjs +3 -3
- package/dist/lib/neutral/JsonSchema.mjs +8 -7
- package/dist/lib/neutral/Key.mjs +1 -1
- package/dist/lib/neutral/Migration.mjs +17 -0
- package/dist/lib/neutral/Migration.mjs.map +7 -0
- package/dist/lib/neutral/Obj.mjs +16 -10
- package/dist/lib/neutral/Order.mjs +1 -1
- package/dist/lib/neutral/Query.mjs +19 -13
- package/dist/lib/neutral/QueryResult.mjs +1 -1
- package/dist/lib/neutral/Ref.mjs +9 -7
- package/dist/lib/neutral/Relation.mjs +15 -11
- package/dist/lib/neutral/SchemaRegistry.mjs +1 -1
- package/dist/lib/neutral/Tag.mjs +14 -10
- package/dist/lib/neutral/Type.mjs +10 -7
- package/dist/lib/neutral/{chunk-DZQSL6RW.mjs → chunk-44HT3MEC.mjs} +2 -2
- package/dist/lib/neutral/{chunk-DZQSL6RW.mjs.map → chunk-44HT3MEC.mjs.map} +1 -1
- package/dist/lib/neutral/{chunk-OVUBTQLT.mjs → chunk-5SL5LDLD.mjs} +4 -2
- package/dist/lib/neutral/chunk-5SL5LDLD.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-ANHVGJI4.mjs → chunk-7RVZT53K.mjs} +1 -1
- package/dist/lib/neutral/chunk-APHSOTIX.mjs +34 -0
- package/dist/lib/neutral/chunk-APHSOTIX.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-ALOGSVBP.mjs → chunk-APJKDGFL.mjs} +72 -6
- package/dist/lib/neutral/chunk-APJKDGFL.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-T6JEFNP6.mjs → chunk-BICZKPQG.mjs} +1 -1
- package/dist/lib/neutral/{chunk-T6JEFNP6.mjs.map → chunk-BICZKPQG.mjs.map} +1 -1
- package/dist/lib/neutral/chunk-BMB7IHGB.mjs +346 -0
- package/dist/lib/neutral/chunk-BMB7IHGB.mjs.map +7 -0
- package/dist/lib/neutral/chunk-FIWO2FZK.mjs +36 -0
- package/dist/lib/neutral/chunk-FIWO2FZK.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-PP4DNUZU.mjs → chunk-G54OX4IX.mjs} +1418 -2885
- package/dist/lib/neutral/chunk-G54OX4IX.mjs.map +7 -0
- package/dist/lib/neutral/chunk-GWFFC34K.mjs +50 -0
- package/dist/lib/neutral/chunk-GWFFC34K.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-5ELDDYWE.mjs → chunk-I2DARWPX.mjs} +17 -19
- package/dist/lib/neutral/chunk-I2DARWPX.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-KGV3QIRX.mjs → chunk-J54QMAKF.mjs} +125 -17
- package/dist/lib/neutral/chunk-J54QMAKF.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-BRJSLACP.mjs → chunk-MGSQGHOD.mjs} +71 -17
- package/dist/lib/neutral/chunk-MGSQGHOD.mjs.map +7 -0
- package/dist/lib/neutral/chunk-MLS7U7AT.mjs +734 -0
- package/dist/lib/neutral/chunk-MLS7U7AT.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-4KG6IGL4.mjs → chunk-N4B7FHQT.mjs} +4 -4
- package/dist/lib/neutral/{chunk-4KG6IGL4.mjs.map → chunk-N4B7FHQT.mjs.map} +2 -2
- package/dist/lib/neutral/{chunk-QXF3LGN2.mjs → chunk-N7VOEPSV.mjs} +8 -3
- package/dist/lib/neutral/chunk-N7VOEPSV.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-T4MPQJ7X.mjs → chunk-PSZBLH53.mjs} +6 -22
- package/dist/lib/neutral/chunk-PSZBLH53.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-ZWKJ4LZJ.mjs → chunk-PT37DG2F.mjs} +23 -51
- package/dist/lib/neutral/chunk-PT37DG2F.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-GAWKQ5DZ.mjs → chunk-Q2KKKJSV.mjs} +5 -5
- package/dist/lib/neutral/chunk-Q2KKKJSV.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-AQP4QKYP.mjs → chunk-Q7ZL2P5H.mjs} +56 -19
- package/dist/lib/neutral/chunk-Q7ZL2P5H.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-O3TZFQCT.mjs → chunk-QRZ2I3ZM.mjs} +2 -2
- package/dist/lib/neutral/chunk-QRZ2I3ZM.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-W7OP5HGZ.mjs → chunk-SCPFDS2E.mjs} +14 -10
- package/dist/lib/neutral/chunk-SCPFDS2E.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-F7KMHDPJ.mjs → chunk-TNBK56IN.mjs} +54 -31
- package/dist/lib/neutral/chunk-TNBK56IN.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-M2KVTHZM.mjs → chunk-TRPZU2HV.mjs} +10 -10
- package/dist/lib/neutral/chunk-TRPZU2HV.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-ZTUBYOGB.mjs → chunk-TTCSATUD.mjs} +1 -1
- package/dist/lib/neutral/chunk-TTCSATUD.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-OMUPQMLR.mjs → chunk-V72DY6LU.mjs} +1 -1
- package/dist/lib/neutral/chunk-ZFACXBY6.mjs +136 -0
- package/dist/lib/neutral/chunk-ZFACXBY6.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-MXQJZCPY.mjs → chunk-ZISMEVKD.mjs} +1 -1
- package/dist/lib/neutral/chunk-ZISMEVKD.mjs.map +7 -0
- package/dist/lib/neutral/index.mjs +38 -25
- package/dist/lib/neutral/internal/index.mjs +50 -38
- package/dist/lib/neutral/meta.json +1 -1
- package/dist/lib/neutral/testing/index.mjs +196 -136
- package/dist/lib/neutral/testing/index.mjs.map +3 -3
- package/dist/types/src/Annotation.d.ts +3 -3
- package/dist/types/src/Annotation.d.ts.map +1 -1
- package/dist/types/src/Collection.d.ts.map +1 -1
- package/dist/types/src/Database.d.ts +16 -4
- package/dist/types/src/Database.d.ts.map +1 -1
- package/dist/types/src/Dataset.d.ts +2 -1
- package/dist/types/src/Dataset.d.ts.map +1 -1
- package/dist/types/src/Entity.d.ts +17 -11
- package/dist/types/src/Entity.d.ts.map +1 -1
- package/dist/types/src/Err.d.ts +18 -18
- package/dist/types/src/Err.d.ts.map +1 -1
- package/dist/types/src/Extension.d.ts +80 -0
- package/dist/types/src/Extension.d.ts.map +1 -0
- package/dist/types/src/Extension.test.d.ts +2 -0
- package/dist/types/src/Extension.test.d.ts.map +1 -0
- package/dist/types/src/Feed.d.ts +65 -24
- package/dist/types/src/Feed.d.ts.map +1 -1
- package/dist/types/src/Filter.d.ts +54 -4
- package/dist/types/src/Filter.d.ts.map +1 -1
- package/dist/types/src/Filter.test.d.ts +2 -0
- package/dist/types/src/Filter.test.d.ts.map +1 -0
- package/dist/types/src/Format.d.ts +1 -1
- package/dist/types/src/Format.d.ts.map +1 -1
- package/dist/types/src/Hypergraph.d.ts +9 -4
- package/dist/types/src/Hypergraph.d.ts.map +1 -1
- package/dist/types/src/Json.d.ts +33 -0
- package/dist/types/src/Json.d.ts.map +1 -0
- package/dist/types/src/Json.test.d.ts +2 -0
- package/dist/types/src/Json.test.d.ts.map +1 -0
- package/dist/types/src/JsonSchema.d.ts +5 -5
- package/dist/types/src/JsonSchema.d.ts.map +1 -1
- package/dist/types/src/Migration.d.ts +69 -0
- package/dist/types/src/Migration.d.ts.map +1 -0
- package/dist/types/src/Obj.d.ts +46 -30
- package/dist/types/src/Obj.d.ts.map +1 -1
- package/dist/types/src/Order.d.ts.map +1 -1
- package/dist/types/src/Query.d.ts +13 -2
- package/dist/types/src/Query.d.ts.map +1 -1
- package/dist/types/src/Ref.d.ts +12 -11
- package/dist/types/src/Ref.d.ts.map +1 -1
- package/dist/types/src/Relation.d.ts +16 -16
- package/dist/types/src/Relation.d.ts.map +1 -1
- package/dist/types/src/SchemaRegistry.d.ts +1 -1
- package/dist/types/src/Tag.d.ts +2 -2
- package/dist/types/src/Tag.d.ts.map +1 -1
- package/dist/types/src/Type.d.ts +10 -9
- package/dist/types/src/Type.d.ts.map +1 -1
- package/dist/types/src/View.d.ts +1 -1
- package/dist/types/src/View.d.ts.map +1 -1
- package/dist/types/src/exemplars.test.d.ts +2 -0
- package/dist/types/src/exemplars.test.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +3 -0
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/internal/{annotations → Annotation}/annotations.d.ts +33 -2
- package/dist/types/src/internal/Annotation/annotations.d.ts.map +1 -0
- package/dist/types/src/internal/Annotation/annotations.test.d.ts.map +1 -0
- package/dist/types/src/internal/Annotation/index.d.ts +4 -0
- package/dist/types/src/internal/Annotation/index.d.ts.map +1 -0
- package/dist/types/src/internal/{api → Annotation}/sorting.d.ts +1 -1
- package/dist/types/src/internal/Annotation/sorting.d.ts.map +1 -0
- package/dist/types/src/internal/{annotations → Annotation}/util.d.ts +2 -2
- package/dist/types/src/internal/Annotation/util.d.ts.map +1 -0
- package/dist/types/src/internal/{api/entity.d.ts → Entity/api.d.ts} +2 -2
- package/dist/types/src/internal/Entity/api.d.ts.map +1 -0
- package/dist/types/src/internal/{entities → Entity}/entity.d.ts +2 -2
- package/dist/types/src/internal/Entity/entity.d.ts.map +1 -0
- package/dist/types/src/internal/{entities → Entity}/index.d.ts +2 -0
- package/dist/types/src/internal/Entity/index.d.ts.map +1 -0
- package/dist/types/src/internal/{entities → Entity}/model.d.ts +4 -26
- package/dist/types/src/internal/Entity/model.d.ts.map +1 -0
- package/dist/types/src/internal/{entities → Entity}/object.d.ts +2 -2
- package/dist/types/src/internal/Entity/object.d.ts.map +1 -0
- package/dist/types/src/internal/{entities → Entity}/relation.d.ts +3 -30
- package/dist/types/src/internal/Entity/relation.d.ts.map +1 -0
- package/dist/types/src/internal/Entity/util.d.ts.map +1 -0
- package/dist/types/src/internal/{api → Entity}/version.d.ts +1 -1
- package/dist/types/src/internal/Entity/version.d.ts.map +1 -0
- package/dist/types/src/internal/Format/date.d.ts.map +1 -0
- package/dist/types/src/internal/Format/date.test.d.ts.map +1 -0
- package/dist/types/src/internal/Format/format.d.ts.map +1 -0
- package/dist/types/src/internal/Format/format.test.d.ts.map +1 -0
- package/dist/types/src/internal/Format/index.d.ts.map +1 -0
- package/dist/types/src/internal/Format/number.d.ts.map +1 -0
- package/dist/types/src/internal/Format/object.d.ts.map +1 -0
- package/dist/types/src/internal/Format/select.d.ts.map +1 -0
- package/dist/types/src/internal/Format/string.d.ts.map +1 -0
- package/dist/types/src/internal/{formats → Format}/types.d.ts +1 -1
- package/dist/types/src/internal/Format/types.d.ts.map +1 -0
- package/dist/types/src/internal/{json-schema → JsonSchema}/annotations.d.ts +1 -1
- package/dist/types/src/internal/JsonSchema/annotations.d.ts.map +1 -0
- package/dist/types/src/internal/JsonSchema/effect-schema.test.d.ts.map +1 -0
- package/dist/types/src/internal/JsonSchema/index.d.ts.map +1 -0
- package/dist/types/src/internal/JsonSchema/json-schema-normalize.d.ts.map +1 -0
- package/dist/types/src/internal/{json-schema → JsonSchema}/json-schema-type.d.ts +23 -23
- package/dist/types/src/internal/JsonSchema/json-schema-type.d.ts.map +1 -0
- package/dist/types/src/internal/{json-schema → JsonSchema}/json-schema.d.ts +1 -1
- package/dist/types/src/internal/JsonSchema/json-schema.d.ts.map +1 -0
- package/dist/types/src/internal/JsonSchema/json-schema.test.d.ts.map +1 -0
- package/dist/types/src/internal/Obj/clone.d.ts.map +1 -0
- package/dist/types/src/internal/Obj/common.d.ts.map +1 -0
- package/dist/types/src/internal/{object → Obj}/create-object.d.ts +2 -2
- package/dist/types/src/internal/Obj/create-object.d.ts.map +1 -0
- package/dist/types/src/internal/Obj/create-object.test.d.ts.map +1 -0
- package/dist/types/src/internal/{object → Obj}/deleted.d.ts +1 -1
- package/dist/types/src/internal/Obj/deleted.d.ts.map +1 -0
- package/dist/types/src/internal/{object → Obj}/ids.d.ts +1 -1
- package/dist/types/src/internal/Obj/ids.d.ts.map +1 -0
- package/dist/types/src/internal/Obj/index.d.ts.map +1 -0
- package/dist/types/src/internal/Obj/inspect.d.ts.map +1 -0
- package/dist/types/src/internal/{object → Obj}/json-serializer.d.ts +13 -5
- package/dist/types/src/internal/Obj/json-serializer.d.ts.map +1 -0
- package/dist/types/src/internal/Obj/json-serializer.test.d.ts.map +1 -0
- package/dist/types/src/internal/Obj/schema-validator.d.ts +2 -0
- package/dist/types/src/internal/Obj/schema-validator.d.ts.map +1 -0
- package/dist/types/src/internal/Obj/schema-validator.test.d.ts.map +1 -0
- package/dist/types/src/internal/{object → Obj}/set-value.d.ts +2 -2
- package/dist/types/src/internal/Obj/set-value.d.ts.map +1 -0
- package/dist/types/src/internal/Obj/set-value.test.d.ts.map +1 -0
- package/dist/types/src/internal/Obj/snapshot.d.ts.map +1 -0
- package/dist/types/src/internal/{object → Obj}/typed-object.d.ts +2 -2
- package/dist/types/src/internal/Obj/typed-object.d.ts.map +1 -0
- package/dist/types/src/internal/Obj/typed-object.test.d.ts.map +1 -0
- package/dist/types/src/internal/Query.d.ts +10 -0
- package/dist/types/src/internal/Query.d.ts.map +1 -0
- package/dist/types/src/internal/Ref/index.d.ts.map +1 -0
- package/dist/types/src/internal/{ref → Ref}/ref-array.d.ts +1 -1
- package/dist/types/src/internal/Ref/ref-array.d.ts.map +1 -0
- package/dist/types/src/internal/{ref → Ref}/ref.d.ts +15 -2
- package/dist/types/src/internal/Ref/ref.d.ts.map +1 -0
- package/dist/types/src/internal/Ref/ref.test.d.ts.map +1 -0
- package/dist/types/src/internal/{schema → Type}/compose.d.ts +1 -1
- package/dist/types/src/internal/Type/compose.d.ts.map +1 -0
- package/dist/types/src/internal/Type/compose.test.d.ts.map +1 -0
- package/dist/types/src/internal/{schema → Type}/echo-schema.d.ts +6 -6
- package/dist/types/src/internal/Type/echo-schema.d.ts.map +1 -0
- package/dist/types/src/internal/Type/index.d.ts.map +1 -0
- package/dist/types/src/internal/Type/manipulation.d.ts.map +1 -0
- package/dist/types/src/internal/{schema → Type}/persistent-schema.d.ts +2 -2
- package/dist/types/src/internal/Type/persistent-schema.d.ts.map +1 -0
- package/dist/types/src/internal/{api → common/api}/index.d.ts +0 -4
- package/dist/types/src/internal/common/api/index.d.ts.map +1 -0
- package/dist/types/src/internal/{api → common/api}/meta.d.ts +3 -3
- package/dist/types/src/internal/common/api/meta.d.ts.map +1 -0
- package/dist/types/src/internal/common/index.d.ts +4 -0
- package/dist/types/src/internal/common/index.d.ts.map +1 -0
- package/dist/types/src/internal/{proxy → common/proxy}/change-context.d.ts +1 -1
- package/dist/types/src/internal/common/proxy/change-context.d.ts.map +1 -0
- package/dist/types/src/internal/common/proxy/change.test.d.ts.map +1 -0
- package/dist/types/src/internal/common/proxy/define-hidden-property.d.ts.map +1 -0
- package/dist/types/src/internal/{proxy → common/proxy}/errors.d.ts +1 -1
- package/dist/types/src/internal/common/proxy/errors.d.ts.map +1 -0
- package/dist/types/src/internal/common/proxy/event-batch.d.ts.map +1 -0
- package/dist/types/src/internal/common/proxy/handler.test.d.ts.map +1 -0
- package/dist/types/src/internal/common/proxy/index.d.ts.map +1 -0
- package/dist/types/src/internal/common/proxy/json-serializer.d.ts.map +1 -0
- package/dist/types/src/internal/common/proxy/make-object.d.ts.map +1 -0
- package/dist/types/src/internal/common/proxy/ownership.d.ts.map +1 -0
- package/dist/types/src/internal/common/proxy/proxy-types.d.ts.map +1 -0
- package/dist/types/src/internal/common/proxy/proxy-utils.d.ts.map +1 -0
- package/dist/types/src/internal/{proxy → common/proxy}/reactive-array.d.ts +1 -1
- package/dist/types/src/internal/common/proxy/reactive-array.d.ts.map +1 -0
- package/dist/types/src/internal/{proxy → common/proxy}/reactive.d.ts +2 -2
- package/dist/types/src/internal/{proxy → common/proxy}/reactive.d.ts.map +1 -1
- package/dist/types/src/internal/common/proxy/reactive.test.d.ts +2 -0
- package/dist/types/src/internal/common/proxy/reactive.test.d.ts.map +1 -0
- package/dist/types/src/internal/common/proxy/schema-validator.d.ts.map +1 -0
- package/dist/types/src/internal/common/proxy/schema.test.d.ts.map +1 -0
- package/dist/types/src/internal/common/proxy/symbols.d.ts.map +1 -0
- package/dist/types/src/internal/common/proxy/typed-handler.d.ts.map +1 -0
- package/dist/types/src/internal/common/proxy/typed-handler.test.d.ts.map +1 -0
- package/dist/types/src/internal/common/proxy/typed-object.test.d.ts.map +1 -0
- package/dist/types/src/internal/common/types/base.d.ts.map +1 -0
- package/dist/types/src/internal/{types → common/types}/entity.d.ts +4 -4
- package/dist/types/src/internal/common/types/entity.d.ts.map +1 -0
- package/dist/types/src/internal/{types → common/types}/index.d.ts +1 -0
- package/dist/types/src/internal/common/types/index.d.ts.map +1 -0
- package/dist/types/src/internal/{types → common/types}/meta.d.ts +13 -3
- package/dist/types/src/internal/common/types/meta.d.ts.map +1 -0
- package/dist/types/src/internal/common/types/model-symbols.d.ts +54 -0
- package/dist/types/src/internal/common/types/model-symbols.d.ts.map +1 -0
- package/dist/types/src/internal/common/types/typename.d.ts.map +1 -0
- package/dist/types/src/internal/{types → common/types}/version.d.ts +1 -1
- package/dist/types/src/internal/common/types/version.d.ts.map +1 -0
- package/dist/types/src/internal/index.d.ts +9 -10
- package/dist/types/src/internal/index.d.ts.map +1 -1
- package/dist/types/src/testing/test-data.d.ts +8 -8
- package/dist/types/src/testing/test-data.d.ts.map +1 -1
- package/dist/types/src/testing/test-schema.d.ts +53 -53
- package/dist/types/src/testing/test-schema.d.ts.map +1 -1
- package/dist/types/src/testing/util.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +25 -15
- package/src/Annotation.ts +6 -3
- package/src/Collection.ts +8 -1
- package/src/Database.ts +55 -18
- package/src/Dataset.ts +2 -0
- package/src/Entity.ts +20 -11
- package/src/Err.ts +2 -0
- package/src/Extension.test.ts +235 -0
- package/src/Extension.ts +122 -0
- package/src/Feed.ts +118 -37
- package/src/Filter.test.ts +90 -0
- package/src/Filter.ts +99 -3
- package/src/Format.ts +1 -1
- package/src/Hypergraph.ts +10 -5
- package/src/Json.test.ts +175 -0
- package/src/Json.ts +102 -0
- package/src/JsonSchema.ts +7 -5
- package/src/Migration.ts +106 -0
- package/src/Obj.test.ts +107 -15
- package/src/Obj.ts +167 -40
- package/src/Order.ts +2 -0
- package/src/Query.test.ts +222 -32
- package/src/Query.ts +62 -10
- package/src/Ref.ts +16 -12
- package/src/Relation.test.ts +2 -2
- package/src/Relation.ts +28 -21
- package/src/SchemaRegistry.ts +1 -1
- package/src/Tag.ts +3 -1
- package/src/Type.ts +14 -11
- package/src/View.ts +9 -2
- package/src/exemplars.test.ts +21 -0
- package/src/index.ts +4 -0
- package/src/internal/{annotations → Annotation}/annotations.test.ts +56 -7
- package/src/internal/{annotations → Annotation}/annotations.ts +84 -20
- package/src/internal/{annotations → Annotation}/index.ts +1 -0
- package/src/internal/{api → Annotation}/sorting.ts +2 -4
- package/src/internal/{annotations → Annotation}/util.ts +1 -1
- package/src/internal/{api/entity.ts → Entity/api.ts} +3 -2
- package/src/internal/{entities → Entity}/entity.ts +2 -2
- package/src/internal/{entities → Entity}/index.ts +2 -0
- package/src/internal/{entities → Entity}/model.ts +15 -42
- package/src/internal/{entities → Entity}/object.ts +2 -3
- package/src/internal/{entities → Entity}/relation.ts +19 -36
- package/src/internal/{api → Entity}/version.ts +2 -2
- package/src/internal/{formats → Format}/date.test.ts +1 -2
- package/src/internal/{formats → Format}/format.test.ts +1 -2
- package/src/internal/{formats → Format}/types.ts +2 -2
- package/src/internal/{json-schema → JsonSchema}/annotations.ts +3 -3
- package/src/internal/{json-schema → JsonSchema}/json-schema-type.ts +4 -4
- package/src/internal/{json-schema → JsonSchema}/json-schema.test.ts +48 -49
- package/src/internal/{json-schema → JsonSchema}/json-schema.ts +3 -4
- package/src/internal/{object → Obj}/clone.ts +3 -3
- package/src/internal/{object → Obj}/common.ts +2 -2
- package/src/internal/{object → Obj}/create-object.test.ts +5 -7
- package/src/internal/{object → Obj}/create-object.ts +5 -6
- package/src/internal/{object → Obj}/deleted.ts +2 -2
- package/src/internal/{object → Obj}/ids.ts +1 -1
- package/src/internal/{object → Obj}/inspect.ts +2 -2
- package/src/internal/{object → Obj}/json-serializer.test.ts +8 -9
- package/src/internal/{object → Obj}/json-serializer.ts +44 -26
- package/src/internal/{object → Obj}/schema-validator.ts +1 -1
- package/src/internal/{object → Obj}/set-value.test.ts +24 -24
- package/src/internal/{object → Obj}/set-value.ts +3 -3
- package/src/internal/{object → Obj}/snapshot.ts +14 -5
- package/src/internal/{object → Obj}/typed-object.test.ts +3 -3
- package/src/internal/{object → Obj}/typed-object.ts +2 -2
- package/src/internal/Query.ts +156 -0
- package/src/internal/{ref → Ref}/ref-array.ts +1 -2
- package/src/internal/{ref → Ref}/ref.test.ts +4 -5
- package/src/internal/{ref → Ref}/ref.ts +20 -3
- package/src/internal/{schema → Type}/compose.test.ts +5 -6
- package/src/internal/{schema → Type}/compose.ts +1 -1
- package/src/internal/{schema → Type}/echo-schema.ts +7 -8
- package/src/internal/{schema → Type}/manipulation.ts +1 -1
- package/src/internal/{schema → Type}/persistent-schema.ts +7 -7
- package/src/internal/{README.md → common/README.md} +1 -1
- package/src/internal/{api → common/api}/index.ts +0 -4
- package/src/internal/{api → common/api}/meta.ts +3 -3
- package/src/internal/common/index.ts +7 -0
- package/src/internal/{proxy → common/proxy}/change-context.ts +1 -1
- package/src/internal/{proxy → common/proxy}/change.test.ts +97 -97
- package/src/internal/{proxy → common/proxy}/errors.ts +2 -2
- package/src/internal/{proxy → common/proxy}/handler.test.ts +2 -4
- package/src/internal/{proxy → common/proxy}/json-serializer.ts +6 -3
- package/src/internal/{proxy → common/proxy}/make-object.ts +1 -2
- package/src/internal/{proxy → common/proxy}/ownership.ts +0 -1
- package/src/internal/{proxy → common/proxy}/reactive-array.ts +1 -1
- package/src/internal/common/proxy/reactive.test.ts +54 -0
- package/src/internal/{proxy → common/proxy}/reactive.ts +12 -4
- package/src/internal/{proxy → common/proxy}/schema.test.ts +10 -10
- package/src/internal/{proxy → common/proxy}/typed-handler.test.ts +6 -7
- package/src/internal/{proxy → common/proxy}/typed-handler.ts +10 -13
- package/src/internal/{proxy → common/proxy}/typed-object.test.ts +5 -6
- package/src/internal/{types → common/types}/entity.ts +1 -1
- package/src/internal/{types → common/types}/index.ts +1 -0
- package/src/internal/{types → common/types}/meta.ts +13 -2
- package/src/internal/common/types/model-symbols.ts +69 -0
- package/src/internal/index.ts +9 -31
- package/src/testing/api.test.ts +2 -3
- package/src/testing/test-data.ts +157 -98
- package/src/testing/test-schema.ts +9 -9
- package/dist/lib/neutral/chunk-5ELDDYWE.mjs.map +0 -7
- package/dist/lib/neutral/chunk-ALOGSVBP.mjs.map +0 -7
- package/dist/lib/neutral/chunk-AQP4QKYP.mjs.map +0 -7
- package/dist/lib/neutral/chunk-BRJSLACP.mjs.map +0 -7
- package/dist/lib/neutral/chunk-F7KMHDPJ.mjs.map +0 -7
- package/dist/lib/neutral/chunk-GAWKQ5DZ.mjs.map +0 -7
- package/dist/lib/neutral/chunk-GFNCSK7F.mjs +0 -101
- package/dist/lib/neutral/chunk-GFNCSK7F.mjs.map +0 -7
- package/dist/lib/neutral/chunk-KGV3QIRX.mjs.map +0 -7
- package/dist/lib/neutral/chunk-M2KVTHZM.mjs.map +0 -7
- package/dist/lib/neutral/chunk-MXQJZCPY.mjs.map +0 -7
- package/dist/lib/neutral/chunk-O3TZFQCT.mjs.map +0 -7
- package/dist/lib/neutral/chunk-OVUBTQLT.mjs.map +0 -7
- package/dist/lib/neutral/chunk-PP4DNUZU.mjs.map +0 -7
- package/dist/lib/neutral/chunk-QXF3LGN2.mjs.map +0 -7
- package/dist/lib/neutral/chunk-T4MPQJ7X.mjs.map +0 -7
- package/dist/lib/neutral/chunk-W7OP5HGZ.mjs.map +0 -7
- package/dist/lib/neutral/chunk-ZTUBYOGB.mjs.map +0 -7
- package/dist/lib/neutral/chunk-ZWKJ4LZJ.mjs.map +0 -7
- package/dist/types/src/internal/annotations/annotations.d.ts.map +0 -1
- package/dist/types/src/internal/annotations/annotations.test.d.ts.map +0 -1
- package/dist/types/src/internal/annotations/index.d.ts +0 -3
- package/dist/types/src/internal/annotations/index.d.ts.map +0 -1
- package/dist/types/src/internal/annotations/util.d.ts.map +0 -1
- package/dist/types/src/internal/api/annotations.d.ts +0 -23
- package/dist/types/src/internal/api/annotations.d.ts.map +0 -1
- package/dist/types/src/internal/api/entity.d.ts.map +0 -1
- package/dist/types/src/internal/api/index.d.ts.map +0 -1
- package/dist/types/src/internal/api/meta.d.ts.map +0 -1
- package/dist/types/src/internal/api/sorting.d.ts.map +0 -1
- package/dist/types/src/internal/api/version.d.ts.map +0 -1
- package/dist/types/src/internal/entities/entity.d.ts.map +0 -1
- package/dist/types/src/internal/entities/index.d.ts.map +0 -1
- package/dist/types/src/internal/entities/model.d.ts.map +0 -1
- package/dist/types/src/internal/entities/object.d.ts.map +0 -1
- package/dist/types/src/internal/entities/relation.d.ts.map +0 -1
- package/dist/types/src/internal/entities/util.d.ts.map +0 -1
- package/dist/types/src/internal/formats/date.d.ts.map +0 -1
- package/dist/types/src/internal/formats/date.test.d.ts.map +0 -1
- package/dist/types/src/internal/formats/format.d.ts.map +0 -1
- package/dist/types/src/internal/formats/format.test.d.ts.map +0 -1
- package/dist/types/src/internal/formats/index.d.ts.map +0 -1
- package/dist/types/src/internal/formats/number.d.ts.map +0 -1
- package/dist/types/src/internal/formats/object.d.ts.map +0 -1
- package/dist/types/src/internal/formats/select.d.ts.map +0 -1
- package/dist/types/src/internal/formats/string.d.ts.map +0 -1
- package/dist/types/src/internal/formats/types.d.ts.map +0 -1
- package/dist/types/src/internal/json-schema/annotations.d.ts.map +0 -1
- package/dist/types/src/internal/json-schema/effect-schema.test.d.ts.map +0 -1
- package/dist/types/src/internal/json-schema/index.d.ts.map +0 -1
- package/dist/types/src/internal/json-schema/json-schema-normalize.d.ts.map +0 -1
- package/dist/types/src/internal/json-schema/json-schema-type.d.ts.map +0 -1
- package/dist/types/src/internal/json-schema/json-schema.d.ts.map +0 -1
- package/dist/types/src/internal/json-schema/json-schema.test.d.ts.map +0 -1
- package/dist/types/src/internal/object/clone.d.ts.map +0 -1
- package/dist/types/src/internal/object/common.d.ts.map +0 -1
- package/dist/types/src/internal/object/create-object.d.ts.map +0 -1
- package/dist/types/src/internal/object/create-object.test.d.ts.map +0 -1
- package/dist/types/src/internal/object/deleted.d.ts.map +0 -1
- package/dist/types/src/internal/object/ids.d.ts.map +0 -1
- package/dist/types/src/internal/object/index.d.ts.map +0 -1
- package/dist/types/src/internal/object/inspect.d.ts.map +0 -1
- package/dist/types/src/internal/object/json-serializer.d.ts.map +0 -1
- package/dist/types/src/internal/object/json-serializer.test.d.ts.map +0 -1
- package/dist/types/src/internal/object/schema-validator.d.ts +0 -2
- package/dist/types/src/internal/object/schema-validator.d.ts.map +0 -1
- package/dist/types/src/internal/object/schema-validator.test.d.ts.map +0 -1
- package/dist/types/src/internal/object/set-value.d.ts.map +0 -1
- package/dist/types/src/internal/object/set-value.test.d.ts.map +0 -1
- package/dist/types/src/internal/object/snapshot.d.ts.map +0 -1
- package/dist/types/src/internal/object/typed-object.d.ts.map +0 -1
- package/dist/types/src/internal/object/typed-object.test.d.ts.map +0 -1
- package/dist/types/src/internal/proxy/change-context.d.ts.map +0 -1
- package/dist/types/src/internal/proxy/change.test.d.ts.map +0 -1
- package/dist/types/src/internal/proxy/define-hidden-property.d.ts.map +0 -1
- package/dist/types/src/internal/proxy/errors.d.ts.map +0 -1
- package/dist/types/src/internal/proxy/event-batch.d.ts.map +0 -1
- package/dist/types/src/internal/proxy/handler.test.d.ts.map +0 -1
- package/dist/types/src/internal/proxy/index.d.ts.map +0 -1
- package/dist/types/src/internal/proxy/json-serializer.d.ts.map +0 -1
- package/dist/types/src/internal/proxy/make-object.d.ts.map +0 -1
- package/dist/types/src/internal/proxy/ownership.d.ts.map +0 -1
- package/dist/types/src/internal/proxy/proxy-types.d.ts.map +0 -1
- package/dist/types/src/internal/proxy/proxy-utils.d.ts.map +0 -1
- package/dist/types/src/internal/proxy/reactive-array.d.ts.map +0 -1
- package/dist/types/src/internal/proxy/schema-validator.d.ts.map +0 -1
- package/dist/types/src/internal/proxy/schema.test.d.ts.map +0 -1
- package/dist/types/src/internal/proxy/symbols.d.ts.map +0 -1
- package/dist/types/src/internal/proxy/typed-handler.d.ts.map +0 -1
- package/dist/types/src/internal/proxy/typed-handler.test.d.ts.map +0 -1
- package/dist/types/src/internal/proxy/typed-object.test.d.ts.map +0 -1
- package/dist/types/src/internal/ref/index.d.ts.map +0 -1
- package/dist/types/src/internal/ref/ref-array.d.ts.map +0 -1
- package/dist/types/src/internal/ref/ref.d.ts.map +0 -1
- package/dist/types/src/internal/ref/ref.test.d.ts.map +0 -1
- package/dist/types/src/internal/schema/compose.d.ts.map +0 -1
- package/dist/types/src/internal/schema/compose.test.d.ts.map +0 -1
- package/dist/types/src/internal/schema/echo-schema.d.ts.map +0 -1
- package/dist/types/src/internal/schema/index.d.ts.map +0 -1
- package/dist/types/src/internal/schema/manipulation.d.ts.map +0 -1
- package/dist/types/src/internal/schema/persistent-schema.d.ts.map +0 -1
- package/dist/types/src/internal/types/base.d.ts.map +0 -1
- package/dist/types/src/internal/types/entity.d.ts.map +0 -1
- package/dist/types/src/internal/types/index.d.ts.map +0 -1
- package/dist/types/src/internal/types/meta.d.ts.map +0 -1
- package/dist/types/src/internal/types/typename.d.ts.map +0 -1
- package/dist/types/src/internal/types/version.d.ts.map +0 -1
- package/src/internal/api/annotations.ts +0 -60
- /package/dist/lib/neutral/{chunk-ANHVGJI4.mjs.map → chunk-7RVZT53K.mjs.map} +0 -0
- /package/dist/lib/neutral/{chunk-OMUPQMLR.mjs.map → chunk-V72DY6LU.mjs.map} +0 -0
- /package/dist/types/src/internal/{annotations → Annotation}/annotations.test.d.ts +0 -0
- /package/dist/types/src/internal/{entities → Entity}/util.d.ts +0 -0
- /package/dist/types/src/internal/{formats → Format}/date.d.ts +0 -0
- /package/dist/types/src/internal/{formats → Format}/date.test.d.ts +0 -0
- /package/dist/types/src/internal/{formats → Format}/format.d.ts +0 -0
- /package/dist/types/src/internal/{formats → Format}/format.test.d.ts +0 -0
- /package/dist/types/src/internal/{formats → Format}/index.d.ts +0 -0
- /package/dist/types/src/internal/{formats → Format}/number.d.ts +0 -0
- /package/dist/types/src/internal/{formats → Format}/object.d.ts +0 -0
- /package/dist/types/src/internal/{formats → Format}/select.d.ts +0 -0
- /package/dist/types/src/internal/{formats → Format}/string.d.ts +0 -0
- /package/dist/types/src/internal/{json-schema → JsonSchema}/effect-schema.test.d.ts +0 -0
- /package/dist/types/src/internal/{json-schema → JsonSchema}/index.d.ts +0 -0
- /package/dist/types/src/internal/{json-schema → JsonSchema}/json-schema-normalize.d.ts +0 -0
- /package/dist/types/src/internal/{json-schema → JsonSchema}/json-schema.test.d.ts +0 -0
- /package/dist/types/src/internal/{object → Obj}/clone.d.ts +0 -0
- /package/dist/types/src/internal/{object → Obj}/common.d.ts +0 -0
- /package/dist/types/src/internal/{object → Obj}/create-object.test.d.ts +0 -0
- /package/dist/types/src/internal/{object → Obj}/index.d.ts +0 -0
- /package/dist/types/src/internal/{object → Obj}/inspect.d.ts +0 -0
- /package/dist/types/src/internal/{object → Obj}/json-serializer.test.d.ts +0 -0
- /package/dist/types/src/internal/{object → Obj}/schema-validator.test.d.ts +0 -0
- /package/dist/types/src/internal/{object → Obj}/set-value.test.d.ts +0 -0
- /package/dist/types/src/internal/{object → Obj}/snapshot.d.ts +0 -0
- /package/dist/types/src/internal/{object → Obj}/typed-object.test.d.ts +0 -0
- /package/dist/types/src/internal/{ref → Ref}/index.d.ts +0 -0
- /package/dist/types/src/internal/{ref → Ref}/ref.test.d.ts +0 -0
- /package/dist/types/src/internal/{schema → Type}/compose.test.d.ts +0 -0
- /package/dist/types/src/internal/{schema → Type}/index.d.ts +0 -0
- /package/dist/types/src/internal/{schema → Type}/manipulation.d.ts +0 -0
- /package/dist/types/src/internal/{proxy → common/proxy}/change.test.d.ts +0 -0
- /package/dist/types/src/internal/{proxy → common/proxy}/define-hidden-property.d.ts +0 -0
- /package/dist/types/src/internal/{proxy → common/proxy}/event-batch.d.ts +0 -0
- /package/dist/types/src/internal/{proxy → common/proxy}/handler.test.d.ts +0 -0
- /package/dist/types/src/internal/{proxy → common/proxy}/index.d.ts +0 -0
- /package/dist/types/src/internal/{proxy → common/proxy}/json-serializer.d.ts +0 -0
- /package/dist/types/src/internal/{proxy → common/proxy}/make-object.d.ts +0 -0
- /package/dist/types/src/internal/{proxy → common/proxy}/ownership.d.ts +0 -0
- /package/dist/types/src/internal/{proxy → common/proxy}/proxy-types.d.ts +0 -0
- /package/dist/types/src/internal/{proxy → common/proxy}/proxy-utils.d.ts +0 -0
- /package/dist/types/src/internal/{proxy → common/proxy}/schema-validator.d.ts +0 -0
- /package/dist/types/src/internal/{proxy → common/proxy}/schema.test.d.ts +0 -0
- /package/dist/types/src/internal/{proxy → common/proxy}/symbols.d.ts +0 -0
- /package/dist/types/src/internal/{proxy → common/proxy}/typed-handler.d.ts +0 -0
- /package/dist/types/src/internal/{proxy → common/proxy}/typed-handler.test.d.ts +0 -0
- /package/dist/types/src/internal/{proxy → common/proxy}/typed-object.test.d.ts +0 -0
- /package/dist/types/src/internal/{types → common/types}/base.d.ts +0 -0
- /package/dist/types/src/internal/{types → common/types}/typename.d.ts +0 -0
- /package/src/internal/{entities → Entity}/util.ts +0 -0
- /package/src/internal/{formats → Format}/date.ts +0 -0
- /package/src/internal/{formats → Format}/format.ts +0 -0
- /package/src/internal/{formats → Format}/index.ts +0 -0
- /package/src/internal/{formats → Format}/number.ts +0 -0
- /package/src/internal/{formats → Format}/object.ts +0 -0
- /package/src/internal/{formats → Format}/select.ts +0 -0
- /package/src/internal/{formats → Format}/string.ts +0 -0
- /package/src/internal/{json-schema → JsonSchema}/effect-schema.test.ts +0 -0
- /package/src/internal/{json-schema → JsonSchema}/index.ts +0 -0
- /package/src/internal/{json-schema → JsonSchema}/json-schema-normalize.ts +0 -0
- /package/src/internal/{object → Obj}/index.ts +0 -0
- /package/src/internal/{object → Obj}/schema-validator.test.ts +0 -0
- /package/src/internal/{ref → Ref}/index.ts +0 -0
- /package/src/internal/{schema → Type}/index.ts +0 -0
- /package/src/internal/{proxy → common/proxy}/define-hidden-property.ts +0 -0
- /package/src/internal/{proxy → common/proxy}/event-batch.ts +0 -0
- /package/src/internal/{proxy → common/proxy}/index.ts +0 -0
- /package/src/internal/{proxy → common/proxy}/proxy-types.ts +0 -0
- /package/src/internal/{proxy → common/proxy}/proxy-utils.ts +0 -0
- /package/src/internal/{proxy → common/proxy}/schema-validator.ts +0 -0
- /package/src/internal/{proxy → common/proxy}/symbols.ts +0 -0
- /package/src/internal/{types → common/types}/base.ts +0 -0
- /package/src/internal/{types → common/types}/typename.ts +0 -0
- /package/src/internal/{types → common/types}/version.ts +0 -0
|
@@ -2,9 +2,11 @@ import * as Schema from 'effect/Schema';
|
|
|
2
2
|
import type * as Types from 'effect/Types';
|
|
3
3
|
import { type ForeignKey, type QueryAST } from '@dxos/echo-protocol';
|
|
4
4
|
import { DXN, ObjectId } from '@dxos/keys';
|
|
5
|
+
import type * as Obj from './Obj';
|
|
6
|
+
import * as Ref from './Ref';
|
|
5
7
|
export interface Filter<T> {
|
|
6
8
|
'~Filter': {
|
|
7
|
-
value: Types.
|
|
9
|
+
value: Types.Covariant<T>;
|
|
8
10
|
};
|
|
9
11
|
ast: QueryAST.Filter;
|
|
10
12
|
}
|
|
@@ -18,7 +20,7 @@ declare class FilterClass implements Any {
|
|
|
18
20
|
private static 'variance';
|
|
19
21
|
constructor(ast: QueryAST.Filter);
|
|
20
22
|
'~Filter': {
|
|
21
|
-
value: Types.
|
|
23
|
+
value: Types.Covariant<any>;
|
|
22
24
|
};
|
|
23
25
|
}
|
|
24
26
|
export declare const is: (value: unknown) => value is Any;
|
|
@@ -49,6 +51,27 @@ export declare const typeDXN: (dxn: DXN) => Any;
|
|
|
49
51
|
* Filter by tag.
|
|
50
52
|
*/
|
|
51
53
|
export declare const tag: (tag: string) => Any;
|
|
54
|
+
/**
|
|
55
|
+
* Options for {@link key} filter.
|
|
56
|
+
*/
|
|
57
|
+
export type KeyFilterOptions = {
|
|
58
|
+
/**
|
|
59
|
+
* Optional semver range expression (e.g. `^1.2.3`, `~2.0.0`, `>=1.0.0 <2.0.0`).
|
|
60
|
+
* Matches the object's meta `version` field against the range.
|
|
61
|
+
* If omitted, matches any version (including objects with no version).
|
|
62
|
+
*/
|
|
63
|
+
version?: string;
|
|
64
|
+
};
|
|
65
|
+
/**
|
|
66
|
+
* Filter by registry key stored in object meta.
|
|
67
|
+
*
|
|
68
|
+
* @example
|
|
69
|
+
* ```ts
|
|
70
|
+
* Filter.key('org.example.type.foo');
|
|
71
|
+
* Filter.key('org.example.type.foo', { version: '^1.2.3' });
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
74
|
+
export declare const key: (key: string, options?: KeyFilterOptions) => Any;
|
|
52
75
|
/**
|
|
53
76
|
* Filter by properties.
|
|
54
77
|
*/
|
|
@@ -92,7 +115,7 @@ export declare const lte: <T>(value: T) => Filter<T | undefined>;
|
|
|
92
115
|
* Predicate for property to be in the provided array.
|
|
93
116
|
* @param values - Values to check against.
|
|
94
117
|
*/
|
|
95
|
-
declare const in$: <T>(...values: T[]) => Filter<T
|
|
118
|
+
declare const in$: <T>(...values: T[]) => Filter<T>;
|
|
96
119
|
export { in$ as in };
|
|
97
120
|
/**
|
|
98
121
|
* Predicate for an array property to contain the provided value.
|
|
@@ -104,7 +127,30 @@ export declare const contains: <T>(value: T) => Filter<readonly T[] | undefined>
|
|
|
104
127
|
* @param from - Start of the range (inclusive).
|
|
105
128
|
* @param to - End of the range (exclusive).
|
|
106
129
|
*/
|
|
107
|
-
export declare const between: <T>(from: T, to: T) => Filter<
|
|
130
|
+
export declare const between: <T>(from: T, to: T) => Filter<T>;
|
|
131
|
+
type TimeRange = {
|
|
132
|
+
after?: Date | number;
|
|
133
|
+
before?: Date | number;
|
|
134
|
+
};
|
|
135
|
+
/**
|
|
136
|
+
* Filter objects by updatedAt timestamp.
|
|
137
|
+
*/
|
|
138
|
+
export declare const updated: (range: TimeRange) => Any;
|
|
139
|
+
/**
|
|
140
|
+
* Filter objects by createdAt timestamp.
|
|
141
|
+
*/
|
|
142
|
+
export declare const created: (range: TimeRange) => Any;
|
|
143
|
+
export type ChildOfOptions = {
|
|
144
|
+
/** Whether to match transitively (grandchildren, etc.). Defaults to true. */
|
|
145
|
+
transitive?: boolean;
|
|
146
|
+
};
|
|
147
|
+
/**
|
|
148
|
+
* Filter objects that are children of the specified parent(s).
|
|
149
|
+
* Accepts ECHO objects, Refs, or arrays of either.
|
|
150
|
+
* Refs are resolved to DXNs without loading; objects use {@link Obj.getDXN}.
|
|
151
|
+
* With transitive=true (default), also matches grandchildren and beyond.
|
|
152
|
+
*/
|
|
153
|
+
export declare const childOf: (parents: Obj.Unknown | Ref.Unknown | readonly (Obj.Unknown | Ref.Unknown)[], options?: ChildOfOptions) => Any;
|
|
108
154
|
/**
|
|
109
155
|
* Negate the filter.
|
|
110
156
|
*/
|
|
@@ -117,4 +163,8 @@ export declare const and: <Filters extends readonly Any[]>(...filters: Filters)
|
|
|
117
163
|
* Combine filters with a logical OR.
|
|
118
164
|
*/
|
|
119
165
|
export declare const or: <Filters extends readonly Any[]>(...filters: Filters) => Filter<Type<Filters[number]>>;
|
|
166
|
+
/**
|
|
167
|
+
* Returns a human-readable string representation of a Filter AST.
|
|
168
|
+
*/
|
|
169
|
+
export declare const pretty: (filter: Any) => string;
|
|
120
170
|
//# sourceMappingURL=Filter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Filter.d.ts","sourceRoot":"","sources":["../../../src/Filter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Filter.d.ts","sourceRoot":"","sources":["../../../src/Filter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Filter.test.d.ts","sourceRoot":"","sources":["../../../src/Filter.test.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Format.d.ts","sourceRoot":"","sources":["../../../src/Format.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAE5C,cAAc,
|
|
1
|
+
{"version":3,"file":"Format.d.ts","sourceRoot":"","sources":["../../../src/Format.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAE5C,cAAc,mBAAmB,CAAC;AAElC,MAAM,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC"}
|
|
@@ -15,10 +15,10 @@ export interface RefResolutionContext {
|
|
|
15
15
|
*/
|
|
16
16
|
space?: Key.SpaceId;
|
|
17
17
|
/**
|
|
18
|
-
*
|
|
19
|
-
* This
|
|
18
|
+
* Feed that the resolution is happening from (as the underlying queue DXN).
|
|
19
|
+
* This feed will be searched first, and then the space it belongs to.
|
|
20
20
|
*/
|
|
21
|
-
|
|
21
|
+
feed?: DXN;
|
|
22
22
|
}
|
|
23
23
|
export interface RefResolverOptions {
|
|
24
24
|
/**
|
|
@@ -33,7 +33,7 @@ export interface RefResolverOptions {
|
|
|
33
33
|
middleware?: (obj: internal.AnyProperties) => internal.AnyProperties;
|
|
34
34
|
}
|
|
35
35
|
/**
|
|
36
|
-
*
|
|
36
|
+
* Manages cross-space database interactions.
|
|
37
37
|
*/
|
|
38
38
|
export interface Hypergraph extends Database.Queryable {
|
|
39
39
|
get schemaRegistry(): SchemaRegistry.SchemaRegistry;
|
|
@@ -56,5 +56,10 @@ export interface Hypergraph extends Database.Queryable {
|
|
|
56
56
|
* @returns Result of `onLoad`.
|
|
57
57
|
*/
|
|
58
58
|
createRefResolver(options: RefResolverOptions): Ref.Resolver;
|
|
59
|
+
/**
|
|
60
|
+
* Get a database by space ID.
|
|
61
|
+
* @returns The database for the given space ID, or undefined if not found.
|
|
62
|
+
*/
|
|
63
|
+
getDatabase(spaceId: Key.SpaceId): Database.Database | undefined;
|
|
59
64
|
}
|
|
60
65
|
//# sourceMappingURL=Hypergraph.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Hypergraph.d.ts","sourceRoot":"","sources":["../../../src/Hypergraph.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,KAAK,GAAG,MAAM,OAAO,CAAC;AAClC,OAAO,KAAK,KAAK,GAAG,MAAM,OAAO,CAAC;AAClC,OAAO,KAAK,KAAK,cAAc,MAAM,kBAAkB,CAAC;AAExD;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,KAAK,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;IAEpB;;;OAGG;IACH,
|
|
1
|
+
{"version":3,"file":"Hypergraph.d.ts","sourceRoot":"","sources":["../../../src/Hypergraph.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,KAAK,GAAG,MAAM,OAAO,CAAC;AAClC,OAAO,KAAK,KAAK,GAAG,MAAM,OAAO,CAAC;AAClC,OAAO,KAAK,KAAK,cAAc,MAAM,kBAAkB,CAAC;AAExD;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,KAAK,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;IAEpB;;;OAGG;IACH,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ;AAED,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAE/B;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,aAAa,KAAK,QAAQ,CAAC,aAAa,CAAC;CACtE;AAED;;GAEG;AACH,MAAM,WAAW,UAAW,SAAQ,QAAQ,CAAC,SAAS;IACpD,IAAI,cAAc,IAAI,cAAc,CAAC,cAAc,CAAC;IAEpD;;OAEG;IACH,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC;IAExB;;;;;;;OAOG;IACH,OAAO,CAAC,CAAC,SAAS,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAEzE;;;;OAIG;IAEH,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,GAAG,CAAC,QAAQ,CAAC;IAE7D;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,GAAG,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAC;CAClE"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import * as Database from './Database';
|
|
2
|
+
/**
|
|
3
|
+
* `JSON.stringify` replacer signature.
|
|
4
|
+
*
|
|
5
|
+
* Defined here (rather than re-imported from a UI package) so other ECHO-aware utilities can
|
|
6
|
+
* share a stable signature without creating a dependency edge into the UI tree.
|
|
7
|
+
*/
|
|
8
|
+
export type JsonReplacer = (key: string, value: any) => any;
|
|
9
|
+
export type CreateRefReplacerOptions = {
|
|
10
|
+
db: Database.Database;
|
|
11
|
+
/** How many ref hops to follow. `0` leaves all refs as-is. Default: `1`. */
|
|
12
|
+
depth?: number;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Returns a {@link JsonReplacer} that inlines ECHO ref objects (`{ "/": "dxn:echo:..." }`) up to
|
|
16
|
+
* `depth` ref hops. Beyond that depth refs are left in their encoded form.
|
|
17
|
+
*
|
|
18
|
+
* Implemented as a per-call `JSON.stringify` replacer (not a one-shot tree walk at root) so it
|
|
19
|
+
* composes with wrappers like `safeStringify` that intercept the root call. JSON.stringify
|
|
20
|
+
* already drives the recursion; we only need to (a) detect a ref at the current callback,
|
|
21
|
+
* (b) resolve and return the target if hop budget remains, and (c) tag the returned object
|
|
22
|
+
* with its hop count so children know how far in they are.
|
|
23
|
+
*
|
|
24
|
+
* The hop count is tracked per-object via a `WeakMap`: a ref-resolved target's children inherit
|
|
25
|
+
* `parentHops + 1`; a regular intermediate object's children inherit `parentHops`. This makes the
|
|
26
|
+
* budget count *ref hops*, not tree depth — a ref deep in a tree still resolves once when
|
|
27
|
+
* `depth >= 1`.
|
|
28
|
+
*
|
|
29
|
+
* Note: ECHO objects' `toJSON` runs before the replacer is invoked, so by the time we see a
|
|
30
|
+
* value refs are already encoded as `{ "/": "dxn:..." }`.
|
|
31
|
+
*/
|
|
32
|
+
export declare const createRefReplacer: ({ db, depth }: CreateRefReplacerOptions) => JsonReplacer;
|
|
33
|
+
//# sourceMappingURL=Json.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Json.d.ts","sourceRoot":"","sources":["../../../src/Json.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AAGvC;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;AAE5D,MAAM,MAAM,wBAAwB,GAAG;IACrC,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACtB,4EAA4E;IAC5E,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAUF;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,iBAAiB,kBAAuB,wBAAwB,KAAG,YAoD/E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Json.test.d.ts","sourceRoot":"","sources":["../../../src/Json.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import type * as Schema from 'effect/Schema';
|
|
2
|
-
import * as
|
|
2
|
+
import * as jsonSchemaInternal from './internal/JsonSchema';
|
|
3
3
|
/**
|
|
4
4
|
* Decode JSON Schema to Effect Schema.
|
|
5
5
|
*/
|
|
6
|
-
export declare const toEffectSchema: (root:
|
|
6
|
+
export declare const toEffectSchema: (root: jsonSchemaInternal.JsonSchemaType, _defs?: jsonSchemaInternal.JsonSchemaType['$defs']) => Schema.Schema.AnyNoContext;
|
|
7
7
|
/**
|
|
8
8
|
* Encode Effect Schema to JSON Schema.
|
|
9
9
|
*/
|
|
10
|
-
export declare const toJsonSchema: (schema: Schema.Schema.All, options?:
|
|
10
|
+
export declare const toJsonSchema: (schema: Schema.Schema.All, options?: jsonSchemaInternal.JsonSchemaOptions) => import("effect/Types").DeepMutable<jsonSchemaInternal.JsonSchemaType>;
|
|
11
11
|
/**
|
|
12
12
|
* Serializable JsonSchema type definition.
|
|
13
13
|
*/
|
|
14
|
-
export type JsonSchema =
|
|
15
|
-
export declare const JsonSchema: Schema.Schema<
|
|
14
|
+
export type JsonSchema = jsonSchemaInternal.JsonSchemaType;
|
|
15
|
+
export declare const JsonSchema: Schema.Schema<jsonSchemaInternal.JsonSchemaType>;
|
|
16
16
|
//# sourceMappingURL=JsonSchema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JsonSchema.d.ts","sourceRoot":"","sources":["../../../src/JsonSchema.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"JsonSchema.d.ts","sourceRoot":"","sources":["../../../src/JsonSchema.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAE7C,OAAO,KAAK,kBAAkB,MAAM,uBAAuB,CAAC;AAE5D;;GAEG;AACH,eAAO,MAAM,cAAc,6HAAoC,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,YAAY,sJAAkC,CAAC;AAE5D;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,kBAAkB,CAAC,cAAc,CAAC;AAE3D,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,cAAc,CAAqC,CAAC"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import type * as Schema from 'effect/Schema';
|
|
2
|
+
import { type DXN } from '@dxos/keys';
|
|
3
|
+
import type * as Database from './Database';
|
|
4
|
+
import type * as Entity from './Entity';
|
|
5
|
+
import { MetaId, type ObjectMeta } from './internal';
|
|
6
|
+
/**
|
|
7
|
+
* Result returned by a migration's `transform` callback.
|
|
8
|
+
* The data shape matches the target schema; the optional `[Obj.Meta]` symbol key lets the
|
|
9
|
+
* transform update the object's meta (e.g. `key` / `version`) atomically with the data swap.
|
|
10
|
+
*/
|
|
11
|
+
export type TransformResult<To extends Schema.Schema.AnyNoContext> = Omit<Schema.Schema.Type<To>, 'id' | Entity.KindId> & {
|
|
12
|
+
[MetaId]?: Partial<ObjectMeta>;
|
|
13
|
+
};
|
|
14
|
+
type DefineObjectMigrationOptions<From extends Schema.Schema.AnyNoContext, To extends Schema.Schema.AnyNoContext> = {
|
|
15
|
+
from: From;
|
|
16
|
+
to: To;
|
|
17
|
+
/**
|
|
18
|
+
* Pure function that converts the old object data to the new object data.
|
|
19
|
+
*
|
|
20
|
+
* The returned object may include an optional `[Obj.Meta]` entry to update the object's meta
|
|
21
|
+
* (e.g. registry `key` / `version`) atomically with the data swap.
|
|
22
|
+
*/
|
|
23
|
+
transform: (from: Schema.Schema.Type<From>, context: ObjectMigrationContext) => Promise<TransformResult<To>>;
|
|
24
|
+
/**
|
|
25
|
+
* Callback that is called after the object is migrated. Called for every object that is migrated.
|
|
26
|
+
*
|
|
27
|
+
* NOTE: Database mutations performed in this callback are not guaranteed to be idempotent.
|
|
28
|
+
* If multiple peers run the migration separately, the effects may be applied multiple times.
|
|
29
|
+
*/
|
|
30
|
+
onMigration?: (params: OnMigrateProps<From, To>) => Promise<void>;
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Context passed to object migration callbacks.
|
|
34
|
+
*/
|
|
35
|
+
export type ObjectMigrationContext = {
|
|
36
|
+
db: Database.Database;
|
|
37
|
+
};
|
|
38
|
+
type OnMigrateProps<From extends Schema.Schema.AnyNoContext, To extends Schema.Schema.AnyNoContext> = {
|
|
39
|
+
before: Schema.Schema.Type<From>;
|
|
40
|
+
object: Schema.Schema.Type<To>;
|
|
41
|
+
db: Database.Database;
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Definition of a migration from one object schema version to another.
|
|
45
|
+
*/
|
|
46
|
+
export type ObjectMigration = {
|
|
47
|
+
fromType: DXN;
|
|
48
|
+
toType: DXN;
|
|
49
|
+
fromSchema: Schema.Schema.AnyNoContext;
|
|
50
|
+
toSchema: Schema.Schema.AnyNoContext;
|
|
51
|
+
transform: (from: unknown, context: ObjectMigrationContext) => Promise<unknown>;
|
|
52
|
+
onMigration?: (params: OnMigrateProps<any, any>) => Promise<void>;
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* Define a migration between two object schemas.
|
|
56
|
+
*
|
|
57
|
+
* @example
|
|
58
|
+
* ```ts
|
|
59
|
+
* const migration = Migration.define({
|
|
60
|
+
* from: ContactV1,
|
|
61
|
+
* to: ContactV2,
|
|
62
|
+
* transform: async (from) => ({ name: `${from.firstName} ${from.lastName}` }),
|
|
63
|
+
* onMigration: async () => {},
|
|
64
|
+
* });
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
export declare const define: <From extends Schema.Schema.AnyNoContext, To extends Schema.Schema.AnyNoContext>(options: DefineObjectMigrationOptions<From, To>) => ObjectMigration;
|
|
68
|
+
export {};
|
|
69
|
+
//# sourceMappingURL=Migration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Migration.d.ts","sourceRoot":"","sources":["../../../src/Migration.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAE7C,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,KAAK,KAAK,QAAQ,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,KAAK,MAAM,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,KAAK,UAAU,EAAgB,MAAM,YAAY,CAAC;AAEnE;;;;GAIG;AACH,MAAM,MAAM,eAAe,CAAC,EAAE,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,IAAI,IAAI,CACvE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EACtB,IAAI,GAAG,MAAM,CAAC,MAAM,CACrB,GAAG;IACF,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;CAChC,CAAC;AAEF,KAAK,4BAA4B,CAAC,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,IAAI;IAClH,IAAI,EAAE,IAAI,CAAC;IACX,EAAE,EAAE,EAAE,CAAC;IACP;;;;;OAKG;IAEH,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,sBAAsB,KAAK,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC;IAE7G;;;;;OAKG;IACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACnE,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;CACvB,CAAC;AAEF,KAAK,cAAc,CAAC,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,IAAI;IACpG,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/B,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,EAAE,GAAG,CAAC;IACd,MAAM,EAAE,GAAG,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;IACvC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;IACrC,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,sBAAsB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAChF,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACnE,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,MAAM,GAAI,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,SAAS,MAAM,CAAC,MAAM,CAAC,YAAY,WAC1F,4BAA4B,CAAC,IAAI,EAAE,EAAE,CAAC,KAC9C,eAkBF,CAAC"}
|
package/dist/types/src/Obj.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ import type * as Database from './Database';
|
|
|
7
7
|
import * as Entity from './Entity';
|
|
8
8
|
import * as Err from './Err';
|
|
9
9
|
import * as internal from './internal';
|
|
10
|
-
import
|
|
10
|
+
import * as Ref from './Ref';
|
|
11
11
|
import type * as Type from './Type';
|
|
12
12
|
/**
|
|
13
13
|
* Base type for all ECHO objects.
|
|
@@ -50,8 +50,6 @@ export interface Unknown extends BaseObj {
|
|
|
50
50
|
* ```
|
|
51
51
|
*/
|
|
52
52
|
export declare const Unknown: Type.Obj<Unknown>;
|
|
53
|
-
/**
|
|
54
|
-
|
|
55
53
|
/**
|
|
56
54
|
* Object with arbitrary properties.
|
|
57
55
|
*
|
|
@@ -184,40 +182,40 @@ export type CloneOptions = {
|
|
|
184
182
|
export declare const clone: <T extends Unknown>(obj: T, opts?: CloneOptions) => T;
|
|
185
183
|
/**
|
|
186
184
|
* Makes all properties mutable recursively.
|
|
187
|
-
* Used to provide a mutable view of an object within `Obj.
|
|
185
|
+
* Used to provide a mutable view of an object within `Obj.update`.
|
|
188
186
|
*/
|
|
189
187
|
export type Mutable<T> = internal.Mutable<T>;
|
|
190
188
|
/**
|
|
191
189
|
* Perform mutations on an echo object within a controlled context.
|
|
192
190
|
*
|
|
193
191
|
* All mutations within the callback are batched and trigger a single notification
|
|
194
|
-
* when the callback completes. Direct mutations outside of `Obj.
|
|
192
|
+
* when the callback completes. Direct mutations outside of `Obj.update` will throw
|
|
195
193
|
* an error for echo objects.
|
|
196
194
|
*
|
|
197
195
|
* This function also works with nested objects within echo objects (e.g., Template structs)
|
|
198
196
|
* that are reactive at runtime.
|
|
199
197
|
*
|
|
200
|
-
* @param obj - The echo object to mutate. Use `Relation.
|
|
198
|
+
* @param obj - The echo object to mutate. Use `Relation.update` for relations.
|
|
201
199
|
* @param callback - The callback that performs mutations on the object.
|
|
202
200
|
*
|
|
203
201
|
* @example
|
|
204
202
|
* ```ts
|
|
205
203
|
* const person = Obj.make(Person, { name: 'John', age: 25 });
|
|
206
204
|
*
|
|
207
|
-
* // Mutate within Obj.
|
|
208
|
-
* Obj.
|
|
209
|
-
*
|
|
210
|
-
*
|
|
205
|
+
* // Mutate within Obj.update
|
|
206
|
+
* Obj.update(person, (obj) => {
|
|
207
|
+
* obj.name = 'Jane';
|
|
208
|
+
* obj.age = 30;
|
|
211
209
|
* });
|
|
212
210
|
* // ONE notification fires here
|
|
213
211
|
*
|
|
214
212
|
* // Direct mutation throws
|
|
215
|
-
* person.name = 'Bob'; // Error: Cannot modify outside Obj.
|
|
213
|
+
* person.name = 'Bob'; // Error: Cannot modify outside Obj.update()
|
|
216
214
|
* ```
|
|
217
215
|
*
|
|
218
|
-
* Note: Only accepts objects. Use `Relation.
|
|
216
|
+
* Note: Only accepts objects. Use `Relation.update` for relations.
|
|
219
217
|
*/
|
|
220
|
-
export declare const
|
|
218
|
+
export declare const update: <T extends Unknown>(obj: T, callback: internal.ChangeCallback<T>) => void;
|
|
221
219
|
/**
|
|
222
220
|
* Get a deeply nested property from an object.
|
|
223
221
|
*
|
|
@@ -246,7 +244,7 @@ export declare const getValue: (obj: Unknown | Snapshot, path: readonly (string
|
|
|
246
244
|
* whether to initialize nested data as an empty object or array.
|
|
247
245
|
*
|
|
248
246
|
* Similar to lodash.set and setDeep from @dxos/util, but schema-aware.
|
|
249
|
-
* Must be called within an `Obj.
|
|
247
|
+
* Must be called within an `Obj.update` callback.
|
|
250
248
|
*
|
|
251
249
|
* NOTE: TypeScript's structural typing allows readonly objects to be passed to `Mutable<T>`
|
|
252
250
|
* parameters, so there is no compile-time error. Enforcement is runtime-only.
|
|
@@ -260,8 +258,8 @@ export declare const getValue: (obj: Unknown | Snapshot, path: readonly (string
|
|
|
260
258
|
* ```ts
|
|
261
259
|
* const person = Obj.make(Person, { name: 'John' });
|
|
262
260
|
* // Person schema has: addresses: Schema.Array(Address)
|
|
263
|
-
* Obj.
|
|
264
|
-
* Obj.setValue(
|
|
261
|
+
* Obj.update(person, (obj) => {
|
|
262
|
+
* Obj.setValue(obj, ['addresses', 0, 'street'], '123 Main St');
|
|
265
263
|
* });
|
|
266
264
|
* // Creates: person.addresses = [{ street: '123 Main St' }]
|
|
267
265
|
* ```
|
|
@@ -308,18 +306,19 @@ export declare const snapshotOf: {
|
|
|
308
306
|
export declare const getDXN: (entity: Unknown | Snapshot) => DXN;
|
|
309
307
|
/**
|
|
310
308
|
* @returns The DXN of the object's type.
|
|
311
|
-
* @example dxn:example.
|
|
309
|
+
* @example dxn:com.example.type.person:1.0.0
|
|
310
|
+
* @throws If the object is missing its type (corrupted object).
|
|
312
311
|
*/
|
|
313
|
-
export declare const getTypeDXN: (obj:
|
|
312
|
+
export declare const getTypeDXN: (obj: Unknown | Snapshot) => DXN;
|
|
314
313
|
/**
|
|
315
314
|
* Get the schema of the object.
|
|
316
315
|
* Returns the branded ECHO schema used to create the object.
|
|
317
316
|
*/
|
|
318
|
-
export declare const getSchema: (obj:
|
|
317
|
+
export declare const getSchema: (obj: Unknown | Snapshot) => Type.AnyEntity | undefined;
|
|
319
318
|
/**
|
|
320
319
|
* @returns The typename of the object's type.
|
|
321
320
|
* Accepts both reactive objects and snapshots.
|
|
322
|
-
* @example `example.
|
|
321
|
+
* @example `com.example.type.person`
|
|
323
322
|
*/
|
|
324
323
|
export declare const getTypename: (entity: Unknown | Snapshot) => string | undefined;
|
|
325
324
|
/**
|
|
@@ -339,12 +338,12 @@ export declare const Meta: symbol;
|
|
|
339
338
|
*/
|
|
340
339
|
export type ReadonlyMeta = internal.ReadonlyMeta;
|
|
341
340
|
/**
|
|
342
|
-
* Mutable meta type returned by `Obj.getMeta` inside an `Obj.
|
|
341
|
+
* Mutable meta type returned by `Obj.getMeta` inside an `Obj.update` callback.
|
|
343
342
|
*/
|
|
344
343
|
export type Meta = internal.Meta;
|
|
345
344
|
/**
|
|
346
345
|
* Get the metadata for an object.
|
|
347
|
-
* Returns mutable meta when passed a mutable object (inside `Obj.
|
|
346
|
+
* Returns mutable meta when passed a mutable object (inside `Obj.update` callback).
|
|
348
347
|
* Returns read-only meta when passed a regular object or snapshot.
|
|
349
348
|
*
|
|
350
349
|
* @example
|
|
@@ -353,8 +352,8 @@ export type Meta = internal.Meta;
|
|
|
353
352
|
* const meta = Obj.getMeta(person); // ReadonlyMeta
|
|
354
353
|
*
|
|
355
354
|
* // Mutable access inside change callback
|
|
356
|
-
* Obj.
|
|
357
|
-
* const meta = Obj.getMeta(
|
|
355
|
+
* Obj.update(person, (obj) => {
|
|
356
|
+
* const meta = Obj.getMeta(obj); // ObjectMeta (mutable)
|
|
358
357
|
* meta.tags ??= [];
|
|
359
358
|
* meta.tags.push('important');
|
|
360
359
|
* });
|
|
@@ -372,7 +371,7 @@ export declare const getKeys: {
|
|
|
372
371
|
};
|
|
373
372
|
/**
|
|
374
373
|
* Delete all keys from the object for the specified source.
|
|
375
|
-
* Must be called within an `Obj.
|
|
374
|
+
* Must be called within an `Obj.update` callback.
|
|
376
375
|
*
|
|
377
376
|
* NOTE: TypeScript's structural typing allows readonly objects to be passed to `Mutable<T>`
|
|
378
377
|
* parameters, so there is no compile-time error. Enforcement is runtime-only.
|
|
@@ -380,7 +379,7 @@ export declare const getKeys: {
|
|
|
380
379
|
export declare const deleteKeys: (entity: Mutable<Unknown>, source: string) => void;
|
|
381
380
|
/**
|
|
382
381
|
* Add a tag to the object.
|
|
383
|
-
* Must be called within an `Obj.
|
|
382
|
+
* Must be called within an `Obj.update` callback.
|
|
384
383
|
*
|
|
385
384
|
* NOTE: TypeScript's structural typing allows readonly objects to be passed to `Mutable<T>`
|
|
386
385
|
* parameters, so there is no compile-time error. Enforcement is runtime-only.
|
|
@@ -388,7 +387,7 @@ export declare const deleteKeys: (entity: Mutable<Unknown>, source: string) => v
|
|
|
388
387
|
export declare const addTag: (entity: Mutable<Unknown>, tag: string) => void;
|
|
389
388
|
/**
|
|
390
389
|
* Remove a tag from the object.
|
|
391
|
-
* Must be called within an `Obj.
|
|
390
|
+
* Must be called within an `Obj.update` callback.
|
|
392
391
|
*
|
|
393
392
|
* NOTE: TypeScript's structural typing allows readonly objects to be passed to `Mutable<T>`
|
|
394
393
|
* parameters, so there is no compile-time error. Enforcement is runtime-only.
|
|
@@ -406,7 +405,7 @@ export declare const isDeleted: (entity: Unknown | Snapshot) => boolean;
|
|
|
406
405
|
export declare const getLabel: (entity: Unknown | Snapshot) => string | undefined;
|
|
407
406
|
/**
|
|
408
407
|
* Set the label of the object.
|
|
409
|
-
* Must be called within an `Obj.
|
|
408
|
+
* Must be called within an `Obj.update` callback.
|
|
410
409
|
*
|
|
411
410
|
* NOTE: TypeScript's structural typing allows readonly objects to be passed to `Mutable<T>`
|
|
412
411
|
* parameters, so there is no compile-time error. Enforcement is runtime-only.
|
|
@@ -419,7 +418,7 @@ export declare const setLabel: (entity: Mutable<Unknown>, label: string) => void
|
|
|
419
418
|
export declare const getDescription: (entity: Unknown | Snapshot) => string | undefined;
|
|
420
419
|
/**
|
|
421
420
|
* Set the description of the object.
|
|
422
|
-
* Must be called within an `Obj.
|
|
421
|
+
* Must be called within an `Obj.update` callback.
|
|
423
422
|
*
|
|
424
423
|
* NOTE: TypeScript's structural typing allows readonly objects to be passed to `Mutable<T>`
|
|
425
424
|
* parameters, so there is no compile-time error. Enforcement is runtime-only.
|
|
@@ -448,7 +447,21 @@ export declare const getParent: (entity: Unknown | Snapshot) => Unknown | undefi
|
|
|
448
447
|
* If a parent (or any transitive parent) is deleted, the object will be deleted.
|
|
449
448
|
* Only objects are allowed to have a parent.
|
|
450
449
|
*/
|
|
451
|
-
export declare const setParent: (entity: Unknown, parent: Any | undefined) =>
|
|
450
|
+
export declare const setParent: (entity: Unknown, parent: Any | undefined) => Unknown & internal.InternalObjectProps;
|
|
451
|
+
interface UpdateFromOptions<T> {
|
|
452
|
+
exclude?: (keyof T)[];
|
|
453
|
+
include?: (keyof T)[];
|
|
454
|
+
}
|
|
455
|
+
/**
|
|
456
|
+
* For each key present on `source` (except `id`), assigns `target[key]` when the current value differs.
|
|
457
|
+
* References are compared by target DXN; other values use Effect `Equal.equals` inside a structural region,
|
|
458
|
+
* with recursive comparison for arrays and plain object-shaped property bags (excluding `id`).
|
|
459
|
+
*
|
|
460
|
+
* Must be called within an `Obj.update` callback.
|
|
461
|
+
*
|
|
462
|
+
* @returns Whether any property was updated.
|
|
463
|
+
*/
|
|
464
|
+
export declare const updateFrom: <T extends Unknown>(target: Mutable<T>, source: T, options?: UpdateFromOptions<T>) => boolean;
|
|
452
465
|
/**
|
|
453
466
|
* JSON representation of an object.
|
|
454
467
|
*/
|
|
@@ -468,10 +481,13 @@ export declare const toJSON: (entity: Unknown | Snapshot) => JSON;
|
|
|
468
481
|
*
|
|
469
482
|
* @param options.refResolver - Resolver for references. Produces hydrated references that can be resolved.
|
|
470
483
|
* @param options.dxn - Override object DXN. Changes the result of `Obj.getDXN`.
|
|
484
|
+
* @param options.database - Database to associate with the object.
|
|
471
485
|
*/
|
|
472
486
|
export declare const fromJSON: (json: unknown, options?: {
|
|
473
487
|
refResolver?: Ref.Resolver;
|
|
474
488
|
dxn?: DXN;
|
|
489
|
+
database?: Database.Database;
|
|
490
|
+
parent?: Unknown;
|
|
475
491
|
}) => Promise<Unknown>;
|
|
476
492
|
/**
|
|
477
493
|
* Comparator function type for sorting objects.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Obj.d.ts","sourceRoot":"","sources":["../../../src/Obj.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Obj.d.ts","sourceRoot":"","sources":["../../../src/Obj.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Order.d.ts","sourceRoot":"","sources":["../../../src/Order.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Order.d.ts","sourceRoot":"","sources":["../../../src/Order.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,WAAW,KAAK,CAAC,CAAC;IAEtB,QAAQ,EAAE;QAAE,KAAK,EAAE,CAAC,CAAA;KAAE,CAAC;IAEvB,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC;CACrB;AAED,MAAM,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;AAc7B,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,GAAG,CAAuC,CAAC;AACvE,eAAO,MAAM,QAAQ,GAAI,CAAC,YAAY,MAAM,CAAC,GAAG,MAAM,aAAa,QAAQ,CAAC,cAAc,KAAG,KAAK,CAAC,CAAC,CAKhG,CAAC;AAEL;;;GAGG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,cAAa,QAAQ,CAAC,cAAc,KAAY,KAAK,CAAC,CAAC,CAIzE,CAAC"}
|
|
@@ -154,6 +154,10 @@ export interface Query<T> {
|
|
|
154
154
|
* Add options to a query.
|
|
155
155
|
*/
|
|
156
156
|
'options'(options: QueryAST.QueryOptions): Query<T>;
|
|
157
|
+
/**
|
|
158
|
+
* Attach a diagnostic label for logs and tooling (execution semantics unchanged).
|
|
159
|
+
*/
|
|
160
|
+
'debugLabel'(label: string): Query<T>;
|
|
157
161
|
}
|
|
158
162
|
export type Any = Query<any>;
|
|
159
163
|
export type Type<Q extends Any> = Q extends Query<infer T> ? T : never;
|
|
@@ -174,7 +178,10 @@ export declare const select: <F extends Filter.Any>(filter: F) => Query<Filter.T
|
|
|
174
178
|
*
|
|
175
179
|
* Shorthand for: `Query.select(Filter.type(schema, predicates))`.
|
|
176
180
|
*/
|
|
177
|
-
export declare const type:
|
|
181
|
+
export declare const type: {
|
|
182
|
+
<S extends Schema.Schema.All>(schema: S, predicates?: Filter.Props<Schema.Schema.Type<S>>): Query<Schema.Schema.Type<S>>;
|
|
183
|
+
(schema: string, predicates?: Filter.Props<unknown>): Query<any>;
|
|
184
|
+
};
|
|
178
185
|
/**
|
|
179
186
|
* Combine results of multiple queries.
|
|
180
187
|
* @param queries - Queries to combine.
|
|
@@ -195,8 +202,12 @@ export declare const without: <T>(source: Query<T>, exclude: Query<T>) => Query<
|
|
|
195
202
|
* @param source - Data source: database, feed, 'all-accessible-spaces', or another query.
|
|
196
203
|
* @returns Query scoped to the given source.
|
|
197
204
|
*/
|
|
198
|
-
export declare const from: (source: Database.Database | Database.Database[] | Feed.Feed | Feed.Feed[] | Any | QueryAST.Scope |
|
|
205
|
+
export declare const from: (source: Database.Database | Database.Database[] | Feed.Feed | Feed.Feed[] | Any | QueryAST.Scope | 'all-accessible-spaces', options?: {
|
|
199
206
|
includeFeeds?: boolean;
|
|
200
207
|
}) => Any;
|
|
208
|
+
/**
|
|
209
|
+
* Returns a human-readable string representation of a Query AST.
|
|
210
|
+
*/
|
|
211
|
+
export declare const pretty: (query: Any) => string;
|
|
201
212
|
export {};
|
|
202
213
|
//# sourceMappingURL=Query.d.ts.map
|