appwrite-cli 12.0.1 → 13.0.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (801) hide show
  1. package/.github/workflows/build-verify.yml +71 -0
  2. package/.github/workflows/npm-publish.yml +41 -22
  3. package/CHANGELOG.md +108 -100
  4. package/LICENSE.md +1 -1
  5. package/README.md +58 -35
  6. package/bun.lock +625 -0
  7. package/dist/bundle.cjs +94853 -0
  8. package/dist/index.d.ts +3 -0
  9. package/dist/index.d.ts.map +1 -0
  10. package/dist/index.js +145 -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/generic.d.ts +17 -0
  17. package/dist/lib/commands/generic.d.ts.map +1 -0
  18. package/dist/lib/commands/generic.js +292 -0
  19. package/dist/lib/commands/generic.js.map +1 -0
  20. package/dist/lib/commands/init.d.ts +3 -0
  21. package/dist/lib/commands/init.d.ts.map +1 -0
  22. package/{lib → dist/lib}/commands/init.js +186 -270
  23. package/dist/lib/commands/init.js.map +1 -0
  24. package/dist/lib/commands/pull.d.ts +8 -0
  25. package/dist/lib/commands/pull.d.ts.map +1 -0
  26. package/{lib → dist/lib}/commands/pull.js +159 -280
  27. package/dist/lib/commands/pull.js.map +1 -0
  28. package/dist/lib/commands/push.d.ts +4 -0
  29. package/dist/lib/commands/push.d.ts.map +1 -0
  30. package/dist/lib/commands/push.js +2127 -0
  31. package/dist/lib/commands/push.js.map +1 -0
  32. package/dist/lib/commands/run.d.ts +3 -0
  33. package/dist/lib/commands/run.d.ts.map +1 -0
  34. package/{lib → dist/lib}/commands/run.js +146 -187
  35. package/dist/lib/commands/run.js.map +1 -0
  36. package/dist/lib/commands/services/account.d.ts +3 -0
  37. package/dist/lib/commands/services/account.d.ts.map +1 -0
  38. package/dist/lib/commands/services/account.js +306 -0
  39. package/dist/lib/commands/services/account.js.map +1 -0
  40. package/dist/lib/commands/services/avatars.d.ts +3 -0
  41. package/dist/lib/commands/services/avatars.d.ts.map +1 -0
  42. package/dist/lib/commands/services/avatars.js +118 -0
  43. package/dist/lib/commands/services/avatars.js.map +1 -0
  44. package/dist/lib/commands/services/console.d.ts +3 -0
  45. package/dist/lib/commands/services/console.d.ts.map +1 -0
  46. package/dist/lib/commands/services/console.js +41 -0
  47. package/dist/lib/commands/services/console.js.map +1 -0
  48. package/dist/lib/commands/services/databases.d.ts +3 -0
  49. package/dist/lib/commands/services/databases.d.ts.map +1 -0
  50. package/dist/lib/commands/services/databases.js +612 -0
  51. package/dist/lib/commands/services/databases.js.map +1 -0
  52. package/dist/lib/commands/services/functions.d.ts +3 -0
  53. package/dist/lib/commands/services/functions.d.ts.map +1 -0
  54. package/dist/lib/commands/services/functions.js +258 -0
  55. package/dist/lib/commands/services/functions.js.map +1 -0
  56. package/dist/lib/commands/services/graphql.d.ts +3 -0
  57. package/dist/lib/commands/services/graphql.d.ts.map +1 -0
  58. package/dist/lib/commands/services/graphql.js +28 -0
  59. package/dist/lib/commands/services/graphql.js.map +1 -0
  60. package/dist/lib/commands/services/health.d.ts +3 -0
  61. package/dist/lib/commands/services/health.d.ts.map +1 -0
  62. package/dist/lib/commands/services/health.js +123 -0
  63. package/dist/lib/commands/services/health.js.map +1 -0
  64. package/dist/lib/commands/services/locale.d.ts +3 -0
  65. package/dist/lib/commands/services/locale.d.ts.map +1 -0
  66. package/dist/lib/commands/services/locale.js +52 -0
  67. package/dist/lib/commands/services/locale.js.map +1 -0
  68. package/dist/lib/commands/services/messaging.d.ts +3 -0
  69. package/dist/lib/commands/services/messaging.d.ts.map +1 -0
  70. package/dist/lib/commands/services/messaging.js +505 -0
  71. package/dist/lib/commands/services/messaging.js.map +1 -0
  72. package/dist/lib/commands/services/migrations.d.ts +3 -0
  73. package/dist/lib/commands/services/migrations.d.ts.map +1 -0
  74. package/dist/lib/commands/services/migrations.js +135 -0
  75. package/dist/lib/commands/services/migrations.js.map +1 -0
  76. package/dist/lib/commands/services/project.d.ts +3 -0
  77. package/dist/lib/commands/services/project.d.ts.map +1 -0
  78. package/dist/lib/commands/services/project.js +54 -0
  79. package/dist/lib/commands/services/project.js.map +1 -0
  80. package/dist/lib/commands/services/projects.d.ts +3 -0
  81. package/dist/lib/commands/services/projects.d.ts.map +1 -0
  82. package/dist/lib/commands/services/projects.js +415 -0
  83. package/dist/lib/commands/services/projects.js.map +1 -0
  84. package/dist/lib/commands/services/proxy.d.ts +3 -0
  85. package/dist/lib/commands/services/proxy.d.ts.map +1 -0
  86. package/dist/lib/commands/services/proxy.js +68 -0
  87. package/dist/lib/commands/services/proxy.js.map +1 -0
  88. package/dist/lib/commands/services/sites.d.ts +3 -0
  89. package/dist/lib/commands/services/sites.d.ts.map +1 -0
  90. package/dist/lib/commands/services/sites.js +242 -0
  91. package/dist/lib/commands/services/sites.js.map +1 -0
  92. package/dist/lib/commands/services/storage.d.ts +3 -0
  93. package/dist/lib/commands/services/storage.d.ts.map +1 -0
  94. package/dist/lib/commands/services/storage.js +153 -0
  95. package/dist/lib/commands/services/storage.js.map +1 -0
  96. package/dist/lib/commands/services/tablesdb.d.ts +3 -0
  97. package/dist/lib/commands/services/tablesdb.d.ts.map +1 -0
  98. package/dist/lib/commands/services/tablesdb.js +605 -0
  99. package/dist/lib/commands/services/tablesdb.js.map +1 -0
  100. package/dist/lib/commands/services/teams.d.ts +3 -0
  101. package/dist/lib/commands/services/teams.d.ts.map +1 -0
  102. package/dist/lib/commands/services/teams.js +123 -0
  103. package/dist/lib/commands/services/teams.js.map +1 -0
  104. package/dist/lib/commands/services/tokens.d.ts +3 -0
  105. package/dist/lib/commands/services/tokens.d.ts.map +1 -0
  106. package/dist/lib/commands/services/tokens.js +49 -0
  107. package/dist/lib/commands/services/tokens.js.map +1 -0
  108. package/dist/lib/commands/services/users.d.ts +3 -0
  109. package/dist/lib/commands/services/users.d.ts.map +1 -0
  110. package/dist/lib/commands/services/users.js +312 -0
  111. package/dist/lib/commands/services/users.js.map +1 -0
  112. package/dist/lib/commands/services/vcs.d.ts +3 -0
  113. package/dist/lib/commands/services/vcs.d.ts.map +1 -0
  114. package/dist/lib/commands/services/vcs.js +87 -0
  115. package/dist/lib/commands/services/vcs.js.map +1 -0
  116. package/dist/lib/commands/types.d.ts +3 -0
  117. package/dist/lib/commands/types.d.ts.map +1 -0
  118. package/dist/lib/commands/types.js +151 -0
  119. package/dist/lib/commands/types.js.map +1 -0
  120. package/dist/lib/commands/update.d.ts +3 -0
  121. package/dist/lib/commands/update.d.ts.map +1 -0
  122. package/{lib → dist/lib}/commands/update.js +62 -79
  123. package/dist/lib/commands/update.js.map +1 -0
  124. package/dist/lib/config.d.ts +118 -0
  125. package/dist/lib/config.d.ts.map +1 -0
  126. package/{lib → dist/lib}/config.js +173 -232
  127. package/dist/lib/config.js.map +1 -0
  128. package/dist/lib/emulation/docker.d.ts +7 -0
  129. package/dist/lib/emulation/docker.d.ts.map +1 -0
  130. package/dist/lib/emulation/docker.js +224 -0
  131. package/dist/lib/emulation/docker.js.map +1 -0
  132. package/dist/lib/emulation/utils.d.ts +29 -0
  133. package/dist/lib/emulation/utils.d.ts.map +1 -0
  134. package/{lib → dist/lib}/emulation/utils.js +70 -91
  135. package/dist/lib/emulation/utils.js.map +1 -0
  136. package/dist/lib/id.d.ts +7 -0
  137. package/dist/lib/id.d.ts.map +1 -0
  138. package/{lib → dist/lib}/id.js +5 -8
  139. package/dist/lib/id.js.map +1 -0
  140. package/dist/lib/paginate.d.ts +9 -0
  141. package/dist/lib/paginate.d.ts.map +1 -0
  142. package/{lib → dist/lib}/paginate.js +10 -19
  143. package/dist/lib/paginate.js.map +1 -0
  144. package/dist/lib/parser.d.ts +18 -0
  145. package/dist/lib/parser.d.ts.map +1 -0
  146. package/dist/lib/parser.js +225 -0
  147. package/dist/lib/parser.js.map +1 -0
  148. package/dist/lib/questions.d.ts +59 -0
  149. package/dist/lib/questions.d.ts.map +1 -0
  150. package/{lib → dist/lib}/questions.js +393 -500
  151. package/dist/lib/questions.js.map +1 -0
  152. package/dist/lib/sdks.d.ts +4 -0
  153. package/dist/lib/sdks.d.ts.map +1 -0
  154. package/dist/lib/sdks.js +61 -0
  155. package/dist/lib/sdks.js.map +1 -0
  156. package/dist/lib/services.d.ts +13 -0
  157. package/dist/lib/services.d.ts.map +1 -0
  158. package/dist/lib/services.js +47 -0
  159. package/dist/lib/services.js.map +1 -0
  160. package/dist/lib/spinner.d.ts +28 -0
  161. package/dist/lib/spinner.d.ts.map +1 -0
  162. package/dist/lib/spinner.js +91 -0
  163. package/dist/lib/spinner.js.map +1 -0
  164. package/dist/lib/type-generation/attribute.d.ts +17 -0
  165. package/dist/lib/type-generation/attribute.d.ts.map +1 -0
  166. package/{lib → dist/lib}/type-generation/attribute.js +2 -5
  167. package/dist/lib/type-generation/attribute.js.map +1 -0
  168. package/dist/lib/type-generation/languages/csharp.d.ts +7 -0
  169. package/dist/lib/type-generation/languages/csharp.d.ts.map +1 -0
  170. package/dist/lib/type-generation/languages/csharp.js +180 -0
  171. package/dist/lib/type-generation/languages/csharp.js.map +1 -0
  172. package/dist/lib/type-generation/languages/dart.d.ts +8 -0
  173. package/dist/lib/type-generation/languages/dart.d.ts.map +1 -0
  174. package/dist/lib/type-generation/languages/dart.js +197 -0
  175. package/dist/lib/type-generation/languages/dart.js.map +1 -0
  176. package/dist/lib/type-generation/languages/java.d.ts +7 -0
  177. package/dist/lib/type-generation/languages/java.d.ts.map +1 -0
  178. package/dist/lib/type-generation/languages/java.js +140 -0
  179. package/dist/lib/type-generation/languages/java.js.map +1 -0
  180. package/dist/lib/type-generation/languages/javascript.d.ts +9 -0
  181. package/dist/lib/type-generation/languages/javascript.d.ts.map +1 -0
  182. package/dist/lib/type-generation/languages/javascript.js +109 -0
  183. package/dist/lib/type-generation/languages/javascript.js.map +1 -0
  184. package/dist/lib/type-generation/languages/kotlin.d.ts +7 -0
  185. package/dist/lib/type-generation/languages/kotlin.d.ts.map +1 -0
  186. package/dist/lib/type-generation/languages/kotlin.js +95 -0
  187. package/dist/lib/type-generation/languages/kotlin.js.map +1 -0
  188. package/dist/lib/type-generation/languages/language.d.ts +43 -0
  189. package/dist/lib/type-generation/languages/language.d.ts.map +1 -0
  190. package/dist/lib/type-generation/languages/language.js +77 -0
  191. package/dist/lib/type-generation/languages/language.js.map +1 -0
  192. package/dist/lib/type-generation/languages/php.d.ts +7 -0
  193. package/dist/lib/type-generation/languages/php.d.ts.map +1 -0
  194. package/dist/lib/type-generation/languages/php.js +116 -0
  195. package/dist/lib/type-generation/languages/php.js.map +1 -0
  196. package/dist/lib/type-generation/languages/swift.d.ts +7 -0
  197. package/dist/lib/type-generation/languages/swift.d.ts.map +1 -0
  198. package/dist/lib/type-generation/languages/swift.js +179 -0
  199. package/dist/lib/type-generation/languages/swift.js.map +1 -0
  200. package/dist/lib/type-generation/languages/typescript.d.ts +9 -0
  201. package/dist/lib/type-generation/languages/typescript.d.ts.map +1 -0
  202. package/dist/lib/type-generation/languages/typescript.js +115 -0
  203. package/dist/lib/type-generation/languages/typescript.js.map +1 -0
  204. package/dist/lib/types.d.ts +277 -0
  205. package/dist/lib/types.d.ts.map +1 -0
  206. package/dist/lib/types.js +2 -0
  207. package/dist/lib/types.js.map +1 -0
  208. package/dist/lib/utils.d.ts +15 -0
  209. package/dist/lib/utils.d.ts.map +1 -0
  210. package/{lib → dist/lib}/utils.js +125 -167
  211. package/dist/lib/utils.js.map +1 -0
  212. package/dist/lib/validations.d.ts +2 -0
  213. package/dist/lib/validations.d.ts.map +1 -0
  214. package/dist/lib/validations.js +16 -0
  215. package/dist/lib/validations.js.map +1 -0
  216. package/dist/package.json +67 -0
  217. package/dist/scripts/generate-commands.d.ts +2 -0
  218. package/dist/scripts/generate-commands.d.ts.map +1 -0
  219. package/dist/scripts/generate-commands.js +398 -0
  220. package/dist/scripts/generate-commands.js.map +1 -0
  221. package/index.ts +168 -0
  222. package/install.ps1 +2 -5
  223. package/install.sh +1 -2
  224. package/lib/client.ts +292 -0
  225. package/lib/commands/generic.ts +440 -0
  226. package/lib/commands/init.ts +713 -0
  227. package/lib/commands/pull.ts +668 -0
  228. package/lib/commands/push.ts +3183 -0
  229. package/lib/commands/run.ts +416 -0
  230. package/lib/commands/services/account.ts +832 -0
  231. package/lib/commands/services/avatars.ts +400 -0
  232. package/lib/commands/services/console.ts +73 -0
  233. package/lib/commands/services/databases.ts +2080 -0
  234. package/lib/commands/services/functions.ts +855 -0
  235. package/lib/commands/services/graphql.ts +47 -0
  236. package/lib/commands/services/health.ts +322 -0
  237. package/lib/commands/services/locale.ts +99 -0
  238. package/lib/commands/services/messaging.ts +1871 -0
  239. package/lib/commands/services/migrations.ts +421 -0
  240. package/lib/commands/services/project.ts +116 -0
  241. package/lib/commands/services/projects.ts +1317 -0
  242. package/lib/commands/services/proxy.ts +163 -0
  243. package/lib/commands/services/sites.ts +777 -0
  244. package/lib/commands/services/storage.ts +547 -0
  245. package/lib/commands/services/tablesdb.ts +1928 -0
  246. package/lib/commands/services/teams.ts +294 -0
  247. package/lib/commands/services/tokens.ts +106 -0
  248. package/lib/commands/services/users.ts +886 -0
  249. package/lib/commands/services/vcs.ts +268 -0
  250. package/lib/commands/types.ts +220 -0
  251. package/lib/commands/update.ts +255 -0
  252. package/lib/config.ts +969 -0
  253. package/lib/emulation/docker.ts +312 -0
  254. package/lib/emulation/utils.ts +207 -0
  255. package/lib/id.ts +30 -0
  256. package/lib/paginate.ts +77 -0
  257. package/lib/parser.ts +264 -0
  258. package/lib/questions.ts +1167 -0
  259. package/lib/sdks.ts +84 -0
  260. package/lib/services.ts +72 -0
  261. package/lib/spinner.ts +131 -0
  262. package/lib/type-generation/attribute.ts +18 -0
  263. package/lib/type-generation/languages/{csharp.js → csharp.ts} +27 -14
  264. package/lib/type-generation/languages/{dart.js → dart.ts} +61 -46
  265. package/lib/type-generation/languages/{java.js → java.ts} +31 -18
  266. package/lib/type-generation/languages/{javascript.js → javascript.ts} +35 -24
  267. package/lib/type-generation/languages/{kotlin.js → kotlin.ts} +27 -14
  268. package/lib/type-generation/languages/{language.js → language.ts} +45 -43
  269. package/lib/type-generation/languages/{php.js → php.ts} +28 -15
  270. package/lib/type-generation/languages/{swift.js → swift.ts} +27 -14
  271. package/lib/type-generation/languages/{typescript.js → typescript.ts} +43 -26
  272. package/lib/types.ts +304 -0
  273. package/lib/utils.ts +352 -0
  274. package/lib/validations.ts +20 -0
  275. package/package.json +36 -19
  276. package/scoop/appwrite.config.json +19 -29
  277. package/scripts/generate-commands.ts +539 -0
  278. package/tsconfig.json +24 -0
  279. package/.github/workflows/autoclose.yml +0 -11
  280. package/docs/examples/account/create-anonymous-session.md +0 -1
  281. package/docs/examples/account/create-email-password-session.md +0 -3
  282. package/docs/examples/account/create-email-token.md +0 -3
  283. package/docs/examples/account/create-email-verification.md +0 -2
  284. package/docs/examples/account/create-jwt.md +0 -1
  285. package/docs/examples/account/create-magic-url-token.md +0 -3
  286. package/docs/examples/account/create-mfa-authenticator.md +0 -2
  287. package/docs/examples/account/create-mfa-challenge.md +0 -2
  288. package/docs/examples/account/create-mfa-recovery-codes.md +0 -1
  289. package/docs/examples/account/create-o-auth-2-session.md +0 -2
  290. package/docs/examples/account/create-o-auth-2-token.md +0 -2
  291. package/docs/examples/account/create-phone-token.md +0 -3
  292. package/docs/examples/account/create-phone-verification.md +0 -1
  293. package/docs/examples/account/create-push-target.md +0 -3
  294. package/docs/examples/account/create-recovery.md +0 -3
  295. package/docs/examples/account/create-session.md +0 -3
  296. package/docs/examples/account/create-verification.md +0 -2
  297. package/docs/examples/account/create.md +0 -4
  298. package/docs/examples/account/delete-identity.md +0 -2
  299. package/docs/examples/account/delete-mfa-authenticator.md +0 -2
  300. package/docs/examples/account/delete-push-target.md +0 -2
  301. package/docs/examples/account/delete-session.md +0 -2
  302. package/docs/examples/account/delete-sessions.md +0 -1
  303. package/docs/examples/account/delete.md +0 -1
  304. package/docs/examples/account/get-mfa-recovery-codes.md +0 -1
  305. package/docs/examples/account/get-prefs.md +0 -1
  306. package/docs/examples/account/get-session.md +0 -2
  307. package/docs/examples/account/get.md +0 -1
  308. package/docs/examples/account/list-identities.md +0 -1
  309. package/docs/examples/account/list-logs.md +0 -1
  310. package/docs/examples/account/list-mfa-factors.md +0 -1
  311. package/docs/examples/account/list-sessions.md +0 -1
  312. package/docs/examples/account/update-email-verification.md +0 -3
  313. package/docs/examples/account/update-email.md +0 -3
  314. package/docs/examples/account/update-magic-url-session.md +0 -3
  315. package/docs/examples/account/update-mfa-authenticator.md +0 -3
  316. package/docs/examples/account/update-mfa-challenge.md +0 -3
  317. package/docs/examples/account/update-mfa-recovery-codes.md +0 -1
  318. package/docs/examples/account/update-mfa.md +0 -2
  319. package/docs/examples/account/update-name.md +0 -2
  320. package/docs/examples/account/update-password.md +0 -2
  321. package/docs/examples/account/update-phone-session.md +0 -3
  322. package/docs/examples/account/update-phone-verification.md +0 -3
  323. package/docs/examples/account/update-phone.md +0 -3
  324. package/docs/examples/account/update-prefs.md +0 -2
  325. package/docs/examples/account/update-push-target.md +0 -3
  326. package/docs/examples/account/update-recovery.md +0 -4
  327. package/docs/examples/account/update-session.md +0 -2
  328. package/docs/examples/account/update-status.md +0 -1
  329. package/docs/examples/account/update-verification.md +0 -3
  330. package/docs/examples/console/get-resource.md +0 -3
  331. package/docs/examples/console/variables.md +0 -1
  332. package/docs/examples/databases/create-boolean-attribute.md +0 -5
  333. package/docs/examples/databases/create-collection.md +0 -4
  334. package/docs/examples/databases/create-datetime-attribute.md +0 -5
  335. package/docs/examples/databases/create-document.md +0 -5
  336. package/docs/examples/databases/create-documents.md +0 -4
  337. package/docs/examples/databases/create-email-attribute.md +0 -5
  338. package/docs/examples/databases/create-enum-attribute.md +0 -6
  339. package/docs/examples/databases/create-float-attribute.md +0 -5
  340. package/docs/examples/databases/create-index.md +0 -6
  341. package/docs/examples/databases/create-integer-attribute.md +0 -5
  342. package/docs/examples/databases/create-ip-attribute.md +0 -5
  343. package/docs/examples/databases/create-line-attribute.md +0 -5
  344. package/docs/examples/databases/create-operations.md +0 -2
  345. package/docs/examples/databases/create-point-attribute.md +0 -5
  346. package/docs/examples/databases/create-polygon-attribute.md +0 -5
  347. package/docs/examples/databases/create-relationship-attribute.md +0 -5
  348. package/docs/examples/databases/create-string-attribute.md +0 -6
  349. package/docs/examples/databases/create-transaction.md +0 -1
  350. package/docs/examples/databases/create-url-attribute.md +0 -5
  351. package/docs/examples/databases/create.md +0 -3
  352. package/docs/examples/databases/decrement-document-attribute.md +0 -5
  353. package/docs/examples/databases/delete-attribute.md +0 -4
  354. package/docs/examples/databases/delete-collection.md +0 -3
  355. package/docs/examples/databases/delete-document.md +0 -4
  356. package/docs/examples/databases/delete-documents.md +0 -3
  357. package/docs/examples/databases/delete-index.md +0 -4
  358. package/docs/examples/databases/delete-transaction.md +0 -2
  359. package/docs/examples/databases/delete.md +0 -2
  360. package/docs/examples/databases/get-attribute.md +0 -4
  361. package/docs/examples/databases/get-collection-usage.md +0 -3
  362. package/docs/examples/databases/get-collection.md +0 -3
  363. package/docs/examples/databases/get-document.md +0 -4
  364. package/docs/examples/databases/get-index.md +0 -4
  365. package/docs/examples/databases/get-transaction.md +0 -2
  366. package/docs/examples/databases/get-usage.md +0 -2
  367. package/docs/examples/databases/get.md +0 -2
  368. package/docs/examples/databases/increment-document-attribute.md +0 -5
  369. package/docs/examples/databases/list-attributes.md +0 -3
  370. package/docs/examples/databases/list-collection-logs.md +0 -3
  371. package/docs/examples/databases/list-collections.md +0 -2
  372. package/docs/examples/databases/list-document-logs.md +0 -4
  373. package/docs/examples/databases/list-documents.md +0 -3
  374. package/docs/examples/databases/list-indexes.md +0 -3
  375. package/docs/examples/databases/list-logs.md +0 -2
  376. package/docs/examples/databases/list-transactions.md +0 -1
  377. package/docs/examples/databases/list-usage.md +0 -1
  378. package/docs/examples/databases/list.md +0 -1
  379. package/docs/examples/databases/update-boolean-attribute.md +0 -6
  380. package/docs/examples/databases/update-collection.md +0 -4
  381. package/docs/examples/databases/update-datetime-attribute.md +0 -6
  382. package/docs/examples/databases/update-document.md +0 -4
  383. package/docs/examples/databases/update-documents.md +0 -3
  384. package/docs/examples/databases/update-email-attribute.md +0 -6
  385. package/docs/examples/databases/update-enum-attribute.md +0 -7
  386. package/docs/examples/databases/update-float-attribute.md +0 -6
  387. package/docs/examples/databases/update-integer-attribute.md +0 -6
  388. package/docs/examples/databases/update-ip-attribute.md +0 -6
  389. package/docs/examples/databases/update-line-attribute.md +0 -5
  390. package/docs/examples/databases/update-point-attribute.md +0 -5
  391. package/docs/examples/databases/update-polygon-attribute.md +0 -5
  392. package/docs/examples/databases/update-relationship-attribute.md +0 -4
  393. package/docs/examples/databases/update-string-attribute.md +0 -6
  394. package/docs/examples/databases/update-transaction.md +0 -2
  395. package/docs/examples/databases/update-url-attribute.md +0 -6
  396. package/docs/examples/databases/update.md +0 -3
  397. package/docs/examples/databases/upsert-document.md +0 -5
  398. package/docs/examples/databases/upsert-documents.md +0 -4
  399. package/docs/examples/functions/create-deployment.md +0 -4
  400. package/docs/examples/functions/create-duplicate-deployment.md +0 -3
  401. package/docs/examples/functions/create-execution.md +0 -2
  402. package/docs/examples/functions/create-template-deployment.md +0 -7
  403. package/docs/examples/functions/create-variable.md +0 -4
  404. package/docs/examples/functions/create-vcs-deployment.md +0 -4
  405. package/docs/examples/functions/create.md +0 -4
  406. package/docs/examples/functions/delete-deployment.md +0 -3
  407. package/docs/examples/functions/delete-execution.md +0 -3
  408. package/docs/examples/functions/delete-variable.md +0 -3
  409. package/docs/examples/functions/delete.md +0 -2
  410. package/docs/examples/functions/get-deployment-download.md +0 -3
  411. package/docs/examples/functions/get-deployment.md +0 -3
  412. package/docs/examples/functions/get-execution.md +0 -3
  413. package/docs/examples/functions/get-template.md +0 -2
  414. package/docs/examples/functions/get-usage.md +0 -2
  415. package/docs/examples/functions/get-variable.md +0 -3
  416. package/docs/examples/functions/get.md +0 -2
  417. package/docs/examples/functions/list-deployments.md +0 -2
  418. package/docs/examples/functions/list-executions.md +0 -2
  419. package/docs/examples/functions/list-runtimes.md +0 -1
  420. package/docs/examples/functions/list-specifications.md +0 -1
  421. package/docs/examples/functions/list-templates.md +0 -1
  422. package/docs/examples/functions/list-usage.md +0 -1
  423. package/docs/examples/functions/list-variables.md +0 -2
  424. package/docs/examples/functions/list.md +0 -1
  425. package/docs/examples/functions/update-deployment-status.md +0 -3
  426. package/docs/examples/functions/update-function-deployment.md +0 -3
  427. package/docs/examples/functions/update-variable.md +0 -4
  428. package/docs/examples/functions/update.md +0 -3
  429. package/docs/examples/graphql/mutation.md +0 -2
  430. package/docs/examples/graphql/query.md +0 -2
  431. package/docs/examples/health/get-antivirus.md +0 -1
  432. package/docs/examples/health/get-cache.md +0 -1
  433. package/docs/examples/health/get-certificate.md +0 -1
  434. package/docs/examples/health/get-db.md +0 -1
  435. package/docs/examples/health/get-failed-jobs.md +0 -2
  436. package/docs/examples/health/get-pub-sub.md +0 -1
  437. package/docs/examples/health/get-queue-builds.md +0 -1
  438. package/docs/examples/health/get-queue-certificates.md +0 -1
  439. package/docs/examples/health/get-queue-databases.md +0 -1
  440. package/docs/examples/health/get-queue-deletes.md +0 -1
  441. package/docs/examples/health/get-queue-functions.md +0 -1
  442. package/docs/examples/health/get-queue-logs.md +0 -1
  443. package/docs/examples/health/get-queue-mails.md +0 -1
  444. package/docs/examples/health/get-queue-messaging.md +0 -1
  445. package/docs/examples/health/get-queue-migrations.md +0 -1
  446. package/docs/examples/health/get-queue-stats-resources.md +0 -1
  447. package/docs/examples/health/get-queue-usage.md +0 -1
  448. package/docs/examples/health/get-queue-webhooks.md +0 -1
  449. package/docs/examples/health/get-storage-local.md +0 -1
  450. package/docs/examples/health/get-storage.md +0 -1
  451. package/docs/examples/health/get-time.md +0 -1
  452. package/docs/examples/health/get.md +0 -1
  453. package/docs/examples/locale/get.md +0 -1
  454. package/docs/examples/locale/list-codes.md +0 -1
  455. package/docs/examples/locale/list-continents.md +0 -1
  456. package/docs/examples/locale/list-countries-eu.md +0 -1
  457. package/docs/examples/locale/list-countries-phones.md +0 -1
  458. package/docs/examples/locale/list-countries.md +0 -1
  459. package/docs/examples/locale/list-currencies.md +0 -1
  460. package/docs/examples/locale/list-languages.md +0 -1
  461. package/docs/examples/messaging/create-apns-provider.md +0 -3
  462. package/docs/examples/messaging/create-email.md +0 -4
  463. package/docs/examples/messaging/create-fcm-provider.md +0 -3
  464. package/docs/examples/messaging/create-mailgun-provider.md +0 -3
  465. package/docs/examples/messaging/create-msg-91-provider.md +0 -3
  466. package/docs/examples/messaging/create-push.md +0 -2
  467. package/docs/examples/messaging/create-resend-provider.md +0 -3
  468. package/docs/examples/messaging/create-sendgrid-provider.md +0 -3
  469. package/docs/examples/messaging/create-sms.md +0 -3
  470. package/docs/examples/messaging/create-smtp-provider.md +0 -4
  471. package/docs/examples/messaging/create-subscriber.md +0 -4
  472. package/docs/examples/messaging/create-telesign-provider.md +0 -3
  473. package/docs/examples/messaging/create-textmagic-provider.md +0 -3
  474. package/docs/examples/messaging/create-topic.md +0 -3
  475. package/docs/examples/messaging/create-twilio-provider.md +0 -3
  476. package/docs/examples/messaging/create-vonage-provider.md +0 -3
  477. package/docs/examples/messaging/delete-provider.md +0 -2
  478. package/docs/examples/messaging/delete-subscriber.md +0 -3
  479. package/docs/examples/messaging/delete-topic.md +0 -2
  480. package/docs/examples/messaging/delete.md +0 -2
  481. package/docs/examples/messaging/get-message.md +0 -2
  482. package/docs/examples/messaging/get-provider.md +0 -2
  483. package/docs/examples/messaging/get-subscriber.md +0 -3
  484. package/docs/examples/messaging/get-topic.md +0 -2
  485. package/docs/examples/messaging/list-message-logs.md +0 -2
  486. package/docs/examples/messaging/list-messages.md +0 -1
  487. package/docs/examples/messaging/list-provider-logs.md +0 -2
  488. package/docs/examples/messaging/list-providers.md +0 -1
  489. package/docs/examples/messaging/list-subscriber-logs.md +0 -2
  490. package/docs/examples/messaging/list-subscribers.md +0 -2
  491. package/docs/examples/messaging/list-targets.md +0 -2
  492. package/docs/examples/messaging/list-topic-logs.md +0 -2
  493. package/docs/examples/messaging/list-topics.md +0 -1
  494. package/docs/examples/messaging/update-apns-provider.md +0 -2
  495. package/docs/examples/messaging/update-email.md +0 -2
  496. package/docs/examples/messaging/update-fcm-provider.md +0 -2
  497. package/docs/examples/messaging/update-mailgun-provider.md +0 -2
  498. package/docs/examples/messaging/update-msg-91-provider.md +0 -2
  499. package/docs/examples/messaging/update-push.md +0 -2
  500. package/docs/examples/messaging/update-resend-provider.md +0 -2
  501. package/docs/examples/messaging/update-sendgrid-provider.md +0 -2
  502. package/docs/examples/messaging/update-sms.md +0 -2
  503. package/docs/examples/messaging/update-smtp-provider.md +0 -2
  504. package/docs/examples/messaging/update-telesign-provider.md +0 -2
  505. package/docs/examples/messaging/update-textmagic-provider.md +0 -2
  506. package/docs/examples/messaging/update-topic.md +0 -2
  507. package/docs/examples/messaging/update-twilio-provider.md +0 -2
  508. package/docs/examples/messaging/update-vonage-provider.md +0 -2
  509. package/docs/examples/migrations/create-appwrite-migration.md +0 -5
  510. package/docs/examples/migrations/create-csv-export.md +0 -3
  511. package/docs/examples/migrations/create-csv-import.md +0 -4
  512. package/docs/examples/migrations/create-firebase-migration.md +0 -3
  513. package/docs/examples/migrations/create-n-host-migration.md +0 -8
  514. package/docs/examples/migrations/create-supabase-migration.md +0 -7
  515. package/docs/examples/migrations/delete.md +0 -2
  516. package/docs/examples/migrations/get-appwrite-report.md +0 -5
  517. package/docs/examples/migrations/get-firebase-report.md +0 -3
  518. package/docs/examples/migrations/get-n-host-report.md +0 -8
  519. package/docs/examples/migrations/get-supabase-report.md +0 -7
  520. package/docs/examples/migrations/get.md +0 -2
  521. package/docs/examples/migrations/list.md +0 -1
  522. package/docs/examples/migrations/retry.md +0 -2
  523. package/docs/examples/project/create-variable.md +0 -3
  524. package/docs/examples/project/delete-variable.md +0 -2
  525. package/docs/examples/project/get-usage.md +0 -3
  526. package/docs/examples/project/get-variable.md +0 -2
  527. package/docs/examples/project/list-variables.md +0 -1
  528. package/docs/examples/project/update-variable.md +0 -3
  529. package/docs/examples/projects/create-dev-key.md +0 -4
  530. package/docs/examples/projects/create-jwt.md +0 -3
  531. package/docs/examples/projects/create-key.md +0 -4
  532. package/docs/examples/projects/create-platform.md +0 -4
  533. package/docs/examples/projects/create-smtp-test.md +0 -6
  534. package/docs/examples/projects/create-webhook.md +0 -6
  535. package/docs/examples/projects/create.md +0 -4
  536. package/docs/examples/projects/delete-dev-key.md +0 -3
  537. package/docs/examples/projects/delete-email-template.md +0 -4
  538. package/docs/examples/projects/delete-key.md +0 -3
  539. package/docs/examples/projects/delete-platform.md +0 -3
  540. package/docs/examples/projects/delete-sms-template.md +0 -4
  541. package/docs/examples/projects/delete-webhook.md +0 -3
  542. package/docs/examples/projects/delete.md +0 -2
  543. package/docs/examples/projects/get-dev-key.md +0 -3
  544. package/docs/examples/projects/get-email-template.md +0 -4
  545. package/docs/examples/projects/get-key.md +0 -3
  546. package/docs/examples/projects/get-platform.md +0 -3
  547. package/docs/examples/projects/get-sms-template.md +0 -4
  548. package/docs/examples/projects/get-webhook.md +0 -3
  549. package/docs/examples/projects/get.md +0 -2
  550. package/docs/examples/projects/list-dev-keys.md +0 -2
  551. package/docs/examples/projects/list-keys.md +0 -2
  552. package/docs/examples/projects/list-platforms.md +0 -2
  553. package/docs/examples/projects/list-webhooks.md +0 -2
  554. package/docs/examples/projects/list.md +0 -1
  555. package/docs/examples/projects/update-api-status-all.md +0 -3
  556. package/docs/examples/projects/update-api-status.md +0 -4
  557. package/docs/examples/projects/update-auth-duration.md +0 -3
  558. package/docs/examples/projects/update-auth-limit.md +0 -3
  559. package/docs/examples/projects/update-auth-password-dictionary.md +0 -3
  560. package/docs/examples/projects/update-auth-password-history.md +0 -3
  561. package/docs/examples/projects/update-auth-sessions-limit.md +0 -3
  562. package/docs/examples/projects/update-auth-status.md +0 -4
  563. package/docs/examples/projects/update-dev-key.md +0 -5
  564. package/docs/examples/projects/update-email-template.md +0 -6
  565. package/docs/examples/projects/update-key.md +0 -5
  566. package/docs/examples/projects/update-memberships-privacy.md +0 -5
  567. package/docs/examples/projects/update-mock-numbers.md +0 -3
  568. package/docs/examples/projects/update-o-auth-2.md +0 -3
  569. package/docs/examples/projects/update-personal-data-check.md +0 -3
  570. package/docs/examples/projects/update-platform.md +0 -4
  571. package/docs/examples/projects/update-service-status-all.md +0 -3
  572. package/docs/examples/projects/update-service-status.md +0 -4
  573. package/docs/examples/projects/update-session-alerts.md +0 -3
  574. package/docs/examples/projects/update-session-invalidation.md +0 -3
  575. package/docs/examples/projects/update-sms-template.md +0 -5
  576. package/docs/examples/projects/update-smtp.md +0 -3
  577. package/docs/examples/projects/update-team.md +0 -3
  578. package/docs/examples/projects/update-webhook-signature.md +0 -3
  579. package/docs/examples/projects/update-webhook.md +0 -7
  580. package/docs/examples/projects/update.md +0 -3
  581. package/docs/examples/proxy/create-api-rule.md +0 -2
  582. package/docs/examples/proxy/create-function-rule.md +0 -3
  583. package/docs/examples/proxy/create-redirect-rule.md +0 -6
  584. package/docs/examples/proxy/create-site-rule.md +0 -3
  585. package/docs/examples/proxy/delete-rule.md +0 -2
  586. package/docs/examples/proxy/get-rule.md +0 -2
  587. package/docs/examples/proxy/list-rules.md +0 -1
  588. package/docs/examples/proxy/update-rule-verification.md +0 -2
  589. package/docs/examples/sites/create-deployment.md +0 -4
  590. package/docs/examples/sites/create-duplicate-deployment.md +0 -3
  591. package/docs/examples/sites/create-template-deployment.md +0 -7
  592. package/docs/examples/sites/create-variable.md +0 -4
  593. package/docs/examples/sites/create-vcs-deployment.md +0 -4
  594. package/docs/examples/sites/create.md +0 -5
  595. package/docs/examples/sites/delete-deployment.md +0 -3
  596. package/docs/examples/sites/delete-log.md +0 -3
  597. package/docs/examples/sites/delete-variable.md +0 -3
  598. package/docs/examples/sites/delete.md +0 -2
  599. package/docs/examples/sites/get-deployment-download.md +0 -3
  600. package/docs/examples/sites/get-deployment.md +0 -3
  601. package/docs/examples/sites/get-log.md +0 -3
  602. package/docs/examples/sites/get-template.md +0 -2
  603. package/docs/examples/sites/get-usage.md +0 -2
  604. package/docs/examples/sites/get-variable.md +0 -3
  605. package/docs/examples/sites/get.md +0 -2
  606. package/docs/examples/sites/list-deployments.md +0 -2
  607. package/docs/examples/sites/list-frameworks.md +0 -1
  608. package/docs/examples/sites/list-logs.md +0 -2
  609. package/docs/examples/sites/list-specifications.md +0 -1
  610. package/docs/examples/sites/list-templates.md +0 -1
  611. package/docs/examples/sites/list-usage.md +0 -1
  612. package/docs/examples/sites/list-variables.md +0 -2
  613. package/docs/examples/sites/list.md +0 -1
  614. package/docs/examples/sites/update-deployment-status.md +0 -3
  615. package/docs/examples/sites/update-site-deployment.md +0 -3
  616. package/docs/examples/sites/update-variable.md +0 -4
  617. package/docs/examples/sites/update.md +0 -4
  618. package/docs/examples/storage/create-bucket.md +0 -3
  619. package/docs/examples/storage/create-file.md +0 -4
  620. package/docs/examples/storage/delete-bucket.md +0 -2
  621. package/docs/examples/storage/delete-file.md +0 -3
  622. package/docs/examples/storage/get-bucket-usage.md +0 -2
  623. package/docs/examples/storage/get-bucket.md +0 -2
  624. package/docs/examples/storage/get-file-download.md +0 -3
  625. package/docs/examples/storage/get-file-preview.md +0 -3
  626. package/docs/examples/storage/get-file-view.md +0 -3
  627. package/docs/examples/storage/get-file.md +0 -3
  628. package/docs/examples/storage/get-usage.md +0 -1
  629. package/docs/examples/storage/list-buckets.md +0 -1
  630. package/docs/examples/storage/list-files.md +0 -2
  631. package/docs/examples/storage/update-bucket.md +0 -3
  632. package/docs/examples/storage/update-file.md +0 -3
  633. package/docs/examples/tablesdb/create-boolean-column.md +0 -5
  634. package/docs/examples/tablesdb/create-datetime-column.md +0 -5
  635. package/docs/examples/tablesdb/create-email-column.md +0 -5
  636. package/docs/examples/tablesdb/create-enum-column.md +0 -6
  637. package/docs/examples/tablesdb/create-float-column.md +0 -5
  638. package/docs/examples/tablesdb/create-index.md +0 -6
  639. package/docs/examples/tablesdb/create-integer-column.md +0 -5
  640. package/docs/examples/tablesdb/create-ip-column.md +0 -5
  641. package/docs/examples/tablesdb/create-line-column.md +0 -5
  642. package/docs/examples/tablesdb/create-operations.md +0 -2
  643. package/docs/examples/tablesdb/create-point-column.md +0 -5
  644. package/docs/examples/tablesdb/create-polygon-column.md +0 -5
  645. package/docs/examples/tablesdb/create-relationship-column.md +0 -5
  646. package/docs/examples/tablesdb/create-row.md +0 -5
  647. package/docs/examples/tablesdb/create-rows.md +0 -4
  648. package/docs/examples/tablesdb/create-string-column.md +0 -6
  649. package/docs/examples/tablesdb/create-table.md +0 -4
  650. package/docs/examples/tablesdb/create-transaction.md +0 -1
  651. package/docs/examples/tablesdb/create-url-column.md +0 -5
  652. package/docs/examples/tablesdb/create.md +0 -3
  653. package/docs/examples/tablesdb/decrement-row-column.md +0 -5
  654. package/docs/examples/tablesdb/delete-column.md +0 -4
  655. package/docs/examples/tablesdb/delete-index.md +0 -4
  656. package/docs/examples/tablesdb/delete-row.md +0 -4
  657. package/docs/examples/tablesdb/delete-rows.md +0 -3
  658. package/docs/examples/tablesdb/delete-table.md +0 -3
  659. package/docs/examples/tablesdb/delete-transaction.md +0 -2
  660. package/docs/examples/tablesdb/delete.md +0 -2
  661. package/docs/examples/tablesdb/get-column.md +0 -4
  662. package/docs/examples/tablesdb/get-index.md +0 -4
  663. package/docs/examples/tablesdb/get-row.md +0 -4
  664. package/docs/examples/tablesdb/get-table-usage.md +0 -3
  665. package/docs/examples/tablesdb/get-table.md +0 -3
  666. package/docs/examples/tablesdb/get-transaction.md +0 -2
  667. package/docs/examples/tablesdb/get-usage.md +0 -2
  668. package/docs/examples/tablesdb/get.md +0 -2
  669. package/docs/examples/tablesdb/increment-row-column.md +0 -5
  670. package/docs/examples/tablesdb/list-columns.md +0 -3
  671. package/docs/examples/tablesdb/list-indexes.md +0 -3
  672. package/docs/examples/tablesdb/list-row-logs.md +0 -4
  673. package/docs/examples/tablesdb/list-rows.md +0 -3
  674. package/docs/examples/tablesdb/list-table-logs.md +0 -3
  675. package/docs/examples/tablesdb/list-tables.md +0 -2
  676. package/docs/examples/tablesdb/list-transactions.md +0 -1
  677. package/docs/examples/tablesdb/list-usage.md +0 -1
  678. package/docs/examples/tablesdb/list.md +0 -1
  679. package/docs/examples/tablesdb/update-boolean-column.md +0 -6
  680. package/docs/examples/tablesdb/update-datetime-column.md +0 -6
  681. package/docs/examples/tablesdb/update-email-column.md +0 -6
  682. package/docs/examples/tablesdb/update-enum-column.md +0 -7
  683. package/docs/examples/tablesdb/update-float-column.md +0 -6
  684. package/docs/examples/tablesdb/update-integer-column.md +0 -6
  685. package/docs/examples/tablesdb/update-ip-column.md +0 -6
  686. package/docs/examples/tablesdb/update-line-column.md +0 -5
  687. package/docs/examples/tablesdb/update-point-column.md +0 -5
  688. package/docs/examples/tablesdb/update-polygon-column.md +0 -5
  689. package/docs/examples/tablesdb/update-relationship-column.md +0 -4
  690. package/docs/examples/tablesdb/update-row.md +0 -4
  691. package/docs/examples/tablesdb/update-rows.md +0 -3
  692. package/docs/examples/tablesdb/update-string-column.md +0 -6
  693. package/docs/examples/tablesdb/update-table.md +0 -4
  694. package/docs/examples/tablesdb/update-transaction.md +0 -2
  695. package/docs/examples/tablesdb/update-url-column.md +0 -6
  696. package/docs/examples/tablesdb/update.md +0 -3
  697. package/docs/examples/tablesdb/upsert-row.md +0 -4
  698. package/docs/examples/tablesdb/upsert-rows.md +0 -4
  699. package/docs/examples/teams/create-membership.md +0 -3
  700. package/docs/examples/teams/create.md +0 -3
  701. package/docs/examples/teams/delete-membership.md +0 -3
  702. package/docs/examples/teams/delete.md +0 -2
  703. package/docs/examples/teams/get-membership.md +0 -3
  704. package/docs/examples/teams/get-prefs.md +0 -2
  705. package/docs/examples/teams/get.md +0 -2
  706. package/docs/examples/teams/list-logs.md +0 -2
  707. package/docs/examples/teams/list-memberships.md +0 -2
  708. package/docs/examples/teams/list.md +0 -1
  709. package/docs/examples/teams/update-membership-status.md +0 -5
  710. package/docs/examples/teams/update-membership.md +0 -4
  711. package/docs/examples/teams/update-name.md +0 -3
  712. package/docs/examples/teams/update-prefs.md +0 -3
  713. package/docs/examples/tokens/create-file-token.md +0 -3
  714. package/docs/examples/tokens/delete.md +0 -2
  715. package/docs/examples/tokens/get.md +0 -2
  716. package/docs/examples/tokens/list.md +0 -3
  717. package/docs/examples/tokens/update.md +0 -2
  718. package/docs/examples/users/create-argon-2-user.md +0 -4
  719. package/docs/examples/users/create-bcrypt-user.md +0 -4
  720. package/docs/examples/users/create-jwt.md +0 -2
  721. package/docs/examples/users/create-md-5-user.md +0 -4
  722. package/docs/examples/users/create-mfa-recovery-codes.md +0 -2
  723. package/docs/examples/users/create-ph-pass-user.md +0 -4
  724. package/docs/examples/users/create-scrypt-modified-user.md +0 -7
  725. package/docs/examples/users/create-scrypt-user.md +0 -9
  726. package/docs/examples/users/create-session.md +0 -2
  727. package/docs/examples/users/create-sha-user.md +0 -4
  728. package/docs/examples/users/create-target.md +0 -5
  729. package/docs/examples/users/create-token.md +0 -2
  730. package/docs/examples/users/create.md +0 -2
  731. package/docs/examples/users/delete-identity.md +0 -2
  732. package/docs/examples/users/delete-mfa-authenticator.md +0 -3
  733. package/docs/examples/users/delete-session.md +0 -3
  734. package/docs/examples/users/delete-sessions.md +0 -2
  735. package/docs/examples/users/delete-target.md +0 -3
  736. package/docs/examples/users/delete.md +0 -2
  737. package/docs/examples/users/get-mfa-recovery-codes.md +0 -2
  738. package/docs/examples/users/get-prefs.md +0 -2
  739. package/docs/examples/users/get-target.md +0 -3
  740. package/docs/examples/users/get-usage.md +0 -1
  741. package/docs/examples/users/get.md +0 -2
  742. package/docs/examples/users/list-identities.md +0 -1
  743. package/docs/examples/users/list-logs.md +0 -2
  744. package/docs/examples/users/list-memberships.md +0 -2
  745. package/docs/examples/users/list-mfa-factors.md +0 -2
  746. package/docs/examples/users/list-sessions.md +0 -2
  747. package/docs/examples/users/list-targets.md +0 -2
  748. package/docs/examples/users/list.md +0 -1
  749. package/docs/examples/users/update-email-verification.md +0 -3
  750. package/docs/examples/users/update-email.md +0 -3
  751. package/docs/examples/users/update-labels.md +0 -3
  752. package/docs/examples/users/update-mfa-recovery-codes.md +0 -2
  753. package/docs/examples/users/update-mfa.md +0 -3
  754. package/docs/examples/users/update-name.md +0 -3
  755. package/docs/examples/users/update-password.md +0 -3
  756. package/docs/examples/users/update-phone-verification.md +0 -3
  757. package/docs/examples/users/update-phone.md +0 -3
  758. package/docs/examples/users/update-prefs.md +0 -3
  759. package/docs/examples/users/update-status.md +0 -3
  760. package/docs/examples/users/update-target.md +0 -3
  761. package/docs/examples/vcs/create-repository-detection.md +0 -4
  762. package/docs/examples/vcs/create-repository.md +0 -4
  763. package/docs/examples/vcs/delete-installation.md +0 -2
  764. package/docs/examples/vcs/get-installation.md +0 -2
  765. package/docs/examples/vcs/get-repository-contents.md +0 -3
  766. package/docs/examples/vcs/get-repository.md +0 -3
  767. package/docs/examples/vcs/list-installations.md +0 -1
  768. package/docs/examples/vcs/list-repositories.md +0 -3
  769. package/docs/examples/vcs/list-repository-branches.md +0 -3
  770. package/docs/examples/vcs/update-external-deployments.md +0 -4
  771. package/index.js +0 -147
  772. package/lib/client.js +0 -254
  773. package/lib/commands/account.js +0 -2121
  774. package/lib/commands/console.js +0 -127
  775. package/lib/commands/databases.js +0 -3590
  776. package/lib/commands/functions.js +0 -1732
  777. package/lib/commands/generic.js +0 -330
  778. package/lib/commands/graphql.js +0 -126
  779. package/lib/commands/health.js +0 -869
  780. package/lib/commands/locale.js +0 -316
  781. package/lib/commands/messaging.js +0 -3116
  782. package/lib/commands/migrations.js +0 -830
  783. package/lib/commands/organizations.js +0 -48
  784. package/lib/commands/project.js +0 -302
  785. package/lib/commands/projects.js +0 -2626
  786. package/lib/commands/proxy.js +0 -403
  787. package/lib/commands/push.js +0 -2570
  788. package/lib/commands/sites.js +0 -1654
  789. package/lib/commands/storage.js +0 -995
  790. package/lib/commands/tables-db.js +0 -3569
  791. package/lib/commands/teams.js +0 -683
  792. package/lib/commands/tokens.js +0 -261
  793. package/lib/commands/types.js +0 -191
  794. package/lib/commands/users.js +0 -2022
  795. package/lib/commands/vcs.js +0 -484
  796. package/lib/emulation/docker.js +0 -264
  797. package/lib/exception.js +0 -9
  798. package/lib/parser.js +0 -250
  799. package/lib/sdks.js +0 -60
  800. package/lib/spinner.js +0 -104
  801. package/lib/validations.js +0 -17
