@atproto/bsky 0.0.124 → 0.0.125

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.
Files changed (113) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/api/app/bsky/notification/listNotifications.d.ts +7 -0
  3. package/dist/api/app/bsky/notification/listNotifications.d.ts.map +1 -1
  4. package/dist/api/app/bsky/notification/listNotifications.js +21 -5
  5. package/dist/api/app/bsky/notification/listNotifications.js.map +1 -1
  6. package/dist/config.d.ts +6 -0
  7. package/dist/config.d.ts.map +1 -1
  8. package/dist/config.js +24 -15
  9. package/dist/config.js.map +1 -1
  10. package/dist/context.d.ts +6 -1
  11. package/dist/context.d.ts.map +1 -1
  12. package/dist/context.js +6 -0
  13. package/dist/context.js.map +1 -1
  14. package/dist/data-plane/client/hosts.d.ts +37 -0
  15. package/dist/data-plane/client/hosts.d.ts.map +1 -0
  16. package/dist/data-plane/client/hosts.js +106 -0
  17. package/dist/data-plane/client/hosts.js.map +1 -0
  18. package/dist/data-plane/client/index.d.ts +13 -0
  19. package/dist/data-plane/client/index.d.ts.map +1 -0
  20. package/dist/data-plane/client/index.js +133 -0
  21. package/dist/data-plane/client/index.js.map +1 -0
  22. package/dist/data-plane/{client.d.ts → client/util.d.ts} +3 -10
  23. package/dist/data-plane/client/util.d.ts.map +1 -0
  24. package/dist/data-plane/client/util.js +85 -0
  25. package/dist/data-plane/client/util.js.map +1 -0
  26. package/dist/data-plane/server/db/pagination.d.ts +69 -9
  27. package/dist/data-plane/server/db/pagination.d.ts.map +1 -1
  28. package/dist/data-plane/server/db/pagination.js +114 -14
  29. package/dist/data-plane/server/db/pagination.js.map +1 -1
  30. package/dist/data-plane/server/routes/notifs.d.ts.map +1 -1
  31. package/dist/data-plane/server/routes/notifs.js +3 -5
  32. package/dist/data-plane/server/routes/notifs.js.map +1 -1
  33. package/dist/etcd.d.ts +25 -0
  34. package/dist/etcd.d.ts.map +1 -0
  35. package/dist/etcd.js +109 -0
  36. package/dist/etcd.js.map +1 -0
  37. package/dist/index.d.ts.map +1 -1
  38. package/dist/index.js +14 -1
  39. package/dist/index.js.map +1 -1
  40. package/dist/lexicon/index.d.ts +6 -0
  41. package/dist/lexicon/index.d.ts.map +1 -1
  42. package/dist/lexicon/index.js +12 -0
  43. package/dist/lexicon/index.js.map +1 -1
  44. package/dist/lexicon/lexicons.d.ts +304 -156
  45. package/dist/lexicon/lexicons.d.ts.map +1 -1
  46. package/dist/lexicon/lexicons.js +168 -80
  47. package/dist/lexicon/lexicons.js.map +1 -1
  48. package/dist/lexicon/types/app/bsky/embed/video.d.ts +1 -0
  49. package/dist/lexicon/types/app/bsky/embed/video.d.ts.map +1 -1
  50. package/dist/lexicon/types/app/bsky/embed/video.js.map +1 -1
  51. package/dist/lexicon/types/com/atproto/identity/defs.d.ts +17 -0
  52. package/dist/lexicon/types/com/atproto/identity/defs.d.ts.map +1 -0
  53. package/dist/lexicon/types/com/atproto/identity/defs.js +16 -0
  54. package/dist/lexicon/types/com/atproto/identity/defs.js.map +1 -0
  55. package/dist/lexicon/types/com/atproto/identity/refreshIdentity.d.ts +39 -0
  56. package/dist/lexicon/types/com/atproto/identity/refreshIdentity.d.ts.map +1 -0
  57. package/dist/lexicon/types/com/atproto/identity/refreshIdentity.js +7 -0
  58. package/dist/lexicon/types/com/atproto/identity/refreshIdentity.js.map +1 -0
  59. package/dist/lexicon/types/com/atproto/identity/resolveDid.d.ts +40 -0
  60. package/dist/lexicon/types/com/atproto/identity/resolveDid.d.ts.map +1 -0
  61. package/dist/lexicon/types/com/atproto/identity/resolveDid.js +7 -0
  62. package/dist/lexicon/types/com/atproto/identity/resolveDid.js.map +1 -0
  63. package/dist/lexicon/types/com/atproto/identity/resolveHandle.d.ts +1 -0
  64. package/dist/lexicon/types/com/atproto/identity/resolveHandle.d.ts.map +1 -1
  65. package/dist/lexicon/types/com/atproto/identity/resolveIdentity.d.ts +36 -0
  66. package/dist/lexicon/types/com/atproto/identity/resolveIdentity.d.ts.map +1 -0
  67. package/dist/lexicon/types/com/atproto/identity/resolveIdentity.js +7 -0
  68. package/dist/lexicon/types/com/atproto/identity/resolveIdentity.js.map +1 -0
  69. package/dist/lexicon/types/com/atproto/repo/listRecords.d.ts +0 -4
  70. package/dist/lexicon/types/com/atproto/repo/listRecords.d.ts.map +1 -1
  71. package/dist/lexicon/types/com/atproto/repo/listRecords.js.map +1 -1
  72. package/dist/lexicon/types/com/atproto/sync/getRecord.d.ts +0 -2
  73. package/dist/lexicon/types/com/atproto/sync/getRecord.d.ts.map +1 -1
  74. package/dist/lexicon/types/com/atproto/sync/subscribeRepos.d.ts +1 -30
  75. package/dist/lexicon/types/com/atproto/sync/subscribeRepos.d.ts.map +1 -1
  76. package/dist/lexicon/types/com/atproto/sync/subscribeRepos.js +0 -27
  77. package/dist/lexicon/types/com/atproto/sync/subscribeRepos.js.map +1 -1
  78. package/dist/logger.d.ts +1 -0
  79. package/dist/logger.d.ts.map +1 -1
  80. package/dist/logger.js +2 -1
  81. package/dist/logger.js.map +1 -1
  82. package/package.json +16 -15
  83. package/src/api/app/bsky/notification/listNotifications.ts +28 -6
  84. package/src/config.ts +45 -15
  85. package/src/context.ts +12 -1
  86. package/src/data-plane/client/hosts.ts +103 -0
  87. package/src/data-plane/client/index.ts +123 -0
  88. package/src/data-plane/client/util.ts +66 -0
  89. package/src/data-plane/server/db/pagination.ts +158 -35
  90. package/src/data-plane/server/routes/notifs.ts +4 -9
  91. package/src/etcd.ts +90 -0
  92. package/src/index.ts +26 -2
  93. package/src/lexicon/index.ts +36 -0
  94. package/src/lexicon/lexicons.ts +183 -83
  95. package/src/lexicon/types/app/bsky/embed/video.ts +1 -0
  96. package/src/lexicon/types/com/atproto/identity/defs.ts +30 -0
  97. package/src/lexicon/types/com/atproto/identity/refreshIdentity.ts +52 -0
  98. package/src/lexicon/types/com/atproto/identity/resolveDid.ts +52 -0
  99. package/src/lexicon/types/com/atproto/identity/resolveHandle.ts +1 -0
  100. package/src/lexicon/types/com/atproto/identity/resolveIdentity.ts +48 -0
  101. package/src/lexicon/types/com/atproto/repo/listRecords.ts +0 -4
  102. package/src/lexicon/types/com/atproto/sync/getRecord.ts +0 -2
  103. package/src/lexicon/types/com/atproto/sync/subscribeRepos.ts +0 -59
  104. package/src/logger.ts +2 -0
  105. package/tests/etcd.test.ts +301 -0
  106. package/tests/views/__snapshots__/notifications.test.ts.snap +3 -3
  107. package/tests/views/notifications.test.ts +190 -10
  108. package/tsconfig.build.tsbuildinfo +1 -1
  109. package/tsconfig.tests.tsbuildinfo +1 -1
  110. package/dist/data-plane/client.d.ts.map +0 -1
  111. package/dist/data-plane/client.js +0 -156
  112. package/dist/data-plane/client.js.map +0 -1
  113. package/src/data-plane/client.ts +0 -154
