diff --git a/CHANGELOG.md b/CHANGELOG.md index 49d45bec..b370394c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Change Log +## 20.1.0 + +* Added ability to create columns and indexes synchronously while creating a table + ## 20.0.0 * Rename `VCSDeploymentType` enum to `VCSReferenceType` diff --git a/README.md b/README.md index d6815868..380b41f9 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,7 @@ Add this to your package's `pubspec.yaml` file: ```yml dependencies: - dart_appwrite: ^20.0.0 + dart_appwrite: ^20.1.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 7b1cc083..b12451d1 100644 --- a/docs/examples/account/create-anonymous-session.md +++ b/docs/examples/account/create-anonymous-session.md @@ -2,7 +2,8 @@ import 'package:dart_appwrite/dart_appwrite.dart'; Client client = Client() .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint - .setProject(''); // Your project ID + .setProject('') // Your project ID + .setSession(''); // The user session to authenticate with 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 2305367d..63200d50 100644 --- a/docs/examples/account/create-email-password-session.md +++ b/docs/examples/account/create-email-password-session.md @@ -2,7 +2,8 @@ import 'package:dart_appwrite/dart_appwrite.dart'; Client client = Client() .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint - .setProject(''); // Your project ID + .setProject('') // Your project ID + .setSession(''); // The user session to authenticate with Account account = Account(client); diff --git a/docs/examples/account/create-email-token.md b/docs/examples/account/create-email-token.md index e9696f92..348b8bb1 100644 --- a/docs/examples/account/create-email-token.md +++ b/docs/examples/account/create-email-token.md @@ -2,7 +2,8 @@ import 'package:dart_appwrite/dart_appwrite.dart'; Client client = Client() .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint - .setProject(''); // Your project ID + .setProject('') // Your project ID + .setSession(''); // The user session to authenticate with Account account = Account(client); diff --git a/docs/examples/account/create-jwt.md b/docs/examples/account/create-jwt.md index 4288c71c..5b2945e8 100644 --- a/docs/examples/account/create-jwt.md +++ b/docs/examples/account/create-jwt.md @@ -2,7 +2,8 @@ import 'package:dart_appwrite/dart_appwrite.dart'; Client client = Client() .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint - .setProject(''); // Your project ID + .setProject('') // Your project ID + .setSession(''); // The user session to authenticate with Account account = Account(client); diff --git a/docs/examples/account/create-magic-url-token.md b/docs/examples/account/create-magic-url-token.md index 791b9cbd..9aa4c5e5 100644 --- a/docs/examples/account/create-magic-url-token.md +++ b/docs/examples/account/create-magic-url-token.md @@ -2,7 +2,8 @@ import 'package:dart_appwrite/dart_appwrite.dart'; Client client = Client() .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint - .setProject(''); // Your project ID + .setProject('') // Your project ID + .setSession(''); // The user session to authenticate with Account account = Account(client); diff --git a/docs/examples/account/create-mfa-challenge.md b/docs/examples/account/create-mfa-challenge.md index 5df3abad..7696794b 100644 --- a/docs/examples/account/create-mfa-challenge.md +++ b/docs/examples/account/create-mfa-challenge.md @@ -2,7 +2,8 @@ import 'package:dart_appwrite/dart_appwrite.dart'; Client client = Client() .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint - .setProject(''); // Your project ID + .setProject('') // Your project ID + .setSession(''); // The user session to authenticate with Account account = Account(client); diff --git a/docs/examples/account/create-o-auth-2-token.md b/docs/examples/account/create-o-auth-2-token.md index 4a26a9fd..42c4ed85 100644 --- a/docs/examples/account/create-o-auth-2-token.md +++ b/docs/examples/account/create-o-auth-2-token.md @@ -2,7 +2,8 @@ import 'package:dart_appwrite/dart_appwrite.dart'; Client client = Client() .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint - .setProject(''); // Your project ID + .setProject('') // Your project ID + .setSession(''); // The user session to authenticate with Account account = Account(client); diff --git a/docs/examples/account/create-phone-token.md b/docs/examples/account/create-phone-token.md index 7011b3cf..1ea7532f 100644 --- a/docs/examples/account/create-phone-token.md +++ b/docs/examples/account/create-phone-token.md @@ -2,7 +2,8 @@ import 'package:dart_appwrite/dart_appwrite.dart'; Client client = Client() .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint - .setProject(''); // Your project ID + .setProject('') // Your project ID + .setSession(''); // The user session to authenticate with Account account = Account(client); diff --git a/docs/examples/account/create-session.md b/docs/examples/account/create-session.md index 1e56fc71..c23e5c94 100644 --- a/docs/examples/account/create-session.md +++ b/docs/examples/account/create-session.md @@ -2,7 +2,8 @@ import 'package:dart_appwrite/dart_appwrite.dart'; Client client = Client() .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint - .setProject(''); // Your project ID + .setProject('') // Your project ID + .setSession(''); // The user session to authenticate with Account account = Account(client); diff --git a/docs/examples/account/create.md b/docs/examples/account/create.md index f0384f46..21af6db4 100644 --- a/docs/examples/account/create.md +++ b/docs/examples/account/create.md @@ -2,7 +2,8 @@ import 'package:dart_appwrite/dart_appwrite.dart'; Client client = Client() .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint - .setProject(''); // Your project ID + .setProject('') // Your project ID + .setSession(''); // The user session to authenticate with Account account = Account(client); diff --git a/docs/examples/account/update-magic-url-session.md b/docs/examples/account/update-magic-url-session.md index 475e464f..c18efc60 100644 --- a/docs/examples/account/update-magic-url-session.md +++ b/docs/examples/account/update-magic-url-session.md @@ -2,7 +2,8 @@ import 'package:dart_appwrite/dart_appwrite.dart'; Client client = Client() .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint - .setProject(''); // Your project ID + .setProject('') // Your project ID + .setSession(''); // The user session to authenticate with Account account = Account(client); diff --git a/docs/examples/account/update-phone-session.md b/docs/examples/account/update-phone-session.md index 046dd0a7..47176c4d 100644 --- a/docs/examples/account/update-phone-session.md +++ b/docs/examples/account/update-phone-session.md @@ -2,7 +2,8 @@ import 'package:dart_appwrite/dart_appwrite.dart'; Client client = Client() .setEndpoint('https://.cloud.appwrite.io/v1') // Your API Endpoint - .setProject(''); // Your project ID + .setProject('') // Your project ID + .setSession(''); // The user session to authenticate with Account account = Account(client); diff --git a/docs/examples/databases/create-collection.md b/docs/examples/databases/create-collection.md index 51a7c126..e131269f 100644 --- a/docs/examples/databases/create-collection.md +++ b/docs/examples/databases/create-collection.md @@ -16,4 +16,6 @@ Collection result = await databases.createCollection( permissions: [Permission.read(Role.any())], // (optional) documentSecurity: false, // (optional) enabled: false, // (optional) + attributes: [], // (optional) + indexes: [], // (optional) ); diff --git a/docs/examples/tablesdb/create-table.md b/docs/examples/tablesdb/create-table.md index ee6776f0..4a3c58d2 100644 --- a/docs/examples/tablesdb/create-table.md +++ b/docs/examples/tablesdb/create-table.md @@ -16,4 +16,6 @@ Table result = await tablesDB.createTable( permissions: [Permission.read(Role.any())], // (optional) rowSecurity: false, // (optional) enabled: false, // (optional) + columns: [], // (optional) + indexes: [], // (optional) ); diff --git a/lib/services/account.dart b/lib/services/account.dart index eeaa64bc..a510b44e 100644 --- a/lib/services/account.dart +++ b/lib/services/account.dart @@ -1014,6 +1014,7 @@ class Account extends Service { if (failure != null) 'failure': failure, if (scopes != null) 'scopes': scopes, 'project': client.config['project'], + 'session': client.config['session'], }; final List query = []; diff --git a/lib/services/databases.dart b/lib/services/databases.dart index 3d7e5590..dfca7c92 100644 --- a/lib/services/databases.dart +++ b/lib/services/databases.dart @@ -259,7 +259,9 @@ class Databases extends Service { required String name, List? permissions, bool? documentSecurity, - bool? enabled}) async { + bool? enabled, + List? attributes, + List? indexes}) async { final String apiPath = '/databases/{databaseId}/collections' .replaceAll('{databaseId}', databaseId); @@ -269,6 +271,8 @@ class Databases extends Service { 'permissions': permissions, if (documentSecurity != null) 'documentSecurity': documentSecurity, if (enabled != null) 'enabled': enabled, + if (attributes != null) 'attributes': attributes, + if (indexes != null) 'indexes': indexes, }; final Map apiHeaders = { diff --git a/lib/services/tables_db.dart b/lib/services/tables_db.dart index 7f669447..89a5af60 100644 --- a/lib/services/tables_db.dart +++ b/lib/services/tables_db.dart @@ -243,7 +243,9 @@ class TablesDB extends Service { required String name, List? permissions, bool? rowSecurity, - bool? enabled}) async { + bool? enabled, + List? columns, + List? indexes}) async { final String apiPath = '/tablesdb/{databaseId}/tables'.replaceAll('{databaseId}', databaseId); @@ -253,6 +255,8 @@ class TablesDB extends Service { 'permissions': permissions, if (rowSecurity != null) 'rowSecurity': rowSecurity, if (enabled != null) 'enabled': enabled, + if (columns != null) 'columns': columns, + if (indexes != null) 'indexes': indexes, }; final Map apiHeaders = { diff --git a/lib/src/client_browser.dart b/lib/src/client_browser.dart index 30e15725..288b370d 100644 --- a/lib/src/client_browser.dart +++ b/lib/src/client_browser.dart @@ -33,7 +33,7 @@ class ClientBrowser extends ClientBase with ClientMixin { 'x-sdk-name': 'Dart', 'x-sdk-platform': 'server', 'x-sdk-language': 'dart', - 'x-sdk-version': '20.0.0', + 'x-sdk-version': '20.1.0', 'X-Appwrite-Response-Format': '1.8.0', }; diff --git a/lib/src/client_io.dart b/lib/src/client_io.dart index 9c9af945..894a6a6a 100644 --- a/lib/src/client_io.dart +++ b/lib/src/client_io.dart @@ -42,9 +42,9 @@ class ClientIO extends ClientBase with ClientMixin { 'x-sdk-name': 'Dart', 'x-sdk-platform': 'server', 'x-sdk-language': 'dart', - 'x-sdk-version': '20.0.0', + 'x-sdk-version': '20.1.0', 'user-agent': - 'AppwriteDartSDK/20.0.0 (${Platform.operatingSystem}; ${Platform.operatingSystemVersion})', + 'AppwriteDartSDK/20.1.0 (${Platform.operatingSystem}; ${Platform.operatingSystemVersion})', 'X-Appwrite-Response-Format': '1.8.0', }; diff --git a/pubspec.yaml b/pubspec.yaml index 30dc7930..df2837bc 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,5 +1,5 @@ name: dart_appwrite -version: 20.0.0 +version: 20.1.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-dart