@cat-factory/contracts 0.157.0 → 0.158.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.
@@ -18,6 +18,13 @@ export declare const apiKeySchema: v.ObjectSchema<{
18
18
  readonly inputTokens: v.NumberSchema<undefined>;
19
19
  readonly outputTokens: v.NumberSchema<undefined>;
20
20
  readonly requestCount: v.NumberSchema<undefined>;
21
+ /** Whether this key is eligible for leasing. A disabled key stays in the pool (visible +
22
+ * re-enablable) but is never leased and doesn't make its provider "configured". */
23
+ readonly enabled: v.BooleanSchema<undefined>;
24
+ /** Whether this key is the pinned default for its provider within its scope: preferred at
25
+ * lease time over usage-aware rotation. At most one default per (scope, scopeId, provider);
26
+ * a disabled default is ignored (leasing falls back to rotation among the enabled keys). */
27
+ readonly isDefault: v.BooleanSchema<undefined>;
21
28
  }, undefined>;
22
29
  export type ApiKey = v.InferOutput<typeof apiKeySchema>;
23
30
  export declare const apiKeyListSchema: v.ArraySchema<v.ObjectSchema<{
@@ -32,6 +39,13 @@ export declare const apiKeyListSchema: v.ArraySchema<v.ObjectSchema<{
32
39
  readonly inputTokens: v.NumberSchema<undefined>;
33
40
  readonly outputTokens: v.NumberSchema<undefined>;
34
41
  readonly requestCount: v.NumberSchema<undefined>;
42
+ /** Whether this key is eligible for leasing. A disabled key stays in the pool (visible +
43
+ * re-enablable) but is never leased and doesn't make its provider "configured". */
44
+ readonly enabled: v.BooleanSchema<undefined>;
45
+ /** Whether this key is the pinned default for its provider within its scope: preferred at
46
+ * lease time over usage-aware rotation. At most one default per (scope, scopeId, provider);
47
+ * a disabled default is ignored (leasing falls back to rotation among the enabled keys). */
48
+ readonly isDefault: v.BooleanSchema<undefined>;
35
49
  }, undefined>, undefined>;
36
50
  export type ApiKeyList = v.InferOutput<typeof apiKeyListSchema>;
37
51
  /** The `{ keys }` envelope every key-list endpoint (workspace/user/account) returns. */
@@ -48,6 +62,13 @@ export declare const apiKeyListResultSchema: v.ObjectSchema<{
48
62
  readonly inputTokens: v.NumberSchema<undefined>;
49
63
  readonly outputTokens: v.NumberSchema<undefined>;
50
64
  readonly requestCount: v.NumberSchema<undefined>;
65
+ /** Whether this key is eligible for leasing. A disabled key stays in the pool (visible +
66
+ * re-enablable) but is never leased and doesn't make its provider "configured". */
67
+ readonly enabled: v.BooleanSchema<undefined>;
68
+ /** Whether this key is the pinned default for its provider within its scope: preferred at
69
+ * lease time over usage-aware rotation. At most one default per (scope, scopeId, provider);
70
+ * a disabled default is ignored (leasing falls back to rotation among the enabled keys). */
71
+ readonly isDefault: v.BooleanSchema<undefined>;
51
72
  }, undefined>, undefined>;
52
73
  }, undefined>;
53
74
  export type ApiKeyListResult = v.InferOutput<typeof apiKeyListResultSchema>;
@@ -58,4 +79,15 @@ export declare const addApiKeySchema: v.ObjectSchema<{
58
79
  readonly key: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>;
59
80
  }, undefined>;
60
81
  export type AddApiKeyInput = v.InferOutput<typeof addApiKeySchema>;
82
+ /**
83
+ * Update a pool key's lifecycle flags. Both fields are optional — only the supplied ones
84
+ * change. `enabled: false` takes the key out of rotation without deleting it; `isDefault:
85
+ * true` pins it as the provider's default within its scope (clearing any prior default),
86
+ * and `isDefault: false` un-pins it (the provider reverts to usage-aware rotation).
87
+ */
88
+ export declare const updateApiKeySchema: v.ObjectSchema<{
89
+ readonly enabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
90
+ readonly isDefault: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
91
+ }, undefined>;
92
+ export type UpdateApiKeyInput = v.InferOutput<typeof updateApiKeySchema>;
61
93
  //# sourceMappingURL=api-keys.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-keys.d.ts","sourceRoot":"","sources":["../src/api-keys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAc5B,6CAA6C;AAC7C,eAAO,MAAM,iBAAiB,+DAA+C,CAAA;AAC7E,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAEjE,wDAAwD;AACxD,eAAO,MAAM,oBAAoB,+GAW/B,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEvE,+EAA+E;AAC/E,eAAO,MAAM,YAAY;;;;;;;;IAQvB,0EAA0E;;;;aAI1E,CAAA;AACF,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,YAAY,CAAC,CAAA;AAEvD,eAAO,MAAM,gBAAgB;;;;;;;;IAP3B,0EAA0E;;;;yBAOvB,CAAA;AACrD,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAE/D,wFAAwF;AACxF,eAAO,MAAM,sBAAsB;;;;;;;;;QAXjC,0EAA0E;;;;;aAWF,CAAA;AAC1E,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAE3E,iEAAiE;AACjE,eAAO,MAAM,eAAe;;;;aAI1B,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,eAAe,CAAC,CAAA"}
