@lossless.org/client 1.7.0 → 1.9.0

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 (51) hide show
  1. package/dist_ts/00_commitinfo_data.js +1 -1
  2. package/dist_ts/nosqldb/classes.atomicdelete.d.ts +1 -0
  3. package/dist_ts/nosqldb/classes.atomicdelete.js +10 -7
  4. package/dist_ts/nosqldb/classes.atomicfindoneandupdate.d.ts +2 -0
  5. package/dist_ts/nosqldb/classes.atomicfindoneandupdate.js +9 -5
  6. package/dist_ts/nosqldb/classes.atomicupdate.d.ts +2 -0
  7. package/dist_ts/nosqldb/classes.atomicupdate.js +13 -8
  8. package/dist_ts/nosqldb/classes.collection.d.ts +13 -4
  9. package/dist_ts/nosqldb/classes.collection.js +57 -64
  10. package/dist_ts/nosqldb/classes.db.d.ts +1 -1
  11. package/dist_ts/nosqldb/classes.doc.d.ts +60 -3
  12. package/dist_ts/nosqldb/classes.doc.js +68 -26
  13. package/dist_ts/nosqldb/classes.exactpersistence.d.ts +36 -7
  14. package/dist_ts/nosqldb/classes.exactpersistence.js +92 -81
  15. package/dist_ts/nosqldb/classes.operationdeadline.d.ts +61 -0
  16. package/dist_ts/nosqldb/classes.operationdeadline.js +149 -0
  17. package/dist_ts/nosqldb/classes.persistence.d.ts +16 -1
  18. package/dist_ts/nosqldb/classes.persistence.js +20 -1
  19. package/dist_ts/nosqldb/classes.session.d.ts +73 -2
  20. package/dist_ts/nosqldb/classes.session.js +164 -38
  21. package/dist_ts/objectstorage/classes.bucket.d.ts +8 -3
  22. package/dist_ts/objectstorage/classes.bucket.js +83 -131
  23. package/dist_ts/objectstorage/classes.directory.js +17 -28
  24. package/dist_ts/objectstorage/classes.smartbucket.d.ts +13 -6
  25. package/dist_ts/objectstorage/classes.smartbucket.js +18 -12
  26. package/dist_ts/objectstorage/classes.watcher.js +1 -2
  27. package/dist_ts/objectstorage/interfaces.d.ts +8 -0
  28. package/dist_ts/objectstorage/internal.bucketrequests.d.ts +14 -0
  29. package/dist_ts/objectstorage/internal.bucketrequests.js +53 -0
  30. package/dist_ts/objectstorage/internal.exactupload.capability.d.ts +12 -0
  31. package/dist_ts/objectstorage/internal.exactupload.capability.js +46 -17
  32. package/package.json +2 -2
  33. package/readme.md +14 -7
  34. package/ts/00_commitinfo_data.ts +1 -1
  35. package/ts/nosqldb/classes.atomicdelete.ts +10 -6
  36. package/ts/nosqldb/classes.atomicfindoneandupdate.ts +10 -4
  37. package/ts/nosqldb/classes.atomicupdate.ts +14 -7
  38. package/ts/nosqldb/classes.collection.ts +82 -73
  39. package/ts/nosqldb/classes.db.ts +1 -1
  40. package/ts/nosqldb/classes.doc.ts +162 -33
  41. package/ts/nosqldb/classes.exactpersistence.ts +131 -93
  42. package/ts/nosqldb/classes.operationdeadline.ts +179 -0
  43. package/ts/nosqldb/classes.persistence.ts +36 -1
  44. package/ts/nosqldb/classes.session.ts +221 -39
  45. package/ts/objectstorage/classes.bucket.ts +111 -158
  46. package/ts/objectstorage/classes.directory.ts +18 -27
  47. package/ts/objectstorage/classes.smartbucket.ts +21 -11
  48. package/ts/objectstorage/classes.watcher.ts +0 -1
  49. package/ts/objectstorage/interfaces.ts +9 -0
  50. package/ts/objectstorage/internal.bucketrequests.ts +70 -0
  51. package/ts/objectstorage/internal.exactupload.capability.ts +105 -24
@@ -1,6 +1,6 @@
1
1
  import * as plugins from './plugins.js';
2
2
  import { Bucket } from './classes.bucket.js';
