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.
Files changed (64) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/cjs/sdk.js +707 -31
  3. package/dist/cjs/sdk.js.map +1 -1
  4. package/dist/esm/sdk.js +707 -32
  5. package/dist/esm/sdk.js.map +1 -1
  6. package/docs/examples/account/list-identities.md +2 -1
  7. package/docs/examples/account/list-logs.md +2 -1
  8. package/docs/examples/databases/create-document.md +3 -2
  9. package/docs/examples/databases/create-operations.md +24 -0
  10. package/docs/examples/databases/create-transaction.md +13 -0
  11. package/docs/examples/databases/decrement-document-attribute.md +2 -1
  12. package/docs/examples/databases/delete-document.md +2 -1
  13. package/docs/examples/databases/delete-transaction.md +13 -0
  14. package/docs/examples/databases/get-document.md +2 -1
  15. package/docs/examples/databases/get-transaction.md +13 -0
  16. package/docs/examples/databases/increment-document-attribute.md +2 -1
  17. package/docs/examples/databases/list-documents.md +3 -1
  18. package/docs/examples/databases/list-transactions.md +13 -0
  19. package/docs/examples/databases/update-document.md +3 -2
  20. package/docs/examples/databases/update-transaction.md +15 -0
  21. package/docs/examples/databases/upsert-document.md +3 -2
  22. package/docs/examples/functions/list-executions.md +2 -1
  23. package/docs/examples/storage/create-file.md +1 -1
  24. package/docs/examples/storage/list-files.md +2 -1
  25. package/docs/examples/storage/update-file.md +1 -1
  26. package/docs/examples/tablesdb/create-operations.md +24 -0
  27. package/docs/examples/tablesdb/create-row.md +3 -2
  28. package/docs/examples/tablesdb/create-transaction.md +13 -0
  29. package/docs/examples/tablesdb/decrement-row-column.md +2 -1
  30. package/docs/examples/tablesdb/delete-row.md +2 -1
  31. package/docs/examples/tablesdb/delete-transaction.md +13 -0
  32. package/docs/examples/tablesdb/get-row.md +2 -1
  33. package/docs/examples/tablesdb/get-transaction.md +13 -0
  34. package/docs/examples/tablesdb/increment-row-column.md +2 -1
  35. package/docs/examples/tablesdb/list-rows.md +3 -1
  36. package/docs/examples/tablesdb/list-transactions.md +13 -0
  37. package/docs/examples/tablesdb/update-row.md +3 -2
  38. package/docs/examples/tablesdb/update-transaction.md +15 -0
  39. package/docs/examples/tablesdb/upsert-row.md +3 -2
  40. package/docs/examples/teams/list-memberships.md +2 -1
  41. package/docs/examples/teams/list.md +2 -1
  42. package/package.json +2 -3
  43. package/src/client.ts +1 -1
  44. package/src/enums/execution-status.ts +1 -0
  45. package/src/index.ts +3 -0
  46. package/src/models.ts +45 -1
  47. package/src/operator.ts +308 -0
  48. package/src/query.ts +6 -6
  49. package/src/services/account.ts +30 -12
  50. package/src/services/databases.ts +422 -56
  51. package/src/services/functions.ts +15 -7
  52. package/src/services/storage.ts +15 -7
  53. package/src/services/tables-db.ts +422 -56
  54. package/src/services/teams.ts +30 -14
  55. package/types/enums/execution-status.d.ts +2 -1
  56. package/types/index.d.ts +3 -0
  57. package/types/models.d.ts +43 -1
  58. package/types/operator.d.ts +180 -0
  59. package/types/services/account.d.ts +8 -2
  60. package/types/services/databases.d.ts +158 -8
  61. package/types/services/functions.d.ts +4 -1
  62. package/types/services/storage.d.ts +4 -1
  63. package/types/services/tables-db.d.ts +158 -8
  64. package/types/services/teams.d.ts +8 -2
package/dist/cjs/sdk.js CHANGED
@@ -100,7 +100,7 @@ class Client {
100
100
  'x-sdk-name': 'React Native',
101
101
  'x-sdk-platform': 'client',
102
102
  'x-sdk-language': 'reactnative',
103
- 'x-sdk-version': '0.16.0',
103
+ 'x-sdk-version': '0.18.0',
104
104
  'X-Appwrite-Response-Format': '1.8.0',
105
105
  };
106
106
  this.realtime = {
@@ -569,22 +569,27 @@ class Account extends Service {
569
569
  'content-type': 'application/json',
570
570
  }, payload);
571
571
  }
572
- listIdentities(paramsOrFirst) {
572
+ listIdentities(paramsOrFirst, ...rest) {
573
573
  let params;
574
574
  if (!paramsOrFirst || (paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
575
575
  params = (paramsOrFirst || {});
576
576
  }
577
577
  else {
578
578
  params = {
579
- queries: paramsOrFirst
579
+ queries: paramsOrFirst,
580
+ total: rest[0]
580
581
  };
581
582
  }
582
583
  const queries = params.queries;
584
+ const total = params.total;
583
585
  const apiPath = '/account/identities';
584
586
  const payload = {};
585
587
  if (typeof queries !== 'undefined') {
586
588
  payload['queries'] = queries;
587
589
  }
590
+ if (typeof total !== 'undefined') {
591
+ payload['total'] = total;
592
+ }
588
593
  const uri = new URL(this.client.config.endpoint + apiPath);
589
594
  return this.client.call('get', uri, {}, payload);
590
595
  }
@@ -623,22 +628,27 @@ class Account extends Service {
623
628
  'content-type': 'application/json',
624
629
  }, payload);
625
630
  }
