react-native-appwrite 0.16.0 → 0.18.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/CHANGELOG.md +9 -0
- package/dist/cjs/sdk.js +707 -31
- package/dist/cjs/sdk.js.map +1 -1
- package/dist/esm/sdk.js +707 -32
- package/dist/esm/sdk.js.map +1 -1
- package/docs/examples/account/list-identities.md +2 -1
- package/docs/examples/account/list-logs.md +2 -1
- package/docs/examples/databases/create-document.md +3 -2
- package/docs/examples/databases/create-operations.md +24 -0
- package/docs/examples/databases/create-transaction.md +13 -0
- package/docs/examples/databases/decrement-document-attribute.md +2 -1
- package/docs/examples/databases/delete-document.md +2 -1
- package/docs/examples/databases/delete-transaction.md +13 -0
- package/docs/examples/databases/get-document.md +2 -1
- package/docs/examples/databases/get-transaction.md +13 -0
- package/docs/examples/databases/increment-document-attribute.md +2 -1
- package/docs/examples/databases/list-documents.md +3 -1
- package/docs/examples/databases/list-transactions.md +13 -0
- package/docs/examples/databases/update-document.md +3 -2
- package/docs/examples/databases/update-transaction.md +15 -0
- package/docs/examples/databases/upsert-document.md +3 -2
- package/docs/examples/functions/list-executions.md +2 -1
- package/docs/examples/storage/create-file.md +1 -1
- package/docs/examples/storage/list-files.md +2 -1
- package/docs/examples/storage/update-file.md +1 -1
- package/docs/examples/tablesdb/create-operations.md +24 -0
- package/docs/examples/tablesdb/create-row.md +3 -2
- package/docs/examples/tablesdb/create-transaction.md +13 -0
- package/docs/examples/tablesdb/decrement-row-column.md +2 -1
- package/docs/examples/tablesdb/delete-row.md +2 -1
- package/docs/examples/tablesdb/delete-transaction.md +13 -0
- package/docs/examples/tablesdb/get-row.md +2 -1
- package/docs/examples/tablesdb/get-transaction.md +13 -0
- package/docs/examples/tablesdb/increment-row-column.md +2 -1
- package/docs/examples/tablesdb/list-rows.md +3 -1
- package/docs/examples/tablesdb/list-transactions.md +13 -0
- package/docs/examples/tablesdb/update-row.md +3 -2
- package/docs/examples/tablesdb/update-transaction.md +15 -0
- package/docs/examples/tablesdb/upsert-row.md +3 -2
- package/docs/examples/teams/list-memberships.md +2 -1
- package/docs/examples/teams/list.md +2 -1
- package/package.json +2 -3
- package/src/client.ts +1 -1
- package/src/enums/execution-status.ts +1 -0
- package/src/index.ts +3 -0
- package/src/models.ts +45 -1
- package/src/operator.ts +308 -0
- package/src/query.ts +6 -6
- package/src/services/account.ts +30 -12
- package/src/services/databases.ts +422 -56
- package/src/services/functions.ts +15 -7
- package/src/services/storage.ts +15 -7
- package/src/services/tables-db.ts +422 -56
- package/src/services/teams.ts +30 -14
- package/types/enums/execution-status.d.ts +2 -1
- package/types/index.d.ts +3 -0
- package/types/models.d.ts +43 -1
- package/types/operator.d.ts +180 -0
- package/types/services/account.d.ts +8 -2
- package/types/services/databases.d.ts +158 -8
- package/types/services/functions.d.ts +4 -1
- package/types/services/storage.d.ts +4 -1
- package/types/services/tables-db.d.ts +158 -8
- package/types/services/teams.d.ts +8 -2
|
@@ -13,47 +13,349 @@ export class Databases extends Service {
|
|
|
13
13
|
super(client);
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
+
/**
|
|
17
|
+
* List transactions across all databases.
|
|
18
|
+
*
|
|
19
|
+
* @param {string[]} params.queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries).
|
|
20
|
+
* @throws {AppwriteException}
|
|
21
|
+
* @returns {Promise}
|
|
22
|
+
*/
|
|
23
|
+
listTransactions(params?: { queries?: string[] }): Promise<Models.TransactionList>;
|
|
24
|
+
/**
|
|
25
|
+
* List transactions across all databases.
|
|
26
|
+
*
|
|
27
|
+
* @param {string[]} queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries).
|
|
28
|
+
* @throws {AppwriteException}
|
|
29
|
+
* @returns {Promise<Models.TransactionList>}
|
|
30
|
+
* @deprecated Use the object parameter style method for a better developer experience.
|
|
31
|
+
*/
|
|
32
|
+
listTransactions(queries?: string[]): Promise<Models.TransactionList>;
|
|
33
|
+
listTransactions(
|
|
34
|
+
paramsOrFirst?: { queries?: string[] } | string[]
|
|
35
|
+
): Promise<Models.TransactionList> {
|
|
36
|
+
let params: { queries?: string[] };
|
|
37
|
+
|
|
38
|
+
if (!paramsOrFirst || (paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
|
|
39
|
+
params = (paramsOrFirst || {}) as { queries?: string[] };
|
|
40
|
+
} else {
|
|
41
|
+
params = {
|
|
42
|
+
queries: paramsOrFirst as string[]
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
const queries = params.queries;
|
|
47
|
+
|
|
48
|
+
const apiPath = '/databases/transactions';
|
|
49
|
+
const payload: Payload = {};
|
|
50
|
+
|
|
51
|
+
if (typeof queries !== 'undefined') {
|
|
52
|
+
payload['queries'] = queries;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
const uri = new URL(this.client.config.endpoint + apiPath);
|
|
56
|
+
return this.client.call('get', uri, {
|
|
57
|
+
}, payload);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Create a new transaction.
|
|
62
|
+
*
|
|
63
|
+
* @param {number} params.ttl - Seconds before the transaction expires.
|
|
64
|
+
* @throws {AppwriteException}
|
|
65
|
+
* @returns {Promise}
|
|
66
|
+
*/
|
|
67
|
+
createTransaction(params?: { ttl?: number }): Promise<Models.Transaction>;
|
|
68
|
+
/**
|
|
69
|
+
* Create a new transaction.
|
|
70
|
+
*
|
|
71
|
+
* @param {number} ttl - Seconds before the transaction expires.
|
|
72
|
+
* @throws {AppwriteException}
|
|
73
|
+
* @returns {Promise<Models.Transaction>}
|
|
74
|
+
* @deprecated Use the object parameter style method for a better developer experience.
|
|
75
|
+
*/
|
|
76
|
+
createTransaction(ttl?: number): Promise<Models.Transaction>;
|
|
77
|
+
createTransaction(
|
|
78
|
+
paramsOrFirst?: { ttl?: number } | number
|
|
79
|
+
): Promise<Models.Transaction> {
|
|
80
|
+
let params: { ttl?: number };
|
|
81
|
+
|
|
82
|
+
if (!paramsOrFirst || (paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
|
|
83
|
+
params = (paramsOrFirst || {}) as { ttl?: number };
|
|
84
|
+
} else {
|
|
85
|
+
params = {
|
|
86
|
+
ttl: paramsOrFirst as number
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
const ttl = params.ttl;
|
|
91
|
+
|
|
92
|
+
const apiPath = '/databases/transactions';
|
|
93
|
+
const payload: Payload = {};
|
|
94
|
+
|
|
95
|
+
if (typeof ttl !== 'undefined') {
|
|
96
|
+
payload['ttl'] = ttl;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
const uri = new URL(this.client.config.endpoint + apiPath);
|
|
100
|
+
return this.client.call('post', uri, {
|
|
101
|
+
'content-type': 'application/json',
|
|
102
|
+
}, payload);
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
/**
|
|
106
|
+
* Get a transaction by its unique ID.
|
|
107
|
+
*
|
|
108
|
+
* @param {string} params.transactionId - Transaction ID.
|
|
109
|
+
* @throws {AppwriteException}
|
|
110
|
+
* @returns {Promise}
|
|
111
|
+
*/
|
|
112
|
+
getTransaction(params: { transactionId: string }): Promise<Models.Transaction>;
|
|
113
|
+
/**
|
|
114
|
+
* Get a transaction by its unique ID.
|
|
115
|
+
*
|
|
116
|
+
* @param {string} transactionId - Transaction ID.
|
|
117
|
+
* @throws {AppwriteException}
|
|
118
|
+
* @returns {Promise<Models.Transaction>}
|
|
119
|
+
* @deprecated Use the object parameter style method for a better developer experience.
|
|
120
|
+
*/
|
|
121
|
+
getTransaction(transactionId: string): Promise<Models.Transaction>;
|
|
122
|
+
getTransaction(
|
|
123
|
+
paramsOrFirst: { transactionId: string } | string
|
|
124
|
+
): Promise<Models.Transaction> {
|
|
125
|
+
let params: { transactionId: string };
|
|
126
|
+
|
|
127
|
+
if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
|
|
128
|
+
params = (paramsOrFirst || {}) as { transactionId: string };
|
|
129
|
+
} else {
|
|
130
|
+
params = {
|
|
131
|
+
transactionId: paramsOrFirst as string
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
const transactionId = params.transactionId;
|
|
136
|
+
|
|
137
|
+
if (typeof transactionId === 'undefined') {
|
|
138
|
+
throw new AppwriteException('Missing required parameter: "transactionId"');
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
const apiPath = '/databases/transactions/{transactionId}'.replace('{transactionId}', transactionId);
|
|
142
|
+
const payload: Payload = {};
|
|
143
|
+
|
|
144
|
+
const uri = new URL(this.client.config.endpoint + apiPath);
|
|
145
|
+
return this.client.call('get', uri, {
|
|
146
|
+
}, payload);
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
/**
|
|
150
|
+
* Update a transaction, to either commit or roll back its operations.
|
|
151
|
+
*
|
|
152
|
+
* @param {string} params.transactionId - Transaction ID.
|
|
153
|
+
* @param {boolean} params.commit - Commit transaction?
|
|
154
|
+
* @param {boolean} params.rollback - Rollback transaction?
|
|
155
|
+
* @throws {AppwriteException}
|
|
156
|
+
* @returns {Promise}
|
|
157
|
+
*/
|
|
158
|
+
updateTransaction(params: { transactionId: string, commit?: boolean, rollback?: boolean }): Promise<Models.Transaction>;
|
|
159
|
+
/**
|
|
160
|
+
* Update a transaction, to either commit or roll back its operations.
|
|
161
|
+
*
|
|
162
|
+
* @param {string} transactionId - Transaction ID.
|
|
163
|
+
* @param {boolean} commit - Commit transaction?
|
|
164
|
+
* @param {boolean} rollback - Rollback transaction?
|
|
165
|
+
* @throws {AppwriteException}
|
|
166
|
+
* @returns {Promise<Models.Transaction>}
|
|
167
|
+
* @deprecated Use the object parameter style method for a better developer experience.
|
|
168
|
+
*/
|
|
169
|
+
updateTransaction(transactionId: string, commit?: boolean, rollback?: boolean): Promise<Models.Transaction>;
|
|
170
|
+
updateTransaction(
|
|
171
|
+
paramsOrFirst: { transactionId: string, commit?: boolean, rollback?: boolean } | string,
|
|
172
|
+
...rest: [(boolean)?, (boolean)?]
|
|
173
|
+
): Promise<Models.Transaction> {
|
|
174
|
+
let params: { transactionId: string, commit?: boolean, rollback?: boolean };
|
|
175
|
+
|
|
176
|
+
if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
|
|
177
|
+
params = (paramsOrFirst || {}) as { transactionId: string, commit?: boolean, rollback?: boolean };
|
|
178
|
+
} else {
|
|
179
|
+
params = {
|
|
180
|
+
transactionId: paramsOrFirst as string,
|
|
181
|
+
commit: rest[0] as boolean,
|
|
182
|
+
rollback: rest[1] as boolean
|
|
183
|
+
};
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
const transactionId = params.transactionId;
|
|
187
|
+
const commit = params.commit;
|
|
188
|
+
const rollback = params.rollback;
|
|
189
|
+
|
|
190
|
+
if (typeof transactionId === 'undefined') {
|
|
191
|
+
throw new AppwriteException('Missing required parameter: "transactionId"');
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
const apiPath = '/databases/transactions/{transactionId}'.replace('{transactionId}', transactionId);
|
|
195
|
+
const payload: Payload = {};
|
|
196
|
+
|
|
197
|
+
if (typeof commit !== 'undefined') {
|
|
198
|
+
payload['commit'] = commit;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
if (typeof rollback !== 'undefined') {
|
|
202
|
+
payload['rollback'] = rollback;
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
const uri = new URL(this.client.config.endpoint + apiPath);
|
|
206
|
+
return this.client.call('patch', uri, {
|
|
207
|
+
'content-type': 'application/json',
|
|
208
|
+
}, payload);
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
/**
|
|
212
|
+
* Delete a transaction by its unique ID.
|
|
213
|
+
*
|
|
214
|
+
* @param {string} params.transactionId - Transaction ID.
|
|
215
|
+
* @throws {AppwriteException}
|
|
216
|
+
* @returns {Promise}
|
|
217
|
+
*/
|
|
218
|
+
deleteTransaction(params: { transactionId: string }): Promise<{}>;
|
|
219
|
+
/**
|
|
220
|
+
* Delete a transaction by its unique ID.
|
|
221
|
+
*
|
|
222
|
+
* @param {string} transactionId - Transaction ID.
|
|
223
|
+
* @throws {AppwriteException}
|
|
224
|
+
* @returns {Promise<{}>}
|
|
225
|
+
* @deprecated Use the object parameter style method for a better developer experience.
|
|
226
|
+
*/
|
|
227
|
+
deleteTransaction(transactionId: string): Promise<{}>;
|
|
228
|
+
deleteTransaction(
|
|
229
|
+
paramsOrFirst: { transactionId: string } | string
|
|
230
|
+
): Promise<{}> {
|
|
231
|
+
let params: { transactionId: string };
|
|
232
|
+
|
|
233
|
+
if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
|
|
234
|
+
params = (paramsOrFirst || {}) as { transactionId: string };
|
|
235
|
+
} else {
|
|
236
|
+
params = {
|
|
237
|
+
transactionId: paramsOrFirst as string
|
|
238
|
+
};
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
const transactionId = params.transactionId;
|
|
242
|
+
|
|
243
|
+
if (typeof transactionId === 'undefined') {
|
|
244
|
+
throw new AppwriteException('Missing required parameter: "transactionId"');
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
const apiPath = '/databases/transactions/{transactionId}'.replace('{transactionId}', transactionId);
|
|
248
|
+
const payload: Payload = {};
|
|
249
|
+
|
|
250
|
+
const uri = new URL(this.client.config.endpoint + apiPath);
|
|
251
|
+
return this.client.call('delete', uri, {
|
|
252
|
+
'content-type': 'application/json',
|
|
253
|
+
}, payload);
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
/**
|
|
257
|
+
* Create multiple operations in a single transaction.
|
|
258
|
+
*
|
|
259
|
+
* @param {string} params.transactionId - Transaction ID.
|
|
260
|
+
* @param {object[]} params.operations - Array of staged operations.
|
|
261
|
+
* @throws {AppwriteException}
|
|
262
|
+
* @returns {Promise}
|
|
263
|
+
*/
|
|
264
|
+
createOperations(params: { transactionId: string, operations?: object[] }): Promise<Models.Transaction>;
|
|
265
|
+
/**
|
|
266
|
+
* Create multiple operations in a single transaction.
|
|
267
|
+
*
|
|
268
|
+
* @param {string} transactionId - Transaction ID.
|
|
269
|
+
* @param {object[]} operations - Array of staged operations.
|
|
270
|
+
* @throws {AppwriteException}
|
|
271
|
+
* @returns {Promise<Models.Transaction>}
|
|
272
|
+
* @deprecated Use the object parameter style method for a better developer experience.
|
|
273
|
+
*/
|
|
274
|
+
createOperations(transactionId: string, operations?: object[]): Promise<Models.Transaction>;
|
|
275
|
+
createOperations(
|
|
276
|
+
paramsOrFirst: { transactionId: string, operations?: object[] } | string,
|
|
277
|
+
...rest: [(object[])?]
|
|
278
|
+
): Promise<Models.Transaction> {
|
|
279
|
+
let params: { transactionId: string, operations?: object[] };
|
|
280
|
+
|
|
281
|
+
if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
|
|
282
|
+
params = (paramsOrFirst || {}) as { transactionId: string, operations?: object[] };
|
|
283
|
+
} else {
|
|
284
|
+
params = {
|
|
285
|
+
transactionId: paramsOrFirst as string,
|
|
286
|
+
operations: rest[0] as object[]
|
|
287
|
+
};
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
const transactionId = params.transactionId;
|
|
291
|
+
const operations = params.operations;
|
|
292
|
+
|
|
293
|
+
if (typeof transactionId === 'undefined') {
|
|
294
|
+
throw new AppwriteException('Missing required parameter: "transactionId"');
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
const apiPath = '/databases/transactions/{transactionId}/operations'.replace('{transactionId}', transactionId);
|
|
298
|
+
const payload: Payload = {};
|
|
299
|
+
|
|
300
|
+
if (typeof operations !== 'undefined') {
|
|
301
|
+
payload['operations'] = operations;
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
const uri = new URL(this.client.config.endpoint + apiPath);
|
|
305
|
+
return this.client.call('post', uri, {
|
|
306
|
+
'content-type': 'application/json',
|
|
307
|
+
}, payload);
|
|
308
|
+
}
|
|
309
|
+
|
|
16
310
|
/**
|
|
17
311
|
* Get a list of all the user's documents in a given collection. You can use the query params to filter your results.
|
|
18
312
|
*
|
|
19
313
|
* @param {string} params.databaseId - Database ID.
|
|
20
314
|
* @param {string} params.collectionId - Collection ID. You can create a new collection using the Database service [server integration](https://appwrite.io/docs/server/databases#databasesCreateCollection).
|
|
21
315
|
* @param {string[]} params.queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long.
|
|
316
|
+
* @param {string} params.transactionId - Transaction ID to read uncommitted changes within the transaction.
|
|
317
|
+
* @param {boolean} params.total - When set to false, the total count returned will be 0 and will not be calculated.
|
|
22
318
|
* @throws {AppwriteException}
|
|
23
319
|
* @returns {Promise}
|
|
24
320
|
* @deprecated This API has been deprecated since 1.8.0. Please use `TablesDB.listRows` instead.
|
|
25
321
|
*/
|
|
26
|
-
listDocuments<Document extends Models.Document = Models.DefaultDocument>(params: { databaseId: string, collectionId: string, queries?: string[] }): Promise<Models.DocumentList<Document>>;
|
|
322
|
+
listDocuments<Document extends Models.Document = Models.DefaultDocument>(params: { databaseId: string, collectionId: string, queries?: string[], transactionId?: string, total?: boolean }): Promise<Models.DocumentList<Document>>;
|
|
27
323
|
/**
|
|
28
324
|
* Get a list of all the user's documents in a given collection. You can use the query params to filter your results.
|
|
29
325
|
*
|
|
30
326
|
* @param {string} databaseId - Database ID.
|
|
31
327
|
* @param {string} collectionId - Collection ID. You can create a new collection using the Database service [server integration](https://appwrite.io/docs/server/databases#databasesCreateCollection).
|
|
32
328
|
* @param {string[]} queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long.
|
|
329
|
+
* @param {string} transactionId - Transaction ID to read uncommitted changes within the transaction.
|
|
330
|
+
* @param {boolean} total - When set to false, the total count returned will be 0 and will not be calculated.
|
|
33
331
|
* @throws {AppwriteException}
|
|
34
332
|
* @returns {Promise<Models.DocumentList<Document>>}
|
|
35
333
|
* @deprecated Use the object parameter style method for a better developer experience.
|
|
36
334
|
*/
|
|
37
|
-
listDocuments<Document extends Models.Document = Models.DefaultDocument>(databaseId: string, collectionId: string, queries?: string[]): Promise<Models.DocumentList<Document>>;
|
|
335
|
+
listDocuments<Document extends Models.Document = Models.DefaultDocument>(databaseId: string, collectionId: string, queries?: string[], transactionId?: string, total?: boolean): Promise<Models.DocumentList<Document>>;
|
|
38
336
|
listDocuments<Document extends Models.Document = Models.DefaultDocument>(
|
|
39
|
-
paramsOrFirst: { databaseId: string, collectionId: string, queries?: string[] } | string,
|
|
40
|
-
...rest: [(string)?, (string[])?]
|
|
337
|
+
paramsOrFirst: { databaseId: string, collectionId: string, queries?: string[], transactionId?: string, total?: boolean } | string,
|
|
338
|
+
...rest: [(string)?, (string[])?, (string)?, (boolean)?]
|
|
41
339
|
): Promise<Models.DocumentList<Document>> {
|
|
42
|
-
let params: { databaseId: string, collectionId: string, queries?: string[] };
|
|
340
|
+
let params: { databaseId: string, collectionId: string, queries?: string[], transactionId?: string, total?: boolean };
|
|
43
341
|
|
|
44
342
|
if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
|
|
45
|
-
params = (paramsOrFirst || {}) as { databaseId: string, collectionId: string, queries?: string[] };
|
|
343
|
+
params = (paramsOrFirst || {}) as { databaseId: string, collectionId: string, queries?: string[], transactionId?: string, total?: boolean };
|
|
46
344
|
} else {
|
|
47
345
|
params = {
|
|
48
346
|
databaseId: paramsOrFirst as string,
|
|
49
347
|
collectionId: rest[0] as string,
|
|
50
|
-
queries: rest[1] as string[]
|
|
348
|
+
queries: rest[1] as string[],
|
|
349
|
+
transactionId: rest[2] as string,
|
|
350
|
+
total: rest[3] as boolean
|
|
51
351
|
};
|
|
52
352
|
}
|
|
53
353
|
|
|
54
354
|
const databaseId = params.databaseId;
|
|
55
355
|
const collectionId = params.collectionId;
|
|
56
356
|
const queries = params.queries;
|
|
357
|
+
const transactionId = params.transactionId;
|
|
358
|
+
const total = params.total;
|
|
57
359
|
|
|
58
360
|
if (typeof databaseId === 'undefined') {
|
|
59
361
|
throw new AppwriteException('Missing required parameter: "databaseId"');
|
|
@@ -70,6 +372,14 @@ export class Databases extends Service {
|
|
|
70
372
|
payload['queries'] = queries;
|
|
71
373
|
}
|
|
72
374
|
|
|
375
|
+
if (typeof transactionId !== 'undefined') {
|
|
376
|
+
payload['transactionId'] = transactionId;
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
if (typeof total !== 'undefined') {
|
|
380
|
+
payload['total'] = total;
|
|
381
|
+
}
|
|
382
|
+
|
|
73
383
|
const uri = new URL(this.client.config.endpoint + apiPath);
|
|
74
384
|
return this.client.call('get', uri, {
|
|
75
385
|
}, payload);
|
|
@@ -83,11 +393,12 @@ export class Databases extends Service {
|
|
|
83
393
|
* @param {string} params.documentId - Document ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars.
|
|
84
394
|
* @param {Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Omit<Document, keyof Models.Document>} params.data - Document data as JSON object.
|
|
85
395
|
* @param {string[]} params.permissions - An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https://appwrite.io/docs/permissions).
|
|
396
|
+
* @param {string} params.transactionId - Transaction ID for staging the operation.
|
|
86
397
|
* @throws {AppwriteException}
|
|
87
398
|
* @returns {Promise}
|
|
88
399
|
* @deprecated This API has been deprecated since 1.8.0. Please use `TablesDB.createRow` instead.
|
|
89
400
|
*/
|
|
90
|
-
createDocument<Document extends Models.Document = Models.DefaultDocument>(params: { databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Omit<Document, keyof Models.Document>, permissions?: string[] }): Promise<Document>;
|
|
401
|
+
createDocument<Document extends Models.Document = Models.DefaultDocument>(params: { databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Omit<Document, keyof Models.Document>, permissions?: string[], transactionId?: string }): Promise<Document>;
|
|
91
402
|
/**
|
|
92
403
|
* Create a new Document. Before using this route, you should create a new collection resource using either a [server integration](https://appwrite.io/docs/server/databases#databasesCreateCollection) API or directly from your database console.
|
|
93
404
|
*
|
|
@@ -96,26 +407,28 @@ export class Databases extends Service {
|
|
|
96
407
|
* @param {string} documentId - Document ID. Choose a custom ID or generate a random ID with `ID.unique()`. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char. Max length is 36 chars.
|
|
97
408
|
* @param {Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Omit<Document, keyof Models.Document>} data - Document data as JSON object.
|
|
98
409
|
* @param {string[]} permissions - An array of permissions strings. By default, only the current user is granted all permissions. [Learn more about permissions](https://appwrite.io/docs/permissions).
|
|
410
|
+
* @param {string} transactionId - Transaction ID for staging the operation.
|
|
99
411
|
* @throws {AppwriteException}
|
|
100
412
|
* @returns {Promise<Document>}
|
|
101
413
|
* @deprecated Use the object parameter style method for a better developer experience.
|
|
102
414
|
*/
|
|
103
|
-
createDocument<Document extends Models.Document = Models.DefaultDocument>(databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Omit<Document, keyof Models.Document>, permissions?: string[]): Promise<Document>;
|
|
415
|
+
createDocument<Document extends Models.Document = Models.DefaultDocument>(databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Omit<Document, keyof Models.Document>, permissions?: string[], transactionId?: string): Promise<Document>;
|
|
104
416
|
createDocument<Document extends Models.Document = Models.DefaultDocument>(
|
|
105
|
-
paramsOrFirst: { databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Omit<Document, keyof Models.Document>, permissions?: string[] } | string,
|
|
106
|
-
...rest: [(string)?, (string)?, (Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Omit<Document, keyof Models.Document>)?, (string[])?]
|
|
417
|
+
paramsOrFirst: { databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Omit<Document, keyof Models.Document>, permissions?: string[], transactionId?: string } | string,
|
|
418
|
+
...rest: [(string)?, (string)?, (Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Omit<Document, keyof Models.Document>)?, (string[])?, (string)?]
|
|
107
419
|
): Promise<Document> {
|
|
108
|
-
let params: { databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Omit<Document, keyof Models.Document>, permissions?: string[] };
|
|
420
|
+
let params: { databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Omit<Document, keyof Models.Document>, permissions?: string[], transactionId?: string };
|
|
109
421
|
|
|
110
422
|
if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
|
|
111
|
-
params = (paramsOrFirst || {}) as { databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Omit<Document, keyof Models.Document>, permissions?: string[] };
|
|
423
|
+
params = (paramsOrFirst || {}) as { databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Omit<Document, keyof Models.Document>, permissions?: string[], transactionId?: string };
|
|
112
424
|
} else {
|
|
113
425
|
params = {
|
|
114
426
|
databaseId: paramsOrFirst as string,
|
|
115
427
|
collectionId: rest[0] as string,
|
|
116
428
|
documentId: rest[1] as string,
|
|
117
429
|
data: rest[2] as Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Omit<Document, keyof Models.Document>,
|
|
118
|
-
permissions: rest[3] as string[]
|
|
430
|
+
permissions: rest[3] as string[],
|
|
431
|
+
transactionId: rest[4] as string
|
|
119
432
|
};
|
|
120
433
|
}
|
|
121
434
|
|
|
@@ -124,6 +437,7 @@ export class Databases extends Service {
|
|
|
124
437
|
const documentId = params.documentId;
|
|
125
438
|
const data = params.data;
|
|
126
439
|
const permissions = params.permissions;
|
|
440
|
+
const transactionId = params.transactionId;
|
|
127
441
|
|
|
128
442
|
if (typeof databaseId === 'undefined') {
|
|
129
443
|
throw new AppwriteException('Missing required parameter: "databaseId"');
|
|
@@ -156,6 +470,10 @@ export class Databases extends Service {
|
|
|
156
470
|
payload['permissions'] = permissions;
|
|
157
471
|
}
|
|
158
472
|
|
|
473
|
+
if (typeof transactionId !== 'undefined') {
|
|
474
|
+
payload['transactionId'] = transactionId;
|
|
475
|
+
}
|
|
476
|
+
|
|
159
477
|
const uri = new URL(this.client.config.endpoint + apiPath);
|
|
160
478
|
return this.client.call('post', uri, {
|
|
161
479
|
'content-type': 'application/json',
|
|
@@ -169,11 +487,12 @@ export class Databases extends Service {
|
|
|
169
487
|
* @param {string} params.collectionId - Collection ID. You can create a new collection using the Database service [server integration](https://appwrite.io/docs/server/databases#databasesCreateCollection).
|
|
170
488
|
* @param {string} params.documentId - Document ID.
|
|
171
489
|
* @param {string[]} params.queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long.
|
|
490
|
+
* @param {string} params.transactionId - Transaction ID to read uncommitted changes within the transaction.
|
|
172
491
|
* @throws {AppwriteException}
|
|
173
492
|
* @returns {Promise}
|
|
174
493
|
* @deprecated This API has been deprecated since 1.8.0. Please use `TablesDB.getRow` instead.
|
|
175
494
|
*/
|
|
176
|
-
getDocument<Document extends Models.Document = Models.DefaultDocument>(params: { databaseId: string, collectionId: string, documentId: string, queries?: string[] }): Promise<Document>;
|
|
495
|
+
getDocument<Document extends Models.Document = Models.DefaultDocument>(params: { databaseId: string, collectionId: string, documentId: string, queries?: string[], transactionId?: string }): Promise<Document>;
|
|
177
496
|
/**
|
|
178
497
|
* Get a document by its unique ID. This endpoint response returns a JSON object with the document data.
|
|
179
498
|
*
|
|
@@ -181,25 +500,27 @@ export class Databases extends Service {
|
|
|
181
500
|
* @param {string} collectionId - Collection ID. You can create a new collection using the Database service [server integration](https://appwrite.io/docs/server/databases#databasesCreateCollection).
|
|
182
501
|
* @param {string} documentId - Document ID.
|
|
183
502
|
* @param {string[]} queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long.
|
|
503
|
+
* @param {string} transactionId - Transaction ID to read uncommitted changes within the transaction.
|
|
184
504
|
* @throws {AppwriteException}
|
|
185
505
|
* @returns {Promise<Document>}
|
|
186
506
|
* @deprecated Use the object parameter style method for a better developer experience.
|
|
187
507
|
*/
|
|
188
|
-
getDocument<Document extends Models.Document = Models.DefaultDocument>(databaseId: string, collectionId: string, documentId: string, queries?: string[]): Promise<Document>;
|
|
508
|
+
getDocument<Document extends Models.Document = Models.DefaultDocument>(databaseId: string, collectionId: string, documentId: string, queries?: string[], transactionId?: string): Promise<Document>;
|
|
189
509
|
getDocument<Document extends Models.Document = Models.DefaultDocument>(
|
|
190
|
-
paramsOrFirst: { databaseId: string, collectionId: string, documentId: string, queries?: string[] } | string,
|
|
191
|
-
...rest: [(string)?, (string)?, (string[])?]
|
|
510
|
+
paramsOrFirst: { databaseId: string, collectionId: string, documentId: string, queries?: string[], transactionId?: string } | string,
|
|
511
|
+
...rest: [(string)?, (string)?, (string[])?, (string)?]
|
|
192
512
|
): Promise<Document> {
|
|
193
|
-
let params: { databaseId: string, collectionId: string, documentId: string, queries?: string[] };
|
|
513
|
+
let params: { databaseId: string, collectionId: string, documentId: string, queries?: string[], transactionId?: string };
|
|
194
514
|
|
|
195
515
|
if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
|
|
196
|
-
params = (paramsOrFirst || {}) as { databaseId: string, collectionId: string, documentId: string, queries?: string[] };
|
|
516
|
+
params = (paramsOrFirst || {}) as { databaseId: string, collectionId: string, documentId: string, queries?: string[], transactionId?: string };
|
|
197
517
|
} else {
|
|
198
518
|
params = {
|
|
199
519
|
databaseId: paramsOrFirst as string,
|
|
200
520
|
collectionId: rest[0] as string,
|
|
201
521
|
documentId: rest[1] as string,
|
|
202
|
-
queries: rest[2] as string[]
|
|
522
|
+
queries: rest[2] as string[],
|
|
523
|
+
transactionId: rest[3] as string
|
|
203
524
|
};
|
|
204
525
|
}
|
|
205
526
|
|
|
@@ -207,6 +528,7 @@ export class Databases extends Service {
|
|
|
207
528
|
const collectionId = params.collectionId;
|
|
208
529
|
const documentId = params.documentId;
|
|
209
530
|
const queries = params.queries;
|
|
531
|
+
const transactionId = params.transactionId;
|
|
210
532
|
|
|
211
533
|
if (typeof databaseId === 'undefined') {
|
|
212
534
|
throw new AppwriteException('Missing required parameter: "databaseId"');
|
|
@@ -227,6 +549,10 @@ export class Databases extends Service {
|
|
|
227
549
|
payload['queries'] = queries;
|
|
228
550
|
}
|
|
229
551
|
|
|
552
|
+
if (typeof transactionId !== 'undefined') {
|
|
553
|
+
payload['transactionId'] = transactionId;
|
|
554
|
+
}
|
|
555
|
+
|
|
230
556
|
const uri = new URL(this.client.config.endpoint + apiPath);
|
|
231
557
|
return this.client.call('get', uri, {
|
|
232
558
|
}, payload);
|
|
@@ -240,11 +566,12 @@ export class Databases extends Service {
|
|
|
240
566
|
* @param {string} params.documentId - Document ID.
|
|
241
567
|
* @param {Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>} params.data - Document data as JSON object. Include all required attributes of the document to be created or updated.
|
|
242
568
|
* @param {string[]} params.permissions - An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https://appwrite.io/docs/permissions).
|
|
569
|
+
* @param {string} params.transactionId - Transaction ID for staging the operation.
|
|
243
570
|
* @throws {AppwriteException}
|
|
244
571
|
* @returns {Promise}
|
|
245
572
|
* @deprecated This API has been deprecated since 1.8.0. Please use `TablesDB.upsertRow` instead.
|
|
246
573
|
*/
|
|
247
|
-
upsertDocument<Document extends Models.Document = Models.DefaultDocument>(params: { databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[] }): Promise<Document>;
|
|
574
|
+
upsertDocument<Document extends Models.Document = Models.DefaultDocument>(params: { databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[], transactionId?: string }): Promise<Document>;
|
|
248
575
|
/**
|
|
249
576
|
* Create or update a Document. Before using this route, you should create a new collection resource using either a [server integration](https://appwrite.io/docs/server/databases#databasesCreateCollection) API or directly from your database console.
|
|
250
577
|
*
|
|
@@ -253,26 +580,28 @@ export class Databases extends Service {
|
|
|
253
580
|
* @param {string} documentId - Document ID.
|
|
254
581
|
* @param {Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>} data - Document data as JSON object. Include all required attributes of the document to be created or updated.
|
|
255
582
|
* @param {string[]} permissions - An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https://appwrite.io/docs/permissions).
|
|
583
|
+
* @param {string} transactionId - Transaction ID for staging the operation.
|
|
256
584
|
* @throws {AppwriteException}
|
|
257
585
|
* @returns {Promise<Document>}
|
|
258
586
|
* @deprecated Use the object parameter style method for a better developer experience.
|
|
259
587
|
*/
|
|
260
|
-
upsertDocument<Document extends Models.Document = Models.DefaultDocument>(databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[]): Promise<Document>;
|
|
588
|
+
upsertDocument<Document extends Models.Document = Models.DefaultDocument>(databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[], transactionId?: string): Promise<Document>;
|
|
261
589
|
upsertDocument<Document extends Models.Document = Models.DefaultDocument>(
|
|
262
|
-
paramsOrFirst: { databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[] } | string,
|
|
263
|
-
...rest: [(string)?, (string)?, (Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>)?, (string[])?]
|
|
590
|
+
paramsOrFirst: { databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[], transactionId?: string } | string,
|
|
591
|
+
...rest: [(string)?, (string)?, (Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>)?, (string[])?, (string)?]
|
|
264
592
|
): Promise<Document> {
|
|
265
|
-
let params: { databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[] };
|
|
593
|
+
let params: { databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[], transactionId?: string };
|
|
266
594
|
|
|
267
595
|
if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
|
|
268
|
-
params = (paramsOrFirst || {}) as { databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[] };
|
|
596
|
+
params = (paramsOrFirst || {}) as { databaseId: string, collectionId: string, documentId: string, data: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[], transactionId?: string };
|
|
269
597
|
} else {
|
|
270
598
|
params = {
|
|
271
599
|
databaseId: paramsOrFirst as string,
|
|
272
600
|
collectionId: rest[0] as string,
|
|
273
601
|
documentId: rest[1] as string,
|
|
274
602
|
data: rest[2] as Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>,
|
|
275
|
-
permissions: rest[3] as string[]
|
|
603
|
+
permissions: rest[3] as string[],
|
|
604
|
+
transactionId: rest[4] as string
|
|
276
605
|
};
|
|
277
606
|
}
|
|
278
607
|
|
|
@@ -281,6 +610,7 @@ export class Databases extends Service {
|
|
|
281
610
|
const documentId = params.documentId;
|
|
282
611
|
const data = params.data;
|
|
283
612
|
const permissions = params.permissions;
|
|
613
|
+
const transactionId = params.transactionId;
|
|
284
614
|
|
|
285
615
|
if (typeof databaseId === 'undefined') {
|
|
286
616
|
throw new AppwriteException('Missing required parameter: "databaseId"');
|
|
@@ -309,6 +639,10 @@ export class Databases extends Service {
|
|
|
309
639
|
payload['permissions'] = permissions;
|
|
310
640
|
}
|
|
311
641
|
|
|
642
|
+
if (typeof transactionId !== 'undefined') {
|
|
643
|
+
payload['transactionId'] = transactionId;
|
|
644
|
+
}
|
|
645
|
+
|
|
312
646
|
const uri = new URL(this.client.config.endpoint + apiPath);
|
|
313
647
|
return this.client.call('put', uri, {
|
|
314
648
|
'content-type': 'application/json',
|
|
@@ -323,11 +657,12 @@ export class Databases extends Service {
|
|
|
323
657
|
* @param {string} params.documentId - Document ID.
|
|
324
658
|
* @param {Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>} params.data - Document data as JSON object. Include only attribute and value pairs to be updated.
|
|
325
659
|
* @param {string[]} params.permissions - An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https://appwrite.io/docs/permissions).
|
|
660
|
+
* @param {string} params.transactionId - Transaction ID for staging the operation.
|
|
326
661
|
* @throws {AppwriteException}
|
|
327
662
|
* @returns {Promise}
|
|
328
663
|
* @deprecated This API has been deprecated since 1.8.0. Please use `TablesDB.updateRow` instead.
|
|
329
664
|
*/
|
|
330
|
-
updateDocument<Document extends Models.Document = Models.DefaultDocument>(params: { databaseId: string, collectionId: string, documentId: string, data?: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[] }): Promise<Document>;
|
|
665
|
+
updateDocument<Document extends Models.Document = Models.DefaultDocument>(params: { databaseId: string, collectionId: string, documentId: string, data?: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[], transactionId?: string }): Promise<Document>;
|
|
331
666
|
/**
|
|
332
667
|
* Update a document by its unique ID. Using the patch method you can pass only specific fields that will get updated.
|
|
333
668
|
*
|
|
@@ -336,26 +671,28 @@ export class Databases extends Service {
|
|
|
336
671
|
* @param {string} documentId - Document ID.
|
|
337
672
|
* @param {Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>} data - Document data as JSON object. Include only attribute and value pairs to be updated.
|
|
338
673
|
* @param {string[]} permissions - An array of permissions strings. By default, the current permissions are inherited. [Learn more about permissions](https://appwrite.io/docs/permissions).
|
|
674
|
+
* @param {string} transactionId - Transaction ID for staging the operation.
|
|
339
675
|
* @throws {AppwriteException}
|
|
340
676
|
* @returns {Promise<Document>}
|
|
341
677
|
* @deprecated Use the object parameter style method for a better developer experience.
|
|
342
678
|
*/
|
|
343
|
-
updateDocument<Document extends Models.Document = Models.DefaultDocument>(databaseId: string, collectionId: string, documentId: string, data?: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[]): Promise<Document>;
|
|
679
|
+
updateDocument<Document extends Models.Document = Models.DefaultDocument>(databaseId: string, collectionId: string, documentId: string, data?: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[], transactionId?: string): Promise<Document>;
|
|
344
680
|
updateDocument<Document extends Models.Document = Models.DefaultDocument>(
|
|
345
|
-
paramsOrFirst: { databaseId: string, collectionId: string, documentId: string, data?: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[] } | string,
|
|
346
|
-
...rest: [(string)?, (string)?, (Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>)?, (string[])?]
|
|
681
|
+
paramsOrFirst: { databaseId: string, collectionId: string, documentId: string, data?: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[], transactionId?: string } | string,
|
|
682
|
+
...rest: [(string)?, (string)?, (Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>)?, (string[])?, (string)?]
|
|
347
683
|
): Promise<Document> {
|
|
348
|
-
let params: { databaseId: string, collectionId: string, documentId: string, data?: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[] };
|
|
684
|
+
let params: { databaseId: string, collectionId: string, documentId: string, data?: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[], transactionId?: string };
|
|
349
685
|
|
|
350
686
|
if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
|
|
351
|
-
params = (paramsOrFirst || {}) as { databaseId: string, collectionId: string, documentId: string, data?: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[] };
|
|
687
|
+
params = (paramsOrFirst || {}) as { databaseId: string, collectionId: string, documentId: string, data?: Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>, permissions?: string[], transactionId?: string };
|
|
352
688
|
} else {
|
|
353
689
|
params = {
|
|
354
690
|
databaseId: paramsOrFirst as string,
|
|
355
691
|
collectionId: rest[0] as string,
|
|
356
692
|
documentId: rest[1] as string,
|
|
357
693
|
data: rest[2] as Document extends Models.DefaultDocument ? Partial<Models.Document> & Record<string, any> : Partial<Models.Document> & Partial<Omit<Document, keyof Models.Document>>,
|
|
358
|
-
permissions: rest[3] as string[]
|
|
694
|
+
permissions: rest[3] as string[],
|
|
695
|
+
transactionId: rest[4] as string
|
|
359
696
|
};
|
|
360
697
|
}
|
|
361
698
|
|
|
@@ -364,6 +701,7 @@ export class Databases extends Service {
|
|
|
364
701
|
const documentId = params.documentId;
|
|
365
702
|
const data = params.data;
|
|
366
703
|
const permissions = params.permissions;
|
|
704
|
+
const transactionId = params.transactionId;
|
|
367
705
|
|
|
368
706
|
if (typeof databaseId === 'undefined') {
|
|
369
707
|
throw new AppwriteException('Missing required parameter: "databaseId"');
|
|
@@ -388,6 +726,10 @@ export class Databases extends Service {
|
|
|
388
726
|
payload['permissions'] = permissions;
|
|
389
727
|
}
|
|
390
728
|
|
|
729
|
+
if (typeof transactionId !== 'undefined') {
|
|
730
|
+
payload['transactionId'] = transactionId;
|
|
731
|
+
}
|
|
732
|
+
|
|
391
733
|
const uri = new URL(this.client.config.endpoint + apiPath);
|
|
392
734
|
return this.client.call('patch', uri, {
|
|
393
735
|
'content-type': 'application/json',
|
|
@@ -400,41 +742,45 @@ export class Databases extends Service {
|
|
|
400
742
|
* @param {string} params.databaseId - Database ID.
|
|
401
743
|
* @param {string} params.collectionId - Collection ID. You can create a new collection using the Database service [server integration](https://appwrite.io/docs/server/databases#databasesCreateCollection).
|
|
402
744
|
* @param {string} params.documentId - Document ID.
|
|
745
|
+
* @param {string} params.transactionId - Transaction ID for staging the operation.
|
|
403
746
|
* @throws {AppwriteException}
|
|
404
747
|
* @returns {Promise}
|
|
405
748
|
* @deprecated This API has been deprecated since 1.8.0. Please use `TablesDB.deleteRow` instead.
|
|
406
749
|
*/
|
|
407
|
-
deleteDocument(params: { databaseId: string, collectionId: string, documentId: string }): Promise<{}>;
|
|
750
|
+
deleteDocument(params: { databaseId: string, collectionId: string, documentId: string, transactionId?: string }): Promise<{}>;
|
|
408
751
|
/**
|
|
409
752
|
* Delete a document by its unique ID.
|
|
410
753
|
*
|
|
411
754
|
* @param {string} databaseId - Database ID.
|
|
412
755
|
* @param {string} collectionId - Collection ID. You can create a new collection using the Database service [server integration](https://appwrite.io/docs/server/databases#databasesCreateCollection).
|
|
413
756
|
* @param {string} documentId - Document ID.
|
|
757
|
+
* @param {string} transactionId - Transaction ID for staging the operation.
|
|
414
758
|
* @throws {AppwriteException}
|
|
415
759
|
* @returns {Promise<{}>}
|
|
416
760
|
* @deprecated Use the object parameter style method for a better developer experience.
|
|
417
761
|
*/
|
|
418
|
-
deleteDocument(databaseId: string, collectionId: string, documentId: string): Promise<{}>;
|
|
762
|
+
deleteDocument(databaseId: string, collectionId: string, documentId: string, transactionId?: string): Promise<{}>;
|
|
419
763
|
deleteDocument(
|
|
420
|
-
paramsOrFirst: { databaseId: string, collectionId: string, documentId: string } | string,
|
|
421
|
-
...rest: [(string)?, (string)?]
|
|
764
|
+
paramsOrFirst: { databaseId: string, collectionId: string, documentId: string, transactionId?: string } | string,
|
|
765
|
+
...rest: [(string)?, (string)?, (string)?]
|
|
422
766
|
): Promise<{}> {
|
|
423
|
-
let params: { databaseId: string, collectionId: string, documentId: string };
|
|
767
|
+
let params: { databaseId: string, collectionId: string, documentId: string, transactionId?: string };
|
|
424
768
|
|
|
425
769
|
if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
|
|
426
|
-
params = (paramsOrFirst || {}) as { databaseId: string, collectionId: string, documentId: string };
|
|
770
|
+
params = (paramsOrFirst || {}) as { databaseId: string, collectionId: string, documentId: string, transactionId?: string };
|
|
427
771
|
} else {
|
|
428
772
|
params = {
|
|
429
773
|
databaseId: paramsOrFirst as string,
|
|
430
774
|
collectionId: rest[0] as string,
|
|
431
|
-
documentId: rest[1] as string
|
|
775
|
+
documentId: rest[1] as string,
|
|
776
|
+
transactionId: rest[2] as string
|
|
432
777
|
};
|
|
433
778
|
}
|
|
434
779
|
|
|
435
780
|
const databaseId = params.databaseId;
|
|
436
781
|
const collectionId = params.collectionId;
|
|
437
782
|
const documentId = params.documentId;
|
|
783
|
+
const transactionId = params.transactionId;
|
|
438
784
|
|
|
439
785
|
if (typeof databaseId === 'undefined') {
|
|
440
786
|
throw new AppwriteException('Missing required parameter: "databaseId"');
|
|
@@ -451,6 +797,10 @@ export class Databases extends Service {
|
|
|
451
797
|
const apiPath = '/databases/{databaseId}/collections/{collectionId}/documents/{documentId}'.replace('{databaseId}', databaseId).replace('{collectionId}', collectionId).replace('{documentId}', documentId);
|
|
452
798
|
const payload: Payload = {};
|
|
453
799
|
|
|
800
|
+
if (typeof transactionId !== 'undefined') {
|
|
801
|
+
payload['transactionId'] = transactionId;
|
|
802
|
+
}
|
|
803
|
+
|
|
454
804
|
const uri = new URL(this.client.config.endpoint + apiPath);
|
|
455
805
|
return this.client.call('delete', uri, {
|
|
456
806
|
'content-type': 'application/json',
|
|
@@ -466,11 +816,12 @@ export class Databases extends Service {
|
|
|
466
816
|
* @param {string} params.attribute - Attribute key.
|
|
467
817
|
* @param {number} params.value - Value to increment the attribute by. The value must be a number.
|
|
468
818
|
* @param {number} params.min - Minimum value for the attribute. If the current value is lesser than this value, an exception will be thrown.
|
|
819
|
+
* @param {string} params.transactionId - Transaction ID for staging the operation.
|
|
469
820
|
* @throws {AppwriteException}
|
|
470
821
|
* @returns {Promise}
|
|
471
822
|
* @deprecated This API has been deprecated since 1.8.0. Please use `TablesDB.decrementRowColumn` instead.
|
|
472
823
|
*/
|
|
473
|
-
decrementDocumentAttribute<Document extends Models.Document = Models.DefaultDocument>(params: { databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, min?: number }): Promise<Document>;
|
|
824
|
+
decrementDocumentAttribute<Document extends Models.Document = Models.DefaultDocument>(params: { databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, min?: number, transactionId?: string }): Promise<Document>;
|
|
474
825
|
/**
|
|
475
826
|
* Decrement a specific attribute of a document by a given value.
|
|
476
827
|
*
|
|
@@ -480,19 +831,20 @@ export class Databases extends Service {
|
|
|
480
831
|
* @param {string} attribute - Attribute key.
|
|
481
832
|
* @param {number} value - Value to increment the attribute by. The value must be a number.
|
|
482
833
|
* @param {number} min - Minimum value for the attribute. If the current value is lesser than this value, an exception will be thrown.
|
|
834
|
+
* @param {string} transactionId - Transaction ID for staging the operation.
|
|
483
835
|
* @throws {AppwriteException}
|
|
484
836
|
* @returns {Promise<Document>}
|
|
485
837
|
* @deprecated Use the object parameter style method for a better developer experience.
|
|
486
838
|
*/
|
|
487
|
-
decrementDocumentAttribute<Document extends Models.Document = Models.DefaultDocument>(databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, min?: number): Promise<Document>;
|
|
839
|
+
decrementDocumentAttribute<Document extends Models.Document = Models.DefaultDocument>(databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, min?: number, transactionId?: string): Promise<Document>;
|
|
488
840
|
decrementDocumentAttribute<Document extends Models.Document = Models.DefaultDocument>(
|
|
489
|
-
paramsOrFirst: { databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, min?: number } | string,
|
|
490
|
-
...rest: [(string)?, (string)?, (string)?, (number)?, (number)?]
|
|
841
|
+
paramsOrFirst: { databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, min?: number, transactionId?: string } | string,
|
|
842
|
+
...rest: [(string)?, (string)?, (string)?, (number)?, (number)?, (string)?]
|
|
491
843
|
): Promise<Document> {
|
|
492
|
-
let params: { databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, min?: number };
|
|
844
|
+
let params: { databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, min?: number, transactionId?: string };
|
|
493
845
|
|
|
494
846
|
if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
|
|
495
|
-
params = (paramsOrFirst || {}) as { databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, min?: number };
|
|
847
|
+
params = (paramsOrFirst || {}) as { databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, min?: number, transactionId?: string };
|
|
496
848
|
} else {
|
|
497
849
|
params = {
|
|
498
850
|
databaseId: paramsOrFirst as string,
|
|
@@ -500,7 +852,8 @@ export class Databases extends Service {
|
|
|
500
852
|
documentId: rest[1] as string,
|
|
501
853
|
attribute: rest[2] as string,
|
|
502
854
|
value: rest[3] as number,
|
|
503
|
-
min: rest[4] as number
|
|
855
|
+
min: rest[4] as number,
|
|
856
|
+
transactionId: rest[5] as string
|
|
504
857
|
};
|
|
505
858
|
}
|
|
506
859
|
|
|
@@ -510,6 +863,7 @@ export class Databases extends Service {
|
|
|
510
863
|
const attribute = params.attribute;
|
|
511
864
|
const value = params.value;
|
|
512
865
|
const min = params.min;
|
|
866
|
+
const transactionId = params.transactionId;
|
|
513
867
|
|
|
514
868
|
if (typeof databaseId === 'undefined') {
|
|
515
869
|
throw new AppwriteException('Missing required parameter: "databaseId"');
|
|
@@ -538,6 +892,10 @@ export class Databases extends Service {
|
|
|
538
892
|
payload['min'] = min;
|
|
539
893
|
}
|
|
540
894
|
|
|
895
|
+
if (typeof transactionId !== 'undefined') {
|
|
896
|
+
payload['transactionId'] = transactionId;
|
|
897
|
+
}
|
|
898
|
+
|
|
541
899
|
const uri = new URL(this.client.config.endpoint + apiPath);
|
|
542
900
|
return this.client.call('patch', uri, {
|
|
543
901
|
'content-type': 'application/json',
|
|
@@ -553,11 +911,12 @@ export class Databases extends Service {
|
|
|
553
911
|
* @param {string} params.attribute - Attribute key.
|
|
554
912
|
* @param {number} params.value - Value to increment the attribute by. The value must be a number.
|
|
555
913
|
* @param {number} params.max - Maximum value for the attribute. If the current value is greater than this value, an error will be thrown.
|
|
914
|
+
* @param {string} params.transactionId - Transaction ID for staging the operation.
|
|
556
915
|
* @throws {AppwriteException}
|
|
557
916
|
* @returns {Promise}
|
|
558
917
|
* @deprecated This API has been deprecated since 1.8.0. Please use `TablesDB.incrementRowColumn` instead.
|
|
559
918
|
*/
|
|
560
|
-
incrementDocumentAttribute<Document extends Models.Document = Models.DefaultDocument>(params: { databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, max?: number }): Promise<Document>;
|
|
919
|
+
incrementDocumentAttribute<Document extends Models.Document = Models.DefaultDocument>(params: { databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, max?: number, transactionId?: string }): Promise<Document>;
|
|
561
920
|
/**
|
|
562
921
|
* Increment a specific attribute of a document by a given value.
|
|
563
922
|
*
|
|
@@ -567,19 +926,20 @@ export class Databases extends Service {
|
|
|
567
926
|
* @param {string} attribute - Attribute key.
|
|
568
927
|
* @param {number} value - Value to increment the attribute by. The value must be a number.
|
|
569
928
|
* @param {number} max - Maximum value for the attribute. If the current value is greater than this value, an error will be thrown.
|
|
929
|
+
* @param {string} transactionId - Transaction ID for staging the operation.
|
|
570
930
|
* @throws {AppwriteException}
|
|
571
931
|
* @returns {Promise<Document>}
|
|
572
932
|
* @deprecated Use the object parameter style method for a better developer experience.
|
|
573
933
|
*/
|
|
574
|
-
incrementDocumentAttribute<Document extends Models.Document = Models.DefaultDocument>(databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, max?: number): Promise<Document>;
|
|
934
|
+
incrementDocumentAttribute<Document extends Models.Document = Models.DefaultDocument>(databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, max?: number, transactionId?: string): Promise<Document>;
|
|
575
935
|
incrementDocumentAttribute<Document extends Models.Document = Models.DefaultDocument>(
|
|
576
|
-
paramsOrFirst: { databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, max?: number } | string,
|
|
577
|
-
...rest: [(string)?, (string)?, (string)?, (number)?, (number)?]
|
|
936
|
+
paramsOrFirst: { databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, max?: number, transactionId?: string } | string,
|
|
937
|
+
...rest: [(string)?, (string)?, (string)?, (number)?, (number)?, (string)?]
|
|
578
938
|
): Promise<Document> {
|
|
579
|
-
let params: { databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, max?: number };
|
|
939
|
+
let params: { databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, max?: number, transactionId?: string };
|
|
580
940
|
|
|
581
941
|
if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
|
|
582
|
-
params = (paramsOrFirst || {}) as { databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, max?: number };
|
|
942
|
+
params = (paramsOrFirst || {}) as { databaseId: string, collectionId: string, documentId: string, attribute: string, value?: number, max?: number, transactionId?: string };
|
|
583
943
|
} else {
|
|
584
944
|
params = {
|
|
585
945
|
databaseId: paramsOrFirst as string,
|
|
@@ -587,7 +947,8 @@ export class Databases extends Service {
|
|
|
587
947
|
documentId: rest[1] as string,
|
|
588
948
|
attribute: rest[2] as string,
|
|
589
949
|
value: rest[3] as number,
|
|
590
|
-
max: rest[4] as number
|
|
950
|
+
max: rest[4] as number,
|
|
951
|
+
transactionId: rest[5] as string
|
|
591
952
|
};
|
|
592
953
|
}
|
|
593
954
|
|
|
@@ -597,6 +958,7 @@ export class Databases extends Service {
|
|
|
597
958
|
const attribute = params.attribute;
|
|
598
959
|
const value = params.value;
|
|
599
960
|
const max = params.max;
|
|
961
|
+
const transactionId = params.transactionId;
|
|
600
962
|
|
|
601
963
|
if (typeof databaseId === 'undefined') {
|
|
602
964
|
throw new AppwriteException('Missing required parameter: "databaseId"');
|
|
@@ -625,6 +987,10 @@ export class Databases extends Service {
|
|
|
625
987
|
payload['max'] = max;
|
|
626
988
|
}
|
|
627
989
|
|
|
990
|
+
if (typeof transactionId !== 'undefined') {
|
|
991
|
+
payload['transactionId'] = transactionId;
|
|
992
|
+
}
|
|
993
|
+
|
|
628
994
|
const uri = new URL(this.client.config.endpoint + apiPath);
|
|
629
995
|
return this.client.call('patch', uri, {
|
|
630
996
|
'content-type': 'application/json',
|