1
+ {"version":3,"file":"api-keys.d.ts","sourceRoot":"","sources":["../src/api-keys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAc5B,6CAA6C;AAC7C,eAAO,MAAM,iBAAiB,+DAA+C,CAAA;AAC7E,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAEjE,wDAAwD;AACxD,eAAO,MAAM,oBAAoB,+GAW/B,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEvE,+EAA+E;AAC/E,eAAO,MAAM,YAAY;;;;;;;;IAQvB,0EAA0E;;;;IAI1E;uFACmF;;IAEnF;;gGAE4F;;aAE5F,CAAA;AACF,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,YAAY,CAAC,CAAA;AAEvD,eAAO,MAAM,gBAAgB;;;;;;;;IAd3B,0EAA0E;;;;IAI1E;uFACmF;;IAEnF;;gGAE4F;;yBAKzC,CAAA;AACrD,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAE/D,wFAAwF;AACxF,eAAO,MAAM,sBAAsB;;;;;;;;;QAlBjC,0EAA0E;;;;QAI1E;2FACmF;;QAEnF;;oGAE4F;;;aASpB,CAAA;AAC1E,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAE3E,iEAAiE;AACjE,eAAO,MAAM,eAAe;;;;aAI1B,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,eAAe,CAAC,CAAA;AAElE;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB;;;aAG7B,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,kBAAkB,CAAC,CAAA"}
package/dist/api-keys.js CHANGED
@@ -38,6 +38,13 @@ export const apiKeySchema = v.object({
38
38
  inputTokens: v.number(),
39
39
  outputTokens: v.number(),
40
40
  requestCount: v.number(),
41
+ /** Whether this key is eligible for leasing. A disabled key stays in the pool (visible +
42
+ * re-enablable) but is never leased and doesn't make its provider "configured". */
43
+ enabled: v.boolean(),
44
+ /** Whether this key is the pinned default for its provider within its scope: preferred at
45
+ * lease time over usage-aware rotation. At most one default per (scope, scopeId, provider);
46
+ * a disabled default is ignored (leasing falls back to rotation among the enabled keys). */
47
+ isDefault: v.boolean(),
41
48
  });
42
49
  export const apiKeyListSchema = v.array(apiKeySchema);
43
50
  /** The `{ keys }` envelope every key-list endpoint (workspace/user/account) returns. */
@@ -48,4 +55,14 @@ export const addApiKeySchema = v.object({
48
55
  label: v.pipe(v.string(), v.trim(), v.minLength(1), v.maxLength(120)),
49
56
  key: v.pipe(v.string(), v.trim(), v.minLength(1)),
50
57
  });
58
+ /**
59
+ * Update a pool key's lifecycle flags. Both fields are optional — only the supplied ones
60
+ * change. `enabled: false` takes the key out of rotation without deleting it; `isDefault:
61
+ * true` pins it as the provider's default within its scope (clearing any prior default),
62
+ * and `isDefault: false` un-pins it (the provider reverts to usage-aware rotation).
63
+ */
64
+ export const updateApiKeySchema = v.object({
65
+ enabled: v.optional(v.boolean()),
66
+ isDefault: v.optional(v.boolean()),
67
+ });
51
68
  //# sourceMappingURL=api-keys.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-keys.js","sourceRoot":"","sources":["../src/api-keys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAE5B,8EAA8E;AAC9E,0CAA0C;AAC1C,EAAE;AACF,kFAAkF;AAClF,kFAAkF;AAClF,6EAA6E;AAC7E,gFAAgF;AAChF,8EAA8E;AAC9E,gFAAgF;AAChF,6EAA6E;AAC7E,8EAA8E;AAE9E,6CAA6C;AAC7C,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,CAAA;AAG7E,wDAAwD;AACxD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,QAAQ,CAAC;IAC7C,QAAQ;IACR,WAAW;IACX,MAAM;IACN,UAAU;IACV,UAAU;IACV,sFAAsF;IACtF,uFAAuF;IACvF,sFAAsF;IACtF,YAAY;IACZ,SAAS;CACV,CAAC,CAAA;AAGF,+EAA+E;AAC/E,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,KAAK,EAAE,iBAAiB;IACxB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,QAAQ,EAAE,oBAAoB;IAC9B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAClC,0EAA0E;IAC1E,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;CACzB,CAAC,CAAA;AAGF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;AAGrD,wFAAwF;AACxF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAA;AAG1E,iEAAiE;AACjE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,QAAQ,EAAE,oBAAoB;IAC9B,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACrE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;CAClD,CAAC,CAAA"}
1
+ {"version":3,"file":"api-keys.js","sourceRoot":"","sources":["../src/api-keys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAE5B,8EAA8E;AAC9E,0CAA0C;AAC1C,EAAE;AACF,kFAAkF;AAClF,kFAAkF;AAClF,6EAA6E;AAC7E,gFAAgF;AAChF,8EAA8E;AAC9E,gFAAgF;AAChF,6EAA6E;AAC7E,8EAA8E;AAE9E,6CAA6C;AAC7C,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,CAAA;AAG7E,wDAAwD;AACxD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,QAAQ,CAAC;IAC7C,QAAQ;IACR,WAAW;IACX,MAAM;IACN,UAAU;IACV,UAAU;IACV,sFAAsF;IACtF,uFAAuF;IACvF,sFAAsF;IACtF,YAAY;IACZ,SAAS;CACV,CAAC,CAAA;AAGF,+EAA+E;AAC/E,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,KAAK,EAAE,iBAAiB;IACxB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,QAAQ,EAAE,oBAAoB;IAC9B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAClC,0EAA0E;IAC1E,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB;uFACmF;IACnF,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;IACpB;;gGAE4F;IAC5F,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE;CACvB,CAAC,CAAA;AAGF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;AAGrD,wFAAwF;AACxF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAA;AAG1E,iEAAiE;AACjE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,QAAQ,EAAE,oBAAoB;IAC9B,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACrE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;CAClD,CAAC,CAAA;AAGF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IAChC,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;CACnC,CAAC,CAAA"}
@@ -434,6 +434,8 @@ export declare const listAccountApiKeysContract: {
434
434
  readonly inputTokens: v.NumberSchema<undefined>;
435
435
  readonly outputTokens: v.NumberSchema<undefined>;
436
436
  readonly requestCount: v.NumberSchema<undefined>;
437
+ readonly enabled: v.BooleanSchema<undefined>;
438
+ readonly isDefault: v.BooleanSchema<undefined>;
437
439
  }, undefined>, undefined>;
438
440
  }, undefined>;
439
441
  };
@@ -485,6 +487,61 @@ export declare const addAccountApiKeyContract: {
485
487
  readonly inputTokens: v.NumberSchema<undefined>;
486
488
  readonly outputTokens: v.NumberSchema<undefined>;
487
489
  readonly requestCount: v.NumberSchema<undefined>;
490
+ readonly enabled: v.BooleanSchema<undefined>;
491
+ readonly isDefault: v.BooleanSchema<undefined>;
492
+ }, undefined>;
493
+ };
494
+ };
495
+ export declare const updateAccountApiKeyContract: {
496
+ readonly method: "patch";
497
+ readonly requestPathParamsSchema: v.ObjectSchema<{
498
+ readonly accountId: v.StringSchema<undefined>;
499
+ readonly id: v.StringSchema<undefined>;
500
+ }, undefined> & import("@toad-contracts/core").StandardObjectKeysV1<unknown, unknown>;
501
+ readonly pathResolver: ({ accountId, id }: {
502
+ accountId: string;
503
+ id: string;
504
+ }) => string;
505
+ readonly requestBodySchema: v.ObjectSchema<{
506
+ readonly enabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
507
+ readonly isDefault: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
508
+ }, undefined>;
509
+ readonly responsesByStatusCode: {
510
+ readonly '4xx': v.ObjectSchema<{
511
+ readonly error: v.ObjectSchema<{
512
+ readonly code: v.StringSchema<undefined>;
513
+ readonly message: v.StringSchema<undefined>;
514
+ readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
515
+ readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
516
+ readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
517
+ readonly message: v.StringSchema<undefined>;
518
+ }, undefined>, undefined>, undefined>;
519
+ }, undefined>;
520
+ }, undefined>;
521
+ readonly '5xx': v.ObjectSchema<{
522
+ readonly error: v.ObjectSchema<{
523
+ readonly code: v.StringSchema<undefined>;
524
+ readonly message: v.StringSchema<undefined>;
525
+ readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
526
+ readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
527
+ readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
528
+ readonly message: v.StringSchema<undefined>;
529
+ }, undefined>, undefined>, undefined>;
530
+ }, undefined>;
531
+ }, undefined>;
532
+ readonly 200: v.ObjectSchema<{
533
+ readonly id: v.StringSchema<undefined>;
534
+ readonly scope: v.PicklistSchema<["account", "workspace", "user"], undefined>;
535
+ readonly scopeId: v.StringSchema<undefined>;
536
+ readonly provider: v.PicklistSchema<["openai", "anthropic", "qwen", "deepseek", "moonshot", "openrouter", "litellm"], undefined>;
537
+ readonly label: v.StringSchema<undefined>;
538
+ readonly createdAt: v.NumberSchema<undefined>;
539
+ readonly lastUsedAt: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
540
+ readonly inputTokens: v.NumberSchema<undefined>;
541
+ readonly outputTokens: v.NumberSchema<undefined>;
542
+ readonly requestCount: v.NumberSchema<undefined>;
543
+ readonly enabled: v.BooleanSchema<undefined>;
544
+ readonly isDefault: v.BooleanSchema<undefined>;
488
545
  }, undefined>;