@@ -0,0 +1,197 @@
1
+ import fs from "fs";
2
+ import path from "path";
3
+ import { AttributeType } from "../attribute.js";
4
+ import { LanguageMeta } from "./language.js";
5
+ export class Dart extends LanguageMeta {
6
+ getPackageName() {
7
+ const pubspecPath = path.join(process.cwd(), "pubspec.yaml");
8
+ if (fs.existsSync(pubspecPath)) {
9
+ const pubspecContent = fs.readFileSync(pubspecPath, "utf8");
10
+ const lines = pubspecContent.split("\n");
11
+ const dependenciesIndex = lines.findIndex((line) => line.trim() === "dependencies:");
12
+ if (dependenciesIndex !== -1) {
13
+ const indent = lines[dependenciesIndex].search(/\S|$/);
14
+ const dependencies = [];
15
+ for (let i = dependenciesIndex + 1; i < lines.length; i++) {
16
+ const line = lines[i];
17
+ if (line.trim() === "")
18
+ continue;
19
+ const lineIndent = line.search(/\S|$/);
20
+ if (lineIndent <= indent && line.trim() !== "") {
21
+ break;
22
+ }
23
+ dependencies.push(line.trim());
24
+ }
25
+ if (dependencies.some((dep) => dep.startsWith("dart_appwrite:"))) {
26
+ return "dart_appwrite";
27
+ }
28
+ if (dependencies.some((dep) => dep.startsWith("appwrite:"))) {
29
+ return "appwrite";
30
+ }
31
+ }
32
+ }
33
+ return "appwrite";
34
+ }
35
+ getType(attribute, collections, collectionName) {
36
+ let type = "";
37
+ switch (attribute.type) {
38
+ case AttributeType.STRING:
39
+ case AttributeType.EMAIL:
40
+ case AttributeType.DATETIME:
41
+ type = "String";
42
+ if (attribute.format === AttributeType.ENUM) {
43
+ type =
44
+ LanguageMeta.toPascalCase(collectionName) +
45
+ LanguageMeta.toPascalCase(attribute.key);
46
+ }
47
+ break;
48
+ case AttributeType.INTEGER:
49
+ type = "int";
50
+ break;
51
+ case AttributeType.FLOAT:
52
+ type = "double";
53
+ break;
54
+ case AttributeType.BOOLEAN:
55
+ type = "bool";
56
+ break;
57
+ case AttributeType.RELATIONSHIP:
58
+ const relatedCollection = collections?.find((c) => c.$id === attribute.relatedCollection);
59
+ if (!relatedCollection) {
60
+ throw new Error(`Related collection with ID '${attribute.relatedCollection}' not found.`);
61
+ }
62
+ type = LanguageMeta.toPascalCase(relatedCollection.name);
63
+ if ((attribute.relationType === "oneToMany" &&
64
+ attribute.side === "parent") ||
65
+ (attribute.relationType === "manyToOne" &&
66
+ attribute.side === "child") ||
67
+ attribute.relationType === "manyToMany") {
68
+ type = `List<${type}>`;
69
+ }
70
+ break;
71
+ case AttributeType.POINT:
72
+ type = "List<double>";
73
+ break;
74
+ case AttributeType.LINESTRING:
75
+ type = "List<List<double>>";
76
+ break;
77
+ case AttributeType.POLYGON:
78
+ type = "List<List<List<double>>>";
79
+ break;
80
+ default:
81
+ throw new Error(`Unknown attribute type: ${attribute.type}`);
82
+ }
83
+ if (attribute.array) {
84
+ type = `List<${type}>`;
85
+ }
86
+ if (!attribute.required) {
87
+ type += "?";
88
+ }
89
+ return type;
90
+ }
91
+ getTemplate() {
92
+ return `// This file is auto-generated by the Appwrite CLI.
93
+ // You can regenerate it by running \`appwrite ${process.argv.slice(2).join(" ")}\`.
94
+ <% const __relatedImportsSeen = new Set();
95
+ const sortedAttributes = collection.attributes.slice().sort((a, b) => {
96
+ if (a.required === b.required) return 0;
97
+ return a.required ? -1 : 1;
98
+ }); -%>
99
+ <% const __attrs = sortedAttributes; -%>
100
+ <% for (const attribute of __attrs) { -%>
101
+ <% if (attribute.type === '${AttributeType.RELATIONSHIP}') { -%>
102
+ <% const related = collections.find(c => c.$id === attribute.relatedCollection); -%>
103
+ <% if (related && !__relatedImportsSeen.has(toSnakeCase(related.name))) { -%>
104
+ import '<%- toSnakeCase(related.name) %>.dart';
105
+ <% __relatedImportsSeen.add(toSnakeCase(related.name)); -%>
106
+ <% } -%>
107
+ <% } -%>
108
+ <% } -%>
109
+
110
+ <% for (const attribute of __attrs) { -%>
111
+ <% if (attribute.format === '${AttributeType.ENUM}') { -%>
112
+ enum <%- toPascalCase(collection.name) %><%- toPascalCase(attribute.key) %> {
113
+ <% for (const [index, element] of Object.entries(attribute.elements)) { -%>
114
+ <%- strict ? toCamelCase(element) : element %><% if (index < attribute.elements.length - 1) { -%>,<% } %>
115
+ <% } -%>
116
+ }
117
+
118
+ <% } -%>
119
+ <% } -%>
120
+ class <%= toPascalCase(collection.name) %> {
121
+ <% for (const [index, attribute] of Object.entries(__attrs)) { -%>
122
+ <%- getType(attribute, collections, collection.name) %> <%= strict ? toCamelCase(attribute.key) : attribute.key %>;
123
+ <% } -%>
124
+
125
+ <%= toPascalCase(collection.name) %>({
126
+ <% for (const [index, attribute] of Object.entries(__attrs)) { -%>
127
+ <% if (attribute.required) { %>required <% } %>this.<%= strict ? toCamelCase(attribute.key) : attribute.key %><% if (index < __attrs.length - 1) { -%>,<% } %>
128
+ <% } -%>
129
+ });
130
+
131
+ factory <%= toPascalCase(collection.name) %>.fromMap(Map<String, dynamic> map) {
132
+ return <%= toPascalCase(collection.name) %>(
133
+ <% for (const [index, attribute] of Object.entries(__attrs)) { -%>
134
+ <%= strict ? toCamelCase(attribute.key) : attribute.key %>: <% if (attribute.type === '${AttributeType.STRING}' || attribute.type === '${AttributeType.EMAIL}' || attribute.type === '${AttributeType.DATETIME}') { -%>
135
+ <% if (attribute.format === '${AttributeType.ENUM}') { -%>
136
+ <% if (attribute.array) { -%>
137
+ (map['<%= attribute.key %>'] as List<dynamic>?)?.map((e) => <%- toPascalCase(collection.name) %><%- toPascalCase(attribute.key) %>.values.firstWhere((element) => element.name == e)).toList()<% } else { -%>
138
+ <% if (!attribute.required) { -%>
139
+ map['<%= attribute.key %>'] != null ? <%- toPascalCase(collection.name) %><%- toPascalCase(attribute.key) %>.values.where((e) => e.name == map['<%= attribute.key %>']).firstOrNull : null<% } else { -%>
140
+ <%- toPascalCase(collection.name) %><%- toPascalCase(attribute.key) %>.values.firstWhere((e) => e.name == map['<%= attribute.key %>'])<% } -%>
141
+ <% } -%>
142
+ <% } else { -%>
143
+ <% if (attribute.array) { -%>
144
+ List<String>.from(map['<%= attribute.key %>'] ?? [])<% } else { -%>
145
+ map['<%= attribute.key %>']<% if (!attribute.required) { %>?<% } %>.toString()<% } -%>
146
+ <% } -%>
147
+ <% } else if (attribute.type === '${AttributeType.INTEGER}') { -%>
148
+ <% if (attribute.array) { -%>
149
+ List<int>.from(map['<%= attribute.key %>'] ?? [])<% } else { -%>
150
+ map['<%= attribute.key %>']<% } -%>
151
+ <% } else if (attribute.type === '${AttributeType.FLOAT}') { -%>
152
+ <% if (attribute.array) { -%>
153
+ List<double>.from(map['<%= attribute.key %>'] ?? [])<% } else { -%>
154
+ map['<%= attribute.key %>']<% } -%>
155
+ <% } else if (attribute.type === '${AttributeType.BOOLEAN}') { -%>
156
+ <% if (attribute.array) { -%>
157
+ List<bool>.from(map['<%= attribute.key %>'] ?? [])<% } else { -%>
158
+ map['<%= attribute.key %>']<% } -%>
159
+ <% } else if (attribute.type === '${AttributeType.RELATIONSHIP}') { -%>
160
+ <% if ((attribute.relationType === 'oneToMany' && attribute.side === 'parent') || (attribute.relationType === 'manyToOne' && attribute.side === 'child') || attribute.relationType === 'manyToMany') { -%>
161
+ (map['<%= attribute.key %>'] as List<dynamic>?)?.map((e) => <%- toPascalCase(collections.find(c => c.$id === attribute.relatedCollection).name) %>.fromMap(e)).toList()
162
+ <% } else { -%>
163
+ <% if (!attribute.required) { -%>
164
+ map['<%= attribute.key %>'] != null ? <%- toPascalCase(collections.find(c => c.$id === attribute.relatedCollection).name) %>.fromMap(map['<%= attribute.key %>']) : null<% } else { -%>
165
+ <%- toPascalCase(collections.find(c => c.$id === attribute.relatedCollection).name) %>.fromMap(map['<%= attribute.key %>'])<% } -%>
166
+ <% } -%>
167
+ <% } -%><% if (index < __attrs.length - 1) { -%>,<% } %>
168
+ <% } -%>
169
+ );
170
+ }
171
+
172
+ Map<String, dynamic> toMap() {
173
+ return {
174
+ <% for (const [index, attribute] of Object.entries(__attrs)) { -%>
175
+ '<%= attribute.key %>': <% if (attribute.type === '${AttributeType.RELATIONSHIP}') { -%>
176
+ <% if ((attribute.relationType === 'oneToMany' && attribute.side === 'parent') || (attribute.relationType === 'manyToOne' && attribute.side === 'child') || attribute.relationType === 'manyToMany') { -%>
177
+ <%= strict ? toCamelCase(attribute.key) : attribute.key %><% if (!attribute.required) { %>?<% } %>.map((e) => e.toMap()).toList()
178
+ <% } else { -%>
179
+ <%= strict ? toCamelCase(attribute.key) : attribute.key %><% if (!attribute.required) { %>?<% } %>.toMap()<% } -%>
180
+ <% } else if (attribute.format === '${AttributeType.ENUM}') { -%>
181
+ <% if (attribute.array) { -%>
182
+ <%= strict ? toCamelCase(attribute.key) : attribute.key %><% if (!attribute.required) { %>?<% } %>.map((e) => e.name).toList()<% } else { -%>
183
+ <%= strict ? toCamelCase(attribute.key) : attribute.key %><% if (!attribute.required) { %>?<% } %>.name<% } -%>
184
+ <% } else { -%>
185
+ <%= strict ? toCamelCase(attribute.key) : attribute.key -%>
186
+ <% } -%><% if (index < __attrs.length - 1) { -%>,<% } %>
187
+ <% } -%>
188
+ };
189
+ }
190
+ }
191
+ `;
192
+ }
193
+ getFileName(collection) {
194
+ return LanguageMeta.toSnakeCase(collection.name) + ".dart";
195
+ }
196
+ }
197
+ //# sourceMappingURL=dart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dart.js","sourceRoot":"","sources":["../../../../lib/type-generation/languages/dart.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { LanguageMeta, Attribute, Collection } from "./language.js";
2
+ export declare class Java extends LanguageMeta {
3
+ getType(attribute: Attribute, collections?: Collection[], collectionName?: string): string;
4
+ getTemplate(): string;
5
+ getFileName(collection: Collection): string;
6
+ }
7
+ //# sourceMappingURL=java.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"java.d.ts","sourceRoot":"","sources":["../../../../lib/type-generation/languages/java.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEpE,qBAAa,IAAK,SAAQ,YAAY;IACpC,OAAO,CACL,SAAS,EAAE,SAAS,EACpB,WAAW,CAAC,EAAE,UAAU,EAAE,EAC1B,cAAc,CAAC,EAAE,MAAM,GACtB,MAAM;IA4DT,WAAW,IAAI,MAAM;IAgFrB,WAAW,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM;CAG5C"}
@@ -0,0 +1,140 @@
1
+ import { AttributeType } from "../attribute.js";
2
+ import { LanguageMeta } from "./language.js";
3
+ export class Java extends LanguageMeta {
4
+ getType(attribute, collections, collectionName) {
5
+ let type = "";
6
+ switch (attribute.type) {
7
+ case AttributeType.STRING:
8
+ case AttributeType.EMAIL:
9
+ case AttributeType.DATETIME:
10
+ type = "String";
11
+ if (attribute.format === AttributeType.ENUM) {
12
+ type =
13
+ LanguageMeta.toPascalCase(collectionName) +
14
+ LanguageMeta.toPascalCase(attribute.key);
15
+ }
16
+ break;
17
+ case AttributeType.INTEGER:
18
+ type = "Integer";
19
+ break;
20
+ case AttributeType.FLOAT:
21
+ type = "Double";
22
+ break;
23
+ case AttributeType.BOOLEAN:
24
+ type = "Boolean";
25
+ break;
26
+ case AttributeType.RELATIONSHIP:
27
+ const relatedCollection = collections?.find((c) => c.$id === attribute.relatedCollection);
28
+ if (!relatedCollection) {
29
+ throw new Error(`Related collection with ID '${attribute.relatedCollection}' not found.`);
30
+ }
31
+ type = LanguageMeta.toPascalCase(relatedCollection.name);
32
+ if ((attribute.relationType === "oneToMany" &&
33
+ attribute.side === "parent") ||
34
+ (attribute.relationType === "manyToOne" &&
35
+ attribute.side === "child") ||
36
+ attribute.relationType === "manyToMany") {
37
+ type = "List<" + type + ">";
38
+ }
39
+ break;
40
+ case AttributeType.POINT:
41
+ type = "List<Double>";
42
+ break;
43
+ case AttributeType.LINESTRING:
44
+ type = "List<List<Double>>";
45
+ break;
46
+ case AttributeType.POLYGON:
47
+ type = "List<List<List<Double>>>";
48
+ break;
49
+ default:
50
+ throw new Error(`Unknown attribute type: ${attribute.type}`);
51
+ }
52
+ if (attribute.array) {
53
+ type = "List<" + type + ">";
54
+ }
55
+ return type;
56
+ }
57
+ getTemplate() {
58
+ return `package io.appwrite.models;
59
+
60
+ /**
61
+ * This file is auto-generated by the Appwrite CLI.
62
+ * You can regenerate it by running \`appwrite ${process.argv.slice(2).join(" ")}\`.
63
+ */
64
+
65
+ import java.util.Objects;
66
+ <% for (const attribute of collection.attributes) { -%>
67
+ <% if (attribute.type === 'relationship') { -%>
68
+ import io.appwrite.models.<%- toPascalCase(collections.find(c => c.$id === attribute.relatedCollection).name) %>;
69
+ <% } -%>
70
+ <% } -%>
71
+
72
+ public class <%- toPascalCase(collection.name) %> {
73
+ <% for (const attribute of collection.attributes) { -%>
74
+ <% if (attribute.format === 'enum') { -%>
75
+
76
+ public enum <%- toPascalCase(collection.name) %><%- toPascalCase(attribute.key) %> {
77
+ <% for (const [index, element] of Object.entries(attribute.elements)) { -%>
78
+ <%- strict ? toUpperSnakeCase(element) : element %><%- index < attribute.elements.length - 1 ? ',' : ';' %>
79
+ <% } -%>
80
+ }
81
+
82
+ <% } -%>
83
+ <% } -%>
84
+ <% for (const attribute of collection.attributes) { -%>
85
+ private <%- getType(attribute, collections, collection.name) %> <%- strict ? toCamelCase(attribute.key) : attribute.key %>;
86
+ <% } -%>
87
+
88
+ public <%- toPascalCase(collection.name) %>() {
89
+ }
90
+
91
+ public <%- toPascalCase(collection.name) %>(
92
+ <% for (const [index, attribute] of Object.entries(collection.attributes)) { -%>
93
+ <%- getType(attribute, collections, collection.name) %> <%= strict ? toCamelCase(attribute.key) : attribute.key %><%- index < collection.attributes.length - 1 ? ',' : '' %>
94
+ <% } -%>
95
+ ) {
96
+ <% for (const attribute of collection.attributes) { -%>
97
+ this.<%= strict ? toCamelCase(attribute.key) : attribute.key %> = <%= strict ? toCamelCase(attribute.key) : attribute.key %>;
98
+ <% } -%>
99
+ }
100
+
101
+ <% for (const attribute of collection.attributes) { -%>
102
+ public <%- getType(attribute, collections, collection.name) %> get<%- toPascalCase(attribute.key) %>() {
103
+ return <%= strict ? toCamelCase(attribute.key) : attribute.key %>;
104
+ }
105
+
106
+ public void set<%- toPascalCase(attribute.key) %>(<%- getType(attribute, collections, collection.name) %> <%= strict ? toCamelCase(attribute.key) : attribute.key %>) {
107
+ this.<%= strict ? toCamelCase(attribute.key) : attribute.key %> = <%= strict ? toCamelCase(attribute.key) : attribute.key %>;
108
+ }
109
+
110
+ <% } -%>
111
+ @Override
112
+ public boolean equals(Object obj) {
113
+ if (this == obj) return true;
114
+ if (obj == null || getClass() != obj.getClass()) return false;
115
+ <%- toPascalCase(collection.name) %> that = (<%- toPascalCase(collection.name) %>) obj;
116
+ return <% collection.attributes.forEach((attr, index) => { %>Objects.equals(<%= toCamelCase(attr.key) %>, that.<%= toCamelCase(attr.key) %>)<% if (index < collection.attributes.length - 1) { %> &&
117
+ <% } }); %>;
118
+ }
119
+
120
+ @Override
121
+ public int hashCode() {
122
+ return Objects.hash(<%= collection.attributes.map(attr => toCamelCase(attr.key)).join(', ') %>);
123
+ }
124
+
125
+ @Override
126
+ public String toString() {
127
+ return "<%- toPascalCase(collection.name) %>{" +
128
+ <% for (const [index, attribute] of Object.entries(collection.attributes)) { -%>
129
+ "<%= strict ? toCamelCase(attribute.key) : attribute.key %>=" + <%= strict ? toCamelCase(attribute.key) : attribute.key %> +<% if (index < collection.attributes.length - 1) { %> ", " +<% } %>
130
+ <% } -%>
131
+ '}';
132
+ }
133
+ }
134
+ `;
135
+ }
136
+ getFileName(collection) {
137
+ return LanguageMeta.toPascalCase(collection.name) + ".java";
138
+ }
139
+ }
140
+ //# sourceMappingURL=java.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"java.js","sourceRoot":"","sources":["../../../../lib/type-generation/languages/java.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAyB,MAAM,eAAe,CAAC;AAEpE,MAAM,OAAO,IAAK,SAAQ,YAAY;IACpC,OAAO,CACL,SAAoB,EACpB,WAA0B,EAC1B,cAAuB;QAEvB,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,QAAQ,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,KAAK,aAAa,CAAC,MAAM,CAAC;YAC1B,KAAK,aAAa,CAAC,KAAK,CAAC;YACzB,KAAK,aAAa,CAAC,QAAQ;gBACzB,IAAI,GAAG,QAAQ,CAAC;gBAChB,IAAI,SAAS,CAAC,MAAM,KAAK,aAAa,CAAC,IAAI,EAAE,CAAC;oBAC5C,IAAI;wBACF,YAAY,CAAC,YAAY,CAAC,cAAe,CAAC;4BAC1C,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBAC7C,CAAC;gBACD,MAAM;YACR,KAAK,aAAa,CAAC,OAAO;gBACxB,IAAI,GAAG,SAAS,CAAC;gBACjB,MAAM;YACR,KAAK,aAAa,CAAC,KAAK;gBACtB,IAAI,GAAG,QAAQ,CAAC;gBAChB,MAAM;YACR,KAAK,aAAa,CAAC,OAAO;gBACxB,IAAI,GAAG,SAAS,CAAC;gBACjB,MAAM;YACR,KAAK,aAAa,CAAC,YAAY;gBAC7B,MAAM,iBAAiB,GAAG,WAAW,EAAE,IAAI,CACzC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,SAAS,CAAC,iBAAiB,CAC7C,CAAC;gBACF,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACvB,MAAM,IAAI,KAAK,CACb,+BAA+B,SAAS,CAAC,iBAAiB,cAAc,CACzE,CAAC;gBACJ,CAAC;gBACD,IAAI,GAAG,YAAY,CAAC,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBACzD,IACE,CAAC,SAAS,CAAC,YAAY,KAAK,WAAW;oBACrC,SAAS,CAAC,IAAI,KAAK,QAAQ,CAAC;oBAC9B,CAAC,SAAS,CAAC,YAAY,KAAK,WAAW;wBACrC,SAAS,CAAC,IAAI,KAAK,OAAO,CAAC;oBAC7B,SAAS,CAAC,YAAY,KAAK,YAAY,EACvC,CAAC;oBACD,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,GAAG,CAAC;gBAC9B,CAAC;gBACD,MAAM;YACR,KAAK,aAAa,CAAC,KAAK;gBACtB,IAAI,GAAG,cAAc,CAAC;gBACtB,MAAM;YACR,KAAK,aAAa,CAAC,UAAU;gBAC3B,IAAI,GAAG,oBAAoB,CAAC;gBAC5B,MAAM;YACR,KAAK,aAAa,CAAC,OAAO;gBACxB,IAAI,GAAG,0BAA0B,CAAC;gBAClC,MAAM;YACR;gBACE,MAAM,IAAI,KAAK,CAAC,2BAA2B,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;YACpB,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,GAAG,CAAC;QAC9B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,WAAW;QACT,OAAO;;;;iDAIsC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwE/E,CAAC;IACA,CAAC;IAED,WAAW,CAAC,UAAsB;QAChC,OAAO,YAAY,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;IAC9D,CAAC;CACF"}
@@ -0,0 +1,9 @@
1
+ import { LanguageMeta, Attribute, Collection } from "./language.js";
2
+ export declare class JavaScript extends LanguageMeta {
3
+ getType(attribute: Attribute, collections?: Collection[]): string;
4
+ isSingleFile(): boolean;
5
+ private _getAppwriteDependency;
6
+ getTemplate(): string;
7
+ getFileName(_: Collection | undefined): string;
8
+ }
9
+ //# sourceMappingURL=javascript.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"javascript.d.ts","sourceRoot":"","sources":["../../../../lib/type-generation/languages/javascript.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEpE,qBAAa,UAAW,SAAQ,YAAY;IAC1C,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,UAAU,EAAE,GAAG,MAAM;IA+DjE,YAAY,IAAI,OAAO;IAIvB,OAAO,CAAC,sBAAsB;IAe9B,WAAW,IAAI,MAAM;IA8BrB,WAAW,CAAC,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,MAAM;CAG/C"}
@@ -0,0 +1,109 @@
1
+ import fs from "fs";
2
+ import path from "path";
3
+ import { AttributeType } from "../attribute.js";
4
+ import { LanguageMeta } from "./language.js";
5
+ export class JavaScript extends LanguageMeta {
6
+ getType(attribute, collections) {
7
+ let type = "";
8
+ switch (attribute.type) {
9
+ case AttributeType.STRING:
10
+ case AttributeType.EMAIL:
11
+ case AttributeType.DATETIME:
12
+ case AttributeType.IP:
13
+ case AttributeType.URL:
14
+ type = "string";
15
+ if (attribute.format === AttributeType.ENUM) {
16
+ type = LanguageMeta.toPascalCase(attribute.key);
17
+ }
18
+ break;
19
+ case AttributeType.INTEGER:
20
+ type = "number";
21
+ break;
22
+ case AttributeType.FLOAT:
23
+ type = "number";
24
+ break;
25
+ case AttributeType.BOOLEAN:
26
+ type = "boolean";
27
+ break;
28
+ case AttributeType.RELATIONSHIP:
29
+ const relatedCollection = collections?.find((c) => c.$id === attribute.relatedCollection);
30
+ if (!relatedCollection) {
31
+ throw new Error(`Related collection with ID '${attribute.relatedCollection}' not found.`);
32
+ }
33
+ type = LanguageMeta.toPascalCase(relatedCollection.name);
34
+ if ((attribute.relationType === "oneToMany" &&
35
+ attribute.side === "parent") ||
36
+ (attribute.relationType === "manyToOne" &&
37
+ attribute.side === "child") ||
38
+ attribute.relationType === "manyToMany") {
39
+ type = `${type}[]`;
40
+ }
41
+ break;
42
+ case AttributeType.POINT:
43
+ type = "number[]";
44
+ break;
45
+ case AttributeType.LINESTRING:
46
+ type = "number[][]";
47
+ break;
48
+ case AttributeType.POLYGON:
49
+ type = "number[][][]";
50
+ break;
51
+ default:
52
+ throw new Error(`Unknown attribute type: ${attribute.type}`);
53
+ }
54
+ if (attribute.array) {
55
+ type += "[]";
56
+ }
57
+ if (!attribute.required && attribute.default === null) {
58
+ type += " | null";
59
+ }
60
+ return type;
61
+ }
62
+ isSingleFile() {
63
+ return true;
64
+ }
65
+ _getAppwriteDependency() {
66
+ if (fs.existsSync(path.resolve(process.cwd(), "package.json"))) {
67
+ const packageJsonRaw = fs.readFileSync(path.resolve(process.cwd(), "package.json"));
68
+ const packageJson = JSON.parse(packageJsonRaw.toString("utf-8"));
69
+ return packageJson.dependencies &&
70
+ packageJson.dependencies["node-appwrite"]
71
+ ? "node-appwrite"
72
+ : "appwrite";
73
+ }
74
+ return "appwrite";
75
+ }
76
+ getTemplate() {
77
+ return `/**
78
+ * @typedef {import('${this._getAppwriteDependency()}').Models.Row} Row
79
+ */
80
+
81
+ // This file is auto-generated by the Appwrite CLI.
82
+ // You can regenerate it by running \`appwrite ${process.argv.slice(2).join(" ")}\`.
83
+
84
+ <% for (const collection of collections) { -%>
85
+ <% for (const attribute of collection.attributes) { -%>
86
+ <% if (attribute.format === 'enum') { -%>
87
+ /**
88
+ * @typedef {"<%- attribute.elements.join('"|"') %>"} <%- toPascalCase(attribute.key) %>
89
+ */
90
+
91
+ <% } -%>
92
+ <% } -%>
93
+ <% } -%>
94
+ <% for (const [index, collection] of Object.entries(collections)) { %>/**
95
+ * @typedef {Row & {
96
+ <% for (const attribute of collection.attributes) { -%>
97
+ * <%- strict ? toCamelCase(attribute.key) : attribute.key %>: <%- getType(attribute, collections) %>;
98
+ <% } -%>
99
+ * }} <%- toPascalCase(collection.name) %>
100
+ */
101
+ <% if (index < collections.length - 1) { %>
102
+ <% } -%>
103
+ <% } %>`;
104
+ }
105
+ getFileName(_) {
106
+ return "appwrite-types.js";
107
+ }
108
+ }
109
+ //# sourceMappingURL=javascript.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"javascript.js","sourceRoot":"","sources":["../../../../lib/type-generation/languages/javascript.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAyB,MAAM,eAAe,CAAC;AAEpE,MAAM,OAAO,UAAW,SAAQ,YAAY;IAC1C,OAAO,CAAC,SAAoB,EAAE,WAA0B;QACtD,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,QAAQ,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,KAAK,aAAa,CAAC,MAAM,CAAC;YAC1B,KAAK,aAAa,CAAC,KAAK,CAAC;YACzB,KAAK,aAAa,CAAC,QAAQ,CAAC;YAC5B,KAAK,aAAa,CAAC,EAAE,CAAC;YACtB,KAAK,aAAa,CAAC,GAAG;gBACpB,IAAI,GAAG,QAAQ,CAAC;gBAChB,IAAI,SAAS,CAAC,MAAM,KAAK,aAAa,CAAC,IAAI,EAAE,CAAC;oBAC5C,IAAI,GAAG,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBAClD,CAAC;gBACD,MAAM;YACR,KAAK,aAAa,CAAC,OAAO;gBACxB,IAAI,GAAG,QAAQ,CAAC;gBAChB,MAAM;YACR,KAAK,aAAa,CAAC,KAAK;gBACtB,IAAI,GAAG,QAAQ,CAAC;gBAChB,MAAM;YACR,KAAK,aAAa,CAAC,OAAO;gBACxB,IAAI,GAAG,SAAS,CAAC;gBACjB,MAAM;YACR,KAAK,aAAa,CAAC,YAAY;gBAC7B,MAAM,iBAAiB,GAAG,WAAW,EAAE,IAAI,CACzC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,SAAS,CAAC,iBAAiB,CAC7C,CAAC;gBACF,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACvB,MAAM,IAAI,KAAK,CACb,+BAA+B,SAAS,CAAC,iBAAiB,cAAc,CACzE,CAAC;gBACJ,CAAC;gBACD,IAAI,GAAG,YAAY,CAAC,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBACzD,IACE,CAAC,SAAS,CAAC,YAAY,KAAK,WAAW;oBACrC,SAAS,CAAC,IAAI,KAAK,QAAQ,CAAC;oBAC9B,CAAC,SAAS,CAAC,YAAY,KAAK,WAAW;wBACrC,SAAS,CAAC,IAAI,KAAK,OAAO,CAAC;oBAC7B,SAAS,CAAC,YAAY,KAAK,YAAY,EACvC,CAAC;oBACD,IAAI,GAAG,GAAG,IAAI,IAAI,CAAC;gBACrB,CAAC;gBACD,MAAM;YACR,KAAK,aAAa,CAAC,KAAK;gBACtB,IAAI,GAAG,UAAU,CAAC;gBAClB,MAAM;YACR,KAAK,aAAa,CAAC,UAAU;gBAC3B,IAAI,GAAG,YAAY,CAAC;gBACpB,MAAM;YACR,KAAK,aAAa,CAAC,OAAO;gBACxB,IAAI,GAAG,cAAc,CAAC;gBACtB,MAAM;YACR;gBACE,MAAM,IAAI,KAAK,CAAC,2BAA2B,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;YACpB,IAAI,IAAI,IAAI,CAAC;QACf,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YACtD,IAAI,IAAI,SAAS,CAAC;QACpB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,sBAAsB;QAC5B,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC;YAC/D,MAAM,cAAc,GAAG,EAAE,CAAC,YAAY,CACpC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,CAC5C,CAAC;YACF,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YACjE,OAAO,WAAW,CAAC,YAAY;gBAC7B,WAAW,CAAC,YAAY,CAAC,eAAe,CAAC;gBACzC,CAAC,CAAC,eAAe;gBACjB,CAAC,CAAC,UAAU,CAAC;QACjB,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,WAAW;QACT,OAAO;uBACY,IAAI,CAAC,sBAAsB,EAAE;;;;iDAIH,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;QAqBxE,CAAC;IACP,CAAC;IAED,WAAW,CAAC,CAAyB;QACnC,OAAO,mBAAmB,CAAC;IAC7B,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ import { LanguageMeta, Attribute, Collection } from "./language.js";
2
+ export declare class Kotlin extends LanguageMeta {
3
+ getType(attribute: Attribute, collections?: Collection[], collectionName?: string): string;
4
+ getTemplate(): string;
5
+ getFileName(collection: Collection): string;
6
+ }
7
+ //# sourceMappingURL=kotlin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kotlin.d.ts","sourceRoot":"","sources":["../../../../lib/type-generation/languages/kotlin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEpE,qBAAa,MAAO,SAAQ,YAAY;IACtC,OAAO,CACL,SAAS,EAAE,SAAS,EACpB,WAAW,CAAC,EAAE,UAAU,EAAE,EAC1B,cAAc,CAAC,EAAE,MAAM,GACtB,MAAM;IA+DT,WAAW,IAAI,MAAM;IAgCrB,WAAW,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM;CAG5C"}
@@ -0,0 +1,95 @@
1
+ import { AttributeType } from "../attribute.js";
2
+ import { LanguageMeta } from "./language.js";
3
+ export class Kotlin extends LanguageMeta {
4
+ getType(attribute, collections, collectionName) {
5
+ let type = "";
6
+ switch (attribute.type) {
7
+ case AttributeType.STRING:
8
+ case AttributeType.EMAIL:
9
+ case AttributeType.DATETIME:
10
+ type = "String";
11
+ if (attribute.format === AttributeType.ENUM) {
12
+ type =
13
+ LanguageMeta.toPascalCase(collectionName) +
14
+ LanguageMeta.toPascalCase(attribute.key);
15
+ }
16
+ break;
17
+ case AttributeType.INTEGER:
18
+ type = "Int";
19
+ break;
20
+ case AttributeType.FLOAT:
21
+ type = "Float";
22
+ break;
23
+ case AttributeType.BOOLEAN:
24
+ type = "Boolean";
25
+ break;
26
+ case AttributeType.RELATIONSHIP:
27
+ const relatedCollection = collections?.find((c) => c.$id === attribute.relatedCollection);
28
+ if (!relatedCollection) {
29
+ throw new Error(`Related collection with ID '${attribute.relatedCollection}' not found.`);
30
+ }
31
+ type = LanguageMeta.toPascalCase(relatedCollection.name);
32
+ if ((attribute.relationType === "oneToMany" &&
33
+ attribute.side === "parent") ||
34
+ (attribute.relationType === "manyToOne" &&
35
+ attribute.side === "child") ||
36
+ attribute.relationType === "manyToMany") {
37
+ type = `List<${type}>`;
38
+ }
39
+ break;
40
+ case AttributeType.POINT:
41
+ type = "List<Double>";
42
+ break;
43
+ case AttributeType.LINESTRING:
44
+ type = "List<List<Double>>";
45
+ break;
46
+ case AttributeType.POLYGON:
47
+ type = "List<List<List<Double>>>";
48
+ break;
49
+ default:
50
+ throw new Error(`Unknown attribute type: ${attribute.type}`);
51
+ }
52
+ if (attribute.array) {
53
+ type = "List<" + type + ">";
54
+ }
55
+ if (!attribute.required && attribute.default === null) {
56
+ type += "?";
57
+ }
58
+ return type;
59
+ }
60
+ getTemplate() {
61
+ return `package io.appwrite.models
62
+
63
+ <% for (const attribute of collection.attributes) { -%>
64
+ <% if (attribute.type === 'relationship') { -%>
65
+ import <%- toPascalCase(collections.find(c => c.$id === attribute.relatedCollection).name) %>
66
+
67
+ <% } -%>
68
+ <% } -%>
69
+ /**
70
+ * This file is auto-generated by the Appwrite CLI.
71
+ * You can regenerate it by running \`appwrite ${process.argv.slice(2).join(" ")}\`.
72
+ */
73
+
74
+ <% for (const attribute of collection.attributes) { -%>
75
+ <% if (attribute.format === 'enum') { -%>
76
+ enum class <%- toPascalCase(collection.name) %><%- toPascalCase(attribute.key) %> {
77
+ <% for (const [index, element] of Object.entries(attribute.elements)) { -%>
78
+ <%- strict ? toUpperSnakeCase(element) : element %><%- index < attribute.elements.length - 1 ? ',' : '' %>
79
+ <% } -%>
80
+ }
81
+
82
+ <% } -%>
83
+ <% } -%>
84
+ data class <%- toPascalCase(collection.name) %>(
85
+ <% for (const [index, attribute] of Object.entries(collection.attributes)) { -%>
86
+ val <%- strict ? toCamelCase(attribute.key) : attribute.key %>: <%- getType(attribute, collections, collection.name) %><% if (index < collection.attributes.length - 1) { %>,<% } %>
87
+ <% } -%>
88
+ )
89
+ `;
90
+ }
91
+ getFileName(collection) {
92
+ return LanguageMeta.toPascalCase(collection.name) + ".kt";
93
+ }
94
+ }
95
+ //# sourceMappingURL=kotlin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kotlin.js","sourceRoot":"","sources":["../../../../lib/type-generation/languages/kotlin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ export interface Attribute {
2
+ key: string;
3
+ type: string;
4
+ required?: boolean;
5
+ array?: boolean;
6
+ default?: any;
7
+ format?: string;
8
+ elements?: string[];
9
+ relatedCollection?: string;
10
+ relationType?: string;
11
+ side?: string;
12
+ }
13
+ export interface Collection {
14
+ $id: string;
15
+ name: string;
16
+ attributes: Attribute[];
17
+ }
18
+ export declare abstract class LanguageMeta {
19
+ constructor();
20
+ static toKebabCase(string: string): string;
21
+ static toSnakeCase(string: string): string;
22
+ static toUpperSnakeCase(string: string): string;
23
+ static toCamelCase(string: string): string;
24
+ static toPascalCase(string: string): string;
25
+ /**
26
+ * Get the type literal of the given attribute.
27
+ */
28
+ abstract getType(attribute: Attribute, collections?: Collection[], collectionName?: string): string;
29
+ /**
30
+ * Returns true if the language uses a single file for all types.
31
+ */
32
+ isSingleFile(): boolean;
33
+ /**
34
+ * Get the EJS template used to generate the types for this language.
35
+ */
36
+ abstract getTemplate(): string;
37
+ /**
38
+ * Get the file extension used by files of this language.
39
+ */
40
+ abstract getFileName(collection?: Collection): string;
41
+ }
42
+ export declare function detectLanguage(): string;
43
+ //# sourceMappingURL=language.d.ts.map