@enbox/api 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser.mjs +12 -12
- package/dist/browser.mjs.map +4 -4
- package/dist/esm/dwn-api.js +32 -26
- package/dist/esm/dwn-api.js.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/live-query.js +153 -0
- package/dist/esm/live-query.js.map +1 -0
- package/dist/esm/typed-dwn-api.js +7 -6
- package/dist/esm/typed-dwn-api.js.map +1 -1
- package/dist/types/dwn-api.d.ts +10 -17
- package/dist/types/dwn-api.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/live-query.d.ts +136 -0
- package/dist/types/live-query.d.ts.map +1 -0
- package/dist/types/typed-dwn-api.d.ts +10 -8
- package/dist/types/typed-dwn-api.d.ts.map +1 -1
- package/package.json +6 -6
- package/src/dwn-api.ts +58 -49
- package/src/index.ts +1 -0
- package/src/live-query.ts +245 -0
- package/src/typed-dwn-api.ts +16 -16
- package/dist/esm/subscription-util.js +0 -35
- package/dist/esm/subscription-util.js.map +0 -1
- package/dist/types/subscription-util.d.ts +0 -19
- package/dist/types/subscription-util.d.ts.map +0 -1
- package/src/subscription-util.ts +0 -44
package/dist/esm/dwn-api.js
CHANGED
|
@@ -27,11 +27,11 @@ import { AgentPermissionsApi, } from '@enbox/agent';
|
|
|
27
27
|
import { isEmptyObject } from '@enbox/common';
|
|
28
28
|
import { DwnInterface, getRecordAuthor } from '@enbox/agent';
|
|
29
29
|
import { dataToBlob } from './utils.js';
|
|
30
|
+
import { LiveQuery } from './live-query.js';
|
|
30
31
|
import { PermissionGrant } from './permission-grant.js';
|
|
31
32
|
import { PermissionRequest } from './permission-request.js';
|
|
32
33
|
import { Protocol } from './protocol.js';
|
|
33
34
|
import { Record } from './record.js';
|
|
34
|
-
import { SubscriptionUtil } from './subscription-util.js';
|
|
35
35
|
import { TypedDwnApi } from './typed-dwn-api.js';
|
|
36
36
|
/**
|
|
37
37
|
* Interface to interact with DWN Records and Protocols
|
|
@@ -473,37 +473,31 @@ export class DwnApi {
|
|
|
473
473
|
return { record, status };
|
|
474
474
|
}),
|
|
475
475
|
/**
|
|
476
|
-
*
|
|
476
|
+
* Subscribe to records matching the given filter.
|
|
477
477
|
*
|
|
478
|
-
*
|
|
479
|
-
*
|
|
478
|
+
* Returns a {@link LiveQuery} that atomically provides an initial snapshot
|
|
479
|
+
* of matching records and a real-time stream of deduplicated, semantically-
|
|
480
|
+
* typed change events (`create`, `update`, `delete`).
|
|
480
481
|
*/
|
|
481
482
|
subscribe: (request) => __awaiter(this, void 0, void 0, function* () {
|
|
483
|
+
// Build a DWN-level subscription handler that wraps raw RecordEvents
|
|
484
|
+
// into Record objects and feeds them into the LiveQuery.
|
|
485
|
+
let liveQuery;
|
|
486
|
+
const remoteOrigin = request.from;
|
|
487
|
+
const protocolRole = request.message.protocolRole;
|
|
488
|
+
const subscriptionHandler = (event) => __awaiter(this, void 0, void 0, function* () {
|
|
489
|
+
const { message, initialWrite } = event;
|
|
490
|
+
const record = new Record(this.agent, Object.assign(Object.assign({}, message), { author: getRecordAuthor(message), connectedDid: this.connectedDid, remoteOrigin,
|
|
491
|
+
initialWrite,
|
|
492
|
+
protocolRole, delegateDid: this.delegateDid }), this.permissionsApi);
|
|
493
|
+
liveQuery === null || liveQuery === void 0 ? void 0 : liveQuery.handleEvent(record);
|
|
494
|
+
});
|
|
482
495
|
const agentRequest = {
|
|
483
|
-
/**
|
|
484
|
-
* The `author` is the DID that will sign the message and must be the DID the Web5 app is
|
|
485
|
-
* connected with and is authorized to access the signing private key of.
|
|
486
|
-
*/
|
|
487
496
|
author: this.connectedDid,
|
|
488
497
|
messageParams: request.message,
|
|
489
498
|
messageType: DwnInterface.RecordsSubscribe,
|
|
490
|
-
/**
|
|
491
|
-
* The `target` is the DID of the DWN tenant under which the subscribe operation will be executed.
|
|
492
|
-
* If `from` is provided, the subscribe operation will be executed on a remote DWN.
|
|
493
|
-
* Otherwise, the local DWN will execute the subscribe operation.
|
|
494
|
-
*/
|
|
495
499
|
target: request.from || this.connectedDid,
|
|
496
|
-
|
|
497
|
-
* The handler to process the subscription events.
|
|
498
|
-
*/
|
|
499
|
-
subscriptionHandler: SubscriptionUtil.recordSubscriptionHandler({
|
|
500
|
-
agent: this.agent,
|
|
501
|
-
connectedDid: this.connectedDid,
|
|
502
|
-
delegateDid: this.delegateDid,
|
|
503
|
-
permissionsApi: this.permissionsApi,
|
|
504
|
-
protocolRole: request.message.protocolRole,
|
|
505
|
-
request
|
|
506
|
-
})
|
|
500
|
+
subscriptionHandler,
|
|
507
501
|
};
|
|
508
502
|
if (this.delegateDid) {
|
|
509
503
|
// if we don't find a delegated grant, we will attempt to subscribe signing as the delegated DID
|
|
@@ -537,8 +531,20 @@ export class DwnApi {
|
|
|
537
531
|
agentResponse = yield this.agent.processDwnRequest(agentRequest);
|
|
538
532
|
}
|
|
539
533
|
const reply = agentResponse.reply;
|
|
540
|
-
const { status, subscription } = reply;
|
|
541
|
-
|
|
534
|
+
const { status, subscription, entries = [] } = reply;
|
|
535
|
+
if (subscription) {
|
|
536
|
+
liveQuery = new LiveQuery({
|
|
537
|
+
agent: this.agent,
|
|
538
|
+
connectedDid: this.connectedDid,
|
|
539
|
+
delegateDid: this.delegateDid,
|
|
540
|
+
protocolRole,
|
|
541
|
+
remoteOrigin,
|
|
542
|
+
permissionsApi: this.permissionsApi,
|
|
543
|
+
initialEntries: entries,
|
|
544
|
+
subscription,
|
|
545
|
+
});
|
|
546
|
+
}
|
|
547
|
+
return { status, liveQuery };
|
|
542
548
|
}),
|
|
543
549
|
/**
|
|
544
550
|
* Writes a record to the DWN
|
package/dist/esm/dwn-api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dwn-api.js","sourceRoot":"","sources":["../../src/dwn-api.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,2CAA2C;;;;;;;;;;;;;;;;;;;;;AAiB3C,OAAO,EACL,mBAAmB,GACpB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAM7D,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAkRjD;;GAEG;AACH,MAAM,OAAO,MAAM;IAgBjB,YAAY,OAAyE;QACnF,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;QACzC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,cAAc,GAAG,IAAI,mBAAmB,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IACvE,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACI,KAAK,CACV,QAA6B;QAE7B,OAAO,IAAI,WAAW,CAAO,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;;;;;;OAUG;IACH,IAAI,WAAW;QAMb,OAAO;YACL;;eAEG;YACH,OAAO,EAAE,CAAM,OAA4C,EAA8B,EAAE;;gBACzF,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,iCACtD,OAAO,KACV,MAAM,EAAE,MAAA,IAAI,CAAC,WAAW,mCAAI,IAAI,CAAC,YAAY,IAC7C,CAAC;gBAEH,MAAM,aAAa,GAAG;oBACpB,YAAY,EAAG,MAAA,IAAI,CAAC,WAAW,mCAAI,IAAI,CAAC,YAAY;oBACpD,KAAK,EAAU,IAAI,CAAC,KAAK;oBACzB,OAAO;iBACR,CAAC;gBAEF,OAAO,MAAM,iBAAiB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YACtD,CAAC,CAAA;YACD;;eAEG;YACH,KAAK,EAAE,CAAM,OAA0C,EAA4B,EAAE;;gBACnF,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,iCACpD,OAAO,KACV,MAAM,EAAE,MAAA,IAAI,CAAC,WAAW,mCAAI,IAAI,CAAC,YAAY,IAC7C,CAAC;gBAEH,MAAM,WAAW,GAAG;oBAClB,YAAY,EAAG,MAAA,IAAI,CAAC,WAAW,mCAAI,IAAI,CAAC,YAAY;oBACpD,KAAK,EAAU,IAAI,CAAC,KAAK;oBACzB,OAAO;iBACR,CAAC;gBAEF,OAAO,MAAM,eAAe,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAClD,CAAC,CAAA;YACD;;eAEG;YACH,aAAa,EAAE,YAAuE,EAAE,iDAAnE,UAA+B,EAAE;;gBACpD,MAAM,EAAE,IAAI,KAAgB,OAAO,EAAlB,MAAM,UAAK,OAAO,EAA7B,QAAmB,CAAU,CAAC;gBACpC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,iCACxD,MAAM,KACT,MAAM,EAAG,MAAA,IAAI,CAAC,WAAW,mCAAI,IAAI,CAAC,YAAY,EAC9C,MAAM,EAAG,MAAA,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,IAAI,CAAC,WAAW,mCAAI,IAAI,CAAC,YAAY,EACtD,MAAM,EAAG,IAAI,KAAK,SAAS,IAC3B,CAAC;gBAEH,MAAM,QAAQ,GAAwB,EAAE,CAAC;gBACzC,KAAK,MAAM,UAAU,IAAI,aAAa,EAAE,CAAC;oBACvC,MAAM,aAAa,GAAG;wBACpB,YAAY,EAAG,MAAA,IAAI,CAAC,WAAW,mCAAI,IAAI,CAAC,YAAY;wBACpD,KAAK,EAAU,IAAI,CAAC,KAAK;wBACzB,OAAO,EAAQ,UAAU,CAAC,OAAO;qBAClC,CAAC;oBACF,QAAQ,CAAC,IAAI,CAAC,MAAM,iBAAiB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;gBAC9D,CAAC;gBAED,OAAO,QAAQ,CAAC;YAClB,CAAC,CAAA;YACD;;eAEG;YACH,WAAW,EAAE,YAAoE,EAAE,iDAAhE,UAA8B,EAAE;;gBACjD,MAAM,EAAE,YAAY,EAAE,IAAI,KAAgB,OAAO,EAAlB,MAAM,UAAK,OAAO,EAA3C,wBAAiC,CAAU,CAAC;gBAClD,MAAM,MAAM,GAAG,IAAI,KAAK,SAAS,CAAC;gBAClC,MAAM,MAAM,GAAG,MAAA,IAAI,CAAC,WAAW,mCAAI,IAAI,CAAC,YAAY,CAAC;gBACrD,MAAM,MAAM,GAAG,MAAA,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,IAAI,CAAC,WAAW,mCAAI,IAAI,CAAC,YAAY,CAAC;gBAC7D,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,iCACtD,MAAM,KACT,MAAM;oBACN,MAAM;oBACN,MAAM,IACN,CAAC;gBAEH,MAAM,MAAM,GAAsB,EAAE,CAAC;gBACrC,KAAK,MAAM,UAAU,IAAI,aAAa,EAAE,CAAC;oBACvC,MAAM,WAAW,GAAG;wBAClB,YAAY,EAAG,MAAA,IAAI,CAAC,WAAW,mCAAI,IAAI,CAAC,YAAY;wBACpD,KAAK,EAAU,IAAI,CAAC,KAAK;wBACzB,OAAO,EAAQ,UAAU,CAAC,OAAO;qBAClC,CAAC;oBAEF,IAAI,YAAY,EAAE,CAAC;wBACjB,MAAM,aAAa,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;wBAC1C,IAAI,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;4BACxF,SAAS;wBACX,CAAC;oBACH,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC,MAAM,eAAe,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;gBACxD,CAAC;gBAED,OAAO,MAAM,CAAC;YAChB,CAAC,CAAA;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,IAAI,SAAS;QAIX,OAAO;YACL;;eAEG;YACH,SAAS,EAAE,CAAO,OAAkC,EAAuC,EAAE;gBAE3F,MAAM,YAAY,GAAsD;oBACtE,MAAM,EAAU,IAAI,CAAC,YAAY;oBACjC,aAAa,EAAG,OAAO,CAAC,OAAO;oBAC/B,WAAW,EAAK,YAAY,CAAC,kBAAkB;oBAC/C,MAAM,EAAU,IAAI,CAAC,YAAY;oBACjC,UAAU,EAAM,OAAO,CAAC,UAAU;iBACnC,CAAC;gBAEF,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrB,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC;wBACpF,YAAY,EAAG,IAAI,CAAC,YAAY;wBAChC,WAAW,EAAI,IAAI,CAAC,WAAW;wBAC/B,QAAQ,EAAO,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ;wBAClD,QAAQ,EAAO,IAAI;wBACnB,MAAM,EAAS,IAAI;wBACnB,WAAW,EAAI,YAAY,CAAC,WAAW;qBACxC,CAAC,CAAC;oBAEH,YAAY,CAAC,aAAa,mCACrB,YAAY,CAAC,aAAa,KAC7B,cAAc,GACf,CAAC;oBACF,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;gBAC7C,CAAC;gBAED,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;gBAEvE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,GAAG,aAAa,CAAC;gBACjE,MAAM,QAAQ,GAA+B,EAAE,MAAM,EAAE,CAAC;gBAExD,IAAI,MAAM,CAAC,IAAI,GAAG,GAAG,EAAE,CAAC;oBACtB,MAAM,QAAQ,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC;oBAC3D,QAAQ,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAClE,CAAC;gBAED,OAAO,QAAQ,CAAC;YAClB,CAAC,CAAA;YAED;;eAEG;YACH,KAAK,EAAE,CAAO,OAA8B,EAAmC,EAAE;gBAC/E,MAAM,YAAY,GAAmD;oBACnE,MAAM,EAAU,IAAI,CAAC,YAAY;oBACjC,aAAa,EAAG,OAAO,CAAC,OAAO;oBAC/B,WAAW,EAAK,YAAY,CAAC,cAAc;oBAC3C,MAAM,EAAU,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY;iBAClD,CAAC;gBAEF,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrB,8HAA8H;oBAC9H,uIAAuI;oBAEvI,IAAI,CAAC;wBACH,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC;4BAC7F,YAAY,EAAG,IAAI,CAAC,YAAY;4BAChC,WAAW,EAAI,IAAI,CAAC,WAAW;4BAC/B,QAAQ,EAAO,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ;4BAC9C,MAAM,EAAS,IAAI;4BACnB,WAAW,EAAI,YAAY,CAAC,WAAW;yBACxC,CAAC,CAAC;wBAEH,YAAY,CAAC,aAAa,mCACrB,YAAY,CAAC,aAAa,KAC7B,iBAAiB,GAClB,CAAC;wBACF,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;oBAC7C,CAAC;oBAAC,WAAM,CAAC;wBACP,qGAAqG;wBACrG,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC;oBACzC,CAAC;gBACH,CAAC;gBAED,IAAI,aAAuD,CAAC;gBAE5D,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;oBACjB,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;gBAChE,CAAC;qBAAM,CAAC;oBACN,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;gBACnE,CAAC;gBAED,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC;gBAClC,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;gBAEvC,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;oBACtC,MAAM,QAAQ,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;oBAC/C,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;gBACnD,CAAC,CAAC,CAAC;gBAEH,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;YAC/B,CAAC,CAAA;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QAUT,OAAO;YACL;;eAEG;YACH,MAAM,EAAE,CAAO,OAA6B,EAAkC,EAAE;gBAC9E,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACrC,CAAC,CAAA;YAED;;eAEG;YACH,UAAU,EAAE,CAAO,OAAiC,EAAiC,EAAE;;gBACrF,MAAM,KAAsD,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,EAA7E,EAAE,MAAM,EAAE,eAAe,OAAoD,EAA/C,mBAAmB,cAAjD,UAAmD,CAA0B,CAAC;gBAEpF,gFAAgF;gBAChF,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;oBAC/B,OAAO,mBAAmB,CAAC,OAAO,CAAC;oBACnC,OAAO,mBAAmB,CAAC,QAAQ,CAAC;gBACtC,CAAC;gBAED,mHAAmH;gBACnH,0EAA0E;gBAC1E,IAAI,CAAA,MAAA,OAAO,CAAC,OAAO,0CAAE,SAAS,MAAK,KAAK,IAAI,mBAAmB,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;oBAC5F,OAAO,mBAAmB,CAAC,aAAa,CAAC;oBACzC,OAAO,mBAAmB,CAAC,SAAS,CAAC;gBACvC,CAAC;gBAED,6GAA6G;gBAC7G,gFAAgF;gBAChF,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,KAAK,eAAe,CAAC,EAAE,CAAC;oBAC9F,OAAO,mBAAmB,CAAC,QAAQ,CAAC;gBACtC,CAAC;gBAED,uEAAuE;gBACvE,MAAM,aAAa,GAAG,MAAA,OAAO,CAAC,UAAU,mCACnC,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC;gBAE/C,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;oBACxB,IAAI,EAAM,OAAO,CAAC,IAAI;oBACtB,OAAO,kCACF,mBAAmB,GACnB,OAAO,CAAC,OAAO,CACnB;oBACD,UAAU,EAAE,aAAa,IAAI,SAAS;iBACvC,CAAC,CAAC;YACL,CAAC,CAAA;YAED;;eAEG;YACH,MAAM,EAAE,CAAO,OAA6B,EAA8B,EAAE;gBAC1E,MAAM,YAAY,GAAkD;oBAClE;;;uBAGG;oBACH,MAAM,EAAU,IAAI,CAAC,YAAY;oBACjC,aAAa,EAAG,OAAO,CAAC,OAAO;oBAC/B,WAAW,EAAK,YAAY,CAAC,aAAa;oBAC1C;;;;uBAIG;oBACH,MAAM,EAAU,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY;iBAClD,CAAC;gBAEF,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrB,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC;wBACpF,YAAY,EAAG,IAAI,CAAC,YAAY;wBAChC,WAAW,EAAI,IAAI,CAAC,WAAW;wBAC/B,QAAQ,EAAO,OAAO,CAAC,QAAQ;wBAC/B,QAAQ,EAAO,IAAI;wBACnB,MAAM,EAAS,IAAI;wBACnB,WAAW,EAAI,YAAY,CAAC,WAAW;qBACxC,CAAC,CAAC;oBAEH,YAAY,CAAC,aAAa,mCACrB,YAAY,CAAC,aAAa,KAC7B,cAAc,GACf,CAAC;oBACF,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;gBAC7C,CAAC;gBAED,IAAI,aAAsD,CAAC;gBAE3D,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;oBACjB,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;gBAChE,CAAC;qBAAM,CAAC;oBACN,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;gBACnE,CAAC;gBAED,MAAM,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,GAAG,aAAa,CAAC;gBAE5C,OAAO,EAAE,MAAM,EAAE,CAAC;YACpB,CAAC,CAAA;YACD;;eAEG;YACH,KAAK,EAAE,CAAO,OAA4B,EAAiC,EAAE;gBAC3E,MAAM,YAAY,GAAiD;oBACjE;;;uBAGG;oBACH,MAAM,EAAU,IAAI,CAAC,YAAY;oBACjC,aAAa,EAAG,OAAO,CAAC,OAAO;oBAC/B,WAAW,EAAK,YAAY,CAAC,YAAY;oBACzC;;;;uBAIG;oBACH,MAAM,EAAU,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY;oBACjD,UAAU,EAAM,OAAO,CAAC,UAAU;iBACnC,CAAC;gBAEF,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrB,4FAA4F;oBAC5F,uGAAuG;oBACvG,EAAE;oBACF,6HAA6H;oBAC7H,iDAAiD;oBACjD,qDAAqD;oBACrD,IAAI,CAAC;wBACH,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC;4BACpF,YAAY,EAAG,IAAI,CAAC,YAAY;4BAChC,WAAW,EAAI,IAAI,CAAC,WAAW;4BAC/B,QAAQ,EAAO,OAAO,CAAC,QAAQ;4BAC/B,QAAQ,EAAO,IAAI;4BACnB,MAAM,EAAS,IAAI;4BACnB,WAAW,EAAI,YAAY,CAAC,WAAW;yBACxC,CAAC,CAAC;wBAEH,YAAY,CAAC,aAAa,mCACrB,YAAY,CAAC,aAAa,KAC7B,cAAc,GACf,CAAC;wBACF,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;oBAC7C,CAAC;oBAAC,WAAM,CAAC;wBACP,mGAAmG;wBACnG,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC;oBACzC,CAAC;gBACH,CAAC;gBAGD,IAAI,aAAqD,CAAC;gBAE1D,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;oBACjB,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;gBAChE,CAAC;qBAAM,CAAC;oBACN,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;gBACnE,CAAC;gBAED,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC;gBAClC,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;gBAE/C,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;oBAEpC,MAAM,aAAa;wBACjB;;;2BAGG;wBACH,MAAM,EAAS,eAAe,CAAC,KAAK,CAAC;wBACrC;;;;2BAIG;wBACH,YAAY,EAAG,IAAI,CAAC,YAAY;wBAChC;;;;;2BAKG;wBACH,YAAY,EAAG,OAAO,CAAC,IAAI,EAC3B,WAAW,EAAI,IAAI,CAAC,WAAW,EAC/B,YAAY,EAAG,YAAY,CAAC,aAAa,CAAC,YAAY,IACnD,KAA8C,CAClD,CAAC;oBACF,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;oBAC1E,OAAO,MAAM,CAAC;gBAChB,CAAC,CAAC,CAAC;gBAEH,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;YACrC,CAAC,CAAA;YAED;;eAEG;YACH,IAAI,EAAE,CAAO,OAA2B,EAAgC,EAAE;gBACxE,MAAM,YAAY,GAAgD;oBAChE;;;uBAGG;oBACH,MAAM,EAAU,IAAI,CAAC,YAAY;oBACjC,aAAa,EAAG,OAAO,CAAC,OAAO;oBAC/B,WAAW,EAAK,YAAY,CAAC,WAAW;oBACxC;;;;uBAIG;oBACH,MAAM,EAAU,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY;oBACjD,UAAU,EAAM,OAAO,CAAC,UAAU;iBACnC,CAAC;gBACF,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrB,2FAA2F;oBAC3F,sGAAsG;oBACtG,EAAE;oBACF,6HAA6H;oBAC7H,iDAAiD;oBACjD,qDAAqD;oBAErD,IAAI,CAAC;wBACH,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC;4BACpF,YAAY,EAAG,IAAI,CAAC,YAAY;4BAChC,WAAW,EAAI,IAAI,CAAC,WAAW;4BAC/B,QAAQ,EAAO,OAAO,CAAC,QAAQ;4BAC/B,QAAQ,EAAO,IAAI;4BACnB,MAAM,EAAS,IAAI;4BACnB,WAAW,EAAI,YAAY,CAAC,WAAW;yBACxC,CAAC,CAAC;wBAEH,YAAY,CAAC,aAAa,mCACrB,YAAY,CAAC,aAAa,KAC7B,cAAc,GACf,CAAC;wBACF,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;oBAC7C,CAAC;oBAAC,WAAM,CAAC;wBACP,mGAAmG;wBACnG,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC;oBACzC,CAAC;gBACH,CAAC;gBAED,IAAI,aAAoD,CAAC;gBAEzD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;oBACjB,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;gBAChE,CAAC;qBAAM,CAAC;oBACN,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;gBACnE,CAAC;gBAED,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,aAAa,CAAC;gBAEnD,IAAI,MAAc,CAAC;gBACnB,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;oBAC7C,MAAM,aAAa;wBACjB;;;2BAGG;wBACH,MAAM,EAAS,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC;wBAClD;;;;2BAIG;wBACH,YAAY,EAAG,IAAI,CAAC,YAAY;wBAChC;;;;;2BAKG;wBACH,YAAY,EAAG,OAAO,CAAC,IAAI,EAC3B,WAAW,EAAI,IAAI,CAAC,WAAW,EAC/B,IAAI,EAAW,KAAK,CAAC,IAAI,EACzB,YAAY,EAAG,KAAK,CAAC,YAAY,IAC9B,KAAK,CAAC,YAAY,CACtB,CAAC;oBAEF,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;gBACtE,CAAC;gBAED,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;YAC5B,CAAC,CAAA;YAED;;;;;eAKG;YACH,SAAS,EAAE,CAAO,OAAgC,EAAqC,EAAE;gBACvF,MAAM,YAAY,GAAqD;oBACrE;;;uBAGG;oBACH,MAAM,EAAU,IAAI,CAAC,YAAY;oBACjC,aAAa,EAAG,OAAO,CAAC,OAAO;oBAC/B,WAAW,EAAK,YAAY,CAAC,gBAAgB;oBAC7C;;;;uBAIG;oBACH,MAAM,EAAU,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY;oBAEjD;;uBAEG;oBACH,mBAAmB,EAAE,gBAAgB,CAAC,yBAAyB,CAAC;wBAC9D,KAAK,EAAY,IAAI,CAAC,KAAK;wBAC3B,YAAY,EAAK,IAAI,CAAC,YAAY;wBAClC,WAAW,EAAM,IAAI,CAAC,WAAW;wBACjC,cAAc,EAAG,IAAI,CAAC,cAAc;wBACpC,YAAY,EAAK,OAAO,CAAC,OAAO,CAAC,YAAY;wBAC7C,OAAO;qBACR,CAAC;iBACH,CAAC;gBAEF,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrB,gGAAgG;oBAChG,8GAA8G;oBAC9G,EAAE;oBACF,6HAA6H;oBAC7H,iDAAiD;oBACjD,qDAAqD;oBACrD,IAAI,CAAC;wBACH,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC;4BACpF,YAAY,EAAG,IAAI,CAAC,YAAY;4BAChC,WAAW,EAAI,IAAI,CAAC,WAAW;4BAC/B,QAAQ,EAAO,OAAO,CAAC,QAAQ;4BAC/B,QAAQ,EAAO,IAAI;4BACnB,MAAM,EAAS,IAAI;4BACnB,WAAW,EAAI,YAAY,CAAC,WAAW;yBACxC,CAAC,CAAC;wBAEH,YAAY,CAAC,aAAa,mCACrB,YAAY,CAAC,aAAa,KAC7B,cAAc,GACf,CAAC;wBACF,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;oBAC7C,CAAC;oBAAC,WAAM,CAAC;wBACP,mGAAmG;wBACnG,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC;oBACzC,CAAC;gBACH,CAAC;gBAED,IAAI,aAAyD,CAAC;gBAE9D,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;oBACjB,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;gBAChE,CAAC;qBAAM,CAAC;oBACN,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;gBACnE,CAAC;gBAED,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC;gBAClC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;gBAEvC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;YAClC,CAAC,CAAA;YAED;;;;;;;;eAQG;YACH,KAAK,EAAE,CAAO,OAA4B,EAAiC,EAAE;;gBAC3E,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,MAAA,OAAO,CAAC,OAAO,0CAAE,UAAU,CAAC,CAAC;gBAEvF,MAAM,gBAAgB,GAAiD;oBACrE,KAAK,EAAW,OAAO,CAAC,KAAK;oBAC7B,WAAW,EAAK,YAAY,CAAC,YAAY;oBACzC,aAAa,kCACR,OAAO,CAAC,OAAO,KAClB,UAAU,GACX;oBACD,MAAM,EAAO,IAAI,CAAC,YAAY;oBAC9B,MAAM,EAAO,IAAI,CAAC,YAAY;oBAC9B,UAAU,EAAG,QAAQ;oBACrB,UAAU,EAAG,OAAO,CAAC,UAAU;iBAChC,CAAC;gBAEF,yFAAyF;gBACzF,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrB,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC;wBACpF,YAAY,EAAG,IAAI,CAAC,YAAY;wBAChC,WAAW,EAAI,IAAI,CAAC,WAAW;wBAC/B,QAAQ,EAAO,OAAO,CAAC,OAAO,CAAC,QAAQ;wBACvC,QAAQ,EAAO,IAAI;wBACnB,MAAM,EAAS,IAAI;wBACnB,WAAW,EAAI,gBAAgB,CAAC,WAAW;qBAC5C,CAAC,CAAC;oBAEH,gBAAgB,CAAC,aAAa,mCACzB,gBAAgB,CAAC,aAAa,KACjC,cAAc,GACf,CAAC;oBACF,gBAAgB,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;gBACjD,CAAC;gBAED,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;gBAE3E,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,GAAG,aAAa,CAAC;gBAEtE,IAAI,MAAc,CAAC;gBACnB,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;oBAC7C,MAAM,aAAa;wBACjB;;;2BAGG;wBACH,MAAM,EAAS,IAAI,CAAC,YAAY;wBAChC;;;;2BAIG;wBACH,YAAY,EAAG,IAAI,CAAC,YAAY,EAChC,WAAW,EAAI,QAAQ,EACvB,WAAW,EAAI,IAAI,CAAC,WAAW,IAC5B,eAAe,CACnB,CAAC;oBAEF,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;gBACtE,CAAC;gBAED,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;YAC5B,CAAC,CAAA;SACF,CAAC;IACJ,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"dwn-api.js","sourceRoot":"","sources":["../../src/dwn-api.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/index.js
CHANGED
|
@@ -24,6 +24,7 @@ export * from './define-protocol.js';
|
|
|
24
24
|
export * from './did-api.js';
|
|
25
25
|
export * from './dwn-api.js';
|
|
26
26
|
export * from './grant-revocation.js';
|
|
27
|
+
export * from './live-query.js';
|
|
27
28
|
export * from './permission-grant.js';
|
|
28
29
|
export * from './permission-request.js';
|
|
29
30
|
export * from './protocol.js';
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAE1B,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAE1B,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,CAAC"}
|
|
@@ -0,0 +1,153 @@
|
|
|
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
|
+
import { getRecordAuthor } from '@enbox/agent';
|
|
11
|
+
import { Record } from './record.js';
|
|
12
|
+
/**
|
|
13
|
+
* A `CustomEvent` subclass carrying a {@link RecordChange} as its `detail`.
|
|
14
|
+
*
|
|
15
|
+
* Dispatched on the {@link LiveQuery} `EventTarget` for both the specific
|
|
16
|
+
* change-type event (`create`, `update`, `delete`) and the catch-all `change`
|
|
17
|
+
* event.
|
|
18
|
+
*/
|
|
19
|
+
export class RecordChangeEvent extends CustomEvent {
|
|
20
|
+
constructor(change) {
|
|
21
|
+
super(change.type, { detail: change });
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* A live query that combines an initial snapshot of matching records with a
|
|
26
|
+
* real-time stream of deduplicated, semantically-typed change events.
|
|
27
|
+
*
|
|
28
|
+
* `LiveQuery` extends `EventTarget` so that standard `addEventListener` /
|
|
29
|
+
* `removeEventListener` work out of the box. For convenience, the typed
|
|
30
|
+
* {@link LiveQuery.on | `.on()`} method provides a cleaner API that returns an
|
|
31
|
+
* unsubscribe function.
|
|
32
|
+
*
|
|
33
|
+
* ### Events
|
|
34
|
+
*
|
|
35
|
+
* | Event name | `detail` type | Description |
|
|
36
|
+
* |---|---|---|
|
|
37
|
+
* | `create` | {@link RecordChange} | A new record was written |
|
|
38
|
+
* | `update` | {@link RecordChange} | An existing record was updated |
|
|
39
|
+
* | `delete` | {@link RecordChange} | A record was deleted |
|
|
40
|
+
* | `change` | {@link RecordChange} | Catch-all for any of the above |
|
|
41
|
+
*
|
|
42
|
+
* @example
|
|
43
|
+
* ```ts
|
|
44
|
+
* const { liveQuery } = await dwn.records.subscribe({
|
|
45
|
+
* message: {
|
|
46
|
+
* filter: {
|
|
47
|
+
* protocol : chatProtocol.protocol,
|
|
48
|
+
* protocolPath : 'thread/message',
|
|
49
|
+
* }
|
|
50
|
+
* }
|
|
51
|
+
* });
|
|
52
|
+
*
|
|
53
|
+
* // Initial state
|
|
54
|
+
* for (const record of liveQuery.records) {
|
|
55
|
+
* renderMessage(record);
|
|
56
|
+
* }
|
|
57
|
+
*
|
|
58
|
+
* // Real-time changes
|
|
59
|
+
* liveQuery.on('create', (record) => appendMessage(record));
|
|
60
|
+
* liveQuery.on('update', (record) => refreshMessage(record));
|
|
61
|
+
* liveQuery.on('delete', (record) => removeMessage(record));
|
|
62
|
+
*
|
|
63
|
+
* // Or use the catch-all
|
|
64
|
+
* liveQuery.on('change', ({ type, record }) => {
|
|
65
|
+
* console.log(`${type}: ${record.id}`);
|
|
66
|
+
* });
|
|
67
|
+
*
|
|
68
|
+
* // Cleanup
|
|
69
|
+
* await liveQuery.close();
|
|
70
|
+
* ```
|
|
71
|
+
*/
|
|
72
|
+
export class LiveQuery extends EventTarget {
|
|
73
|
+
constructor(options) {
|
|
74
|
+
super();
|
|
75
|
+
/** Whether the live query has been closed. */
|
|
76
|
+
this._closed = false;
|
|
77
|
+
const { agent, connectedDid, delegateDid, protocolRole, remoteOrigin, permissionsApi, initialEntries, subscription, } = options;
|
|
78
|
+
this._subscription = subscription;
|
|
79
|
+
// Build Record objects from the initial snapshot entries (same logic as records.query()).
|
|
80
|
+
this.records = initialEntries.map((entry) => new Record(agent, Object.assign({ author: getRecordAuthor(entry), connectedDid,
|
|
81
|
+
remoteOrigin,
|
|
82
|
+
delegateDid,
|
|
83
|
+
protocolRole }, entry), permissionsApi));
|
|
84
|
+
// Seed the known-records map with recordId -> messageTimestamp for dedup.
|
|
85
|
+
this._knownRecords = new Map();
|
|
86
|
+
for (const record of this.records) {
|
|
87
|
+
this._knownRecords.set(record.id, record.dateModified);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Process an incoming live event from the DWN subscription.
|
|
92
|
+
* Deduplicates against the initial snapshot and classifies the change type.
|
|
93
|
+
*
|
|
94
|
+
* @internal — Called by `DwnApi.records.subscribe()` when wiring up the subscription handler.
|
|
95
|
+
*/
|
|
96
|
+
handleEvent(record) {
|
|
97
|
+
if (this._closed) {
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
let changeType;
|
|
101
|
+
if (record.deleted) {
|
|
102
|
+
changeType = 'delete';
|
|
103
|
+
this._knownRecords.delete(record.id);
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
const knownTimestamp = this._knownRecords.get(record.id);
|
|
107
|
+
if (knownTimestamp !== undefined) {
|
|
108
|
+
// We've seen this recordId before (either from snapshot or a prior event).
|
|
109
|
+
if (record.dateModified <= knownTimestamp) {
|
|
110
|
+
// Duplicate or stale event from the overlap window — skip.
|
|
111
|
+
return;
|
|
112
|
+
}
|
|
113
|
+
changeType = 'update';
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
changeType = 'create';
|
|
117
|
+
}
|
|
118
|
+
// Update the known state.
|
|
119
|
+
this._knownRecords.set(record.id, record.dateModified);
|
|
120
|
+
}
|
|
121
|
+
const change = { type: changeType, record };
|
|
122
|
+
// Dispatch the specific event (create/update/delete).
|
|
123
|
+
this.dispatchEvent(new RecordChangeEvent(change));
|
|
124
|
+
// Dispatch the catch-all change event.
|
|
125
|
+
this.dispatchEvent(new CustomEvent('change', { detail: change }));
|
|
126
|
+
}
|
|
127
|
+
on(event, handler) {
|
|
128
|
+
const wrapper = (e) => {
|
|
129
|
+
const detail = e.detail;
|
|
130
|
+
if (event === 'change') {
|
|
131
|
+
handler(detail);
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
handler(detail.record);
|
|
135
|
+
}
|
|
136
|
+
};
|
|
137
|
+
this.addEventListener(event, wrapper);
|
|
138
|
+
return () => { this.removeEventListener(event, wrapper); };
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Close the underlying subscription and stop dispatching events.
|
|
142
|
+
*/
|
|
143
|
+
close() {
|
|
144
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
145
|
+
if (this._closed) {
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
this._closed = true;
|
|
149
|
+
yield this._subscription.close();
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
//# sourceMappingURL=live-query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"live-query.js","sourceRoot":"","sources":["../../src/live-query.ts"],"names":[],"mappings":"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"}
|
|
@@ -148,21 +148,22 @@ export class TypedDwnApi {
|
|
|
148
148
|
/**
|
|
149
149
|
* Subscribe to records at the given protocol path.
|
|
150
150
|
*
|
|
151
|
+
* Returns a {@link LiveQuery} that atomically provides an initial snapshot
|
|
152
|
+
* and a real-time stream of deduplicated change events.
|
|
153
|
+
*
|
|
151
154
|
* @param path - The protocol path to subscribe to.
|
|
152
|
-
* @param request - Subscribe options including
|
|
155
|
+
* @param request - Subscribe options including optional filter and role.
|
|
153
156
|
*/
|
|
154
157
|
subscribe(path, request) {
|
|
155
158
|
return __awaiter(this, void 0, void 0, function* () {
|
|
156
159
|
const typeName = lastSegment(path);
|
|
157
160
|
const typeEntry = this._definition.types[typeName];
|
|
158
161
|
return this._dwn.records.subscribe({
|
|
159
|
-
from: request.from,
|
|
162
|
+
from: request === null || request === void 0 ? void 0 : request.from,
|
|
160
163
|
protocol: this._definition.protocol,
|
|
161
|
-
encryption: request.encryption,
|
|
162
|
-
subscriptionHandler: request.subscriptionHandler,
|
|
163
164
|
message: {
|
|
164
|
-
filter: Object.assign(Object.assign({}, request.filter), { protocol: this._definition.protocol, protocolPath: path, schema: typeEntry === null || typeEntry === void 0 ? void 0 : typeEntry.schema }),
|
|
165
|
-
protocolRole: request.protocolRole,
|
|
165
|
+
filter: Object.assign(Object.assign({}, request === null || request === void 0 ? void 0 : request.filter), { protocol: this._definition.protocol, protocolPath: path, schema: typeEntry === null || typeEntry === void 0 ? void 0 : typeEntry.schema }),
|
|
166
|
+
protocolRole: request === null || request === void 0 ? void 0 : request.protocolRole,
|
|
166
167
|
},
|
|
167
168
|
});
|
|
168
169
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typed-dwn-api.js","sourceRoot":"","sources":["../../src/typed-dwn-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"typed-dwn-api.js","sourceRoot":"","sources":["../../src/typed-dwn-api.ts"],"names":[],"mappings":"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"}
|
package/dist/types/dwn-api.d.ts
CHANGED
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
* NOTE: Added reference types here to avoid a `pnpm` bug during build.
|
|
3
3
|
* https://github.com/enboxorg/enbox/pull/507
|
|
4
4
|
*/
|
|
5
|
-
import type { CreateGrantParams, CreateRequestParams, DwnMessageParams,
|
|
5
|
+
import type { CreateGrantParams, CreateRequestParams, DwnMessageParams, DwnPaginationCursor, DwnResponseStatus, FetchPermissionRequestParams, FetchPermissionsParams, Web5Agent } from '@enbox/agent';
|
|
6
6
|
import { DwnInterface } from '@enbox/agent';
|
|
7
7
|
import type { ProtocolDefinition } from '@enbox/dwn-sdk-js';
|
|
8
8
|
import type { SchemaMap, TypedProtocol } from './protocol-types.js';
|
|
9
|
+
import { LiveQuery } from './live-query.js';
|
|
9
10
|
import { PermissionGrant } from './permission-grant.js';
|
|
10
11
|
import { PermissionRequest } from './permission-request.js';
|
|
11
12
|
import { Protocol } from './protocol.js';
|
|
@@ -175,33 +176,25 @@ export type RecordsReadResponse = DwnResponseStatus & {
|
|
|
175
176
|
/** The record retrieved by the read operation. */
|
|
176
177
|
record: Record;
|
|
177
178
|
};
|
|
178
|
-
/** Subscription handler for Records */
|
|
179
|
-
export type RecordsSubscriptionHandler = (record: Record) => void;
|
|
180
179
|
/**
|
|
181
180
|
* Represents a request to subscribe to records from a Decentralized Web Node (DWN).
|
|
182
181
|
*
|
|
183
|
-
*
|
|
184
|
-
*
|
|
182
|
+
* Returns a {@link LiveQuery} that atomically provides an initial snapshot of
|
|
183
|
+
* matching records alongside a real-time stream of deduplicated, semantically-
|
|
184
|
+
* typed change events (`create`, `update`, `delete`).
|
|
185
185
|
*/
|
|
186
186
|
export type RecordsSubscribeRequest = {
|
|
187
187
|
/** Optional DID specifying the remote target DWN tenant to subscribe from. */
|
|
188
188
|
from?: string;
|
|
189
|
-
/** Records must be scoped to a specific protocol */
|
|
189
|
+
/** Records must be scoped to a specific protocol. */
|
|
190
190
|
protocol?: string;
|
|
191
|
-
/** The parameters for the subscription operation, detailing the criteria for the subscription filter */
|
|
191
|
+
/** The parameters for the subscription operation, detailing the criteria for the subscription filter. */
|
|
192
192
|
message: Omit<DwnMessageParams[DwnInterface.RecordsSubscribe], 'signer'>;
|
|
193
|
-
/** The handler to process the subscription events */
|
|
194
|
-
subscriptionHandler: RecordsSubscriptionHandler;
|
|
195
|
-
/** When true, indicates encryption is active (decryption happens on subsequent reads). */
|
|
196
|
-
encryption?: boolean;
|
|
197
193
|
};
|
|
198
|
-
/** Encapsulates the response from a DWN
|
|
194
|
+
/** Encapsulates the response from a DWN RecordsSubscribeRequest. */
|
|
199
195
|
export type RecordsSubscribeResponse = DwnResponseStatus & {
|
|
200
|
-
/**
|
|
201
|
-
|
|
202
|
-
*
|
|
203
|
-
* */
|
|
204
|
-
subscription?: DwnMessageSubscription;
|
|
196
|
+
/** The live query instance, or `undefined` if the request failed. */
|
|
197
|
+
liveQuery?: LiveQuery;
|
|
205
198
|
};
|
|
206
199
|
/**
|
|
207
200
|
* Defines a request to write (create) a record to a Decentralized Web Node (DWN).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dwn-api.d.ts","sourceRoot":"","sources":["../../src/dwn-api.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EACV,iBAAiB,EACjB,mBAAmB,EAEnB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"dwn-api.d.ts","sourceRoot":"","sources":["../../src/dwn-api.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EACV,iBAAiB,EACjB,mBAAmB,EAEnB,gBAAgB,EAChB,mBAAmB,EAEnB,iBAAiB,EACjB,4BAA4B,EAC5B,sBAAsB,EAEtB,SAAS,EAAE,MAAM,cAAc,CAAC;AAOlC,OAAO,EAAE,YAAY,EAAmB,MAAM,cAAc,CAAC;AAE7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG,IAAI,CAAC,4BAA4B,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC,GAAG;IACtG,0EAA0E;IAC1E,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,sBAAsB,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC,GAAG;IAC9F,0EAA0E;IAC1E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sDAAsD;IACtD,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,8CAA8C;IAC9C,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC3E,2FAA2F;IAC3F,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,0BAA0B,GAAG,iBAAiB,GAAG;IAC3D,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,0EAA0E;IAC1E,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,qEAAqE;IACrE,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,CAAA;CACvE,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAAG,iBAAiB,GAAG;IACvD,6CAA6C;IAC7C,SAAS,EAAE,QAAQ,EAAE,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,mBAAmB,CAAC;AAEvD;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,oBAAoB,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC,kDAAkD;IAClD,MAAM,EAAE,MAAM,CAAC;IACf,mCAAmC;IACnC,IAAI,EAAE,OAAO,CAAC;IACd,oEAAoE;IACpE,OAAO,CAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAC,CAAC;IACtE,qFAAqF;IACrF,MAAM,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,4FAA4F;IAC5F,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,oDAAoD;IACpD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,+CAA+C;IAC/C,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC,CAAC;CACvE,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,6FAA6F;IAC7F,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,oDAAoD;IACpD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,4FAA4F;IAC5F,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAC,CAAC;IAErE,gFAAgF;IAChF,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,iBAAiB,GAAG;IACrD,2CAA2C;IAC3C,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAElB,kHAAkH;IAClH,MAAM,CAAC,EAAE,mBAAmB,CAAC;CAC9B,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,yFAAyF;IACzF,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,oDAAoD;IACpD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,8FAA8F;IAC9F,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAC;IAEpE,mEAAmE;IACnE,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,iBAAiB,GAAG;IACpD,kDAAkD;IAClD,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,8EAA8E;IAC9E,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,qDAAqD;IACrD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,yGAAyG;IACzG,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,gBAAgB,CAAC,EAAE,QAAQ,CAAC,CAAC;CAC1E,CAAC;AAEF,oEAAoE;AACpE,MAAM,MAAM,wBAAwB,GAAG,iBAAiB,GAAG;IACzD,qEAAqE;IACrE,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,iEAAiE;IACjE,IAAI,EAAE,OAAO,CAAC;IAEd,qEAAqE;IACrE,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAE/E;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,8FAA8F;IAC9F,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,oBAAoB,GAAG,iBAAiB,GAAG;IACrD;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,CAAC;AAEF;;GAEG;AACH,qBAAa,MAAM;IACjB;;;OAGG;IACH,OAAO,CAAC,KAAK,CAAY;IAEzB,4EAA4E;IAC5E,OAAO,CAAC,YAAY,CAAS;IAE7B,qEAAqE;IACrE,OAAO,CAAC,WAAW,CAAC,CAAS;IAE7B,kHAAkH;IAClH,OAAO,CAAC,cAAc,CAAsB;gBAEhC,OAAO,EAAE;QAAE,KAAK,EAAE,SAAS,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE;IAOrF;;;;;;;;;;;;;;;;;OAiBG;IACI,KAAK,CAAC,CAAC,SAAS,kBAAkB,EAAE,CAAC,SAAS,SAAS,EAC5D,QAAQ,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,GAC5B,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC;IAIpB;;;;;;;;;;OAUG;IACH,IAAI,WAAW,IAAI;QACf,OAAO,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,QAAQ,CAAC,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;QACtF,KAAK,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;QAChF,aAAa,EAAE,CAAC,OAAO,CAAC,EAAE,oBAAoB,KAAK,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAChF,WAAW,EAAE,CAAC,OAAO,CAAC,EAAE,kBAAkB,KAAK,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;KACzE,CA+FJ;IAED;;OAEG;IACH,IAAI,SAAS,IAAI;QACb,SAAS,EAAE,CAAC,OAAO,EAAE,yBAAyB,KAAK,OAAO,CAAC,0BAA0B,CAAC,CAAC;QACvF,KAAK,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,OAAO,CAAC,sBAAsB,CAAC,CAAC;KAC1E,CAmGJ;IAED;;OAEG;IACH,IAAI,OAAO,IAAI;QACX,MAAM,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC1E,UAAU,EAAE,CAAC,OAAO,EAAE,wBAAwB,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAC;QACjF,MAAM,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;QACtE,KAAK,EAAE,CAAC,OAAO,EAAE,mBAAmB,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAC;QACvE,IAAI,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAC;QACpE,SAAS,EAAE,CAAC,OAAO,EAAE,uBAAuB,KAAK,OAAO,CAAC,wBAAwB,CAAC,CAAC;QACnF,KAAK,EAAE,CAAC,OAAO,EAAE,mBAAmB,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAC;KACtE,CAscJ;CACF"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -24,6 +24,7 @@ export * from './define-protocol.js';
|
|
|
24
24
|
export * from './did-api.js';
|
|
25
25
|
export * from './dwn-api.js';
|
|
26
26
|
export * from './grant-revocation.js';
|
|
27
|
+
export * from './live-query.js';
|
|
27
28
|
export * from './permission-grant.js';
|
|
28
29
|
export * from './permission-request.js';
|
|
29
30
|
export * from './protocol.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAE1B,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAE1B,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,CAAC"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import type { RecordsQueryReplyEntry } from '@enbox/dwn-sdk-js';
|
|
2
|
+
import type { DwnMessageSubscription, PermissionsApi, Web5Agent } from '@enbox/agent';
|
|
3
|
+
import { Record } from './record.js';
|
|
4
|
+
/**
|
|
5
|
+
* The type of change that occurred to a record.
|
|
6
|
+
*/
|
|
7
|
+
export type RecordChangeType = 'create' | 'update' | 'delete';
|
|
8
|
+
/**
|
|
9
|
+
* Describes a change to a record in a {@link LiveQuery}.
|
|
10
|
+
*/
|
|
11
|
+
export type RecordChange = {
|
|
12
|
+
/** Whether the record was created, updated, or deleted. */
|
|
13
|
+
type: RecordChangeType;
|
|
14
|
+
/** The record affected by the change. */
|
|
15
|
+
record: Record;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* A `CustomEvent` subclass carrying a {@link RecordChange} as its `detail`.
|
|
19
|
+
*
|
|
20
|
+
* Dispatched on the {@link LiveQuery} `EventTarget` for both the specific
|
|
21
|
+
* change-type event (`create`, `update`, `delete`) and the catch-all `change`
|
|
22
|
+
* event.
|
|
23
|
+
*/
|
|
24
|
+
export declare class RecordChangeEvent extends CustomEvent<RecordChange> {
|
|
25
|
+
constructor(change: RecordChange);
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Options for creating a {@link LiveQuery}.
|
|
29
|
+
* @internal — Constructed by `DwnApi.records.subscribe()`, not by end users.
|
|
30
|
+
*/
|
|
31
|
+
export type LiveQueryOptions = {
|
|
32
|
+
/** The agent instance used to construct Record objects. */
|
|
33
|
+
agent: Web5Agent;
|
|
34
|
+
/** The DID of the connected user. */
|
|
35
|
+
connectedDid: string;
|
|
36
|
+
/** Optional delegate DID for permission-delegated access. */
|
|
37
|
+
delegateDid?: string;
|
|
38
|
+
/** Optional protocol role for role-authorized access. */
|
|
39
|
+
protocolRole?: string;
|
|
40
|
+
/** Optional remote DWN origin if subscribing to a remote DWN. */
|
|
41
|
+
remoteOrigin?: string;
|
|
42
|
+
/** The permissions API instance for constructing Record objects. */
|
|
43
|
+
permissionsApi?: PermissionsApi;
|
|
44
|
+
/** The initial snapshot entries from the subscribe reply. */
|
|
45
|
+
initialEntries: RecordsQueryReplyEntry[];
|
|
46
|
+
/** The underlying DWN subscription handle. */
|
|
47
|
+
subscription: DwnMessageSubscription;
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* A live query that combines an initial snapshot of matching records with a
|
|
51
|
+
* real-time stream of deduplicated, semantically-typed change events.
|
|
52
|
+
*
|
|
53
|
+
* `LiveQuery` extends `EventTarget` so that standard `addEventListener` /
|
|
54
|
+
* `removeEventListener` work out of the box. For convenience, the typed
|
|
55
|
+
* {@link LiveQuery.on | `.on()`} method provides a cleaner API that returns an
|
|
56
|
+
* unsubscribe function.
|
|
57
|
+
*
|
|
58
|
+
* ### Events
|
|
59
|
+
*
|
|
60
|
+
* | Event name | `detail` type | Description |
|
|
61
|
+
* |---|---|---|
|
|
62
|
+
* | `create` | {@link RecordChange} | A new record was written |
|
|
63
|
+
* | `update` | {@link RecordChange} | An existing record was updated |
|
|
64
|
+
* | `delete` | {@link RecordChange} | A record was deleted |
|
|
65
|
+
* | `change` | {@link RecordChange} | Catch-all for any of the above |
|
|
66
|
+
*
|
|
67
|
+
* @example
|
|
68
|
+
* ```ts
|
|
69
|
+
* const { liveQuery } = await dwn.records.subscribe({
|
|
70
|
+
* message: {
|
|
71
|
+
* filter: {
|
|
72
|
+
* protocol : chatProtocol.protocol,
|
|
73
|
+
* protocolPath : 'thread/message',
|
|
74
|
+
* }
|
|
75
|
+
* }
|
|
76
|
+
* });
|
|
77
|
+
*
|
|
78
|
+
* // Initial state
|
|
79
|
+
* for (const record of liveQuery.records) {
|
|
80
|
+
* renderMessage(record);
|
|
81
|
+
* }
|
|
82
|
+
*
|
|
83
|
+
* // Real-time changes
|
|
84
|
+
* liveQuery.on('create', (record) => appendMessage(record));
|
|
85
|
+
* liveQuery.on('update', (record) => refreshMessage(record));
|
|
86
|
+
* liveQuery.on('delete', (record) => removeMessage(record));
|
|
87
|
+
*
|
|
88
|
+
* // Or use the catch-all
|
|
89
|
+
* liveQuery.on('change', ({ type, record }) => {
|
|
90
|
+
* console.log(`${type}: ${record.id}`);
|
|
91
|
+
* });
|
|
92
|
+
*
|
|
93
|
+
* // Cleanup
|
|
94
|
+
* await liveQuery.close();
|
|
95
|
+
* ```
|
|
96
|
+
*/
|
|
97
|
+
export declare class LiveQuery extends EventTarget {
|
|
98
|
+
/** The initial snapshot of matching records. */
|
|
99
|
+
readonly records: Record[];
|
|
100
|
+
/** The underlying DWN subscription handle. */
|
|
101
|
+
private _subscription;
|
|
102
|
+
/** Tracks known record states for dedup and change-type classification. */
|
|
103
|
+
private _knownRecords;
|
|
104
|
+
/** Whether the live query has been closed. */
|
|
105
|
+
private _closed;
|
|
106
|
+
constructor(options: LiveQueryOptions);
|
|
107
|
+
/**
|
|
108
|
+
* Process an incoming live event from the DWN subscription.
|
|
109
|
+
* Deduplicates against the initial snapshot and classifies the change type.
|
|
110
|
+
*
|
|
111
|
+
* @internal — Called by `DwnApi.records.subscribe()` when wiring up the subscription handler.
|
|
112
|
+
*/
|
|
113
|
+
handleEvent(record: Record): void;
|
|
114
|
+
/**
|
|
115
|
+
* Register a typed event handler. Returns an unsubscribe function.
|
|
116
|
+
*
|
|
117
|
+
* @param event - The event type to listen for.
|
|
118
|
+
* @param handler - The handler function.
|
|
119
|
+
* @returns A function that removes the handler when called.
|
|
120
|
+
*
|
|
121
|
+
* @example
|
|
122
|
+
* ```ts
|
|
123
|
+
* const off = live.on('create', (record) => console.log(record.id));
|
|
124
|
+
* off(); // stop listening
|
|
125
|
+
* ```
|
|
126
|
+
*/
|
|
127
|
+
on(event: 'change', handler: (change: RecordChange) => void): () => void;
|
|
128
|
+
on(event: 'create', handler: (record: Record) => void): () => void;
|
|
129
|
+
on(event: 'update', handler: (record: Record) => void): () => void;
|
|
130
|
+
on(event: 'delete', handler: (record: Record) => void): () => void;
|
|
131
|
+
/**
|
|
132
|
+
* Close the underlying subscription and stop dispatching events.
|
|
133
|
+
*/
|
|
134
|
+
close(): Promise<void>;
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=live-query.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"live-query.d.ts","sourceRoot":"","sources":["../../src/live-query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,sBAAsB,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAItF,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,2DAA2D;IAC3D,IAAI,EAAE,gBAAgB,CAAC;IAEvB,yCAAyC;IACzC,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;;;;GAMG;AACH,qBAAa,iBAAkB,SAAQ,WAAW,CAAC,YAAY,CAAC;gBAClD,MAAM,EAAE,YAAY;CAGjC;AAED;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,2DAA2D;IAC3D,KAAK,EAAE,SAAS,CAAC;IAEjB,qCAAqC;IACrC,YAAY,EAAE,MAAM,CAAC;IAErB,6DAA6D;IAC7D,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,yDAAyD;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,iEAAiE;IACjE,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,oEAAoE;IACpE,cAAc,CAAC,EAAE,cAAc,CAAC;IAEhC,6DAA6D;IAC7D,cAAc,EAAE,sBAAsB,EAAE,CAAC;IAEzC,8CAA8C;IAC9C,YAAY,EAAE,sBAAsB,CAAC;CACtC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,qBAAa,SAAU,SAAQ,WAAW;IACxC,gDAAgD;IAChD,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;IAE3B,8CAA8C;IAC9C,OAAO,CAAC,aAAa,CAAyB;IAE9C,2EAA2E;IAC3E,OAAO,CAAC,aAAa,CAAsB;IAE3C,8CAA8C;IAC9C,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,EAAE,gBAAgB;IAiCrC;;;;;OAKG;IACI,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAqCxC;;;;;;;;;;;;OAYG;IACH,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,GAAG,MAAM,IAAI;IACxE,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;IAClE,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;IAClE,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;IAelE;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAO7B"}
|