@sendly/cli 3.0.2 → 3.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.
@@ -19,7 +19,7 @@ export default class CreditsHistory extends AuthenticatedCommand {
19
19
  };
20
20
  async run() {
21
21
  const { flags } = await this.parse(CreditsHistory);
22
- const response = await apiClient.get("/api/credits/transactions", { limit: flags.limit });
22
+ const response = await apiClient.get("/api/v1/credits/transactions", { limit: flags.limit });
23
23
  if (isJsonMode()) {
24
24
  json(response.transactions);
25
25
  return;
@@ -63,7 +63,7 @@ export default class CreditsHistory extends AuthenticatedCommand {
63
63
  },
64
64
  {
65
65
  header: "Balance",
66
- key: "balanceAfter",
66
+ key: "balance_after",
67
67
  width: 12,
68
68
  formatter: (v) => `${v.toLocaleString()}`,
69
69
  },
@@ -78,11 +78,11 @@ export default class CreditsHistory extends AuthenticatedCommand {
78
78
  },
79
79
  {
80
80
  header: "When",
81
- key: "createdAt",
81
+ key: "created_at",
82
82
  width: 12,
83
83
  formatter: (v) => formatRelativeTime(String(v)),
84
84
  },
85
85
  ]);
86
86
  }
87
87
  }
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlzdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy9jcmVkaXRzL2hpc3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDcEQsT0FBTyxFQUNMLEtBQUssRUFDTCxJQUFJLEVBQ0osSUFBSSxFQUNKLGtCQUFrQixFQUNsQixNQUFNLEVBQ04sVUFBVSxHQUNYLE1BQU0scUJBQXFCLENBQUM7QUFlN0IsTUFBTSxDQUFDLE9BQU8sT0FBTyxjQUFlLFNBQVEsb0JBQW9CO0lBQzlELE1BQU0sQ0FBQyxXQUFXLEdBQUcsaUNBQWlDLENBQUM7SUFFdkQsTUFBTSxDQUFDLFFBQVEsR0FBRztRQUNoQixtQ0FBbUM7UUFDbkMsOENBQThDO1FBQzlDLDBDQUEwQztLQUMzQyxDQUFDO0lBRUYsTUFBTSxDQUFDLEtBQUssR0FBRztRQUNiLEdBQUcsb0JBQW9CLENBQUMsU0FBUztRQUNqQyxLQUFLLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUNuQixJQUFJLEVBQUUsR0FBRztZQUNULFdBQVcsRUFBRSxnQ0FBZ0M7WUFDN0MsT0FBTyxFQUFFLEVBQUU7U0FDWixDQUFDO0tBQ0gsQ0FBQztJQUVGLEtBQUssQ0FBQyxHQUFHO1FBQ1AsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUVuRCxNQUFNLFFBQVEsR0FBRyxNQUFNLFNBQVMsQ0FBQyxHQUFHLENBQ2xDLDJCQUEyQixFQUMzQixFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQ3ZCLENBQUM7UUFFRixJQUFJLFVBQVUsRUFBRSxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUM1QixPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksUUFBUSxDQUFDLFlBQVksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdkMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLENBQUM7WUFDOUIsT0FBTztRQUNULENBQUM7UUFFRCxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7UUFFZCxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVksRUFBRTtZQUMzQjtnQkFDRSxNQUFNLEVBQUUsTUFBTTtnQkFDZCxHQUFHLEVBQUUsTUFBTTtnQkFDWCxLQUFLLEVBQUUsRUFBRTtnQkFDVCxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtvQkFDZixRQUFRLENBQUMsRUFBRSxDQUFDO3dCQUNWLEtBQUssVUFBVTs0QkFDYixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7d0JBQ3BDLEtBQUssT0FBTzs0QkFDVixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7d0JBQ2pDLEtBQUssT0FBTzs0QkFDVixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7d0JBQ2pDLEtBQUssUUFBUTs0QkFDWCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7d0JBQy9COzRCQUNFLE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUNyQixDQUFDO2dCQUNILENBQUM7YUFDRjtZQUNEO2dCQUNFLE1BQU0sRUFBRSxRQUFRO2dCQUNoQixHQUFHLEVBQUUsUUFBUTtnQkFDYixLQUFLLEVBQUUsRUFBRTtnQkFDVCxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtvQkFDZixNQUFNLEdBQUcsR0FBRyxDQUFXLENBQUM7b0JBQ3hCLElBQUksR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDO3dCQUNaLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsQ0FBQyxjQUFjLEVBQUUsRUFBRSxDQUFDLENBQUM7b0JBQ3BELENBQUM7b0JBQ0QsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO2dCQUM1QyxDQUFDO2FBQ0Y7WUFDRDtnQkFDRSxNQUFNLEVBQUUsU0FBUztnQkFDakIsR0FBRyxFQUFFLGNBQWM7Z0JBQ25CLEtBQUssRUFBRSxFQUFFO2dCQUNULFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBSSxDQUFZLENBQUMsY0FBYyxFQUFFLEVBQUU7YUFDdEQ7WUFDRDtnQkFDRSxNQUFNLEVBQUUsYUFBYTtnQkFDckIsR0FBRyxFQUFFLGFBQWE7Z0JBQ2xCLEtBQUssRUFBRSxFQUFFO2dCQUNULFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO29CQUNmLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDdkIsT0FBTyxJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7Z0JBQzdELENBQUM7YUFDRjtZQUNEO2dCQUNFLE1BQU0sRUFBRSxNQUFNO2dCQUNkLEdBQUcsRUFBRSxXQUFXO2dCQUNoQixLQUFLLEVBQUUsRUFBRTtnQkFDVCxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNoRDtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGbGFncyB9IGZyb20gXCJAb2NsaWYvY29yZVwiO1xuaW1wb3J0IHsgQXV0aGVudGljYXRlZENvbW1hbmQgfSBmcm9tIFwiLi4vLi4vbGliL2Jhc2UtY29tbWFuZC5qc1wiO1xuaW1wb3J0IHsgYXBpQ2xpZW50IH0gZnJvbSBcIi4uLy4uL2xpYi9hcGktY2xpZW50LmpzXCI7XG5pbXBvcnQge1xuICB0YWJsZSxcbiAganNvbixcbiAgaW5mbyxcbiAgZm9ybWF0UmVsYXRpdmVUaW1lLFxuICBjb2xvcnMsXG4gIGlzSnNvbk1vZGUsXG59IGZyb20gXCIuLi8uLi9saWIvb3V0cHV0LmpzXCI7XG5cbmludGVyZmFjZSBUcmFuc2FjdGlvbiB7XG4gIGlkOiBzdHJpbmc7XG4gIGFtb3VudDogbnVtYmVyO1xuICBiYWxhbmNlQWZ0ZXI6IG51bWJlcjtcbiAgdHlwZTogXCJwdXJjaGFzZVwiIHwgXCJ1c2FnZVwiIHwgXCJib251c1wiIHwgXCJyZWZ1bmRcIjtcbiAgZGVzY3JpcHRpb246IHN0cmluZztcbiAgY3JlYXRlZEF0OiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBUcmFuc2FjdGlvbnNSZXNwb25zZSB7XG4gIHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25bXTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ3JlZGl0c0hpc3RvcnkgZXh0ZW5kcyBBdXRoZW50aWNhdGVkQ29tbWFuZCB7XG4gIHN0YXRpYyBkZXNjcmlwdGlvbiA9IFwiVmlldyBjcmVkaXQgdHJhbnNhY3Rpb24gaGlzdG9yeVwiO1xuXG4gIHN0YXRpYyBleGFtcGxlcyA9IFtcbiAgICBcIjwlPSBjb25maWcuYmluICU+IGNyZWRpdHMgaGlzdG9yeVwiLFxuICAgIFwiPCU9IGNvbmZpZy5iaW4gJT4gY3JlZGl0cyBoaXN0b3J5IC0tbGltaXQgMTBcIixcbiAgICBcIjwlPSBjb25maWcuYmluICU+IGNyZWRpdHMgaGlzdG9yeSAtLWpzb25cIixcbiAgXTtcblxuICBzdGF0aWMgZmxhZ3MgPSB7XG4gICAgLi4uQXV0aGVudGljYXRlZENvbW1hbmQuYmFzZUZsYWdzLFxuICAgIGxpbWl0OiBGbGFncy5pbnRlZ2VyKHtcbiAgICAgIGNoYXI6IFwibFwiLFxuICAgICAgZGVzY3JpcHRpb246IFwiTnVtYmVyIG9mIHRyYW5zYWN0aW9ucyB0byBzaG93XCIsXG4gICAgICBkZWZhdWx0OiAyMCxcbiAgICB9KSxcbiAgfTtcblxuICBhc3luYyBydW4oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgeyBmbGFncyB9ID0gYXdhaXQgdGhpcy5wYXJzZShDcmVkaXRzSGlzdG9yeSk7XG5cbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGFwaUNsaWVudC5nZXQ8VHJhbnNhY3Rpb25zUmVzcG9uc2U+KFxuICAgICAgXCIvYXBpL2NyZWRpdHMvdHJhbnNhY3Rpb25zXCIsXG4gICAgICB7IGxpbWl0OiBmbGFncy5saW1pdCB9XG4gICAgKTtcblxuICAgIGlmIChpc0pzb25Nb2RlKCkpIHtcbiAgICAgIGpzb24ocmVzcG9uc2UudHJhbnNhY3Rpb25zKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAocmVzcG9uc2UudHJhbnNhY3Rpb25zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgaW5mbyhcIk5vIHRyYW5zYWN0aW9ucyBmb3VuZFwiKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zb2xlLmxvZygpO1xuXG4gICAgdGFibGUocmVzcG9uc2UudHJhbnNhY3Rpb25zLCBbXG4gICAgICB7XG4gICAgICAgIGhlYWRlcjogXCJUeXBlXCIsXG4gICAgICAgIGtleTogXCJ0eXBlXCIsXG4gICAgICAgIHdpZHRoOiAxMCxcbiAgICAgICAgZm9ybWF0dGVyOiAodikgPT4ge1xuICAgICAgICAgIHN3aXRjaCAodikge1xuICAgICAgICAgICAgY2FzZSBcInB1cmNoYXNlXCI6XG4gICAgICAgICAgICAgIHJldHVybiBjb2xvcnMuc3VjY2VzcyhcInB1cmNoYXNlXCIpO1xuICAgICAgICAgICAgY2FzZSBcInVzYWdlXCI6XG4gICAgICAgICAgICAgIHJldHVybiBjb2xvcnMud2FybmluZyhcInVzYWdlXCIpO1xuICAgICAgICAgICAgY2FzZSBcImJvbnVzXCI6XG4gICAgICAgICAgICAgIHJldHVybiBjb2xvcnMucHJpbWFyeShcImJvbnVzXCIpO1xuICAgICAgICAgICAgY2FzZSBcInJlZnVuZFwiOlxuICAgICAgICAgICAgICByZXR1cm4gY29sb3JzLmluZm8oXCJyZWZ1bmRcIik7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICByZXR1cm4gU3RyaW5nKHYpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGhlYWRlcjogXCJBbW91bnRcIixcbiAgICAgICAga2V5OiBcImFtb3VudFwiLFxuICAgICAgICB3aWR0aDogMTIsXG4gICAgICAgIGZvcm1hdHRlcjogKHYpID0+IHtcbiAgICAgICAgICBjb25zdCBudW0gPSB2IGFzIG51bWJlcjtcbiAgICAgICAgICBpZiAobnVtID4gMCkge1xuICAgICAgICAgICAgcmV0dXJuIGNvbG9ycy5zdWNjZXNzKGArJHtudW0udG9Mb2NhbGVTdHJpbmcoKX1gKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIGNvbG9ycy5lcnJvcihudW0udG9Mb2NhbGVTdHJpbmcoKSk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBoZWFkZXI6IFwiQmFsYW5jZVwiLFxuICAgICAgICBrZXk6IFwiYmFsYW5jZUFmdGVyXCIsXG4gICAgICAgIHdpZHRoOiAxMixcbiAgICAgICAgZm9ybWF0dGVyOiAodikgPT4gYCR7KHYgYXMgbnVtYmVyKS50b0xvY2FsZVN0cmluZygpfWAsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBoZWFkZXI6IFwiRGVzY3JpcHRpb25cIixcbiAgICAgICAga2V5OiBcImRlc2NyaXB0aW9uXCIsXG4gICAgICAgIHdpZHRoOiAzNSxcbiAgICAgICAgZm9ybWF0dGVyOiAodikgPT4ge1xuICAgICAgICAgIGNvbnN0IGRlc2MgPSBTdHJpbmcodik7XG4gICAgICAgICAgcmV0dXJuIGRlc2MubGVuZ3RoID4gMzIgPyBkZXNjLnNsaWNlKDAsIDMyKSArIFwiLi4uXCIgOiBkZXNjO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaGVhZGVyOiBcIldoZW5cIixcbiAgICAgICAga2V5OiBcImNyZWF0ZWRBdFwiLFxuICAgICAgICB3aWR0aDogMTIsXG4gICAgICAgIGZvcm1hdHRlcjogKHYpID0+IGZvcm1hdFJlbGF0aXZlVGltZShTdHJpbmcodikpLFxuICAgICAgfSxcbiAgICBdKTtcbiAgfVxufVxuIl19
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlzdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy9jcmVkaXRzL2hpc3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDcEQsT0FBTyxFQUNMLEtBQUssRUFDTCxJQUFJLEVBQ0osSUFBSSxFQUNKLGtCQUFrQixFQUNsQixNQUFNLEVBQ04sVUFBVSxHQUNYLE1BQU0scUJBQXFCLENBQUM7QUFlN0IsTUFBTSxDQUFDLE9BQU8sT0FBTyxjQUFlLFNBQVEsb0JBQW9CO0lBQzlELE1BQU0sQ0FBQyxXQUFXLEdBQUcsaUNBQWlDLENBQUM7SUFFdkQsTUFBTSxDQUFDLFFBQVEsR0FBRztRQUNoQixtQ0FBbUM7UUFDbkMsOENBQThDO1FBQzlDLDBDQUEwQztLQUMzQyxDQUFDO0lBRUYsTUFBTSxDQUFDLEtBQUssR0FBRztRQUNiLEdBQUcsb0JBQW9CLENBQUMsU0FBUztRQUNqQyxLQUFLLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUNuQixJQUFJLEVBQUUsR0FBRztZQUNULFdBQVcsRUFBRSxnQ0FBZ0M7WUFDN0MsT0FBTyxFQUFFLEVBQUU7U0FDWixDQUFDO0tBQ0gsQ0FBQztJQUVGLEtBQUssQ0FBQyxHQUFHO1FBQ1AsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUVuRCxNQUFNLFFBQVEsR0FBRyxNQUFNLFNBQVMsQ0FBQyxHQUFHLENBQ2xDLDhCQUE4QixFQUM5QixFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQ3ZCLENBQUM7UUFFRixJQUFJLFVBQVUsRUFBRSxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUM1QixPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksUUFBUSxDQUFDLFlBQVksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdkMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLENBQUM7WUFDOUIsT0FBTztRQUNULENBQUM7UUFFRCxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7UUFFZCxLQUFLLENBQUMsUUFBUSxDQUFDLFlBQVksRUFBRTtZQUMzQjtnQkFDRSxNQUFNLEVBQUUsTUFBTTtnQkFDZCxHQUFHLEVBQUUsTUFBTTtnQkFDWCxLQUFLLEVBQUUsRUFBRTtnQkFDVCxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtvQkFDZixRQUFRLENBQUMsRUFBRSxDQUFDO3dCQUNWLEtBQUssVUFBVTs0QkFDYixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7d0JBQ3BDLEtBQUssT0FBTzs0QkFDVixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7d0JBQ2pDLEtBQUssT0FBTzs0QkFDVixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7d0JBQ2pDLEtBQUssUUFBUTs0QkFDWCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7d0JBQy9COzRCQUNFLE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUNyQixDQUFDO2dCQUNILENBQUM7YUFDRjtZQUNEO2dCQUNFLE1BQU0sRUFBRSxRQUFRO2dCQUNoQixHQUFHLEVBQUUsUUFBUTtnQkFDYixLQUFLLEVBQUUsRUFBRTtnQkFDVCxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtvQkFDZixNQUFNLEdBQUcsR0FBRyxDQUFXLENBQUM7b0JBQ3hCLElBQUksR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDO3dCQUNaLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsQ0FBQyxjQUFjLEVBQUUsRUFBRSxDQUFDLENBQUM7b0JBQ3BELENBQUM7b0JBQ0QsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO2dCQUM1QyxDQUFDO2FBQ0Y7WUFDRDtnQkFDRSxNQUFNLEVBQUUsU0FBUztnQkFDakIsR0FBRyxFQUFFLGVBQWU7Z0JBQ3BCLEtBQUssRUFBRSxFQUFFO2dCQUNULFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBSSxDQUFZLENBQUMsY0FBYyxFQUFFLEVBQUU7YUFDdEQ7WUFDRDtnQkFDRSxNQUFNLEVBQUUsYUFBYTtnQkFDckIsR0FBRyxFQUFFLGFBQWE7Z0JBQ2xCLEtBQUssRUFBRSxFQUFFO2dCQUNULFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO29CQUNmLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDdkIsT0FBTyxJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7Z0JBQzdELENBQUM7YUFDRjtZQUNEO2dCQUNFLE1BQU0sRUFBRSxNQUFNO2dCQUNkLEdBQUcsRUFBRSxZQUFZO2dCQUNqQixLQUFLLEVBQUUsRUFBRTtnQkFDVCxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNoRDtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGbGFncyB9IGZyb20gXCJAb2NsaWYvY29yZVwiO1xuaW1wb3J0IHsgQXV0aGVudGljYXRlZENvbW1hbmQgfSBmcm9tIFwiLi4vLi4vbGliL2Jhc2UtY29tbWFuZC5qc1wiO1xuaW1wb3J0IHsgYXBpQ2xpZW50IH0gZnJvbSBcIi4uLy4uL2xpYi9hcGktY2xpZW50LmpzXCI7XG5pbXBvcnQge1xuICB0YWJsZSxcbiAganNvbixcbiAgaW5mbyxcbiAgZm9ybWF0UmVsYXRpdmVUaW1lLFxuICBjb2xvcnMsXG4gIGlzSnNvbk1vZGUsXG59IGZyb20gXCIuLi8uLi9saWIvb3V0cHV0LmpzXCI7XG5cbmludGVyZmFjZSBUcmFuc2FjdGlvbiB7XG4gIGlkOiBzdHJpbmc7XG4gIGFtb3VudDogbnVtYmVyO1xuICBiYWxhbmNlX2FmdGVyOiBudW1iZXI7XG4gIHR5cGU6IFwicHVyY2hhc2VcIiB8IFwidXNhZ2VcIiB8IFwiYm9udXNcIiB8IFwicmVmdW5kXCI7XG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gIGNyZWF0ZWRfYXQ6IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIFRyYW5zYWN0aW9uc1Jlc3BvbnNlIHtcbiAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbltdO1xufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDcmVkaXRzSGlzdG9yeSBleHRlbmRzIEF1dGhlbnRpY2F0ZWRDb21tYW5kIHtcbiAgc3RhdGljIGRlc2NyaXB0aW9uID0gXCJWaWV3IGNyZWRpdCB0cmFuc2FjdGlvbiBoaXN0b3J5XCI7XG5cbiAgc3RhdGljIGV4YW1wbGVzID0gW1xuICAgIFwiPCU9IGNvbmZpZy5iaW4gJT4gY3JlZGl0cyBoaXN0b3J5XCIsXG4gICAgXCI8JT0gY29uZmlnLmJpbiAlPiBjcmVkaXRzIGhpc3RvcnkgLS1saW1pdCAxMFwiLFxuICAgIFwiPCU9IGNvbmZpZy5iaW4gJT4gY3JlZGl0cyBoaXN0b3J5IC0tanNvblwiLFxuICBdO1xuXG4gIHN0YXRpYyBmbGFncyA9IHtcbiAgICAuLi5BdXRoZW50aWNhdGVkQ29tbWFuZC5iYXNlRmxhZ3MsXG4gICAgbGltaXQ6IEZsYWdzLmludGVnZXIoe1xuICAgICAgY2hhcjogXCJsXCIsXG4gICAgICBkZXNjcmlwdGlvbjogXCJOdW1iZXIgb2YgdHJhbnNhY3Rpb25zIHRvIHNob3dcIixcbiAgICAgIGRlZmF1bHQ6IDIwLFxuICAgIH0pLFxuICB9O1xuXG4gIGFzeW5jIHJ1bigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCB7IGZsYWdzIH0gPSBhd2FpdCB0aGlzLnBhcnNlKENyZWRpdHNIaXN0b3J5KTtcblxuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgYXBpQ2xpZW50LmdldDxUcmFuc2FjdGlvbnNSZXNwb25zZT4oXG4gICAgICBcIi9hcGkvdjEvY3JlZGl0cy90cmFuc2FjdGlvbnNcIixcbiAgICAgIHsgbGltaXQ6IGZsYWdzLmxpbWl0IH0sXG4gICAgKTtcblxuICAgIGlmIChpc0pzb25Nb2RlKCkpIHtcbiAgICAgIGpzb24ocmVzcG9uc2UudHJhbnNhY3Rpb25zKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAocmVzcG9uc2UudHJhbnNhY3Rpb25zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgaW5mbyhcIk5vIHRyYW5zYWN0aW9ucyBmb3VuZFwiKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zb2xlLmxvZygpO1xuXG4gICAgdGFibGUocmVzcG9uc2UudHJhbnNhY3Rpb25zLCBbXG4gICAgICB7XG4gICAgICAgIGhlYWRlcjogXCJUeXBlXCIsXG4gICAgICAgIGtleTogXCJ0eXBlXCIsXG4gICAgICAgIHdpZHRoOiAxMCxcbiAgICAgICAgZm9ybWF0dGVyOiAodikgPT4ge1xuICAgICAgICAgIHN3aXRjaCAodikge1xuICAgICAgICAgICAgY2FzZSBcInB1cmNoYXNlXCI6XG4gICAgICAgICAgICAgIHJldHVybiBjb2xvcnMuc3VjY2VzcyhcInB1cmNoYXNlXCIpO1xuICAgICAgICAgICAgY2FzZSBcInVzYWdlXCI6XG4gICAgICAgICAgICAgIHJldHVybiBjb2xvcnMud2FybmluZyhcInVzYWdlXCIpO1xuICAgICAgICAgICAgY2FzZSBcImJvbnVzXCI6XG4gICAgICAgICAgICAgIHJldHVybiBjb2xvcnMucHJpbWFyeShcImJvbnVzXCIpO1xuICAgICAgICAgICAgY2FzZSBcInJlZnVuZFwiOlxuICAgICAgICAgICAgICByZXR1cm4gY29sb3JzLmluZm8oXCJyZWZ1bmRcIik7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICByZXR1cm4gU3RyaW5nKHYpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGhlYWRlcjogXCJBbW91bnRcIixcbiAgICAgICAga2V5OiBcImFtb3VudFwiLFxuICAgICAgICB3aWR0aDogMTIsXG4gICAgICAgIGZvcm1hdHRlcjogKHYpID0+IHtcbiAgICAgICAgICBjb25zdCBudW0gPSB2IGFzIG51bWJlcjtcbiAgICAgICAgICBpZiAobnVtID4gMCkge1xuICAgICAgICAgICAgcmV0dXJuIGNvbG9ycy5zdWNjZXNzKGArJHtudW0udG9Mb2NhbGVTdHJpbmcoKX1gKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIGNvbG9ycy5lcnJvcihudW0udG9Mb2NhbGVTdHJpbmcoKSk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBoZWFkZXI6IFwiQmFsYW5jZVwiLFxuICAgICAgICBrZXk6IFwiYmFsYW5jZV9hZnRlclwiLFxuICAgICAgICB3aWR0aDogMTIsXG4gICAgICAgIGZvcm1hdHRlcjogKHYpID0+IGAkeyh2IGFzIG51bWJlcikudG9Mb2NhbGVTdHJpbmcoKX1gLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaGVhZGVyOiBcIkRlc2NyaXB0aW9uXCIsXG4gICAgICAgIGtleTogXCJkZXNjcmlwdGlvblwiLFxuICAgICAgICB3aWR0aDogMzUsXG4gICAgICAgIGZvcm1hdHRlcjogKHYpID0+IHtcbiAgICAgICAgICBjb25zdCBkZXNjID0gU3RyaW5nKHYpO1xuICAgICAgICAgIHJldHVybiBkZXNjLmxlbmd0aCA+IDMyID8gZGVzYy5zbGljZSgwLCAzMikgKyBcIi4uLlwiIDogZGVzYztcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGhlYWRlcjogXCJXaGVuXCIsXG4gICAgICAgIGtleTogXCJjcmVhdGVkX2F0XCIsXG4gICAgICAgIHdpZHRoOiAxMixcbiAgICAgICAgZm9ybWF0dGVyOiAodikgPT4gZm9ybWF0UmVsYXRpdmVUaW1lKFN0cmluZyh2KSksXG4gICAgICB9LFxuICAgIF0pO1xuICB9XG59XG4iXX0=
@@ -25,7 +25,7 @@ export default class KeysCreate extends AuthenticatedCommand {
25
25
  };
