gtypee 1.0.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 (464) hide show
  1. package/LICENSE +15 -0
  2. package/README.md +1431 -0
  3. package/dist/bin/gtypee.d.ts +3 -0
  4. package/dist/bin/gtypee.d.ts.map +1 -0
  5. package/dist/bin/gtypee.js +18 -0
  6. package/dist/bin/gtypee.js.map +1 -0
  7. package/dist/src/authclient/authclient.d.ts +11 -0
  8. package/dist/src/authclient/authclient.d.ts.map +1 -0
  9. package/dist/src/authclient/authclient.js +26 -0
  10. package/dist/src/authclient/authclient.js.map +1 -0
  11. package/dist/src/cmd/agent/commands.d.ts +3 -0
  12. package/dist/src/cmd/agent/commands.d.ts.map +1 -0
  13. package/dist/src/cmd/agent/commands.js +16 -0
  14. package/dist/src/cmd/agent/commands.js.map +1 -0
  15. package/dist/src/cmd/appscript/commands.d.ts +24 -0
  16. package/dist/src/cmd/appscript/commands.d.ts.map +1 -0
  17. package/dist/src/cmd/appscript/commands.js +116 -0
  18. package/dist/src/cmd/appscript/commands.js.map +1 -0
  19. package/dist/src/cmd/appscript/runtime.d.ts +4 -0
  20. package/dist/src/cmd/appscript/runtime.d.ts.map +1 -0
  21. package/dist/src/cmd/appscript/runtime.js +64 -0
  22. package/dist/src/cmd/appscript/runtime.js.map +1 -0
  23. package/dist/src/cmd/auth/commands.d.ts +67 -0
  24. package/dist/src/cmd/auth/commands.d.ts.map +1 -0
  25. package/dist/src/cmd/auth/commands.js +184 -0
  26. package/dist/src/cmd/auth/commands.js.map +1 -0
  27. package/dist/src/cmd/auth/runtime.d.ts +20 -0
  28. package/dist/src/cmd/auth/runtime.d.ts.map +1 -0
  29. package/dist/src/cmd/auth/runtime.js +237 -0
  30. package/dist/src/cmd/auth/runtime.js.map +1 -0
  31. package/dist/src/cmd/calendar/commands.d.ts +58 -0
  32. package/dist/src/cmd/calendar/commands.d.ts.map +1 -0
  33. package/dist/src/cmd/calendar/commands.js +161 -0
  34. package/dist/src/cmd/calendar/commands.js.map +1 -0
  35. package/dist/src/cmd/calendar/runtime.d.ts +4 -0
  36. package/dist/src/cmd/calendar/runtime.d.ts.map +1 -0
  37. package/dist/src/cmd/calendar/runtime.js +164 -0
  38. package/dist/src/cmd/calendar/runtime.js.map +1 -0
  39. package/dist/src/cmd/chat/commands.d.ts +27 -0
  40. package/dist/src/cmd/chat/commands.d.ts.map +1 -0
  41. package/dist/src/cmd/chat/commands.js +113 -0
  42. package/dist/src/cmd/chat/commands.js.map +1 -0
  43. package/dist/src/cmd/chat/runtime.d.ts +4 -0
  44. package/dist/src/cmd/chat/runtime.d.ts.map +1 -0
  45. package/dist/src/cmd/chat/runtime.js +67 -0
  46. package/dist/src/cmd/chat/runtime.js.map +1 -0
  47. package/dist/src/cmd/classroom/commands.d.ts +22 -0
  48. package/dist/src/cmd/classroom/commands.d.ts.map +1 -0
  49. package/dist/src/cmd/classroom/commands.js +91 -0
  50. package/dist/src/cmd/classroom/commands.js.map +1 -0
  51. package/dist/src/cmd/classroom/runtime.d.ts +4 -0
  52. package/dist/src/cmd/classroom/runtime.d.ts.map +1 -0
  53. package/dist/src/cmd/classroom/runtime.js +67 -0
  54. package/dist/src/cmd/classroom/runtime.js.map +1 -0
  55. package/dist/src/cmd/command-registry.d.ts +8 -0
  56. package/dist/src/cmd/command-registry.d.ts.map +1 -0
  57. package/dist/src/cmd/command-registry.js +40 -0
  58. package/dist/src/cmd/command-registry.js.map +1 -0
  59. package/dist/src/cmd/completion/commands.d.ts +3 -0
  60. package/dist/src/cmd/completion/commands.d.ts.map +1 -0
  61. package/dist/src/cmd/completion/commands.js +29 -0
  62. package/dist/src/cmd/completion/commands.js.map +1 -0
  63. package/dist/src/cmd/config/commands.d.ts +10 -0
  64. package/dist/src/cmd/config/commands.d.ts.map +1 -0
  65. package/dist/src/cmd/config/commands.js +106 -0
  66. package/dist/src/cmd/config/commands.js.map +1 -0
  67. package/dist/src/cmd/contacts/commands.d.ts +18 -0
  68. package/dist/src/cmd/contacts/commands.d.ts.map +1 -0
  69. package/dist/src/cmd/contacts/commands.js +79 -0
  70. package/dist/src/cmd/contacts/commands.js.map +1 -0
  71. package/dist/src/cmd/contacts/runtime.d.ts +4 -0
  72. package/dist/src/cmd/contacts/runtime.d.ts.map +1 -0
  73. package/dist/src/cmd/contacts/runtime.js +67 -0
  74. package/dist/src/cmd/contacts/runtime.js.map +1 -0
  75. package/dist/src/cmd/docs/commands.d.ts +24 -0
  76. package/dist/src/cmd/docs/commands.d.ts.map +1 -0
  77. package/dist/src/cmd/docs/commands.js +82 -0
  78. package/dist/src/cmd/docs/commands.js.map +1 -0
  79. package/dist/src/cmd/docs/runtime.d.ts +4 -0
  80. package/dist/src/cmd/docs/runtime.d.ts.map +1 -0
  81. package/dist/src/cmd/docs/runtime.js +77 -0
  82. package/dist/src/cmd/docs/runtime.js.map +1 -0
  83. package/dist/src/cmd/drive/commands.d.ts +112 -0
  84. package/dist/src/cmd/drive/commands.d.ts.map +1 -0
  85. package/dist/src/cmd/drive/commands.js +431 -0
  86. package/dist/src/cmd/drive/commands.js.map +1 -0
  87. package/dist/src/cmd/drive/runtime.d.ts +4 -0
  88. package/dist/src/cmd/drive/runtime.d.ts.map +1 -0
  89. package/dist/src/cmd/drive/runtime.js +336 -0
  90. package/dist/src/cmd/drive/runtime.js.map +1 -0
  91. package/dist/src/cmd/execution-context.d.ts +33 -0
  92. package/dist/src/cmd/execution-context.d.ts.map +1 -0
  93. package/dist/src/cmd/execution-context.js +31 -0
  94. package/dist/src/cmd/execution-context.js.map +1 -0
  95. package/dist/src/cmd/exit-codes/commands.d.ts +5 -0
  96. package/dist/src/cmd/exit-codes/commands.d.ts.map +1 -0
  97. package/dist/src/cmd/exit-codes/commands.js +25 -0
  98. package/dist/src/cmd/exit-codes/commands.js.map +1 -0
  99. package/dist/src/cmd/exit-codes.d.ts +4 -0
  100. package/dist/src/cmd/exit-codes.d.ts.map +1 -0
  101. package/dist/src/cmd/exit-codes.js +4 -0
  102. package/dist/src/cmd/exit-codes.js.map +1 -0
  103. package/dist/src/cmd/exit.d.ts +7 -0
  104. package/dist/src/cmd/exit.d.ts.map +1 -0
  105. package/dist/src/cmd/exit.js +19 -0
  106. package/dist/src/cmd/exit.js.map +1 -0
  107. package/dist/src/cmd/forms/commands.d.ts +19 -0
  108. package/dist/src/cmd/forms/commands.d.ts.map +1 -0
  109. package/dist/src/cmd/forms/commands.js +73 -0
  110. package/dist/src/cmd/forms/commands.js.map +1 -0
  111. package/dist/src/cmd/forms/runtime.d.ts +4 -0
  112. package/dist/src/cmd/forms/runtime.d.ts.map +1 -0
  113. package/dist/src/cmd/forms/runtime.js +38 -0
  114. package/dist/src/cmd/forms/runtime.js.map +1 -0
  115. package/dist/src/cmd/gmail/commands.d.ts +187 -0
  116. package/dist/src/cmd/gmail/commands.d.ts.map +1 -0
  117. package/dist/src/cmd/gmail/commands.js +767 -0
  118. package/dist/src/cmd/gmail/commands.js.map +1 -0
  119. package/dist/src/cmd/gmail/runtime.d.ts +9 -0
  120. package/dist/src/cmd/gmail/runtime.d.ts.map +1 -0
  121. package/dist/src/cmd/gmail/runtime.js +644 -0
  122. package/dist/src/cmd/gmail/runtime.js.map +1 -0
  123. package/dist/src/cmd/groups/commands.d.ts +26 -0
  124. package/dist/src/cmd/groups/commands.d.ts.map +1 -0
  125. package/dist/src/cmd/groups/commands.js +105 -0
  126. package/dist/src/cmd/groups/commands.js.map +1 -0
  127. package/dist/src/cmd/groups/runtime.d.ts +4 -0
  128. package/dist/src/cmd/groups/runtime.d.ts.map +1 -0
  129. package/dist/src/cmd/groups/runtime.js +61 -0
  130. package/dist/src/cmd/groups/runtime.js.map +1 -0
  131. package/dist/src/cmd/keep/commands.d.ts +23 -0
  132. package/dist/src/cmd/keep/commands.d.ts.map +1 -0
  133. package/dist/src/cmd/keep/commands.js +111 -0
  134. package/dist/src/cmd/keep/commands.js.map +1 -0
  135. package/dist/src/cmd/keep/runtime.d.ts +4 -0
  136. package/dist/src/cmd/keep/runtime.d.ts.map +1 -0
  137. package/dist/src/cmd/keep/runtime.js +82 -0
  138. package/dist/src/cmd/keep/runtime.js.map +1 -0
  139. package/dist/src/cmd/people/commands.d.ts +22 -0
  140. package/dist/src/cmd/people/commands.d.ts.map +1 -0
  141. package/dist/src/cmd/people/commands.js +96 -0
  142. package/dist/src/cmd/people/commands.js.map +1 -0
  143. package/dist/src/cmd/people/runtime.d.ts +4 -0
  144. package/dist/src/cmd/people/runtime.d.ts.map +1 -0
  145. package/dist/src/cmd/people/runtime.js +65 -0
  146. package/dist/src/cmd/people/runtime.js.map +1 -0
  147. package/dist/src/cmd/rewrite-desire-path-args.d.ts +2 -0
  148. package/dist/src/cmd/rewrite-desire-path-args.d.ts.map +1 -0
  149. package/dist/src/cmd/rewrite-desire-path-args.js +75 -0
  150. package/dist/src/cmd/rewrite-desire-path-args.js.map +1 -0
  151. package/dist/src/cmd/root.d.ts +10 -0
  152. package/dist/src/cmd/root.d.ts.map +1 -0
  153. package/dist/src/cmd/root.js +341 -0
  154. package/dist/src/cmd/root.js.map +1 -0
  155. package/dist/src/cmd/schema/commands.d.ts +3 -0
  156. package/dist/src/cmd/schema/commands.d.ts.map +1 -0
  157. package/dist/src/cmd/schema/commands.js +21 -0
  158. package/dist/src/cmd/schema/commands.js.map +1 -0
  159. package/dist/src/cmd/script-path.d.ts +2 -0
  160. package/dist/src/cmd/script-path.d.ts.map +1 -0
  161. package/dist/src/cmd/script-path.js +4 -0
  162. package/dist/src/cmd/script-path.js.map +1 -0
  163. package/dist/src/cmd/sheets/commands.d.ts +20 -0
  164. package/dist/src/cmd/sheets/commands.d.ts.map +1 -0
  165. package/dist/src/cmd/sheets/commands.js +79 -0
  166. package/dist/src/cmd/sheets/commands.js.map +1 -0
  167. package/dist/src/cmd/sheets/runtime.d.ts +4 -0
  168. package/dist/src/cmd/sheets/runtime.d.ts.map +1 -0
  169. package/dist/src/cmd/sheets/runtime.js +37 -0
  170. package/dist/src/cmd/sheets/runtime.js.map +1 -0
  171. package/dist/src/cmd/slides/commands.d.ts +24 -0
  172. package/dist/src/cmd/slides/commands.d.ts.map +1 -0
  173. package/dist/src/cmd/slides/commands.js +90 -0
  174. package/dist/src/cmd/slides/commands.js.map +1 -0
  175. package/dist/src/cmd/slides/runtime.d.ts +4 -0
  176. package/dist/src/cmd/slides/runtime.d.ts.map +1 -0
  177. package/dist/src/cmd/slides/runtime.js +92 -0
  178. package/dist/src/cmd/slides/runtime.js.map +1 -0
  179. package/dist/src/cmd/tasks/commands.d.ts +28 -0
  180. package/dist/src/cmd/tasks/commands.d.ts.map +1 -0
  181. package/dist/src/cmd/tasks/commands.js +103 -0
  182. package/dist/src/cmd/tasks/commands.js.map +1 -0
  183. package/dist/src/cmd/tasks/runtime.d.ts +4 -0
  184. package/dist/src/cmd/tasks/runtime.d.ts.map +1 -0
  185. package/dist/src/cmd/tasks/runtime.js +56 -0
  186. package/dist/src/cmd/tasks/runtime.js.map +1 -0
  187. package/dist/src/cmd/time/commands.d.ts +17 -0
  188. package/dist/src/cmd/time/commands.d.ts.map +1 -0
  189. package/dist/src/cmd/time/commands.js +88 -0
  190. package/dist/src/cmd/time/commands.js.map +1 -0
  191. package/dist/src/cmd/version/commands.d.ts +3 -0
  192. package/dist/src/cmd/version/commands.d.ts.map +1 -0
  193. package/dist/src/cmd/version/commands.js +17 -0
  194. package/dist/src/cmd/version/commands.js.map +1 -0
  195. package/dist/src/cmd/workspace/commands.d.ts +222 -0
  196. package/dist/src/cmd/workspace/commands.d.ts.map +1 -0
  197. package/dist/src/cmd/workspace/commands.js +685 -0
  198. package/dist/src/cmd/workspace/commands.js.map +1 -0
  199. package/dist/src/cmd/workspace/runtime.d.ts +8 -0
  200. package/dist/src/cmd/workspace/runtime.d.ts.map +1 -0
  201. package/dist/src/cmd/workspace/runtime.js +852 -0
  202. package/dist/src/cmd/workspace/runtime.js.map +1 -0
  203. package/dist/src/config/clients.d.ts +8 -0
  204. package/dist/src/config/clients.d.ts.map +1 -0
  205. package/dist/src/config/clients.js +95 -0
  206. package/dist/src/config/clients.js.map +1 -0
  207. package/dist/src/config/config.d.ts +11 -0
  208. package/dist/src/config/config.d.ts.map +1 -0
  209. package/dist/src/config/config.js +54 -0
  210. package/dist/src/config/config.js.map +1 -0
  211. package/dist/src/config/credentials.d.ts +16 -0
  212. package/dist/src/config/credentials.d.ts.map +1 -0
  213. package/dist/src/config/credentials.js +97 -0
  214. package/dist/src/config/credentials.js.map +1 -0
  215. package/dist/src/config/migration.d.ts +13 -0
  216. package/dist/src/config/migration.d.ts.map +1 -0
  217. package/dist/src/config/migration.js +70 -0
  218. package/dist/src/config/migration.js.map +1 -0
  219. package/dist/src/config/paths.d.ts +11 -0
  220. package/dist/src/config/paths.d.ts.map +1 -0
  221. package/dist/src/config/paths.js +74 -0
  222. package/dist/src/config/paths.js.map +1 -0
  223. package/dist/src/googleapi/auth-factory.d.ts +46 -0
  224. package/dist/src/googleapi/auth-factory.d.ts.map +1 -0
  225. package/dist/src/googleapi/auth-factory.js +88 -0
  226. package/dist/src/googleapi/auth-factory.js.map +1 -0
  227. package/dist/src/googleapi/calendar.d.ts +3 -0
  228. package/dist/src/googleapi/calendar.d.ts.map +1 -0
  229. package/dist/src/googleapi/calendar.js +21 -0
  230. package/dist/src/googleapi/calendar.js.map +1 -0
  231. package/dist/src/googleapi/circuitbreaker.d.ts +19 -0
  232. package/dist/src/googleapi/circuitbreaker.d.ts.map +1 -0
  233. package/dist/src/googleapi/circuitbreaker.js +43 -0
  234. package/dist/src/googleapi/circuitbreaker.js.map +1 -0
  235. package/dist/src/googleapi/client.d.ts +17 -0
  236. package/dist/src/googleapi/client.d.ts.map +1 -0
  237. package/dist/src/googleapi/client.js +18 -0
  238. package/dist/src/googleapi/client.js.map +1 -0
  239. package/dist/src/googleapi/drive.d.ts +3 -0
  240. package/dist/src/googleapi/drive.d.ts.map +1 -0
  241. package/dist/src/googleapi/drive.js +11 -0
  242. package/dist/src/googleapi/drive.js.map +1 -0
  243. package/dist/src/googleapi/errors.d.ts +37 -0
  244. package/dist/src/googleapi/errors.d.ts.map +1 -0
  245. package/dist/src/googleapi/errors.js +93 -0
  246. package/dist/src/googleapi/errors.js.map +1 -0
  247. package/dist/src/googleapi/retry-constants.d.ts +5 -0
  248. package/dist/src/googleapi/retry-constants.d.ts.map +1 -0
  249. package/dist/src/googleapi/retry-constants.js +5 -0
  250. package/dist/src/googleapi/retry-constants.js.map +1 -0
  251. package/dist/src/googleapi/transport.d.ts +3 -0
  252. package/dist/src/googleapi/transport.d.ts.map +1 -0
  253. package/dist/src/googleapi/transport.js +39 -0
  254. package/dist/src/googleapi/transport.js.map +1 -0
  255. package/dist/src/googleauth/oauth-flow.d.ts +62 -0
  256. package/dist/src/googleauth/oauth-flow.d.ts.map +1 -0
  257. package/dist/src/googleauth/oauth-flow.js +262 -0
  258. package/dist/src/googleauth/oauth-flow.js.map +1 -0
  259. package/dist/src/googleauth/service.d.ts +28 -0
  260. package/dist/src/googleauth/service.d.ts.map +1 -0
  261. package/dist/src/googleauth/service.js +345 -0
  262. package/dist/src/googleauth/service.js.map +1 -0
  263. package/dist/src/index.d.ts +2 -0
  264. package/dist/src/index.d.ts.map +1 -0
  265. package/dist/src/index.js +2 -0
  266. package/dist/src/index.js.map +1 -0
  267. package/dist/src/outfmt/outfmt.d.ts +8 -0
  268. package/dist/src/outfmt/outfmt.d.ts.map +1 -0
  269. package/dist/src/outfmt/outfmt.js +66 -0
  270. package/dist/src/outfmt/outfmt.js.map +1 -0
  271. package/dist/src/secrets/store.d.ts +61 -0
  272. package/dist/src/secrets/store.d.ts.map +1 -0
  273. package/dist/src/secrets/store.js +247 -0
  274. package/dist/src/secrets/store.js.map +1 -0
  275. package/dist/test/authclient/authclient.test.d.ts +2 -0
  276. package/dist/test/authclient/authclient.test.d.ts.map +1 -0
  277. package/dist/test/authclient/authclient.test.js +14 -0
  278. package/dist/test/authclient/authclient.test.js.map +1 -0
  279. package/dist/test/bin/gtypee-entrypoint.test.d.ts +2 -0
  280. package/dist/test/bin/gtypee-entrypoint.test.d.ts.map +1 -0
  281. package/dist/test/bin/gtypee-entrypoint.test.js +17 -0
  282. package/dist/test/bin/gtypee-entrypoint.test.js.map +1 -0
  283. package/dist/test/cmd/agent/commands.test.d.ts +2 -0
  284. package/dist/test/cmd/agent/commands.test.d.ts.map +1 -0
  285. package/dist/test/cmd/agent/commands.test.js +12 -0
  286. package/dist/test/cmd/agent/commands.test.js.map +1 -0
  287. package/dist/test/cmd/appscript/commands.test.d.ts +2 -0
  288. package/dist/test/cmd/appscript/commands.test.d.ts.map +1 -0
  289. package/dist/test/cmd/appscript/commands.test.js +104 -0
  290. package/dist/test/cmd/appscript/commands.test.js.map +1 -0
  291. package/dist/test/cmd/auth/commands.test.d.ts +2 -0
  292. package/dist/test/cmd/auth/commands.test.d.ts.map +1 -0
  293. package/dist/test/cmd/auth/commands.test.js +142 -0
  294. package/dist/test/cmd/auth/commands.test.js.map +1 -0
  295. package/dist/test/cmd/auth/runtime.test.d.ts +2 -0
  296. package/dist/test/cmd/auth/runtime.test.d.ts.map +1 -0
  297. package/dist/test/cmd/auth/runtime.test.js +214 -0
  298. package/dist/test/cmd/auth/runtime.test.js.map +1 -0
  299. package/dist/test/cmd/calendar/commands.test.d.ts +2 -0
  300. package/dist/test/cmd/calendar/commands.test.d.ts.map +1 -0
  301. package/dist/test/cmd/calendar/commands.test.js +121 -0
  302. package/dist/test/cmd/calendar/commands.test.js.map +1 -0
  303. package/dist/test/cmd/chat/commands.test.d.ts +2 -0
  304. package/dist/test/cmd/chat/commands.test.d.ts.map +1 -0
  305. package/dist/test/cmd/chat/commands.test.js +57 -0
  306. package/dist/test/cmd/chat/commands.test.js.map +1 -0
  307. package/dist/test/cmd/classroom/commands.test.d.ts +2 -0
  308. package/dist/test/cmd/classroom/commands.test.d.ts.map +1 -0
  309. package/dist/test/cmd/classroom/commands.test.js +61 -0
  310. package/dist/test/cmd/classroom/commands.test.js.map +1 -0
  311. package/dist/test/cmd/completion/commands.test.d.ts +2 -0
  312. package/dist/test/cmd/completion/commands.test.d.ts.map +1 -0
  313. package/dist/test/cmd/completion/commands.test.js +30 -0
  314. package/dist/test/cmd/completion/commands.test.js.map +1 -0
  315. package/dist/test/cmd/config/commands.test.d.ts +2 -0
  316. package/dist/test/cmd/config/commands.test.d.ts.map +1 -0
  317. package/dist/test/cmd/config/commands.test.js +21 -0
  318. package/dist/test/cmd/config/commands.test.js.map +1 -0
  319. package/dist/test/cmd/contacts/commands.test.d.ts +2 -0
  320. package/dist/test/cmd/contacts/commands.test.d.ts.map +1 -0
  321. package/dist/test/cmd/contacts/commands.test.js +51 -0
  322. package/dist/test/cmd/contacts/commands.test.js.map +1 -0
  323. package/dist/test/cmd/docs/commands.test.d.ts +2 -0
  324. package/dist/test/cmd/docs/commands.test.d.ts.map +1 -0
  325. package/dist/test/cmd/docs/commands.test.js +39 -0
  326. package/dist/test/cmd/docs/commands.test.js.map +1 -0
  327. package/dist/test/cmd/drive/commands.test.d.ts +2 -0
  328. package/dist/test/cmd/drive/commands.test.d.ts.map +1 -0
  329. package/dist/test/cmd/drive/commands.test.js +409 -0
  330. package/dist/test/cmd/drive/commands.test.js.map +1 -0
  331. package/dist/test/cmd/execution-context.test.d.ts +2 -0
  332. package/dist/test/cmd/execution-context.test.d.ts.map +1 -0
  333. package/dist/test/cmd/execution-context.test.js +29 -0
  334. package/dist/test/cmd/execution-context.test.js.map +1 -0
  335. package/dist/test/cmd/exit-codes/commands.test.d.ts +2 -0
  336. package/dist/test/cmd/exit-codes/commands.test.d.ts.map +1 -0
  337. package/dist/test/cmd/exit-codes/commands.test.js +19 -0
  338. package/dist/test/cmd/exit-codes/commands.test.js.map +1 -0
  339. package/dist/test/cmd/exit.test.d.ts +2 -0
  340. package/dist/test/cmd/exit.test.d.ts.map +1 -0
  341. package/dist/test/cmd/exit.test.js +14 -0
  342. package/dist/test/cmd/exit.test.js.map +1 -0
  343. package/dist/test/cmd/forms/commands.test.d.ts +2 -0
  344. package/dist/test/cmd/forms/commands.test.d.ts.map +1 -0
  345. package/dist/test/cmd/forms/commands.test.js +42 -0
  346. package/dist/test/cmd/forms/commands.test.js.map +1 -0
  347. package/dist/test/cmd/gmail/commands.test.d.ts +2 -0
  348. package/dist/test/cmd/gmail/commands.test.d.ts.map +1 -0
  349. package/dist/test/cmd/gmail/commands.test.js +315 -0
  350. package/dist/test/cmd/gmail/commands.test.js.map +1 -0
  351. package/dist/test/cmd/groups/commands.test.d.ts +2 -0
  352. package/dist/test/cmd/groups/commands.test.d.ts.map +1 -0
  353. package/dist/test/cmd/groups/commands.test.js +79 -0
  354. package/dist/test/cmd/groups/commands.test.js.map +1 -0
  355. package/dist/test/cmd/keep/commands.test.d.ts +2 -0
  356. package/dist/test/cmd/keep/commands.test.d.ts.map +1 -0
  357. package/dist/test/cmd/keep/commands.test.js +87 -0
  358. package/dist/test/cmd/keep/commands.test.js.map +1 -0
  359. package/dist/test/cmd/people/commands.test.d.ts +2 -0
  360. package/dist/test/cmd/people/commands.test.d.ts.map +1 -0
  361. package/dist/test/cmd/people/commands.test.js +52 -0
  362. package/dist/test/cmd/people/commands.test.js.map +1 -0
  363. package/dist/test/cmd/rewrite-desire-path-args.test.d.ts +2 -0
  364. package/dist/test/cmd/rewrite-desire-path-args.test.d.ts.map +1 -0
  365. package/dist/test/cmd/rewrite-desire-path-args.test.js +21 -0
  366. package/dist/test/cmd/rewrite-desire-path-args.test.js.map +1 -0
  367. package/dist/test/cmd/root.test.d.ts +2 -0
  368. package/dist/test/cmd/root.test.d.ts.map +1 -0
  369. package/dist/test/cmd/root.test.js +323 -0
  370. package/dist/test/cmd/root.test.js.map +1 -0
  371. package/dist/test/cmd/runtime-scopes.test.d.ts +2 -0
  372. package/dist/test/cmd/runtime-scopes.test.d.ts.map +1 -0
  373. package/dist/test/cmd/runtime-scopes.test.js +133 -0
  374. package/dist/test/cmd/runtime-scopes.test.js.map +1 -0
  375. package/dist/test/cmd/schema/commands.test.d.ts +2 -0
  376. package/dist/test/cmd/schema/commands.test.d.ts.map +1 -0
  377. package/dist/test/cmd/schema/commands.test.js +31 -0
  378. package/dist/test/cmd/schema/commands.test.js.map +1 -0
  379. package/dist/test/cmd/sheets/commands.test.d.ts +2 -0
  380. package/dist/test/cmd/sheets/commands.test.d.ts.map +1 -0
  381. package/dist/test/cmd/sheets/commands.test.js +39 -0
  382. package/dist/test/cmd/sheets/commands.test.js.map +1 -0
  383. package/dist/test/cmd/slides/commands.test.d.ts +2 -0
  384. package/dist/test/cmd/slides/commands.test.d.ts.map +1 -0
  385. package/dist/test/cmd/slides/commands.test.js +48 -0
  386. package/dist/test/cmd/slides/commands.test.js.map +1 -0
  387. package/dist/test/cmd/tasks/commands.test.d.ts +2 -0
  388. package/dist/test/cmd/tasks/commands.test.d.ts.map +1 -0
  389. package/dist/test/cmd/tasks/commands.test.js +74 -0
  390. package/dist/test/cmd/tasks/commands.test.js.map +1 -0
  391. package/dist/test/cmd/time/commands.test.d.ts +2 -0
  392. package/dist/test/cmd/time/commands.test.d.ts.map +1 -0
  393. package/dist/test/cmd/time/commands.test.js +52 -0
  394. package/dist/test/cmd/time/commands.test.js.map +1 -0
  395. package/dist/test/cmd/version/commands.test.d.ts +2 -0
  396. package/dist/test/cmd/version/commands.test.d.ts.map +1 -0
  397. package/dist/test/cmd/version/commands.test.js +12 -0
  398. package/dist/test/cmd/version/commands.test.js.map +1 -0
  399. package/dist/test/cmd/workspace/commands.test.d.ts +2 -0
  400. package/dist/test/cmd/workspace/commands.test.d.ts.map +1 -0
  401. package/dist/test/cmd/workspace/commands.test.js +285 -0
  402. package/dist/test/cmd/workspace/commands.test.js.map +1 -0
  403. package/dist/test/config/clients.test.d.ts +2 -0
  404. package/dist/test/config/clients.test.d.ts.map +1 -0
  405. package/dist/test/config/clients.test.js +42 -0
  406. package/dist/test/config/clients.test.js.map +1 -0
  407. package/dist/test/config/config.test.d.ts +2 -0
  408. package/dist/test/config/config.test.d.ts.map +1 -0
  409. package/dist/test/config/config.test.js +80 -0
  410. package/dist/test/config/config.test.js.map +1 -0
  411. package/dist/test/config/credentials.test.d.ts +2 -0
  412. package/dist/test/config/credentials.test.d.ts.map +1 -0
  413. package/dist/test/config/credentials.test.js +78 -0
  414. package/dist/test/config/credentials.test.js.map +1 -0
  415. package/dist/test/config/migration.test.d.ts +2 -0
  416. package/dist/test/config/migration.test.d.ts.map +1 -0
  417. package/dist/test/config/migration.test.js +136 -0
  418. package/dist/test/config/migration.test.js.map +1 -0
  419. package/dist/test/config/paths.test.d.ts +2 -0
  420. package/dist/test/config/paths.test.d.ts.map +1 -0
  421. package/dist/test/config/paths.test.js +31 -0
  422. package/dist/test/config/paths.test.js.map +1 -0
  423. package/dist/test/googleapi/auth-factory.test.d.ts +2 -0
  424. package/dist/test/googleapi/auth-factory.test.d.ts.map +1 -0
  425. package/dist/test/googleapi/auth-factory.test.js +215 -0
  426. package/dist/test/googleapi/auth-factory.test.js.map +1 -0
  427. package/dist/test/googleapi/circuitbreaker.test.d.ts +2 -0
  428. package/dist/test/googleapi/circuitbreaker.test.d.ts.map +1 -0
  429. package/dist/test/googleapi/circuitbreaker.test.js +30 -0
  430. package/dist/test/googleapi/circuitbreaker.test.js.map +1 -0
  431. package/dist/test/googleapi/client.test.d.ts +2 -0
  432. package/dist/test/googleapi/client.test.d.ts.map +1 -0
  433. package/dist/test/googleapi/client.test.js +16 -0
  434. package/dist/test/googleapi/client.test.js.map +1 -0
  435. package/dist/test/googleapi/errors.test.d.ts +2 -0
  436. package/dist/test/googleapi/errors.test.d.ts.map +1 -0
  437. package/dist/test/googleapi/errors.test.js +21 -0
  438. package/dist/test/googleapi/errors.test.js.map +1 -0
  439. package/dist/test/googleapi/transport.test.d.ts +2 -0
  440. package/dist/test/googleapi/transport.test.d.ts.map +1 -0
  441. package/dist/test/googleapi/transport.test.js +25 -0
  442. package/dist/test/googleapi/transport.test.js.map +1 -0
  443. package/dist/test/googleauth/oauth-flow.test.d.ts +2 -0
  444. package/dist/test/googleauth/oauth-flow.test.d.ts.map +1 -0
  445. package/dist/test/googleauth/oauth-flow.test.js +85 -0
  446. package/dist/test/googleauth/oauth-flow.test.js.map +1 -0
  447. package/dist/test/googleauth/service.test.d.ts +2 -0
  448. package/dist/test/googleauth/service.test.d.ts.map +1 -0
  449. package/dist/test/googleauth/service.test.js +51 -0
  450. package/dist/test/googleauth/service.test.js.map +1 -0
  451. package/dist/test/outfmt/outfmt.test.d.ts +2 -0
  452. package/dist/test/outfmt/outfmt.test.d.ts.map +1 -0
  453. package/dist/test/outfmt/outfmt.test.js +41 -0
  454. package/dist/test/outfmt/outfmt.test.js.map +1 -0
  455. package/dist/test/secrets/store.test.d.ts +2 -0
  456. package/dist/test/secrets/store.test.d.ts.map +1 -0
  457. package/dist/test/secrets/store.test.js +164 -0
  458. package/dist/test/secrets/store.test.js.map +1 -0
  459. package/dist/vitest.config.d.ts +3 -0
  460. package/dist/vitest.config.d.ts.map +1 -0
  461. package/dist/vitest.config.js +11 -0
  462. package/dist/vitest.config.js.map +1 -0
  463. package/logo.svg +16 -0
  464. package/package.json +69 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rewrite-desire-path-args.test.js","sourceRoot":"","sources":["../../../test/cmd/rewrite-desire-path-args.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,2CAA2C,CAAC;AAElF,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACxE,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;QACxD,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;IAC1F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACnD,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,sBAAsB,CAAC,CAAC;QACzD,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,sBAAsB,CAAC,CAAC,CAAC;IAC3F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,IAAI,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;QAC7D,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,IAAI,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,oBAAoB,CAAC,CAAC;QACjD,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=root.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"root.test.d.ts","sourceRoot":"","sources":["../../../test/cmd/root.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,323 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { buildProgram } from "../../src/cmd/root.js";
3
+ describe("buildProgram", () => {
4
+ it("registers key global options", () => {
5
+ const program = buildProgram();
6
+ const longFlags = program.options.map((option) => option.long);
7
+ expect(longFlags).toContain("--account");
8
+ expect(longFlags).toContain("--client");
9
+ expect(longFlags).toContain("--json");
10
+ expect(longFlags).toContain("--plain");
11
+ expect(longFlags).toContain("--verbose");
12
+ expect(longFlags).toContain("--sa");
13
+ expect(longFlags).toContain("--impersonate");
14
+ });
15
+ it("registers desire-path aliases", () => {
16
+ const program = buildProgram();
17
+ const names = program.commands.map((command) => command.name());
18
+ expect(names).toContain("send");
19
+ expect(names).toContain("ls");
20
+ expect(names).toContain("search");
21
+ expect(names).toContain("login");
22
+ expect(names).toContain("logout");
23
+ expect(names).toContain("status");
24
+ expect(names).toContain("me");
25
+ expect(names).toContain("whoami");
26
+ });
27
+ it("registers service command groups", () => {
28
+ const program = buildProgram();
29
+ const names = program.commands.map((command) => command.name());
30
+ expect(names).toContain("auth");
31
+ expect(names).toContain("drive");
32
+ expect(names).toContain("gmail");
33
+ expect(names).toContain("calendar");
34
+ expect(names).toContain("people");
35
+ expect(names).toContain("sheets");
36
+ expect(names).toContain("forms");
37
+ });
38
+ it("renders help text including key aliases and groups", () => {
39
+ const program = buildProgram();
40
+ const help = program.helpInformation();
41
+ expect(help).toContain("auth");
42
+ expect(help).toContain("gmail");
43
+ expect(help).toContain("drive");
44
+ expect(help).toContain("calendar");
45
+ expect(help).toContain("chat");
46
+ expect(help).toContain("classroom");
47
+ expect(help).toContain("keep");
48
+ expect(help).toContain("login");
49
+ expect(help).toContain("logout");
50
+ expect(help).toContain("status");
51
+ });
52
+ it("wires auth subcommands", () => {
53
+ const program = buildProgram();
54
+ const auth = program.commands.find((command) => command.name() === "auth");
55
+ expect(auth).toBeDefined();
56
+ const authSubcommands = auth?.commands.map((command) => command.name()) ?? [];
57
+ expect(authSubcommands).toContain("add");
58
+ expect(authSubcommands).toContain("remove");
59
+ expect(authSubcommands).toContain("list");
60
+ expect(authSubcommands).toContain("status");
61
+ });
62
+ it("uses injected auth deps for auth status execution", async () => {
63
+ let called = false;
64
+ const program = buildProgram({
65
+ authDeps: {
66
+ status: async () => {
67
+ called = true;
68
+ return {
69
+ tokenCount: 7,
70
+ configPath: "/tmp/typee/config.json",
71
+ keyringBackend: "file",
72
+ };
73
+ },
74
+ },
75
+ });
76
+ const originalWrite = process.stdout.write.bind(process.stdout);
77
+ process.stdout.write = ((chunk) => {
78
+ void chunk;
79
+ return true;
80
+ });
81
+ try {
82
+ await program.parseAsync(["node", "typee", "auth", "status"]);
83
+ }
84
+ finally {
85
+ process.stdout.write = originalWrite;
86
+ }
87
+ expect(called).toBe(true);
88
+ });
89
+ it("routes login desire-path command to auth add deps", async () => {
90
+ let called = false;
91
+ const program = buildProgram({
92
+ authDeps: {
93
+ addToken: async (email, input) => {
94
+ called = true;
95
+ expect(email).toBe("a@b.com");
96
+ expect(input?.remote).toBe(true);
97
+ expect(input?.step).toBe(1);
98
+ return {
99
+ email,
100
+ message: "Run again with --remote --step 2 --auth-url <redirect-url>",
101
+ authUrl: "https://example.test/auth?state=s1",
102
+ stateReused: false,
103
+ };
104
+ },
105
+ },
106
+ });
107
+ let stdout = "";
108
+ const originalWrite = process.stdout.write.bind(process.stdout);
109
+ process.stdout.write = ((chunk) => {
110
+ stdout += String(chunk);
111
+ return true;
112
+ });
113
+ try {
114
+ await program.parseAsync(["node", "typee", "login", "--email", "a@b.com", "--remote", "--step", "1"]);
115
+ }
116
+ finally {
117
+ process.stdout.write = originalWrite;
118
+ }
119
+ expect(called).toBe(true);
120
+ expect(stdout).toContain("auth_url\thttps://example.test/auth?state=s1");
121
+ });
122
+ it("routes logout desire-path command to auth remove deps", async () => {
123
+ let called = false;
124
+ const program = buildProgram({
125
+ authDeps: {
126
+ removeToken: async (email) => {
127
+ called = true;
128
+ expect(email).toBe("a@b.com");
129
+ return { email, removed: true };
130
+ },
131
+ },
132
+ });
133
+ const originalWrite = process.stdout.write.bind(process.stdout);
134
+ process.stdout.write = ((chunk) => {
135
+ void chunk;
136
+ return true;
137
+ });
138
+ try {
139
+ await program.parseAsync(["node", "typee", "logout", "--email", "a@b.com"]);
140
+ }
141
+ finally {
142
+ process.stdout.write = originalWrite;
143
+ }
144
+ expect(called).toBe(true);
145
+ });
146
+ it("wires gmail subcommands", () => {
147
+ const program = buildProgram();
148
+ const gmail = program.commands.find((command) => command.name() === "gmail");
149
+ expect(gmail).toBeDefined();
150
+ const gmailSubcommands = gmail?.commands.map((command) => command.name()) ?? [];
151
+ expect(gmailSubcommands).toContain("send");
152
+ expect(gmailSubcommands).toContain("search");
153
+ });
154
+ it("wires calendar subcommands", () => {
155
+ const program = buildProgram();
156
+ const calendar = program.commands.find((command) => command.name() === "calendar");
157
+ expect(calendar).toBeDefined();
158
+ const calendarSubcommands = calendar?.commands.map((command) => command.name()) ?? [];
159
+ expect(calendarSubcommands).toContain("events");
160
+ expect(calendarSubcommands).toContain("create");
161
+ });
162
+ it("wires drive subcommands", () => {
163
+ const program = buildProgram();
164
+ const drive = program.commands.find((command) => command.name() === "drive");
165
+ expect(drive).toBeDefined();
166
+ const driveSubcommands = drive?.commands.map((command) => command.name()) ?? [];
167
+ expect(driveSubcommands).toContain("ls");
168
+ expect(driveSubcommands).toContain("search");
169
+ expect(driveSubcommands).toContain("download");
170
+ expect(driveSubcommands).toContain("upload");
171
+ });
172
+ it("wires docs subcommands", () => {
173
+ const program = buildProgram();
174
+ const docs = program.commands.find((command) => command.name() === "docs");
175
+ expect(docs).toBeDefined();
176
+ const docsSubcommands = docs?.commands.map((command) => command.name()) ?? [];
177
+ expect(docsSubcommands).toContain("read");
178
+ expect(docsSubcommands).toContain("markdown");
179
+ });
180
+ it("wires slides subcommands", () => {
181
+ const program = buildProgram();
182
+ const slides = program.commands.find((command) => command.name() === "slides");
183
+ expect(slides).toBeDefined();
184
+ const slidesSubcommands = slides?.commands.map((command) => command.name()) ?? [];
185
+ expect(slidesSubcommands).toContain("list");
186
+ expect(slidesSubcommands).toContain("read");
187
+ });
188
+ it("wires sheets subcommands", () => {
189
+ const program = buildProgram();
190
+ const sheets = program.commands.find((command) => command.name() === "sheets");
191
+ expect(sheets).toBeDefined();
192
+ const sheetsSubcommands = sheets?.commands.map((command) => command.name()) ?? [];
193
+ expect(sheetsSubcommands).toContain("read");
194
+ expect(sheetsSubcommands).toContain("update");
195
+ });
196
+ it("wires forms subcommands", () => {
197
+ const program = buildProgram();
198
+ const forms = program.commands.find((command) => command.name() === "forms");
199
+ expect(forms).toBeDefined();
200
+ const formsSubcommands = forms?.commands.map((command) => command.name()) ?? [];
201
+ expect(formsSubcommands).toContain("get");
202
+ expect(formsSubcommands).toContain("responses");
203
+ });
204
+ it("wires tasks subcommands", () => {
205
+ const program = buildProgram();
206
+ const tasks = program.commands.find((command) => command.name() === "tasks");
207
+ expect(tasks).toBeDefined();
208
+ const tasksSubcommands = tasks?.commands.map((command) => command.name()) ?? [];
209
+ expect(tasksSubcommands).toContain("list");
210
+ expect(tasksSubcommands).toContain("add");
211
+ });
212
+ it("wires people subcommands", () => {
213
+ const program = buildProgram();
214
+ const people = program.commands.find((command) => command.name() === "people");
215
+ expect(people).toBeDefined();
216
+ const peopleSubcommands = people?.commands.map((command) => command.name()) ?? [];
217
+ expect(peopleSubcommands).toContain("me");
218
+ expect(peopleSubcommands).toContain("search");
219
+ });
220
+ it("wires chat subcommands", () => {
221
+ const program = buildProgram();
222
+ const chat = program.commands.find((command) => command.name() === "chat");
223
+ expect(chat).toBeDefined();
224
+ const chatSubcommands = chat?.commands.map((command) => command.name()) ?? [];
225
+ expect(chatSubcommands).toContain("spaces");
226
+ expect(chatSubcommands).toContain("messages");
227
+ });
228
+ it("wires classroom subcommands", () => {
229
+ const program = buildProgram();
230
+ const classroom = program.commands.find((command) => command.name() === "classroom");
231
+ expect(classroom).toBeDefined();
232
+ const classroomSubcommands = classroom?.commands.map((command) => command.name()) ?? [];
233
+ expect(classroomSubcommands).toContain("courses");
234
+ expect(classroomSubcommands).toContain("submissions");
235
+ });
236
+ it("wires contacts subcommands", () => {
237
+ const program = buildProgram();
238
+ const contacts = program.commands.find((command) => command.name() === "contacts");
239
+ expect(contacts).toBeDefined();
240
+ const contactsSubcommands = contacts?.commands.map((command) => command.name()) ?? [];
241
+ expect(contactsSubcommands).toContain("list");
242
+ expect(contactsSubcommands).toContain("search");
243
+ });
244
+ it("wires groups subcommands", () => {
245
+ const program = buildProgram();
246
+ const groups = program.commands.find((command) => command.name() === "groups");
247
+ expect(groups).toBeDefined();
248
+ const groupsSubcommands = groups?.commands.map((command) => command.name()) ?? [];
249
+ expect(groupsSubcommands).toContain("list");
250
+ expect(groupsSubcommands).toContain("members");
251
+ });
252
+ it("wires keep subcommands", () => {
253
+ const program = buildProgram();
254
+ const keep = program.commands.find((command) => command.name() === "keep");
255
+ expect(keep).toBeDefined();
256
+ const keepSubcommands = keep?.commands.map((command) => command.name()) ?? [];
257
+ expect(keepSubcommands).toContain("list");
258
+ expect(keepSubcommands).toContain("get");
259
+ });
260
+ it("wires appscript subcommands", () => {
261
+ const program = buildProgram();
262
+ const appscript = program.commands.find((command) => command.name() === "appscript");
263
+ expect(appscript).toBeDefined();
264
+ const appscriptSubcommands = appscript?.commands.map((command) => command.name()) ?? [];
265
+ expect(appscriptSubcommands).toContain("list");
266
+ expect(appscriptSubcommands).toContain("run");
267
+ });
268
+ it("wires time subcommands", () => {
269
+ const program = buildProgram();
270
+ const time = program.commands.find((command) => command.name() === "time");
271
+ expect(time).toBeDefined();
272
+ const timeSubcommands = time?.commands.map((command) => command.name()) ?? [];
273
+ expect(timeSubcommands).toContain("now");
274
+ expect(timeSubcommands).toContain("timezone");
275
+ });
276
+ it("wires config subcommands", () => {
277
+ const program = buildProgram();
278
+ const config = program.commands.find((command) => command.name() === "config");
279
+ expect(config).toBeDefined();
280
+ const configSubcommands = config?.commands.map((command) => command.name()) ?? [];
281
+ expect(configSubcommands).toContain("path");
282
+ expect(configSubcommands).toContain("list");
283
+ expect(configSubcommands).toContain("get");
284
+ expect(configSubcommands).toContain("set");
285
+ expect(configSubcommands).toContain("unset");
286
+ });
287
+ it("wires exit-codes subcommands", () => {
288
+ const program = buildProgram();
289
+ const exitCodes = program.commands.find((command) => command.name() === "exit-codes");
290
+ expect(exitCodes).toBeDefined();
291
+ const exitCodeSubcommands = exitCodes?.commands.map((command) => command.name()) ?? [];
292
+ expect(exitCodeSubcommands).toContain("print");
293
+ });
294
+ it("wires version subcommands", () => {
295
+ const program = buildProgram();
296
+ const version = program.commands.find((command) => command.name() === "version");
297
+ expect(version).toBeDefined();
298
+ const versionSubcommands = version?.commands.map((command) => command.name()) ?? [];
299
+ expect(versionSubcommands).toContain("print");
300
+ });
301
+ it("wires schema subcommands", () => {
302
+ const program = buildProgram();
303
+ const schema = program.commands.find((command) => command.name() === "schema");
304
+ expect(schema).toBeDefined();
305
+ const schemaSubcommands = schema?.commands.map((command) => command.name()) ?? [];
306
+ expect(schemaSubcommands).toContain("print");
307
+ });
308
+ it("wires completion subcommands", () => {
309
+ const program = buildProgram();
310
+ const completion = program.commands.find((command) => command.name() === "completion");
311
+ expect(completion).toBeDefined();
312
+ const completionSubcommands = completion?.commands.map((command) => command.name()) ?? [];
313
+ expect(completionSubcommands).toContain("script");
314
+ });
315
+ it("wires agent subcommands", () => {
316
+ const program = buildProgram();
317
+ const agent = program.commands.find((command) => command.name() === "agent");
318
+ expect(agent).toBeDefined();
319
+ const agentSubcommands = agent?.commands.map((command) => command.name()) ?? [];
320
+ expect(agentSubcommands).toContain("ping");
321
+ });
322
+ });
323
+ //# sourceMappingURL=root.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"root.test.js","sourceRoot":"","sources":["../../../test/cmd/root.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=runtime-scopes.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-scopes.test.d.ts","sourceRoot":"","sources":["../../../test/cmd/runtime-scopes.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,133 @@
1
+ import { describe, expect, it, vi } from "vitest";
2
+ import { ServiceRuntime } from "../../src/googleapi/auth-factory.js";
3
+ import { scopes } from "../../src/googleauth/service.js";
4
+ /**
5
+ * Creates a ServiceRuntime whose getClient() is spied on.
6
+ * Returns the spy so we can assert on the scopes argument.
7
+ */
8
+ function createSpiedRuntime() {
9
+ const fakeClient = {};
10
+ const runtime = new ServiceRuntime({
11
+ resolveAccount: async () => ({
12
+ email: "sa@project.iam.gserviceaccount.com",
13
+ clientOverride: "",
14
+ serviceAccount: "sa@project.iam.gserviceaccount.com",
15
+ }),
16
+ readServiceAccountKey: async () => ({
17
+ type: "service_account",
18
+ client_email: "sa@project.iam.gserviceaccount.com",
19
+ private_key: "-----BEGIN RSA PRIVATE KEY-----\nfake\n-----END RSA PRIVATE KEY-----\n",
20
+ project_id: "my-project",
21
+ }),
22
+ });
23
+ // Spy on getClient to capture scopes
24
+ const originalGetClient = runtime.getClient.bind(runtime);
25
+ const getClientSpy = vi.fn(async (s) => {
26
+ // Call original to verify it works, but we mainly care about what scopes were passed
27
+ return originalGetClient(s);
28
+ });
29
+ runtime.getClient = getClientSpy;
30
+ return { runtime, getClientSpy };
31
+ }
32
+ describe("service runtimes pass correct scopes to getClient()", () => {
33
+ it("drive runtime passes drive scopes", async () => {
34
+ const { runtime, getClientSpy } = createSpiedRuntime();
35
+ const { buildDriveCommandDeps } = await import("../../src/cmd/drive/runtime.js");
36
+ const deps = buildDriveCommandDeps(runtime);
37
+ // Call any dep function - they all call runtime.getClient() internally
38
+ // This will fail because the Google API call requires real auth, but we
39
+ // can check what scopes were passed to getClient before the API call fails
40
+ try {
41
+ await deps.listFiles();
42
+ }
43
+ catch {
44
+ // Expected: Google API call fails without real auth
45
+ }
46
+ expect(getClientSpy).toHaveBeenCalledWith(scopes("drive"));
47
+ });
48
+ it("docs runtime passes docs scopes", async () => {
49
+ const { runtime, getClientSpy } = createSpiedRuntime();
50
+ const { buildDocsCommandDeps } = await import("../../src/cmd/docs/runtime.js");
51
+ const deps = buildDocsCommandDeps(runtime);
52
+ try {
53
+ await deps.createDoc("test");
54
+ }
55
+ catch {
56
+ // Expected
57
+ }
58
+ expect(getClientSpy).toHaveBeenCalledWith(scopes("docs"));
59
+ });
60
+ it("sheets runtime passes sheets scopes", async () => {
61
+ const { runtime, getClientSpy } = createSpiedRuntime();
62
+ const { buildSheetsCommandDeps } = await import("../../src/cmd/sheets/runtime.js");
63
+ const deps = buildSheetsCommandDeps(runtime);
64
+ try {
65
+ await deps.createSheet("test");
66
+ }
67
+ catch {
68
+ // Expected
69
+ }
70
+ expect(getClientSpy).toHaveBeenCalledWith(scopes("sheets"));
71
+ });
72
+ it("slides runtime passes slides scopes", async () => {
73
+ const { runtime, getClientSpy } = createSpiedRuntime();
74
+ const { buildSlidesCommandDeps } = await import("../../src/cmd/slides/runtime.js");
75
+ const deps = buildSlidesCommandDeps(runtime);
76
+ try {
77
+ await deps.createPresentation("test");
78
+ }
79
+ catch {
80
+ // Expected
81
+ }
82
+ expect(getClientSpy).toHaveBeenCalledWith(scopes("slides"));
83
+ });
84
+ it("people runtime passes people scopes", async () => {
85
+ const { runtime, getClientSpy } = createSpiedRuntime();
86
+ const { buildPeopleCommandDeps } = await import("../../src/cmd/people/runtime.js");
87
+ const deps = buildPeopleCommandDeps(runtime);
88
+ try {
89
+ await deps.me();
90
+ }
91
+ catch {
92
+ // Expected
93
+ }
94
+ expect(getClientSpy).toHaveBeenCalledWith(scopes("people"));
95
+ });
96
+ it("tasks runtime passes tasks scopes", async () => {
97
+ const { runtime, getClientSpy } = createSpiedRuntime();
98
+ const { buildTasksCommandDeps } = await import("../../src/cmd/tasks/runtime.js");
99
+ const deps = buildTasksCommandDeps(runtime);
100
+ try {
101
+ await deps.listTasks();
102
+ }
103
+ catch {
104
+ // Expected
105
+ }
106
+ expect(getClientSpy).toHaveBeenCalledWith(scopes("tasks"));
107
+ });
108
+ it("forms runtime passes forms scopes", async () => {
109
+ const { runtime, getClientSpy } = createSpiedRuntime();
110
+ const { buildFormsCommandDeps } = await import("../../src/cmd/forms/runtime.js");
111
+ const deps = buildFormsCommandDeps(runtime);
112
+ try {
113
+ await deps.createForm("test");
114
+ }
115
+ catch {
116
+ // Expected
117
+ }
118
+ expect(getClientSpy).toHaveBeenCalledWith(scopes("forms"));
119
+ });
120
+ it("appscript runtime passes appscript scopes", async () => {
121
+ const { runtime, getClientSpy } = createSpiedRuntime();
122
+ const { buildAppScriptCommandDeps } = await import("../../src/cmd/appscript/runtime.js");
123
+ const deps = buildAppScriptCommandDeps(runtime);
124
+ try {
125
+ await deps.listProjects();
126
+ }
127
+ catch {
128
+ // Expected
129
+ }
130
+ expect(getClientSpy).toHaveBeenCalledWith(scopes("appscript"));
131
+ });
132
+ });
133
+ //# sourceMappingURL=runtime-scopes.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-scopes.test.js","sourceRoot":"","sources":["../../../test/cmd/runtime-scopes.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=commands.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commands.test.d.ts","sourceRoot":"","sources":["../../../../test/cmd/schema/commands.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,31 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { Command } from "commander";
3
+ import { registerSchemaCommands } from "../../../src/cmd/schema/commands.js";
4
+ describe("schema command", () => {
5
+ it("registers print subcommand", () => {
6
+ const schema = new Command("schema");
7
+ registerSchemaCommands(schema);
8
+ const names = schema.commands.map((cmd) => cmd.name());
9
+ expect(names).toContain("print");
10
+ });
11
+ it("prints schema payload with typee runtime name", async () => {
12
+ const root = new Command();
13
+ const schema = root.command("schema");
14
+ registerSchemaCommands(schema);
15
+ let stdout = "";
16
+ const originalWrite = process.stdout.write.bind(process.stdout);
17
+ process.stdout.write = ((chunk) => {
18
+ stdout += String(chunk);
19
+ return true;
20
+ });
21
+ try {
22
+ await root.parseAsync(["node", "typee", "schema", "print"]);
23
+ }
24
+ finally {
25
+ process.stdout.write = originalWrite;
26
+ }
27
+ const payload = JSON.parse(stdout.trim());
28
+ expect(payload.name).toBe("typee");
29
+ });
30
+ });
31
+ //# sourceMappingURL=commands.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commands.test.js","sourceRoot":"","sources":["../../../../test/cmd/schema/commands.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAE7E,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACpC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;QACrC,sBAAsB,CAAC,MAAM,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QACvD,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC7D,MAAM,IAAI,GAAG,IAAI,OAAO,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACtC,sBAAsB,CAAC,MAAM,CAAC,CAAC;QAE/B,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAChE,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,KAAc,EAAW,EAAE;YAClD,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC;YACxB,OAAO,IAAI,CAAC;QACd,CAAC,CAAgC,CAAC;QAElC,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;QAC9D,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,aAAa,CAAC;QACvC,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAqB,CAAC;QAC9D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=commands.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commands.test.d.ts","sourceRoot":"","sources":["../../../../test/cmd/sheets/commands.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,39 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { Command } from "commander";
3
+ import { formatSheetsRead, registerSheetsCommands } from "../../../src/cmd/sheets/commands.js";
4
+ describe("sheets command formatters", () => {
5
+ it("formats sheets read as json", () => {
6
+ const out = formatSheetsRead({ range: "A1:B2", values: [["a", "b"]] }, "json");
7
+ const parsed = JSON.parse(out);
8
+ expect(parsed.range).toBe("A1:B2");
9
+ });
10
+ it("registers read and update subcommands", () => {
11
+ const sheets = new Command("sheets");
12
+ registerSheetsCommands(sheets);
13
+ const names = sheets.commands.map((cmd) => cmd.name());
14
+ expect(names).toContain("read");
15
+ expect(names).toContain("update");
16
+ });
17
+ it("prints stable message when update is not applied", async () => {
18
+ const root = new Command();
19
+ const sheets = root.command("sheets");
20
+ registerSheetsCommands(sheets, {
21
+ updateRange: async () => ({ updated: false }),
22
+ });
23
+ let stdout = "";
24
+ const originalWrite = process.stdout.write.bind(process.stdout);
25
+ process.stdout.write = ((chunk) => {
26
+ stdout += String(chunk);
27
+ return true;
28
+ });
29
+ try {
30
+ await root.parseAsync(["node", "typee", "sheets", "update", "--id", "s1", "--range", "A1", "--values", "x"]);
31
+ }
32
+ finally {
33
+ process.stdout.write = originalWrite;
34
+ }
35
+ expect(stdout).toContain("Range update was not applied");
36
+ expect(stdout).not.toContain("not implemented yet in TypeScript port");
37
+ });
38
+ });
39
+ //# sourceMappingURL=commands.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commands.test.js","sourceRoot":"","sources":["../../../../test/cmd/sheets/commands.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAE/F,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACzC,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACrC,MAAM,GAAG,GAAG,gBAAgB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAC/E,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAsB,CAAC;QACpD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;QACrC,sBAAsB,CAAC,MAAM,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QACvD,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAChC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;QAChE,MAAM,IAAI,GAAG,IAAI,OAAO,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACtC,sBAAsB,CAAC,MAAM,EAAE;YAC7B,WAAW,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;SAC9C,CAAC,CAAC;QAEH,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAChE,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,KAAc,EAAW,EAAE;YAClD,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC;YACxB,OAAO,IAAI,CAAC;QACd,CAAC,CAAgC,CAAC;QAElC,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;QAC/G,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,aAAa,CAAC;QACvC,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,8BAA8B,CAAC,CAAC;QACzD,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,wCAAwC,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=commands.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commands.test.d.ts","sourceRoot":"","sources":["../../../../test/cmd/slides/commands.test.ts"],"names":[],"mappings":""}