diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index c188fab0..7053b5e1 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -20,4 +20,4 @@ jobs: run: flutter pub get - uses: dart-lang/setup-dart@v1 - name: Publish - run: dart pub publish --force \ No newline at end of file + run: dart pub publish --force diff --git a/CHANGELOG.md b/CHANGELOG.md index b729792e..95ac7768 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,17 @@ +## 13.0.0 + +* Fixed realtime reconnection issues +* Support for Appwrite 1.6 +* Update dependencies +* Added `scheduledAt` attribute to `Execution` response model +* Added `scheduledAt` parameter to `createExecution()`: Enables creating a delayed execution +* Breaking changes: + * Removed `otp` parameter from `deleteMFAAuthenticator`. + +You can find the new syntax for breaking changes in the [Appwrite API references](https://appwrite.io/docs/references). Select version `1.6.x`. + +**Please note: This version is compatible with Appwrite 1.6 and later only. If you do not update your Appwrite SDK, old SDKs will not break your app. Appwrite APIs are backwards compatible.** + ## 12.0.4 * Fixed concurrent modification error when closing realtime socket diff --git a/README.md b/README.md index 3cf6fa7a..22851cba 100644 --- a/README.md +++ b/README.md @@ -2,12 +2,12 @@ [![pub package](https://img.shields.io/pub/v/appwrite?style=flat-square)](https://pub.dartlang.org/packages/appwrite) ![License](https://img.shields.io/github/license/appwrite/sdk-for-flutter.svg?style=flat-square) -![Version](https://img.shields.io/badge/api%20version-1.5.x-blue.svg?style=flat-square) +![Version](https://img.shields.io/badge/api%20version-1.6.x-blue.svg?style=flat-square) [![Build Status](https://img.shields.io/travis/com/appwrite/sdk-generator?style=flat-square)](https://travis-ci.com/appwrite/sdk-generator) [![Twitter Account](https://img.shields.io/twitter/follow/appwrite?color=00acee&label=twitter&style=flat-square)](https://twitter.com/appwrite) [![Discord](https://img.shields.io/discord/564160730845151244?label=discord&style=flat-square)](https://appwrite.io/discord) -**This SDK is compatible with Appwrite server version 1.5.x. For older versions, please check [previous releases](https://github.com/appwrite/sdk-for-flutter/releases).** +**This SDK is compatible with Appwrite server version 1.6.x. For older versions, please check [previous releases](https://github.com/appwrite/sdk-for-flutter/releases).** Appwrite is an open-source backend as a service server that abstract and simplify complex and repetitive development tasks behind a very simple to use REST API. Appwrite aims to help you develop your apps faster and in a more secure way. Use the Flutter SDK to integrate your app with the Appwrite server to easily start interacting with all of Appwrite backend APIs and tools. For full API documentation and tutorials go to [https://appwrite.io/docs](https://appwrite.io/docs) @@ -21,7 +21,7 @@ Add this to your package's `pubspec.yaml` file: ```yml dependencies: - appwrite: ^12.0.4 + appwrite: ^13.0.0 ``` You can install packages from the command line: diff --git a/docs/examples/account/create-anonymous-session.md b/docs/examples/account/create-anonymous-session.md index 8eea4bf4..50887f10 100644 --- a/docs/examples/account/create-anonymous-session.md +++ b/docs/examples/account/create-anonymous-session.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/create-email-password-session.md b/docs/examples/account/create-email-password-session.md index d90d9e26..64c0e93c 100644 --- a/docs/examples/account/create-email-password-session.md +++ b/docs/examples/account/create-email-password-session.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/create-email-token.md b/docs/examples/account/create-email-token.md index 2532d82d..140689a9 100644 --- a/docs/examples/account/create-email-token.md +++ b/docs/examples/account/create-email-token.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/create-j-w-t.md b/docs/examples/account/create-j-w-t.md index 1e33c888..256f28e0 100644 --- a/docs/examples/account/create-j-w-t.md +++ b/docs/examples/account/create-j-w-t.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/create-magic-u-r-l-token.md b/docs/examples/account/create-magic-u-r-l-token.md index 8c430c86..cf2d1bd1 100644 --- a/docs/examples/account/create-magic-u-r-l-token.md +++ b/docs/examples/account/create-magic-u-r-l-token.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/create-mfa-authenticator.md b/docs/examples/account/create-mfa-authenticator.md index b43ec1a6..2b35cc9e 100644 --- a/docs/examples/account/create-mfa-authenticator.md +++ b/docs/examples/account/create-mfa-authenticator.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/create-mfa-challenge.md b/docs/examples/account/create-mfa-challenge.md index 64bcb367..ad1b8c20 100644 --- a/docs/examples/account/create-mfa-challenge.md +++ b/docs/examples/account/create-mfa-challenge.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/create-mfa-recovery-codes.md b/docs/examples/account/create-mfa-recovery-codes.md index 68fdaaa4..22b3b44c 100644 --- a/docs/examples/account/create-mfa-recovery-codes.md +++ b/docs/examples/account/create-mfa-recovery-codes.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/create-o-auth2session.md b/docs/examples/account/create-o-auth2session.md index ea651e73..d00a1c71 100644 --- a/docs/examples/account/create-o-auth2session.md +++ b/docs/examples/account/create-o-auth2session.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/create-o-auth2token.md b/docs/examples/account/create-o-auth2token.md index 4227359c..b1478bf9 100644 --- a/docs/examples/account/create-o-auth2token.md +++ b/docs/examples/account/create-o-auth2token.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/create-phone-token.md b/docs/examples/account/create-phone-token.md index efcdcbe8..08dce5f7 100644 --- a/docs/examples/account/create-phone-token.md +++ b/docs/examples/account/create-phone-token.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/create-phone-verification.md b/docs/examples/account/create-phone-verification.md index ad0da61d..727cfe50 100644 --- a/docs/examples/account/create-phone-verification.md +++ b/docs/examples/account/create-phone-verification.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/create-push-target.md b/docs/examples/account/create-push-target.md index be945eec..de324b84 100644 --- a/docs/examples/account/create-push-target.md +++ b/docs/examples/account/create-push-target.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/create-recovery.md b/docs/examples/account/create-recovery.md index 8b8a41a8..09d0994d 100644 --- a/docs/examples/account/create-recovery.md +++ b/docs/examples/account/create-recovery.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/create-session.md b/docs/examples/account/create-session.md index 29aca9c5..e35cc197 100644 --- a/docs/examples/account/create-session.md +++ b/docs/examples/account/create-session.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/create-verification.md b/docs/examples/account/create-verification.md index c3a4f0f7..85142abe 100644 --- a/docs/examples/account/create-verification.md +++ b/docs/examples/account/create-verification.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/create.md b/docs/examples/account/create.md index 032c523e..98f6fcba 100644 --- a/docs/examples/account/create.md +++ b/docs/examples/account/create.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/delete-identity.md b/docs/examples/account/delete-identity.md index ab68036a..9846a0c1 100644 --- a/docs/examples/account/delete-identity.md +++ b/docs/examples/account/delete-identity.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/delete-mfa-authenticator.md b/docs/examples/account/delete-mfa-authenticator.md index 3f62177e..6d2a21ce 100644 --- a/docs/examples/account/delete-mfa-authenticator.md +++ b/docs/examples/account/delete-mfa-authenticator.md @@ -2,11 +2,10 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); await account.deleteMfaAuthenticator( type: AuthenticatorType.totp, - otp: '', ); diff --git a/docs/examples/account/delete-push-target.md b/docs/examples/account/delete-push-target.md index 2081bf67..f6ec230d 100644 --- a/docs/examples/account/delete-push-target.md +++ b/docs/examples/account/delete-push-target.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/delete-session.md b/docs/examples/account/delete-session.md index 7f84f82a..07978e2c 100644 --- a/docs/examples/account/delete-session.md +++ b/docs/examples/account/delete-session.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/delete-sessions.md b/docs/examples/account/delete-sessions.md index c17afd0d..faafcb97 100644 --- a/docs/examples/account/delete-sessions.md +++ b/docs/examples/account/delete-sessions.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/get-mfa-recovery-codes.md b/docs/examples/account/get-mfa-recovery-codes.md index 008f8ced..413fb059 100644 --- a/docs/examples/account/get-mfa-recovery-codes.md +++ b/docs/examples/account/get-mfa-recovery-codes.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/get-prefs.md b/docs/examples/account/get-prefs.md index 6b378996..bc7731da 100644 --- a/docs/examples/account/get-prefs.md +++ b/docs/examples/account/get-prefs.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/get-session.md b/docs/examples/account/get-session.md index 6954e51e..4958fd1c 100644 --- a/docs/examples/account/get-session.md +++ b/docs/examples/account/get-session.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/get.md b/docs/examples/account/get.md index 2790b57a..c38dd7f4 100644 --- a/docs/examples/account/get.md +++ b/docs/examples/account/get.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/list-identities.md b/docs/examples/account/list-identities.md index 763e2533..183d525b 100644 --- a/docs/examples/account/list-identities.md +++ b/docs/examples/account/list-identities.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/list-logs.md b/docs/examples/account/list-logs.md index d3b06dd9..ec29b951 100644 --- a/docs/examples/account/list-logs.md +++ b/docs/examples/account/list-logs.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/list-mfa-factors.md b/docs/examples/account/list-mfa-factors.md index 08186e3e..bb320225 100644 --- a/docs/examples/account/list-mfa-factors.md +++ b/docs/examples/account/list-mfa-factors.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/list-sessions.md b/docs/examples/account/list-sessions.md index 0bde760d..3af2299e 100644 --- a/docs/examples/account/list-sessions.md +++ b/docs/examples/account/list-sessions.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/update-email.md b/docs/examples/account/update-email.md index 0ce8eb5e..b3c7ffe9 100644 --- a/docs/examples/account/update-email.md +++ b/docs/examples/account/update-email.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/update-m-f-a.md b/docs/examples/account/update-m-f-a.md index 1f5f709b..c376c729 100644 --- a/docs/examples/account/update-m-f-a.md +++ b/docs/examples/account/update-m-f-a.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/update-magic-u-r-l-session.md b/docs/examples/account/update-magic-u-r-l-session.md index 2eb4b33d..e75aba3f 100644 --- a/docs/examples/account/update-magic-u-r-l-session.md +++ b/docs/examples/account/update-magic-u-r-l-session.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/update-mfa-authenticator.md b/docs/examples/account/update-mfa-authenticator.md index 4f5074e2..d2d974fb 100644 --- a/docs/examples/account/update-mfa-authenticator.md +++ b/docs/examples/account/update-mfa-authenticator.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/update-mfa-challenge.md b/docs/examples/account/update-mfa-challenge.md index 34c37801..c8e1af7e 100644 --- a/docs/examples/account/update-mfa-challenge.md +++ b/docs/examples/account/update-mfa-challenge.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/update-mfa-recovery-codes.md b/docs/examples/account/update-mfa-recovery-codes.md index 914366fb..fd2aaf72 100644 --- a/docs/examples/account/update-mfa-recovery-codes.md +++ b/docs/examples/account/update-mfa-recovery-codes.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/update-name.md b/docs/examples/account/update-name.md index dc2c4c6a..77e774c7 100644 --- a/docs/examples/account/update-name.md +++ b/docs/examples/account/update-name.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/update-password.md b/docs/examples/account/update-password.md index 37c6ecf4..8d36c1f6 100644 --- a/docs/examples/account/update-password.md +++ b/docs/examples/account/update-password.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/update-phone-session.md b/docs/examples/account/update-phone-session.md index f6871317..64d8d842 100644 --- a/docs/examples/account/update-phone-session.md +++ b/docs/examples/account/update-phone-session.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/update-phone-verification.md b/docs/examples/account/update-phone-verification.md index 0facc29f..5c67e1a5 100644 --- a/docs/examples/account/update-phone-verification.md +++ b/docs/examples/account/update-phone-verification.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/update-phone.md b/docs/examples/account/update-phone.md index 24000c4b..6c9559db 100644 --- a/docs/examples/account/update-phone.md +++ b/docs/examples/account/update-phone.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/update-prefs.md b/docs/examples/account/update-prefs.md index d83e25f9..ca9b709a 100644 --- a/docs/examples/account/update-prefs.md +++ b/docs/examples/account/update-prefs.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/update-push-target.md b/docs/examples/account/update-push-target.md index 0311d0be..a54b1aa3 100644 --- a/docs/examples/account/update-push-target.md +++ b/docs/examples/account/update-push-target.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/update-recovery.md b/docs/examples/account/update-recovery.md index f87e8723..648d25b1 100644 --- a/docs/examples/account/update-recovery.md +++ b/docs/examples/account/update-recovery.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/update-session.md b/docs/examples/account/update-session.md index 5a12ad27..2cdf32aa 100644 --- a/docs/examples/account/update-session.md +++ b/docs/examples/account/update-session.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/update-status.md b/docs/examples/account/update-status.md index 8b7bc49c..0b0fb95e 100644 --- a/docs/examples/account/update-status.md +++ b/docs/examples/account/update-status.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/account/update-verification.md b/docs/examples/account/update-verification.md index c3db86b8..3071a040 100644 --- a/docs/examples/account/update-verification.md +++ b/docs/examples/account/update-verification.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Account account = Account(client); diff --git a/docs/examples/avatars/get-browser.md b/docs/examples/avatars/get-browser.md index 6bc6e541..21dae211 100644 --- a/docs/examples/avatars/get-browser.md +++ b/docs/examples/avatars/get-browser.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Avatars avatars = Avatars(client); diff --git a/docs/examples/avatars/get-credit-card.md b/docs/examples/avatars/get-credit-card.md index d5b96383..a580e3bd 100644 --- a/docs/examples/avatars/get-credit-card.md +++ b/docs/examples/avatars/get-credit-card.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Avatars avatars = Avatars(client); diff --git a/docs/examples/avatars/get-favicon.md b/docs/examples/avatars/get-favicon.md index 10047b44..f35f5a71 100644 --- a/docs/examples/avatars/get-favicon.md +++ b/docs/examples/avatars/get-favicon.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Avatars avatars = Avatars(client); diff --git a/docs/examples/avatars/get-flag.md b/docs/examples/avatars/get-flag.md index 66a5b202..8f358261 100644 --- a/docs/examples/avatars/get-flag.md +++ b/docs/examples/avatars/get-flag.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Avatars avatars = Avatars(client); diff --git a/docs/examples/avatars/get-image.md b/docs/examples/avatars/get-image.md index 15f3ea6e..5d8a9865 100644 --- a/docs/examples/avatars/get-image.md +++ b/docs/examples/avatars/get-image.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Avatars avatars = Avatars(client); diff --git a/docs/examples/avatars/get-initials.md b/docs/examples/avatars/get-initials.md index 2d540a1d..26302d02 100644 --- a/docs/examples/avatars/get-initials.md +++ b/docs/examples/avatars/get-initials.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Avatars avatars = Avatars(client); diff --git a/docs/examples/avatars/get-q-r.md b/docs/examples/avatars/get-q-r.md index 94b34bda..40f0b506 100644 --- a/docs/examples/avatars/get-q-r.md +++ b/docs/examples/avatars/get-q-r.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Avatars avatars = Avatars(client); diff --git a/docs/examples/databases/create-document.md b/docs/examples/databases/create-document.md index 6645b4ed..7853329a 100644 --- a/docs/examples/databases/create-document.md +++ b/docs/examples/databases/create-document.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Databases databases = Databases(client); diff --git a/docs/examples/databases/delete-document.md b/docs/examples/databases/delete-document.md index fc7c5ef1..14cec01c 100644 --- a/docs/examples/databases/delete-document.md +++ b/docs/examples/databases/delete-document.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Databases databases = Databases(client); diff --git a/docs/examples/databases/get-document.md b/docs/examples/databases/get-document.md index 4f2ba3e3..55206357 100644 --- a/docs/examples/databases/get-document.md +++ b/docs/examples/databases/get-document.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Databases databases = Databases(client); diff --git a/docs/examples/databases/list-documents.md b/docs/examples/databases/list-documents.md index da43b17d..e78a02de 100644 --- a/docs/examples/databases/list-documents.md +++ b/docs/examples/databases/list-documents.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Databases databases = Databases(client); diff --git a/docs/examples/databases/update-document.md b/docs/examples/databases/update-document.md index 42f5b657..29ee8781 100644 --- a/docs/examples/databases/update-document.md +++ b/docs/examples/databases/update-document.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Databases databases = Databases(client); diff --git a/docs/examples/functions/create-execution.md b/docs/examples/functions/create-execution.md index 6ca5e14b..94f0ae55 100644 --- a/docs/examples/functions/create-execution.md +++ b/docs/examples/functions/create-execution.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Functions functions = Functions(client); @@ -13,4 +13,5 @@ Execution result = await functions.createExecution( path: '', // optional method: ExecutionMethod.gET, // optional headers: {}, // optional + scheduledAt: '', // optional ); diff --git a/docs/examples/functions/get-execution.md b/docs/examples/functions/get-execution.md index 67439f40..b4595146 100644 --- a/docs/examples/functions/get-execution.md +++ b/docs/examples/functions/get-execution.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Functions functions = Functions(client); diff --git a/docs/examples/functions/list-executions.md b/docs/examples/functions/list-executions.md index 3902d6e7..ba4b4e41 100644 --- a/docs/examples/functions/list-executions.md +++ b/docs/examples/functions/list-executions.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Functions functions = Functions(client); diff --git a/docs/examples/graphql/mutation.md b/docs/examples/graphql/mutation.md index d94c5315..1ac9ba0a 100644 --- a/docs/examples/graphql/mutation.md +++ b/docs/examples/graphql/mutation.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Graphql graphql = Graphql(client); diff --git a/docs/examples/graphql/query.md b/docs/examples/graphql/query.md index 13c21eeb..2c06a838 100644 --- a/docs/examples/graphql/query.md +++ b/docs/examples/graphql/query.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Graphql graphql = Graphql(client); diff --git a/docs/examples/locale/get.md b/docs/examples/locale/get.md index b705b834..53cfda5c 100644 --- a/docs/examples/locale/get.md +++ b/docs/examples/locale/get.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Locale locale = Locale(client); diff --git a/docs/examples/locale/list-codes.md b/docs/examples/locale/list-codes.md index c9ca3297..bfd53f97 100644 --- a/docs/examples/locale/list-codes.md +++ b/docs/examples/locale/list-codes.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Locale locale = Locale(client); diff --git a/docs/examples/locale/list-continents.md b/docs/examples/locale/list-continents.md index b174e606..c462c2e4 100644 --- a/docs/examples/locale/list-continents.md +++ b/docs/examples/locale/list-continents.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Locale locale = Locale(client); diff --git a/docs/examples/locale/list-countries-e-u.md b/docs/examples/locale/list-countries-e-u.md index e3772f0f..0f5629b5 100644 --- a/docs/examples/locale/list-countries-e-u.md +++ b/docs/examples/locale/list-countries-e-u.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Locale locale = Locale(client); diff --git a/docs/examples/locale/list-countries-phones.md b/docs/examples/locale/list-countries-phones.md index 9e0ed748..ee8689a9 100644 --- a/docs/examples/locale/list-countries-phones.md +++ b/docs/examples/locale/list-countries-phones.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Locale locale = Locale(client); diff --git a/docs/examples/locale/list-countries.md b/docs/examples/locale/list-countries.md index 12c57042..0c1bae60 100644 --- a/docs/examples/locale/list-countries.md +++ b/docs/examples/locale/list-countries.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Locale locale = Locale(client); diff --git a/docs/examples/locale/list-currencies.md b/docs/examples/locale/list-currencies.md index 0d6662ee..a9c53b12 100644 --- a/docs/examples/locale/list-currencies.md +++ b/docs/examples/locale/list-currencies.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Locale locale = Locale(client); diff --git a/docs/examples/locale/list-languages.md b/docs/examples/locale/list-languages.md index b2f22a16..c5bdd264 100644 --- a/docs/examples/locale/list-languages.md +++ b/docs/examples/locale/list-languages.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Locale locale = Locale(client); diff --git a/docs/examples/messaging/create-subscriber.md b/docs/examples/messaging/create-subscriber.md index fc3b2596..1284151b 100644 --- a/docs/examples/messaging/create-subscriber.md +++ b/docs/examples/messaging/create-subscriber.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Messaging messaging = Messaging(client); diff --git a/docs/examples/messaging/delete-subscriber.md b/docs/examples/messaging/delete-subscriber.md index 5cd62597..aa66acbf 100644 --- a/docs/examples/messaging/delete-subscriber.md +++ b/docs/examples/messaging/delete-subscriber.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Messaging messaging = Messaging(client); diff --git a/docs/examples/storage/create-file.md b/docs/examples/storage/create-file.md index 55216ba3..1a0a498b 100644 --- a/docs/examples/storage/create-file.md +++ b/docs/examples/storage/create-file.md @@ -3,7 +3,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Storage storage = Storage(client); diff --git a/docs/examples/storage/delete-file.md b/docs/examples/storage/delete-file.md index bab2a477..39135824 100644 --- a/docs/examples/storage/delete-file.md +++ b/docs/examples/storage/delete-file.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Storage storage = Storage(client); diff --git a/docs/examples/storage/get-file-download.md b/docs/examples/storage/get-file-download.md index 1a612be0..33464425 100644 --- a/docs/examples/storage/get-file-download.md +++ b/docs/examples/storage/get-file-download.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Storage storage = Storage(client); diff --git a/docs/examples/storage/get-file-preview.md b/docs/examples/storage/get-file-preview.md index 2649bb2c..2bb09976 100644 --- a/docs/examples/storage/get-file-preview.md +++ b/docs/examples/storage/get-file-preview.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Storage storage = Storage(client); diff --git a/docs/examples/storage/get-file-view.md b/docs/examples/storage/get-file-view.md index 5d0e38e8..c5f8ea11 100644 --- a/docs/examples/storage/get-file-view.md +++ b/docs/examples/storage/get-file-view.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Storage storage = Storage(client); diff --git a/docs/examples/storage/get-file.md b/docs/examples/storage/get-file.md index b7b894b4..83a32190 100644 --- a/docs/examples/storage/get-file.md +++ b/docs/examples/storage/get-file.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Storage storage = Storage(client); diff --git a/docs/examples/storage/list-files.md b/docs/examples/storage/list-files.md index f75ef6e3..d5f8b0b4 100644 --- a/docs/examples/storage/list-files.md +++ b/docs/examples/storage/list-files.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Storage storage = Storage(client); diff --git a/docs/examples/storage/update-file.md b/docs/examples/storage/update-file.md index cca06533..c88355a5 100644 --- a/docs/examples/storage/update-file.md +++ b/docs/examples/storage/update-file.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Storage storage = Storage(client); diff --git a/docs/examples/teams/create-membership.md b/docs/examples/teams/create-membership.md index 1cf04267..04eedde6 100644 --- a/docs/examples/teams/create-membership.md +++ b/docs/examples/teams/create-membership.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Teams teams = Teams(client); diff --git a/docs/examples/teams/create.md b/docs/examples/teams/create.md index 04593d46..1afcbf1c 100644 --- a/docs/examples/teams/create.md +++ b/docs/examples/teams/create.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Teams teams = Teams(client); diff --git a/docs/examples/teams/delete-membership.md b/docs/examples/teams/delete-membership.md index 38f47c79..83c80a27 100644 --- a/docs/examples/teams/delete-membership.md +++ b/docs/examples/teams/delete-membership.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Teams teams = Teams(client); diff --git a/docs/examples/teams/delete.md b/docs/examples/teams/delete.md index 4107155b..5a4d0dba 100644 --- a/docs/examples/teams/delete.md +++ b/docs/examples/teams/delete.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Teams teams = Teams(client); diff --git a/docs/examples/teams/get-membership.md b/docs/examples/teams/get-membership.md index 10fd9594..3ae0844c 100644 --- a/docs/examples/teams/get-membership.md +++ b/docs/examples/teams/get-membership.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Teams teams = Teams(client); diff --git a/docs/examples/teams/get-prefs.md b/docs/examples/teams/get-prefs.md index b8f36922..0f93c25a 100644 --- a/docs/examples/teams/get-prefs.md +++ b/docs/examples/teams/get-prefs.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Teams teams = Teams(client); diff --git a/docs/examples/teams/get.md b/docs/examples/teams/get.md index 12ed636c..bcf45530 100644 --- a/docs/examples/teams/get.md +++ b/docs/examples/teams/get.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Teams teams = Teams(client); diff --git a/docs/examples/teams/list-memberships.md b/docs/examples/teams/list-memberships.md index ca98b5f1..7fc920a2 100644 --- a/docs/examples/teams/list-memberships.md +++ b/docs/examples/teams/list-memberships.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Teams teams = Teams(client); diff --git a/docs/examples/teams/list.md b/docs/examples/teams/list.md index 25aaafa4..75b29554 100644 --- a/docs/examples/teams/list.md +++ b/docs/examples/teams/list.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Teams teams = Teams(client); diff --git a/docs/examples/teams/update-membership-status.md b/docs/examples/teams/update-membership-status.md index ae05c371..e08f63ba 100644 --- a/docs/examples/teams/update-membership-status.md +++ b/docs/examples/teams/update-membership-status.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Teams teams = Teams(client); diff --git a/docs/examples/teams/update-membership.md b/docs/examples/teams/update-membership.md index 41f2a9be..33e6568d 100644 --- a/docs/examples/teams/update-membership.md +++ b/docs/examples/teams/update-membership.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Teams teams = Teams(client); diff --git a/docs/examples/teams/update-name.md b/docs/examples/teams/update-name.md index 2b3b288d..43d1b0c7 100644 --- a/docs/examples/teams/update-name.md +++ b/docs/examples/teams/update-name.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Teams teams = Teams(client); diff --git a/docs/examples/teams/update-prefs.md b/docs/examples/teams/update-prefs.md index 8afb99ad..2a446f08 100644 --- a/docs/examples/teams/update-prefs.md +++ b/docs/examples/teams/update-prefs.md @@ -2,7 +2,7 @@ import 'package:appwrite/appwrite.dart'; Client client = Client() .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint - .setProject('5df5acd0d48c2'); // Your project ID + .setProject(''); // Your project ID Teams teams = Teams(client); diff --git a/lib/appwrite.dart b/lib/appwrite.dart index d32ccc8f..c89bac24 100644 --- a/lib/appwrite.dart +++ b/lib/appwrite.dart @@ -1,6 +1,6 @@ /// Appwrite Flutter SDK /// -/// This SDK is compatible with Appwrite server version 1.5.x. +/// This SDK is compatible with Appwrite server version 1.6.x. /// For older versions, please check /// [previous releases](https://github.com/appwrite/sdk-for-flutter/releases). library appwrite; diff --git a/lib/services/account.dart b/lib/services/account.dart index 7a9feea2..a94a37d2 100644 --- a/lib/services/account.dart +++ b/lib/services/account.dart @@ -132,7 +132,7 @@ class Account extends Service { /// from its creation and will be invalid if the user will logout in that time /// frame. Future createJWT() async { - const String apiPath = '/account/jwt'; + const String apiPath = '/account/jwts'; final Map apiParams = {}; @@ -187,7 +187,7 @@ class Account extends Service { return models.User.fromMap(res.data); } - /// Add Authenticator + /// Create Authenticator /// /// Add an authenticator app to be used as an MFA factor. Verify the /// authenticator using the [verify @@ -214,7 +214,7 @@ class Account extends Service { /// /// Verify an authenticator app after adding it using the [add /// authenticator](/docs/references/cloud/client-web/account#createMfaAuthenticator) - /// method. add + /// method. Future updateMfaAuthenticator( {required enums.AuthenticatorType type, required String otp}) async { final String apiPath = @@ -237,14 +237,11 @@ class Account extends Service { /// Delete Authenticator /// /// Delete an authenticator for a user by ID. - Future deleteMfaAuthenticator( - {required enums.AuthenticatorType type, required String otp}) async { + Future deleteMfaAuthenticator({required enums.AuthenticatorType type}) async { final String apiPath = '/account/mfa/authenticators/{type}'.replaceAll('{type}', type.value); - final Map apiParams = { - 'otp': otp, - }; + final Map apiParams = {}; final Map apiHeaders = { 'content-type': 'application/json', @@ -256,7 +253,7 @@ class Account extends Service { return res.data; } - /// Create 2FA Challenge + /// Create MFA Challenge /// /// Begin the process of MFA verification after sign-in. Finish the flow with /// [updateMfaChallenge](/docs/references/cloud/client-web/account#updateMfaChallenge) @@ -1171,7 +1168,7 @@ class Account extends Service { return models.Token.fromMap(res.data); } - /// Create phone verification (confirmation) + /// Update phone verification (confirmation) /// /// Use this endpoint to complete the user phone verification process. Use the /// **userId** and **secret** that were sent to your user's phone number to diff --git a/lib/services/avatars.dart b/lib/services/avatars.dart index 1d419191..3bc203e9 100644 --- a/lib/services/avatars.dart +++ b/lib/services/avatars.dart @@ -74,6 +74,7 @@ class Avatars extends Service { /// Use this endpoint to fetch the favorite icon (AKA favicon) of any remote /// website URL. /// + /// This endpoint does not follow HTTP redirects. Future getFavicon({required String url}) async { const String apiPath = '/avatars/favicon'; @@ -128,6 +129,7 @@ class Avatars extends Service { /// image at source quality. If dimensions are not specified, the default size /// of image returned is 400x400px. /// + /// This endpoint does not follow HTTP redirects. Future getImage( {required String url, int? width, int? height}) async { const String apiPath = '/avatars/image'; diff --git a/lib/services/functions.dart b/lib/services/functions.dart index 81f6723b..c78d6294 100644 --- a/lib/services/functions.dart +++ b/lib/services/functions.dart @@ -44,7 +44,8 @@ class Functions extends Service { bool? xasync, String? path, enums.ExecutionMethod? method, - Map? headers}) async { + Map? headers, + String? scheduledAt}) async { final String apiPath = '/functions/{functionId}/executions' .replaceAll('{functionId}', functionId); @@ -54,6 +55,7 @@ class Functions extends Service { 'path': path, 'method': method?.value, 'headers': headers, + 'scheduledAt': scheduledAt, }; final Map apiHeaders = { diff --git a/lib/src/client.dart b/lib/src/client.dart index 85ea7e48..9faffd2f 100644 --- a/lib/src/client.dart +++ b/lib/src/client.dart @@ -1,6 +1,6 @@ import 'enums.dart'; import 'client_stub.dart' - if (dart.library.html) 'client_browser.dart' + if (dart.library.js_interop) 'client_browser.dart' if (dart.library.io) 'client_io.dart'; import 'response.dart'; import 'upload_progress.dart'; diff --git a/lib/src/client_browser.dart b/lib/src/client_browser.dart index ad7f2cfd..36402189 100644 --- a/lib/src/client_browser.dart +++ b/lib/src/client_browser.dart @@ -3,7 +3,7 @@ import 'package:flutter/foundation.dart'; import 'package:flutter_web_auth_2/flutter_web_auth_2.dart'; import 'package:http/http.dart' as http; import 'package:http/browser_client.dart'; -import 'package:universal_html/html.dart' as html; +import 'package:web/web.dart' as web; import 'client_mixin.dart'; import 'enums.dart'; import 'exception.dart'; @@ -43,8 +43,8 @@ class ClientBrowser extends ClientBase with ClientMixin { 'x-sdk-name': 'Flutter', 'x-sdk-platform': 'client', 'x-sdk-language': 'flutter', - 'x-sdk-version': '12.0.4', - 'X-Appwrite-Response-Format': '1.5.0', + 'x-sdk-version': '13.0.0', + 'X-Appwrite-Response-Format': '1.6.0', }; config = {}; @@ -116,9 +116,9 @@ class ClientBrowser extends ClientBase with ClientMixin { } Future init() async { - if (html.window.localStorage.keys.contains('cookieFallback')) { - addHeader('x-fallback-cookies', - html.window.localStorage['cookieFallback'] ?? ''); + final cookieFallback = web.window.localStorage['cookieFallback']; + if (cookieFallback != null) { + addHeader('x-fallback-cookies', cookieFallback); } _httpClient.withCredentials = true; } @@ -217,7 +217,7 @@ class ClientBrowser extends ClientBase with ClientMixin { debugPrint( 'Appwrite is using localStorage for session management. Increase your security by adding a custom domain as your API endpoint.'); addHeader('X-Fallback-Cookies', cookieFallback); - html.window.localStorage['cookieFallback'] = cookieFallback; + web.window.localStorage['cookieFallback'] = cookieFallback; } return prepareResponse(res, responseType: responseType); } catch (e) { diff --git a/lib/src/client_io.dart b/lib/src/client_io.dart index 5a0d6318..cab345ff 100644 --- a/lib/src/client_io.dart +++ b/lib/src/client_io.dart @@ -64,8 +64,8 @@ class ClientIO extends ClientBase with ClientMixin { 'x-sdk-name': 'Flutter', 'x-sdk-platform': 'client', 'x-sdk-language': 'flutter', - 'x-sdk-version': '12.0.4', - 'X-Appwrite-Response-Format': '1.5.0', + 'x-sdk-version': '13.0.0', + 'X-Appwrite-Response-Format': '1.6.0', }; config = {}; diff --git a/lib/src/client_mixin.dart b/lib/src/client_mixin.dart index 0e027808..1078c313 100644 --- a/lib/src/client_mixin.dart +++ b/lib/src/client_mixin.dart @@ -2,6 +2,7 @@ import 'package:http/http.dart' as http; import 'exception.dart'; import 'response.dart'; import 'dart:convert'; +import 'dart:developer'; import 'enums.dart'; class ClientMixin { @@ -67,6 +68,12 @@ class ClientMixin { Response prepareResponse(http.Response res, {ResponseType? responseType}) { responseType ??= ResponseType.json; + + String? warnings = res.headers['x-appwrite-warning']; + if (warnings != null) { + warnings.split(';').forEach((warning) => log('Warning: $warning')); + } + if (res.statusCode >= 400) { if ((res.headers['content-type'] ?? '').contains('application/json')) { final response = json.decode(res.body); diff --git a/lib/src/models/execution.dart b/lib/src/models/execution.dart index bd6e2a8b..40886cd7 100644 --- a/lib/src/models/execution.dart +++ b/lib/src/models/execution.dart @@ -50,6 +50,9 @@ class Execution implements Model { /// Function execution duration in seconds. final double duration; + /// The scheduled time for execution. If left empty, execution will be queued immediately. + final String? scheduledAt; + Execution({ required this.$id, required this.$createdAt, @@ -67,6 +70,7 @@ class Execution implements Model { required this.logs, required this.errors, required this.duration, + this.scheduledAt, }); factory Execution.fromMap(Map map) { @@ -89,6 +93,7 @@ class Execution implements Model { logs: map['logs'].toString(), errors: map['errors'].toString(), duration: map['duration'].toDouble(), + scheduledAt: map['scheduledAt']?.toString(), ); } @@ -110,6 +115,7 @@ class Execution implements Model { "logs": logs, "errors": errors, "duration": duration, + "scheduledAt": scheduledAt, }; } } diff --git a/lib/src/realtime.dart b/lib/src/realtime.dart index c79b9ebe..35f68677 100644 --- a/lib/src/realtime.dart +++ b/lib/src/realtime.dart @@ -1,5 +1,5 @@ import 'realtime_stub.dart' - if (dart.library.html) 'realtime_browser.dart' + if (dart.library.js_interop) 'realtime_browser.dart' if (dart.library.io) 'realtime_io.dart'; import 'realtime_subscription.dart'; import 'service.dart'; diff --git a/lib/src/realtime_browser.dart b/lib/src/realtime_browser.dart index 1567f64f..8e561033 100644 --- a/lib/src/realtime_browser.dart +++ b/lib/src/realtime_browser.dart @@ -1,6 +1,6 @@ import 'dart:convert'; import 'dart:async'; -import 'package:universal_html/html.dart' as html; +import 'package:web/web.dart' as web; import 'package:web_socket_channel/html.dart'; import 'package:web_socket_channel/web_socket_channel.dart'; import 'realtime_subscription.dart'; @@ -26,7 +26,7 @@ class RealtimeBrowser extends RealtimeBase with RealtimeMixin { } String? _getFallbackCookie() { - final fallbackCookie = html.window.localStorage['cookieFallback']; + final fallbackCookie = web.window.localStorage['cookieFallback']; if (fallbackCookie != null) { final cookie = Map.from(jsonDecode(fallbackCookie)); return cookie.values.first; diff --git a/lib/src/realtime_mixin.dart b/lib/src/realtime_mixin.dart index 389acea8..be87c1bf 100644 --- a/lib/src/realtime_mixin.dart +++ b/lib/src/realtime_mixin.dart @@ -23,6 +23,8 @@ mixin RealtimeMixin { int? get closeCode => _websok?.closeCode; Map _subscriptions = {}; bool _notifyDone = true; + bool _reconnect = true; + int _retries = 0; StreamSubscription? _websocketSubscription; bool _creatingSocket = false; @@ -30,29 +32,31 @@ mixin RealtimeMixin { await _websocketSubscription?.cancel(); await _websok?.sink.close(status.normalClosure, 'Ending session'); _lastUrl = null; + _retries = 0; + _reconnect = false; } _createSocket() async { if (_creatingSocket || _channels.isEmpty) return; _creatingSocket = true; final uri = _prepareUri(); - if (_websok == null) { - _websok = await getWebSocket(uri); - _lastUrl = uri.toString(); - } else { - if (_lastUrl == uri.toString() && _websok?.closeCode == null) { - _creatingSocket = false; - return; - } - _notifyDone = false; - await _closeConnection(); - _lastUrl = uri.toString(); - _websok = await getWebSocket(uri); - _notifyDone = true; - } - debugPrint('subscription: $_lastUrl'); - try { + if (_websok == null || _websok?.closeCode != null) { + _websok = await getWebSocket(uri); + _lastUrl = uri.toString(); + } else { + if (_lastUrl == uri.toString() && _websok?.closeCode == null) { + _creatingSocket = false; + return; + } + _notifyDone = false; + await _closeConnection(); + _lastUrl = uri.toString(); + _websok = await getWebSocket(uri); + _notifyDone = true; + } + debugPrint('subscription: $_lastUrl'); + _retries = 0; _websocketSubscription = _websok?.stream.listen((response) { final data = RealtimeResponse.fromJson(response); switch (data.type) { @@ -87,34 +91,44 @@ mixin RealtimeMixin { break; } }, onDone: () { - final subscriptions = List.from(_subscriptions.values); - for (var subscription in subscriptions) { - subscription.close(); - } - _channels.clear(); - _closeConnection(); + _retry(); }, onError: (err, stack) { for (var subscription in _subscriptions.values) { subscription.controller.addError(err, stack); } - if (_websok?.closeCode != null && _websok?.closeCode != 1008) { - debugPrint("Reconnecting in one second."); - Future.delayed(Duration(seconds: 1), _createSocket); - } + _retry(); }); } catch (e) { if (e is AppwriteException) { rethrow; } - if (e is WebSocketChannelException) { - throw AppwriteException(e.message); - } - throw AppwriteException(e.toString()); + debugPrint(e.toString()); + _retry(); } finally { _creatingSocket = false; } } + void _retry() async { + if (!_reconnect || _websok?.closeCode == status.policyViolation) { + _reconnect = true; + return; + } + _retries++; + debugPrint("Reconnecting in ${_getTimeout()} seconds."); + Future.delayed(Duration(seconds: _getTimeout()), _createSocket); + } + + int _getTimeout() { + return _retries < 5 + ? 1 + : _retries < 15 + ? 5 + : _retries < 100 + ? 10 + : 60; + } + Uri _prepareUri() { if (client.endPointRealtime == null) { throw AppwriteException( @@ -167,13 +181,10 @@ mixin RealtimeMixin { } void handleError(RealtimeResponse response) { - if (response.data['code'] == 1008) { + if (response.data['code'] == status.policyViolation) { throw AppwriteException(response.data["message"], response.data["code"]); } else { - debugPrint("Reconnecting in one second."); - Future.delayed(const Duration(seconds: 1), () { - _createSocket(); - }); + _retry(); } } } diff --git a/pubspec.yaml b/pubspec.yaml index 9e62e8bc..20102ea9 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,5 +1,5 @@ name: appwrite -version: 12.0.4 +version: 13.0.0 description: Appwrite is an open-source self-hosted backend server that abstract and simplify complex and repetitive development tasks behind a very simple REST API homepage: https://appwrite.io repository: https://github.com/appwrite/sdk-for-flutter @@ -19,17 +19,17 @@ dependencies: flutter: sdk: flutter cookie_jar: ^4.0.8 - device_info_plus: ^10.1.0 - flutter_web_auth_2: ^3.1.1 + device_info_plus: ^10.1.2 + flutter_web_auth_2: ^3.1.2 http: '>=0.13.6 <2.0.0' - package_info_plus: ^8.0.0 - path_provider: ^2.1.3 - web_socket_channel: ^2.4.5 - universal_html: ^2.2.4 + package_info_plus: ^8.0.2 + path_provider: ^2.1.4 + web_socket_channel: ^3.0.1 + web: ^1.0.0 dev_dependencies: path_provider_platform_interface: ^2.1.2 - flutter_lints: ^3.0.2 + flutter_lints: ^4.0.0 flutter_test: sdk: flutter mockito: ^5.4.4 diff --git a/test/services/account_test.dart b/test/services/account_test.dart index d7bf0fb9..3f76e30c 100644 --- a/test/services/account_test.dart +++ b/test/services/account_test.dart @@ -308,7 +308,6 @@ void main() { final response = await account.deleteMfaAuthenticator( type: 'totp', - otp: '', ); });