chirag-appwrite-cli 0.1.0 → 0.2.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.
Files changed (823) hide show
  1. package/.github/workflows/build-verify.yml +71 -0
  2. package/.github/workflows/npm-publish.yml +41 -22
  3. package/CHANGELOG.md +190 -1
  4. package/LICENSE.md +12 -1
  5. package/README.md +182 -15
  6. package/bun.lock +627 -0
  7. package/dist/bundle.cjs +108228 -0
  8. package/dist/index.d.ts +7 -0
  9. package/dist/index.d.ts.map +1 -0
  10. package/dist/index.js +149 -0
  11. package/dist/index.js.map +1 -0
  12. package/dist/lib/client.d.ts +88 -0
  13. package/dist/lib/client.d.ts.map +1 -0
  14. package/dist/lib/client.js +238 -0
  15. package/dist/lib/client.js.map +1 -0
  16. package/dist/lib/commands/config.d.ts +557 -0
  17. package/dist/lib/commands/config.d.ts.map +1 -0
  18. package/dist/lib/commands/config.js +415 -0
  19. package/dist/lib/commands/config.js.map +1 -0
  20. package/dist/lib/commands/db.d.ts +34 -0
  21. package/dist/lib/commands/db.d.ts.map +1 -0
  22. package/dist/lib/commands/db.js +247 -0
  23. package/dist/lib/commands/db.js.map +1 -0
  24. package/dist/lib/commands/errors.d.ts +68 -0
  25. package/dist/lib/commands/errors.d.ts.map +1 -0
  26. package/dist/lib/commands/errors.js +72 -0
  27. package/dist/lib/commands/errors.js.map +1 -0
  28. package/dist/lib/commands/generic.d.ts +17 -0
  29. package/dist/lib/commands/generic.d.ts.map +1 -0
  30. package/dist/lib/commands/generic.js +292 -0
  31. package/dist/lib/commands/generic.js.map +1 -0
  32. package/dist/lib/commands/init.d.ts +3 -0
  33. package/dist/lib/commands/init.d.ts.map +1 -0
  34. package/dist/lib/commands/init.js +526 -0
  35. package/dist/lib/commands/init.js.map +1 -0
  36. package/dist/lib/commands/pull.d.ts +110 -0
  37. package/dist/lib/commands/pull.d.ts.map +1 -0
  38. package/dist/lib/commands/pull.js +626 -0
  39. package/dist/lib/commands/pull.js.map +1 -0
  40. package/dist/lib/commands/push.d.ts +82 -0
  41. package/dist/lib/commands/push.d.ts.map +1 -0
  42. package/dist/lib/commands/push.js +1666 -0
  43. package/dist/lib/commands/push.js.map +1 -0
  44. package/dist/lib/commands/run.d.ts +3 -0
  45. package/dist/lib/commands/run.d.ts.map +1 -0
  46. package/dist/lib/commands/run.js +289 -0
  47. package/dist/lib/commands/run.js.map +1 -0
  48. package/dist/lib/commands/schema.d.ts +57 -0
  49. package/dist/lib/commands/schema.d.ts.map +1 -0
  50. package/dist/lib/commands/schema.js +75 -0
  51. package/dist/lib/commands/schema.js.map +1 -0
  52. package/dist/lib/commands/services/account.d.ts +3 -0
  53. package/dist/lib/commands/services/account.d.ts.map +1 -0
  54. package/dist/lib/commands/services/account.js +306 -0
  55. package/dist/lib/commands/services/account.js.map +1 -0
  56. package/dist/lib/commands/services/avatars.d.ts +3 -0
  57. package/dist/lib/commands/services/avatars.d.ts.map +1 -0
  58. package/dist/lib/commands/services/avatars.js +118 -0
  59. package/dist/lib/commands/services/avatars.js.map +1 -0
  60. package/dist/lib/commands/services/console.d.ts +3 -0
  61. package/dist/lib/commands/services/console.d.ts.map +1 -0
  62. package/dist/lib/commands/services/console.js +41 -0
  63. package/dist/lib/commands/services/console.js.map +1 -0
  64. package/dist/lib/commands/services/databases.d.ts +3 -0
  65. package/dist/lib/commands/services/databases.d.ts.map +1 -0
  66. package/dist/lib/commands/services/databases.js +612 -0
  67. package/dist/lib/commands/services/databases.js.map +1 -0
  68. package/dist/lib/commands/services/functions.d.ts +3 -0
  69. package/dist/lib/commands/services/functions.d.ts.map +1 -0
  70. package/dist/lib/commands/services/functions.js +258 -0
  71. package/dist/lib/commands/services/functions.js.map +1 -0
  72. package/dist/lib/commands/services/graphql.d.ts +3 -0
  73. package/dist/lib/commands/services/graphql.d.ts.map +1 -0
  74. package/dist/lib/commands/services/graphql.js +28 -0
  75. package/dist/lib/commands/services/graphql.js.map +1 -0
  76. package/dist/lib/commands/services/health.d.ts +3 -0
  77. package/dist/lib/commands/services/health.d.ts.map +1 -0
  78. package/dist/lib/commands/services/health.js +123 -0
  79. package/dist/lib/commands/services/health.js.map +1 -0
  80. package/dist/lib/commands/services/locale.d.ts +3 -0
  81. package/dist/lib/commands/services/locale.d.ts.map +1 -0
  82. package/dist/lib/commands/services/locale.js +52 -0
  83. package/dist/lib/commands/services/locale.js.map +1 -0
  84. package/dist/lib/commands/services/messaging.d.ts +3 -0
  85. package/dist/lib/commands/services/messaging.d.ts.map +1 -0
  86. package/dist/lib/commands/services/messaging.js +505 -0
  87. package/dist/lib/commands/services/messaging.js.map +1 -0
  88. package/dist/lib/commands/services/migrations.d.ts +3 -0
  89. package/dist/lib/commands/services/migrations.d.ts.map +1 -0
  90. package/dist/lib/commands/services/migrations.js +135 -0
  91. package/dist/lib/commands/services/migrations.js.map +1 -0
  92. package/dist/lib/commands/services/project.d.ts +3 -0
  93. package/dist/lib/commands/services/project.d.ts.map +1 -0
  94. package/dist/lib/commands/services/project.js +54 -0
  95. package/dist/lib/commands/services/project.js.map +1 -0
  96. package/dist/lib/commands/services/projects.d.ts +3 -0
  97. package/dist/lib/commands/services/projects.d.ts.map +1 -0
  98. package/dist/lib/commands/services/projects.js +415 -0
  99. package/dist/lib/commands/services/projects.js.map +1 -0
  100. package/dist/lib/commands/services/proxy.d.ts +3 -0
  101. package/dist/lib/commands/services/proxy.d.ts.map +1 -0
  102. package/dist/lib/commands/services/proxy.js +68 -0
  103. package/dist/lib/commands/services/proxy.js.map +1 -0
  104. package/dist/lib/commands/services/sites.d.ts +3 -0
  105. package/dist/lib/commands/services/sites.d.ts.map +1 -0
  106. package/dist/lib/commands/services/sites.js +242 -0
  107. package/dist/lib/commands/services/sites.js.map +1 -0
  108. package/dist/lib/commands/services/storage.d.ts +3 -0
  109. package/dist/lib/commands/services/storage.d.ts.map +1 -0
  110. package/dist/lib/commands/services/storage.js +153 -0
  111. package/dist/lib/commands/services/storage.js.map +1 -0
  112. package/dist/lib/commands/services/tablesdb.d.ts +3 -0
  113. package/dist/lib/commands/services/tablesdb.d.ts.map +1 -0
  114. package/dist/lib/commands/services/tablesdb.js +605 -0
  115. package/dist/lib/commands/services/tablesdb.js.map +1 -0
  116. package/dist/lib/commands/services/teams.d.ts +3 -0
  117. package/dist/lib/commands/services/teams.d.ts.map +1 -0
  118. package/dist/lib/commands/services/teams.js +123 -0
  119. package/dist/lib/commands/services/teams.js.map +1 -0
  120. package/dist/lib/commands/services/tokens.d.ts +3 -0
  121. package/dist/lib/commands/services/tokens.d.ts.map +1 -0
  122. package/dist/lib/commands/services/tokens.js +49 -0
  123. package/dist/lib/commands/services/tokens.js.map +1 -0
  124. package/dist/lib/commands/services/users.d.ts +3 -0
  125. package/dist/lib/commands/services/users.d.ts.map +1 -0
  126. package/dist/lib/commands/services/users.js +312 -0
  127. package/dist/lib/commands/services/users.js.map +1 -0
  128. package/dist/lib/commands/services/vcs.d.ts +3 -0
  129. package/dist/lib/commands/services/vcs.d.ts.map +1 -0
  130. package/dist/lib/commands/services/vcs.js +87 -0
  131. package/dist/lib/commands/services/vcs.js.map +1 -0
  132. package/dist/lib/commands/types.d.ts +3 -0
  133. package/dist/lib/commands/types.d.ts.map +1 -0
  134. package/dist/lib/commands/types.js +151 -0
  135. package/dist/lib/commands/types.js.map +1 -0
  136. package/dist/lib/commands/update.d.ts +3 -0
  137. package/dist/lib/commands/update.d.ts.map +1 -0
  138. package/dist/lib/commands/update.js +201 -0
  139. package/dist/lib/commands/update.js.map +1 -0
  140. package/dist/lib/commands/utils/attributes.d.ts +46 -0
  141. package/dist/lib/commands/utils/attributes.d.ts.map +1 -0
  142. package/dist/lib/commands/utils/attributes.js +521 -0
  143. package/dist/lib/commands/utils/attributes.js.map +1 -0
  144. package/dist/lib/commands/utils/change-approval.d.ts +25 -0
  145. package/dist/lib/commands/utils/change-approval.d.ts.map +1 -0
  146. package/dist/lib/commands/utils/change-approval.js +129 -0
  147. package/dist/lib/commands/utils/change-approval.js.map +1 -0
  148. package/dist/lib/commands/utils/database-sync.d.ts +10 -0
  149. package/dist/lib/commands/utils/database-sync.d.ts.map +1 -0
  150. package/dist/lib/commands/utils/database-sync.js +136 -0
  151. package/dist/lib/commands/utils/database-sync.js.map +1 -0
  152. package/dist/lib/commands/utils/deployment.d.ts +34 -0
  153. package/dist/lib/commands/utils/deployment.d.ts.map +1 -0
  154. package/dist/lib/commands/utils/deployment.js +108 -0
  155. package/dist/lib/commands/utils/deployment.js.map +1 -0
  156. package/dist/lib/commands/utils/error-formatter.d.ts +19 -0
  157. package/dist/lib/commands/utils/error-formatter.d.ts.map +1 -0
  158. package/dist/lib/commands/utils/error-formatter.js +333 -0
  159. package/dist/lib/commands/utils/error-formatter.js.map +1 -0
  160. package/dist/lib/commands/utils/pools.d.ts +16 -0
  161. package/dist/lib/commands/utils/pools.d.ts.map +1 -0
  162. package/dist/lib/commands/utils/pools.js +197 -0
  163. package/dist/lib/commands/utils/pools.js.map +1 -0
  164. package/dist/lib/config.d.ts +119 -0
  165. package/dist/lib/config.d.ts.map +1 -0
  166. package/dist/lib/config.js +728 -0
  167. package/dist/lib/config.js.map +1 -0
  168. package/dist/lib/emulation/docker.d.ts +7 -0
  169. package/dist/lib/emulation/docker.d.ts.map +1 -0
  170. package/dist/lib/emulation/docker.js +224 -0
  171. package/dist/lib/emulation/docker.js.map +1 -0
  172. package/dist/lib/emulation/utils.d.ts +29 -0
  173. package/dist/lib/emulation/utils.d.ts.map +1 -0
  174. package/dist/lib/emulation/utils.js +165 -0
  175. package/dist/lib/emulation/utils.js.map +1 -0
  176. package/dist/lib/id.d.ts +7 -0
  177. package/dist/lib/id.d.ts.map +1 -0
  178. package/dist/lib/id.js +27 -0
  179. package/dist/lib/id.js.map +1 -0
  180. package/dist/lib/paginate.d.ts +9 -0
  181. package/dist/lib/paginate.d.ts.map +1 -0
  182. package/dist/lib/paginate.js +43 -0
  183. package/dist/lib/paginate.js.map +1 -0
  184. package/dist/lib/parser.d.ts +18 -0
  185. package/dist/lib/parser.d.ts.map +1 -0
  186. package/dist/lib/parser.js +225 -0
  187. package/dist/lib/parser.js.map +1 -0
  188. package/dist/lib/questions.d.ts +59 -0
  189. package/dist/lib/questions.d.ts.map +1 -0
  190. package/dist/lib/questions.js +991 -0
  191. package/dist/lib/questions.js.map +1 -0
  192. package/dist/lib/sdks.d.ts +4 -0
  193. package/dist/lib/sdks.d.ts.map +1 -0
  194. package/dist/lib/sdks.js +61 -0
  195. package/dist/lib/sdks.js.map +1 -0
  196. package/dist/lib/services.d.ts +13 -0
  197. package/dist/lib/services.d.ts.map +1 -0
  198. package/dist/lib/services.js +47 -0
  199. package/dist/lib/services.js.map +1 -0
  200. package/dist/lib/spinner.d.ts +28 -0
  201. package/dist/lib/spinner.d.ts.map +1 -0
  202. package/dist/lib/spinner.js +91 -0
  203. package/dist/lib/spinner.js.map +1 -0
  204. package/dist/lib/type-generation/attribute.d.ts +17 -0
  205. package/dist/lib/type-generation/attribute.d.ts.map +1 -0
  206. package/dist/lib/type-generation/attribute.js +16 -0
  207. package/dist/lib/type-generation/attribute.js.map +1 -0
  208. package/dist/lib/type-generation/languages/csharp.d.ts +7 -0
  209. package/dist/lib/type-generation/languages/csharp.d.ts.map +1 -0
  210. package/dist/lib/type-generation/languages/csharp.js +180 -0
  211. package/dist/lib/type-generation/languages/csharp.js.map +1 -0
  212. package/dist/lib/type-generation/languages/dart.d.ts +8 -0
  213. package/dist/lib/type-generation/languages/dart.d.ts.map +1 -0
  214. package/dist/lib/type-generation/languages/dart.js +197 -0
  215. package/dist/lib/type-generation/languages/dart.js.map +1 -0
  216. package/dist/lib/type-generation/languages/java.d.ts +7 -0
  217. package/dist/lib/type-generation/languages/java.d.ts.map +1 -0
  218. package/dist/lib/type-generation/languages/java.js +140 -0
  219. package/dist/lib/type-generation/languages/java.js.map +1 -0
  220. package/dist/lib/type-generation/languages/javascript.d.ts +9 -0
  221. package/dist/lib/type-generation/languages/javascript.d.ts.map +1 -0
  222. package/dist/lib/type-generation/languages/javascript.js +109 -0
  223. package/dist/lib/type-generation/languages/javascript.js.map +1 -0
  224. package/dist/lib/type-generation/languages/kotlin.d.ts +7 -0
  225. package/dist/lib/type-generation/languages/kotlin.d.ts.map +1 -0
  226. package/dist/lib/type-generation/languages/kotlin.js +95 -0
  227. package/dist/lib/type-generation/languages/kotlin.js.map +1 -0
  228. package/dist/lib/type-generation/languages/language.d.ts +43 -0
  229. package/dist/lib/type-generation/languages/language.d.ts.map +1 -0
  230. package/dist/lib/type-generation/languages/language.js +77 -0
  231. package/dist/lib/type-generation/languages/language.js.map +1 -0
  232. package/dist/lib/type-generation/languages/php.d.ts +7 -0
  233. package/dist/lib/type-generation/languages/php.d.ts.map +1 -0
  234. package/dist/lib/type-generation/languages/php.js +116 -0
  235. package/dist/lib/type-generation/languages/php.js.map +1 -0
  236. package/dist/lib/type-generation/languages/swift.d.ts +7 -0
  237. package/dist/lib/type-generation/languages/swift.d.ts.map +1 -0
  238. package/dist/lib/type-generation/languages/swift.js +179 -0
  239. package/dist/lib/type-generation/languages/swift.js.map +1 -0
  240. package/dist/lib/type-generation/languages/typescript.d.ts +9 -0
  241. package/dist/lib/type-generation/languages/typescript.d.ts.map +1 -0
  242. package/dist/lib/type-generation/languages/typescript.js +115 -0
  243. package/dist/lib/type-generation/languages/typescript.js.map +1 -0
  244. package/dist/lib/types.d.ts +63 -0
  245. package/dist/lib/types.d.ts.map +1 -0
  246. package/dist/lib/types.js +2 -0
  247. package/dist/lib/types.js.map +1 -0
  248. package/dist/lib/utils.d.ts +18 -0
  249. package/dist/lib/utils.d.ts.map +1 -0
  250. package/dist/lib/utils.js +323 -0
  251. package/dist/lib/utils.js.map +1 -0
  252. package/dist/lib/validations.d.ts +2 -0
  253. package/dist/lib/validations.d.ts.map +1 -0
  254. package/dist/lib/validations.js +16 -0
  255. package/dist/lib/validations.js.map +1 -0
  256. package/dist/package.json +68 -0
  257. package/dist/scripts/generate-commands.d.ts +2 -0
  258. package/dist/scripts/generate-commands.d.ts.map +1 -0
  259. package/dist/scripts/generate-commands.js +398 -0
  260. package/dist/scripts/generate-commands.js.map +1 -0
  261. package/dist/sites/profile-website/src/lib/utils.d.ts +4 -0
  262. package/dist/sites/profile-website/src/lib/utils.d.ts.map +1 -0
  263. package/dist/sites/profile-website/src/lib/utils.js +32 -0
  264. package/dist/sites/profile-website/src/lib/utils.js.map +1 -0
  265. package/dist/sites/profile-website/tailwind.config.d.ts +3 -0
  266. package/dist/sites/profile-website/tailwind.config.d.ts.map +1 -0
  267. package/dist/sites/profile-website/tailwind.config.js +110 -0
  268. package/dist/sites/profile-website/tailwind.config.js.map +1 -0
  269. package/dist/test.d.ts +2 -0
  270. package/dist/test.d.ts.map +1 -0
  271. package/dist/test.js +38 -0
  272. package/dist/test.js.map +1 -0
  273. package/index.ts +190 -0
  274. package/install.ps1 +5 -8
  275. package/install.sh +4 -5
  276. package/lib/client.ts +292 -0
  277. package/lib/commands/config.ts +493 -0
  278. package/lib/commands/db.ts +324 -0
  279. package/lib/commands/errors.ts +93 -0
  280. package/lib/commands/generic.ts +440 -0
  281. package/lib/commands/init.ts +713 -0
  282. package/lib/commands/pull.ts +944 -0
  283. package/lib/commands/push.ts +2355 -0
  284. package/lib/commands/run.ts +416 -0
  285. package/lib/commands/schema.ts +103 -0
  286. package/lib/commands/services/account.ts +832 -0
  287. package/lib/commands/services/avatars.ts +400 -0
  288. package/lib/commands/services/console.ts +73 -0
  289. package/lib/commands/services/databases.ts +2080 -0
  290. package/lib/commands/services/functions.ts +855 -0
  291. package/lib/commands/services/graphql.ts +47 -0
  292. package/lib/commands/services/health.ts +322 -0
  293. package/lib/commands/services/locale.ts +99 -0
  294. package/lib/commands/services/messaging.ts +1871 -0
  295. package/lib/commands/services/migrations.ts +421 -0
  296. package/lib/commands/services/project.ts +116 -0
  297. package/lib/commands/services/projects.ts +1317 -0
  298. package/lib/commands/services/proxy.ts +163 -0
  299. package/lib/commands/services/sites.ts +777 -0
  300. package/lib/commands/services/storage.ts +547 -0
  301. package/lib/commands/services/tablesdb.ts +1928 -0
  302. package/lib/commands/services/teams.ts +294 -0
  303. package/lib/commands/services/tokens.ts +106 -0
  304. package/lib/commands/services/users.ts +886 -0
  305. package/lib/commands/services/vcs.ts +268 -0
  306. package/lib/commands/types.ts +220 -0
  307. package/lib/commands/update.ts +245 -0
  308. package/lib/commands/utils/attributes.ts +734 -0
  309. package/lib/commands/utils/change-approval.ts +186 -0
  310. package/lib/commands/utils/database-sync.ts +180 -0
  311. package/lib/commands/utils/deployment.ts +180 -0
  312. package/lib/commands/utils/error-formatter.ts +417 -0
  313. package/lib/commands/utils/pools.ts +354 -0
  314. package/lib/config.ts +932 -0
  315. package/lib/emulation/docker.ts +312 -0
  316. package/lib/emulation/utils.ts +207 -0
  317. package/lib/id.ts +30 -0
  318. package/lib/paginate.ts +77 -0
  319. package/lib/parser.ts +264 -0
  320. package/lib/questions.ts +1167 -0
  321. package/lib/sdks.ts +84 -0
  322. package/lib/services.ts +72 -0
  323. package/lib/spinner.ts +131 -0
  324. package/lib/type-generation/attribute.ts +18 -0
  325. package/lib/type-generation/languages/csharp.ts +192 -0
  326. package/lib/type-generation/languages/dart.ts +217 -0
  327. package/lib/type-generation/languages/java.ts +152 -0
  328. package/lib/type-generation/languages/javascript.ts +122 -0
  329. package/lib/type-generation/languages/kotlin.ts +107 -0
  330. package/lib/type-generation/languages/language.ts +127 -0
  331. package/lib/type-generation/languages/php.ts +128 -0
  332. package/lib/type-generation/languages/swift.ts +191 -0
  333. package/lib/type-generation/languages/typescript.ts +133 -0
  334. package/lib/types.ts +75 -0
  335. package/lib/utils.ts +394 -0
  336. package/lib/validations.ts +20 -0
  337. package/package.json +39 -21
  338. package/scoop/appwrite.config.json +20 -0
  339. package/scripts/generate-commands.ts +539 -0
  340. package/tsconfig.json +24 -0
  341. package/appwrite.json +0 -164
  342. package/docs/examples/account/create-anonymous-session.md +0 -1
  343. package/docs/examples/account/create-email-password-session.md +0 -3
  344. package/docs/examples/account/create-email-token.md +0 -4
  345. package/docs/examples/account/create-j-w-t.md +0 -1
  346. package/docs/examples/account/create-magic-u-r-l-token.md +0 -5
  347. package/docs/examples/account/create-mfa-authenticator.md +0 -2
  348. package/docs/examples/account/create-mfa-challenge.md +0 -2
  349. package/docs/examples/account/create-mfa-recovery-codes.md +0 -1
  350. package/docs/examples/account/create-o-auth2session.md +0 -5
  351. package/docs/examples/account/create-o-auth2token.md +0 -5
  352. package/docs/examples/account/create-phone-token.md +0 -3
  353. package/docs/examples/account/create-phone-verification.md +0 -1
  354. package/docs/examples/account/create-push-target.md +0 -4
  355. package/docs/examples/account/create-recovery.md +0 -3
  356. package/docs/examples/account/create-session.md +0 -3
  357. package/docs/examples/account/create-verification.md +0 -2
  358. package/docs/examples/account/create.md +0 -5
  359. package/docs/examples/account/delete-identity.md +0 -2
  360. package/docs/examples/account/delete-mfa-authenticator.md +0 -2
  361. package/docs/examples/account/delete-push-target.md +0 -2
  362. package/docs/examples/account/delete-session.md +0 -2
  363. package/docs/examples/account/delete-sessions.md +0 -1
  364. package/docs/examples/account/delete.md +0 -1
  365. package/docs/examples/account/get-mfa-recovery-codes.md +0 -1
  366. package/docs/examples/account/get-prefs.md +0 -1
  367. package/docs/examples/account/get-session.md +0 -2
  368. package/docs/examples/account/get.md +0 -1
  369. package/docs/examples/account/list-identities.md +0 -2
  370. package/docs/examples/account/list-logs.md +0 -2
  371. package/docs/examples/account/list-mfa-factors.md +0 -1
  372. package/docs/examples/account/list-sessions.md +0 -1
  373. package/docs/examples/account/update-email.md +0 -3
  374. package/docs/examples/account/update-m-f-a.md +0 -2
  375. package/docs/examples/account/update-magic-u-r-l-session.md +0 -3
  376. package/docs/examples/account/update-mfa-authenticator.md +0 -3
  377. package/docs/examples/account/update-mfa-challenge.md +0 -3
  378. package/docs/examples/account/update-mfa-recovery-codes.md +0 -1
  379. package/docs/examples/account/update-name.md +0 -2
  380. package/docs/examples/account/update-password.md +0 -3
  381. package/docs/examples/account/update-phone-session.md +0 -3
  382. package/docs/examples/account/update-phone-verification.md +0 -3
  383. package/docs/examples/account/update-phone.md +0 -3
  384. package/docs/examples/account/update-prefs.md +0 -2
  385. package/docs/examples/account/update-push-target.md +0 -3
  386. package/docs/examples/account/update-recovery.md +0 -4
  387. package/docs/examples/account/update-session.md +0 -2
  388. package/docs/examples/account/update-status.md +0 -1
  389. package/docs/examples/account/update-verification.md +0 -3
  390. package/docs/examples/avatars/get-browser.md +0 -5
  391. package/docs/examples/avatars/get-credit-card.md +0 -5
  392. package/docs/examples/avatars/get-favicon.md +0 -2
  393. package/docs/examples/avatars/get-flag.md +0 -5
  394. package/docs/examples/avatars/get-image.md +0 -4
  395. package/docs/examples/avatars/get-initials.md +0 -5
  396. package/docs/examples/avatars/get-q-r.md +0 -5
  397. package/docs/examples/console/get-resource.md +0 -3
  398. package/docs/examples/console/variables.md +0 -1
  399. package/docs/examples/databases/create-boolean-attribute.md +0 -7
  400. package/docs/examples/databases/create-collection.md +0 -7
  401. package/docs/examples/databases/create-datetime-attribute.md +0 -7
  402. package/docs/examples/databases/create-document.md +0 -6
  403. package/docs/examples/databases/create-documents.md +0 -4
  404. package/docs/examples/databases/create-email-attribute.md +0 -7
  405. package/docs/examples/databases/create-enum-attribute.md +0 -8
  406. package/docs/examples/databases/create-float-attribute.md +0 -9
  407. package/docs/examples/databases/create-index.md +0 -8
  408. package/docs/examples/databases/create-integer-attribute.md +0 -9
  409. package/docs/examples/databases/create-ip-attribute.md +0 -7
  410. package/docs/examples/databases/create-relationship-attribute.md +0 -9
  411. package/docs/examples/databases/create-string-attribute.md +0 -9
  412. package/docs/examples/databases/create-url-attribute.md +0 -7
  413. package/docs/examples/databases/create.md +0 -4
  414. package/docs/examples/databases/decrement-document-attribute.md +0 -7
  415. package/docs/examples/databases/delete-attribute.md +0 -4
  416. package/docs/examples/databases/delete-collection.md +0 -3
  417. package/docs/examples/databases/delete-document.md +0 -4
  418. package/docs/examples/databases/delete-documents.md +0 -4
  419. package/docs/examples/databases/delete-index.md +0 -4
  420. package/docs/examples/databases/delete.md +0 -2
  421. package/docs/examples/databases/get-attribute.md +0 -4
  422. package/docs/examples/databases/get-collection-usage.md +0 -4
  423. package/docs/examples/databases/get-collection.md +0 -3
  424. package/docs/examples/databases/get-database-usage.md +0 -3
  425. package/docs/examples/databases/get-document.md +0 -5
  426. package/docs/examples/databases/get-index.md +0 -4
  427. package/docs/examples/databases/get-usage.md +0 -2
  428. package/docs/examples/databases/get.md +0 -2
  429. package/docs/examples/databases/increment-document-attribute.md +0 -7
  430. package/docs/examples/databases/list-attributes.md +0 -4
  431. package/docs/examples/databases/list-collection-logs.md +0 -4
  432. package/docs/examples/databases/list-collections.md +0 -4
  433. package/docs/examples/databases/list-document-logs.md +0 -5
  434. package/docs/examples/databases/list-documents.md +0 -4
  435. package/docs/examples/databases/list-indexes.md +0 -4
  436. package/docs/examples/databases/list-logs.md +0 -3
  437. package/docs/examples/databases/list.md +0 -3
  438. package/docs/examples/databases/update-boolean-attribute.md +0 -7
  439. package/docs/examples/databases/update-collection.md +0 -7
  440. package/docs/examples/databases/update-datetime-attribute.md +0 -7
  441. package/docs/examples/databases/update-document.md +0 -6
  442. package/docs/examples/databases/update-documents.md +0 -5
  443. package/docs/examples/databases/update-email-attribute.md +0 -7
  444. package/docs/examples/databases/update-enum-attribute.md +0 -8
  445. package/docs/examples/databases/update-float-attribute.md +0 -9
  446. package/docs/examples/databases/update-integer-attribute.md +0 -9
  447. package/docs/examples/databases/update-ip-attribute.md +0 -7
  448. package/docs/examples/databases/update-relationship-attribute.md +0 -6
  449. package/docs/examples/databases/update-string-attribute.md +0 -8
  450. package/docs/examples/databases/update-url-attribute.md +0 -7
  451. package/docs/examples/databases/update.md +0 -4
  452. package/docs/examples/databases/upsert-document.md +0 -6
  453. package/docs/examples/databases/upsert-documents.md +0 -4
  454. package/docs/examples/functions/create-deployment.md +0 -6
  455. package/docs/examples/functions/create-duplicate-deployment.md +0 -4
  456. package/docs/examples/functions/create-execution.md +0 -8
  457. package/docs/examples/functions/create-template-deployment.md +0 -7
  458. package/docs/examples/functions/create-variable.md +0 -5
  459. package/docs/examples/functions/create-vcs-deployment.md +0 -5
  460. package/docs/examples/functions/create.md +0 -19
  461. package/docs/examples/functions/delete-deployment.md +0 -3
  462. package/docs/examples/functions/delete-execution.md +0 -3
  463. package/docs/examples/functions/delete-variable.md +0 -3
  464. package/docs/examples/functions/delete.md +0 -2
  465. package/docs/examples/functions/get-deployment-download.md +0 -4
  466. package/docs/examples/functions/get-deployment.md +0 -3
  467. package/docs/examples/functions/get-execution.md +0 -3
  468. package/docs/examples/functions/get-template.md +0 -2
  469. package/docs/examples/functions/get-usage.md +0 -3
  470. package/docs/examples/functions/get-variable.md +0 -3
  471. package/docs/examples/functions/get.md +0 -2
  472. package/docs/examples/functions/list-deployments.md +0 -4
  473. package/docs/examples/functions/list-executions.md +0 -3
  474. package/docs/examples/functions/list-runtimes.md +0 -1
  475. package/docs/examples/functions/list-specifications.md +0 -1
  476. package/docs/examples/functions/list-templates.md +0 -5
  477. package/docs/examples/functions/list-usage.md +0 -2
  478. package/docs/examples/functions/list-variables.md +0 -2
  479. package/docs/examples/functions/list.md +0 -3
  480. package/docs/examples/functions/update-deployment-status.md +0 -3
  481. package/docs/examples/functions/update-function-deployment.md +0 -3
  482. package/docs/examples/functions/update-variable.md +0 -6
  483. package/docs/examples/functions/update.md +0 -19
  484. package/docs/examples/graphql/mutation.md +0 -2
  485. package/docs/examples/graphql/query.md +0 -2
  486. package/docs/examples/health/get-antivirus.md +0 -1
  487. package/docs/examples/health/get-cache.md +0 -1
  488. package/docs/examples/health/get-certificate.md +0 -2
  489. package/docs/examples/health/get-d-b.md +0 -1
  490. package/docs/examples/health/get-failed-jobs.md +0 -3
  491. package/docs/examples/health/get-pub-sub.md +0 -1
  492. package/docs/examples/health/get-queue-builds.md +0 -2
  493. package/docs/examples/health/get-queue-certificates.md +0 -2
  494. package/docs/examples/health/get-queue-databases.md +0 -3
  495. package/docs/examples/health/get-queue-deletes.md +0 -2
  496. package/docs/examples/health/get-queue-functions.md +0 -2
  497. package/docs/examples/health/get-queue-logs.md +0 -2
  498. package/docs/examples/health/get-queue-mails.md +0 -2
  499. package/docs/examples/health/get-queue-messaging.md +0 -2
  500. package/docs/examples/health/get-queue-migrations.md +0 -2
  501. package/docs/examples/health/get-queue-stats-resources.md +0 -2
  502. package/docs/examples/health/get-queue-usage.md +0 -2
  503. package/docs/examples/health/get-queue-webhooks.md +0 -2
  504. package/docs/examples/health/get-storage-local.md +0 -1
  505. package/docs/examples/health/get-storage.md +0 -1
  506. package/docs/examples/health/get-time.md +0 -1
  507. package/docs/examples/health/get.md +0 -1
  508. package/docs/examples/locale/get.md +0 -1
  509. package/docs/examples/locale/list-codes.md +0 -1
  510. package/docs/examples/locale/list-continents.md +0 -1
  511. package/docs/examples/locale/list-countries-e-u.md +0 -1
  512. package/docs/examples/locale/list-countries-phones.md +0 -1
  513. package/docs/examples/locale/list-countries.md +0 -1
  514. package/docs/examples/locale/list-currencies.md +0 -1
  515. package/docs/examples/locale/list-languages.md +0 -1
  516. package/docs/examples/messaging/create-apns-provider.md +0 -9
  517. package/docs/examples/messaging/create-email.md +0 -13
  518. package/docs/examples/messaging/create-fcm-provider.md +0 -5
  519. package/docs/examples/messaging/create-mailgun-provider.md +0 -11
  520. package/docs/examples/messaging/create-msg91provider.md +0 -7
  521. package/docs/examples/messaging/create-push.md +0 -20
  522. package/docs/examples/messaging/create-sendgrid-provider.md +0 -9
  523. package/docs/examples/messaging/create-sms.md +0 -8
  524. package/docs/examples/messaging/create-smtp-provider.md +0 -15
  525. package/docs/examples/messaging/create-subscriber.md +0 -4
  526. package/docs/examples/messaging/create-telesign-provider.md +0 -7
  527. package/docs/examples/messaging/create-textmagic-provider.md +0 -7
  528. package/docs/examples/messaging/create-topic.md +0 -4
  529. package/docs/examples/messaging/create-twilio-provider.md +0 -7
  530. package/docs/examples/messaging/create-vonage-provider.md +0 -7
  531. package/docs/examples/messaging/delete-provider.md +0 -2
  532. package/docs/examples/messaging/delete-subscriber.md +0 -3
  533. package/docs/examples/messaging/delete-topic.md +0 -2
  534. package/docs/examples/messaging/delete.md +0 -2
  535. package/docs/examples/messaging/get-message.md +0 -2
  536. package/docs/examples/messaging/get-provider.md +0 -2
  537. package/docs/examples/messaging/get-subscriber.md +0 -3
  538. package/docs/examples/messaging/get-topic.md +0 -2
  539. package/docs/examples/messaging/list-message-logs.md +0 -3
  540. package/docs/examples/messaging/list-messages.md +0 -3
  541. package/docs/examples/messaging/list-provider-logs.md +0 -3
  542. package/docs/examples/messaging/list-providers.md +0 -3
  543. package/docs/examples/messaging/list-subscriber-logs.md +0 -3
  544. package/docs/examples/messaging/list-subscribers.md +0 -4
  545. package/docs/examples/messaging/list-targets.md +0 -3
  546. package/docs/examples/messaging/list-topic-logs.md +0 -3
  547. package/docs/examples/messaging/list-topics.md +0 -3
  548. package/docs/examples/messaging/update-apns-provider.md +0 -9
  549. package/docs/examples/messaging/update-email.md +0 -13
  550. package/docs/examples/messaging/update-fcm-provider.md +0 -5
  551. package/docs/examples/messaging/update-mailgun-provider.md +0 -11
  552. package/docs/examples/messaging/update-msg91provider.md +0 -7
  553. package/docs/examples/messaging/update-push.md +0 -20
  554. package/docs/examples/messaging/update-sendgrid-provider.md +0 -9
  555. package/docs/examples/messaging/update-sms.md +0 -8
  556. package/docs/examples/messaging/update-smtp-provider.md +0 -15
  557. package/docs/examples/messaging/update-telesign-provider.md +0 -7
  558. package/docs/examples/messaging/update-textmagic-provider.md +0 -7
  559. package/docs/examples/messaging/update-topic.md +0 -4
  560. package/docs/examples/messaging/update-twilio-provider.md +0 -7
  561. package/docs/examples/messaging/update-vonage-provider.md +0 -7
  562. package/docs/examples/migrations/create-appwrite-migration.md +0 -5
  563. package/docs/examples/migrations/create-csv-migration.md +0 -4
  564. package/docs/examples/migrations/create-firebase-migration.md +0 -3
  565. package/docs/examples/migrations/create-n-host-migration.md +0 -9
  566. package/docs/examples/migrations/create-supabase-migration.md +0 -8
  567. package/docs/examples/migrations/delete.md +0 -2
  568. package/docs/examples/migrations/get-appwrite-report.md +0 -5
  569. package/docs/examples/migrations/get-firebase-report.md +0 -3
  570. package/docs/examples/migrations/get-n-host-report.md +0 -9
  571. package/docs/examples/migrations/get-supabase-report.md +0 -8
  572. package/docs/examples/migrations/get.md +0 -2
  573. package/docs/examples/migrations/list.md +0 -3
  574. package/docs/examples/migrations/retry.md +0 -2
  575. package/docs/examples/project/create-variable.md +0 -4
  576. package/docs/examples/project/delete-variable.md +0 -2
  577. package/docs/examples/project/get-usage.md +0 -4
  578. package/docs/examples/project/get-variable.md +0 -2
  579. package/docs/examples/project/list-variables.md +0 -1
  580. package/docs/examples/project/update-variable.md +0 -5
  581. package/docs/examples/projects/create-dev-key.md +0 -4
  582. package/docs/examples/projects/create-j-w-t.md +0 -4
  583. package/docs/examples/projects/create-key.md +0 -5
  584. package/docs/examples/projects/create-platform.md +0 -7
  585. package/docs/examples/projects/create-smtp-test.md +0 -11
  586. package/docs/examples/projects/create-webhook.md +0 -9
  587. package/docs/examples/projects/create.md +0 -14
  588. package/docs/examples/projects/delete-dev-key.md +0 -3
  589. package/docs/examples/projects/delete-email-template.md +0 -4
  590. package/docs/examples/projects/delete-key.md +0 -3
  591. package/docs/examples/projects/delete-platform.md +0 -3
  592. package/docs/examples/projects/delete-sms-template.md +0 -4
  593. package/docs/examples/projects/delete-webhook.md +0 -3
  594. package/docs/examples/projects/delete.md +0 -2
  595. package/docs/examples/projects/get-dev-key.md +0 -3
  596. package/docs/examples/projects/get-email-template.md +0 -4
  597. package/docs/examples/projects/get-key.md +0 -3
  598. package/docs/examples/projects/get-platform.md +0 -3
  599. package/docs/examples/projects/get-sms-template.md +0 -4
  600. package/docs/examples/projects/get-webhook.md +0 -3
  601. package/docs/examples/projects/get.md +0 -2
  602. package/docs/examples/projects/list-dev-keys.md +0 -3
  603. package/docs/examples/projects/list-keys.md +0 -2
  604. package/docs/examples/projects/list-platforms.md +0 -2
  605. package/docs/examples/projects/list-webhooks.md +0 -2
  606. package/docs/examples/projects/list.md +0 -3
  607. package/docs/examples/projects/update-api-status-all.md +0 -3
  608. package/docs/examples/projects/update-api-status.md +0 -4
  609. package/docs/examples/projects/update-auth-duration.md +0 -3
  610. package/docs/examples/projects/update-auth-limit.md +0 -3
  611. package/docs/examples/projects/update-auth-password-dictionary.md +0 -3
  612. package/docs/examples/projects/update-auth-password-history.md +0 -3
  613. package/docs/examples/projects/update-auth-sessions-limit.md +0 -3
  614. package/docs/examples/projects/update-auth-status.md +0 -4
  615. package/docs/examples/projects/update-dev-key.md +0 -5
  616. package/docs/examples/projects/update-email-template.md +0 -9
  617. package/docs/examples/projects/update-key.md +0 -6
  618. package/docs/examples/projects/update-memberships-privacy.md +0 -5
  619. package/docs/examples/projects/update-mock-numbers.md +0 -3
  620. package/docs/examples/projects/update-o-auth2.md +0 -6
  621. package/docs/examples/projects/update-personal-data-check.md +0 -3
  622. package/docs/examples/projects/update-platform.md +0 -7
  623. package/docs/examples/projects/update-service-status-all.md +0 -3
  624. package/docs/examples/projects/update-service-status.md +0 -4
  625. package/docs/examples/projects/update-session-alerts.md +0 -3
  626. package/docs/examples/projects/update-sms-template.md +0 -5
  627. package/docs/examples/projects/update-smtp.md +0 -11
  628. package/docs/examples/projects/update-team.md +0 -3
  629. package/docs/examples/projects/update-webhook-signature.md +0 -3
  630. package/docs/examples/projects/update-webhook.md +0 -10
  631. package/docs/examples/projects/update.md +0 -12
  632. package/docs/examples/proxy/create-a-p-i-rule.md +0 -2
  633. package/docs/examples/proxy/create-function-rule.md +0 -4
  634. package/docs/examples/proxy/create-redirect-rule.md +0 -6
  635. package/docs/examples/proxy/create-site-rule.md +0 -4
  636. package/docs/examples/proxy/delete-rule.md +0 -2
  637. package/docs/examples/proxy/get-rule.md +0 -2
  638. package/docs/examples/proxy/list-rules.md +0 -3
  639. package/docs/examples/proxy/update-rule-verification.md +0 -2
  640. package/docs/examples/sites/create-deployment.md +0 -7
  641. package/docs/examples/sites/create-duplicate-deployment.md +0 -3
  642. package/docs/examples/sites/create-template-deployment.md +0 -7
  643. package/docs/examples/sites/create-variable.md +0 -5
  644. package/docs/examples/sites/create-vcs-deployment.md +0 -5
  645. package/docs/examples/sites/create.md +0 -19
  646. package/docs/examples/sites/delete-deployment.md +0 -3
  647. package/docs/examples/sites/delete-log.md +0 -3
  648. package/docs/examples/sites/delete-variable.md +0 -3
  649. package/docs/examples/sites/delete.md +0 -2
  650. package/docs/examples/sites/get-deployment-download.md +0 -4
  651. package/docs/examples/sites/get-deployment.md +0 -3
  652. package/docs/examples/sites/get-log.md +0 -3
  653. package/docs/examples/sites/get-template.md +0 -2
  654. package/docs/examples/sites/get-usage.md +0 -3
  655. package/docs/examples/sites/get-variable.md +0 -3
  656. package/docs/examples/sites/get.md +0 -2
  657. package/docs/examples/sites/list-deployments.md +0 -4
  658. package/docs/examples/sites/list-frameworks.md +0 -1
  659. package/docs/examples/sites/list-logs.md +0 -3
  660. package/docs/examples/sites/list-specifications.md +0 -1
  661. package/docs/examples/sites/list-templates.md +0 -5
  662. package/docs/examples/sites/list-usage.md +0 -2
  663. package/docs/examples/sites/list-variables.md +0 -2
  664. package/docs/examples/sites/list.md +0 -3
  665. package/docs/examples/sites/update-deployment-status.md +0 -3
  666. package/docs/examples/sites/update-site-deployment.md +0 -3
  667. package/docs/examples/sites/update-variable.md +0 -6
  668. package/docs/examples/sites/update.md +0 -19
  669. package/docs/examples/storage/create-bucket.md +0 -11
  670. package/docs/examples/storage/create-file.md +0 -5
  671. package/docs/examples/storage/delete-bucket.md +0 -2
  672. package/docs/examples/storage/delete-file.md +0 -3
  673. package/docs/examples/storage/get-bucket-usage.md +0 -3
  674. package/docs/examples/storage/get-bucket.md +0 -2
  675. package/docs/examples/storage/get-file-download.md +0 -4
  676. package/docs/examples/storage/get-file-preview.md +0 -15
  677. package/docs/examples/storage/get-file-view.md +0 -4
  678. package/docs/examples/storage/get-file.md +0 -3
  679. package/docs/examples/storage/get-usage.md +0 -2
  680. package/docs/examples/storage/list-buckets.md +0 -3
  681. package/docs/examples/storage/list-files.md +0 -4
  682. package/docs/examples/storage/update-bucket.md +0 -11
  683. package/docs/examples/storage/update-file.md +0 -5
  684. package/docs/examples/teams/create-membership.md +0 -8
  685. package/docs/examples/teams/create.md +0 -4
  686. package/docs/examples/teams/delete-membership.md +0 -3
  687. package/docs/examples/teams/delete.md +0 -2
  688. package/docs/examples/teams/get-membership.md +0 -3
  689. package/docs/examples/teams/get-prefs.md +0 -2
  690. package/docs/examples/teams/get.md +0 -2
  691. package/docs/examples/teams/list-logs.md +0 -3
  692. package/docs/examples/teams/list-memberships.md +0 -4
  693. package/docs/examples/teams/list.md +0 -3
  694. package/docs/examples/teams/update-membership-status.md +0 -5
  695. package/docs/examples/teams/update-membership.md +0 -4
  696. package/docs/examples/teams/update-name.md +0 -3
  697. package/docs/examples/teams/update-prefs.md +0 -3
  698. package/docs/examples/tokens/create-file-token.md +0 -4
  699. package/docs/examples/tokens/delete.md +0 -2
  700. package/docs/examples/tokens/get.md +0 -2
  701. package/docs/examples/tokens/list.md +0 -4
  702. package/docs/examples/tokens/update.md +0 -3
  703. package/docs/examples/users/create-argon2user.md +0 -5
  704. package/docs/examples/users/create-bcrypt-user.md +0 -5
  705. package/docs/examples/users/create-j-w-t.md +0 -4
  706. package/docs/examples/users/create-m-d5user.md +0 -5
  707. package/docs/examples/users/create-mfa-recovery-codes.md +0 -2
  708. package/docs/examples/users/create-p-h-pass-user.md +0 -5
  709. package/docs/examples/users/create-s-h-a-user.md +0 -6
  710. package/docs/examples/users/create-scrypt-modified-user.md +0 -8
  711. package/docs/examples/users/create-scrypt-user.md +0 -10
  712. package/docs/examples/users/create-session.md +0 -2
  713. package/docs/examples/users/create-target.md +0 -7
  714. package/docs/examples/users/create-token.md +0 -4
  715. package/docs/examples/users/create.md +0 -6
  716. package/docs/examples/users/delete-identity.md +0 -2
  717. package/docs/examples/users/delete-mfa-authenticator.md +0 -3
  718. package/docs/examples/users/delete-session.md +0 -3
  719. package/docs/examples/users/delete-sessions.md +0 -2
  720. package/docs/examples/users/delete-target.md +0 -3
  721. package/docs/examples/users/delete.md +0 -2
  722. package/docs/examples/users/get-mfa-recovery-codes.md +0 -2
  723. package/docs/examples/users/get-prefs.md +0 -2
  724. package/docs/examples/users/get-target.md +0 -3
  725. package/docs/examples/users/get-usage.md +0 -2
  726. package/docs/examples/users/get.md +0 -2
  727. package/docs/examples/users/list-identities.md +0 -3
  728. package/docs/examples/users/list-logs.md +0 -3
  729. package/docs/examples/users/list-memberships.md +0 -4
  730. package/docs/examples/users/list-mfa-factors.md +0 -2
  731. package/docs/examples/users/list-sessions.md +0 -2
  732. package/docs/examples/users/list-targets.md +0 -3
  733. package/docs/examples/users/list.md +0 -3
  734. package/docs/examples/users/update-email-verification.md +0 -3
  735. package/docs/examples/users/update-email.md +0 -3
  736. package/docs/examples/users/update-labels.md +0 -3
  737. package/docs/examples/users/update-mfa-recovery-codes.md +0 -2
  738. package/docs/examples/users/update-mfa.md +0 -3
  739. package/docs/examples/users/update-name.md +0 -3
  740. package/docs/examples/users/update-password.md +0 -3
  741. package/docs/examples/users/update-phone-verification.md +0 -3
  742. package/docs/examples/users/update-phone.md +0 -3
  743. package/docs/examples/users/update-prefs.md +0 -3
  744. package/docs/examples/users/update-status.md +0 -3
  745. package/docs/examples/users/update-target.md +0 -6
  746. package/docs/examples/vcs/create-repository-detection.md +0 -5
  747. package/docs/examples/vcs/create-repository.md +0 -4
  748. package/docs/examples/vcs/delete-installation.md +0 -2
  749. package/docs/examples/vcs/get-installation.md +0 -2
  750. package/docs/examples/vcs/get-repository-contents.md +0 -5
  751. package/docs/examples/vcs/get-repository.md +0 -3
  752. package/docs/examples/vcs/list-installations.md +0 -3
  753. package/docs/examples/vcs/list-repositories.md +0 -4
  754. package/docs/examples/vcs/list-repository-branches.md +0 -3
  755. package/docs/examples/vcs/update-external-deployments.md +0 -4
  756. package/functions/Starter function/.prettierrc.json +0 -6
  757. package/functions/Starter function/README.md +0 -48
  758. package/functions/Starter function/package-lock.json +0 -60
  759. package/functions/Starter function/package.json +0 -16
  760. package/functions/Starter function/src/main.js +0 -35
  761. package/generate/appwrite.d.ts +0 -18
  762. package/index.js +0 -109
  763. package/lib/client.js +0 -259
  764. package/lib/commands/account.js +0 -2074
  765. package/lib/commands/avatars.js +0 -491
  766. package/lib/commands/console.js +0 -129
  767. package/lib/commands/databases.js +0 -2972
  768. package/lib/commands/functions.js +0 -1737
  769. package/lib/commands/generic.js +0 -328
  770. package/lib/commands/graphql.js +0 -128
  771. package/lib/commands/health.js +0 -891
  772. package/lib/commands/init.js +0 -566
  773. package/lib/commands/locale.js +0 -324
  774. package/lib/commands/messaging.js +0 -2970
  775. package/lib/commands/migrations.js +0 -751
  776. package/lib/commands/organizations.js +0 -48
  777. package/lib/commands/project.js +0 -308
  778. package/lib/commands/projects.js +0 -2615
  779. package/lib/commands/proxy.js +0 -406
  780. package/lib/commands/pull.js +0 -474
  781. package/lib/commands/push.js +0 -2117
  782. package/lib/commands/run.js +0 -330
  783. package/lib/commands/sites.js +0 -1663
  784. package/lib/commands/storage.js +0 -990
  785. package/lib/commands/teams.js +0 -682
  786. package/lib/commands/tokens.js +0 -261
  787. package/lib/commands/types.js +0 -156
  788. package/lib/commands/users.js +0 -2035
  789. package/lib/commands/vcs.js +0 -484
  790. package/lib/config.js +0 -705
  791. package/lib/emulation/docker.js +0 -264
  792. package/lib/emulation/utils.js +0 -186
  793. package/lib/exception.js +0 -9
  794. package/lib/id.js +0 -30
  795. package/lib/paginate.js +0 -52
  796. package/lib/parser.js +0 -246
  797. package/lib/questions.js +0 -1006
  798. package/lib/sdks.js +0 -60
  799. package/lib/spinner.js +0 -104
  800. package/lib/type-generation/attribute.js +0 -16
  801. package/lib/type-generation/languages/dart.js +0 -196
  802. package/lib/type-generation/languages/java.js +0 -130
  803. package/lib/type-generation/languages/javascript.js +0 -102
  804. package/lib/type-generation/languages/kotlin.js +0 -84
  805. package/lib/type-generation/languages/language.js +0 -125
  806. package/lib/type-generation/languages/php.js +0 -109
  807. package/lib/type-generation/languages/swift.js +0 -169
  808. package/lib/type-generation/languages/typescript.js +0 -102
  809. package/lib/utils.js +0 -289
  810. package/lib/validations.js +0 -17
  811. package/scoop/appwrite.json +0 -30
  812. package/sites/JavaScript starter/.env.example +0 -3
  813. package/sites/JavaScript starter/LICENSE +0 -21
  814. package/sites/JavaScript starter/images/appwrite.svg +0 -8
  815. package/sites/JavaScript starter/images/javascript.svg +0 -5
  816. package/sites/JavaScript starter/index.html +0 -250
  817. package/sites/JavaScript starter/lib/appwrite.js +0 -10
  818. package/sites/JavaScript starter/package-lock.json +0 -1431
  819. package/sites/JavaScript starter/package.json +0 -21
  820. package/sites/JavaScript starter/readme.md +0 -26
  821. package/sites/JavaScript starter/src/javascript.svg +0 -1
  822. package/sites/JavaScript starter/style/app.css +0 -20
  823. package/sites/JavaScript starter/vite.config.js +0 -7