26
26
  async run() {
27
27
  const { flags } = await this.parse(KeysCreate);
28
- const response = await apiClient.post("/api/keys", {
28
+ const response = await apiClient.post("/api/v1/account/keys", {
29
29
  name: flags.name,
30
30
  type: flags.type,
31
31
  });
@@ -35,7 +35,7 @@ export default class KeysCreate extends AuthenticatedCommand {
35
35
  }
36
36
  success("API key created", {
37
37
  Name: response.name,
38
- "Key ID": response.keyId,
38
+ "Key ID": response.id,
39
39
  Type: flags.type === "test" ? colors.warning("test") : colors.success("live"),
40
40
  });
41
41
  console.log();
@@ -44,4 +44,4 @@ export default class KeysCreate extends AuthenticatedCommand {
44
44
  console.log(colors.dim("Store this key securely. It provides access to your Sendly account."));
45
45
  }
46
46
  }
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1hbmRzL2tleXMvY3JlYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3BELE9BQU8sRUFDTCxPQUFPLEVBQ1AsSUFBSSxFQUNKLElBQUksRUFDSixNQUFNLEVBQ04sU0FBUyxFQUNULFVBQVUsR0FDWCxNQUFNLHFCQUFxQixDQUFDO0FBWTdCLE1BQU0sQ0FBQyxPQUFPLE9BQU8sVUFBVyxTQUFRLG9CQUFvQjtJQUMxRCxNQUFNLENBQUMsV0FBVyxHQUFHLHNCQUFzQixDQUFDO0lBRTVDLE1BQU0sQ0FBQyxRQUFRLEdBQUc7UUFDaEIsbURBQW1EO1FBQ25ELCtEQUErRDtRQUMvRCxtRUFBbUU7S0FDcEUsQ0FBQztJQUVGLE1BQU0sQ0FBQyxLQUFLLEdBQUc7UUFDYixHQUFHLG9CQUFvQixDQUFDLFNBQVM7UUFDakMsSUFBSSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDakIsSUFBSSxFQUFFLEdBQUc7WUFDVCxXQUFXLEVBQUUsc0JBQXNCO1lBQ25DLFFBQVEsRUFBRSxJQUFJO1NBQ2YsQ0FBQztRQUNGLElBQUksRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQ2pCLElBQUksRUFBRSxHQUFHO1lBQ1QsV0FBVyxFQUFFLHlCQUF5QjtZQUN0QyxPQUFPLEVBQUUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDO1lBQ3pCLE9BQU8sRUFBRSxNQUFNO1NBQ2hCLENBQUM7S0FDSCxDQUFDO0lBRUYsS0FBSyxDQUFDLEdBQUc7UUFDUCxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRS9DLE1BQU0sUUFBUSxHQUFHLE1BQU0sU0FBUyxDQUFDLElBQUksQ0FBb0IsV0FBVyxFQUFFO1lBQ3BFLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7U0FDakIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxVQUFVLEVBQUUsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNmLE9BQU87UUFDVCxDQUFDO1FBRUQsT0FBTyxDQUFDLGlCQUFpQixFQUFFO1lBQ3pCLElBQUksRUFBRSxRQUFRLENBQUMsSUFBSTtZQUNuQixRQUFRLEVBQUUsUUFBUSxDQUFDLEtBQUs7WUFDeEIsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztTQUM5RSxDQUFDLENBQUM7UUFFSCxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDZCxJQUFJLENBQUMsMkRBQTJELENBQUMsQ0FBQztRQUNsRSxTQUFTLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRXhCLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxxRUFBcUUsQ0FBQyxDQUFDLENBQUM7SUFDakcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZsYWdzIH0gZnJvbSBcIkBvY2xpZi9jb3JlXCI7XG5pbXBvcnQgeyBBdXRoZW50aWNhdGVkQ29tbWFuZCB9IGZyb20gXCIuLi8uLi9saWIvYmFzZS1jb21tYW5kLmpzXCI7XG5pbXBvcnQgeyBhcGlDbGllbnQgfSBmcm9tIFwiLi4vLi4vbGliL2FwaS1jbGllbnQuanNcIjtcbmltcG9ydCB7XG4gIHN1Y2Nlc3MsXG4gIHdhcm4sXG4gIGpzb24sXG4gIGNvbG9ycyxcbiAgY29kZUJsb2NrLFxuICBpc0pzb25Nb2RlLFxufSBmcm9tIFwiLi4vLi4vbGliL291dHB1dC5qc1wiO1xuXG5pbnRlcmZhY2UgQ3JlYXRlS2V5UmVzcG9uc2Uge1xuICBpZDogc3RyaW5nO1xuICBrZXlJZDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIGtleTogc3RyaW5nOyAvLyBPbmx5IHJldHVybmVkIG9uIGNyZWF0aW9uXG4gIGtleVByZWZpeDogc3RyaW5nO1xuICB0eXBlOiBcInRlc3RcIiB8IFwibGl2ZVwiO1xuICBjcmVhdGVkQXQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgS2V5c0NyZWF0ZSBleHRlbmRzIEF1dGhlbnRpY2F0ZWRDb21tYW5kIHtcbiAgc3RhdGljIGRlc2NyaXB0aW9uID0gXCJDcmVhdGUgYSBuZXcgQVBJIGtleVwiO1xuXG4gIHN0YXRpYyBleGFtcGxlcyA9IFtcbiAgICAnPCU9IGNvbmZpZy5iaW4gJT4ga2V5cyBjcmVhdGUgLS1uYW1lIFwiUHJvZHVjdGlvblwiJyxcbiAgICAnPCU9IGNvbmZpZy5iaW4gJT4ga2V5cyBjcmVhdGUgLS1uYW1lIFwiQ0kgVGVzdGluZ1wiIC0tdHlwZSB0ZXN0JyxcbiAgICAnPCU9IGNvbmZpZy5iaW4gJT4ga2V5cyBjcmVhdGUgLS1uYW1lIFwiQmFja2VuZFwiIC0tdHlwZSBsaXZlIC0tanNvbicsXG4gIF07XG5cbiAgc3RhdGljIGZsYWdzID0ge1xuICAgIC4uLkF1dGhlbnRpY2F0ZWRDb21tYW5kLmJhc2VGbGFncyxcbiAgICBuYW1lOiBGbGFncy5zdHJpbmcoe1xuICAgICAgY2hhcjogXCJuXCIsXG4gICAgICBkZXNjcmlwdGlvbjogXCJOYW1lIGZvciB0aGUgQVBJIGtleVwiLFxuICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgfSksXG4gICAgdHlwZTogRmxhZ3Muc3RyaW5nKHtcbiAgICAgIGNoYXI6IFwidFwiLFxuICAgICAgZGVzY3JpcHRpb246IFwiS2V5IHR5cGUgKHRlc3Qgb3IgbGl2ZSlcIixcbiAgICAgIG9wdGlvbnM6IFtcInRlc3RcIiwgXCJsaXZlXCJdLFxuICAgICAgZGVmYXVsdDogXCJ0ZXN0XCIsXG4gICAgfSksXG4gIH07XG5cbiAgYXN5bmMgcnVuKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHsgZmxhZ3MgfSA9IGF3YWl0IHRoaXMucGFyc2UoS2V5c0NyZWF0ZSk7XG5cbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGFwaUNsaWVudC5wb3N0PENyZWF0ZUtleVJlc3BvbnNlPihcIi9hcGkva2V5c1wiLCB7XG4gICAgICBuYW1lOiBmbGFncy5uYW1lLFxuICAgICAgdHlwZTogZmxhZ3MudHlwZSxcbiAgICB9KTtcblxuICAgIGlmIChpc0pzb25Nb2RlKCkpIHtcbiAgICAgIGpzb24ocmVzcG9uc2UpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHN1Y2Nlc3MoXCJBUEkga2V5IGNyZWF0ZWRcIiwge1xuICAgICAgTmFtZTogcmVzcG9uc2UubmFtZSxcbiAgICAgIFwiS2V5IElEXCI6IHJlc3BvbnNlLmtleUlkLFxuICAgICAgVHlwZTogZmxhZ3MudHlwZSA9PT0gXCJ0ZXN0XCIgPyBjb2xvcnMud2FybmluZyhcInRlc3RcIikgOiBjb2xvcnMuc3VjY2VzcyhcImxpdmVcIiksXG4gICAgfSk7XG5cbiAgICBjb25zb2xlLmxvZygpO1xuICAgIHdhcm4oXCJDb3B5IHlvdXIgQVBJIGtleSBub3cuIFlvdSB3b24ndCBiZSBhYmxlIHRvIHNlZSBpdCBhZ2FpbiFcIik7XG4gICAgY29kZUJsb2NrKHJlc3BvbnNlLmtleSk7XG5cbiAgICBjb25zb2xlLmxvZyhjb2xvcnMuZGltKFwiU3RvcmUgdGhpcyBrZXkgc2VjdXJlbHkuIEl0IHByb3ZpZGVzIGFjY2VzcyB0byB5b3VyIFNlbmRseSBhY2NvdW50LlwiKSk7XG4gIH1cbn1cbiJdfQ==
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1hbmRzL2tleXMvY3JlYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3BELE9BQU8sRUFDTCxPQUFPLEVBQ1AsSUFBSSxFQUNKLElBQUksRUFDSixNQUFNLEVBQ04sU0FBUyxFQUNULFVBQVUsR0FDWCxNQUFNLHFCQUFxQixDQUFDO0FBVzdCLE1BQU0sQ0FBQyxPQUFPLE9BQU8sVUFBVyxTQUFRLG9CQUFvQjtJQUMxRCxNQUFNLENBQUMsV0FBVyxHQUFHLHNCQUFzQixDQUFDO0lBRTVDLE1BQU0sQ0FBQyxRQUFRLEdBQUc7UUFDaEIsbURBQW1EO1FBQ25ELCtEQUErRDtRQUMvRCxtRUFBbUU7S0FDcEUsQ0FBQztJQUVGLE1BQU0sQ0FBQyxLQUFLLEdBQUc7UUFDYixHQUFHLG9CQUFvQixDQUFDLFNBQVM7UUFDakMsSUFBSSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDakIsSUFBSSxFQUFFLEdBQUc7WUFDVCxXQUFXLEVBQUUsc0JBQXNCO1lBQ25DLFFBQVEsRUFBRSxJQUFJO1NBQ2YsQ0FBQztRQUNGLElBQUksRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQ2pCLElBQUksRUFBRSxHQUFHO1lBQ1QsV0FBVyxFQUFFLHlCQUF5QjtZQUN0QyxPQUFPLEVBQUUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDO1lBQ3pCLE9BQU8sRUFBRSxNQUFNO1NBQ2hCLENBQUM7S0FDSCxDQUFDO0lBRUYsS0FBSyxDQUFDLEdBQUc7UUFDUCxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRS9DLE1BQU0sUUFBUSxHQUFHLE1BQU0sU0FBUyxDQUFDLElBQUksQ0FDbkMsc0JBQXNCLEVBQ3RCO1lBQ0UsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJO1lBQ2hCLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtTQUNqQixDQUNGLENBQUM7UUFFRixJQUFJLFVBQVUsRUFBRSxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2YsT0FBTztRQUNULENBQUM7UUFFRCxPQUFPLENBQUMsaUJBQWlCLEVBQUU7WUFDekIsSUFBSSxFQUFFLFFBQVEsQ0FBQyxJQUFJO1lBQ25CLFFBQVEsRUFBRSxRQUFRLENBQUMsRUFBRTtZQUNyQixJQUFJLEVBQ0YsS0FBSyxDQUFDLElBQUksS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO1NBQzFFLENBQUMsQ0FBQztRQUVILE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNkLElBQUksQ0FBQywyREFBMkQsQ0FBQyxDQUFDO1FBQ2xFLFNBQVMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFeEIsT0FBTyxDQUFDLEdBQUcsQ0FDVCxNQUFNLENBQUMsR0FBRyxDQUNSLHFFQUFxRSxDQUN0RSxDQUNGLENBQUM7SUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmxhZ3MgfSBmcm9tIFwiQG9jbGlmL2NvcmVcIjtcbmltcG9ydCB7IEF1dGhlbnRpY2F0ZWRDb21tYW5kIH0gZnJvbSBcIi4uLy4uL2xpYi9iYXNlLWNvbW1hbmQuanNcIjtcbmltcG9ydCB7IGFwaUNsaWVudCB9IGZyb20gXCIuLi8uLi9saWIvYXBpLWNsaWVudC5qc1wiO1xuaW1wb3J0IHtcbiAgc3VjY2VzcyxcbiAgd2FybixcbiAganNvbixcbiAgY29sb3JzLFxuICBjb2RlQmxvY2ssXG4gIGlzSnNvbk1vZGUsXG59IGZyb20gXCIuLi8uLi9saWIvb3V0cHV0LmpzXCI7XG5cbmludGVyZmFjZSBDcmVhdGVLZXlSZXNwb25zZSB7XG4gIGlkOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAga2V5OiBzdHJpbmc7IC8vIE9ubHkgcmV0dXJuZWQgb24gY3JlYXRpb25cbiAga2V5UHJlZml4OiBzdHJpbmc7XG4gIHR5cGU6IFwidGVzdFwiIHwgXCJsaXZlXCI7XG4gIGNyZWF0ZWRBdDogc3RyaW5nO1xufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBLZXlzQ3JlYXRlIGV4dGVuZHMgQXV0aGVudGljYXRlZENvbW1hbmQge1xuICBzdGF0aWMgZGVzY3JpcHRpb24gPSBcIkNyZWF0ZSBhIG5ldyBBUEkga2V5XCI7XG5cbiAgc3RhdGljIGV4YW1wbGVzID0gW1xuICAgICc8JT0gY29uZmlnLmJpbiAlPiBrZXlzIGNyZWF0ZSAtLW5hbWUgXCJQcm9kdWN0aW9uXCInLFxuICAgICc8JT0gY29uZmlnLmJpbiAlPiBrZXlzIGNyZWF0ZSAtLW5hbWUgXCJDSSBUZXN0aW5nXCIgLS10eXBlIHRlc3QnLFxuICAgICc8JT0gY29uZmlnLmJpbiAlPiBrZXlzIGNyZWF0ZSAtLW5hbWUgXCJCYWNrZW5kXCIgLS10eXBlIGxpdmUgLS1qc29uJyxcbiAgXTtcblxuICBzdGF0aWMgZmxhZ3MgPSB7XG4gICAgLi4uQXV0aGVudGljYXRlZENvbW1hbmQuYmFzZUZsYWdzLFxuICAgIG5hbWU6IEZsYWdzLnN0cmluZyh7XG4gICAgICBjaGFyOiBcIm5cIixcbiAgICAgIGRlc2NyaXB0aW9uOiBcIk5hbWUgZm9yIHRoZSBBUEkga2V5XCIsXG4gICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICB9KSxcbiAgICB0eXBlOiBGbGFncy5zdHJpbmcoe1xuICAgICAgY2hhcjogXCJ0XCIsXG4gICAgICBkZXNjcmlwdGlvbjogXCJLZXkgdHlwZSAodGVzdCBvciBsaXZlKVwiLFxuICAgICAgb3B0aW9uczogW1widGVzdFwiLCBcImxpdmVcIl0sXG4gICAgICBkZWZhdWx0OiBcInRlc3RcIixcbiAgICB9KSxcbiAgfTtcblxuICBhc3luYyBydW4oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgeyBmbGFncyB9ID0gYXdhaXQgdGhpcy5wYXJzZShLZXlzQ3JlYXRlKTtcblxuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgYXBpQ2xpZW50LnBvc3Q8Q3JlYXRlS2V5UmVzcG9uc2U+KFxuICAgICAgXCIvYXBpL3YxL2FjY291bnQva2V5c1wiLFxuICAgICAge1xuICAgICAgICBuYW1lOiBmbGFncy5uYW1lLFxuICAgICAgICB0eXBlOiBmbGFncy50eXBlLFxuICAgICAgfSxcbiAgICApO1xuXG4gICAgaWYgKGlzSnNvbk1vZGUoKSkge1xuICAgICAganNvbihyZXNwb25zZSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc3VjY2VzcyhcIkFQSSBrZXkgY3JlYXRlZFwiLCB7XG4gICAgICBOYW1lOiByZXNwb25zZS5uYW1lLFxuICAgICAgXCJLZXkgSURcIjogcmVzcG9uc2UuaWQsXG4gICAgICBUeXBlOlxuICAgICAgICBmbGFncy50eXBlID09PSBcInRlc3RcIiA/IGNvbG9ycy53YXJuaW5nKFwidGVzdFwiKSA6IGNvbG9ycy5zdWNjZXNzKFwibGl2ZVwiKSxcbiAgICB9KTtcblxuICAgIGNvbnNvbGUubG9nKCk7XG4gICAgd2FybihcIkNvcHkgeW91ciBBUEkga2V5IG5vdy4gWW91IHdvbid0IGJlIGFibGUgdG8gc2VlIGl0IGFnYWluIVwiKTtcbiAgICBjb2RlQmxvY2socmVzcG9uc2Uua2V5KTtcblxuICAgIGNvbnNvbGUubG9nKFxuICAgICAgY29sb3JzLmRpbShcbiAgICAgICAgXCJTdG9yZSB0aGlzIGtleSBzZWN1cmVseS4gSXQgcHJvdmlkZXMgYWNjZXNzIHRvIHlvdXIgU2VuZGx5IGFjY291bnQuXCIsXG4gICAgICApLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -45,16 +45,19 @@ export default class KeysRevoke extends AuthenticatedCommand {
45
45
  return;
46
46
  }
47
47
  }
48
- // Find the key by keyId to get its internal id
49
- const keys = await apiClient.get("/api/keys");
50
- const key = keys.find((k) => k.keyId === args.keyId);
51
- if (!key) {
52
- error(`Key not found: ${args.keyId}`);
53
- this.exit(1);
48
+ // Revoke the key directly by ID
49
+ try {
50
+ await apiClient.patch(`/api/v1/account/keys/${args.keyId}/revoke`, {
51
+ reason: flags.reason || "Revoked via CLI",
52
+ });
53
+ }
54
+ catch (err) {
55
+ if (err.message?.includes("not_found") || err.message?.includes("404")) {
56
+ error(`Key not found: ${args.keyId}`);
57
+ this.exit(1);
58
+ }
59
+ throw err;
54
60
  }
55
- await apiClient.patch(`/api/keys/${key.id}/revoke`, {
56
- reason: flags.reason || "Revoked via CLI",
57
- });
58
61
  if (isJsonMode()) {
59
62
  json({ success: true, keyId: args.keyId, revoked: true });
60
63
  return;
@@ -65,4 +68,4 @@ export default class KeysRevoke extends AuthenticatedCommand {
65
68
  });
66
69
  }
67
70
  }
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2b2tlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1hbmRzL2tleXMvcmV2b2tlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQy9FLE9BQU8sUUFBUSxNQUFNLFVBQVUsQ0FBQztBQUVoQyxNQUFNLENBQUMsT0FBTyxPQUFPLFVBQVcsU0FBUSxvQkFBb0I7SUFDMUQsTUFBTSxDQUFDLFdBQVcsR0FBRyxtQkFBbUIsQ0FBQztJQUV6QyxNQUFNLENBQUMsUUFBUSxHQUFHO1FBQ2hCLDBDQUEwQztRQUMxQyxpRUFBaUU7UUFDakUsZ0RBQWdEO0tBQ2pELENBQUM7SUFFRixNQUFNLENBQUMsSUFBSSxHQUFHO1FBQ1osS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUM7WUFDakIsV0FBVyxFQUFFLHFDQUFxQztZQUNsRCxRQUFRLEVBQUUsSUFBSTtTQUNmLENBQUM7S0FDSCxDQUFDO0lBRUYsTUFBTSxDQUFDLEtBQUssR0FBRztRQUNiLEdBQUcsb0JBQW9CLENBQUMsU0FBUztRQUNqQyxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQztZQUNuQixJQUFJLEVBQUUsR0FBRztZQUNULFdBQVcsRUFBRSw2QkFBNkI7U0FDM0MsQ0FBQztRQUNGLEdBQUcsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ2pCLElBQUksRUFBRSxHQUFHO1lBQ1QsV0FBVyxFQUFFLDBCQUEwQjtZQUN2QyxPQUFPLEVBQUUsS0FBSztTQUNmLENBQUM7S0FDSCxDQUFDO0lBRUYsS0FBSyxDQUFDLEdBQUc7UUFDUCxNQUFNLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUVyRCxxQkFBcUI7UUFDckIsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNmLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxNQUFNLFFBQVEsQ0FBQyxNQUFNLENBQUM7Z0JBQ3hDO29CQUNFLElBQUksRUFBRSxTQUFTO29CQUNmLElBQUksRUFBRSxTQUFTO29CQUNmLE9BQU8sRUFBRSxtQ0FBbUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLDBCQUEwQjtvQkFDN0YsT0FBTyxFQUFFLEtBQUs7aUJBQ2Y7YUFDRixDQUFDLENBQUM7WUFFSCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ2IsS0FBSyxDQUFDLHNCQUFzQixDQUFDLENBQUM7Z0JBQzlCLE9BQU87WUFDVCxDQUFDO1FBQ0gsQ0FBQztRQUVELCtDQUErQztRQUMvQyxNQUFNLElBQUksR0FBRyxNQUFNLFNBQVMsQ0FBQyxHQUFHLENBQzlCLFdBQVcsQ0FDWixDQUFDO1FBQ0YsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFckQsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ1QsS0FBSyxDQUFDLGtCQUFrQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUN0QyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2YsQ0FBQztRQUVELE1BQU0sU0FBUyxDQUFDLEtBQUssQ0FBQyxhQUFhLEdBQUcsQ0FBQyxFQUFFLFNBQVMsRUFBRTtZQUNsRCxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU0sSUFBSSxpQkFBaUI7U0FDMUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxVQUFVLEVBQUUsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7WUFDMUQsT0FBTztRQUNULENBQUM7UUFFRCxPQUFPLENBQUMsaUJBQWlCLEVBQUU7WUFDekIsUUFBUSxFQUFFLElBQUksQ0FBQyxLQUFLO1lBQ3BCLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTSxJQUFJLGlCQUFpQjtTQUMxQyxDQUFDLENBQUM7SUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXJncywgRmxhZ3MgfSBmcm9tIFwiQG9jbGlmL2NvcmVcIjtcbmltcG9ydCB7IEF1dGhlbnRpY2F0ZWRDb21tYW5kIH0gZnJvbSBcIi4uLy4uL2xpYi9iYXNlLWNvbW1hbmQuanNcIjtcbmltcG9ydCB7IGFwaUNsaWVudCB9IGZyb20gXCIuLi8uLi9saWIvYXBpLWNsaWVudC5qc1wiO1xuaW1wb3J0IHsgc3VjY2VzcywgZXJyb3IsIGpzb24sIGNvbG9ycywgaXNKc29uTW9kZSB9IGZyb20gXCIuLi8uLi9saWIvb3V0cHV0LmpzXCI7XG5pbXBvcnQgaW5xdWlyZXIgZnJvbSBcImlucXVpcmVyXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEtleXNSZXZva2UgZXh0ZW5kcyBBdXRoZW50aWNhdGVkQ29tbWFuZCB7XG4gIHN0YXRpYyBkZXNjcmlwdGlvbiA9IFwiUmV2b2tlIGFuIEFQSSBrZXlcIjtcblxuICBzdGF0aWMgZXhhbXBsZXMgPSBbXG4gICAgXCI8JT0gY29uZmlnLmJpbiAlPiBrZXlzIHJldm9rZSBrZXlfYWJjMTIzXCIsXG4gICAgJzwlPSBjb25maWcuYmluICU+IGtleXMgcmV2b2tlIGtleV9hYmMxMjMgLS1yZWFzb24gXCJDb21wcm9taXNlZFwiJyxcbiAgICBcIjwlPSBjb25maWcuYmluICU+IGtleXMgcmV2b2tlIGtleV9hYmMxMjMgLS15ZXNcIixcbiAgXTtcblxuICBzdGF0aWMgYXJncyA9IHtcbiAgICBrZXlJZDogQXJncy5zdHJpbmcoe1xuICAgICAgZGVzY3JpcHRpb246IFwiS2V5IElEIHRvIHJldm9rZSAoZS5nLiwga2V5X2FiYzEyMylcIixcbiAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgIH0pLFxuICB9O1xuXG4gIHN0YXRpYyBmbGFncyA9IHtcbiAgICAuLi5BdXRoZW50aWNhdGVkQ29tbWFuZC5iYXNlRmxhZ3MsXG4gICAgcmVhc29uOiBGbGFncy5zdHJpbmcoe1xuICAgICAgY2hhcjogXCJyXCIsXG4gICAgICBkZXNjcmlwdGlvbjogXCJSZWFzb24gZm9yIHJldm9raW5nIHRoZSBrZXlcIixcbiAgICB9KSxcbiAgICB5ZXM6IEZsYWdzLmJvb2xlYW4oe1xuICAgICAgY2hhcjogXCJ5XCIsXG4gICAgICBkZXNjcmlwdGlvbjogXCJTa2lwIGNvbmZpcm1hdGlvbiBwcm9tcHRcIixcbiAgICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgIH0pLFxuICB9O1xuXG4gIGFzeW5jIHJ1bigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCB7IGFyZ3MsIGZsYWdzIH0gPSBhd2FpdCB0aGlzLnBhcnNlKEtleXNSZXZva2UpO1xuXG4gICAgLy8gQ29uZmlybSByZXZvY2F0aW9uXG4gICAgaWYgKCFmbGFncy55ZXMpIHtcbiAgICAgIGNvbnN0IHsgY29uZmlybSB9ID0gYXdhaXQgaW5xdWlyZXIucHJvbXB0KFtcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6IFwiY29uZmlybVwiLFxuICAgICAgICAgIG5hbWU6IFwiY29uZmlybVwiLFxuICAgICAgICAgIG1lc3NhZ2U6IGBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gcmV2b2tlICR7Y29sb3JzLmNvZGUoYXJncy5rZXlJZCl9PyBUaGlzIGNhbm5vdCBiZSB1bmRvbmUuYCxcbiAgICAgICAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgIF0pO1xuXG4gICAgICBpZiAoIWNvbmZpcm0pIHtcbiAgICAgICAgZXJyb3IoXCJSZXZvY2F0aW9uIGNhbmNlbGxlZFwiKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEZpbmQgdGhlIGtleSBieSBrZXlJZCB0byBnZXQgaXRzIGludGVybmFsIGlkXG4gICAgY29uc3Qga2V5cyA9IGF3YWl0IGFwaUNsaWVudC5nZXQ8QXJyYXk8eyBpZDogc3RyaW5nOyBrZXlJZDogc3RyaW5nIH0+PihcbiAgICAgIFwiL2FwaS9rZXlzXCJcbiAgICApO1xuICAgIGNvbnN0IGtleSA9IGtleXMuZmluZCgoaykgPT4gay5rZXlJZCA9PT0gYXJncy5rZXlJZCk7XG5cbiAgICBpZiAoIWtleSkge1xuICAgICAgZXJyb3IoYEtleSBub3QgZm91bmQ6ICR7YXJncy5rZXlJZH1gKTtcbiAgICAgIHRoaXMuZXhpdCgxKTtcbiAgICB9XG5cbiAgICBhd2FpdCBhcGlDbGllbnQucGF0Y2goYC9hcGkva2V5cy8ke2tleS5pZH0vcmV2b2tlYCwge1xuICAgICAgcmVhc29uOiBmbGFncy5yZWFzb24gfHwgXCJSZXZva2VkIHZpYSBDTElcIixcbiAgICB9KTtcblxuICAgIGlmIChpc0pzb25Nb2RlKCkpIHtcbiAgICAgIGpzb24oeyBzdWNjZXNzOiB0cnVlLCBrZXlJZDogYXJncy5rZXlJZCwgcmV2b2tlZDogdHJ1ZSB9KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBzdWNjZXNzKFwiQVBJIGtleSByZXZva2VkXCIsIHtcbiAgICAgIFwiS2V5IElEXCI6IGFyZ3Mua2V5SWQsXG4gICAgICBSZWFzb246IGZsYWdzLnJlYXNvbiB8fCBcIlJldm9rZWQgdmlhIENMSVwiLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2b2tlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1hbmRzL2tleXMvcmV2b2tlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQy9FLE9BQU8sUUFBUSxNQUFNLFVBQVUsQ0FBQztBQUVoQyxNQUFNLENBQUMsT0FBTyxPQUFPLFVBQVcsU0FBUSxvQkFBb0I7SUFDMUQsTUFBTSxDQUFDLFdBQVcsR0FBRyxtQkFBbUIsQ0FBQztJQUV6QyxNQUFNLENBQUMsUUFBUSxHQUFHO1FBQ2hCLDBDQUEwQztRQUMxQyxpRUFBaUU7UUFDakUsZ0RBQWdEO0tBQ2pELENBQUM7SUFFRixNQUFNLENBQUMsSUFBSSxHQUFHO1FBQ1osS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUM7WUFDakIsV0FBVyxFQUFFLHFDQUFxQztZQUNsRCxRQUFRLEVBQUUsSUFBSTtTQUNmLENBQUM7S0FDSCxDQUFDO0lBRUYsTUFBTSxDQUFDLEtBQUssR0FBRztRQUNiLEdBQUcsb0JBQW9CLENBQUMsU0FBUztRQUNqQyxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQztZQUNuQixJQUFJLEVBQUUsR0FBRztZQUNULFdBQVcsRUFBRSw2QkFBNkI7U0FDM0MsQ0FBQztRQUNGLEdBQUcsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ2pCLElBQUksRUFBRSxHQUFHO1lBQ1QsV0FBVyxFQUFFLDBCQUEwQjtZQUN2QyxPQUFPLEVBQUUsS0FBSztTQUNmLENBQUM7S0FDSCxDQUFDO0lBRUYsS0FBSyxDQUFDLEdBQUc7UUFDUCxNQUFNLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUVyRCxxQkFBcUI7UUFDckIsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNmLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxNQUFNLFFBQVEsQ0FBQyxNQUFNLENBQUM7Z0JBQ3hDO29CQUNFLElBQUksRUFBRSxTQUFTO29CQUNmLElBQUksRUFBRSxTQUFTO29CQUNmLE9BQU8sRUFBRSxtQ0FBbUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLDBCQUEwQjtvQkFDN0YsT0FBTyxFQUFFLEtBQUs7aUJBQ2Y7YUFDRixDQUFDLENBQUM7WUFFSCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ2IsS0FBSyxDQUFDLHNCQUFzQixDQUFDLENBQUM7Z0JBQzlCLE9BQU87WUFDVCxDQUFDO1FBQ0gsQ0FBQztRQUVELGdDQUFnQztRQUNoQyxJQUFJLENBQUM7WUFDSCxNQUFNLFNBQVMsQ0FBQyxLQUFLLENBQUMsd0JBQXdCLElBQUksQ0FBQyxLQUFLLFNBQVMsRUFBRTtnQkFDakUsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNLElBQUksaUJBQWlCO2FBQzFDLENBQUMsQ0FBQztRQUNMLENBQUM7UUFBQyxPQUFPLEdBQVEsRUFBRSxDQUFDO1lBQ2xCLElBQUksR0FBRyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksR0FBRyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDdkUsS0FBSyxDQUFDLGtCQUFrQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztnQkFDdEMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNmLENBQUM7WUFDRCxNQUFNLEdBQUcsQ0FBQztRQUNaLENBQUM7UUFFRCxJQUFJLFVBQVUsRUFBRSxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUMxRCxPQUFPO1FBQ1QsQ0FBQztRQUVELE9BQU8sQ0FBQyxpQkFBaUIsRUFBRTtZQUN6QixRQUFRLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDcEIsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNLElBQUksaUJBQWlCO1NBQzFDLENBQUMsQ0FBQztJQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcmdzLCBGbGFncyB9IGZyb20gXCJAb2NsaWYvY29yZVwiO1xuaW1wb3J0IHsgQXV0aGVudGljYXRlZENvbW1hbmQgfSBmcm9tIFwiLi4vLi4vbGliL2Jhc2UtY29tbWFuZC5qc1wiO1xuaW1wb3J0IHsgYXBpQ2xpZW50IH0gZnJvbSBcIi4uLy4uL2xpYi9hcGktY2xpZW50LmpzXCI7XG5pbXBvcnQgeyBzdWNjZXNzLCBlcnJvciwganNvbiwgY29sb3JzLCBpc0pzb25Nb2RlIH0gZnJvbSBcIi4uLy4uL2xpYi9vdXRwdXQuanNcIjtcbmltcG9ydCBpbnF1aXJlciBmcm9tIFwiaW5xdWlyZXJcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgS2V5c1Jldm9rZSBleHRlbmRzIEF1dGhlbnRpY2F0ZWRDb21tYW5kIHtcbiAgc3RhdGljIGRlc2NyaXB0aW9uID0gXCJSZXZva2UgYW4gQVBJIGtleVwiO1xuXG4gIHN0YXRpYyBleGFtcGxlcyA9IFtcbiAgICBcIjwlPSBjb25maWcuYmluICU+IGtleXMgcmV2b2tlIGtleV9hYmMxMjNcIixcbiAgICAnPCU9IGNvbmZpZy5iaW4gJT4ga2V5cyByZXZva2Uga2V5X2FiYzEyMyAtLXJlYXNvbiBcIkNvbXByb21pc2VkXCInLFxuICAgIFwiPCU9IGNvbmZpZy5iaW4gJT4ga2V5cyByZXZva2Uga2V5X2FiYzEyMyAtLXllc1wiLFxuICBdO1xuXG4gIHN0YXRpYyBhcmdzID0ge1xuICAgIGtleUlkOiBBcmdzLnN0cmluZyh7XG4gICAgICBkZXNjcmlwdGlvbjogXCJLZXkgSUQgdG8gcmV2b2tlIChlLmcuLCBrZXlfYWJjMTIzKVwiLFxuICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgfSksXG4gIH07XG5cbiAgc3RhdGljIGZsYWdzID0ge1xuICAgIC4uLkF1dGhlbnRpY2F0ZWRDb21tYW5kLmJhc2VGbGFncyxcbiAgICByZWFzb246IEZsYWdzLnN0cmluZyh7XG4gICAgICBjaGFyOiBcInJcIixcbiAgICAgIGRlc2NyaXB0aW9uOiBcIlJlYXNvbiBmb3IgcmV2b2tpbmcgdGhlIGtleVwiLFxuICAgIH0pLFxuICAgIHllczogRmxhZ3MuYm9vbGVhbih7XG4gICAgICBjaGFyOiBcInlcIixcbiAgICAgIGRlc2NyaXB0aW9uOiBcIlNraXAgY29uZmlybWF0aW9uIHByb21wdFwiLFxuICAgICAgZGVmYXVsdDogZmFsc2UsXG4gICAgfSksXG4gIH07XG5cbiAgYXN5bmMgcnVuKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHsgYXJncywgZmxhZ3MgfSA9IGF3YWl0IHRoaXMucGFyc2UoS2V5c1Jldm9rZSk7XG5cbiAgICAvLyBDb25maXJtIHJldm9jYXRpb25cbiAgICBpZiAoIWZsYWdzLnllcykge1xuICAgICAgY29uc3QgeyBjb25maXJtIH0gPSBhd2FpdCBpbnF1aXJlci5wcm9tcHQoW1xuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogXCJjb25maXJtXCIsXG4gICAgICAgICAgbmFtZTogXCJjb25maXJtXCIsXG4gICAgICAgICAgbWVzc2FnZTogYEFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byByZXZva2UgJHtjb2xvcnMuY29kZShhcmdzLmtleUlkKX0/IFRoaXMgY2Fubm90IGJlIHVuZG9uZS5gLFxuICAgICAgICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgXSk7XG5cbiAgICAgIGlmICghY29uZmlybSkge1xuICAgICAgICBlcnJvcihcIlJldm9jYXRpb24gY2FuY2VsbGVkXCIpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmV2b2tlIHRoZSBrZXkgZGlyZWN0bHkgYnkgSURcbiAgICB0cnkge1xuICAgICAgYXdhaXQgYXBpQ2xpZW50LnBhdGNoKGAvYXBpL3YxL2FjY291bnQva2V5cy8ke2FyZ3Mua2V5SWR9L3Jldm9rZWAsIHtcbiAgICAgICAgcmVhc29uOiBmbGFncy5yZWFzb24gfHwgXCJSZXZva2VkIHZpYSBDTElcIixcbiAgICAgIH0pO1xuICAgIH0gY2F0Y2ggKGVycjogYW55KSB7XG4gICAgICBpZiAoZXJyLm1lc3NhZ2U/LmluY2x1ZGVzKFwibm90X2ZvdW5kXCIpIHx8IGVyci5tZXNzYWdlPy5pbmNsdWRlcyhcIjQwNFwiKSkge1xuICAgICAgICBlcnJvcihgS2V5IG5vdCBmb3VuZDogJHthcmdzLmtleUlkfWApO1xuICAgICAgICB0aGlzLmV4aXQoMSk7XG4gICAgICB9XG4gICAgICB0aHJvdyBlcnI7XG4gICAgfVxuXG4gICAgaWYgKGlzSnNvbk1vZGUoKSkge1xuICAgICAganNvbih7IHN1Y2Nlc3M6IHRydWUsIGtleUlkOiBhcmdzLmtleUlkLCByZXZva2VkOiB0cnVlIH0pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHN1Y2Nlc3MoXCJBUEkga2V5IHJldm9rZWRcIiwge1xuICAgICAgXCJLZXkgSURcIjogYXJncy5rZXlJZCxcbiAgICAgIFJlYXNvbjogZmxhZ3MucmVhc29uIHx8IFwiUmV2b2tlZCB2aWEgQ0xJXCIsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,13 @@
1
+ import { AuthenticatedCommand } from "../lib/base-command.js";
2
+ export default class Send extends AuthenticatedCommand {
3
+ static description: string;
4
+ static examples: string[];
5
+ static flags: {
6
+ to: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
7
+ text: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
8
+ from: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
9
+ json: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
10
+ quiet: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
11
+ };
12
+ run(): Promise<void>;
13
+ }
@@ -0,0 +1,75 @@
1
+ import { Flags } from "@oclif/core";
2
+ import { AuthenticatedCommand } from "../lib/base-command.js";
3
+ import { apiClient } from "../lib/api-client.js";
4
+ import { success, error, json, colors, spinner, isJsonMode, } from "../lib/output.js";
5
+ export default class Send extends AuthenticatedCommand {
6
+ static description = "Send an SMS message (shortcut for 'sms send')";
7
+ static examples = [
8
+ '<%= config.bin %> send --to "+1234567890" --text "Hello!"',
9
+ '<%= config.bin %> send -t "+1234567890" -m "Meeting at 3pm"',
10
+ '<%= config.bin %> send --to "+1234567890" --text "Hello!" --json',
11
+ ];
12
+ static flags = {
13
+ ...AuthenticatedCommand.baseFlags,
14
+ to: Flags.string({
15
+ char: "t",
16
+ description: "Recipient phone number (E.164 format)",
17
+ required: true,
18
+ }),
19
+ text: Flags.string({
20
+ char: "m",
21
+ description: "Message text",
22
+ required: true,
23
+ }),
24
+ from: Flags.string({
25
+ char: "f",
26
+ description: "Sender phone number (optional, uses default if not set)",
27
+ }),
28
+ };
29
+ async run() {
30
+ const { flags } = await this.parse(Send);
31
+ const sendSpinner = spinner("Sending message...");
32
+ if (!isJsonMode()) {
33
+ sendSpinner.start();
34
+ }
35
+ try {
36
+ const response = await apiClient.post("/api/v1/messages", {
37
+ to: flags.to,
38
+ text: flags.text,
39
+ ...(flags.from && { from: flags.from }),
40
+ });
41
+ sendSpinner.stop();
42
+ if (isJsonMode()) {
43
+ json(response);
44
+ return;
45
+ }
46
+ success("Message sent", {
47
+ "Message ID": colors.code(response.id),
48
+ To: response.to,
49
+ Status: response.status === "sent"
50
+ ? colors.success(response.status)
51
+ : colors.primary(response.status),
52
+ Segments: String(response.segments),
53
+ Credits: String(response.creditsUsed),
54
+ });
55
+ }
56
+ catch (err) {
57
+ sendSpinner.stop();
58
+ if (err.message?.includes("insufficient_credits")) {
59
+ error("Insufficient credits", {
60
+ hint: `Run ${colors.code("sendly credits balance")} to check your balance`,
61
+ });
62
+ }
63
+ else if (err.message?.includes("invalid_phone")) {
64
+ error("Invalid phone number format", {
65
+ hint: "Use E.164 format: +1234567890",
66
+ });
67
+ }
68
+ else {
69
+ throw err;
70
+ }
71
+ this.exit(1);
72
+ }
73
+ }
74
+ }
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VuZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21tYW5kcy9zZW5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQVEsTUFBTSxhQUFhLENBQUM7QUFDMUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pELE9BQU8sRUFDTCxPQUFPLEVBQ1AsS0FBSyxFQUNMLElBQUksRUFDSixNQUFNLEVBQ04sT0FBTyxFQUNQLFVBQVUsR0FDWCxNQUFNLGtCQUFrQixDQUFDO0FBYTFCLE1BQU0sQ0FBQyxPQUFPLE9BQU8sSUFBSyxTQUFRLG9CQUFvQjtJQUNwRCxNQUFNLENBQUMsV0FBVyxHQUFHLCtDQUErQyxDQUFDO0lBRXJFLE1BQU0sQ0FBQyxRQUFRLEdBQUc7UUFDaEIsMkRBQTJEO1FBQzNELDZEQUE2RDtRQUM3RCxrRUFBa0U7S0FDbkUsQ0FBQztJQUVGLE1BQU0sQ0FBQyxLQUFLLEdBQUc7UUFDYixHQUFHLG9CQUFvQixDQUFDLFNBQVM7UUFDakMsRUFBRSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDZixJQUFJLEVBQUUsR0FBRztZQUNULFdBQVcsRUFBRSx1Q0FBdUM7WUFDcEQsUUFBUSxFQUFFLElBQUk7U0FDZixDQUFDO1FBQ0YsSUFBSSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDakIsSUFBSSxFQUFFLEdBQUc7WUFDVCxXQUFXLEVBQUUsY0FBYztZQUMzQixRQUFRLEVBQUUsSUFBSTtTQUNmLENBQUM7UUFDRixJQUFJLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQztZQUNqQixJQUFJLEVBQUUsR0FBRztZQUNULFdBQVcsRUFBRSx5REFBeUQ7U0FDdkUsQ0FBQztLQUNILENBQUM7SUFFRixLQUFLLENBQUMsR0FBRztRQUNQLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFekMsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFFbEQsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUM7WUFDbEIsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3RCLENBQUM7UUFFRCxJQUFJLENBQUM7WUFDSCxNQUFNLFFBQVEsR0FBRyxNQUFNLFNBQVMsQ0FBQyxJQUFJLENBQ25DLGtCQUFrQixFQUNsQjtnQkFDRSxFQUFFLEVBQUUsS0FBSyxDQUFDLEVBQUU7Z0JBQ1osSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJO2dCQUNoQixHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDeEMsQ0FDRixDQUFDO1lBRUYsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO1lBRW5CLElBQUksVUFBVSxFQUFFLEVBQUUsQ0FBQztnQkFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNmLE9BQU87WUFDVCxDQUFDO1lBRUQsT0FBTyxDQUFDLGNBQWMsRUFBRTtnQkFDdEIsWUFBWSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztnQkFDdEMsRUFBRSxFQUFFLFFBQVEsQ0FBQyxFQUFFO2dCQUNmLE1BQU0sRUFBRSxRQUFRLENBQUMsTUFBTSxLQUFLLE1BQU07b0JBQ2hDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7b0JBQ2pDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7Z0JBQ25DLFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztnQkFDbkMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDO2FBQ3RDLENBQUMsQ0FBQztRQUVMLENBQUM7UUFBQyxPQUFPLEdBQVEsRUFBRSxDQUFDO1lBQ2xCLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUVuQixJQUFJLEdBQUcsQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLHNCQUFzQixDQUFDLEVBQUUsQ0FBQztnQkFDbEQsS0FBSyxDQUFDLHNCQUFzQixFQUFFO29CQUM1QixJQUFJLEVBQUUsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLHdCQUF3QjtpQkFDM0UsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztpQkFBTSxJQUFJLEdBQUcsQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUM7Z0JBQ2xELEtBQUssQ0FBQyw2QkFBNkIsRUFBRTtvQkFDbkMsSUFBSSxFQUFFLCtCQUErQjtpQkFDdEMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE1BQU0sR0FBRyxDQUFDO1lBQ1osQ0FBQztZQUNELElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDZixDQUFDO0lBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZsYWdzLCBBcmdzIH0gZnJvbSBcIkBvY2xpZi9jb3JlXCI7XG5pbXBvcnQgeyBBdXRoZW50aWNhdGVkQ29tbWFuZCB9IGZyb20gXCIuLi9saWIvYmFzZS1jb21tYW5kLmpzXCI7XG5pbXBvcnQgeyBhcGlDbGllbnQgfSBmcm9tIFwiLi4vbGliL2FwaS1jbGllbnQuanNcIjtcbmltcG9ydCB7XG4gIHN1Y2Nlc3MsXG4gIGVycm9yLFxuICBqc29uLFxuICBjb2xvcnMsXG4gIHNwaW5uZXIsXG4gIGlzSnNvbk1vZGUsXG59IGZyb20gXCIuLi9saWIvb3V0cHV0LmpzXCI7XG5cbmludGVyZmFjZSBTZW5kTWVzc2FnZVJlc3BvbnNlIHtcbiAgaWQ6IHN0cmluZztcbiAgdG86IHN0cmluZztcbiAgZnJvbTogc3RyaW5nO1xuICB0ZXh0OiBzdHJpbmc7XG4gIHN0YXR1czogc3RyaW5nO1xuICBzZWdtZW50czogbnVtYmVyO1xuICBjcmVkaXRzVXNlZDogbnVtYmVyO1xuICBjcmVhdGVkQXQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU2VuZCBleHRlbmRzIEF1dGhlbnRpY2F0ZWRDb21tYW5kIHtcbiAgc3RhdGljIGRlc2NyaXB0aW9uID0gXCJTZW5kIGFuIFNNUyBtZXNzYWdlIChzaG9ydGN1dCBmb3IgJ3NtcyBzZW5kJylcIjtcblxuICBzdGF0aWMgZXhhbXBsZXMgPSBbXG4gICAgJzwlPSBjb25maWcuYmluICU+IHNlbmQgLS10byBcIisxMjM0NTY3ODkwXCIgLS10ZXh0IFwiSGVsbG8hXCInLFxuICAgICc8JT0gY29uZmlnLmJpbiAlPiBzZW5kIC10IFwiKzEyMzQ1Njc4OTBcIiAtbSBcIk1lZXRpbmcgYXQgM3BtXCInLFxuICAgICc8JT0gY29uZmlnLmJpbiAlPiBzZW5kIC0tdG8gXCIrMTIzNDU2Nzg5MFwiIC0tdGV4dCBcIkhlbGxvIVwiIC0tanNvbicsXG4gIF07XG5cbiAgc3RhdGljIGZsYWdzID0ge1xuICAgIC4uLkF1dGhlbnRpY2F0ZWRDb21tYW5kLmJhc2VGbGFncyxcbiAgICB0bzogRmxhZ3Muc3RyaW5nKHtcbiAgICAgIGNoYXI6IFwidFwiLFxuICAgICAgZGVzY3JpcHRpb246IFwiUmVjaXBpZW50IHBob25lIG51bWJlciAoRS4xNjQgZm9ybWF0KVwiLFxuICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgfSksXG4gICAgdGV4dDogRmxhZ3Muc3RyaW5nKHtcbiAgICAgIGNoYXI6IFwibVwiLFxuICAgICAgZGVzY3JpcHRpb246IFwiTWVzc2FnZSB0ZXh0XCIsXG4gICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICB9KSxcbiAgICBmcm9tOiBGbGFncy5zdHJpbmcoe1xuICAgICAgY2hhcjogXCJmXCIsXG4gICAgICBkZXNjcmlwdGlvbjogXCJTZW5kZXIgcGhvbmUgbnVtYmVyIChvcHRpb25hbCwgdXNlcyBkZWZhdWx0IGlmIG5vdCBzZXQpXCIsXG4gICAgfSksXG4gIH07XG5cbiAgYXN5bmMgcnVuKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHsgZmxhZ3MgfSA9IGF3YWl0IHRoaXMucGFyc2UoU2VuZCk7XG5cbiAgICBjb25zdCBzZW5kU3Bpbm5lciA9IHNwaW5uZXIoXCJTZW5kaW5nIG1lc3NhZ2UuLi5cIik7XG5cbiAgICBpZiAoIWlzSnNvbk1vZGUoKSkge1xuICAgICAgc2VuZFNwaW5uZXIuc3RhcnQoKTtcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBhcGlDbGllbnQucG9zdDxTZW5kTWVzc2FnZVJlc3BvbnNlPihcbiAgICAgICAgXCIvYXBpL3YxL21lc3NhZ2VzXCIsXG4gICAgICAgIHtcbiAgICAgICAgICB0bzogZmxhZ3MudG8sXG4gICAgICAgICAgdGV4dDogZmxhZ3MudGV4dCxcbiAgICAgICAgICAuLi4oZmxhZ3MuZnJvbSAmJiB7IGZyb206IGZsYWdzLmZyb20gfSksXG4gICAgICAgIH0sXG4gICAgICApO1xuXG4gICAgICBzZW5kU3Bpbm5lci5zdG9wKCk7XG5cbiAgICAgIGlmIChpc0pzb25Nb2RlKCkpIHtcbiAgICAgICAganNvbihyZXNwb25zZSk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgc3VjY2VzcyhcIk1lc3NhZ2Ugc2VudFwiLCB7XG4gICAgICAgIFwiTWVzc2FnZSBJRFwiOiBjb2xvcnMuY29kZShyZXNwb25zZS5pZCksXG4gICAgICAgIFRvOiByZXNwb25zZS50byxcbiAgICAgICAgU3RhdHVzOiByZXNwb25zZS5zdGF0dXMgPT09IFwic2VudFwiXG4gICAgICAgICAgPyBjb2xvcnMuc3VjY2VzcyhyZXNwb25zZS5zdGF0dXMpXG4gICAgICAgICAgOiBjb2xvcnMucHJpbWFyeShyZXNwb25zZS5zdGF0dXMpLFxuICAgICAgICBTZWdtZW50czogU3RyaW5nKHJlc3BvbnNlLnNlZ21lbnRzKSxcbiAgICAgICAgQ3JlZGl0czogU3RyaW5nKHJlc3BvbnNlLmNyZWRpdHNVc2VkKSxcbiAgICAgIH0pO1xuXG4gICAgfSBjYXRjaCAoZXJyOiBhbnkpIHtcbiAgICAgIHNlbmRTcGlubmVyLnN0b3AoKTtcblxuICAgICAgaWYgKGVyci5tZXNzYWdlPy5pbmNsdWRlcyhcImluc3VmZmljaWVudF9jcmVkaXRzXCIpKSB7XG4gICAgICAgIGVycm9yKFwiSW5zdWZmaWNpZW50IGNyZWRpdHNcIiwge1xuICAgICAgICAgIGhpbnQ6IGBSdW4gJHtjb2xvcnMuY29kZShcInNlbmRseSBjcmVkaXRzIGJhbGFuY2VcIil9IHRvIGNoZWNrIHlvdXIgYmFsYW5jZWAsXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIGlmIChlcnIubWVzc2FnZT8uaW5jbHVkZXMoXCJpbnZhbGlkX3Bob25lXCIpKSB7XG4gICAgICAgIGVycm9yKFwiSW52YWxpZCBwaG9uZSBudW1iZXIgZm9ybWF0XCIsIHtcbiAgICAgICAgICBoaW50OiBcIlVzZSBFLjE2NCBmb3JtYXQ6ICsxMjM0NTY3ODkwXCIsXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgZXJyO1xuICAgICAgfVxuICAgICAgdGhpcy5leGl0KDEpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -0,0 +1,10 @@
1
+ import { AuthenticatedCommand } from "../lib/base-command.js";
2
+ export default class Status extends AuthenticatedCommand {
3
+ static description: string;
4
+ static examples: string[];
5
+ static flags: {
6
+ json: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
7
+ quiet: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
8
+ };
9
+ run(): Promise<void>;
10
+ }
@@ -0,0 +1,112 @@
1
+ import { AuthenticatedCommand } from "../lib/base-command.js";
2
+ import { apiClient } from "../lib/api-client.js";
3
+ import { colors, json, isJsonMode, formatRelativeTime, } from "../lib/output.js";
4
+ import { getConfigValue } from "../lib/config.js";
5
+ export default class Status extends AuthenticatedCommand {
6
+ static description = "Show account status dashboard with credits, usage, and health";
7
+ static examples = [
8
+ "<%= config.bin %> status",
9
+ "<%= config.bin %> status --json",
10
+ ];
11
+ static flags = {
12
+ ...AuthenticatedCommand.baseFlags,
13
+ };
14
+ async run() {
15
+ // Fetch all status data in parallel
16
+ const [credits, messages, webhooks, keys] = await Promise.all([
17
+ apiClient
18
+ .get("/api/v1/account/credits")
19
+ .catch(() => ({ balance: 0, reservedBalance: 0, availableBalance: 0 })),
20
+ apiClient
21
+ .get("/api/v1/messages", {
22
+ limit: 5,
23
+ })
24
+ .catch(() => ({ messages: [], total: 0 })),
25
+ apiClient
26
+ .get("/api/v1/webhooks")
27
+ .catch(() => []),
28
+ apiClient
29
+ .get("/api/v1/account/keys")
30
+ .catch(() => ({ keys: [] })),
31
+ ]);
32
+ const email = getConfigValue("email") || "Unknown";
33
+ const apiMode = getConfigValue("environment") || "test";
34
+ if (isJsonMode()) {
35
+ json({
36
+ account: {
37
+ email,
38
+ apiMode,
39
+ },
40
+ credits: {
41
+ balance: credits.balance,
42
+ reserved: credits.reservedBalance,
43
+ available: credits.availableBalance,
44
+ },
45
+ usage: {
46
+ recentMessages: messages.total,
47
+ webhooksConfigured: webhooks.length,
48
+ activeApiKeys: keys.keys?.filter((k) => k.isActive).length || 0,
49
+ },
50
+ });
51
+ return;
52
+ }
53
+ // Beautiful dashboard output
54
+ console.log();
55
+ console.log(colors.bold(colors.primary(" Sendly Status Dashboard")));
56
+ console.log(colors.dim(" " + "─".repeat(40)));
57
+ console.log();
58
+ // Account Section
59
+ console.log(colors.bold(" Account"));
60
+ console.log(` ${colors.dim("Email:")} ${email}`);
61
+ console.log(` ${colors.dim("API Mode:")} ${apiMode === "test" ? colors.warning("test") + colors.dim(" (sandbox)") : colors.success("live") + colors.dim(" (production)")}`);
62
+ console.log();
63
+ // Credits Section
64
+ console.log(colors.bold(" Credits"));
65
+ const available = credits.availableBalance || 0;
66
+ const creditColor = available > 100
67
+ ? colors.success
68
+ : available > 10
69
+ ? colors.warning
70
+ : colors.error;
71
+ console.log(` ${colors.dim("Available:")} ${creditColor(available.toLocaleString())} credits`);
72
+ if (credits.reservedBalance > 0) {
73
+ console.log(` ${colors.dim("Reserved:")} ${colors.warning(credits.reservedBalance.toLocaleString())} credits`);
74
+ }
75
+ console.log(` ${colors.dim("Capacity:")} ~${Math.floor(available).toLocaleString()} SMS (US/CA)`);
76
+ console.log();
77
+ // Usage Section
78
+ console.log(colors.bold(" Resources"));
79
+ const activeKeys = keys.keys?.filter((k) => k.isActive).length || 0;
80
+ const activeWebhooks = webhooks.filter((w) => w.is_active).length;
81
+ console.log(` ${colors.dim("API Keys:")} ${activeKeys} active`);
82
+ console.log(` ${colors.dim("Webhooks:")} ${activeWebhooks} configured${webhooks.length > activeWebhooks ? colors.dim(` (${webhooks.length - activeWebhooks} paused)`) : ""}`);
83
+ console.log();
84
+ // Recent Activity
85
+ if (messages.messages && messages.messages.length > 0) {
86
+ console.log(colors.bold(" Recent Messages"));
87
+ messages.messages.slice(0, 3).forEach((msg) => {
88
+ const status = msg.status || "unknown";
89
+ const statusIcon = status === "delivered"
90
+ ? colors.success("✓")
91
+ : status === "sent"
92
+ ? colors.primary("→")
93
+ : status === "failed"
94
+ ? colors.error("✗")
95
+ : colors.dim("○");
96
+ const to = msg.to || "Unknown";
97
+ const time = msg.createdAt
98
+ ? formatRelativeTime(msg.createdAt)
99
+ : "recently";
100
+ console.log(` ${statusIcon} ${colors.dim(to.slice(-4).padStart(8, "•"))} ${colors.dim(status.padEnd(10))} ${colors.dim(time)}`);
101
+ });
102
+ console.log();
103
+ }
104
+ // Quick Actions
105
+ console.log(colors.dim(" Quick Actions"));
106
+ console.log(` ${colors.code("sendly sms send")} Send a message`);
107
+ console.log(` ${colors.code("sendly credits balance")} Check credit balance`);
108
+ console.log(` ${colors.code("sendly webhooks list")} View webhooks`);
109
+ console.log();
110
+ }
111
+ }
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbW1hbmRzL3N0YXR1cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDakQsT0FBTyxFQUdMLE1BQU0sRUFDTixJQUFJLEVBRUosVUFBVSxFQUNWLGtCQUFrQixHQUNuQixNQUFNLGtCQUFrQixDQUFDO0FBQzFCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQTBCbEQsTUFBTSxDQUFDLE9BQU8sT0FBTyxNQUFPLFNBQVEsb0JBQW9CO0lBQ3RELE1BQU0sQ0FBQyxXQUFXLEdBQ2hCLCtEQUErRCxDQUFDO0lBRWxFLE1BQU0sQ0FBQyxRQUFRLEdBQUc7UUFDaEIsMEJBQTBCO1FBQzFCLGlDQUFpQztLQUNsQyxDQUFDO0lBRUYsTUFBTSxDQUFDLEtBQUssR0FBRztRQUNiLEdBQUcsb0JBQW9CLENBQUMsU0FBUztLQUNsQyxDQUFDO0lBRUYsS0FBSyxDQUFDLEdBQUc7UUFDUCxvQ0FBb0M7UUFDcEMsTUFBTSxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQztZQUM1RCxTQUFTO2lCQUNOLEdBQUcsQ0FJRCx5QkFBeUIsQ0FBQztpQkFDNUIsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLGVBQWUsRUFBRSxDQUFDLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUN6RSxTQUFTO2lCQUNOLEdBQUcsQ0FBcUMsa0JBQWtCLEVBQUU7Z0JBQzNELEtBQUssRUFBRSxDQUFDO2FBQ1QsQ0FBQztpQkFDRCxLQUFLLENBQUMsR0FBRyxFQUFFLENB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QUcsR0FBRyxDQUFDLFNBQVM7b0JBQ3hCLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDO29CQUNuQyxDQUFDLENBQUMsVUFBVSxDQUFDO2dCQUNmLE9BQU8sQ0FBQyxHQUFHLENBQ1QsT0FBTyxVQUFVLElBQUksTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FDdEgsQ0FBQztZQUNKLENBQUMsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLENBQUM7UUFFRCxnQkFBZ0I7UUFDaEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQztRQUMzQyxPQUFPLENBQUMsR0FBRyxDQUNULE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxzQkFBc0IsQ0FDNUQsQ0FBQztRQUNGLE9BQU8sQ0FBQyxHQUFHLENBQ1QsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLHVCQUF1QixDQUNwRSxDQUFDO1FBQ0YsT0FBTyxDQUFDLEdBQUcsQ0FDVCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsaUJBQWlCLENBQzVELENBQUM7UUFDRixPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF1dGhlbnRpY2F0ZWRDb21tYW5kIH0gZnJvbSBcIi4uL2xpYi9iYXNlLWNvbW1hbmQuanNcIjtcbmltcG9ydCB7IGFwaUNsaWVudCB9IGZyb20gXCIuLi9saWIvYXBpLWNsaWVudC5qc1wiO1xuaW1wb3J0IHtcbiAgaGVhZGVyLFxuICBrZXlWYWx1ZSxcbiAgY29sb3JzLFxuICBqc29uLFxuICBkaXZpZGVyLFxuICBpc0pzb25Nb2RlLFxuICBmb3JtYXRSZWxhdGl2ZVRpbWUsXG59IGZyb20gXCIuLi9saWIvb3V0cHV0LmpzXCI7XG5pbXBvcnQgeyBnZXRDb25maWdWYWx1ZSB9IGZyb20gXCIuLi9saWIvY29uZmlnLmpzXCI7XG5cbmludGVyZmFjZSBTdGF0dXNSZXNwb25zZSB7XG4gIGFjY291bnQ6IHtcbiAgICBlbWFpbDogc3RyaW5nO1xuICAgIHVzZXJJZDogc3RyaW5nO1xuICAgIHZlcmlmaWVkOiBib29sZWFuO1xuICB9O1xuICBjcmVkaXRzOiB7XG4gICAgYmFsYW5jZTogbnVtYmVyO1xuICAgIHJlc2VydmVkOiBudW1iZXI7XG4gICAgYXZhaWxhYmxlOiBudW1iZXI7XG4gIH07XG4gIHVzYWdlOiB7XG4gICAgbWVzc2FnZXNTZW50VG9kYXk6IG51bWJlcjtcbiAgICBtZXNzYWdlc1NlbnRUaGlzTW9udGg6IG51bWJlcjtcbiAgICB3ZWJob29rc0NvbmZpZ3VyZWQ6IG51bWJlcjtcbiAgICBhY3RpdmVBcGlLZXlzOiBudW1iZXI7XG4gIH07XG4gIGxpbWl0czoge1xuICAgIGRhaWx5TGltaXQ6IG51bWJlcjtcbiAgICBtb250aGx5TGltaXQ6IG51bWJlcjtcbiAgICByYXRlTGltaXQ6IG51bWJlcjtcbiAgfTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3RhdHVzIGV4dGVuZHMgQXV0aGVudGljYXRlZENvbW1hbmQge1xuICBzdGF0aWMgZGVzY3JpcHRpb24gPVxuICAgIFwiU2hvdyBhY2NvdW50IHN0YXR1cyBkYXNoYm9hcmQgd2l0aCBjcmVkaXRzLCB1c2FnZSwgYW5kIGhlYWx0aFwiO1xuXG4gIHN0YXRpYyBleGFtcGxlcyA9IFtcbiAgICBcIjwlPSBjb25maWcuYmluICU+IHN0YXR1c1wiLFxuICAgIFwiPCU9IGNvbmZpZy5iaW4gJT4gc3RhdHVzIC0tanNvblwiLFxuICBdO1xuXG4gIHN0YXRpYyBmbGFncyA9IHtcbiAgICAuLi5BdXRoZW50aWNhdGVkQ29tbWFuZC5iYXNlRmxhZ3MsXG4gIH07XG5cbiAgYXN5bmMgcnVuKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIC8vIEZldGNoIGFsbCBzdGF0dXMgZGF0YSBpbiBwYXJhbGxlbFxuICAgIGNvbnN0IFtjcmVkaXRzLCBtZXNzYWdlcywgd2ViaG9va3MsIGtleXNdID0gYXdhaXQgUHJvbWlzZS5hbGwoW1xuICAgICAgYXBpQ2xpZW50XG4gICAgICAgIC5nZXQ8e1xuICAgICAgICAgIGJhbGFuY2U6IG51bWJlcjtcbiAgICAgICAgICByZXNlcnZlZEJhbGFuY2U6IG51bWJlcjtcbiAgICAgICAgICBhdmFpbGFibGVCYWxhbmNlOiBudW1iZXI7XG4gICAgICAgIH0+KFwiL2FwaS92MS9hY2NvdW50L2NyZWRpdHNcIilcbiAgICAgICAgLmNhdGNoKCgpID0+ICh7IGJhbGFuY2U6IDAsIHJlc2VydmVkQmFsYW5jZTogMCwgYXZhaWxhYmxlQmFsYW5jZTogMCB9KSksXG4gICAgICBhcGlDbGllbnRcbiAgICAgICAgLmdldDx7IG1lc3NhZ2VzOiBhbnlbXTsgdG90YWw6IG51bWJlciB9PihcIi9hcGkvdjEvbWVzc2FnZXNcIiwge1xuICAgICAgICAgIGxpbWl0OiA1LFxuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goKCkgPT4gKHsgbWVzc2FnZXM6IFtdLCB0b3RhbDogMCB9KSksXG4gICAgICBhcGlDbGllbnRcbiAgICAgICAgLmdldDxhbnlbXT4oXCIvYXBpL3YxL3dlYmhvb2tzXCIpXG4gICAgICAgIC5jYXRjaCgoKSA9PiBbXSksXG4gICAgICBhcGlDbGllbnRcbiAgICAgICAgLmdldDx7IGtleXM6IGFueVtdIH0+KFwiL2FwaS92MS9hY2NvdW50L2tleXNcIilcbiAgICAgICAgLmNhdGNoKCgpID0+ICh7IGtleXM6IFtdIH0pKSxcbiAgICBdKTtcblxuICAgIGNvbnN0IGVtYWlsID0gZ2V0Q29uZmlnVmFsdWUoXCJlbWFpbFwiKSB8fCBcIlVua25vd25cIjtcbiAgICBjb25zdCBhcGlNb2RlID0gZ2V0Q29uZmlnVmFsdWUoXCJlbnZpcm9ubWVudFwiKSB8fCBcInRlc3RcIjtcblxuICAgIGlmIChpc0pzb25Nb2RlKCkpIHtcbiAgICAgIGpzb24oe1xuICAgICAgICBhY2NvdW50OiB7XG4gICAgICAgICAgZW1haWwsXG4gICAgICAgICAgYXBpTW9kZSxcbiAgICAgICAgfSxcbiAgICAgICAgY3JlZGl0czoge1xuICAgICAgICAgIGJhbGFuY2U6IGNyZWRpdHMuYmFsYW5jZSxcbiAgICAgICAgICByZXNlcnZlZDogY3JlZGl0cy5yZXNlcnZlZEJhbGFuY2UsXG4gICAgICAgICAgYXZhaWxhYmxlOiBjcmVkaXRzLmF2YWlsYWJsZUJhbGFuY2UsXG4gICAgICAgIH0sXG4gICAgICAgIHVzYWdlOiB7XG4gICAgICAgICAgcmVjZW50TWVzc2FnZXM6IG1lc3NhZ2VzLnRvdGFsLFxuICAgICAgICAgIHdlYmhvb2tzQ29uZmlndXJlZDogd2ViaG9va3MubGVuZ3RoLFxuICAgICAgICAgIGFjdGl2ZUFwaUtleXM6IGtleXMua2V5cz8uZmlsdGVyKChrOiBhbnkpID0+IGsuaXNBY3RpdmUpLmxlbmd0aCB8fCAwLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gQmVhdXRpZnVsIGRhc2hib2FyZCBvdXRwdXRcbiAgICBjb25zb2xlLmxvZygpO1xuICAgIGNvbnNvbGUubG9nKFxuICAgICAgY29sb3JzLmJvbGQoY29sb3JzLnByaW1hcnkoXCIgIFNlbmRseSBTdGF0dXMgRGFzaGJvYXJkXCIpKSxcbiAgICApO1xuICAgIGNvbnNvbGUubG9nKGNvbG9ycy5kaW0oXCIgIFwiICsgXCLilIBcIi5yZXBlYXQoNDApKSk7XG4gICAgY29uc29sZS5sb2coKTtcblxuICAgIC8vIEFjY291bnQgU2VjdGlvblxuICAgIGNvbnNvbGUubG9nKGNvbG9ycy5ib2xkKFwiICBBY2NvdW50XCIpKTtcbiAgICBjb25zb2xlLmxvZyhgICAgICR7Y29sb3JzLmRpbShcIkVtYWlsOlwiKX0gICAgICAgICR7ZW1haWx9YCk7XG4gICAgY29uc29sZS5sb2coXG4gICAgICBgICAgICR7Y29sb3JzLmRpbShcIkFQSSBNb2RlOlwiKX0gICAgICR7YXBpTW9kZSA9PT0gXCJ0ZXN0XCIgPyBjb2xvcnMud2FybmluZyhcInRlc3RcIikgKyBjb2xvcnMuZGltKFwiIChzYW5kYm94KVwiKSA6IGNvbG9ycy5zdWNjZXNzKFwibGl2ZVwiKSArIGNvbG9ycy5kaW0oXCIgKHByb2R1Y3Rpb24pXCIpfWAsXG4gICAgKTtcbiAgICBjb25zb2xlLmxvZygpO1xuXG4gICAgLy8gQ3JlZGl0cyBTZWN0aW9uXG4gICAgY29uc29sZS5sb2coY29sb3JzLmJvbGQoXCIgIENyZWRpdHNcIikpO1xuICAgIGNvbnN0IGF2YWlsYWJsZSA9IGNyZWRpdHMuYXZhaWxhYmxlQmFsYW5jZSB8fCAwO1xuICAgIGNvbnN0IGNyZWRpdENvbG9yID1cbiAgICAgIGF2YWlsYWJsZSA+IDEwMFxuICAgICAgICA/IGNvbG9ycy5zdWNjZXNzXG4gICAgICAgIDogYXZhaWxhYmxlID4gMTBcbiAgICAgICAgICA/IGNvbG9ycy53YXJuaW5nXG4gICAgICAgICAgOiBjb2xvcnMuZXJyb3I7XG4gICAgY29uc29sZS5sb2coXG4gICAgICBgICAgICR7Y29sb3JzLmRpbShcIkF2YWlsYWJsZTpcIil9ICAgICR7Y3JlZGl0Q29sb3IoYXZhaWxhYmxlLnRvTG9jYWxlU3RyaW5nKCkpfSBjcmVkaXRzYCxcbiAgICApO1xuICAgIGlmIChjcmVkaXRzLnJlc2VydmVkQmFsYW5jZSA+IDApIHtcbiAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICBgICAgICR7Y29sb3JzLmRpbShcIlJlc2VydmVkOlwiKX0gICAgICR7Y29sb3JzLndhcm5pbmcoY3JlZGl0cy5yZXNlcnZlZEJhbGFuY2UudG9Mb2NhbGVTdHJpbmcoKSl9IGNyZWRpdHNgLFxuICAgICAgKTtcbiAgICB9XG4gICAgY29uc29sZS5sb2coXG4gICAgICBgICAgICR7Y29sb3JzLmRpbShcIkNhcGFjaXR5OlwiKX0gICAgIH4ke01hdGguZmxvb3IoYXZhaWxhYmxlKS50b0xvY2FsZVN0cmluZygpfSBTTVMgKFVTL0NBKWAsXG4gICAgKTtcbiAgICBjb25zb2xlLmxvZygpO1xuXG4gICAgLy8gVXNhZ2UgU2VjdGlvblxuICAgIGNvbnNvbGUubG9nKGNvbG9ycy5ib2xkKFwiICBSZXNvdXJjZXNcIikpO1xuICAgIGNvbnN0IGFjdGl2ZUtleXMgPSBrZXlzLmtleXM/LmZpbHRlcigoazogYW55KSA9PiBrLmlzQWN0aXZlKS5sZW5ndGggfHwgMDtcbiAgICBjb25zdCBhY3RpdmVXZWJob29rcyA9IHdlYmhvb2tzLmZpbHRlcigodzogYW55KSA9PiB3LmlzX2FjdGl2ZSkubGVuZ3RoO1xuICAgIGNvbnNvbGUubG9nKFxuICAgICAgYCAgICAke2NvbG9ycy5kaW0oXCJBUEkgS2V5czpcIil9ICAgICAke2FjdGl2ZUtleXN9IGFjdGl2ZWAsXG4gICAgKTtcbiAgICBjb25zb2xlLmxvZyhcbiAgICAgIGAgICAgJHtjb2xvcnMuZGltKFwiV2ViaG9va3M6XCIpfSAgICAgJHthY3RpdmVXZWJob29rc30gY29uZmlndXJlZCR7d2ViaG9va3MubGVuZ3RoID4gYWN0aXZlV2ViaG9va3MgPyBjb2xvcnMuZGltKGAgKCR7d2ViaG9va3MubGVuZ3RoIC0gYWN0aXZlV2ViaG9va3N9IHBhdXNlZClgKSA6IFwiXCJ9YCxcbiAgICApO1xuICAgIGNvbnNvbGUubG9nKCk7XG5cbiAgICAvLyBSZWNlbnQgQWN0aXZpdHlcbiAgICBpZiAobWVzc2FnZXMubWVzc2FnZXMgJiYgbWVzc2FnZXMubWVzc2FnZXMubGVuZ3RoID4gMCkge1xuICAgICAgY29uc29sZS5sb2coY29sb3JzLmJvbGQoXCIgIFJlY2VudCBNZXNzYWdlc1wiKSk7XG4gICAgICBtZXNzYWdlcy5tZXNzYWdlcy5zbGljZSgwLCAzKS5mb3JFYWNoKChtc2c6IGFueSkgPT4ge1xuICAgICAgICBjb25zdCBzdGF0dXMgPSBtc2cuc3RhdHVzIHx8IFwidW5rbm93blwiO1xuICAgICAgICBjb25zdCBzdGF0dXNJY29uID1cbiAgICAgICAgICBzdGF0dXMgPT09IFwiZGVsaXZlcmVkXCJcbiAgICAgICAgICAgID8gY29sb3JzLnN1Y2Nlc3MoXCLinJNcIilcbiAgICAgICAgICAgIDogc3RhdHVzID09PSBcInNlbnRcIlxuICAgICAgICAgICAgICA/IGNvbG9ycy5wcmltYXJ5KFwi4oaSXCIpXG4gICAgICAgICAgICAgIDogc3RhdHVzID09PSBcImZhaWxlZFwiXG4gICAgICAgICAgICAgICAgPyBjb2xvcnMuZXJyb3IoXCLinJdcIilcbiAgICAgICAgICAgICAgICA6IGNvbG9ycy5kaW0oXCLil4tcIik7XG4gICAgICAgIGNvbnN0IHRvID0gbXNnLnRvIHx8IFwiVW5rbm93blwiO1xuICAgICAgICBjb25zdCB0aW1lID0gbXNnLmNyZWF0ZWRBdFxuICAgICAgICAgID8gZm9ybWF0UmVsYXRpdmVUaW1lKG1zZy5jcmVhdGVkQXQpXG4gICAgICAgICAgOiBcInJlY2VudGx5XCI7XG4gICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgIGAgICAgJHtzdGF0dXNJY29ufSAke2NvbG9ycy5kaW0odG8uc2xpY2UoLTQpLnBhZFN0YXJ0KDgsIFwi4oCiXCIpKX0gJHtjb2xvcnMuZGltKHN0YXR1cy5wYWRFbmQoMTApKX0gJHtjb2xvcnMuZGltKHRpbWUpfWAsXG4gICAgICAgICk7XG4gICAgICB9KTtcbiAgICAgIGNvbnNvbGUubG9nKCk7XG4gICAgfVxuXG4gICAgLy8gUXVpY2sgQWN0aW9uc1xuICAgIGNvbnNvbGUubG9nKGNvbG9ycy5kaW0oXCIgIFF1aWNrIEFjdGlvbnNcIikpO1xuICAgIGNvbnNvbGUubG9nKFxuICAgICAgYCAgICAke2NvbG9ycy5jb2RlKFwic2VuZGx5IHNtcyBzZW5kXCIpfSAgICAgIFNlbmQgYSBtZXNzYWdlYCxcbiAgICApO1xuICAgIGNvbnNvbGUubG9nKFxuICAgICAgYCAgICAke2NvbG9ycy5jb2RlKFwic2VuZGx5IGNyZWRpdHMgYmFsYW5jZVwiKX0gQ2hlY2sgY3JlZGl0IGJhbGFuY2VgLFxuICAgICk7XG4gICAgY29uc29sZS5sb2coXG4gICAgICBgICAgICR7Y29sb3JzLmNvZGUoXCJzZW5kbHkgd2ViaG9va3MgbGlzdFwiKX0gIFZpZXcgd2ViaG9va3NgLFxuICAgICk7XG4gICAgY29uc29sZS5sb2coKTtcbiAgfVxufVxuIl19
@@ -6,6 +6,7 @@ export default class WebhooksCreate extends AuthenticatedCommand {
6
6
  url: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
7
7
  events: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
8
8
  description: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
9
+ mode: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
9
10
  json: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
10
11
  quiet: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
11
12
  };