489
546
  };
490
547
  };
@@ -1 +1 @@
1
- {"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../src/routes/accounts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqC,MAAM,yBAAyB,CAAA;AAC3F,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AA0C5B,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAI/B,CAAA;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKhC,CAAA;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMhC,CAAA;AAIF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKrC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMnC,CAAA;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMjC,CAAA;AAIF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKlC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMnC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQnC,CAAA;AAIF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKrC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMnC,CAAA;AAEF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKtC,CAAA;AAIF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKrC,CAAA;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM/B,CAAA;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKlC,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM5B,CAAA;AAIF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKrC,CAAA;AAEF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMxC,CAAA;AAMF,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM3C,CAAA"}
1
+ {"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../src/routes/accounts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqC,MAAM,yBAAyB,CAAA;AAC3F,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AA+C5B,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAI/B,CAAA;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKhC,CAAA;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMhC,CAAA;AAIF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKrC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMnC,CAAA;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMjC,CAAA;AAIF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKlC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMnC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQnC,CAAA;AAIF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKrC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMnC,CAAA;AAEF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMtC,CAAA;AAEF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKtC,CAAA;AAIF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKrC,CAAA;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM/B,CAAA;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKlC,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM5B,CAAA;AAIF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKrC,CAAA;AAEF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMxC,CAAA;AAMF,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM3C,CAAA"}
@@ -2,7 +2,7 @@ import { ContractNoBody, defineApiContract, withObjectKeys } from '@toad-contrac
2
2
  import * as v from 'valibot';
3
3
  import { accountInvitationSchema, accountMemberSchema, accountSchema, addMemberSchema, connectEmailSchema, createAccountSchema, createInvitationSchema, emailConnectionSchema, setMemberRolesSchema, testEmailSchema, updateAccountSchema, } from '../accounts.js';
4
4
  import { accountSettingsViewSchema, updateAccountSettingsSchema } from '../accountSettings.js';
5
- import { addApiKeySchema, apiKeyListResultSchema, apiKeySchema } from '../api-keys.js';
5
+ import { addApiKeySchema, apiKeyListResultSchema, apiKeySchema, updateApiKeySchema, } from '../api-keys.js';
6
6
  import { platformObservabilitySchema, platformObservabilityWindowSchema } from '../observability.js';
7
7
  import { errorResponses, singleStringParam } from './_shared.js';
8
8
  // ---------------------------------------------------------------------------
@@ -96,6 +96,13 @@ export const addAccountApiKeyContract = defineApiContract({
96
96
  requestBodySchema: addApiKeySchema,
97
97
  responsesByStatusCode: { 201: apiKeySchema, ...errorResponses },
98
98
  });
