devhelm 0.1.5 → 0.1.6

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.
@@ -1,19 +1,19 @@
1
1
  import { Command, Args, Flags } from '@oclif/core';
2
2
  import { globalFlags, buildClient, display } from '../../lib/base-command.js';
3
- import { apiGet } from '../../lib/api-client.js';
3
+ import { fetchCursorPaginated } from '../../lib/typed-api.js';
4
4
  export default class MonitorsResults extends Command {
5
5
  static description = 'Show recent check results for a monitor';
6
6
  static examples = ['<%= config.bin %> monitors results 42'];
7
7
  static args = { id: Args.string({ description: 'Monitor ID', required: true }) };
8
8
  static flags = {
9
9
  ...globalFlags,
10
- limit: Flags.integer({ description: 'Number of results', default: 20 }),
10
+ limit: Flags.integer({ description: 'Maximum number of results to show (1–1000)', default: 20 }),
11
11
  };
12
12
  async run() {
13
13
  const { args, flags } = await this.parse(MonitorsResults);
14
14
  const client = buildClient(flags);
15
- const resp = await apiGet(client, `/api/v1/monitors/${args.id}/results`, { query: { limit: flags.limit } });
16
- display(this, resp.data ?? [], flags.output, [
15
+ const items = await fetchCursorPaginated(client, `/api/v1/monitors/${args.id}/results`, { maxItems: flags.limit });
16
+ display(this, items, flags.output, [
17
17
  { header: 'ID', get: (r) => String(r.id ?? '') },
18
18
  { header: 'PASSED', get: (r) => (r.passed == null ? '' : r.passed ? 'Pass' : 'Fail') },
19
19
  { header: 'RESPONSE TIME', get: (r) => (r.responseTimeMs != null ? `${r.responseTimeMs}ms` : '') },
@@ -1 +1 @@
1
- {"version":3,"file":"results.js","sourceRoot":"","sources":["../../../src/commands/monitors/results.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAC,MAAM,aAAa,CAAA;AAChD,OAAO,EAAC,WAAW,EAAE,WAAW,EAAE,OAAO,EAAC,MAAM,2BAA2B,CAAA;AAC3E,OAAO,EAAC,MAAM,EAAC,MAAM,yBAAyB,CAAA;AAK9C,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,OAAO;IAClD,MAAM,CAAC,WAAW,GAAG,yCAAyC,CAAA;IAC9D,MAAM,CAAC,QAAQ,GAAG,CAAC,uCAAuC,CAAC,CAAA;IAC3D,MAAM,CAAC,IAAI,GAAG,EAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAC,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,EAAC,CAAA;IAC5E,MAAM,CAAC,KAAK,GAAG;QACb,GAAG,WAAW;QACd,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,EAAC,WAAW,EAAE,mBAAmB,EAAE,OAAO,EAAE,EAAE,EAAC,CAAC;KACtE,CAAA;IAED,KAAK,CAAC,GAAG;QACP,MAAM,EAAC,IAAI,EAAE,KAAK,EAAC,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;QACvD,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;QACjC,MAAM,IAAI,GAAG,MAAM,MAAM,CACvB,MAAM,EACN,oBAAoB,IAAI,CAAC,EAAE,UAAU,EACrC,EAAC,KAAK,EAAE,EAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAC,EAAC,CAC9B,CAAA;QACD,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,KAAK,CAAC,MAAM,EAAE;YAC3C,EAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAC;YAC9C,EAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAC;YACpF,EAAC,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,cAAc,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAC;YAChG,EAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAC;YACjE,EAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,EAAC;YACtD,EAAC,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,EAAC;SAC7D,CAAC,CAAA;IACJ,CAAC"}
1
+ {"version":3,"file":"results.js","sourceRoot":"","sources":["../../../src/commands/monitors/results.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAC,MAAM,aAAa,CAAA;AAChD,OAAO,EAAC,WAAW,EAAE,WAAW,EAAE,OAAO,EAAC,MAAM,2BAA2B,CAAA;AAC3E,OAAO,EAAC,oBAAoB,EAAC,MAAM,wBAAwB,CAAA;AAK3D,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,OAAO;IAClD,MAAM,CAAC,WAAW,GAAG,yCAAyC,CAAA;IAC9D,MAAM,CAAC,QAAQ,GAAG,CAAC,uCAAuC,CAAC,CAAA;IAC3D,MAAM,CAAC,IAAI,GAAG,EAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAC,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,EAAC,CAAA;IAC5E,MAAM,CAAC,KAAK,GAAG;QACb,GAAG,WAAW;QACd,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,EAAC,WAAW,EAAE,4CAA4C,EAAE,OAAO,EAAE,EAAE,EAAC,CAAC;KAC/F,CAAA;IAED,KAAK,CAAC,GAAG;QACP,MAAM,EAAC,IAAI,EAAE,KAAK,EAAC,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;QACvD,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;QACjC,MAAM,KAAK,GAAG,MAAM,oBAAoB,CACtC,MAAM,EACN,oBAAoB,IAAI,CAAC,EAAE,UAAU,EACrC,EAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,EAAC,CACxB,CAAA;QACD,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE;YACjC,EAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAC;YAC9C,EAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAC;YACpF,EAAC,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,cAAc,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAC;YAChG,EAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAC;YACjE,EAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,EAAC;YACtD,EAAC,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,EAAC;SAC7D,CAAC,CAAA;IACJ,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { Command, Args, Flags } from '@oclif/core';
2
2
  import { globalFlags, buildClient, display } from '../../../lib/base-command.js';
3
- import { apiGet } from '../../../lib/api-client.js';
3
+ import { fetchPaginated } from '../../../lib/typed-api.js';
4
4
  export default class MonitorsVersionsList extends Command {
5
5
  static description = 'List version history for a monitor';
6
6
  static examples = [
@@ -11,13 +11,14 @@ export default class MonitorsVersionsList extends Command {
11
11
  static args = { id: Args.string({ description: 'Monitor ID', required: true }) };
12
12
  static flags = {
13
13
  ...globalFlags,
14
- limit: Flags.integer({ description: 'Number of versions to show', default: 20 }),
14
+ limit: Flags.integer({ description: 'Maximum number of versions to show', default: 20 }),
15
15
  };
16
16
  async run() {
17
17
  const { args, flags } = await this.parse(MonitorsVersionsList);
18
18
  const client = buildClient(flags);
19
- const resp = await apiGet(client, `/api/v1/monitors/${args.id}/versions`, { query: { size: flags.limit } });
20
- display(this, resp.data ?? [], flags.output, [
19
+ const allVersions = await fetchPaginated(client, `/api/v1/monitors/${args.id}/versions`, flags.limit);
20
+ const items = allVersions.slice(0, flags.limit);
21
+ display(this, items, flags.output, [
21
22
  { header: 'VERSION', get: (r) => String(r.version ?? '') },
22
23
  { header: 'CHANGED VIA', get: (r) => String(r.changedVia ?? '') },
23
24
  { header: 'SUMMARY', get: (r) => r.changeSummary ?? '' },
@@ -1 +1 @@
1
- {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/commands/monitors/versions/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAC,MAAM,aAAa,CAAA;AAChD,OAAO,EAAC,WAAW,EAAE,WAAW,EAAE,OAAO,EAAC,MAAM,8BAA8B,CAAA;AAC9E,OAAO,EAAC,MAAM,EAAC,MAAM,4BAA4B,CAAA;AAKjD,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,OAAO;IACvD,MAAM,CAAC,WAAW,GAAG,oCAAoC,CAAA;IACzD,MAAM,CAAC,QAAQ,GAAG;QAChB,6CAA6C;QAC7C,uDAAuD;QACvD,qDAAqD;KACtD,CAAA;IAED,MAAM,CAAC,IAAI,GAAG,EAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAC,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,EAAC,CAAA;IAC5E,MAAM,CAAC,KAAK,GAAG;QACb,GAAG,WAAW;QACd,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,EAAC,WAAW,EAAE,4BAA4B,EAAE,OAAO,EAAE,EAAE,EAAC,CAAC;KAC/E,CAAA;IAED,KAAK,CAAC,GAAG;QACP,MAAM,EAAC,IAAI,EAAE,KAAK,EAAC,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAA;QAC5D,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;QACjC,MAAM,IAAI,GAAG,MAAM,MAAM,CACvB,MAAM,EACN,oBAAoB,IAAI,CAAC,EAAE,WAAW,EACtC,EAAC,KAAK,EAAE,EAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAC,EAAC,CAC7B,CAAA;QACD,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,KAAK,CAAC,MAAM,EAAE;YAC3C,EAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,EAAC;YACxD,EAAC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC,EAAC;YAC/D,EAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,IAAI,EAAE,EAAC;YACtD,EAAC,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,EAAC;YAC7D,EAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAC;SAC/C,CAAC,CAAA;IACJ,CAAC"}
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/commands/monitors/versions/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAC,MAAM,aAAa,CAAA;AAChD,OAAO,EAAC,WAAW,EAAE,WAAW,EAAE,OAAO,EAAC,MAAM,8BAA8B,CAAA;AAC9E,OAAO,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAA;AAKxD,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,OAAO;IACvD,MAAM,CAAC,WAAW,GAAG,oCAAoC,CAAA;IACzD,MAAM,CAAC,QAAQ,GAAG;QAChB,6CAA6C;QAC7C,uDAAuD;QACvD,qDAAqD;KACtD,CAAA;IAED,MAAM,CAAC,IAAI,GAAG,EAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAC,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,EAAC,CAAA;IAC5E,MAAM,CAAC,KAAK,GAAG;QACb,GAAG,WAAW;QACd,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,EAAC,WAAW,EAAE,oCAAoC,EAAE,OAAO,EAAE,EAAE,EAAC,CAAC;KACvF,CAAA;IAED,KAAK,CAAC,GAAG;QACP,MAAM,EAAC,IAAI,EAAE,KAAK,EAAC,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAA;QAC5D,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;QACjC,MAAM,WAAW,GAAG,MAAM,cAAc,CACtC,MAAM,EACN,oBAAoB,IAAI,CAAC,EAAE,WAAW,EACtC,KAAK,CAAC,KAAK,CACZ,CAAA;QACD,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;QAC/C,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE;YACjC,EAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,EAAC;YACxD,EAAC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC,EAAC;YAC/D,EAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,IAAI,EAAE,EAAC;YACtD,EAAC,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,EAAC;YAC7D,EAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAC;SAC/C,CAAC,CAAA;IACJ,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Command, Args } from '@oclif/core';
1
+ import { Command, Args, Flags } from '@oclif/core';
2
2
  import { globalFlags, buildClient, display } from './base-command.js';
3
3
  import { fetchPaginated } from './typed-api.js';
4
4
  import { apiGet, apiPost, apiPut, apiDelete } from './api-client.js';
@@ -6,11 +6,14 @@ export function createListCommand(config) {
6
6
  class ListCmd extends Command {
7
7
  static description = `List all ${config.plural}`;
8
8
  static examples = [`<%= config.bin %> ${config.plural} list`];
9
- static flags = { ...globalFlags };
9
+ static flags = {
10
+ ...globalFlags,
11
+ 'page-size': Flags.integer({ description: 'Number of items per API request (1–200)', default: 200 }),
12
+ };
10
13
  async run() {
11
14
  const { flags } = await this.parse(ListCmd);
12
15
  const client = buildClient(flags);
13
- const items = await fetchPaginated(client, config.apiPath);
16
+ const items = await fetchPaginated(client, config.apiPath, flags['page-size']);
14
17
  display(this, items, flags.output, config.columns);
15
18
  }
16
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"crud-commands.js","sourceRoot":"","sources":["../../src/lib/crud-commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crud-commands.js","sourceRoot":"","sources":["../../src/lib/crud-commands.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,33 @@
1
1
  import { apiGet } from './api-client.js';
2
- const API_PAGE_SIZE = 200;
3
- export async function fetchPaginated(client, path) {
2
+ const DEFAULT_PAGE_SIZE = 200;
3
+ export async function fetchPaginated(client, path, pageSize = DEFAULT_PAGE_SIZE) {
4
4
  const results = [];
5
5
  let page = 0;
6
6
  while (true) {
7
- const resp = await apiGet(client, path, { query: { page, size: API_PAGE_SIZE } });
7
+ const resp = await apiGet(client, path, { query: { page, size: pageSize } });
8
8
  results.push(...(resp.data ?? []));
9
- if (!resp.hasNext)
9
+ if (resp.hasNext !== true)
10
10
  break;
11
11
  page++;
12
12
  }
13
13
  return results;
14
14
  }
15
+ export async function fetchCursorPaginated(client, path, opts = {}) {
16
+ const { query = {}, pageSize = DEFAULT_PAGE_SIZE, maxItems } = opts;
17
+ const results = [];
18
+ let cursor;
19
+ while (true) {
20
+ const effectiveLimit = maxItems ? Math.min(pageSize, maxItems - results.length) : pageSize;
21
+ const resp = await apiGet(client, path, {
22
+ query: { ...query, cursor, limit: effectiveLimit },
23
+ });
24
+ results.push(...(resp.data ?? []));
25
+ if (maxItems && results.length >= maxItems)
26
+ break;
27
+ if (resp.hasMore !== true || !resp.nextCursor)
28
+ break;
29
+ cursor = resp.nextCursor;
30
+ }
31
+ return maxItems ? results.slice(0, maxItems) : results;
32
+ }
15
33
  //# sourceMappingURL=typed-api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"typed-api.js","sourceRoot":"","sources":["../../src/lib/typed-api.ts"],"names":[],"mappings":"AAOA,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAA;AAOtC,MAAM,aAAa,GAAG,GAAG,CAAA;AAEzB,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAAiB,EACjB,IAAY;IAEZ,MAAM,OAAO,GAAY,EAAE,CAAA;IAC3B,IAAI,IAAI,GAAG,CAAC,CAAA;IAEZ,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,MAAM,CAA2B,MAAM,EAAE,IAAI,EAAE,EAAC,KAAK,EAAE,EAAC,IAAI,EAAE,IAAI,EAAE,aAAa,EAAC,EAAC,CAAC,CAAA;QACvG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAA;QAClC,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,MAAK;QACxB,IAAI,EAAE,CAAA;IACR,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC"}
1
+ {"version":3,"file":"typed-api.js","sourceRoot":"","sources":["../../src/lib/typed-api.ts"],"names":[],"mappings":"AAOA,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAA;AAEtC,MAAM,iBAAiB,GAAG,GAAG,CAAA;AAS7B,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAAiB,EACjB,IAAY,EACZ,QAAQ,GAAG,iBAAiB;IAE5B,MAAM,OAAO,GAAY,EAAE,CAAA;IAC3B,IAAI,IAAI,GAAG,CAAC,CAAA;IAEZ,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,MAAM,CAAsB,MAAM,EAAE,IAAI,EAAE,EAAC,KAAK,EAAE,EAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAC,EAAC,CAAC,CAAA;QAC7F,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAA;QAClC,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI;YAAE,MAAK;QAChC,IAAI,EAAE,CAAA;IACR,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAUD,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,MAAiB,EACjB,IAAY,EACZ,OAAgF,EAAE;IAElF,MAAM,EAAC,KAAK,GAAG,EAAE,EAAE,QAAQ,GAAG,iBAAiB,EAAE,QAAQ,EAAC,GAAG,IAAI,CAAA;IACjE,MAAM,OAAO,GAAY,EAAE,CAAA;IAC3B,IAAI,MAA0B,CAAA;IAE9B,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;QAC1F,MAAM,IAAI,GAAG,MAAM,MAAM,CAAwB,MAAM,EAAE,IAAI,EAAE;YAC7D,KAAK,EAAE,EAAC,GAAG,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAC;SACjD,CAAC,CAAA;QACF,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAA;QAElC,IAAI,QAAQ,IAAI,OAAO,CAAC,MAAM,IAAI,QAAQ;YAAE,MAAK;QACjD,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,MAAK;QACpD,MAAM,GAAG,IAAI,CAAC,UAAU,CAAA;IAC1B,CAAC;IAED,OAAO,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;AACxD,CAAC"}
@@ -544,6 +544,14 @@
544
544
  "name": "verbose",
545
545
  "allowNo": false,
546
546
  "type": "boolean"
547
+ },
548
+ "page-size": {
549
+ "description": "Number of items per API request (1–200)",
550
+ "name": "page-size",
551
+ "default": 200,
552
+ "hasDynamicHelp": false,
553
+ "multiple": false,
554
+ "type": "option"
547
555
  }
548
556
  },
549
557
  "hasDynamicHelp": false,
@@ -980,6 +988,14 @@
980
988
  "name": "verbose",
981
989
  "allowNo": false,
982
990
  "type": "boolean"
991
+ },
992
+ "page-size": {
993
+ "description": "Number of items per API request (1–200)",
994
+ "name": "page-size",
995
+ "default": 200,
996
+ "hasDynamicHelp": false,
997
+ "multiple": false,
998
+ "type": "option"
983
999
  }
984
1000
  },
985
1001
  "hasDynamicHelp": false,
@@ -1495,6 +1511,14 @@
1495
1511
  "name": "verbose",
1496
1512
  "allowNo": false,
1497
1513
  "type": "boolean"
1514
+ },
1515
+ "page-size": {
1516
+ "description": "Number of items per API request (1–200)",
1517
+ "name": "page-size",
1518
+ "default": 200,
1519
+ "hasDynamicHelp": false,
1520
+ "multiple": false,
1521
+ "type": "option"
1498
1522
  }
1499
1523
  },
1500
1524
  "hasDynamicHelp": false,
@@ -1579,27 +1603,21 @@
1579
1603
  "track.js"
1580
1604
  ]
1581
1605
  },
1582
- "environments:create": {
1606
+ "deploy:force-unlock": {
1583
1607
  "aliases": [],
1584
1608
  "args": {},
1585
- "description": "Create a new environment",
1609
+ "description": "Force-release a stuck deploy lock on the current workspace",
1586
1610
  "examples": [
1587
- "<%= config.bin %> environments create"
1611
+ "<%= config.bin %> deploy force-unlock",
1612
+ "<%= config.bin %> deploy force-unlock --yes"
1588
1613
  ],
1589
1614
  "flags": {
1590
- "output": {
1591
- "char": "o",
1592
- "description": "Output format",
1593
- "name": "output",
1594
- "default": "table",
1595
- "hasDynamicHelp": false,
1596
- "multiple": false,
1597
- "options": [
1598
- "table",
1599
- "json",
1600
- "yaml"
1601
- ],
1602
- "type": "option"
1615
+ "yes": {
1616
+ "char": "y",
1617
+ "description": "Skip confirmation prompt",
1618
+ "name": "yes",
1619
+ "allowNo": false,
1620
+ "type": "boolean"
1603
1621
  },
1604
1622
  "api-url": {
1605
1623
  "description": "Override API base URL",
@@ -1621,27 +1639,11 @@
1621
1639
  "name": "verbose",
1622
1640
  "allowNo": false,
1623
1641
  "type": "boolean"
1624
- },
1625
- "name": {
1626
- "description": "Human-readable environment name",
1627
- "name": "name",
1628
- "required": true,
1629
- "hasDynamicHelp": false,
1630
- "multiple": false,
1631
- "type": "option"
1632
- },
1633
- "slug": {
1634
- "description": "URL-safe identifier (lowercase alphanumeric, hyphens, underscores)",
1635
- "name": "slug",
1636
- "required": true,
1637
- "hasDynamicHelp": false,
1638
- "multiple": false,
1639
- "type": "option"
1640
1642
  }
1641
1643
  },
1642
1644
  "hasDynamicHelp": false,
1643
1645
  "hiddenAliases": [],
1644
- "id": "environments:create",
1646
+ "id": "deploy:force-unlock",
1645
1647
  "pluginAlias": "devhelm",
1646
1648
  "pluginName": "devhelm",
1647
1649
  "pluginType": "core",
@@ -1651,38 +1653,100 @@
1651
1653
  "relativePath": [
1652
1654
  "dist",
1653
1655
  "commands",
1654
- "environments",
1655
- "create.js"
1656
+ "deploy",
1657
+ "force-unlock.js"
1656
1658
  ]
1657
1659
  },
1658
- "environments:delete": {
1660
+ "deploy": {
1659
1661
  "aliases": [],
1660
- "args": {
1661
- "slug": {
1662
- "description": "environment slug",
1663
- "name": "slug",
1664
- "required": true
1665
- }
1666
- },
1667
- "description": "Delete a environment",
1662
+ "args": {},
1663
+ "description": "Deploy devhelm.yml configuration to the DevHelm API",
1668
1664
  "examples": [
1669
- "<%= config.bin %> environments delete <slug>"
1665
+ "<%= config.bin %> deploy",
1666
+ "<%= config.bin %> deploy --yes",
1667
+ "<%= config.bin %> deploy -f monitors.yml",
1668
+ "<%= config.bin %> deploy --prune --yes",
1669
+ "<%= config.bin %> deploy --prune-all --yes",
1670
+ "<%= config.bin %> deploy --dry-run",
1671
+ "<%= config.bin %> deploy --dry-run --detailed-exitcode",
1672
+ "<%= config.bin %> deploy -o json --yes"
1670
1673
  ],
1671
1674
  "flags": {
1675
+ "file": {
1676
+ "char": "f",
1677
+ "description": "Config file or directory (can be specified multiple times)",
1678
+ "name": "file",
1679
+ "default": [
1680
+ "devhelm.yml"
1681
+ ],
1682
+ "hasDynamicHelp": false,
1683
+ "multiple": true,
1684
+ "type": "option"
1685
+ },
1686
+ "yes": {
1687
+ "char": "y",
1688
+ "description": "Skip confirmation prompt (for CI)",
1689
+ "name": "yes",
1690
+ "allowNo": false,
1691
+ "type": "boolean"
1692
+ },
1693
+ "prune": {
1694
+ "description": "Delete CLI-managed resources not present in config",
1695
+ "name": "prune",
1696
+ "allowNo": false,
1697
+ "type": "boolean"
1698
+ },
1699
+ "prune-all": {
1700
+ "description": "Delete ALL resources not in config, including those not managed by the CLI (use with caution)",
1701
+ "name": "prune-all",
1702
+ "allowNo": false,
1703
+ "type": "boolean"
1704
+ },
1705
+ "dry-run": {
1706
+ "description": "Show what would change without applying (same as \"devhelm plan\")",
1707
+ "name": "dry-run",
1708
+ "allowNo": false,
1709
+ "type": "boolean"
1710
+ },
1711
+ "detailed-exitcode": {
1712
+ "description": "Return exit code 10 if dry-run has changes (for CI)",
1713
+ "name": "detailed-exitcode",
1714
+ "allowNo": false,
1715
+ "type": "boolean"
1716
+ },
1672
1717
  "output": {
1673
1718
  "char": "o",
1674
- "description": "Output format",
1719
+ "description": "Output format (text or json)",
1675
1720
  "name": "output",
1676
- "default": "table",
1721
+ "default": "text",
1677
1722
  "hasDynamicHelp": false,
1678
1723
  "multiple": false,
1679
1724
  "options": [
1680
- "table",
1681
- "json",
1682
- "yaml"
1725
+ "text",
1726
+ "json"
1683
1727
  ],
1684
1728
  "type": "option"
1685
1729
  },
1730
+ "force-unlock": {
1731
+ "description": "Force-break an existing deploy lock before acquiring",
1732
+ "name": "force-unlock",
1733
+ "allowNo": false,
1734
+ "type": "boolean"
1735
+ },
1736
+ "no-lock": {
1737
+ "description": "Skip deploy locking (not recommended for team use)",
1738
+ "name": "no-lock",
1739
+ "allowNo": false,
1740
+ "type": "boolean"
1741
+ },
1742
+ "lock-timeout": {
1743
+ "description": "Seconds to wait for a conflicting lock to release (0 = fail immediately)",
1744
+ "name": "lock-timeout",
1745
+ "default": 0,
1746
+ "hasDynamicHelp": false,
1747
+ "multiple": false,
1748
+ "type": "option"
1749
+ },
1686
1750
  "api-url": {
1687
1751
  "description": "Override API base URL",
1688
1752
  "name": "api-url",
@@ -1707,7 +1771,7 @@
1707
1771
  },
1708
1772
  "hasDynamicHelp": false,
1709
1773
  "hiddenAliases": [],
1710
- "id": "environments:delete",
1774
+ "id": "deploy",
1711
1775
  "pluginAlias": "devhelm",
1712
1776
  "pluginName": "devhelm",
1713
1777
  "pluginType": "core",
@@ -1717,22 +1781,16 @@
1717
1781
  "relativePath": [
1718
1782
  "dist",
1719
1783
  "commands",
1720
- "environments",
1721
- "delete.js"
1784
+ "deploy",
1785
+ "index.js"
1722
1786
  ]
1723
1787
  },
1724
- "environments:get": {
1788
+ "environments:create": {
1725
1789
  "aliases": [],
1726
- "args": {
1727
- "slug": {
1728
- "description": "environment slug",
1729
- "name": "slug",
1730
- "required": true
1731
- }
1732
- },
1733
- "description": "Get a environment by slug",
1790
+ "args": {},
1791
+ "description": "Create a new environment",
1734
1792
  "examples": [
1735
- "<%= config.bin %> environments get <slug>"
1793
+ "<%= config.bin %> environments create"
1736
1794
  ],
1737
1795
  "flags": {
1738
1796
  "output": {
@@ -1769,11 +1827,27 @@
1769
1827
  "name": "verbose",
1770
1828
  "allowNo": false,
1771
1829
  "type": "boolean"
1830
+ },
1831
+ "name": {
1832
+ "description": "Human-readable environment name",
1833
+ "name": "name",
1834
+ "required": true,
1835
+ "hasDynamicHelp": false,
1836
+ "multiple": false,
1837
+ "type": "option"
1838
+ },
1839
+ "slug": {
1840
+ "description": "URL-safe identifier (lowercase alphanumeric, hyphens, underscores)",
1841
+ "name": "slug",
1842
+ "required": true,
1843
+ "hasDynamicHelp": false,
1844
+ "multiple": false,
1845
+ "type": "option"
1772
1846
  }
1773
1847
  },
1774
1848
  "hasDynamicHelp": false,
1775
1849
  "hiddenAliases": [],
1776
- "id": "environments:get",
1850
+ "id": "environments:create",
1777
1851
  "pluginAlias": "devhelm",
1778
1852
  "pluginName": "devhelm",
1779
1853
  "pluginType": "core",
@@ -1784,15 +1858,21 @@
1784
1858
  "dist",
1785
1859
  "commands",
1786
1860
  "environments",
1787
- "get.js"
1861
+ "create.js"
1788
1862
  ]
1789
1863
  },
1790
- "environments:list": {
1864
+ "environments:delete": {
1791
1865
  "aliases": [],
1792
- "args": {},
1793
- "description": "List all environments",
1866
+ "args": {
1867
+ "slug": {
1868
+ "description": "environment slug",
1869
+ "name": "slug",
1870
+ "required": true
1871
+ }
1872
+ },
1873
+ "description": "Delete a environment",
1794
1874
  "examples": [
1795
- "<%= config.bin %> environments list"
1875
+ "<%= config.bin %> environments delete <slug>"
1796
1876
  ],
1797
1877
  "flags": {
1798
1878
  "output": {
@@ -1833,7 +1913,7 @@
1833
1913
  },
1834
1914
  "hasDynamicHelp": false,
1835
1915
  "hiddenAliases": [],
1836
- "id": "environments:list",
1916
+ "id": "environments:delete",
1837
1917
  "pluginAlias": "devhelm",
1838
1918
  "pluginName": "devhelm",
1839
1919
  "pluginType": "core",
@@ -1844,10 +1924,10 @@
1844
1924
  "dist",
1845
1925
  "commands",
1846
1926
  "environments",
1847
- "list.js"
1927
+ "delete.js"
1848
1928
  ]
1849
1929
  },
1850
- "environments:update": {
1930
+ "environments:get": {
1851
1931
  "aliases": [],
1852
1932
  "args": {
1853
1933
  "slug": {
@@ -1856,9 +1936,9 @@
1856
1936
  "required": true
1857
1937
  }
1858
1938
  },
1859
- "description": "Update a environment",
1939
+ "description": "Get a environment by slug",
1860
1940
  "examples": [
1861
- "<%= config.bin %> environments update <slug>"
1941
+ "<%= config.bin %> environments get <slug>"
1862
1942
  ],
1863
1943
  "flags": {
1864
1944
  "output": {
@@ -1895,18 +1975,11 @@
1895
1975
  "name": "verbose",
1896
1976
  "allowNo": false,
1897
1977
  "type": "boolean"
1898
- },
1899
- "name": {
1900
- "description": "New environment name; null preserves current",
1901
- "name": "name",
1902
- "hasDynamicHelp": false,
1903
- "multiple": false,
1904
- "type": "option"
1905
1978
  }
1906
1979
  },
1907
1980
  "hasDynamicHelp": false,
1908
1981
  "hiddenAliases": [],
1909
- "id": "environments:update",
1982
+ "id": "environments:get",
1910
1983
  "pluginAlias": "devhelm",
1911
1984
  "pluginName": "devhelm",
1912
1985
  "pluginType": "core",
@@ -1917,24 +1990,30 @@
1917
1990
  "dist",
1918
1991
  "commands",
1919
1992
  "environments",
1920
- "update.js"
1993
+ "get.js"
1921
1994
  ]
1922
1995
  },
1923
- "deploy:force-unlock": {
1996
+ "environments:list": {
1924
1997
  "aliases": [],
1925
1998
  "args": {},
1926
- "description": "Force-release a stuck deploy lock on the current workspace",
1999
+ "description": "List all environments",
1927
2000
  "examples": [
1928
- "<%= config.bin %> deploy force-unlock",
1929
- "<%= config.bin %> deploy force-unlock --yes"
2001
+ "<%= config.bin %> environments list"
1930
2002
  ],
1931
2003
  "flags": {
1932
- "yes": {
1933
- "char": "y",
1934
- "description": "Skip confirmation prompt",
1935
- "name": "yes",
1936
- "allowNo": false,
1937
- "type": "boolean"
2004
+ "output": {
2005
+ "char": "o",
2006
+ "description": "Output format",
2007
+ "name": "output",
2008
+ "default": "table",
2009
+ "hasDynamicHelp": false,
2010
+ "multiple": false,
2011
+ "options": [
2012
+ "table",
2013
+ "json",
2014
+ "yaml"
2015
+ ],
2016
+ "type": "option"
1938
2017
  },
1939
2018
  "api-url": {
1940
2019
  "description": "Override API base URL",
@@ -1956,11 +2035,19 @@
1956
2035
  "name": "verbose",
1957
2036
  "allowNo": false,
1958
2037
  "type": "boolean"
2038
+ },
2039
+ "page-size": {
2040
+ "description": "Number of items per API request (1–200)",
2041
+ "name": "page-size",
2042
+ "default": 200,
2043
+ "hasDynamicHelp": false,
2044
+ "multiple": false,
2045
+ "type": "option"
1959
2046
  }
1960
2047
  },
1961
2048
  "hasDynamicHelp": false,
1962
2049
  "hiddenAliases": [],
1963
- "id": "deploy:force-unlock",
2050
+ "id": "environments:list",
1964
2051
  "pluginAlias": "devhelm",
1965
2052
  "pluginName": "devhelm",
1966
2053
  "pluginType": "core",
@@ -1970,98 +2057,36 @@
1970
2057
  "relativePath": [
1971
2058
  "dist",
1972
2059
  "commands",
1973
- "deploy",
1974
- "force-unlock.js"
2060
+ "environments",
2061
+ "list.js"
1975
2062
  ]
1976
2063
  },
1977
- "deploy": {
2064
+ "environments:update": {
1978
2065
  "aliases": [],
1979
- "args": {},
1980
- "description": "Deploy devhelm.yml configuration to the DevHelm API",
1981
- "examples": [
1982
- "<%= config.bin %> deploy",
1983
- "<%= config.bin %> deploy --yes",
1984
- "<%= config.bin %> deploy -f monitors.yml",
1985
- "<%= config.bin %> deploy --prune --yes",
1986
- "<%= config.bin %> deploy --prune-all --yes",
1987
- "<%= config.bin %> deploy --dry-run",
1988
- "<%= config.bin %> deploy --dry-run --detailed-exitcode",
1989
- "<%= config.bin %> deploy -o json --yes"
1990
- ],
1991
- "flags": {
1992
- "file": {
1993
- "char": "f",
1994
- "description": "Config file or directory (can be specified multiple times)",
1995
- "name": "file",
1996
- "default": [
1997
- "devhelm.yml"
1998
- ],
1999
- "hasDynamicHelp": false,
2000
- "multiple": true,
2001
- "type": "option"
2002
- },
2003
- "yes": {
2004
- "char": "y",
2005
- "description": "Skip confirmation prompt (for CI)",
2006
- "name": "yes",
2007
- "allowNo": false,
2008
- "type": "boolean"
2009
- },
2010
- "prune": {
2011
- "description": "Delete CLI-managed resources not present in config",
2012
- "name": "prune",
2013
- "allowNo": false,
2014
- "type": "boolean"
2015
- },
2016
- "prune-all": {
2017
- "description": "Delete ALL resources not in config, including those not managed by the CLI (use with caution)",
2018
- "name": "prune-all",
2019
- "allowNo": false,
2020
- "type": "boolean"
2021
- },
2022
- "dry-run": {
2023
- "description": "Show what would change without applying (same as \"devhelm plan\")",
2024
- "name": "dry-run",
2025
- "allowNo": false,
2026
- "type": "boolean"
2027
- },
2028
- "detailed-exitcode": {
2029
- "description": "Return exit code 10 if dry-run has changes (for CI)",
2030
- "name": "detailed-exitcode",
2031
- "allowNo": false,
2032
- "type": "boolean"
2033
- },
2034
- "output": {
2035
- "char": "o",
2036
- "description": "Output format (text or json)",
2037
- "name": "output",
2038
- "default": "text",
2039
- "hasDynamicHelp": false,
2040
- "multiple": false,
2041
- "options": [
2042
- "text",
2043
- "json"
2044
- ],
2045
- "type": "option"
2046
- },
2047
- "force-unlock": {
2048
- "description": "Force-break an existing deploy lock before acquiring",
2049
- "name": "force-unlock",
2050
- "allowNo": false,
2051
- "type": "boolean"
2052
- },
2053
- "no-lock": {
2054
- "description": "Skip deploy locking (not recommended for team use)",
2055
- "name": "no-lock",
2056
- "allowNo": false,
2057
- "type": "boolean"
2058
- },
2059
- "lock-timeout": {
2060
- "description": "Seconds to wait for a conflicting lock to release (0 = fail immediately)",
2061
- "name": "lock-timeout",
2062
- "default": 0,
2066
+ "args": {
2067
+ "slug": {
2068
+ "description": "environment slug",
2069
+ "name": "slug",
2070
+ "required": true
2071
+ }
2072
+ },
2073
+ "description": "Update a environment",
2074
+ "examples": [
2075
+ "<%= config.bin %> environments update <slug>"
2076
+ ],
2077
+ "flags": {
2078
+ "output": {
2079
+ "char": "o",
2080
+ "description": "Output format",
2081
+ "name": "output",
2082
+ "default": "table",
2063
2083
  "hasDynamicHelp": false,
2064
2084
  "multiple": false,
2085
+ "options": [
2086
+ "table",
2087
+ "json",
2088
+ "yaml"
2089
+ ],
2065
2090
  "type": "option"
2066
2091
  },
2067
2092
  "api-url": {
@@ -2084,11 +2109,18 @@
2084
2109
  "name": "verbose",
2085
2110
  "allowNo": false,
2086
2111
  "type": "boolean"
2112
+ },
2113
+ "name": {
2114
+ "description": "New environment name; null preserves current",
2115
+ "name": "name",
2116
+ "hasDynamicHelp": false,
2117
+ "multiple": false,
2118
+ "type": "option"
2087
2119
  }
2088
2120
  },
2089
2121
  "hasDynamicHelp": false,
2090
2122
  "hiddenAliases": [],
2091
- "id": "deploy",
2123
+ "id": "environments:update",
2092
2124
  "pluginAlias": "devhelm",
2093
2125
  "pluginName": "devhelm",
2094
2126
  "pluginType": "core",
@@ -2098,8 +2130,8 @@
2098
2130
  "relativePath": [
2099
2131
  "dist",
2100
2132
  "commands",
2101
- "deploy",
2102
- "index.js"
2133
+ "environments",
2134
+ "update.js"
2103
2135
  ]
2104
2136
  },
2105
2137
  "incidents:create": {
@@ -2305,6 +2337,14 @@
2305
2337
  "name": "verbose",
2306
2338
  "allowNo": false,
2307
2339
  "type": "boolean"
2340
+ },
2341
+ "page-size": {
2342
+ "description": "Number of items per API request (1–200)",
2343
+ "name": "page-size",
2344
+ "default": 200,
2345
+ "hasDynamicHelp": false,
2346
+ "multiple": false,
2347
+ "type": "option"
2308
2348
  }
2309
2349
  },
2310
2350
  "hasDynamicHelp": false,
@@ -2698,6 +2738,14 @@
2698
2738
  "name": "verbose",
2699
2739
  "allowNo": false,
2700
2740
  "type": "boolean"
2741
+ },
2742
+ "page-size": {
2743
+ "description": "Number of items per API request (1–200)",
2744
+ "name": "page-size",
2745
+ "default": 200,
2746
+ "hasDynamicHelp": false,
2747
+ "multiple": false,
2748
+ "type": "option"
2701
2749
  }
2702
2750
  },
2703
2751
  "hasDynamicHelp": false,
@@ -2832,7 +2880,7 @@
2832
2880
  "type": "boolean"
2833
2881
  },
2834
2882
  "limit": {
2835
- "description": "Number of results",
2883
+ "description": "Maximum number of results to show (1–1000)",
2836
2884
  "name": "limit",
2837
2885
  "default": 20,
2838
2886
  "hasDynamicHelp": false,
@@ -3352,6 +3400,14 @@
3352
3400
  "name": "verbose",
3353
3401
  "allowNo": false,
3354
3402
  "type": "boolean"
3403
+ },
3404
+ "page-size": {
3405
+ "description": "Number of items per API request (1–200)",
3406
+ "name": "page-size",
3407
+ "default": 200,
3408
+ "hasDynamicHelp": false,
3409
+ "multiple": false,
3410
+ "type": "option"
3355
3411
  }
3356
3412
  },
3357
3413
  "hasDynamicHelp": false,
@@ -3771,6 +3827,14 @@
3771
3827
  "name": "verbose",
3772
3828
  "allowNo": false,
3773
3829
  "type": "boolean"
3830
+ },
3831
+ "page-size": {
3832
+ "description": "Number of items per API request (1–200)",
3833
+ "name": "page-size",
3834
+ "default": 200,
3835
+ "hasDynamicHelp": false,
3836
+ "multiple": false,
3837
+ "type": "option"
3774
3838
  }
3775
3839
  },
3776
3840
  "hasDynamicHelp": false,
@@ -4060,6 +4124,14 @@
4060
4124
  "name": "verbose",
4061
4125
  "allowNo": false,
4062
4126
  "type": "boolean"
4127
+ },
4128
+ "page-size": {
4129
+ "description": "Number of items per API request (1–200)",
4130
+ "name": "page-size",
4131
+ "default": 200,
4132
+ "hasDynamicHelp": false,
4133
+ "multiple": false,
4134
+ "type": "option"
4063
4135
  }
4064
4136
  },
4065
4137
  "hasDynamicHelp": false,
@@ -4401,6 +4473,14 @@
4401
4473
  "name": "verbose",
4402
4474
  "allowNo": false,
4403
4475
  "type": "boolean"
4476
+ },
4477
+ "page-size": {
4478
+ "description": "Number of items per API request (1–200)",
4479
+ "name": "page-size",
4480
+ "default": 200,
4481
+ "hasDynamicHelp": false,
4482
+ "multiple": false,
4483
+ "type": "option"
4404
4484
  }
4405
4485
  },
4406
4486
  "hasDynamicHelp": false,
@@ -4756,6 +4836,14 @@
4756
4836
  "name": "verbose",
4757
4837
  "allowNo": false,
4758
4838
  "type": "boolean"
4839
+ },
4840
+ "page-size": {
4841
+ "description": "Number of items per API request (1–200)",
4842
+ "name": "page-size",
4843
+ "default": 200,
4844
+ "hasDynamicHelp": false,
4845
+ "multiple": false,
4846
+ "type": "option"
4759
4847
  }
4760
4848
  },
4761
4849
  "hasDynamicHelp": false,
@@ -4927,18 +5015,18 @@
4927
5015
  "update.js"
4928
5016
  ]
4929
5017
  },
4930
- "auth:context:create": {
5018
+ "data:services:status": {
4931
5019
  "aliases": [],
4932
5020
  "args": {
4933
- "name": {
4934
- "description": "Context name",
4935
- "name": "name",
5021
+ "slug": {
5022
+ "description": "Service slug",
5023
+ "name": "slug",
4936
5024
  "required": true
4937
5025
  }
4938
5026
  },
4939
- "description": "Create a new auth context",
5027
+ "description": "Get the current status of a service",
4940
5028
  "examples": [
4941
- "<%= config.bin %> auth context create staging --api-url https://staging-api.devhelm.io --token sk_..."
5029
+ "<%= config.bin %> data services status aws-ec2"
4942
5030
  ],
4943
5031
  "flags": {
4944
5032
  "output": {
@@ -4975,25 +5063,11 @@
4975
5063
  "name": "verbose",
4976
5064
  "allowNo": false,
4977
5065
  "type": "boolean"
4978
- },
4979
- "token": {
4980
- "description": "API token",
4981
- "name": "token",
4982
- "required": true,
4983
- "hasDynamicHelp": false,
4984
- "multiple": false,
4985
- "type": "option"
4986
- },
4987
- "set-current": {
4988
- "description": "Set as current context",
4989
- "name": "set-current",
4990
- "allowNo": false,
4991
- "type": "boolean"
4992
5066
  }
4993
5067
  },
4994
5068
  "hasDynamicHelp": false,
4995
5069
  "hiddenAliases": [],
4996
- "id": "auth:context:create",
5070
+ "id": "data:services:status",
4997
5071
  "pluginAlias": "devhelm",
4998
5072
  "pluginName": "devhelm",
4999
5073
  "pluginType": "core",
@@ -5003,23 +5077,24 @@
5003
5077
  "relativePath": [
5004
5078
  "dist",
5005
5079
  "commands",
5006
- "auth",
5007
- "context",
5008
- "create.js"
5080
+ "data",
5081
+ "services",
5082
+ "status.js"
5009
5083
  ]
5010
5084
  },
5011
- "auth:context:delete": {
5085
+ "data:services:uptime": {
5012
5086
  "aliases": [],
5013
5087
  "args": {
5014
- "name": {
5015
- "description": "Context name to delete",
5016
- "name": "name",
5088
+ "slug": {
5089
+ "description": "Service slug",
5090
+ "name": "slug",
5017
5091
  "required": true
5018
5092
  }
5019
5093
  },
5020
- "description": "Delete an auth context",
5094
+ "description": "Get uptime data for a service",
5021
5095
  "examples": [
5022
- "<%= config.bin %> auth context delete staging"
5096
+ "<%= config.bin %> data services uptime aws-ec2",
5097
+ "<%= config.bin %> data services uptime aws-ec2 --period 30d"
5023
5098
  ],
5024
5099
  "flags": {
5025
5100
  "output": {
@@ -5056,11 +5131,26 @@
5056
5131
  "name": "verbose",
5057
5132
  "allowNo": false,
5058
5133
  "type": "boolean"
5134
+ },
5135
+ "period": {
5136
+ "description": "Time period (7d, 30d, 90d)",
5137
+ "name": "period",
5138
+ "default": "30d",
5139
+ "hasDynamicHelp": false,
5140
+ "multiple": false,
5141
+ "type": "option"
5142
+ },
5143
+ "granularity": {
5144
+ "description": "Data granularity (hourly, daily)",
5145
+ "name": "granularity",
5146
+ "hasDynamicHelp": false,
5147
+ "multiple": false,
5148
+ "type": "option"
5059
5149
  }
5060
5150
  },
5061
5151
  "hasDynamicHelp": false,
5062
5152
  "hiddenAliases": [],
5063
- "id": "auth:context:delete",
5153
+ "id": "data:services:uptime",
5064
5154
  "pluginAlias": "devhelm",
5065
5155
  "pluginName": "devhelm",
5066
5156
  "pluginType": "core",
@@ -5070,17 +5160,23 @@
5070
5160
  "relativePath": [
5071
5161
  "dist",
5072
5162
  "commands",
5073
- "auth",
5074
- "context",
5075
- "delete.js"
5163
+ "data",
5164
+ "services",
5165
+ "uptime.js"
5076
5166
  ]
5077
5167
  },
5078
- "auth:context": {
5168
+ "auth:context:create": {
5079
5169
  "aliases": [],
5080
- "args": {},
5081
- "description": "Show the current auth context",
5170
+ "args": {
5171
+ "name": {
5172
+ "description": "Context name",
5173
+ "name": "name",
5174
+ "required": true
5175
+ }
5176
+ },
5177
+ "description": "Create a new auth context",
5082
5178
  "examples": [
5083
- "<%= config.bin %> auth context"
5179
+ "<%= config.bin %> auth context create staging --api-url https://staging-api.devhelm.io --token sk_..."
5084
5180
  ],
5085
5181
  "flags": {
5086
5182
  "output": {
@@ -5117,11 +5213,25 @@
5117
5213
  "name": "verbose",
5118
5214
  "allowNo": false,
5119
5215
  "type": "boolean"
5216
+ },
5217
+ "token": {
5218
+ "description": "API token",
5219
+ "name": "token",
5220
+ "required": true,
5221
+ "hasDynamicHelp": false,
5222
+ "multiple": false,
5223
+ "type": "option"
5224
+ },
5225
+ "set-current": {
5226
+ "description": "Set as current context",
5227
+ "name": "set-current",
5228
+ "allowNo": false,
5229
+ "type": "boolean"
5120
5230
  }
5121
5231
  },
5122
5232
  "hasDynamicHelp": false,
5123
5233
  "hiddenAliases": [],
5124
- "id": "auth:context",
5234
+ "id": "auth:context:create",
5125
5235
  "pluginAlias": "devhelm",
5126
5236
  "pluginName": "devhelm",
5127
5237
  "pluginType": "core",
@@ -5133,15 +5243,21 @@
5133
5243
  "commands",
5134
5244
  "auth",
5135
5245
  "context",
5136
- "index.js"
5246
+ "create.js"
5137
5247
  ]
5138
5248
  },
5139
- "auth:context:list": {
5249
+ "auth:context:delete": {
5140
5250
  "aliases": [],
5141
- "args": {},
5142
- "description": "List all auth contexts",
5251
+ "args": {
5252
+ "name": {
5253
+ "description": "Context name to delete",
5254
+ "name": "name",
5255
+ "required": true
5256
+ }
5257
+ },
5258
+ "description": "Delete an auth context",
5143
5259
  "examples": [
5144
- "<%= config.bin %> auth context list"
5260
+ "<%= config.bin %> auth context delete staging"
5145
5261
  ],
5146
5262
  "flags": {
5147
5263
  "output": {
@@ -5182,7 +5298,7 @@
5182
5298
  },
5183
5299
  "hasDynamicHelp": false,
5184
5300
  "hiddenAliases": [],
5185
- "id": "auth:context:list",
5301
+ "id": "auth:context:delete",
5186
5302
  "pluginAlias": "devhelm",
5187
5303
  "pluginName": "devhelm",
5188
5304
  "pluginType": "core",
@@ -5194,21 +5310,15 @@
5194
5310
  "commands",
5195
5311
  "auth",
5196
5312
  "context",
5197
- "list.js"
5313
+ "delete.js"
5198
5314
  ]
5199
5315
  },
5200
- "auth:context:use": {
5316
+ "auth:context": {
5201
5317
  "aliases": [],
5202
- "args": {
5203
- "name": {
5204
- "description": "Context name to activate",
5205
- "name": "name",
5206
- "required": true
5207
- }
5208
- },
5209
- "description": "Switch to a different auth context",
5318
+ "args": {},
5319
+ "description": "Show the current auth context",
5210
5320
  "examples": [
5211
- "<%= config.bin %> auth context use staging"
5321
+ "<%= config.bin %> auth context"
5212
5322
  ],
5213
5323
  "flags": {
5214
5324
  "output": {
@@ -5249,7 +5359,7 @@
5249
5359
  },
5250
5360
  "hasDynamicHelp": false,
5251
5361
  "hiddenAliases": [],
5252
- "id": "auth:context:use",
5362
+ "id": "auth:context",
5253
5363
  "pluginAlias": "devhelm",
5254
5364
  "pluginName": "devhelm",
5255
5365
  "pluginType": "core",
@@ -5261,21 +5371,15 @@
5261
5371
  "commands",
5262
5372
  "auth",
5263
5373
  "context",
5264
- "use.js"
5374
+ "index.js"
5265
5375
  ]
5266
5376
  },
5267
- "data:services:status": {
5377
+ "auth:context:list": {
5268
5378
  "aliases": [],
5269
- "args": {
5270
- "slug": {
5271
- "description": "Service slug",
5272
- "name": "slug",
5273
- "required": true
5274
- }
5275
- },
5276
- "description": "Get the current status of a service",
5379
+ "args": {},
5380
+ "description": "List all auth contexts",
5277
5381
  "examples": [
5278
- "<%= config.bin %> data services status aws-ec2"
5382
+ "<%= config.bin %> auth context list"
5279
5383
  ],
5280
5384
  "flags": {
5281
5385
  "output": {
@@ -5316,7 +5420,7 @@
5316
5420
  },
5317
5421
  "hasDynamicHelp": false,
5318
5422
  "hiddenAliases": [],
5319
- "id": "data:services:status",
5423
+ "id": "auth:context:list",
5320
5424
  "pluginAlias": "devhelm",
5321
5425
  "pluginName": "devhelm",
5322
5426
  "pluginType": "core",
@@ -5326,24 +5430,23 @@
5326
5430
  "relativePath": [
5327
5431
  "dist",
5328
5432
  "commands",
5329
- "data",
5330
- "services",
5331
- "status.js"
5433
+ "auth",
5434
+ "context",
5435
+ "list.js"
5332
5436
  ]
5333
5437
  },
5334
- "data:services:uptime": {
5438
+ "auth:context:use": {
5335
5439
  "aliases": [],
5336
5440
  "args": {
5337
- "slug": {
5338
- "description": "Service slug",
5339
- "name": "slug",
5441
+ "name": {
5442
+ "description": "Context name to activate",
5443
+ "name": "name",
5340
5444
  "required": true
5341
5445
  }
5342
5446
  },
5343
- "description": "Get uptime data for a service",
5447
+ "description": "Switch to a different auth context",
5344
5448
  "examples": [
5345
- "<%= config.bin %> data services uptime aws-ec2",
5346
- "<%= config.bin %> data services uptime aws-ec2 --period 30d"
5449
+ "<%= config.bin %> auth context use staging"
5347
5450
  ],
5348
5451
  "flags": {
5349
5452
  "output": {
@@ -5380,26 +5483,11 @@
5380
5483
  "name": "verbose",
5381
5484
  "allowNo": false,
5382
5485
  "type": "boolean"
5383
- },
5384
- "period": {
5385
- "description": "Time period (7d, 30d, 90d)",
5386
- "name": "period",
5387
- "default": "30d",
5388
- "hasDynamicHelp": false,
5389
- "multiple": false,
5390
- "type": "option"
5391
- },
5392
- "granularity": {
5393
- "description": "Data granularity (hourly, daily)",
5394
- "name": "granularity",
5395
- "hasDynamicHelp": false,
5396
- "multiple": false,
5397
- "type": "option"
5398
5486
  }
5399
5487
  },
5400
5488
  "hasDynamicHelp": false,
5401
5489
  "hiddenAliases": [],
5402
- "id": "data:services:uptime",
5490
+ "id": "auth:context:use",
5403
5491
  "pluginAlias": "devhelm",
5404
5492
  "pluginName": "devhelm",
5405
5493
  "pluginType": "core",
@@ -5409,9 +5497,9 @@
5409
5497
  "relativePath": [
5410
5498
  "dist",
5411
5499
  "commands",
5412
- "data",
5413
- "services",
5414
- "uptime.js"
5500
+ "auth",
5501
+ "context",
5502
+ "use.js"
5415
5503
  ]
5416
5504
  },
5417
5505
  "monitors:versions:get": {
@@ -5539,7 +5627,7 @@
5539
5627
  "type": "boolean"
5540
5628
  },
5541
5629
  "limit": {
5542
- "description": "Number of versions to show",
5630
+ "description": "Maximum number of versions to show",
5543
5631
  "name": "limit",
5544
5632
  "default": 20,
5545
5633
  "hasDynamicHelp": false,
@@ -5565,5 +5653,5 @@
5565
5653
  ]
5566
5654
  }
5567
5655
  },
5568
- "version": "0.1.5"
5656
+ "version": "0.1.6"
5569
5657
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "devhelm",
3
- "version": "0.1.5",
3
+ "version": "0.1.6",
4
4
  "description": "DevHelm CLI — manage monitors, deployments, and infrastructure as code",
5
5
  "author": "DevHelm <hello@devhelm.io>",
6
6
  "license": "MIT",