@synteq/cli 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/run.js +10 -0
- package/dist/api/client.d.ts +167 -0
- package/dist/api/client.js +367 -0
- package/dist/api/client.js.map +1 -0
- package/dist/api/errors.d.ts +16 -0
- package/dist/api/errors.js +76 -0
- package/dist/api/errors.js.map +1 -0
- package/dist/api/factory.d.ts +12 -0
- package/dist/api/factory.js +18 -0
- package/dist/api/factory.js.map +1 -0
- package/dist/api/types.d.ts +738 -0
- package/dist/api/types.js +2 -0
- package/dist/api/types.js.map +1 -0
- package/dist/auth/device-flow.d.ts +8 -0
- package/dist/auth/device-flow.js +36 -0
- package/dist/auth/device-flow.js.map +1 -0
- package/dist/auth/keychain.d.ts +3 -0
- package/dist/auth/keychain.js +34 -0
- package/dist/auth/keychain.js.map +1 -0
- package/dist/auth/logout.d.ts +4 -0
- package/dist/auth/logout.js +17 -0
- package/dist/auth/logout.js.map +1 -0
- package/dist/auth/tokens.d.ts +19 -0
- package/dist/auth/tokens.js +56 -0
- package/dist/auth/tokens.js.map +1 -0
- package/dist/base/command.d.ts +17 -0
- package/dist/base/command.js +89 -0
- package/dist/base/command.js.map +1 -0
- package/dist/commands/account/index.d.ts +5 -0
- package/dist/commands/account/index.js +9 -0
- package/dist/commands/account/index.js.map +1 -0
- package/dist/commands/account/show.d.ts +9 -0
- package/dist/commands/account/show.js +75 -0
- package/dist/commands/account/show.js.map +1 -0
- package/dist/commands/api.d.ts +17 -0
- package/dist/commands/api.js +144 -0
- package/dist/commands/api.js.map +1 -0
- package/dist/commands/bare-metal/index.d.ts +4 -0
- package/dist/commands/bare-metal/index.js +5 -0
- package/dist/commands/bare-metal/index.js.map +1 -0
- package/dist/commands/bare-metal/list.d.ts +9 -0
- package/dist/commands/bare-metal/list.js +38 -0
- package/dist/commands/bare-metal/list.js.map +1 -0
- package/dist/commands/bare-metal/order.d.ts +6 -0
- package/dist/commands/bare-metal/order.js +27 -0
- package/dist/commands/bare-metal/order.js.map +1 -0
- package/dist/commands/catalog.d.ts +11 -0
- package/dist/commands/catalog.js +115 -0
- package/dist/commands/catalog.js.map +1 -0
- package/dist/commands/config/index.d.ts +5 -0
- package/dist/commands/config/index.js +9 -0
- package/dist/commands/config/index.js.map +1 -0
- package/dist/commands/config/set-api-url.d.ts +10 -0
- package/dist/commands/config/set-api-url.js +43 -0
- package/dist/commands/config/set-api-url.js.map +1 -0
- package/dist/commands/config/show.d.ts +9 -0
- package/dist/commands/config/show.js +75 -0
- package/dist/commands/config/show.js.map +1 -0
- package/dist/commands/credits/add.d.ts +14 -0
- package/dist/commands/credits/add.js +117 -0
- package/dist/commands/credits/add.js.map +1 -0
- package/dist/commands/credits/index.d.ts +5 -0
- package/dist/commands/credits/index.js +9 -0
- package/dist/commands/credits/index.js.map +1 -0
- package/dist/commands/credits/list.d.ts +6 -0
- package/dist/commands/credits/list.js +43 -0
- package/dist/commands/credits/list.js.map +1 -0
- package/dist/commands/gpu/activity.d.ts +15 -0
- package/dist/commands/gpu/activity.js +8 -0
- package/dist/commands/gpu/activity.js.map +1 -0
- package/dist/commands/gpu/bandwidth.d.ts +14 -0
- package/dist/commands/gpu/bandwidth.js +8 -0
- package/dist/commands/gpu/bandwidth.js.map +1 -0
- package/dist/commands/gpu/boot-order.d.ts +15 -0
- package/dist/commands/gpu/boot-order.js +8 -0
- package/dist/commands/gpu/boot-order.js.map +1 -0
- package/dist/commands/gpu/console.d.ts +14 -0
- package/dist/commands/gpu/console.js +8 -0
- package/dist/commands/gpu/console.js.map +1 -0
- package/dist/commands/gpu/details.d.ts +15 -0
- package/dist/commands/gpu/details.js +8 -0
- package/dist/commands/gpu/details.js.map +1 -0
- package/dist/commands/gpu/index.d.ts +4 -0
- package/dist/commands/gpu/index.js +5 -0
- package/dist/commands/gpu/index.js.map +1 -0
- package/dist/commands/gpu/ip/add.d.ts +18 -0
- package/dist/commands/gpu/ip/add.js +8 -0
- package/dist/commands/gpu/ip/add.js.map +1 -0
- package/dist/commands/gpu/ip/list.d.ts +14 -0
- package/dist/commands/gpu/ip/list.js +8 -0
- package/dist/commands/gpu/ip/list.js.map +1 -0
- package/dist/commands/gpu/list.d.ts +6 -0
- package/dist/commands/gpu/list.js +13 -0
- package/dist/commands/gpu/list.js.map +1 -0
- package/dist/commands/gpu/order.d.ts +6 -0
- package/dist/commands/gpu/order.js +13 -0
- package/dist/commands/gpu/order.js.map +1 -0
- package/dist/commands/gpu/power.d.ts +17 -0
- package/dist/commands/gpu/power.js +8 -0
- package/dist/commands/gpu/power.js.map +1 -0
- package/dist/commands/gpu/reinstall.d.ts +22 -0
- package/dist/commands/gpu/reinstall.js +8 -0
- package/dist/commands/gpu/reinstall.js.map +1 -0
- package/dist/commands/gpu/resize.d.ts +22 -0
- package/dist/commands/gpu/resize.js +8 -0
- package/dist/commands/gpu/resize.js.map +1 -0
- package/dist/commands/gpu/stats.d.ts +14 -0
- package/dist/commands/gpu/stats.js +8 -0
- package/dist/commands/gpu/stats.js.map +1 -0
- package/dist/commands/help.d.ts +9 -0
- package/dist/commands/help.js +19 -0
- package/dist/commands/help.js.map +1 -0
- package/dist/commands/instant-metal/activity.d.ts +15 -0
- package/dist/commands/instant-metal/activity.js +8 -0
- package/dist/commands/instant-metal/activity.js.map +1 -0
- package/dist/commands/instant-metal/bandwidth.d.ts +14 -0
- package/dist/commands/instant-metal/bandwidth.js +8 -0
- package/dist/commands/instant-metal/bandwidth.js.map +1 -0
- package/dist/commands/instant-metal/boot-order.d.ts +15 -0
- package/dist/commands/instant-metal/boot-order.js +8 -0
- package/dist/commands/instant-metal/boot-order.js.map +1 -0
- package/dist/commands/instant-metal/console.d.ts +14 -0
- package/dist/commands/instant-metal/console.js +8 -0
- package/dist/commands/instant-metal/console.js.map +1 -0
- package/dist/commands/instant-metal/details.d.ts +15 -0
- package/dist/commands/instant-metal/details.js +8 -0
- package/dist/commands/instant-metal/details.js.map +1 -0
- package/dist/commands/instant-metal/index.d.ts +4 -0
- package/dist/commands/instant-metal/index.js +5 -0
- package/dist/commands/instant-metal/index.js.map +1 -0
- package/dist/commands/instant-metal/ip/add.d.ts +18 -0
- package/dist/commands/instant-metal/ip/add.js +8 -0
- package/dist/commands/instant-metal/ip/add.js.map +1 -0
- package/dist/commands/instant-metal/ip/list.d.ts +14 -0
- package/dist/commands/instant-metal/ip/list.js +8 -0
- package/dist/commands/instant-metal/ip/list.js.map +1 -0
- package/dist/commands/instant-metal/list.d.ts +6 -0
- package/dist/commands/instant-metal/list.js +13 -0
- package/dist/commands/instant-metal/list.js.map +1 -0
- package/dist/commands/instant-metal/order.d.ts +6 -0
- package/dist/commands/instant-metal/order.js +13 -0
- package/dist/commands/instant-metal/order.js.map +1 -0
- package/dist/commands/instant-metal/power.d.ts +17 -0
- package/dist/commands/instant-metal/power.js +8 -0
- package/dist/commands/instant-metal/power.js.map +1 -0
- package/dist/commands/instant-metal/reinstall.d.ts +22 -0
- package/dist/commands/instant-metal/reinstall.js +8 -0
- package/dist/commands/instant-metal/reinstall.js.map +1 -0
- package/dist/commands/instant-metal/resize.d.ts +22 -0
- package/dist/commands/instant-metal/resize.js +8 -0
- package/dist/commands/instant-metal/resize.js.map +1 -0
- package/dist/commands/instant-metal/stats.d.ts +14 -0
- package/dist/commands/instant-metal/stats.js +8 -0
- package/dist/commands/instant-metal/stats.js.map +1 -0
- package/dist/commands/login.d.ts +10 -0
- package/dist/commands/login.js +98 -0
- package/dist/commands/login.js.map +1 -0
- package/dist/commands/logout.d.ts +6 -0
- package/dist/commands/logout.js +20 -0
- package/dist/commands/logout.js.map +1 -0
- package/dist/commands/order/gpu.d.ts +6 -0
- package/dist/commands/order/gpu.js +13 -0
- package/dist/commands/order/gpu.js.map +1 -0
- package/dist/commands/order/instant-metal.d.ts +7 -0
- package/dist/commands/order/instant-metal.js +14 -0
- package/dist/commands/order/instant-metal.js.map +1 -0
- package/dist/commands/order/storage.d.ts +6 -0
- package/dist/commands/order/storage.js +11 -0
- package/dist/commands/order/storage.js.map +1 -0
- package/dist/commands/order/vps.d.ts +7 -0
- package/dist/commands/order/vps.js +14 -0
- package/dist/commands/order/vps.js.map +1 -0
- package/dist/commands/order.d.ts +6 -0
- package/dist/commands/order.js +46 -0
- package/dist/commands/order.js.map +1 -0
- package/dist/commands/payments/index.d.ts +5 -0
- package/dist/commands/payments/index.js +10 -0
- package/dist/commands/payments/index.js.map +1 -0
- package/dist/commands/payments/methods/add.d.ts +9 -0
- package/dist/commands/payments/methods/add.js +30 -0
- package/dist/commands/payments/methods/add.js.map +1 -0
- package/dist/commands/payments/methods/delete.d.ts +12 -0
- package/dist/commands/payments/methods/delete.js +58 -0
- package/dist/commands/payments/methods/delete.js.map +1 -0
- package/dist/commands/payments/methods/index.d.ts +5 -0
- package/dist/commands/payments/methods/index.js +9 -0
- package/dist/commands/payments/methods/index.js.map +1 -0
- package/dist/commands/payments/methods/list.d.ts +6 -0
- package/dist/commands/payments/methods/list.js +33 -0
- package/dist/commands/payments/methods/list.js.map +1 -0
- package/dist/commands/payments/methods/set-default.d.ts +9 -0
- package/dist/commands/payments/methods/set-default.js +31 -0
- package/dist/commands/payments/methods/set-default.js.map +1 -0
- package/dist/commands/projects/index.d.ts +5 -0
- package/dist/commands/projects/index.js +9 -0
- package/dist/commands/projects/index.js.map +1 -0
- package/dist/commands/projects/list.d.ts +6 -0
- package/dist/commands/projects/list.js +31 -0
- package/dist/commands/projects/list.js.map +1 -0
- package/dist/commands/resources.d.ts +11 -0
- package/dist/commands/resources.js +93 -0
- package/dist/commands/resources.js.map +1 -0
- package/dist/commands/settings/index.d.ts +6 -0
- package/dist/commands/settings/index.js +57 -0
- package/dist/commands/settings/index.js.map +1 -0
- package/dist/commands/settings/render-mode.d.ts +10 -0
- package/dist/commands/settings/render-mode.js +76 -0
- package/dist/commands/settings/render-mode.js.map +1 -0
- package/dist/commands/ssh-key/add.d.ts +11 -0
- package/dist/commands/ssh-key/add.js +89 -0
- package/dist/commands/ssh-key/add.js.map +1 -0
- package/dist/commands/ssh-key/delete.d.ts +12 -0
- package/dist/commands/ssh-key/delete.js +43 -0
- package/dist/commands/ssh-key/delete.js.map +1 -0
- package/dist/commands/ssh-key/list.d.ts +7 -0
- package/dist/commands/ssh-key/list.js +47 -0
- package/dist/commands/ssh-key/list.js.map +1 -0
- package/dist/commands/storage/attach.d.ts +12 -0
- package/dist/commands/storage/attach.js +48 -0
- package/dist/commands/storage/attach.js.map +1 -0
- package/dist/commands/storage/detach.d.ts +12 -0
- package/dist/commands/storage/detach.js +60 -0
- package/dist/commands/storage/detach.js.map +1 -0
- package/dist/commands/storage/list.d.ts +9 -0
- package/dist/commands/storage/list.js +41 -0
- package/dist/commands/storage/list.js.map +1 -0
- package/dist/commands/storage/order.d.ts +16 -0
- package/dist/commands/storage/order.js +223 -0
- package/dist/commands/storage/order.js.map +1 -0
- package/dist/commands/storage/resize.d.ts +16 -0
- package/dist/commands/storage/resize.js +129 -0
- package/dist/commands/storage/resize.js.map +1 -0
- package/dist/commands/team/details.d.ts +9 -0
- package/dist/commands/team/details.js +48 -0
- package/dist/commands/team/details.js.map +1 -0
- package/dist/commands/team/invite.d.ts +14 -0
- package/dist/commands/team/invite.js +65 -0
- package/dist/commands/team/invite.js.map +1 -0
- package/dist/commands/team.d.ts +15 -0
- package/dist/commands/team.js +123 -0
- package/dist/commands/team.js.map +1 -0
- package/dist/commands/tickets/close.d.ts +13 -0
- package/dist/commands/tickets/close.js +39 -0
- package/dist/commands/tickets/close.js.map +1 -0
- package/dist/commands/tickets/create.d.ts +16 -0
- package/dist/commands/tickets/create.js +111 -0
- package/dist/commands/tickets/create.js.map +1 -0
- package/dist/commands/tickets/departments.d.ts +7 -0
- package/dist/commands/tickets/departments.js +27 -0
- package/dist/commands/tickets/departments.js.map +1 -0
- package/dist/commands/tickets/list.d.ts +10 -0
- package/dist/commands/tickets/list.js +66 -0
- package/dist/commands/tickets/list.js.map +1 -0
- package/dist/commands/tickets/open.d.ts +10 -0
- package/dist/commands/tickets/open.js +70 -0
- package/dist/commands/tickets/open.js.map +1 -0
- package/dist/commands/tickets/reply.d.ts +13 -0
- package/dist/commands/tickets/reply.js +48 -0
- package/dist/commands/tickets/reply.js.map +1 -0
- package/dist/commands/transit.d.ts +9 -0
- package/dist/commands/transit.js +47 -0
- package/dist/commands/transit.js.map +1 -0
- package/dist/commands/tui/index.d.ts +7 -0
- package/dist/commands/tui/index.js +87 -0
- package/dist/commands/tui/index.js.map +1 -0
- package/dist/commands/vds/activity.d.ts +15 -0
- package/dist/commands/vds/activity.js +8 -0
- package/dist/commands/vds/activity.js.map +1 -0
- package/dist/commands/vds/bandwidth.d.ts +14 -0
- package/dist/commands/vds/bandwidth.js +8 -0
- package/dist/commands/vds/bandwidth.js.map +1 -0
- package/dist/commands/vds/boot-order.d.ts +15 -0
- package/dist/commands/vds/boot-order.js +8 -0
- package/dist/commands/vds/boot-order.js.map +1 -0
- package/dist/commands/vds/console.d.ts +14 -0
- package/dist/commands/vds/console.js +8 -0
- package/dist/commands/vds/console.js.map +1 -0
- package/dist/commands/vds/details.d.ts +15 -0
- package/dist/commands/vds/details.js +8 -0
- package/dist/commands/vds/details.js.map +1 -0
- package/dist/commands/vds/index.d.ts +4 -0
- package/dist/commands/vds/index.js +5 -0
- package/dist/commands/vds/index.js.map +1 -0
- package/dist/commands/vds/ip/add.d.ts +18 -0
- package/dist/commands/vds/ip/add.js +8 -0
- package/dist/commands/vds/ip/add.js.map +1 -0
- package/dist/commands/vds/ip/list.d.ts +14 -0
- package/dist/commands/vds/ip/list.js +8 -0
- package/dist/commands/vds/ip/list.js.map +1 -0
- package/dist/commands/vds/list.d.ts +6 -0
- package/dist/commands/vds/list.js +13 -0
- package/dist/commands/vds/list.js.map +1 -0
- package/dist/commands/vds/order.d.ts +6 -0
- package/dist/commands/vds/order.js +13 -0
- package/dist/commands/vds/order.js.map +1 -0
- package/dist/commands/vds/power.d.ts +17 -0
- package/dist/commands/vds/power.js +8 -0
- package/dist/commands/vds/power.js.map +1 -0
- package/dist/commands/vds/reinstall.d.ts +22 -0
- package/dist/commands/vds/reinstall.js +8 -0
- package/dist/commands/vds/reinstall.js.map +1 -0
- package/dist/commands/vds/resize.d.ts +22 -0
- package/dist/commands/vds/resize.js +8 -0
- package/dist/commands/vds/resize.js.map +1 -0
- package/dist/commands/vds/stats.d.ts +14 -0
- package/dist/commands/vds/stats.js +8 -0
- package/dist/commands/vds/stats.js.map +1 -0
- package/dist/commands/vps/activity.d.ts +13 -0
- package/dist/commands/vps/activity.js +50 -0
- package/dist/commands/vps/activity.js.map +1 -0
- package/dist/commands/vps/bandwidth.d.ts +9 -0
- package/dist/commands/vps/bandwidth.js +91 -0
- package/dist/commands/vps/bandwidth.js.map +1 -0
- package/dist/commands/vps/boot-order.d.ts +10 -0
- package/dist/commands/vps/boot-order.js +51 -0
- package/dist/commands/vps/boot-order.js.map +1 -0
- package/dist/commands/vps/console.d.ts +15 -0
- package/dist/commands/vps/console.js +198 -0
- package/dist/commands/vps/console.js.map +1 -0
- package/dist/commands/vps/details.d.ts +15 -0
- package/dist/commands/vps/details.js +78 -0
- package/dist/commands/vps/details.js.map +1 -0
- package/dist/commands/vps/ip/add.d.ts +17 -0
- package/dist/commands/vps/ip/add.js +212 -0
- package/dist/commands/vps/ip/add.js.map +1 -0
- package/dist/commands/vps/ip/list.d.ts +9 -0
- package/dist/commands/vps/ip/list.js +102 -0
- package/dist/commands/vps/ip/list.js.map +1 -0
- package/dist/commands/vps/list.d.ts +12 -0
- package/dist/commands/vps/list.js +55 -0
- package/dist/commands/vps/list.js.map +1 -0
- package/dist/commands/vps/order.d.ts +30 -0
- package/dist/commands/vps/order.js +497 -0
- package/dist/commands/vps/order.js.map +1 -0
- package/dist/commands/vps/power.d.ts +15 -0
- package/dist/commands/vps/power.js +123 -0
- package/dist/commands/vps/power.js.map +1 -0
- package/dist/commands/vps/reinstall.d.ts +20 -0
- package/dist/commands/vps/reinstall.js +166 -0
- package/dist/commands/vps/reinstall.js.map +1 -0
- package/dist/commands/vps/resize.d.ts +22 -0
- package/dist/commands/vps/resize.js +205 -0
- package/dist/commands/vps/resize.js.map +1 -0
- package/dist/commands/vps/stats.d.ts +12 -0
- package/dist/commands/vps/stats.js +83 -0
- package/dist/commands/vps/stats.js.map +1 -0
- package/dist/commands/whoami.d.ts +9 -0
- package/dist/commands/whoami.js +70 -0
- package/dist/commands/whoami.js.map +1 -0
- package/dist/config/paths.d.ts +3 -0
- package/dist/config/paths.js +17 -0
- package/dist/config/paths.js.map +1 -0
- package/dist/config/store.d.ts +15 -0
- package/dist/config/store.js +38 -0
- package/dist/config/store.js.map +1 -0
- package/dist/help.d.ts +9 -0
- package/dist/help.js +119 -0
- package/dist/help.js.map +1 -0
- package/dist/tui/App.d.ts +9 -0
- package/dist/tui/App.js +93 -0
- package/dist/tui/App.js.map +1 -0
- package/dist/tui/components/ActionButton.d.ts +9 -0
- package/dist/tui/components/ActionButton.js +52 -0
- package/dist/tui/components/ActionButton.js.map +1 -0
- package/dist/tui/components/AppHeader.d.ts +6 -0
- package/dist/tui/components/AppHeader.js +18 -0
- package/dist/tui/components/AppHeader.js.map +1 -0
- package/dist/tui/components/BackButton.d.ts +6 -0
- package/dist/tui/components/BackButton.js +15 -0
- package/dist/tui/components/BackButton.js.map +1 -0
- package/dist/tui/components/CenteredFrame.d.ts +8 -0
- package/dist/tui/components/CenteredFrame.js +14 -0
- package/dist/tui/components/CenteredFrame.js.map +1 -0
- package/dist/tui/components/Clickable.d.ts +9 -0
- package/dist/tui/components/Clickable.js +48 -0
- package/dist/tui/components/Clickable.js.map +1 -0
- package/dist/tui/components/ConfirmModal.d.ts +8 -0
- package/dist/tui/components/ConfirmModal.js +22 -0
- package/dist/tui/components/ConfirmModal.js.map +1 -0
- package/dist/tui/components/DataTable.d.ts +14 -0
- package/dist/tui/components/DataTable.js +26 -0
- package/dist/tui/components/DataTable.js.map +1 -0
- package/dist/tui/components/InputBar.d.ts +9 -0
- package/dist/tui/components/InputBar.js +10 -0
- package/dist/tui/components/InputBar.js.map +1 -0
- package/dist/tui/components/Menu.d.ts +16 -0
- package/dist/tui/components/Menu.js +78 -0
- package/dist/tui/components/Menu.js.map +1 -0
- package/dist/tui/components/NumberInput.d.ts +13 -0
- package/dist/tui/components/NumberInput.js +55 -0
- package/dist/tui/components/NumberInput.js.map +1 -0
- package/dist/tui/components/Panel.d.ts +13 -0
- package/dist/tui/components/Panel.js +11 -0
- package/dist/tui/components/Panel.js.map +1 -0
- package/dist/tui/components/Sparkline.d.ts +11 -0
- package/dist/tui/components/Sparkline.js +40 -0
- package/dist/tui/components/Sparkline.js.map +1 -0
- package/dist/tui/components/Spinner.d.ts +4 -0
- package/dist/tui/components/Spinner.js +11 -0
- package/dist/tui/components/Spinner.js.map +1 -0
- package/dist/tui/components/StatusBar.d.ts +6 -0
- package/dist/tui/components/StatusBar.js +9 -0
- package/dist/tui/components/StatusBar.js.map +1 -0
- package/dist/tui/components/Tip.d.ts +4 -0
- package/dist/tui/components/Tip.js +11 -0
- package/dist/tui/components/Tip.js.map +1 -0
- package/dist/tui/hooks/useApi.d.ts +12 -0
- package/dist/tui/hooks/useApi.js +15 -0
- package/dist/tui/hooks/useApi.js.map +1 -0
- package/dist/tui/hooks/useHeader.d.ts +18 -0
- package/dist/tui/hooks/useHeader.js +65 -0
- package/dist/tui/hooks/useHeader.js.map +1 -0
- package/dist/tui/hooks/useMouse.d.ts +27 -0
- package/dist/tui/hooks/useMouse.js +174 -0
- package/dist/tui/hooks/useMouse.js.map +1 -0
- package/dist/tui/hooks/useStdinCapture.d.ts +1 -0
- package/dist/tui/hooks/useStdinCapture.js +37 -0
- package/dist/tui/hooks/useStdinCapture.js.map +1 -0
- package/dist/tui/index.d.ts +12 -0
- package/dist/tui/index.js +19 -0
- package/dist/tui/index.js.map +1 -0
- package/dist/tui/router.d.ts +10 -0
- package/dist/tui/router.js +9 -0
- package/dist/tui/router.js.map +1 -0
- package/dist/tui/screens/Account.d.ts +2 -0
- package/dist/tui/screens/Account.js +212 -0
- package/dist/tui/screens/Account.js.map +1 -0
- package/dist/tui/screens/Billing.d.ts +2 -0
- package/dist/tui/screens/Billing.js +586 -0
- package/dist/tui/screens/Billing.js.map +1 -0
- package/dist/tui/screens/Dashboard.d.ts +2 -0
- package/dist/tui/screens/Dashboard.js +150 -0
- package/dist/tui/screens/Dashboard.js.map +1 -0
- package/dist/tui/screens/Order.d.ts +2 -0
- package/dist/tui/screens/Order.js +1169 -0
- package/dist/tui/screens/Order.js.map +1 -0
- package/dist/tui/screens/Resources.d.ts +2 -0
- package/dist/tui/screens/Resources.js +720 -0
- package/dist/tui/screens/Resources.js.map +1 -0
- package/dist/tui/screens/Tickets.d.ts +2 -0
- package/dist/tui/screens/Tickets.js +395 -0
- package/dist/tui/screens/Tickets.js.map +1 -0
- package/dist/tui/theme/colors.d.ts +12 -0
- package/dist/tui/theme/colors.js +29 -0
- package/dist/tui/theme/colors.js.map +1 -0
- package/dist/tui/theme/glyphs.d.ts +5 -0
- package/dist/tui/theme/glyphs.js +6 -0
- package/dist/tui/theme/glyphs.js.map +1 -0
- package/dist/ui/confirm.d.ts +7 -0
- package/dist/ui/confirm.js +18 -0
- package/dist/ui/confirm.js.map +1 -0
- package/dist/ui/glyphs.d.ts +18 -0
- package/dist/ui/glyphs.js +47 -0
- package/dist/ui/glyphs.js.map +1 -0
- package/dist/ui/payment.d.ts +33 -0
- package/dist/ui/payment.js +179 -0
- package/dist/ui/payment.js.map +1 -0
- package/dist/ui/pm-resolve.d.ts +3 -0
- package/dist/ui/pm-resolve.js +19 -0
- package/dist/ui/pm-resolve.js.map +1 -0
- package/dist/ui/portal.d.ts +1 -0
- package/dist/ui/portal.js +19 -0
- package/dist/ui/portal.js.map +1 -0
- package/dist/ui/render-mode.d.ts +10 -0
- package/dist/ui/render-mode.js +30 -0
- package/dist/ui/render-mode.js.map +1 -0
- package/dist/ui/sparkline.d.ts +6 -0
- package/dist/ui/sparkline.js +30 -0
- package/dist/ui/sparkline.js.map +1 -0
- package/dist/ui/spinner.d.ts +1 -0
- package/dist/ui/spinner.js +19 -0
- package/dist/ui/spinner.js.map +1 -0
- package/dist/ui/stats.d.ts +22 -0
- package/dist/ui/stats.js +71 -0
- package/dist/ui/stats.js.map +1 -0
- package/dist/ui/stdin.d.ts +1 -0
- package/dist/ui/stdin.js +8 -0
- package/dist/ui/stdin.js.map +1 -0
- package/dist/ui/table.d.ts +2 -0
- package/dist/ui/table.js +48 -0
- package/dist/ui/table.js.map +1 -0
- package/dist/ui/ticket-resolve.d.ts +2 -0
- package/dist/ui/ticket-resolve.js +17 -0
- package/dist/ui/ticket-resolve.js.map +1 -0
- package/dist/ui/volume-resolve.d.ts +3 -0
- package/dist/ui/volume-resolve.js +30 -0
- package/dist/ui/volume-resolve.js.map +1 -0
- package/dist/ui/vps-detail.d.ts +3 -0
- package/dist/ui/vps-detail.js +79 -0
- package/dist/ui/vps-detail.js.map +1 -0
- package/dist/ui/vps-resolve.d.ts +4 -0
- package/dist/ui/vps-resolve.js +24 -0
- package/dist/ui/vps-resolve.js.map +1 -0
- package/dist/ui/wait.d.ts +31 -0
- package/dist/ui/wait.js +66 -0
- package/dist/ui/wait.js.map +1 -0
- package/dist/ui/wizard.d.ts +33 -0
- package/dist/ui/wizard.js +168 -0
- package/dist/ui/wizard.js.map +1 -0
- package/package.json +142 -0
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { BaseCommand } from "../../../base/command.js";
|
|
2
|
+
export default class PaymentsMethodsAdd extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: string[];
|
|
5
|
+
static flags: {
|
|
6
|
+
"print-url": import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
7
|
+
};
|
|
8
|
+
run(): Promise<void>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Flags } from "@oclif/core";
|
|
2
|
+
import open from "open";
|
|
3
|
+
import { BaseCommand } from "../../../base/command.js";
|
|
4
|
+
import { portalUrl } from "../../../ui/portal.js";
|
|
5
|
+
import { panel } from "../../../ui/wizard.js";
|
|
6
|
+
export default class PaymentsMethodsAdd extends BaseCommand {
|
|
7
|
+
static description = "Open the portal to add a new payment method (browser hand-off).";
|
|
8
|
+
static examples = [
|
|
9
|
+
"<%= config.bin %> payments methods add",
|
|
10
|
+
"<%= config.bin %> payments methods add --print-url",
|
|
11
|
+
];
|
|
12
|
+
static flags = {
|
|
13
|
+
"print-url": Flags.boolean({
|
|
14
|
+
description: "Print the URL instead of opening the browser.",
|
|
15
|
+
}),
|
|
16
|
+
};
|
|
17
|
+
async run() {
|
|
18
|
+
await this.initClients();
|
|
19
|
+
const { flags } = await this.parse(PaymentsMethodsAdd);
|
|
20
|
+
const url = portalUrl(this.clients.config.get().api_base_url, "/organization/billing/payment-methods");
|
|
21
|
+
this.emit({ url }, () => this.log(panel("Add a payment method", [["URL", url]])));
|
|
22
|
+
if (flags["print-url"] || !process.stdout.isTTY)
|
|
23
|
+
return;
|
|
24
|
+
try {
|
|
25
|
+
await open(url);
|
|
26
|
+
}
|
|
27
|
+
catch { }
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=add.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add.js","sourceRoot":"","sources":["../../../../src/commands/payments/methods/add.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE9C,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,WAAW;IACzD,MAAM,CAAC,WAAW,GAAG,iEAAiE,CAAC;IACvF,MAAM,CAAC,QAAQ,GAAG;QAChB,wCAAwC;QACxC,oDAAoD;KACrD,CAAC;IACF,MAAM,CAAC,KAAK,GAAG;QACb,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC;YACzB,WAAW,EAAE,+CAA+C;SAC7D,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzB,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACvD,MAAM,GAAG,GAAG,SAAS,CACnB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,EACtC,uCAAuC,CACxC,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,sBAAsB,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAElF,IAAI,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK;YAAE,OAAO;QACxD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC;QAClB,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { BaseCommand } from "../../../base/command.js";
|
|
2
|
+
export default class PaymentsMethodsDelete extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: string[];
|
|
5
|
+
static args: {
|
|
6
|
+
id: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
|
|
7
|
+
};
|
|
8
|
+
static flags: {
|
|
9
|
+
yes: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
10
|
+
};
|
|
11
|
+
run(): Promise<void>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { Args, Flags } from "@oclif/core";
|
|
2
|
+
import { BaseCommand } from "../../../base/command.js";
|
|
3
|
+
import { ok } from "../../../ui/glyphs.js";
|
|
4
|
+
import { describePaymentMethod } from "../../../ui/wizard.js";
|
|
5
|
+
import { confirmDestructive, yesRequiredMessage } from "../../../ui/confirm.js";
|
|
6
|
+
import { isInteractive } from "../../../ui/wizard.js";
|
|
7
|
+
import { resolvePaymentMethod } from "../../../ui/pm-resolve.js";
|
|
8
|
+
export default class PaymentsMethodsDelete extends BaseCommand {
|
|
9
|
+
static description = [
|
|
10
|
+
"Remove a saved payment method.",
|
|
11
|
+
"",
|
|
12
|
+
"Confirms on a TTY (default No). When stdout is piped, pass --yes or",
|
|
13
|
+
"the command exits 1 without acting. The team default can't be",
|
|
14
|
+
"removed — set another default first.",
|
|
15
|
+
].join("\n");
|
|
16
|
+
static examples = [
|
|
17
|
+
"<%= config.bin %> payments methods delete 019e... # prompts first",
|
|
18
|
+
"<%= config.bin %> payments methods delete 019e... --yes # no prompt (required when piped)",
|
|
19
|
+
"<%= config.bin %> payments methods delete 019e... --yes -o json",
|
|
20
|
+
];
|
|
21
|
+
static args = {
|
|
22
|
+
id: Args.string({
|
|
23
|
+
description: "Payment method id — full UUID or the short id shown by `synteq payments methods list`.",
|
|
24
|
+
required: true,
|
|
25
|
+
}),
|
|
26
|
+
};
|
|
27
|
+
static flags = {
|
|
28
|
+
yes: Flags.boolean({
|
|
29
|
+
char: "y",
|
|
30
|
+
description: "Skip the confirmation prompt. Required when stdout is not a TTY.",
|
|
31
|
+
}),
|
|
32
|
+
};
|
|
33
|
+
async run() {
|
|
34
|
+
await this.initClients();
|
|
35
|
+
const { args, flags } = await this.parse(PaymentsMethodsDelete);
|
|
36
|
+
try {
|
|
37
|
+
const pm = await resolvePaymentMethod(this.clients.api, args.id);
|
|
38
|
+
if (!flags.yes) {
|
|
39
|
+
if (!isInteractive()) {
|
|
40
|
+
this.error(yesRequiredMessage("`payments methods delete`"), { exit: 1 });
|
|
41
|
+
}
|
|
42
|
+
const outcome = await confirmDestructive({
|
|
43
|
+
message: `Remove ${describePaymentMethod(pm)}?`,
|
|
44
|
+
});
|
|
45
|
+
if (outcome !== "confirmed") {
|
|
46
|
+
this.log("Aborted — no payment method removed.");
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
await this.clients.api.payments.deleteMethod(pm.id);
|
|
51
|
+
this.emit({ id: pm.id, status: "removed" }, () => this.log(ok(`Payment method ${describePaymentMethod(pm)} removed.`)));
|
|
52
|
+
}
|
|
53
|
+
catch (err) {
|
|
54
|
+
this.fail(err);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=delete.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../../src/commands/payments/methods/delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,EAAE,EAAE,MAAM,uBAAuB,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,WAAW;IAC5D,MAAM,CAAC,WAAW,GAAG;QACnB,gCAAgC;QAChC,EAAE;QACF,qEAAqE;QACrE,+DAA+D;QAC/D,sCAAsC;KACvC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACb,MAAM,CAAC,QAAQ,GAAG;QAChB,4EAA4E;QAC5E,8FAA8F;QAC9F,iEAAiE;KAClE,CAAC;IACF,MAAM,CAAC,IAAI,GAAG;QACZ,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC;YACd,WAAW,EACT,wFAAwF;YAC1F,QAAQ,EAAE,IAAI;SACf,CAAC;KACH,CAAC;IACF,MAAM,CAAC,KAAK,GAAG;QACb,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC;YACjB,IAAI,EAAE,GAAG;YACT,WAAW,EACT,kEAAkE;SACrE,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAChE,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAEjE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;gBACf,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;oBACrB,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,2BAA2B,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC3E,CAAC;gBACD,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC;oBACvC,OAAO,EAAE,UAAU,qBAAqB,CAAC,EAAE,CAAC,GAAG;iBAChD,CAAC,CAAC;gBACH,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;oBAC5B,IAAI,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;oBACjD,OAAO;gBACT,CAAC;YACH,CAAC;YAED,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAEpD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE,CAC/C,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,kBAAkB,qBAAqB,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CACrE,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC;IACH,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import PaymentsMethodsList from "./list.js";
|
|
2
|
+
export default class PaymentsMethodsDefault extends PaymentsMethodsList {
|
|
3
|
+
static description = "List saved payment methods (alias for `synteq payments methods list`).";
|
|
4
|
+
static examples = [
|
|
5
|
+
"<%= config.bin %> payments methods",
|
|
6
|
+
"<%= config.bin %> payments methods -o json",
|
|
7
|
+
];
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/payments/methods/index.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,MAAM,WAAW,CAAC;AAE5C,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,mBAAmB;IACrE,MAAM,CAAC,WAAW,GAChB,wEAAwE,CAAC;IAC3E,MAAM,CAAC,QAAQ,GAAG;QAChB,oCAAoC;QACpC,4CAA4C;KAC7C,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { BaseCommand } from "../../../base/command.js";
|
|
2
|
+
import { renderTable, shortId } from "../../../ui/table.js";
|
|
3
|
+
export default class PaymentsMethodsList extends BaseCommand {
|
|
4
|
+
static description = "List saved payment methods on the active team.";
|
|
5
|
+
static examples = [
|
|
6
|
+
"<%= config.bin %> payments methods list",
|
|
7
|
+
"<%= config.bin %> payments methods list -o json",
|
|
8
|
+
];
|
|
9
|
+
async run() {
|
|
10
|
+
await this.initClients();
|
|
11
|
+
try {
|
|
12
|
+
const methods = await this.clients.api.payments.methods();
|
|
13
|
+
this.emit(methods, () => {
|
|
14
|
+
if (methods.length === 0) {
|
|
15
|
+
this.log("No payment methods. Run `synteq payments methods add` to add one.");
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
this.log(renderTable(["ID", "PROVIDER", "BRAND", "LAST4", "NICKNAME", "DEFAULT"], methods.map((m) => [
|
|
19
|
+
shortId(m.id),
|
|
20
|
+
m.provider,
|
|
21
|
+
m.card_brand ?? "",
|
|
22
|
+
m.card_last4 ?? "",
|
|
23
|
+
m.nickname ?? "",
|
|
24
|
+
m.is_default ? "yes" : "",
|
|
25
|
+
])));
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
catch (err) {
|
|
29
|
+
this.fail(err);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/commands/payments/methods/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE5D,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,WAAW;IAC1D,MAAM,CAAC,WAAW,GAAG,gDAAgD,CAAC;IACtE,MAAM,CAAC,QAAQ,GAAG;QAChB,yCAAyC;QACzC,iDAAiD;KAClD,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YAC1D,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;gBACtB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACzB,IAAI,CAAC,GAAG,CAAC,mEAAmE,CAAC,CAAC;oBAC9E,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,GAAG,CACN,WAAW,CACT,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,CAAC,EAC3D,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;oBACjB,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;oBACb,CAAC,CAAC,QAAQ;oBACV,CAAC,CAAC,UAAU,IAAI,EAAE;oBAClB,CAAC,CAAC,UAAU,IAAI,EAAE;oBAClB,CAAC,CAAC,QAAQ,IAAI,EAAE;oBAChB,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;iBAC1B,CAAC,CACH,CACF,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC;IACH,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { BaseCommand } from "../../../base/command.js";
|
|
2
|
+
export default class PaymentsMethodsSetDefault extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: string[];
|
|
5
|
+
static args: {
|
|
6
|
+
id: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
|
|
7
|
+
};
|
|
8
|
+
run(): Promise<void>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Args } from "@oclif/core";
|
|
2
|
+
import { BaseCommand } from "../../../base/command.js";
|
|
3
|
+
import { ok } from "../../../ui/glyphs.js";
|
|
4
|
+
import { describePaymentMethod } from "../../../ui/wizard.js";
|
|
5
|
+
import { resolvePaymentMethod } from "../../../ui/pm-resolve.js";
|
|
6
|
+
export default class PaymentsMethodsSetDefault extends BaseCommand {
|
|
7
|
+
static description = "Set a saved payment method as the team default.";
|
|
8
|
+
static examples = [
|
|
9
|
+
"<%= config.bin %> payments methods set-default 019e...",
|
|
10
|
+
"<%= config.bin %> payments methods set-default 019e... -o json",
|
|
11
|
+
];
|
|
12
|
+
static args = {
|
|
13
|
+
id: Args.string({
|
|
14
|
+
description: "Payment method id — full UUID or the short id shown by `synteq payments methods list`.",
|
|
15
|
+
required: true,
|
|
16
|
+
}),
|
|
17
|
+
};
|
|
18
|
+
async run() {
|
|
19
|
+
await this.initClients();
|
|
20
|
+
const { args } = await this.parse(PaymentsMethodsSetDefault);
|
|
21
|
+
try {
|
|
22
|
+
const pm = await resolvePaymentMethod(this.clients.api, args.id);
|
|
23
|
+
const result = await this.clients.api.payments.setDefaultMethod(pm.id);
|
|
24
|
+
this.emit(result, () => this.log(ok(`Default payment method is now ${describePaymentMethod(pm)}.`)));
|
|
25
|
+
}
|
|
26
|
+
catch (err) {
|
|
27
|
+
this.fail(err);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=set-default.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"set-default.js","sourceRoot":"","sources":["../../../../src/commands/payments/methods/set-default.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,EAAE,EAAE,MAAM,uBAAuB,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,MAAM,CAAC,OAAO,OAAO,yBAA0B,SAAQ,WAAW;IAChE,MAAM,CAAC,WAAW,GAAG,iDAAiD,CAAC;IACvE,MAAM,CAAC,QAAQ,GAAG;QAChB,wDAAwD;QACxD,gEAAgE;KACjE,CAAC;IACF,MAAM,CAAC,IAAI,GAAG;QACZ,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC;YACd,WAAW,EACT,wFAAwF;YAC1F,QAAQ,EAAE,IAAI;SACf,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7D,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YACjE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACvE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CACrB,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,iCAAiC,qBAAqB,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAC5E,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC;IACH,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import ProjectsList from "./list.js";
|
|
2
|
+
export default class ProjectsDefault extends ProjectsList {
|
|
3
|
+
static description = "List projects in the active team.";
|
|
4
|
+
static examples = [
|
|
5
|
+
"<%= config.bin %> projects",
|
|
6
|
+
"<%= config.bin %> projects -o json",
|
|
7
|
+
];
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/projects/index.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,WAAW,CAAC;AAErC,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,YAAY;IACvD,MAAM,CAAC,WAAW,GAAG,mCAAmC,CAAC;IACzD,MAAM,CAAC,QAAQ,GAAG;QAChB,4BAA4B;QAC5B,oCAAoC;KACrC,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { BaseCommand } from "../../base/command.js";
|
|
2
|
+
import { renderTable, shortId } from "../../ui/table.js";
|
|
3
|
+
export default class ProjectsList extends BaseCommand {
|
|
4
|
+
static description = "List projects in the active team.";
|
|
5
|
+
static examples = [
|
|
6
|
+
"<%= config.bin %> projects list",
|
|
7
|
+
"<%= config.bin %> projects list -o json",
|
|
8
|
+
];
|
|
9
|
+
async run() {
|
|
10
|
+
await this.initClients();
|
|
11
|
+
try {
|
|
12
|
+
const projects = await this.clients.api.projects.list();
|
|
13
|
+
this.emit(projects, () => {
|
|
14
|
+
if (projects.length === 0) {
|
|
15
|
+
this.log("No projects.");
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
this.log(renderTable(["ID", "NAME", "DEFAULT", "CREATED"], projects.map((p) => [
|
|
19
|
+
shortId(p.id),
|
|
20
|
+
p.name,
|
|
21
|
+
p.is_default ? "yes" : "",
|
|
22
|
+
p.created_at.slice(0, 10),
|
|
23
|
+
])));
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
catch (err) {
|
|
27
|
+
this.fail(err);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/projects/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEzD,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,WAAW;IACnD,MAAM,CAAC,WAAW,GAAG,mCAAmC,CAAC;IACzD,MAAM,CAAC,QAAQ,GAAG;QAChB,iCAAiC;QACjC,yCAAyC;KAC1C,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;gBACvB,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC1B,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;oBACzB,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,GAAG,CACN,WAAW,CACT,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,EACpC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;oBAClB,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;oBACb,CAAC,CAAC,IAAI;oBACN,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;oBACzB,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;iBAC1B,CAAC,CACH,CACF,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC;IACH,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { BaseCommand } from "../base/command.js";
|
|
2
|
+
export default class Resources extends BaseCommand {
|
|
3
|
+
static aliases: string[];
|
|
4
|
+
static description: string;
|
|
5
|
+
static examples: string[];
|
|
6
|
+
static flags: {
|
|
7
|
+
project: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
|
+
kind: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
|
+
};
|
|
10
|
+
run(): Promise<void>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { Flags } from "@oclif/core";
|
|
2
|
+
import { BaseCommand } from "../base/command.js";
|
|
3
|
+
import { renderTable, shortId } from "../ui/table.js";
|
|
4
|
+
import { ApiError, AuthExpiredError, NetworkError } from "../api/errors.js";
|
|
5
|
+
import { statusColor } from "../ui/glyphs.js";
|
|
6
|
+
export default class Resources extends BaseCommand {
|
|
7
|
+
static aliases = ["resource"];
|
|
8
|
+
static description = "List every resource across all kinds (vps, metal, transit, storage).";
|
|
9
|
+
static examples = [
|
|
10
|
+
"<%= config.bin %> resources",
|
|
11
|
+
"<%= config.bin %> resources --kind vps,metal",
|
|
12
|
+
"<%= config.bin %> resources --project 019e... --kind storage",
|
|
13
|
+
"<%= config.bin %> resources -o json",
|
|
14
|
+
];
|
|
15
|
+
static flags = {
|
|
16
|
+
project: Flags.string({ description: "Scope to a project id." }),
|
|
17
|
+
kind: Flags.string({
|
|
18
|
+
description: "Restrict to one or more kinds: vps, metal, transit, storage (repeatable or comma-separated).",
|
|
19
|
+
multiple: true,
|
|
20
|
+
}),
|
|
21
|
+
};
|
|
22
|
+
async run() {
|
|
23
|
+
await this.initClients();
|
|
24
|
+
const { flags } = await this.parse(Resources);
|
|
25
|
+
const requested = new Set((flags.kind ?? [])
|
|
26
|
+
.flatMap((s) => s.split(","))
|
|
27
|
+
.map((s) => s.trim().toLowerCase())
|
|
28
|
+
.filter(Boolean));
|
|
29
|
+
const wants = (k) => requested.size === 0 || requested.has(k);
|
|
30
|
+
const { api } = this.clients;
|
|
31
|
+
const errors = [];
|
|
32
|
+
const [vps, metal, transit, storage] = await Promise.all([
|
|
33
|
+
wants("vps") ? api.vps.list(flags.project).catch((e) => recordErr(e, "vps")) : [],
|
|
34
|
+
wants("metal") ? api.baremetal.list(flags.project).catch((e) => recordErr(e, "metal")) : [],
|
|
35
|
+
wants("transit") ? api.transit.list(flags.project).catch((e) => recordErr(e, "transit")) : [],
|
|
36
|
+
wants("storage") ? api.storage.list(flags.project).catch((e) => recordErr(e, "storage")) : [],
|
|
37
|
+
]);
|
|
38
|
+
function recordErr(err, kind) {
|
|
39
|
+
if (err instanceof AuthExpiredError ||
|
|
40
|
+
err instanceof NetworkError ||
|
|
41
|
+
(err instanceof ApiError && err.status === 401)) {
|
|
42
|
+
throw err;
|
|
43
|
+
}
|
|
44
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
45
|
+
errors.push(`${kind}: ${msg}`);
|
|
46
|
+
return [];
|
|
47
|
+
}
|
|
48
|
+
const rows = [
|
|
49
|
+
...vps.map((v) => ({
|
|
50
|
+
kind: "vps",
|
|
51
|
+
id: v.id,
|
|
52
|
+
name: v.hostname,
|
|
53
|
+
status: v.status,
|
|
54
|
+
location: v.location?.city ?? v.location?.name ?? "",
|
|
55
|
+
project_name: v.project_name ?? "",
|
|
56
|
+
})),
|
|
57
|
+
...metal.map((m) => ({
|
|
58
|
+
kind: "metal",
|
|
59
|
+
id: m.id,
|
|
60
|
+
name: m.hostname ?? m.reference,
|
|
61
|
+
status: m.is_active ? "active" : "inactive",
|
|
62
|
+
location: m.location_city ?? m.location_name ?? "",
|
|
63
|
+
project_name: m.project_name ?? "",
|
|
64
|
+
})),
|
|
65
|
+
...transit.map((t) => ({
|
|
66
|
+
kind: "transit",
|
|
67
|
+
id: t.id,
|
|
68
|
+
name: t.service_name,
|
|
69
|
+
status: "active",
|
|
70
|
+
location: "",
|
|
71
|
+
project_name: t.project_name ?? "",
|
|
72
|
+
})),
|
|
73
|
+
...storage.map((s) => ({
|
|
74
|
+
kind: "storage",
|
|
75
|
+
id: s.id,
|
|
76
|
+
name: s.name,
|
|
77
|
+
status: s.status,
|
|
78
|
+
location: s.vps_hostname ?? "",
|
|
79
|
+
project_name: s.project_name ?? "",
|
|
80
|
+
})),
|
|
81
|
+
];
|
|
82
|
+
this.emit({ resources: rows, errors }, () => {
|
|
83
|
+
for (const e of errors)
|
|
84
|
+
this.warn(e);
|
|
85
|
+
if (rows.length === 0) {
|
|
86
|
+
this.log("No resources.");
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
this.log(renderTable(["KIND", "ID", "NAME", "STATUS", "LOCATION", "PROJECT"], rows.map((r) => [r.kind, shortId(r.id), r.name, statusColor(r.status), r.location, r.project_name])));
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=resources.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resources.js","sourceRoot":"","sources":["../../src/commands/resources.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { BaseCommand } from "../../base/command.js";
|
|
2
|
+
import { panel } from "../../ui/wizard.js";
|
|
3
|
+
import { dim, G } from "../../ui/glyphs.js";
|
|
4
|
+
import { configFile } from "../../config/paths.js";
|
|
5
|
+
export default class SettingsShow extends BaseCommand {
|
|
6
|
+
static description = "Show CLI settings (active team, project, signed-in user, API url).";
|
|
7
|
+
static examples = [
|
|
8
|
+
"<%= config.bin %> settings",
|
|
9
|
+
"<%= config.bin %> settings render-mode auto",
|
|
10
|
+
"<%= config.bin %> settings -o json",
|
|
11
|
+
];
|
|
12
|
+
async run() {
|
|
13
|
+
await this.initClients();
|
|
14
|
+
const cfg = this.clients.config.get();
|
|
15
|
+
const tokens = await this.clients.tokens.read();
|
|
16
|
+
const envOverride = process.env.SYNTEQ_TUI;
|
|
17
|
+
const noColor = Boolean(process.env.NO_COLOR);
|
|
18
|
+
const isTty = Boolean(process.stdout.isTTY);
|
|
19
|
+
const effectiveRender = resolveEffective(cfg.tui_mode, envOverride, noColor, isTty);
|
|
20
|
+
const data = {
|
|
21
|
+
render_mode: cfg.tui_mode,
|
|
22
|
+
render_mode_effective: effectiveRender,
|
|
23
|
+
active_team_id: cfg.active_team_id ?? null,
|
|
24
|
+
active_project_id: cfg.default_project_id ?? null,
|
|
25
|
+
signed_in_as_user_id: tokens?.user_id ?? null,
|
|
26
|
+
api_base_url: cfg.api_base_url,
|
|
27
|
+
config_path: configFile(),
|
|
28
|
+
};
|
|
29
|
+
this.emit(data, () => {
|
|
30
|
+
this.log(panel("Synteq settings", [
|
|
31
|
+
["Render mode", `${cfg.tui_mode} ${dim(`(currently ${effectiveRender})`)}`],
|
|
32
|
+
["Active team", data.active_team_id ?? "(none — run `synteq team`)"],
|
|
33
|
+
["Active project", data.active_project_id ?? "(team default)"],
|
|
34
|
+
["Signed in as", data.signed_in_as_user_id ?? "(not signed in)"],
|
|
35
|
+
["API base URL", data.api_base_url],
|
|
36
|
+
["Config file", data.config_path],
|
|
37
|
+
]));
|
|
38
|
+
this.log("");
|
|
39
|
+
this.log(dim(` ${G.arrow} \`synteq settings render-mode on|off|auto\` to change render mode.`));
|
|
40
|
+
this.log(dim(` ${G.arrow} \`synteq config set-api-url <url>\` to change the API base URL.`));
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
function resolveEffective(persisted, envOverride, noColor, isTty) {
|
|
45
|
+
if (noColor)
|
|
46
|
+
return "off";
|
|
47
|
+
if (envOverride === "1" || envOverride === "true")
|
|
48
|
+
return "on";
|
|
49
|
+
if (envOverride === "0" || envOverride === "false")
|
|
50
|
+
return "off";
|
|
51
|
+
if (persisted === "on")
|
|
52
|
+
return "on";
|
|
53
|
+
if (persisted === "off")
|
|
54
|
+
return "off";
|
|
55
|
+
return isTty ? "on" : "off";
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/settings/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { BaseCommand } from "../../base/command.js";
|
|
2
|
+
export default class SettingsRenderMode extends BaseCommand {
|
|
3
|
+
static hidden: boolean;
|
|
4
|
+
static description: string;
|
|
5
|
+
static examples: string[];
|
|
6
|
+
static args: {
|
|
7
|
+
value: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
|
|
8
|
+
};
|
|
9
|
+
run(): Promise<void>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { Args } from "@oclif/core";
|
|
2
|
+
import { BaseCommand } from "../../base/command.js";
|
|
3
|
+
import { panel } from "../../ui/wizard.js";
|
|
4
|
+
import { ok, dim, G } from "../../ui/glyphs.js";
|
|
5
|
+
export default class SettingsRenderMode extends BaseCommand {
|
|
6
|
+
static hidden = true;
|
|
7
|
+
static description = "Set the persistent render mode (on / off / auto) for one-shot commands.";
|
|
8
|
+
static examples = [
|
|
9
|
+
"<%= config.bin %> settings render-mode # show current",
|
|
10
|
+
"<%= config.bin %> settings render-mode on # always TUI chrome",
|
|
11
|
+
"<%= config.bin %> settings render-mode off # always plain (agent-friendly)",
|
|
12
|
+
"<%= config.bin %> settings render-mode auto # default: TTY → on, pipe → off",
|
|
13
|
+
];
|
|
14
|
+
static args = {
|
|
15
|
+
value: Args.string({
|
|
16
|
+
description: "on | off | auto. Omit to show the current value.",
|
|
17
|
+
required: false,
|
|
18
|
+
}),
|
|
19
|
+
};
|
|
20
|
+
async run() {
|
|
21
|
+
await this.initClients();
|
|
22
|
+
const { args } = await this.parse(SettingsRenderMode);
|
|
23
|
+
const cfg = this.clients.config;
|
|
24
|
+
const next = args.value?.toLowerCase();
|
|
25
|
+
if (next && next !== "on" && next !== "off" && next !== "auto") {
|
|
26
|
+
this.error(`Unknown value "${args.value}". Use on, off, or auto.`, { exit: 1 });
|
|
27
|
+
}
|
|
28
|
+
if (next) {
|
|
29
|
+
cfg.set({ tui_mode: next });
|
|
30
|
+
}
|
|
31
|
+
const current = cfg.get().tui_mode;
|
|
32
|
+
const envOverride = process.env.SYNTEQ_TUI;
|
|
33
|
+
const noColor = Boolean(process.env.NO_COLOR);
|
|
34
|
+
const isTty = Boolean(process.stdout.isTTY);
|
|
35
|
+
const effective = resolveEffective(current, envOverride, noColor, isTty);
|
|
36
|
+
const data = {
|
|
37
|
+
persisted: current,
|
|
38
|
+
env_override: envOverride ?? null,
|
|
39
|
+
no_color: noColor,
|
|
40
|
+
tty: isTty,
|
|
41
|
+
effective,
|
|
42
|
+
changed: Boolean(next),
|
|
43
|
+
};
|
|
44
|
+
this.emit(data, () => {
|
|
45
|
+
if (next) {
|
|
46
|
+
this.log(ok(`Render mode set to "${current}".`));
|
|
47
|
+
this.log("");
|
|
48
|
+
}
|
|
49
|
+
this.log(panel("Render mode", [
|
|
50
|
+
["Persisted", current],
|
|
51
|
+
["Env override", envOverride ?? dim("(none)")],
|
|
52
|
+
["NO_COLOR", noColor ? "yes" : dim("no")],
|
|
53
|
+
["TTY", isTty ? "yes" : dim("no")],
|
|
54
|
+
["Effective", effective],
|
|
55
|
+
]));
|
|
56
|
+
if (!next) {
|
|
57
|
+
this.log("");
|
|
58
|
+
this.log(dim(` ${G.arrow} \`synteq settings render-mode on\` / \`off\` / \`auto\` to change.`));
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
function resolveEffective(persisted, envOverride, noColor, isTty) {
|
|
64
|
+
if (noColor)
|
|
65
|
+
return "off";
|
|
66
|
+
if (envOverride === "1" || envOverride === "true")
|
|
67
|
+
return "on";
|
|
68
|
+
if (envOverride === "0" || envOverride === "false")
|
|
69
|
+
return "off";
|
|
70
|
+
if (persisted === "on")
|
|
71
|
+
return "on";
|
|
72
|
+
if (persisted === "off")
|
|
73
|
+
return "off";
|
|
74
|
+
return isTty ? "on" : "off";
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=render-mode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-mode.js","sourceRoot":"","sources":["../../../src/commands/settings/render-mode.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { BaseCommand } from "../../base/command.js";
|
|
2
|
+
export default class SshKeyAdd extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: string[];
|
|
5
|
+
static flags: {
|
|
6
|
+
name: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
7
|
+
"public-key": import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
|
+
file: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
|
+
};
|
|
10
|
+
run(): Promise<void>;
|
|
11
|
+
}
|