@cat-factory/contracts 0.35.0 → 0.37.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/auth.d.ts +11 -0
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +9 -0
- package/dist/auth.js.map +1 -1
- package/dist/routes/_shared.d.ts +9 -0
- package/dist/routes/_shared.d.ts.map +1 -1
- package/dist/routes/_shared.js +12 -0
- package/dist/routes/_shared.js.map +1 -1
- package/dist/routes/accounts.d.ts +13 -13
- package/dist/routes/accounts.js +2 -2
- package/dist/routes/accounts.js.map +1 -1
- package/dist/routes/agent-runs.d.ts +2 -2
- package/dist/routes/agent-runs.d.ts.map +1 -1
- package/dist/routes/agent-runs.js +3 -3
- package/dist/routes/agent-runs.js.map +1 -1
- package/dist/routes/api-keys.d.ts +154 -155
- package/dist/routes/api-keys.d.ts.map +1 -1
- package/dist/routes/api-keys.js +3 -4
- package/dist/routes/api-keys.js.map +1 -1
- package/dist/routes/auth.d.ts +67 -2
- package/dist/routes/auth.d.ts.map +1 -1
- package/dist/routes/auth.js +20 -4
- package/dist/routes/auth.js.map +1 -1
- package/dist/routes/board.d.ts +853 -854
- package/dist/routes/board.d.ts.map +1 -1
- package/dist/routes/board.js +3 -4
- package/dist/routes/board.js.map +1 -1
- package/dist/routes/bootstrap.d.ts +3 -3
- package/dist/routes/bootstrap.d.ts.map +1 -1
- package/dist/routes/bootstrap.js +4 -4
- package/dist/routes/bootstrap.js.map +1 -1
- package/dist/routes/clarity.d.ts +6 -6
- package/dist/routes/clarity.js +2 -2
- package/dist/routes/clarity.js.map +1 -1
- package/dist/routes/consensus.d.ts +1 -1
- package/dist/routes/consensus.js +3 -3
- package/dist/routes/consensus.js.map +1 -1
- package/dist/routes/documents.d.ts +6 -6
- package/dist/routes/documents.d.ts.map +1 -1
- package/dist/routes/documents.js +3 -3
- package/dist/routes/documents.js.map +1 -1
- package/dist/routes/environments.d.ts +3 -3
- package/dist/routes/environments.d.ts.map +1 -1
- package/dist/routes/environments.js +3 -3
- package/dist/routes/environments.js.map +1 -1
- package/dist/routes/execution.d.ts +7 -7
- package/dist/routes/execution.js +3 -3
- package/dist/routes/execution.js.map +1 -1
- package/dist/routes/followUp.d.ts +1 -1
- package/dist/routes/followUp.js +2 -2
- package/dist/routes/followUp.js.map +1 -1
- package/dist/routes/fragment-library.d.ts +6 -6
- package/dist/routes/fragment-library.d.ts.map +1 -1
- package/dist/routes/fragment-library.js +4 -4
- package/dist/routes/fragment-library.js.map +1 -1
- package/dist/routes/github.d.ts +6 -6
- package/dist/routes/github.js +2 -2
- package/dist/routes/github.js.map +1 -1
- package/dist/routes/human-review.d.ts +235 -236
- package/dist/routes/human-review.d.ts.map +1 -1
- package/dist/routes/human-review.js +3 -4
- package/dist/routes/human-review.js.map +1 -1
- package/dist/routes/human-test.d.ts +1202 -1203
- package/dist/routes/human-test.d.ts.map +1 -1
- package/dist/routes/human-test.js +3 -4
- package/dist/routes/human-test.js.map +1 -1
- package/dist/routes/kaizen.d.ts +79 -80
- package/dist/routes/kaizen.d.ts.map +1 -1
- package/dist/routes/kaizen.js +3 -4
- package/dist/routes/kaizen.js.map +1 -1
- package/dist/routes/localModels.d.ts +2 -2
- package/dist/routes/localModels.d.ts.map +1 -1
- package/dist/routes/localModels.js +3 -3
- package/dist/routes/localModels.js.map +1 -1
- package/dist/routes/merge.d.ts +2 -2
- package/dist/routes/merge.d.ts.map +1 -1
- package/dist/routes/merge.js +3 -3
- package/dist/routes/merge.js.map +1 -1
- package/dist/routes/model-presets.d.ts +2 -2
- package/dist/routes/model-presets.d.ts.map +1 -1
- package/dist/routes/model-presets.js +3 -3
- package/dist/routes/model-presets.js.map +1 -1
- package/dist/routes/models.d.ts +86 -87
- package/dist/routes/models.d.ts.map +1 -1
- package/dist/routes/models.js +3 -4
- package/dist/routes/models.js.map +1 -1
- package/dist/routes/notifications.d.ts +2 -2
- package/dist/routes/notifications.d.ts.map +1 -1
- package/dist/routes/notifications.js +3 -3
- package/dist/routes/notifications.js.map +1 -1
- package/dist/routes/openrouter.d.ts +88 -89
- package/dist/routes/openrouter.d.ts.map +1 -1
- package/dist/routes/openrouter.js +3 -4
- package/dist/routes/openrouter.js.map +1 -1
- package/dist/routes/personal-subscriptions.d.ts +1 -1
- package/dist/routes/personal-subscriptions.d.ts.map +1 -1
- package/dist/routes/personal-subscriptions.js +3 -3
- package/dist/routes/personal-subscriptions.js.map +1 -1
- package/dist/routes/pipelines.d.ts +4 -4
- package/dist/routes/pipelines.d.ts.map +1 -1
- package/dist/routes/pipelines.js +3 -3
- package/dist/routes/pipelines.js.map +1 -1
- package/dist/routes/recurring.d.ts +4 -4
- package/dist/routes/recurring.d.ts.map +1 -1
- package/dist/routes/recurring.js +3 -3
- package/dist/routes/recurring.js.map +1 -1
- package/dist/routes/release.d.ts +2 -2
- package/dist/routes/release.d.ts.map +1 -1
- package/dist/routes/release.js +3 -3
- package/dist/routes/release.js.map +1 -1
- package/dist/routes/requirements.d.ts +7 -7
- package/dist/routes/requirements.js +2 -2
- package/dist/routes/requirements.js.map +1 -1
- package/dist/routes/sandbox.d.ts +5 -5
- package/dist/routes/sandbox.d.ts.map +1 -1
- package/dist/routes/sandbox.js +5 -5
- package/dist/routes/sandbox.js.map +1 -1
- package/dist/routes/services.d.ts +3 -3
- package/dist/routes/services.d.ts.map +1 -1
- package/dist/routes/services.js +3 -3
- package/dist/routes/services.js.map +1 -1
- package/dist/routes/spec.d.ts +51 -52
- package/dist/routes/spec.d.ts.map +1 -1
- package/dist/routes/spec.js +3 -4
- package/dist/routes/spec.js.map +1 -1
- package/dist/routes/tasks.d.ts +7 -7
- package/dist/routes/tasks.d.ts.map +1 -1
- package/dist/routes/tasks.js +3 -3
- package/dist/routes/tasks.js.map +1 -1
- package/dist/routes/user-secret.d.ts +4 -4
- package/dist/routes/user-secret.d.ts.map +1 -1
- package/dist/routes/user-secret.js +3 -3
- package/dist/routes/user-secret.js.map +1 -1
- package/dist/routes/vendor-credentials.d.ts +1 -1
- package/dist/routes/vendor-credentials.d.ts.map +1 -1
- package/dist/routes/vendor-credentials.js +3 -3
- package/dist/routes/vendor-credentials.js.map +1 -1
- package/dist/routes/workspaces.d.ts +3 -3
- package/dist/routes/workspaces.d.ts.map +1 -1
- package/dist/routes/workspaces.js +5 -5
- package/dist/routes/workspaces.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,43 +1,42 @@
|
|
|
1
1
|
import { ContractNoBody } from '@toad-contracts/valibot';
|
|
2
|
-
import * as v from 'valibot';
|
|
3
2
|
export declare const listWorkspaceApiKeysContract: {
|
|
4
3
|
readonly method: "get";
|
|
5
4
|
readonly pathResolver: () => string;
|
|
6
5
|
readonly responsesByStatusCode: {
|
|
7
|
-
readonly '4xx':
|
|
8
|
-
readonly error:
|
|
9
|
-
readonly code:
|
|
10
|
-
readonly message:
|
|
11
|
-
readonly details:
|
|
12
|
-
readonly issues:
|
|
13
|
-
readonly path:
|
|
14
|
-
readonly message:
|
|
6
|
+
readonly '4xx': import("valibot").ObjectSchema<{
|
|
7
|
+
readonly error: import("valibot").ObjectSchema<{
|
|
8
|
+
readonly code: import("valibot").StringSchema<undefined>;
|
|
9
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
10
|
+
readonly details: import("valibot").OptionalSchema<import("valibot").UnknownSchema, undefined>;
|
|
11
|
+
readonly issues: import("valibot").OptionalSchema<import("valibot").ArraySchema<import("valibot").ObjectSchema<{
|
|
12
|
+
readonly path: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
|
|
13
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
15
14
|
}, undefined>, undefined>, undefined>;
|
|
16
15
|
}, undefined>;
|
|
17
16
|
}, undefined>;
|
|
18
|
-
readonly '5xx':
|
|
19
|
-
readonly error:
|
|
20
|
-
readonly code:
|
|
21
|
-
readonly message:
|
|
22
|
-
readonly details:
|
|
23
|
-
readonly issues:
|
|
24
|
-
readonly path:
|
|
25
|
-
readonly message:
|
|
17
|
+
readonly '5xx': import("valibot").ObjectSchema<{
|
|
18
|
+
readonly error: import("valibot").ObjectSchema<{
|
|
19
|
+
readonly code: import("valibot").StringSchema<undefined>;
|
|
20
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
21
|
+
readonly details: import("valibot").OptionalSchema<import("valibot").UnknownSchema, undefined>;
|
|
22
|
+
readonly issues: import("valibot").OptionalSchema<import("valibot").ArraySchema<import("valibot").ObjectSchema<{
|
|
23
|
+
readonly path: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
|
|
24
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
26
25
|
}, undefined>, undefined>, undefined>;
|
|
27
26
|
}, undefined>;
|
|
28
27
|
}, undefined>;
|
|
29
|
-
readonly 200:
|
|
30
|
-
readonly keys:
|
|
31
|
-
readonly id:
|
|
32
|
-
readonly scope:
|
|
33
|
-
readonly scopeId:
|
|
34
|
-
readonly provider:
|
|
35
|
-
readonly label:
|
|
36
|
-
readonly createdAt:
|
|
37
|
-
readonly lastUsedAt:
|
|
38
|
-
readonly inputTokens:
|
|
39
|
-
readonly outputTokens:
|
|
40
|
-
readonly requestCount:
|
|
28
|
+
readonly 200: import("valibot").ObjectSchema<{
|
|
29
|
+
readonly keys: import("valibot").ArraySchema<import("valibot").ObjectSchema<{
|
|
30
|
+
readonly id: import("valibot").StringSchema<undefined>;
|
|
31
|
+
readonly scope: import("valibot").PicklistSchema<["account", "workspace", "user"], undefined>;
|
|
32
|
+
readonly scopeId: import("valibot").StringSchema<undefined>;
|
|
33
|
+
readonly provider: import("valibot").PicklistSchema<["openai", "anthropic", "qwen", "deepseek", "moonshot", "openrouter", "litellm"], undefined>;
|
|
34
|
+
readonly label: import("valibot").StringSchema<undefined>;
|
|
35
|
+
readonly createdAt: import("valibot").NumberSchema<undefined>;
|
|
36
|
+
readonly lastUsedAt: import("valibot").NullableSchema<import("valibot").NumberSchema<undefined>, undefined>;
|
|
37
|
+
readonly inputTokens: import("valibot").NumberSchema<undefined>;
|
|
38
|
+
readonly outputTokens: import("valibot").NumberSchema<undefined>;
|
|
39
|
+
readonly requestCount: import("valibot").NumberSchema<undefined>;
|
|
41
40
|
}, undefined>, undefined>;
|
|
42
41
|
}, undefined>;
|
|
43
42
|
};
|
|
@@ -45,76 +44,76 @@ export declare const listWorkspaceApiKeysContract: {
|
|
|
45
44
|
export declare const addWorkspaceApiKeyContract: {
|
|
46
45
|
readonly method: "post";
|
|
47
46
|
readonly pathResolver: () => string;
|
|
48
|
-
readonly requestBodySchema:
|
|
49
|
-
readonly provider:
|
|
50
|
-
readonly label:
|
|
51
|
-
readonly key:
|
|
47
|
+
readonly requestBodySchema: import("valibot").ObjectSchema<{
|
|
48
|
+
readonly provider: import("valibot").PicklistSchema<["openai", "anthropic", "qwen", "deepseek", "moonshot", "openrouter", "litellm"], undefined>;
|
|
49
|
+
readonly label: import("valibot").SchemaWithPipe<readonly [import("valibot").StringSchema<undefined>, import("valibot").TrimAction, import("valibot").MinLengthAction<string, 1, undefined>, import("valibot").MaxLengthAction<string, 120, undefined>]>;
|
|
50
|
+
readonly key: import("valibot").SchemaWithPipe<readonly [import("valibot").StringSchema<undefined>, import("valibot").TrimAction, import("valibot").MinLengthAction<string, 1, undefined>]>;
|
|
52
51
|
}, undefined>;
|
|
53
52
|
readonly responsesByStatusCode: {
|
|
54
|
-
readonly '4xx':
|
|
55
|
-
readonly error:
|
|
56
|
-
readonly code:
|
|
57
|
-
readonly message:
|
|
58
|
-
readonly details:
|
|
59
|
-
readonly issues:
|
|
60
|
-
readonly path:
|
|
61
|
-
readonly message:
|
|
53
|
+
readonly '4xx': import("valibot").ObjectSchema<{
|
|
54
|
+
readonly error: import("valibot").ObjectSchema<{
|
|
55
|
+
readonly code: import("valibot").StringSchema<undefined>;
|
|
56
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
57
|
+
readonly details: import("valibot").OptionalSchema<import("valibot").UnknownSchema, undefined>;
|
|
58
|
+
readonly issues: import("valibot").OptionalSchema<import("valibot").ArraySchema<import("valibot").ObjectSchema<{
|
|
59
|
+
readonly path: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
|
|
60
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
62
61
|
}, undefined>, undefined>, undefined>;
|
|
63
62
|
}, undefined>;
|
|
64
63
|
}, undefined>;
|
|
65
|
-
readonly '5xx':
|
|
66
|
-
readonly error:
|
|
67
|
-
readonly code:
|
|
68
|
-
readonly message:
|
|
69
|
-
readonly details:
|
|
70
|
-
readonly issues:
|
|
71
|
-
readonly path:
|
|
72
|
-
readonly message:
|
|
64
|
+
readonly '5xx': import("valibot").ObjectSchema<{
|
|
65
|
+
readonly error: import("valibot").ObjectSchema<{
|
|
66
|
+
readonly code: import("valibot").StringSchema<undefined>;
|
|
67
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
68
|
+
readonly details: import("valibot").OptionalSchema<import("valibot").UnknownSchema, undefined>;
|
|
69
|
+
readonly issues: import("valibot").OptionalSchema<import("valibot").ArraySchema<import("valibot").ObjectSchema<{
|
|
70
|
+
readonly path: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
|
|
71
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
73
72
|
}, undefined>, undefined>, undefined>;
|
|
74
73
|
}, undefined>;
|
|
75
74
|
}, undefined>;
|
|
76
|
-
readonly 201:
|
|
77
|
-
readonly id:
|
|
78
|
-
readonly scope:
|
|
79
|
-
readonly scopeId:
|
|
80
|
-
readonly provider:
|
|
81
|
-
readonly label:
|
|
82
|
-
readonly createdAt:
|
|
83
|
-
readonly lastUsedAt:
|
|
84
|
-
readonly inputTokens:
|
|
85
|
-
readonly outputTokens:
|
|
86
|
-
readonly requestCount:
|
|
75
|
+
readonly 201: import("valibot").ObjectSchema<{
|
|
76
|
+
readonly id: import("valibot").StringSchema<undefined>;
|
|
77
|
+
readonly scope: import("valibot").PicklistSchema<["account", "workspace", "user"], undefined>;
|
|
78
|
+
readonly scopeId: import("valibot").StringSchema<undefined>;
|
|
79
|
+
readonly provider: import("valibot").PicklistSchema<["openai", "anthropic", "qwen", "deepseek", "moonshot", "openrouter", "litellm"], undefined>;
|
|
80
|
+
readonly label: import("valibot").StringSchema<undefined>;
|
|
81
|
+
readonly createdAt: import("valibot").NumberSchema<undefined>;
|
|
82
|
+
readonly lastUsedAt: import("valibot").NullableSchema<import("valibot").NumberSchema<undefined>, undefined>;
|
|
83
|
+
readonly inputTokens: import("valibot").NumberSchema<undefined>;
|
|
84
|
+
readonly outputTokens: import("valibot").NumberSchema<undefined>;
|
|
85
|
+
readonly requestCount: import("valibot").NumberSchema<undefined>;
|
|
87
86
|
}, undefined>;
|
|
88
87
|
};
|
|
89
88
|
};
|
|
90
89
|
export declare const removeWorkspaceApiKeyContract: {
|
|
91
90
|
readonly method: "delete";
|
|
92
|
-
readonly requestPathParamsSchema:
|
|
93
|
-
|
|
91
|
+
readonly requestPathParamsSchema: import("valibot").ObjectSchema<{
|
|
92
|
+
id: import("valibot").StringSchema<undefined>;
|
|
94
93
|
}, undefined> & import("@toad-contracts/core").ObjectKeysCarrier;
|
|
95
94
|
readonly pathResolver: ({ id }: {
|
|
96
95
|
id: string;
|
|
97
96
|
}) => string;
|
|
98
97
|
readonly responsesByStatusCode: {
|
|
99
|
-
readonly '4xx':
|
|
100
|
-
readonly error:
|
|
101
|
-
readonly code:
|
|
102
|
-
readonly message:
|
|
103
|
-
readonly details:
|
|
104
|
-
readonly issues:
|
|
105
|
-
readonly path:
|
|
106
|
-
readonly message:
|
|
98
|
+
readonly '4xx': import("valibot").ObjectSchema<{
|
|
99
|
+
readonly error: import("valibot").ObjectSchema<{
|
|
100
|
+
readonly code: import("valibot").StringSchema<undefined>;
|
|
101
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
102
|
+
readonly details: import("valibot").OptionalSchema<import("valibot").UnknownSchema, undefined>;
|
|
103
|
+
readonly issues: import("valibot").OptionalSchema<import("valibot").ArraySchema<import("valibot").ObjectSchema<{
|
|
104
|
+
readonly path: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
|
|
105
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
107
106
|
}, undefined>, undefined>, undefined>;
|
|
108
107
|
}, undefined>;
|
|
109
108
|
}, undefined>;
|
|
110
|
-
readonly '5xx':
|
|
111
|
-
readonly error:
|
|
112
|
-
readonly code:
|
|
113
|
-
readonly message:
|
|
114
|
-
readonly details:
|
|
115
|
-
readonly issues:
|
|
116
|
-
readonly path:
|
|
117
|
-
readonly message:
|
|
109
|
+
readonly '5xx': import("valibot").ObjectSchema<{
|
|
110
|
+
readonly error: import("valibot").ObjectSchema<{
|
|
111
|
+
readonly code: import("valibot").StringSchema<undefined>;
|
|
112
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
113
|
+
readonly details: import("valibot").OptionalSchema<import("valibot").UnknownSchema, undefined>;
|
|
114
|
+
readonly issues: import("valibot").OptionalSchema<import("valibot").ArraySchema<import("valibot").ObjectSchema<{
|
|
115
|
+
readonly path: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
|
|
116
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
118
117
|
}, undefined>, undefined>, undefined>;
|
|
119
118
|
}, undefined>;
|
|
120
119
|
}, undefined>;
|
|
@@ -125,40 +124,40 @@ export declare const listUserApiKeysContract: {
|
|
|
125
124
|
readonly method: "get";
|
|
126
125
|
readonly pathResolver: () => string;
|
|
127
126
|
readonly responsesByStatusCode: {
|
|
128
|
-
readonly '4xx':
|
|
129
|
-
readonly error:
|
|
130
|
-
readonly code:
|
|
131
|
-
readonly message:
|
|
132
|
-
readonly details:
|
|
133
|
-
readonly issues:
|
|
134
|
-
readonly path:
|
|
135
|
-
readonly message:
|
|
127
|
+
readonly '4xx': import("valibot").ObjectSchema<{
|
|
128
|
+
readonly error: import("valibot").ObjectSchema<{
|
|
129
|
+
readonly code: import("valibot").StringSchema<undefined>;
|
|
130
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
131
|
+
readonly details: import("valibot").OptionalSchema<import("valibot").UnknownSchema, undefined>;
|
|
132
|
+
readonly issues: import("valibot").OptionalSchema<import("valibot").ArraySchema<import("valibot").ObjectSchema<{
|
|
133
|
+
readonly path: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
|
|
134
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
136
135
|
}, undefined>, undefined>, undefined>;
|
|
137
136
|
}, undefined>;
|
|
138
137
|
}, undefined>;
|
|
139
|
-
readonly '5xx':
|
|
140
|
-
readonly error:
|
|
141
|
-
readonly code:
|
|
142
|
-
readonly message:
|
|
143
|
-
readonly details:
|
|
144
|
-
readonly issues:
|
|
145
|
-
readonly path:
|
|
146
|
-
readonly message:
|
|
138
|
+
readonly '5xx': import("valibot").ObjectSchema<{
|
|
139
|
+
readonly error: import("valibot").ObjectSchema<{
|
|
140
|
+
readonly code: import("valibot").StringSchema<undefined>;
|
|
141
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
142
|
+
readonly details: import("valibot").OptionalSchema<import("valibot").UnknownSchema, undefined>;
|
|
143
|
+
readonly issues: import("valibot").OptionalSchema<import("valibot").ArraySchema<import("valibot").ObjectSchema<{
|
|
144
|
+
readonly path: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
|
|
145
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
147
146
|
}, undefined>, undefined>, undefined>;
|
|
148
147
|
}, undefined>;
|
|
149
148
|
}, undefined>;
|
|
150
|
-
readonly 200:
|
|
151
|
-
readonly keys:
|
|
152
|
-
readonly id:
|
|
153
|
-
readonly scope:
|
|
154
|
-
readonly scopeId:
|
|
155
|
-
readonly provider:
|
|
156
|
-
readonly label:
|
|
157
|
-
readonly createdAt:
|
|
158
|
-
readonly lastUsedAt:
|
|
159
|
-
readonly inputTokens:
|
|
160
|
-
readonly outputTokens:
|
|
161
|
-
readonly requestCount:
|
|
149
|
+
readonly 200: import("valibot").ObjectSchema<{
|
|
150
|
+
readonly keys: import("valibot").ArraySchema<import("valibot").ObjectSchema<{
|
|
151
|
+
readonly id: import("valibot").StringSchema<undefined>;
|
|
152
|
+
readonly scope: import("valibot").PicklistSchema<["account", "workspace", "user"], undefined>;
|
|
153
|
+
readonly scopeId: import("valibot").StringSchema<undefined>;
|
|
154
|
+
readonly provider: import("valibot").PicklistSchema<["openai", "anthropic", "qwen", "deepseek", "moonshot", "openrouter", "litellm"], undefined>;
|
|
155
|
+
readonly label: import("valibot").StringSchema<undefined>;
|
|
156
|
+
readonly createdAt: import("valibot").NumberSchema<undefined>;
|
|
157
|
+
readonly lastUsedAt: import("valibot").NullableSchema<import("valibot").NumberSchema<undefined>, undefined>;
|
|
158
|
+
readonly inputTokens: import("valibot").NumberSchema<undefined>;
|
|
159
|
+
readonly outputTokens: import("valibot").NumberSchema<undefined>;
|
|
160
|
+
readonly requestCount: import("valibot").NumberSchema<undefined>;
|
|
162
161
|
}, undefined>, undefined>;
|
|
163
162
|
}, undefined>;
|
|
164
163
|
};
|
|
@@ -166,76 +165,76 @@ export declare const listUserApiKeysContract: {
|
|
|
166
165
|
export declare const addUserApiKeyContract: {
|
|
167
166
|
readonly method: "post";
|
|
168
167
|
readonly pathResolver: () => string;
|
|
169
|
-
readonly requestBodySchema:
|
|
170
|
-
readonly provider:
|
|
171
|
-
readonly label:
|
|
172
|
-
readonly key:
|
|
168
|
+
readonly requestBodySchema: import("valibot").ObjectSchema<{
|
|
169
|
+
readonly provider: import("valibot").PicklistSchema<["openai", "anthropic", "qwen", "deepseek", "moonshot", "openrouter", "litellm"], undefined>;
|
|
170
|
+
readonly label: import("valibot").SchemaWithPipe<readonly [import("valibot").StringSchema<undefined>, import("valibot").TrimAction, import("valibot").MinLengthAction<string, 1, undefined>, import("valibot").MaxLengthAction<string, 120, undefined>]>;
|
|
171
|
+
readonly key: import("valibot").SchemaWithPipe<readonly [import("valibot").StringSchema<undefined>, import("valibot").TrimAction, import("valibot").MinLengthAction<string, 1, undefined>]>;
|
|
173
172
|
}, undefined>;
|
|
174
173
|
readonly responsesByStatusCode: {
|
|
175
|
-
readonly '4xx':
|
|
176
|
-
readonly error:
|
|
177
|
-
readonly code:
|
|
178
|
-
readonly message:
|
|
179
|
-
readonly details:
|
|
180
|
-
readonly issues:
|
|
181
|
-
readonly path:
|
|
182
|
-
readonly message:
|
|
174
|
+
readonly '4xx': import("valibot").ObjectSchema<{
|
|
175
|
+
readonly error: import("valibot").ObjectSchema<{
|
|
176
|
+
readonly code: import("valibot").StringSchema<undefined>;
|
|
177
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
178
|
+
readonly details: import("valibot").OptionalSchema<import("valibot").UnknownSchema, undefined>;
|
|
179
|
+
readonly issues: import("valibot").OptionalSchema<import("valibot").ArraySchema<import("valibot").ObjectSchema<{
|
|
180
|
+
readonly path: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
|
|
181
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
183
182
|
}, undefined>, undefined>, undefined>;
|
|
184
183
|
}, undefined>;
|
|
185
184
|
}, undefined>;
|
|
186
|
-
readonly '5xx':
|
|
187
|
-
readonly error:
|
|
188
|
-
readonly code:
|
|
189
|
-
readonly message:
|
|
190
|
-
readonly details:
|
|
191
|
-
readonly issues:
|
|
192
|
-
readonly path:
|
|
193
|
-
readonly message:
|
|
185
|
+
readonly '5xx': import("valibot").ObjectSchema<{
|
|
186
|
+
readonly error: import("valibot").ObjectSchema<{
|
|
187
|
+
readonly code: import("valibot").StringSchema<undefined>;
|
|
188
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
189
|
+
readonly details: import("valibot").OptionalSchema<import("valibot").UnknownSchema, undefined>;
|
|
190
|
+
readonly issues: import("valibot").OptionalSchema<import("valibot").ArraySchema<import("valibot").ObjectSchema<{
|
|
191
|
+
readonly path: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
|
|
192
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
194
193
|
}, undefined>, undefined>, undefined>;
|
|
195
194
|
}, undefined>;
|
|
196
195
|
}, undefined>;
|
|
197
|
-
readonly 201:
|
|
198
|
-
readonly id:
|
|
199
|
-
readonly scope:
|
|
200
|
-
readonly scopeId:
|
|
201
|
-
readonly provider:
|
|
202
|
-
readonly label:
|
|
203
|
-
readonly createdAt:
|
|
204
|
-
readonly lastUsedAt:
|
|
205
|
-
readonly inputTokens:
|
|
206
|
-
readonly outputTokens:
|
|
207
|
-
readonly requestCount:
|
|
196
|
+
readonly 201: import("valibot").ObjectSchema<{
|
|
197
|
+
readonly id: import("valibot").StringSchema<undefined>;
|
|
198
|
+
readonly scope: import("valibot").PicklistSchema<["account", "workspace", "user"], undefined>;
|
|
199
|
+
readonly scopeId: import("valibot").StringSchema<undefined>;
|
|
200
|
+
readonly provider: import("valibot").PicklistSchema<["openai", "anthropic", "qwen", "deepseek", "moonshot", "openrouter", "litellm"], undefined>;
|
|
201
|
+
readonly label: import("valibot").StringSchema<undefined>;
|
|
202
|
+
readonly createdAt: import("valibot").NumberSchema<undefined>;
|
|
203
|
+
readonly lastUsedAt: import("valibot").NullableSchema<import("valibot").NumberSchema<undefined>, undefined>;
|
|
204
|
+
readonly inputTokens: import("valibot").NumberSchema<undefined>;
|
|
205
|
+
readonly outputTokens: import("valibot").NumberSchema<undefined>;
|
|
206
|
+
readonly requestCount: import("valibot").NumberSchema<undefined>;
|
|
208
207
|
}, undefined>;
|
|
209
208
|
};
|
|
210
209
|
};
|
|
211
210
|
export declare const removeUserApiKeyContract: {
|
|
212
211
|
readonly method: "delete";
|
|
213
|
-
readonly requestPathParamsSchema:
|
|
214
|
-
|
|
212
|
+
readonly requestPathParamsSchema: import("valibot").ObjectSchema<{
|
|
213
|
+
id: import("valibot").StringSchema<undefined>;
|
|
215
214
|
}, undefined> & import("@toad-contracts/core").ObjectKeysCarrier;
|
|
216
215
|
readonly pathResolver: ({ id }: {
|
|
217
216
|
id: string;
|
|
218
217
|
}) => string;
|
|
219
218
|
readonly responsesByStatusCode: {
|
|
220
|
-
readonly '4xx':
|
|
221
|
-
readonly error:
|
|
222
|
-
readonly code:
|
|
223
|
-
readonly message:
|
|
224
|
-
readonly details:
|
|
225
|
-
readonly issues:
|
|
226
|
-
readonly path:
|
|
227
|
-
readonly message:
|
|
219
|
+
readonly '4xx': import("valibot").ObjectSchema<{
|
|
220
|
+
readonly error: import("valibot").ObjectSchema<{
|
|
221
|
+
readonly code: import("valibot").StringSchema<undefined>;
|
|
222
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
223
|
+
readonly details: import("valibot").OptionalSchema<import("valibot").UnknownSchema, undefined>;
|
|
224
|
+
readonly issues: import("valibot").OptionalSchema<import("valibot").ArraySchema<import("valibot").ObjectSchema<{
|
|
225
|
+
readonly path: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
|
|
226
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
228
227
|
}, undefined>, undefined>, undefined>;
|
|
229
228
|
}, undefined>;
|
|
230
229
|
}, undefined>;
|
|
231
|
-
readonly '5xx':
|
|
232
|
-
readonly error:
|
|
233
|
-
readonly code:
|
|
234
|
-
readonly message:
|
|
235
|
-
readonly details:
|
|
236
|
-
readonly issues:
|
|
237
|
-
readonly path:
|
|
238
|
-
readonly message:
|
|
230
|
+
readonly '5xx': import("valibot").ObjectSchema<{
|
|
231
|
+
readonly error: import("valibot").ObjectSchema<{
|
|
232
|
+
readonly code: import("valibot").StringSchema<undefined>;
|
|
233
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
234
|
+
readonly details: import("valibot").OptionalSchema<import("valibot").UnknownSchema, undefined>;
|
|
235
|
+
readonly issues: import("valibot").OptionalSchema<import("valibot").ArraySchema<import("valibot").ObjectSchema<{
|
|
236
|
+
readonly path: import("valibot").OptionalSchema<import("valibot").StringSchema<undefined>, undefined>;
|
|
237
|
+
readonly message: import("valibot").StringSchema<undefined>;
|
|
239
238
|
}, undefined>, undefined>, undefined>;
|
|
240
239
|
}, undefined>;
|
|
241
240
|
}, undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-keys.d.ts","sourceRoot":"","sources":["../../src/routes/api-keys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,
|
|
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"}
|
package/dist/routes/api-keys.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { ContractNoBody, defineApiContract
|
|
2
|
-
import * as v from 'valibot';
|
|
1
|
+
import { ContractNoBody, defineApiContract } from '@toad-contracts/valibot';
|
|
3
2
|
import { addApiKeySchema, apiKeyListResultSchema, apiKeySchema } from '../api-keys.js';
|
|
4
|
-
import { errorResponses } from './_shared.js';
|
|
3
|
+
import { errorResponses, singleStringParam } from './_shared.js';
|
|
5
4
|
// ---------------------------------------------------------------------------
|
|
6
5
|
// Direct-provider API-key route contracts. Two controllers consume these:
|
|
7
6
|
// `workspaceApiKeyController` (mounted under `/workspaces/:workspaceId`, so its
|
|
@@ -9,7 +8,7 @@ import { errorResponses } from './_shared.js';
|
|
|
9
8
|
// paths are absolute and carry no path params). See ApiKeyController in
|
|
10
9
|
// @cat-factory/server. (The account-scoped key routes live in `routes/accounts.ts`.)
|
|
11
10
|
// ---------------------------------------------------------------------------
|
|
12
|
-
const idParams =
|
|
11
|
+
const idParams = singleStringParam('id');
|
|
13
12
|
// ---- workspace-scoped (relative to `/workspaces/:workspaceId`) ------------
|
|
14
13
|
export const listWorkspaceApiKeysContract = defineApiContract({
|
|
15
14
|
method: 'get',
|
|
@@ -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,
|
|
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"}
|
package/dist/routes/auth.d.ts
CHANGED
|
@@ -263,10 +263,75 @@ export declare const passwordLoginContract: {
|
|
|
263
263
|
}, undefined>;
|
|
264
264
|
};
|
|
265
265
|
};
|
|
266
|
+
export declare const forgotPasswordContract: {
|
|
267
|
+
readonly method: "post";
|
|
268
|
+
readonly pathResolver: () => string;
|
|
269
|
+
readonly requestBodySchema: v.ObjectSchema<{
|
|
270
|
+
readonly email: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.EmailAction<string, undefined>, v.MaxLengthAction<string, 320, undefined>]>;
|
|
271
|
+
}, undefined>;
|
|
272
|
+
readonly responsesByStatusCode: {
|
|
273
|
+
readonly '4xx': v.ObjectSchema<{
|
|
274
|
+
readonly error: v.ObjectSchema<{
|
|
275
|
+
readonly code: v.StringSchema<undefined>;
|
|
276
|
+
readonly message: v.StringSchema<undefined>;
|
|
277
|
+
readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
|
|
278
|
+
readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
|
|
279
|
+
readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
280
|
+
readonly message: v.StringSchema<undefined>;
|
|
281
|
+
}, undefined>, undefined>, undefined>;
|
|
282
|
+
}, undefined>;
|
|
283
|
+
}, undefined>;
|
|
284
|
+
readonly '5xx': v.ObjectSchema<{
|
|
285
|
+
readonly error: v.ObjectSchema<{
|
|
286
|
+
readonly code: v.StringSchema<undefined>;
|
|
287
|
+
readonly message: v.StringSchema<undefined>;
|
|
288
|
+
readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
|
|
289
|
+
readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
|
|
290
|
+
readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
291
|
+
readonly message: v.StringSchema<undefined>;
|
|
292
|
+
}, undefined>, undefined>, undefined>;
|
|
293
|
+
}, undefined>;
|
|
294
|
+
}, undefined>;
|
|
295
|
+
readonly 204: typeof ContractNoBody;
|
|
296
|
+
};
|
|
297
|
+
};
|
|
298
|
+
export declare const resetPasswordContract: {
|
|
299
|
+
readonly method: "post";
|
|
300
|
+
readonly pathResolver: () => string;
|
|
301
|
+
readonly requestBodySchema: v.ObjectSchema<{
|
|
302
|
+
readonly token: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
|
|
303
|
+
readonly password: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 8, undefined>, v.MaxLengthAction<string, 200, undefined>]>;
|
|
304
|
+
}, undefined>;
|
|
305
|
+
readonly responsesByStatusCode: {
|
|
306
|
+
readonly '4xx': v.ObjectSchema<{
|
|
307
|
+
readonly error: v.ObjectSchema<{
|
|
308
|
+
readonly code: v.StringSchema<undefined>;
|
|
309
|
+
readonly message: v.StringSchema<undefined>;
|
|
310
|
+
readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
|
|
311
|
+
readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
|
|
312
|
+
readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
313
|
+
readonly message: v.StringSchema<undefined>;
|
|
314
|
+
}, undefined>, undefined>, undefined>;
|
|
315
|
+
}, undefined>;
|
|
316
|
+
}, undefined>;
|
|
317
|
+
readonly '5xx': v.ObjectSchema<{
|
|
318
|
+
readonly error: v.ObjectSchema<{
|
|
319
|
+
readonly code: v.StringSchema<undefined>;
|
|
320
|
+
readonly message: v.StringSchema<undefined>;
|
|
321
|
+
readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
|
|
322
|
+
readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
|
|
323
|
+
readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
324
|
+
readonly message: v.StringSchema<undefined>;
|
|
325
|
+
}, undefined>, undefined>, undefined>;
|
|
326
|
+
}, undefined>;
|
|
327
|
+
}, undefined>;
|
|
328
|
+
readonly 204: typeof ContractNoBody;
|
|
329
|
+
};
|
|
330
|
+
};
|
|
266
331
|
export declare const peekInvitationContract: {
|
|
267
332
|
readonly method: "get";
|
|
268
333
|
readonly requestPathParamsSchema: v.ObjectSchema<{
|
|
269
|
-
|
|
334
|
+
token: v.StringSchema<undefined>;
|
|
270
335
|
}, undefined> & import("@toad-contracts/core").ObjectKeysCarrier;
|
|
271
336
|
readonly pathResolver: ({ token }: {
|
|
272
337
|
token: string;
|
|
@@ -306,7 +371,7 @@ export declare const peekInvitationContract: {
|
|
|
306
371
|
export declare const acceptInvitationContract: {
|
|
307
372
|
readonly method: "post";
|
|
308
373
|
readonly requestPathParamsSchema: v.ObjectSchema<{
|
|
309
|
-
|
|
374
|
+
token: v.StringSchema<undefined>;
|
|
310
375
|
}, undefined> & import("@toad-contracts/core").ObjectKeysCarrier;
|
|
311
376
|
readonly pathResolver: ({ token }: {
|
|
312
377
|
token: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/routes/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/routes/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAC3E,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AA2B5B;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;IAChC,4FAA4F;;IAE5F;;;OAGG;;aAEH,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAmCzE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBA3C7B,4FAA4F;;gBAE5F;;;mBAGG;;;;;CA0CH,CAAA;AAIF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAI9B,CAAA;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIjC,CAAA;AAIF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAI9B,CAAA;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIjC,CAAA;AAIF,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKzB,CAAA;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKhC,CAAA;AAMF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKjC,CAAA;AAGF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKhC,CAAA;AAIF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKjC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMnC,CAAA;AAIF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIrB,CAAA;AAEF,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKzB,CAAA"}
|
package/dist/routes/auth.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { ContractNoBody, defineApiContract
|
|
1
|
+
import { ContractNoBody, defineApiContract } from '@toad-contracts/valibot';
|
|
2
2
|
import * as v from 'valibot';
|
|
3
|
-
import { passwordLoginSchema, signupSchema } from '../auth.js';
|
|
4
|
-
import { errorResponses } from './_shared.js';
|
|
3
|
+
import { forgotPasswordSchema, passwordLoginSchema, resetPasswordSchema, signupSchema, } from '../auth.js';
|
|
4
|
+
import { errorResponses, singleStringParam } from './_shared.js';
|
|
5
5
|
// ---------------------------------------------------------------------------
|
|
6
6
|
// Authentication route contracts. Mounted under `/auth`, so the paths here are
|
|
7
7
|
// relative to that prefix. Public endpoints (no auth gate). The OAuth round-trip
|
|
@@ -59,7 +59,7 @@ const invitationPeekSchema = v.union([
|
|
|
59
59
|
}),
|
|
60
60
|
]);
|
|
61
61
|
const acceptInvitationResultSchema = v.object({ accountId: v.string() });
|
|
62
|
-
const inviteTokenParams =
|
|
62
|
+
const inviteTokenParams = singleStringParam('token');
|
|
63
63
|
export const authConfigContract = defineApiContract({
|
|
64
64
|
method: 'get',
|
|
65
65
|
pathResolver: () => '/config',
|
|
@@ -100,6 +100,22 @@ export const passwordLoginContract = defineApiContract({
|
|
|
100
100
|
requestBodySchema: passwordLoginSchema,
|
|
101
101
|
responsesByStatusCode: { 200: loginResultSchema, ...errorResponses },
|
|
102
102
|
});
|
|
103
|
+
// ---- Forgot / reset password ----------------------------------------------
|
|
104
|
+
// Request a reset link. ALWAYS succeeds (204) regardless of whether the email is
|
|
105
|
+
// registered, so the response can't be used to enumerate accounts.
|
|
106
|
+
export const forgotPasswordContract = defineApiContract({
|
|
107
|
+
method: 'post',
|
|
108
|
+
pathResolver: () => '/forgot-password',
|
|
109
|
+
requestBodySchema: forgotPasswordSchema,
|
|
110
|
+
responsesByStatusCode: { 204: ContractNoBody, ...errorResponses },
|
|
111
|
+
});
|
|
112
|
+
// Redeem a reset token + set a new password (a 400 on an invalid/used/expired token).
|
|
113
|
+
export const resetPasswordContract = defineApiContract({
|
|
114
|
+
method: 'post',
|
|
115
|
+
pathResolver: () => '/reset-password',
|
|
116
|
+
requestBodySchema: resetPasswordSchema,
|
|
117
|
+
responsesByStatusCode: { 204: ContractNoBody, ...errorResponses },
|
|
118
|
+
});
|
|
103
119
|
// ---- Invitations (peek + accept) ------------------------------------------
|
|
104
120
|
export const peekInvitationContract = defineApiContract({
|
|
105
121
|
method: 'get',
|
package/dist/routes/auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/routes/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/routes/auth.ts"],"names":[],"mappings":"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"}
|