99
+ export const updateAccountApiKeyContract = defineApiContract({
100
+ method: 'patch',
101
+ requestPathParamsSchema: withObjectKeys(v.object({ accountId: v.string(), id: v.string() })),
102
+ pathResolver: ({ accountId, id }) => `/accounts/${accountId}/api-keys/${id}`,
103
+ requestBodySchema: updateApiKeySchema,
104
+ responsesByStatusCode: { 200: apiKeySchema, ...errorResponses },
105
+ });
99
106
  export const removeAccountApiKeyContract = defineApiContract({
100
107
  method: 'delete',
101
108
  requestPathParamsSchema: withObjectKeys(v.object({ accountId: v.string(), id: v.string() })),
@@ -1 +1 @@
1
- {"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../src/routes/accounts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../src/routes/accounts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAC3F,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,mBAAmB,GACpB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,yBAAyB,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAA;AAC9F,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,YAAY,EACZ,kBAAkB,GACnB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,2BAA2B,EAAE,iCAAiC,EAAE,MAAM,qBAAqB,CAAA;AACpG,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAEhE,8EAA8E;AAC9E,iFAAiF;AACjF,8EAA8E;AAE9E,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;AAChD,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAA;AAC5D,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAA;AAEpE,oEAAoE;AACpE,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,UAAU,EAAE,uBAAuB;IACnC,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;CAClC,CAAC,CAAA;AACF,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IAC7C,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE;CACxB,CAAC,CAAA;AACF,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;AAE9C,MAAM,eAAe,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAA;AAEtD,8EAA8E;AAE9E,MAAM,CAAC,MAAM,oBAAoB,GAAG,iBAAiB,CAAC;IACpD,MAAM,EAAE,KAAK;IACb,YAAY,EAAE,GAAG,EAAE,CAAC,WAAW;IAC/B,qBAAqB,EAAE,EAAE,GAAG,EAAE,iBAAiB,EAAE,GAAG,cAAc,EAAE;CACrE,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,iBAAiB,CAAC;IACrD,MAAM,EAAE,MAAM;IACd,YAAY,EAAE,GAAG,EAAE,CAAC,WAAW;IAC/B,iBAAiB,EAAE,mBAAmB;IACtC,qBAAqB,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,cAAc,EAAE;CACjE,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,iBAAiB,CAAC;IACrD,MAAM,EAAE,OAAO;IACf,uBAAuB,EAAE,eAAe;IACxC,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,aAAa,SAAS,EAAE;IACzD,iBAAiB,EAAE,mBAAmB;IACtC,qBAAqB,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,cAAc,EAAE;CACjE,CAAC,CAAA;AAEF,8EAA8E;AAE9E,MAAM,CAAC,MAAM,0BAA0B,GAAG,iBAAiB,CAAC;IAC1D,MAAM,EAAE,KAAK;IACb,uBAAuB,EAAE,eAAe;IACxC,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,aAAa,SAAS,UAAU;IACjE,qBAAqB,EAAE,EAAE,GAAG,EAAE,uBAAuB,EAAE,GAAG,cAAc,EAAE;CAC3E,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,iBAAiB,CAAC;IACxD,MAAM,EAAE,MAAM;IACd,uBAAuB,EAAE,eAAe;IACxC,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,aAAa,SAAS,UAAU;IACjE,iBAAiB,EAAE,eAAe;IAClC,qBAAqB,EAAE,EAAE,GAAG,EAAE,mBAAmB,EAAE,GAAG,cAAc,EAAE;CACvE,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,iBAAiB,CAAC;IACtD,MAAM,EAAE,OAAO;IACf,uBAAuB,EAAE,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAChG,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,aAAa,SAAS,YAAY,MAAM,QAAQ;IACzF,iBAAiB,EAAE,oBAAoB;IACvC,qBAAqB,EAAE,EAAE,GAAG,EAAE,mBAAmB,EAAE,GAAG,cAAc,EAAE;CACvE,CAAC,CAAA;AAEF,8EAA8E;AAE9E,MAAM,CAAC,MAAM,uBAAuB,GAAG,iBAAiB,CAAC;IACvD,MAAM,EAAE,KAAK;IACb,uBAAuB,EAAE,eAAe;IACxC,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,aAAa,SAAS,cAAc;IACrE,qBAAqB,EAAE,EAAE,GAAG,EAAE,2BAA2B,EAAE,GAAG,cAAc,EAAE;CAC/E,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,iBAAiB,CAAC;IACxD,MAAM,EAAE,MAAM;IACd,uBAAuB,EAAE,eAAe;IACxC,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,aAAa,SAAS,cAAc;IACrE,iBAAiB,EAAE,sBAAsB;IACzC,qBAAqB,EAAE,EAAE,GAAG,EAAE,4BAA4B,EAAE,GAAG,cAAc,EAAE;CAChF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,iBAAiB,CAAC;IACxD,MAAM,EAAE,QAAQ;IAChB,uBAAuB,EAAE,cAAc,CACrC,CAAC,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAC9D;IACD,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,EAAE,EAAE,CAC5C,aAAa,SAAS,gBAAgB,YAAY,EAAE;IACtD,qBAAqB,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE;CAClE,CAAC,CAAA;AAEF,8EAA8E;AAE9E,MAAM,CAAC,MAAM,0BAA0B,GAAG,iBAAiB,CAAC;IAC1D,MAAM,EAAE,KAAK;IACb,uBAAuB,EAAE,eAAe;IACxC,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,aAAa,SAAS,WAAW;IAClE,qBAAqB,EAAE,EAAE,GAAG,EAAE,sBAAsB,EAAE,GAAG,cAAc,EAAE;CAC1E,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,iBAAiB,CAAC;IACxD,MAAM,EAAE,MAAM;IACd,uBAAuB,EAAE,eAAe;IACxC,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,aAAa,SAAS,WAAW;IAClE,iBAAiB,EAAE,eAAe;IAClC,qBAAqB,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,cAAc,EAAE;CAChE,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,iBAAiB,CAAC;IAC3D,MAAM,EAAE,OAAO;IACf,uBAAuB,EAAE,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC5F,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,aAAa,SAAS,aAAa,EAAE,EAAE;IAC5E,iBAAiB,EAAE,kBAAkB;IACrC,qBAAqB,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,cAAc,EAAE;CAChE,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,iBAAiB,CAAC;IAC3D,MAAM,EAAE,QAAQ;IAChB,uBAAuB,EAAE,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC5F,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,aAAa,SAAS,aAAa,EAAE,EAAE;IAC5E,qBAAqB,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE;CAClE,CAAC,CAAA;AAEF,8EAA8E;AAE9E,MAAM,CAAC,MAAM,0BAA0B,GAAG,iBAAiB,CAAC;IAC1D,MAAM,EAAE,KAAK;IACb,uBAAuB,EAAE,eAAe;IACxC,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,aAAa,SAAS,mBAAmB;IAC1E,qBAAqB,EAAE,EAAE,GAAG,EAAE,yBAAyB,EAAE,GAAG,cAAc,EAAE;CAC7E,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,iBAAiB,CAAC;IACpD,MAAM,EAAE,MAAM;IACd,uBAAuB,EAAE,eAAe;IACxC,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,aAAa,SAAS,mBAAmB;IAC1E,iBAAiB,EAAE,kBAAkB;IACrC,qBAAqB,EAAE,EAAE,GAAG,EAAE,qBAAqB,EAAE,GAAG,cAAc,EAAE;CACzE,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,iBAAiB,CAAC;IACvD,MAAM,EAAE,QAAQ;IAChB,uBAAuB,EAAE,eAAe;IACxC,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,aAAa,SAAS,mBAAmB;IAC1E,qBAAqB,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE;CAClE,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,iBAAiB,CAAC;IACjD,MAAM,EAAE,MAAM;IACd,uBAAuB,EAAE,eAAe;IACxC,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,aAAa,SAAS,wBAAwB;IAC/E,iBAAiB,EAAE,eAAe;IAClC,qBAAqB,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,cAAc,EAAE;CAC5D,CAAC,CAAA;AAEF,8EAA8E;AAE9E,MAAM,CAAC,MAAM,0BAA0B,GAAG,iBAAiB,CAAC;IAC1D,MAAM,EAAE,KAAK;IACb,uBAAuB,EAAE,eAAe;IACxC,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,aAAa,SAAS,WAAW;IAClE,qBAAqB,EAAE,EAAE,GAAG,EAAE,yBAAyB,EAAE,GAAG,cAAc,EAAE;CAC7E,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAG,iBAAiB,CAAC;IAC7D,MAAM,EAAE,KAAK;IACb,uBAAuB,EAAE,eAAe;IACxC,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,aAAa,SAAS,WAAW;IAClE,iBAAiB,EAAE,2BAA2B;IAC9C,qBAAqB,EAAE,EAAE,GAAG,EAAE,yBAAyB,EAAE,GAAG,cAAc,EAAE;CAC7E,CAAC,CAAA;AAEF,8EAA8E;AAE9E,qFAAqF;AACrF,qFAAqF;AACrF,MAAM,CAAC,MAAM,gCAAgC,GAAG,iBAAiB,CAAC;IAChE,MAAM,EAAE,KAAK;IACb,uBAAuB,EAAE,eAAe;IACxC,kBAAkB,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,iCAAiC,CAAC,EAAE,CAAC;IACvF,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,aAAa,SAAS,yBAAyB;IAChF,qBAAqB,EAAE,EAAE,GAAG,EAAE,2BAA2B,EAAE,GAAG,cAAc,EAAE;CAC/E,CAAC,CAAA"}
@@ -37,6 +37,8 @@ export declare const listWorkspaceApiKeysContract: {
37
37
  readonly inputTokens: import("valibot").NumberSchema<undefined>;
38
38
  readonly outputTokens: import("valibot").NumberSchema<undefined>;
39
39
  readonly requestCount: import("valibot").NumberSchema<undefined>;
40
+ readonly enabled: import("valibot").BooleanSchema<undefined>;
41
+ readonly isDefault: import("valibot").BooleanSchema<undefined>;
40
42
  }, undefined>, undefined>;
41
43
  }, undefined>;
42
44
  };
@@ -83,6 +85,59 @@ export declare const addWorkspaceApiKeyContract: {
83
85
  readonly inputTokens: import("valibot").NumberSchema<undefined>;
84
86
  readonly outputTokens: import("valibot").NumberSchema<undefined>;
85
87
  readonly requestCount: import("valibot").NumberSchema<undefined>;
88
+ readonly enabled: import("valibot").BooleanSchema<undefined>;
89
+ readonly isDefault: import("valibot").BooleanSchema<undefined>;
90
+ }, undefined>;
91
+ };
92
+ };
93
+ export declare const updateWorkspaceApiKeyContract: {
94
+ readonly method: "patch";
95
+ readonly requestPathParamsSchema: import("valibot").ObjectSchema<{
96
+ id: import("valibot").StringSchema<undefined>;
97
+ }, undefined> & import("@toad-contracts/core").StandardObjectKeysV1<unknown, unknown>;
98
+ readonly pathResolver: ({ id }: {
99
+ id: string;
100
+ }) => string;
101
+ readonly requestBodySchema: import("valibot").ObjectSchema<{
102
+ readonly enabled: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
103
+ readonly isDefault: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
104
+ }, undefined>;
105
+ readonly responsesByStatusCode: {
106
+ readonly '4xx': import("valibot").ObjectSchema<{
107
+ readonly error: import("valibot").ObjectSchema<{
108
+ readonly code: import("valibot").StringSchema<undefined>;
109
+ readonly message: import("valibot").StringSchema<undefined>;
110
+ readonly details: import("valibot").OptionalSchema<import("valibot").UnknownSchema, undefined>;
111
+ readonly issues: import("valibot").OptionalSchema<import("valibot").ArraySchema<import("valibot").ObjectSchema<{
112
+ readonly path: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
113
+ readonly message: import("valibot").StringSchema<undefined>;
114
+ }, undefined>, undefined>, undefined>;
115
+ }, undefined>;
116
+ }, undefined>;
117
+ readonly '5xx': import("valibot").ObjectSchema<{
118
+ readonly error: import("valibot").ObjectSchema<{
119
+ readonly code: import("valibot").StringSchema<undefined>;
120
+ readonly message: import("valibot").StringSchema<undefined>;
121
+ readonly details: import("valibot").OptionalSchema<import("valibot").UnknownSchema, undefined>;
122
+ readonly issues: import("valibot").OptionalSchema<import("valibot").ArraySchema<import("valibot").ObjectSchema<{
123
+ readonly path: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
124
+ readonly message: import("valibot").StringSchema<undefined>;
125
+ }, undefined>, undefined>, undefined>;
126
+ }, undefined>;
127
+ }, undefined>;
128
+ readonly 200: import("valibot").ObjectSchema<{
129
+ readonly id: import("valibot").StringSchema<undefined>;
130
+ readonly scope: import("valibot").PicklistSchema<["account", "workspace", "user"], undefined>;
131
+ readonly scopeId: import("valibot").StringSchema<undefined>;
132
+ readonly provider: import("valibot").PicklistSchema<["openai", "anthropic", "qwen", "deepseek", "moonshot", "openrouter", "litellm"], undefined>;
133
+ readonly label: import("valibot").StringSchema<undefined>;
134
+ readonly createdAt: import("valibot").NumberSchema<undefined>;
135
+ readonly lastUsedAt: import("valibot").NullableSchema<import("valibot").NumberSchema<undefined>, undefined>;
136
+ readonly inputTokens: import("valibot").NumberSchema<undefined>;
137
+ readonly outputTokens: import("valibot").NumberSchema<undefined>;
138
+ readonly requestCount: import("valibot").NumberSchema<undefined>;
139
+ readonly enabled: import("valibot").BooleanSchema<undefined>;
140
+ readonly isDefault: import("valibot").BooleanSchema<undefined>;
86
141
  }, undefined>;
87
142
  };
88
143
  };