626
- listLogs(paramsOrFirst) {
631
+ listLogs(paramsOrFirst, ...rest) {
627
632
  let params;
628
633
  if (!paramsOrFirst || (paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
629
634
  params = (paramsOrFirst || {});
630
635
  }
631
636
  else {
632
637
  params = {
633
- queries: paramsOrFirst
638
+ queries: paramsOrFirst,
639
+ total: rest[0]
634
640
  };
635
641
  }
636
642
  const queries = params.queries;
643
+ const total = params.total;
637
644
  const apiPath = '/account/logs';
638
645
  const payload = {};
639
646
  if (typeof queries !== 'undefined') {
640
647
  payload['queries'] = queries;
641
648
  }
649
+ if (typeof total !== 'undefined') {
650
+ payload['total'] = total;
651
+ }
642
652
  const uri = new URL(this.client.config.endpoint + apiPath);
643
653
  return this.client.call('get', uri, {}, payload);
644
654
  }
@@ -2418,6 +2428,143 @@ class Databases extends Service {
2418
2428
  constructor(client) {
2419
2429
  super(client);
2420
2430
  }
2431
+ listTransactions(paramsOrFirst) {
2432
+ let params;
2433
+ if (!paramsOrFirst || (paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
2434
+ params = (paramsOrFirst || {});
2435
+ }
2436
+ else {
2437
+ params = {
2438
+ queries: paramsOrFirst
2439
+ };
2440
+ }
2441
+ const queries = params.queries;
2442
+ const apiPath = '/databases/transactions';
2443
+ const payload = {};
2444
+ if (typeof queries !== 'undefined') {
2445
+ payload['queries'] = queries;
2446
+ }
2447
+ const uri = new URL(this.client.config.endpoint + apiPath);
2448
+ return this.client.call('get', uri, {}, payload);
2449
+ }
2450
+ createTransaction(paramsOrFirst) {
2451
+ let params;
2452
+ if (!paramsOrFirst || (paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
2453
+ params = (paramsOrFirst || {});
2454
+ }
2455
+ else {
2456
+ params = {
2457
+ ttl: paramsOrFirst
2458
+ };
2459
+ }
2460
+ const ttl = params.ttl;
2461
+ const apiPath = '/databases/transactions';
2462
+ const payload = {};
2463
+ if (typeof ttl !== 'undefined') {
2464
+ payload['ttl'] = ttl;
2465
+ }
2466
+ const uri = new URL(this.client.config.endpoint + apiPath);
2467
+ return this.client.call('post', uri, {
2468
+ 'content-type': 'application/json',
2469
+ }, payload);
2470
+ }
2471
+ getTransaction(paramsOrFirst) {
2472
+ let params;
2473
+ if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
2474
+ params = (paramsOrFirst || {});
2475
+ }
2476
+ else {
2477
+ params = {
2478
+ transactionId: paramsOrFirst
2479
+ };
2480
+ }
2481
+ const transactionId = params.transactionId;
2482
+ if (typeof transactionId === 'undefined') {
2483
+ throw new AppwriteException('Missing required parameter: "transactionId"');
2484
+ }
2485
+ const apiPath = '/databases/transactions/{transactionId}'.replace('{transactionId}', transactionId);
2486
+ const payload = {};
2487
+ const uri = new URL(this.client.config.endpoint + apiPath);
2488
+ return this.client.call('get', uri, {}, payload);
2489
+ }
2490
+ updateTransaction(paramsOrFirst, ...rest) {
2491
+ let params;
2492
+ if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
2493
+ params = (paramsOrFirst || {});
2494
+ }
2495
+ else {
2496
+ params = {
2497
+ transactionId: paramsOrFirst,
2498
+ commit: rest[0],
2499
+ rollback: rest[1]
2500
+ };
2501
+ }
2502
+ const transactionId = params.transactionId;
2503
+ const commit = params.commit;
2504
+ const rollback = params.rollback;
2505
+ if (typeof transactionId === 'undefined') {
2506
+ throw new AppwriteException('Missing required parameter: "transactionId"');
2507
+ }
2508
+ const apiPath = '/databases/transactions/{transactionId}'.replace('{transactionId}', transactionId);
2509
+ const payload = {};
2510
+ if (typeof commit !== 'undefined') {
2511
+ payload['commit'] = commit;
2512
+ }
2513
+ if (typeof rollback !== 'undefined') {
2514
+ payload['rollback'] = rollback;
2515
+ }
2516
+ const uri = new URL(this.client.config.endpoint + apiPath);
2517
+ return this.client.call('patch', uri, {
2518
+ 'content-type': 'application/json',
2519
+ }, payload);
2520
+ }
2521
+ deleteTransaction(paramsOrFirst) {
2522
+ let params;
2523
+ if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
2524
+ params = (paramsOrFirst || {});
2525
+ }
2526
+ else {
2527
+ params = {
2528
+ transactionId: paramsOrFirst
2529
+ };
2530
+ }
2531
+ const transactionId = params.transactionId;
2532
+ if (typeof transactionId === 'undefined') {
2533
+ throw new AppwriteException('Missing required parameter: "transactionId"');
2534
+ }
2535
+ const apiPath = '/databases/transactions/{transactionId}'.replace('{transactionId}', transactionId);
2536
+ const payload = {};
2537
+ const uri = new URL(this.client.config.endpoint + apiPath);
2538
+ return this.client.call('delete', uri, {
2539
+ 'content-type': 'application/json',
2540
+ }, payload);
2541
+ }
2542
+ createOperations(paramsOrFirst, ...rest) {
2543
+ let params;
2544
+ if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
2545
+ params = (paramsOrFirst || {});
2546
+ }
2547
+ else {
2548
+ params = {
2549
+ transactionId: paramsOrFirst,
2550
+ operations: rest[0]
2551
+ };
2552
+ }
2553
+ const transactionId = params.transactionId;
2554
+ const operations = params.operations;
2555
+ if (typeof transactionId === 'undefined') {
2556
+ throw new AppwriteException('Missing required parameter: "transactionId"');
2557
+ }
2558
+ const apiPath = '/databases/transactions/{transactionId}/operations'.replace('{transactionId}', transactionId);
2559
+ const payload = {};
2560
+ if (typeof operations !== 'undefined') {
2561
+ payload['operations'] = operations;
2562
+ }
2563
+ const uri = new URL(this.client.config.endpoint + apiPath);
2564
+ return this.client.call('post', uri, {
2565
+ 'content-type': 'application/json',
2566
+ }, payload);
2567
+ }
2421
2568
  listDocuments(paramsOrFirst, ...rest) {
2422
2569
  let params;
2423
2570
  if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
@@ -2427,12 +2574,16 @@ class Databases extends Service {
2427
2574
  params = {
2428
2575
  databaseId: paramsOrFirst,
2429
2576
  collectionId: rest[0],
2430
- queries: rest[1]
2577
+ queries: rest[1],
2578
+ transactionId: rest[2],
2579
+ total: rest[3]
2431
2580
  };
2432
2581
  }
2433
2582
  const databaseId = params.databaseId;
2434
2583
  const collectionId = params.collectionId;
2435
2584
  const queries = params.queries;
2585
+ const transactionId = params.transactionId;
2586
+ const total = params.total;
2436
2587
  if (typeof databaseId === 'undefined') {
2437
2588
  throw new AppwriteException('Missing required parameter: "databaseId"');
2438
2589
  }
@@ -2444,6 +2595,12 @@ class Databases extends Service {
2444
2595
  if (typeof queries !== 'undefined') {
2445
2596
  payload['queries'] = queries;
2446
2597
  }
2598
+ if (typeof transactionId !== 'undefined') {
2599
+ payload['transactionId'] = transactionId;
2600
+ }
2601
+ if (typeof total !== 'undefined') {
2602
+ payload['total'] = total;
2603
+ }
2447
2604
  const uri = new URL(this.client.config.endpoint + apiPath);
2448
2605
  return this.client.call('get', uri, {}, payload);
2449
2606
  }
@@ -2458,7 +2615,8 @@ class Databases extends Service {
2458
2615
  collectionId: rest[0],
2459
2616
  documentId: rest[1],
2460
2617
  data: rest[2],
2461
- permissions: rest[3]
2618
+ permissions: rest[3],
2619
+ transactionId: rest[4]
2462
2620
  };
2463
2621
  }
2464
2622
  const databaseId = params.databaseId;
@@ -2466,6 +2624,7 @@ class Databases extends Service {
2466
2624
  const documentId = params.documentId;
2467
2625
  const data = params.data;
2468
2626
  const permissions = params.permissions;
2627
+ const transactionId = params.transactionId;
2469
2628
  if (typeof databaseId === 'undefined') {
2470
2629
  throw new AppwriteException('Missing required parameter: "databaseId"');
2471
2630
  }
@@ -2489,6 +2648,9 @@ class Databases extends Service {
2489
2648
  if (typeof permissions !== 'undefined') {
2490
2649
  payload['permissions'] = permissions;
2491
2650
  }
2651
+ if (typeof transactionId !== 'undefined') {
2652
+ payload['transactionId'] = transactionId;
2653
+ }
2492
2654
  const uri = new URL(this.client.config.endpoint + apiPath);
2493
2655
  return this.client.call('post', uri, {
2494
2656
  'content-type': 'application/json',
@@ -2504,13 +2666,15 @@ class Databases extends Service {
2504
2666
  databaseId: paramsOrFirst,
2505
2667
  collectionId: rest[0],
2506
2668
  documentId: rest[1],
2507
- queries: rest[2]
2669
+ queries: rest[2],
2670
+ transactionId: rest[3]
2508
2671
  };
2509
2672
  }
2510
2673
  const databaseId = params.databaseId;
2511
2674
  const collectionId = params.collectionId;
2512
2675
  const documentId = params.documentId;
2513
2676
  const queries = params.queries;
2677
+ const transactionId = params.transactionId;
2514
2678
  if (typeof databaseId === 'undefined') {
2515
2679
  throw new AppwriteException('Missing required parameter: "databaseId"');
2516
2680
  }
@@ -2525,6 +2689,9 @@ class Databases extends Service {
2525
2689
  if (typeof queries !== 'undefined') {
2526
2690
  payload['queries'] = queries;
2527
2691
  }
2692
+ if (typeof transactionId !== 'undefined') {
2693
+ payload['transactionId'] = transactionId;
2694
+ }
2528
2695
  const uri = new URL(this.client.config.endpoint + apiPath);
2529
2696
  return this.client.call('get', uri, {}, payload);
2530
2697
  }
@@ -2539,7 +2706,8 @@ class Databases extends Service {
2539
2706
  collectionId: rest[0],
2540
2707
  documentId: rest[1],
2541
2708
  data: rest[2],
2542
- permissions: rest[3]
2709
+ permissions: rest[3],
2710
+ transactionId: rest[4]
2543
2711
  };
2544
2712
  }
2545
2713
  const databaseId = params.databaseId;
@@ -2547,6 +2715,7 @@ class Databases extends Service {
2547
2715
  const documentId = params.documentId;
2548
2716
  const data = params.data;
2549
2717
  const permissions = params.permissions;
2718
+ const transactionId = params.transactionId;
2550
2719
  if (typeof databaseId === 'undefined') {
2551
2720
  throw new AppwriteException('Missing required parameter: "databaseId"');
2552
2721
  }
@@ -2567,6 +2736,9 @@ class Databases extends Service {
2567
2736
  if (typeof permissions !== 'undefined') {
2568
2737
  payload['permissions'] = permissions;
2569
2738
  }
2739
+ if (typeof transactionId !== 'undefined') {
2740
+ payload['transactionId'] = transactionId;
2741
+ }
2570
2742
  const uri = new URL(this.client.config.endpoint + apiPath);
2571
2743
  return this.client.call('put', uri, {
2572
2744
  'content-type': 'application/json',
@@ -2583,7 +2755,8 @@ class Databases extends Service {
2583
2755
  collectionId: rest[0],
2584
2756
  documentId: rest[1],
2585
2757
  data: rest[2],
2586
- permissions: rest[3]
2758
+ permissions: rest[3],
2759
+ transactionId: rest[4]
2587
2760
  };
2588
2761
  }
2589
2762
  const databaseId = params.databaseId;
@@ -2591,6 +2764,7 @@ class Databases extends Service {
2591
2764
  const documentId = params.documentId;
2592
2765
  const data = params.data;
2593
2766
  const permissions = params.permissions;
2767
+ const transactionId = params.transactionId;
2594
2768
  if (typeof databaseId === 'undefined') {
2595
2769
  throw new AppwriteException('Missing required parameter: "databaseId"');
2596
2770
  }
@@ -2608,6 +2782,9 @@ class Databases extends Service {
2608
2782
  if (typeof permissions !== 'undefined') {
2609
2783
  payload['permissions'] = permissions;
2610
2784
  }
2785
+ if (typeof transactionId !== 'undefined') {
2786
+ payload['transactionId'] = transactionId;
2787
+ }
2611
2788
  const uri = new URL(this.client.config.endpoint + apiPath);
2612
2789
  return this.client.call('patch', uri, {
2613
2790
  'content-type': 'application/json',
@@ -2622,12 +2799,14 @@ class Databases extends Service {
2622
2799
  params = {
2623
2800
  databaseId: paramsOrFirst,
2624
2801
  collectionId: rest[0],
2625
- documentId: rest[1]
2802
+ documentId: rest[1],
2803
+ transactionId: rest[2]
2626
2804
  };
2627
2805
  }
2628
2806
  const databaseId = params.databaseId;
2629
2807
  const collectionId = params.collectionId;
2630
2808
  const documentId = params.documentId;
2809
+ const transactionId = params.transactionId;
2631
2810
  if (typeof databaseId === 'undefined') {
2632
2811
  throw new AppwriteException('Missing required parameter: "databaseId"');
2633
2812
  }
@@ -2639,6 +2818,9 @@ class Databases extends Service {
2639
2818
  }
2640
2819
  const apiPath = '/databases/{databaseId}/collections/{collectionId}/documents/{documentId}'.replace('{databaseId}', databaseId).replace('{collectionId}', collectionId).replace('{documentId}', documentId);
2641
2820
  const payload = {};
2821
+ if (typeof transactionId !== 'undefined') {
2822
+ payload['transactionId'] = transactionId;
2823
+ }
2642
2824
  const uri = new URL(this.client.config.endpoint + apiPath);
2643
2825
  return this.client.call('delete', uri, {
2644
2826
  'content-type': 'application/json',
@@ -2656,7 +2838,8 @@ class Databases extends Service {
2656
2838
  documentId: rest[1],
2657
2839
  attribute: rest[2],
2658
2840
  value: rest[3],
2659
- min: rest[4]
2841
+ min: rest[4],
2842
+ transactionId: rest[5]
2660
2843
  };
2661
2844
  }
2662
2845
  const databaseId = params.databaseId;
@@ -2665,6 +2848,7 @@ class Databases extends Service {
2665
2848
  const attribute = params.attribute;
2666
2849
  const value = params.value;
2667
2850
  const min = params.min;
2851
+ const transactionId = params.transactionId;
2668
2852
  if (typeof databaseId === 'undefined') {
2669
2853
  throw new AppwriteException('Missing required parameter: "databaseId"');
2670
2854
  }
@@ -2685,6 +2869,9 @@ class Databases extends Service {
2685
2869
  if (typeof min !== 'undefined') {
2686
2870
  payload['min'] = min;
2687
2871
  }
2872
+ if (typeof transactionId !== 'undefined') {
2873
+ payload['transactionId'] = transactionId;
2874
+ }
2688
2875
  const uri = new URL(this.client.config.endpoint + apiPath);
2689
2876
  return this.client.call('patch', uri, {
2690
2877
  'content-type': 'application/json',
@@ -2702,7 +2889,8 @@ class Databases extends Service {
2702
2889
  documentId: rest[1],
2703
2890
  attribute: rest[2],
2704
2891
  value: rest[3],
2705
- max: rest[4]
2892
+ max: rest[4],
2893
+ transactionId: rest[5]
2706
2894
  };
2707
2895
  }
2708
2896
  const databaseId = params.databaseId;
@@ -2711,6 +2899,7 @@ class Databases extends Service {
2711
2899
  const attribute = params.attribute;
2712
2900
  const value = params.value;
2713
2901
  const max = params.max;
2902
+ const transactionId = params.transactionId;
2714
2903
  if (typeof databaseId === 'undefined') {
2715
2904
  throw new AppwriteException('Missing required parameter: "databaseId"');
2716
2905
  }
@@ -2731,6 +2920,9 @@ class Databases extends Service {
2731
2920
  if (typeof max !== 'undefined') {
2732
2921
  payload['max'] = max;
2733
2922
  }
2923
+ if (typeof transactionId !== 'undefined') {
2924
+ payload['transactionId'] = transactionId;
2925
+ }
2734
2926
  const uri = new URL(this.client.config.endpoint + apiPath);
2735
2927
  return this.client.call('patch', uri, {
2736
2928
  'content-type': 'application/json',
@@ -2750,11 +2942,13 @@ class Functions extends Service {
2750
2942
  else {
2751
2943
  params = {
2752
2944
  functionId: paramsOrFirst,
2753
- queries: rest[0]
2945
+ queries: rest[0],
2946
+ total: rest[1]
2754
2947
  };
2755
2948
  }
2756
2949
  const functionId = params.functionId;
2757
2950
  const queries = params.queries;
2951
+ const total = params.total;
2758
2952
  if (typeof functionId === 'undefined') {
2759
2953
  throw new AppwriteException('Missing required parameter: "functionId"');
2760
2954
  }
@@ -2763,6 +2957,9 @@ class Functions extends Service {
2763
2957
  if (typeof queries !== 'undefined') {
2764
2958
  payload['queries'] = queries;
2765
2959
  }
2960
+ if (typeof total !== 'undefined') {
2961
+ payload['total'] = total;
2962
+ }
2766
2963
  const uri = new URL(this.client.config.endpoint + apiPath);
2767
2964
  return this.client.call('get', uri, {}, payload);
2768
2965
  }
@@ -3085,12 +3282,14 @@ class Storage extends Service {
3085
3282
  params = {
3086
3283
  bucketId: paramsOrFirst,
3087
3284
  queries: rest[0],
3088
- search: rest[1]
3285
+ search: rest[1],
3286
+ total: rest[2]
3089
3287
  };
3090
3288
  }
3091
3289
  const bucketId = params.bucketId;
3092
3290
  const queries = params.queries;
3093
3291
  const search = params.search;
3292
+ const total = params.total;
3094
3293
  if (typeof bucketId === 'undefined') {
3095
3294
  throw new AppwriteException('Missing required parameter: "bucketId"');
3096
3295
  }
@@ -3102,6 +3301,9 @@ class Storage extends Service {
3102
3301
  if (typeof search !== 'undefined') {
3103
3302
  payload['search'] = search;
3104
3303
  }
3304
+ if (typeof total !== 'undefined') {
3305
+ payload['total'] = total;
3306
+ }
3105
3307
  const uri = new URL(this.client.config.endpoint + apiPath);
3106
3308
  return this.client.call('get', uri, {}, payload);
3107
3309
  }
@@ -3561,6 +3763,143 @@ class TablesDB extends Service {
3561
3763
  constructor(client) {
3562
3764
  super(client);
3563
3765
  }
3766
+ listTransactions(paramsOrFirst) {
3767
+ let params;
3768
+ if (!paramsOrFirst || (paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
3769
+ params = (paramsOrFirst || {});
3770
+ }
3771
+ else {
3772
+ params = {
3773
+ queries: paramsOrFirst
3774
+ };
3775
+ }
3776
+ const queries = params.queries;
3777
+ const apiPath = '/tablesdb/transactions';
3778
+ const payload = {};
3779
+ if (typeof queries !== 'undefined') {
3780
+ payload['queries'] = queries;
3781
+ }
3782
+ const uri = new URL(this.client.config.endpoint + apiPath);
3783
+ return this.client.call('get', uri, {}, payload);
3784
+ }
3785
+ createTransaction(paramsOrFirst) {
3786
+ let params;
3787
+ if (!paramsOrFirst || (paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
3788
+ params = (paramsOrFirst || {});
3789
+ }
3790
+ else {
3791
+ params = {
3792
+ ttl: paramsOrFirst
3793
+ };
3794
+ }
3795
+ const ttl = params.ttl;
3796
+ const apiPath = '/tablesdb/transactions';
3797
+ const payload = {};
3798
+ if (typeof ttl !== 'undefined') {
3799
+ payload['ttl'] = ttl;
3800
+ }
3801
+ const uri = new URL(this.client.config.endpoint + apiPath);
3802
+ return this.client.call('post', uri, {
3803
+ 'content-type': 'application/json',
3804
+ }, payload);
3805
+ }
3806
+ getTransaction(paramsOrFirst) {
3807
+ let params;
3808
+ if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
3809
+ params = (paramsOrFirst || {});
3810
+ }
3811
+ else {
3812
+ params = {
3813
+ transactionId: paramsOrFirst
3814
+ };
3815
+ }
3816
+ const transactionId = params.transactionId;
3817
+ if (typeof transactionId === 'undefined') {
3818
+ throw new AppwriteException('Missing required parameter: "transactionId"');
3819
+ }
3820
+ const apiPath = '/tablesdb/transactions/{transactionId}'.replace('{transactionId}', transactionId);
3821
+ const payload = {};
3822
+ const uri = new URL(this.client.config.endpoint + apiPath);
3823
+ return this.client.call('get', uri, {}, payload);
3824
+ }
3825
+ updateTransaction(paramsOrFirst, ...rest) {
3826
+ let params;
3827
+ if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
3828
+ params = (paramsOrFirst || {});
3829
+ }
3830
+ else {
3831
+ params = {
3832
+ transactionId: paramsOrFirst,
3833
+ commit: rest[0],
3834
+ rollback: rest[1]
3835
+ };
3836
+ }
3837
+ const transactionId = params.transactionId;
3838
+ const commit = params.commit;
3839
+ const rollback = params.rollback;
3840
+ if (typeof transactionId === 'undefined') {
3841
+ throw new AppwriteException('Missing required parameter: "transactionId"');
3842
+ }
3843
+ const apiPath = '/tablesdb/transactions/{transactionId}'.replace('{transactionId}', transactionId);
3844
+ const payload = {};
3845
+ if (typeof commit !== 'undefined') {
3846
+ payload['commit'] = commit;
3847
+ }
3848
+ if (typeof rollback !== 'undefined') {
3849
+ payload['rollback'] = rollback;
3850
+ }
3851
+ const uri = new URL(this.client.config.endpoint + apiPath);
3852
+ return this.client.call('patch', uri, {
3853
+ 'content-type': 'application/json',
3854
+ }, payload);
3855
+ }
3856
+ deleteTransaction(paramsOrFirst) {
3857
+ let params;
3858
+ if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
3859
+ params = (paramsOrFirst || {});
3860
+ }
3861
+ else {
3862
+ params = {
3863
+ transactionId: paramsOrFirst
3864
+ };
3865
+ }
3866
+ const transactionId = params.transactionId;
3867
+ if (typeof transactionId === 'undefined') {
3868
+ throw new AppwriteException('Missing required parameter: "transactionId"');
3869
+ }
3870
+ const apiPath = '/tablesdb/transactions/{transactionId}'.replace('{transactionId}', transactionId);
3871
+ const payload = {};
3872
+ const uri = new URL(this.client.config.endpoint + apiPath);
3873
+ return this.client.call('delete', uri, {
3874
+ 'content-type': 'application/json',
3875
+ }, payload);
3876
+ }
3877
+ createOperations(paramsOrFirst, ...rest) {
3878
+ let params;
3879
+ if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
3880
+ params = (paramsOrFirst || {});
3881
+ }
3882
+ else {
3883
+ params = {
3884
+ transactionId: paramsOrFirst,
3885
+ operations: rest[0]
3886
+ };
3887
+ }
3888
+ const transactionId = params.transactionId;
3889
+ const operations = params.operations;
3890
+ if (typeof transactionId === 'undefined') {
3891
+ throw new AppwriteException('Missing required parameter: "transactionId"');
3892
+ }
3893
+ const apiPath = '/tablesdb/transactions/{transactionId}/operations'.replace('{transactionId}', transactionId);
3894
+ const payload = {};
3895
+ if (typeof operations !== 'undefined') {
3896
+ payload['operations'] = operations;
3897
+ }
3898
+ const uri = new URL(this.client.config.endpoint + apiPath);
3899
+ return this.client.call('post', uri, {
3900
+ 'content-type': 'application/json',
3901
+ }, payload);
3902
+ }
3564
3903
  listRows(paramsOrFirst, ...rest) {
3565
3904
  let params;
3566
3905
  if ((paramsOrFirst && typeof paramsOrFirst === 'object' && !Array.isArray(paramsOrFirst))) {
@@ -3570,12 +3909,16 @@ class TablesDB extends Service {
3570
3909
  params = {
3571
3910
  databaseId: paramsOrFirst,
3572
3911
  tableId: rest[0],
3573
- queries: rest[1]
3912
+ queries: rest[1],
3913
+ transactionId: rest[2],
3914
+ total: rest[3]
3574
3915
  };
3575
3916
  }
3576
3917
  const databaseId = params.databaseId;
3577
3918
  const tableId = params.tableId;
3578
3919
  const queries = params.queries;
3920
+ const transactionId = params.transactionId;
3921
+ const total = params.total;
3579
3922
  if (typeof databaseId === 'undefined') {
3580
3923
  throw new AppwriteException('Missing required parameter: "databaseId"');
3581
3924
  }
@@ -3587,6 +3930,12 @@ class TablesDB extends Service {
3587
3930
  if (typeof queries !== 'undefined') {
3588
3931
  payload['queries'] = queries;
3589
3932
  }
3933
+ if (typeof transactionId !== 'undefined') {
3934
+ payload['transactionId'] = transactionId;
3935
+ }
3936
+ if (typeof total !== 'undefined') {
3937
+ payload['total'] = total;
3938
+ }
3590
3939
  const uri = new URL(this.client.config.endpoint + apiPath);
3591
3940
  return this.client.call('get', uri, {}, payload);
3592
3941
  }
@@ -3601,7 +3950,8 @@ class TablesDB extends Service {
3601
3950
  tableId: rest[0],
3602
3951
  rowId: rest[1],
3603
3952
  data: rest[2],
3604
- permissions: rest[3]
3953
+ permissions: rest[3],
3954
+ transactionId: rest[4]
3605
3955
  };
3606
3956
  }
3607
3957
  const databaseId = params.databaseId;
@@ -3609,6 +3959,7 @@ class TablesDB extends Service {
3609
3959
  const rowId = params.rowId;
3610
3960
  const data = params.data;
3611
3961
  const permissions = params.permissions;
3962
+ const transactionId = params.transactionId;
3612
3963
  if (typeof databaseId === 'undefined') {
3613
3964
  throw new AppwriteException('Missing required parameter: "databaseId"');
3614
3965
  }
@@ -3632,6 +3983,9 @@ class TablesDB extends Service {
3632
3983
  if (typeof permissions !== 'undefined') {
3633
3984
  payload['permissions'] = permissions;
3634
3985
  }
3986
+ if (typeof transactionId !== 'undefined') {
3987
+ payload['transactionId'] = transactionId;
3988
+ }
3635
3989
  const uri = new URL(this.client.config.endpoint + apiPath);
3636
3990
  return this.client.call('post', uri, {
3637
3991
  'content-type': 'application/json',
@@ -3647,13 +4001,15 @@ class TablesDB extends Service {
3647
4001
  databaseId: paramsOrFirst,
3648
4002
  tableId: rest[0],
3649
4003
  rowId: rest[1],
3650
- queries: rest[2]
4004
+ queries: rest[2],
4005
+ transactionId: rest[3]
3651
4006
  };
3652
4007
  }
3653
4008
  const databaseId = params.databaseId;
3654
4009
  const tableId = params.tableId;
3655
4010
  const rowId = params.rowId;
3656
4011
  const queries = params.queries;
4012
+ const transactionId = params.transactionId;
3657
4013
  if (typeof databaseId === 'undefined') {
3658
4014
  throw new AppwriteException('Missing required parameter: "databaseId"');
3659
4015
  }
@@ -3668,6 +4024,9 @@ class TablesDB extends Service {
3668
4024
  if (typeof queries !== 'undefined') {
3669
4025
  payload['queries'] = queries;
3670
4026
  }
4027
+ if (typeof transactionId !== 'undefined') {
4028
+ payload['transactionId'] = transactionId;
4029
+ }
3671
4030
  const uri = new URL(this.client.config.endpoint + apiPath);
3672
4031
  return this.client.call('get', uri, {}, payload);
3673
4032
  }
@@ -3682,7 +4041,8 @@ class TablesDB extends Service {
3682
4041
  tableId: rest[0],
3683
4042
  rowId: rest[1],
3684
4043
  data: rest[2],
3685
- permissions: rest[3]
4044
+ permissions: rest[3],
4045
+ transactionId: rest[4]
3686
4046
  };
3687
4047
  }
3688
4048
  const databaseId = params.databaseId;
@@ -3690,6 +4050,7 @@ class TablesDB extends Service {
3690
4050
  const rowId = params.rowId;
3691
4051
  const data = params.data;
3692
4052
  const permissions = params.permissions;
4053
+ const transactionId = params.transactionId;
3693
4054
  if (typeof databaseId === 'undefined') {
3694
4055
  throw new AppwriteException('Missing required parameter: "databaseId"');
3695
4056
  }
@@ -3707,6 +4068,9 @@ class TablesDB extends Service {
3707
4068
  if (typeof permissions !== 'undefined') {
3708
4069
  payload['permissions'] = permissions;
3709
4070
  }
4071
+ if (typeof transactionId !== 'undefined') {
4072
+ payload['transactionId'] = transactionId;
4073
+ }
3710
4074
  const uri = new URL(this.client.config.endpoint + apiPath);
3711
4075
  return this.client.call('put', uri, {
3712
4076
  'content-type': 'application/json',
@@ -3723,7 +4087,8 @@ class TablesDB extends Service {
3723
4087
  tableId: rest[0],
3724
4088
  rowId: rest[1],
3725
4089
  data: rest[2],
3726
- permissions: rest[3]
4090
+ permissions: rest[3],
4091
+ transactionId: rest[4]
3727
4092
  };
3728
4093
  }
3729
4094
  const databaseId = params.databaseId;
@@ -3731,6 +4096,7 @@ class TablesDB extends Service {
3731
4096
  const rowId = params.rowId;
3732
4097
  const data = params.data;
3733
4098
  const permissions = params.permissions;
4099
+ const transactionId = params.transactionId;
3734
4100
  if (typeof databaseId === 'undefined') {
3735
4101
  throw new AppwriteException('Missing required parameter: "databaseId"');
3736
4102
  }
@@ -3748,6 +4114,9 @@ class TablesDB extends Service {
3748
4114
  if (typeof permissions !== 'undefined') {
3749
4115
  payload['permissions'] = permissions;
3750
4116
  }
4117
+ if (typeof transactionId !== 'undefined') {
4118
+ payload['transactionId'] = transactionId;
4119
+ }
3751
4120
  const uri = new URL(this.client.config.endpoint + apiPath);
3752
4121
  return this.client.call('patch', uri, {
3753
4122
  'content-type': 'application/json',
@@ -3762,12 +4131,14 @@ class TablesDB extends Service {
3762
4131
  params = {
3763
4132
  databaseId: paramsOrFirst,
3764
4133
  tableId: rest[0],
3765
- rowId: rest[1]
4134
+ rowId: rest[1],
4135
+ transactionId: rest[2]
3766
4136
  };
3767
4137
  }
3768
4138
  const databaseId = params.databaseId;
3769
4139
  const tableId = params.tableId;
3770
4140
  const rowId = params.rowId;
4141
+ const transactionId = params.transactionId;
3771
4142
  if (typeof databaseId === 'undefined') {
3772
4143
  throw new AppwriteException('Missing required parameter: "databaseId"');
3773
4144
  }
@@ -3779,6 +4150,9 @@ class TablesDB extends Service {
3779
4150
  }
3780
4151
  const apiPath = '/tablesdb/{databaseId}/tables/{tableId}/rows/{rowId}'.replace('{databaseId}', databaseId).replace('{tableId}', tableId).replace('{rowId}', rowId);
3781
4152
  const payload = {};
4153
+ if (typeof transactionId !== 'undefined') {
4154
+ payload['transactionId'] = transactionId;
4155
+ }
3782
4156
  const uri = new URL(this.client.config.endpoint + apiPath);
3783
4157
  return this.client.call('delete', uri, {
3784
4158
  'content-type': 'application/json',
@@ -3796,7 +4170,8 @@ class TablesDB extends Service {
3796
4170
  rowId: rest[1],
3797
4171
  column: rest[2],
3798
4172
  value: rest[3],
3799
- min: rest[4]
4173
+ min: rest[4],
4174
+ transactionId: rest[5]
3800
4175
  };
3801
4176
  }
3802
4177
  const databaseId = params.databaseId;
@@ -3805,6 +4180,7 @@ class TablesDB extends Service {
3805
4180
  const column = params.column;
3806
4181
  const value = params.value;
3807
4182
  const min = params.min;
4183
+ const transactionId = params.transactionId;
3808
4184
  if (typeof databaseId === 'undefined') {
3809
4185
  throw new AppwriteException('Missing required parameter: "databaseId"');
3810
4186
  }
@@ -3825,6 +4201,9 @@ class TablesDB extends Service {
3825
4201
  if (typeof min !== 'undefined') {
3826
4202
  payload['min'] = min;
3827
4203
  }
4204
+ if (typeof transactionId !== 'undefined') {
4205
+ payload['transactionId'] = transactionId;
4206
+ }
3828
4207
  const uri = new URL(this.client.config.endpoint + apiPath);
3829
4208
  return this.client.call('patch', uri, {
3830
4209
  'content-type': 'application/json',
@@ -3842,7 +4221,8 @@ class TablesDB extends Service {
3842
4221
  rowId: rest[1],
3843
4222
  column: rest[2],
3844
4223
  value: rest[3],
3845
- max: rest[4]
4224
+ max: rest[4],
4225
+ transactionId: rest[5]
3846
4226
  };
3847
4227
  }
3848
4228
  const databaseId = params.databaseId;
@@ -3851,6 +4231,7 @@ class TablesDB extends Service {
3851
4231
  const column = params.column;
3852
4232
  const value = params.value;
3853
4233
  const max = params.max;
4234
+ const transactionId = params.transactionId;
3854
4235
  if (typeof databaseId === 'undefined') {
3855
4236
  throw new AppwriteException('Missing required parameter: "databaseId"');
3856
4237
  }
@@ -3871,6 +4252,9 @@ class TablesDB extends Service {
3871
4252
  if (typeof max !== 'undefined') {
3872
4253
  payload['max'] = max;
3873
4254
  }
4255
+ if (typeof transactionId !== 'undefined') {
4256
+ payload['transactionId'] = transactionId;
4257
+ }
3874
4258
  const uri = new URL(this.client.config.endpoint + apiPath);
3875
4259
  return this.client.call('patch', uri, {
3876
4260
  'content-type': 'application/json',
@@ -3890,11 +4274,13 @@ class Teams extends Service {
3890
4274
  else {
3891
4275
  params = {
3892
4276
  queries: paramsOrFirst,
3893
- search: rest[0]
4277
+ search: rest[0],
4278
+ total: rest[1]
3894
4279
  };
3895
4280
  }
3896
4281
  const queries = params.queries;
3897
4282
  const search = params.search;
4283
+ const total = params.total;
3898
4284
  const apiPath = '/teams';
3899
4285
  const payload = {};
3900
4286
  if (typeof queries !== 'undefined') {
@@ -3903,6 +4289,9 @@ class Teams extends Service {
3903
4289
  if (typeof search !== 'undefined') {
3904
4290
  payload['search'] = search;
3905
4291
  }
4292
+ if (typeof total !== 'undefined') {
4293
+ payload['total'] = total;
4294
+ }
3906
4295
  const uri = new URL(this.client.config.endpoint + apiPath);
3907
4296
  return this.client.call('get', uri, {}, payload);
3908
4297
  }
@@ -4021,12 +4410,14 @@ class Teams extends Service {
4021
4410
  params = {
4022
4411
  teamId: paramsOrFirst,
4023
4412
  queries: rest[0],
4024
- search: rest[1]
4413
+ search: rest[1],
4414
+ total: rest[2]
4025
4415
  };
4026
4416
  }
4027
4417
  const teamId = params.teamId;
4028
4418
  const queries = params.queries;
4029
4419
  const search = params.search;
4420
+ const total = params.total;
4030
4421
  if (typeof teamId === 'undefined') {
4031
4422
  throw new AppwriteException('Missing required parameter: "teamId"');
4032
4423
  }
@@ -4038,6 +4429,9 @@ class Teams extends Service {
4038
4429
  if (typeof search !== 'undefined') {
4039
4430
  payload['search'] = search;
4040
4431
  }
4432
+ if (typeof total !== 'undefined') {
4433
+ payload['total'] = total;
4434
+ }
4041
4435
  const uri = new URL(this.client.config.endpoint + apiPath);
4042
4436
  return this.client.call('get', uri, {}, payload);
4043
4437
  }
@@ -4368,14 +4762,14 @@ Query.notEndsWith = (attribute, value) => new Query("notEndsWith", attribute, va
4368
4762
  * @param {string} value
4369
4763
  * @returns {string}
4370
4764
  */
4371
- Query.createdBefore = (value) => new Query("createdBefore", undefined, value).toString();
4765
+ Query.createdBefore = (value) => Query.lessThan("$createdAt", value);
4372
4766
  /**
4373
4767
  * Filter resources where document was created after date.
4374
4768
  *
4375
4769
  * @param {string} value
4376
4770
  * @returns {string}
4377
4771
  */
4378
- Query.createdAfter = (value) => new Query("createdAfter", undefined, value).toString();
4772
+ Query.createdAfter = (value) => Query.greaterThan("$createdAt", value);
4379
4773
  /**
4380
4774
  * Filter resources where document was created between dates.
4381
4775
  *
@@ -4383,21 +4777,21 @@ Query.createdAfter = (value) => new Query("createdAfter", undefined, value).toSt
4383
4777
  * @param {string} end
4384
4778
  * @returns {string}
4385
4779
  */
4386
- Query.createdBetween = (start, end) => new Query("createdBetween", undefined, [start, end]).toString();
4780
+ Query.createdBetween = (start, end) => Query.between("$createdAt", start, end);
4387
4781
  /**
4388
4782
  * Filter resources where document was updated before date.
4389
4783
  *
4390
4784
  * @param {string} value
4391
4785
  * @returns {string}
4392
4786
  */
4393
- Query.updatedBefore = (value) => new Query("updatedBefore", undefined, value).toString();
4787
+ Query.updatedBefore = (value) => Query.lessThan("$updatedAt", value);
4394
4788
  /**
4395
4789
  * Filter resources where document was updated after date.
4396
4790
  *
4397
4791
  * @param {string} value
4398
4792
  * @returns {string}
4399
4793
  */
4400
- Query.updatedAfter = (value) => new Query("updatedAfter", undefined, value).toString();
4794
+ Query.updatedAfter = (value) => Query.greaterThan("$updatedAt", value);
4401
4795
  /**
4402
4796
  * Filter resources where document was updated between dates.
4403
4797
  *
@@ -4405,7 +4799,7 @@ Query.updatedAfter = (value) => new Query("updatedAfter", undefined, value).toSt
4405
4799
  * @param {string} end
4406
4800
  * @returns {string}
4407
4801
  */
4408
- Query.updatedBetween = (start, end) => new Query("updatedBetween", undefined, [start, end]).toString();
4802
+ Query.updatedBetween = (start, end) => Query.between("$updatedAt", start, end);
4409
4803
  Query.or = (queries) => new Query("or", undefined, queries.map((query) => JSON.parse(query))).toString();
4410
4804
  Query.and = (queries) => new Query("and", undefined, queries.map((query) => JSON.parse(query))).toString();
4411
4805
  /**
@@ -4650,6 +5044,271 @@ _a = ID, _ID_hexTimestamp = function _ID_hexTimestamp() {
4650
5044
  return hexTimestamp;
4651
5045
  };
4652
5046
 
5047
+ exports.Condition = void 0;
5048
+ (function (Condition) {
5049
+ Condition["Equal"] = "equal";
5050
+ Condition["NotEqual"] = "notEqual";
5051
+ Condition["GreaterThan"] = "greaterThan";
5052
+ Condition["GreaterThanEqual"] = "greaterThanEqual";
5053
+ Condition["LessThan"] = "lessThan";
5054
+ Condition["LessThanEqual"] = "lessThanEqual";
5055
+ Condition["Contains"] = "contains";
5056
+ Condition["IsNull"] = "isNull";
5057
+ Condition["IsNotNull"] = "isNotNull";
5058
+ })(exports.Condition || (exports.Condition = {}));
5059
+ /**
5060
+ * Helper class to generate operator strings for atomic operations.
5061
+ */
5062
+ class Operator {
5063
+ /**
5064
+ * Constructor for Operator class.
5065
+ *
5066
+ * @param {string} method
5067
+ * @param {OperatorValues} values
5068
+ */
5069
+ constructor(method, values) {
5070
+ this.method = method;
5071
+ if (values !== undefined) {
5072
+ if (Array.isArray(values)) {
5073
+ this.values = values;
5074
+ }
5075
+ else {
5076
+ this.values = [values];
5077
+ }
5078
+ }
5079
+ }
5080
+ /**
5081
+ * Convert the operator object to a JSON string.
5082
+ *
5083
+ * @returns {string}
5084
+ */
5085
+ toString() {
5086
+ return JSON.stringify({
5087
+ method: this.method,
5088
+ values: this.values,
5089
+ });
5090
+ }
5091
+ }
5092
+ /**
5093
+ * Increment a numeric attribute by a specified value.
5094
+ *
5095
+ * @param {number} value
5096
+ * @param {number} max
5097
+ * @returns {string}
5098
+ */
5099
+ Operator.increment = (value = 1, max) => {
5100
+ if (isNaN(value) || !isFinite(value)) {
5101
+ throw new Error("Value cannot be NaN or Infinity");
5102
+ }
5103
+ if (max !== undefined && (isNaN(max) || !isFinite(max))) {
5104
+ throw new Error("Max cannot be NaN or Infinity");
5105
+ }
5106
+ const values = [value];
5107
+ if (max !== undefined) {
5108
+ values.push(max);
5109
+ }
5110
+ return new Operator("increment", values).toString();
5111
+ };
5112
+ /**
5113
+ * Decrement a numeric attribute by a specified value.
5114
+ *
5115
+ * @param {number} value
5116
+ * @param {number} min
5117
+ * @returns {string}
5118
+ */
5119
+ Operator.decrement = (value = 1, min) => {
5120
+ if (isNaN(value) || !isFinite(value)) {
5121
+ throw new Error("Value cannot be NaN or Infinity");
5122
+ }
5123
+ if (min !== undefined && (isNaN(min) || !isFinite(min))) {
5124
+ throw new Error("Min cannot be NaN or Infinity");
5125
+ }
5126
+ const values = [value];
5127
+ if (min !== undefined) {
5128
+ values.push(min);
5129
+ }
5130
+ return new Operator("decrement", values).toString();
5131
+ };
5132
+ /**
5133
+ * Multiply a numeric attribute by a specified factor.
5134
+ *
5135
+ * @param {number} factor
5136
+ * @param {number} max
5137
+ * @returns {string}
5138
+ */
5139
+ Operator.multiply = (factor, max) => {
5140
+ if (isNaN(factor) || !isFinite(factor)) {
5141
+ throw new Error("Factor cannot be NaN or Infinity");
5142
+ }
5143
+ if (max !== undefined && (isNaN(max) || !isFinite(max))) {
5144
+ throw new Error("Max cannot be NaN or Infinity");
5145
+ }
5146
+ const values = [factor];
5147
+ if (max !== undefined) {
5148
+ values.push(max);
5149
+ }
5150
+ return new Operator("multiply", values).toString();
5151
+ };
5152
+ /**
5153
+ * Divide a numeric attribute by a specified divisor.
5154
+ *
5155
+ * @param {number} divisor
5156
+ * @param {number} min
5157
+ * @returns {string}
5158
+ */
5159
+ Operator.divide = (divisor, min) => {
5160
+ if (isNaN(divisor) || !isFinite(divisor)) {
5161
+ throw new Error("Divisor cannot be NaN or Infinity");
5162
+ }
5163
+ if (min !== undefined && (isNaN(min) || !isFinite(min))) {
5164
+ throw new Error("Min cannot be NaN or Infinity");
5165
+ }
5166
+ if (divisor === 0) {
5167
+ throw new Error("Divisor cannot be zero");
5168
+ }
5169
+ const values = [divisor];
5170
+ if (min !== undefined) {
5171
+ values.push(min);
5172
+ }
5173
+ return new Operator("divide", values).toString();
5174
+ };
5175
+ /**
5176
+ * Apply modulo operation on a numeric attribute.
5177
+ *
5178
+ * @param {number} divisor
5179
+ * @returns {string}
5180
+ */
5181
+ Operator.modulo = (divisor) => {
5182
+ if (isNaN(divisor) || !isFinite(divisor)) {
5183
+ throw new Error("Divisor cannot be NaN or Infinity");
5184
+ }
5185
+ if (divisor === 0) {
5186
+ throw new Error("Divisor cannot be zero");
5187
+ }
5188
+ return new Operator("modulo", [divisor]).toString();
5189
+ };
5190
+ /**
5191
+ * Raise a numeric attribute to a specified power.
5192
+ *
5193
+ * @param {number} exponent
5194
+ * @param {number} max
5195
+ * @returns {string}
5196
+ */
5197
+ Operator.power = (exponent, max) => {
5198
+ if (isNaN(exponent) || !isFinite(exponent)) {
5199
+ throw new Error("Exponent cannot be NaN or Infinity");
5200
+ }
5201
+ if (max !== undefined && (isNaN(max) || !isFinite(max))) {
5202
+ throw new Error("Max cannot be NaN or Infinity");
5203
+ }
5204
+ const values = [exponent];
5205
+ if (max !== undefined) {
5206
+ values.push(max);
5207
+ }
5208
+ return new Operator("power", values).toString();
5209
+ };
5210
+ /**
5211
+ * Append values to an array attribute.
5212
+ *
5213
+ * @param {any[]} values
5214
+ * @returns {string}
5215
+ */
5216
+ Operator.arrayAppend = (values) => new Operator("arrayAppend", values).toString();
5217
+ /**
5218
+ * Prepend values to an array attribute.
5219
+ *
5220
+ * @param {any[]} values
5221
+ * @returns {string}
5222
+ */
5223
+ Operator.arrayPrepend = (values) => new Operator("arrayPrepend", values).toString();
5224
+ /**
5225
+ * Insert a value at a specific index in an array attribute.
5226
+ *
5227
+ * @param {number} index
5228
+ * @param {any} value
5229
+ * @returns {string}
5230
+ */
5231
+ Operator.arrayInsert = (index, value) => new Operator("arrayInsert", [index, value]).toString();
5232
+ /**
5233
+ * Remove a value from an array attribute.
5234
+ *
5235
+ * @param {any} value
5236
+ * @returns {string}
5237
+ */
5238
+ Operator.arrayRemove = (value) => new Operator("arrayRemove", [value]).toString();
5239
+ /**
5240
+ * Remove duplicate values from an array attribute.
5241
+ *
5242
+ * @returns {string}
5243
+ */
5244
+ Operator.arrayUnique = () => new Operator("arrayUnique", []).toString();
5245
+ /**
5246
+ * Keep only values that exist in both the current array and the provided array.
5247
+ *
5248
+ * @param {any[]} values
5249
+ * @returns {string}
5250
+ */
5251
+ Operator.arrayIntersect = (values) => new Operator("arrayIntersect", values).toString();
5252
+ /**
5253
+ * Remove values from the array that exist in the provided array.
5254
+ *
5255
+ * @param {any[]} values
5256
+ * @returns {string}
5257
+ */
5258
+ Operator.arrayDiff = (values) => new Operator("arrayDiff", values).toString();
5259
+ /**
5260
+ * Filter array values based on a condition.
5261
+ *
5262
+ * @param {Condition} condition
5263
+ * @param {any} value
5264
+ * @returns {string}
5265
+ */
5266
+ Operator.arrayFilter = (condition, value) => {
5267
+ const values = [condition, value === undefined ? null : value];
5268
+ return new Operator("arrayFilter", values).toString();
5269
+ };
5270
+ /**
5271
+ * Concatenate a value to a string or array attribute.
5272
+ *
5273
+ * @param {any} value
5274
+ * @returns {string}
5275
+ */
5276
+ Operator.stringConcat = (value) => new Operator("stringConcat", [value]).toString();
5277
+ /**
5278
+ * Replace occurrences of a search string with a replacement string.
5279
+ *
5280
+ * @param {string} search
5281
+ * @param {string} replace
5282
+ * @returns {string}
5283
+ */
5284
+ Operator.stringReplace = (search, replace) => new Operator("stringReplace", [search, replace]).toString();
5285
+ /**
5286
+ * Toggle a boolean attribute.
5287
+ *
5288
+ * @returns {string}
5289
+ */
5290
+ Operator.toggle = () => new Operator("toggle", []).toString();
5291
+ /**
5292
+ * Add days to a date attribute.
5293
+ *
5294
+ * @param {number} days
5295
+ * @returns {string}
5296
+ */
5297
+ Operator.dateAddDays = (days) => new Operator("dateAddDays", [days]).toString();
5298
+ /**
5299
+ * Subtract days from a date attribute.
5300
+ *
5301
+ * @param {number} days
5302
+ * @returns {string}
5303
+ */
5304
+ Operator.dateSubDays = (days) => new Operator("dateSubDays", [days]).toString();
5305
+ /**
5306
+ * Set a date attribute to the current date and time.
5307
+ *
5308
+ * @returns {string}
5309
+ */
5310
+ Operator.dateSetNow = () => new Operator("dateSetNow", []).toString();
5311
+
4653
5312
  exports.AuthenticatorType = void 0;
4654
5313
  (function (AuthenticatorType) {
4655
5314
  AuthenticatorType["Totp"] = "totp";
@@ -4980,6 +5639,22 @@ exports.ImageFormat = void 0;
4980
5639
  ImageFormat["Gif"] = "gif";
4981
5640
  })(exports.ImageFormat || (exports.ImageFormat = {}));
4982
5641
 
5642
+ exports.ExecutionTrigger = void 0;
5643
+ (function (ExecutionTrigger) {
5644
+ ExecutionTrigger["Http"] = "http";
5645
+ ExecutionTrigger["Schedule"] = "schedule";
5646
+ ExecutionTrigger["Event"] = "event";
5647
+ })(exports.ExecutionTrigger || (exports.ExecutionTrigger = {}));
5648
+
5649
+ exports.ExecutionStatus = void 0;
5650
+ (function (ExecutionStatus) {
5651
+ ExecutionStatus["Waiting"] = "waiting";
5652
+ ExecutionStatus["Processing"] = "processing";
5653
+ ExecutionStatus["Completed"] = "completed";
5654
+ ExecutionStatus["Failed"] = "failed";
5655
+ ExecutionStatus["Scheduled"] = "scheduled";
5656
+ })(exports.ExecutionStatus || (exports.ExecutionStatus = {}));
5657
+
4983
5658
  exports.Account = Account;
4984
5659
  exports.AppwriteException = AppwriteException;
4985
5660
  exports.Avatars = Avatars;
@@ -4990,6 +5665,7 @@ exports.Graphql = Graphql;
4990
5665
  exports.ID = ID;
4991
5666
  exports.Locale = Locale;
4992
5667
  exports.Messaging = Messaging;
5668
+ exports.Operator = Operator;
4993
5669
  exports.Permission = Permission;
4994
5670
  exports.Query = Query;
4995
5671
  exports.Role = Role;