@enbox/dwn-sdk-js 0.0.5 → 0.0.7
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/browser.mjs +8 -8
- package/dist/browser.mjs.map +4 -4
- package/dist/esm/generated/precompiled-validators.js +1 -2
- package/dist/esm/generated/precompiled-validators.js.map +1 -1
- package/dist/esm/src/core/abstract-message.js +4 -0
- package/dist/esm/src/core/abstract-message.js.map +1 -1
- package/dist/esm/src/core/auth.js +22 -33
- package/dist/esm/src/core/auth.js.map +1 -1
- package/dist/esm/src/core/dwn-constant.js +7 -7
- package/dist/esm/src/core/dwn-constant.js.map +1 -1
- package/dist/esm/src/core/dwn-error.js +1 -0
- package/dist/esm/src/core/dwn-error.js.map +1 -1
- package/dist/esm/src/core/grant-authorization.js +37 -52
- package/dist/esm/src/core/grant-authorization.js.map +1 -1
- package/dist/esm/src/core/message.js +85 -116
- package/dist/esm/src/core/message.js.map +1 -1
- package/dist/esm/src/core/messages-grant-authorization.js +63 -78
- package/dist/esm/src/core/messages-grant-authorization.js.map +1 -1
- package/dist/esm/src/core/protocol-authorization-action.js +266 -0
- package/dist/esm/src/core/protocol-authorization-action.js.map +1 -0
- package/dist/esm/src/core/protocol-authorization-validation.js +254 -0
- package/dist/esm/src/core/protocol-authorization-validation.js.map +1 -0
- package/dist/esm/src/core/protocol-authorization.js +122 -740
- package/dist/esm/src/core/protocol-authorization.js.map +1 -1
- package/dist/esm/src/core/protocols-grant-authorization.js +24 -38
- package/dist/esm/src/core/protocols-grant-authorization.js.map +1 -1
- package/dist/esm/src/core/record-chain.js +64 -0
- package/dist/esm/src/core/record-chain.js.map +1 -0
- package/dist/esm/src/core/records-grant-authorization.js +55 -72
- package/dist/esm/src/core/records-grant-authorization.js.map +1 -1
- package/dist/esm/src/core/resumable-task-manager.js +50 -65
- package/dist/esm/src/core/resumable-task-manager.js.map +1 -1
- package/dist/esm/src/core/tenant-gate.js +2 -13
- package/dist/esm/src/core/tenant-gate.js.map +1 -1
- package/dist/esm/src/dwn.js +69 -86
- package/dist/esm/src/dwn.js.map +1 -1
- package/dist/esm/src/event-stream/event-emitter-stream.js +17 -31
- package/dist/esm/src/event-stream/event-emitter-stream.js.map +1 -1
- package/dist/esm/src/handlers/messages-read.js +67 -77
- package/dist/esm/src/handlers/messages-read.js.map +1 -1
- package/dist/esm/src/handlers/messages-subscribe.js +51 -61
- package/dist/esm/src/handlers/messages-subscribe.js.map +1 -1
- package/dist/esm/src/handlers/messages-sync.js +75 -85
- package/dist/esm/src/handlers/messages-sync.js.map +1 -1
- package/dist/esm/src/handlers/protocols-configure.js +135 -155
- package/dist/esm/src/handlers/protocols-configure.js.map +1 -1
- package/dist/esm/src/handlers/protocols-query.js +52 -51
- package/dist/esm/src/handlers/protocols-query.js.map +1 -1
- package/dist/esm/src/handlers/records-count.js +96 -82
- package/dist/esm/src/handlers/records-count.js.map +1 -1
- package/dist/esm/src/handlers/records-delete.js +78 -88
- package/dist/esm/src/handlers/records-delete.js.map +1 -1
- package/dist/esm/src/handlers/records-query.js +116 -101
- package/dist/esm/src/handlers/records-query.js.map +1 -1
- package/dist/esm/src/handlers/records-read.js +124 -131
- package/dist/esm/src/handlers/records-read.js.map +1 -1
- package/dist/esm/src/handlers/records-subscribe.js +150 -103
- package/dist/esm/src/handlers/records-subscribe.js.map +1 -1
- package/dist/esm/src/handlers/records-write.js +250 -259
- package/dist/esm/src/handlers/records-write.js.map +1 -1
- package/dist/esm/src/interfaces/messages-read.js +24 -32
- package/dist/esm/src/interfaces/messages-read.js.map +1 -1
- package/dist/esm/src/interfaces/messages-subscribe.js +27 -41
- package/dist/esm/src/interfaces/messages-subscribe.js.map +1 -1
- package/dist/esm/src/interfaces/messages-sync.js +26 -40
- package/dist/esm/src/interfaces/messages-sync.js.map +1 -1
- package/dist/esm/src/interfaces/protocols-configure.js +63 -63
- package/dist/esm/src/interfaces/protocols-configure.js.map +1 -1
- package/dist/esm/src/interfaces/protocols-query.js +55 -68
- package/dist/esm/src/interfaces/protocols-query.js.map +1 -1
- package/dist/esm/src/interfaces/records-count.js +50 -66
- package/dist/esm/src/interfaces/records-count.js.map +1 -1
- package/dist/esm/src/interfaces/records-delete.js +45 -55
- package/dist/esm/src/interfaces/records-delete.js.map +1 -1
- package/dist/esm/src/interfaces/records-query.js +60 -76
- package/dist/esm/src/interfaces/records-query.js.map +1 -1
- package/dist/esm/src/interfaces/records-read.js +51 -67
- package/dist/esm/src/interfaces/records-read.js.map +1 -1
- package/dist/esm/src/interfaces/records-subscribe.js +52 -68
- package/dist/esm/src/interfaces/records-subscribe.js.map +1 -1
- package/dist/esm/src/interfaces/records-write-query.js +102 -0
- package/dist/esm/src/interfaces/records-write-query.js.map +1 -0
- package/dist/esm/src/interfaces/records-write-signing.js +92 -0
- package/dist/esm/src/interfaces/records-write-signing.js.map +1 -0
- package/dist/esm/src/interfaces/records-write.js +407 -602
- package/dist/esm/src/interfaces/records-write.js.map +1 -1
- package/dist/esm/src/jose/algorithms/signing/ed25519.js +10 -19
- package/dist/esm/src/jose/algorithms/signing/ed25519.js.map +1 -1
- package/dist/esm/src/jose/jws/general/builder.js +23 -35
- package/dist/esm/src/jose/jws/general/builder.js.map +1 -1
- package/dist/esm/src/jose/jws/general/verifier.js +56 -69
- package/dist/esm/src/jose/jws/general/verifier.js.map +1 -1
- package/dist/esm/src/protocols/permission-grant.js +44 -15
- package/dist/esm/src/protocols/permission-grant.js.map +1 -1
- package/dist/esm/src/protocols/permission-request.js +29 -15
- package/dist/esm/src/protocols/permission-request.js.map +1 -1
- package/dist/esm/src/protocols/permissions.js +216 -226
- package/dist/esm/src/protocols/permissions.js.map +1 -1
- package/dist/esm/src/smt/smt-store-level.js +42 -64
- package/dist/esm/src/smt/smt-store-level.js.map +1 -1
- package/dist/esm/src/smt/smt-store-memory.js +19 -45
- package/dist/esm/src/smt/smt-store-memory.js.map +1 -1
- package/dist/esm/src/smt/smt-utils.js +28 -45
- package/dist/esm/src/smt/smt-utils.js.map +1 -1
- package/dist/esm/src/smt/sparse-merkle-tree.js +426 -471
- package/dist/esm/src/smt/sparse-merkle-tree.js.map +1 -1
- package/dist/esm/src/state-index/state-index-level.js +115 -150
- package/dist/esm/src/state-index/state-index-level.js.map +1 -1
- package/dist/esm/src/store/blockstore-level.js +54 -156
- package/dist/esm/src/store/blockstore-level.js.map +1 -1
- package/dist/esm/src/store/blockstore-mock.js +48 -153
- package/dist/esm/src/store/blockstore-mock.js.map +1 -1
- package/dist/esm/src/store/data-store-level.js +59 -99
- package/dist/esm/src/store/data-store-level.js.map +1 -1
- package/dist/esm/src/store/index-level-compound.js +246 -0
- package/dist/esm/src/store/index-level-compound.js.map +1 -0
- package/dist/esm/src/store/index-level.js +295 -713
- package/dist/esm/src/store/index-level.js.map +1 -1
- package/dist/esm/src/store/level-wrapper.js +143 -244
- package/dist/esm/src/store/level-wrapper.js.map +1 -1
- package/dist/esm/src/store/message-store-level.js +71 -94
- package/dist/esm/src/store/message-store-level.js.map +1 -1
- package/dist/esm/src/store/resumable-task-store-level.js +62 -101
- package/dist/esm/src/store/resumable-task-store-level.js.map +1 -1
- package/dist/esm/src/store/storage-controller.js +129 -144
- package/dist/esm/src/store/storage-controller.js.map +1 -1
- package/dist/esm/src/utils/abort.js +8 -19
- package/dist/esm/src/utils/abort.js.map +1 -1
- package/dist/esm/src/utils/array.js +15 -49
- package/dist/esm/src/utils/array.js.map +1 -1
- package/dist/esm/src/utils/cid.js +29 -77
- package/dist/esm/src/utils/cid.js.map +1 -1
- package/dist/esm/src/utils/data-stream.js +37 -65
- package/dist/esm/src/utils/data-stream.js.map +1 -1
- package/dist/esm/src/utils/encryption.js +136 -162
- package/dist/esm/src/utils/encryption.js.map +1 -1
- package/dist/esm/src/utils/filter.js +1 -12
- package/dist/esm/src/utils/filter.js.map +1 -1
- package/dist/esm/src/utils/hd-key.js +45 -63
- package/dist/esm/src/utils/hd-key.js.map +1 -1
- package/dist/esm/src/utils/jws.js +9 -20
- package/dist/esm/src/utils/jws.js.map +1 -1
- package/dist/esm/src/utils/memory-cache.js +12 -23
- package/dist/esm/src/utils/memory-cache.js.map +1 -1
- package/dist/esm/src/utils/messages.js +9 -3
- package/dist/esm/src/utils/messages.js.map +1 -1
- package/dist/esm/src/utils/private-key-signer.js +9 -17
- package/dist/esm/src/utils/private-key-signer.js.map +1 -1
- package/dist/esm/src/utils/protocols.js +62 -70
- package/dist/esm/src/utils/protocols.js.map +1 -1
- package/dist/esm/src/utils/records.js +108 -140
- package/dist/esm/src/utils/records.js.map +1 -1
- package/dist/esm/src/utils/secp256k1.js +60 -96
- package/dist/esm/src/utils/secp256k1.js.map +1 -1
- package/dist/esm/src/utils/secp256r1.js +54 -71
- package/dist/esm/src/utils/secp256r1.js.map +1 -1
- package/dist/esm/src/utils/time.js +5 -18
- package/dist/esm/src/utils/time.js.map +1 -1
- package/dist/esm/src/utils/url.js +3 -3
- package/dist/esm/src/utils/url.js.map +1 -1
- package/dist/esm/tests/core/auth.spec.js +3 -12
- package/dist/esm/tests/core/auth.spec.js.map +1 -1
- package/dist/esm/tests/core/message.spec.js +50 -59
- package/dist/esm/tests/core/message.spec.js.map +1 -1
- package/dist/esm/tests/core/protocol-authorization.spec.js +9 -18
- package/dist/esm/tests/core/protocol-authorization.spec.js.map +1 -1
- package/dist/esm/tests/dwn.spec.js +45 -58
- package/dist/esm/tests/dwn.spec.js.map +1 -1
- package/dist/esm/tests/event-stream/event-emitter-stream.spec.js +24 -33
- package/dist/esm/tests/event-stream/event-emitter-stream.spec.js.map +1 -1
- package/dist/esm/tests/event-stream/event-stream.spec.js +46 -55
- package/dist/esm/tests/event-stream/event-stream.spec.js.map +1 -1
- package/dist/esm/tests/features/author-delegated-grant.spec.js +326 -343
- package/dist/esm/tests/features/author-delegated-grant.spec.js.map +1 -1
- package/dist/esm/tests/features/owner-delegated-grant.spec.js +153 -169
- package/dist/esm/tests/features/owner-delegated-grant.spec.js.map +1 -1
- package/dist/esm/tests/features/owner-signature.spec.js +67 -78
- package/dist/esm/tests/features/owner-signature.spec.js.map +1 -1
- package/dist/esm/tests/features/permissions.spec.js +446 -181
- package/dist/esm/tests/features/permissions.spec.js.map +1 -1
- package/dist/esm/tests/features/protocol-composition.spec.js +346 -356
- package/dist/esm/tests/features/protocol-composition.spec.js.map +1 -1
- package/dist/esm/tests/features/protocol-create-action.spec.js +42 -51
- package/dist/esm/tests/features/protocol-create-action.spec.js.map +1 -1
- package/dist/esm/tests/features/protocol-delete-action.spec.js +94 -103
- package/dist/esm/tests/features/protocol-delete-action.spec.js.map +1 -1
- package/dist/esm/tests/features/protocol-update-action.spec.js +105 -114
- package/dist/esm/tests/features/protocol-update-action.spec.js.map +1 -1
- package/dist/esm/tests/features/records-prune.spec.js +175 -191
- package/dist/esm/tests/features/records-prune.spec.js.map +1 -1
- package/dist/esm/tests/features/records-tags.spec.js +441 -460
- package/dist/esm/tests/features/records-tags.spec.js.map +1 -1
- package/dist/esm/tests/features/resumable-tasks.spec.js +82 -91
- package/dist/esm/tests/features/resumable-tasks.spec.js.map +1 -1
- package/dist/esm/tests/handlers/messages-read.spec.js +206 -207
- package/dist/esm/tests/handlers/messages-read.spec.js.map +1 -1
- package/dist/esm/tests/handlers/messages-subscribe.spec.js +145 -154
- package/dist/esm/tests/handlers/messages-subscribe.spec.js.map +1 -1
- package/dist/esm/tests/handlers/messages-sync.spec.js +174 -183
- package/dist/esm/tests/handlers/messages-sync.spec.js.map +1 -1
- package/dist/esm/tests/handlers/protocols-configure.spec.js +244 -238
- package/dist/esm/tests/handlers/protocols-configure.spec.js.map +1 -1
- package/dist/esm/tests/handlers/protocols-query.spec.js +156 -169
- package/dist/esm/tests/handlers/protocols-query.spec.js.map +1 -1
- package/dist/esm/tests/handlers/records-count.spec.js +93 -102
- package/dist/esm/tests/handlers/records-count.spec.js.map +1 -1
- package/dist/esm/tests/handlers/records-delete.spec.js +252 -264
- package/dist/esm/tests/handlers/records-delete.spec.js.map +1 -1
- package/dist/esm/tests/handlers/records-query.spec.js +917 -988
- package/dist/esm/tests/handlers/records-query.spec.js.map +1 -1
- package/dist/esm/tests/handlers/records-read.spec.js +553 -568
- package/dist/esm/tests/handlers/records-read.spec.js.map +1 -1
- package/dist/esm/tests/handlers/records-subscribe.spec.js +269 -278
- package/dist/esm/tests/handlers/records-subscribe.spec.js.map +1 -1
- package/dist/esm/tests/handlers/records-write.spec.js +1057 -1082
- package/dist/esm/tests/handlers/records-write.spec.js.map +1 -1
- package/dist/esm/tests/interfaces/messages-get.spec.js +39 -48
- package/dist/esm/tests/interfaces/messages-get.spec.js.map +1 -1
- package/dist/esm/tests/interfaces/messages-subscribe.spec.js +4 -13
- package/dist/esm/tests/interfaces/messages-subscribe.spec.js.map +1 -1
- package/dist/esm/tests/interfaces/protocols-configure.spec.js +212 -88
- package/dist/esm/tests/interfaces/protocols-configure.spec.js.map +1 -1
- package/dist/esm/tests/interfaces/protocols-query.spec.js +8 -17
- package/dist/esm/tests/interfaces/protocols-query.spec.js.map +1 -1
- package/dist/esm/tests/interfaces/records-delete.spec.js +8 -17
- package/dist/esm/tests/interfaces/records-delete.spec.js.map +1 -1
- package/dist/esm/tests/interfaces/records-query.spec.js +20 -29
- package/dist/esm/tests/interfaces/records-query.spec.js.map +1 -1
- package/dist/esm/tests/interfaces/records-read.spec.js +42 -51
- package/dist/esm/tests/interfaces/records-read.spec.js.map +1 -1
- package/dist/esm/tests/interfaces/records-subscribe.spec.js +16 -25
- package/dist/esm/tests/interfaces/records-subscribe.spec.js.map +1 -1
- package/dist/esm/tests/interfaces/records-write.spec.js +152 -165
- package/dist/esm/tests/interfaces/records-write.spec.js.map +1 -1
- package/dist/esm/tests/jose/jws/general.spec.js +36 -45
- package/dist/esm/tests/jose/jws/general.spec.js.map +1 -1
- package/dist/esm/tests/protocols/permission-grant.spec.js +44 -50
- package/dist/esm/tests/protocols/permission-grant.spec.js.map +1 -1
- package/dist/esm/tests/protocols/permission-request.spec.js +23 -32
- package/dist/esm/tests/protocols/permission-request.spec.js.map +1 -1
- package/dist/esm/tests/protocols/permissions.spec.js +49 -55
- package/dist/esm/tests/protocols/permissions.spec.js.map +1 -1
- package/dist/esm/tests/scenarios/aggregator.spec.js +124 -135
- package/dist/esm/tests/scenarios/aggregator.spec.js.map +1 -1
- package/dist/esm/tests/scenarios/deleted-record.spec.js +23 -32
- package/dist/esm/tests/scenarios/deleted-record.spec.js.map +1 -1
- package/dist/esm/tests/scenarios/end-to-end-tests.spec.js +52 -61
- package/dist/esm/tests/scenarios/end-to-end-tests.spec.js.map +1 -1
- package/dist/esm/tests/scenarios/nested-roles.spec.js +63 -73
- package/dist/esm/tests/scenarios/nested-roles.spec.js.map +1 -1
- package/dist/esm/tests/scenarios/subscriptions.spec.js +377 -333
- package/dist/esm/tests/scenarios/subscriptions.spec.js.map +1 -1
- package/dist/esm/tests/smt/smt-store-level.spec.js +76 -87
- package/dist/esm/tests/smt/smt-store-level.spec.js.map +1 -1
- package/dist/esm/tests/smt/sparse-merkle-tree.spec.js +344 -353
- package/dist/esm/tests/smt/sparse-merkle-tree.spec.js.map +1 -1
- package/dist/esm/tests/state-index/state-index-level.spec.js +117 -126
- package/dist/esm/tests/state-index/state-index-level.spec.js.map +1 -1
- package/dist/esm/tests/store/blockstore-level.spec.js +44 -99
- package/dist/esm/tests/store/blockstore-level.spec.js.map +1 -1
- package/dist/esm/tests/store/blockstore-mock.spec.js +40 -120
- package/dist/esm/tests/store/blockstore-mock.spec.js.map +1 -1
- package/dist/esm/tests/store/data-store-level.spec.js +86 -95
- package/dist/esm/tests/store/data-store-level.spec.js.map +1 -1
- package/dist/esm/tests/store/index-level.spec.js +404 -414
- package/dist/esm/tests/store/index-level.spec.js.map +1 -1
- package/dist/esm/tests/store/message-store-level.spec.js +13 -22
- package/dist/esm/tests/store/message-store-level.spec.js.map +1 -1
- package/dist/esm/tests/store/message-store.spec.js +229 -238
- package/dist/esm/tests/store/message-store.spec.js.map +1 -1
- package/dist/esm/tests/test-event-stream.js +3 -3
- package/dist/esm/tests/test-event-stream.js.map +1 -1
- package/dist/esm/tests/test-stores.js +16 -13
- package/dist/esm/tests/test-stores.js.map +1 -1
- package/dist/esm/tests/test-suite.js +2 -11
- package/dist/esm/tests/test-suite.js.map +1 -1
- package/dist/esm/tests/utils/cid.spec.js +24 -33
- package/dist/esm/tests/utils/cid.spec.js.map +1 -1
- package/dist/esm/tests/utils/data-stream.spec.js +48 -57
- package/dist/esm/tests/utils/data-stream.spec.js.map +1 -1
- package/dist/esm/tests/utils/encryption-callbacks.spec.js +45 -54
- package/dist/esm/tests/utils/encryption-callbacks.spec.js.map +1 -1
- package/dist/esm/tests/utils/encryption.spec.js +291 -44
- package/dist/esm/tests/utils/encryption.spec.js.map +1 -1
- package/dist/esm/tests/utils/filters.spec.js +46 -55
- package/dist/esm/tests/utils/filters.spec.js.map +1 -1
- package/dist/esm/tests/utils/hd-key.spec.js +10 -19
- package/dist/esm/tests/utils/hd-key.spec.js.map +1 -1
- package/dist/esm/tests/utils/jws.spec.js +3 -12
- package/dist/esm/tests/utils/jws.spec.js.map +1 -1
- package/dist/esm/tests/utils/memory-cache.spec.js +9 -18
- package/dist/esm/tests/utils/memory-cache.spec.js.map +1 -1
- package/dist/esm/tests/utils/messages.spec.js +6 -15
- package/dist/esm/tests/utils/messages.spec.js.map +1 -1
- package/dist/esm/tests/utils/poller.js +22 -33
- package/dist/esm/tests/utils/poller.js.map +1 -1
- package/dist/esm/tests/utils/private-key-signer.spec.js +15 -24
- package/dist/esm/tests/utils/private-key-signer.spec.js.map +1 -1
- package/dist/esm/tests/utils/records.spec.js +10 -19
- package/dist/esm/tests/utils/records.spec.js.map +1 -1
- package/dist/esm/tests/utils/secp256k1.spec.js +16 -25
- package/dist/esm/tests/utils/secp256k1.spec.js.map +1 -1
- package/dist/esm/tests/utils/secp256r1.spec.js +18 -27
- package/dist/esm/tests/utils/secp256r1.spec.js.map +1 -1
- package/dist/esm/tests/utils/test-data-generator.js +414 -468
- package/dist/esm/tests/utils/test-data-generator.js.map +1 -1
- package/dist/esm/tests/validation/json-schemas/definitions.spec.js +2 -11
- package/dist/esm/tests/validation/json-schemas/definitions.spec.js.map +1 -1
- package/dist/esm/tests/validation/json-schemas/jwk/general-jwk.spec.js +4 -13
- package/dist/esm/tests/validation/json-schemas/jwk/general-jwk.spec.js.map +1 -1
- package/dist/esm/tests/validation/json-schemas/jwk/public-jwk.spec.js +8 -17
- package/dist/esm/tests/validation/json-schemas/jwk/public-jwk.spec.js.map +1 -1
- package/dist/esm/tests/validation/json-schemas/jwk-verification-method.spec.js +3 -12
- package/dist/esm/tests/validation/json-schemas/jwk-verification-method.spec.js.map +1 -1
- package/dist/esm/tests/validation/json-schemas/protocols/protocols-configure.spec.js +4 -13
- package/dist/esm/tests/validation/json-schemas/protocols/protocols-configure.spec.js.map +1 -1
- package/dist/esm/tests/validation/json-schemas/records/records-query.spec.js +2 -11
- package/dist/esm/tests/validation/json-schemas/records/records-query.spec.js.map +1 -1
- package/dist/esm/tests/validation/json-schemas/records/records-read.spec.js +2 -11
- package/dist/esm/tests/validation/json-schemas/records/records-read.spec.js.map +1 -1
- package/dist/esm/tests/validation/json-schemas/records/records-write.spec.js +7 -16
- package/dist/esm/tests/validation/json-schemas/records/records-write.spec.js.map +1 -1
- package/dist/types/src/core/protocol-authorization-action.d.ts +42 -0
- package/dist/types/src/core/protocol-authorization-action.d.ts.map +1 -0
- package/dist/types/src/core/protocol-authorization-validation.d.ts +60 -0
- package/dist/types/src/core/protocol-authorization-validation.d.ts.map +1 -0
- package/dist/types/src/core/protocol-authorization.d.ts +10 -100
- package/dist/types/src/core/protocol-authorization.d.ts.map +1 -1
- package/dist/types/src/core/record-chain.d.ts +24 -0
- package/dist/types/src/core/record-chain.d.ts.map +1 -0
- package/dist/types/src/handlers/records-write.d.ts +2 -1
- package/dist/types/src/handlers/records-write.d.ts.map +1 -1
- package/dist/types/src/interfaces/protocols-configure.d.ts.map +1 -1
- package/dist/types/src/interfaces/records-write-query.d.ts +33 -0
- package/dist/types/src/interfaces/records-write-query.d.ts.map +1 -0
- package/dist/types/src/interfaces/records-write-signing.d.ts +35 -0
- package/dist/types/src/interfaces/records-write-signing.d.ts.map +1 -0
- package/dist/types/src/interfaces/records-write.d.ts +10 -44
- package/dist/types/src/interfaces/records-write.d.ts.map +1 -1
- package/dist/types/src/store/index-level-compound.d.ts +70 -0
- package/dist/types/src/store/index-level-compound.d.ts.map +1 -0
- package/dist/types/src/store/index-level.d.ts +0 -58
- package/dist/types/src/store/index-level.d.ts.map +1 -1
- package/dist/types/src/utils/protocols.d.ts +5 -0
- package/dist/types/src/utils/protocols.d.ts.map +1 -1
- package/dist/types/src/utils/records.d.ts +3 -1
- package/dist/types/src/utils/records.d.ts.map +1 -1
- package/dist/types/tests/features/permissions.spec.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/core/protocol-authorization-action.ts +377 -0
- package/src/core/protocol-authorization-validation.ts +391 -0
- package/src/core/protocol-authorization.ts +60 -849
- package/src/core/record-chain.ts +99 -0
- package/src/handlers/records-read.ts +1 -1
- package/src/handlers/records-write.ts +37 -21
- package/src/interfaces/protocols-configure.ts +33 -5
- package/src/interfaces/records-write-query.ts +139 -0
- package/src/interfaces/records-write-signing.ts +143 -0
- package/src/interfaces/records-write.ts +49 -221
- package/src/store/index-level-compound.ts +324 -0
- package/src/store/index-level.ts +24 -306
- package/src/utils/protocols.ts +8 -0
- package/src/utils/records.ts +9 -15
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
1
|
import { Jws } from '../../src/index.js';
|
|
11
2
|
import { RecordsDelete } from '../../src/interfaces/records-delete.js';
|
|
12
3
|
import { TestDataGenerator } from '../utils/test-data-generator.js';
|
|
@@ -14,24 +5,24 @@ import { Time } from '../../src/utils/time.js';
|
|
|
14
5
|
import { describe, expect, it } from 'bun:test';
|
|
15
6
|
describe('RecordsDelete', () => {
|
|
16
7
|
describe('create()', () => {
|
|
17
|
-
it('should use `messageTimestamp` as is if given', () =>
|
|
18
|
-
const alice =
|
|
8
|
+
it('should use `messageTimestamp` as is if given', async () => {
|
|
9
|
+
const alice = await TestDataGenerator.generatePersona();
|
|
19
10
|
const currentTime = Time.getCurrentTimestamp();
|
|
20
|
-
const recordsDelete =
|
|
11
|
+
const recordsDelete = await RecordsDelete.create({
|
|
21
12
|
recordId: 'anything',
|
|
22
13
|
signer: Jws.createSigner(alice),
|
|
23
14
|
messageTimestamp: currentTime
|
|
24
15
|
});
|
|
25
16
|
expect(recordsDelete.message.descriptor.messageTimestamp).toBe(currentTime);
|
|
26
|
-
})
|
|
27
|
-
it('should auto-fill `messageTimestamp` if not given', () =>
|
|
28
|
-
const alice =
|
|
29
|
-
const recordsDelete =
|
|
17
|
+
});
|
|
18
|
+
it('should auto-fill `messageTimestamp` if not given', async () => {
|
|
19
|
+
const alice = await TestDataGenerator.generatePersona();
|
|
20
|
+
const recordsDelete = await RecordsDelete.create({
|
|
30
21
|
recordId: 'anything',
|
|
31
22
|
signer: Jws.createSigner(alice)
|
|
32
23
|
});
|
|
33
24
|
expect(recordsDelete.message.descriptor.messageTimestamp).toBeDefined();
|
|
34
|
-
})
|
|
25
|
+
});
|
|
35
26
|
});
|
|
36
27
|
});
|
|
37
28
|
//# sourceMappingURL=records-delete.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"records-delete.spec.js","sourceRoot":"","sources":["../../../../tests/interfaces/records-delete.spec.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"records-delete.spec.js","sourceRoot":"","sources":["../../../../tests/interfaces/records-delete.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAEhD,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;QACxB,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC5D,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,eAAe,EAAE,CAAC;YAExD,MAAM,WAAW,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC/C,MAAM,aAAa,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC;gBAC/C,QAAQ,EAAW,UAAU;gBAC7B,MAAM,EAAa,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC;gBAC1C,gBAAgB,EAAG,WAAW;aAC/B,CAAC,CAAC;YAEH,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC9E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;YAChE,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,eAAe,EAAE,CAAC;YAExD,MAAM,aAAa,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC;gBAC/C,QAAQ,EAAG,UAAU;gBACrB,MAAM,EAAK,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC;aACnC,CAAC,CAAC;YAEH,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,WAAW,EAAE,CAAC;QAC1E,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
1
|
import dexProtocolDefinition from '../vectors/protocol-definitions/dex.json' with { type: 'json' };
|
|
11
2
|
import { RecordsQuery } from '../../src/interfaces/records-query.js';
|
|
12
3
|
import { TestDataGenerator } from '../utils/test-data-generator.js';
|
|
@@ -15,43 +6,43 @@ import { DateSort, DwnErrorCode, Jws } from '../../src/index.js';
|
|
|
15
6
|
import { describe, expect, it } from 'bun:test';
|
|
16
7
|
describe('RecordsQuery', () => {
|
|
17
8
|
describe('create()', () => {
|
|
18
|
-
it('should not allow published to be set to false with a datePublished filter also set', () =>
|
|
9
|
+
it('should not allow published to be set to false with a datePublished filter also set', async () => {
|
|
19
10
|
// test control
|
|
20
11
|
const randomDate = TestDataGenerator.randomTimestamp();
|
|
21
12
|
const recordQueryControl = TestDataGenerator.generateRecordsQuery({
|
|
22
13
|
filter: { datePublished: { from: randomDate, }, published: true }
|
|
23
14
|
});
|
|
24
|
-
|
|
15
|
+
await expect(recordQueryControl).resolves.toBeDefined();
|
|
25
16
|
const recordQueryRejected = TestDataGenerator.generateRecordsQuery({
|
|
26
17
|
filter: { datePublished: { from: randomDate }, published: false }
|
|
27
18
|
});
|
|
28
|
-
|
|
29
|
-
})
|
|
30
|
-
it('should not allow published to be set to false with a dateSort set to sorting by `PublishedAscending` or `PublishedDescending`', () =>
|
|
19
|
+
await expect(recordQueryRejected).rejects.toThrow('descriptor/filter/published: must be equal to one of the allowed values');
|
|
20
|
+
});
|
|
21
|
+
it('should not allow published to be set to false with a dateSort set to sorting by `PublishedAscending` or `PublishedDescending`', async () => {
|
|
31
22
|
// test control
|
|
32
23
|
const recordQueryControl = TestDataGenerator.generateRecordsQuery({
|
|
33
24
|
filter: { published: true },
|
|
34
25
|
dateSort: DateSort.PublishedAscending,
|
|
35
26
|
});
|
|
36
|
-
|
|
27
|
+
await expect(recordQueryControl).resolves.toBeDefined();
|
|
37
28
|
const recordQueryRejected = TestDataGenerator.generateRecordsQuery({
|
|
38
29
|
filter: { published: false },
|
|
39
30
|
dateSort: DateSort.PublishedAscending,
|
|
40
31
|
});
|
|
41
|
-
|
|
42
|
-
})
|
|
43
|
-
it('should use `messageTimestamp` as is if given', () =>
|
|
44
|
-
const alice =
|
|
32
|
+
await expect(recordQueryRejected).rejects.toThrow(DwnErrorCode.RecordsQueryCreateFilterPublishedSortInvalid);
|
|
33
|
+
});
|
|
34
|
+
it('should use `messageTimestamp` as is if given', async () => {
|
|
35
|
+
const alice = await TestDataGenerator.generatePersona();
|
|
45
36
|
const currentTime = Time.getCurrentTimestamp();
|
|
46
|
-
const recordsQuery =
|
|
37
|
+
const recordsQuery = await RecordsQuery.create({
|
|
47
38
|
filter: { schema: 'anything' },
|
|
48
39
|
messageTimestamp: currentTime,
|
|
49
40
|
signer: Jws.createSigner(alice),
|
|
50
41
|
});
|
|
51
42
|
expect(recordsQuery.message.descriptor.messageTimestamp).toBe(currentTime);
|
|
52
|
-
})
|
|
53
|
-
it('should auto-normalize protocol URL', () =>
|
|
54
|
-
const alice =
|
|
43
|
+
});
|
|
44
|
+
it('should auto-normalize protocol URL', async () => {
|
|
45
|
+
const alice = await TestDataGenerator.generatePersona();
|
|
55
46
|
const options = {
|
|
56
47
|
recipient: alice.did,
|
|
57
48
|
data: TestDataGenerator.randomBytes(10),
|
|
@@ -60,12 +51,12 @@ describe('RecordsQuery', () => {
|
|
|
60
51
|
filter: { protocol: 'example.com/' },
|
|
61
52
|
definition: dexProtocolDefinition
|
|
62
53
|
};
|
|
63
|
-
const recordsQuery =
|
|
54
|
+
const recordsQuery = await RecordsQuery.create(options);
|
|
64
55
|
const message = recordsQuery.message;
|
|
65
56
|
expect(message.descriptor.filter.protocol).toBe('http://example.com');
|
|
66
|
-
})
|
|
67
|
-
it('should auto-normalize schema URL', () =>
|
|
68
|
-
const alice =
|
|
57
|
+
});
|
|
58
|
+
it('should auto-normalize schema URL', async () => {
|
|
59
|
+
const alice = await TestDataGenerator.generatePersona();
|
|
69
60
|
const options = {
|
|
70
61
|
recipient: alice.did,
|
|
71
62
|
data: TestDataGenerator.randomBytes(10),
|
|
@@ -74,10 +65,10 @@ describe('RecordsQuery', () => {
|
|
|
74
65
|
filter: { schema: 'example.com/' },
|
|
75
66
|
definition: dexProtocolDefinition
|
|
76
67
|
};
|
|
77
|
-
const recordsQuery =
|
|
68
|
+
const recordsQuery = await RecordsQuery.create(options);
|
|
78
69
|
const message = recordsQuery.message;
|
|
79
70
|
expect(message.descriptor.filter.schema).toBe('http://example.com');
|
|
80
|
-
})
|
|
71
|
+
});
|
|
81
72
|
});
|
|
82
73
|
});
|
|
83
74
|
//# sourceMappingURL=records-query.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"records-query.spec.js","sourceRoot":"","sources":["../../../../tests/interfaces/records-query.spec.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"records-query.spec.js","sourceRoot":"","sources":["../../../../tests/interfaces/records-query.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
1
|
import { DateSort } from '../../src/types/records-types.js';
|
|
11
2
|
import dexProtocolDefinition from '../vectors/protocol-definitions/dex.json' with { type: 'json' };
|
|
12
3
|
import { DwnErrorCode } from '../../src/core/dwn-error.js';
|
|
@@ -17,10 +8,10 @@ import { Time } from '../../src/utils/time.js';
|
|
|
17
8
|
import { describe, expect, it } from 'bun:test';
|
|
18
9
|
describe('RecordsRead', () => {
|
|
19
10
|
describe('create()', () => {
|
|
20
|
-
it('should use `messageTimestamp` as is if given', () =>
|
|
21
|
-
const alice =
|
|
11
|
+
it('should use `messageTimestamp` as is if given', async () => {
|
|
12
|
+
const alice = await TestDataGenerator.generatePersona();
|
|
22
13
|
const currentTime = Time.getCurrentTimestamp();
|
|
23
|
-
const recordsRead =
|
|
14
|
+
const recordsRead = await RecordsRead.create({
|
|
24
15
|
filter: {
|
|
25
16
|
recordId: 'anything',
|
|
26
17
|
},
|
|
@@ -28,19 +19,19 @@ describe('RecordsRead', () => {
|
|
|
28
19
|
messageTimestamp: currentTime
|
|
29
20
|
});
|
|
30
21
|
expect(recordsRead.message.descriptor.messageTimestamp).toBe(currentTime);
|
|
31
|
-
})
|
|
32
|
-
it('should include permissionGrantId in the descriptor when provided', () =>
|
|
33
|
-
const alice =
|
|
22
|
+
});
|
|
23
|
+
it('should include permissionGrantId in the descriptor when provided', async () => {
|
|
24
|
+
const alice = await TestDataGenerator.generatePersona();
|
|
34
25
|
const grantId = 'grant-abc-123';
|
|
35
|
-
const recordsRead =
|
|
26
|
+
const recordsRead = await RecordsRead.create({
|
|
36
27
|
filter: { recordId: 'anything' },
|
|
37
28
|
signer: Jws.createSigner(alice),
|
|
38
29
|
permissionGrantId: grantId,
|
|
39
30
|
});
|
|
40
31
|
expect(recordsRead.message.descriptor.permissionGrantId).toBe(grantId);
|
|
41
|
-
})
|
|
42
|
-
it('should auto-normalize protocol URL', () =>
|
|
43
|
-
const alice =
|
|
32
|
+
});
|
|
33
|
+
it('should auto-normalize protocol URL', async () => {
|
|
34
|
+
const alice = await TestDataGenerator.generatePersona();
|
|
44
35
|
const options = {
|
|
45
36
|
recipient: alice.did,
|
|
46
37
|
data: TestDataGenerator.randomBytes(10),
|
|
@@ -49,12 +40,12 @@ describe('RecordsRead', () => {
|
|
|
49
40
|
filter: { protocol: 'example.com/' },
|
|
50
41
|
definition: dexProtocolDefinition
|
|
51
42
|
};
|
|
52
|
-
const recordsQuery =
|
|
43
|
+
const recordsQuery = await RecordsRead.create(options);
|
|
53
44
|
const message = recordsQuery.message;
|
|
54
45
|
expect(message.descriptor.filter.protocol).toBe('http://example.com');
|
|
55
|
-
})
|
|
56
|
-
it('should auto-normalize schema URL', () =>
|
|
57
|
-
const alice =
|
|
46
|
+
});
|
|
47
|
+
it('should auto-normalize schema URL', async () => {
|
|
48
|
+
const alice = await TestDataGenerator.generatePersona();
|
|
58
49
|
const options = {
|
|
59
50
|
recipient: alice.did,
|
|
60
51
|
data: TestDataGenerator.randomBytes(10),
|
|
@@ -63,69 +54,69 @@ describe('RecordsRead', () => {
|
|
|
63
54
|
filter: { schema: 'example.com/' },
|
|
64
55
|
definition: dexProtocolDefinition
|
|
65
56
|
};
|
|
66
|
-
const recordsQuery =
|
|
57
|
+
const recordsQuery = await RecordsRead.create(options);
|
|
67
58
|
const message = recordsQuery.message;
|
|
68
59
|
expect(message.descriptor.filter.schema).toBe('http://example.com');
|
|
69
|
-
})
|
|
70
|
-
it('should include dateSort in the descriptor when provided', () =>
|
|
71
|
-
const alice =
|
|
72
|
-
const recordsRead =
|
|
60
|
+
});
|
|
61
|
+
it('should include dateSort in the descriptor when provided', async () => {
|
|
62
|
+
const alice = await TestDataGenerator.generatePersona();
|
|
63
|
+
const recordsRead = await RecordsRead.create({
|
|
73
64
|
filter: { recordId: 'anything' },
|
|
74
65
|
signer: Jws.createSigner(alice),
|
|
75
66
|
dateSort: DateSort.CreatedDescending,
|
|
76
67
|
});
|
|
77
68
|
expect(recordsRead.message.descriptor.dateSort).toBe(DateSort.CreatedDescending);
|
|
78
|
-
})
|
|
79
|
-
it('should not include dateSort in the descriptor when not provided', () =>
|
|
80
|
-
const alice =
|
|
81
|
-
const recordsRead =
|
|
69
|
+
});
|
|
70
|
+
it('should not include dateSort in the descriptor when not provided', async () => {
|
|
71
|
+
const alice = await TestDataGenerator.generatePersona();
|
|
72
|
+
const recordsRead = await RecordsRead.create({
|
|
82
73
|
filter: { recordId: 'anything' },
|
|
83
74
|
signer: Jws.createSigner(alice),
|
|
84
75
|
});
|
|
85
76
|
expect(recordsRead.message.descriptor.dateSort).toBeUndefined();
|
|
86
|
-
})
|
|
87
|
-
it('should throw if published is set to false and dateSort is PublishedAscending', () =>
|
|
88
|
-
const alice =
|
|
77
|
+
});
|
|
78
|
+
it('should throw if published is set to false and dateSort is PublishedAscending', async () => {
|
|
79
|
+
const alice = await TestDataGenerator.generatePersona();
|
|
89
80
|
const createPromise = RecordsRead.create({
|
|
90
81
|
filter: { schema: 'anySchema', published: false },
|
|
91
82
|
signer: Jws.createSigner(alice),
|
|
92
83
|
dateSort: DateSort.PublishedAscending,
|
|
93
84
|
});
|
|
94
|
-
|
|
95
|
-
})
|
|
96
|
-
it('should throw if published is set to false and dateSort is PublishedDescending', () =>
|
|
97
|
-
const alice =
|
|
85
|
+
await expect(createPromise).rejects.toThrow(DwnErrorCode.RecordsReadCreateFilterPublishedSortInvalid);
|
|
86
|
+
});
|
|
87
|
+
it('should throw if published is set to false and dateSort is PublishedDescending', async () => {
|
|
88
|
+
const alice = await TestDataGenerator.generatePersona();
|
|
98
89
|
const createPromise = RecordsRead.create({
|
|
99
90
|
filter: { schema: 'anySchema', published: false },
|
|
100
91
|
signer: Jws.createSigner(alice),
|
|
101
92
|
dateSort: DateSort.PublishedDescending,
|
|
102
93
|
});
|
|
103
|
-
|
|
104
|
-
})
|
|
94
|
+
await expect(createPromise).rejects.toThrow(DwnErrorCode.RecordsReadCreateFilterPublishedSortInvalid);
|
|
95
|
+
});
|
|
105
96
|
});
|
|
106
97
|
describe('parse()', () => {
|
|
107
|
-
it('should throw if published is set to false and dateSort is PublishedAscending', () =>
|
|
108
|
-
const alice =
|
|
109
|
-
const recordsRead =
|
|
98
|
+
it('should throw if published is set to false and dateSort is PublishedAscending', async () => {
|
|
99
|
+
const alice = await TestDataGenerator.generatePersona();
|
|
100
|
+
const recordsRead = await RecordsRead.create({
|
|
110
101
|
filter: { schema: 'anySchema', published: false },
|
|
111
102
|
signer: Jws.createSigner(alice),
|
|
112
103
|
});
|
|
113
104
|
// manually inject invalid dateSort to bypass create() validation
|
|
114
105
|
recordsRead.message.descriptor.dateSort = DateSort.PublishedAscending;
|
|
115
106
|
const parsePromise = RecordsRead.parse(recordsRead.message);
|
|
116
|
-
|
|
117
|
-
})
|
|
118
|
-
it('should throw if published is set to false and dateSort is PublishedDescending', () =>
|
|
119
|
-
const alice =
|
|
120
|
-
const recordsRead =
|
|
107
|
+
await expect(parsePromise).rejects.toThrow(DwnErrorCode.RecordsReadParseFilterPublishedSortInvalid);
|
|
108
|
+
});
|
|
109
|
+
it('should throw if published is set to false and dateSort is PublishedDescending', async () => {
|
|
110
|
+
const alice = await TestDataGenerator.generatePersona();
|
|
111
|
+
const recordsRead = await RecordsRead.create({
|
|
121
112
|
filter: { schema: 'anySchema', published: false },
|
|
122
113
|
signer: Jws.createSigner(alice),
|
|
123
114
|
});
|
|
124
115
|
// manually inject invalid dateSort to bypass create() validation
|
|
125
116
|
recordsRead.message.descriptor.dateSort = DateSort.PublishedDescending;
|
|
126
117
|
const parsePromise = RecordsRead.parse(recordsRead.message);
|
|
127
|
-
|
|
128
|
-
})
|
|
118
|
+
await expect(parsePromise).rejects.toThrow(DwnErrorCode.RecordsReadParseFilterPublishedSortInvalid);
|
|
119
|
+
});
|
|
129
120
|
});
|
|
130
121
|
});
|
|
131
122
|
//# sourceMappingURL=records-read.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"records-read.spec.js","sourceRoot":"","sources":["../../../../tests/interfaces/records-read.spec.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"records-read.spec.js","sourceRoot":"","sources":["../../../../tests/interfaces/records-read.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
1
|
import dexProtocolDefinition from '../vectors/protocol-definitions/dex.json' with { type: 'json' };
|
|
11
2
|
import { Jws } from '../../src/utils/jws.js';
|
|
12
3
|
import { RecordsSubscribe } from '../../src/interfaces/records-subscribe.js';
|
|
@@ -15,30 +6,30 @@ import { Time } from '../../src/utils/time.js';
|
|
|
15
6
|
import { describe, expect, it } from 'bun:test';
|
|
16
7
|
describe('RecordsSubscribe', () => {
|
|
17
8
|
describe('create()', () => {
|
|
18
|
-
it('should not allow published to be set to false with a datePublished filter also set', () =>
|
|
9
|
+
it('should not allow published to be set to false with a datePublished filter also set', async () => {
|
|
19
10
|
// test control
|
|
20
11
|
const randomDate = TestDataGenerator.randomTimestamp();
|
|
21
12
|
const recordQueryControl = TestDataGenerator.generateRecordsQuery({
|
|
22
13
|
filter: { datePublished: { from: randomDate, }, published: true }
|
|
23
14
|
});
|
|
24
|
-
|
|
15
|
+
await expect(recordQueryControl).resolves.toBeDefined();
|
|
25
16
|
const recordQueryRejected = TestDataGenerator.generateRecordsQuery({
|
|
26
17
|
filter: { datePublished: { from: randomDate }, published: false }
|
|
27
18
|
});
|
|
28
|
-
|
|
29
|
-
})
|
|
30
|
-
it('should use `messageTimestamp` as is if given', () =>
|
|
31
|
-
const alice =
|
|
19
|
+
await expect(recordQueryRejected).rejects.toThrow('descriptor/filter/published: must be equal to one of the allowed values');
|
|
20
|
+
});
|
|
21
|
+
it('should use `messageTimestamp` as is if given', async () => {
|
|
22
|
+
const alice = await TestDataGenerator.generatePersona();
|
|
32
23
|
const currentTime = Time.getCurrentTimestamp();
|
|
33
|
-
const recordsQuery =
|
|
24
|
+
const recordsQuery = await RecordsSubscribe.create({
|
|
34
25
|
filter: { schema: 'anything' },
|
|
35
26
|
messageTimestamp: currentTime,
|
|
36
27
|
signer: Jws.createSigner(alice),
|
|
37
28
|
});
|
|
38
29
|
expect(recordsQuery.message.descriptor.messageTimestamp).toBe(currentTime);
|
|
39
|
-
})
|
|
40
|
-
it('should auto-normalize protocol URL', () =>
|
|
41
|
-
const alice =
|
|
30
|
+
});
|
|
31
|
+
it('should auto-normalize protocol URL', async () => {
|
|
32
|
+
const alice = await TestDataGenerator.generatePersona();
|
|
42
33
|
const options = {
|
|
43
34
|
recipient: alice.did,
|
|
44
35
|
data: TestDataGenerator.randomBytes(10),
|
|
@@ -47,12 +38,12 @@ describe('RecordsSubscribe', () => {
|
|
|
47
38
|
filter: { protocol: 'example.com/' },
|
|
48
39
|
definition: dexProtocolDefinition
|
|
49
40
|
};
|
|
50
|
-
const recordsQuery =
|
|
41
|
+
const recordsQuery = await RecordsSubscribe.create(options);
|
|
51
42
|
const message = recordsQuery.message;
|
|
52
43
|
expect(message.descriptor.filter.protocol).toBe('http://example.com');
|
|
53
|
-
})
|
|
54
|
-
it('should auto-normalize schema URL', () =>
|
|
55
|
-
const alice =
|
|
44
|
+
});
|
|
45
|
+
it('should auto-normalize schema URL', async () => {
|
|
46
|
+
const alice = await TestDataGenerator.generatePersona();
|
|
56
47
|
const options = {
|
|
57
48
|
recipient: alice.did,
|
|
58
49
|
data: TestDataGenerator.randomBytes(10),
|
|
@@ -61,10 +52,10 @@ describe('RecordsSubscribe', () => {
|
|
|
61
52
|
filter: { schema: 'example.com/' },
|
|
62
53
|
definition: dexProtocolDefinition
|
|
63
54
|
};
|
|
64
|
-
const recordsQuery =
|
|
55
|
+
const recordsQuery = await RecordsSubscribe.create(options);
|
|
65
56
|
const message = recordsQuery.message;
|
|
66
57
|
expect(message.descriptor.filter.schema).toBe('http://example.com');
|
|
67
|
-
})
|
|
58
|
+
});
|
|
68
59
|
});
|
|
69
60
|
});
|
|
70
61
|
//# sourceMappingURL=records-subscribe.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"records-subscribe.spec.js","sourceRoot":"","sources":["../../../../tests/interfaces/records-subscribe.spec.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"records-subscribe.spec.js","sourceRoot":"","sources":["../../../../tests/interfaces/records-subscribe.spec.ts"],"names":[],"mappings":"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"}
|