@@ -158,6 +213,8 @@ export declare const listUserApiKeysContract: {
158
213
  readonly inputTokens: import("valibot").NumberSchema<undefined>;
159
214
  readonly outputTokens: import("valibot").NumberSchema<undefined>;
160
215
  readonly requestCount: import("valibot").NumberSchema<undefined>;
216
+ readonly enabled: import("valibot").BooleanSchema<undefined>;
217
+ readonly isDefault: import("valibot").BooleanSchema<undefined>;
161
218
  }, undefined>, undefined>;
162
219
  }, undefined>;
163
220
  };
@@ -204,6 +261,59 @@ export declare const addUserApiKeyContract: {
204
261
  readonly inputTokens: import("valibot").NumberSchema<undefined>;
205
262
  readonly outputTokens: import("valibot").NumberSchema<undefined>;
206
263
  readonly requestCount: import("valibot").NumberSchema<undefined>;
264
+ readonly enabled: import("valibot").BooleanSchema<undefined>;
265
+ readonly isDefault: import("valibot").BooleanSchema<undefined>;
266
+ }, undefined>;
267
+ };
268
+ };
269
+ export declare const updateUserApiKeyContract: {
270
+ readonly method: "patch";
271
+ readonly requestPathParamsSchema: import("valibot").ObjectSchema<{
272
+ id: import("valibot").StringSchema<undefined>;
273
+ }, undefined> & import("@toad-contracts/core").StandardObjectKeysV1<unknown, unknown>;
274
+ readonly pathResolver: ({ id }: {
275
+ id: string;
276
+ }) => string;
277
+ readonly requestBodySchema: import("valibot").ObjectSchema<{
278
+ readonly enabled: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
279
+ readonly isDefault: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
280
+ }, undefined>;
281
+ readonly responsesByStatusCode: {
282
+ readonly '4xx': import("valibot").ObjectSchema<{
283
+ readonly error: import("valibot").ObjectSchema<{
284
+ readonly code: import("valibot").StringSchema<undefined>;
285
+ readonly message: import("valibot").StringSchema<undefined>;
286
+ readonly details: import("valibot").OptionalSchema<import("valibot").UnknownSchema, undefined>;
287
+ readonly issues: import("valibot").OptionalSchema<import("valibot").ArraySchema<import("valibot").ObjectSchema<{
288
+ readonly path: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
289
+ readonly message: import("valibot").StringSchema<undefined>;
290
+ }, undefined>, undefined>, undefined>;
291
+ }, undefined>;
292
+ }, undefined>;
293
+ readonly '5xx': import("valibot").ObjectSchema<{
294
+ readonly error: import("valibot").ObjectSchema<{
295
+ readonly code: import("valibot").StringSchema<undefined>;
296
+ readonly message: import("valibot").StringSchema<undefined>;
297
+ readonly details: import("valibot").OptionalSchema<import("valibot").UnknownSchema, undefined>;
298
+ readonly issues: import("valibot").OptionalSchema<import("valibot").ArraySchema<import("valibot").ObjectSchema<{
299
+ readonly path: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
300
+ readonly message: import("valibot").StringSchema<undefined>;
301
+ }, undefined>, undefined>, undefined>;
302
+ }, undefined>;
303
+ }, undefined>;
304
+ readonly 200: import("valibot").ObjectSchema<{
305
+ readonly id: import("valibot").StringSchema<undefined>;
306
+ readonly scope: import("valibot").PicklistSchema<["account", "workspace", "user"], undefined>;
307
+ readonly scopeId: import("valibot").StringSchema<undefined>;
308
+ readonly provider: import("valibot").PicklistSchema<["openai", "anthropic", "qwen", "deepseek", "moonshot", "openrouter", "litellm"], undefined>;
309
+ readonly label: import("valibot").StringSchema<undefined>;
310
+ readonly createdAt: import("valibot").NumberSchema<undefined>;
311
+ readonly lastUsedAt: import("valibot").NullableSchema<import("valibot").NumberSchema<undefined>, undefined>;
312
+ readonly inputTokens: import("valibot").NumberSchema<undefined>;
313
+ readonly outputTokens: import("valibot").NumberSchema<undefined>;
314
+ readonly requestCount: import("valibot").NumberSchema<undefined>;
315
+ readonly enabled: import("valibot").BooleanSchema<undefined>;
316
+ readonly isDefault: import("valibot").BooleanSchema<undefined>;
207
317
  }, undefined>;
208
318
  };
209
319
  };