@@ -0,0 +1,133 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.Code = exports.createDataPlaneClient = void 0;
21
+ const node_assert_1 = __importDefault(require("node:assert"));
22
+ const node_crypto_1 = require("node:crypto");
23
+ const connect_1 = require("@connectrpc/connect");
24
+ Object.defineProperty(exports, "Code", { enumerable: true, get: function () { return connect_1.Code; } });
25
+ const connect_node_1 = require("@connectrpc/connect-node");
26
+ const bsky_connect_1 = require("../../proto/bsky_connect");
27
+ __exportStar(require("./hosts"), exports);
28
+ __exportStar(require("./util"), exports);
29
+ const MAX_RETRIES = 3;
30
+ const createDataPlaneClient = (hostList, opts) => {
31
+ const clients = new DataPlaneClients(hostList, opts);
32
+ return (0, connect_1.makeAnyClient)(bsky_connect_1.Service, (method) => {
33
+ return async (...args) => {
34
+ let tries = 0;
35
+ let error;
36
+ let remainingClients = clients.get();
37
+ while (tries < MAX_RETRIES) {
38
+ const client = randomElement(remainingClients);
39
+ (0, node_assert_1.default)(client, 'no clients available');
40
+ try {
41
+ return await client[method.localName](...args);
42
+ }
43
+ catch (err) {
44
+ if (err instanceof connect_1.ConnectError &&
45
+ (err.code === connect_1.Code.Unavailable || err.code === connect_1.Code.Aborted)) {
46
+ tries++;
47
+ error = err;
48
+ remainingClients = getRemainingClients(remainingClients, client);
49
+ }
50
+ else {
51
+ throw err;
52
+ }
53
+ }
54
+ }
55
+ (0, node_assert_1.default)(error);
56
+ throw error;
57
+ };
58
+ });
59
+ };
60
+ exports.createDataPlaneClient = createDataPlaneClient;
61
+ /**
62
+ * Uses a reactive HostList in order to maintain a pool of DataPlaneClients.
63
+ * Each DataPlaneClient is cached per host so that it maintains connections
64
+ * and other internal state when the underlying HostList is updated.
65
+ */
66
+ class DataPlaneClients {
67
+ constructor(hostList, clientOpts) {
68
+ Object.defineProperty(this, "hostList", {
69
+ enumerable: true,
70
+ configurable: true,
71
+ writable: true,
72
+ value: hostList
73
+ });
74
+ Object.defineProperty(this, "clientOpts", {
75
+ enumerable: true,
76
+ configurable: true,
77
+ writable: true,
78
+ value: clientOpts
79
+ });
80
+ Object.defineProperty(this, "clients", {
81
+ enumerable: true,
82
+ configurable: true,
83
+ writable: true,
84
+ value: []
85
+ });
86
+ Object.defineProperty(this, "clientsByHost", {
87
+ enumerable: true,
88
+ configurable: true,
89
+ writable: true,
90
+ value: new Map()
91
+ });
92
+ this.refresh();
93
+ this.hostList.onUpdate(() => this.refresh());
94
+ }
95
+ get() {
96
+ return this.clients;
97
+ }
98
+ refresh() {
99
+ this.clients = [];
100
+ for (const host of this.hostList.get()) {
101
+ let client = this.clientsByHost.get(host);
102
+ if (!client) {
103
+ client = this.createClient(host);
104
+ this.clientsByHost.set(host, client);
105
+ }
106
+ this.clients.push(client);
107
+ }
108
+ }
109
+ createClient(host) {
110
+ return createBaseClient(host, this.clientOpts);
111
+ }
112
+ }
113
+ const createBaseClient = (baseUrl, opts) => {
114
+ const { httpVersion = '2', rejectUnauthorized = true } = opts;
115
+ const transport = (0, connect_node_1.createGrpcTransport)({
116
+ baseUrl,
117
+ httpVersion,
118
+ acceptCompression: [],
119
+ nodeOptions: { rejectUnauthorized },
120
+ });
121
+ return (0, connect_1.createPromiseClient)(bsky_connect_1.Service, transport);
122
+ };
123
+ const getRemainingClients = (clients, lastClient) => {
124
+ if (clients.length < 2)
125
+ return clients; // no clients to choose from
126
+ return clients.filter((c) => c !== lastClient);
127
+ };
128
+ const randomElement = (arr) => {
129
+ if (arr.length === 0)
130
+ return;
131
+ return arr[(0, node_crypto_1.randomInt)(arr.length)];
132
+ };
133
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/data-plane/client/index.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,4 @@
1
- import { Code, ConnectError, PromiseClient } from '@connectrpc/connect';
2
- import { Service } from '../proto/bsky_connect';
3
- export type DataPlaneClient = PromiseClient<typeof Service>;
4
- type HttpVersion = '1.1' | '2';
5
- export declare const createDataPlaneClient: (baseUrls: string[], opts: {
6
- httpVersion?: HttpVersion;
7
- rejectUnauthorized?: boolean;
8
- }) => DataPlaneClient;
9
- export { Code };
1
+ import { Code, ConnectError } from '@connectrpc/connect';
10
2
  export declare const isDataplaneError: (err: unknown, code?: Code) => err is ConnectError;
