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.
- package/LICENSE +15 -0
- package/README.md +1431 -0
- package/dist/bin/gtypee.d.ts +3 -0
- package/dist/bin/gtypee.d.ts.map +1 -0
- package/dist/bin/gtypee.js +18 -0
- package/dist/bin/gtypee.js.map +1 -0
- package/dist/src/authclient/authclient.d.ts +11 -0
- package/dist/src/authclient/authclient.d.ts.map +1 -0
- package/dist/src/authclient/authclient.js +26 -0
- package/dist/src/authclient/authclient.js.map +1 -0
- package/dist/src/cmd/agent/commands.d.ts +3 -0
- package/dist/src/cmd/agent/commands.d.ts.map +1 -0
- package/dist/src/cmd/agent/commands.js +16 -0
- package/dist/src/cmd/agent/commands.js.map +1 -0
- package/dist/src/cmd/appscript/commands.d.ts +24 -0
- package/dist/src/cmd/appscript/commands.d.ts.map +1 -0
- package/dist/src/cmd/appscript/commands.js +116 -0
- package/dist/src/cmd/appscript/commands.js.map +1 -0
- package/dist/src/cmd/appscript/runtime.d.ts +4 -0
- package/dist/src/cmd/appscript/runtime.d.ts.map +1 -0
- package/dist/src/cmd/appscript/runtime.js +64 -0
- package/dist/src/cmd/appscript/runtime.js.map +1 -0
- package/dist/src/cmd/auth/commands.d.ts +67 -0
- package/dist/src/cmd/auth/commands.d.ts.map +1 -0
- package/dist/src/cmd/auth/commands.js +184 -0
- package/dist/src/cmd/auth/commands.js.map +1 -0
- package/dist/src/cmd/auth/runtime.d.ts +20 -0
- package/dist/src/cmd/auth/runtime.d.ts.map +1 -0
- package/dist/src/cmd/auth/runtime.js +237 -0
- package/dist/src/cmd/auth/runtime.js.map +1 -0
- package/dist/src/cmd/calendar/commands.d.ts +58 -0
- package/dist/src/cmd/calendar/commands.d.ts.map +1 -0
- package/dist/src/cmd/calendar/commands.js +161 -0
- package/dist/src/cmd/calendar/commands.js.map +1 -0
- package/dist/src/cmd/calendar/runtime.d.ts +4 -0
- package/dist/src/cmd/calendar/runtime.d.ts.map +1 -0
- package/dist/src/cmd/calendar/runtime.js +164 -0
- package/dist/src/cmd/calendar/runtime.js.map +1 -0
- package/dist/src/cmd/chat/commands.d.ts +27 -0
- package/dist/src/cmd/chat/commands.d.ts.map +1 -0
- package/dist/src/cmd/chat/commands.js +113 -0
- package/dist/src/cmd/chat/commands.js.map +1 -0
- package/dist/src/cmd/chat/runtime.d.ts +4 -0
- package/dist/src/cmd/chat/runtime.d.ts.map +1 -0
- package/dist/src/cmd/chat/runtime.js +67 -0
- package/dist/src/cmd/chat/runtime.js.map +1 -0
- package/dist/src/cmd/classroom/commands.d.ts +22 -0
- package/dist/src/cmd/classroom/commands.d.ts.map +1 -0
- package/dist/src/cmd/classroom/commands.js +91 -0
- package/dist/src/cmd/classroom/commands.js.map +1 -0
- package/dist/src/cmd/classroom/runtime.d.ts +4 -0
- package/dist/src/cmd/classroom/runtime.d.ts.map +1 -0
- package/dist/src/cmd/classroom/runtime.js +67 -0
- package/dist/src/cmd/classroom/runtime.js.map +1 -0
- package/dist/src/cmd/command-registry.d.ts +8 -0
- package/dist/src/cmd/command-registry.d.ts.map +1 -0
- package/dist/src/cmd/command-registry.js +40 -0
- package/dist/src/cmd/command-registry.js.map +1 -0
- package/dist/src/cmd/completion/commands.d.ts +3 -0
- package/dist/src/cmd/completion/commands.d.ts.map +1 -0
- package/dist/src/cmd/completion/commands.js +29 -0
- package/dist/src/cmd/completion/commands.js.map +1 -0
- package/dist/src/cmd/config/commands.d.ts +10 -0
- package/dist/src/cmd/config/commands.d.ts.map +1 -0
- package/dist/src/cmd/config/commands.js +106 -0
- package/dist/src/cmd/config/commands.js.map +1 -0
- package/dist/src/cmd/contacts/commands.d.ts +18 -0
- package/dist/src/cmd/contacts/commands.d.ts.map +1 -0
- package/dist/src/cmd/contacts/commands.js +79 -0
- package/dist/src/cmd/contacts/commands.js.map +1 -0
- package/dist/src/cmd/contacts/runtime.d.ts +4 -0
- package/dist/src/cmd/contacts/runtime.d.ts.map +1 -0
- package/dist/src/cmd/contacts/runtime.js +67 -0
- package/dist/src/cmd/contacts/runtime.js.map +1 -0
- package/dist/src/cmd/docs/commands.d.ts +24 -0
- package/dist/src/cmd/docs/commands.d.ts.map +1 -0
- package/dist/src/cmd/docs/commands.js +82 -0
- package/dist/src/cmd/docs/commands.js.map +1 -0
- package/dist/src/cmd/docs/runtime.d.ts +4 -0
- package/dist/src/cmd/docs/runtime.d.ts.map +1 -0
- package/dist/src/cmd/docs/runtime.js +77 -0
- package/dist/src/cmd/docs/runtime.js.map +1 -0
- package/dist/src/cmd/drive/commands.d.ts +112 -0
- package/dist/src/cmd/drive/commands.d.ts.map +1 -0
- package/dist/src/cmd/drive/commands.js +431 -0
- package/dist/src/cmd/drive/commands.js.map +1 -0
- package/dist/src/cmd/drive/runtime.d.ts +4 -0
- package/dist/src/cmd/drive/runtime.d.ts.map +1 -0
- package/dist/src/cmd/drive/runtime.js +336 -0
- package/dist/src/cmd/drive/runtime.js.map +1 -0
- package/dist/src/cmd/execution-context.d.ts +33 -0
- package/dist/src/cmd/execution-context.d.ts.map +1 -0
- package/dist/src/cmd/execution-context.js +31 -0
- package/dist/src/cmd/execution-context.js.map +1 -0
- package/dist/src/cmd/exit-codes/commands.d.ts +5 -0
- package/dist/src/cmd/exit-codes/commands.d.ts.map +1 -0
- package/dist/src/cmd/exit-codes/commands.js +25 -0
- package/dist/src/cmd/exit-codes/commands.js.map +1 -0
- package/dist/src/cmd/exit-codes.d.ts +4 -0
- package/dist/src/cmd/exit-codes.d.ts.map +1 -0
- package/dist/src/cmd/exit-codes.js +4 -0
- package/dist/src/cmd/exit-codes.js.map +1 -0
- package/dist/src/cmd/exit.d.ts +7 -0
- package/dist/src/cmd/exit.d.ts.map +1 -0
- package/dist/src/cmd/exit.js +19 -0
- package/dist/src/cmd/exit.js.map +1 -0
- package/dist/src/cmd/forms/commands.d.ts +19 -0
- package/dist/src/cmd/forms/commands.d.ts.map +1 -0
- package/dist/src/cmd/forms/commands.js +73 -0
- package/dist/src/cmd/forms/commands.js.map +1 -0
- package/dist/src/cmd/forms/runtime.d.ts +4 -0
- package/dist/src/cmd/forms/runtime.d.ts.map +1 -0
- package/dist/src/cmd/forms/runtime.js +38 -0
- package/dist/src/cmd/forms/runtime.js.map +1 -0
- package/dist/src/cmd/gmail/commands.d.ts +187 -0
- package/dist/src/cmd/gmail/commands.d.ts.map +1 -0
- package/dist/src/cmd/gmail/commands.js +767 -0
- package/dist/src/cmd/gmail/commands.js.map +1 -0
- package/dist/src/cmd/gmail/runtime.d.ts +9 -0
- package/dist/src/cmd/gmail/runtime.d.ts.map +1 -0
- package/dist/src/cmd/gmail/runtime.js +644 -0
- package/dist/src/cmd/gmail/runtime.js.map +1 -0
- package/dist/src/cmd/groups/commands.d.ts +26 -0
- package/dist/src/cmd/groups/commands.d.ts.map +1 -0
- package/dist/src/cmd/groups/commands.js +105 -0
- package/dist/src/cmd/groups/commands.js.map +1 -0
- package/dist/src/cmd/groups/runtime.d.ts +4 -0
- package/dist/src/cmd/groups/runtime.d.ts.map +1 -0
- package/dist/src/cmd/groups/runtime.js +61 -0
- package/dist/src/cmd/groups/runtime.js.map +1 -0
- package/dist/src/cmd/keep/commands.d.ts +23 -0
- package/dist/src/cmd/keep/commands.d.ts.map +1 -0
- package/dist/src/cmd/keep/commands.js +111 -0
- package/dist/src/cmd/keep/commands.js.map +1 -0
- package/dist/src/cmd/keep/runtime.d.ts +4 -0
- package/dist/src/cmd/keep/runtime.d.ts.map +1 -0
- package/dist/src/cmd/keep/runtime.js +82 -0
- package/dist/src/cmd/keep/runtime.js.map +1 -0
- package/dist/src/cmd/people/commands.d.ts +22 -0
- package/dist/src/cmd/people/commands.d.ts.map +1 -0
- package/dist/src/cmd/people/commands.js +96 -0
- package/dist/src/cmd/people/commands.js.map +1 -0
- package/dist/src/cmd/people/runtime.d.ts +4 -0
- package/dist/src/cmd/people/runtime.d.ts.map +1 -0
- package/dist/src/cmd/people/runtime.js +65 -0
- package/dist/src/cmd/people/runtime.js.map +1 -0
- package/dist/src/cmd/rewrite-desire-path-args.d.ts +2 -0
- package/dist/src/cmd/rewrite-desire-path-args.d.ts.map +1 -0
- package/dist/src/cmd/rewrite-desire-path-args.js +75 -0
- package/dist/src/cmd/rewrite-desire-path-args.js.map +1 -0
- package/dist/src/cmd/root.d.ts +10 -0
- package/dist/src/cmd/root.d.ts.map +1 -0
- package/dist/src/cmd/root.js +341 -0
- package/dist/src/cmd/root.js.map +1 -0
- package/dist/src/cmd/schema/commands.d.ts +3 -0
- package/dist/src/cmd/schema/commands.d.ts.map +1 -0
- package/dist/src/cmd/schema/commands.js +21 -0
- package/dist/src/cmd/schema/commands.js.map +1 -0
- package/dist/src/cmd/script-path.d.ts +2 -0
- package/dist/src/cmd/script-path.d.ts.map +1 -0
- package/dist/src/cmd/script-path.js +4 -0
- package/dist/src/cmd/script-path.js.map +1 -0
- package/dist/src/cmd/sheets/commands.d.ts +20 -0
- package/dist/src/cmd/sheets/commands.d.ts.map +1 -0
- package/dist/src/cmd/sheets/commands.js +79 -0
- package/dist/src/cmd/sheets/commands.js.map +1 -0
- package/dist/src/cmd/sheets/runtime.d.ts +4 -0
- package/dist/src/cmd/sheets/runtime.d.ts.map +1 -0
- package/dist/src/cmd/sheets/runtime.js +37 -0
- package/dist/src/cmd/sheets/runtime.js.map +1 -0
- package/dist/src/cmd/slides/commands.d.ts +24 -0
- package/dist/src/cmd/slides/commands.d.ts.map +1 -0
- package/dist/src/cmd/slides/commands.js +90 -0
- package/dist/src/cmd/slides/commands.js.map +1 -0
- package/dist/src/cmd/slides/runtime.d.ts +4 -0
- package/dist/src/cmd/slides/runtime.d.ts.map +1 -0
- package/dist/src/cmd/slides/runtime.js +92 -0
- package/dist/src/cmd/slides/runtime.js.map +1 -0
- package/dist/src/cmd/tasks/commands.d.ts +28 -0
- package/dist/src/cmd/tasks/commands.d.ts.map +1 -0
- package/dist/src/cmd/tasks/commands.js +103 -0
- package/dist/src/cmd/tasks/commands.js.map +1 -0
- package/dist/src/cmd/tasks/runtime.d.ts +4 -0
- package/dist/src/cmd/tasks/runtime.d.ts.map +1 -0
- package/dist/src/cmd/tasks/runtime.js +56 -0
- package/dist/src/cmd/tasks/runtime.js.map +1 -0
- package/dist/src/cmd/time/commands.d.ts +17 -0
- package/dist/src/cmd/time/commands.d.ts.map +1 -0
- package/dist/src/cmd/time/commands.js +88 -0
- package/dist/src/cmd/time/commands.js.map +1 -0
- package/dist/src/cmd/version/commands.d.ts +3 -0
- package/dist/src/cmd/version/commands.d.ts.map +1 -0
- package/dist/src/cmd/version/commands.js +17 -0
- package/dist/src/cmd/version/commands.js.map +1 -0
- package/dist/src/cmd/workspace/commands.d.ts +222 -0
- package/dist/src/cmd/workspace/commands.d.ts.map +1 -0
- package/dist/src/cmd/workspace/commands.js +685 -0
- package/dist/src/cmd/workspace/commands.js.map +1 -0
- package/dist/src/cmd/workspace/runtime.d.ts +8 -0
- package/dist/src/cmd/workspace/runtime.d.ts.map +1 -0
- package/dist/src/cmd/workspace/runtime.js +852 -0
- package/dist/src/cmd/workspace/runtime.js.map +1 -0
- package/dist/src/config/clients.d.ts +8 -0
- package/dist/src/config/clients.d.ts.map +1 -0
- package/dist/src/config/clients.js +95 -0
- package/dist/src/config/clients.js.map +1 -0
- package/dist/src/config/config.d.ts +11 -0
- package/dist/src/config/config.d.ts.map +1 -0
- package/dist/src/config/config.js +54 -0
- package/dist/src/config/config.js.map +1 -0
- package/dist/src/config/credentials.d.ts +16 -0
- package/dist/src/config/credentials.d.ts.map +1 -0
- package/dist/src/config/credentials.js +97 -0
- package/dist/src/config/credentials.js.map +1 -0
- package/dist/src/config/migration.d.ts +13 -0
- package/dist/src/config/migration.d.ts.map +1 -0
- package/dist/src/config/migration.js +70 -0
- package/dist/src/config/migration.js.map +1 -0
- package/dist/src/config/paths.d.ts +11 -0
- package/dist/src/config/paths.d.ts.map +1 -0
- package/dist/src/config/paths.js +74 -0
- package/dist/src/config/paths.js.map +1 -0
- package/dist/src/googleapi/auth-factory.d.ts +46 -0
- package/dist/src/googleapi/auth-factory.d.ts.map +1 -0
- package/dist/src/googleapi/auth-factory.js +88 -0
- package/dist/src/googleapi/auth-factory.js.map +1 -0
- package/dist/src/googleapi/calendar.d.ts +3 -0
- package/dist/src/googleapi/calendar.d.ts.map +1 -0
- package/dist/src/googleapi/calendar.js +21 -0
- package/dist/src/googleapi/calendar.js.map +1 -0
- package/dist/src/googleapi/circuitbreaker.d.ts +19 -0
- package/dist/src/googleapi/circuitbreaker.d.ts.map +1 -0
- package/dist/src/googleapi/circuitbreaker.js +43 -0
- package/dist/src/googleapi/circuitbreaker.js.map +1 -0
- package/dist/src/googleapi/client.d.ts +17 -0
- package/dist/src/googleapi/client.d.ts.map +1 -0
- package/dist/src/googleapi/client.js +18 -0
- package/dist/src/googleapi/client.js.map +1 -0
- package/dist/src/googleapi/drive.d.ts +3 -0
- package/dist/src/googleapi/drive.d.ts.map +1 -0
- package/dist/src/googleapi/drive.js +11 -0
- package/dist/src/googleapi/drive.js.map +1 -0
- package/dist/src/googleapi/errors.d.ts +37 -0
- package/dist/src/googleapi/errors.d.ts.map +1 -0
- package/dist/src/googleapi/errors.js +93 -0
- package/dist/src/googleapi/errors.js.map +1 -0
- package/dist/src/googleapi/retry-constants.d.ts +5 -0
- package/dist/src/googleapi/retry-constants.d.ts.map +1 -0
- package/dist/src/googleapi/retry-constants.js +5 -0
- package/dist/src/googleapi/retry-constants.js.map +1 -0
- package/dist/src/googleapi/transport.d.ts +3 -0
- package/dist/src/googleapi/transport.d.ts.map +1 -0
- package/dist/src/googleapi/transport.js +39 -0
- package/dist/src/googleapi/transport.js.map +1 -0
- package/dist/src/googleauth/oauth-flow.d.ts +62 -0
- package/dist/src/googleauth/oauth-flow.d.ts.map +1 -0
- package/dist/src/googleauth/oauth-flow.js +262 -0
- package/dist/src/googleauth/oauth-flow.js.map +1 -0
- package/dist/src/googleauth/service.d.ts +28 -0
- package/dist/src/googleauth/service.d.ts.map +1 -0
- package/dist/src/googleauth/service.js +345 -0
- package/dist/src/googleauth/service.js.map +1 -0
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +2 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/outfmt/outfmt.d.ts +8 -0
- package/dist/src/outfmt/outfmt.d.ts.map +1 -0
- package/dist/src/outfmt/outfmt.js +66 -0
- package/dist/src/outfmt/outfmt.js.map +1 -0
- package/dist/src/secrets/store.d.ts +61 -0
- package/dist/src/secrets/store.d.ts.map +1 -0
- package/dist/src/secrets/store.js +247 -0
- package/dist/src/secrets/store.js.map +1 -0
- package/dist/test/authclient/authclient.test.d.ts +2 -0
- package/dist/test/authclient/authclient.test.d.ts.map +1 -0
- package/dist/test/authclient/authclient.test.js +14 -0
- package/dist/test/authclient/authclient.test.js.map +1 -0
- package/dist/test/bin/gtypee-entrypoint.test.d.ts +2 -0
- package/dist/test/bin/gtypee-entrypoint.test.d.ts.map +1 -0
- package/dist/test/bin/gtypee-entrypoint.test.js +17 -0
- package/dist/test/bin/gtypee-entrypoint.test.js.map +1 -0
- package/dist/test/cmd/agent/commands.test.d.ts +2 -0
- package/dist/test/cmd/agent/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/agent/commands.test.js +12 -0
- package/dist/test/cmd/agent/commands.test.js.map +1 -0
- package/dist/test/cmd/appscript/commands.test.d.ts +2 -0
- package/dist/test/cmd/appscript/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/appscript/commands.test.js +104 -0
- package/dist/test/cmd/appscript/commands.test.js.map +1 -0
- package/dist/test/cmd/auth/commands.test.d.ts +2 -0
- package/dist/test/cmd/auth/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/auth/commands.test.js +142 -0
- package/dist/test/cmd/auth/commands.test.js.map +1 -0
- package/dist/test/cmd/auth/runtime.test.d.ts +2 -0
- package/dist/test/cmd/auth/runtime.test.d.ts.map +1 -0
- package/dist/test/cmd/auth/runtime.test.js +214 -0
- package/dist/test/cmd/auth/runtime.test.js.map +1 -0
- package/dist/test/cmd/calendar/commands.test.d.ts +2 -0
- package/dist/test/cmd/calendar/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/calendar/commands.test.js +121 -0
- package/dist/test/cmd/calendar/commands.test.js.map +1 -0
- package/dist/test/cmd/chat/commands.test.d.ts +2 -0
- package/dist/test/cmd/chat/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/chat/commands.test.js +57 -0
- package/dist/test/cmd/chat/commands.test.js.map +1 -0
- package/dist/test/cmd/classroom/commands.test.d.ts +2 -0
- package/dist/test/cmd/classroom/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/classroom/commands.test.js +61 -0
- package/dist/test/cmd/classroom/commands.test.js.map +1 -0
- package/dist/test/cmd/completion/commands.test.d.ts +2 -0
- package/dist/test/cmd/completion/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/completion/commands.test.js +30 -0
- package/dist/test/cmd/completion/commands.test.js.map +1 -0
- package/dist/test/cmd/config/commands.test.d.ts +2 -0
- package/dist/test/cmd/config/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/config/commands.test.js +21 -0
- package/dist/test/cmd/config/commands.test.js.map +1 -0
- package/dist/test/cmd/contacts/commands.test.d.ts +2 -0
- package/dist/test/cmd/contacts/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/contacts/commands.test.js +51 -0
- package/dist/test/cmd/contacts/commands.test.js.map +1 -0
- package/dist/test/cmd/docs/commands.test.d.ts +2 -0
- package/dist/test/cmd/docs/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/docs/commands.test.js +39 -0
- package/dist/test/cmd/docs/commands.test.js.map +1 -0
- package/dist/test/cmd/drive/commands.test.d.ts +2 -0
- package/dist/test/cmd/drive/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/drive/commands.test.js +409 -0
- package/dist/test/cmd/drive/commands.test.js.map +1 -0
- package/dist/test/cmd/execution-context.test.d.ts +2 -0
- package/dist/test/cmd/execution-context.test.d.ts.map +1 -0
- package/dist/test/cmd/execution-context.test.js +29 -0
- package/dist/test/cmd/execution-context.test.js.map +1 -0
- package/dist/test/cmd/exit-codes/commands.test.d.ts +2 -0
- package/dist/test/cmd/exit-codes/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/exit-codes/commands.test.js +19 -0
- package/dist/test/cmd/exit-codes/commands.test.js.map +1 -0
- package/dist/test/cmd/exit.test.d.ts +2 -0
- package/dist/test/cmd/exit.test.d.ts.map +1 -0
- package/dist/test/cmd/exit.test.js +14 -0
- package/dist/test/cmd/exit.test.js.map +1 -0
- package/dist/test/cmd/forms/commands.test.d.ts +2 -0
- package/dist/test/cmd/forms/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/forms/commands.test.js +42 -0
- package/dist/test/cmd/forms/commands.test.js.map +1 -0
- package/dist/test/cmd/gmail/commands.test.d.ts +2 -0
- package/dist/test/cmd/gmail/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/gmail/commands.test.js +315 -0
- package/dist/test/cmd/gmail/commands.test.js.map +1 -0
- package/dist/test/cmd/groups/commands.test.d.ts +2 -0
- package/dist/test/cmd/groups/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/groups/commands.test.js +79 -0
- package/dist/test/cmd/groups/commands.test.js.map +1 -0
- package/dist/test/cmd/keep/commands.test.d.ts +2 -0
- package/dist/test/cmd/keep/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/keep/commands.test.js +87 -0
- package/dist/test/cmd/keep/commands.test.js.map +1 -0
- package/dist/test/cmd/people/commands.test.d.ts +2 -0
- package/dist/test/cmd/people/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/people/commands.test.js +52 -0
- package/dist/test/cmd/people/commands.test.js.map +1 -0
- package/dist/test/cmd/rewrite-desire-path-args.test.d.ts +2 -0
- package/dist/test/cmd/rewrite-desire-path-args.test.d.ts.map +1 -0
- package/dist/test/cmd/rewrite-desire-path-args.test.js +21 -0
- package/dist/test/cmd/rewrite-desire-path-args.test.js.map +1 -0
- package/dist/test/cmd/root.test.d.ts +2 -0
- package/dist/test/cmd/root.test.d.ts.map +1 -0
- package/dist/test/cmd/root.test.js +323 -0
- package/dist/test/cmd/root.test.js.map +1 -0
- package/dist/test/cmd/runtime-scopes.test.d.ts +2 -0
- package/dist/test/cmd/runtime-scopes.test.d.ts.map +1 -0
- package/dist/test/cmd/runtime-scopes.test.js +133 -0
- package/dist/test/cmd/runtime-scopes.test.js.map +1 -0
- package/dist/test/cmd/schema/commands.test.d.ts +2 -0
- package/dist/test/cmd/schema/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/schema/commands.test.js +31 -0
- package/dist/test/cmd/schema/commands.test.js.map +1 -0
- package/dist/test/cmd/sheets/commands.test.d.ts +2 -0
- package/dist/test/cmd/sheets/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/sheets/commands.test.js +39 -0
- package/dist/test/cmd/sheets/commands.test.js.map +1 -0
- package/dist/test/cmd/slides/commands.test.d.ts +2 -0
- package/dist/test/cmd/slides/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/slides/commands.test.js +48 -0
- package/dist/test/cmd/slides/commands.test.js.map +1 -0
- package/dist/test/cmd/tasks/commands.test.d.ts +2 -0
- package/dist/test/cmd/tasks/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/tasks/commands.test.js +74 -0
- package/dist/test/cmd/tasks/commands.test.js.map +1 -0
- package/dist/test/cmd/time/commands.test.d.ts +2 -0
- package/dist/test/cmd/time/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/time/commands.test.js +52 -0
- package/dist/test/cmd/time/commands.test.js.map +1 -0
- package/dist/test/cmd/version/commands.test.d.ts +2 -0
- package/dist/test/cmd/version/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/version/commands.test.js +12 -0
- package/dist/test/cmd/version/commands.test.js.map +1 -0
- package/dist/test/cmd/workspace/commands.test.d.ts +2 -0
- package/dist/test/cmd/workspace/commands.test.d.ts.map +1 -0
- package/dist/test/cmd/workspace/commands.test.js +285 -0
- package/dist/test/cmd/workspace/commands.test.js.map +1 -0
- package/dist/test/config/clients.test.d.ts +2 -0
- package/dist/test/config/clients.test.d.ts.map +1 -0
- package/dist/test/config/clients.test.js +42 -0
- package/dist/test/config/clients.test.js.map +1 -0
- package/dist/test/config/config.test.d.ts +2 -0
- package/dist/test/config/config.test.d.ts.map +1 -0
- package/dist/test/config/config.test.js +80 -0
- package/dist/test/config/config.test.js.map +1 -0
- package/dist/test/config/credentials.test.d.ts +2 -0
- package/dist/test/config/credentials.test.d.ts.map +1 -0
- package/dist/test/config/credentials.test.js +78 -0
- package/dist/test/config/credentials.test.js.map +1 -0
- package/dist/test/config/migration.test.d.ts +2 -0
- package/dist/test/config/migration.test.d.ts.map +1 -0
- package/dist/test/config/migration.test.js +136 -0
- package/dist/test/config/migration.test.js.map +1 -0
- package/dist/test/config/paths.test.d.ts +2 -0
- package/dist/test/config/paths.test.d.ts.map +1 -0
- package/dist/test/config/paths.test.js +31 -0
- package/dist/test/config/paths.test.js.map +1 -0
- package/dist/test/googleapi/auth-factory.test.d.ts +2 -0
- package/dist/test/googleapi/auth-factory.test.d.ts.map +1 -0
- package/dist/test/googleapi/auth-factory.test.js +215 -0
- package/dist/test/googleapi/auth-factory.test.js.map +1 -0
- package/dist/test/googleapi/circuitbreaker.test.d.ts +2 -0
- package/dist/test/googleapi/circuitbreaker.test.d.ts.map +1 -0
- package/dist/test/googleapi/circuitbreaker.test.js +30 -0
- package/dist/test/googleapi/circuitbreaker.test.js.map +1 -0
- package/dist/test/googleapi/client.test.d.ts +2 -0
- package/dist/test/googleapi/client.test.d.ts.map +1 -0
- package/dist/test/googleapi/client.test.js +16 -0
- package/dist/test/googleapi/client.test.js.map +1 -0
- package/dist/test/googleapi/errors.test.d.ts +2 -0
- package/dist/test/googleapi/errors.test.d.ts.map +1 -0
- package/dist/test/googleapi/errors.test.js +21 -0
- package/dist/test/googleapi/errors.test.js.map +1 -0
- package/dist/test/googleapi/transport.test.d.ts +2 -0
- package/dist/test/googleapi/transport.test.d.ts.map +1 -0
- package/dist/test/googleapi/transport.test.js +25 -0
- package/dist/test/googleapi/transport.test.js.map +1 -0
- package/dist/test/googleauth/oauth-flow.test.d.ts +2 -0
- package/dist/test/googleauth/oauth-flow.test.d.ts.map +1 -0
- package/dist/test/googleauth/oauth-flow.test.js +85 -0
- package/dist/test/googleauth/oauth-flow.test.js.map +1 -0
- package/dist/test/googleauth/service.test.d.ts +2 -0
- package/dist/test/googleauth/service.test.d.ts.map +1 -0
- package/dist/test/googleauth/service.test.js +51 -0
- package/dist/test/googleauth/service.test.js.map +1 -0
- package/dist/test/outfmt/outfmt.test.d.ts +2 -0
- package/dist/test/outfmt/outfmt.test.d.ts.map +1 -0
- package/dist/test/outfmt/outfmt.test.js +41 -0
- package/dist/test/outfmt/outfmt.test.js.map +1 -0
- package/dist/test/secrets/store.test.d.ts +2 -0
- package/dist/test/secrets/store.test.d.ts.map +1 -0
- package/dist/test/secrets/store.test.js +164 -0
- package/dist/test/secrets/store.test.js.map +1 -0
- package/dist/vitest.config.d.ts +3 -0
- package/dist/vitest.config.d.ts.map +1 -0
- package/dist/vitest.config.js +11 -0
- package/dist/vitest.config.js.map +1 -0
- package/logo.svg +16 -0
- package/package.json +69 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type ConfigFile } from "../../config/config.js";
|
|
2
|
+
import { type AuthorizeOptions, type AuthorizeWithLocalServerOptions, type AuthorizeWithLocalServerResult, type ManualAuthURLResult } from "../../googleauth/oauth-flow.js";
|
|
3
|
+
import { KeyringStore } from "../../secrets/store.js";
|
|
4
|
+
import type { AuthCommandDeps } from "./commands.js";
|
|
5
|
+
type BuildAuthCommandDepsOptions = {
|
|
6
|
+
store?: KeyringStore;
|
|
7
|
+
readConfig?: () => Promise<ConfigFile>;
|
|
8
|
+
configPath?: () => string;
|
|
9
|
+
env?: NodeJS.ProcessEnv;
|
|
10
|
+
authorize?: (opts: AuthorizeOptions) => Promise<string>;
|
|
11
|
+
manualAuthURL?: (opts: AuthorizeOptions) => Promise<ManualAuthURLResult>;
|
|
12
|
+
authorizeWithLocalServer?: (opts: AuthorizeWithLocalServerOptions) => Promise<AuthorizeWithLocalServerResult>;
|
|
13
|
+
readFile?: (path: string) => Promise<string>;
|
|
14
|
+
writeFile?: (path: string, content: string) => Promise<void>;
|
|
15
|
+
serviceAccountPath?: (email: string) => string;
|
|
16
|
+
};
|
|
17
|
+
export type AuthRuntimeDeps = Pick<Required<AuthCommandDeps>, "addToken" | "listTokens" | "status" | "removeToken" | "addServiceAccount" | "setDefaultServiceAccount">;
|
|
18
|
+
export declare function buildAuthCommandDeps(options?: BuildAuthCommandDepsOptions): AuthRuntimeDeps;
|
|
19
|
+
export {};
|
|
20
|
+
//# sourceMappingURL=runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../src/cmd/auth/runtime.ts"],"names":[],"mappings":"AAGA,OAAO,EAAmC,KAAK,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAG1F,OAAO,EAIL,KAAK,gBAAgB,EACrB,KAAK,+BAA+B,EACpC,KAAK,8BAA8B,EACnC,KAAK,mBAAmB,EACzB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EAAE,YAAY,EAAwB,MAAM,wBAAwB,CAAC;AAC5E,OAAO,KAAK,EAKV,eAAe,EAGhB,MAAM,eAAe,CAAC;AAEvB,KAAK,2BAA2B,GAAG;IACjC,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;IACvC,UAAU,CAAC,EAAE,MAAM,MAAM,CAAC;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACxD,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACzE,wBAAwB,CAAC,EAAE,CAAC,IAAI,EAAE,+BAA+B,KAAK,OAAO,CAAC,8BAA8B,CAAC,CAAC;IAC9G,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7C,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CAChD,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,IAAI,CAChC,QAAQ,CAAC,eAAe,CAAC,EACzB,UAAU,GAAG,YAAY,GAAG,QAAQ,GAAG,aAAa,GAAG,mBAAmB,GAAG,0BAA0B,CACxG,CAAC;AAwCF,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,2BAAgC,GAAG,eAAe,CAiO/F"}
|
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
import { readFile as fsReadFile, writeFile as fsWriteFile, mkdir } from "node:fs/promises";
|
|
2
|
+
import { dirname } from "node:path";
|
|
3
|
+
import { readConfig as defaultReadConfig } from "../../config/config.js";
|
|
4
|
+
import { configPath as defaultConfigPath, serviceAccountPath as defaultServiceAccountPath, credentialsEncPath } from "../../config/paths.js";
|
|
5
|
+
import { resolveClientWithOverride } from "../../authclient/authclient.js";
|
|
6
|
+
import { authorize as defaultAuthorize, authorizeWithLocalServer as defaultAuthorizeWithLocalServer, manualAuthURL as defaultManualAuthURL, } from "../../googleauth/oauth-flow.js";
|
|
7
|
+
import { scopesForManage, userServices } from "../../googleauth/service.js";
|
|
8
|
+
import { KeyringStore, EncryptedFileBackend } from "../../secrets/store.js";
|
|
9
|
+
function resolveKeyringBackend(cfg, env) {
|
|
10
|
+
if (cfg.keyringBackend !== undefined && cfg.keyringBackend.trim() !== "") {
|
|
11
|
+
return cfg.keyringBackend;
|
|
12
|
+
}
|
|
13
|
+
const fromEnv = env.GOG_KEYRING_BACKEND?.trim();
|
|
14
|
+
if (fromEnv) {
|
|
15
|
+
return fromEnv;
|
|
16
|
+
}
|
|
17
|
+
return "auto";
|
|
18
|
+
}
|
|
19
|
+
function normalizeEmail(email) {
|
|
20
|
+
return email.trim().toLowerCase();
|
|
21
|
+
}
|
|
22
|
+
function requireEmail(email) {
|
|
23
|
+
const normalized = normalizeEmail(email);
|
|
24
|
+
if (normalized === "") {
|
|
25
|
+
throw new Error("missing email");
|
|
26
|
+
}
|
|
27
|
+
return normalized;
|
|
28
|
+
}
|
|
29
|
+
function toTokenSummary(token) {
|
|
30
|
+
const summary = {
|
|
31
|
+
client: token.client ?? "default",
|
|
32
|
+
email: token.email,
|
|
33
|
+
};
|
|
34
|
+
if (token.createdAt !== undefined) {
|
|
35
|
+
summary.createdAt = token.createdAt.toISOString();
|
|
36
|
+
}
|
|
37
|
+
return summary;
|
|
38
|
+
}
|
|
39
|
+
export function buildAuthCommandDeps(options = {}) {
|
|
40
|
+
const store = options.store ?? new KeyringStore(new EncryptedFileBackend(credentialsEncPath()));
|
|
41
|
+
const readConfig = options.readConfig ?? defaultReadConfig;
|
|
42
|
+
const configPath = options.configPath ?? defaultConfigPath;
|
|
43
|
+
const env = options.env ?? process.env;
|
|
44
|
+
const authorize = options.authorize ?? defaultAuthorize;
|
|
45
|
+
const manualAuthURL = options.manualAuthURL ?? defaultManualAuthURL;
|
|
46
|
+
const authorizeWithLocalServer = options.authorizeWithLocalServer ?? defaultAuthorizeWithLocalServer;
|
|
47
|
+
const readFileFn = options.readFile ?? ((path) => fsReadFile(path, "utf-8"));
|
|
48
|
+
const writeFileFn = options.writeFile ??
|
|
49
|
+
(async (path, content) => {
|
|
50
|
+
await mkdir(dirname(path), { recursive: true });
|
|
51
|
+
await fsWriteFile(path, content, "utf-8");
|
|
52
|
+
});
|
|
53
|
+
const saPathFn = options.serviceAccountPath ?? defaultServiceAccountPath;
|
|
54
|
+
return {
|
|
55
|
+
addToken: async (email, input) => {
|
|
56
|
+
const normalizedEmail = requireEmail(email);
|
|
57
|
+
const requestedStep = input?.step ?? 0;
|
|
58
|
+
if (requestedStep !== 0 && requestedStep !== 1 && requestedStep !== 2) {
|
|
59
|
+
throw new Error("step must be 1 or 2");
|
|
60
|
+
}
|
|
61
|
+
const remote = input?.remote ?? false;
|
|
62
|
+
if (requestedStep !== 0 && !remote) {
|
|
63
|
+
throw new Error("--step requires --remote");
|
|
64
|
+
}
|
|
65
|
+
const authUrl = input?.authUrl?.trim() ?? "";
|
|
66
|
+
const authCode = input?.authCode?.trim() ?? "";
|
|
67
|
+
const manual = (input?.manual ?? false) || remote || authUrl !== "" || authCode !== "";
|
|
68
|
+
if (remote) {
|
|
69
|
+
let effectiveStep = requestedStep;
|
|
70
|
+
if (effectiveStep === 0) {
|
|
71
|
+
if (authUrl !== "" || authCode !== "") {
|
|
72
|
+
effectiveStep = 2;
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
// No --step specified and no --auth-url/--auth-code: use local server
|
|
76
|
+
// to auto-capture the OAuth callback instead of the two-step flow.
|
|
77
|
+
const cfg = await readConfig();
|
|
78
|
+
const clientOverride = input?.client ?? "";
|
|
79
|
+
const client = await resolveClientWithOverride(normalizedEmail, clientOverride, async () => cfg);
|
|
80
|
+
const services = userServices();
|
|
81
|
+
const scopes = scopesForManage(services);
|
|
82
|
+
const serverOpts = {
|
|
83
|
+
scopes,
|
|
84
|
+
client,
|
|
85
|
+
onAuthUrl: (url) => {
|
|
86
|
+
process.stderr.write(`Open this URL in your browser:\n${url}\n\nWaiting for authorization...\n`);
|
|
87
|
+
},
|
|
88
|
+
};
|
|
89
|
+
if (input?.forceConsent ?? false) {
|
|
90
|
+
serverOpts.forceConsent = true;
|
|
91
|
+
}
|
|
92
|
+
const result = await authorizeWithLocalServer(serverOpts);
|
|
93
|
+
const serviceNames = services.map((service) => String(service)).sort();
|
|
94
|
+
await store.setToken(client, normalizedEmail, {
|
|
95
|
+
client,
|
|
96
|
+
email: normalizedEmail,
|
|
97
|
+
services: serviceNames,
|
|
98
|
+
scopes,
|
|
99
|
+
refreshToken: result.refreshToken,
|
|
100
|
+
});
|
|
101
|
+
await store.setDefaultAccount(client, normalizedEmail);
|
|
102
|
+
return {
|
|
103
|
+
email: normalizedEmail,
|
|
104
|
+
message: `Stored token for ${normalizedEmail}`,
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
if (effectiveStep === 1) {
|
|
109
|
+
if (authUrl !== "" || authCode !== "") {
|
|
110
|
+
throw new Error("remote step 1 does not accept --auth-url or --auth-code");
|
|
111
|
+
}
|
|
112
|
+
const cfg = await readConfig();
|
|
113
|
+
const clientOverride = input?.client ?? "";
|
|
114
|
+
const client = await resolveClientWithOverride(normalizedEmail, clientOverride, async () => cfg);
|
|
115
|
+
const services = userServices();
|
|
116
|
+
const scopes = scopesForManage(services);
|
|
117
|
+
const manualAuthOptions = {
|
|
118
|
+
services,
|
|
119
|
+
scopes,
|
|
120
|
+
manual: true,
|
|
121
|
+
client,
|
|
122
|
+
};
|
|
123
|
+
if (input?.forceConsent ?? false) {
|
|
124
|
+
manualAuthOptions.forceConsent = true;
|
|
125
|
+
}
|
|
126
|
+
const result = await manualAuthURL(manualAuthOptions);
|
|
127
|
+
return {
|
|
128
|
+
email: normalizedEmail,
|
|
129
|
+
message: "Run again with --remote --step 2 --auth-url <redirect-url>",
|
|
130
|
+
authUrl: result.url,
|
|
131
|
+
stateReused: result.stateReused,
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
if (authCode !== "") {
|
|
135
|
+
throw new Error("--auth-code is not valid with --remote (state check is mandatory)");
|
|
136
|
+
}
|
|
137
|
+
if (authUrl === "") {
|
|
138
|
+
throw new Error("remote step 2 requires --auth-url");
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
const cfg = await readConfig();
|
|
142
|
+
const clientOverride = input?.client ?? "";
|
|
143
|
+
const client = await resolveClientWithOverride(normalizedEmail, clientOverride, async () => cfg);
|
|
144
|
+
const services = userServices();
|
|
145
|
+
const scopes = scopesForManage(services);
|
|
146
|
+
const authorizeOptions = {
|
|
147
|
+
services,
|
|
148
|
+
scopes,
|
|
149
|
+
client,
|
|
150
|
+
};
|
|
151
|
+
if (authUrl !== "") {
|
|
152
|
+
authorizeOptions.authUrl = authUrl;
|
|
153
|
+
}
|
|
154
|
+
if (authCode !== "") {
|
|
155
|
+
authorizeOptions.authCode = authCode;
|
|
156
|
+
}
|
|
157
|
+
if (input?.forceConsent ?? false) {
|
|
158
|
+
authorizeOptions.forceConsent = true;
|
|
159
|
+
}
|
|
160
|
+
if (manual) {
|
|
161
|
+
authorizeOptions.manual = true;
|
|
162
|
+
}
|
|
163
|
+
if (remote) {
|
|
164
|
+
authorizeOptions.requireState = true;
|
|
165
|
+
}
|
|
166
|
+
const refreshToken = await authorize(authorizeOptions);
|
|
167
|
+
const serviceNames = services.map((service) => String(service)).sort();
|
|
168
|
+
await store.setToken(client, normalizedEmail, {
|
|
169
|
+
client,
|
|
170
|
+
email: normalizedEmail,
|
|
171
|
+
services: serviceNames,
|
|
172
|
+
scopes,
|
|
173
|
+
refreshToken,
|
|
174
|
+
});
|
|
175
|
+
// Make this account the default so commands work without --account.
|
|
176
|
+
await store.setDefaultAccount(client, normalizedEmail);
|
|
177
|
+
return {
|
|
178
|
+
email: normalizedEmail,
|
|
179
|
+
message: `Stored token for ${normalizedEmail}`,
|
|
180
|
+
};
|
|
181
|
+
},
|
|
182
|
+
listTokens: async () => {
|
|
183
|
+
const tokens = await store.listTokens();
|
|
184
|
+
return tokens.map(toTokenSummary).sort((a, b) => `${a.client}\n${a.email}`.localeCompare(`${b.client}\n${b.email}`));
|
|
185
|
+
},
|
|
186
|
+
status: async () => {
|
|
187
|
+
const [tokens, cfg] = await Promise.all([store.listTokens(), readConfig()]);
|
|
188
|
+
return {
|
|
189
|
+
tokenCount: tokens.length,
|
|
190
|
+
configPath: configPath(),
|
|
191
|
+
keyringBackend: resolveKeyringBackend(cfg, env),
|
|
192
|
+
};
|
|
193
|
+
},
|
|
194
|
+
removeToken: async (email) => {
|
|
195
|
+
const target = requireEmail(email);
|
|
196
|
+
const tokens = await store.listTokens();
|
|
197
|
+
let removed = false;
|
|
198
|
+
for (const token of tokens) {
|
|
199
|
+
if (normalizeEmail(token.email) !== target) {
|
|
200
|
+
continue;
|
|
201
|
+
}
|
|
202
|
+
await store.deleteToken(token.client ?? "default", token.email);
|
|
203
|
+
removed = true;
|
|
204
|
+
}
|
|
205
|
+
return { email: target, removed };
|
|
206
|
+
},
|
|
207
|
+
addServiceAccount: async (input) => {
|
|
208
|
+
const keyContent = await readFileFn(input.keyFile);
|
|
209
|
+
const parsed = JSON.parse(keyContent);
|
|
210
|
+
if (parsed.type !== "service_account") {
|
|
211
|
+
throw new Error("key file is not a service account key (expected type: service_account)");
|
|
212
|
+
}
|
|
213
|
+
const saEmail = parsed.client_email?.trim() ?? "";
|
|
214
|
+
if (saEmail === "") {
|
|
215
|
+
throw new Error("key file missing client_email field");
|
|
216
|
+
}
|
|
217
|
+
await store.setServiceAccountKey(saEmail, keyContent);
|
|
218
|
+
await store.setDefaultServiceAccount(saEmail);
|
|
219
|
+
return {
|
|
220
|
+
email: saEmail,
|
|
221
|
+
message: `Imported service account: ${saEmail}`,
|
|
222
|
+
};
|
|
223
|
+
},
|
|
224
|
+
setDefaultServiceAccount: async (email) => {
|
|
225
|
+
const normalized = email.trim().toLowerCase();
|
|
226
|
+
if (normalized === "") {
|
|
227
|
+
throw new Error("missing email");
|
|
228
|
+
}
|
|
229
|
+
await store.setDefaultServiceAccount(normalized);
|
|
230
|
+
return {
|
|
231
|
+
email: normalized,
|
|
232
|
+
message: `Default service account set to ${normalized}`,
|
|
233
|
+
};
|
|
234
|
+
},
|
|
235
|
+
};
|
|
236
|
+
}
|
|
237
|
+
//# sourceMappingURL=runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../../src/cmd/auth/runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import type { Command } from "commander";
|
|
2
|
+
import type { OutputMode } from "../../outfmt/outfmt.js";
|
|
3
|
+
import { type CalendarResponse } from "../../googleapi/calendar.js";
|
|
4
|
+
export type CalendarEventSummary = {
|
|
5
|
+
id: string;
|
|
6
|
+
summary: string;
|
|
7
|
+
start: string;
|
|
8
|
+
};
|
|
9
|
+
export type CalendarCreateResult = {
|
|
10
|
+
id: string;
|
|
11
|
+
created: boolean;
|
|
12
|
+
};
|
|
13
|
+
export type CalendarUpdateInput = {
|
|
14
|
+
id: string;
|
|
15
|
+
summary?: string;
|
|
16
|
+
start?: string;
|
|
17
|
+
end?: string;
|
|
18
|
+
};
|
|
19
|
+
export type CalendarUpdateResult = {
|
|
20
|
+
id: string;
|
|
21
|
+
updated: boolean;
|
|
22
|
+
};
|
|
23
|
+
export type CalendarRespondInput = {
|
|
24
|
+
id: string;
|
|
25
|
+
response: CalendarResponse;
|
|
26
|
+
};
|
|
27
|
+
export type CalendarRespondResult = {
|
|
28
|
+
id: string;
|
|
29
|
+
response: CalendarResponse;
|
|
30
|
+
applied: boolean;
|
|
31
|
+
};
|
|
32
|
+
export type CalendarConflict = {
|
|
33
|
+
firstId: string;
|
|
34
|
+
secondId: string;
|
|
35
|
+
overlapStart: string;
|
|
36
|
+
overlapEnd: string;
|
|
37
|
+
};
|
|
38
|
+
export type CalendarCommandDeps = {
|
|
39
|
+
listEvents?: (query: {
|
|
40
|
+
from?: string;
|
|
41
|
+
to?: string;
|
|
42
|
+
}) => Promise<CalendarEventSummary[]>;
|
|
43
|
+
createEvent?: (input: {
|
|
44
|
+
summary: string;
|
|
45
|
+
start: string;
|
|
46
|
+
end: string;
|
|
47
|
+
}) => Promise<CalendarCreateResult>;
|
|
48
|
+
updateEvent?: (input: CalendarUpdateInput) => Promise<CalendarUpdateResult>;
|
|
49
|
+
respondEvent?: (input: CalendarRespondInput) => Promise<CalendarRespondResult>;
|
|
50
|
+
listConflicts?: (query: {
|
|
51
|
+
from?: string;
|
|
52
|
+
to?: string;
|
|
53
|
+
}) => Promise<CalendarConflict[]>;
|
|
54
|
+
};
|
|
55
|
+
export declare function formatCalendarConflicts(conflicts: CalendarConflict[], mode: OutputMode): string;
|
|
56
|
+
export declare function formatCalendarEvents(events: CalendarEventSummary[], mode: OutputMode): string;
|
|
57
|
+
export declare function registerCalendarCommands(calendarCommand: Command, deps?: CalendarCommandDeps): void;
|
|
58
|
+
//# sourceMappingURL=commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../../src/cmd/calendar/commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAA6B,KAAK,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAI/F,MAAM,MAAM,oBAAoB,GAAG;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,gBAAgB,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;IACxF,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACxG,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC5E,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,KAAK,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC/E,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;CACxF,CAAC;AAUF,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,gBAAgB,EAAE,EAAE,IAAI,EAAE,UAAU,GAAG,MAAM,CAc/F;AAUD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,oBAAoB,EAAE,EAAE,IAAI,EAAE,UAAU,GAAG,MAAM,CAc7F;AAED,wBAAgB,wBAAwB,CAAC,eAAe,EAAE,OAAO,EAAE,IAAI,GAAE,mBAAwB,GAAG,IAAI,CAsIvG"}
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import { normalizeCalendarResponse } from "../../googleapi/calendar.js";
|
|
2
|
+
import { toCliApiErrorMessage } from "../../googleapi/errors.js";
|
|
3
|
+
import { buildExecutionContext } from "../execution-context.js";
|
|
4
|
+
const defaultDeps = {
|
|
5
|
+
listEvents: async () => [],
|
|
6
|
+
createEvent: async () => ({ id: "", created: false }),
|
|
7
|
+
updateEvent: async (input) => ({ id: input.id, updated: false }),
|
|
8
|
+
respondEvent: async (input) => ({ id: input.id, response: input.response, applied: false }),
|
|
9
|
+
listConflicts: async () => [],
|
|
10
|
+
};
|
|
11
|
+
export function formatCalendarConflicts(conflicts, mode) {
|
|
12
|
+
if (mode === "json") {
|
|
13
|
+
return JSON.stringify({ conflicts }, null, 2);
|
|
14
|
+
}
|
|
15
|
+
if (conflicts.length === 0) {
|
|
16
|
+
return "No conflicts found";
|
|
17
|
+
}
|
|
18
|
+
const lines = ["FIRST\tSECOND\tOVERLAP_START\tOVERLAP_END"];
|
|
19
|
+
for (const conflict of conflicts) {
|
|
20
|
+
lines.push(`${conflict.firstId}\t${conflict.secondId}\t${conflict.overlapStart}\t${conflict.overlapEnd}`);
|
|
21
|
+
}
|
|
22
|
+
return lines.join("\n");
|
|
23
|
+
}
|
|
24
|
+
async function runWithStableApiError(service, call) {
|
|
25
|
+
try {
|
|
26
|
+
return await call();
|
|
27
|
+
}
|
|
28
|
+
catch (error) {
|
|
29
|
+
throw new Error(toCliApiErrorMessage(service, error), { cause: error });
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
export function formatCalendarEvents(events, mode) {
|
|
33
|
+
if (mode === "json") {
|
|
34
|
+
return JSON.stringify({ events }, null, 2);
|
|
35
|
+
}
|
|
36
|
+
if (events.length === 0) {
|
|
37
|
+
return "No events found";
|
|
38
|
+
}
|
|
39
|
+
const lines = ["ID\tSTART\tSUMMARY"];
|
|
40
|
+
for (const event of events) {
|
|
41
|
+
lines.push(`${event.id}\t${event.start}\t${event.summary}`);
|
|
42
|
+
}
|
|
43
|
+
return lines.join("\n");
|
|
44
|
+
}
|
|
45
|
+
export function registerCalendarCommands(calendarCommand, deps = {}) {
|
|
46
|
+
const resolvedDeps = {
|
|
47
|
+
...defaultDeps,
|
|
48
|
+
...deps,
|
|
49
|
+
};
|
|
50
|
+
calendarCommand
|
|
51
|
+
.command("events")
|
|
52
|
+
.aliases(["ls", "list"])
|
|
53
|
+
.description("List calendar events")
|
|
54
|
+
.option("--from <datetime>", "Start of search window")
|
|
55
|
+
.option("--to <datetime>", "End of search window")
|
|
56
|
+
.action(async function actionEvents() {
|
|
57
|
+
const rootOptions = this.optsWithGlobals();
|
|
58
|
+
const ctx = buildExecutionContext(rootOptions);
|
|
59
|
+
const opts = this.opts();
|
|
60
|
+
const query = {};
|
|
61
|
+
if (opts.from !== undefined) {
|
|
62
|
+
query.from = opts.from;
|
|
63
|
+
}
|
|
64
|
+
if (opts.to !== undefined) {
|
|
65
|
+
query.to = opts.to;
|
|
66
|
+
}
|
|
67
|
+
const events = await runWithStableApiError("calendar", () => resolvedDeps.listEvents(query));
|
|
68
|
+
process.stdout.write(`${formatCalendarEvents(events, ctx.output.mode)}\n`);
|
|
69
|
+
});
|
|
70
|
+
calendarCommand
|
|
71
|
+
.command("create")
|
|
72
|
+
.description("Create calendar event")
|
|
73
|
+
.requiredOption("--summary <summary>", "Event summary")
|
|
74
|
+
.requiredOption("--start <datetime>", "Start datetime")
|
|
75
|
+
.requiredOption("--end <datetime>", "End datetime")
|
|
76
|
+
.action(async function actionCreate() {
|
|
77
|
+
const rootOptions = this.optsWithGlobals();
|
|
78
|
+
const ctx = buildExecutionContext(rootOptions);
|
|
79
|
+
const opts = this.opts();
|
|
80
|
+
const result = await runWithStableApiError("calendar", () => resolvedDeps.createEvent({
|
|
81
|
+
summary: opts.summary,
|
|
82
|
+
start: opts.start,
|
|
83
|
+
end: opts.end,
|
|
84
|
+
}));
|
|
85
|
+
if (ctx.output.mode === "json") {
|
|
86
|
+
process.stdout.write(`${JSON.stringify(result, null, 2)}\n`);
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
process.stdout.write(result.created ? `Event created (id=${result.id || "unknown"})\n` : "Event was not created\n");
|
|
90
|
+
});
|
|
91
|
+
calendarCommand
|
|
92
|
+
.command("update")
|
|
93
|
+
.description("Update a calendar event")
|
|
94
|
+
.requiredOption("--id <id>", "Event id")
|
|
95
|
+
.option("--summary <summary>", "Event summary")
|
|
96
|
+
.option("--start <datetime>", "Start datetime")
|
|
97
|
+
.option("--end <datetime>", "End datetime")
|
|
98
|
+
.action(async function actionUpdate() {
|
|
99
|
+
const rootOptions = this.optsWithGlobals();
|
|
100
|
+
const ctx = buildExecutionContext(rootOptions);
|
|
101
|
+
const opts = this.opts();
|
|
102
|
+
const input = {
|
|
103
|
+
id: opts.id,
|
|
104
|
+
};
|
|
105
|
+
if (opts.summary !== undefined) {
|
|
106
|
+
input.summary = opts.summary;
|
|
107
|
+
}
|
|
108
|
+
if (opts.start !== undefined) {
|
|
109
|
+
input.start = opts.start;
|
|
110
|
+
}
|
|
111
|
+
if (opts.end !== undefined) {
|
|
112
|
+
input.end = opts.end;
|
|
113
|
+
}
|
|
114
|
+
const result = await runWithStableApiError("calendar", () => resolvedDeps.updateEvent(input));
|
|
115
|
+
if (ctx.output.mode === "json") {
|
|
116
|
+
process.stdout.write(`${JSON.stringify(result, null, 2)}\n`);
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
process.stdout.write(result.updated ? `Event updated (id=${result.id || "unknown"})\n` : "Event was not updated\n");
|
|
120
|
+
});
|
|
121
|
+
calendarCommand
|
|
122
|
+
.command("respond")
|
|
123
|
+
.description("Respond to a calendar event")
|
|
124
|
+
.requiredOption("--id <id>", "Event id")
|
|
125
|
+
.requiredOption("--response <response>", "accepted|declined|tentative|needsAction")
|
|
126
|
+
.action(async function actionRespond() {
|
|
127
|
+
const rootOptions = this.optsWithGlobals();
|
|
128
|
+
const ctx = buildExecutionContext(rootOptions);
|
|
129
|
+
const opts = this.opts();
|
|
130
|
+
const response = normalizeCalendarResponse(opts.response);
|
|
131
|
+
const result = await runWithStableApiError("calendar", () => resolvedDeps.respondEvent({
|
|
132
|
+
id: opts.id,
|
|
133
|
+
response,
|
|
134
|
+
}));
|
|
135
|
+
if (ctx.output.mode === "json") {
|
|
136
|
+
process.stdout.write(`${JSON.stringify(result, null, 2)}\n`);
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
process.stdout.write(result.applied ? `Response recorded (${result.response})\n` : "Response was not applied\n");
|
|
140
|
+
});
|
|
141
|
+
calendarCommand
|
|
142
|
+
.command("conflicts")
|
|
143
|
+
.description("List overlapping events")
|
|
144
|
+
.option("--from <datetime>", "Start of search window")
|
|
145
|
+
.option("--to <datetime>", "End of search window")
|
|
146
|
+
.action(async function actionConflicts() {
|
|
147
|
+
const rootOptions = this.optsWithGlobals();
|
|
148
|
+
const ctx = buildExecutionContext(rootOptions);
|
|
149
|
+
const opts = this.opts();
|
|
150
|
+
const query = {};
|
|
151
|
+
if (opts.from !== undefined) {
|
|
152
|
+
query.from = opts.from;
|
|
153
|
+
}
|
|
154
|
+
if (opts.to !== undefined) {
|
|
155
|
+
query.to = opts.to;
|
|
156
|
+
}
|
|
157
|
+
const conflicts = await runWithStableApiError("calendar", () => resolvedDeps.listConflicts(query));
|
|
158
|
+
process.stdout.write(`${formatCalendarConflicts(conflicts, ctx.output.mode)}\n`);
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
//# sourceMappingURL=commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../../src/cmd/calendar/commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { type ServiceRuntimeOptions } from "../../googleapi/auth-factory.js";
|
|
2
|
+
import type { CalendarCommandDeps } from "./commands.js";
|
|
3
|
+
export declare function buildCalendarCommandDeps(options: ServiceRuntimeOptions): Required<CalendarCommandDeps>;
|
|
4
|
+
//# sourceMappingURL=runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../src/cmd/calendar/runtime.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkB,KAAK,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAG7F,OAAO,KAAK,EACV,mBAAmB,EAGpB,MAAM,eAAe,CAAC;AAevB,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,qBAAqB,GAAG,QAAQ,CAAC,mBAAmB,CAAC,CA8LtG"}
|