@constructive-sdk/cli 0.12.7 → 0.12.8

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 (333) hide show
  1. package/admin/cli/commands/app-achievement.js +38 -15
  2. package/admin/cli/commands/app-admin-grant.js +38 -15
  3. package/admin/cli/commands/app-grant.js +40 -16
  4. package/admin/cli/commands/app-level-requirement.js +42 -17
  5. package/admin/cli/commands/app-level.js +40 -16
  6. package/admin/cli/commands/app-limit-default.js +32 -12
  7. package/admin/cli/commands/app-limit.js +36 -14
  8. package/admin/cli/commands/app-membership-default.js +40 -16
  9. package/admin/cli/commands/app-membership.js +58 -25
  10. package/admin/cli/commands/app-owner-grant.js +38 -15
  11. package/admin/cli/commands/app-permission-default.js +30 -11
  12. package/admin/cli/commands/app-permission.js +36 -14
  13. package/admin/cli/commands/app-step.js +38 -15
  14. package/admin/cli/commands/claimed-invite.js +38 -15
  15. package/admin/cli/commands/invite.js +50 -21
  16. package/admin/cli/commands/membership-type.js +34 -13
  17. package/admin/cli/commands/org-admin-grant.js +40 -16
  18. package/admin/cli/commands/org-chart-edge-grant.js +44 -18
  19. package/admin/cli/commands/org-chart-edge.js +42 -17
  20. package/admin/cli/commands/org-claimed-invite.js +40 -16
  21. package/admin/cli/commands/org-get-managers-record.js +30 -11
  22. package/admin/cli/commands/org-get-subordinates-record.js +30 -11
  23. package/admin/cli/commands/org-grant.js +42 -17
  24. package/admin/cli/commands/org-invite.js +54 -23
  25. package/admin/cli/commands/org-limit-default.js +32 -12
  26. package/admin/cli/commands/org-limit.js +38 -15
  27. package/admin/cli/commands/org-member.js +34 -13
  28. package/admin/cli/commands/org-membership-default.js +44 -18
  29. package/admin/cli/commands/org-membership.js +58 -25
  30. package/admin/cli/commands/org-owner-grant.js +40 -16
  31. package/admin/cli/commands/org-permission-default.js +32 -12
  32. package/admin/cli/commands/org-permission.js +36 -14
  33. package/admin/cli/utils.d.ts +38 -0
  34. package/admin/cli/utils.js +96 -0
  35. package/auth/cli/commands/audit-log.js +42 -17
  36. package/auth/cli/commands/connected-account.js +42 -17
  37. package/auth/cli/commands/crypto-address.js +40 -16
  38. package/auth/cli/commands/email.js +40 -16
  39. package/auth/cli/commands/phone-number.js +42 -17
  40. package/auth/cli/commands/role-type.js +30 -11
  41. package/auth/cli/commands/user.js +80 -16
  42. package/auth/cli/utils.d.ts +38 -0
  43. package/auth/cli/utils.js +96 -0
  44. package/esm/admin/cli/commands/app-achievement.js +39 -16
  45. package/esm/admin/cli/commands/app-admin-grant.js +39 -16
  46. package/esm/admin/cli/commands/app-grant.js +41 -17
  47. package/esm/admin/cli/commands/app-level-requirement.js +43 -18
  48. package/esm/admin/cli/commands/app-level.js +41 -17
  49. package/esm/admin/cli/commands/app-limit-default.js +33 -13
  50. package/esm/admin/cli/commands/app-limit.js +37 -15
  51. package/esm/admin/cli/commands/app-membership-default.js +41 -17
  52. package/esm/admin/cli/commands/app-membership.js +59 -26
  53. package/esm/admin/cli/commands/app-owner-grant.js +39 -16
  54. package/esm/admin/cli/commands/app-permission-default.js +31 -12
  55. package/esm/admin/cli/commands/app-permission.js +37 -15
  56. package/esm/admin/cli/commands/app-step.js +39 -16
  57. package/esm/admin/cli/commands/claimed-invite.js +39 -16
  58. package/esm/admin/cli/commands/invite.js +51 -22
  59. package/esm/admin/cli/commands/membership-type.js +35 -14
  60. package/esm/admin/cli/commands/org-admin-grant.js +41 -17
  61. package/esm/admin/cli/commands/org-chart-edge-grant.js +45 -19
  62. package/esm/admin/cli/commands/org-chart-edge.js +43 -18
  63. package/esm/admin/cli/commands/org-claimed-invite.js +41 -17
  64. package/esm/admin/cli/commands/org-get-managers-record.js +31 -12
  65. package/esm/admin/cli/commands/org-get-subordinates-record.js +31 -12
  66. package/esm/admin/cli/commands/org-grant.js +43 -18
  67. package/esm/admin/cli/commands/org-invite.js +55 -24
  68. package/esm/admin/cli/commands/org-limit-default.js +33 -13
  69. package/esm/admin/cli/commands/org-limit.js +39 -16
  70. package/esm/admin/cli/commands/org-member.js +35 -14
  71. package/esm/admin/cli/commands/org-membership-default.js +45 -19
  72. package/esm/admin/cli/commands/org-membership.js +59 -26
  73. package/esm/admin/cli/commands/org-owner-grant.js +41 -17
  74. package/esm/admin/cli/commands/org-permission-default.js +33 -13
  75. package/esm/admin/cli/commands/org-permission.js +37 -15
  76. package/esm/admin/cli/utils.d.ts +38 -0
  77. package/esm/admin/cli/utils.js +90 -0
  78. package/esm/auth/cli/commands/audit-log.js +43 -18
  79. package/esm/auth/cli/commands/connected-account.js +43 -18
  80. package/esm/auth/cli/commands/crypto-address.js +41 -17
  81. package/esm/auth/cli/commands/email.js +41 -17
  82. package/esm/auth/cli/commands/phone-number.js +43 -18
  83. package/esm/auth/cli/commands/role-type.js +31 -12
  84. package/esm/auth/cli/commands/user.js +81 -17
  85. package/esm/auth/cli/utils.d.ts +38 -0
  86. package/esm/auth/cli/utils.js +90 -0
  87. package/esm/objects/cli/commands/commit.js +45 -19
  88. package/esm/objects/cli/commands/get-all-record.js +31 -12
  89. package/esm/objects/cli/commands/object.js +41 -17
  90. package/esm/objects/cli/commands/ref.js +37 -15
  91. package/esm/objects/cli/commands/store.js +37 -15
  92. package/esm/objects/cli/utils.d.ts +38 -0
  93. package/esm/objects/cli/utils.js +90 -0
  94. package/esm/public/cli/commands/api-module.js +37 -15
  95. package/esm/public/cli/commands/api-schema.js +35 -14
  96. package/esm/public/cli/commands/api.js +41 -17
  97. package/esm/public/cli/commands/app-achievement.js +39 -16
  98. package/esm/public/cli/commands/app-admin-grant.js +39 -16
  99. package/esm/public/cli/commands/app-grant.js +41 -17
  100. package/esm/public/cli/commands/app-level-requirement.js +43 -18
  101. package/esm/public/cli/commands/app-level.js +41 -17
  102. package/esm/public/cli/commands/app-limit-default.js +33 -13
  103. package/esm/public/cli/commands/app-limit.js +37 -15
  104. package/esm/public/cli/commands/app-membership-default.js +41 -17
  105. package/esm/public/cli/commands/app-membership.js +59 -26
  106. package/esm/public/cli/commands/app-owner-grant.js +39 -16
  107. package/esm/public/cli/commands/app-permission-default.js +31 -12
  108. package/esm/public/cli/commands/app-permission.js +37 -15
  109. package/esm/public/cli/commands/app-step.js +39 -16
  110. package/esm/public/cli/commands/app.js +45 -19
  111. package/esm/public/cli/commands/ast-migration.js +53 -23
  112. package/esm/public/cli/commands/audit-log.js +43 -18
  113. package/esm/public/cli/commands/blueprint-template.js +67 -30
  114. package/esm/public/cli/commands/blueprint.js +61 -27
  115. package/esm/public/cli/commands/check-constraint.js +55 -24
  116. package/esm/public/cli/commands/claimed-invite.js +39 -16
  117. package/esm/public/cli/commands/commit.js +45 -19
  118. package/esm/public/cli/commands/connected-account.js +43 -18
  119. package/esm/public/cli/commands/connected-accounts-module.js +41 -17
  120. package/esm/public/cli/commands/crypto-address.js +41 -17
  121. package/esm/public/cli/commands/crypto-addresses-module.js +43 -18
  122. package/esm/public/cli/commands/crypto-auth-module.js +55 -24
  123. package/esm/public/cli/commands/database-provision-module.js +55 -24
  124. package/esm/public/cli/commands/database-transfer.js +55 -24
  125. package/esm/public/cli/commands/database.js +43 -18
  126. package/esm/public/cli/commands/default-ids-module.js +31 -12
  127. package/esm/public/cli/commands/default-privilege.js +41 -17
  128. package/esm/public/cli/commands/denormalized-table-field.js +51 -22
  129. package/esm/public/cli/commands/domain.js +39 -16
  130. package/esm/public/cli/commands/email.js +41 -17
  131. package/esm/public/cli/commands/emails-module.js +41 -17
  132. package/esm/public/cli/commands/embedding-chunk.js +63 -28
  133. package/esm/public/cli/commands/encrypted-secrets-module.js +37 -15
  134. package/esm/public/cli/commands/enum.js +51 -22
  135. package/esm/public/cli/commands/field.js +75 -34
  136. package/esm/public/cli/commands/foreign-key-constraint.js +63 -28
  137. package/esm/public/cli/commands/full-text-search.js +45 -19
  138. package/esm/public/cli/commands/get-all-record.js +31 -12
  139. package/esm/public/cli/commands/hierarchy-module.js +67 -30
  140. package/esm/public/cli/commands/index.js +65 -29
  141. package/esm/public/cli/commands/invite.js +51 -22
  142. package/esm/public/cli/commands/invites-module.js +55 -24
  143. package/esm/public/cli/commands/levels-module.js +79 -36
  144. package/esm/public/cli/commands/limits-module.js +63 -28
  145. package/esm/public/cli/commands/membership-type.js +35 -14
  146. package/esm/public/cli/commands/membership-types-module.js +37 -15
  147. package/esm/public/cli/commands/memberships-module.js +89 -41
  148. package/esm/public/cli/commands/migrate-file.js +33 -13
  149. package/esm/public/cli/commands/node-type-registry.js +89 -19
  150. package/esm/public/cli/commands/object.js +41 -17
  151. package/esm/public/cli/commands/org-admin-grant.js +41 -17
  152. package/esm/public/cli/commands/org-chart-edge-grant.js +45 -19
  153. package/esm/public/cli/commands/org-chart-edge.js +43 -18
  154. package/esm/public/cli/commands/org-claimed-invite.js +41 -17
  155. package/esm/public/cli/commands/org-get-managers-record.js +31 -12
  156. package/esm/public/cli/commands/org-get-subordinates-record.js +31 -12
  157. package/esm/public/cli/commands/org-grant.js +43 -18
  158. package/esm/public/cli/commands/org-invite.js +55 -24
  159. package/esm/public/cli/commands/org-limit-default.js +33 -13
  160. package/esm/public/cli/commands/org-limit.js +39 -16
  161. package/esm/public/cli/commands/org-member.js +35 -14
  162. package/esm/public/cli/commands/org-membership-default.js +45 -19
  163. package/esm/public/cli/commands/org-membership.js +59 -26
  164. package/esm/public/cli/commands/org-owner-grant.js +41 -17
  165. package/esm/public/cli/commands/org-permission-default.js +33 -13
  166. package/esm/public/cli/commands/org-permission.js +37 -15
  167. package/esm/public/cli/commands/permissions-module.js +61 -27
  168. package/esm/public/cli/commands/phone-number.js +43 -18
  169. package/esm/public/cli/commands/phone-numbers-module.js +41 -17
  170. package/esm/public/cli/commands/policy.js +61 -27
  171. package/esm/public/cli/commands/primary-key-constraint.js +53 -23
  172. package/esm/public/cli/commands/profiles-module.js +63 -28
  173. package/esm/public/cli/commands/ref.js +37 -15
  174. package/esm/public/cli/commands/relation-provision.js +89 -41
  175. package/esm/public/cli/commands/rls-module.js +49 -21
  176. package/esm/public/cli/commands/role-type.js +31 -12
  177. package/esm/public/cli/commands/schema-grant.js +39 -16
  178. package/esm/public/cli/commands/schema.js +55 -24
  179. package/esm/public/cli/commands/secrets-module.js +37 -15
  180. package/esm/public/cli/commands/secure-table-provision.js +63 -28
  181. package/esm/public/cli/commands/sessions-module.js +49 -21
  182. package/esm/public/cli/commands/site-metadatum.js +39 -16
  183. package/esm/public/cli/commands/site-module.js +37 -15
  184. package/esm/public/cli/commands/site-theme.js +35 -14
  185. package/esm/public/cli/commands/site.js +45 -19
  186. package/esm/public/cli/commands/sql-action.js +53 -23
  187. package/esm/public/cli/commands/store.js +37 -15
  188. package/esm/public/cli/commands/table-grant.js +45 -19
  189. package/esm/public/cli/commands/table-template-module.js +45 -19
  190. package/esm/public/cli/commands/table.js +65 -29
  191. package/esm/public/cli/commands/trigger-function.js +39 -16
  192. package/esm/public/cli/commands/trigger.js +53 -23
  193. package/esm/public/cli/commands/unique-constraint.js +55 -24
  194. package/esm/public/cli/commands/user-auth-module.js +79 -36
  195. package/esm/public/cli/commands/user.js +81 -17
  196. package/esm/public/cli/commands/users-module.js +41 -17
  197. package/esm/public/cli/commands/view-grant.js +41 -17
  198. package/esm/public/cli/commands/view-rule.js +39 -16
  199. package/esm/public/cli/commands/view-table.js +35 -14
  200. package/esm/public/cli/commands/view.js +59 -26
  201. package/esm/public/cli/commands.js +3 -3
  202. package/esm/public/cli/executor.d.ts +1 -1
  203. package/esm/public/cli/utils.d.ts +38 -0
  204. package/esm/public/cli/utils.js +90 -0
  205. package/esm/public/orm/index.d.ts +2 -2
  206. package/esm/public/orm/index.js +2 -2
  207. package/esm/public/orm/input-types.d.ts +161 -147
  208. package/esm/public/orm/models/index.d.ts +1 -1
  209. package/esm/public/orm/models/index.js +1 -1
  210. package/objects/cli/commands/commit.js +44 -18
  211. package/objects/cli/commands/get-all-record.js +30 -11
  212. package/objects/cli/commands/object.js +40 -16
  213. package/objects/cli/commands/ref.js +36 -14
  214. package/objects/cli/commands/store.js +36 -14
  215. package/objects/cli/utils.d.ts +38 -0
  216. package/objects/cli/utils.js +96 -0
  217. package/package.json +3 -3
  218. package/public/cli/commands/api-module.js +36 -14
  219. package/public/cli/commands/api-schema.js +34 -13
  220. package/public/cli/commands/api.js +40 -16
  221. package/public/cli/commands/app-achievement.js +38 -15
  222. package/public/cli/commands/app-admin-grant.js +38 -15
  223. package/public/cli/commands/app-grant.js +40 -16
  224. package/public/cli/commands/app-level-requirement.js +42 -17
  225. package/public/cli/commands/app-level.js +40 -16
  226. package/public/cli/commands/app-limit-default.js +32 -12
  227. package/public/cli/commands/app-limit.js +36 -14
  228. package/public/cli/commands/app-membership-default.js +40 -16
  229. package/public/cli/commands/app-membership.js +58 -25
  230. package/public/cli/commands/app-owner-grant.js +38 -15
  231. package/public/cli/commands/app-permission-default.js +30 -11
  232. package/public/cli/commands/app-permission.js +36 -14
  233. package/public/cli/commands/app-step.js +38 -15
  234. package/public/cli/commands/app.js +44 -18
  235. package/public/cli/commands/ast-migration.js +52 -22
  236. package/public/cli/commands/audit-log.js +42 -17
  237. package/public/cli/commands/blueprint-template.js +66 -29
  238. package/public/cli/commands/blueprint.js +60 -26
  239. package/public/cli/commands/check-constraint.js +54 -23
  240. package/public/cli/commands/claimed-invite.js +38 -15
  241. package/public/cli/commands/commit.js +44 -18
  242. package/public/cli/commands/connected-account.js +42 -17
  243. package/public/cli/commands/connected-accounts-module.js +40 -16
  244. package/public/cli/commands/crypto-address.js +40 -16
  245. package/public/cli/commands/crypto-addresses-module.js +42 -17
  246. package/public/cli/commands/crypto-auth-module.js +54 -23
  247. package/public/cli/commands/database-provision-module.js +54 -23
  248. package/public/cli/commands/database-transfer.js +54 -23
  249. package/public/cli/commands/database.js +42 -17
  250. package/public/cli/commands/default-ids-module.js +30 -11
  251. package/public/cli/commands/default-privilege.js +40 -16
  252. package/public/cli/commands/denormalized-table-field.js +50 -21
  253. package/public/cli/commands/domain.js +38 -15
  254. package/public/cli/commands/email.js +40 -16
  255. package/public/cli/commands/emails-module.js +40 -16
  256. package/public/cli/commands/embedding-chunk.js +62 -27
  257. package/public/cli/commands/encrypted-secrets-module.js +36 -14
  258. package/public/cli/commands/enum.js +50 -21
  259. package/public/cli/commands/field.js +74 -33
  260. package/public/cli/commands/foreign-key-constraint.js +62 -27
  261. package/public/cli/commands/full-text-search.js +44 -18
  262. package/public/cli/commands/get-all-record.js +30 -11
  263. package/public/cli/commands/hierarchy-module.js +66 -29
  264. package/public/cli/commands/index.js +64 -28
  265. package/public/cli/commands/invite.js +50 -21
  266. package/public/cli/commands/invites-module.js +54 -23
  267. package/public/cli/commands/levels-module.js +78 -35
  268. package/public/cli/commands/limits-module.js +62 -27
  269. package/public/cli/commands/membership-type.js +34 -13
  270. package/public/cli/commands/membership-types-module.js +36 -14
  271. package/public/cli/commands/memberships-module.js +88 -40
  272. package/public/cli/commands/migrate-file.js +32 -12
  273. package/public/cli/commands/node-type-registry.js +88 -18
  274. package/public/cli/commands/object.js +40 -16
  275. package/public/cli/commands/org-admin-grant.js +40 -16
  276. package/public/cli/commands/org-chart-edge-grant.js +44 -18
  277. package/public/cli/commands/org-chart-edge.js +42 -17
  278. package/public/cli/commands/org-claimed-invite.js +40 -16
  279. package/public/cli/commands/org-get-managers-record.js +30 -11
  280. package/public/cli/commands/org-get-subordinates-record.js +30 -11
  281. package/public/cli/commands/org-grant.js +42 -17
  282. package/public/cli/commands/org-invite.js +54 -23
  283. package/public/cli/commands/org-limit-default.js +32 -12
  284. package/public/cli/commands/org-limit.js +38 -15
  285. package/public/cli/commands/org-member.js +34 -13
  286. package/public/cli/commands/org-membership-default.js +44 -18
  287. package/public/cli/commands/org-membership.js +58 -25
  288. package/public/cli/commands/org-owner-grant.js +40 -16
  289. package/public/cli/commands/org-permission-default.js +32 -12
  290. package/public/cli/commands/org-permission.js +36 -14
  291. package/public/cli/commands/permissions-module.js +60 -26
  292. package/public/cli/commands/phone-number.js +42 -17
  293. package/public/cli/commands/phone-numbers-module.js +40 -16
  294. package/public/cli/commands/policy.js +60 -26
  295. package/public/cli/commands/primary-key-constraint.js +52 -22
  296. package/public/cli/commands/profiles-module.js +62 -27
  297. package/public/cli/commands/ref.js +36 -14
  298. package/public/cli/commands/relation-provision.js +88 -40
  299. package/public/cli/commands/rls-module.js +48 -20
  300. package/public/cli/commands/role-type.js +30 -11
  301. package/public/cli/commands/schema-grant.js +38 -15
  302. package/public/cli/commands/schema.js +54 -23
  303. package/public/cli/commands/secrets-module.js +36 -14
  304. package/public/cli/commands/secure-table-provision.js +62 -27
  305. package/public/cli/commands/sessions-module.js +48 -20
  306. package/public/cli/commands/site-metadatum.js +38 -15
  307. package/public/cli/commands/site-module.js +36 -14
  308. package/public/cli/commands/site-theme.js +34 -13
  309. package/public/cli/commands/site.js +44 -18
  310. package/public/cli/commands/sql-action.js +52 -22
  311. package/public/cli/commands/store.js +36 -14
  312. package/public/cli/commands/table-grant.js +44 -18
  313. package/public/cli/commands/table-template-module.js +44 -18
  314. package/public/cli/commands/table.js +64 -28
  315. package/public/cli/commands/trigger-function.js +38 -15
  316. package/public/cli/commands/trigger.js +52 -22
  317. package/public/cli/commands/unique-constraint.js +54 -23
  318. package/public/cli/commands/user-auth-module.js +78 -35
  319. package/public/cli/commands/user.js +80 -16
  320. package/public/cli/commands/users-module.js +40 -16
  321. package/public/cli/commands/view-grant.js +40 -16
  322. package/public/cli/commands/view-rule.js +38 -15
  323. package/public/cli/commands/view-table.js +34 -13
  324. package/public/cli/commands/view.js +58 -25
  325. package/public/cli/commands.js +3 -3
  326. package/public/cli/executor.d.ts +1 -1
  327. package/public/cli/utils.d.ts +38 -0
  328. package/public/cli/utils.js +96 -0
  329. package/public/orm/index.d.ts +2 -2
  330. package/public/orm/index.js +2 -2
  331. package/public/orm/input-types.d.ts +161 -147
  332. package/public/orm/models/index.d.ts +1 -1
  333. package/public/orm/models/index.js +4 -4
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { extractFirst } from 'inquirerer';
7
7
  import { getClient } from '../executor';