11
3
  export declare const unpackIdentityServices: (servicesBytes: Uint8Array) => UnpackedServices;
12
4
  export declare const unpackIdentityKeys: (keysBytes: Uint8Array) => UnpackedKeys;
@@ -25,4 +17,5 @@ type UnpackedKeys = Record<string, {
25
17
  Type: string;
26
18
  PublicKeyMultibase: string;
27
19
  }>;
28
- //# sourceMappingURL=client.d.ts.map
20
+ export {};
21
+ //# sourceMappingURL=util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../src/data-plane/client/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAIxD,eAAO,MAAM,gBAAgB,QACtB,OAAO,SACL,IAAI,KACV,GAAG,IAAI,YAKT,CAAA;AAED,eAAO,MAAM,sBAAsB,kBAAmB,UAAU,qBAI/D,CAAA;AAED,eAAO,MAAM,kBAAkB,cAAe,UAAU,iBAIvD,CAAA;AAED,eAAO,MAAM,kBAAkB,aACnB,gBAAgB,QACpB;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,uBAOnC,CAAA;AAED,eAAO,MAAM,cAAc,SAAU,YAAY,QAAQ;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,uBAQtE,CAAA;AAED,KAAK,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC,CAAA;AAErE,KAAK,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAA;CAAE,CAAC,CAAA"}
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.getKeyAsDidKey = exports.getServiceEndpoint = exports.unpackIdentityKeys = exports.unpackIdentityServices = exports.isDataplaneError = void 0;
27
+ const connect_1 = require("@connectrpc/connect");
28
+ const ui8 = __importStar(require("uint8arrays"));
29
+ const identity_1 = require("@atproto/identity");
30
+ const isDataplaneError = (err, code) => {
31
+ if (err instanceof connect_1.ConnectError) {
32
+ return !code || err.code === code;
33
+ }
34
+ return false;
35
+ };
36
+ exports.isDataplaneError = isDataplaneError;
37
+ const unpackIdentityServices = (servicesBytes) => {
38
+ const servicesStr = ui8.toString(servicesBytes, 'utf8');
39
+ if (!servicesStr)
40
+ return {};
41
+ return JSON.parse(servicesStr);
42
+ };
43
+ exports.unpackIdentityServices = unpackIdentityServices;
44
+ const unpackIdentityKeys = (keysBytes) => {
45
+ const keysStr = ui8.toString(keysBytes, 'utf8');
46
+ if (!keysStr)
47
+ return {};
48
+ return JSON.parse(keysStr);
49
+ };
50
+ exports.unpackIdentityKeys = unpackIdentityKeys;
51
+ const getServiceEndpoint = (services, opts) => {
52
+ const endpoint = services[opts.id] &&
53
+ services[opts.id].Type === opts.type &&
54
+ validateUrl(services[opts.id].URL);
55
+ return endpoint || undefined;
56
+ };
57
+ exports.getServiceEndpoint = getServiceEndpoint;
58
+ const getKeyAsDidKey = (keys, opts) => {
59
+ const key = keys[opts.id] &&
60
+ (0, identity_1.getDidKeyFromMultibase)({
61
+ type: keys[opts.id].Type,
62
+ publicKeyMultibase: keys[opts.id].PublicKeyMultibase,
63
+ });
64
+ return key || undefined;
65
+ };
66
+ exports.getKeyAsDidKey = getKeyAsDidKey;
67
+ const validateUrl = (urlStr) => {
68
+ let url;
69
+ try {
70
+ url = new URL(urlStr);
71
+ }
72
+ catch {
73
+ return undefined;
74
+ }
75
+ if (!['http:', 'https:'].includes(url.protocol)) {
76
+ return undefined;
77
+ }
78
+ else if (!url.hostname) {
79
+ return undefined;
80
+ }
81
+ else {
82
+ return urlStr;
83
+ }
84
+ };
85
+ //# sourceMappingURL=util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/data-plane/client/util.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAwD;AACxD,iDAAkC;AAClC,gDAA0D;AAEnD,MAAM,gBAAgB,GAAG,CAC9B,GAAY,EACZ,IAAW,EACU,EAAE;IACvB,IAAI,GAAG,YAAY,sBAAY,EAAE,CAAC;QAChC,OAAO,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,CAAA;IACnC,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AARY,QAAA,gBAAgB,oBAQ5B;AAEM,MAAM,sBAAsB,GAAG,CAAC,aAAyB,EAAE,EAAE;IAClE,MAAM,WAAW,GAAG,GAAG,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,CAAA;IACvD,IAAI,CAAC,WAAW;QAAE,OAAO,EAAE,CAAA;IAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAqB,CAAA;AACpD,CAAC,CAAA;AAJY,QAAA,sBAAsB,0BAIlC;AAEM,MAAM,kBAAkB,GAAG,CAAC,SAAqB,EAAE,EAAE;IAC1D,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IAC/C,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAA;IACvB,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAiB,CAAA;AAC5C,CAAC,CAAA;AAJY,QAAA,kBAAkB,sBAI9B;AAEM,MAAM,kBAAkB,GAAG,CAChC,QAA0B,EAC1B,IAAkC,EAClC,EAAE;IACF,MAAM,QAAQ,GACZ,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACjB,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI;QACpC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAA;IACpC,OAAO,QAAQ,IAAI,SAAS,CAAA;AAC9B,CAAC,CAAA;AATY,QAAA,kBAAkB,sBAS9B;AAEM,MAAM,cAAc,GAAG,CAAC,IAAkB,EAAE,IAAoB,EAAE,EAAE;IACzE,MAAM,GAAG,GACP,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACb,IAAA,iCAAsB,EAAC;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI;YACxB,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,kBAAkB;SACrD,CAAC,CAAA;IACJ,OAAO,GAAG,IAAI,SAAS,CAAA;AACzB,CAAC,CAAA;AARY,QAAA,cAAc,kBAQ1B;AAMD,MAAM,WAAW,GAAG,CAAC,MAAc,EAAsB,EAAE;IACzD,IAAI,GAAG,CAAA;IACP,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAA;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChD,OAAO,SAAS,CAAA;IAClB,CAAC;SAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QACzB,OAAO,SAAS,CAAA;IAClB,CAAC;SAAM,CAAC;QACN,OAAO,MAAM,CAAA;IACf,CAAC;AACH,CAAC,CAAA"}
@@ -1,9 +1,9 @@
1
1
  import { AnyQb, DbRef } from './util';