@@ -0,0 +1,1167 @@
1
+ import chalk from "chalk";
2
+ import { localConfig, globalConfig } from "./config.js";
3
+ import { sdkForConsole } from "./sdks.js";
4
+ import { validateRequired } from "./validations.js";
5
+ import { paginate } from "./paginate.js";
6
+ import { checkDeployConditions, isCloud } from "./utils.js";
7
+ import { Account, Client } from "@appwrite.io/console";
8
+ import {
9
+ getOrganizationsService,
10
+ getTeamsService,
11
+ getProjectsService,
12
+ getFunctionsService,
13
+ getSitesService,
14
+ getDatabasesService,
15
+ } from "./services.js";
16
+
17
+ interface Answers {
18
+ override?: boolean;
19
+ method?: string;
20
+ start?: string;
21
+ organization?: string;
22
+ [key: string]: any;
23
+ }
24
+
25
+ interface Choice {
26
+ name: string;
27
+ value: any;
28
+ disabled?: boolean | string;
29
+ current?: boolean;
30
+ }
31
+
32
+ interface Question {
33
+ type: string;
34
+ name: string;
35
+ message: string;
36
+ default?: any;
37
+ when?: ((answers: Answers) => boolean | Promise<boolean>) | boolean;
38
+ choices?:
39
+ | ((answers: Answers) => Promise<Choice[]> | Choice[])
40
+ | (() => Promise<Choice[]> | Choice[])
41
+ | Choice[]
42
+ | string[];
43
+ validate?: (value: any) => boolean | string | Promise<boolean | string>;
44
+ mask?: string;
45
+ }
46
+
47
+ const whenOverride = (answers: Answers): boolean =>
48
+ answers.override === undefined ? true : answers.override;
49
+
50
+ const getIgnores = (runtime: string): string[] => {
51
+ const languge = runtime.split("-").slice(0, -1).join("-");
52
+
53
+ switch (languge) {
54
+ case "cpp":
55
+ return ["build", "CMakeFiles", "CMakeCaches.txt"];
56
+ case "dart":
57
+ return [".packages", ".dart_tool"];
58
+ case "deno":
59
+ return [];
60
+ case "dotnet":
61
+ return ["bin", "obj", ".nuget"];
62
+ case "java":
63
+ case "kotlin":
64
+ return ["build"];
65
+ case "node":
66
+ case "bun":
67
+ return ["node_modules", ".npm"];
68
+ case "php":
69
+ return ["vendor"];
70
+ case "python":
71
+ case "python-ml":
72
+ return ["__pypackages__"];
73
+ case "ruby":
74
+ return ["vendor"];
75
+ case "rust":
76
+ return ["target", "debug", "*.rs.bk", "*.pdb"];
77
+ case "swift":
78
+ return [".build", ".swiftpm"];
79
+ }
80
+
81
+ return [];
82
+ };
83
+
84
+ const getEntrypoint = (runtime: string): string | undefined => {
85
+ const languge = runtime.split("-").slice(0, -1).join("-");
86
+
87
+ switch (languge) {
88
+ case "dart":
89
+ return "lib/main.dart";
90
+ case "deno":
91
+ return "src/main.ts";
92
+ case "node":
93
+ return "src/main.js";
94
+ case "bun":
95
+ return "src/main.ts";
96
+ case "php":
97
+ return "src/index.php";
98
+ case "python":
99
+ case "python-ml":
100
+ return "src/main.py";
101
+ case "ruby":
102
+ return "lib/main.rb";
103
+ case "rust":
104
+ return "main.rs";
105
+ case "swift":
106
+ return "Sources/index.swift";
107
+ case "cpp":
108
+ return "src/main.cc";
109
+ case "dotnet":
110
+ return "src/Index.cs";
111
+ case "java":
112
+ return "src/Main.java";
113
+ case "kotlin":
114
+ return "src/Main.kt";
115
+ case "go":
116
+ return "main.go";
117
+ }
118
+
119
+ return undefined;
120
+ };
121
+
122
+ const getInstallCommand = (runtime: string): string | undefined => {
123
+ const languge = runtime.split("-").slice(0, -1).join("-");
124
+
125
+ switch (languge) {
126
+ case "dart":
127
+ return "dart pub get";
128
+ case "deno":
129
+ return "deno cache src/main.ts";
130
+ case "node":
131
+ return "npm install";
132
+ case "bun":
133
+ return "bun install";
134
+ case "php":
135
+ return "composer install";
136
+ case "python":
137
+ case "python-ml":
138
+ return "pip install -r requirements.txt";
139
+ case "ruby":
140
+ return "bundle install";
141
+ case "rust":
142
+ return "cargo install";
143
+ case "dotnet":
144
+ return "dotnet restore";
145
+ case "swift":
146
+ case "java":
147
+ case "kotlin":
148
+ case "cpp":
149
+ return "";
150
+ }
151
+
152
+ return undefined;
153
+ };
154
+
155
+ export const questionsInitProject: Question[] = [
156
+ {
157
+ type: "confirm",
158
+ name: "override",
159
+ message: `An Appwrite project ( ${localConfig.getProject()["projectId"]} ) is already associated with the current directory. Would you like to override`,
160
+ when() {
161
+ return Object.keys(localConfig.getProject()).length !== 0;
162
+ },
163
+ },
164
+ {
165
+ type: "list",
166
+ name: "start",
167
+ when: whenOverride,
168
+ message: "How would you like to start?",
169
+ choices: [
170
+ {
171
+ name: "Create new project",
172
+ value: "new",
173
+ },
174
+ {
175
+ name: "Link directory to an existing project",
176
+ value: "existing",
177
+ },
178
+ ],
179
+ },
180
+ {
181
+ type: "search-list",
182
+ name: "organization",
183
+ message: "Choose your organization",
184
+ choices: async () => {
185
+ let client = await sdkForConsole(true);
186
+ const { teams } = isCloud()
187
+ ? await paginate(
188
+ async (opts: { sdk?: Client } = {}) =>
189
+ (await getOrganizationsService(opts.sdk)).list(),
190
+ { sdk: client },
191
+ 100,
192
+ "teams",
193
+ )
194
+ : await paginate(
195
+ async (opts: { sdk?: Client } = {}) =>
196
+ (await getTeamsService(opts.sdk)).list(),
197
+ { parseOutput: false, sdk: client },
198
+ 100,
199
+ "teams",
200
+ );
201
+
202
+ let choices = teams.map((team: any, idx: number) => {
203
+ return {
204
+ name: `${team.name} (${team["$id"]})`,
205
+ value: team["$id"],
206
+ };
207
+ });
208
+
209
+ if (choices.length == 0) {
210
+ throw new Error(
211
+ `No organizations found. Please create a new organization at ${globalConfig.getEndpoint().replace("/v1", "/console/onboarding")}`,
212
+ );
213
+ }
214
+
215
+ return choices;
216
+ },
217
+ when: whenOverride,
218
+ },
219
+ {
220
+ type: "input",
221
+ name: "project",
222
+ message: "What would you like to name your project?",
223
+ default: "My Awesome Project",
224
+ when: (answer: Answers) => answer.start !== "existing",
225
+ },
226
+ {
227
+ type: "input",
228
+ name: "id",
229
+ message: "What ID would you like to have for your project?",
230
+ default: "unique()",
231
+ when: (answer: Answers) => answer.start !== "existing",
232
+ },
233
+ {
234
+ type: "search-list",
235
+ name: "project",
236
+ message: "Choose your Appwrite project.",
237
+ choices: async (answers: Answers) => {
238
+ const queries = [
239
+ JSON.stringify({
240
+ method: "equal",
241
+ attribute: "teamId",
242
+ values: [answers.organization],
243
+ }),
244
+ JSON.stringify({ method: "orderDesc", attribute: "$id" }),
245
+ ];
246
+
247
+ const { projects } = await paginate(
248
+ async () => (await getProjectsService()).list(queries),
249
+ { parseOutput: false },
250
+ 100,
251
+ "projects",
252
+ queries,
253
+ );
254
+
255
+ let choices = projects.map((project: any) => {
256
+ return {
257
+ name: `${project.name} (${project["$id"]})`,
258
+ value: {
259
+ $id: project["$id"],
260
+ region: project.region || "",
261
+ },
262
+ };
263
+ });
264
+
265
+ if (choices.length === 0) {
266
+ throw new Error("No projects found. Please create a new project.");
267
+ }
268
+
269
+ return choices;
270
+ },
271
+ when: (answer: Answers) => answer.start === "existing",
272
+ },
273
+ {
274
+ type: "list",
275
+ name: "region",
276
+ message: "Select your Appwrite Cloud region",
277
+ choices: async () => {
278
+ let client = await sdkForConsole(true);
279
+ const endpoint =
280
+ globalConfig.getEndpoint() || "https://cloud.appwrite.io/v1";
281
+ let response = (await client.call(
282
+ "GET",
283
+ new URL(endpoint + "/console/regions"),
284
+ )) as { regions: any[] };
285
+ let regions = response.regions || [];
286
+ if (!regions.length) {
287
+ throw new Error(
288
+ "No regions found. Please check your network or Appwrite Cloud availability.",
289
+ );
290
+ }
291
+ return regions
292
+ .filter((region: any) => !region.disabled)
293
+ .map((region: any) => ({
294
+ name: `${region.name} (${region.$id})`,
295
+ value: region.$id,
296
+ }));
297
+ },
298
+ when: (answer: Answers) => {
299
+ if (answer.start === "existing") return false;
300
+ return isCloud();
301
+ },
302
+ },
303
+ ];
304
+
305
+ export const questionsInitProjectAutopull: Question[] = [
306
+ {
307
+ type: "confirm",
308
+ name: "autopull",
309
+ message: `Would you like to pull all resources from project you just linked?`,
310
+ },
311
+ ];
312
+
313
+ export const questionsPullResources: Question[] = [
314
+ {
315
+ type: "list",
316
+ name: "resource",
317
+ message: "Which resources would you like to pull?",
318
+ choices: [
319
+ { name: `Settings ${chalk.blackBright(`(Project)`)}`, value: "settings" },
320
+ {
321
+ name: `Functions ${chalk.blackBright(`(Deployment)`)}`,
322
+ value: "functions",
323
+ },
324
+ { name: `Tables ${chalk.blackBright(`(TablesDB)`)}`, value: "tables" },
325
+ { name: `Buckets ${chalk.blackBright(`(Storage)`)}`, value: "buckets" },
326
+ { name: `Teams ${chalk.blackBright(`(Auth)`)}`, value: "teams" },
327
+ { name: `Topics ${chalk.blackBright(`(Messaging)`)}`, value: "messages" },
328
+ {
329
+ name: `Collections ${chalk.blackBright(`(Legacy Databases)`)}`,
330
+ value: "collections",
331
+ },
332
+ ],
333
+ },
334
+ ];
335
+
336
+ export const questionsPullFunctions: Question[] = [
337
+ {
338
+ type: "checkbox",
339
+ name: "functions",
340
+ message: "Which functions would you like to pull?",
341
+ validate: (value: any) => validateRequired("function", value),
342
+ choices: async () => {
343
+ const { functions } = await paginate(
344
+ async () => (await getFunctionsService()).list(),
345
+ { parseOutput: false },
346
+ 100,
347
+ "functions",
348
+ );
349
+
350
+ if (functions.length === 0) {
351
+ throw "We couldn't find any functions in your Appwrite project";
352
+ }
353
+ return functions.map((func: any) => {
354
+ return {
355
+ name: `${func.name} (${func.$id})`,
356
+ value: { ...func },
357
+ };
358
+ });
359
+ },
360
+ },
361
+ ];
362
+
363
+ export const questionsPullFunctionsCode: Question[] = [
364
+ {
365
+ type: "confirm",
366
+ name: "override",
367
+ message: "Do you want to pull source code of the latest deployment?",
368
+ },
369
+ ];
370
+
371
+ export const questionsPullSites: Question[] = [
372
+ {
373
+ type: "checkbox",
374
+ name: "sites",
375
+ message: "Which sites would you like to pull?",
376
+ validate: (value: any) => validateRequired("site", value),
377
+ choices: async () => {
378
+ const { sites } = await paginate(
379
+ async () => (await getSitesService()).list(),
380
+ { parseOutput: false },
381
+ 100,
382
+ "sites",
383
+ );
384
+
385
+ if (sites.length === 0) {
386
+ throw "We couldn't find any sites in your Appwrite project";
387
+ }
388
+ return sites.map((site: any) => {
389
+ return {
390
+ name: `${site.name} (${site.$id})`,
391
+ value: { ...site },
392
+ };
393
+ });
394
+ },
395
+ },
396
+ ];
397
+
398
+ export const questionsPullSitesCode: Question[] = [
399
+ {
400
+ type: "confirm",
401
+ name: "override",
402
+ message: "Do you want to pull source code of the latest deployment?",
403
+ },
404
+ ];
405
+
406
+ export const questionsCreateFunction: Question[] = [
407
+ {
408
+ type: "input",
409
+ name: "name",
410
+ message: "What would you like to name your function?",
411
+ default: "My Awesome Function",
412
+ },
413
+ {
414
+ type: "input",
415
+ name: "id",
416
+ message: "What ID would you like to have for your function?",
417
+ default: "unique()",
418
+ },
419
+ {
420
+ type: "list",
421
+ name: "runtime",
422
+ message: "What runtime would you like to use?",
423
+ choices: async () => {
424
+ let response = await (await getFunctionsService()).listRuntimes();
425
+ let runtimes = response["runtimes"];
426
+ let choices = runtimes.map((runtime: any, idx: number) => {
427
+ return {
428
+ name: `${runtime.name} (${runtime["$id"]})`,
429
+ value: {
430
+ id: runtime["$id"],
431
+ name: runtime["$id"].split("-")[0],
432
+ entrypoint: getEntrypoint(runtime["$id"]),
433
+ ignore: getIgnores(runtime["$id"]),
434
+ commands: getInstallCommand(runtime["$id"]),
435
+ },
436
+ };
437
+ });
438
+ return choices;
439
+ },
440
+ },
441
+ {
442
+ type: "list",
443
+ name: "specification",
444
+ message: "What specification would you like to use?",
445
+ choices: async () => {
446
+ let response = await (await getFunctionsService()).listSpecifications();
447
+ let specifications = response["specifications"];
448
+ let choices = specifications.map((spec: any, idx: number) => {
449
+ return {
450
+ name: `${spec.cpus} CPU, ${spec.memory}MB RAM`,
451
+ value: spec.slug,
452
+ disabled: spec.enabled === false ? "Upgrade to use" : false,
453
+ };
454
+ });
455
+ return choices;
456
+ },
457
+ },
458
+ ];
459
+
460
+ export const questionsCreateFunctionSelectTemplate = (
461
+ templates: string[],
462
+ ): Question[] => {
463
+ return [
464
+ {
465
+ type: "search-list",
466
+ name: "template",
467
+ message: "What template would you like to use?",
468
+ choices: templates.map((template) => {
469
+ const name =
470
+ `${template[0].toUpperCase()}${template.split("").slice(1).join("")}`.replace(
471
+ /[-_]/g,
472
+ " ",
473
+ );
474
+
475
+ return { value: template, name };
476
+ }),
477
+ },
478
+ ];
479
+ };
480
+
481
+ export const questionsCreateBucket: Question[] = [
482
+ {
483
+ type: "input",
484
+ name: "bucket",
485
+ message: "What would you like to name your bucket?",
486
+ default: "My Awesome Bucket",
487
+ },
488
+ {
489
+ type: "input",
490
+ name: "id",
491
+ message: "What ID would you like to have for your bucket?",
492
+ default: "unique()",
493
+ },
494
+ {
495
+ type: "list",
496
+ name: "fileSecurity",
497
+ message: "Enable File-Security configuring permissions for individual file",
498
+ choices: ["No", "Yes"],
499
+ },
500
+ ];
501
+
502
+ export const questionsCreateTeam: Question[] = [
503
+ {
504
+ type: "input",
505
+ name: "bucket",
506
+ message: "What would you like to name your team?",
507
+ default: "My Awesome Team",
508
+ },
509
+ {
510
+ type: "input",
511
+ name: "id",
512
+ message: "What ID would you like to have for your team?",
513
+ default: "unique()",
514
+ },
515
+ ];
516
+
517
+ export const questionsCreateCollection: Question[] = [
518
+ {
519
+ type: "list",
520
+ name: "method",
521
+ message: "What database would you like to use for your collection",
522
+ choices: ["New", "Existing"],
523
+ when: async () => {
524
+ return localConfig.getDatabases().length !== 0;
525
+ },
526
+ },
527
+ {
528
+ type: "search-list",
529
+ name: "database",
530
+ message: "Choose the collection database",
531
+ choices: async () => {
532
+ const databases = localConfig.getDatabases();
533
+
534
+ let choices = databases.map((database: any, idx: number) => {
535
+ return {
536
+ name: `${database.name} (${database.$id})`,
537
+ value: database.$id,
538
+ };
539
+ });
540
+
541
+ if (choices.length === 0) {
542
+ throw new Error(
543
+ "No databases found. Please create one in project console.",
544
+ );
545
+ }
546
+
547
+ return choices;
548
+ },
549
+ when: (answers: Answers) =>
550
+ (answers.method ?? "").toLowerCase() === "existing",
551
+ },
552
+ {
553
+ type: "input",
554
+ name: "databaseName",
555
+ message: "What would you like to name your database?",
556
+ default: "My Awesome Database",
557
+ when: (answers: Answers) =>
558
+ (answers.method ?? "").toLowerCase() !== "existing",
559
+ },
560
+ {
561
+ type: "input",
562
+ name: "databaseId",
563
+ message: "What ID would you like to have for your database?",
564
+ default: "unique()",
565
+ when: (answers: Answers) =>
566
+ (answers.method ?? "").toLowerCase() !== "existing",
567
+ },
568
+ {
569
+ type: "input",
570
+ name: "collection",
571
+ message: "What would you like to name your collection?",
572
+ default: "My Awesome Collection",
573
+ },
574
+ {
575
+ type: "input",
576
+ name: "id",
577
+ message: "What ID would you like to have for your collection?",
578
+ default: "unique()",
579
+ },
580
+ {
581
+ type: "list",
582
+ name: "documentSecurity",
583
+ message:
584
+ "Enable document security for configuring permissions for individual documents",
585
+ choices: ["No", "Yes"],
586
+ },
587
+ ];
588
+
589
+ export const questionsCreateTable: Question[] = [
590
+ {
591
+ type: "list",
592
+ name: "method",
593
+ message: "What database would you like to use for your table?",
594
+ choices: ["New", "Existing"],
595
+ when: async () => {
596
+ return localConfig.getTablesDBs().length !== 0;
597
+ },
598
+ },
599
+ {
600
+ type: "search-list",
601
+ name: "database",
602
+ message: "Choose the table database",
603
+ choices: async () => {
604
+ const databases = localConfig.getTablesDBs();
605
+
606
+ let choices = databases.map((database: any, idx: number) => {
607
+ return {
608
+ name: `${database.name} (${database.$id})`,
609
+ value: database.$id,
610
+ };
611
+ });
612
+
613
+ if (choices.length === 0) {
614
+ throw new Error(
615
+ "No databases found. Please create one in project console.",
616
+ );
617
+ }
618
+
619
+ return choices;
620
+ },
621
+ when: (answers: Answers) =>
622
+ (answers.method ?? "").toLowerCase() === "existing",
623
+ },
624
+ {
625
+ type: "input",
626
+ name: "databaseName",
627
+ message: "What would you like to name your database?",
628
+ default: "My Awesome Database",
629
+ when: (answers: Answers) =>
630
+ (answers.method ?? "").toLowerCase() !== "existing",
631
+ },
632
+ {
633
+ type: "input",
634
+ name: "databaseId",
635
+ message: "What ID would you like to have for your database?",
636
+ default: "unique()",
637
+ when: (answers: Answers) =>
638
+ (answers.method ?? "").toLowerCase() !== "existing",
639
+ },
640
+ {
641
+ type: "input",
642
+ name: "table",
643
+ message: "What would you like to name your table?",
644
+ default: "My Awesome Table",
645
+ },
646
+ {
647
+ type: "input",
648
+ name: "id",
649
+ message: "What ID would you like to have for your table?",
650
+ default: "unique()",
651
+ },
652
+ {
653
+ type: "list",
654
+ name: "rowSecurity",
655
+ message:
656
+ "Enable row security for configuring permissions for individual rows",
657
+ choices: ["No", "Yes"],
658
+ },
659
+ ];
660
+
661
+ export const questionsCreateMessagingTopic: Question[] = [
662
+ {
663
+ type: "input",
664
+ name: "topic",
665
+ message: "What would you like to name your messaging topic?",
666
+ default: "My Awesome Topic",
667
+ },
668
+ {
669
+ type: "input",
670
+ name: "id",
671
+ message: "What ID would you like to have for your messaging topic?",
672
+ default: "unique()",
673
+ },
674
+ ];
675
+
676
+ export const questionsPullCollection: Question[] = [
677
+ {
678
+ type: "checkbox",
679
+ name: "databases",
680
+ message: "From which database would you like to pull collections?",
681
+ validate: (value: any) => validateRequired("collection", value),
682
+ choices: async () => {
683
+ let response = await (await getDatabasesService()).list();
684
+ let databases = response["databases"];
685
+
686
+ if (databases.length <= 0) {
687
+ throw new Error(
688
+ "No databases found. Please create one in project console.",
689
+ );
690
+ }
691
+ let choices = databases.map((database: any, idx: number) => {
692
+ return {
693
+ name: `${database.name} (${database.$id})`,
694
+ value: database.$id,
695
+ };
696
+ });
697
+ return choices;
698
+ },
699
+ },
700
+ ];
701
+
702
+ export const questionsLogin: Question[] = [
703
+ {
704
+ type: "list",
705
+ name: "method",
706
+ message: "What you like to do?",
707
+ choices: [
708
+ { name: "Login to an account", value: "login" },
709
+ { name: "Switch to an account", value: "select" },
710
+ ],
711
+ when: () => globalConfig.getSessions().length >= 2,
712
+ },
713
+ {
714
+ type: "input",
715
+ name: "email",
716
+ message: "Enter your email",
717
+ validate(value: string) {
718
+ if (!value) {
719
+ return "Please enter your email";
720
+ }
721
+ return true;
722
+ },
723
+ when: (answers: Answers) => answers.method !== "select",
724
+ },
725
+ {
726
+ type: "password",
727
+ name: "password",
728
+ message: "Enter your password",
729
+ mask: "*",
730
+ validate(value: string) {
731
+ if (!value) {
732
+ return "Please enter your password";
733
+ }
734
+ return true;
735
+ },
736
+ when: (answers: Answers) => answers.method !== "select",
737
+ },
738
+ {
739
+ type: "search-list",
740
+ name: "accountId",
741
+ message: "Select an account to use",
742
+ choices() {
743
+ const sessions = globalConfig.getSessions();
744
+ const current = globalConfig.getCurrentSession();
745
+
746
+ const data: Choice[] = [];
747
+
748
+ const longestEmail = sessions.reduce((prev: any, current: any) =>
749
+ prev && (prev.email ?? "").length > (current.email ?? "").length
750
+ ? prev
751
+ : current,
752
+ ).email.length;
753
+
754
+ sessions.forEach((session: any) => {
755
+ if (session.email) {
756
+ data.push({
757
+ current: current === session.id,
758
+ value: session.id,
759
+ name: `${session.email.padEnd(longestEmail)} ${current === session.id ? chalk.green.bold("current") : " ".repeat(6)} ${session.endpoint}`,
760
+ });
761
+ }
762
+ });
763
+
764
+ return data.sort((a, b) => Number(b.current) - Number(a.current));
765
+ },
766
+ when: (answers: Answers) => answers.method === "select",
767
+ },
768
+ ];
769
+
770
+ export const questionGetEndpoint: Question[] = [
771
+ {
772
+ type: "input",
773
+ name: "endpoint",
774
+ message: "Enter the endpoint of your Appwrite server",
775
+ default: "http://localhost/v1",
776
+ async validate(value: string) {
777
+ if (!value) {
778
+ return "Please enter a valid endpoint.";
779
+ }
780
+ let client = new Client().setEndpoint(value);
781
+ try {
782
+ let response = (await client.call(
783
+ "get",
784
+ new URL(value + "/health/version"),
785
+ )) as { version?: string };
786
+ if (response.version) {
787
+ return true;
788
+ } else {
789
+ throw new Error();
790
+ }
791
+ } catch (error) {
792
+ return "Invalid endpoint or your Appwrite server is not running as expected.";
793
+ }
794
+ },
795
+ },
796
+ ];
797
+
798
+ export const questionsLogout: Question[] = [
799
+ {
800
+ type: "checkbox",
801
+ name: "accounts",
802
+ message: "Select accounts to logout from",
803
+ validate: (value: any) => validateRequired("account", value),
804
+ choices() {
805
+ const sessions = globalConfig.getSessions();
806
+ const current = globalConfig.getCurrentSession();
807
+
808
+ const data: Choice[] = [];
809
+
810
+ const longestEmail = sessions.reduce((prev: any, current: any) =>
811
+ prev && (prev.email ?? "").length > (current.email ?? "").length
812
+ ? prev
813
+ : current,
814
+ ).email.length;
815
+
816
+ sessions.forEach((session: any) => {
817
+ if (session.email) {
818
+ data.push({
819
+ current: current === session.id,
820
+ value: session.id,
821
+ name: `${session.email.padEnd(longestEmail)} ${current === session.id ? chalk.green.bold("current") : " ".repeat(6)} ${session.endpoint}`,
822
+ });
823
+ }
824
+ });
825
+
826
+ return data.sort((a, b) => Number(b.current) - Number(a.current));
827
+ },
828
+ },
829
+ ];
830
+
831
+ export const questionsPushResources: Question[] = [
832
+ {
833
+ type: "list",
834
+ name: "resource",
835
+ message: "Which resources would you like to push?",
836
+ choices: [
837
+ { name: `Settings ${chalk.blackBright(`(Project)`)}`, value: "settings" },
838
+ {
839
+ name: `Functions ${chalk.blackBright(`(Deployment)`)}`,
840
+ value: "functions",
841
+ },
842
+ { name: `Tables ${chalk.blackBright(`(TablesDB)`)}`, value: "tables" },
843
+ { name: `Buckets ${chalk.blackBright(`(Storage)`)}`, value: "buckets" },
844
+ { name: `Teams ${chalk.blackBright(`(Auth)`)}`, value: "teams" },
845
+ { name: `Topics ${chalk.blackBright(`(Messaging)`)}`, value: "messages" },
846
+ {
847
+ name: `Collections ${chalk.blackBright(`(Legacy Databases)`)}`,
848
+ value: "collections",
849
+ },
850
+ ],
851
+ },
852
+ ];
853
+
854
+ export const questionsInitResources: Question[] = [
855
+ {
856
+ type: "list",
857
+ name: "resource",
858
+ message: "Which resource would you create?",
859
+ choices: [
860
+ { name: "Function", value: "function" },
861
+ { name: "Site", value: "site" },
862
+ { name: "Table", value: "table" },
863
+ { name: "Bucket", value: "bucket" },
864
+ { name: "Team", value: "team" },
865
+ { name: "Topic", value: "message" },
866
+ { name: "Collection", value: "collection" },
867
+ ],
868
+ },
869
+ ];
870
+
871
+ export const questionsPushSites: Question[] = [
872
+ {
873
+ type: "checkbox",
874
+ name: "sites",
875
+ message: "Which sites would you like to push?",
876
+ validate: (value: any) => validateRequired("site", value),
877
+ when: () => localConfig.getSites().length > 0,
878
+ choices: () => {
879
+ let sites = localConfig.getSites();
880
+ checkDeployConditions(localConfig);
881
+ let choices = sites.map((site: any, idx: number) => {
882
+ return {
883
+ name: `${site.name} (${site.$id})`,
884
+ value: site.$id,
885
+ };
886
+ });
887
+ return choices;
888
+ },
889
+ },
890
+ ];
891
+
892
+ export const questionsPushFunctions: Question[] = [
893
+ {
894
+ type: "checkbox",
895
+ name: "functions",
896
+ message: "Which functions would you like to push?",
897
+ validate: (value: any) => validateRequired("function", value),
898
+ when: () => localConfig.getFunctions().length > 0,
899
+ choices: () => {
900
+ let functions = localConfig.getFunctions();
901
+ checkDeployConditions(localConfig);
902
+ let choices = functions.map((func: any, idx: number) => {
903
+ return {
904
+ name: `${func.name} (${func.$id})`,
905
+ value: func.$id,
906
+ };
907
+ });
908
+ return choices;
909
+ },
910
+ },
911
+ ];
912
+
913
+ export const questionsPushCollections: Question[] = [
914
+ {
915
+ type: "checkbox",
916
+ name: "collections",
917
+ message: "Which collections would you like to push?",
918
+ validate: (value: any) => validateRequired("collection", value),
919
+ when: () => localConfig.getCollections().length > 0,
920
+ choices: () => {
921
+ let collections = localConfig.getCollections();
922
+ checkDeployConditions(localConfig);
923
+
924
+ return collections.map((collection: any) => {
925
+ return {
926
+ name: `${collection.name} (${collection["databaseId"]} - ${collection["$id"]})`,
927
+ value: `${collection["databaseId"]}|${collection["$id"]}`,
928
+ };
929
+ });
930
+ },
931
+ },
932
+ ];
933
+
934
+ export const questionsPushTables: Question[] = [
935
+ {
936
+ type: "checkbox",
937
+ name: "tables",
938
+ message: "Which tables would you like to push?",
939
+ validate: (value: any) => validateRequired("table", value),
940
+ when: () => localConfig.getTables().length > 0,
941
+ choices: () => {
942
+ let tables = localConfig.getTables();
943
+ checkDeployConditions(localConfig);
944
+
945
+ return tables.map((table: any) => {
946
+ return {
947
+ name: `${table.name} (${table["databaseId"]} - ${table["$id"]})`,
948
+ value: `${table["databaseId"]}|${table["$id"]}`,
949
+ };
950
+ });
951
+ },
952
+ },
953
+ ];
954
+
955
+ export const questionPushChanges: Question[] = [
956
+ {
957
+ type: "input",
958
+ name: "changes",
959
+ message: `Are you sure you want to apply these changes? (YES/NO)`,
960
+ },
961
+ ];
962
+
963
+ export const questionPushChangesConfirmation: Question[] = [
964
+ {
965
+ type: "input",
966
+ name: "changes",
967
+ message: `Please type 'YES' or 'NO':`,
968
+ },
969
+ ];
970
+
971
+ export const questionsPushBuckets: Question[] = [
972
+ {
973
+ type: "checkbox",
974
+ name: "buckets",
975
+ message: "Which buckets would you like to push?",
976
+ validate: (value: any) => validateRequired("bucket", value),
977
+ when: () => localConfig.getBuckets().length > 0,
978
+ choices: () => {
979
+ let buckets = localConfig.getBuckets();
980
+ checkDeployConditions(localConfig);
981
+
982
+ return buckets.map((bucket: any) => {
983
+ return {
984
+ name: `${bucket.name} (${bucket["$id"]})`,
985
+ value: bucket.$id,
986
+ };
987
+ });
988
+ },
989
+ },
990
+ ];
991
+
992
+ export const questionsPushMessagingTopics: Question[] = [
993
+ {
994
+ type: "checkbox",
995
+ name: "topics",
996
+ message: "Which messaging topic would you like to push?",
997
+ validate: (value: any) => validateRequired("topics", value),
998
+ when: () => localConfig.getMessagingTopics().length > 0,
999
+ choices: () => {
1000
+ let topics = localConfig.getMessagingTopics();
1001
+
1002
+ return topics.map((topic: any) => {
1003
+ return {
1004
+ name: `${topic.name} (${topic["$id"]})`,
1005
+ value: topic.$id,
1006
+ };
1007
+ });
1008
+ },
1009
+ },
1010
+ ];
1011
+
1012
+ export const questionsGetEntrypoint: Question[] = [
1013
+ {
1014
+ type: "input",
1015
+ name: "entrypoint",
1016
+ message: "Enter the entrypoint",
1017
+ default: null,
1018
+ validate(value: string) {
1019
+ if (!value) {
1020
+ return "Please enter your entrypoint";
1021
+ }
1022
+ return true;
1023
+ },
1024
+ },
1025
+ ];
1026
+
1027
+ export const questionsPushTeams: Question[] = [
1028
+ {
1029
+ type: "checkbox",
1030
+ name: "teams",
1031
+ message: "Which teams would you like to push?",
1032
+ validate: (value: any) => validateRequired("team", value),
1033
+ when: () => localConfig.getTeams().length > 0,
1034
+ choices: () => {
1035
+ let teams = localConfig.getTeams();
1036
+ checkDeployConditions(localConfig);
1037
+
1038
+ return teams.map((team: any) => {
1039
+ return {
1040
+ name: `${team.name} (${team["$id"]})`,
1041
+ value: team.$id,
1042
+ };
1043
+ });
1044
+ },
1045
+ },
1046
+ ];
1047
+
1048
+ export const questionsListFactors: Question[] = [
1049
+ {
1050
+ type: "list",
1051
+ name: "factor",
1052
+ message:
1053
+ "Your account is protected by multi-factor authentication. Please choose one for verification.",
1054
+ choices: async () => {
1055
+ let client = await sdkForConsole(false);
1056
+ const accountClient = new Account(client);
1057
+ const factors = await accountClient.listMfaFactors();
1058
+
1059
+ const choices = [
1060
+ {
1061
+ name: `Authenticator app (Get a code from a third-party authenticator app)`,
1062
+ value: "totp",
1063
+ },
1064
+ {
1065
+ name: `Email (Get a security code at your Appwrite email address)`,
1066
+ value: "email",
1067
+ },
1068
+ {
1069
+ name: `SMS (Get a security code on your Appwrite phone number)`,
1070
+ value: "phone",
1071
+ },
1072
+ {
1073
+ name: `Recovery code (Use one of your recovery codes for verification)`,
1074
+ value: "recoveryCode",
1075
+ },
1076
+ ].filter((ch) => factors[ch.value] === true);
1077
+
1078
+ return choices;
1079
+ },
1080
+ },
1081
+ ];
1082
+
1083
+ export const questionsMFAChallenge: Question[] = [
1084
+ {
1085
+ type: "input",
1086
+ name: "otp",
1087
+ message: "Enter OTP",
1088
+ validate(value: string) {
1089
+ if (!value) {
1090
+ return "Please enter OTP";
1091
+ }
1092
+ return true;
1093
+ },
1094
+ },
1095
+ ];
1096
+
1097
+ export const questionsRunFunctions: Question[] = [
1098
+ {
1099
+ type: "list",
1100
+ name: "function",
1101
+ message: "Which function would you like to develop locally?",
1102
+ validate: (value: any) => validateRequired("function", value),
1103
+ choices: () => {
1104
+ let functions = localConfig.getFunctions();
1105
+ if (functions.length === 0) {
1106
+ throw new Error(
1107
+ "No functions found. Use 'appwrite pull functions' to synchronize existing one, or use 'appwrite init function' to create a new one.",
1108
+ );
1109
+ }
1110
+ let choices = functions.map((func: any, idx: number) => {
1111
+ return {
1112
+ name: `${func.name} (${func.$id})`,
1113
+ value: func.$id,
1114
+ };
1115
+ });
1116
+ return choices;
1117
+ },
1118
+ },
1119
+ ];
1120
+
1121
+ export const questionsCreateSite: Question[] = [
1122
+ {
1123
+ type: "input",
1124
+ name: "name",
1125
+ message: "What would you like to name your site?",
1126
+ default: "My Awesome Site",
1127
+ },
1128
+ {
1129
+ type: "input",
1130
+ name: "id",
1131
+ message: "What ID would you like to have for your site?",
1132
+ default: "unique()",
1133
+ },
1134
+ {
1135
+ type: "list",
1136
+ name: "framework",
1137
+ message: "What framework would you like to use?",
1138
+ choices: async () => {
1139
+ let response = await (await getSitesService()).listFrameworks();
1140
+ let frameworks = response["frameworks"];
1141
+ let choices = frameworks.map((framework: any) => {
1142
+ return {
1143
+ name: `${framework.name} (${framework.key})`,
1144
+ value: framework,
1145
+ };
1146
+ });
1147
+ return choices;
1148
+ },
1149
+ },
1150
+ {
1151
+ type: "list",
1152
+ name: "specification",
1153
+ message: "What specification would you like to use?",
1154
+ choices: async () => {
1155
+ let response = await (await getSitesService()).listSpecifications();
1156
+ let specifications = response["specifications"];
1157
+ let choices = specifications.map((spec: any) => {
1158
+ return {
1159
+ name: `${spec.cpus} CPU, ${spec.memory}MB RAM`,
1160
+ value: spec.slug,
1161
+ disabled: spec.enabled === false ? "Upgrade to use" : false,
1162
+ };
1163
+ });
1164
+ return choices;
1165
+ },
1166
+ },
1167
+ ];