@@ -1 +1 @@
1
- {"version":3,"file":"api-keys.d.ts","sourceRoot":"","sources":["../../src/routes/api-keys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAgB3E,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIvC,CAAA;AAEF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKrC,CAAA;AAEF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKxC,CAAA;AAIF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIlC,CAAA;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKhC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKnC,CAAA"}
1
+ {"version":3,"file":"api-keys.d.ts","sourceRoot":"","sources":["../../src/routes/api-keys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAqB3E,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIvC,CAAA;AAEF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKrC,CAAA;AAEF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMxC,CAAA;AAEF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKxC,CAAA;AAIF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIlC,CAAA;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKhC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMnC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKnC,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { ContractNoBody, defineApiContract } from '@toad-contracts/valibot';
2
- import { addApiKeySchema, apiKeyListResultSchema, apiKeySchema } from '../api-keys.js';
2
+ import { addApiKeySchema, apiKeyListResultSchema, apiKeySchema, updateApiKeySchema, } from '../api-keys.js';
3
3
  import { errorResponses, singleStringParam } from './_shared.js';
4
4
  // ---------------------------------------------------------------------------
5
5
  // Direct-provider API-key route contracts. Two controllers consume these:
@@ -21,6 +21,13 @@ export const addWorkspaceApiKeyContract = defineApiContract({
21
21
  requestBodySchema: addApiKeySchema,
22
22
  responsesByStatusCode: { 201: apiKeySchema, ...errorResponses },
23
23
  });
24
+ export const updateWorkspaceApiKeyContract = defineApiContract({
25
+ method: 'patch',
26
+ requestPathParamsSchema: idParams,
27
+ pathResolver: ({ id }) => `/api-keys/${id}`,
28
+ requestBodySchema: updateApiKeySchema,
29
+ responsesByStatusCode: { 200: apiKeySchema, ...errorResponses },
30
+ });
24
31
  export const removeWorkspaceApiKeyContract = defineApiContract({
25
32
  method: 'delete',
26
33
  requestPathParamsSchema: idParams,
@@ -39,6 +46,13 @@ export const addUserApiKeyContract = defineApiContract({
39
46
  requestBodySchema: addApiKeySchema,
40
47
  responsesByStatusCode: { 201: apiKeySchema, ...errorResponses },
41
48
  });
49
+ export const updateUserApiKeyContract = defineApiContract({
50
+ method: 'patch',
51
+ requestPathParamsSchema: idParams,
52
+ pathResolver: ({ id }) => `/me/api-keys/${id}`,
53
+ requestBodySchema: updateApiKeySchema,
54
+ responsesByStatusCode: { 200: apiKeySchema, ...errorResponses },
55
+ });
42
56
  export const removeUserApiKeyContract = defineApiContract({
43
57
  method: 'delete',
44
58
  requestPathParamsSchema: idParams,
@@ -1 +1 @@
1
- {"version":3,"file":"api-keys.js","sourceRoot":"","sources":["../../src/routes/api-keys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3E,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AACtF,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAEhE,8EAA8E;AAC9E,0EAA0E;AAC1E,gFAAgF;AAChF,+EAA+E;AAC/E,wEAAwE;AACxE,qFAAqF;AACrF,8EAA8E;AAE9E,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;AAExC,8EAA8E;AAE9E,MAAM,CAAC,MAAM,4BAA4B,GAAG,iBAAiB,CAAC;IAC5D,MAAM,EAAE,KAAK;IACb,YAAY,EAAE,GAAG,EAAE,CAAC,WAAW;IAC/B,qBAAqB,EAAE,EAAE,GAAG,EAAE,sBAAsB,EAAE,GAAG,cAAc,EAAE;CAC1E,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,iBAAiB,CAAC;IAC1D,MAAM,EAAE,MAAM;IACd,YAAY,EAAE,GAAG,EAAE,CAAC,WAAW;IAC/B,iBAAiB,EAAE,eAAe;IAClC,qBAAqB,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,cAAc,EAAE;CAChE,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAG,iBAAiB,CAAC;IAC7D,MAAM,EAAE,QAAQ;IAChB,uBAAuB,EAAE,QAAQ;IACjC,YAAY,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,aAAa,EAAE,EAAE;IAC3C,qBAAqB,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE;CAClE,CAAC,CAAA;AAEF,8EAA8E;AAE9E,MAAM,CAAC,MAAM,uBAAuB,GAAG,iBAAiB,CAAC;IACvD,MAAM,EAAE,KAAK;IACb,YAAY,EAAE,GAAG,EAAE,CAAC,cAAc;IAClC,qBAAqB,EAAE,EAAE,GAAG,EAAE,sBAAsB,EAAE,GAAG,cAAc,EAAE;CAC1E,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,iBAAiB,CAAC;IACrD,MAAM,EAAE,MAAM;IACd,YAAY,EAAE,GAAG,EAAE,CAAC,cAAc;IAClC,iBAAiB,EAAE,eAAe;IAClC,qBAAqB,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,cAAc,EAAE;CAChE,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,iBAAiB,CAAC;IACxD,MAAM,EAAE,QAAQ;IAChB,uBAAuB,EAAE,QAAQ;IACjC,YAAY,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,gBAAgB,EAAE,EAAE;IAC9C,qBAAqB,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE;CAClE,CAAC,CAAA"}
1
+ {"version":3,"file":"api-keys.js","sourceRoot":"","sources":["../../src/routes/api-keys.ts"],"names":[],"mappings":"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"}
@@ -36,6 +36,8 @@ export declare const listVendorCredentialsContract: {
36
36
  readonly inputTokens: v.NumberSchema<undefined>;
37
37
  readonly outputTokens: v.NumberSchema<undefined>;
38
38
  readonly requestCount: v.NumberSchema<undefined>;
39
+ readonly enabled: v.BooleanSchema<undefined>;
40
+ readonly isDefault: v.BooleanSchema<undefined>;
39
41
  }, undefined>, undefined>;
40
42
  }, undefined>;
41
43
  };
@@ -80,6 +82,57 @@ export declare const addVendorCredentialContract: {
80
82
  readonly inputTokens: v.NumberSchema<undefined>;
81
83
  readonly outputTokens: v.NumberSchema<undefined>;
82
84
  readonly requestCount: v.NumberSchema<undefined>;
85
+ readonly enabled: v.BooleanSchema<undefined>;
86
+ readonly isDefault: v.BooleanSchema<undefined>;
87
+ }, undefined>;
88
+ };
89
+ };
90
+ export declare const updateVendorCredentialContract: {
91
+ readonly method: "patch";
92
+ readonly requestPathParamsSchema: v.ObjectSchema<{
93
+ id: v.StringSchema<undefined>;
94
+ }, undefined> & import("@toad-contracts/core").StandardObjectKeysV1<unknown, unknown>;
95
+ readonly pathResolver: ({ id }: {
96
+ id: string;
97
+ }) => string;
98
+ readonly requestBodySchema: v.ObjectSchema<{
99
+ readonly enabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
100
+ readonly isDefault: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
101
+ }, undefined>;
102
+ readonly responsesByStatusCode: {
103
+ readonly '4xx': v.ObjectSchema<{
104
+ readonly error: v.ObjectSchema<{
105
+ readonly code: v.StringSchema<undefined>;
106
+ readonly message: v.StringSchema<undefined>;
107
+ readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
108
+ readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
109
+ readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
110
+ readonly message: v.StringSchema<undefined>;
111
+ }, undefined>, undefined>, undefined>;
112
+ }, undefined>;
113
+ }, undefined>;
114
+ readonly '5xx': v.ObjectSchema<{
115
+ readonly error: v.ObjectSchema<{
116
+ readonly code: v.StringSchema<undefined>;
117
+ readonly message: v.StringSchema<undefined>;
118
+ readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
119
+ readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
120
+ readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
121
+ readonly message: v.StringSchema<undefined>;
122
+ }, undefined>, undefined>, undefined>;
123
+ }, undefined>;
124
+ }, undefined>;
125
+ readonly 200: v.ObjectSchema<{
126
+ readonly id: v.StringSchema<undefined>;
127
+ readonly vendor: v.PicklistSchema<["claude", "codex", "glm", "kimi", "deepseek"], undefined>;
128
+ readonly label: v.StringSchema<undefined>;
129
+ readonly createdAt: v.NumberSchema<undefined>;
130
+ readonly lastUsedAt: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
131
+ readonly inputTokens: v.NumberSchema<undefined>;
132
+ readonly outputTokens: v.NumberSchema<undefined>;
133
+ readonly requestCount: v.NumberSchema<undefined>;
134
+ readonly enabled: v.BooleanSchema<undefined>;
135
+ readonly isDefault: v.BooleanSchema<undefined>;
83
136
  }, undefined>;
84
137
  };
85
138
  };
@@ -1 +1 @@
1
- {"version":3,"file":"vendor-credentials.d.ts","sourceRoot":"","sources":["../../src/routes/vendor-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAC3E,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAsB5B,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIxC,CAAA;AAEF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKtC,CAAA;AAEF,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKzC,CAAA"}
1
+ {"version":3,"file":"vendor-credentials.d.ts","sourceRoot":"","sources":["../../src/routes/vendor-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAC3E,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAuB5B,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIxC,CAAA;AAEF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKtC,CAAA;AAEF,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMzC,CAAA;AAEF,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKzC,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { ContractNoBody, defineApiContract } from '@toad-contracts/valibot';
2
2
  import * as v from 'valibot';
3
- import { addVendorCredentialSchema, vendorCredentialListSchema, vendorCredentialSchema, } from '../vendor-credentials.js';
3
+ import { addVendorCredentialSchema, updateVendorCredentialSchema, vendorCredentialListSchema, vendorCredentialSchema, } from '../vendor-credentials.js';
4
4
  import { errorResponses, singleStringParam } from './_shared.js';
5
5
  // ---------------------------------------------------------------------------
6
6
  // Vendor-credential (subscription token pool) route contracts. Tokens are
@@ -24,6 +24,13 @@ export const addVendorCredentialContract = defineApiContract({
24
24
  requestBodySchema: addVendorCredentialSchema,
25
25
  responsesByStatusCode: { 201: vendorCredentialSchema, ...errorResponses },
26
26
  });
27
+ export const updateVendorCredentialContract = defineApiContract({
28
+ method: 'patch',
29
+ requestPathParamsSchema: credentialIdParams,
30
+ pathResolver: ({ id }) => `/vendor-credentials/${id}`,
31
+ requestBodySchema: updateVendorCredentialSchema,
32
+ responsesByStatusCode: { 200: vendorCredentialSchema, ...errorResponses },
33
+ });
27
34
  export const removeVendorCredentialContract = defineApiContract({
28
35
  method: 'delete',
29
36
  requestPathParamsSchema: credentialIdParams,
@@ -1 +1 @@
1
- {"version":3,"file":"vendor-credentials.js","sourceRoot":"","sources":["../../src/routes/vendor-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3E,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAEhE,8EAA8E;AAC9E,0EAA0E;AAC1E,8EAA8E;AAC9E,2EAA2E;AAC3E,0CAA0C;AAC1C,8EAA8E;AAE9E,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;AAElD,oEAAoE;AACpE,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,WAAW,EAAE,0BAA0B;CACxC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAG,iBAAiB,CAAC;IAC7D,MAAM,EAAE,KAAK;IACb,YAAY,EAAE,GAAG,EAAE,CAAC,qBAAqB;IACzC,qBAAqB,EAAE,EAAE,GAAG,EAAE,2BAA2B,EAAE,GAAG,cAAc,EAAE;CAC/E,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,iBAAiB,CAAC;IAC3D,MAAM,EAAE,MAAM;IACd,YAAY,EAAE,GAAG,EAAE,CAAC,qBAAqB;IACzC,iBAAiB,EAAE,yBAAyB;IAC5C,qBAAqB,EAAE,EAAE,GAAG,EAAE,sBAAsB,EAAE,GAAG,cAAc,EAAE;CAC1E,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAG,iBAAiB,CAAC;IAC9D,MAAM,EAAE,QAAQ;IAChB,uBAAuB,EAAE,kBAAkB;IAC3C,YAAY,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,uBAAuB,EAAE,EAAE;IACrD,qBAAqB,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE;CAClE,CAAC,CAAA"}
1
+ {"version":3,"file":"vendor-credentials.js","sourceRoot":"","sources":["../../src/routes/vendor-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3E,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EACL,yBAAyB,EACzB,4BAA4B,EAC5B,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAEhE,8EAA8E;AAC9E,0EAA0E;AAC1E,8EAA8E;AAC9E,2EAA2E;AAC3E,0CAA0C;AAC1C,8EAA8E;AAE9E,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;AAElD,oEAAoE;AACpE,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,WAAW,EAAE,0BAA0B;CACxC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAG,iBAAiB,CAAC;IAC7D,MAAM,EAAE,KAAK;IACb,YAAY,EAAE,GAAG,EAAE,CAAC,qBAAqB;IACzC,qBAAqB,EAAE,EAAE,GAAG,EAAE,2BAA2B,EAAE,GAAG,cAAc,EAAE;CAC/E,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,iBAAiB,CAAC;IAC3D,MAAM,EAAE,MAAM;IACd,YAAY,EAAE,GAAG,EAAE,CAAC,qBAAqB;IACzC,iBAAiB,EAAE,yBAAyB;IAC5C,qBAAqB,EAAE,EAAE,GAAG,EAAE,sBAAsB,EAAE,GAAG,cAAc,EAAE;CAC1E,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAG,iBAAiB,CAAC;IAC9D,MAAM,EAAE,OAAO;IACf,uBAAuB,EAAE,kBAAkB;IAC3C,YAAY,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,uBAAuB,EAAE,EAAE;IACrD,iBAAiB,EAAE,4BAA4B;IAC/C,qBAAqB,EAAE,EAAE,GAAG,EAAE,sBAAsB,EAAE,GAAG,cAAc,EAAE;CAC1E,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAG,iBAAiB,CAAC;IAC9D,MAAM,EAAE,QAAQ;IAChB,uBAAuB,EAAE,kBAAkB;IAC3C,YAAY,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,uBAAuB,EAAE,EAAE;IACrD,qBAAqB,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE;CAClE,CAAC,CAAA"}
@@ -13,6 +13,13 @@ export declare const vendorCredentialSchema: v.ObjectSchema<{
13
13
  readonly inputTokens: v.NumberSchema<undefined>;
14
14
  readonly outputTokens: v.NumberSchema<undefined>;
15
15
  readonly requestCount: v.NumberSchema<undefined>;
16
+ /** Whether this token is eligible for leasing. A disabled token stays in the pool
17
+ * (visible + re-enablable) but is never leased and doesn't make its vendor "configured". */
18
+ readonly enabled: v.BooleanSchema<undefined>;
19
+ /** Whether this token is the pinned default for its vendor: preferred at lease time over
20
+ * usage-aware rotation. At most one default per (workspace, vendor); a disabled default
21
+ * is ignored (leasing falls back to rotation among the remaining enabled tokens). */
22
+ readonly isDefault: v.BooleanSchema<undefined>;
16
23
  }, undefined>;
17
24
  export type VendorCredential = v.InferOutput<typeof vendorCredentialSchema>;
18
25
  export declare const vendorCredentialListSchema: v.ArraySchema<v.ObjectSchema<{
@@ -25,6 +32,13 @@ export declare const vendorCredentialListSchema: v.ArraySchema<v.ObjectSchema<{
25
32
  readonly inputTokens: v.NumberSchema<undefined>;
26
33
  readonly outputTokens: v.NumberSchema<undefined>;
27
34
  readonly requestCount: v.NumberSchema<undefined>;
35
+ /** Whether this token is eligible for leasing. A disabled token stays in the pool
36
+ * (visible + re-enablable) but is never leased and doesn't make its vendor "configured". */
37
+ readonly enabled: v.BooleanSchema<undefined>;
38
+ /** Whether this token is the pinned default for its vendor: preferred at lease time over
39
+ * usage-aware rotation. At most one default per (workspace, vendor); a disabled default
40
+ * is ignored (leasing falls back to rotation among the remaining enabled tokens). */
41
+ readonly isDefault: v.BooleanSchema<undefined>;
28
42
  }, undefined>, undefined>;
29
43
  export type VendorCredentialList = v.InferOutput<typeof vendorCredentialListSchema>;
30
44
  /** Add a token to the pool. `token` is write-only (the raw secret blob). */
@@ -34,4 +48,15 @@ export declare const addVendorCredentialSchema: v.ObjectSchema<{
34
48
  readonly token: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>;
35
49
  }, undefined>;
36
50
  export type AddVendorCredentialInput = v.InferOutput<typeof addVendorCredentialSchema>;
51
+ /**
52
+ * Update a pool token's lifecycle flags. Both fields are optional — only the supplied
53
+ * ones change. `enabled: false` takes the token out of rotation without deleting it;
54
+ * `isDefault: true` pins it as the vendor's default (clearing any prior default), and
55
+ * `isDefault: false` un-pins it (the vendor reverts to usage-aware rotation).
56
+ */
57
+ export declare const updateVendorCredentialSchema: v.ObjectSchema<{
58
+ readonly enabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
59
+ readonly isDefault: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
60
+ }, undefined>;
61
+ export type UpdateVendorCredentialInput = v.InferOutput<typeof updateVendorCredentialSchema>;
37
62
  //# sourceMappingURL=vendor-credentials.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vendor-credentials.d.ts","sourceRoot":"","sources":["../src/vendor-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAoB5B,uDAAuD;AACvD,eAAO,MAAM,wBAAwB,6EAA6D,CAAA;AAClG,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAE/E,iFAAiF;AACjF,eAAO,MAAM,sBAAsB;;;;;;IAMjC,0EAA0E;;;;aAI1E,CAAA;AACF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAE3E,eAAO,MAAM,0BAA0B;;;;;;IAPrC,0EAA0E;;;;yBAOH,CAAA;AACzE,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAEnF,4EAA4E;AAC5E,eAAO,MAAM,yBAAyB;;;;aAIpC,CAAA;AACF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,yBAAyB,CAAC,CAAA"}
1
+ {"version":3,"file":"vendor-credentials.d.ts","sourceRoot":"","sources":["../src/vendor-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAoB5B,uDAAuD;AACvD,eAAO,MAAM,wBAAwB,6EAA6D,CAAA;AAClG,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAE/E,iFAAiF;AACjF,eAAO,MAAM,sBAAsB;;;;;;IAMjC,0EAA0E;;;;IAI1E;gGAC4F;;IAE5F;;yFAEqF;;aAErF,CAAA;AACF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAE3E,eAAO,MAAM,0BAA0B;;;;;;IAdrC,0EAA0E;;;;IAI1E;gGAC4F;;IAE5F;;yFAEqF;;yBAKd,CAAA;AACzE,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAEnF,4EAA4E;AAC5E,eAAO,MAAM,yBAAyB;;;;aAIpC,CAAA;AACF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAEtF;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B;;;aAGvC,CAAA;AACF,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,4BAA4B,CAAC,CAAA"}
@@ -29,6 +29,13 @@ export const vendorCredentialSchema = v.object({
29
29
  inputTokens: v.number(),
30
30
  outputTokens: v.number(),
31
31
  requestCount: v.number(),
32
+ /** Whether this token is eligible for leasing. A disabled token stays in the pool
33
+ * (visible + re-enablable) but is never leased and doesn't make its vendor "configured". */
34
+ enabled: v.boolean(),
35
+ /** Whether this token is the pinned default for its vendor: preferred at lease time over
36
+ * usage-aware rotation. At most one default per (workspace, vendor); a disabled default
37
+ * is ignored (leasing falls back to rotation among the remaining enabled tokens). */
38
+ isDefault: v.boolean(),
32
39
  });
33
40
  export const vendorCredentialListSchema = v.array(vendorCredentialSchema);
34
41
  /** Add a token to the pool. `token` is write-only (the raw secret blob). */
@@ -37,4 +44,14 @@ export const addVendorCredentialSchema = v.object({
37
44
  label: v.pipe(v.string(), v.trim(), v.minLength(1), v.maxLength(120)),
38
45
  token: v.pipe(v.string(), v.trim(), v.minLength(1)),
39
46
  });
47
+ /**
48
+ * Update a pool token's lifecycle flags. Both fields are optional — only the supplied
49
+ * ones change. `enabled: false` takes the token out of rotation without deleting it;
50
+ * `isDefault: true` pins it as the vendor's default (clearing any prior default), and
51
+ * `isDefault: false` un-pins it (the vendor reverts to usage-aware rotation).
52
+ */
53
+ export const updateVendorCredentialSchema = v.object({
54
+ enabled: v.optional(v.boolean()),
55
+ isDefault: v.optional(v.boolean()),
56
+ });
40
57
  //# sourceMappingURL=vendor-credentials.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"vendor-credentials.js","sourceRoot":"","sources":["../src/vendor-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAE5B,8EAA8E;AAC9E,4DAA4D;AAC5D,EAAE;AACF,8EAA8E;AAC9E,4EAA4E;AAC5E,sBAAsB;AACtB,mEAAmE;AACnE,yEAAyE;AACzE,mFAAmF;AACnF,+EAA+E;AAC/E,iEAAiE;AACjE,6EAA6E;AAC7E,EAAE;AACF,0EAA0E;AAC1E,2EAA2E;AAC3E,6DAA6D;AAC7D,8EAA8E;AAE9E,uDAAuD;AACvD,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAA;AAGlG,iFAAiF;AACjF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,MAAM,EAAE,wBAAwB;IAChC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAClC,0EAA0E;IAC1E,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;CACzB,CAAC,CAAA;AAGF,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;AAGzE,4EAA4E;AAC5E,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,MAAM,EAAE,wBAAwB;IAChC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACrE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;CACpD,CAAC,CAAA"}
1
+ {"version":3,"file":"vendor-credentials.js","sourceRoot":"","sources":["../src/vendor-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAE5B,8EAA8E;AAC9E,4DAA4D;AAC5D,EAAE;AACF,8EAA8E;AAC9E,4EAA4E;AAC5E,sBAAsB;AACtB,mEAAmE;AACnE,yEAAyE;AACzE,mFAAmF;AACnF,+EAA+E;AAC/E,iEAAiE;AACjE,6EAA6E;AAC7E,EAAE;AACF,0EAA0E;AAC1E,2EAA2E;AAC3E,6DAA6D;AAC7D,8EAA8E;AAE9E,uDAAuD;AACvD,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAA;AAGlG,iFAAiF;AACjF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,MAAM,EAAE,wBAAwB;IAChC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAClC,0EAA0E;IAC1E,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB;gGAC4F;IAC5F,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;IACpB;;yFAEqF;IACrF,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE;CACvB,CAAC,CAAA;AAGF,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;AAGzE,4EAA4E;AAC5E,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,MAAM,EAAE,wBAAwB;IAChC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACrE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;CACpD,CAAC,CAAA;AAGF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IAChC,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;CACnC,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cat-factory/contracts",
3
- "version": "0.157.0",
3
+ "version": "0.158.0",
4
4
  "description": "Valibot wire contract shared between the Agent Architecture Board frontend and backend.",
5
5
  "repository": {
6
6
  "type": "git",