@arkiv-network/sdk 0.6.2 → 0.6.3-dev.2
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/chains/index.d.ts +41 -41
- package/dist/index.cjs +6 -4
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +6 -4
- package/dist/index.js.map +1 -1
- package/dist/query/index.cjs +1 -1
- package/dist/query/index.d.cts +2 -2
- package/dist/query/index.d.ts +2 -2
- package/dist/query/index.js +1 -1
- package/dist/{query-fCVivD9L.d.cts → query-BeKsGPR3.d.cts} +5 -2
- package/dist/query-BeKsGPR3.d.cts.map +1 -0
- package/dist/{query-BOF-ysxw.d.ts → query-DnKI7Fry.d.ts} +5 -2
- package/dist/query-DnKI7Fry.d.ts.map +1 -0
- package/dist/{queryBuilder-CE7didAc.cjs → queryBuilder-Ba4YtfY4.cjs} +24 -3
- package/dist/{queryBuilder-UO2ZKHFN.js → queryBuilder-C22NdvTJ.js} +25 -4
- package/dist/queryBuilder-C22NdvTJ.js.map +1 -0
- package/dist/{queryBuilder-CAZQmp71.d.ts → queryBuilder-C24NWMmN.d.ts} +13 -2
- package/dist/{queryBuilder-CAZQmp71.d.ts.map → queryBuilder-C24NWMmN.d.ts.map} +1 -1
- package/dist/{queryBuilder-DSWzci3Y.d.cts → queryBuilder-CqSuICrM.d.cts} +13 -2
- package/dist/{queryBuilder-DSWzci3Y.d.cts.map → queryBuilder-CqSuICrM.d.cts.map} +1 -1
- package/dist/types/index.d.cts +1 -1
- package/dist/types/index.d.ts +1 -1
- package/package.json +1 -1
- package/src/actions/public/getEntity.ts +1 -0
- package/src/actions/public/query.ts +1 -0
- package/src/query/engine.test.ts +93 -0
- package/src/query/engine.ts +7 -0
- package/src/query/queryBuilder.test.ts +43 -0
- package/src/query/queryBuilder.ts +17 -0
- package/src/types/entity.ts +3 -0
- package/src/types/rpcSchema.ts +2 -0
- package/src/utils/arkivTransactions.ts +6 -3
- package/src/utils/entities.ts +1 -0
- package/dist/query-BOF-ysxw.d.ts.map +0 -1
- package/dist/query-fCVivD9L.d.cts.map +0 -1
- package/dist/queryBuilder-UO2ZKHFN.js.map +0 -1
package/dist/query/index.d.cts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import "../query-
|
|
2
|
-
import { _ as or, a as QueryResult, c as PredicateType, d as gt, f as gte, g as not, h as neq, i as desc, l as and, m as lte, n as QueryBuilder, o as Predicate, p as lt, r as asc, s as PredicateContainerType, t as OrderByAttribute, u as eq } from "../queryBuilder-
|
|
1
|
+
import "../query-BeKsGPR3.cjs";
|
|
2
|
+
import { _ as or, a as QueryResult, c as PredicateType, d as gt, f as gte, g as not, h as neq, i as desc, l as and, m as lte, n as QueryBuilder, o as Predicate, p as lt, r as asc, s as PredicateContainerType, t as OrderByAttribute, u as eq } from "../queryBuilder-CqSuICrM.cjs";
|
|
3
3
|
export { OrderByAttribute, Predicate, PredicateContainerType, PredicateType, QueryBuilder, QueryResult, and, asc, desc, eq, gt, gte, lt, lte, neq, not, or };
|
package/dist/query/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import "../query-
|
|
2
|
-
import { _ as or, a as QueryResult, c as PredicateType, d as gt, f as gte, g as not, h as neq, i as desc, l as and, m as lte, n as QueryBuilder, o as Predicate, p as lt, r as asc, s as PredicateContainerType, t as OrderByAttribute, u as eq } from "../queryBuilder-
|
|
1
|
+
import "../query-DnKI7Fry.js";
|
|
2
|
+
import { _ as or, a as QueryResult, c as PredicateType, d as gt, f as gte, g as not, h as neq, i as desc, l as and, m as lte, n as QueryBuilder, o as Predicate, p as lt, r as asc, s as PredicateContainerType, t as OrderByAttribute, u as eq } from "../queryBuilder-C24NWMmN.js";
|
|
3
3
|
export { OrderByAttribute, Predicate, PredicateContainerType, PredicateType, QueryBuilder, QueryResult, and, asc, desc, eq, gt, gte, lt, lte, neq, not, or };
|
package/dist/query/index.js
CHANGED
|
@@ -14,6 +14,7 @@ type RpcEntity = {
|
|
|
14
14
|
transactionIndexInBlock: Hex;
|
|
15
15
|
operationIndexInTransaction: Hex;
|
|
16
16
|
owner: Hex;
|
|
17
|
+
creator: Hex;
|
|
17
18
|
stringAttributes?: [{
|
|
18
19
|
key: string;
|
|
19
20
|
value: string;
|
|
@@ -42,6 +43,7 @@ type RpcIncludeData = {
|
|
|
42
43
|
contentType?: boolean;
|
|
43
44
|
expiration?: boolean;
|
|
44
45
|
owner?: boolean;
|
|
46
|
+
creator?: boolean;
|
|
45
47
|
createdAtBlock?: boolean;
|
|
46
48
|
lastModifiedAtBlock?: boolean;
|
|
47
49
|
transactionIndexInBlock?: boolean;
|
|
@@ -280,6 +282,7 @@ declare class Entity {
|
|
|
280
282
|
key: Hex;
|
|
281
283
|
contentType: MimeType | undefined;
|
|
282
284
|
owner: Hex | undefined;
|
|
285
|
+
creator: Hex | undefined;
|
|
283
286
|
expiresAtBlock: bigint | undefined;
|
|
284
287
|
createdAtBlock: bigint | undefined;
|
|
285
288
|
lastModifiedAtBlock: bigint | undefined;
|
|
@@ -287,7 +290,7 @@ declare class Entity {
|
|
|
287
290
|
operationIndexInTransaction: bigint | undefined;
|
|
288
291
|
payload: Uint8Array | undefined;
|
|
289
292
|
attributes: Attribute[];
|
|
290
|
-
constructor(key: Hex, contentType: MimeType | undefined, owner: Hex | undefined, expiresAtBlock: bigint | undefined, createdAtBlock: bigint | undefined, lastModifiedAtBlock: bigint | undefined, transactionIndexInBlock: bigint | undefined, operationIndexInTransaction: bigint | undefined, payload: Uint8Array | undefined, attributes: Attribute[]);
|
|
293
|
+
constructor(key: Hex, contentType: MimeType | undefined, owner: Hex | undefined, creator: Hex | undefined, expiresAtBlock: bigint | undefined, createdAtBlock: bigint | undefined, lastModifiedAtBlock: bigint | undefined, transactionIndexInBlock: bigint | undefined, operationIndexInTransaction: bigint | undefined, payload: Uint8Array | undefined, attributes: Attribute[]);
|
|
291
294
|
toText(): string;
|
|
292
295
|
toJson(): any;
|
|
293
296
|
}
|
|
@@ -317,4 +320,4 @@ type QueryReturnType = {
|
|
|
317
320
|
};
|
|
318
321
|
//#endregion
|
|
319
322
|
export { RpcIncludeData as A, CreateEntityReturnType as C, ArkivClient as D, GetBlockTimingReturnType as E, RpcQueryOptions as M, MimeType as N, ArkivRpcSchema as O, CreateEntityParameters as S, ChangeOwnershipReturnType as T, UpdateEntityReturnType as _, Entity as a, DeleteEntityParameters as b, OnEntityDeletedEvent as c, OnEntityOwnerChangedEvent as d, OnEntityUpdatedEvent as f, UpdateEntityParameters as g, MutateEntitiesReturnType as h, QueryReturnType as i, RpcOrderByAttribute as j, RpcEntity as k, OnEntityExpiredEvent as l, MutateEntitiesParameters as m, QueryOptionsIncludeData as n, TxParams as o, Attribute as p, QueryOptionsOrderBy as r, OnEntityCreatedEvent as s, QueryOptions as t, OnEntityExpiresInExtendedEvent as u, ExtendEntityParameters as v, ChangeOwnershipParameters as w, DeleteEntityReturnType as x, ExtendEntityReturnType as y };
|
|
320
|
-
//# sourceMappingURL=query-
|
|
323
|
+
//# sourceMappingURL=query-BeKsGPR3.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-BeKsGPR3.d.cts","names":[],"sources":["../src/types/mimeTypes.ts","../src/types/rpcSchema.ts","../src/clients/baseClient.ts","../src/actions/public/getBlockTiming.ts","../src/actions/wallet/changeOwnership.ts","../src/actions/wallet/createEntity.ts","../src/actions/wallet/deleteEntity.ts","../src/actions/wallet/extendEntity.ts","../src/actions/wallet/updateEntity.ts","../src/actions/wallet/mutateEntities.ts","../src/types/attributes.ts","../src/types/events.ts","../src/types/txParams.ts","../src/types/entity.ts","../src/actions/public/query.ts"],"sourcesContent":[],"mappings":"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"}
|
|
@@ -14,6 +14,7 @@ type RpcEntity = {
|
|
|
14
14
|
transactionIndexInBlock: Hex;
|
|
15
15
|
operationIndexInTransaction: Hex;
|
|
16
16
|
owner: Hex;
|
|
17
|
+
creator: Hex;
|
|
17
18
|
stringAttributes?: [{
|
|
18
19
|
key: string;
|
|
19
20
|
value: string;
|
|
@@ -42,6 +43,7 @@ type RpcIncludeData = {
|
|
|
42
43
|
contentType?: boolean;
|
|
43
44
|
expiration?: boolean;
|
|
44
45
|
owner?: boolean;
|
|
46
|
+
creator?: boolean;
|
|
45
47
|
createdAtBlock?: boolean;
|
|
46
48
|
lastModifiedAtBlock?: boolean;
|
|
47
49
|
transactionIndexInBlock?: boolean;
|
|
@@ -280,6 +282,7 @@ declare class Entity {
|
|
|
280
282
|
key: Hex;
|
|
281
283
|
contentType: MimeType | undefined;
|
|
282
284
|
owner: Hex | undefined;
|
|
285
|
+
creator: Hex | undefined;
|
|
283
286
|
expiresAtBlock: bigint | undefined;
|
|
284
287
|
createdAtBlock: bigint | undefined;
|
|
285
288
|
lastModifiedAtBlock: bigint | undefined;
|
|
@@ -287,7 +290,7 @@ declare class Entity {
|
|
|
287
290
|
operationIndexInTransaction: bigint | undefined;
|
|
288
291
|
payload: Uint8Array | undefined;
|
|
289
292
|
attributes: Attribute[];
|
|
290
|
-
constructor(key: Hex, contentType: MimeType | undefined, owner: Hex | undefined, expiresAtBlock: bigint | undefined, createdAtBlock: bigint | undefined, lastModifiedAtBlock: bigint | undefined, transactionIndexInBlock: bigint | undefined, operationIndexInTransaction: bigint | undefined, payload: Uint8Array | undefined, attributes: Attribute[]);
|
|
293
|
+
constructor(key: Hex, contentType: MimeType | undefined, owner: Hex | undefined, creator: Hex | undefined, expiresAtBlock: bigint | undefined, createdAtBlock: bigint | undefined, lastModifiedAtBlock: bigint | undefined, transactionIndexInBlock: bigint | undefined, operationIndexInTransaction: bigint | undefined, payload: Uint8Array | undefined, attributes: Attribute[]);
|
|
291
294
|
toText(): string;
|
|
292
295
|
toJson(): any;
|
|
293
296
|
}
|
|
@@ -317,4 +320,4 @@ type QueryReturnType = {
|
|
|
317
320
|
};
|
|
318
321
|
//#endregion
|
|
319
322
|
export { RpcIncludeData as A, CreateEntityReturnType as C, ArkivClient as D, GetBlockTimingReturnType as E, RpcQueryOptions as M, MimeType as N, ArkivRpcSchema as O, CreateEntityParameters as S, ChangeOwnershipReturnType as T, UpdateEntityReturnType as _, Entity as a, DeleteEntityParameters as b, OnEntityDeletedEvent as c, OnEntityOwnerChangedEvent as d, OnEntityUpdatedEvent as f, UpdateEntityParameters as g, MutateEntitiesReturnType as h, QueryReturnType as i, RpcOrderByAttribute as j, RpcEntity as k, OnEntityExpiredEvent as l, MutateEntitiesParameters as m, QueryOptionsIncludeData as n, TxParams as o, Attribute as p, QueryOptionsOrderBy as r, OnEntityCreatedEvent as s, QueryOptions as t, OnEntityExpiresInExtendedEvent as u, ExtendEntityParameters as v, ChangeOwnershipParameters as w, DeleteEntityReturnType as x, ExtendEntityReturnType as y };
|
|
320
|
-
//# sourceMappingURL=query-
|
|
323
|
+
//# sourceMappingURL=query-DnKI7Fry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-DnKI7Fry.d.ts","names":[],"sources":["../src/types/mimeTypes.ts","../src/types/rpcSchema.ts","../src/clients/baseClient.ts","../src/actions/public/getBlockTiming.ts","../src/actions/wallet/changeOwnership.ts","../src/actions/wallet/createEntity.ts","../src/actions/wallet/deleteEntity.ts","../src/actions/wallet/extendEntity.ts","../src/actions/wallet/updateEntity.ts","../src/actions/wallet/mutateEntities.ts","../src/types/attributes.ts","../src/types/events.ts","../src/types/txParams.ts","../src/types/entity.ts","../src/actions/public/query.ts"],"sourcesContent":[],"mappings":"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"}
|
|
@@ -145,6 +145,7 @@ var Entity = class {
|
|
|
145
145
|
key;
|
|
146
146
|
contentType;
|
|
147
147
|
owner;
|
|
148
|
+
creator;
|
|
148
149
|
expiresAtBlock;
|
|
149
150
|
createdAtBlock;
|
|
150
151
|
lastModifiedAtBlock;
|
|
@@ -152,9 +153,10 @@ var Entity = class {
|
|
|
152
153
|
operationIndexInTransaction;
|
|
153
154
|
payload;
|
|
154
155
|
attributes;
|
|
155
|
-
constructor(key, contentType = void 0, owner = void 0, expiresAtBlock = void 0, createdAtBlock = void 0, lastModifiedAtBlock = void 0, transactionIndexInBlock = void 0, operationIndexInTransaction = void 0, payload = void 0, attributes) {
|
|
156
|
+
constructor(key, contentType = void 0, owner = void 0, creator = void 0, expiresAtBlock = void 0, createdAtBlock = void 0, lastModifiedAtBlock = void 0, transactionIndexInBlock = void 0, operationIndexInTransaction = void 0, payload = void 0, attributes) {
|
|
156
157
|
this.key = key;
|
|
157
158
|
this.owner = owner;
|
|
159
|
+
this.creator = creator;
|
|
158
160
|
this.expiresAtBlock = expiresAtBlock;
|
|
159
161
|
this.createdAtBlock = createdAtBlock;
|
|
160
162
|
this.lastModifiedAtBlock = lastModifiedAtBlock;
|
|
@@ -177,7 +179,7 @@ var Entity = class {
|
|
|
177
179
|
const logger$2 = getLogger("utils:entities");
|
|
178
180
|
async function entityFromRpcResult(rpcEntity) {
|
|
179
181
|
logger$2("entityFromRpcResult %o", rpcEntity);
|
|
180
|
-
return new Entity(rpcEntity.key, rpcEntity.contentType, rpcEntity.owner, rpcEntity.expiresAt !== void 0 ? BigInt(rpcEntity.expiresAt) : void 0, rpcEntity.createdAtBlock !== void 0 ? BigInt(rpcEntity.createdAtBlock) : void 0, rpcEntity.lastModifiedAtBlock !== void 0 ? BigInt(rpcEntity.lastModifiedAtBlock) : void 0, rpcEntity.transactionIndexInBlock !== void 0 ? BigInt(rpcEntity.transactionIndexInBlock) : void 0, rpcEntity.operationIndexInTransaction !== void 0 ? BigInt(rpcEntity.operationIndexInTransaction) : void 0, rpcEntity.value !== void 0 ? (0, viem.toBytes)(rpcEntity.value) : void 0, [...(rpcEntity.stringAttributes ?? []).map(({ key, value }) => ({
|
|
182
|
+
return new Entity(rpcEntity.key, rpcEntity.contentType, rpcEntity.owner, rpcEntity.creator, rpcEntity.expiresAt !== void 0 ? BigInt(rpcEntity.expiresAt) : void 0, rpcEntity.createdAtBlock !== void 0 ? BigInt(rpcEntity.createdAtBlock) : void 0, rpcEntity.lastModifiedAtBlock !== void 0 ? BigInt(rpcEntity.lastModifiedAtBlock) : void 0, rpcEntity.transactionIndexInBlock !== void 0 ? BigInt(rpcEntity.transactionIndexInBlock) : void 0, rpcEntity.operationIndexInTransaction !== void 0 ? BigInt(rpcEntity.operationIndexInTransaction) : void 0, rpcEntity.value !== void 0 ? (0, viem.toBytes)(rpcEntity.value) : void 0, [...(rpcEntity.stringAttributes ?? []).map(({ key, value }) => ({
|
|
181
183
|
key,
|
|
182
184
|
value
|
|
183
185
|
})), ...(rpcEntity.numericAttributes ?? []).map(({ key, value }) => ({
|
|
@@ -210,12 +212,13 @@ function processPredicates(predicates) {
|
|
|
210
212
|
}).join(" && ");
|
|
211
213
|
}
|
|
212
214
|
async function processQuery(client, queryParams) {
|
|
213
|
-
const { predicates, limit, cursor, ownedBy, orderBy, validAtBlock, withAttributes, withMetadata, withPayload } = queryParams;
|
|
215
|
+
const { predicates, limit, cursor, ownedBy, createdBy, orderBy, validAtBlock, withAttributes, withMetadata, withPayload } = queryParams;
|
|
214
216
|
logger$1("Processing query with params %o", {
|
|
215
217
|
predicates,
|
|
216
218
|
cursor,
|
|
217
219
|
limit,
|
|
218
220
|
ownedBy,
|
|
221
|
+
createdBy,
|
|
219
222
|
orderBy,
|
|
220
223
|
validAtBlock,
|
|
221
224
|
withAttributes,
|
|
@@ -224,6 +227,7 @@ async function processQuery(client, queryParams) {
|
|
|
224
227
|
});
|
|
225
228
|
let query = processPredicates(predicates);
|
|
226
229
|
if (ownedBy) query += ` && $owner=${ownedBy}`;
|
|
230
|
+
if (createdBy) query += ` && $creator=${createdBy}`;
|
|
227
231
|
query = query.trim();
|
|
228
232
|
if (query.startsWith("&& ")) query = query.slice(3);
|
|
229
233
|
const queryOptions = { includeData: {
|
|
@@ -233,6 +237,7 @@ async function processQuery(client, queryParams) {
|
|
|
233
237
|
contentType: withMetadata ?? false,
|
|
234
238
|
expiration: withMetadata ?? false,
|
|
235
239
|
owner: withMetadata ?? false,
|
|
240
|
+
creator: withMetadata ?? false,
|
|
236
241
|
createdAtBlock: withMetadata ?? false,
|
|
237
242
|
lastModifiedAtBlock: withMetadata ?? false,
|
|
238
243
|
transactionIndexInBlock: withMetadata ?? false,
|
|
@@ -340,6 +345,7 @@ function desc(attributeName, attributeType) {
|
|
|
340
345
|
var QueryBuilder = class {
|
|
341
346
|
_client;
|
|
342
347
|
_ownedBy;
|
|
348
|
+
_createdBy;
|
|
343
349
|
_orderBy;
|
|
344
350
|
_validAtBlock;
|
|
345
351
|
_withAttributes;
|
|
@@ -365,6 +371,19 @@ var QueryBuilder = class {
|
|
|
365
371
|
this._ownedBy = ownedBy;
|
|
366
372
|
return this;
|
|
367
373
|
}
|
|
374
|
+
/**
|
|
375
|
+
* Sets the createdBy filter
|
|
376
|
+
* @param createdBy - The address of the creator
|
|
377
|
+
* @returns The QueryBuilder instance
|
|
378
|
+
*
|
|
379
|
+
* @example
|
|
380
|
+
* const builder = new QueryBuilder(client)
|
|
381
|
+
* builder.createdBy("0x1234567890123456789012345678901234567890")
|
|
382
|
+
*/
|
|
383
|
+
createdBy(createdBy) {
|
|
384
|
+
this._createdBy = createdBy;
|
|
385
|
+
return this;
|
|
386
|
+
}
|
|
368
387
|
orderBy(attributeNameOrOrderByAttribute, attributeType, order = "asc") {
|
|
369
388
|
if (!this._orderBy) this._orderBy = [];
|
|
370
389
|
const pushOrderByAttribute = ({ name, type, order: order$1 }) => {
|
|
@@ -500,6 +519,7 @@ var QueryBuilder = class {
|
|
|
500
519
|
limit: this._limit,
|
|
501
520
|
cursor: this._cursor,
|
|
502
521
|
ownedBy: this._ownedBy,
|
|
522
|
+
createdBy: this._createdBy,
|
|
503
523
|
orderBy: this._orderBy,
|
|
504
524
|
validAtBlock: this._validAtBlock,
|
|
505
525
|
withAttributes: this._withAttributes,
|
|
@@ -526,6 +546,7 @@ var QueryBuilder = class {
|
|
|
526
546
|
limit: this._limit,
|
|
527
547
|
cursor: this._cursor,
|
|
528
548
|
ownedBy: this._ownedBy,
|
|
549
|
+
createdBy: this._createdBy,
|
|
529
550
|
orderBy: void 0,
|
|
530
551
|
validAtBlock: this._validAtBlock,
|
|
531
552
|
withAttributes: false,
|
|
@@ -145,6 +145,7 @@ var Entity = class {
|
|
|
145
145
|
key;
|
|
146
146
|
contentType;
|
|
147
147
|
owner;
|
|
148
|
+
creator;
|
|
148
149
|
expiresAtBlock;
|
|
149
150
|
createdAtBlock;
|
|
150
151
|
lastModifiedAtBlock;
|
|
@@ -152,9 +153,10 @@ var Entity = class {
|
|
|
152
153
|
operationIndexInTransaction;
|
|
153
154
|
payload;
|
|
154
155
|
attributes;
|
|
155
|
-
constructor(key, contentType = void 0, owner = void 0, expiresAtBlock = void 0, createdAtBlock = void 0, lastModifiedAtBlock = void 0, transactionIndexInBlock = void 0, operationIndexInTransaction = void 0, payload = void 0, attributes) {
|
|
156
|
+
constructor(key, contentType = void 0, owner = void 0, creator = void 0, expiresAtBlock = void 0, createdAtBlock = void 0, lastModifiedAtBlock = void 0, transactionIndexInBlock = void 0, operationIndexInTransaction = void 0, payload = void 0, attributes) {
|
|
156
157
|
this.key = key;
|
|
157
158
|
this.owner = owner;
|
|
159
|
+
this.creator = creator;
|
|
158
160
|
this.expiresAtBlock = expiresAtBlock;
|
|
159
161
|
this.createdAtBlock = createdAtBlock;
|
|
160
162
|
this.lastModifiedAtBlock = lastModifiedAtBlock;
|
|
@@ -177,7 +179,7 @@ var Entity = class {
|
|
|
177
179
|
const logger$2 = getLogger("utils:entities");
|
|
178
180
|
async function entityFromRpcResult(rpcEntity) {
|
|
179
181
|
logger$2("entityFromRpcResult %o", rpcEntity);
|
|
180
|
-
return new Entity(rpcEntity.key, rpcEntity.contentType, rpcEntity.owner, rpcEntity.expiresAt !== void 0 ? BigInt(rpcEntity.expiresAt) : void 0, rpcEntity.createdAtBlock !== void 0 ? BigInt(rpcEntity.createdAtBlock) : void 0, rpcEntity.lastModifiedAtBlock !== void 0 ? BigInt(rpcEntity.lastModifiedAtBlock) : void 0, rpcEntity.transactionIndexInBlock !== void 0 ? BigInt(rpcEntity.transactionIndexInBlock) : void 0, rpcEntity.operationIndexInTransaction !== void 0 ? BigInt(rpcEntity.operationIndexInTransaction) : void 0, rpcEntity.value !== void 0 ? toBytes(rpcEntity.value) : void 0, [...(rpcEntity.stringAttributes ?? []).map(({ key, value }) => ({
|
|
182
|
+
return new Entity(rpcEntity.key, rpcEntity.contentType, rpcEntity.owner, rpcEntity.creator, rpcEntity.expiresAt !== void 0 ? BigInt(rpcEntity.expiresAt) : void 0, rpcEntity.createdAtBlock !== void 0 ? BigInt(rpcEntity.createdAtBlock) : void 0, rpcEntity.lastModifiedAtBlock !== void 0 ? BigInt(rpcEntity.lastModifiedAtBlock) : void 0, rpcEntity.transactionIndexInBlock !== void 0 ? BigInt(rpcEntity.transactionIndexInBlock) : void 0, rpcEntity.operationIndexInTransaction !== void 0 ? BigInt(rpcEntity.operationIndexInTransaction) : void 0, rpcEntity.value !== void 0 ? toBytes(rpcEntity.value) : void 0, [...(rpcEntity.stringAttributes ?? []).map(({ key, value }) => ({
|
|
181
183
|
key,
|
|
182
184
|
value
|
|
183
185
|
})), ...(rpcEntity.numericAttributes ?? []).map(({ key, value }) => ({
|
|
@@ -210,12 +212,13 @@ function processPredicates(predicates) {
|
|
|
210
212
|
}).join(" && ");
|
|
211
213
|
}
|
|
212
214
|
async function processQuery(client, queryParams) {
|
|
213
|
-
const { predicates, limit, cursor, ownedBy, orderBy, validAtBlock, withAttributes, withMetadata, withPayload } = queryParams;
|
|
215
|
+
const { predicates, limit, cursor, ownedBy, createdBy, orderBy, validAtBlock, withAttributes, withMetadata, withPayload } = queryParams;
|
|
214
216
|
logger$1("Processing query with params %o", {
|
|
215
217
|
predicates,
|
|
216
218
|
cursor,
|
|
217
219
|
limit,
|
|
218
220
|
ownedBy,
|
|
221
|
+
createdBy,
|
|
219
222
|
orderBy,
|
|
220
223
|
validAtBlock,
|
|
221
224
|
withAttributes,
|
|
@@ -224,6 +227,7 @@ async function processQuery(client, queryParams) {
|
|
|
224
227
|
});
|
|
225
228
|
let query = processPredicates(predicates);
|
|
226
229
|
if (ownedBy) query += ` && $owner=${ownedBy}`;
|
|
230
|
+
if (createdBy) query += ` && $creator=${createdBy}`;
|
|
227
231
|
query = query.trim();
|
|
228
232
|
if (query.startsWith("&& ")) query = query.slice(3);
|
|
229
233
|
const queryOptions = { includeData: {
|
|
@@ -233,6 +237,7 @@ async function processQuery(client, queryParams) {
|
|
|
233
237
|
contentType: withMetadata ?? false,
|
|
234
238
|
expiration: withMetadata ?? false,
|
|
235
239
|
owner: withMetadata ?? false,
|
|
240
|
+
creator: withMetadata ?? false,
|
|
236
241
|
createdAtBlock: withMetadata ?? false,
|
|
237
242
|
lastModifiedAtBlock: withMetadata ?? false,
|
|
238
243
|
transactionIndexInBlock: withMetadata ?? false,
|
|
@@ -340,6 +345,7 @@ function desc(attributeName, attributeType) {
|
|
|
340
345
|
var QueryBuilder = class {
|
|
341
346
|
_client;
|
|
342
347
|
_ownedBy;
|
|
348
|
+
_createdBy;
|
|
343
349
|
_orderBy;
|
|
344
350
|
_validAtBlock;
|
|
345
351
|
_withAttributes;
|
|
@@ -365,6 +371,19 @@ var QueryBuilder = class {
|
|
|
365
371
|
this._ownedBy = ownedBy;
|
|
366
372
|
return this;
|
|
367
373
|
}
|
|
374
|
+
/**
|
|
375
|
+
* Sets the createdBy filter
|
|
376
|
+
* @param createdBy - The address of the creator
|
|
377
|
+
* @returns The QueryBuilder instance
|
|
378
|
+
*
|
|
379
|
+
* @example
|
|
380
|
+
* const builder = new QueryBuilder(client)
|
|
381
|
+
* builder.createdBy("0x1234567890123456789012345678901234567890")
|
|
382
|
+
*/
|
|
383
|
+
createdBy(createdBy) {
|
|
384
|
+
this._createdBy = createdBy;
|
|
385
|
+
return this;
|
|
386
|
+
}
|
|
368
387
|
orderBy(attributeNameOrOrderByAttribute, attributeType, order = "asc") {
|
|
369
388
|
if (!this._orderBy) this._orderBy = [];
|
|
370
389
|
const pushOrderByAttribute = ({ name, type, order: order$1 }) => {
|
|
@@ -500,6 +519,7 @@ var QueryBuilder = class {
|
|
|
500
519
|
limit: this._limit,
|
|
501
520
|
cursor: this._cursor,
|
|
502
521
|
ownedBy: this._ownedBy,
|
|
522
|
+
createdBy: this._createdBy,
|
|
503
523
|
orderBy: this._orderBy,
|
|
504
524
|
validAtBlock: this._validAtBlock,
|
|
505
525
|
withAttributes: this._withAttributes,
|
|
@@ -526,6 +546,7 @@ var QueryBuilder = class {
|
|
|
526
546
|
limit: this._limit,
|
|
527
547
|
cursor: this._cursor,
|
|
528
548
|
ownedBy: this._ownedBy,
|
|
549
|
+
createdBy: this._createdBy,
|
|
529
550
|
orderBy: void 0,
|
|
530
551
|
validAtBlock: this._validAtBlock,
|
|
531
552
|
withAttributes: false,
|
|
@@ -537,4 +558,4 @@ var QueryBuilder = class {
|
|
|
537
558
|
|
|
538
559
|
//#endregion
|
|
539
560
|
export { entityFromRpcResult as a, NoEntityFoundError as c, QueryResult as i, NoMoreResultsError as l, asc as n, EntityMutationError as o, desc as r, NoCursorOrLimitError as s, QueryBuilder as t, getLogger as u };
|
|
540
|
-
//# sourceMappingURL=queryBuilder-
|
|
561
|
+
//# sourceMappingURL=queryBuilder-C22NdvTJ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queryBuilder-C22NdvTJ.js","names":["enabledNamespaces: Set<string>","disabledNamespaces: Set<string>","logger","logger","predicate","queryOptions: RpcQueryOptions","order"],"sources":["../src/utils/logger.ts","../src/errors.ts","../src/types/entity.ts","../src/utils/entities.ts","../src/query/engine.ts","../src/query/queryResult.ts","../src/query/queryBuilder.ts"],"sourcesContent":["const ROOT_NAMESPACE = \"arkiv\"\n\n// Debug logger type - returns a function that can be called to log messages\ntype DebugLogger = (...args: unknown[]) => void\n\n// Get DEBUG environment variable (works in both Node.js and browser)\nfunction getDebugEnv(): string {\n if (typeof process !== \"undefined\") {\n const debugEnv = process?.env?.DEBUG\n if (debugEnv) {\n return debugEnv\n }\n }\n // Browser: check localStorage\n if (typeof globalThis !== \"undefined\" && \"localStorage\" in globalThis) {\n try {\n const storage = (globalThis as { localStorage?: Storage }).localStorage\n return storage?.getItem(\"DEBUG\") || \"\"\n } catch {\n // localStorage might not be available\n }\n }\n return \"\"\n}\n\n// Parse debug patterns and check if a namespace matches\nfunction matchesPattern(namespace: string, pattern: string): boolean {\n // Exact match\n if (pattern === namespace) return true\n\n // Wildcard match: \"arkiv:*\" matches \"arkiv:query\", \"arkiv:rpc\", etc.\n if (pattern.endsWith(\"*\")) {\n const prefix = pattern.slice(0, -1)\n return namespace.startsWith(prefix)\n }\n\n // Negative match: \"-arkiv:query\" excludes \"arkiv:query\"\n if (pattern.startsWith(\"-\")) {\n const excludePattern = pattern.slice(1)\n return !matchesPattern(namespace, excludePattern)\n }\n\n return false\n}\n\n// Check if a namespace is enabled for debugging\nfunction isEnabled(namespace: string): boolean {\n const debugEnv = getDebugEnv()\n if (!debugEnv) return false\n\n // Split by comma/space and check each pattern\n const patterns = debugEnv.split(/[\\s,]+/).filter((p) => p.length > 0)\n\n // If no patterns, nothing is enabled\n if (patterns.length === 0) return false\n\n // Check if any pattern matches (or if explicitly excluded)\n let enabled = false\n for (const pattern of patterns) {\n if (pattern.startsWith(\"-\")) {\n // Exclude pattern - if it matches, disable\n if (matchesPattern(namespace, pattern)) {\n return false\n }\n } else if (matchesPattern(namespace, pattern)) {\n enabled = true\n }\n }\n\n return enabled\n}\n\n// Store enabled namespaces (for programmatic enable/disable)\nconst enabledNamespaces: Set<string> = new Set()\nconst disabledNamespaces: Set<string> = new Set()\n\n// Color palette for namespace coloring (distinct, readable colors)\nconst COLOR_PALETTE = [\n \"#0000FF\", // blue\n \"#008000\", // green\n \"#FF0000\", // red\n \"#FF00FF\", // magenta\n \"#FFA500\", // orange\n \"#800080\", // purple\n \"#00CED1\", // dark turquoise\n \"#FF1493\", // deep pink\n \"#32CD32\", // lime green\n \"#1E90FF\", // dodger blue\n \"#FF4500\", // orange red\n \"#9370DB\", // medium purple\n \"#00FA9A\", // medium spring green\n \"#FFD700\", // gold\n \"#DC143C\", // crimson\n \"#00BFFF\", // deep sky blue\n \"#FF69B4\", // hot pink\n \"#20B2AA\", // light sea green\n \"#DA70D6\", // orchid\n \"#4682B4\", // steel blue\n]\n\n// Detect if we're in Node.js (for ANSI colors) or browser (for CSS colors)\nconst isNode = typeof process !== \"undefined\" && process.versions?.node != null\n\n// ANSI color codes for Node.js (bright, distinct colors)\nconst ANSI_COLORS = [\n \"\\x1b[94m\", // bright blue\n \"\\x1b[92m\", // bright green\n \"\\x1b[91m\", // bright red\n \"\\x1b[95m\", // bright magenta\n \"\\x1b[93m\", // bright yellow\n \"\\x1b[96m\", // bright cyan\n \"\\x1b[35m\", // magenta\n \"\\x1b[36m\", // cyan\n \"\\x1b[32m\", // green\n \"\\x1b[34m\", // blue\n \"\\x1b[33m\", // yellow\n \"\\x1b[31m\", // red\n \"\\x1b[90m\", // bright black (gray)\n \"\\x1b[37m\", // white\n \"\\x1b[1m\", // bold (as a color option)\n]\n\nconst ANSI_RESET = \"\\x1b[0m\"\nconst ANSI_BOLD = \"\\x1b[1m\"\n\n// Cache colors for namespaces (same namespace = same color)\nconst namespaceColors = new Map<string, { css: string; ansi: string }>()\n\n// Generate a consistent color for a namespace based on its hash\nfunction getColorForNamespace(namespace: string): { css: string; ansi: string } {\n // Check cache first\n const cachedColor = namespaceColors.get(namespace)\n if (cachedColor) {\n return cachedColor\n }\n\n // Simple hash function to convert string to number\n let hash = 0\n for (let i = 0; i < namespace.length; i++) {\n const char = namespace.charCodeAt(i)\n hash = (hash << 5) - hash + char\n hash = hash & hash // Convert to 32-bit integer\n }\n\n // Use absolute value and modulo to get index\n const colorIndex = Math.abs(hash) % COLOR_PALETTE.length\n const cssColor = COLOR_PALETTE[colorIndex]\n const ansiColor = ANSI_COLORS[colorIndex % ANSI_COLORS.length]\n\n const color = { css: cssColor, ansi: ansiColor }\n\n // Cache the color\n namespaceColors.set(namespace, color)\n\n return color\n}\n\n// Create a debug logger function\nfunction createDebugLogger(namespace: string): DebugLogger {\n // Get the color for this namespace (consistent across calls)\n const colors = getColorForNamespace(namespace)\n\n return (...args: unknown[]) => {\n // Check if enabled via environment variable or programmatically\n const envEnabled = isEnabled(namespace)\n const progEnabled = enabledNamespaces.has(namespace) && !disabledNamespaces.has(namespace)\n\n if (envEnabled || progEnabled) {\n if (isNode) {\n // Node.js: use ANSI color codes\n const coloredNamespace = `${ANSI_BOLD}${colors.ansi}${namespace}${ANSI_RESET}`\n console.log(coloredNamespace, ...args)\n } else {\n // Browser: use CSS styling with %c\n // The format is: console.log(\"%cstyled%cnormal\", style1, style2, ...args)\n // This colors the namespace, then resets for the rest\n const style1 = `color: ${colors.css}; font-weight: bold`\n const style2 = \"color: inherit; font-weight: normal\"\n // Combine namespace with a space, then log with styles\n console.log(`%c${namespace}%c`, style1, style2, ...args)\n }\n }\n }\n}\n\nexport const getLogger = (scope: string): DebugLogger => {\n const namespace = `${ROOT_NAMESPACE}:${scope}`\n return createDebugLogger(namespace)\n}\n\nexport const enableDebug = (namespaces: string): void => {\n // Parse and add namespaces to enabled set\n const patterns = namespaces.split(/[\\s,]+/).filter((p) => p.length > 0)\n for (const pattern of patterns) {\n if (pattern.startsWith(\"-\")) {\n // Remove from enabled, add to disabled\n const namespace = pattern.slice(1)\n enabledNamespaces.delete(namespace)\n disabledNamespaces.add(namespace)\n } else {\n enabledNamespaces.add(pattern)\n disabledNamespaces.delete(pattern)\n }\n }\n}\n\nexport const disableDebug = (): void => {\n enabledNamespaces.clear()\n disabledNamespaces.clear()\n}\n","export class EntityMutationError extends Error {\n constructor(message: string) {\n super(message)\n this.name = \"EntityMutationError\"\n }\n}\n\nexport class NoMoreResultsError extends Error {\n constructor() {\n super(\"No more results\")\n this.name = \"NoMoreResultsError\"\n }\n}\n\nexport class NoCursorOrLimitError extends Error {\n constructor() {\n super(\"Cursor and limit must be defined to fetch next\")\n this.name = \"NoCursorOrLimitError\"\n }\n}\n\nexport class NoEntityFoundError extends Error {\n constructor() {\n super(\"No entity found\")\n this.name = \"NoEntityFoundError\"\n }\n}\n","import { bytesToString, type Hex } from \"viem\"\nimport type { MimeType } from \"../types\"\nimport type { Attribute } from \"./attributes\"\n\nexport class Entity {\n key: Hex\n contentType: MimeType | undefined\n owner: Hex | undefined\n creator: Hex | undefined\n expiresAtBlock: bigint | undefined\n createdAtBlock: bigint | undefined\n lastModifiedAtBlock: bigint | undefined\n transactionIndexInBlock: bigint | undefined\n operationIndexInTransaction: bigint | undefined\n payload: Uint8Array | undefined\n attributes: Attribute[]\n\n constructor(\n key: Hex,\n contentType: MimeType | undefined = undefined,\n owner: Hex | undefined = undefined,\n creator: Hex | undefined = undefined,\n expiresAtBlock: bigint | undefined = undefined,\n createdAtBlock: bigint | undefined = undefined,\n lastModifiedAtBlock: bigint | undefined = undefined,\n transactionIndexInBlock: bigint | undefined = undefined,\n operationIndexInTransaction: bigint | undefined = undefined,\n payload: Uint8Array | undefined = undefined,\n attributes: Attribute[],\n ) {\n this.key = key\n this.owner = owner\n this.creator = creator\n this.expiresAtBlock = expiresAtBlock\n this.createdAtBlock = createdAtBlock\n this.lastModifiedAtBlock = lastModifiedAtBlock\n this.transactionIndexInBlock = transactionIndexInBlock\n this.operationIndexInTransaction = operationIndexInTransaction\n this.payload = payload\n this.attributes = attributes\n this.contentType = contentType\n }\n\n toText(): string {\n return this.payload ? bytesToString(this.payload) : \"\"\n }\n\n toJson(): any {\n return this.payload ? JSON.parse(bytesToString(this.payload)) : {}\n }\n}\n","import { toBytes } from \"viem\"\nimport { Entity } from \"../types/entity\"\nimport type { RpcEntity } from \"../types/rpcSchema\"\nimport { getLogger } from \"./logger\"\n\nconst logger = getLogger(\"utils:entities\")\n\nexport async function entityFromRpcResult(rpcEntity: RpcEntity) {\n logger(\"entityFromRpcResult %o\", rpcEntity)\n\n return new Entity(\n rpcEntity.key,\n rpcEntity.contentType,\n rpcEntity.owner,\n rpcEntity.creator,\n rpcEntity.expiresAt !== undefined ? BigInt(rpcEntity.expiresAt) : undefined,\n rpcEntity.createdAtBlock !== undefined ? BigInt(rpcEntity.createdAtBlock) : undefined,\n rpcEntity.lastModifiedAtBlock !== undefined ? BigInt(rpcEntity.lastModifiedAtBlock) : undefined,\n rpcEntity.transactionIndexInBlock !== undefined\n ? BigInt(rpcEntity.transactionIndexInBlock)\n : undefined,\n rpcEntity.operationIndexInTransaction !== undefined\n ? BigInt(rpcEntity.operationIndexInTransaction)\n : undefined,\n rpcEntity.value !== undefined ? toBytes(rpcEntity.value) : undefined,\n [\n ...(rpcEntity.stringAttributes ?? []).map(({ key, value }) => ({\n key,\n value,\n })),\n ...(rpcEntity.numericAttributes ?? []).map(({ key, value }) => ({\n key,\n value: Number(value),\n })),\n ],\n )\n}\n","import type { Hex } from \"viem\"\nimport { hexToNumber, numberToHex } from \"viem\"\nimport type { ArkivClient } from \"../clients/baseClient\"\nimport type { RpcIncludeData, RpcOrderByAttribute, RpcQueryOptions } from \"../types/rpcSchema\"\nimport { getLogger } from \"../utils/logger\"\nimport type { Predicate } from \"./predicate\"\n\nconst logger = getLogger(\"query:engine\")\n\nfunction processPredicates(predicates: Predicate[]): string {\n const processValue = (value: string | number) => {\n if (typeof value === \"string\") {\n return `\"${value}\"`\n }\n return value\n }\n return predicates\n .map((predicate) => {\n switch (predicate.type) {\n case \"eq\":\n return `${predicate.key} = ${processValue(predicate.value)}`\n case \"neq\":\n return `${predicate.key} != ${processValue(predicate.value)}`\n case \"gt\":\n return `${predicate.key} > ${processValue(predicate.value)}`\n case \"gte\":\n return `${predicate.key} >= ${processValue(predicate.value)}`\n case \"lt\":\n return `${predicate.key} < ${processValue(predicate.value)}`\n case \"lte\":\n return `${predicate.key} <= ${processValue(predicate.value)}`\n case \"not\":\n return `!${predicate.key}`\n case \"or\":\n return `(${predicate.predicates.map((predicate) => processPredicates([predicate])).join(\" || \")})`\n case \"and\":\n return `(${predicate.predicates.map((predicate) => processPredicates([predicate])).join(\" && \")})`\n default:\n return \"\"\n }\n })\n .join(\" && \")\n}\n\nexport async function processQuery(\n client: ArkivClient,\n queryParams: {\n predicates: Predicate[]\n limit: number | undefined\n cursor: string | undefined\n ownedBy: Hex | undefined\n createdBy: Hex | undefined\n orderBy: RpcOrderByAttribute[] | undefined\n validAtBlock?: bigint | undefined\n withAttributes?: boolean | undefined\n withMetadata?: boolean | undefined\n withPayload?: boolean | undefined\n },\n) {\n const {\n predicates,\n limit,\n cursor,\n ownedBy,\n createdBy,\n orderBy,\n validAtBlock,\n withAttributes,\n withMetadata,\n withPayload,\n } = queryParams\n\n logger(\"Processing query with params %o\", {\n predicates,\n cursor,\n limit,\n ownedBy,\n createdBy,\n orderBy,\n validAtBlock,\n withAttributes,\n withMetadata,\n withPayload,\n })\n\n let query = processPredicates(predicates)\n if (ownedBy) {\n query += ` && $owner=${ownedBy}`\n }\n if (createdBy) {\n query += ` && $creator=${createdBy}`\n }\n\n // remove leading and trailing spaces and leading &&\n query = query.trim()\n if (query.startsWith(\"&& \")) {\n query = query.slice(3)\n }\n\n const queryOptions: RpcQueryOptions = {\n includeData: {\n key: true,\n attributes: withAttributes ?? false,\n payload: withPayload ?? false,\n contentType: withMetadata ?? false,\n expiration: withMetadata ?? false,\n owner: withMetadata ?? false,\n creator: withMetadata ?? false,\n createdAtBlock: withMetadata ?? false,\n lastModifiedAtBlock: withMetadata ?? false,\n transactionIndexInBlock: withMetadata ?? false,\n operationIndexInTransaction: withMetadata ?? false,\n } as RpcIncludeData,\n }\n\n if (validAtBlock !== undefined) {\n queryOptions.atBlock = numberToHex(validAtBlock)\n }\n if (limit !== undefined) {\n queryOptions.resultsPerPage = numberToHex(limit)\n }\n if (cursor !== undefined) {\n queryOptions.cursor = cursor\n }\n if (orderBy !== undefined) {\n queryOptions.orderBy = orderBy\n }\n\n logger(\"Built query to send %s %o\", query, {\n includeData: queryOptions.includeData,\n atBlock: queryOptions.atBlock ? hexToNumber(queryOptions.atBlock) : undefined,\n orderBy: queryOptions.orderBy,\n resultsPerPage: queryOptions.resultsPerPage,\n cursor: queryOptions.cursor,\n })\n\n const result = await client.request({\n method: \"arkiv_query\",\n params: [query, queryOptions],\n })\n logger(\"Raw result from query %o\", result)\n\n return result\n}\n","import { NoCursorOrLimitError, NoMoreResultsError } from \"../errors\"\nimport type { Entity } from \"../types/entity\"\nimport { getLogger } from \"../utils/logger\"\nimport type { QueryBuilder } from \"./queryBuilder\"\n\nconst logger = getLogger(\"query:result\")\n\nexport class QueryResult {\n entities: Entity[]\n private _endOfIteration: boolean\n private _cursor: string | undefined\n private _limit: number | undefined\n private _validAtBlock: bigint | undefined\n private _queryBuilder: QueryBuilder\n\n // Public getters for internal state\n get queryBuilder(): QueryBuilder {\n return this._queryBuilder\n }\n\n get cursor(): string | undefined {\n return this._cursor\n }\n\n constructor(\n entities: Entity[],\n queryBuilder: QueryBuilder,\n cursor: string | undefined,\n limit: number | undefined,\n validAtBlock: bigint | undefined,\n ) {\n this.entities = entities\n this._queryBuilder = queryBuilder\n this._endOfIteration = !limit || entities.length < limit\n this._cursor = cursor\n this._limit = limit\n this._validAtBlock = validAtBlock\n }\n\n async next() {\n if (this._cursor === undefined || this._limit === undefined) {\n throw new NoCursorOrLimitError()\n }\n if (this._endOfIteration) {\n throw new NoMoreResultsError()\n }\n this._queryBuilder.cursor(this._cursor)\n const result = await this._queryBuilder.fetch()\n this.entities = result.entities\n // Update the query builder reference\n this._queryBuilder = result.queryBuilder\n // Check if we've reached the end (no more cursor or we got fewer entities than limit)\n this._endOfIteration = !result.cursor || result.entities.length < this._limit\n // Update the cursor\n this._cursor = result.cursor\n\n // TODO check current block height and if it is not too old\n logger(\"Current block height for next page %s\", this._validAtBlock?.toString() ?? \"unknown\")\n }\n\n hasNextPage() {\n return !this._endOfIteration\n }\n}\n","import type { Hex } from \"viem\"\nimport type { ArkivClient } from \"../clients/baseClient\"\nimport type { RpcOrderByAttribute } from \"../types/rpcSchema\"\nimport { entityFromRpcResult } from \"../utils/entities\"\nimport { processQuery } from \"./engine\"\nimport type { Predicate } from \"./predicate\"\nimport { QueryResult } from \"./queryResult\"\n\nexport type OrderByAttribute = {\n name: string\n type: \"string\" | \"number\"\n order: \"asc\" | \"desc\"\n}\n\n/**\n * Helper function to create an ascending order by attribute\n * @param attributeName - The name of the attribute to order by\n * @param attributeType - The type of the attribute to order by (string or number)\n * @returns Input for orderBy method\n *\n * @example\n * const ascAttribute = asc(\"name\", \"string\")\n */\nexport function asc(attributeName: string, attributeType: \"string\" | \"number\"): OrderByAttribute {\n return {\n name: attributeName,\n type: attributeType,\n order: \"asc\",\n }\n}\n\n/**\n * Helper function to create a descending order by attribute\n * @param attributeName - The name of the attribute to order by\n * @param attributeType - The type of the attribute to order by (string or number)\n * @returns Input for orderBy method\n *\n * @example\n * const descAttribute = desc(\"name\", \"string\")\n */\nexport function desc(attributeName: string, attributeType: \"string\" | \"number\"): OrderByAttribute {\n return {\n name: attributeName,\n type: attributeType,\n order: \"desc\",\n }\n}\n/**\n * QueryBuilder is a helper class to build queries to the Arkiv DBChains.\n * It can be used to fetch entities from the Arkiv DBChains. It follows the Builder pattern allowing chaining of methods.\n * @param client - The Arkiv client\n * @returns The QueryBuilder instance {@link QueryBuilder}\n */\nexport class QueryBuilder {\n private _client: ArkivClient\n private _ownedBy: Hex | undefined\n private _createdBy: Hex | undefined\n private _orderBy: RpcOrderByAttribute[] | undefined\n private _validAtBlock: bigint | undefined\n private _withAttributes: boolean | undefined\n private _withMetadata: boolean | undefined\n private _withPayload: boolean | undefined\n private _limit: number | undefined\n private _cursor: string | undefined\n private _predicates: Predicate[]\n\n constructor(client: ArkivClient) {\n this._client = client\n this._predicates = []\n }\n\n /**\n * Sets the ownedBy filter\n * @param ownedBy - The address of the owner\n * @returns The QueryBuilder instance\n *\n * @example\n * const builder = new QueryBuilder(client)\n * builder.ownedBy(\"0x1234567890123456789012345678901234567890\")\n */\n ownedBy(ownedBy: Hex) {\n this._ownedBy = ownedBy\n return this\n }\n\n /**\n * Sets the createdBy filter\n * @param createdBy - The address of the creator\n * @returns The QueryBuilder instance\n *\n * @example\n * const builder = new QueryBuilder(client)\n * builder.createdBy(\"0x1234567890123456789012345678901234567890\")\n */\n createdBy(createdBy: Hex) {\n this._createdBy = createdBy\n return this\n }\n\n /**\n * Sets the orderBy for the query.\n * It can be called multiple times to order by multiple attributes.\n * The order of the attributes is important. The first attribute is the primary order by attribute.\n * You can use the helper functions asc() and desc() as input for this method.\n * @param attributeName - The name of the attribute to order by\n * @param attributeType - The type of the attribute to order by (string or number)\n * @param order - The order to set the order by (asc or desc)\n * @returns The QueryBuilder instance\n *\n * @example\n * const builder = client.buildQuery()\n * builder.orderBy(\"name\", \"string\", \"desc\")\n * builder.orderBy(asc(\"name\", \"string\"))\n * builder.orderBy(desc(\"name\", \"string\"))\n */\n orderBy(attributeName: string, attributeType: \"string\" | \"number\", order?: \"asc\" | \"desc\"): this\n /**\n * Sets the orderBy for the query.\n * This method takes the OrderByAttribute object as an argument and is mainly\n * used to use the helper functions asc() and desc() to create the OrderByAttribute instances.\n * @param orderByAttribute - The OrderByAttribute instance to set\n * @returns The QueryBuilder instance\n *\n * @example\n * const builder = new QueryBuilder(client)\n * builder.orderBy(asc(\"name\", \"string\"))\n * builder.orderBy(desc(\"name\", \"string\"))\n */\n orderBy(orderByAttribute: OrderByAttribute): this\n orderBy(\n attributeNameOrOrderByAttribute: string | OrderByAttribute,\n attributeType?: \"string\" | \"number\",\n order: \"asc\" | \"desc\" = \"asc\",\n ) {\n if (!this._orderBy) {\n this._orderBy = []\n }\n\n const pushOrderByAttribute = ({ name, type, order }: OrderByAttribute) => {\n this._orderBy?.push({\n name,\n type: type === \"number\" ? \"numeric\" : type,\n desc: order === \"desc\",\n })\n }\n\n if (typeof attributeNameOrOrderByAttribute === \"string\") {\n if (!attributeType) {\n throw new Error(\"attributeType is required when using positional orderBy arguments\")\n }\n pushOrderByAttribute({\n name: attributeNameOrOrderByAttribute,\n type: attributeType,\n order,\n })\n } else {\n pushOrderByAttribute(attributeNameOrOrderByAttribute)\n }\n\n return this\n }\n\n /**\n * Sets the withAttributes flag which will return the attributes for the entities if true\n * @param withAttributes - The boolean value to set\n * @returns The QueryBuilder instance\n *\n * @example\n * const builder = new QueryBuilder(client)\n * builder.withAttributes(true)\n */\n withAttributes(withAttributes: boolean = true) {\n this._withAttributes = withAttributes\n return this\n }\n\n /**\n * Sets the withMetadata flag which will return the metadata (like owner, expiredAt, etc.) for the entities if true\n * @param withMetadata - The boolean value to set\n * @returns The QueryBuilder instance\n *\n * @example\n * const builder = new QueryBuilder(client)\n * builder.withMetadata(true)\n */\n withMetadata(withMetadata: boolean = true) {\n this._withMetadata = withMetadata\n return this\n }\n\n /**\n * Sets the withPayload flag which will return the payload for the entities if true\n * @param withPayload - The boolean value to set\n * @returns The QueryBuilder instance\n *\n * @example\n * const builder = new QueryBuilder(client)\n * builder.withPayload(true)\n */\n withPayload(withPayload: boolean = true) {\n this._withPayload = withPayload\n return this\n }\n\n /**\n * Sets the limit for the query\n * @param limit - The number of entities to return\n * @returns The QueryBuilder instance\n *\n * @example\n * const builder = new QueryBuilder(client)\n * builder.limit(10)\n */\n limit(limit: number) {\n this._limit = limit\n return this\n }\n\n /**\n * Sets the cursor for the query - it is advances setting which rather shouldn't be used manually but it is provided from query result if limit is used (pagination).\n * @param cursor - The cursor to set which tells to RPC Query server where to start or continue the query.\n * @returns The QueryBuilder instance\n *\n * @example\n * const builder = new QueryBuilder(client)\n * builder.offset(10)\n */\n cursor(cursor: string) {\n this._cursor = cursor\n return this\n }\n\n /**\n * Sets the validAtBlock for the query which tells at which block height the state we are intested.\n * If not set, the latest block is used.\n * @param validAtBlock - The block number to set\n * @returns The QueryBuilder instance\n *\n * @example\n * const builder = new QueryBuilder(client)\n * builder.validAtBlock(10000)\n */\n validAtBlock(validAtBlock: bigint) {\n this._validAtBlock = validAtBlock\n return this\n }\n\n /**\n * Sets the predicates for the query limiting the results. It can be a single predicate or an array of predicates combined with 'and'.\n * Predicates can be nested using 'or' and 'and' predicates.\n * @param predicates - The predicates to set\n * @returns The QueryBuilder instance\n *\n * @example\n * const builder = new QueryBuilder(client)\n * builder.where(eq(\"name\", \"John\"))\n * builder.where([eq(\"name\", \"John\"), eq(\"age\", 30)])\n * builder.where([eq(\"name\", \"John\"), or([eq(\"age\", 30), eq(\"age\", 31)])])\n * builder.where([eq(\"name\", \"John\"), and([eq(\"age\", 30), eq(\"age\", 31)])])\n * builder.where([eq(\"name\", \"John\"), or([eq(\"age\", 30), and([eq(\"age\", 31), eq(\"age\", 32)])])])\n * builder.where([eq(\"name\", \"John\"), and([eq(\"age\", 30), or([eq(\"age\", 31), eq(\"age\", 32)])])])\n * builder.where([eq(\"name\", \"John\"), and([eq(\"age\", 30), or([eq(\"age\", 31), and([eq(\"age\", 32), eq(\"age\", 33)])])])])\n */\n where(predicates: Predicate[] | Predicate) {\n if (Array.isArray(predicates)) {\n this._predicates.push(...predicates)\n } else {\n this._predicates.push(predicates)\n }\n return this\n }\n\n /**\n * Fetches the entities from the query. Re\n * It will return a QueryResult instance which can be used to fetch the next and previous pages.\n * @returns The QueryResult instance {@link QueryResult}\n *\n * @example\n * const builder = new QueryBuilder(client)\n * const result = await builder.where(eq(\"name\", \"John\")).fetch()\n * // result = { entities: [Entity, Entity, Entity], next: async () => QueryResult, previous: async () => QueryResult }\n */\n async fetch() {\n const queryResult = await processQuery(this._client, {\n predicates: this._predicates,\n limit: this._limit,\n cursor: this._cursor,\n ownedBy: this._ownedBy,\n createdBy: this._createdBy,\n orderBy: this._orderBy,\n validAtBlock: this._validAtBlock,\n withAttributes: this._withAttributes,\n withMetadata: this._withMetadata,\n withPayload: this._withPayload,\n })\n\n const entities = await Promise.all(\n queryResult.data.map((entity) => entityFromRpcResult(entity)),\n )\n\n this.cursor(queryResult.cursor)\n this.validAtBlock(BigInt(queryResult.blockNumber ?? 0))\n\n return new QueryResult(entities, this, this._cursor, this._limit, this._validAtBlock)\n }\n\n /**\n * Counts the entities from the query.\n * @returns The number of entities\n *\n * @example\n * const builder = new QueryBuilder(client)\n * const result = await builder.where(eq(\"name\", \"John\")).count()\n * // result = 10\n */\n async count() {\n const queryResult = await processQuery(this._client, {\n predicates: this._predicates,\n limit: this._limit,\n cursor: this._cursor,\n ownedBy: this._ownedBy,\n createdBy: this._createdBy,\n orderBy: undefined,\n validAtBlock: this._validAtBlock,\n withAttributes: false,\n withMetadata: false,\n withPayload: false,\n })\n\n return queryResult.data.length ?? 0\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { D as ArkivClient, a as Entity } from "./query-
|
|
1
|
+
import { D as ArkivClient, a as Entity } from "./query-DnKI7Fry.js";
|
|
2
2
|
import { Hex } from "viem";
|
|
3
3
|
|
|
4
4
|
//#region src/query/predicate.d.ts
|
|
@@ -163,6 +163,7 @@ declare function desc(attributeName: string, attributeType: "string" | "number")
|
|
|
163
163
|
declare class QueryBuilder {
|
|
164
164
|
private _client;
|
|
165
165
|
private _ownedBy;
|
|
166
|
+
private _createdBy;
|
|
166
167
|
private _orderBy;
|
|
167
168
|
private _validAtBlock;
|
|
168
169
|
private _withAttributes;
|
|
@@ -182,6 +183,16 @@ declare class QueryBuilder {
|
|
|
182
183
|
* builder.ownedBy("0x1234567890123456789012345678901234567890")
|
|
183
184
|
*/
|
|
184
185
|
ownedBy(ownedBy: Hex): this;
|
|
186
|
+
/**
|
|
187
|
+
* Sets the createdBy filter
|
|
188
|
+
* @param createdBy - The address of the creator
|
|
189
|
+
* @returns The QueryBuilder instance
|
|
190
|
+
*
|
|
191
|
+
* @example
|
|
192
|
+
* const builder = new QueryBuilder(client)
|
|
193
|
+
* builder.createdBy("0x1234567890123456789012345678901234567890")
|
|
194
|
+
*/
|
|
195
|
+
createdBy(createdBy: Hex): this;
|
|
185
196
|
/**
|
|
186
197
|
* Sets the orderBy for the query.
|
|
187
198
|
* It can be called multiple times to order by multiple attributes.
|
|
@@ -314,4 +325,4 @@ declare class QueryBuilder {
|
|
|
314
325
|
}
|
|
315
326
|
//#endregion
|
|
316
327
|
export { or as _, QueryResult as a, PredicateType as c, gt as d, gte as f, not as g, neq as h, desc as i, and as l, lte as m, QueryBuilder as n, Predicate as o, lt as p, asc as r, PredicateContainerType as s, OrderByAttribute as t, eq as u };
|
|
317
|
-
//# sourceMappingURL=queryBuilder-
|
|
328
|
+
//# sourceMappingURL=queryBuilder-C24NWMmN.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queryBuilder-
|
|
1
|
+
{"version":3,"file":"queryBuilder-C24NWMmN.d.ts","names":[],"sources":["../src/query/predicate.ts","../src/query/queryResult.ts","../src/query/queryBuilder.ts"],"sourcesContent":[],"mappings":";;;;KAAY,aAAA;KACA,sBAAA;KAEA,SAAA;QAEA;EALA,GAAA,EAAA,MAAA;EACA,KAAA,EAAA,MAAA,GAAA,MAAA;AAEZ,CAAA,GAAY;EAEA,IAAA,EAKA,sBALA;EAKA,UAAA,EACM,SADN,EAAA;CACM;;AAclB;AAeA;AAcA;AAcA;AAcA;AAcA;AAcA;AAcA;AAaA;;iBAhHgB,EAAA,aAAe,cAAc;;AClB7C;;;;;;;;;;ACCY,iBFgCI,GAAA,CEhCY,UAAA,EFgCI,SEhCJ,EAAA,CAAA,EFgCkB,SEhClB;AAe5B;AAiBA;AAaA;;;;;;;;AAqOa,iBFpOG,EAAA,CEoOH,GAAA,EAAA,MAAA,EAAA,KAAA,EAAA,MAAA,GAAA,MAAA,CAAA,EFpO4C,SEoO5C;;;;;;;;;;;iBFtNG,GAAA,uCAA0C;;;;;;;;;;;iBAc1C,EAAA,uCAAyC;;;;;;;;;;;iBAczC,GAAA,uCAA0C;;;;;;;;;;;iBAc1C,EAAA,uCAAyC;;;;;;;;;;;iBAczC,GAAA,uCAA0C;;;;;;;;;;iBAa1C,GAAA,eAAkB;;;cClIrB,WAAA;YACD;EDRA,QAAA,eAAa;EACb,QAAA,OAAA;EAEA,QAAA,MAAS;EAET,QAAA,aAAA;EAKA,QAAA,aAAA;EACM,IAAA,YAAA,CAAA,CAAA,ECKI,YDLJ;EAAS,IAAA,MAAA,CAAA,CAAA,EAAA,MAAA,GAAA,SAAA;EAcX,WAAE,CAAA,QAAa,ECAjB,MDA+B,EAAA,EAAA,YAAS,ECCpC,YDDoC,EAAA,MAAA,EAAA,MAAA,GAAA,SAAA,EAAA,KAAA,EAAA,MAAA,GAAA,SAAA,EAAA,YAAA,EAAA,MAAA,GAAA,SAAA;EAetC,IAAA,CAAA,CAAG,ECDP,ODCO,CAAA,IAAa,CAAA;EAchB,WAAE,CAAA,CAAA,EAAA,OAAuC;AAczD;;;AApEY,KEQA,gBAAA,GFRa;EACb,IAAA,EAAA,MAAA;EAEA,IAAA,EAAA,QAAS,GAAA,QAAA;EAET,KAAA,EAAA,KAAA,GAAA,MAAA;CAKA;;;AAeZ;AAeA;AAcA;AAcA;AAcA;AAcA;AAcA;AAcgB,iBErGA,GAAA,CFqG0C,aAAS,EAAA,MAAA,EAAA,aAAA,EAAA,QAAA,GAAA,QAAA,CAAA,EErGa,gBFqGb;AAanE;;;;AClIA;;;;;AAgCY,iBCCI,IAAA,CDDJ,aAAA,EAAA,MAAA,EAAA,aAAA,EAAA,QAAA,GAAA,QAAA,CAAA,ECCqE,gBDDrE;;;;;AC/BZ;AAeA;AAiBgB,cAaH,YAAA,CAboE;EAapE,QAAA,OAAY;EAaH,QAAA,QAAA;EAcH,QAAA,UAAA;EAcI,QAAA,QAAA;EAkCK,QAAA,aAAA;EAuIR,QAAA,eAAA;EAAc,QAAA,aAAA;EAmBrB,QAAA,YAAA;EAAA,QAAA,MAAA;EAiCA,QAAA,OAAA;EAAA,QAAA,WAAA;sBAzPS;;;;;;;;;;mBAcH;;;;;;;;;;uBAcI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAkCK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAuIR,cAAc;;;;;;;;;;;WAmBrB,QAAA;;;;;;;;;;WAiCA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { D as ArkivClient, a as Entity } from "./query-
|
|
1
|
+
import { D as ArkivClient, a as Entity } from "./query-BeKsGPR3.cjs";
|
|
2
2
|
import { Hex } from "viem";
|
|
3
3
|
|
|
4
4
|
//#region src/query/predicate.d.ts
|
|
@@ -163,6 +163,7 @@ declare function desc(attributeName: string, attributeType: "string" | "number")
|
|
|
163
163
|
declare class QueryBuilder {
|
|
164
164
|
private _client;
|
|
165
165
|
private _ownedBy;
|
|
166
|
+
private _createdBy;
|
|
166
167
|
private _orderBy;
|
|
167
168
|
private _validAtBlock;
|
|
168
169
|
private _withAttributes;
|
|
@@ -182,6 +183,16 @@ declare class QueryBuilder {
|
|
|
182
183
|
* builder.ownedBy("0x1234567890123456789012345678901234567890")
|
|
183
184
|
*/
|
|
184
185
|
ownedBy(ownedBy: Hex): this;
|
|
186
|
+
/**
|
|
187
|
+
* Sets the createdBy filter
|
|
188
|
+
* @param createdBy - The address of the creator
|
|
189
|
+
* @returns The QueryBuilder instance
|
|
190
|
+
*
|
|
191
|
+
* @example
|
|
192
|
+
* const builder = new QueryBuilder(client)
|
|
193
|
+
* builder.createdBy("0x1234567890123456789012345678901234567890")
|
|
194
|
+
*/
|
|
195
|
+
createdBy(createdBy: Hex): this;
|
|
185
196
|
/**
|
|
186
197
|
* Sets the orderBy for the query.
|
|
187
198
|
* It can be called multiple times to order by multiple attributes.
|
|
@@ -314,4 +325,4 @@ declare class QueryBuilder {
|
|
|
314
325
|
}
|
|
315
326
|
//#endregion
|
|
316
327
|
export { or as _, QueryResult as a, PredicateType as c, gt as d, gte as f, not as g, neq as h, desc as i, and as l, lte as m, QueryBuilder as n, Predicate as o, lt as p, asc as r, PredicateContainerType as s, OrderByAttribute as t, eq as u };
|
|
317
|
-
//# sourceMappingURL=queryBuilder-
|
|
328
|
+
//# sourceMappingURL=queryBuilder-CqSuICrM.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queryBuilder-
|
|
1
|
+
{"version":3,"file":"queryBuilder-CqSuICrM.d.cts","names":[],"sources":["../src/query/predicate.ts","../src/query/queryResult.ts","../src/query/queryBuilder.ts"],"sourcesContent":[],"mappings":";;;;KAAY,aAAA;KACA,sBAAA;KAEA,SAAA;QAEA;EALA,GAAA,EAAA,MAAA;EACA,KAAA,EAAA,MAAA,GAAA,MAAA;AAEZ,CAAA,GAAY;EAEA,IAAA,EAKA,sBALA;EAKA,UAAA,EACM,SADN,EAAA;CACM;;AAclB;AAeA;AAcA;AAcA;AAcA;AAcA;AAcA;AAcA;AAaA;;iBAhHgB,EAAA,aAAe,cAAc;;AClB7C;;;;;;;;;;ACCY,iBFgCI,GAAA,CEhCY,UAAA,EFgCI,SEhCJ,EAAA,CAAA,EFgCkB,SEhClB;AAe5B;AAiBA;AAaA;;;;;;;;AAqOa,iBFpOG,EAAA,CEoOH,GAAA,EAAA,MAAA,EAAA,KAAA,EAAA,MAAA,GAAA,MAAA,CAAA,EFpO4C,SEoO5C;;;;;;;;;;;iBFtNG,GAAA,uCAA0C;;;;;;;;;;;iBAc1C,EAAA,uCAAyC;;;;;;;;;;;iBAczC,GAAA,uCAA0C;;;;;;;;;;;iBAc1C,EAAA,uCAAyC;;;;;;;;;;;iBAczC,GAAA,uCAA0C;;;;;;;;;;iBAa1C,GAAA,eAAkB;;;cClIrB,WAAA;YACD;EDRA,QAAA,eAAa;EACb,QAAA,OAAA;EAEA,QAAA,MAAS;EAET,QAAA,aAAA;EAKA,QAAA,aAAA;EACM,IAAA,YAAA,CAAA,CAAA,ECKI,YDLJ;EAAS,IAAA,MAAA,CAAA,CAAA,EAAA,MAAA,GAAA,SAAA;EAcX,WAAE,CAAA,QAAa,ECAjB,MDA+B,EAAA,EAAA,YAAS,ECCpC,YDDoC,EAAA,MAAA,EAAA,MAAA,GAAA,SAAA,EAAA,KAAA,EAAA,MAAA,GAAA,SAAA,EAAA,YAAA,EAAA,MAAA,GAAA,SAAA;EAetC,IAAA,CAAA,CAAG,ECDP,ODCO,CAAA,IAAa,CAAA;EAchB,WAAE,CAAA,CAAA,EAAA,OAAuC;AAczD;;;AApEY,KEQA,gBAAA,GFRa;EACb,IAAA,EAAA,MAAA;EAEA,IAAA,EAAA,QAAS,GAAA,QAAA;EAET,KAAA,EAAA,KAAA,GAAA,MAAA;CAKA;;;AAeZ;AAeA;AAcA;AAcA;AAcA;AAcA;AAcA;AAcgB,iBErGA,GAAA,CFqG0C,aAAS,EAAA,MAAA,EAAA,aAAA,EAAA,QAAA,GAAA,QAAA,CAAA,EErGa,gBFqGb;AAanE;;;;AClIA;;;;;AAgCY,iBCCI,IAAA,CDDJ,aAAA,EAAA,MAAA,EAAA,aAAA,EAAA,QAAA,GAAA,QAAA,CAAA,ECCqE,gBDDrE;;;;;AC/BZ;AAeA;AAiBgB,cAaH,YAAA,CAboE;EAapE,QAAA,OAAY;EAaH,QAAA,QAAA;EAcH,QAAA,UAAA;EAcI,QAAA,QAAA;EAkCK,QAAA,aAAA;EAuIR,QAAA,eAAA;EAAc,QAAA,aAAA;EAmBrB,QAAA,YAAA;EAAA,QAAA,MAAA;EAiCA,QAAA,OAAA;EAAA,QAAA,WAAA;sBAzPS;;;;;;;;;;mBAcH;;;;;;;;;;uBAcI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAkCK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAuIR,cAAc;;;;;;;;;;;WAmBrB,QAAA;;;;;;;;;;WAiCA"}
|
package/dist/types/index.d.cts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { A as RpcIncludeData, C as CreateEntityReturnType, E as GetBlockTimingReturnType, M as RpcQueryOptions, N as MimeType, O as ArkivRpcSchema, S as CreateEntityParameters, T as ChangeOwnershipReturnType, _ as UpdateEntityReturnType, a as Entity, b as DeleteEntityParameters, c as OnEntityDeletedEvent, d as OnEntityOwnerChangedEvent, f as OnEntityUpdatedEvent, g as UpdateEntityParameters, h as MutateEntitiesReturnType, i as QueryReturnType, j as RpcOrderByAttribute, k as RpcEntity, l as OnEntityExpiredEvent, m as MutateEntitiesParameters, n as QueryOptionsIncludeData, o as TxParams, p as Attribute, r as QueryOptionsOrderBy, s as OnEntityCreatedEvent, t as QueryOptions, u as OnEntityExpiresInExtendedEvent, v as ExtendEntityParameters, w as ChangeOwnershipParameters, x as DeleteEntityReturnType, y as ExtendEntityReturnType } from "../query-
|
|
1
|
+
import { A as RpcIncludeData, C as CreateEntityReturnType, E as GetBlockTimingReturnType, M as RpcQueryOptions, N as MimeType, O as ArkivRpcSchema, S as CreateEntityParameters, T as ChangeOwnershipReturnType, _ as UpdateEntityReturnType, a as Entity, b as DeleteEntityParameters, c as OnEntityDeletedEvent, d as OnEntityOwnerChangedEvent, f as OnEntityUpdatedEvent, g as UpdateEntityParameters, h as MutateEntitiesReturnType, i as QueryReturnType, j as RpcOrderByAttribute, k as RpcEntity, l as OnEntityExpiredEvent, m as MutateEntitiesParameters, n as QueryOptionsIncludeData, o as TxParams, p as Attribute, r as QueryOptionsOrderBy, s as OnEntityCreatedEvent, t as QueryOptions, u as OnEntityExpiresInExtendedEvent, v as ExtendEntityParameters, w as ChangeOwnershipParameters, x as DeleteEntityReturnType, y as ExtendEntityReturnType } from "../query-BeKsGPR3.cjs";
|
|
2
2
|
export { ArkivRpcSchema, Attribute, ChangeOwnershipParameters, ChangeOwnershipReturnType, CreateEntityParameters, CreateEntityReturnType, DeleteEntityParameters, DeleteEntityReturnType, Entity, ExtendEntityParameters, ExtendEntityReturnType, GetBlockTimingReturnType, MimeType, MutateEntitiesParameters, MutateEntitiesReturnType, OnEntityCreatedEvent, OnEntityDeletedEvent, OnEntityExpiredEvent, OnEntityExpiresInExtendedEvent, OnEntityOwnerChangedEvent, OnEntityUpdatedEvent, QueryOptions, QueryOptionsIncludeData, QueryOptionsOrderBy, QueryReturnType, RpcEntity, RpcIncludeData, RpcOrderByAttribute, RpcQueryOptions, TxParams, UpdateEntityParameters, UpdateEntityReturnType };
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { A as RpcIncludeData, C as CreateEntityReturnType, E as GetBlockTimingReturnType, M as RpcQueryOptions, N as MimeType, O as ArkivRpcSchema, S as CreateEntityParameters, T as ChangeOwnershipReturnType, _ as UpdateEntityReturnType, a as Entity, b as DeleteEntityParameters, c as OnEntityDeletedEvent, d as OnEntityOwnerChangedEvent, f as OnEntityUpdatedEvent, g as UpdateEntityParameters, h as MutateEntitiesReturnType, i as QueryReturnType, j as RpcOrderByAttribute, k as RpcEntity, l as OnEntityExpiredEvent, m as MutateEntitiesParameters, n as QueryOptionsIncludeData, o as TxParams, p as Attribute, r as QueryOptionsOrderBy, s as OnEntityCreatedEvent, t as QueryOptions, u as OnEntityExpiresInExtendedEvent, v as ExtendEntityParameters, w as ChangeOwnershipParameters, x as DeleteEntityReturnType, y as ExtendEntityReturnType } from "../query-
|
|
1
|
+
import { A as RpcIncludeData, C as CreateEntityReturnType, E as GetBlockTimingReturnType, M as RpcQueryOptions, N as MimeType, O as ArkivRpcSchema, S as CreateEntityParameters, T as ChangeOwnershipReturnType, _ as UpdateEntityReturnType, a as Entity, b as DeleteEntityParameters, c as OnEntityDeletedEvent, d as OnEntityOwnerChangedEvent, f as OnEntityUpdatedEvent, g as UpdateEntityParameters, h as MutateEntitiesReturnType, i as QueryReturnType, j as RpcOrderByAttribute, k as RpcEntity, l as OnEntityExpiredEvent, m as MutateEntitiesParameters, n as QueryOptionsIncludeData, o as TxParams, p as Attribute, r as QueryOptionsOrderBy, s as OnEntityCreatedEvent, t as QueryOptions, u as OnEntityExpiresInExtendedEvent, v as ExtendEntityParameters, w as ChangeOwnershipParameters, x as DeleteEntityReturnType, y as ExtendEntityReturnType } from "../query-DnKI7Fry.js";
|
|
2
2
|
export { ArkivRpcSchema, Attribute, ChangeOwnershipParameters, ChangeOwnershipReturnType, CreateEntityParameters, CreateEntityReturnType, DeleteEntityParameters, DeleteEntityReturnType, Entity, ExtendEntityParameters, ExtendEntityReturnType, GetBlockTimingReturnType, MimeType, MutateEntitiesParameters, MutateEntitiesReturnType, OnEntityCreatedEvent, OnEntityDeletedEvent, OnEntityExpiredEvent, OnEntityExpiresInExtendedEvent, OnEntityOwnerChangedEvent, OnEntityUpdatedEvent, QueryOptions, QueryOptionsIncludeData, QueryOptionsOrderBy, QueryReturnType, RpcEntity, RpcIncludeData, RpcOrderByAttribute, RpcQueryOptions, TxParams, UpdateEntityParameters, UpdateEntityReturnType };
|
package/package.json
CHANGED
|
@@ -38,6 +38,7 @@ export async function query(client: ArkivClient, query: string, queryOptions?: Q
|
|
|
38
38
|
contentType: queryOptions?.includeData?.metadata ?? false,
|
|
39
39
|
expiration: queryOptions?.includeData?.metadata ?? false,
|
|
40
40
|
owner: queryOptions?.includeData?.metadata ?? false,
|
|
41
|
+
creator: queryOptions?.includeData?.metadata ?? false,
|
|
41
42
|
createdAtBlock: queryOptions?.includeData?.metadata ?? false,
|
|
42
43
|
lastModifiedAtBlock: queryOptions?.includeData?.metadata ?? false,
|
|
43
44
|
transactionIndexInBlock: queryOptions?.includeData?.metadata ?? false,
|