@@ -5,9 +5,9 @@ import { success, warn, json, colors, codeBlock, isJsonMode, } from "../../lib/o
5
5
  export default class WebhooksCreate extends AuthenticatedCommand {
6
6
  static description = "Create a webhook";
7
7
  static examples = [
8
- '<%= config.bin %> webhooks create --url https://myapp.com/webhook --events message.delivered',
8
+ "<%= config.bin %> webhooks create --url https://myapp.com/webhook --events message.delivered",
9
9
  '<%= config.bin %> webhooks create --url https://myapp.com/webhook --events message.delivered,message.failed --description "Production webhook"',
10
- '<%= config.bin %> webhooks create --url https://webhook.site/abc123 --events message.sent --json',
10
+ "<%= config.bin %> webhooks create --url https://webhook.site/abc123 --events message.sent --json",
11
11
  ];
12
12
  static flags = {
13
13
  ...AuthenticatedCommand.baseFlags,
@@ -25,25 +25,40 @@ export default class WebhooksCreate extends AuthenticatedCommand {
25
25
  char: "d",
26
26
  description: "Description for the webhook",
27
27
  }),
28
+ mode: Flags.string({
29
+ char: "m",
30
+ description: "Event mode filter: all (default), test (sandbox only), live (production only)",
31
+ options: ["all", "test", "live"],
32
+ default: "all",
33
+ }),
28
34
  };