8
- import { coerceAnswers, stripUndefined } from '../utils';
8
+ import { coerceAnswers, parseFindFirstArgs, parseFindManyArgs, stripUndefined } from '../utils';
9
9
  const fieldSchema = {
10
10
  id: 'uuid',
11
11
  event: 'string',
@@ -16,7 +16,7 @@ const fieldSchema = {
16
16
  success: 'boolean',
17
17
  createdAt: 'string',
18
18
  };
19
- const usage = '\naudit-log <command>\n\nCommands:\n list List all auditLog records\n get Get a auditLog by ID\n create Create a new auditLog\n update Update an existing auditLog\n delete Delete a auditLog\n\n --help, -h Show this help message\n';
19
+ const usage = '\naudit-log <command>\n\nCommands:\n list List auditLog records\n find-first Find first matching auditLog record\n get Get a auditLog by ID\n create Create a new auditLog\n update Update an existing auditLog\n delete Delete a auditLog\n\nList Options:\n --limit <n> Max number of records to return (forward pagination)\n --last <n> Number of records from the end (backward pagination)\n --after <cursor> Cursor for forward pagination\n --before <cursor> Cursor for backward pagination\n --offset <n> Number of records to skip\n --select <fields> Comma-separated list of fields to return\n --where.<field>.<op> Filter (dot-notation, e.g. --where.name.equalTo foo)\n --condition.<f>.<op> Condition filter (dot-notation)\n --orderBy <values> Comma-separated ordering values (e.g. NAME_ASC,CREATED_AT_DESC)\n\nFind-First Options:\n --select <fields> Comma-separated list of fields to return\n --where.<field>.<op> Filter (dot-notation, e.g. --where.status.equalTo active)\n --condition.<f>.<op> Condition filter (dot-notation)\n\n --help, -h Show this help message\n';
20
20
  export default async (argv, prompter, _options) => {
21
21
  if (argv.help || argv.h) {
22
22
  console.log(usage);
@@ -29,7 +29,7 @@ export default async (argv, prompter, _options) => {
29
29
  type: 'autocomplete',
30
30
  name: 'subcommand',
31
31
  message: 'What do you want to do?',
32
- options: ['list', 'get', 'create', 'update', 'delete'],
32
+ options: ['list', 'find-first', 'get', 'create', 'update', 'delete'],
33
33
  },
34
34
  ]);
35
35
  return handleTableSubcommand(answer.subcommand, newArgv, prompter);
@@ -40,6 +40,8 @@ async function handleTableSubcommand(subcommand, argv, prompter) {
40
40
  switch (subcommand) {
41
41
  case 'list':
42
42
  return handleList(argv, prompter);
43
+ case 'find-first':
44
+ return handleFindFirst(argv, prompter);
43
45
  case 'get':
44
46
  return handleGet(argv, prompter);
45
47
  case 'create':
@@ -53,23 +55,21 @@ async function handleTableSubcommand(subcommand, argv, prompter) {
53
55
  process.exit(1);
54
56
  }
55
57
  }
56
- async function handleList(_argv, _prompter) {
58
+ async function handleList(argv, _prompter) {
57
59
  try {
60
+ const defaultSelect = {
61
+ id: true,
62
+ event: true,
63
+ actorId: true,
64
+ origin: true,
65
+ userAgent: true,
66
+ ipAddress: true,
67
+ success: true,
68
+ createdAt: true,
69
+ };
70
+ const findManyArgs = parseFindManyArgs(argv, defaultSelect);
58
71
  const client = getClient();
59
- const result = await client.auditLog
60
- .findMany({
61
- select: {
62
- id: true,
63
- event: true,
64
- actorId: true,
65
- origin: true,
66
- userAgent: true,
67
- ipAddress: true,
68
- success: true,
69
- createdAt: true,
70
- },
71
- })
72
- .execute();
72
+ const result = await client.auditLog.findMany(findManyArgs).execute();
73
73
  console.log(JSON.stringify(result, null, 2));
74
74
  }
75
75
  catch (error) {
@@ -80,6 +80,31 @@ async function handleList(_argv, _prompter) {
80
80
  process.exit(1);
81
81
  }
82
82
  }
83
+ async function handleFindFirst(argv, _prompter) {
84
+ try {
85
+ const defaultSelect = {
86
+ id: true,
87
+ event: true,
88
+ actorId: true,
89
+ origin: true,
90
+ userAgent: true,
91
+ ipAddress: true,
92
+ success: true,
93
+ createdAt: true,
94
+ };
95
+ const findFirstArgs = parseFindFirstArgs(argv, defaultSelect);
96
+ const client = getClient();
97
+ const result = await client.auditLog.findFirst(findFirstArgs).execute();
98
+ console.log(JSON.stringify(result, null, 2));
99
+ }
100
+ catch (error) {
101
+ console.error('Failed to find record.');
102
+ if (error instanceof Error) {
103
+ console.error(error.message);
104
+ }
105
+ process.exit(1);
106
+ }
107
+ }
83
108
  async function handleGet(argv, prompter) {
84
109
  try {
85
110
  const answers = await prompter.prompt(argv, [
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { extractFirst } from 'inquirerer';
7
7
  import { getClient } from '../executor';
8
- import { coerceAnswers, stripUndefined } from '../utils';
8
+ import { coerceAnswers, parseFindFirstArgs, parseFindManyArgs, stripUndefined } from '../utils';
9
9
  const fieldSchema = {
10
10
  id: 'uuid',
11
11
  name: 'string',
@@ -28,7 +28,7 @@ const fieldSchema = {
28
28
  createdAt: 'string',
29
29
  updatedAt: 'string',
30
30
  };
31
- const usage = '\nblueprint-template <command>\n\nCommands:\n list List all blueprintTemplate records\n get Get a blueprintTemplate by ID\n create Create a new blueprintTemplate\n update Update an existing blueprintTemplate\n delete Delete a blueprintTemplate\n\n --help, -h Show this help message\n';
31
+ const usage = '\nblueprint-template <command>\n\nCommands:\n list List blueprintTemplate records\n find-first Find first matching blueprintTemplate record\n get Get a blueprintTemplate by ID\n create Create a new blueprintTemplate\n update Update an existing blueprintTemplate\n delete Delete a blueprintTemplate\n\nList Options:\n --limit <n> Max number of records to return (forward pagination)\n --last <n> Number of records from the end (backward pagination)\n --after <cursor> Cursor for forward pagination\n --before <cursor> Cursor for backward pagination\n --offset <n> Number of records to skip\n --select <fields> Comma-separated list of fields to return\n --where.<field>.<op> Filter (dot-notation, e.g. --where.name.equalTo foo)\n --condition.<f>.<op> Condition filter (dot-notation)\n --orderBy <values> Comma-separated ordering values (e.g. NAME_ASC,CREATED_AT_DESC)\n\nFind-First Options:\n --select <fields> Comma-separated list of fields to return\n --where.<field>.<op> Filter (dot-notation, e.g. --where.status.equalTo active)\n --condition.<f>.<op> Condition filter (dot-notation)\n\n --help, -h Show this help message\n';
32
32
  export default async (argv, prompter, _options) => {
33
33
  if (argv.help || argv.h) {
34
34
  console.log(usage);
@@ -41,7 +41,7 @@ export default async (argv, prompter, _options) => {
41
41
  type: 'autocomplete',
42
42
  name: 'subcommand',
43
43
  message: 'What do you want to do?',
44
- options: ['list', 'get', 'create', 'update', 'delete'],
44
+ options: ['list', 'find-first', 'get', 'create', 'update', 'delete'],
45
45
  },
46
46
  ]);
47
47
  return handleTableSubcommand(answer.subcommand, newArgv, prompter);
@@ -52,6 +52,8 @@ async function handleTableSubcommand(subcommand, argv, prompter) {
52
52
  switch (subcommand) {
53
53
  case 'list':
54
54
  return handleList(argv, prompter);
55
+ case 'find-first':
56
+ return handleFindFirst(argv, prompter);
55
57
  case 'get':
56
58
  return handleGet(argv, prompter);
57
59
  case 'create':
@@ -65,35 +67,33 @@ async function handleTableSubcommand(subcommand, argv, prompter) {
65
67
  process.exit(1);
66
68
  }
67
69
  }
68
- async function handleList(_argv, _prompter) {
70
+ async function handleList(argv, _prompter) {
69
71
  try {
72
+ const defaultSelect = {
73
+ id: true,
74
+ name: true,
75
+ version: true,
76
+ displayName: true,
77
+ description: true,
78
+ ownerId: true,
79
+ visibility: true,
80
+ categories: true,
81
+ tags: true,
82
+ definition: true,
83
+ definitionSchemaVersion: true,
84
+ source: true,
85
+ complexity: true,
86
+ copyCount: true,
87
+ forkCount: true,
88
+ forkedFromId: true,
89
+ definitionHash: true,
90
+ tableHashes: true,
91
+ createdAt: true,
92
+ updatedAt: true,
93
+ };
94
+ const findManyArgs = parseFindManyArgs(argv, defaultSelect);
70
95
  const client = getClient();
71
- const result = await client.blueprintTemplate
72
- .findMany({
73
- select: {
74
- id: true,
75
- name: true,
76
- version: true,
77
- displayName: true,
78
- description: true,
79
- ownerId: true,
80
- visibility: true,
81
- categories: true,
82
- tags: true,
83
- definition: true,
84
- definitionSchemaVersion: true,
85
- source: true,
86
- complexity: true,
87
- copyCount: true,
88
- forkCount: true,
89
- forkedFromId: true,
90
- definitionHash: true,
91
- tableHashes: true,
92
- createdAt: true,
93
- updatedAt: true,
94
- },
95
- })
96
- .execute();
96
+ const result = await client.blueprintTemplate.findMany(findManyArgs).execute();
97
97
  console.log(JSON.stringify(result, null, 2));
98
98
  }
99
99
  catch (error) {
@@ -104,6 +104,43 @@ async function handleList(_argv, _prompter) {
104
104
  process.exit(1);
105
105
  }
106
106
  }
107
+ async function handleFindFirst(argv, _prompter) {
108
+ try {
109
+ const defaultSelect = {
110
+ id: true,
111
+ name: true,
112
+ version: true,
113
+ displayName: true,
114
+ description: true,
115
+ ownerId: true,
116
+ visibility: true,
117
+ categories: true,
118
+ tags: true,
119
+ definition: true,
120
+ definitionSchemaVersion: true,
121
+ source: true,
122
+ complexity: true,
123
+ copyCount: true,
124
+ forkCount: true,
125
+ forkedFromId: true,
126
+ definitionHash: true,
127
+ tableHashes: true,
128
+ createdAt: true,
129
+ updatedAt: true,
130
+ };
131
+ const findFirstArgs = parseFindFirstArgs(argv, defaultSelect);
132
+ const client = getClient();
133
+ const result = await client.blueprintTemplate.findFirst(findFirstArgs).execute();
134
+ console.log(JSON.stringify(result, null, 2));
135
+ }
136
+ catch (error) {
137
+ console.error('Failed to find record.');
138
+ if (error instanceof Error) {
139
+ console.error(error.message);
140
+ }
141
+ process.exit(1);
142
+ }
143
+ }
107
144
  async function handleGet(argv, prompter) {
108
145
  try {
109
146
  const answers = await prompter.prompt(argv, [
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { extractFirst } from 'inquirerer';
7
7
  import { getClient } from '../executor';
8
- import { coerceAnswers, stripUndefined } from '../utils';
8
+ import { coerceAnswers, parseFindFirstArgs, parseFindManyArgs, stripUndefined } from '../utils';
9
9
  const fieldSchema = {
10
10
  id: 'uuid',
11
11
  ownerId: 'uuid',
@@ -25,7 +25,7 @@ const fieldSchema = {
25
25
  createdAt: 'string',
26
26
  updatedAt: 'string',
27
27
  };
28
- const usage = '\nblueprint <command>\n\nCommands:\n list List all blueprint records\n get Get a blueprint by ID\n create Create a new blueprint\n update Update an existing blueprint\n delete Delete a blueprint\n\n --help, -h Show this help message\n';
28
+ const usage = '\nblueprint <command>\n\nCommands:\n list List blueprint records\n find-first Find first matching blueprint record\n get Get a blueprint by ID\n create Create a new blueprint\n update Update an existing blueprint\n delete Delete a blueprint\n\nList Options:\n --limit <n> Max number of records to return (forward pagination)\n --last <n> Number of records from the end (backward pagination)\n --after <cursor> Cursor for forward pagination\n --before <cursor> Cursor for backward pagination\n --offset <n> Number of records to skip\n --select <fields> Comma-separated list of fields to return\n --where.<field>.<op> Filter (dot-notation, e.g. --where.name.equalTo foo)\n --condition.<f>.<op> Condition filter (dot-notation)\n --orderBy <values> Comma-separated ordering values (e.g. NAME_ASC,CREATED_AT_DESC)\n\nFind-First Options:\n --select <fields> Comma-separated list of fields to return\n --where.<field>.<op> Filter (dot-notation, e.g. --where.status.equalTo active)\n --condition.<f>.<op> Condition filter (dot-notation)\n\n --help, -h Show this help message\n';
29
29
  export default async (argv, prompter, _options) => {
30
30
  if (argv.help || argv.h) {
31
31
  console.log(usage);
@@ -38,7 +38,7 @@ export default async (argv, prompter, _options) => {
38
38
  type: 'autocomplete',
39
39
  name: 'subcommand',
40
40
  message: 'What do you want to do?',
41
- options: ['list', 'get', 'create', 'update', 'delete'],
41
+ options: ['list', 'find-first', 'get', 'create', 'update', 'delete'],
42
42
  },
43
43
  ]);
44
44
  return handleTableSubcommand(answer.subcommand, newArgv, prompter);
@@ -49,6 +49,8 @@ async function handleTableSubcommand(subcommand, argv, prompter) {
49
49
  switch (subcommand) {
50
50
  case 'list':
51
51
  return handleList(argv, prompter);
52
+ case 'find-first':
53
+ return handleFindFirst(argv, prompter);
52
54
  case 'get':
53
55
  return handleGet(argv, prompter);
54
56
  case 'create':
@@ -62,32 +64,30 @@ async function handleTableSubcommand(subcommand, argv, prompter) {
62
64
  process.exit(1);
63
65
  }
64
66
  }
65
- async function handleList(_argv, _prompter) {
67
+ async function handleList(argv, _prompter) {
66
68
  try {
69
+ const defaultSelect = {
70
+ id: true,
71
+ ownerId: true,
72
+ databaseId: true,
73
+ name: true,
74
+ displayName: true,
75
+ description: true,
76
+ definition: true,
77
+ templateId: true,
78
+ status: true,
79
+ constructedAt: true,
80
+ errorDetails: true,
81
+ refMap: true,
82
+ constructedDefinition: true,
83
+ definitionHash: true,
84
+ tableHashes: true,
85
+ createdAt: true,
86
+ updatedAt: true,
87
+ };
88
+ const findManyArgs = parseFindManyArgs(argv, defaultSelect);
67
89
  const client = getClient();
68
- const result = await client.blueprint
69
- .findMany({
70
- select: {
71
- id: true,
72
- ownerId: true,
73
- databaseId: true,
74
- name: true,
75
- displayName: true,
76
- description: true,
77
- definition: true,
78
- templateId: true,
79
- status: true,
80
- constructedAt: true,
81
- errorDetails: true,
82
- refMap: true,
83
- constructedDefinition: true,
84
- definitionHash: true,
85
- tableHashes: true,
86
- createdAt: true,
87
- updatedAt: true,
88
- },
89
- })
90
- .execute();
90
+ const result = await client.blueprint.findMany(findManyArgs).execute();
91
91
  console.log(JSON.stringify(result, null, 2));
92
92
  }
93
93
  catch (error) {
@@ -98,6 +98,40 @@ async function handleList(_argv, _prompter) {
98
98
  process.exit(1);
99
99
  }
100
100
  }
101
+ async function handleFindFirst(argv, _prompter) {
102
+ try {
103
+ const defaultSelect = {
104
+ id: true,
105
+ ownerId: true,
106
+ databaseId: true,
107
+ name: true,
108
+ displayName: true,
109
+ description: true,
110
+ definition: true,
111
+ templateId: true,
112
+ status: true,
113
+ constructedAt: true,
114
+ errorDetails: true,
115
+ refMap: true,
116
+ constructedDefinition: true,
117
+ definitionHash: true,
118
+ tableHashes: true,
119
+ createdAt: true,
120
+ updatedAt: true,
121
+ };
122
+ const findFirstArgs = parseFindFirstArgs(argv, defaultSelect);
123
+ const client = getClient();
124
+ const result = await client.blueprint.findFirst(findFirstArgs).execute();
125
+ console.log(JSON.stringify(result, null, 2));
126
+ }
127
+ catch (error) {
128
+ console.error('Failed to find record.');
129
+ if (error instanceof Error) {
130
+ console.error(error.message);
131
+ }
132
+ process.exit(1);
133
+ }
134
+ }
101
135
  async function handleGet(argv, prompter) {
102
136
  try {
103
137
  const answers = await prompter.prompt(argv, [
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { extractFirst } from 'inquirerer';
7
7
  import { getClient } from '../executor';
8
- import { coerceAnswers, stripUndefined } from '../utils';
8
+ import { coerceAnswers, parseFindFirstArgs, parseFindManyArgs, stripUndefined } from '../utils';
9
9
  const fieldSchema = {
10
10
  id: 'uuid',
11
11
  databaseId: 'uuid',
@@ -22,7 +22,7 @@ const fieldSchema = {
22
22
  createdAt: 'string',
23
23
  updatedAt: 'string',
24
24
  };
25
- const usage = '\ncheck-constraint <command>\n\nCommands:\n list List all checkConstraint records\n get Get a checkConstraint by ID\n create Create a new checkConstraint\n update Update an existing checkConstraint\n delete Delete a checkConstraint\n\n --help, -h Show this help message\n';
25
+ const usage = '\ncheck-constraint <command>\n\nCommands:\n list List checkConstraint records\n find-first Find first matching checkConstraint record\n get Get a checkConstraint by ID\n create Create a new checkConstraint\n update Update an existing checkConstraint\n delete Delete a checkConstraint\n\nList Options:\n --limit <n> Max number of records to return (forward pagination)\n --last <n> Number of records from the end (backward pagination)\n --after <cursor> Cursor for forward pagination\n --before <cursor> Cursor for backward pagination\n --offset <n> Number of records to skip\n --select <fields> Comma-separated list of fields to return\n --where.<field>.<op> Filter (dot-notation, e.g. --where.name.equalTo foo)\n --condition.<f>.<op> Condition filter (dot-notation)\n --orderBy <values> Comma-separated ordering values (e.g. NAME_ASC,CREATED_AT_DESC)\n\nFind-First Options:\n --select <fields> Comma-separated list of fields to return\n --where.<field>.<op> Filter (dot-notation, e.g. --where.status.equalTo active)\n --condition.<f>.<op> Condition filter (dot-notation)\n\n --help, -h Show this help message\n';
26
26
  export default async (argv, prompter, _options) => {
27
27
  if (argv.help || argv.h) {
28
28
  console.log(usage);
@@ -35,7 +35,7 @@ export default async (argv, prompter, _options) => {
35
35
  type: 'autocomplete',
36
36
  name: 'subcommand',
37
37
  message: 'What do you want to do?',
38
- options: ['list', 'get', 'create', 'update', 'delete'],
38
+ options: ['list', 'find-first', 'get', 'create', 'update', 'delete'],
39
39
  },
40
40
  ]);
41
41
  return handleTableSubcommand(answer.subcommand, newArgv, prompter);
@@ -46,6 +46,8 @@ async function handleTableSubcommand(subcommand, argv, prompter) {
46
46
  switch (subcommand) {
47
47
  case 'list':
48
48
  return handleList(argv, prompter);
49
+ case 'find-first':
50
+ return handleFindFirst(argv, prompter);
49
51
  case 'get':
50
52
  return handleGet(argv, prompter);
51
53
  case 'create':
@@ -59,29 +61,27 @@ async function handleTableSubcommand(subcommand, argv, prompter) {
59
61
  process.exit(1);
60
62
  }
61
63
  }
62
- async function handleList(_argv, _prompter) {
64
+ async function handleList(argv, _prompter) {
63
65
  try {
66
+ const defaultSelect = {
67
+ id: true,
68
+ databaseId: true,
69
+ tableId: true,
70
+ name: true,
71
+ type: true,
72
+ fieldIds: true,
73
+ expr: true,
74
+ smartTags: true,
75
+ category: true,
76
+ module: true,
77
+ scope: true,
78
+ tags: true,
79
+ createdAt: true,
80
+ updatedAt: true,
81
+ };
82
+ const findManyArgs = parseFindManyArgs(argv, defaultSelect);
64
83
  const client = getClient();
65
- const result = await client.checkConstraint
66
- .findMany({
67
- select: {
68
- id: true,
69
- databaseId: true,
70
- tableId: true,
71
- name: true,
72
- type: true,
73
- fieldIds: true,
74
- expr: true,
75
- smartTags: true,
76
- category: true,
77
- module: true,
78
- scope: true,
79
- tags: true,
80
- createdAt: true,
81
- updatedAt: true,
82
- },
83
- })
84
- .execute();
84
+ const result = await client.checkConstraint.findMany(findManyArgs).execute();
85
85
  console.log(JSON.stringify(result, null, 2));
86
86
  }
87
87
  catch (error) {
@@ -92,6 +92,37 @@ async function handleList(_argv, _prompter) {
92
92
  process.exit(1);
93
93
  }
94
94
  }
95
+ async function handleFindFirst(argv, _prompter) {
96
+ try {
97
+ const defaultSelect = {
98
+ id: true,
99
+ databaseId: true,
100
+ tableId: true,
101
+ name: true,
102
+ type: true,
103
+ fieldIds: true,
104
+ expr: true,
105
+ smartTags: true,
106
+ category: true,
107
+ module: true,
108
+ scope: true,
109
+ tags: true,
110
+ createdAt: true,
111
+ updatedAt: true,
112
+ };
113
+ const findFirstArgs = parseFindFirstArgs(argv, defaultSelect);
114
+ const client = getClient();
115
+ const result = await client.checkConstraint.findFirst(findFirstArgs).execute();
116
+ console.log(JSON.stringify(result, null, 2));
117
+ }
118
+ catch (error) {
119
+ console.error('Failed to find record.');
120
+ if (error instanceof Error) {
121
+ console.error(error.message);
122
+ }
123
+ process.exit(1);
124
+ }
125
+ }
95
126
  async function handleGet(argv, prompter) {
96
127
  try {
97
128
  const answers = await prompter.prompt(argv, [
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { extractFirst } from 'inquirerer';
7
7
  import { getClient } from '../executor';
8
- import { coerceAnswers, stripUndefined } from '../utils';
8
+ import { coerceAnswers, parseFindFirstArgs, parseFindManyArgs, stripUndefined } from '../utils';
9
9
  const fieldSchema = {
10
10
  id: 'uuid',
11
11
  data: 'json',
@@ -14,7 +14,7 @@ const fieldSchema = {
14
14
  createdAt: 'string',
15
15
  updatedAt: 'string',
16
16
  };
17
- const usage = '\nclaimed-invite <command>\n\nCommands:\n list List all claimedInvite records\n get Get a claimedInvite by ID\n create Create a new claimedInvite\n update Update an existing claimedInvite\n delete Delete a claimedInvite\n\n --help, -h Show this help message\n';
17
+ const usage = '\nclaimed-invite <command>\n\nCommands:\n list List claimedInvite records\n find-first Find first matching claimedInvite record\n get Get a claimedInvite by ID\n create Create a new claimedInvite\n update Update an existing claimedInvite\n delete Delete a claimedInvite\n\nList Options:\n --limit <n> Max number of records to return (forward pagination)\n --last <n> Number of records from the end (backward pagination)\n --after <cursor> Cursor for forward pagination\n --before <cursor> Cursor for backward pagination\n --offset <n> Number of records to skip\n --select <fields> Comma-separated list of fields to return\n --where.<field>.<op> Filter (dot-notation, e.g. --where.name.equalTo foo)\n --condition.<f>.<op> Condition filter (dot-notation)\n --orderBy <values> Comma-separated ordering values (e.g. NAME_ASC,CREATED_AT_DESC)\n\nFind-First Options:\n --select <fields> Comma-separated list of fields to return\n --where.<field>.<op> Filter (dot-notation, e.g. --where.status.equalTo active)\n --condition.<f>.<op> Condition filter (dot-notation)\n\n --help, -h Show this help message\n';
18
18
  export default async (argv, prompter, _options) => {
19
19
  if (argv.help || argv.h) {
20
20
  console.log(usage);
@@ -27,7 +27,7 @@ export default async (argv, prompter, _options) => {
27
27
  type: 'autocomplete',
28
28
  name: 'subcommand',
29
29
  message: 'What do you want to do?',
30
- options: ['list', 'get', 'create', 'update', 'delete'],
30
+ options: ['list', 'find-first', 'get', 'create', 'update', 'delete'],
31
31
  },
32
32
  ]);
33
33
  return handleTableSubcommand(answer.subcommand, newArgv, prompter);
@@ -38,6 +38,8 @@ async function handleTableSubcommand(subcommand, argv, prompter) {
38
38
  switch (subcommand) {
39
39
  case 'list':
40
40
  return handleList(argv, prompter);
41
+ case 'find-first':
42
+ return handleFindFirst(argv, prompter);
41
43
  case 'get':
42
44
  return handleGet(argv, prompter);
43
45
  case 'create':
@@ -51,21 +53,19 @@ async function handleTableSubcommand(subcommand, argv, prompter) {
51
53
  process.exit(1);
52
54
  }
53
55
  }
54
- async function handleList(_argv, _prompter) {
56
+ async function handleList(argv, _prompter) {
55
57
  try {
58
+ const defaultSelect = {
59
+ id: true,
60
+ data: true,
61
+ senderId: true,
62
+ receiverId: true,
63
+ createdAt: true,
64
+ updatedAt: true,
65
+ };
66
+ const findManyArgs = parseFindManyArgs(argv, defaultSelect);
56
67
  const client = getClient();
57
- const result = await client.claimedInvite
58
- .findMany({
59
- select: {
60
- id: true,
61
- data: true,
62
- senderId: true,
63
- receiverId: true,
64
- createdAt: true,
65
- updatedAt: true,
66
- },
67
- })
68
- .execute();
68
+ const result = await client.claimedInvite.findMany(findManyArgs).execute();
69
69
  console.log(JSON.stringify(result, null, 2));
70
70
  }
71
71
  catch (error) {
@@ -76,6 +76,29 @@ async function handleList(_argv, _prompter) {
76
76
  process.exit(1);
77
77
  }
78
78
  }
79
+ async function handleFindFirst(argv, _prompter) {
80
+ try {
81
+ const defaultSelect = {
82
+ id: true,
83
+ data: true,
84
+ senderId: true,
85
+ receiverId: true,
86
+ createdAt: true,
87
+ updatedAt: true,
88
+ };
89
+ const findFirstArgs = parseFindFirstArgs(argv, defaultSelect);
90
+ const client = getClient();
91
+ const result = await client.claimedInvite.findFirst(findFirstArgs).execute();
92
+ console.log(JSON.stringify(result, null, 2));
93
+ }
94
+ catch (error) {
95
+ console.error('Failed to find record.');
96
+ if (error instanceof Error) {
97
+ console.error(error.message);
98
+ }
99
+ process.exit(1);
100
+ }
101
+ }
79
102
  async function handleGet(argv, prompter) {
80
103
  try {
81
104
  const answers = await prompter.prompt(argv, [