chirag-appwrite-cli 0.2.1 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/{npm-publish.yml → publish.yml} +1 -1
- package/CHANGELOG.md +1 -190
- package/Formula/appwrite.rb +3 -3
- package/LICENSE.md +1 -12
- package/README.md +18 -185
- package/cli.ts +140 -146
- package/dist/bundle.cjs +74100 -86261
- package/dist/cli.js +63 -59
- package/dist/cli.js.map +1 -1
- package/dist/lib/client.d.ts.map +1 -1
- package/dist/lib/client.js +8 -7
- package/dist/lib/client.js.map +1 -1
- package/dist/lib/commands/config.d.ts +23 -12
- package/dist/lib/commands/config.d.ts.map +1 -1
- package/dist/lib/commands/config.js +17 -6
- package/dist/lib/commands/config.js.map +1 -1
- package/dist/lib/commands/generate.d.ts +6 -0
- package/dist/lib/commands/generate.d.ts.map +1 -0
- package/dist/lib/commands/generate.js +53 -0
- package/dist/lib/commands/generate.js.map +1 -0
- package/dist/lib/commands/generators/databases.d.ts +25 -0
- package/dist/lib/commands/generators/databases.d.ts.map +1 -0
- package/dist/lib/commands/generators/databases.js +405 -0
- package/dist/lib/commands/generators/databases.js.map +1 -0
- package/dist/lib/commands/init.d.ts.map +1 -1
- package/dist/lib/commands/init.js +15 -14
- package/dist/lib/commands/init.js.map +1 -1
- package/dist/lib/commands/pull.d.ts.map +1 -1
- package/dist/lib/commands/pull.js +181 -155
- package/dist/lib/commands/pull.js.map +1 -1
- package/dist/lib/commands/push.d.ts +32 -4
- package/dist/lib/commands/push.d.ts.map +1 -1
- package/dist/lib/commands/push.js +272 -106
- package/dist/lib/commands/push.js.map +1 -1
- package/dist/lib/commands/run.js +1 -1
- package/dist/lib/commands/run.js.map +1 -1
- package/dist/lib/commands/schema.d.ts +8 -6
- package/dist/lib/commands/schema.d.ts.map +1 -1
- package/dist/lib/commands/schema.js +20 -9
- package/dist/lib/commands/schema.js.map +1 -1
- package/dist/lib/commands/services/account.d.ts.map +1 -1
- package/dist/lib/commands/services/account.js +86 -64
- package/dist/lib/commands/services/account.js.map +1 -1
- package/dist/lib/commands/services/console.d.ts.map +1 -1
- package/dist/lib/commands/services/console.js +4 -17
- package/dist/lib/commands/services/console.js.map +1 -1
- package/dist/lib/commands/services/databases.d.ts.map +1 -1
- package/dist/lib/commands/services/databases.js +160 -152
- package/dist/lib/commands/services/databases.js.map +1 -1
- package/dist/lib/commands/services/functions.d.ts.map +1 -1
- package/dist/lib/commands/services/functions.js +41 -33
- package/dist/lib/commands/services/functions.js.map +1 -1
- package/dist/lib/commands/services/graphql.d.ts.map +1 -1
- package/dist/lib/commands/services/graphql.js +3 -3
- package/dist/lib/commands/services/graphql.js.map +1 -1
- package/dist/lib/commands/services/health.d.ts.map +1 -1
- package/dist/lib/commands/services/health.js +24 -24
- package/dist/lib/commands/services/health.js.map +1 -1
- package/dist/lib/commands/services/locale.d.ts.map +1 -1
- package/dist/lib/commands/services/locale.js +9 -9
- package/dist/lib/commands/services/locale.js.map +1 -1
- package/dist/lib/commands/services/messaging.d.ts.map +1 -1
- package/dist/lib/commands/services/messaging.js +59 -59
- package/dist/lib/commands/services/messaging.js.map +1 -1
- package/dist/lib/commands/services/migrations.d.ts.map +1 -1
- package/dist/lib/commands/services/migrations.js +19 -19
- package/dist/lib/commands/services/migrations.js.map +1 -1
- package/dist/lib/commands/services/project.d.ts.map +1 -1
- package/dist/lib/commands/services/project.js +8 -8
- package/dist/lib/commands/services/project.js.map +1 -1
- package/dist/lib/commands/services/projects.d.ts.map +1 -1
- package/dist/lib/commands/services/projects.js +71 -65
- package/dist/lib/commands/services/projects.js.map +1 -1
- package/dist/lib/commands/services/proxy.d.ts.map +1 -1
- package/dist/lib/commands/services/proxy.js +11 -11
- package/dist/lib/commands/services/proxy.js.map +1 -1
- package/dist/lib/commands/services/sites.d.ts.map +1 -1
- package/dist/lib/commands/services/sites.js +41 -33
- package/dist/lib/commands/services/sites.js.map +1 -1
- package/dist/lib/commands/services/storage.d.ts.map +1 -1
- package/dist/lib/commands/services/storage.js +40 -18
- package/dist/lib/commands/services/storage.js.map +1 -1
- package/dist/lib/commands/services/tables-db.d.ts +3 -0
- package/dist/lib/commands/services/tables-db.d.ts.map +1 -0
- package/dist/lib/commands/services/{tablesdb.js → tables-db.js} +171 -163
- package/dist/lib/commands/services/tables-db.js.map +1 -0
- package/dist/lib/commands/services/teams.d.ts.map +1 -1
- package/dist/lib/commands/services/teams.js +16 -16
- package/dist/lib/commands/services/teams.js.map +1 -1
- package/dist/lib/commands/services/tokens.d.ts.map +1 -1
- package/dist/lib/commands/services/tokens.js +6 -6
- package/dist/lib/commands/services/tokens.js.map +1 -1
- package/dist/lib/commands/services/users.d.ts.map +1 -1
- package/dist/lib/commands/services/users.js +54 -54
- package/dist/lib/commands/services/users.js.map +1 -1
- package/dist/lib/commands/services/vcs.d.ts.map +1 -1
- package/dist/lib/commands/services/vcs.js +13 -13
- package/dist/lib/commands/services/vcs.js.map +1 -1
- package/dist/lib/commands/types.d.ts.map +1 -1
- package/dist/lib/commands/types.js +1 -1
- package/dist/lib/commands/types.js.map +1 -1
- package/dist/lib/commands/update.d.ts.map +1 -1
- package/dist/lib/commands/update.js +8 -7
- package/dist/lib/commands/update.js.map +1 -1
- package/dist/lib/commands/utils/attributes.d.ts +2 -1
- package/dist/lib/commands/utils/attributes.d.ts.map +1 -1
- package/dist/lib/commands/utils/attributes.js +32 -34
- package/dist/lib/commands/utils/attributes.js.map +1 -1
- package/dist/lib/commands/utils/deployment.d.ts.map +1 -1
- package/dist/lib/commands/utils/deployment.js +3 -2
- package/dist/lib/commands/utils/deployment.js.map +1 -1
- package/dist/lib/commands/utils/pools.d.ts.map +1 -1
- package/dist/lib/commands/utils/pools.js +7 -6
- package/dist/lib/commands/utils/pools.js.map +1 -1
- package/dist/lib/config.d.ts +1 -0
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +45 -4
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/constants.d.ts +14 -0
- package/dist/lib/constants.d.ts.map +1 -0
- package/dist/lib/constants.js +19 -0
- package/dist/lib/constants.js.map +1 -0
- package/dist/lib/emulation/docker.d.ts.map +1 -1
- package/dist/lib/emulation/docker.js +80 -67
- package/dist/lib/emulation/docker.js.map +1 -1
- package/dist/lib/parser.d.ts.map +1 -1
- package/dist/lib/parser.js +11 -10
- package/dist/lib/parser.js.map +1 -1
- package/dist/lib/questions.d.ts +2 -0
- package/dist/lib/questions.d.ts.map +1 -1
- package/dist/lib/questions.js +34 -20
- package/dist/lib/questions.js.map +1 -1
- package/dist/lib/sdks.d.ts.map +1 -1
- package/dist/lib/sdks.js +10 -11
- package/dist/lib/sdks.js.map +1 -1
- package/dist/lib/utils.d.ts +3 -0
- package/dist/lib/utils.d.ts.map +1 -1
- package/dist/lib/utils.js +29 -2
- package/dist/lib/utils.js.map +1 -1
- package/dist/package.json +4 -4
- package/docs/examples/account/create-anonymous-session.md +1 -0
- package/docs/examples/account/create-email-password-session.md +3 -0
- package/docs/examples/account/create-email-token.md +3 -0
- package/docs/examples/account/create-email-verification.md +2 -0
- package/docs/examples/account/create-jwt.md +1 -0
- package/docs/examples/account/create-magic-url-token.md +3 -0
- package/docs/examples/account/create-mfa-authenticator.md +2 -0
- package/docs/examples/account/create-mfa-challenge.md +2 -0
- package/docs/examples/account/create-mfa-recovery-codes.md +1 -0
- package/docs/examples/account/create-o-auth-2-session.md +2 -0
- package/docs/examples/account/create-o-auth-2-token.md +2 -0
- package/docs/examples/account/create-phone-token.md +3 -0
- package/docs/examples/account/create-phone-verification.md +1 -0
- package/docs/examples/account/create-push-target.md +3 -0
- package/docs/examples/account/create-recovery.md +3 -0
- package/docs/examples/account/create-session.md +3 -0
- package/docs/examples/account/create-verification.md +2 -0
- package/docs/examples/account/create.md +4 -0
- package/docs/examples/account/delete-identity.md +2 -0
- package/docs/examples/account/delete-mfa-authenticator.md +2 -0
- package/docs/examples/account/delete-push-target.md +2 -0
- package/docs/examples/account/delete-session.md +2 -0
- package/docs/examples/account/delete-sessions.md +1 -0
- package/docs/examples/account/delete.md +1 -0
- package/docs/examples/account/get-mfa-recovery-codes.md +1 -0
- package/docs/examples/account/get-prefs.md +1 -0
- package/docs/examples/account/get-session.md +2 -0
- package/docs/examples/account/get.md +1 -0
- package/docs/examples/account/list-identities.md +1 -0
- package/docs/examples/account/list-logs.md +1 -0
- package/docs/examples/account/list-mfa-factors.md +1 -0
- package/docs/examples/account/list-sessions.md +1 -0
- package/docs/examples/account/update-email-verification.md +3 -0
- package/docs/examples/account/update-email.md +3 -0
- package/docs/examples/account/update-magic-url-session.md +3 -0
- package/docs/examples/account/update-mfa-authenticator.md +3 -0
- package/docs/examples/account/update-mfa-challenge.md +3 -0
- package/docs/examples/account/update-mfa-recovery-codes.md +1 -0
- package/docs/examples/account/update-mfa.md +2 -0
- package/docs/examples/account/update-name.md +2 -0
- package/docs/examples/account/update-password.md +2 -0
- package/docs/examples/account/update-phone-session.md +3 -0
- package/docs/examples/account/update-phone-verification.md +3 -0
- package/docs/examples/account/update-phone.md +3 -0
- package/docs/examples/account/update-prefs.md +2 -0
- package/docs/examples/account/update-push-target.md +3 -0
- package/docs/examples/account/update-recovery.md +4 -0
- package/docs/examples/account/update-session.md +2 -0
- package/docs/examples/account/update-status.md +1 -0
- package/docs/examples/account/update-verification.md +3 -0
- package/docs/examples/console/get-resource.md +3 -0
- package/docs/examples/console/variables.md +1 -0
- package/docs/examples/databases/create-boolean-attribute.md +5 -0
- package/docs/examples/databases/create-collection.md +4 -0
- package/docs/examples/databases/create-datetime-attribute.md +5 -0
- package/docs/examples/databases/create-document.md +5 -0
- package/docs/examples/databases/create-documents.md +4 -0
- package/docs/examples/databases/create-email-attribute.md +5 -0
- package/docs/examples/databases/create-enum-attribute.md +6 -0
- package/docs/examples/databases/create-float-attribute.md +5 -0
- package/docs/examples/databases/create-index.md +6 -0
- package/docs/examples/databases/create-integer-attribute.md +5 -0
- package/docs/examples/databases/create-ip-attribute.md +5 -0
- package/docs/examples/databases/create-line-attribute.md +5 -0
- package/docs/examples/databases/create-operations.md +2 -0
- package/docs/examples/databases/create-point-attribute.md +5 -0
- package/docs/examples/databases/create-polygon-attribute.md +5 -0
- package/docs/examples/databases/create-relationship-attribute.md +5 -0
- package/docs/examples/databases/create-string-attribute.md +6 -0
- package/docs/examples/databases/create-transaction.md +1 -0
- package/docs/examples/databases/create-url-attribute.md +5 -0
- package/docs/examples/databases/create.md +3 -0
- package/docs/examples/databases/decrement-document-attribute.md +5 -0
- package/docs/examples/databases/delete-attribute.md +4 -0
- package/docs/examples/databases/delete-collection.md +3 -0
- package/docs/examples/databases/delete-document.md +4 -0
- package/docs/examples/databases/delete-documents.md +3 -0
- package/docs/examples/databases/delete-index.md +4 -0
- package/docs/examples/databases/delete-transaction.md +2 -0
- package/docs/examples/databases/delete.md +2 -0
- package/docs/examples/databases/get-attribute.md +4 -0
- package/docs/examples/databases/get-collection-usage.md +3 -0
- package/docs/examples/databases/get-collection.md +3 -0
- package/docs/examples/databases/get-document.md +4 -0
- package/docs/examples/databases/get-index.md +4 -0
- package/docs/examples/databases/get-transaction.md +2 -0
- package/docs/examples/databases/get-usage.md +2 -0
- package/docs/examples/databases/get.md +2 -0
- package/docs/examples/databases/increment-document-attribute.md +5 -0
- package/docs/examples/databases/list-attributes.md +3 -0
- package/docs/examples/databases/list-collection-logs.md +3 -0
- package/docs/examples/databases/list-collections.md +2 -0
- package/docs/examples/databases/list-document-logs.md +4 -0
- package/docs/examples/databases/list-documents.md +3 -0
- package/docs/examples/databases/list-indexes.md +3 -0
- package/docs/examples/databases/list-logs.md +2 -0
- package/docs/examples/databases/list-transactions.md +1 -0
- package/docs/examples/databases/list-usage.md +1 -0
- package/docs/examples/databases/list.md +1 -0
- package/docs/examples/databases/update-boolean-attribute.md +6 -0
- package/docs/examples/databases/update-collection.md +4 -0
- package/docs/examples/databases/update-datetime-attribute.md +6 -0
- package/docs/examples/databases/update-document.md +4 -0
- package/docs/examples/databases/update-documents.md +3 -0
- package/docs/examples/databases/update-email-attribute.md +6 -0
- package/docs/examples/databases/update-enum-attribute.md +7 -0
- package/docs/examples/databases/update-float-attribute.md +6 -0
- package/docs/examples/databases/update-integer-attribute.md +6 -0
- package/docs/examples/databases/update-ip-attribute.md +6 -0
- package/docs/examples/databases/update-line-attribute.md +5 -0
- package/docs/examples/databases/update-point-attribute.md +5 -0
- package/docs/examples/databases/update-polygon-attribute.md +5 -0
- package/docs/examples/databases/update-relationship-attribute.md +4 -0
- package/docs/examples/databases/update-string-attribute.md +6 -0
- package/docs/examples/databases/update-transaction.md +2 -0
- package/docs/examples/databases/update-url-attribute.md +6 -0
- package/docs/examples/databases/update.md +3 -0
- package/docs/examples/databases/upsert-document.md +4 -0
- package/docs/examples/databases/upsert-documents.md +4 -0
- package/docs/examples/functions/create-deployment.md +4 -0
- package/docs/examples/functions/create-duplicate-deployment.md +3 -0
- package/docs/examples/functions/create-execution.md +2 -0
- package/docs/examples/functions/create-template-deployment.md +7 -0
- package/docs/examples/functions/create-variable.md +4 -0
- package/docs/examples/functions/create-vcs-deployment.md +4 -0
- package/docs/examples/functions/create.md +4 -0
- package/docs/examples/functions/delete-deployment.md +3 -0
- package/docs/examples/functions/delete-execution.md +3 -0
- package/docs/examples/functions/delete-variable.md +3 -0
- package/docs/examples/functions/delete.md +2 -0
- package/docs/examples/functions/get-deployment-download.md +3 -0
- package/docs/examples/functions/get-deployment.md +3 -0
- package/docs/examples/functions/get-execution.md +3 -0
- package/docs/examples/functions/get-template.md +2 -0
- package/docs/examples/functions/get-usage.md +2 -0
- package/docs/examples/functions/get-variable.md +3 -0
- package/docs/examples/functions/get.md +2 -0
- package/docs/examples/functions/list-deployments.md +2 -0
- package/docs/examples/functions/list-executions.md +2 -0
- package/docs/examples/functions/list-runtimes.md +1 -0
- package/docs/examples/functions/list-specifications.md +1 -0
- package/docs/examples/functions/list-templates.md +1 -0
- package/docs/examples/functions/list-usage.md +1 -0
- package/docs/examples/functions/list-variables.md +2 -0
- package/docs/examples/functions/list.md +1 -0
- package/docs/examples/functions/update-deployment-status.md +3 -0
- package/docs/examples/functions/update-function-deployment.md +3 -0
- package/docs/examples/functions/update-variable.md +4 -0
- package/docs/examples/functions/update.md +3 -0
- package/docs/examples/graphql/mutation.md +2 -0
- package/docs/examples/graphql/query.md +2 -0
- package/docs/examples/health/get-antivirus.md +1 -0
- package/docs/examples/health/get-cache.md +1 -0
- package/docs/examples/health/get-certificate.md +1 -0
- package/docs/examples/health/get-db.md +1 -0
- package/docs/examples/health/get-failed-jobs.md +2 -0
- package/docs/examples/health/get-pub-sub.md +1 -0
- package/docs/examples/health/get-queue-builds.md +1 -0
- package/docs/examples/health/get-queue-certificates.md +1 -0
- package/docs/examples/health/get-queue-databases.md +1 -0
- package/docs/examples/health/get-queue-deletes.md +1 -0
- package/docs/examples/health/get-queue-functions.md +1 -0
- package/docs/examples/health/get-queue-logs.md +1 -0
- package/docs/examples/health/get-queue-mails.md +1 -0
- package/docs/examples/health/get-queue-messaging.md +1 -0
- package/docs/examples/health/get-queue-migrations.md +1 -0
- package/docs/examples/health/get-queue-stats-resources.md +1 -0
- package/docs/examples/health/get-queue-usage.md +1 -0
- package/docs/examples/health/get-queue-webhooks.md +1 -0
- package/docs/examples/health/get-storage-local.md +1 -0
- package/docs/examples/health/get-storage.md +1 -0
- package/docs/examples/health/get-time.md +1 -0
- package/docs/examples/health/get.md +1 -0
- package/docs/examples/locale/get.md +1 -0
- package/docs/examples/locale/list-codes.md +1 -0
- package/docs/examples/locale/list-continents.md +1 -0
- package/docs/examples/locale/list-countries-eu.md +1 -0
- package/docs/examples/locale/list-countries-phones.md +1 -0
- package/docs/examples/locale/list-countries.md +1 -0
- package/docs/examples/locale/list-currencies.md +1 -0
- package/docs/examples/locale/list-languages.md +1 -0
- package/docs/examples/messaging/create-apns-provider.md +3 -0
- package/docs/examples/messaging/create-email.md +4 -0
- package/docs/examples/messaging/create-fcm-provider.md +3 -0
- package/docs/examples/messaging/create-mailgun-provider.md +3 -0
- package/docs/examples/messaging/create-msg-91-provider.md +3 -0
- package/docs/examples/messaging/create-push.md +2 -0
- package/docs/examples/messaging/create-resend-provider.md +3 -0
- package/docs/examples/messaging/create-sendgrid-provider.md +3 -0
- package/docs/examples/messaging/create-sms.md +3 -0
- package/docs/examples/messaging/create-smtp-provider.md +4 -0
- package/docs/examples/messaging/create-subscriber.md +4 -0
- package/docs/examples/messaging/create-telesign-provider.md +3 -0
- package/docs/examples/messaging/create-textmagic-provider.md +3 -0
- package/docs/examples/messaging/create-topic.md +3 -0
- package/docs/examples/messaging/create-twilio-provider.md +3 -0
- package/docs/examples/messaging/create-vonage-provider.md +3 -0
- package/docs/examples/messaging/delete-provider.md +2 -0
- package/docs/examples/messaging/delete-subscriber.md +3 -0
- package/docs/examples/messaging/delete-topic.md +2 -0
- package/docs/examples/messaging/delete.md +2 -0
- package/docs/examples/messaging/get-message.md +2 -0
- package/docs/examples/messaging/get-provider.md +2 -0
- package/docs/examples/messaging/get-subscriber.md +3 -0
- package/docs/examples/messaging/get-topic.md +2 -0
- package/docs/examples/messaging/list-message-logs.md +2 -0
- package/docs/examples/messaging/list-messages.md +1 -0
- package/docs/examples/messaging/list-provider-logs.md +2 -0
- package/docs/examples/messaging/list-providers.md +1 -0
- package/docs/examples/messaging/list-subscriber-logs.md +2 -0
- package/docs/examples/messaging/list-subscribers.md +2 -0
- package/docs/examples/messaging/list-targets.md +2 -0
- package/docs/examples/messaging/list-topic-logs.md +2 -0
- package/docs/examples/messaging/list-topics.md +1 -0
- package/docs/examples/messaging/update-apns-provider.md +2 -0
- package/docs/examples/messaging/update-email.md +2 -0
- package/docs/examples/messaging/update-fcm-provider.md +2 -0
- package/docs/examples/messaging/update-mailgun-provider.md +2 -0
- package/docs/examples/messaging/update-msg-91-provider.md +2 -0
- package/docs/examples/messaging/update-push.md +2 -0
- package/docs/examples/messaging/update-resend-provider.md +2 -0
- package/docs/examples/messaging/update-sendgrid-provider.md +2 -0
- package/docs/examples/messaging/update-sms.md +2 -0
- package/docs/examples/messaging/update-smtp-provider.md +2 -0
- package/docs/examples/messaging/update-telesign-provider.md +2 -0
- package/docs/examples/messaging/update-textmagic-provider.md +2 -0
- package/docs/examples/messaging/update-topic.md +2 -0
- package/docs/examples/messaging/update-twilio-provider.md +2 -0
- package/docs/examples/messaging/update-vonage-provider.md +2 -0
- package/docs/examples/migrations/create-appwrite-migration.md +5 -0
- package/docs/examples/migrations/create-csv-export.md +3 -0
- package/docs/examples/migrations/create-csv-import.md +4 -0
- package/docs/examples/migrations/create-firebase-migration.md +3 -0
- package/docs/examples/migrations/create-n-host-migration.md +8 -0
- package/docs/examples/migrations/create-supabase-migration.md +7 -0
- package/docs/examples/migrations/delete.md +2 -0
- package/docs/examples/migrations/get-appwrite-report.md +5 -0
- package/docs/examples/migrations/get-firebase-report.md +3 -0
- package/docs/examples/migrations/get-n-host-report.md +8 -0
- package/docs/examples/migrations/get-supabase-report.md +7 -0
- package/docs/examples/migrations/get.md +2 -0
- package/docs/examples/migrations/list.md +1 -0
- package/docs/examples/migrations/retry.md +2 -0
- package/docs/examples/project/create-variable.md +3 -0
- package/docs/examples/project/delete-variable.md +2 -0
- package/docs/examples/project/get-usage.md +3 -0
- package/docs/examples/project/get-variable.md +2 -0
- package/docs/examples/project/list-variables.md +1 -0
- package/docs/examples/project/update-variable.md +3 -0
- package/docs/examples/projects/create-dev-key.md +4 -0
- package/docs/examples/projects/create-jwt.md +3 -0
- package/docs/examples/projects/create-key.md +4 -0
- package/docs/examples/projects/create-platform.md +4 -0
- package/docs/examples/projects/create-smtp-test.md +6 -0
- package/docs/examples/projects/create-webhook.md +6 -0
- package/docs/examples/projects/create.md +4 -0
- package/docs/examples/projects/delete-dev-key.md +3 -0
- package/docs/examples/projects/delete-email-template.md +4 -0
- package/docs/examples/projects/delete-key.md +3 -0
- package/docs/examples/projects/delete-platform.md +3 -0
- package/docs/examples/projects/delete-sms-template.md +4 -0
- package/docs/examples/projects/delete-webhook.md +3 -0
- package/docs/examples/projects/delete.md +2 -0
- package/docs/examples/projects/get-dev-key.md +3 -0
- package/docs/examples/projects/get-email-template.md +4 -0
- package/docs/examples/projects/get-key.md +3 -0
- package/docs/examples/projects/get-platform.md +3 -0
- package/docs/examples/projects/get-sms-template.md +4 -0
- package/docs/examples/projects/get-webhook.md +3 -0
- package/docs/examples/projects/get.md +2 -0
- package/docs/examples/projects/list-dev-keys.md +2 -0
- package/docs/examples/projects/list-keys.md +2 -0
- package/docs/examples/projects/list-platforms.md +2 -0
- package/docs/examples/projects/list-webhooks.md +2 -0
- package/docs/examples/projects/list.md +1 -0
- package/docs/examples/projects/update-api-status-all.md +3 -0
- package/docs/examples/projects/update-api-status.md +4 -0
- package/docs/examples/projects/update-auth-duration.md +3 -0
- package/docs/examples/projects/update-auth-limit.md +3 -0
- package/docs/examples/projects/update-auth-password-dictionary.md +3 -0
- package/docs/examples/projects/update-auth-password-history.md +3 -0
- package/docs/examples/projects/update-auth-sessions-limit.md +3 -0
- package/docs/examples/projects/update-auth-status.md +4 -0
- package/docs/examples/projects/update-dev-key.md +5 -0
- package/docs/examples/projects/update-email-template.md +6 -0
- package/docs/examples/projects/update-key.md +5 -0
- package/docs/examples/projects/update-labels.md +3 -0
- package/docs/examples/projects/update-memberships-privacy.md +5 -0
- package/docs/examples/projects/update-mock-numbers.md +3 -0
- package/docs/examples/projects/update-o-auth-2.md +3 -0
- package/docs/examples/projects/update-personal-data-check.md +3 -0
- package/docs/examples/projects/update-platform.md +4 -0
- package/docs/examples/projects/update-service-status-all.md +3 -0
- package/docs/examples/projects/update-service-status.md +4 -0
- package/docs/examples/projects/update-session-alerts.md +3 -0
- package/docs/examples/projects/update-session-invalidation.md +3 -0
- package/docs/examples/projects/update-sms-template.md +5 -0
- package/docs/examples/projects/update-smtp.md +3 -0
- package/docs/examples/projects/update-team.md +3 -0
- package/docs/examples/projects/update-webhook-signature.md +3 -0
- package/docs/examples/projects/update-webhook.md +7 -0
- package/docs/examples/projects/update.md +3 -0
- package/docs/examples/proxy/create-api-rule.md +2 -0
- package/docs/examples/proxy/create-function-rule.md +3 -0
- package/docs/examples/proxy/create-redirect-rule.md +6 -0
- package/docs/examples/proxy/create-site-rule.md +3 -0
- package/docs/examples/proxy/delete-rule.md +2 -0
- package/docs/examples/proxy/get-rule.md +2 -0
- package/docs/examples/proxy/list-rules.md +1 -0
- package/docs/examples/proxy/update-rule-verification.md +2 -0
- package/docs/examples/sites/create-deployment.md +4 -0
- package/docs/examples/sites/create-duplicate-deployment.md +3 -0
- package/docs/examples/sites/create-template-deployment.md +7 -0
- package/docs/examples/sites/create-variable.md +4 -0
- package/docs/examples/sites/create-vcs-deployment.md +4 -0
- package/docs/examples/sites/create.md +5 -0
- package/docs/examples/sites/delete-deployment.md +3 -0
- package/docs/examples/sites/delete-log.md +3 -0
- package/docs/examples/sites/delete-variable.md +3 -0
- package/docs/examples/sites/delete.md +2 -0
- package/docs/examples/sites/get-deployment-download.md +3 -0
- package/docs/examples/sites/get-deployment.md +3 -0
- package/docs/examples/sites/get-log.md +3 -0
- package/docs/examples/sites/get-template.md +2 -0
- package/docs/examples/sites/get-usage.md +2 -0
- package/docs/examples/sites/get-variable.md +3 -0
- package/docs/examples/sites/get.md +2 -0
- package/docs/examples/sites/list-deployments.md +2 -0
- package/docs/examples/sites/list-frameworks.md +1 -0
- package/docs/examples/sites/list-logs.md +2 -0
- package/docs/examples/sites/list-specifications.md +1 -0
- package/docs/examples/sites/list-templates.md +1 -0
- package/docs/examples/sites/list-usage.md +1 -0
- package/docs/examples/sites/list-variables.md +2 -0
- package/docs/examples/sites/list.md +1 -0
- package/docs/examples/sites/update-deployment-status.md +3 -0
- package/docs/examples/sites/update-site-deployment.md +3 -0
- package/docs/examples/sites/update-variable.md +4 -0
- package/docs/examples/sites/update.md +4 -0
- package/docs/examples/storage/create-bucket.md +3 -0
- package/docs/examples/storage/create-file.md +4 -0
- package/docs/examples/storage/delete-bucket.md +2 -0
- package/docs/examples/storage/delete-file.md +3 -0
- package/docs/examples/storage/get-bucket-usage.md +2 -0
- package/docs/examples/storage/get-bucket.md +2 -0
- package/docs/examples/storage/get-file-download.md +3 -0
- package/docs/examples/storage/get-file-preview.md +3 -0
- package/docs/examples/storage/get-file-view.md +3 -0
- package/docs/examples/storage/get-file.md +3 -0
- package/docs/examples/storage/get-usage.md +1 -0
- package/docs/examples/storage/list-buckets.md +1 -0
- package/docs/examples/storage/list-files.md +2 -0
- package/docs/examples/storage/update-bucket.md +3 -0
- package/docs/examples/storage/update-file.md +3 -0
- package/docs/examples/tablesdb/create-boolean-column.md +5 -0
- package/docs/examples/tablesdb/create-datetime-column.md +5 -0
- package/docs/examples/tablesdb/create-email-column.md +5 -0
- package/docs/examples/tablesdb/create-enum-column.md +6 -0
- package/docs/examples/tablesdb/create-float-column.md +5 -0
- package/docs/examples/tablesdb/create-index.md +6 -0
- package/docs/examples/tablesdb/create-integer-column.md +5 -0
- package/docs/examples/tablesdb/create-ip-column.md +5 -0
- package/docs/examples/tablesdb/create-line-column.md +5 -0
- package/docs/examples/tablesdb/create-operations.md +2 -0
- package/docs/examples/tablesdb/create-point-column.md +5 -0
- package/docs/examples/tablesdb/create-polygon-column.md +5 -0
- package/docs/examples/tablesdb/create-relationship-column.md +5 -0
- package/docs/examples/tablesdb/create-row.md +5 -0
- package/docs/examples/tablesdb/create-rows.md +4 -0
- package/docs/examples/tablesdb/create-string-column.md +6 -0
- package/docs/examples/tablesdb/create-table.md +4 -0
- package/docs/examples/tablesdb/create-transaction.md +1 -0
- package/docs/examples/tablesdb/create-url-column.md +5 -0
- package/docs/examples/tablesdb/create.md +3 -0
- package/docs/examples/tablesdb/decrement-row-column.md +5 -0
- package/docs/examples/tablesdb/delete-column.md +4 -0
- package/docs/examples/tablesdb/delete-index.md +4 -0
- package/docs/examples/tablesdb/delete-row.md +4 -0
- package/docs/examples/tablesdb/delete-rows.md +3 -0
- package/docs/examples/tablesdb/delete-table.md +3 -0
- package/docs/examples/tablesdb/delete-transaction.md +2 -0
- package/docs/examples/tablesdb/delete.md +2 -0
- package/docs/examples/tablesdb/get-column.md +4 -0
- package/docs/examples/tablesdb/get-index.md +4 -0
- package/docs/examples/tablesdb/get-row.md +4 -0
- package/docs/examples/tablesdb/get-table-usage.md +3 -0
- package/docs/examples/tablesdb/get-table.md +3 -0
- package/docs/examples/tablesdb/get-transaction.md +2 -0
- package/docs/examples/tablesdb/get-usage.md +2 -0
- package/docs/examples/tablesdb/get.md +2 -0
- package/docs/examples/tablesdb/increment-row-column.md +5 -0
- package/docs/examples/tablesdb/list-columns.md +3 -0
- package/docs/examples/tablesdb/list-indexes.md +3 -0
- package/docs/examples/tablesdb/list-row-logs.md +4 -0
- package/docs/examples/tablesdb/list-rows.md +3 -0
- package/docs/examples/tablesdb/list-table-logs.md +3 -0
- package/docs/examples/tablesdb/list-tables.md +2 -0
- package/docs/examples/tablesdb/list-transactions.md +1 -0
- package/docs/examples/tablesdb/list-usage.md +1 -0
- package/docs/examples/tablesdb/list.md +1 -0
- package/docs/examples/tablesdb/update-boolean-column.md +6 -0
- package/docs/examples/tablesdb/update-datetime-column.md +6 -0
- package/docs/examples/tablesdb/update-email-column.md +6 -0
- package/docs/examples/tablesdb/update-enum-column.md +7 -0
- package/docs/examples/tablesdb/update-float-column.md +6 -0
- package/docs/examples/tablesdb/update-integer-column.md +6 -0
- package/docs/examples/tablesdb/update-ip-column.md +6 -0
- package/docs/examples/tablesdb/update-line-column.md +5 -0
- package/docs/examples/tablesdb/update-point-column.md +5 -0
- package/docs/examples/tablesdb/update-polygon-column.md +5 -0
- package/docs/examples/tablesdb/update-relationship-column.md +4 -0
- package/docs/examples/tablesdb/update-row.md +4 -0
- package/docs/examples/tablesdb/update-rows.md +3 -0
- package/docs/examples/tablesdb/update-string-column.md +6 -0
- package/docs/examples/tablesdb/update-table.md +4 -0
- package/docs/examples/tablesdb/update-transaction.md +2 -0
- package/docs/examples/tablesdb/update-url-column.md +6 -0
- package/docs/examples/tablesdb/update.md +3 -0
- package/docs/examples/tablesdb/upsert-row.md +4 -0
- package/docs/examples/tablesdb/upsert-rows.md +4 -0
- package/docs/examples/teams/create-membership.md +3 -0
- package/docs/examples/teams/create.md +3 -0
- package/docs/examples/teams/delete-membership.md +3 -0
- package/docs/examples/teams/delete.md +2 -0
- package/docs/examples/teams/get-membership.md +3 -0
- package/docs/examples/teams/get-prefs.md +2 -0
- package/docs/examples/teams/get.md +2 -0
- package/docs/examples/teams/list-logs.md +2 -0
- package/docs/examples/teams/list-memberships.md +2 -0
- package/docs/examples/teams/list.md +1 -0
- package/docs/examples/teams/update-membership-status.md +5 -0
- package/docs/examples/teams/update-membership.md +4 -0
- package/docs/examples/teams/update-name.md +3 -0
- package/docs/examples/teams/update-prefs.md +3 -0
- package/docs/examples/tokens/create-file-token.md +3 -0
- package/docs/examples/tokens/delete.md +2 -0
- package/docs/examples/tokens/get.md +2 -0
- package/docs/examples/tokens/list.md +3 -0
- package/docs/examples/tokens/update.md +2 -0
- package/docs/examples/users/create-argon-2-user.md +4 -0
- package/docs/examples/users/create-bcrypt-user.md +4 -0
- package/docs/examples/users/create-jwt.md +2 -0
- package/docs/examples/users/create-md-5-user.md +4 -0
- package/docs/examples/users/create-mfa-recovery-codes.md +2 -0
- package/docs/examples/users/create-ph-pass-user.md +4 -0
- package/docs/examples/users/create-scrypt-modified-user.md +7 -0
- package/docs/examples/users/create-scrypt-user.md +9 -0
- package/docs/examples/users/create-session.md +2 -0
- package/docs/examples/users/create-sha-user.md +4 -0
- package/docs/examples/users/create-target.md +5 -0
- package/docs/examples/users/create-token.md +2 -0
- package/docs/examples/users/create.md +2 -0
- package/docs/examples/users/delete-identity.md +2 -0
- package/docs/examples/users/delete-mfa-authenticator.md +3 -0
- package/docs/examples/users/delete-session.md +3 -0
- package/docs/examples/users/delete-sessions.md +2 -0
- package/docs/examples/users/delete-target.md +3 -0
- package/docs/examples/users/delete.md +2 -0
- package/docs/examples/users/get-mfa-recovery-codes.md +2 -0
- package/docs/examples/users/get-prefs.md +2 -0
- package/docs/examples/users/get-target.md +3 -0
- package/docs/examples/users/get-usage.md +1 -0
- package/docs/examples/users/get.md +2 -0
- package/docs/examples/users/list-identities.md +1 -0
- package/docs/examples/users/list-logs.md +2 -0
- package/docs/examples/users/list-memberships.md +2 -0
- package/docs/examples/users/list-mfa-factors.md +2 -0
- package/docs/examples/users/list-sessions.md +2 -0
- package/docs/examples/users/list-targets.md +2 -0
- package/docs/examples/users/list.md +1 -0
- package/docs/examples/users/update-email-verification.md +3 -0
- package/docs/examples/users/update-email.md +3 -0
- package/docs/examples/users/update-labels.md +3 -0
- package/docs/examples/users/update-mfa-recovery-codes.md +2 -0
- package/docs/examples/users/update-mfa.md +3 -0
- package/docs/examples/users/update-name.md +3 -0
- package/docs/examples/users/update-password.md +3 -0
- package/docs/examples/users/update-phone-verification.md +3 -0
- package/docs/examples/users/update-phone.md +3 -0
- package/docs/examples/users/update-prefs.md +3 -0
- package/docs/examples/users/update-status.md +3 -0
- package/docs/examples/users/update-target.md +3 -0
- package/docs/examples/vcs/create-repository-detection.md +4 -0
- package/docs/examples/vcs/create-repository.md +4 -0
- package/docs/examples/vcs/delete-installation.md +2 -0
- package/docs/examples/vcs/get-installation.md +2 -0
- package/docs/examples/vcs/get-repository-contents.md +3 -0
- package/docs/examples/vcs/get-repository.md +3 -0
- package/docs/examples/vcs/list-installations.md +1 -0
- package/docs/examples/vcs/list-repositories.md +3 -0
- package/docs/examples/vcs/list-repository-branches.md +3 -0
- package/docs/examples/vcs/update-external-deployments.md +4 -0
- package/install.ps1 +3 -3
- package/install.sh +3 -3
- package/lib/client.ts +15 -7
- package/lib/commands/config.ts +22 -6
- package/lib/commands/generate.ts +76 -0
- package/lib/commands/generators/databases.ts +508 -0
- package/lib/commands/init.ts +25 -14
- package/lib/commands/pull.ts +245 -193
- package/lib/commands/push.ts +336 -130
- package/lib/commands/run.ts +1 -1
- package/lib/commands/schema.ts +30 -11
- package/lib/commands/services/account.ts +200 -385
- package/lib/commands/services/console.ts +13 -34
- package/lib/commands/services/databases.ts +298 -1215
- package/lib/commands/services/functions.ts +115 -434
- package/lib/commands/services/graphql.ts +5 -2
- package/lib/commands/services/health.ts +87 -149
- package/lib/commands/services/locale.ts +36 -33
- package/lib/commands/services/messaging.ts +180 -999
- package/lib/commands/services/migrations.ts +54 -226
- package/lib/commands/services/project.ts +19 -23
- package/lib/commands/services/projects.ts +194 -714
- package/lib/commands/services/proxy.ts +30 -58
- package/lib/commands/services/sites.ts +107 -379
- package/lib/commands/services/storage.ts +93 -302
- package/lib/commands/services/tables-db.ts +1150 -0
- package/lib/commands/services/teams.ts +48 -110
- package/lib/commands/services/tokens.ts +16 -28
- package/lib/commands/services/users.ts +133 -403
- package/lib/commands/services/vcs.ts +48 -151
- package/lib/commands/types.ts +1 -1
- package/lib/commands/update.ts +12 -11
- package/lib/commands/utils/attributes.ts +44 -53
- package/lib/commands/utils/deployment.ts +6 -2
- package/lib/commands/utils/pools.ts +7 -6
- package/lib/config.ts +51 -4
- package/lib/constants.ts +22 -0
- package/lib/emulation/docker.ts +97 -83
- package/lib/parser.ts +16 -11
- package/lib/questions.ts +36 -21
- package/lib/sdks.ts +15 -11
- package/lib/utils.ts +35 -4
- package/package.json +4 -4
- package/scoop/appwrite.config.json +29 -19
- package/.github/workflows/build-verify.yml +0 -71
- package/bun.lock +0 -627
- package/dist/lib/commands/db.d.ts +0 -34
- package/dist/lib/commands/db.d.ts.map +0 -1
- package/dist/lib/commands/db.js +0 -247
- package/dist/lib/commands/db.js.map +0 -1
- package/dist/lib/commands/services/avatars.d.ts +0 -3
- package/dist/lib/commands/services/avatars.d.ts.map +0 -1
- package/dist/lib/commands/services/avatars.js +0 -118
- package/dist/lib/commands/services/avatars.js.map +0 -1
- package/dist/lib/commands/services/tablesdb.d.ts +0 -3
- package/dist/lib/commands/services/tablesdb.d.ts.map +0 -1
- package/dist/lib/commands/services/tablesdb.js.map +0 -1
- package/dist/scripts/generate-commands.d.ts +0 -2
- package/dist/scripts/generate-commands.d.ts.map +0 -1
- package/dist/scripts/generate-commands.js +0 -398
- package/dist/scripts/generate-commands.js.map +0 -1
- package/dist/sites/profile-website/src/lib/utils.d.ts +0 -4
- package/dist/sites/profile-website/src/lib/utils.d.ts.map +0 -1
- package/dist/sites/profile-website/src/lib/utils.js +0 -32
- package/dist/sites/profile-website/src/lib/utils.js.map +0 -1
- package/dist/sites/profile-website/tailwind.config.d.ts +0 -3
- package/dist/sites/profile-website/tailwind.config.d.ts.map +0 -1
- package/dist/sites/profile-website/tailwind.config.js +0 -110
- package/dist/sites/profile-website/tailwind.config.js.map +0 -1
- package/dist/test.d.ts +0 -2
- package/dist/test.d.ts.map +0 -1
- package/dist/test.js +0 -38
- package/dist/test.js.map +0 -1
- package/lib/commands/db.ts +0 -324
- package/lib/commands/services/avatars.ts +0 -400
- package/lib/commands/services/tablesdb.ts +0 -1928
- package/scripts/generate-commands.ts +0 -539
package/lib/commands/pull.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import fs from "fs";
|
|
2
|
+
import path from "path";
|
|
2
3
|
import chalk from "chalk";
|
|
3
4
|
import { Command } from "commander";
|
|
4
5
|
import inquirer from "inquirer";
|
|
@@ -40,6 +41,7 @@ import { createSettingsObject } from "../utils.js";
|
|
|
40
41
|
import { ProjectNotInitializedError } from "./errors.js";
|
|
41
42
|
import type { SettingsType, FunctionType, SiteType } from "./config.js";
|
|
42
43
|
import { downloadDeploymentCode } from "./utils/deployment.js";
|
|
44
|
+
import { getConfirmation } from "./utils/change-approval.js";
|
|
43
45
|
|
|
44
46
|
export interface PullOptions {
|
|
45
47
|
all?: boolean;
|
|
@@ -177,7 +179,7 @@ export class Pull {
|
|
|
177
179
|
updatedConfig.tables = tables;
|
|
178
180
|
}
|
|
179
181
|
|
|
180
|
-
if (
|
|
182
|
+
if (options.collections || (shouldPullAll && !skipDeprecated)) {
|
|
181
183
|
const { databases, collections } = await this.pullCollections();
|
|
182
184
|
updatedConfig.databases = databases;
|
|
183
185
|
updatedConfig.collections = collections;
|
|
@@ -227,104 +229,96 @@ export class Pull {
|
|
|
227
229
|
): Promise<FunctionType[]> {
|
|
228
230
|
this.log("Fetching functions ...");
|
|
229
231
|
|
|
230
|
-
const
|
|
231
|
-
|
|
232
|
+
const functionsService = new Functions(this.projectClient);
|
|
233
|
+
let functions: Models.Function[];
|
|
232
234
|
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
} else {
|
|
246
|
-
const fetchResponse = await functionsService.list({
|
|
247
|
-
queries: [Query.limit(1)],
|
|
248
|
-
});
|
|
249
|
-
|
|
250
|
-
if (fetchResponse["functions"].length <= 0) {
|
|
251
|
-
this.log("No functions found.");
|
|
252
|
-
this.success(`Successfully pulled ${chalk.bold(0)} functions.`);
|
|
253
|
-
return [];
|
|
254
|
-
}
|
|
235
|
+
if (options.functionIds && options.functionIds.length > 0) {
|
|
236
|
+
functions = await Promise.all(
|
|
237
|
+
options.functionIds.map((id) =>
|
|
238
|
+
functionsService.get({
|
|
239
|
+
functionId: id,
|
|
240
|
+
}),
|
|
241
|
+
),
|
|
242
|
+
);
|
|
243
|
+
} else {
|
|
244
|
+
const fetchResponse = await functionsService.list({
|
|
245
|
+
queries: [Query.limit(1)],
|
|
246
|
+
});
|
|
255
247
|
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
"functions",
|
|
261
|
-
);
|
|
262
|
-
functions = allFunctions;
|
|
248
|
+
if (fetchResponse["functions"].length <= 0) {
|
|
249
|
+
this.log("No functions found.");
|
|
250
|
+
this.success(`Successfully pulled ${chalk.bold(0)} functions.`);
|
|
251
|
+
return [];
|
|
263
252
|
}
|
|
264
253
|
|
|
265
|
-
const
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
functionId: func["$id"],
|
|
305
|
-
queries: [Query.limit(1), Query.orderDesc("$id")],
|
|
306
|
-
}),
|
|
307
|
-
getDownloadUrl: (deploymentId) =>
|
|
308
|
-
functionsService.getDeploymentDownload({
|
|
309
|
-
functionId: func["$id"],
|
|
310
|
-
deploymentId,
|
|
311
|
-
}),
|
|
312
|
-
projectClient: this.projectClient,
|
|
313
|
-
});
|
|
314
|
-
}
|
|
254
|
+
const { functions: allFunctions } = await paginate(
|
|
255
|
+
async () => new Functions(this.projectClient).list(),
|
|
256
|
+
{},
|
|
257
|
+
100,
|
|
258
|
+
"functions",
|
|
259
|
+
);
|
|
260
|
+
functions = allFunctions;
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
const result: FunctionType[] = [];
|
|
264
|
+
|
|
265
|
+
for (const func of functions) {
|
|
266
|
+
this.log(`Pulling function ${chalk.bold(func.name)} ...`);
|
|
267
|
+
|
|
268
|
+
const funcPath = `functions/${func.name}`;
|
|
269
|
+
const absoluteFuncPath = path.resolve(this.configDirectoryPath, funcPath);
|
|
270
|
+
const holdingVars = func.vars || [];
|
|
271
|
+
|
|
272
|
+
const functionConfig: FunctionType = {
|
|
273
|
+
$id: func.$id,
|
|
274
|
+
name: func.name,
|
|
275
|
+
runtime: func.runtime,
|
|
276
|
+
path: funcPath,
|
|
277
|
+
entrypoint: func.entrypoint,
|
|
278
|
+
execute: func.execute,
|
|
279
|
+
enabled: func.enabled,
|
|
280
|
+
logging: func.logging,
|
|
281
|
+
events: func.events,
|
|
282
|
+
schedule: func.schedule,
|
|
283
|
+
timeout: func.timeout,
|
|
284
|
+
commands: func.commands,
|
|
285
|
+
scopes: func.scopes,
|
|
286
|
+
specification: func.specification,
|
|
287
|
+
};
|
|
288
|
+
|
|
289
|
+
result.push(functionConfig);
|
|
290
|
+
|
|
291
|
+
if (!fs.existsSync(absoluteFuncPath)) {
|
|
292
|
+
fs.mkdirSync(absoluteFuncPath, { recursive: true });
|
|
315
293
|
}
|
|
316
294
|
|
|
317
|
-
if (options.code
|
|
318
|
-
|
|
295
|
+
if (options.code !== false) {
|
|
296
|
+
await downloadDeploymentCode({
|
|
297
|
+
resourceId: func["$id"],
|
|
298
|
+
resourcePath: absoluteFuncPath,
|
|
299
|
+
holdingVars,
|
|
300
|
+
withVariables: options.withVariables,
|
|
301
|
+
listDeployments: () =>
|
|
302
|
+
functionsService.listDeployments({
|
|
303
|
+
functionId: func["$id"],
|
|
304
|
+
queries: [Query.limit(1), Query.orderDesc("$id")],
|
|
305
|
+
}),
|
|
306
|
+
getDownloadUrl: (deploymentId) =>
|
|
307
|
+
functionsService.getDeploymentDownload({
|
|
308
|
+
functionId: func["$id"],
|
|
309
|
+
deploymentId,
|
|
310
|
+
}),
|
|
311
|
+
projectClient: this.projectClient,
|
|
312
|
+
});
|
|
319
313
|
}
|
|
314
|
+
}
|
|
320
315
|
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
);
|
|
324
|
-
return result;
|
|
325
|
-
} finally {
|
|
326
|
-
process.chdir(originalCwd);
|
|
316
|
+
if (options.code === false) {
|
|
317
|
+
this.warn("Source code download skipped.");
|
|
327
318
|
}
|
|
319
|
+
|
|
320
|
+
this.success(`Successfully pulled ${chalk.bold(result.length)} functions.`);
|
|
321
|
+
return result;
|
|
328
322
|
}
|
|
329
323
|
|
|
330
324
|
/**
|
|
@@ -333,102 +327,96 @@ export class Pull {
|
|
|
333
327
|
public async pullSites(options: PullSitesOptions = {}): Promise<SiteType[]> {
|
|
334
328
|
this.log("Fetching sites ...");
|
|
335
329
|
|
|
336
|
-
const
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
try {
|
|
340
|
-
const sitesService = new Sites(this.projectClient);
|
|
341
|
-
let sites: Models.Site[];
|
|
342
|
-
|
|
343
|
-
if (options.siteIds && options.siteIds.length > 0) {
|
|
344
|
-
sites = await Promise.all(
|
|
345
|
-
options.siteIds.map((id) =>
|
|
346
|
-
sitesService.get({
|
|
347
|
-
siteId: id,
|
|
348
|
-
}),
|
|
349
|
-
),
|
|
350
|
-
);
|
|
351
|
-
} else {
|
|
352
|
-
const fetchResponse = await sitesService.list({
|
|
353
|
-
queries: [Query.limit(1)],
|
|
354
|
-
});
|
|
330
|
+
const sitesService = new Sites(this.projectClient);
|
|
331
|
+
let sites: Models.Site[];
|
|
355
332
|
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
333
|
+
if (options.siteIds && options.siteIds.length > 0) {
|
|
334
|
+
sites = await Promise.all(
|
|
335
|
+
options.siteIds.map((id) =>
|
|
336
|
+
sitesService.get({
|
|
337
|
+
siteId: id,
|
|
338
|
+
}),
|
|
339
|
+
),
|
|
340
|
+
);
|
|
341
|
+
} else {
|
|
342
|
+
const fetchResponse = await sitesService.list({
|
|
343
|
+
queries: [Query.limit(1)],
|
|
344
|
+
});
|
|
361
345
|
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
"sites",
|
|
367
|
-
);
|
|
368
|
-
sites = fetchedSites;
|
|
346
|
+
if (fetchResponse["sites"].length <= 0) {
|
|
347
|
+
this.log("No sites found.");
|
|
348
|
+
this.success(`Successfully pulled ${chalk.bold(0)} sites.`);
|
|
349
|
+
return [];
|
|
369
350
|
}
|
|
370
351
|
|
|
371
|
-
const
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
siteId: site["$id"],
|
|
411
|
-
queries: [Query.limit(1), Query.orderDesc("$id")],
|
|
412
|
-
}),
|
|
413
|
-
getDownloadUrl: (deploymentId) =>
|
|
414
|
-
sitesService.getDeploymentDownload({
|
|
415
|
-
siteId: site["$id"],
|
|
416
|
-
deploymentId,
|
|
417
|
-
}),
|
|
418
|
-
projectClient: this.projectClient,
|
|
419
|
-
});
|
|
420
|
-
}
|
|
352
|
+
const { sites: fetchedSites } = await paginate(
|
|
353
|
+
async () => new Sites(this.projectClient).list(),
|
|
354
|
+
{},
|
|
355
|
+
100,
|
|
356
|
+
"sites",
|
|
357
|
+
);
|
|
358
|
+
sites = fetchedSites;
|
|
359
|
+
}
|
|
360
|
+
|
|
361
|
+
const result: SiteType[] = [];
|
|
362
|
+
|
|
363
|
+
for (const site of sites) {
|
|
364
|
+
this.log(`Pulling site ${chalk.bold(site.name)} ...`);
|
|
365
|
+
|
|
366
|
+
const sitePath = `sites/${site.name}`;
|
|
367
|
+
const absoluteSitePath = path.resolve(this.configDirectoryPath, sitePath);
|
|
368
|
+
const holdingVars = site.vars || [];
|
|
369
|
+
|
|
370
|
+
const siteConfig: SiteType = {
|
|
371
|
+
$id: site.$id,
|
|
372
|
+
name: site.name,
|
|
373
|
+
path: sitePath,
|
|
374
|
+
framework: site.framework,
|
|
375
|
+
enabled: site.enabled,
|
|
376
|
+
logging: site.logging,
|
|
377
|
+
timeout: site.timeout,
|
|
378
|
+
buildRuntime: site.buildRuntime,
|
|
379
|
+
adapter: site.adapter,
|
|
380
|
+
installCommand: site.installCommand,
|
|
381
|
+
buildCommand: site.buildCommand,
|
|
382
|
+
outputDirectory: site.outputDirectory,
|
|
383
|
+
fallbackFile: site.fallbackFile,
|
|
384
|
+
specification: site.specification,
|
|
385
|
+
};
|
|
386
|
+
|
|
387
|
+
result.push(siteConfig);
|
|
388
|
+
|
|
389
|
+
if (!fs.existsSync(absoluteSitePath)) {
|
|
390
|
+
fs.mkdirSync(absoluteSitePath, { recursive: true });
|
|
421
391
|
}
|
|
422
392
|
|
|
423
|
-
if (options.code
|
|
424
|
-
|
|
393
|
+
if (options.code !== false) {
|
|
394
|
+
await downloadDeploymentCode({
|
|
395
|
+
resourceId: site["$id"],
|
|
396
|
+
resourcePath: absoluteSitePath,
|
|
397
|
+
holdingVars,
|
|
398
|
+
withVariables: options.withVariables,
|
|
399
|
+
listDeployments: () =>
|
|
400
|
+
sitesService.listDeployments({
|
|
401
|
+
siteId: site["$id"],
|
|
402
|
+
queries: [Query.limit(1), Query.orderDesc("$id")],
|
|
403
|
+
}),
|
|
404
|
+
getDownloadUrl: (deploymentId) =>
|
|
405
|
+
sitesService.getDeploymentDownload({
|
|
406
|
+
siteId: site["$id"],
|
|
407
|
+
deploymentId,
|
|
408
|
+
}),
|
|
409
|
+
projectClient: this.projectClient,
|
|
410
|
+
});
|
|
425
411
|
}
|
|
412
|
+
}
|
|
426
413
|
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
} finally {
|
|
430
|
-
process.chdir(originalCwd);
|
|
414
|
+
if (options.code === false) {
|
|
415
|
+
this.warn("Source code download skipped.");
|
|
431
416
|
}
|
|
417
|
+
|
|
418
|
+
this.success(`Successfully pulled ${chalk.bold(result.length)} sites.`);
|
|
419
|
+
return result;
|
|
432
420
|
}
|
|
433
421
|
|
|
434
422
|
/**
|
|
@@ -817,53 +805,117 @@ const pullCollection = async (): Promise<void> => {
|
|
|
817
805
|
const pullInstance = await createPullInstance();
|
|
818
806
|
const { databases, collections } = await pullInstance.pullCollections();
|
|
819
807
|
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
808
|
+
const localCollections = localConfig.getCollections();
|
|
809
|
+
const remoteCollectionIds = new Set(collections.map((c: any) => c.$id));
|
|
810
|
+
const collectionsToRemove = localCollections.filter(
|
|
811
|
+
(c: any) => !remoteCollectionIds.has(c.$id),
|
|
812
|
+
);
|
|
823
813
|
|
|
824
|
-
|
|
825
|
-
|
|
814
|
+
if (collectionsToRemove.length > 0) {
|
|
815
|
+
warn(
|
|
816
|
+
`The following collections exist locally but not remotely and will be removed: ${collectionsToRemove.map((c: any) => c.name || c.$id).join(", ")}`,
|
|
817
|
+
);
|
|
818
|
+
if ((await getConfirmation()) !== true) {
|
|
819
|
+
log("Pull cancelled.");
|
|
820
|
+
return;
|
|
821
|
+
}
|
|
826
822
|
}
|
|
823
|
+
|
|
824
|
+
localConfig.set("databases", databases);
|
|
825
|
+
localConfig.set("collections", collections);
|
|
827
826
|
};
|
|
828
827
|
|
|
829
828
|
const pullTable = async (): Promise<void> => {
|
|
830
829
|
const pullInstance = await createPullInstance();
|
|
831
830
|
const { databases, tables } = await pullInstance.pullTables();
|
|
832
831
|
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
832
|
+
const localTables = localConfig.getTables();
|
|
833
|
+
const remoteTableIds = new Set(tables.map((t: any) => t.$id));
|
|
834
|
+
const tablesToRemove = localTables.filter(
|
|
835
|
+
(t: any) => !remoteTableIds.has(t.$id),
|
|
836
|
+
);
|
|
836
837
|
|
|
837
|
-
|
|
838
|
-
|
|
838
|
+
if (tablesToRemove.length > 0) {
|
|
839
|
+
warn(
|
|
840
|
+
`The following tables exist locally but not remotely and will be removed: ${tablesToRemove.map((t: any) => t.name || t.$id).join(", ")}`,
|
|
841
|
+
);
|
|
842
|
+
if ((await getConfirmation()) !== true) {
|
|
843
|
+
log("Pull cancelled.");
|
|
844
|
+
return;
|
|
845
|
+
}
|
|
839
846
|
}
|
|
847
|
+
|
|
848
|
+
localConfig.set("tablesDB", databases);
|
|
849
|
+
localConfig.set("tables", tables);
|
|
840
850
|
};
|
|
841
851
|
|
|
842
852
|
const pullBucket = async (): Promise<void> => {
|
|
843
853
|
const pullInstance = await createPullInstance();
|
|
844
854
|
const buckets = await pullInstance.pullBuckets();
|
|
845
855
|
|
|
846
|
-
|
|
847
|
-
|
|
856
|
+
const localBuckets = localConfig.getBuckets();
|
|
857
|
+
const remoteBucketIds = new Set(buckets.map((b: any) => b.$id));
|
|
858
|
+
const bucketsToRemove = localBuckets.filter(
|
|
859
|
+
(b: any) => !remoteBucketIds.has(b.$id),
|
|
860
|
+
);
|
|
861
|
+
|
|
862
|
+
if (bucketsToRemove.length > 0) {
|
|
863
|
+
warn(
|
|
864
|
+
`The following buckets exist locally but not remotely and will be removed: ${bucketsToRemove.map((b: any) => b.name || b.$id).join(", ")}`,
|
|
865
|
+
);
|
|
866
|
+
if ((await getConfirmation()) !== true) {
|
|
867
|
+
log("Pull cancelled.");
|
|
868
|
+
return;
|
|
869
|
+
}
|
|
848
870
|
}
|
|
871
|
+
|
|
872
|
+
localConfig.set("buckets", buckets);
|
|
849
873
|
};
|
|
850
874
|
|
|
851
875
|
const pullTeam = async (): Promise<void> => {
|
|
852
876
|
const pullInstance = await createPullInstance();
|
|
853
877
|
const teams = await pullInstance.pullTeams();
|
|
854
878
|
|
|
855
|
-
|
|
856
|
-
|
|
879
|
+
const localTeams = localConfig.getTeams();
|
|
880
|
+
const remoteTeamIds = new Set(teams.map((t: any) => t.$id));
|
|
881
|
+
const teamsToRemove = localTeams.filter(
|
|
882
|
+
(t: any) => !remoteTeamIds.has(t.$id),
|
|
883
|
+
);
|
|
884
|
+
|
|
885
|
+
if (teamsToRemove.length > 0) {
|
|
886
|
+
warn(
|
|
887
|
+
`The following teams exist locally but not remotely and will be removed: ${teamsToRemove.map((t: any) => t.name || t.$id).join(", ")}`,
|
|
888
|
+
);
|
|
889
|
+
if ((await getConfirmation()) !== true) {
|
|
890
|
+
log("Pull cancelled.");
|
|
891
|
+
return;
|
|
892
|
+
}
|
|
857
893
|
}
|
|
894
|
+
|
|
895
|
+
localConfig.set("teams", teams);
|
|
858
896
|
};
|
|
859
897
|
|
|
860
898
|
const pullMessagingTopic = async (): Promise<void> => {
|
|
861
899
|
const pullInstance = await createPullInstance();
|
|
862
900
|
const topics = await pullInstance.pullMessagingTopics();
|
|
863
901
|
|
|
864
|
-
|
|
865
|
-
|
|
902
|
+
const localTopics = localConfig.getMessagingTopics();
|
|
903
|
+
const remoteTopicIds = new Set(topics.map((t: any) => t.$id));
|
|
904
|
+
const topicsToRemove = localTopics.filter(
|
|
905
|
+
(t: any) => !remoteTopicIds.has(t.$id),
|
|
906
|
+
);
|
|
907
|
+
|
|
908
|
+
if (topicsToRemove.length > 0) {
|
|
909
|
+
warn(
|
|
910
|
+
`The following topics exist locally but not remotely and will be removed: ${topicsToRemove.map((t: any) => t.name || t.$id).join(", ")}`,
|
|
911
|
+
);
|
|
912
|
+
if ((await getConfirmation()) !== true) {
|
|
913
|
+
log("Pull cancelled.");
|
|
914
|
+
return;
|
|
915
|
+
}
|
|
866
916
|
}
|
|
917
|
+
|
|
918
|
+
localConfig.set("topics", topics);
|
|
867
919
|
};
|
|
868
920
|
|
|
869
921
|
/** Commander.js exports */
|