@faable/deploy-sdk 2.1.0 → 2.3.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.
@@ -1,6 +1,6 @@
1
- import { FaableApi } from "@faable/sdk-base";
2
1
  import type { ApiParams } from "@faable/sdk-base";
3
- import type { AppTraffic } from "./api/api-types.js";
2
+ import { GeneratedFaableDeployApi } from "./api/generated-client.js";
3
+ import type { AppTraffic } from "./api/custom-types.js";
4
4
  export interface AppTrafficQuery {
5
5
  /** Unix seconds; defaults to 24h ago. */
6
6
  from?: number;
@@ -17,9 +17,73 @@ export interface AppTrafficQuery {
17
17
  /** Narrow the error-endpoints panel to one exact status code. */
18
18
  error_status?: number;
19
19
  }
20
- export declare class DeployApi extends FaableApi {
20
+ export declare class DeployApi extends GeneratedFaableDeployApi {
21
21
  constructor(params?: ApiParams);
22
- getDeployment(id: string): Promise<{
22
+ updateStatus<T>(id: string, data: T): Promise<any>;
23
+ /**
24
+ * Per-app HTTP traffic metrics. Kept hand-written: the rich `AppTrafficQuery`
25
+ * coercion (numbers → query strings) and the curated `AppTraffic` return type
26
+ * (no OpenAPI schema yet) aren't expressible by the generated `appTraffic`.
27
+ */
28
+ getAppTraffic(id: string, query?: AppTrafficQuery): Promise<AppTraffic>;
29
+ /**
30
+ * List an app's secrets. Kept hand-written because, unlike the other lists,
31
+ * `secrets/list_app` is not a `{ next, results }` page — the generated
32
+ * `secretsListApp` returns the raw response, whereas consumers expect a
33
+ * paginator here.
34
+ */
35
+ listSecrets(id: string): {
36
+ all: () => Promise<{
37
+ id: string;
38
+ team: string;
39
+ app_id?: string;
40
+ profile_id?: string;
41
+ related: string;
42
+ related_model: string;
43
+ name: string;
44
+ value: string;
45
+ metadata: {
46
+ [key: string]: unknown;
47
+ };
48
+ createdAt: string;
49
+ updatedAt?: string;
50
+ }[]>;
51
+ first: () => Promise<import("@faable/sdk-base/dist/helpers/paginator.js").Page<{
52
+ id: string;
53
+ team: string;
54
+ app_id?: string;
55
+ profile_id?: string;
56
+ related: string;
57
+ related_model: string;
58
+ name: string;
59
+ value: string;
60
+ metadata: {
61
+ [key: string]: unknown;
62
+ };
63
+ createdAt: string;
64
+ updatedAt?: string;
65
+ }>>;
66
+ pass: (params?: {
67
+ cursor?: string;
68
+ pageSize?: string;
69
+ }) => Promise<import("@faable/sdk-base/dist/helpers/paginator.js").Page<{
70
+ id: string;
71
+ team: string;
72
+ app_id?: string;
73
+ profile_id?: string;
74
+ related: string;
75
+ related_model: string;
76
+ name: string;
77
+ value: string;
78
+ metadata: {
79
+ [key: string]: unknown;
80
+ };
81
+ createdAt: string;
82
+ updatedAt?: string;
83
+ }>>;
84
+ };
85
+ /** @deprecated use {@link GeneratedFaableDeployApi.deploymentGet | deploymentGet} */
86
+ getDeployment(...args: Parameters<GeneratedFaableDeployApi["deploymentGet"]>): Promise<{
23
87
  id: string;
24
88
  team: string;
25
89
  app_id: string;
@@ -35,7 +99,8 @@ export declare class DeployApi extends FaableApi {
35
99
  createdAt: string;
36
100
  updatedAt?: string;
37
101
  }>;
38
- getApp(id: string): Promise<{
102
+ /** @deprecated use {@link GeneratedFaableDeployApi.appGet | appGet} */
103
+ getApp(...args: Parameters<GeneratedFaableDeployApi["appGet"]>): Promise<{
39
104
  id: string;
40
105
  team: string;
41
106
  name: string;
@@ -43,8 +108,13 @@ export declare class DeployApi extends FaableApi {
43
108
  slug: string;
44
109
  url: string;
45
110
  active: boolean;
111
+ disabled_reason?: string | null;
46
112
  runtime: import("./index.js").components["schemas"]["AppRuntime"];
47
113
  runtime_strategy: string | null;
114
+ mode: import("./index.js").components["schemas"]["AppMode"];
115
+ coexistence_routing?: ("cookie" | "path") | null;
116
+ coexistence_keep_versions?: number | null;
117
+ coexistence_drain_hours?: number | null;
48
118
  instance_type: string;
49
119
  region: "gui1" | "poz1" | "ams1";
50
120
  status: import("./index.js").components["schemas"]["AppStatus"];
@@ -57,13 +127,66 @@ export declare class DeployApi extends FaableApi {
57
127
  createdAt: string;
58
128
  updatedAt?: string;
59
129
  }>;
130
+ /** @deprecated use {@link GeneratedFaableDeployApi.domainList | domainList} */
131
+ listDomains(...args: Parameters<GeneratedFaableDeployApi["domainList"]>): {
132
+ all: () => Promise<{
133
+ id: string;
134
+ team: string;
135
+ fqdn: string;
136
+ tls: boolean;
137
+ app_id: string | null;
138
+ verified: boolean;
139
+ active: boolean;
140
+ dns_alias: string | null;
141
+ status: import("./index.js").components["schemas"]["DomainStatus"];
142
+ metadata: {
143
+ [key: string]: unknown;
144
+ };
145
+ createdAt: string;
146
+ updatedAt?: string;
147
+ }[]>;
148
+ first: () => Promise<import("@faable/sdk-base/dist/helpers/paginator.js").Page<{
149
+ id: string;
150
+ team: string;
151
+ fqdn: string;
152
+ tls: boolean;
153
+ app_id: string | null;
154
+ verified: boolean;
155
+ active: boolean;
156
+ dns_alias: string | null;
157
+ status: import("./index.js").components["schemas"]["DomainStatus"];
158
+ metadata: {
159
+ [key: string]: unknown;
160
+ };
161
+ createdAt: string;
162
+ updatedAt?: string;
163
+ }>>;
164
+ pass: (params?: {
165
+ cursor?: string;
166
+ pageSize?: string;
167
+ }) => Promise<import("@faable/sdk-base/dist/helpers/paginator.js").Page<{
168
+ id: string;
169
+ team: string;
170
+ fqdn: string;
171
+ tls: boolean;
172
+ app_id: string | null;
173
+ verified: boolean;
174
+ active: boolean;
175
+ dns_alias: string | null;
176
+ status: import("./index.js").components["schemas"]["DomainStatus"];
177
+ metadata: {
178
+ [key: string]: unknown;
179
+ };
180
+ createdAt: string;
181
+ updatedAt?: string;
182
+ }>>;
183
+ };
60
184
  /**
61
- * List apps, optionally filtered with a FaableQL `query` (e.g.
62
- * `"active:true"` to fetch only enabled apps server-side) and/or expanding
63
- * nested refs (e.g. `{ expand: "status.deployment" }` to inline the active
64
- * Deployment object on each app lets a caller avoid a per-app
65
- * `getApp(?expand=)` round-trip). Both are threaded into every page request
66
- * by the paginator.
185
+ * @deprecated use {@link GeneratedFaableDeployApi.appList | appList}
186
+ *
187
+ * Convenience wrapper with a positional `(query, { expand })` signature. Kept
188
+ * hand-written because the generated `appList` types `expand` as an enum array
189
+ * rather than the legacy free-form string this accepted.
67
190
  */
68
191
  listApps(query?: string, opts?: {
69
192
  expand?: string;
@@ -76,8 +199,13 @@ export declare class DeployApi extends FaableApi {
76
199
  slug: string;
77
200
  url: string;
78
201
  active: boolean;
202
+ disabled_reason?: string | null;
79
203
  runtime: import("./index.js").components["schemas"]["AppRuntime"];
80
204
  runtime_strategy: string | null;
205
+ mode: import("./index.js").components["schemas"]["AppMode"];
206
+ coexistence_routing?: ("cookie" | "path") | null;
207
+ coexistence_keep_versions?: number | null;
208
+ coexistence_drain_hours?: number | null;
81
209
  instance_type: string;
82
210
  region: "gui1" | "poz1" | "ams1";
83
211
  status: import("./index.js").components["schemas"]["AppStatus"];
@@ -98,8 +226,13 @@ export declare class DeployApi extends FaableApi {
98
226
  slug: string;
99
227
  url: string;
100
228
  active: boolean;
229
+ disabled_reason?: string | null;
101
230
  runtime: import("./index.js").components["schemas"]["AppRuntime"];
102
231
  runtime_strategy: string | null;
232
+ mode: import("./index.js").components["schemas"]["AppMode"];
233
+ coexistence_routing?: ("cookie" | "path") | null;
234
+ coexistence_keep_versions?: number | null;
235
+ coexistence_drain_hours?: number | null;
103
236
  instance_type: string;
104
237
  region: "gui1" | "poz1" | "ams1";
105
238
  status: import("./index.js").components["schemas"]["AppStatus"];
@@ -123,8 +256,13 @@ export declare class DeployApi extends FaableApi {
123
256
  slug: string;
124
257
  url: string;
125
258
  active: boolean;
259
+ disabled_reason?: string | null;
126
260
  runtime: import("./index.js").components["schemas"]["AppRuntime"];
127
261
  runtime_strategy: string | null;
262
+ mode: import("./index.js").components["schemas"]["AppMode"];
263
+ coexistence_routing?: ("cookie" | "path") | null;
264
+ coexistence_keep_versions?: number | null;
265
+ coexistence_drain_hours?: number | null;
128
266
  instance_type: string;
129
267
  region: "gui1" | "poz1" | "ams1";
130
268
  status: import("./index.js").components["schemas"]["AppStatus"];
@@ -138,117 +276,10 @@ export declare class DeployApi extends FaableApi {
138
276
  updatedAt?: string;
139
277
  }>>;
140
278
  };
141
- updateStatus<T>(id: string, data: T): Promise<any>;
142
- listSecrets(id: string): {
143
- all: () => Promise<{
144
- id: string;
145
- team: string;
146
- app_id?: string;
147
- profile_id?: string;
148
- related: string;
149
- related_model: string;
150
- name: string;
151
- value: string;
152
- metadata: {
153
- [key: string]: unknown;
154
- };
155
- createdAt: string;
156
- updatedAt?: string;
157
- }[]>;
158
- first: () => Promise<import("@faable/sdk-base/dist/helpers/paginator.js").Page<{
159
- id: string;
160
- team: string;
161
- app_id?: string;
162
- profile_id?: string;
163
- related: string;
164
- related_model: string;
165
- name: string;
166
- value: string;
167
- metadata: {
168
- [key: string]: unknown;
169
- };
170
- createdAt: string;
171
- updatedAt?: string;
172
- }>>;
173
- pass: (params?: {
174
- cursor?: string;
175
- pageSize?: string;
176
- }) => Promise<import("@faable/sdk-base/dist/helpers/paginator.js").Page<{
177
- id: string;
178
- team: string;
179
- app_id?: string;
180
- profile_id?: string;
181
- related: string;
182
- related_model: string;
183
- name: string;
184
- value: string;
185
- metadata: {
186
- [key: string]: unknown;
187
- };
188
- createdAt: string;
189
- updatedAt?: string;
190
- }>>;
191
- };
192
- listDomains(): {
193
- all: () => Promise<{
194
- id: string;
195
- team: string;
196
- fqdn: string;
197
- tls: boolean;
198
- app_id: string | null;
199
- verified: boolean;
200
- active: boolean;
201
- dns_alias: string | null;
202
- status: import("./index.js").components["schemas"]["DomainStatus"];
203
- metadata: {
204
- [key: string]: unknown;
205
- };
206
- createdAt: string;
207
- updatedAt?: string;
208
- }[]>;
209
- first: () => Promise<import("@faable/sdk-base/dist/helpers/paginator.js").Page<{
210
- id: string;
211
- team: string;
212
- fqdn: string;
213
- tls: boolean;
214
- app_id: string | null;
215
- verified: boolean;
216
- active: boolean;
217
- dns_alias: string | null;
218
- status: import("./index.js").components["schemas"]["DomainStatus"];
219
- metadata: {
220
- [key: string]: unknown;
221
- };
222
- createdAt: string;
223
- updatedAt?: string;
224
- }>>;
225
- pass: (params?: {
226
- cursor?: string;
227
- pageSize?: string;
228
- }) => Promise<import("@faable/sdk-base/dist/helpers/paginator.js").Page<{
229
- id: string;
230
- team: string;
231
- fqdn: string;
232
- tls: boolean;
233
- app_id: string | null;
234
- verified: boolean;
235
- active: boolean;
236
- dns_alias: string | null;
237
- status: import("./index.js").components["schemas"]["DomainStatus"];
238
- metadata: {
239
- [key: string]: unknown;
240
- };
241
- createdAt: string;
242
- updatedAt?: string;
243
- }>>;
244
- };
245
279
  /**
246
- * List deployments, optionally filtered with a FaableQL `query` (e.g.
247
- * `"app_id:app_xxx"` to fetch only one app's deployments server-side). The
248
- * query is threaded into every page request by the paginator. Returns a
249
- * paginator (use `.all()` / `.pass({ pageSize })`) — the controller fetches a
250
- * bounded newest-first page per app to serve orphan-recovery + stale-cleanup
251
- * from a single round-trip.
280
+ * @deprecated use {@link GeneratedFaableDeployApi.deploymentList | deploymentList}
281
+ *
282
+ * Convenience wrapper with a positional FaableQL `query` signature.
252
283
  */
253
284
  listDeployments(query?: string): {
254
285
  all: () => Promise<{
@@ -303,6 +334,5 @@ export declare class DeployApi extends FaableApi {
303
334
  updatedAt?: string;
304
335
  }>>;
305
336
  };
306
- getAppTraffic(id: string, query?: AppTrafficQuery): Promise<AppTraffic>;
307
337
  }
308
338
  //# sourceMappingURL=FaableDeployApi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FaableDeployApi.d.ts","sourceRoot":"","sources":["../src/FaableDeployApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAKV,UAAU,EACX,MAAM,oBAAoB,CAAC;AAG5B,MAAM,WAAW,eAAe;IAC9B,yCAAyC;IACzC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0EAA0E;IAC1E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2EAA2E;IAC3E,cAAc,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,YAAY,CAAC;IACzD,yDAAyD;IACzD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iEAAiE;IACjE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,qBAAa,SAAU,SAAQ,SAAS;gBAC1B,MAAM,CAAC,EAAE,SAAS;IAe9B,aAAa,CAAC,EAAE,EAAE,MAAM;;;;;;;;;gBA6Do6tB,0CAAsB;;;;;;;IA1Dl9tB,MAAM,CAAC,EAAE,EAAE,MAAM;;;;;;;;iBA0DugoB,0CAAsB;;;;gBAA+d,0CAAsB;;;;;;;;;;IAvDnipB;;;;;;;OAOG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;;qBA+Cq+nB,0CAAsB;;;;oBAA+d,0CAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAvF1gpB,CAAA;oBAA0B,CAAC;;;;;;;;;qBAuFo+nB,0CAAsB;;;;oBAA+d,0CAAsB;;;;;;;;;;;IAtCnipB,YAAY,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAGnC,WAAW,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBApDG,CAAA;oBAA0B,CAAC;;;;;;;;;;;;;;;;;IAuDpD,WAAW;;;;;;;;;;oBAgC4l0B,0CAAsB;;;;;;;;;;;;;;;;;;;;;;;;kBAvFpm0B,CAAA;oBAA0B,CAAC;;;;;;;;;;oBAuFmj0B,0CAAsB;;;;;;;;IA7B7n0B;;;;;;;OAOG;IACH,eAAe,CAAC,KAAK,CAAC,EAAE,MAAM;;;;;;;;;;oBAqB85tB,0CAAsB;;;;;;;;;;;;;;;;;;;;;;;;kBAvFz7tB,CAAA;oBAA0B,CAAC;;;;;;;;;;oBAuFw4tB,0CAAsB;;;;;;;;IAfl9tB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,GAAE,eAAoB;CActD"}
1
+ {"version":3,"file":"FaableDeployApi.d.ts","sourceRoot":"","sources":["../src/FaableDeployApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,KAAK,EAGV,UAAU,EAEX,MAAM,uBAAuB,CAAC;AAG/B,MAAM,WAAW,eAAe;IAC9B,yCAAyC;IACzC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0EAA0E;IAC1E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2EAA2E;IAC3E,cAAc,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,YAAY,CAAC;IACzD,yDAAyD;IACzD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iEAAiE;IACjE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,qBAAa,SAAU,SAAQ,wBAAwB;gBACzC,MAAM,CAAC,EAAE,SAAS;IAoB9B,YAAY,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAInC;;;;OAIG;IACH,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,GAAE,eAAoB;IAerD;;;;;OAKG;IACH,WAAW,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA7Df,CAAC;oBAA0B,CAAC;;;;;;;;;;;;;;;;;IAsEnC,qFAAqF;IACrF,aAAa,CACX,GAAG,IAAI,EAAE,UAAU,CAAC,wBAAwB,CAAC,eAAe,CAAC,CAAC;;;;;;;;;gBA4C8wpE,0CAAsB;;;;;;;IAvCp2pE,uEAAuE;IACvE,MAAM,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC;;;;;;;;;iBAsCuriD,0CAAsB;;cAAsG,0CAAsB;;;;;;gBAAyuB,0CAAsB;;;;;;;;;;IAlCtokD,+EAA+E;IAC/E,WAAW,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAAC;;;;;;;;;;oBAiCuq2B,0CAAsB;;;;;;;;;;;;;;;;;;;;;;;;kBApH7v2B,CAAC;oBAA0B,CAAC;;;;;;;;;;oBAoH2s2B,0CAAsB;;;;;;;;IA7Bpw2B;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;qBAsB6uoB,0CAAsB;;kBAA8E,0CAAsB;;;;;;oBAAylB,0CAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBApHlgqB,CAAC;oBAA0B,CAAC;;;;;;;;;;qBAoH6voB,0CAAsB;;kBAA8E,0CAAsB;;;;;;oBAAylB,0CAAsB;;;;;;;;;;;IAZzgqB;;;;OAIG;IACH,eAAe,CAAC,KAAK,CAAC,EAAE,MAAM;;;;;;;;;;oBAOm+vB,0CAAsB;;;;;;;;;;;;;;;;;;;;;;;;kBApHhhwB,CAAC;oBAA0B,CAAC;;;;;;;;;;oBAoH89vB,0CAAsB;;;;;;;;CADxhwB"}
@@ -1,6 +1,6 @@
1
- import { FaableApi } from "@faable/sdk-base";
1
+ import { GeneratedFaableDeployApi } from "./api/generated-client.js";
2
2
  import { version } from "./version.js";
3
- export class DeployApi extends FaableApi {
3
+ export class DeployApi extends GeneratedFaableDeployApi {
4
4
  constructor(params) {
5
5
  super({
6
6
  baseURL: "https://api.faable.com",
@@ -15,54 +15,18 @@ export class DeployApi extends FaableApi {
15
15
  },
16
16
  });
17
17
  }
18
- getDeployment(id) {
19
- return this.fetcher.get(`/deployment/${id}`);
20
- }
21
- getApp(id) {
22
- return this.fetcher.get(`/app/${id}`);
23
- }
24
- /**
25
- * List apps, optionally filtered with a FaableQL `query` (e.g.
26
- * `"active:true"` to fetch only enabled apps server-side) and/or expanding
27
- * nested refs (e.g. `{ expand: "status.deployment" }` to inline the active
28
- * Deployment object on each app — lets a caller avoid a per-app
29
- * `getApp(?expand=)` round-trip). Both are threaded into every page request
30
- * by the paginator.
31
- */
32
- listApps(query, opts) {
33
- const params = {};
34
- if (query)
35
- params.query = query;
36
- if (opts?.expand)
37
- params.expand = opts.expand;
38
- return this.paginator({
39
- url: "/app",
40
- ...(Object.keys(params).length ? { params } : {}),
41
- });
42
- }
18
+ // ── Custom-logic helpers (not plain CRUD — kept hand-written) ──────────────
19
+ // Internal status-reporting endpoint (`status/update` is marked x-internal in
20
+ // the API, so it is intentionally NOT in the generated surface). Used by the
21
+ // deploy controller to report deployment/app status. Generic over the body.
43
22
  updateStatus(id, data) {
44
23
  return this.fetcher.post(`/status/${id}`, data);
45
24
  }
46
- listSecrets(id) {
47
- return this.paginator({ url: `/secret/${id}` });
48
- }
49
- listDomains() {
50
- return this.paginator({ url: "/domain" });
51
- }
52
25
  /**
53
- * List deployments, optionally filtered with a FaableQL `query` (e.g.
54
- * `"app_id:app_xxx"` to fetch only one app's deployments server-side). The
55
- * query is threaded into every page request by the paginator. Returns a
56
- * paginator (use `.all()` / `.pass({ pageSize })`) — the controller fetches a
57
- * bounded newest-first page per app to serve orphan-recovery + stale-cleanup
58
- * from a single round-trip.
26
+ * Per-app HTTP traffic metrics. Kept hand-written: the rich `AppTrafficQuery`
27
+ * coercion (numbers query strings) and the curated `AppTraffic` return type
28
+ * (no OpenAPI schema yet) aren't expressible by the generated `appTraffic`.
59
29
  */
60
- listDeployments(query) {
61
- return this.paginator({
62
- url: "/deployment",
63
- ...(query ? { params: { query } } : {}),
64
- });
65
- }
66
30
  getAppTraffic(id, query = {}) {
67
31
  const params = {};
68
32
  if (query.from != null)
@@ -81,4 +45,58 @@ export class DeployApi extends FaableApi {
81
45
  params.error_status = String(query.error_status);
82
46
  return this.fetcher.get(`/app/${id}/traffic`, { params });
83
47
  }
48
+ /**
49
+ * List an app's secrets. Kept hand-written because, unlike the other lists,
50
+ * `secrets/list_app` is not a `{ next, results }` page — the generated
51
+ * `secretsListApp` returns the raw response, whereas consumers expect a
52
+ * paginator here.
53
+ */
54
+ listSecrets(id) {
55
+ return this.paginator({ url: `/secret/${id}` });
56
+ }
57
+ // ── Deprecated aliases ─────────────────────────────────────────────────────
58
+ // Thin forwarders to the auto-generated methods, kept so existing consumers
59
+ // don't break. Prefer the generated names; these will be removed in a future
60
+ // major.
61
+ /** @deprecated use {@link GeneratedFaableDeployApi.deploymentGet | deploymentGet} */
62
+ getDeployment(...args) {
63
+ return this.deploymentGet(...args);
64
+ }
65
+ /** @deprecated use {@link GeneratedFaableDeployApi.appGet | appGet} */
66
+ getApp(...args) {
67
+ return this.appGet(...args);
68
+ }
69
+ /** @deprecated use {@link GeneratedFaableDeployApi.domainList | domainList} */
70
+ listDomains(...args) {
71
+ return this.domainList(...args);
72
+ }
73
+ /**
74
+ * @deprecated use {@link GeneratedFaableDeployApi.appList | appList}
75
+ *
76
+ * Convenience wrapper with a positional `(query, { expand })` signature. Kept
77
+ * hand-written because the generated `appList` types `expand` as an enum array
78
+ * rather than the legacy free-form string this accepted.
79
+ */
80
+ listApps(query, opts) {
81
+ const params = {};
82
+ if (query)
83
+ params.query = query;
84
+ if (opts?.expand)
85
+ params.expand = opts.expand;
86
+ return this.paginator({
87
+ url: "/app",
88
+ ...(Object.keys(params).length ? { params } : {}),
89
+ });
90
+ }
91
+ /**
92
+ * @deprecated use {@link GeneratedFaableDeployApi.deploymentList | deploymentList}
93
+ *
94
+ * Convenience wrapper with a positional FaableQL `query` signature.
95
+ */
96
+ listDeployments(query) {
97
+ return this.paginator({
98
+ url: "/deployment",
99
+ ...(query ? { params: { query } } : {}),
100
+ });
101
+ }
84
102
  }
@@ -1,80 +1,62 @@
1
1
  import type { components } from "./types.js";
2
+ export type ApiKey = components["schemas"]["ApiKey"];
3
+ export type ApiKeyCreate = components["schemas"]["ApiKeyCreate"];
4
+ export type ApiKeyUpdate = components["schemas"]["ApiKeyUpdate"];
2
5
  export type App = components["schemas"]["App"];
3
- export type AppStatus = components["schemas"]["AppStatus"];
6
+ export type AppChecknameResponse = components["schemas"]["AppChecknameResponse"];
7
+ export type AppCoexistenceRouting = components["schemas"]["AppCoexistenceRouting"];
8
+ export type AppCreate = components["schemas"]["AppCreate"];
9
+ export type AppMode = components["schemas"]["AppMode"];
4
10
  export type AppRuntime = components["schemas"]["AppRuntime"];
5
11
  export type AppRuntimeStrategy = components["schemas"]["AppRuntimeStrategy"];
12
+ export type AppStatus = components["schemas"]["AppStatus"];
13
+ export type AppUpdate = components["schemas"]["AppUpdate"];
14
+ export type Contact = components["schemas"]["Contact"];
15
+ export type ContactCreate = components["schemas"]["ContactCreate"];
16
+ export type ContactType = components["schemas"]["ContactType"];
17
+ export type ContactUpdate = components["schemas"]["ContactUpdate"];
18
+ export type DeployBranchResult = components["schemas"]["DeployBranchResult"];
19
+ export type DeployWorkflowStatus = components["schemas"]["DeployWorkflowStatus"];
6
20
  export type Deployment = components["schemas"]["Deployment"];
21
+ export type DeploymentCreate = components["schemas"]["DeploymentCreate"];
7
22
  export type DeploymentStatus = components["schemas"]["DeploymentStatus"];
8
- export type Secret = components["schemas"]["Secret"];
23
+ export type DeploymentUpdate = components["schemas"]["DeploymentUpdate"];
9
24
  export type Domain = components["schemas"]["Domain"];
10
- export type EventSecretsCreateBatchEvent = components["schemas"]["EventSecretCreate_batch"];
11
- export type EventDeploymentCreated = components["schemas"]["EventDeploymentCreate"];
12
- export type EventAppDelete = components["schemas"]["EventAppDelete"];
25
+ export type DomainCreate = components["schemas"]["DomainCreate"];
26
+ export type DomainStatus = components["schemas"]["DomainStatus"];
27
+ export type DomainUpdate = components["schemas"]["DomainUpdate"];
28
+ export type EventApikeyCreate = components["schemas"]["EventApikeyCreate"];
29
+ export type EventApikeyDelete = components["schemas"]["EventApikeyDelete"];
30
+ export type EventApikeyUpdate = components["schemas"]["EventApikeyUpdate"];
13
31
  export type EventAppCreate = components["schemas"]["EventAppCreate"];
32
+ export type EventAppDelete = components["schemas"]["EventAppDelete"];
33
+ export type EventAppStatus = components["schemas"]["EventAppStatus"];
14
34
  export type EventAppUpdate = components["schemas"]["EventAppUpdate"];
35
+ export type EventContactCreate = components["schemas"]["EventContactCreate"];
36
+ export type EventContactDelete = components["schemas"]["EventContactDelete"];
37
+ export type EventContactUpdate = components["schemas"]["EventContactUpdate"];
38
+ export type EventDeploymentCreate = components["schemas"]["EventDeploymentCreate"];
39
+ export type EventDeploymentDelete = components["schemas"]["EventDeploymentDelete"];
40
+ export type EventDeploymentStatus = components["schemas"]["EventDeploymentStatus"];
41
+ export type EventDeploymentUpdate = components["schemas"]["EventDeploymentUpdate"];
15
42
  export type EventDomainCreate = components["schemas"]["EventDomainCreate"];
16
- export type EventDomainUpdate = components["schemas"]["EventDomainUpdate"];
17
43
  export type EventDomainDelete = components["schemas"]["EventDomainDelete"];
18
- export type EventDeploymentStatusUpdate = components["schemas"]["EventDeploymentUpdate"];
19
- /**
20
- * Per-app HTTP traffic metrics returned by `GET /app/{id}/traffic`.
21
- *
22
- * Hand-maintained until the OpenAPI types are regenerated (the API now ships
23
- * an `AppTraffic` schema); keep in sync with
24
- * `api/src/deploy/app/api/traffic.ts`.
25
- */
26
- export interface AppTraffic {
27
- range: {
28
- from: number;
29
- to: number;
30
- interval: number;
31
- };
32
- top_endpoints: Array<{
33
- path: string;
34
- requests: number;
35
- req_bytes: number;
36
- resp_bytes: number;
37
- }>;
38
- error_endpoints: Array<{
39
- path: string;
40
- status: number;
41
- errors: number;
42
- }>;
43
- status_codes: Array<{
44
- status: number;
45
- requests: number;
46
- }>;
47
- methods: Array<{
48
- method: string;
49
- requests: number;
50
- }>;
51
- transfer: Array<{
52
- ts: string;
53
- inbound_bytes: number;
54
- outbound_bytes: number;
55
- requests: number;
56
- p50_ms: number;
57
- p95_ms: number;
58
- }>;
59
- /** Backend (origin) status codes — the app's own response, not the edge's. */
60
- origin_status_codes: Array<{
61
- status: number;
62
- requests: number;
63
- }>;
64
- /** Backend latency percentiles (ms) over backend-served requests. */
65
- latency: {
66
- p50: number;
67
- p95: number;
68
- p99: number;
69
- samples: number;
70
- };
71
- top_referrers: Array<{
72
- referer: string;
73
- requests: number;
74
- }>;
75
- top_user_agents: Array<{
76
- user_agent: string;
77
- requests: number;
78
- }>;
79
- }
44
+ export type EventDomainStatus = components["schemas"]["EventDomainStatus"];
45
+ export type EventDomainUpdate = components["schemas"]["EventDomainUpdate"];
46
+ export type EventProjectCreate = components["schemas"]["EventProjectCreate"];
47
+ export type EventProjectDelete = components["schemas"]["EventProjectDelete"];
48
+ export type EventProjectUpdate = components["schemas"]["EventProjectUpdate"];
49
+ export type EventSecretCreate_batch = components["schemas"]["EventSecretCreate_batch"];
50
+ export type GithubInstallation = components["schemas"]["GithubInstallation"];
51
+ export type GithubRepo = components["schemas"]["GithubRepo"];
52
+ export type Project = components["schemas"]["Project"];
53
+ export type ProjectCreate = components["schemas"]["ProjectCreate"];
54
+ export type ProjectFavorites = components["schemas"]["ProjectFavorites"];
55
+ export type ProjectInvite = components["schemas"]["ProjectInvite"];
56
+ export type ProjectUpdate = components["schemas"]["ProjectUpdate"];
57
+ export type Secret = components["schemas"]["Secret"];
58
+ export type SecretCreateBatch = components["schemas"]["SecretCreateBatch"];
59
+ export type SecretPage = components["schemas"]["SecretPage"];
60
+ export type SecretUpsert = components["schemas"]["SecretUpsert"];
61
+ export type StatusUpdate = components["schemas"]["StatusUpdate"];
80
62
  //# sourceMappingURL=api-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-types.d.ts","sourceRoot":"","sources":["../../src/api/api-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-types.d.ts","sourceRoot":"","sources":["../../src/api/api-types.ts"],"names":[],"mappings":"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"}
@@ -1 +1,5 @@
1
+ // AUTO-GENERATED by scripts/gen-client.mjs — do not edit by hand.
2
+ // Regenerated from the OpenAPI spec on every build (npm run gentypes).
3
+ // One simple-named alias per schema in `components["schemas"]`.
4
+ // Hand-maintained extras live in custom-types.ts.
1
5
  export {};