Merge branch '0.11.x' of https://github.com/appwrite/appwrite into 0.11.x
This commit is contained in:
commit
9d6e6fc770
181 changed files with 3970 additions and 31 deletions
|
@ -77,19 +77,20 @@ return [
|
|||
'gitUserName' => 'appwrite',
|
||||
],
|
||||
[
|
||||
'key' => 'swift',
|
||||
'name' => 'Swift',
|
||||
'url' => '',
|
||||
'package' => '',
|
||||
'enabled' => false,
|
||||
'beta' => false,
|
||||
'key' => 'apple',
|
||||
'name' => 'Apple',
|
||||
'version' => '0.1.0',
|
||||
'url' => 'https://github.com/appwrite/sdk-for-apple',
|
||||
'package' => 'https://github.com/appwrite/sdk-for-apple',
|
||||
'enabled' => true,
|
||||
'beta' => true,
|
||||
'dev' => false,
|
||||
'hidden' => false,
|
||||
'family' => APP_PLATFORM_CLIENT,
|
||||
'prism' => 'swift',
|
||||
'source' => false,
|
||||
'gitUrl' => 'git@github.com:appwrite/sdk-for-swift.git',
|
||||
'gitRepoName' => 'sdk-for-swift',
|
||||
'source' => \realpath(__DIR__ . '/../sdks/client-apple'),
|
||||
'gitUrl' => 'git@github.com:appwrite/sdk-for-apple.git',
|
||||
'gitRepoName' => 'sdk-for-apple',
|
||||
'gitUserName' => 'appwrite',
|
||||
],
|
||||
[
|
||||
|
@ -371,6 +372,23 @@ return [
|
|||
'Java' => 'java',
|
||||
],
|
||||
],
|
||||
[
|
||||
'key' => 'swift',
|
||||
'name' => 'Swift',
|
||||
'version' => '0.1.0',
|
||||
'url' => 'https://github.com/appwrite/sdk-for-swift',
|
||||
'package' => 'https://github.com/appwrite/sdk-for-swift',
|
||||
'enabled' => true,
|
||||
'beta' => true,
|
||||
'dev' => false,
|
||||
'hidden' => false,
|
||||
'family' => APP_PLATFORM_SERVER,
|
||||
'prism' => 'swift',
|
||||
'source' => \realpath(__DIR__ . '/../sdks/server-swift'),
|
||||
'gitUrl' => 'git@github.com:appwrite/sdk-for-swift.git',
|
||||
'gitRepoName' => 'sdk-for-swift',
|
||||
'gitUserName' => 'appwrite',
|
||||
],
|
||||
],
|
||||
],
|
||||
];
|
||||
|
|
|
@ -1314,9 +1314,9 @@ App::post('/v1/projects/:projectId/platforms')
|
|||
->label('sdk.response.type', Response::CONTENT_TYPE_JSON)
|
||||
->label('sdk.response.model', Response::MODEL_PLATFORM)
|
||||
->param('projectId', null, new UID(), 'Project unique ID.')
|
||||
->param('type', null, new WhiteList(['web', 'flutter-ios', 'flutter-android', 'flutter-linux', 'flutter-macos', 'flutter-windows', 'ios', 'android', 'unity'], true), 'Platform type.')
|
||||
->param('type', null, new WhiteList(['web', 'flutter-ios', 'flutter-android', 'flutter-linux', 'flutter-macos', 'flutter-windows', 'apple-ios', 'apple-macos', 'apple-watchos', 'apple-tvos', 'android', 'unity'], true), 'Platform type.')
|
||||
->param('name', null, new Text(128), 'Platform name. Max length: 128 chars.')
|
||||
->param('key', '', new Text(256), 'Package name for android or bundle ID for iOS. Max length: 256 chars.', true)
|
||||
->param('key', '', new Text(256), 'Package name for Android or bundle ID for iOS or macOS. Max length: 256 chars.', true)
|
||||
->param('store', '', new Text(256), 'App store or Google Play store ID. Max length: 256 chars.', true)
|
||||
->param('hostname', '', new Text(256), 'Platform client hostname. Max length: 256 chars.', true)
|
||||
->inject('response')
|
||||
|
|
|
@ -18,6 +18,7 @@ use Appwrite\SDK\Language\Go;
|
|||
use Appwrite\SDK\Language\Kotlin;
|
||||
use Appwrite\SDK\Language\Android;
|
||||
use Appwrite\SDK\Language\Swift;
|
||||
use Appwrite\SDK\Language\SwiftClient;
|
||||
|
||||
$cli
|
||||
->task('sdks')
|
||||
|
@ -137,6 +138,10 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
|||
break;
|
||||
case 'swift':
|
||||
$config = new Swift();
|
||||
$warning = $warning."\n\n > This is the Swift SDK for integrating with Appwrite from your Swift server-side code. If you're looking for the Apple SDK you should check [appwrite/sdk-for-apple](https://github.com/appwrite/sdk-for-apple)";
|
||||
break;
|
||||
case 'apple':
|
||||
$config = new SwiftClient();
|
||||
break;
|
||||
case 'dotnet':
|
||||
$cover = '';
|
||||
|
|
|
@ -201,6 +201,22 @@ $usageStatsEnabled = $this->getParam('usageStatsEnabled',true);
|
|||
<div data-ls-if="{{platform.type}} === 'flutter-windows'" class="corner">
|
||||
<img src="" data-ls-attrs="src=/images/clients/flutter.png?v=<?php echo APP_CACHE_BUSTER; ?>" alt="Windows Logo" class="avatar xs" loading="lazy" width="30" height="30" />
|
||||
</div>
|
||||
|
||||
<div data-ls-if="{{platform.type}} === 'apple-ios'" class="corner">
|
||||
<img src="" data-ls-attrs="src=/images/clients/apple.png?v=<?php echo APP_CACHE_BUSTER; ?>" alt="iOS Logo" class="avatar xs" loading="lazy" width="30" height="30" />
|
||||
</div>
|
||||
|
||||
<div data-ls-if="{{platform.type}} === 'apple-macos'" class="corner">
|
||||
<img src="" data-ls-attrs="src=/images/clients/apple.png?v=<?php echo APP_CACHE_BUSTER; ?>" alt="macOS Logo" class="avatar xs" loading="lazy" width="30" height="30" />
|
||||
</div>
|
||||
|
||||
<div data-ls-if="{{platform.type}} === 'apple-watchos'" class="corner">
|
||||
<img src="" data-ls-attrs="src=/images/clients/apple.png?v=<?php echo APP_CACHE_BUSTER; ?>" alt="watchOS Logo" class="avatar xs" loading="lazy" width="30" height="30" />
|
||||
</div>
|
||||
|
||||
<div data-ls-if="{{platform.type}} === 'apple-tvos'" class="corner">
|
||||
<img src="" data-ls-attrs="src=/images/clients/apple.png?v=<?php echo APP_CACHE_BUSTER; ?>" alt="tvOS Logo" class="avatar xs" loading="lazy" width="30" height="30" />
|
||||
</div>
|
||||
</div>
|
||||
<span class="text-one-liner" data-ls-bind="{{platform.name}}"></span>
|
||||
</div>
|
||||
|
@ -240,10 +256,10 @@ $usageStatsEnabled = $this->getParam('usageStatsEnabled',true);
|
|||
<div class="link flutter-new"><img src="/images/clients/flutter.png?v=<?php echo APP_CACHE_BUSTER; ?>" alt="Flutter Platform Logo" class="avatar xxs margin-end-small" loading="lazy" /> New Flutter App</div>
|
||||
</li>
|
||||
<li>
|
||||
<div class="link android-new"><img src="/images/clients/android.png?v=<?php echo APP_CACHE_BUSTER; ?>" alt="Android Platform Logo" class="avatar xxs margin-end-small" loading="lazy" /> New Android App</div>
|
||||
<div class="link apple-new"><img src="/images/clients/apple.png?v=<?php echo APP_CACHE_BUSTER; ?>" alt="iOS Platform Logo" class="avatar xxs margin-end-small" loading="lazy" /> New Apple App</div>
|
||||
</li>
|
||||
<li class="disabled">
|
||||
<div class="link ios-new"><img src="/images/clients/ios.png?v=<?php echo APP_CACHE_BUSTER; ?>" alt="iOS Platform Logo" class="avatar xxs margin-end-small" loading="lazy" /> New iOS App <span class="text-fade text-size-small">(soon)</span></div>
|
||||
<li>
|
||||
<div class="link android-new"><img src="/images/clients/android.png?v=<?php echo APP_CACHE_BUSTER; ?>" alt="Android Platform Logo" class="avatar xxs margin-end-small" loading="lazy" /> New Android App</div>
|
||||
</li>
|
||||
<li class="disabled">
|
||||
<div class="link unity-new"><img src="/images/clients/unity.png?v=<?php echo APP_CACHE_BUSTER; ?>" alt="Unity Platform Logo" class="avatar xxs margin-end-small" loading="lazy" /> New Unity Game <span class="text-fade text-size-small">(soon)</span></div>
|
||||
|
@ -539,13 +555,155 @@ $usageStatsEnabled = $this->getParam('usageStatsEnabled',true);
|
|||
</ul>
|
||||
</div>
|
||||
|
||||
<div data-ui-modal class="modal box close width-large" data-button-alias=".apple-new">
|
||||
<button type="button" class="close pull-end" data-ui-modal-close=""><i class="icon-cancel"></i></button>
|
||||
|
||||
<h1 class="margin-bottom-xl">Register your Apple App</h1>
|
||||
|
||||
<ul class="phases clear margin-top-negative-small padding" data-ui-phases>
|
||||
<li>
|
||||
<h2 style="display: none"> iOS </h2>
|
||||
|
||||
<form
|
||||
data-analytics
|
||||
data-analytics-activity
|
||||
data-analytics-event="submit"
|
||||
data-analytics-category="console"
|
||||
data-analytics-label="Create Project Platform (Apple / iOS)"
|
||||
data-service="projects.createPlatform"
|
||||
data-scope="console"
|
||||
data-event="submit"
|
||||
data-success="alert,trigger,reset"
|
||||
data-success-param-alert-text="Registered new platform successfully"
|
||||
data-success-param-trigger-events="projects.createPlatform"
|
||||
data-failure="alert"
|
||||
data-failure-param-alert-text="Failed to register platform"
|
||||
data-failure-param-alert-classname="error">
|
||||
|
||||
<input type="hidden" name="projectId" data-ls-bind="{{router.params.project}}" />
|
||||
<input type="hidden" name="type" data-ls-bind="apple-ios" />
|
||||
|
||||
<label for="name">Name <span class="tooltip large" data-tooltip="Choose any name that will help you distinguish between your different apps."><i class="icon-question"></i></span></label>
|
||||
<input type="text" class="full-width" name="name" required autocomplete="off" placeholder="My iOS App" maxlength="128" />
|
||||
|
||||
<label for="key">Bundle ID <span class="tooltip large" data-tooltip="You can find your Bundle Identifier in the General tab for your app's primary target in Xcode."><i class="icon-question"></i></span></label>
|
||||
<input type="text" class="full-width" name="key" required autocomplete="off" placeholder="com.company.appname" />
|
||||
|
||||
<hr />
|
||||
|
||||
<button type="submit">Register</button> <button data-ui-modal-close="" type="button" class="reverse">Back</button>
|
||||
</form>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
<h2 style="display: none"> macOS </h2>
|
||||
|
||||
<form
|
||||
data-analytics
|
||||
data-analytics-activity
|
||||
data-analytics-event="submit"
|
||||
data-analytics-category="console"
|
||||
data-analytics-label="Create Project Platform (Apple / macOS)"
|
||||
data-service="projects.createPlatform"
|
||||
data-scope="console"
|
||||
data-event="submit"
|
||||
data-success="alert,trigger,reset"
|
||||
data-success-param-alert-text="Registered new platform successfully"
|
||||
data-success-param-trigger-events="projects.createPlatform"
|
||||
data-failure="alert"
|
||||
data-failure-param-alert-text="Failed to register platform"
|
||||
data-failure-param-alert-classname="error">
|
||||
|
||||
<input type="hidden" name="projectId" data-ls-bind="{{router.params.project}}" />
|
||||
<input type="hidden" name="type" data-ls-bind="apple-macos" />
|
||||
|
||||
<label for="name">Name <span class="tooltip large" data-tooltip="Choose any name that will help you distinguish between your different apps."><i class="icon-question"></i></span></label>
|
||||
<input type="text" class="full-width" name="name" required autocomplete="off" placeholder="My macOS App" maxlength="128" />
|
||||
|
||||
<label for="key">Bundle ID <span class="tooltip large" data-tooltip="You can find your Bundle Identifier in the General tab for your app's primary target in Xcode."><i class="icon-question"></i></span></label>
|
||||
<input type="text" class="full-width" name="key" required autocomplete="off" placeholder="com.company.appname" />
|
||||
|
||||
<hr />
|
||||
|
||||
<button type="submit">Register</button> <button data-ui-modal-close="" type="button" class="reverse">Back</button>
|
||||
</form>
|
||||
</li>
|
||||
<li>
|
||||
<h2 style="display: none"> watchOS </h2>
|
||||
|
||||
<form
|
||||
data-analytics
|
||||
data-analytics-activity
|
||||
data-analytics-event="submit"
|
||||
data-analytics-category="console"
|
||||
data-analytics-label="Create Project Platform (Apple / watchOS)"
|
||||
data-service="projects.createPlatform"
|
||||
data-scope="console"
|
||||
data-event="submit"
|
||||
data-success="alert,trigger,reset"
|
||||
data-success-param-alert-text="Registered new platform successfully"
|
||||
data-success-param-trigger-events="projects.createPlatform"
|
||||
data-failure="alert"
|
||||
data-failure-param-alert-text="Failed to register platform"
|
||||
data-failure-param-alert-classname="error">
|
||||
|
||||
<input type="hidden" name="projectId" data-ls-bind="{{router.params.project}}" />
|
||||
<input type="hidden" name="type" data-ls-bind="apple-watchos" />
|
||||
|
||||
<label for="name">Name <span class="tooltip large" data-tooltip="Choose any name that will help you distinguish between your different apps."><i class="icon-question"></i></span></label>
|
||||
<input type="text" class="full-width" name="name" required autocomplete="off" placeholder="My watchOS App" maxlength="128" />
|
||||
|
||||
<label for="key">Bundle ID <span class="tooltip large" data-tooltip="You can find your Bundle Identifier in the General tab for your app's primary target in Xcode."><i class="icon-question"></i></span></label>
|
||||
<input type="text" class="full-width" name="key" required autocomplete="off" placeholder="com.company.appname" />
|
||||
|
||||
<hr />
|
||||
|
||||
<button type="submit">Register</button> <button data-ui-modal-close="" type="button" class="reverse">Back</button>
|
||||
</form>
|
||||
</li>
|
||||
<li>
|
||||
<h2 style="display: none"> tvOS </h2>
|
||||
|
||||
<form
|
||||
data-analytics
|
||||
data-analytics-activity
|
||||
data-analytics-event="submit"
|
||||
data-analytics-category="console"
|
||||
data-analytics-label="Create Project Platform (Apple / tvOS)"
|
||||
data-service="projects.createPlatform"
|
||||
data-scope="console"
|
||||
data-event="submit"
|
||||
data-success="alert,trigger,reset"
|
||||
data-success-param-alert-text="Registered new platform successfully"
|
||||
data-success-param-trigger-events="projects.createPlatform"
|
||||
data-failure="alert"
|
||||
data-failure-param-alert-text="Failed to register platform"
|
||||
data-failure-param-alert-classname="error">
|
||||
|
||||
<input type="hidden" name="projectId" data-ls-bind="{{router.params.project}}" />
|
||||
<input type="hidden" name="type" data-ls-bind="apple-tvos" />
|
||||
|
||||
<label for="name">Name <span class="tooltip large" data-tooltip="Choose any name that will help you distinguish between your different apps."><i class="icon-question"></i></span></label>
|
||||
<input type="text" class="full-width" name="name" required autocomplete="off" placeholder="My tvOS App" maxlength="128" />
|
||||
|
||||
<label for="key">Bundle ID <span class="tooltip large" data-tooltip="You can find your Bundle Identifier in the General tab for your app's primary target in Xcode."><i class="icon-question"></i></span></label>
|
||||
<input type="text" class="full-width" name="key" required autocomplete="off" placeholder="com.company.appname" />
|
||||
|
||||
<hr />
|
||||
|
||||
<button type="submit">Register</button> <button data-ui-modal-close="" type="button" class="reverse">Back</button>
|
||||
</form>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<script type="text/html" id="template-ios-update">
|
||||
<form
|
||||
data-analytics
|
||||
data-analytics-activity
|
||||
data-analytics-event="submit"
|
||||
data-analytics-category="console"
|
||||
data-analytics-label="Update Project Platform (Flutter / iOS)"
|
||||
data-analytics-label="Update Project Platform (iOS)"
|
||||
data-service="projects.updatePlatform"
|
||||
data-scope="console"
|
||||
data-event="submit"
|
||||
|
@ -563,7 +721,39 @@ $usageStatsEnabled = $this->getParam('usageStatsEnabled',true);
|
|||
<input type="text" class="full-width" data-ls-attrs="id=name-{{platform.$id}}" name="name" required autocomplete="off" data-ls-bind="{{platform.name}}" placeholder="My iOS App" maxlength="128" />
|
||||
|
||||
<label data-ls-attrs="for=key-{{platform.$id}}">Bundle ID <span class="tooltip large" data-tooltip="You can find your Bundle Identifier in the General tab for your app's primary target in Xcode."><i class="icon-question"></i></span></label>
|
||||
<input name="key" type="text" class="margin-bottom" autocomplete="off" placeholder="com.cpmpany.appname" data-ls-bind="{{platform.key}}" required />
|
||||
<input name="key" type="text" class="margin-bottom" autocomplete="off" placeholder="com.company.appname" data-ls-bind="{{platform.key}}" required />
|
||||
|
||||
<hr />
|
||||
|
||||
<button type="submit">Update</button> <button data-ls-ui-trigger="modal-close" type="button" class="reverse">Back</button>
|
||||
</form>
|
||||
</script>
|
||||
|
||||
<script type="text/html" id="template-macos-update">
|
||||
<form
|
||||
data-analytics
|
||||
data-analytics-activity
|
||||
data-analytics-event="submit"
|
||||
data-analytics-category="console"
|
||||
data-analytics-label="Update Project Platform (macOS)"
|
||||
data-service="projects.updatePlatform"
|
||||
data-scope="console"
|
||||
data-event="submit"
|
||||
data-success="alert,trigger"
|
||||
data-success-param-alert-text="Updated platform successfully"
|
||||
data-success-param-trigger-events="projects.updatePlatform"
|
||||
data-failure="alert"
|
||||
data-failure-param-alert-text="Failed to update platform"
|
||||
data-failure-param-alert-classname="error">
|
||||
|
||||
<input type="hidden" name="projectId" data-ls-bind="{{router.params.project}}" />
|
||||
<input type="hidden" name="platformId" data-ls-bind="{{platform.$id}}" />
|
||||
|
||||
<label data-ls-attrs="for=name-{{platform.$id}}">Name <span class="tooltip large" data-tooltip="Choose any name that will help you distinguish between your different apps."><i class="icon-question"></i></span></label>
|
||||
<input type="text" class="full-width" data-ls-attrs="id=name-{{platform.$id}}" name="name" required autocomplete="off" data-ls-bind="{{platform.name}}" placeholder="My macOS App" maxlength="128" />
|
||||
|
||||
<label data-ls-attrs="for=key-{{platform.$id}}">Bundle ID <span class="tooltip large" data-tooltip="You can find your Bundle Identifier in the General tab for your app's primary target in Xcode."><i class="icon-question"></i></span></label>
|
||||
<input name="key" type="text" class="margin-bottom" autocomplete="off" placeholder="com.company.appname" data-ls-bind="{{platform.key}}" required />
|
||||
|
||||
<hr />
|
||||
|
||||
|
@ -594,7 +784,71 @@ $usageStatsEnabled = $this->getParam('usageStatsEnabled',true);
|
|||
<input type="text" class="full-width" data-ls-attrs="id=name-{{platform.$id}}" name="name" required autocomplete="off" data-ls-bind="{{platform.name}}" placeholder="My Android App" maxlength="128" />
|
||||
|
||||
<label data-ls-attrs="for=key-{{platform.$id}}">Package Name <span class="tooltip large" data-tooltip="Your package name is generally the applicationId in your app-level build.gradle file."><i class="icon-question"></i></span></label>
|
||||
<input name="key" type="text" class="margin-bottom" autocomplete="off" placeholder="com.cpmpany.appname" data-ls-bind="{{platform.key}}" required />
|
||||
<input name="key" type="text" class="margin-bottom" autocomplete="off" placeholder="com.company.appname" data-ls-bind="{{platform.key}}" required />
|
||||
|
||||
<hr />
|
||||
|
||||
<button type="submit">Update</button> <button data-ls-ui-trigger="modal-close" type="button" class="reverse">Back</button>
|
||||
</form>
|
||||
</script>
|
||||
|
||||
<script type="text/html" id="template-apple-watchos-update">
|
||||
<form
|
||||
data-analytics
|
||||
data-analytics-activity
|
||||
data-analytics-event="submit"
|
||||
data-analytics-category="console"
|
||||
data-analytics-label="Update Project Platform (watchOS)"
|
||||
data-service="projects.updatePlatform"
|
||||
data-scope="console"
|
||||
data-event="submit"
|
||||
data-success="alert,trigger"
|
||||
data-success-param-alert-text="Updated platform successfully"
|
||||
data-success-param-trigger-events="projects.updatePlatform"
|
||||
data-failure="alert"
|
||||
data-failure-param-alert-text="Failed to update platform"
|
||||
data-failure-param-alert-classname="error">
|
||||
|
||||
<input type="hidden" name="projectId" data-ls-bind="{{router.params.project}}" />
|
||||
<input type="hidden" name="platformId" data-ls-bind="{{platform.$id}}" />
|
||||
|
||||
<label data-ls-attrs="for=name-{{platform.$id}}">Name <span class="tooltip large" data-tooltip="Choose any name that will help you distinguish between your different apps."><i class="icon-question"></i></span></label>
|
||||
<input type="text" class="full-width" data-ls-attrs="id=name-{{platform.$id}}" name="name" required autocomplete="off" data-ls-bind="{{platform.name}}" placeholder="My watchOS App" maxlength="128" />
|
||||
|
||||
<label data-ls-attrs="for=key-{{platform.$id}}">Bundle ID <span class="tooltip large" data-tooltip="You can find your Bundle Identifier in the General tab for your app's primary target in Xcode."><i class="icon-question"></i></span></label>
|
||||
<input name="key" type="text" class="margin-bottom" autocomplete="off" placeholder="com.company.appname" data-ls-bind="{{platform.key}}" required />
|
||||
|
||||
<hr />
|
||||
|
||||
<button type="submit">Update</button> <button data-ls-ui-trigger="modal-close" type="button" class="reverse">Back</button>
|
||||
</form>
|
||||
</script>
|
||||
|
||||
<script type="text/html" id="template-apple-tvos-update">
|
||||
<form
|
||||
data-analytics
|
||||
data-analytics-activity
|
||||
data-analytics-event="submit"
|
||||
data-analytics-category="console"
|
||||
data-analytics-label="Update Project Platform (tvOS)"
|
||||
data-service="projects.updatePlatform"
|
||||
data-scope="console"
|
||||
data-event="submit"
|
||||
data-success="alert,trigger"
|
||||
data-success-param-alert-text="Updated platform successfully"
|
||||
data-success-param-trigger-events="projects.updatePlatform"
|
||||
data-failure="alert"
|
||||
data-failure-param-alert-text="Failed to update platform"
|
||||
data-failure-param-alert-classname="error">
|
||||
|
||||
<input type="hidden" name="projectId" data-ls-bind="{{router.params.project}}" />
|
||||
<input type="hidden" name="platformId" data-ls-bind="{{platform.$id}}" />
|
||||
|
||||
<label data-ls-attrs="for=name-{{platform.$id}}">Name <span class="tooltip large" data-tooltip="Choose any name that will help you distinguish between your different apps."><i class="icon-question"></i></span></label>
|
||||
<input type="text" class="full-width" data-ls-attrs="id=name-{{platform.$id}}" name="name" required autocomplete="off" data-ls-bind="{{platform.name}}" placeholder="My tvOS App" maxlength="128" />
|
||||
|
||||
<label data-ls-attrs="for=key-{{platform.$id}}">Bundle ID <span class="tooltip large" data-tooltip="You can find your Bundle Identifier in the General tab for your app's primary target in Xcode."><i class="icon-question"></i></span></label>
|
||||
<input name="key" type="text" class="margin-bottom" autocomplete="off" placeholder="com.company.appname" data-ls-bind="{{platform.key}}" required />
|
||||
|
||||
<hr />
|
||||
|
||||
|
@ -613,3 +867,11 @@ $usageStatsEnabled = $this->getParam('usageStatsEnabled',true);
|
|||
<script type="text/html" id="template-flutter-macos-update">
|
||||
<div data-ls-template="template-macos-update" data-type="script"></div>
|
||||
</script>
|
||||
|
||||
<script type="text/html" id="template-apple-ios-update">
|
||||
<div data-ls-template="template-ios-update" data-type="script"></div>
|
||||
</script>
|
||||
|
||||
<script type="text/html" id="template-apple-macos-update">
|
||||
<div data-ls-template="template-macos-update" data-type="script"></div>
|
||||
</script>
|
||||
|
|
|
@ -64,7 +64,7 @@
|
|||
"slickdeals/statsd": "3.1.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"appwrite/sdk-generator": "0.15.2",
|
||||
"appwrite/sdk-generator": "dev-feat-swift-templates",
|
||||
"phpunit/phpunit": "9.5.6",
|
||||
"swoole/ide-helper": "4.6.7",
|
||||
"textalk/websocket": "1.5.2",
|
||||
|
|
19
composer.lock
generated
19
composer.lock
generated
|
@ -4,7 +4,7 @@
|
|||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "5489e56e6ddb6757838eccd5314c8eb8",
|
||||
"content-hash": "6658bcb6a570300242ac1d227052f1bf",
|
||||
"packages": [
|
||||
{
|
||||
"name": "adhocore/jwt",
|
||||
|
@ -2582,16 +2582,16 @@
|
|||
},
|
||||
{
|
||||
"name": "appwrite/sdk-generator",
|
||||
"version": "0.15.2",
|
||||
"version": "dev-feat-swift-templates",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/appwrite/sdk-generator.git",
|
||||
"reference": "f42e70737d3b63fb8440111022c9509529a16479"
|
||||
"reference": "cb7ed206fb3a63fa764db90d64f5b6316e466b73"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/appwrite/sdk-generator/zipball/f42e70737d3b63fb8440111022c9509529a16479",
|
||||
"reference": "f42e70737d3b63fb8440111022c9509529a16479",
|
||||
"url": "https://api.github.com/repos/appwrite/sdk-generator/zipball/cb7ed206fb3a63fa764db90d64f5b6316e466b73",
|
||||
"reference": "cb7ed206fb3a63fa764db90d64f5b6316e466b73",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -2625,9 +2625,9 @@
|
|||
"description": "Appwrite PHP library for generating API SDKs for multiple programming languages and platforms",
|
||||
"support": {
|
||||
"issues": "https://github.com/appwrite/sdk-generator/issues",
|
||||
"source": "https://github.com/appwrite/sdk-generator/tree/0.15.2"
|
||||
"source": "https://github.com/appwrite/sdk-generator/tree/feat-swift-templates"
|
||||
},
|
||||
"time": "2021-09-24T16:14:17+00:00"
|
||||
"time": "2021-10-15T11:25:15+00:00"
|
||||
},
|
||||
{
|
||||
"name": "composer/package-versions-deprecated",
|
||||
|
@ -5062,6 +5062,7 @@
|
|||
"type": "github"
|
||||
}
|
||||
],
|
||||
"abandoned": true,
|
||||
"time": "2020-09-28T06:45:17+00:00"
|
||||
},
|
||||
{
|
||||
|
@ -6296,7 +6297,9 @@
|
|||
],
|
||||
"aliases": [],
|
||||
"minimum-stability": "stable",
|
||||
"stability-flags": [],
|
||||
"stability-flags": {
|
||||
"appwrite/sdk-generator": 20
|
||||
},
|
||||
"prefer-stable": false,
|
||||
"prefer-lowest": false,
|
||||
"platform": {
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.createAnonymousSession() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let session):
|
||||
print(String(describing: session)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.createJWT() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let jwt):
|
||||
print(String(describing: jwt)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.createMagicURLSession(
|
||||
email: "email@example.com"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let token):
|
||||
print(String(describing: token)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.createOAuth2Session(
|
||||
provider: "amazon"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let success):
|
||||
print(String(describing: success)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.createRecovery(
|
||||
email: "email@example.com",
|
||||
url: "https://example.com"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let token):
|
||||
print(String(describing: token)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.createSession(
|
||||
email: "email@example.com",
|
||||
password: "password"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let session):
|
||||
print(String(describing: session)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.createVerification(
|
||||
url: "https://example.com"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let token):
|
||||
print(String(describing: token)
|
||||
}
|
||||
}
|
||||
}
|
20
docs/examples/0.10.x/client-apple/examples/account/create.md
Normal file
20
docs/examples/0.10.x/client-apple/examples/account/create.md
Normal file
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.create(
|
||||
email: "email@example.com",
|
||||
password: "password"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let user):
|
||||
print(String(describing: user)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.deleteSession(
|
||||
sessionId: "[SESSION_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let ):
|
||||
print(String(describing: )
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.deleteSessions() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let ):
|
||||
print(String(describing: )
|
||||
}
|
||||
}
|
||||
}
|
17
docs/examples/0.10.x/client-apple/examples/account/delete.md
Normal file
17
docs/examples/0.10.x/client-apple/examples/account/delete.md
Normal file
|
@ -0,0 +1,17 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.delete() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let ):
|
||||
print(String(describing: )
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.getLogs() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let logList):
|
||||
print(String(describing: logList)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.getPrefs() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let preferences):
|
||||
print(String(describing: preferences)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.getSession(
|
||||
sessionId: "[SESSION_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let session):
|
||||
print(String(describing: session)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.getSessions() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let sessionList):
|
||||
print(String(describing: sessionList)
|
||||
}
|
||||
}
|
||||
}
|
17
docs/examples/0.10.x/client-apple/examples/account/get.md
Normal file
17
docs/examples/0.10.x/client-apple/examples/account/get.md
Normal file
|
@ -0,0 +1,17 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.get() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let user):
|
||||
print(String(describing: user)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.updateEmail(
|
||||
email: "email@example.com",
|
||||
password: "password"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let user):
|
||||
print(String(describing: user)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.updateMagicURLSession(
|
||||
userId: "[USER_ID]",
|
||||
secret: "[SECRET]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let session):
|
||||
print(String(describing: session)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.updateName(
|
||||
name: "[NAME]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let user):
|
||||
print(String(describing: user)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.updatePassword(
|
||||
password: "password"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let user):
|
||||
print(String(describing: user)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.updatePrefs(
|
||||
prefs:
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let user):
|
||||
print(String(describing: user)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,22 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.updateRecovery(
|
||||
userId: "[USER_ID]",
|
||||
secret: "[SECRET]",
|
||||
password: "password",
|
||||
passwordAgain: "password"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let token):
|
||||
print(String(describing: token)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let account = Account(client)
|
||||
account.updateVerification(
|
||||
userId: "[USER_ID]",
|
||||
secret: "[SECRET]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let token):
|
||||
print(String(describing: token)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let avatars = Avatars(client)
|
||||
avatars.getBrowser(
|
||||
code: "aa"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let byteBuffer):
|
||||
print(String(describing: byteBuffer)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let avatars = Avatars(client)
|
||||
avatars.getCreditCard(
|
||||
code: "amex"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let byteBuffer):
|
||||
print(String(describing: byteBuffer)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let avatars = Avatars(client)
|
||||
avatars.getFavicon(
|
||||
url: "https://example.com"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let byteBuffer):
|
||||
print(String(describing: byteBuffer)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let avatars = Avatars(client)
|
||||
avatars.getFlag(
|
||||
code: "af"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let byteBuffer):
|
||||
print(String(describing: byteBuffer)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let avatars = Avatars(client)
|
||||
avatars.getImage(
|
||||
url: "https://example.com"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let byteBuffer):
|
||||
print(String(describing: byteBuffer)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let avatars = Avatars(client)
|
||||
avatars.getInitials() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let byteBuffer):
|
||||
print(String(describing: byteBuffer)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let avatars = Avatars(client)
|
||||
avatars.getQR(
|
||||
text: "[TEXT]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let byteBuffer):
|
||||
print(String(describing: byteBuffer)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let database = Database(client)
|
||||
database.createDocument(
|
||||
collectionId: "[COLLECTION_ID]",
|
||||
data:
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let document):
|
||||
print(String(describing: document)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let database = Database(client)
|
||||
database.deleteDocument(
|
||||
collectionId: "[COLLECTION_ID]",
|
||||
documentId: "[DOCUMENT_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let ):
|
||||
print(String(describing: )
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let database = Database(client)
|
||||
database.getDocument(
|
||||
collectionId: "[COLLECTION_ID]",
|
||||
documentId: "[DOCUMENT_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let document):
|
||||
print(String(describing: document)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let database = Database(client)
|
||||
database.listDocuments(
|
||||
collectionId: "[COLLECTION_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let documentList):
|
||||
print(String(describing: documentList)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let database = Database(client)
|
||||
database.updateDocument(
|
||||
collectionId: "[COLLECTION_ID]",
|
||||
documentId: "[DOCUMENT_ID]",
|
||||
data:
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let document):
|
||||
print(String(describing: document)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let functions = Functions(client)
|
||||
functions.createExecution(
|
||||
functionId: "[FUNCTION_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let execution):
|
||||
print(String(describing: execution)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let functions = Functions(client)
|
||||
functions.getExecution(
|
||||
functionId: "[FUNCTION_ID]",
|
||||
executionId: "[EXECUTION_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let execution):
|
||||
print(String(describing: execution)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let functions = Functions(client)
|
||||
functions.listExecutions(
|
||||
functionId: "[FUNCTION_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let executionList):
|
||||
print(String(describing: executionList)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let locale = Locale(client)
|
||||
locale.getContinents() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let continentList):
|
||||
print(String(describing: continentList)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let locale = Locale(client)
|
||||
locale.getCountriesEU() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let countryList):
|
||||
print(String(describing: countryList)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let locale = Locale(client)
|
||||
locale.getCountriesPhones() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let phoneList):
|
||||
print(String(describing: phoneList)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let locale = Locale(client)
|
||||
locale.getCountries() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let countryList):
|
||||
print(String(describing: countryList)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let locale = Locale(client)
|
||||
locale.getCurrencies() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let currencyList):
|
||||
print(String(describing: currencyList)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let locale = Locale(client)
|
||||
locale.getLanguages() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let languageList):
|
||||
print(String(describing: languageList)
|
||||
}
|
||||
}
|
||||
}
|
17
docs/examples/0.10.x/client-apple/examples/locale/get.md
Normal file
17
docs/examples/0.10.x/client-apple/examples/locale/get.md
Normal file
|
@ -0,0 +1,17 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let locale = Locale(client)
|
||||
locale.get() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let locale):
|
||||
print(String(describing: locale)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let storage = Storage(client)
|
||||
storage.createFile(
|
||||
file: File(name: "image.jpg", buffer: yourByteBuffer)
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let file):
|
||||
print(String(describing: file)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let storage = Storage(client)
|
||||
storage.deleteFile(
|
||||
fileId: "[FILE_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let ):
|
||||
print(String(describing: )
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let storage = Storage(client)
|
||||
storage.getFileDownload(
|
||||
fileId: "[FILE_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let byteBuffer):
|
||||
print(String(describing: byteBuffer)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let storage = Storage(client)
|
||||
storage.getFilePreview(
|
||||
fileId: "[FILE_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let byteBuffer):
|
||||
print(String(describing: byteBuffer)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let storage = Storage(client)
|
||||
storage.getFileView(
|
||||
fileId: "[FILE_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let byteBuffer):
|
||||
print(String(describing: byteBuffer)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let storage = Storage(client)
|
||||
storage.getFile(
|
||||
fileId: "[FILE_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let file):
|
||||
print(String(describing: file)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let storage = Storage(client)
|
||||
storage.listFiles() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let fileList):
|
||||
print(String(describing: fileList)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let storage = Storage(client)
|
||||
storage.updateFile(
|
||||
fileId: "[FILE_ID]",
|
||||
read: [],
|
||||
write: []
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let file):
|
||||
print(String(describing: file)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,22 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let teams = Teams(client)
|
||||
teams.createMembership(
|
||||
teamId: "[TEAM_ID]",
|
||||
email: "email@example.com",
|
||||
roles: [],
|
||||
url: "https://example.com"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let membership):
|
||||
print(String(describing: membership)
|
||||
}
|
||||
}
|
||||
}
|
19
docs/examples/0.10.x/client-apple/examples/teams/create.md
Normal file
19
docs/examples/0.10.x/client-apple/examples/teams/create.md
Normal file
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let teams = Teams(client)
|
||||
teams.create(
|
||||
name: "[NAME]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let team):
|
||||
print(String(describing: team)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let teams = Teams(client)
|
||||
teams.deleteMembership(
|
||||
teamId: "[TEAM_ID]",
|
||||
membershipId: "[MEMBERSHIP_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let ):
|
||||
print(String(describing: )
|
||||
}
|
||||
}
|
||||
}
|
19
docs/examples/0.10.x/client-apple/examples/teams/delete.md
Normal file
19
docs/examples/0.10.x/client-apple/examples/teams/delete.md
Normal file
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let teams = Teams(client)
|
||||
teams.delete(
|
||||
teamId: "[TEAM_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let ):
|
||||
print(String(describing: )
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let teams = Teams(client)
|
||||
teams.getMemberships(
|
||||
teamId: "[TEAM_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let membershipList):
|
||||
print(String(describing: membershipList)
|
||||
}
|
||||
}
|
||||
}
|
19
docs/examples/0.10.x/client-apple/examples/teams/get.md
Normal file
19
docs/examples/0.10.x/client-apple/examples/teams/get.md
Normal file
|
@ -0,0 +1,19 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let teams = Teams(client)
|
||||
teams.get(
|
||||
teamId: "[TEAM_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let team):
|
||||
print(String(describing: team)
|
||||
}
|
||||
}
|
||||
}
|
17
docs/examples/0.10.x/client-apple/examples/teams/list.md
Normal file
17
docs/examples/0.10.x/client-apple/examples/teams/list.md
Normal file
|
@ -0,0 +1,17 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let teams = Teams(client)
|
||||
teams.list() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let teamList):
|
||||
print(String(describing: teamList)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let teams = Teams(client)
|
||||
teams.updateMembershipRoles(
|
||||
teamId: "[TEAM_ID]",
|
||||
membershipId: "[MEMBERSHIP_ID]",
|
||||
roles: []
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let membership):
|
||||
print(String(describing: membership)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,22 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let teams = Teams(client)
|
||||
teams.updateMembershipStatus(
|
||||
teamId: "[TEAM_ID]",
|
||||
membershipId: "[MEMBERSHIP_ID]",
|
||||
userId: "[USER_ID]",
|
||||
secret: "[SECRET]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let membership):
|
||||
print(String(describing: membership)
|
||||
}
|
||||
}
|
||||
}
|
20
docs/examples/0.10.x/client-apple/examples/teams/update.md
Normal file
20
docs/examples/0.10.x/client-apple/examples/teams/update.md
Normal file
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
|
||||
let teams = Teams(client)
|
||||
teams.update(
|
||||
teamId: "[TEAM_ID]",
|
||||
name: "[NAME]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let team):
|
||||
print(String(describing: team)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setJWT("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ...") // Your secret JSON Web Token
|
||||
|
||||
let account = Account(client)
|
||||
account.createRecovery(
|
||||
email: "email@example.com",
|
||||
url: "https://example.com"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let token):
|
||||
print(String(describing: token)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setJWT("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ...") // Your secret JSON Web Token
|
||||
|
||||
let account = Account(client)
|
||||
account.createVerification(
|
||||
url: "https://example.com"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let token):
|
||||
print(String(describing: token)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setJWT("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ...") // Your secret JSON Web Token
|
||||
|
||||
let account = Account(client)
|
||||
account.deleteSession(
|
||||
sessionId: "[SESSION_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let ):
|
||||
print(String(describing: )
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setJWT("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ...") // Your secret JSON Web Token
|
||||
|
||||
let account = Account(client)
|
||||
account.deleteSessions() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let ):
|
||||
print(String(describing: )
|
||||
}
|
||||
}
|
||||
}
|
18
docs/examples/0.10.x/server-swift/examples/account/delete.md
Normal file
18
docs/examples/0.10.x/server-swift/examples/account/delete.md
Normal file
|
@ -0,0 +1,18 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setJWT("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ...") // Your secret JSON Web Token
|
||||
|
||||
let account = Account(client)
|
||||
account.delete() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let ):
|
||||
print(String(describing: )
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setJWT("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ...") // Your secret JSON Web Token
|
||||
|
||||
let account = Account(client)
|
||||
account.getLogs() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let logList):
|
||||
print(String(describing: logList)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setJWT("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ...") // Your secret JSON Web Token
|
||||
|
||||
let account = Account(client)
|
||||
account.getPrefs() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let preferences):
|
||||
print(String(describing: preferences)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setJWT("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ...") // Your secret JSON Web Token
|
||||
|
||||
let account = Account(client)
|
||||
account.getSession(
|
||||
sessionId: "[SESSION_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let session):
|
||||
print(String(describing: session)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setJWT("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ...") // Your secret JSON Web Token
|
||||
|
||||
let account = Account(client)
|
||||
account.getSessions() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let sessionList):
|
||||
print(String(describing: sessionList)
|
||||
}
|
||||
}
|
||||
}
|
18
docs/examples/0.10.x/server-swift/examples/account/get.md
Normal file
18
docs/examples/0.10.x/server-swift/examples/account/get.md
Normal file
|
@ -0,0 +1,18 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setJWT("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ...") // Your secret JSON Web Token
|
||||
|
||||
let account = Account(client)
|
||||
account.get() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let user):
|
||||
print(String(describing: user)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setJWT("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ...") // Your secret JSON Web Token
|
||||
|
||||
let account = Account(client)
|
||||
account.updateEmail(
|
||||
email: "email@example.com",
|
||||
password: "password"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let user):
|
||||
print(String(describing: user)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setJWT("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ...") // Your secret JSON Web Token
|
||||
|
||||
let account = Account(client)
|
||||
account.updateName(
|
||||
name: "[NAME]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let user):
|
||||
print(String(describing: user)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setJWT("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ...") // Your secret JSON Web Token
|
||||
|
||||
let account = Account(client)
|
||||
account.updatePassword(
|
||||
password: "password"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let user):
|
||||
print(String(describing: user)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setJWT("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ...") // Your secret JSON Web Token
|
||||
|
||||
let account = Account(client)
|
||||
account.updatePrefs(
|
||||
prefs:
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let user):
|
||||
print(String(describing: user)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,23 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setJWT("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ...") // Your secret JSON Web Token
|
||||
|
||||
let account = Account(client)
|
||||
account.updateRecovery(
|
||||
userId: "[USER_ID]",
|
||||
secret: "[SECRET]",
|
||||
password: "password",
|
||||
passwordAgain: "password"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let token):
|
||||
print(String(describing: token)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setJWT("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ...") // Your secret JSON Web Token
|
||||
|
||||
let account = Account(client)
|
||||
account.updateVerification(
|
||||
userId: "[USER_ID]",
|
||||
secret: "[SECRET]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let token):
|
||||
print(String(describing: token)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setKey("919c2d18fb5d4...a2ae413da83346ad2") // Your secret API key
|
||||
|
||||
let avatars = Avatars(client)
|
||||
avatars.getBrowser(
|
||||
code: "aa"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let byteBuffer):
|
||||
print(String(describing: byteBuffer)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setKey("919c2d18fb5d4...a2ae413da83346ad2") // Your secret API key
|
||||
|
||||
let avatars = Avatars(client)
|
||||
avatars.getCreditCard(
|
||||
code: "amex"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let byteBuffer):
|
||||
print(String(describing: byteBuffer)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setKey("919c2d18fb5d4...a2ae413da83346ad2") // Your secret API key
|
||||
|
||||
let avatars = Avatars(client)
|
||||
avatars.getFavicon(
|
||||
url: "https://example.com"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let byteBuffer):
|
||||
print(String(describing: byteBuffer)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setKey("919c2d18fb5d4...a2ae413da83346ad2") // Your secret API key
|
||||
|
||||
let avatars = Avatars(client)
|
||||
avatars.getFlag(
|
||||
code: "af"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let byteBuffer):
|
||||
print(String(describing: byteBuffer)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setKey("919c2d18fb5d4...a2ae413da83346ad2") // Your secret API key
|
||||
|
||||
let avatars = Avatars(client)
|
||||
avatars.getImage(
|
||||
url: "https://example.com"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let byteBuffer):
|
||||
print(String(describing: byteBuffer)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setKey("919c2d18fb5d4...a2ae413da83346ad2") // Your secret API key
|
||||
|
||||
let avatars = Avatars(client)
|
||||
avatars.getInitials() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let byteBuffer):
|
||||
print(String(describing: byteBuffer)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setKey("919c2d18fb5d4...a2ae413da83346ad2") // Your secret API key
|
||||
|
||||
let avatars = Avatars(client)
|
||||
avatars.getQR(
|
||||
text: "[TEXT]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let byteBuffer):
|
||||
print(String(describing: byteBuffer)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,23 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setKey("919c2d18fb5d4...a2ae413da83346ad2") // Your secret API key
|
||||
|
||||
let database = Database(client)
|
||||
database.createCollection(
|
||||
name: "[NAME]",
|
||||
read: [],
|
||||
write: [],
|
||||
rules: []
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let collection):
|
||||
print(String(describing: collection)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setKey("919c2d18fb5d4...a2ae413da83346ad2") // Your secret API key
|
||||
|
||||
let database = Database(client)
|
||||
database.createDocument(
|
||||
collectionId: "[COLLECTION_ID]",
|
||||
data:
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let document):
|
||||
print(String(describing: document)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setKey("919c2d18fb5d4...a2ae413da83346ad2") // Your secret API key
|
||||
|
||||
let database = Database(client)
|
||||
database.deleteCollection(
|
||||
collectionId: "[COLLECTION_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let ):
|
||||
print(String(describing: )
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setKey("919c2d18fb5d4...a2ae413da83346ad2") // Your secret API key
|
||||
|
||||
let database = Database(client)
|
||||
database.deleteDocument(
|
||||
collectionId: "[COLLECTION_ID]",
|
||||
documentId: "[DOCUMENT_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let ):
|
||||
print(String(describing: )
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setKey("919c2d18fb5d4...a2ae413da83346ad2") // Your secret API key
|
||||
|
||||
let database = Database(client)
|
||||
database.getCollection(
|
||||
collectionId: "[COLLECTION_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let collection):
|
||||
print(String(describing: collection)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setKey("919c2d18fb5d4...a2ae413da83346ad2") // Your secret API key
|
||||
|
||||
let database = Database(client)
|
||||
database.getDocument(
|
||||
collectionId: "[COLLECTION_ID]",
|
||||
documentId: "[DOCUMENT_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let document):
|
||||
print(String(describing: document)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setKey("919c2d18fb5d4...a2ae413da83346ad2") // Your secret API key
|
||||
|
||||
let database = Database(client)
|
||||
database.listCollections() { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let collectionList):
|
||||
print(String(describing: collectionList)
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
import Appwrite
|
||||
|
||||
func main() {
|
||||
let client = Client()
|
||||
.setEndpoint("https://[HOSTNAME_OR_IP]/v1") // Your API Endpoint
|
||||
.setProject("5df5acd0d48c2") // Your project ID
|
||||
.setKey("919c2d18fb5d4...a2ae413da83346ad2") // Your secret API key
|
||||
|
||||
let database = Database(client)
|
||||
database.listDocuments(
|
||||
collectionId: "[COLLECTION_ID]"
|
||||
) { result in
|
||||
switch result {
|
||||
case .failure(let error):
|
||||
print(error.message)
|
||||
case .success(let documentList):
|
||||
print(String(describing: documentList)
|
||||
}
|
||||
}
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue