appwrite-cli 12.0.1 → 13.0.0-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/build-verify.yml +71 -0
- package/.github/workflows/npm-publish.yml +41 -22
- package/CHANGELOG.md +108 -100
- package/LICENSE.md +1 -1
- package/README.md +58 -35
- package/bun.lock +625 -0
- package/dist/bundle.cjs +94853 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +145 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/client.d.ts +88 -0
- package/dist/lib/client.d.ts.map +1 -0
- package/dist/lib/client.js +238 -0
- package/dist/lib/client.js.map +1 -0
- package/dist/lib/commands/generic.d.ts +17 -0
- package/dist/lib/commands/generic.d.ts.map +1 -0
- package/dist/lib/commands/generic.js +292 -0
- package/dist/lib/commands/generic.js.map +1 -0
- package/dist/lib/commands/init.d.ts +3 -0
- package/dist/lib/commands/init.d.ts.map +1 -0
- package/{lib → dist/lib}/commands/init.js +186 -270
- package/dist/lib/commands/init.js.map +1 -0
- package/dist/lib/commands/pull.d.ts +8 -0
- package/dist/lib/commands/pull.d.ts.map +1 -0
- package/{lib → dist/lib}/commands/pull.js +159 -280
- package/dist/lib/commands/pull.js.map +1 -0
- package/dist/lib/commands/push.d.ts +4 -0
- package/dist/lib/commands/push.d.ts.map +1 -0
- package/dist/lib/commands/push.js +2127 -0
- package/dist/lib/commands/push.js.map +1 -0
- package/dist/lib/commands/run.d.ts +3 -0
- package/dist/lib/commands/run.d.ts.map +1 -0
- package/{lib → dist/lib}/commands/run.js +146 -187
- package/dist/lib/commands/run.js.map +1 -0
- package/dist/lib/commands/services/account.d.ts +3 -0
- package/dist/lib/commands/services/account.d.ts.map +1 -0
- package/dist/lib/commands/services/account.js +306 -0
- package/dist/lib/commands/services/account.js.map +1 -0
- package/dist/lib/commands/services/avatars.d.ts +3 -0
- package/dist/lib/commands/services/avatars.d.ts.map +1 -0
- package/dist/lib/commands/services/avatars.js +118 -0
- package/dist/lib/commands/services/avatars.js.map +1 -0
- package/dist/lib/commands/services/console.d.ts +3 -0
- package/dist/lib/commands/services/console.d.ts.map +1 -0
- package/dist/lib/commands/services/console.js +41 -0
- package/dist/lib/commands/services/console.js.map +1 -0
- package/dist/lib/commands/services/databases.d.ts +3 -0
- package/dist/lib/commands/services/databases.d.ts.map +1 -0
- package/dist/lib/commands/services/databases.js +612 -0
- package/dist/lib/commands/services/databases.js.map +1 -0
- package/dist/lib/commands/services/functions.d.ts +3 -0
- package/dist/lib/commands/services/functions.d.ts.map +1 -0
- package/dist/lib/commands/services/functions.js +258 -0
- package/dist/lib/commands/services/functions.js.map +1 -0
- package/dist/lib/commands/services/graphql.d.ts +3 -0
- package/dist/lib/commands/services/graphql.d.ts.map +1 -0
- package/dist/lib/commands/services/graphql.js +28 -0
- package/dist/lib/commands/services/graphql.js.map +1 -0
- package/dist/lib/commands/services/health.d.ts +3 -0
- package/dist/lib/commands/services/health.d.ts.map +1 -0
- package/dist/lib/commands/services/health.js +123 -0
- package/dist/lib/commands/services/health.js.map +1 -0
- package/dist/lib/commands/services/locale.d.ts +3 -0
- package/dist/lib/commands/services/locale.d.ts.map +1 -0
- package/dist/lib/commands/services/locale.js +52 -0
- package/dist/lib/commands/services/locale.js.map +1 -0
- package/dist/lib/commands/services/messaging.d.ts +3 -0
- package/dist/lib/commands/services/messaging.d.ts.map +1 -0
- package/dist/lib/commands/services/messaging.js +505 -0
- package/dist/lib/commands/services/messaging.js.map +1 -0
- package/dist/lib/commands/services/migrations.d.ts +3 -0
- package/dist/lib/commands/services/migrations.d.ts.map +1 -0
- package/dist/lib/commands/services/migrations.js +135 -0
- package/dist/lib/commands/services/migrations.js.map +1 -0
- package/dist/lib/commands/services/project.d.ts +3 -0
- package/dist/lib/commands/services/project.d.ts.map +1 -0
- package/dist/lib/commands/services/project.js +54 -0
- package/dist/lib/commands/services/project.js.map +1 -0
- package/dist/lib/commands/services/projects.d.ts +3 -0
- package/dist/lib/commands/services/projects.d.ts.map +1 -0
- package/dist/lib/commands/services/projects.js +415 -0
- package/dist/lib/commands/services/projects.js.map +1 -0
- package/dist/lib/commands/services/proxy.d.ts +3 -0
- package/dist/lib/commands/services/proxy.d.ts.map +1 -0
- package/dist/lib/commands/services/proxy.js +68 -0
- package/dist/lib/commands/services/proxy.js.map +1 -0
- package/dist/lib/commands/services/sites.d.ts +3 -0
- package/dist/lib/commands/services/sites.d.ts.map +1 -0
- package/dist/lib/commands/services/sites.js +242 -0
- package/dist/lib/commands/services/sites.js.map +1 -0
- package/dist/lib/commands/services/storage.d.ts +3 -0
- package/dist/lib/commands/services/storage.d.ts.map +1 -0
- package/dist/lib/commands/services/storage.js +153 -0
- package/dist/lib/commands/services/storage.js.map +1 -0
- package/dist/lib/commands/services/tablesdb.d.ts +3 -0
- package/dist/lib/commands/services/tablesdb.d.ts.map +1 -0
- package/dist/lib/commands/services/tablesdb.js +605 -0
- package/dist/lib/commands/services/tablesdb.js.map +1 -0
- package/dist/lib/commands/services/teams.d.ts +3 -0
- package/dist/lib/commands/services/teams.d.ts.map +1 -0
- package/dist/lib/commands/services/teams.js +123 -0
- package/dist/lib/commands/services/teams.js.map +1 -0
- package/dist/lib/commands/services/tokens.d.ts +3 -0
- package/dist/lib/commands/services/tokens.d.ts.map +1 -0
- package/dist/lib/commands/services/tokens.js +49 -0
- package/dist/lib/commands/services/tokens.js.map +1 -0
- package/dist/lib/commands/services/users.d.ts +3 -0
- package/dist/lib/commands/services/users.d.ts.map +1 -0
- package/dist/lib/commands/services/users.js +312 -0
- package/dist/lib/commands/services/users.js.map +1 -0
- package/dist/lib/commands/services/vcs.d.ts +3 -0
- package/dist/lib/commands/services/vcs.d.ts.map +1 -0
- package/dist/lib/commands/services/vcs.js +87 -0
- package/dist/lib/commands/services/vcs.js.map +1 -0
- package/dist/lib/commands/types.d.ts +3 -0
- package/dist/lib/commands/types.d.ts.map +1 -0
- package/dist/lib/commands/types.js +151 -0
- package/dist/lib/commands/types.js.map +1 -0
- package/dist/lib/commands/update.d.ts +3 -0
- package/dist/lib/commands/update.d.ts.map +1 -0
- package/{lib → dist/lib}/commands/update.js +62 -79
- package/dist/lib/commands/update.js.map +1 -0
- package/dist/lib/config.d.ts +118 -0
- package/dist/lib/config.d.ts.map +1 -0
- package/{lib → dist/lib}/config.js +173 -232
- package/dist/lib/config.js.map +1 -0
- package/dist/lib/emulation/docker.d.ts +7 -0
- package/dist/lib/emulation/docker.d.ts.map +1 -0
- package/dist/lib/emulation/docker.js +224 -0
- package/dist/lib/emulation/docker.js.map +1 -0
- package/dist/lib/emulation/utils.d.ts +29 -0
- package/dist/lib/emulation/utils.d.ts.map +1 -0
- package/{lib → dist/lib}/emulation/utils.js +70 -91
- package/dist/lib/emulation/utils.js.map +1 -0
- package/dist/lib/id.d.ts +7 -0
- package/dist/lib/id.d.ts.map +1 -0
- package/{lib → dist/lib}/id.js +5 -8
- package/dist/lib/id.js.map +1 -0
- package/dist/lib/paginate.d.ts +9 -0
- package/dist/lib/paginate.d.ts.map +1 -0
- package/{lib → dist/lib}/paginate.js +10 -19
- package/dist/lib/paginate.js.map +1 -0
- package/dist/lib/parser.d.ts +18 -0
- package/dist/lib/parser.d.ts.map +1 -0
- package/dist/lib/parser.js +225 -0
- package/dist/lib/parser.js.map +1 -0
- package/dist/lib/questions.d.ts +59 -0
- package/dist/lib/questions.d.ts.map +1 -0
- package/{lib → dist/lib}/questions.js +393 -500
- package/dist/lib/questions.js.map +1 -0
- package/dist/lib/sdks.d.ts +4 -0
- package/dist/lib/sdks.d.ts.map +1 -0
- package/dist/lib/sdks.js +61 -0
- package/dist/lib/sdks.js.map +1 -0
- package/dist/lib/services.d.ts +13 -0
- package/dist/lib/services.d.ts.map +1 -0
- package/dist/lib/services.js +47 -0
- package/dist/lib/services.js.map +1 -0
- package/dist/lib/spinner.d.ts +28 -0
- package/dist/lib/spinner.d.ts.map +1 -0
- package/dist/lib/spinner.js +91 -0
- package/dist/lib/spinner.js.map +1 -0
- package/dist/lib/type-generation/attribute.d.ts +17 -0
- package/dist/lib/type-generation/attribute.d.ts.map +1 -0
- package/{lib → dist/lib}/type-generation/attribute.js +2 -5
- package/dist/lib/type-generation/attribute.js.map +1 -0
- package/dist/lib/type-generation/languages/csharp.d.ts +7 -0
- package/dist/lib/type-generation/languages/csharp.d.ts.map +1 -0
- package/dist/lib/type-generation/languages/csharp.js +180 -0
- package/dist/lib/type-generation/languages/csharp.js.map +1 -0
- package/dist/lib/type-generation/languages/dart.d.ts +8 -0
- package/dist/lib/type-generation/languages/dart.d.ts.map +1 -0
- package/dist/lib/type-generation/languages/dart.js +197 -0
- package/dist/lib/type-generation/languages/dart.js.map +1 -0
- package/dist/lib/type-generation/languages/java.d.ts +7 -0
- package/dist/lib/type-generation/languages/java.d.ts.map +1 -0
- package/dist/lib/type-generation/languages/java.js +140 -0
- package/dist/lib/type-generation/languages/java.js.map +1 -0
- package/dist/lib/type-generation/languages/javascript.d.ts +9 -0
- package/dist/lib/type-generation/languages/javascript.d.ts.map +1 -0
- package/dist/lib/type-generation/languages/javascript.js +109 -0
- package/dist/lib/type-generation/languages/javascript.js.map +1 -0
- package/dist/lib/type-generation/languages/kotlin.d.ts +7 -0
- package/dist/lib/type-generation/languages/kotlin.d.ts.map +1 -0
- package/dist/lib/type-generation/languages/kotlin.js +95 -0
- package/dist/lib/type-generation/languages/kotlin.js.map +1 -0
- package/dist/lib/type-generation/languages/language.d.ts +43 -0
- package/dist/lib/type-generation/languages/language.d.ts.map +1 -0
- package/dist/lib/type-generation/languages/language.js +77 -0
- package/dist/lib/type-generation/languages/language.js.map +1 -0
- package/dist/lib/type-generation/languages/php.d.ts +7 -0
- package/dist/lib/type-generation/languages/php.d.ts.map +1 -0
- package/dist/lib/type-generation/languages/php.js +116 -0
- package/dist/lib/type-generation/languages/php.js.map +1 -0
- package/dist/lib/type-generation/languages/swift.d.ts +7 -0
- package/dist/lib/type-generation/languages/swift.d.ts.map +1 -0
- package/dist/lib/type-generation/languages/swift.js +179 -0
- package/dist/lib/type-generation/languages/swift.js.map +1 -0
- package/dist/lib/type-generation/languages/typescript.d.ts +9 -0
- package/dist/lib/type-generation/languages/typescript.d.ts.map +1 -0
- package/dist/lib/type-generation/languages/typescript.js +115 -0
- package/dist/lib/type-generation/languages/typescript.js.map +1 -0
- package/dist/lib/types.d.ts +277 -0
- package/dist/lib/types.d.ts.map +1 -0
- package/dist/lib/types.js +2 -0
- package/dist/lib/types.js.map +1 -0
- package/dist/lib/utils.d.ts +15 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/{lib → dist/lib}/utils.js +125 -167
- package/dist/lib/utils.js.map +1 -0
- package/dist/lib/validations.d.ts +2 -0
- package/dist/lib/validations.d.ts.map +1 -0
- package/dist/lib/validations.js +16 -0
- package/dist/lib/validations.js.map +1 -0
- package/dist/package.json +67 -0
- package/dist/scripts/generate-commands.d.ts +2 -0
- package/dist/scripts/generate-commands.d.ts.map +1 -0
- package/dist/scripts/generate-commands.js +398 -0
- package/dist/scripts/generate-commands.js.map +1 -0
- package/index.ts +168 -0
- package/install.ps1 +2 -5
- package/install.sh +1 -2
- package/lib/client.ts +292 -0
- package/lib/commands/generic.ts +440 -0
- package/lib/commands/init.ts +713 -0
- package/lib/commands/pull.ts +668 -0
- package/lib/commands/push.ts +3183 -0
- package/lib/commands/run.ts +416 -0
- package/lib/commands/services/account.ts +832 -0
- package/lib/commands/services/avatars.ts +400 -0
- package/lib/commands/services/console.ts +73 -0
- package/lib/commands/services/databases.ts +2080 -0
- package/lib/commands/services/functions.ts +855 -0
- package/lib/commands/services/graphql.ts +47 -0
- package/lib/commands/services/health.ts +322 -0
- package/lib/commands/services/locale.ts +99 -0
- package/lib/commands/services/messaging.ts +1871 -0
- package/lib/commands/services/migrations.ts +421 -0
- package/lib/commands/services/project.ts +116 -0
- package/lib/commands/services/projects.ts +1317 -0
- package/lib/commands/services/proxy.ts +163 -0
- package/lib/commands/services/sites.ts +777 -0
- package/lib/commands/services/storage.ts +547 -0
- package/lib/commands/services/tablesdb.ts +1928 -0
- package/lib/commands/services/teams.ts +294 -0
- package/lib/commands/services/tokens.ts +106 -0
- package/lib/commands/services/users.ts +886 -0
- package/lib/commands/services/vcs.ts +268 -0
- package/lib/commands/types.ts +220 -0
- package/lib/commands/update.ts +255 -0
- package/lib/config.ts +969 -0
- package/lib/emulation/docker.ts +312 -0
- package/lib/emulation/utils.ts +207 -0
- package/lib/id.ts +30 -0
- package/lib/paginate.ts +77 -0
- package/lib/parser.ts +264 -0
- package/lib/questions.ts +1167 -0
- package/lib/sdks.ts +84 -0
- package/lib/services.ts +72 -0
- package/lib/spinner.ts +131 -0
- package/lib/type-generation/attribute.ts +18 -0
- package/lib/type-generation/languages/{csharp.js → csharp.ts} +27 -14
- package/lib/type-generation/languages/{dart.js → dart.ts} +61 -46
- package/lib/type-generation/languages/{java.js → java.ts} +31 -18
- package/lib/type-generation/languages/{javascript.js → javascript.ts} +35 -24
- package/lib/type-generation/languages/{kotlin.js → kotlin.ts} +27 -14
- package/lib/type-generation/languages/{language.js → language.ts} +45 -43
- package/lib/type-generation/languages/{php.js → php.ts} +28 -15
- package/lib/type-generation/languages/{swift.js → swift.ts} +27 -14
- package/lib/type-generation/languages/{typescript.js → typescript.ts} +43 -26
- package/lib/types.ts +304 -0
- package/lib/utils.ts +352 -0
- package/lib/validations.ts +20 -0
- package/package.json +36 -19
- package/scoop/appwrite.config.json +19 -29
- package/scripts/generate-commands.ts +539 -0
- package/tsconfig.json +24 -0
- package/.github/workflows/autoclose.yml +0 -11
- package/docs/examples/account/create-anonymous-session.md +0 -1
- package/docs/examples/account/create-email-password-session.md +0 -3
- package/docs/examples/account/create-email-token.md +0 -3
- package/docs/examples/account/create-email-verification.md +0 -2
- package/docs/examples/account/create-jwt.md +0 -1
- package/docs/examples/account/create-magic-url-token.md +0 -3
- package/docs/examples/account/create-mfa-authenticator.md +0 -2
- package/docs/examples/account/create-mfa-challenge.md +0 -2
- package/docs/examples/account/create-mfa-recovery-codes.md +0 -1
- package/docs/examples/account/create-o-auth-2-session.md +0 -2
- package/docs/examples/account/create-o-auth-2-token.md +0 -2
- package/docs/examples/account/create-phone-token.md +0 -3
- package/docs/examples/account/create-phone-verification.md +0 -1
- package/docs/examples/account/create-push-target.md +0 -3
- package/docs/examples/account/create-recovery.md +0 -3
- package/docs/examples/account/create-session.md +0 -3
- package/docs/examples/account/create-verification.md +0 -2
- package/docs/examples/account/create.md +0 -4
- package/docs/examples/account/delete-identity.md +0 -2
- package/docs/examples/account/delete-mfa-authenticator.md +0 -2
- package/docs/examples/account/delete-push-target.md +0 -2
- package/docs/examples/account/delete-session.md +0 -2
- package/docs/examples/account/delete-sessions.md +0 -1
- package/docs/examples/account/delete.md +0 -1
- package/docs/examples/account/get-mfa-recovery-codes.md +0 -1
- package/docs/examples/account/get-prefs.md +0 -1
- package/docs/examples/account/get-session.md +0 -2
- package/docs/examples/account/get.md +0 -1
- package/docs/examples/account/list-identities.md +0 -1
- package/docs/examples/account/list-logs.md +0 -1
- package/docs/examples/account/list-mfa-factors.md +0 -1
- package/docs/examples/account/list-sessions.md +0 -1
- package/docs/examples/account/update-email-verification.md +0 -3
- package/docs/examples/account/update-email.md +0 -3
- package/docs/examples/account/update-magic-url-session.md +0 -3
- package/docs/examples/account/update-mfa-authenticator.md +0 -3
- package/docs/examples/account/update-mfa-challenge.md +0 -3
- package/docs/examples/account/update-mfa-recovery-codes.md +0 -1
- package/docs/examples/account/update-mfa.md +0 -2
- package/docs/examples/account/update-name.md +0 -2
- package/docs/examples/account/update-password.md +0 -2
- package/docs/examples/account/update-phone-session.md +0 -3
- package/docs/examples/account/update-phone-verification.md +0 -3
- package/docs/examples/account/update-phone.md +0 -3
- package/docs/examples/account/update-prefs.md +0 -2
- package/docs/examples/account/update-push-target.md +0 -3
- package/docs/examples/account/update-recovery.md +0 -4
- package/docs/examples/account/update-session.md +0 -2
- package/docs/examples/account/update-status.md +0 -1
- package/docs/examples/account/update-verification.md +0 -3
- package/docs/examples/console/get-resource.md +0 -3
- package/docs/examples/console/variables.md +0 -1
- package/docs/examples/databases/create-boolean-attribute.md +0 -5
- package/docs/examples/databases/create-collection.md +0 -4
- package/docs/examples/databases/create-datetime-attribute.md +0 -5
- package/docs/examples/databases/create-document.md +0 -5
- package/docs/examples/databases/create-documents.md +0 -4
- package/docs/examples/databases/create-email-attribute.md +0 -5
- package/docs/examples/databases/create-enum-attribute.md +0 -6
- package/docs/examples/databases/create-float-attribute.md +0 -5
- package/docs/examples/databases/create-index.md +0 -6
- package/docs/examples/databases/create-integer-attribute.md +0 -5
- package/docs/examples/databases/create-ip-attribute.md +0 -5
- package/docs/examples/databases/create-line-attribute.md +0 -5
- package/docs/examples/databases/create-operations.md +0 -2
- package/docs/examples/databases/create-point-attribute.md +0 -5
- package/docs/examples/databases/create-polygon-attribute.md +0 -5
- package/docs/examples/databases/create-relationship-attribute.md +0 -5
- package/docs/examples/databases/create-string-attribute.md +0 -6
- package/docs/examples/databases/create-transaction.md +0 -1
- package/docs/examples/databases/create-url-attribute.md +0 -5
- package/docs/examples/databases/create.md +0 -3
- package/docs/examples/databases/decrement-document-attribute.md +0 -5
- package/docs/examples/databases/delete-attribute.md +0 -4
- package/docs/examples/databases/delete-collection.md +0 -3
- package/docs/examples/databases/delete-document.md +0 -4
- package/docs/examples/databases/delete-documents.md +0 -3
- package/docs/examples/databases/delete-index.md +0 -4
- package/docs/examples/databases/delete-transaction.md +0 -2
- package/docs/examples/databases/delete.md +0 -2
- package/docs/examples/databases/get-attribute.md +0 -4
- package/docs/examples/databases/get-collection-usage.md +0 -3
- package/docs/examples/databases/get-collection.md +0 -3
- package/docs/examples/databases/get-document.md +0 -4
- package/docs/examples/databases/get-index.md +0 -4
- package/docs/examples/databases/get-transaction.md +0 -2
- package/docs/examples/databases/get-usage.md +0 -2
- package/docs/examples/databases/get.md +0 -2
- package/docs/examples/databases/increment-document-attribute.md +0 -5
- package/docs/examples/databases/list-attributes.md +0 -3
- package/docs/examples/databases/list-collection-logs.md +0 -3
- package/docs/examples/databases/list-collections.md +0 -2
- package/docs/examples/databases/list-document-logs.md +0 -4
- package/docs/examples/databases/list-documents.md +0 -3
- package/docs/examples/databases/list-indexes.md +0 -3
- package/docs/examples/databases/list-logs.md +0 -2
- package/docs/examples/databases/list-transactions.md +0 -1
- package/docs/examples/databases/list-usage.md +0 -1
- package/docs/examples/databases/list.md +0 -1
- package/docs/examples/databases/update-boolean-attribute.md +0 -6
- package/docs/examples/databases/update-collection.md +0 -4
- package/docs/examples/databases/update-datetime-attribute.md +0 -6
- package/docs/examples/databases/update-document.md +0 -4
- package/docs/examples/databases/update-documents.md +0 -3
- package/docs/examples/databases/update-email-attribute.md +0 -6
- package/docs/examples/databases/update-enum-attribute.md +0 -7
- package/docs/examples/databases/update-float-attribute.md +0 -6
- package/docs/examples/databases/update-integer-attribute.md +0 -6
- package/docs/examples/databases/update-ip-attribute.md +0 -6
- package/docs/examples/databases/update-line-attribute.md +0 -5
- package/docs/examples/databases/update-point-attribute.md +0 -5
- package/docs/examples/databases/update-polygon-attribute.md +0 -5
- package/docs/examples/databases/update-relationship-attribute.md +0 -4
- package/docs/examples/databases/update-string-attribute.md +0 -6
- package/docs/examples/databases/update-transaction.md +0 -2
- package/docs/examples/databases/update-url-attribute.md +0 -6
- package/docs/examples/databases/update.md +0 -3
- package/docs/examples/databases/upsert-document.md +0 -5
- package/docs/examples/databases/upsert-documents.md +0 -4
- package/docs/examples/functions/create-deployment.md +0 -4
- package/docs/examples/functions/create-duplicate-deployment.md +0 -3
- package/docs/examples/functions/create-execution.md +0 -2
- package/docs/examples/functions/create-template-deployment.md +0 -7
- package/docs/examples/functions/create-variable.md +0 -4
- package/docs/examples/functions/create-vcs-deployment.md +0 -4
- package/docs/examples/functions/create.md +0 -4
- package/docs/examples/functions/delete-deployment.md +0 -3
- package/docs/examples/functions/delete-execution.md +0 -3
- package/docs/examples/functions/delete-variable.md +0 -3
- package/docs/examples/functions/delete.md +0 -2
- package/docs/examples/functions/get-deployment-download.md +0 -3
- package/docs/examples/functions/get-deployment.md +0 -3
- package/docs/examples/functions/get-execution.md +0 -3
- package/docs/examples/functions/get-template.md +0 -2
- package/docs/examples/functions/get-usage.md +0 -2
- package/docs/examples/functions/get-variable.md +0 -3
- package/docs/examples/functions/get.md +0 -2
- package/docs/examples/functions/list-deployments.md +0 -2
- package/docs/examples/functions/list-executions.md +0 -2
- package/docs/examples/functions/list-runtimes.md +0 -1
- package/docs/examples/functions/list-specifications.md +0 -1
- package/docs/examples/functions/list-templates.md +0 -1
- package/docs/examples/functions/list-usage.md +0 -1
- package/docs/examples/functions/list-variables.md +0 -2
- package/docs/examples/functions/list.md +0 -1
- package/docs/examples/functions/update-deployment-status.md +0 -3
- package/docs/examples/functions/update-function-deployment.md +0 -3
- package/docs/examples/functions/update-variable.md +0 -4
- package/docs/examples/functions/update.md +0 -3
- package/docs/examples/graphql/mutation.md +0 -2
- package/docs/examples/graphql/query.md +0 -2
- package/docs/examples/health/get-antivirus.md +0 -1
- package/docs/examples/health/get-cache.md +0 -1
- package/docs/examples/health/get-certificate.md +0 -1
- package/docs/examples/health/get-db.md +0 -1
- package/docs/examples/health/get-failed-jobs.md +0 -2
- package/docs/examples/health/get-pub-sub.md +0 -1
- package/docs/examples/health/get-queue-builds.md +0 -1
- package/docs/examples/health/get-queue-certificates.md +0 -1
- package/docs/examples/health/get-queue-databases.md +0 -1
- package/docs/examples/health/get-queue-deletes.md +0 -1
- package/docs/examples/health/get-queue-functions.md +0 -1
- package/docs/examples/health/get-queue-logs.md +0 -1
- package/docs/examples/health/get-queue-mails.md +0 -1
- package/docs/examples/health/get-queue-messaging.md +0 -1
- package/docs/examples/health/get-queue-migrations.md +0 -1
- package/docs/examples/health/get-queue-stats-resources.md +0 -1
- package/docs/examples/health/get-queue-usage.md +0 -1
- package/docs/examples/health/get-queue-webhooks.md +0 -1
- package/docs/examples/health/get-storage-local.md +0 -1
- package/docs/examples/health/get-storage.md +0 -1
- package/docs/examples/health/get-time.md +0 -1
- package/docs/examples/health/get.md +0 -1
- package/docs/examples/locale/get.md +0 -1
- package/docs/examples/locale/list-codes.md +0 -1
- package/docs/examples/locale/list-continents.md +0 -1
- package/docs/examples/locale/list-countries-eu.md +0 -1
- package/docs/examples/locale/list-countries-phones.md +0 -1
- package/docs/examples/locale/list-countries.md +0 -1
- package/docs/examples/locale/list-currencies.md +0 -1
- package/docs/examples/locale/list-languages.md +0 -1
- package/docs/examples/messaging/create-apns-provider.md +0 -3
- package/docs/examples/messaging/create-email.md +0 -4
- package/docs/examples/messaging/create-fcm-provider.md +0 -3
- package/docs/examples/messaging/create-mailgun-provider.md +0 -3
- package/docs/examples/messaging/create-msg-91-provider.md +0 -3
- package/docs/examples/messaging/create-push.md +0 -2
- package/docs/examples/messaging/create-resend-provider.md +0 -3
- package/docs/examples/messaging/create-sendgrid-provider.md +0 -3
- package/docs/examples/messaging/create-sms.md +0 -3
- package/docs/examples/messaging/create-smtp-provider.md +0 -4
- package/docs/examples/messaging/create-subscriber.md +0 -4
- package/docs/examples/messaging/create-telesign-provider.md +0 -3
- package/docs/examples/messaging/create-textmagic-provider.md +0 -3
- package/docs/examples/messaging/create-topic.md +0 -3
- package/docs/examples/messaging/create-twilio-provider.md +0 -3
- package/docs/examples/messaging/create-vonage-provider.md +0 -3
- package/docs/examples/messaging/delete-provider.md +0 -2
- package/docs/examples/messaging/delete-subscriber.md +0 -3
- package/docs/examples/messaging/delete-topic.md +0 -2
- package/docs/examples/messaging/delete.md +0 -2
- package/docs/examples/messaging/get-message.md +0 -2
- package/docs/examples/messaging/get-provider.md +0 -2
- package/docs/examples/messaging/get-subscriber.md +0 -3
- package/docs/examples/messaging/get-topic.md +0 -2
- package/docs/examples/messaging/list-message-logs.md +0 -2
- package/docs/examples/messaging/list-messages.md +0 -1
- package/docs/examples/messaging/list-provider-logs.md +0 -2
- package/docs/examples/messaging/list-providers.md +0 -1
- package/docs/examples/messaging/list-subscriber-logs.md +0 -2
- package/docs/examples/messaging/list-subscribers.md +0 -2
- package/docs/examples/messaging/list-targets.md +0 -2
- package/docs/examples/messaging/list-topic-logs.md +0 -2
- package/docs/examples/messaging/list-topics.md +0 -1
- package/docs/examples/messaging/update-apns-provider.md +0 -2
- package/docs/examples/messaging/update-email.md +0 -2
- package/docs/examples/messaging/update-fcm-provider.md +0 -2
- package/docs/examples/messaging/update-mailgun-provider.md +0 -2
- package/docs/examples/messaging/update-msg-91-provider.md +0 -2
- package/docs/examples/messaging/update-push.md +0 -2
- package/docs/examples/messaging/update-resend-provider.md +0 -2
- package/docs/examples/messaging/update-sendgrid-provider.md +0 -2
- package/docs/examples/messaging/update-sms.md +0 -2
- package/docs/examples/messaging/update-smtp-provider.md +0 -2
- package/docs/examples/messaging/update-telesign-provider.md +0 -2
- package/docs/examples/messaging/update-textmagic-provider.md +0 -2
- package/docs/examples/messaging/update-topic.md +0 -2
- package/docs/examples/messaging/update-twilio-provider.md +0 -2
- package/docs/examples/messaging/update-vonage-provider.md +0 -2
- package/docs/examples/migrations/create-appwrite-migration.md +0 -5
- package/docs/examples/migrations/create-csv-export.md +0 -3
- package/docs/examples/migrations/create-csv-import.md +0 -4
- package/docs/examples/migrations/create-firebase-migration.md +0 -3
- package/docs/examples/migrations/create-n-host-migration.md +0 -8
- package/docs/examples/migrations/create-supabase-migration.md +0 -7
- package/docs/examples/migrations/delete.md +0 -2
- package/docs/examples/migrations/get-appwrite-report.md +0 -5
- package/docs/examples/migrations/get-firebase-report.md +0 -3
- package/docs/examples/migrations/get-n-host-report.md +0 -8
- package/docs/examples/migrations/get-supabase-report.md +0 -7
- package/docs/examples/migrations/get.md +0 -2
- package/docs/examples/migrations/list.md +0 -1
- package/docs/examples/migrations/retry.md +0 -2
- package/docs/examples/project/create-variable.md +0 -3
- package/docs/examples/project/delete-variable.md +0 -2
- package/docs/examples/project/get-usage.md +0 -3
- package/docs/examples/project/get-variable.md +0 -2
- package/docs/examples/project/list-variables.md +0 -1
- package/docs/examples/project/update-variable.md +0 -3
- package/docs/examples/projects/create-dev-key.md +0 -4
- package/docs/examples/projects/create-jwt.md +0 -3
- package/docs/examples/projects/create-key.md +0 -4
- package/docs/examples/projects/create-platform.md +0 -4
- package/docs/examples/projects/create-smtp-test.md +0 -6
- package/docs/examples/projects/create-webhook.md +0 -6
- package/docs/examples/projects/create.md +0 -4
- package/docs/examples/projects/delete-dev-key.md +0 -3
- package/docs/examples/projects/delete-email-template.md +0 -4
- package/docs/examples/projects/delete-key.md +0 -3
- package/docs/examples/projects/delete-platform.md +0 -3
- package/docs/examples/projects/delete-sms-template.md +0 -4
- package/docs/examples/projects/delete-webhook.md +0 -3
- package/docs/examples/projects/delete.md +0 -2
- package/docs/examples/projects/get-dev-key.md +0 -3
- package/docs/examples/projects/get-email-template.md +0 -4
- package/docs/examples/projects/get-key.md +0 -3
- package/docs/examples/projects/get-platform.md +0 -3
- package/docs/examples/projects/get-sms-template.md +0 -4
- package/docs/examples/projects/get-webhook.md +0 -3
- package/docs/examples/projects/get.md +0 -2
- package/docs/examples/projects/list-dev-keys.md +0 -2
- package/docs/examples/projects/list-keys.md +0 -2
- package/docs/examples/projects/list-platforms.md +0 -2
- package/docs/examples/projects/list-webhooks.md +0 -2
- package/docs/examples/projects/list.md +0 -1
- package/docs/examples/projects/update-api-status-all.md +0 -3
- package/docs/examples/projects/update-api-status.md +0 -4
- package/docs/examples/projects/update-auth-duration.md +0 -3
- package/docs/examples/projects/update-auth-limit.md +0 -3
- package/docs/examples/projects/update-auth-password-dictionary.md +0 -3
- package/docs/examples/projects/update-auth-password-history.md +0 -3
- package/docs/examples/projects/update-auth-sessions-limit.md +0 -3
- package/docs/examples/projects/update-auth-status.md +0 -4
- package/docs/examples/projects/update-dev-key.md +0 -5
- package/docs/examples/projects/update-email-template.md +0 -6
- package/docs/examples/projects/update-key.md +0 -5
- package/docs/examples/projects/update-memberships-privacy.md +0 -5
- package/docs/examples/projects/update-mock-numbers.md +0 -3
- package/docs/examples/projects/update-o-auth-2.md +0 -3
- package/docs/examples/projects/update-personal-data-check.md +0 -3
- package/docs/examples/projects/update-platform.md +0 -4
- package/docs/examples/projects/update-service-status-all.md +0 -3
- package/docs/examples/projects/update-service-status.md +0 -4
- package/docs/examples/projects/update-session-alerts.md +0 -3
- package/docs/examples/projects/update-session-invalidation.md +0 -3
- package/docs/examples/projects/update-sms-template.md +0 -5
- package/docs/examples/projects/update-smtp.md +0 -3
- package/docs/examples/projects/update-team.md +0 -3
- package/docs/examples/projects/update-webhook-signature.md +0 -3
- package/docs/examples/projects/update-webhook.md +0 -7
- package/docs/examples/projects/update.md +0 -3
- package/docs/examples/proxy/create-api-rule.md +0 -2
- package/docs/examples/proxy/create-function-rule.md +0 -3
- package/docs/examples/proxy/create-redirect-rule.md +0 -6
- package/docs/examples/proxy/create-site-rule.md +0 -3
- package/docs/examples/proxy/delete-rule.md +0 -2
- package/docs/examples/proxy/get-rule.md +0 -2
- package/docs/examples/proxy/list-rules.md +0 -1
- package/docs/examples/proxy/update-rule-verification.md +0 -2
- package/docs/examples/sites/create-deployment.md +0 -4
- package/docs/examples/sites/create-duplicate-deployment.md +0 -3
- package/docs/examples/sites/create-template-deployment.md +0 -7
- package/docs/examples/sites/create-variable.md +0 -4
- package/docs/examples/sites/create-vcs-deployment.md +0 -4
- package/docs/examples/sites/create.md +0 -5
- package/docs/examples/sites/delete-deployment.md +0 -3
- package/docs/examples/sites/delete-log.md +0 -3
- package/docs/examples/sites/delete-variable.md +0 -3
- package/docs/examples/sites/delete.md +0 -2
- package/docs/examples/sites/get-deployment-download.md +0 -3
- package/docs/examples/sites/get-deployment.md +0 -3
- package/docs/examples/sites/get-log.md +0 -3
- package/docs/examples/sites/get-template.md +0 -2
- package/docs/examples/sites/get-usage.md +0 -2
- package/docs/examples/sites/get-variable.md +0 -3
- package/docs/examples/sites/get.md +0 -2
- package/docs/examples/sites/list-deployments.md +0 -2
- package/docs/examples/sites/list-frameworks.md +0 -1
- package/docs/examples/sites/list-logs.md +0 -2
- package/docs/examples/sites/list-specifications.md +0 -1
- package/docs/examples/sites/list-templates.md +0 -1
- package/docs/examples/sites/list-usage.md +0 -1
- package/docs/examples/sites/list-variables.md +0 -2
- package/docs/examples/sites/list.md +0 -1
- package/docs/examples/sites/update-deployment-status.md +0 -3
- package/docs/examples/sites/update-site-deployment.md +0 -3
- package/docs/examples/sites/update-variable.md +0 -4
- package/docs/examples/sites/update.md +0 -4
- package/docs/examples/storage/create-bucket.md +0 -3
- package/docs/examples/storage/create-file.md +0 -4
- package/docs/examples/storage/delete-bucket.md +0 -2
- package/docs/examples/storage/delete-file.md +0 -3
- package/docs/examples/storage/get-bucket-usage.md +0 -2
- package/docs/examples/storage/get-bucket.md +0 -2
- package/docs/examples/storage/get-file-download.md +0 -3
- package/docs/examples/storage/get-file-preview.md +0 -3
- package/docs/examples/storage/get-file-view.md +0 -3
- package/docs/examples/storage/get-file.md +0 -3
- package/docs/examples/storage/get-usage.md +0 -1
- package/docs/examples/storage/list-buckets.md +0 -1
- package/docs/examples/storage/list-files.md +0 -2
- package/docs/examples/storage/update-bucket.md +0 -3
- package/docs/examples/storage/update-file.md +0 -3
- package/docs/examples/tablesdb/create-boolean-column.md +0 -5
- package/docs/examples/tablesdb/create-datetime-column.md +0 -5
- package/docs/examples/tablesdb/create-email-column.md +0 -5
- package/docs/examples/tablesdb/create-enum-column.md +0 -6
- package/docs/examples/tablesdb/create-float-column.md +0 -5
- package/docs/examples/tablesdb/create-index.md +0 -6
- package/docs/examples/tablesdb/create-integer-column.md +0 -5
- package/docs/examples/tablesdb/create-ip-column.md +0 -5
- package/docs/examples/tablesdb/create-line-column.md +0 -5
- package/docs/examples/tablesdb/create-operations.md +0 -2
- package/docs/examples/tablesdb/create-point-column.md +0 -5
- package/docs/examples/tablesdb/create-polygon-column.md +0 -5
- package/docs/examples/tablesdb/create-relationship-column.md +0 -5
- package/docs/examples/tablesdb/create-row.md +0 -5
- package/docs/examples/tablesdb/create-rows.md +0 -4
- package/docs/examples/tablesdb/create-string-column.md +0 -6
- package/docs/examples/tablesdb/create-table.md +0 -4
- package/docs/examples/tablesdb/create-transaction.md +0 -1
- package/docs/examples/tablesdb/create-url-column.md +0 -5
- package/docs/examples/tablesdb/create.md +0 -3
- package/docs/examples/tablesdb/decrement-row-column.md +0 -5
- package/docs/examples/tablesdb/delete-column.md +0 -4
- package/docs/examples/tablesdb/delete-index.md +0 -4
- package/docs/examples/tablesdb/delete-row.md +0 -4
- package/docs/examples/tablesdb/delete-rows.md +0 -3
- package/docs/examples/tablesdb/delete-table.md +0 -3
- package/docs/examples/tablesdb/delete-transaction.md +0 -2
- package/docs/examples/tablesdb/delete.md +0 -2
- package/docs/examples/tablesdb/get-column.md +0 -4
- package/docs/examples/tablesdb/get-index.md +0 -4
- package/docs/examples/tablesdb/get-row.md +0 -4
- package/docs/examples/tablesdb/get-table-usage.md +0 -3
- package/docs/examples/tablesdb/get-table.md +0 -3
- package/docs/examples/tablesdb/get-transaction.md +0 -2
- package/docs/examples/tablesdb/get-usage.md +0 -2
- package/docs/examples/tablesdb/get.md +0 -2
- package/docs/examples/tablesdb/increment-row-column.md +0 -5
- package/docs/examples/tablesdb/list-columns.md +0 -3
- package/docs/examples/tablesdb/list-indexes.md +0 -3
- package/docs/examples/tablesdb/list-row-logs.md +0 -4
- package/docs/examples/tablesdb/list-rows.md +0 -3
- package/docs/examples/tablesdb/list-table-logs.md +0 -3
- package/docs/examples/tablesdb/list-tables.md +0 -2
- package/docs/examples/tablesdb/list-transactions.md +0 -1
- package/docs/examples/tablesdb/list-usage.md +0 -1
- package/docs/examples/tablesdb/list.md +0 -1
- package/docs/examples/tablesdb/update-boolean-column.md +0 -6
- package/docs/examples/tablesdb/update-datetime-column.md +0 -6
- package/docs/examples/tablesdb/update-email-column.md +0 -6
- package/docs/examples/tablesdb/update-enum-column.md +0 -7
- package/docs/examples/tablesdb/update-float-column.md +0 -6
- package/docs/examples/tablesdb/update-integer-column.md +0 -6
- package/docs/examples/tablesdb/update-ip-column.md +0 -6
- package/docs/examples/tablesdb/update-line-column.md +0 -5
- package/docs/examples/tablesdb/update-point-column.md +0 -5
- package/docs/examples/tablesdb/update-polygon-column.md +0 -5
- package/docs/examples/tablesdb/update-relationship-column.md +0 -4
- package/docs/examples/tablesdb/update-row.md +0 -4
- package/docs/examples/tablesdb/update-rows.md +0 -3
- package/docs/examples/tablesdb/update-string-column.md +0 -6
- package/docs/examples/tablesdb/update-table.md +0 -4
- package/docs/examples/tablesdb/update-transaction.md +0 -2
- package/docs/examples/tablesdb/update-url-column.md +0 -6
- package/docs/examples/tablesdb/update.md +0 -3
- package/docs/examples/tablesdb/upsert-row.md +0 -4
- package/docs/examples/tablesdb/upsert-rows.md +0 -4
- package/docs/examples/teams/create-membership.md +0 -3
- package/docs/examples/teams/create.md +0 -3
- package/docs/examples/teams/delete-membership.md +0 -3
- package/docs/examples/teams/delete.md +0 -2
- package/docs/examples/teams/get-membership.md +0 -3
- package/docs/examples/teams/get-prefs.md +0 -2
- package/docs/examples/teams/get.md +0 -2
- package/docs/examples/teams/list-logs.md +0 -2
- package/docs/examples/teams/list-memberships.md +0 -2
- package/docs/examples/teams/list.md +0 -1
- package/docs/examples/teams/update-membership-status.md +0 -5
- package/docs/examples/teams/update-membership.md +0 -4
- package/docs/examples/teams/update-name.md +0 -3
- package/docs/examples/teams/update-prefs.md +0 -3
- package/docs/examples/tokens/create-file-token.md +0 -3
- package/docs/examples/tokens/delete.md +0 -2
- package/docs/examples/tokens/get.md +0 -2
- package/docs/examples/tokens/list.md +0 -3
- package/docs/examples/tokens/update.md +0 -2
- package/docs/examples/users/create-argon-2-user.md +0 -4
- package/docs/examples/users/create-bcrypt-user.md +0 -4
- package/docs/examples/users/create-jwt.md +0 -2
- package/docs/examples/users/create-md-5-user.md +0 -4
- package/docs/examples/users/create-mfa-recovery-codes.md +0 -2
- package/docs/examples/users/create-ph-pass-user.md +0 -4
- package/docs/examples/users/create-scrypt-modified-user.md +0 -7
- package/docs/examples/users/create-scrypt-user.md +0 -9
- package/docs/examples/users/create-session.md +0 -2
- package/docs/examples/users/create-sha-user.md +0 -4
- package/docs/examples/users/create-target.md +0 -5
- package/docs/examples/users/create-token.md +0 -2
- package/docs/examples/users/create.md +0 -2
- package/docs/examples/users/delete-identity.md +0 -2
- package/docs/examples/users/delete-mfa-authenticator.md +0 -3
- package/docs/examples/users/delete-session.md +0 -3
- package/docs/examples/users/delete-sessions.md +0 -2
- package/docs/examples/users/delete-target.md +0 -3
- package/docs/examples/users/delete.md +0 -2
- package/docs/examples/users/get-mfa-recovery-codes.md +0 -2
- package/docs/examples/users/get-prefs.md +0 -2
- package/docs/examples/users/get-target.md +0 -3
- package/docs/examples/users/get-usage.md +0 -1
- package/docs/examples/users/get.md +0 -2
- package/docs/examples/users/list-identities.md +0 -1
- package/docs/examples/users/list-logs.md +0 -2
- package/docs/examples/users/list-memberships.md +0 -2
- package/docs/examples/users/list-mfa-factors.md +0 -2
- package/docs/examples/users/list-sessions.md +0 -2
- package/docs/examples/users/list-targets.md +0 -2
- package/docs/examples/users/list.md +0 -1
- package/docs/examples/users/update-email-verification.md +0 -3
- package/docs/examples/users/update-email.md +0 -3
- package/docs/examples/users/update-labels.md +0 -3
- package/docs/examples/users/update-mfa-recovery-codes.md +0 -2
- package/docs/examples/users/update-mfa.md +0 -3
- package/docs/examples/users/update-name.md +0 -3
- package/docs/examples/users/update-password.md +0 -3
- package/docs/examples/users/update-phone-verification.md +0 -3
- package/docs/examples/users/update-phone.md +0 -3
- package/docs/examples/users/update-prefs.md +0 -3
- package/docs/examples/users/update-status.md +0 -3
- package/docs/examples/users/update-target.md +0 -3
- package/docs/examples/vcs/create-repository-detection.md +0 -4
- package/docs/examples/vcs/create-repository.md +0 -4
- package/docs/examples/vcs/delete-installation.md +0 -2
- package/docs/examples/vcs/get-installation.md +0 -2
- package/docs/examples/vcs/get-repository-contents.md +0 -3
- package/docs/examples/vcs/get-repository.md +0 -3
- package/docs/examples/vcs/list-installations.md +0 -1
- package/docs/examples/vcs/list-repositories.md +0 -3
- package/docs/examples/vcs/list-repository-branches.md +0 -3
- package/docs/examples/vcs/update-external-deployments.md +0 -4
- package/index.js +0 -147
- package/lib/client.js +0 -254
- package/lib/commands/account.js +0 -2121
- package/lib/commands/console.js +0 -127
- package/lib/commands/databases.js +0 -3590
- package/lib/commands/functions.js +0 -1732
- package/lib/commands/generic.js +0 -330
- package/lib/commands/graphql.js +0 -126
- package/lib/commands/health.js +0 -869
- package/lib/commands/locale.js +0 -316
- package/lib/commands/messaging.js +0 -3116
- package/lib/commands/migrations.js +0 -830
- package/lib/commands/organizations.js +0 -48
- package/lib/commands/project.js +0 -302
- package/lib/commands/projects.js +0 -2626
- package/lib/commands/proxy.js +0 -403
- package/lib/commands/push.js +0 -2570
- package/lib/commands/sites.js +0 -1654
- package/lib/commands/storage.js +0 -995
- package/lib/commands/tables-db.js +0 -3569
- package/lib/commands/teams.js +0 -683
- package/lib/commands/tokens.js +0 -261
- package/lib/commands/types.js +0 -191
- package/lib/commands/users.js +0 -2022
- package/lib/commands/vcs.js +0 -484
- package/lib/emulation/docker.js +0 -264
- package/lib/exception.js +0 -9
- package/lib/parser.js +0 -250
- package/lib/sdks.js +0 -60
- package/lib/spinner.js +0 -104
- package/lib/validations.js +0 -17
|
@@ -1,36 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
const {
|
|
16
|
-
questionsCreateFunction,
|
|
17
|
-
questionsCreateFunctionSelectTemplate,
|
|
18
|
-
questionsCreateSite,
|
|
19
|
-
questionsCreateBucket,
|
|
20
|
-
questionsCreateMessagingTopic,
|
|
21
|
-
questionsCreateCollection,
|
|
22
|
-
questionsCreateTable,
|
|
23
|
-
questionsInitProject,
|
|
24
|
-
questionsInitProjectAutopull,
|
|
25
|
-
questionsInitResources,
|
|
26
|
-
questionsCreateTeam
|
|
27
|
-
} = require("../questions");
|
|
28
|
-
const { cliConfig, success, log, hint, error, actionRunner, commandDescriptions } = require("../parser");
|
|
29
|
-
const { accountGet } = require("./account");
|
|
30
|
-
const { sitesListTemplates } = require("./sites");
|
|
31
|
-
const { sdkForConsole } = require("../sdks");
|
|
32
|
-
const { isCloud } = require('../utils');
|
|
33
|
-
|
|
1
|
+
import fs from "fs";
|
|
2
|
+
import path from "path";
|
|
3
|
+
import childProcess from "child_process";
|
|
4
|
+
import { Command } from "commander";
|
|
5
|
+
import inquirer from "inquirer";
|
|
6
|
+
import { getProjectsService, getSitesService } from "../services.js";
|
|
7
|
+
import { pullResources } from "./pull.js";
|
|
8
|
+
import ID from "../id.js";
|
|
9
|
+
import { localConfig, globalConfig } from "../config.js";
|
|
10
|
+
import { questionsCreateFunction, questionsCreateFunctionSelectTemplate, questionsCreateSite, questionsCreateBucket, questionsCreateMessagingTopic, questionsCreateCollection, questionsCreateTable, questionsInitProject, questionsInitProjectAutopull, questionsInitResources, questionsCreateTeam, } from "../questions.js";
|
|
11
|
+
import { cliConfig, success, log, hint, error, actionRunner, commandDescriptions, } from "../parser.js";
|
|
12
|
+
import { sdkForConsole } from "../sdks.js";
|
|
13
|
+
import { isCloud } from "../utils.js";
|
|
14
|
+
import { Account } from "@appwrite.io/console";
|
|
34
15
|
const initResources = async () => {
|
|
35
16
|
const actions = {
|
|
36
17
|
function: initFunction,
|
|
@@ -39,313 +20,276 @@ const initResources = async () => {
|
|
|
39
20
|
bucket: initBucket,
|
|
40
21
|
team: initTeam,
|
|
41
22
|
message: initTopic,
|
|
42
|
-
collection: initCollection
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
const answers = await inquirer.prompt(questionsInitResources[0]);
|
|
46
|
-
|
|
23
|
+
collection: initCollection,
|
|
24
|
+
};
|
|
25
|
+
const answers = await inquirer.prompt([questionsInitResources[0]]);
|
|
47
26
|
const action = actions[answers.resource];
|
|
48
27
|
if (action !== undefined) {
|
|
49
28
|
await action({ returnOnZero: true });
|
|
50
29
|
}
|
|
51
30
|
};
|
|
52
|
-
|
|
53
|
-
const initProject = async ({ organizationId, projectId, projectName } = {}) => {
|
|
31
|
+
const initProject = async ({ organizationId, projectId, projectName, } = {}) => {
|
|
54
32
|
let response = {};
|
|
55
|
-
|
|
56
33
|
try {
|
|
57
|
-
if (globalConfig.getEndpoint() ===
|
|
58
|
-
throw
|
|
34
|
+
if (globalConfig.getEndpoint() === "" || globalConfig.getCookie() === "") {
|
|
35
|
+
throw "";
|
|
59
36
|
}
|
|
60
37
|
const client = await sdkForConsole();
|
|
61
|
-
|
|
62
|
-
await
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
});
|
|
66
|
-
} catch (e) {
|
|
38
|
+
const accountClient = new Account(client);
|
|
39
|
+
await accountClient.get();
|
|
40
|
+
}
|
|
41
|
+
catch (e) {
|
|
67
42
|
error("Error Session not found. Please run 'appwrite login' to create a session");
|
|
68
43
|
process.exit(1);
|
|
69
44
|
}
|
|
70
|
-
|
|
71
45
|
let answers = {};
|
|
72
|
-
|
|
73
46
|
if (!organizationId && !projectId && !projectName) {
|
|
74
|
-
answers = await inquirer.prompt(questionsInitProject)
|
|
47
|
+
answers = await inquirer.prompt(questionsInitProject);
|
|
75
48
|
if (answers.override === false) {
|
|
76
|
-
process.exit(1)
|
|
49
|
+
process.exit(1);
|
|
77
50
|
}
|
|
78
|
-
}
|
|
79
|
-
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
answers.start = "existing";
|
|
80
54
|
answers.project = {};
|
|
81
55
|
answers.organization = {};
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
answers.project =
|
|
86
|
-
|
|
56
|
+
answers.organization =
|
|
57
|
+
organizationId ??
|
|
58
|
+
(await inquirer.prompt([questionsInitProject[2]])).organization;
|
|
59
|
+
answers.project.name =
|
|
60
|
+
projectName ?? (await inquirer.prompt([questionsInitProject[3]])).project;
|
|
61
|
+
answers.project =
|
|
62
|
+
projectId ?? (await inquirer.prompt([questionsInitProject[4]])).id;
|
|
87
63
|
try {
|
|
88
|
-
|
|
89
|
-
|
|
64
|
+
const projectsService = await getProjectsService();
|
|
65
|
+
await projectsService.get(projectId);
|
|
66
|
+
}
|
|
67
|
+
catch (e) {
|
|
90
68
|
if (e.code === 404) {
|
|
91
|
-
answers.start =
|
|
69
|
+
answers.start = "new";
|
|
92
70
|
answers.id = answers.project;
|
|
93
71
|
answers.project = answers.project.name;
|
|
94
|
-
}
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
95
74
|
throw e;
|
|
96
75
|
}
|
|
97
76
|
}
|
|
98
77
|
}
|
|
99
|
-
|
|
100
78
|
localConfig.clear(); // Clear the config to avoid any conflicts
|
|
101
79
|
const url = new URL("https://cloud.appwrite.io/v1");
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
response = await
|
|
105
|
-
|
|
106
|
-
name: answers.project,
|
|
107
|
-
teamId: answers.organization,
|
|
108
|
-
parseOutput: false
|
|
109
|
-
})
|
|
110
|
-
|
|
111
|
-
localConfig.setProject(response['$id']);
|
|
80
|
+
if (answers.start === "new") {
|
|
81
|
+
const projectsService = await getProjectsService();
|
|
82
|
+
response = await projectsService.create(answers.id, answers.project, answers.organization, answers.region);
|
|
83
|
+
localConfig.setProject(response["$id"]);
|
|
112
84
|
if (answers.region) {
|
|
113
85
|
localConfig.setEndpoint(`https://${answers.region}.${url.host}${url.pathname}`);
|
|
114
86
|
}
|
|
115
|
-
}
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
116
89
|
localConfig.setProject(answers.project["$id"]);
|
|
117
|
-
if(isCloud()) {
|
|
90
|
+
if (isCloud()) {
|
|
118
91
|
localConfig.setEndpoint(`https://${answers.project["region"]}.${url.host}${url.pathname}`);
|
|
119
92
|
}
|
|
120
93
|
}
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
if(answers.start === 'existing') {
|
|
94
|
+
success(`Project successfully ${answers.start === "existing" ? "linked" : "created"}. Details are now stored in appwrite.config.json file.`);
|
|
95
|
+
if (answers.start === "existing") {
|
|
125
96
|
answers = await inquirer.prompt(questionsInitProjectAutopull);
|
|
126
|
-
if(answers.autopull) {
|
|
97
|
+
if (answers.autopull) {
|
|
127
98
|
cliConfig.all = true;
|
|
128
99
|
cliConfig.force = true;
|
|
129
100
|
await pullResources({
|
|
130
|
-
skipDeprecated: true
|
|
101
|
+
skipDeprecated: true,
|
|
131
102
|
});
|
|
132
|
-
}
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
133
105
|
log("You can run 'appwrite pull all' to synchronize all of your existing resources.");
|
|
134
106
|
}
|
|
135
107
|
}
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
}
|
|
139
|
-
|
|
108
|
+
hint("Next you can use 'appwrite init' to create resources in your project, or use 'appwrite pull' and 'appwrite push' to synchronize your project.");
|
|
109
|
+
};
|
|
140
110
|
const initBucket = async () => {
|
|
141
|
-
const answers = await inquirer.prompt(questionsCreateBucket)
|
|
142
|
-
|
|
111
|
+
const answers = await inquirer.prompt(questionsCreateBucket);
|
|
143
112
|
localConfig.addBucket({
|
|
144
|
-
$id: answers.id ===
|
|
113
|
+
$id: answers.id === "unique()" ? ID.unique() : answers.id,
|
|
145
114
|
name: answers.bucket,
|
|
146
|
-
fileSecurity: answers.fileSecurity.toLowerCase() ===
|
|
115
|
+
fileSecurity: answers.fileSecurity.toLowerCase() === "yes",
|
|
147
116
|
enabled: true,
|
|
148
117
|
});
|
|
149
118
|
success("Initialing bucket");
|
|
150
119
|
log("Next you can use 'appwrite push bucket' to deploy the changes.");
|
|
151
120
|
};
|
|
152
|
-
|
|
153
121
|
const initTeam = async () => {
|
|
154
|
-
const answers = await inquirer.prompt(questionsCreateTeam)
|
|
155
|
-
|
|
122
|
+
const answers = await inquirer.prompt(questionsCreateTeam);
|
|
156
123
|
localConfig.addTeam({
|
|
157
|
-
$id: answers.id ===
|
|
124
|
+
$id: answers.id === "unique()" ? ID.unique() : answers.id,
|
|
158
125
|
name: answers.bucket,
|
|
159
126
|
});
|
|
160
|
-
|
|
161
127
|
success("Initialing team");
|
|
162
128
|
log("Next you can use 'appwrite push team' to deploy the changes.");
|
|
163
129
|
};
|
|
164
|
-
|
|
165
130
|
const initTable = async () => {
|
|
166
|
-
const answers = await inquirer.prompt(questionsCreateTable)
|
|
167
|
-
const newDatabase = (answers.method ??
|
|
168
|
-
|
|
131
|
+
const answers = await inquirer.prompt(questionsCreateTable);
|
|
132
|
+
const newDatabase = (answers.method ?? "").toLowerCase() !== "existing";
|
|
169
133
|
if (!newDatabase) {
|
|
170
134
|
answers.databaseId = answers.database;
|
|
171
135
|
answers.databaseName = localConfig.getTablesDB(answers.database).name;
|
|
172
136
|
}
|
|
173
|
-
|
|
174
|
-
const databaseId = answers.databaseId === 'unique()' ? ID.unique() : answers.databaseId;
|
|
175
|
-
|
|
137
|
+
const databaseId = answers.databaseId === "unique()" ? ID.unique() : answers.databaseId;
|
|
176
138
|
if (newDatabase || !localConfig.getTablesDB(answers.databaseId)) {
|
|
177
139
|
localConfig.addTablesDB({
|
|
178
140
|
$id: databaseId,
|
|
179
141
|
name: answers.databaseName,
|
|
180
|
-
enabled: true
|
|
142
|
+
enabled: true,
|
|
181
143
|
});
|
|
182
144
|
}
|
|
183
|
-
|
|
184
145
|
localConfig.addTable({
|
|
185
|
-
$id: answers.id ===
|
|
146
|
+
$id: answers.id === "unique()" ? ID.unique() : answers.id,
|
|
186
147
|
$permissions: [],
|
|
187
148
|
databaseId: databaseId,
|
|
188
149
|
name: answers.table,
|
|
189
150
|
enabled: true,
|
|
190
|
-
rowSecurity: answers.rowSecurity.toLowerCase() ===
|
|
151
|
+
rowSecurity: answers.rowSecurity.toLowerCase() === "yes",
|
|
191
152
|
columns: [],
|
|
192
153
|
indexes: [],
|
|
193
154
|
});
|
|
194
|
-
|
|
195
155
|
success("Initialing table");
|
|
196
156
|
log("Next you can use 'appwrite push table' to deploy the changes.");
|
|
197
157
|
};
|
|
198
|
-
|
|
199
158
|
const initCollection = async () => {
|
|
200
|
-
const answers = await inquirer.prompt(questionsCreateCollection)
|
|
201
|
-
const newDatabase = (answers.method ??
|
|
202
|
-
|
|
159
|
+
const answers = await inquirer.prompt(questionsCreateCollection);
|
|
160
|
+
const newDatabase = (answers.method ?? "").toLowerCase() !== "existing";
|
|
203
161
|
if (!newDatabase) {
|
|
204
162
|
answers.databaseId = answers.database;
|
|
205
163
|
answers.databaseName = localConfig.getDatabase(answers.database).name;
|
|
206
164
|
}
|
|
207
|
-
|
|
208
|
-
const databaseId = answers.databaseId === 'unique()' ? ID.unique() : answers.databaseId;
|
|
209
|
-
|
|
165
|
+
const databaseId = answers.databaseId === "unique()" ? ID.unique() : answers.databaseId;
|
|
210
166
|
if (newDatabase || !localConfig.getDatabase(answers.databaseId)) {
|
|
211
167
|
localConfig.addDatabase({
|
|
212
168
|
$id: databaseId,
|
|
213
169
|
name: answers.databaseName,
|
|
214
|
-
enabled: true
|
|
170
|
+
enabled: true,
|
|
215
171
|
});
|
|
216
172
|
}
|
|
217
|
-
|
|
218
173
|
localConfig.addCollection({
|
|
219
|
-
$id: answers.id ===
|
|
174
|
+
$id: answers.id === "unique()" ? ID.unique() : answers.id,
|
|
220
175
|
databaseId: databaseId,
|
|
221
176
|
name: answers.collection,
|
|
222
|
-
documentSecurity: answers.documentSecurity.toLowerCase() ===
|
|
177
|
+
documentSecurity: answers.documentSecurity.toLowerCase() === "yes",
|
|
223
178
|
attributes: [],
|
|
224
179
|
indexes: [],
|
|
225
180
|
enabled: true,
|
|
226
181
|
});
|
|
227
|
-
|
|
228
182
|
success("Initialing collection");
|
|
229
183
|
log("Next you can use 'appwrite push collection' to deploy the changes.");
|
|
230
184
|
};
|
|
231
|
-
|
|
232
185
|
const initTopic = async () => {
|
|
233
|
-
const answers = await inquirer.prompt(questionsCreateMessagingTopic)
|
|
234
|
-
|
|
186
|
+
const answers = await inquirer.prompt(questionsCreateMessagingTopic);
|
|
235
187
|
localConfig.addMessagingTopic({
|
|
236
|
-
$id: answers.id ===
|
|
188
|
+
$id: answers.id === "unique()" ? ID.unique() : answers.id,
|
|
237
189
|
name: answers.topic,
|
|
238
|
-
|
|
239
190
|
});
|
|
240
|
-
|
|
241
191
|
success("Initialing topic");
|
|
242
192
|
log("Next you can use 'appwrite push topic' to deploy the changes.");
|
|
243
193
|
};
|
|
244
|
-
|
|
245
194
|
const initFunction = async () => {
|
|
246
|
-
process.chdir(localConfig.configDirectoryPath)
|
|
247
|
-
|
|
195
|
+
process.chdir(localConfig.configDirectoryPath);
|
|
248
196
|
// TODO: Add CI/CD support (ID, name, runtime)
|
|
249
|
-
const answers = await inquirer.prompt(questionsCreateFunction)
|
|
250
|
-
const functionFolder = path.join(process.cwd(),
|
|
251
|
-
|
|
197
|
+
const answers = await inquirer.prompt(questionsCreateFunction);
|
|
198
|
+
const functionFolder = path.join(process.cwd(), "functions");
|
|
252
199
|
if (!fs.existsSync(functionFolder)) {
|
|
253
200
|
fs.mkdirSync(functionFolder, {
|
|
254
|
-
recursive: true
|
|
201
|
+
recursive: true,
|
|
255
202
|
});
|
|
256
203
|
}
|
|
257
|
-
|
|
258
|
-
const functionId = answers.id === 'unique()' ? ID.unique() : answers.id;
|
|
204
|
+
const functionId = answers.id === "unique()" ? ID.unique() : answers.id;
|
|
259
205
|
const functionName = answers.name;
|
|
260
206
|
const functionDir = path.join(functionFolder, functionName);
|
|
261
207
|
const templatesDir = path.join(functionFolder, `${functionId}-templates`);
|
|
262
208
|
const runtimeDir = path.join(templatesDir, answers.runtime.name);
|
|
263
|
-
|
|
264
209
|
if (fs.existsSync(functionDir)) {
|
|
265
210
|
throw new Error(`( ${functionName} ) already exists in the current directory. Please choose another name.`);
|
|
266
211
|
}
|
|
267
|
-
|
|
268
212
|
if (!answers.runtime.entrypoint) {
|
|
269
213
|
log(`Entrypoint for this runtime not found. You will be asked to configure entrypoint when you first push the function.`);
|
|
270
214
|
}
|
|
271
|
-
|
|
272
215
|
if (!answers.runtime.commands) {
|
|
273
216
|
log(`Installation command for this runtime not found. You will be asked to configure the install command when you first push the function.`);
|
|
274
217
|
}
|
|
275
|
-
|
|
276
|
-
fs.mkdirSync(
|
|
277
|
-
fs.mkdirSync(templatesDir, "777");
|
|
218
|
+
fs.mkdirSync(functionDir, { mode: 0o777 });
|
|
219
|
+
fs.mkdirSync(templatesDir, { mode: 0o777 });
|
|
278
220
|
const repo = "https://github.com/appwrite/templates";
|
|
279
|
-
const api = `https://api.github.com/repos/appwrite/templates/contents/${answers.runtime.name}
|
|
280
|
-
let selected = { template:
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
221
|
+
const api = `https://api.github.com/repos/appwrite/templates/contents/${answers.runtime.name}`;
|
|
222
|
+
let selected = { template: "starter" };
|
|
223
|
+
const sparse = (selected
|
|
224
|
+
? `${answers.runtime.name}/${selected.template}`
|
|
225
|
+
: answers.runtime.name).toLowerCase();
|
|
284
226
|
let gitInitCommands = `git clone --single-branch --depth 1 --sparse ${repo} .`; // depth prevents fetching older commits reducing the amount fetched
|
|
285
|
-
|
|
286
227
|
let gitPullCommands = `git sparse-checkout add ${sparse}`;
|
|
287
|
-
|
|
288
228
|
/* Force use CMD as powershell does not support && */
|
|
289
|
-
if (process.platform ===
|
|
229
|
+
if (process.platform === "win32") {
|
|
290
230
|
gitInitCommands = 'cmd /c "' + gitInitCommands + '"';
|
|
291
231
|
gitPullCommands = 'cmd /c "' + gitPullCommands + '"';
|
|
292
232
|
}
|
|
293
|
-
|
|
294
233
|
/* Execute the child process but do not print any std output */
|
|
295
234
|
try {
|
|
296
|
-
childProcess.execSync(gitInitCommands, {
|
|
297
|
-
|
|
298
|
-
|
|
235
|
+
childProcess.execSync(gitInitCommands, {
|
|
236
|
+
stdio: "pipe",
|
|
237
|
+
cwd: templatesDir,
|
|
238
|
+
});
|
|
239
|
+
childProcess.execSync(gitPullCommands, {
|
|
240
|
+
stdio: "pipe",
|
|
241
|
+
cwd: templatesDir,
|
|
242
|
+
});
|
|
243
|
+
}
|
|
244
|
+
catch (err) {
|
|
299
245
|
/* Specialised errors with recommended actions to take */
|
|
300
|
-
if (
|
|
301
|
-
throw new Error(`${
|
|
302
|
-
}
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
throw
|
|
246
|
+
if (err.message.includes("error: unknown option")) {
|
|
247
|
+
throw new Error(`${err.message} \n\nSuggestion: Try updating your git to the latest version, then trying to run this command again.`);
|
|
248
|
+
}
|
|
249
|
+
else if (err.message.includes("is not recognized as an internal or external command,") ||
|
|
250
|
+
err.message.includes("command not found")) {
|
|
251
|
+
throw new Error(`${err.message} \n\nSuggestion: It appears that git is not installed, try installing git then trying to run this command again.`);
|
|
252
|
+
}
|
|
253
|
+
else {
|
|
254
|
+
throw err;
|
|
306
255
|
}
|
|
307
256
|
}
|
|
308
|
-
|
|
309
257
|
fs.rmSync(path.join(templatesDir, ".git"), { recursive: true });
|
|
310
258
|
if (!selected) {
|
|
311
259
|
const templates = [];
|
|
312
|
-
templates.push(...fs
|
|
313
|
-
.
|
|
314
|
-
.
|
|
315
|
-
|
|
316
|
-
|
|
260
|
+
templates.push(...fs
|
|
261
|
+
.readdirSync(runtimeDir, { withFileTypes: true })
|
|
262
|
+
.filter((item) => item.isDirectory() && item.name !== "starter")
|
|
263
|
+
.map((dirent) => dirent.name));
|
|
264
|
+
selected = { template: "starter" };
|
|
317
265
|
if (templates.length > 1) {
|
|
318
|
-
selected = await inquirer.prompt(questionsCreateFunctionSelectTemplate(templates))
|
|
266
|
+
selected = await inquirer.prompt(questionsCreateFunctionSelectTemplate(templates));
|
|
319
267
|
}
|
|
320
268
|
}
|
|
321
|
-
|
|
322
269
|
const copyRecursiveSync = (src, dest) => {
|
|
323
270
|
let exists = fs.existsSync(src);
|
|
324
271
|
let stats = exists && fs.statSync(src);
|
|
325
|
-
let isDirectory = exists && stats.isDirectory();
|
|
272
|
+
let isDirectory = exists && stats && stats.isDirectory();
|
|
326
273
|
if (isDirectory) {
|
|
327
274
|
if (!fs.existsSync(dest)) {
|
|
328
275
|
fs.mkdirSync(dest);
|
|
329
276
|
}
|
|
330
|
-
|
|
331
277
|
fs.readdirSync(src).forEach(function (childItemName) {
|
|
332
278
|
copyRecursiveSync(path.join(src, childItemName), path.join(dest, childItemName));
|
|
333
279
|
});
|
|
334
|
-
}
|
|
280
|
+
}
|
|
281
|
+
else {
|
|
335
282
|
fs.copyFileSync(src, dest);
|
|
336
283
|
}
|
|
337
284
|
};
|
|
338
285
|
copyRecursiveSync(path.join(runtimeDir, selected.template), functionDir);
|
|
339
|
-
|
|
340
286
|
fs.rmSync(templatesDir, { recursive: true, force: true });
|
|
341
|
-
|
|
342
|
-
const readmePath = path.join(process.cwd(), 'functions', functionName, 'README.md');
|
|
287
|
+
const readmePath = path.join(process.cwd(), "functions", functionName, "README.md");
|
|
343
288
|
const readmeFile = fs.readFileSync(readmePath).toString();
|
|
344
|
-
const newReadmeFile = readmeFile.split(
|
|
289
|
+
const newReadmeFile = readmeFile.split("\n");
|
|
345
290
|
newReadmeFile[0] = `# ${answers.name}`;
|
|
346
291
|
newReadmeFile.splice(1, 2);
|
|
347
|
-
fs.writeFileSync(readmePath, newReadmeFile.join(
|
|
348
|
-
|
|
292
|
+
fs.writeFileSync(readmePath, newReadmeFile.join("\n"));
|
|
349
293
|
let data = {
|
|
350
294
|
$id: functionId,
|
|
351
295
|
name: answers.name,
|
|
@@ -358,66 +302,55 @@ const initFunction = async () => {
|
|
|
358
302
|
timeout: 15,
|
|
359
303
|
enabled: true,
|
|
360
304
|
logging: true,
|
|
361
|
-
entrypoint: answers.runtime.entrypoint ||
|
|
362
|
-
commands: answers.runtime.commands ||
|
|
305
|
+
entrypoint: answers.runtime.entrypoint || "",
|
|
306
|
+
commands: answers.runtime.commands || "",
|
|
363
307
|
ignore: answers.runtime.ignore || null,
|
|
364
308
|
path: `functions/${functionName}`,
|
|
365
309
|
};
|
|
366
|
-
|
|
367
310
|
localConfig.addFunction(data);
|
|
368
311
|
success("Initialing function");
|
|
369
312
|
log("Next you can use 'appwrite run function' to develop a function locally. To deploy the function, use 'appwrite push function'");
|
|
370
|
-
}
|
|
371
|
-
|
|
313
|
+
};
|
|
372
314
|
const initSite = async () => {
|
|
373
|
-
process.chdir(localConfig.configDirectoryPath)
|
|
374
|
-
|
|
315
|
+
process.chdir(localConfig.configDirectoryPath);
|
|
375
316
|
const answers = await inquirer.prompt(questionsCreateSite);
|
|
376
|
-
const siteFolder = path.join(process.cwd(),
|
|
377
|
-
|
|
317
|
+
const siteFolder = path.join(process.cwd(), "sites");
|
|
378
318
|
if (!fs.existsSync(siteFolder)) {
|
|
379
319
|
fs.mkdirSync(siteFolder, {
|
|
380
|
-
recursive: true
|
|
320
|
+
recursive: true,
|
|
381
321
|
});
|
|
382
322
|
}
|
|
383
|
-
|
|
384
|
-
const siteId = answers.id === 'unique()' ? ID.unique() : answers.id;
|
|
323
|
+
const siteId = answers.id === "unique()" ? ID.unique() : answers.id;
|
|
385
324
|
const siteName = answers.name;
|
|
386
325
|
const siteDir = path.join(siteFolder, siteName);
|
|
387
326
|
const templatesDir = path.join(siteFolder, `${siteId}-templates`);
|
|
388
|
-
|
|
389
327
|
if (fs.existsSync(siteDir)) {
|
|
390
328
|
throw new Error(`( ${siteName} ) already exists in the current directory. Please choose another name.`);
|
|
391
329
|
}
|
|
392
|
-
|
|
393
330
|
let templateDetails;
|
|
394
331
|
try {
|
|
395
|
-
const
|
|
396
|
-
|
|
397
|
-
useCases: ['starter'],
|
|
398
|
-
limit: 1,
|
|
399
|
-
parseOutput: false
|
|
400
|
-
});
|
|
332
|
+
const sitesService = await getSitesService();
|
|
333
|
+
const response = await sitesService.listTemplates([answers.framework.key], ["starter"], 1);
|
|
401
334
|
if (response.total == 0) {
|
|
402
335
|
throw new Error(`No starter template found for framework ${answers.framework.key}`);
|
|
403
336
|
}
|
|
404
337
|
templateDetails = response.templates[0];
|
|
405
|
-
} catch (error) {
|
|
406
|
-
throw new Error(`Failed to fetch template for framework ${answers.framework.key}: ${error.message}`);
|
|
407
338
|
}
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
339
|
+
catch (err) {
|
|
340
|
+
throw new Error(`Failed to fetch template for framework ${answers.framework.key}: ${err.message}`);
|
|
341
|
+
}
|
|
342
|
+
fs.mkdirSync(siteDir, { mode: 0o777 });
|
|
343
|
+
fs.mkdirSync(templatesDir, { mode: 0o777 });
|
|
411
344
|
const repo = `https://github.com/${templateDetails.providerOwner}/${templateDetails.providerRepositoryId}`;
|
|
412
|
-
let selected = {
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
const sparse = selected.template.startsWith(
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
if(selected.template ===
|
|
345
|
+
let selected = {
|
|
346
|
+
template: templateDetails.frameworks[0].providerRootDirectory,
|
|
347
|
+
};
|
|
348
|
+
let gitCloneCommands = "";
|
|
349
|
+
const sparse = selected.template.startsWith("./")
|
|
350
|
+
? selected.template.substring(2)
|
|
351
|
+
: selected.template;
|
|
352
|
+
log("Fetching site code ...");
|
|
353
|
+
if (selected.template === "./") {
|
|
421
354
|
gitCloneCommands = `
|
|
422
355
|
mkdir -p .
|
|
423
356
|
cd .
|
|
@@ -427,7 +360,8 @@ const initSite = async () => {
|
|
|
427
360
|
git fetch --depth=1 origin refs/tags/$(git ls-remote --tags origin "${templateDetails.providerVersion}" | tail -n 1 | awk -F '/' '{print $3}')
|
|
428
361
|
git checkout FETCH_HEAD
|
|
429
362
|
`.trim();
|
|
430
|
-
}
|
|
363
|
+
}
|
|
364
|
+
else {
|
|
431
365
|
gitCloneCommands = `
|
|
432
366
|
mkdir -p .
|
|
433
367
|
cd .
|
|
@@ -442,119 +376,111 @@ const initSite = async () => {
|
|
|
442
376
|
git checkout FETCH_HEAD
|
|
443
377
|
`.trim();
|
|
444
378
|
}
|
|
445
|
-
|
|
446
379
|
/* Force use CMD as powershell does not support && */
|
|
447
|
-
if (process.platform ===
|
|
380
|
+
if (process.platform === "win32") {
|
|
448
381
|
gitCloneCommands = 'cmd /c "' + gitCloneCommands + '"';
|
|
449
382
|
}
|
|
450
|
-
|
|
451
383
|
/* Execute the child process but do not print any std output */
|
|
452
384
|
try {
|
|
453
|
-
childProcess.execSync(gitCloneCommands, {
|
|
454
|
-
|
|
385
|
+
childProcess.execSync(gitCloneCommands, {
|
|
386
|
+
stdio: "pipe",
|
|
387
|
+
cwd: templatesDir,
|
|
388
|
+
});
|
|
389
|
+
}
|
|
390
|
+
catch (err) {
|
|
455
391
|
/* Specialised errors with recommended actions to take */
|
|
456
|
-
if (
|
|
457
|
-
throw new Error(`${
|
|
458
|
-
}
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
throw
|
|
392
|
+
if (err.message.includes("error: unknown option")) {
|
|
393
|
+
throw new Error(`${err.message} \n\nSuggestion: Try updating your git to the latest version, then trying to run this command again.`);
|
|
394
|
+
}
|
|
395
|
+
else if (err.message.includes("is not recognized as an internal or external command,") ||
|
|
396
|
+
err.message.includes("command not found")) {
|
|
397
|
+
throw new Error(`${err.message} \n\nSuggestion: It appears that git is not installed, try installing git then trying to run this command again.`);
|
|
398
|
+
}
|
|
399
|
+
else {
|
|
400
|
+
throw err;
|
|
462
401
|
}
|
|
463
402
|
}
|
|
464
|
-
|
|
465
403
|
fs.rmSync(path.join(templatesDir, ".git"), { recursive: true });
|
|
466
|
-
|
|
467
404
|
const copyRecursiveSync = (src, dest) => {
|
|
468
405
|
let exists = fs.existsSync(src);
|
|
469
406
|
let stats = exists && fs.statSync(src);
|
|
470
|
-
let isDirectory = exists && stats.isDirectory();
|
|
407
|
+
let isDirectory = exists && stats && stats.isDirectory();
|
|
471
408
|
if (isDirectory) {
|
|
472
409
|
if (!fs.existsSync(dest)) {
|
|
473
410
|
fs.mkdirSync(dest);
|
|
474
411
|
}
|
|
475
|
-
|
|
476
412
|
fs.readdirSync(src).forEach(function (childItemName) {
|
|
477
413
|
copyRecursiveSync(path.join(src, childItemName), path.join(dest, childItemName));
|
|
478
414
|
});
|
|
479
|
-
}
|
|
415
|
+
}
|
|
416
|
+
else {
|
|
480
417
|
fs.copyFileSync(src, dest);
|
|
481
418
|
}
|
|
482
419
|
};
|
|
483
|
-
copyRecursiveSync(selected.template ===
|
|
484
|
-
|
|
420
|
+
copyRecursiveSync(selected.template === "./"
|
|
421
|
+
? templatesDir
|
|
422
|
+
: path.join(templatesDir, selected.template), siteDir);
|
|
485
423
|
fs.rmSync(templatesDir, { recursive: true, force: true });
|
|
486
|
-
|
|
487
|
-
const readmePath = path.join(process.cwd(), 'sites', siteName, 'README.md');
|
|
424
|
+
const readmePath = path.join(process.cwd(), "sites", siteName, "README.md");
|
|
488
425
|
const readmeFile = fs.readFileSync(readmePath).toString();
|
|
489
|
-
const newReadmeFile = readmeFile.split(
|
|
426
|
+
const newReadmeFile = readmeFile.split("\n");
|
|
490
427
|
newReadmeFile[0] = `# ${answers.key}`;
|
|
491
428
|
newReadmeFile.splice(1, 2);
|
|
492
|
-
fs.writeFileSync(readmePath, newReadmeFile.join(
|
|
493
|
-
|
|
494
|
-
let vars = (templateDetails.variables ?? []).map(variable => {
|
|
429
|
+
fs.writeFileSync(readmePath, newReadmeFile.join("\n"));
|
|
430
|
+
let vars = (templateDetails.variables ?? []).map((variable) => {
|
|
495
431
|
let value = variable.value;
|
|
496
432
|
const replacements = {
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
433
|
+
"{apiEndpoint}": globalConfig.getEndpoint(),
|
|
434
|
+
"{projectId}": localConfig.getProject().projectId,
|
|
435
|
+
"{projectName}": localConfig.getProject().projectName,
|
|
500
436
|
};
|
|
501
|
-
|
|
502
437
|
for (const placeholder in replacements) {
|
|
503
438
|
if (value?.includes(placeholder)) {
|
|
504
439
|
value = value.replace(placeholder, replacements[placeholder]);
|
|
505
440
|
}
|
|
506
441
|
}
|
|
507
|
-
|
|
508
442
|
return {
|
|
509
443
|
key: variable.name,
|
|
510
|
-
value: value
|
|
444
|
+
value: value,
|
|
511
445
|
};
|
|
512
446
|
});
|
|
513
|
-
|
|
514
447
|
let data = {
|
|
515
448
|
$id: siteId,
|
|
516
449
|
name: answers.name,
|
|
517
450
|
framework: answers.framework.key,
|
|
518
|
-
adapter: templateDetails.frameworks[0].adapter ||
|
|
519
|
-
buildRuntime: templateDetails.frameworks[0].buildRuntime ||
|
|
520
|
-
installCommand: templateDetails.frameworks[0].installCommand ||
|
|
521
|
-
buildCommand: templateDetails.frameworks[0].buildCommand ||
|
|
522
|
-
outputDirectory: templateDetails.frameworks[0].outputDirectory ||
|
|
523
|
-
fallbackFile: templateDetails.frameworks[0].fallbackFile ||
|
|
451
|
+
adapter: templateDetails.frameworks[0].adapter || "",
|
|
452
|
+
buildRuntime: templateDetails.frameworks[0].buildRuntime || "",
|
|
453
|
+
installCommand: templateDetails.frameworks[0].installCommand || "",
|
|
454
|
+
buildCommand: templateDetails.frameworks[0].buildCommand || "",
|
|
455
|
+
outputDirectory: templateDetails.frameworks[0].outputDirectory || "",
|
|
456
|
+
fallbackFile: templateDetails.frameworks[0].fallbackFile || "",
|
|
524
457
|
specification: answers.specification,
|
|
525
458
|
enabled: true,
|
|
526
459
|
timeout: 30,
|
|
527
460
|
logging: true,
|
|
528
461
|
ignore: answers.framework.ignore || null,
|
|
529
462
|
path: `sites/${siteName}`,
|
|
530
|
-
vars: vars
|
|
463
|
+
vars: vars,
|
|
531
464
|
};
|
|
532
|
-
|
|
533
465
|
if (!data.buildRuntime) {
|
|
534
466
|
log(`Build runtime for this framework not found. You will be asked to configure build runtime when you first push the site.`);
|
|
535
467
|
}
|
|
536
|
-
|
|
537
468
|
if (!data.installCommand) {
|
|
538
469
|
log(`Installation command for this framework not found. You will be asked to configure the install command when you first push the site.`);
|
|
539
470
|
}
|
|
540
|
-
|
|
541
471
|
if (!data.buildCommand) {
|
|
542
472
|
log(`Build command for this framework not found. You will be asked to configure the build command when you first push the site.`);
|
|
543
473
|
}
|
|
544
|
-
|
|
545
474
|
if (!data.outputDirectory) {
|
|
546
475
|
log(`Output directory for this framework not found. You will be asked to configure the output directory when you first push the site.`);
|
|
547
476
|
}
|
|
548
|
-
|
|
549
477
|
localConfig.addSite(data);
|
|
550
478
|
success("Initializing site");
|
|
551
479
|
log("Next you can use 'appwrite push site' to deploy the changes.");
|
|
552
480
|
};
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
.description(commandDescriptions['init'])
|
|
481
|
+
export const init = new Command("init")
|
|
482
|
+
.description(commandDescriptions["init"])
|
|
556
483
|
.action(actionRunner(initResources));
|
|
557
|
-
|
|
558
484
|
init
|
|
559
485
|
.command("project")
|
|
560
486
|
.description("Init a new Appwrite project")
|
|
@@ -562,49 +488,39 @@ init
|
|
|
562
488
|
.option("--project-id <project-id>", "Appwrite project ID")
|
|
563
489
|
.option("--project-name <project-name>", "Appwrite project ID")
|
|
564
490
|
.action(actionRunner(initProject));
|
|
565
|
-
|
|
566
491
|
init
|
|
567
492
|
.command("function")
|
|
568
493
|
.alias("functions")
|
|
569
494
|
.description("Init a new Appwrite function")
|
|
570
495
|
.action(actionRunner(initFunction));
|
|
571
|
-
|
|
572
496
|
init
|
|
573
497
|
.command("site")
|
|
574
498
|
.alias("sites")
|
|
575
499
|
.description("Init a new Appwrite site")
|
|
576
500
|
.action(actionRunner(initSite));
|
|
577
|
-
|
|
578
501
|
init
|
|
579
502
|
.command("bucket")
|
|
580
503
|
.alias("buckets")
|
|
581
504
|
.description("Init a new Appwrite bucket")
|
|
582
505
|
.action(actionRunner(initBucket));
|
|
583
|
-
|
|
584
506
|
init
|
|
585
507
|
.command("team")
|
|
586
508
|
.alias("teams")
|
|
587
509
|
.description("Init a new Appwrite team")
|
|
588
510
|
.action(actionRunner(initTeam));
|
|
589
|
-
|
|
590
511
|
init
|
|
591
512
|
.command("collection")
|
|
592
513
|
.alias("collections")
|
|
593
514
|
.description("Init a new Appwrite collection")
|
|
594
515
|
.action(actionRunner(initCollection));
|
|
595
|
-
|
|
596
516
|
init
|
|
597
517
|
.command("table")
|
|
598
518
|
.alias("tables")
|
|
599
519
|
.description("Init a new Appwrite table")
|
|
600
520
|
.action(actionRunner(initTable));
|
|
601
|
-
|
|
602
521
|
init
|
|
603
522
|
.command("topic")
|
|
604
523
|
.alias("topics")
|
|
605
524
|
.description("Init a new Appwrite topic")
|
|
606
525
|
.action(actionRunner(initTopic));
|
|
607
|
-
|
|
608
|
-
module.exports = {
|
|
609
|
-
init,
|
|
610
|
-
};
|
|
526
|
+
//# sourceMappingURL=init.js.map
|