@lossless.org/client 1.6.0 → 1.8.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.
- package/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/nosqldb/classes.atomicdelete.d.ts +1 -0
- package/dist_ts/nosqldb/classes.atomicdelete.js +10 -7
- package/dist_ts/nosqldb/classes.atomicfindoneandupdate.d.ts +2 -0
- package/dist_ts/nosqldb/classes.atomicfindoneandupdate.js +9 -5
- package/dist_ts/nosqldb/classes.atomicupdate.d.ts +2 -0
- package/dist_ts/nosqldb/classes.atomicupdate.js +13 -8
- package/dist_ts/nosqldb/classes.collection.d.ts +13 -4
- package/dist_ts/nosqldb/classes.collection.js +57 -64
- package/dist_ts/nosqldb/classes.db.d.ts +1 -1
- package/dist_ts/nosqldb/classes.doc.d.ts +60 -3
- package/dist_ts/nosqldb/classes.doc.js +68 -26
- package/dist_ts/nosqldb/classes.exactpersistence.d.ts +36 -7
- package/dist_ts/nosqldb/classes.exactpersistence.js +92 -81
- package/dist_ts/nosqldb/classes.operationdeadline.d.ts +61 -0
- package/dist_ts/nosqldb/classes.operationdeadline.js +149 -0
- package/dist_ts/nosqldb/classes.persistence.d.ts +16 -1
- package/dist_ts/nosqldb/classes.persistence.js +20 -1
- package/dist_ts/nosqldb/classes.session.d.ts +73 -2
- package/dist_ts/nosqldb/classes.session.js +164 -38
- package/dist_ts/objectstorage/classes.bucket.d.ts +61 -3
- package/dist_ts/objectstorage/classes.bucket.js +243 -184
- package/dist_ts/objectstorage/classes.directory.js +17 -28
- package/dist_ts/objectstorage/classes.smartbucket.d.ts +13 -6
- package/dist_ts/objectstorage/classes.smartbucket.js +18 -12
- package/dist_ts/objectstorage/classes.watcher.js +1 -2
- package/dist_ts/objectstorage/interfaces.d.ts +8 -0
- package/dist_ts/objectstorage/internal.bucketrequests.d.ts +14 -0
- package/dist_ts/objectstorage/internal.bucketrequests.js +53 -0
- package/dist_ts/objectstorage/internal.exactupload.capability.d.ts +12 -0
- package/dist_ts/objectstorage/internal.exactupload.capability.js +46 -17
- package/package.json +3 -3
- package/readme.md +13 -2
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/nosqldb/classes.atomicdelete.ts +10 -6
- package/ts/nosqldb/classes.atomicfindoneandupdate.ts +10 -4
- package/ts/nosqldb/classes.atomicupdate.ts +14 -7
- package/ts/nosqldb/classes.collection.ts +82 -73
- package/ts/nosqldb/classes.db.ts +1 -1
- package/ts/nosqldb/classes.doc.ts +162 -33
- package/ts/nosqldb/classes.exactpersistence.ts +131 -93
- package/ts/nosqldb/classes.operationdeadline.ts +179 -0
- package/ts/nosqldb/classes.persistence.ts +36 -1
- package/ts/nosqldb/classes.session.ts +221 -39
- package/ts/objectstorage/classes.bucket.ts +350 -218
- package/ts/objectstorage/classes.directory.ts +18 -27
- package/ts/objectstorage/classes.smartbucket.ts +21 -11
- package/ts/objectstorage/classes.watcher.ts +0 -1
- package/ts/objectstorage/interfaces.ts +9 -0
- package/ts/objectstorage/internal.bucketrequests.ts +70 -0
- package/ts/objectstorage/internal.exactupload.capability.ts +105 -24
|
@@ -73,7 +73,21 @@ export interface IExactSessionOptions {
|
|
|
73
73
|
export interface IExactReadOptions extends IExactSessionOptions {
|
|
74
74
|
signal?: AbortSignal;
|
|
75
75
|
}
|
|
76
|
-
|
|
76
|
+
/**
|
|
77
|
+
* Options of every exact call: `insert()`, `transition()`, `delete()`,
|
|
78
|
+
* `count()`, `distinct()` and `findStoredOne()`, and through
|
|
79
|
+
* `IFindStoredOptions` `findStored()`.
|
|
80
|
+
*/
|
|
81
|
+
export interface IExactBoundedOptions extends IExactReadOptions {
|
|
82
|
+
/**
|
|
83
|
+
* Client deadline (1..120000 ms), handed to the driver as its client-side
|
|
84
|
+
* operation timeout for every command of the call, including the wait for
|
|
85
|
+
* the lazy first-touch preparation. Inside a transaction with a deadline it
|
|
86
|
+
* is refused; the transaction's deadline bounds the call.
|
|
87
|
+
*/
|
|
88
|
+
timeoutMS?: number;
|
|
89
|
+
}
|
|
90
|
+
export interface IFindStoredOptions<TPersisted extends object> extends IExactBoundedOptions {
|
|
77
91
|
filter?: MongoFilter<TStoredDocument<TPersisted>>;
|
|
78
92
|
sort?: Partial<Record<TExactDocumentPath<TStoredDocument<TPersisted>>, 1 | -1>>;
|
|
79
93
|
skip?: number;
|
|
@@ -102,7 +116,22 @@ export declare class SmartdataExactCollection<TModel extends SmartDataDbDoc<any,
|
|
|
102
116
|
private initializeOnce;
|
|
103
117
|
prepare(): Promise<void>;
|
|
104
118
|
private beginOperation;
|
|
119
|
+
/**
|
|
120
|
+
* Runs one exact call on its session lease under its client deadline and
|
|
121
|
+
* signal. A signal that is already aborted rejects with its reason before
|
|
122
|
+
* anything is sent. An expired driver deadline surfaces as the `timeout`
|
|
123
|
+
* persistence error; a write the deadline or signal interrupts in flight
|
|
124
|
+
* is reported by the write itself as `ambiguous_write`, and inside a
|
|
125
|
+
* transaction any interruption fails the attempt.
|
|
126
|
+
*/
|
|
105
127
|
private runOperation;
|
|
128
|
+
/**
|
|
129
|
+
* The error of a non-transactional write that its client deadline or
|
|
130
|
+
* signal interrupted after the write was handed to the driver: the command
|
|
131
|
+
* may have reached the database, so its outcome is unknown and no
|
|
132
|
+
* reconciliation read runs on the interrupted call's budget.
|
|
133
|
+
*/
|
|
134
|
+
private interruptedWriteError;
|
|
106
135
|
private canonicalizeDocument;
|
|
107
136
|
private assertAllowedTopLevelKeys;
|
|
108
137
|
private canonicalizePersistedDocument;
|
|
@@ -119,20 +148,20 @@ export declare class SmartdataExactCollection<TModel extends SmartDataDbDoc<any,
|
|
|
119
148
|
private ambiguousWriteError;
|
|
120
149
|
private canonicalizeDeleteCurrent;
|
|
121
150
|
private reconcileDeleteOutcome;
|
|
122
|
-
insert(documentArg: TModel | TExactPersistedDocument<TPersisted>, optionsArg?:
|
|
151
|
+
insert(documentArg: TModel | TExactPersistedDocument<TPersisted>, optionsArg?: IExactBoundedOptions): Promise<TExactInsertResult<TPersisted>>;
|
|
123
152
|
toPersisted(storedDocumentArg: TStoredDocument<TPersisted>): TExactPersistedDocument<TPersisted>;
|
|
124
153
|
canonicalBytes(persistedDocumentArg: TExactPersistedDocument<TPersisted>): Uint8Array;
|
|
125
|
-
findStoredOne(filterArg: MongoFilter<TStoredDocument<TPersisted>>, optionsArg?:
|
|
154
|
+
findStoredOne(filterArg: MongoFilter<TStoredDocument<TPersisted>>, optionsArg?: IExactBoundedOptions): Promise<TStoredDocument<TPersisted> | null>;
|
|
126
155
|
findStored(optionsArg?: IFindStoredOptions<TPersisted>): Promise<Array<TStoredDocument<TPersisted>>>;
|
|
127
|
-
count(filterArg?: MongoFilter<TStoredDocument<TPersisted>>, optionsArg?:
|
|
128
|
-
distinct<TField extends TExactDocumentPath<TStoredDocument<TPersisted>>>(fieldArg: TField, filterArg?: MongoFilter<TStoredDocument<TPersisted>>, optionsArg?:
|
|
156
|
+
count(filterArg?: MongoFilter<TStoredDocument<TPersisted>>, optionsArg?: IExactBoundedOptions): Promise<number>;
|
|
157
|
+
distinct<TField extends TExactDocumentPath<TStoredDocument<TPersisted>>>(fieldArg: TField, filterArg?: MongoFilter<TStoredDocument<TPersisted>>, optionsArg?: IExactBoundedOptions): Promise<Array<TExactDistinctValue<TExactDocumentPathValue<TStoredDocument<TPersisted>, TField>>>>;
|
|
129
158
|
transition(optionsArg: {
|
|
130
159
|
current: TStoredDocument<TPersisted>;
|
|
131
160
|
change: (modelArg: TModel) => void;
|
|
132
|
-
}, sessionOptionsArg?:
|
|
161
|
+
}, sessionOptionsArg?: IExactBoundedOptions): Promise<TExactTransitionResult<TPersisted>>;
|
|
133
162
|
delete(optionsArg: {
|
|
134
163
|
current: TStoredDocument<TPersisted>;
|
|
135
|
-
}, sessionOptionsArg?:
|
|
164
|
+
}, sessionOptionsArg?: IExactBoundedOptions): Promise<TExactDeleteResult>;
|
|
136
165
|
}
|
|
137
166
|
export declare function exactPersistence<TAssertion extends TExactDocumentAssertion<object>>(optionsArg: {
|
|
138
167
|
assertDocument: TAssertion;
|