2
- export type Cursor = {
2
+ type KeysetCursor = {
3
3
  primary: string;
4
4
  secondary: string;
5
5
  };
6
- export type LabeledResult = {
6
+ type KeysetLabeledResult = {
7
7
  primary: string | number;
8
8
  secondary: string | number;
9
9
  };
@@ -21,32 +21,39 @@ export type LabeledResult = {
21
21
  * Result -*-> LabeledResult <-*-> Cursor <--> packed/string cursor
22
22
  * ↳ SQL Condition
23
23
  */
24
- export declare abstract class GenericKeyset<R, LR extends LabeledResult> {
24
+ export declare abstract class GenericKeyset<R, LR extends KeysetLabeledResult> {
25
25
  primary: DbRef;
26
26
  secondary: DbRef;
27
27
  constructor(primary: DbRef, secondary: DbRef);
28
28
  abstract labelResult(result: R): LR;
29
- abstract labeledResultToCursor(labeled: LR): Cursor;
30
- abstract cursorToLabeledResult(cursor: Cursor): LR;
29
+ abstract labeledResultToCursor(labeled: LR): KeysetCursor;
30
+ abstract cursorToLabeledResult(cursor: KeysetCursor): LR;
31
31
  packFromResult(results: R | R[]): string | undefined;
32
32
  pack(labeled?: LR): string | undefined;
33
33
  unpack(cursorStr?: string): LR | undefined;
34
- packCursor(cursor?: Cursor): string | undefined;
35
- unpackCursor(cursorStr?: string): Cursor | undefined;
34
+ packCursor(cursor?: KeysetCursor): string | undefined;
35
+ unpackCursor(cursorStr?: string): KeysetCursor | undefined;
36
36
  getSql(labeled?: LR, direction?: 'asc' | 'desc', tryIndex?: boolean): import("kysely").RawBuilder<unknown> | undefined;
37
+ paginate<QB extends AnyQb>(qb: QB, opts: {
38
+ limit?: number;
39
+ cursor?: string;
40
+ direction?: 'asc' | 'desc';
41
+ tryIndex?: boolean;
42
+ nullsLast?: boolean;
43
+ }): QB;
37
44
  }
38
45
  type SortAtCidResult = {
39
46
  sortAt: string;
40
47
  cid: string;
41
48
  };
42
- type TimeCidLabeledResult = Cursor;
49
+ type TimeCidLabeledResult = KeysetCursor;
43
50
  export declare class TimeCidKeyset<TimeCidResult = SortAtCidResult> extends GenericKeyset<TimeCidResult, TimeCidLabeledResult> {
44
51
  labelResult(result: TimeCidResult): TimeCidLabeledResult;
45
52
  labeledResultToCursor(labeled: TimeCidLabeledResult): {
46
53
  primary: string;
47
54
  secondary: string;
48
55
  };
49
- cursorToLabeledResult(cursor: Cursor): {
56
+ cursorToLabeledResult(cursor: KeysetCursor): {
50
57
  primary: string;
51
58
  secondary: string;
52
59
  };
@@ -75,6 +82,9 @@ export declare class IndexedAtDidKeyset extends TimeCidKeyset<{
75
82
  secondary: string;
76
83
  };
77
84
  }
85
+ /**
86
+ * This is being deprecated. Use {@link GenericKeyset#paginate} instead.
87
+ */
78
88
  export declare const paginate: <QB extends AnyQb, K extends GenericKeyset<unknown, any>>(qb: QB, opts: {
79
89
  limit?: number;
80
90
  cursor?: string;
@@ -83,5 +93,55 @@ export declare const paginate: <QB extends AnyQb, K extends GenericKeyset<unknow
83
93
  tryIndex?: boolean;
84
94
  nullsLast?: boolean;
85
95
  }) => QB;
96
+ type SingleKeyCursor = {
97
+ primary: string;
98
+ };
99
+ type SingleKeyLabeledResult = {
100
+ primary: string | number;
101
+ };
102
+ /**
103
+ * GenericSingleKey is similar to {@link GenericKeyset} but for a single key cursor.
104
+ */
105
+ export declare abstract class GenericSingleKey<R, LR extends SingleKeyLabeledResult> {
106
+ primary: DbRef;
107
+ constructor(primary: DbRef);
108
+ abstract labelResult(result: R): LR;
109
+ abstract labeledResultToCursor(labeled: LR): SingleKeyCursor;
110
+ abstract cursorToLabeledResult(cursor: SingleKeyCursor): LR;
111
+ packFromResult(results: R | R[]): string | undefined;
112
+ pack(labeled?: LR): string | undefined;
113
+ unpack(cursorStr?: string): LR | undefined;
114
+ packCursor(cursor?: SingleKeyCursor): string | undefined;
115
+ unpackCursor(cursorStr?: string): SingleKeyCursor | undefined;
116
+ getSql(labeled?: LR, direction?: 'asc' | 'desc'): import("kysely").RawBuilder<unknown> | undefined;
117
+ paginate<QB extends AnyQb>(qb: QB, opts: {
118
+ limit?: number;
119
+ cursor?: string;
120
+ direction?: 'asc' | 'desc';
121
+ nullsLast?: boolean;
122
+ }): QB;
123
+ }
124
+ type SortAtResult = {
125
+ sortAt: string;
126
+ };
127
+ type TimeLabeledResult = SingleKeyCursor;
128
+ export declare class IsoTimeKey<TimeResult = SortAtResult> extends GenericSingleKey<TimeResult, TimeLabeledResult> {
129
+ labelResult(result: TimeResult): TimeLabeledResult;
130
+ labeledResultToCursor(labeled: TimeLabeledResult): {
131
+ primary: string;
132
+ };
133
+ cursorToLabeledResult(cursor: SingleKeyCursor): {
134
+ primary: string;
135
+ };
136
+ }
137
+ export declare class IsoSortAtKey extends IsoTimeKey<{
138
+ sortAt: string;
139
+ }> {
140
+ labelResult(result: {
141
+ sortAt: string;
142
+ }): {
143
+ primary: string;
144
+ };
145
+ }
86
146
  export {};
87
147
  //# sourceMappingURL=pagination.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../../src/data-plane/server/db/pagination.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAErC,MAAM,MAAM,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAA;AAC3D,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;IACxB,SAAS,EAAE,MAAM,GAAG,MAAM,CAAA;CAC3B,CAAA;AAED;;;;;;;;;;;;;GAaG;AACH,8BAAsB,aAAa,CAAC,CAAC,EAAE,EAAE,SAAS,aAAa;IAEpD,OAAO,EAAE,KAAK;IACd,SAAS,EAAE,KAAK;gBADhB,OAAO,EAAE,KAAK,EACd,SAAS,EAAE,KAAK;IAEzB,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IACnC,QAAQ,CAAC,qBAAqB,CAAC,OAAO,EAAE,EAAE,GAAG,MAAM;IACnD,QAAQ,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,EAAE;IAClD,cAAc,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,MAAM,GAAG,SAAS;IAKpD,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,MAAM,GAAG,SAAS;IAKtC,MAAM,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,EAAE,GAAG,SAAS;IAK1C,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI/C,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAYpD,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO;CAkBpE;AAED,KAAK,eAAe,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAA;AACtD,KAAK,oBAAoB,GAAG,MAAM,CAAA;AAElC,qBAAa,aAAa,CACxB,aAAa,GAAG,eAAe,CAC/B,SAAQ,aAAa,CAAC,aAAa,EAAE,oBAAoB,CAAC;IAC1D,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG,oBAAoB;IAIxD,qBAAqB,CAAC,OAAO,EAAE,oBAAoB;;;;IAMnD,qBAAqB,CAAC,MAAM,EAAE,MAAM;;;;CAUrC;AAED,qBAAa,kBAAmB,SAAQ,aAAa,CAAC;IACpD,SAAS,EAAE,MAAM,CAAA;IACjB,GAAG,EAAE,MAAM,CAAA;CACZ,CAAC;IACA,WAAW,CAAC,MAAM,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE;;;;CAGvD;AAED,qBAAa,kBAAmB,SAAQ,aAAa,CAAC;IACpD,SAAS,EAAE,MAAM,CAAA;IACjB,GAAG,EAAE,MAAM,CAAA;CACZ,CAAC;IACA,WAAW,CAAC,MAAM,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE;;;;CAGvD;AAED,eAAO,MAAM,QAAQ,GACnB,EAAE,SAAS,KAAK,EAChB,CAAC,SAAS,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,MAEjC,EAAE,QACA;IACJ,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;IAC1B,MAAM,EAAE,CAAC,CAAA;IACT,QAAQ,CAAC,EAAE,OAAO,CAAA;IAElB,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB,KACA,EA6BF,CAAA"}
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../../src/data-plane/server/db/pagination.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.paginate = exports.IndexedAtDidKeyset = exports.CreatedAtDidKeyset = exports.TimeCidKeyset = exports.GenericKeyset = void 0;
3
+ exports.IsoSortAtKey = exports.IsoTimeKey = exports.GenericSingleKey = exports.paginate = exports.IndexedAtDidKeyset = exports.CreatedAtDidKeyset = exports.TimeCidKeyset = exports.GenericKeyset = void 0;
4
4
  const kysely_1 = require("kysely");
5
5
  const xrpc_server_1 = require("@atproto/xrpc-server");
6
6
  /**
@@ -90,6 +90,21 @@ class GenericKeyset {
90
90
  }
91
91
  }
92
92
  }
93
+ paginate(qb, opts) {
94
+ const { limit, cursor, direction = 'desc', tryIndex, nullsLast } = opts;
95
+ const keysetSql = this.getSql(this.unpack(cursor), direction, tryIndex);
96
+ return qb
97
+ .if(!!limit, (q) => q.limit(limit))
98
+ .if(!nullsLast, (q) => q.orderBy(this.primary, direction).orderBy(this.secondary, direction))
99
+ .if(!!nullsLast, (q) => q
100
+ .orderBy(direction === 'asc'
101
+ ? (0, kysely_1.sql) `${this.primary} asc nulls last`
102
+ : (0, kysely_1.sql) `${this.primary} desc nulls last`)
103
+ .orderBy(direction === 'asc'
104
+ ? (0, kysely_1.sql) `${this.secondary} asc nulls last`
105
+ : (0, kysely_1.sql) `${this.secondary} desc nulls last`))
106
+ .if(!!keysetSql, (qb) => (keysetSql ? qb.where(keysetSql) : qb));
107
+ }
93
108
  }
94
109
  exports.GenericKeyset = GenericKeyset;
95
110
  class TimeCidKeyset extends GenericKeyset {
@@ -126,20 +141,105 @@ class IndexedAtDidKeyset extends TimeCidKeyset {
126
141
  }
127
142
  }
128
143
  exports.IndexedAtDidKeyset = IndexedAtDidKeyset;
144
+ /**
145
+ * This is being deprecated. Use {@link GenericKeyset#paginate} instead.
146
+ */
129
147
  const paginate = (qb, opts) => {
130
- const { limit, cursor, keyset, direction = 'desc', tryIndex, nullsLast, } = opts;
131
- const keysetSql = keyset.getSql(keyset.unpack(cursor), direction, tryIndex);
132
- return qb
133
- .if(!!limit, (q) => q.limit(limit))
134
- .if(!nullsLast, (q) => q.orderBy(keyset.primary, direction).orderBy(keyset.secondary, direction))
135
- .if(!!nullsLast, (q) => q
136
- .orderBy(direction === 'asc'
137
- ? (0, kysely_1.sql) `${keyset.primary} asc nulls last`
138
- : (0, kysely_1.sql) `${keyset.primary} desc nulls last`)
139
- .orderBy(direction === 'asc'
140
- ? (0, kysely_1.sql) `${keyset.secondary} asc nulls last`
141
- : (0, kysely_1.sql) `${keyset.secondary} desc nulls last`))
142
- .if(!!keysetSql, (qb) => (keysetSql ? qb.where(keysetSql) : qb));
148
+ return opts.keyset.paginate(qb, opts);
143
149
  };
144
150
  exports.paginate = paginate;
151
+ /**
152
+ * GenericSingleKey is similar to {@link GenericKeyset} but for a single key cursor.
153
+ */
154
+ class GenericSingleKey {
155
+ constructor(primary) {
156
+ Object.defineProperty(this, "primary", {
157
+ enumerable: true,
158
+ configurable: true,
159
+ writable: true,
160
+ value: primary
161
+ });
162
+ }
163
+ packFromResult(results) {
164
+ const result = Array.isArray(results) ? results.at(-1) : results;
165
+ if (!result)
166
+ return;
167
+ return this.pack(this.labelResult(result));
168
+ }
169
+ pack(labeled) {
170
+ if (!labeled)
171
+ return;
172
+ const cursor = this.labeledResultToCursor(labeled);
173
+ return this.packCursor(cursor);
174
+ }
175
+ unpack(cursorStr) {
176
+ const cursor = this.unpackCursor(cursorStr);
177
+ if (!cursor)
178
+ return;
179
+ return this.cursorToLabeledResult(cursor);
180
+ }
181
+ packCursor(cursor) {
182
+ if (!cursor)
183
+ return;
184
+ return cursor.primary;
185
+ }
186
+ unpackCursor(cursorStr) {
187
+ if (!cursorStr)
188
+ return;
189
+ const result = cursorStr.split('__');
190
+ const [primary, ...others] = result;
191
+ if (!primary || others.length > 0) {
192
+ throw new xrpc_server_1.InvalidRequestError('Malformed cursor');
193
+ }
194
+ return {
195
+ primary,
196
+ };
197
+ }
198
+ getSql(labeled, direction) {
199
+ if (labeled === undefined)
200
+ return;
201
+ if (direction === 'asc') {
202
+ return (0, kysely_1.sql) `${this.primary} > ${labeled.primary}`;
203
+ }
204
+ return (0, kysely_1.sql) `${this.primary} < ${labeled.primary}`;
205
+ }
206
+ paginate(qb, opts) {
207
+ const { limit, cursor, direction = 'desc', nullsLast } = opts;
208
+ const keySql = this.getSql(this.unpack(cursor), direction);
209
+ return qb
210
+ .if(!!limit, (q) => q.limit(limit))
211
+ .if(!nullsLast, (q) => q.orderBy(this.primary, direction))
212
+ .if(!!nullsLast, (q) => q.orderBy(direction === 'asc'
213
+ ? (0, kysely_1.sql) `${this.primary} asc nulls last`
214
+ : (0, kysely_1.sql) `${this.primary} desc nulls last`))
215
+ .if(!!keySql, (qb) => (keySql ? qb.where(keySql) : qb));
216
+ }
217
+ }
218
+ exports.GenericSingleKey = GenericSingleKey;
219
+ class IsoTimeKey extends GenericSingleKey {
220
+ labelResult(result) {
221
+ return { primary: result.sortAt };
222
+ }
223
+ labeledResultToCursor(labeled) {
224
+ return {
225
+ primary: new Date(labeled.primary).toISOString(),
226
+ };
227
+ }
228
+ cursorToLabeledResult(cursor) {
229
+ const primaryDate = new Date(cursor.primary);
230
+ if (isNaN(primaryDate.getTime())) {
231
+ throw new xrpc_server_1.InvalidRequestError('Malformed cursor');
232
+ }
233
+ return {
234
+ primary: primaryDate.toISOString(),
235
+ };
236
+ }
237
+ }
238
+ exports.IsoTimeKey = IsoTimeKey;
239
+ class IsoSortAtKey extends IsoTimeKey {
240
+ labelResult(result) {
241
+ return { primary: result.sortAt };
242
+ }
243
+ }
244
+ exports.IsoSortAtKey = IsoSortAtKey;
145
245
  //# sourceMappingURL=pagination.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../../../../src/data-plane/server/db/pagination.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../../../../src/data-plane/server/db/pagination.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"notifs.d.ts","sourceRoot":"","sources":["../../../../src/data-plane/server/routes/notifs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAEjD,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;6BAIZ,QAAQ,KAAG,OAAO,CAAC,WAAW,CAAC,OAAO,OAAO,CAAC,CAAC;AAAnE,wBAsJE"}
1
+ {"version":3,"file":"notifs.d.ts","sourceRoot":"","sources":["../../../../src/data-plane/server/routes/notifs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAEjD,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;6BAIZ,QAAQ,KAAG,OAAO,CAAC,WAAW,CAAC,OAAO,OAAO,CAAC,CAAC;AAAnE,wBAiJE"}
@@ -33,12 +33,10 @@ exports.default = (db) => ({
33
33
  'notif.sortAt as sortAt',
34
34
  ])
35
35
  .select(priorityFollowQb.as('priority'));
36
- const keyset = new pagination_1.TimeCidKeyset(ref('notif.sortAt'), ref('notif.recordCid'));
37
- builder = (0, pagination_1.paginate)(builder, {
36
+ const key = new pagination_1.IsoSortAtKey(ref('notif.sortAt'));
37
+ builder = key.paginate(builder, {
38
38
  cursor,
39
39
  limit,
40
- keyset,
41
- tryIndex: true,
42
40
  });
43
41
  const notifsRes = await builder.execute();
44
42
  const notifications = notifsRes.map((notif) => ({
@@ -51,7 +49,7 @@ exports.default = (db) => ({
51
49
  }));
52
50
  return {
53
51
  notifications,
54
- cursor: keyset.packFromResult(notifsRes),
52
+ cursor: key.packFromResult(notifsRes),
55
53
  };
56
54
  },
57
55
  async getNotificationSeen(req) {
@@ -1 +1 @@
1
- {"version":3,"file":"notifs.js","sourceRoot":"","sources":["../../../../src/data-plane/server/routes/notifs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"notifs.js","sourceRoot":"","sources":["../../../../src/data-plane/server/routes/notifs.ts"],"names":[],"mappings":"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"}