3
- import type { ISmartBucketReadinessOptions, TSmartBucketReadinessResult } from './interfaces.js';
3
+ import type { IBucketRequestOptions, ISmartBucketReadinessOptions, TSmartBucketReadinessResult } from './interfaces.js';
4
4
  export declare class SmartBucket {
5
5
  config: plugins.tsclass.storage.IStorageDescriptor;
6
6
  private currentStorageClient;
@@ -29,13 +29,20 @@ export declare class SmartBucket {
29
29
  constructor(configArg: plugins.tsclass.storage.IStorageDescriptor, clientOptions?: {
30
30
  forcePathStyle?: boolean;
31
31
  });
32
- createBucket(bucketNameArg: string): Promise<Bucket>;
33
- removeBucket(bucketName: string): Promise<void>;
34
- getBucketByName(bucketNameArg: string): Promise<Bucket>;
32
+ createBucket(bucketNameArg: string, optionsArg?: IBucketRequestOptions): Promise<Bucket>;
33
+ removeBucket(bucketName: string, optionsArg?: IBucketRequestOptions): Promise<void>;
35
34
  /**
36
- * Check if a bucket exists
35
+ * Returns a reference to an existing bucket, checked with one HeadBucket
36
+ * request. Rejects when the bucket does not exist or the credentials may
37
+ * not access it.
37
38
  */
38
- bucketExists(bucketNameArg: string): Promise<boolean>;
39
+ getBucketByName(bucketNameArg: string, optionsArg?: IBucketRequestOptions): Promise<Bucket>;
40
+ /**
41
+ * Checks with one HeadBucket request whether a bucket exists. Resolves
42
+ * `false` for a missing bucket and rejects when the credentials may not
43
+ * access it.
44
+ */
45
+ bucketExists(bucketNameArg: string, optionsArg?: IBucketRequestOptions): Promise<boolean>;
39
46
  /**
40
47
  * Transfers exclusive lifecycle ownership of an S3 client to this SmartBucket.
41
48
  */
@@ -2,6 +2,7 @@
2
2
  import * as plugins from './plugins.js';
3
3
  import { Bucket } from './classes.bucket.js';
4
4
  import { normalizeStorageDescriptor } from './helpers.js';
5
+ import { headBucketExists } from './internal.bucketrequests.js';
5
6
  import { beginOperationLifecycleClose, commitOperationLifecycleClient, completeOperationLifecycleClose, registerOperationLifecycle, reserveOperationLifecycleClientMutation, rollbackOperationLifecycleClientMutation, } from './internal.exactupload.capability.js';
6
7
  const readinessDefaultTimeoutMs = 2_000;
7
8
  const readinessMaximumTimeoutMs = 30_000;
@@ -80,23 +81,28 @@ export class SmartBucket {
80
81
  this.ownedStorageClient = this.currentStorageClient;
81
82
  registerOperationLifecycle(this, this.currentStorageClient);
82
83
  }
83
- async createBucket(bucketNameArg) {
84
- const bucket = await Bucket.createBucketByName(this, bucketNameArg);
84
+ async createBucket(bucketNameArg, optionsArg = {}) {
85
+ const bucket = await Bucket.createBucketByName(this, bucketNameArg, optionsArg);
85
86
  return bucket;
86
87
  }
87
- async removeBucket(bucketName) {
88
- await Bucket.removeBucketByName(this, bucketName);
88
+ async removeBucket(bucketName, optionsArg = {}) {
89
+ await Bucket.removeBucketByName(this, bucketName, optionsArg);
89
90
  }
90
- async getBucketByName(bucketNameArg) {
91
- return Bucket.getBucketByName(this, bucketNameArg);
91
+ /**
92
+ * Returns a reference to an existing bucket, checked with one HeadBucket
93
+ * request. Rejects when the bucket does not exist or the credentials may
94
+ * not access it.
95
+ */
96
+ async getBucketByName(bucketNameArg, optionsArg = {}) {
97
+ return Bucket.getBucketByName(this, bucketNameArg, optionsArg);
92
98
  }
93
99
  /**
94
- * Check if a bucket exists
100
+ * Checks with one HeadBucket request whether a bucket exists. Resolves
101
+ * `false` for a missing bucket and rejects when the credentials may not
102
+ * access it.
95
103
  */
96
- async bucketExists(bucketNameArg) {
97
- const command = new plugins.s3.ListBucketsCommand({});
98
- const buckets = await this.currentStorageClient.send(command);
99
- return buckets.Buckets?.some(bucket => bucket.Name === bucketNameArg) ?? false;
104
+ async bucketExists(bucketNameArg, optionsArg = {}) {
105
+ return headBucketExists(this, bucketNameArg, optionsArg.signal);
100
106
  }
101
107
  /**
102
108
  * Transfers exclusive lifecycle ownership of an S3 client to this SmartBucket.
@@ -354,4 +360,4 @@ export class SmartBucket {
354
360
  };
355
361
  }
356
362
  }
357
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3Nlcy5zbWFydGJ1Y2tldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzL29iamVjdHN0b3JhZ2UvY2xhc3Nlcy5zbWFydGJ1Y2tldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx5QkFBeUI7QUFFekIsT0FBTyxLQUFLLE9BQU8sTUFBTSxjQUFjLENBQUM7QUFDeEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzdDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxRCxPQUFPLEVBQ0wsNEJBQTRCLEVBQzVCLDhCQUE4QixFQUM5QiwrQkFBK0IsRUFDL0IsMEJBQTBCLEVBQzFCLHVDQUF1QyxFQUN2Qyx3Q0FBd0MsR0FDekMsTUFBTSxzQ0FBc0MsQ0FBQztBQVc5QyxNQUFNLHlCQUF5QixHQUFHLEtBQUssQ0FBQztBQUN4QyxNQUFNLHlCQUF5QixHQUFHLE1BQU0sQ0FBQztBQUV6QyxNQUFNLE9BQU8sV0FBVztJQUNmLE1BQU0sQ0FBNkM7SUFFbEQsb0JBQW9CLENBQXNCO0lBQzFDLGtCQUFrQixDQUFzQjtJQUN4QyxjQUFjLEdBQStCLE1BQU0sQ0FBQztJQUNwRCxjQUFjLEdBQUcsQ0FBQyxDQUFDO0lBQ25CLDBCQUEwQixHQUFHLElBQUksR0FBRyxFQUFtQixDQUFDO0lBQ3hELHFCQUFxQixHQUFHLElBQUksT0FBTyxFQUF1QixDQUFDO0lBQzNELCtCQUErQixHQUFHLEtBQUssQ0FBQztJQUN4QyxZQUFZLENBQTRCO0lBQ3hDLHFCQUFxQixHQUFHLEtBQUssQ0FBQztJQUM5Qix3QkFBd0IsQ0FBNEI7SUFFNUQ7O09BRUc7SUFDSCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUM7SUFDbkMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBVyxhQUFhLENBQUMsZ0JBQXFDO1FBQzVELElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQztZQUM1QyxNQUFNLElBQUksU0FBUyxDQUFDLDBEQUEwRCxDQUFDLENBQUM7UUFDbEYsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLGNBQWMsS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9EQUFvRCxJQUFJLENBQUMsY0FBYyxHQUFHLENBQUMsQ0FBQztRQUM5RixDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsK0JBQStCLEVBQUUsQ0FBQztZQUN6QyxNQUFNLElBQUksS0FBSyxDQUFDLDJEQUEyRCxDQUFDLENBQUM7UUFDL0UsQ0FBQztRQUNELElBQUksZ0JBQWdCLEtBQUssSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7WUFDbkQsT0FBTztRQUNULENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDO1lBQ3JELE1BQU0sSUFBSSxLQUFLLENBQUMsMkRBQTJELENBQUMsQ0FBQztRQUMvRSxDQUFDO1FBRUQsSUFBSSxDQUFDLCtCQUErQixHQUFHLElBQUksQ0FBQztRQUM1QyxJQUFJLGdCQUFnQixHQUFHLEtBQUssQ0FBQztRQUM3QixJQUFJLENBQUM7WUFDSCx1Q0FBdUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM5QyxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7WUFDeEIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxnQkFBZ0IsQ0FBQztZQUM3Qyw4QkFBOEIsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztZQUN2RCxnQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDM0IsQ0FBQztnQkFBUyxDQUFDO1lBQ1QsSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO2dCQUNyQix3Q0FBd0MsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNqRCxDQUFDO1lBQ0QsSUFBSSxDQUFDLCtCQUErQixHQUFHLEtBQUssQ0FBQztRQUMvQyxDQUFDO0lBQ0gsQ0FBQztJQUVELDRDQUE0QztJQUM1QyxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUM7SUFDbkMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsWUFBWSxTQUFxRCxFQUFFLGdCQUE4QyxFQUFFO1FBQ2pILElBQUksQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDO1FBRXhCLHdEQUF3RDtRQUN4RCxNQUFNLEVBQUUsVUFBVSxFQUFFLEdBQUcsMEJBQTBCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFN0QsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksT0FBTyxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUM7WUFDbEQsUUFBUSxFQUFFLFVBQVUsQ0FBQyxXQUFXO1lBQ2hDLE1BQU0sRUFBRSxVQUFVLENBQUMsTUFBTTtZQUN6QixXQUFXLEVBQUUsVUFBVSxDQUFDLFdBQVc7WUFDbkMsY0FBYyxFQUFFLGFBQWEsQ0FBQyxjQUFjLElBQUksVUFBVSxDQUFDLGNBQWM7U0FDMUUsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQztRQUNwRCwwQkFBMEIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVNLEtBQUssQ0FBQyxZQUFZLENBQUMsYUFBcUI7UUFDN0MsTUFBTSxNQUFNLEdBQUcsTUFBTSxNQUFNLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQ3BFLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxLQUFLLENBQUMsWUFBWSxDQUFDLFVBQWtCO1FBQzFDLE1BQU0sTUFBTSxDQUFDLGtCQUFrQixDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRU0sS0FBSyxDQUFDLGVBQWUsQ0FBQyxhQUFxQjtRQUNoRCxPQUFPLE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxZQUFZLENBQUMsYUFBcUI7UUFDN0MsTUFBTSxPQUFPLEdBQUcsSUFBSSxPQUFPLENBQUMsRUFBRSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3RELE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM5RCxPQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxhQUFhLENBQUMsSUFBSSxLQUFLLENBQUM7SUFDakYsQ0FBQztJQUVEOztPQUVHO0lBQ0ksb0JBQW9CLENBQUMsZ0JBQXFDO1FBQy9ELElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQztZQUM1QyxNQUFNLElBQUksU0FBUyxDQUFDLDBEQUEwRCxDQUFDLENBQUM7UUFDbEYsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLGNBQWMsS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLHFEQUFxRCxJQUFJLENBQUMsY0FBYyxHQUFHLENBQUMsQ0FBQztRQUMvRixDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsK0JBQStCLEVBQUUsQ0FBQztZQUN6QyxNQUFNLElBQUksS0FBSyxDQUFDLDREQUE0RCxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7WUFDckQsTUFBTSxJQUFJLEtBQUssQ0FBQywyREFBMkQsQ0FBQyxDQUFDO1FBQy9FLENBQUM7UUFDRCxJQUNFLGdCQUFnQixLQUFLLElBQUksQ0FBQyxvQkFBb0I7WUFDOUMsZ0JBQWdCLEtBQUssSUFBSSxDQUFDLGtCQUFrQixFQUM1QyxDQUFDO1lBQ0QsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLENBQUMsK0JBQStCLEdBQUcsSUFBSSxDQUFDO1FBQzVDLElBQUksZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQzdCLElBQUksQ0FBQztZQUNILHVDQUF1QyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzlDLGdCQUFnQixHQUFHLElBQUksQ0FBQztZQUN4QixJQUFJLGdCQUFnQixLQUFLLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO2dCQUNqRCxNQUFNLDBCQUEwQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztnQkFDM0QsSUFBSSxDQUFDO29CQUNILDBCQUEwQixDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUN2QyxDQUFDO2dCQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7b0JBQ2YsbUVBQW1FO29CQUNuRSw2REFBNkQ7b0JBQzdELGdCQUFnQixHQUFHLEtBQUssQ0FBQztvQkFDekIsSUFBSSxDQUFDLGNBQWMsR0FBRyxTQUFTLENBQUM7b0JBQ2hDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztvQkFDdEIsSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQUM7b0JBQ2xDLElBQUksQ0FBQyx3QkFBd0IsR0FBRyw0QkFBNEIsQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDbkUsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQztvQkFDbEMsTUFBTSxLQUFLLENBQUM7Z0JBQ2QsQ0FBQztnQkFDRCxJQUFJLENBQUMscUJBQXFCLENBQUMsR0FBRyxDQUFDLDBCQUEwQixDQUFDLENBQUM7Z0JBQzNELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxnQkFBZ0IsQ0FBQztZQUM3QyxDQUFDO1lBQ0QsSUFBSSxDQUFDLG9CQUFvQixHQUFHLGdCQUFnQixDQUFDO1lBQzdDLDhCQUE4QixDQUFDLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1lBQ3ZELGdCQUFnQixHQUFHLEtBQUssQ0FBQztZQUN6QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQUM7UUFDcEMsQ0FBQztnQkFBUyxDQUFDO1lBQ1QsSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO2dCQUNyQix3Q0FBd0MsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNqRCxDQUFDO1lBQ0QsSUFBSSxDQUFDLCtCQUErQixHQUFHLEtBQUssQ0FBQztRQUMvQyxDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLGNBQWMsQ0FDekIsYUFBcUIsRUFDckIsYUFBMkMsRUFBRTtRQUU3QyxNQUFNLFNBQVMsR0FBRyxXQUFXLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDcEMsSUFDRSxPQUFPLGFBQWEsS0FBSyxRQUFRO1lBQ2pDLGFBQWEsQ0FBQyxNQUFNLEtBQUssQ0FBQztZQUMxQixhQUFhLENBQUMsSUFBSSxFQUFFLEtBQUssYUFBYSxFQUN0QyxDQUFDO1lBQ0QsTUFBTSxJQUFJLFNBQVMsQ0FBQywwREFBMEQsQ0FBQyxDQUFDO1FBQ2xGLENBQUM7UUFFRCxNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUMsU0FBUyxJQUFJLHlCQUF5QixDQUFDO1FBQ3BFLElBQ0UsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQztZQUNoQyxTQUFTLElBQUksQ0FBQztZQUNkLFNBQVMsR0FBRyx5QkFBeUIsRUFDckMsQ0FBQztZQUNELE1BQU0sSUFBSSxTQUFTLENBQ2pCLHVFQUF1RSx5QkFBeUIsR0FBRyxDQUNwRyxDQUFDO1FBQ0osQ0FBQztRQUVELE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQywyQkFBMkIsRUFBRSxDQUFDO1FBQzNELElBQUksZUFBZSxFQUFFLENBQUM7WUFDcEIsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsZUFBZSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ2pFLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQywrQkFBK0IsRUFBRSxDQUFDO1lBQ3pDLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLGFBQWEsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUMvRCxDQUFDO1FBRUQsTUFBTSxZQUFZLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQztRQUN2QyxJQUFJLFlBQVksRUFBRSxPQUFPLEVBQUUsQ0FBQztZQUMxQixPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDM0QsQ0FBQztRQUVELE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUM7UUFDM0MsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDO1FBQ2hELE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUNsRCxJQUFJLFdBQXlELENBQUM7UUFFOUQsTUFBTSxjQUFjLEdBQUcsR0FBUyxFQUFFO1lBQ2hDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDakIsV0FBVyxHQUFHLFFBQVEsQ0FBQztZQUN6QixDQUFDO1lBQ0QsbUJBQW1CLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDOUIsQ0FBQyxDQUFDO1FBRUYsWUFBWSxFQUFFLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUN4RSxNQUFNLGFBQWEsR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ3BDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDakIsV0FBVyxHQUFHLFVBQVUsQ0FBQztZQUMzQixDQUFDO1lBQ0QsbUJBQW1CLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDOUIsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ2QsSUFBSSxDQUFDLDBCQUEwQixDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBRXpELElBQUksV0FBNkMsQ0FBQztRQUNsRCxJQUFJLENBQUM7WUFDSCxXQUFXLEdBQUcsTUFBTSxJQUFJLENBQUMsa0JBQWtCLENBQ3pDLGFBQWEsRUFDYixhQUFhLEVBQ2IsbUJBQW1CLENBQUMsTUFBTSxDQUMzQixDQUFDO1FBQ0osQ0FBQztnQkFBUyxDQUFDO1lBQ1QsWUFBWSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQzVCLFlBQVksRUFBRSxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUFDLENBQUM7WUFDM0QsSUFBSSxDQUFDLDBCQUEwQixDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQzlELENBQUM7UUFFRCxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsdUJBQXVCLENBQUMsY0FBYyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQ2hGLElBQUksV0FBVyxFQUFFLENBQUM7WUFDaEIsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQzdELENBQUM7UUFDRCxJQUFJLFdBQVcsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUM5QixJQUFJLFdBQVcsS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDN0IsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQzNELENBQUM7WUFDRCxJQUFJLFdBQVcsS0FBSyxVQUFVLEVBQUUsQ0FBQztnQkFDL0IsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQzNELENBQUM7WUFDRCxPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxhQUFhLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDL0QsQ0FBQztRQUNELElBQUksV0FBVyxLQUFLLGFBQWEsRUFBRSxDQUFDO1lBQ2xDLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLGFBQWEsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUMvRCxDQUFDO1FBRUQsT0FBTztZQUNMLEtBQUssRUFBRSxJQUFJO1lBQ1gsTUFBTSxFQUFFLE9BQU87WUFDZixVQUFVLEVBQUUsV0FBVyxDQUFDLEdBQUcsRUFBRSxHQUFHLFNBQVM7U0FDMUMsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUs7UUFDVixJQUFJLElBQUksQ0FBQywrQkFBK0IsRUFBRSxDQUFDO1lBQ3pDLE1BQU0sSUFBSSxLQUFLLENBQUMseURBQXlELENBQUMsQ0FBQztRQUM3RSxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDdEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBQzNCLENBQUM7UUFFRCxJQUFJLFlBQXlCLENBQUM7UUFDOUIsSUFBSSxXQUF5QyxDQUFDO1FBQzlDLE1BQU0sWUFBWSxHQUFHLElBQUksT0FBTyxDQUFPLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ3pELFlBQVksR0FBRyxPQUFPLENBQUM7WUFDdkIsV0FBVyxHQUFHLE1BQU0sQ0FBQztRQUN2QixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO1FBRWpDLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUNoQyxJQUFJLENBQUMsY0FBYyxHQUFHLFNBQVMsQ0FBQztZQUNoQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQUM7WUFDbEMsSUFBSSxDQUFDLHdCQUF3QixHQUFHLDRCQUE0QixDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ25FLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLENBQUM7UUFDcEMsQ0FBQztRQUVELE1BQU0sV0FBVyxHQUFHLEdBQVMsRUFBRTtZQUM3QixJQUFJLENBQUM7Z0JBQ0gsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNsQywrQkFBK0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDdEMsSUFBSSxDQUFDLGNBQWMsR0FBRyxRQUFRLENBQUM7Z0JBQy9CLFlBQVksRUFBRSxDQUFDO1lBQ2pCLENBQUM7WUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO2dCQUNmLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNyQixDQUFDO1FBQ0gsQ0FBQyxDQUFDO1FBQ0YsSUFBSSxJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztZQUNsQyxLQUFLLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDdkQsQ0FBQzthQUFNLENBQUM7WUFDTixXQUFXLEVBQUUsQ0FBQztRQUNoQixDQUFDO1FBQ0QsS0FBSyxZQUFZLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRTtZQUMzQixJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssWUFBWSxFQUFFLENBQUM7Z0JBQ3ZDLElBQUksQ0FBQyxZQUFZLEdBQUcsU0FBUyxDQUFDO1lBQ2hDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFFTyxlQUFlLENBQUMsZ0JBQXlCO1FBQy9DLElBQUksT0FBTyxnQkFBZ0IsS0FBSyxRQUFRLElBQUksZ0JBQWdCLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDdEUsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBQ0QsTUFBTSxzQkFBc0IsR0FBRyxnQkFHOUIsQ0FBQztRQUNGLE9BQU8sQ0FDTCxPQUFPLHNCQUFzQixDQUFDLElBQUksS0FBSyxVQUFVO1lBQ2pELE9BQU8sc0JBQXNCLENBQUMsT0FBTyxLQUFLLFVBQVUsQ0FDckQsQ0FBQztJQUNKLENBQUM7SUFFTywwQkFBMEI7UUFDaEMsS0FBSyxNQUFNLG1CQUFtQixJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsMEJBQTBCLENBQUMsRUFBRSxDQUFDO1lBQ3ZFLG1CQUFtQixDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzlCLENBQUM7SUFDSCxDQUFDO0lBRU8sa0JBQWtCLENBQ3hCLGdCQUFxQyxFQUNyQyxhQUFxQixFQUNyQixTQUFzQjtRQUV0QixPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDN0IsSUFBSSxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ3BCLE1BQU0sTUFBTSxHQUFHLENBQUMsVUFBNEMsRUFBUSxFQUFFO2dCQUNwRSxJQUFJLE9BQU8sRUFBRSxDQUFDO29CQUNaLE9BQU87Z0JBQ1QsQ0FBQztnQkFDRCxPQUFPLEdBQUcsSUFBSSxDQUFDO2dCQUNmLFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztnQkFDNUQsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ3RCLENBQUMsQ0FBQztZQUNGLE1BQU0sbUJBQW1CLEdBQUcsR0FBUyxFQUFFO2dCQUNyQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDcEIsQ0FBQyxDQUFDO1lBRUYsU0FBUyxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ3pFLElBQUksU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUN0QixtQkFBbUIsRUFBRSxDQUFDO2dCQUN0QixPQUFPO1lBQ1QsQ0FBQztZQUVELElBQUksQ0FBQztnQkFDSCxNQUFNLGVBQWUsR0FBRyxnQkFBZ0IsQ0FBQyxJQUFJLENBQzNDLElBQUksT0FBTyxDQUFDLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztvQkFDL0IsTUFBTSxFQUFFLGFBQWE7aUJBQ3RCLENBQUMsRUFDRjtvQkFDRSxXQUFXLEVBQUUsU0FBUztpQkFDdkIsQ0FDRixDQUFDO2dCQUNGLEtBQUssZUFBZSxDQUFDLElBQUksQ0FDdkIsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUNyQixHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQzVCLENBQUM7WUFDSixDQUFDO1lBQUMsTUFBTSxDQUFDO2dCQUNQLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUN4QixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sMkJBQTJCO1FBR2pDLFFBQVEsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQzVCLEtBQUssTUFBTTtnQkFDVCxPQUFPLFNBQVMsQ0FBQztZQUNuQixLQUFLLFNBQVM7Z0JBQ1osT0FBTyxTQUFTLENBQUM7WUFDbkIsS0FBSyxRQUFRO2dCQUNYLE9BQU8sUUFBUSxDQUFDO1FBQ3BCLENBQUM7SUFDSCxDQUFDO0lBRU8sdUJBQXVCLENBQzdCLGlCQUF5QixFQUN6QixnQkFBcUM7UUFFckMsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUM7UUFDM0QsSUFBSSxlQUFlLEVBQUUsQ0FBQztZQUNwQixPQUFPLGVBQWUsQ0FBQztRQUN6QixDQUFDO1FBQ0QsSUFDRSxJQUFJLENBQUMsY0FBYyxLQUFLLGlCQUFpQjtZQUN6QyxJQUFJLENBQUMsb0JBQW9CLEtBQUssZ0JBQWdCLEVBQzlDLENBQUM7WUFDRCxPQUFPLGFBQWEsQ0FBQztRQUN2QixDQUFDO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVPLHNCQUFzQixDQUM1QixTQUE2QyxFQUM3QyxZQUFvQjtRQUVwQixPQUFPO1lBQ0wsS0FBSyxFQUFFLEtBQUs7WUFDWixNQUFNLEVBQUUsYUFBYTtZQUNyQixNQUFNLEVBQUUsU0FBUztZQUNqQixVQUFVLEVBQUUsV0FBVyxDQUFDLEdBQUcsRUFBRSxHQUFHLFlBQVk7U0FDN0MsQ0FBQztJQUNKLENBQUM7Q0FDRiJ9
363
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3Nlcy5zbWFydGJ1Y2tldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzL29iamVjdHN0b3JhZ2UvY2xhc3Nlcy5zbWFydGJ1Y2tldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx5QkFBeUI7QUFFekIsT0FBTyxLQUFLLE9BQU8sTUFBTSxjQUFjLENBQUM7QUFDeEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzdDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQ0wsNEJBQTRCLEVBQzVCLDhCQUE4QixFQUM5QiwrQkFBK0IsRUFDL0IsMEJBQTBCLEVBQzFCLHVDQUF1QyxFQUN2Qyx3Q0FBd0MsR0FDekMsTUFBTSxzQ0FBc0MsQ0FBQztBQVk5QyxNQUFNLHlCQUF5QixHQUFHLEtBQUssQ0FBQztBQUN4QyxNQUFNLHlCQUF5QixHQUFHLE1BQU0sQ0FBQztBQUV6QyxNQUFNLE9BQU8sV0FBVztJQUNmLE1BQU0sQ0FBNkM7SUFFbEQsb0JBQW9CLENBQXNCO0lBQzFDLGtCQUFrQixDQUFzQjtJQUN4QyxjQUFjLEdBQStCLE1BQU0sQ0FBQztJQUNwRCxjQUFjLEdBQUcsQ0FBQyxDQUFDO0lBQ25CLDBCQUEwQixHQUFHLElBQUksR0FBRyxFQUFtQixDQUFDO0lBQ3hELHFCQUFxQixHQUFHLElBQUksT0FBTyxFQUF1QixDQUFDO0lBQzNELCtCQUErQixHQUFHLEtBQUssQ0FBQztJQUN4QyxZQUFZLENBQTRCO0lBQ3hDLHFCQUFxQixHQUFHLEtBQUssQ0FBQztJQUM5Qix3QkFBd0IsQ0FBNEI7SUFFNUQ7O09BRUc7SUFDSCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUM7SUFDbkMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBVyxhQUFhLENBQUMs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
@@ -69,7 +69,6 @@ export class BucketWatcher extends EventEmitter {
69
69
  */
70
70
  async start() {
71
71
  if (this.pollIntervalId !== null) {
72
- console.log('BucketWatcher is already running');
73
72
  return;
74
73
  }
75
74
  this.isStopped = false;
@@ -246,4 +245,4 @@ export class BucketWatcher extends EventEmitter {
246
245
  } while (continuationToken);
247
246
  }
248
247
  }
249
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3Nlcy53YXRjaGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdHMvb2JqZWN0c3RvcmFnZS9jbGFzc2VzLndhdGNoZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEscUJBQXFCO0FBRXJCLE9BQU8sS0FBSyxPQUFPLE1BQU0sY0FBYyxDQUFDO0FBQ3hDLE9BQU8sS0FBSyxVQUFVLE1BQU0saUJBQWlCLENBQUM7QUFFOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUUzQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F1Qkc7QUFDSCxNQUFNLE9BQU8sYUFBYyxTQUFRLFlBQVk7SUFDN0MsOEVBQThFO0lBQ3ZFLGFBQWEsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBRXBELHVFQUF1RTtJQUNoRSxhQUFhLENBQXFHO0lBRXpILDhCQUE4QjtJQUN0QixVQUFVLENBQStEO0lBQ3pFLGFBQWEsQ0FBOEM7SUFDM0QsY0FBYyxHQUEwQyxJQUFJLENBQUM7SUFDN0QsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUNsQixTQUFTLEdBQUcsS0FBSyxDQUFDO0lBRTFCLGdCQUFnQjtJQUNDLFNBQVMsQ0FBUztJQUNsQixNQUFNLENBQVM7SUFDZixjQUFjLENBQVM7SUFDdkIsWUFBWSxDQUFVO0lBQ3RCLGNBQWMsQ0FBVTtJQUN4QixRQUFRLENBQVM7SUFFbEMsWUFBWSxTQUFpQixFQUFFLFVBQTRDLEVBQUU7UUFDM0UsS0FBSyxFQUFFLENBQUM7UUFFUixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUMzQixJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDO1FBQ25DLElBQUksQ0FBQyxjQUFjLEdBQUcsT0FBTyxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUM7UUFDckQsSUFBSSxDQUFDLFlBQVksR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFD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
248
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3Nlcy53YXRjaGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdHMvb2JqZWN0c3RvcmFnZS9jbGFzc2VzLndhdGNoZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEscUJBQXFCO0FBRXJCLE9BQU8sS0FBSyxPQUFPLE1BQU0sY0FBYyxDQUFDO0FBQ3hDLE9BQU8sS0FBSyxVQUFVLE1BQU0saUJBQWlCLENBQUM7QUFFOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUUzQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F1Qkc7QUFDSCxNQUFNLE9BQU8sYUFBYyxTQUFRLFlBQVk7SUFDN0MsOEVBQThFO0lBQ3ZFLGFBQWEsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBRXBELHVFQUF1RTtJQUNoRSxhQUFhLENBQXFHO0lBRXpILDhCQUE4QjtJQUN0QixVQUFVLENBQStEO0lBQ3pFLGFBQWEsQ0FBOEM7SUFDM0QsY0FBYyxHQUEwQyxJQUFJLENBQUM7SUFDN0QsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUNsQixTQUFTLEdBQUcsS0FBSyxDQUFDO0lBRTFCLGdCQUFnQjtJQUNDLFNBQVMsQ0FBUztJQUNsQixNQUFNLENBQVM7SUFDZixjQUFjLENBQVM7SUFDdkIsWUFBWSxDQUFVO0lBQ3RCLGNBQWMsQ0FBVTtJQUN4QixRQUFRLENBQVM7SUFFbEMsWUFBWSxTQUFpQixFQUFFLFVBQTRDLEVBQUU7UUFDM0UsS0FBSyxFQUFFLENBQUM7UUFFUixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUMzQixJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDO1FBQ25DLElBQUksQ0FBQyxjQUFjLEdBQUcsT0FBTyxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUM7UUFDckQsSUFBSSxDQUFDLFlBQVksR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFD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
@@ -42,6 +42,14 @@ export interface IDirectoryFastPutStreamOptions {
42
42
  contentLength?: number;
43
43
  signal?: AbortSignal;
44
44
  }
45
+ /**
46
+ * Options for a request about a bucket itself: `getBucketByName()`,
47
+ * `bucketExists()`, `createBucket()` and `removeBucket()`.
48
+ */
49
+ export interface IBucketRequestOptions {
50
+ /** Optional caller-owned cancellation signal */
51
+ signal?: AbortSignal;
52
+ }
45
53
  /**
46
54
  * Options for a bounded, read-only bucket readiness check.
47
55
  */
@@ -0,0 +1,14 @@
1
+ import * as plugins from './plugins.js';
2
+ import type { SmartBucket } from './classes.smartbucket.js';
3
+ /**
4
+ * Sends one account-scoped request under the SmartBucket lifecycle. The
5
+ * caller's signal and `SmartBucket.close()` abort the in-flight SDK request.
6
+ */
7
+ export declare const runAccountRequest: <T>(smartbucketRefArg: SmartBucket, signalArg: AbortSignal | undefined, sendArg: (clientArg: plugins.s3.S3Client, abortSignalArg: AbortSignal) => Promise<T>) => Promise<T>;
8
+ /**
9
+ * Answers whether the bucket exists with one HeadBucket request, which a
10
+ * bucket-scoped credential may send for its own bucket. A missing bucket
11
+ * resolves `false`; a bucket the credentials may not access rejects, because
12
+ * S3 does not say whether it exists.
13
+ */
14
+ export declare const headBucketExists: (smartbucketRefArg: SmartBucket, bucketNameArg: string, signalArg: AbortSignal | undefined) => Promise<boolean>;
@@ -0,0 +1,53 @@
1
+ import * as plugins from './plugins.js';
2
+ import { beginAccountOperation } from './internal.exactupload.capability.js';
3
+ /**
4
+ * Sends one account-scoped request under the SmartBucket lifecycle. The
5
+ * caller's signal and `SmartBucket.close()` abort the in-flight SDK request.
6
+ */
7
+ export const runAccountRequest = async (smartbucketRefArg, signalArg, sendArg) => {
8
+ const operation = beginAccountOperation(smartbucketRefArg, signalArg);
9
+ try {
10
+ return await operation.runProvider(() => sendArg(operation.client, operation.signal));
11
+ }
12
+ finally {
13
+ operation.finish();
14
+ }
15
+ };
16
+ const getProviderStatus = (errorArg) => {
17
+ if (typeof errorArg !== 'object' || errorArg === null) {
18
+ return {};
19
+ }
20
+ const providerError = errorArg;
21
+ return {
22
+ name: typeof providerError.name === 'string' ? providerError.name : undefined,
23
+ httpStatusCode: typeof providerError.$metadata?.httpStatusCode === 'number'
24
+ ? providerError.$metadata.httpStatusCode
25
+ : undefined,
26
+ };
27
+ };
28
+ /**
29
+ * Answers whether the bucket exists with one HeadBucket request, which a
30
+ * bucket-scoped credential may send for its own bucket. A missing bucket
31
+ * resolves `false`; a bucket the credentials may not access rejects, because
32
+ * S3 does not say whether it exists.
33
+ */
34
+ export const headBucketExists = async (smartbucketRefArg, bucketNameArg, signalArg) => {
35
+ try {
36
+ await runAccountRequest(smartbucketRefArg, signalArg, (clientArg, abortSignalArg) => clientArg.send(new plugins.s3.HeadBucketCommand({ Bucket: bucketNameArg }), {
37
+ abortSignal: abortSignalArg,
38
+ }));
39
+ return true;
40
+ }
41
+ catch (error) {
42
+ const { name, httpStatusCode } = getProviderStatus(error);
43
+ if (httpStatusCode === 404 || name === 'NotFound' || name === 'NoSuchBucket') {
44
+ return false;
45
+ }
46
+ if (httpStatusCode === 403 || name === 'Forbidden' || name === 'AccessDenied') {
47
+ throw new Error(`Access to bucket '${bucketNameArg}' was denied (HTTP 403): the credentials may not ` +
48
+ `read this bucket, or it belongs to another account.`, { cause: error });
49
+ }
50
+ throw error;
51
+ }
52
+ };
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwuYnVja2V0cmVxdWVzdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90cy9vYmplY3RzdG9yYWdlL2ludGVybmFsLmJ1Y2tldHJlcXVlc3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sY0FBYyxDQUFDO0FBRXhDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRTdFOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLEtBQUssRUFDcEMsaUJBQThCLEVBQzlCLFNBQWtDLEVBQ2xDLE9BQW9GLEVBQ3hFLEVBQUU7SUFDZCxNQUFNLFNBQVMsR0FBRyxxQkFBcUIsQ0FBQyxpQkFBaUIsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUN0RSxJQUFJLENBQUM7UUFDSCxPQUFPLE1BQU0sU0FBUyxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUN4RixDQUFDO1lBQVMsQ0FBQztRQUNULFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNyQixDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLFFBQWlCLEVBQThDLEVBQUU7SUFDMUYsSUFBSSxPQUFPLFFBQVEsS0FBSyxRQUFRLElBQUksUUFBUSxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ3RELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUNELE1BQU0sYUFBYSxHQUFHLFFBR3JCLENBQUM7SUFDRixPQUFPO1FBQ0wsSUFBSSxFQUFFLE9BQU8sYUFBYSxDQUFDLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVM7UUFDN0UsY0FBYyxFQUFFLE9BQU8sYUFBYSxDQUFDLFNBQVMsRUFBRSxjQUFjLEtBQUssUUFBUTtZQUN6RSxDQUFDLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxjQUFjO1lBQ3hDLENBQUMsQ0FBQyxTQUFTO0tBQ2QsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGOzs7OztHQUtHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsS0FBSyxFQUNuQyxpQkFBOEIsRUFDOUIsYUFBcUIsRUFDckIsU0FBa0MsRUFDaEIsRUFBRTtJQUNwQixJQUFJLENBQUM7UUFDSCxNQUFNLGlCQUFpQixDQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxDQUFDLFNBQVMsRUFBRSxjQUFjLEVBQUUsRUFBRSxDQUNsRixTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksT0FBTyxDQUFDLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLE1BQU0sRUFBRSxhQUFhLEVBQUUsQ0FBQyxFQUFFO1lBQzFFLFdBQVcsRUFBRSxjQUFjO1NBQzVCLENBQUMsQ0FDSCxDQUFDO1FBQ0YsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE1BQU0sRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLEdBQUcsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUQsSUFBSSxjQUFjLEtBQUssR0FBRyxJQUFJLElBQUksS0FBSyxVQUFVLElBQUksSUFBSSxLQUFLLGNBQWMsRUFBRSxDQUFDO1lBQzdFLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztRQUNELElBQUksY0FBYyxLQUFLLEdBQUcsSUFBSSxJQUFJLEtBQUssV0FBVyxJQUFJLElBQUksS0FBSyxjQUFjLEVBQUUsQ0FBQztZQUM5RSxNQUFNLElBQUksS0FBSyxDQUNiLHFCQUFxQixhQUFhLG1EQUFtRDtnQkFDckYscURBQXFELEVBQ3JELEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUNqQixDQUFDO1FBQ0osQ0FBQztRQUNELE1BQU0sS0FBSyxDQUFDO0lBQ2QsQ0FBQztBQUNILENBQUMsQ0FBQyJ9
@@ -24,12 +24,24 @@ export interface IBasicBucketOperation extends IExactUploadOperation {
24
24
  export interface IExactPathPurgeOperation extends IExactUploadOperation {
25
25
  readonly versioningMode: TExactPathPurgeVersioningMode;
26
26
  }
27
+ /**
28
+ * A lifecycle-managed provider request that addresses the storage account
29
+ * rather than one bucket reference, such as a bucket lookup or creation.
30
+ */
31
+ export interface IAccountOperation extends Omit<IBasicBucketOperation, 'bucketName'> {
32
+ }
27
33
  export declare const registerOperationLifecycle: (smartbucketRefArg: ISmartBucketCapabilityRef, storageClientArg: plugins.s3.S3Client) => void;
28
34
  export declare const reserveOperationLifecycleClientMutation: (smartbucketRefArg: ISmartBucketCapabilityRef) => void;
29
35
  export declare const commitOperationLifecycleClient: (smartbucketRefArg: ISmartBucketCapabilityRef, storageClientArg: plugins.s3.S3Client) => void;
30
36
  export declare const rollbackOperationLifecycleClientMutation: (smartbucketRefArg: ISmartBucketCapabilityRef) => void;
31
37
  export declare const beginOperationLifecycleClose: (smartbucketRefArg: ISmartBucketCapabilityRef) => Promise<void> | undefined;
32
38
  export declare const completeOperationLifecycleClose: (smartbucketRefArg: ISmartBucketCapabilityRef) => void;
39
+ /**
40
+ * Begins an account-scoped request under the SmartBucket lifecycle: the
41
+ * caller's signal and `SmartBucket.close()` both abort it, close waits for it,
42
+ * and the storage client cannot change while it is active.
43
+ */
44
+ export declare const beginAccountOperation: (smartbucketRefArg: ISmartBucketCapabilityRef, callerSignalArg?: AbortSignal) => IAccountOperation;
33
45
  export declare const beginBasicBucketOperation: (bucketRefArg: IBucketCapabilityRef, callerSignalArg?: AbortSignal) => IBasicBucketOperation;
34
46
  export declare const beginExactUploadProbeOperation: (bucketRefArg: IBucketCapabilityRef, callerSignalArg?: AbortSignal) => IExactUploadOperation;
35
47
  export declare const beginExactPathPurgeProbeOperation: (bucketRefArg: IBucketCapabilityRef, callerSignalArg?: AbortSignal) => IExactUploadOperation;
@@ -11,10 +11,11 @@ const abortAndDisposeIndependentWork = (activeOperationArg, causeArg) => {
11
11
  }
12
12
  activeOperationArg.ownedIndependentAborts.clear();
13
13
  };
14
- const getLifecycleRecord = (smartbucketRefArg) => {
14
+ const bucketDetachedMessage = 'The Bucket is not attached to a lifecycle-managed SmartBucket.';
15
+ const getLifecycleRecord = (smartbucketRefArg, detachedMessageArg = bucketDetachedMessage) => {
15
16
  const lifecycleRecord = lifecycleRecords.get(smartbucketRefArg);
16
17
  if (!lifecycleRecord) {
17
- throw new Error('The Bucket is not attached to a lifecycle-managed SmartBucket.');
18
+ throw new Error(detachedMessageArg);
18
19
  }
19
20
  return lifecycleRecord;
20
21
  };
@@ -68,9 +69,11 @@ export const beginOperationLifecycleClose = (smartbucketRefArg) => {
68
69
  }
69
70
  lifecycleRecord.state = 'closing';
70
71
  lifecycleRecord.generation++;
71
- const lifecycleAbortCause = new Error('The SmartBucket lifecycle closed during an object operation.');
72
+ const lifecycleAbortCauses = new Map();
72
73
  const activeSettlements = [];
73
74
  for (const activeOperation of lifecycleRecord.activeOperations) {
75
+ const lifecycleAbortCause = new Error(activeOperation.closedDuringMessage);
76
+ lifecycleAbortCauses.set(activeOperation, lifecycleAbortCause);
74
77
  activeSettlements.push(activeOperation.settlement);
75
78
  activeOperation.abortController.abort(lifecycleAbortCause);
76
79
  }
@@ -81,7 +84,8 @@ export const beginOperationLifecycleClose = (smartbucketRefArg) => {
81
84
  return new Promise((resolveArg) => {
82
85
  const settlementDeadline = setTimeout(() => {
83
86
  for (const activeOperation of lifecycleRecord.activeOperations) {
84
- activeOperation.forceFinish(lifecycleAbortCause);
87
+ activeOperation.forceFinish(lifecycleAbortCauses.get(activeOperation)
88
+ ?? new Error(activeOperation.closedDuringMessage));
85
89
  }
86
90
  resolveArg();
87
91
  }, operationCloseSettlementTimeoutMs);
@@ -99,20 +103,32 @@ export const completeOperationLifecycleClose = (smartbucketRefArg) => {
99
103
  }
100
104
  lifecycleRecords.delete(smartbucketRefArg);
101
105
  };
102
- const assertBindingCurrent = (bindingArg) => {
103
- const lifecycleRecord = getLifecycleRecord(bindingArg.smartbucketRef);
106
+ const bucketIdentity = (bindingArg) => ({
107
+ isCurrent: () => bindingArg.bucketRef.smartbucketRef === bindingArg.smartbucketRef &&
108
+ bindingArg.bucketRef.name === bindingArg.bucketName,
109
+ staleMessage: 'The exact upload capability is invalid or stale.',
110
+ detachedMessage: bucketDetachedMessage,
111
+ closedDuringMessage: 'The SmartBucket lifecycle closed during an object operation.',
112
+ });
113
+ const accountIdentity = {
114
+ isCurrent: () => true,
115
+ staleMessage: 'The bucket request is stale.',
116
+ detachedMessage: 'The SmartBucket is closed; the bucket request was not sent.',
117
+ closedDuringMessage: 'The SmartBucket lifecycle closed during a bucket request.',
118
+ };
119
+ const assertBindingCurrent = (bindingArg, identityArg) => {
120
+ const lifecycleRecord = getLifecycleRecord(bindingArg.smartbucketRef, identityArg.detachedMessage);
104
121
  assertOpenLifecycle(lifecycleRecord);
105
- if (bindingArg.bucketRef.smartbucketRef !== bindingArg.smartbucketRef ||
106
- bindingArg.bucketRef.name !== bindingArg.bucketName ||
122
+ if (!identityArg.isCurrent() ||
107
123
  lifecycleRecord.generation !== bindingArg.lifecycleGeneration ||
108
124
  lifecycleRecord.storageClient !== bindingArg.storageClient ||
109
125
  bindingArg.smartbucketRef.storageClient !== bindingArg.storageClient) {
110
- throw new Error('The exact upload capability is invalid or stale.');
126
+ throw new Error(identityArg.staleMessage);
111
127
  }
112
128
  };
113
- const beginOperation = (bindingArg, callerSignalArg) => {
114
- assertBindingCurrent(bindingArg);
115
- const lifecycleRecord = getLifecycleRecord(bindingArg.smartbucketRef);
129
+ const beginLifecycleOperation = (bindingArg, identityArg, callerSignalArg) => {
130
+ assertBindingCurrent(bindingArg, identityArg);
131
+ const lifecycleRecord = getLifecycleRecord(bindingArg.smartbucketRef, identityArg.detachedMessage);
116
132
  const operationAbortController = new AbortController();
117
133
  let settleOperation;
118
134
  const operationSettlement = new Promise((resolveArg) => {
@@ -143,6 +159,7 @@ const beginOperation = (bindingArg, callerSignalArg) => {
143
159
  };
144
160
  const activeOperation = {
145
161
  abortController: operationAbortController,
162
+ closedDuringMessage: identityArg.closedDuringMessage,
146
163
  ownedIndependentAborts: new Set(),
147
164
  settlement: operationSettlement,
148
165
  settle: settleOperation,
@@ -163,7 +180,6 @@ const beginOperation = (bindingArg, callerSignalArg) => {
163
180
  abortForCaller();
164
181
  }
165
182
  return {
166
- bucketName: bindingArg.bucketName,
167
183
  client: bindingArg.storageClient,
168
184
  signal: operationAbortController.signal,
169
185
  registerOwnedIndependentAbort(abortControllerArg, disposeArg) {
@@ -185,8 +201,7 @@ const beginOperation = (bindingArg, callerSignalArg) => {
185
201
  assertLifecycleCurrent() {
186
202
  if (lifecycleRecord.state === 'closed' ||
187
203
  !lifecycleRecord.activeOperations.has(activeOperation) ||
188
- bindingArg.bucketRef.smartbucketRef !== bindingArg.smartbucketRef ||
189
- bindingArg.bucketRef.name !== bindingArg.bucketName ||
204
+ !identityArg.isCurrent() ||
190
205
  lifecycleRecord.storageClient !== bindingArg.storageClient ||
191
206
  bindingArg.smartbucketRef.storageClient !== bindingArg.storageClient) {
192
207
  throw new Error('The object operation lifecycle or storage client is stale.');
@@ -196,7 +211,7 @@ const beginOperation = (bindingArg, callerSignalArg) => {
196
211
  if (operationAbortController.signal.aborted) {
197
212
  throw operationAbortController.signal.reason;
198
213
  }
199
- assertBindingCurrent(bindingArg);
214
+ assertBindingCurrent(bindingArg, identityArg);
200
215
  },
201
216
  runProvider(sendArg, optionsArg = {}) {
202
217
  this.assertCurrent();
@@ -289,6 +304,20 @@ const beginOperation = (bindingArg, callerSignalArg) => {
289
304
  },
290
305
  };
291
306
  };
307
+ const beginOperation = (bindingArg, callerSignalArg) => Object.assign(beginLifecycleOperation(bindingArg, bucketIdentity(bindingArg), callerSignalArg), { bucketName: bindingArg.bucketName });
308
+ /**
309
+ * Begins an account-scoped request under the SmartBucket lifecycle: the
310
+ * caller's signal and `SmartBucket.close()` both abort it, close waits for it,
311
+ * and the storage client cannot change while it is active.
312
+ */
313
+ export const beginAccountOperation = (smartbucketRefArg, callerSignalArg) => {
314
+ const lifecycleRecord = getLifecycleRecord(smartbucketRefArg, accountIdentity.detachedMessage);
315
+ return beginLifecycleOperation({
316
+ smartbucketRef: smartbucketRefArg,
317
+ storageClient: lifecycleRecord.storageClient,
318
+ lifecycleGeneration: lifecycleRecord.generation,
319
+ }, accountIdentity, callerSignalArg);
320
+ };
292
321
  export const beginBasicBucketOperation = (bucketRefArg, callerSignalArg) => {
293
322
  const smartbucketRef = bucketRefArg.smartbucketRef;
294
323
  const lifecycleRecord = getLifecycleRecord(smartbucketRef);
@@ -379,4 +408,4 @@ export const beginExactPathPurgeCapabilityOperation = (bucketRefArg, capabilityA
379
408
  versioningMode: binding.versioningMode,
380
409
  };
381
410
  };
382
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwuZXhhY3R1cGxvYWQuY2FwYWJpbGl0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzL29iamVjdHN0b3JhZ2UvaW50ZXJuYWwuZXhhY3R1cGxvYWQuY2FwYWJpbGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLGNBQWMsQ0FBQztBQThFeEMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLE9BQU8sRUFHakMsQ0FBQztBQUNKLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxPQUFPLEVBR25DLENBQUM7QUFDSixNQUFNLHVCQUF1QixHQUFHLElBQUksT0FBTyxFQUd4QyxDQUFDO0FBQ0osTUFBTSxpQ0FBaUMsR0FBRyxNQUFNLENBQUM7QUFDakQsTUFBTSxtQ0FBbUMsR0FBRyxLQUFLLENBQUM7QUFFbEQsTUFBTSw4QkFBOEIsR0FBRyxDQUNyQyxrQkFBOEMsRUFDOUMsUUFBaUIsRUFDWCxFQUFFO0lBQ1IsS0FBSyxNQUFNLFVBQVUsSUFBSSxrQkFBa0IsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBQ25FLFVBQVUsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzNDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBQ0Qsa0JBQWtCLENBQUMsc0JBQXNCLENBQUMsS0FBSyxFQUFFLENBQUM7QUFDcEQsQ0FBQyxDQUFDO0FBRUYsTUFBTSxrQkFBa0IsR0FBRyxDQUN6QixpQkFBNEMsRUFDaEIsRUFBRTtJQUM5QixNQUFNLGVBQWUsR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNoRSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDckIsTUFBTSxJQUFJLEtBQUssQ0FDYixnRUFBZ0UsQ0FDakUsQ0FBQztJQUNKLENBQUM7SUFDRCxPQUFPLGVBQWUsQ0FBQztBQUN6QixDQUFDLENBQUM7QUFFRixNQUFN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
411
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwuZXhhY3R1cGxvYWQuY2FwYWJpbGl0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3RzL29iamVjdHN0b3JhZ2UvaW50ZXJuYWwuZXhhY3R1cGxvYWQuY2FwYWJpbGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLGNBQWMsQ0FBQztBQXFHeEMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLE9BQU8sRUFHakMsQ0FBQztBQUNKLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxPQUFPLEVBR25DLENBQUM7QUFDSixNQUFNLHVCQUF1QixHQUFHLElBQUksT0FBTyxFQUd4QyxDQUFDO0FBQ0osTUFBTSxpQ0FBaUMsR0FBRyxNQUFNLENBQUM7QUFDakQsTUFBTSxtQ0FBbUMsR0FBRyxLQUFLLENBQUM7QUFFbEQsTUFBTSw4QkFBOEIsR0FBRyxDQUNyQyxrQkFBOEMsRUFDOUMsUUFBaUIsRUFDWCxFQUFFO0lBQ1IsS0FBSyxNQUFNLFVBQVUsSUFBSSxrQkFBa0IsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBQ25FLFVBQVUsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzNDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBQ0Qsa0JBQWtCLENBQUMsc0JBQXNCLENBQUMsS0FBSyxFQUFFLENBQUM7QUFDcEQsQ0FBQyxDQUFDO0FBRUYsTUFBTSxxQkFBcUIsR0FBRyxnRUFBZ0UsQ0FBQztBQUUvRixNQUFNLGtCQUFrQixHQUFHLENBQ3pCLGlCQUE0QyxFQUM1QyxrQkFBa0IsR0FBRyxxQkFBcUIsRUFDZCxFQUFFO0lBQzlCLE1BQU0sZUFBZSxHQUFHLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ2hFLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUNyQixNQUFNLElBQUksS0FBSyxDQUFDLGtCQUFrQixDQUFDLENB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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lossless.org/client",
3
- "version": "1.7.0",
3
+ "version": "1.9.0",
4
4
  "private": false,
5
5
  "description": "One typed client for NoSQLDB, MongoDB, SQLDB, MariaDB, ClickHouse and S3 object storage.",
6
6
  "exports": {
@@ -85,7 +85,7 @@
85
85
  "@git.zone/tsrun": "3.0.0",
86
86
  "@git.zone/tstest": "6.3.0",
87
87
  "@lossless.org/nosqldb": "8.0.2",
88
- "@lossless.org/nosqldb-qualified": "npm:@lossless.org/nosqldb@10.6.0",
88
+ "@lossless.org/nosqldb-qualified": "npm:@lossless.org/nosqldb@10.7.0",
89
89
  "@lossless.org/objectstorage": "10.3.1",
90
90
  "@lossless.org/sqldb": "0.2.3",
91
91
  "@push.rocks/qenv": "^6.1.3",