29
35
  async run() {
30
36
  const { flags } = await this.parse(WebhooksCreate);
31
- const events = flags.events.split(",").map(e => e.trim());
37
+ const events = flags.events.split(",").map((e) => e.trim());
32
38
  const response = await apiClient.post("/api/v1/webhooks", {
33
39
  url: flags.url,
34
40
  events,
41
+ mode: flags.mode,
35
42
  ...(flags.description && { description: flags.description }),
36
43
  });
37
44
  if (isJsonMode()) {
38
45
  json(response);
39
46
  return;
40
47
  }
48
+ const modeDisplay = {
49
+ all: colors.dim("all"),
50
+ test: colors.warning("test"),
51
+ live: colors.success("live"),
52
+ };
41
53
  success("Webhook created", {
42
54
  ID: response.id,
43
55
  URL: response.url,
44
56
  Events: response.events.join(", "),
57
+ Mode: modeDisplay[response.mode] || response.mode,
45
58
  ...(response.description && { Description: response.description }),
46
- Status: response.isActive ? colors.success("active") : colors.warning("inactive"),
59
+ Status: response.is_active
60
+ ? colors.success("active")
61
+ : colors.warning("inactive"),
47
62
  });
48
63
  console.log();
49
64
  warn("Copy your webhook secret now. You won't be able to see it again!");
@@ -53,4 +68,4 @@ export default class WebhooksCreate extends AuthenticatedCommand {
53
68
  console.log(colors.dim("See the docs for signature verification examples."));
54
69
  }
55
70
  }
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1hbmRzL3dlYmhvb2tzL2NyZWF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRCxPQUFPLEVBQ0wsT0FBTyxFQUNQLElBQUksRUFDSixJQUFJLEVBQ0osTUFBTSxFQUNOLFNBQVMsRUFDVCxVQUFVLEdBQ1gsTUFBTSxxQkFBcUIsQ0FBQztBQWE3QixNQUFNLENBQUMsT0FBTyxPQUFPLGNBQWUsU0FBUSxvQkFBb0I7SUFDOUQsTUFBTSxDQUFDLFdBQVcsR0FBRyxrQkFBa0IsQ0FBQztJQUV4QyxNQUFNLENBQUMsUUFBUSxHQUFHO1FBQ2hCLDhGQUE4RjtRQUM5RixnSkFBZ0o7UUFDaEosa0dBQWtHO0tBQ25HLENBQUM7SUFFRixNQUFNLENBQUMsS0FBSyxHQUFHO1FBQ2IsR0FBRyxvQkFBb0IsQ0FBQyxTQUFTO1FBQ2pDLEdBQUcsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQ2hCLElBQUksRUFBRSxHQUFHO1lBQ1QsV0FBVyxFQUFFLDZCQUE2QjtZQUMxQyxRQUFRLEVBQUUsSUFBSTtTQUNmLENBQUM7UUFDRixNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQztZQUNuQixJQUFJLEVBQUUsR0FBRztZQUNULFdBQVcsRUFBRSw4Q0FBOEM7WUFDM0QsUUFBUSxFQUFFLElBQUk7U0FDZixDQUFDO1FBQ0YsV0FBVyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDeEIsSUFBSSxFQUFFLEdBQUc7WUFDVCxXQUFXLEVBQUUsNkJBQTZCO1NBQzNDLENBQUM7S0FDSCxDQUFDO0lBRUYsS0FBSyxDQUFDLEdBQUc7UUFDUCxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBRW5ELE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRTFELE1BQU0sUUFBUSxHQUFHLE1BQU0sU0FBUyxDQUFDLElBQUksQ0FBd0Isa0JBQWtCLEVBQUU7WUFDL0UsR0FBRyxFQUFFLEtBQUssQ0FBQyxHQUFHO1lBQ2QsTUFBTTtZQUNOLEdBQUcsQ0FBQyxLQUFLLENBQUMsV0FBVyxJQUFJLEVBQUUsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUM3RCxDQUFDLENBQUM7UUFFSCxJQUFJLFVBQVUsRUFBRSxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2YsT0FBTztRQUNULENBQUM7UUFFRCxPQUFPLENBQUMsaUJBQWlCLEVBQUU7WUFDekIsRUFBRSxFQUFFLFFBQVEsQ0FBQyxFQUFFO1lBQ2YsR0FBRyxFQUFFLFFBQVEsQ0FBQyxHQUFHO1lBQ2pCLE1BQU0sRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDbEMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxXQUFXLElBQUksRUFBRSxXQUFXLEVBQUUsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2xFLE1BQU0sRUFBRSxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQztTQUNsRixDQUFDLENBQUM7UUFFSCxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDZCxJQUFJLENBQUMsa0VBQWtFLENBQUMsQ0FBQztRQUN6RSxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRTNCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNkLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxtRUFBbUUsQ0FBQyxDQUFDLENBQUM7UUFDN0YsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLG1EQUFtRCxDQUFDLENBQUMsQ0FBQztJQUMvRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmxhZ3MgfSBmcm9tIFwiQG9jbGlmL2NvcmVcIjtcbmltcG9ydCB7IEF1dGhlbnRpY2F0ZWRDb21tYW5kIH0gZnJvbSBcIi4uLy4uL2xpYi9iYXNlLWNvbW1hbmQuanNcIjtcbmltcG9ydCB7IGFwaUNsaWVudCB9IGZyb20gXCIuLi8uLi9saWIvYXBpLWNsaWVudC5qc1wiO1xuaW1wb3J0IHtcbiAgc3VjY2VzcyxcbiAgd2FybixcbiAganNvbixcbiAgY29sb3JzLFxuICBjb2RlQmxvY2ssXG4gIGlzSnNvbk1vZGUsXG59IGZyb20gXCIuLi8uLi9saWIvb3V0cHV0LmpzXCI7XG5cbmludGVyZmFjZSBDcmVhdGVXZWJob29rUmVzcG9uc2Uge1xuICBpZDogc3RyaW5nO1xuICB1cmw6IHN0cmluZztcbiAgZXZlbnRzOiBzdHJpbmdbXTtcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIHNlY3JldDogc3RyaW5nOyAvLyBPbmx5IHJldHVybmVkIG9uIGNyZWF0aW9uXG4gIHNlY3JldFZlcnNpb246IG51bWJlcjtcbiAgaXNBY3RpdmU6IGJvb2xlYW47XG4gIGNyZWF0ZWRBdDogc3RyaW5nO1xufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBXZWJob29rc0NyZWF0ZSBleHRlbmRzIEF1dGhlbnRpY2F0ZWRDb21tYW5kIHtcbiAgc3RhdGljIGRlc2NyaXB0aW9uID0gXCJDcmVhdGUgYSB3ZWJob29rXCI7XG5cbiAgc3RhdGljIGV4YW1wbGVzID0gW1xuICAgICc8JT0gY29uZmlnLmJpbiAlPiB3ZWJob29rcyBjcmVhdGUgLS11cmwgaHR0cHM6Ly9teWFwcC5jb20vd2ViaG9vayAtLWV2ZW50cyBtZXNzYWdlLmRlbGl2ZXJlZCcsXG4gICAgJzwlPSBjb25maWcuYmluICU+IHdlYmhvb2tzIGNyZWF0ZSAtLXVybCBodHRwczovL215YXBwLmNvbS93ZWJob29rIC0tZXZlbnRzIG1lc3NhZ2UuZGVsaXZlcmVkLG1lc3NhZ2UuZmFpbGVkIC0tZGVzY3JpcHRpb24gXCJQcm9kdWN0aW9uIHdlYmhvb2tcIicsXG4gICAgJzwlPSBjb25maWcuYmluICU+IHdlYmhvb2tzIGNyZWF0ZSAtLXVybCBodHRwczovL3dlYmhvb2suc2l0ZS9hYmMxMjMgLS1ldmVudHMgbWVzc2FnZS5zZW50IC0tanNvbicsXG4gIF07XG5cbiAgc3RhdGljIGZsYWdzID0ge1xuICAgIC4uLkF1dGhlbnRpY2F0ZWRDb21tYW5kLmJhc2VGbGFncyxcbiAgICB1cmw6IEZsYWdzLnN0cmluZyh7XG4gICAgICBjaGFyOiBcInVcIixcbiAgICAgIGRlc2NyaXB0aW9uOiBcIldlYmhvb2sgVVJMIChtdXN0IGJlIEhUVFBTKVwiLFxuICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgfSksXG4gICAgZXZlbnRzOiBGbGFncy5zdHJpbmcoe1xuICAgICAgY2hhcjogXCJlXCIsXG4gICAgICBkZXNjcmlwdGlvbjogXCJDb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBldmVudHMgdG8gbGlzdGVuIGZvclwiLFxuICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgfSksXG4gICAgZGVzY3JpcHRpb246IEZsYWdzLnN0cmluZyh7XG4gICAgICBjaGFyOiBcImRcIixcbiAgICAgIGRlc2NyaXB0aW9uOiBcIkRlc2NyaXB0aW9uIGZvciB0aGUgd2ViaG9va1wiLFxuICAgIH0pLFxuICB9O1xuXG4gIGFzeW5jIHJ1bigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCB7IGZsYWdzIH0gPSBhd2FpdCB0aGlzLnBhcnNlKFdlYmhvb2tzQ3JlYXRlKTtcblxuICAgIGNvbnN0IGV2ZW50cyA9IGZsYWdzLmV2ZW50cy5zcGxpdChcIixcIikubWFwKGUgPT4gZS50cmltKCkpO1xuXG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBhcGlDbGllbnQucG9zdDxDcmVhdGVXZWJob29rUmVzcG9uc2U+KFwiL2FwaS92MS93ZWJob29rc1wiLCB7XG4gICAgICB1cmw6IGZsYWdzLnVybCxcbiAgICAgIGV2ZW50cyxcbiAgICAgIC4uLihmbGFncy5kZXNjcmlwdGlvbiAmJiB7IGRlc2NyaXB0aW9uOiBmbGFncy5kZXNjcmlwdGlvbiB9KSxcbiAgICB9KTtcblxuICAgIGlmIChpc0pzb25Nb2RlKCkpIHtcbiAgICAgIGpzb24ocmVzcG9uc2UpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHN1Y2Nlc3MoXCJXZWJob29rIGNyZWF0ZWRcIiwge1xuICAgICAgSUQ6IHJlc3BvbnNlLmlkLFxuICAgICAgVVJMOiByZXNwb25zZS51cmwsXG4gICAgICBFdmVudHM6IHJlc3BvbnNlLmV2ZW50cy5qb2luKFwiLCBcIiksXG4gICAgICAuLi4ocmVzcG9uc2UuZGVzY3JpcHRpb24gJiYgeyBEZXNjcmlwdGlvbjogcmVzcG9uc2UuZGVzY3JpcHRpb24gfSksXG4gICAgICBTdGF0dXM6IHJlc3BvbnNlLmlzQWN0aXZlID8gY29sb3JzLnN1Y2Nlc3MoXCJhY3RpdmVcIikgOiBjb2xvcnMud2FybmluZyhcImluYWN0aXZlXCIpLFxuICAgIH0pO1xuXG4gICAgY29uc29sZS5sb2coKTtcbiAgICB3YXJuKFwiQ29weSB5b3VyIHdlYmhvb2sgc2VjcmV0IG5vdy4gWW91IHdvbid0IGJlIGFibGUgdG8gc2VlIGl0IGFnYWluIVwiKTtcbiAgICBjb2RlQmxvY2socmVzcG9uc2Uuc2VjcmV0KTtcblxuICAgIGNvbnNvbGUubG9nKCk7XG4gICAgY29uc29sZS5sb2coY29sb3JzLmRpbShcIlVzZSB0aGlzIHNlY3JldCB0byB2ZXJpZnkgd2ViaG9vayBzaWduYXR1cmVzIGluIHlvdXIgYXBwbGljYXRpb24uXCIpKTtcbiAgICBjb25zb2xlLmxvZyhjb2xvcnMuZGltKFwiU2VlIHRoZSBkb2NzIGZvciBzaWduYXR1cmUgdmVyaWZpY2F0aW9uIGV4YW1wbGVzLlwiKSk7XG4gIH1cbn0iXX0=
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1hbmRzL3dlYmhvb2tzL2NyZWF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRCxPQUFPLEVBQ0wsT0FBTyxFQUNQLElBQUksRUFDSixJQUFJLEVBQ0osTUFBTSxFQUNOLFNBQVMsRUFDVCxVQUFVLEdBQ1gsTUFBTSxxQkFBcUIsQ0FBQztBQWdCN0IsTUFBTSxDQUFDLE9BQU8sT0FBTyxjQUFlLFNBQVEsb0JBQW9CO0lBQzlELE1BQU0sQ0FBQyxXQUFXLEdBQUcsa0JBQWtCLENBQUM7SUFFeEMsTUFBTSxDQUFDLFFBQVEsR0FBRztRQUNoQiw4RkFBOEY7UUFDOUYsZ0pBQWdKO1FBQ2hKLGtHQUFrRztLQUNuRyxDQUFDO0lBRUYsTUFBTSxDQUFDLEtBQUssR0FBRztRQUNiLEdBQUcsb0JBQW9CLENBQUMsU0FBUztRQUNqQyxHQUFHLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQztZQUNoQixJQUFJLEVBQUUsR0FBRztZQUNULFdBQVcsRUFBRSw2QkFBNkI7WUFDMUMsUUFBUSxFQUFFLElBQUk7U0FDZixDQUFDO1FBQ0YsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDbkIsSUFBSSxFQUFFLEdBQUc7WUFDVCxXQUFXLEVBQUUsOENBQThDO1lBQzNELFFBQVEsRUFBRSxJQUFJO1NBQ2YsQ0FBQztRQUNGLFdBQVcsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQ3hCLElBQUksRUFBRSxHQUFHO1lBQ1QsV0FBVyxFQUFFLDZCQUE2QjtTQUMzQyxDQUFDO1FBQ0YsSUFBSSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDakIsSUFBSSxFQUFFLEdBQUc7WUFDVCxXQUFXLEVBQ1QsK0VBQStFO1lBQ2pGLE9BQU8sRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDO1lBQ2hDLE9BQU8sRUFBRSxLQUFLO1NBQ2YsQ0FBQztLQUNILENBQUM7SUFFRixLQUFLLENBQUMsR0FBRztRQUNQLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFbkQsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUU1RCxNQUFNLFFBQVEsR0FBRyxNQUFNLFNBQVMsQ0FBQyxJQUFJLENBQ25DLGtCQUFrQixFQUNsQjtZQUNFLEdBQUcsRUFBRSxLQUFLLENBQUMsR0FBRztZQUNkLE1BQU07WUFDTixJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7WUFDaEIsR0FBRyxDQUFDLEtBQUssQ0FBQyxXQUFXLElBQUksRUFBRSxXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQzdELENBQ0YsQ0FBQztRQUVGLElBQUksVUFBVSxFQUFFLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDZixPQUFPO1FBQ1QsQ0FBQztRQUVELE1BQU0sV0FBVyxHQUFHO1lBQ2xCLEdBQUcsRUFBRSxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQztZQUN0QixJQUFJLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7WUFDNUIsSUFBSSxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO1NBQzdCLENBQUM7UUFFRixPQUFPLENBQUMsaUJBQWlCLEVBQUU7WUFDekIsRUFBRSxFQUFFLFFBQVEsQ0FBQyxFQUFFO1lBQ2YsR0FBRyxFQUFFLFFBQVEsQ0FBQyxHQUFHO1lBQ2pCLE1BQU0sRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDbEMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksUUFBUSxDQUFDLElBQUk7WUFDakQsR0FBRyxDQUFDLFFBQVEsQ0FBQyxXQUFXLElBQUksRUFBRSxXQUFXLEVBQUUsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2xFLE1BQU0sRUFBRSxRQUFRLENBQUMsU0FBUztnQkFDeEIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO2dCQUMxQixDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUM7U0FDL0IsQ0FBQyxDQUFDO1FBRUgsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ2QsSUFBSSxDQUFDLGtFQUFrRSxDQUFDLENBQUM7UUFDekUsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUUzQixPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDZCxPQUFPLENBQUMsR0FBRyxDQUNULE1BQU0sQ0FBQyxHQUFHLENBQ1IsbUVBQW1FLENBQ3BFLENBQ0YsQ0FBQztRQUNGLE9BQU8sQ0FBQyxHQUFHLENBQ1QsTUFBTSxDQUFDLEdBQUcsQ0FBQyxtREFBbUQsQ0FBQyxDQUNoRSxDQUFDO0lBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZsYWdzIH0gZnJvbSBcIkBvY2xpZi9jb3JlXCI7XG5pbXBvcnQgeyBBdXRoZW50aWNhdGVkQ29tbWFuZCB9IGZyb20gXCIuLi8uLi9saWIvYmFzZS1jb21tYW5kLmpzXCI7XG5pbXBvcnQgeyBhcGlDbGllbnQgfSBmcm9tIFwiLi4vLi4vbGliL2FwaS1jbGllbnQuanNcIjtcbmltcG9ydCB7XG4gIHN1Y2Nlc3MsXG4gIHdhcm4sXG4gIGpzb24sXG4gIGNvbG9ycyxcbiAgY29kZUJsb2NrLFxuICBpc0pzb25Nb2RlLFxufSBmcm9tIFwiLi4vLi4vbGliL291dHB1dC5qc1wiO1xuXG50eXBlIFdlYmhvb2tNb2RlID0gXCJhbGxcIiB8IFwidGVzdFwiIHwgXCJsaXZlXCI7XG5cbmludGVyZmFjZSBDcmVhdGVXZWJob29rUmVzcG9uc2Uge1xuICBpZDogc3RyaW5nO1xuICB1cmw6IHN0cmluZztcbiAgZXZlbnRzOiBzdHJpbmdbXTtcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIG1vZGU6IFdlYmhvb2tNb2RlO1xuICBzZWNyZXQ6IHN0cmluZzsgLy8gT25seSByZXR1cm5lZCBvbiBjcmVhdGlvblxuICBzZWNyZXRfdmVyc2lvbjogbnVtYmVyO1xuICBpc19hY3RpdmU6IGJvb2xlYW47XG4gIGNyZWF0ZWRfYXQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgV2ViaG9va3NDcmVhdGUgZXh0ZW5kcyBBdXRoZW50aWNhdGVkQ29tbWFuZCB7XG4gIHN0YXRpYyBkZXNjcmlwdGlvbiA9IFwiQ3JlYXRlIGEgd2ViaG9va1wiO1xuXG4gIHN0YXRpYyBleGFtcGxlcyA9IFtcbiAgICBcIjwlPSBjb25maWcuYmluICU+IHdlYmhvb2tzIGNyZWF0ZSAtLXVybCBodHRwczovL215YXBwLmNvbS93ZWJob29rIC0tZXZlbnRzIG1lc3NhZ2UuZGVsaXZlcmVkXCIsXG4gICAgJzwlPSBjb25maWcuYmluICU+IHdlYmhvb2tzIGNyZWF0ZSAtLXVybCBodHRwczovL215YXBwLmNvbS93ZWJob29rIC0tZXZlbnRzIG1lc3NhZ2UuZGVsaXZlcmVkLG1lc3NhZ2UuZmFpbGVkIC0tZGVzY3JpcHRpb24gXCJQcm9kdWN0aW9uIHdlYmhvb2tcIicsXG4gICAgXCI8JT0gY29uZmlnLmJpbiAlPiB3ZWJob29rcyBjcmVhdGUgLS11cmwgaHR0cHM6Ly93ZWJob29rLnNpdGUvYWJjMTIzIC0tZXZlbnRzIG1lc3NhZ2Uuc2VudCAtLWpzb25cIixcbiAgXTtcblxuICBzdGF0aWMgZmxhZ3MgPSB7XG4gICAgLi4uQXV0aGVudGljYXRlZENvbW1hbmQuYmFzZUZsYWdzLFxuICAgIHVybDogRmxhZ3Muc3RyaW5nKHtcbiAgICAgIGNoYXI6IFwidVwiLFxuICAgICAgZGVzY3JpcHRpb246IFwiV2ViaG9vayBVUkwgKG11c3QgYmUgSFRUUFMpXCIsXG4gICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICB9KSxcbiAgICBldmVudHM6IEZsYWdzLnN0cmluZyh7XG4gICAgICBjaGFyOiBcImVcIixcbiAgICAgIGRlc2NyaXB0aW9uOiBcIkNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIGV2ZW50cyB0byBsaXN0ZW4gZm9yXCIsXG4gICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICB9KSxcbiAgICBkZXNjcmlwdGlvbjogRmxhZ3Muc3RyaW5nKHtcbiAgICAgIGNoYXI6IFwiZFwiLFxuICAgICAgZGVzY3JpcHRpb246IFwiRGVzY3JpcHRpb24gZm9yIHRoZSB3ZWJob29rXCIsXG4gICAgfSksXG4gICAgbW9kZTogRmxhZ3Muc3RyaW5nKHtcbiAgICAgIGNoYXI6IFwibVwiLFxuICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgIFwiRXZlbnQgbW9kZSBmaWx0ZXI6IGFsbCAoZGVmYXVsdCksIHRlc3QgKHNhbmRib3ggb25seSksIGxpdmUgKHByb2R1Y3Rpb24gb25seSlcIixcbiAgICAgIG9wdGlvbnM6IFtcImFsbFwiLCBcInRlc3RcIiwgXCJsaXZlXCJdLFxuICAgICAgZGVmYXVsdDogXCJhbGxcIixcbiAgICB9KSxcbiAgfTtcblxuICBhc3luYyBydW4oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgeyBmbGFncyB9ID0gYXdhaXQgdGhpcy5wYXJzZShXZWJob29rc0NyZWF0ZSk7XG5cbiAgICBjb25zdCBldmVudHMgPSBmbGFncy5ldmVudHMuc3BsaXQoXCIsXCIpLm1hcCgoZSkgPT4gZS50cmltKCkpO1xuXG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBhcGlDbGllbnQucG9zdDxDcmVhdGVXZWJob29rUmVzcG9uc2U+KFxuICAgICAgXCIvYXBpL3YxL3dlYmhvb2tzXCIsXG4gICAgICB7XG4gICAgICAgIHVybDogZmxhZ3MudXJsLFxuICAgICAgICBldmVudHMsXG4gICAgICAgIG1vZGU6IGZsYWdzLm1vZGUsXG4gICAgICAgIC4uLihmbGFncy5kZXNjcmlwdGlvbiAmJiB7IGRlc2NyaXB0aW9uOiBmbGFncy5kZXNjcmlwdGlvbiB9KSxcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIGlmIChpc0pzb25Nb2RlKCkpIHtcbiAgICAgIGpzb24ocmVzcG9uc2UpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IG1vZGVEaXNwbGF5ID0ge1xuICAgICAgYWxsOiBjb2xvcnMuZGltKFwiYWxsXCIpLFxuICAgICAgdGVzdDogY29sb3JzLndhcm5pbmcoXCJ0ZXN0XCIpLFxuICAgICAgbGl2ZTogY29sb3JzLnN1Y2Nlc3MoXCJsaXZlXCIpLFxuICAgIH07XG5cbiAgICBzdWNjZXNzKFwiV2ViaG9vayBjcmVhdGVkXCIsIHtcbiAgICAgIElEOiByZXNwb25zZS5pZCxcbiAgICAgIFVSTDogcmVzcG9uc2UudXJsLFxuICAgICAgRXZlbnRzOiByZXNwb25zZS5ldmVudHMuam9pbihcIiwgXCIpLFxuICAgICAgTW9kZTogbW9kZURpc3BsYXlbcmVzcG9uc2UubW9kZV0gfHwgcmVzcG9uc2UubW9kZSxcbiAgICAgIC4uLihyZXNwb25zZS5kZXNjcmlwdGlvbiAmJiB7IERlc2NyaXB0aW9uOiByZXNwb25zZS5kZXNjcmlwdGlvbiB9KSxcbiAgICAgIFN0YXR1czogcmVzcG9uc2UuaXNfYWN0aXZlXG4gICAgICAgID8gY29sb3JzLnN1Y2Nlc3MoXCJhY3RpdmVcIilcbiAgICAgICAgOiBjb2xvcnMud2FybmluZyhcImluYWN0aXZlXCIpLFxuICAgIH0pO1xuXG4gICAgY29uc29sZS5sb2coKTtcbiAgICB3YXJuKFwiQ29weSB5b3VyIHdlYmhvb2sgc2VjcmV0IG5vdy4gWW91IHdvbid0IGJlIGFibGUgdG8gc2VlIGl0IGFnYWluIVwiKTtcbiAgICBjb2RlQmxvY2socmVzcG9uc2Uuc2VjcmV0KTtcblxuICAgIGNvbnNvbGUubG9nKCk7XG4gICAgY29uc29sZS5sb2coXG4gICAgICBjb2xvcnMuZGltKFxuICAgICAgICBcIlVzZSB0aGlzIHNlY3JldCB0byB2ZXJpZnkgd2ViaG9vayBzaWduYXR1cmVzIGluIHlvdXIgYXBwbGljYXRpb24uXCIsXG4gICAgICApLFxuICAgICk7XG4gICAgY29uc29sZS5sb2coXG4gICAgICBjb2xvcnMuZGltKFwiU2VlIHRoZSBkb2NzIGZvciBzaWduYXR1cmUgdmVyaWZpY2F0aW9uIGV4YW1wbGVzLlwiKSxcbiAgICApO1xuICB9XG59XG4iXX0=