@cesco_valle/identity-contracts 0.1.0 → 0.2.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/README.md +28 -8
- package/dist/admin-DggLseAG.d.ts +185 -0
- package/dist/admin.d.ts +2 -0
- package/dist/admin.js +34 -0
- package/dist/admin.js.map +1 -0
- package/dist/chunk-35J5NTZH.js +197 -0
- package/dist/chunk-35J5NTZH.js.map +1 -0
- package/dist/chunk-ENAO7AFV.js +49 -0
- package/dist/chunk-ENAO7AFV.js.map +1 -0
- package/dist/chunk-EQAB2XCS.js +115 -0
- package/dist/chunk-EQAB2XCS.js.map +1 -0
- package/dist/chunk-PZ5AY32C.js +10 -0
- package/dist/chunk-PZ5AY32C.js.map +1 -0
- package/dist/chunk-X5TB7GBP.js +124 -0
- package/dist/chunk-X5TB7GBP.js.map +1 -0
- package/dist/index.d.ts +5 -3
- package/dist/index.js +29 -3
- package/dist/index.js.map +1 -1
- package/dist/project-admin-gE96r75E.d.ts +395 -0
- package/dist/project-admin.d.ts +3 -0
- package/dist/project-admin.js +52 -0
- package/dist/project-admin.js.map +1 -0
- package/dist/shared.d.ts +48 -0
- package/dist/shared.js +20 -0
- package/dist/shared.js.map +1 -0
- package/dist/user-BktVKiiR.d.ts +197 -0
- package/dist/user.d.ts +3 -0
- package/dist/user.js +40 -0
- package/dist/user.js.map +1 -0
- package/package.json +23 -1
package/README.md
CHANGED
|
@@ -1,22 +1,42 @@
|
|
|
1
1
|
# @cesco_valle/identity-contracts
|
|
2
2
|
|
|
3
3
|
Shared **Zod schemas + inferred TypeScript types** for the portfolio identity
|
|
4
|
-
service wire contracts
|
|
5
|
-
|
|
4
|
+
service wire contracts. The single source of truth, mirrored 1:1 from
|
|
5
|
+
`identity-service` and consumed by it (server-side validation) and by
|
|
6
6
|
`@cesco_valle/identity-auth-sdk`.
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
Only depends on `zod`. ESM-only.
|
|
9
9
|
|
|
10
10
|
## Install
|
|
11
11
|
|
|
12
12
|
```bash
|
|
13
|
-
npm install @cesco_valle/identity-contracts
|
|
13
|
+
npm install @cesco_valle/identity-contracts zod
|
|
14
14
|
```
|
|
15
15
|
|
|
16
|
-
##
|
|
16
|
+
## Entry points
|
|
17
|
+
|
|
18
|
+
Import from the surface you need:
|
|
19
|
+
|
|
20
|
+
- `@cesco_valle/identity-contracts/user` — end-user cookie/session surface
|
|
21
|
+
(`projectAuthLoginRequestSchema`, `projectAuthResponseSchema`,
|
|
22
|
+
`registerEmailCheckResponseSchema`, …).
|
|
23
|
+
- `@cesco_valle/identity-contracts/project-admin` — project-admin (cookie) surface
|
|
24
|
+
(memberships, audit logs, sessions, admin-operations list).
|
|
25
|
+
- `@cesco_valle/identity-contracts/admin` — machine-admin surface (the mutation
|
|
26
|
+
envelope, per-operation payloads, `decideApproval`, read queries).
|
|
27
|
+
- `@cesco_valle/identity-contracts/shared` — common primitives
|
|
28
|
+
(`projectSummarySchema`, `membershipStatusSchema`, `apiErrorSchema`, …).
|
|
29
|
+
- The package root re-exports `shared` flat plus the `user` / `projectAdmin` /
|
|
30
|
+
`admin` **namespaces** (e.g. `import { user } from '@cesco_valle/identity-contracts'`).
|
|
31
|
+
|
|
32
|
+
## Usage
|
|
17
33
|
|
|
18
34
|
```ts
|
|
19
|
-
import {
|
|
20
|
-
|
|
35
|
+
import {
|
|
36
|
+
projectAuthLoginRequestSchema,
|
|
37
|
+
type ProjectAuthResponse,
|
|
38
|
+
} from '@cesco_valle/identity-contracts/user';
|
|
21
39
|
|
|
22
|
-
|
|
40
|
+
const body = projectAuthLoginRequestSchema.parse({ email, password });
|
|
41
|
+
// `ProjectAuthResponse` types the /login response.
|
|
42
|
+
```
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Common mutation envelope for the machine-to-machine admin surface (ADR 0008).
|
|
5
|
+
* `mcp-server`/`openclaw-ops` send this on every mutating operation.
|
|
6
|
+
*/
|
|
7
|
+
declare const adminMutationEnvelopeSchema: z.ZodObject<{
|
|
8
|
+
targetProjectId: z.ZodString;
|
|
9
|
+
reason: z.ZodString;
|
|
10
|
+
idempotencyKey: z.ZodString;
|
|
11
|
+
ticketRef: z.ZodOptional<z.ZodString>;
|
|
12
|
+
channel: z.ZodString;
|
|
13
|
+
operatorUserId: z.ZodOptional<z.ZodString>;
|
|
14
|
+
}, z.core.$strip>;
|
|
15
|
+
type AdminMutationEnvelope = z.infer<typeof adminMutationEnvelopeSchema>;
|
|
16
|
+
declare const createUserOperationSchema: z.ZodObject<{
|
|
17
|
+
targetProjectId: z.ZodString;
|
|
18
|
+
reason: z.ZodString;
|
|
19
|
+
idempotencyKey: z.ZodString;
|
|
20
|
+
ticketRef: z.ZodOptional<z.ZodString>;
|
|
21
|
+
channel: z.ZodString;
|
|
22
|
+
operatorUserId: z.ZodOptional<z.ZodString>;
|
|
23
|
+
payload: z.ZodObject<{
|
|
24
|
+
email: z.ZodEmail;
|
|
25
|
+
displayName: z.ZodOptional<z.ZodString>;
|
|
26
|
+
password: z.ZodOptional<z.ZodString>;
|
|
27
|
+
roleCodes: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
28
|
+
}, z.core.$strip>;
|
|
29
|
+
}, z.core.$strip>;
|
|
30
|
+
type CreateUserOperationRequest = z.infer<typeof createUserOperationSchema>;
|
|
31
|
+
declare const banUserOperationSchema: z.ZodObject<{
|
|
32
|
+
targetProjectId: z.ZodString;
|
|
33
|
+
reason: z.ZodString;
|
|
34
|
+
idempotencyKey: z.ZodString;
|
|
35
|
+
ticketRef: z.ZodOptional<z.ZodString>;
|
|
36
|
+
channel: z.ZodString;
|
|
37
|
+
operatorUserId: z.ZodOptional<z.ZodString>;
|
|
38
|
+
payload: z.ZodObject<{
|
|
39
|
+
userId: z.ZodString;
|
|
40
|
+
}, z.core.$strip>;
|
|
41
|
+
}, z.core.$strip>;
|
|
42
|
+
type BanUserOperationRequest = z.infer<typeof banUserOperationSchema>;
|
|
43
|
+
declare const unbanUserOperationSchema: z.ZodObject<{
|
|
44
|
+
targetProjectId: z.ZodString;
|
|
45
|
+
reason: z.ZodString;
|
|
46
|
+
idempotencyKey: z.ZodString;
|
|
47
|
+
ticketRef: z.ZodOptional<z.ZodString>;
|
|
48
|
+
channel: z.ZodString;
|
|
49
|
+
operatorUserId: z.ZodOptional<z.ZodString>;
|
|
50
|
+
payload: z.ZodObject<{
|
|
51
|
+
userId: z.ZodString;
|
|
52
|
+
}, z.core.$strip>;
|
|
53
|
+
}, z.core.$strip>;
|
|
54
|
+
type UnbanUserOperationRequest = z.infer<typeof unbanUserOperationSchema>;
|
|
55
|
+
declare const assignProjectRoleOperationSchema: z.ZodObject<{
|
|
56
|
+
targetProjectId: z.ZodString;
|
|
57
|
+
reason: z.ZodString;
|
|
58
|
+
idempotencyKey: z.ZodString;
|
|
59
|
+
ticketRef: z.ZodOptional<z.ZodString>;
|
|
60
|
+
channel: z.ZodString;
|
|
61
|
+
operatorUserId: z.ZodOptional<z.ZodString>;
|
|
62
|
+
payload: z.ZodObject<{
|
|
63
|
+
userId: z.ZodString;
|
|
64
|
+
roleCodes: z.ZodArray<z.ZodString>;
|
|
65
|
+
}, z.core.$strip>;
|
|
66
|
+
}, z.core.$strip>;
|
|
67
|
+
type AssignProjectRoleOperationRequest = z.infer<typeof assignProjectRoleOperationSchema>;
|
|
68
|
+
declare const revokeProjectAccessOperationSchema: z.ZodObject<{
|
|
69
|
+
targetProjectId: z.ZodString;
|
|
70
|
+
reason: z.ZodString;
|
|
71
|
+
idempotencyKey: z.ZodString;
|
|
72
|
+
ticketRef: z.ZodOptional<z.ZodString>;
|
|
73
|
+
channel: z.ZodString;
|
|
74
|
+
operatorUserId: z.ZodOptional<z.ZodString>;
|
|
75
|
+
payload: z.ZodObject<{
|
|
76
|
+
userId: z.ZodString;
|
|
77
|
+
}, z.core.$strip>;
|
|
78
|
+
}, z.core.$strip>;
|
|
79
|
+
type RevokeProjectAccessOperationRequest = z.infer<typeof revokeProjectAccessOperationSchema>;
|
|
80
|
+
declare const readmitMembershipOperationSchema: z.ZodObject<{
|
|
81
|
+
targetProjectId: z.ZodString;
|
|
82
|
+
reason: z.ZodString;
|
|
83
|
+
idempotencyKey: z.ZodString;
|
|
84
|
+
ticketRef: z.ZodOptional<z.ZodString>;
|
|
85
|
+
channel: z.ZodString;
|
|
86
|
+
operatorUserId: z.ZodOptional<z.ZodString>;
|
|
87
|
+
payload: z.ZodObject<{
|
|
88
|
+
userId: z.ZodString;
|
|
89
|
+
roleCodes: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
90
|
+
}, z.core.$strip>;
|
|
91
|
+
}, z.core.$strip>;
|
|
92
|
+
type ReadmitMembershipOperationRequest = z.infer<typeof readmitMembershipOperationSchema>;
|
|
93
|
+
declare const revokeSessionOperationSchema: z.ZodObject<{
|
|
94
|
+
targetProjectId: z.ZodString;
|
|
95
|
+
reason: z.ZodString;
|
|
96
|
+
idempotencyKey: z.ZodString;
|
|
97
|
+
ticketRef: z.ZodOptional<z.ZodString>;
|
|
98
|
+
channel: z.ZodString;
|
|
99
|
+
operatorUserId: z.ZodOptional<z.ZodString>;
|
|
100
|
+
payload: z.ZodObject<{
|
|
101
|
+
sessionId: z.ZodOptional<z.ZodString>;
|
|
102
|
+
userId: z.ZodOptional<z.ZodString>;
|
|
103
|
+
}, z.core.$strip>;
|
|
104
|
+
}, z.core.$strip>;
|
|
105
|
+
type RevokeSessionOperationRequest = z.infer<typeof revokeSessionOperationSchema>;
|
|
106
|
+
declare const adminApprovalIdParamsSchema: z.ZodObject<{
|
|
107
|
+
approvalId: z.ZodString;
|
|
108
|
+
}, z.core.$strip>;
|
|
109
|
+
declare const decideApprovalSchema: z.ZodObject<{
|
|
110
|
+
decision: z.ZodEnum<{
|
|
111
|
+
approve: "approve";
|
|
112
|
+
reject: "reject";
|
|
113
|
+
}>;
|
|
114
|
+
operatorUserId: z.ZodString;
|
|
115
|
+
decisionReason: z.ZodOptional<z.ZodString>;
|
|
116
|
+
}, z.core.$strip>;
|
|
117
|
+
type DecideApprovalRequest = z.infer<typeof decideApprovalSchema>;
|
|
118
|
+
declare const adminListProjectUsersQuerySchema: z.ZodObject<{
|
|
119
|
+
targetProjectId: z.ZodString;
|
|
120
|
+
limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
121
|
+
cursor: z.ZodOptional<z.ZodString>;
|
|
122
|
+
status: z.ZodOptional<z.ZodEnum<{
|
|
123
|
+
ACTIVE: "ACTIVE";
|
|
124
|
+
SUSPENDED: "SUSPENDED";
|
|
125
|
+
REVOKED: "REVOKED";
|
|
126
|
+
}>>;
|
|
127
|
+
q: z.ZodOptional<z.ZodString>;
|
|
128
|
+
}, z.core.$strip>;
|
|
129
|
+
type AdminListProjectUsersQuery = z.infer<typeof adminListProjectUsersQuerySchema>;
|
|
130
|
+
declare const adminGetUserAccessQuerySchema: z.ZodObject<{
|
|
131
|
+
targetProjectId: z.ZodString;
|
|
132
|
+
}, z.core.$strip>;
|
|
133
|
+
type AdminGetUserAccessQuery = z.infer<typeof adminGetUserAccessQuerySchema>;
|
|
134
|
+
declare const adminUserIdParamsSchema: z.ZodObject<{
|
|
135
|
+
userId: z.ZodString;
|
|
136
|
+
}, z.core.$strip>;
|
|
137
|
+
declare const adminListPendingApprovalsQuerySchema: z.ZodObject<{
|
|
138
|
+
targetProjectId: z.ZodOptional<z.ZodString>;
|
|
139
|
+
limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
140
|
+
cursor: z.ZodOptional<z.ZodString>;
|
|
141
|
+
}, z.core.$strip>;
|
|
142
|
+
type AdminListPendingApprovalsQuery = z.infer<typeof adminListPendingApprovalsQuerySchema>;
|
|
143
|
+
type AdminOperationResponseStatus = 'completed' | 'pending_approval' | 'denied' | 'failed';
|
|
144
|
+
interface AdminMutationResponse {
|
|
145
|
+
status: AdminOperationResponseStatus;
|
|
146
|
+
operationId: string;
|
|
147
|
+
approvalId: string | null;
|
|
148
|
+
auditEventId: string;
|
|
149
|
+
message: string;
|
|
150
|
+
result: unknown;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
type admin_AdminGetUserAccessQuery = AdminGetUserAccessQuery;
|
|
154
|
+
type admin_AdminListPendingApprovalsQuery = AdminListPendingApprovalsQuery;
|
|
155
|
+
type admin_AdminListProjectUsersQuery = AdminListProjectUsersQuery;
|
|
156
|
+
type admin_AdminMutationEnvelope = AdminMutationEnvelope;
|
|
157
|
+
type admin_AdminMutationResponse = AdminMutationResponse;
|
|
158
|
+
type admin_AdminOperationResponseStatus = AdminOperationResponseStatus;
|
|
159
|
+
type admin_AssignProjectRoleOperationRequest = AssignProjectRoleOperationRequest;
|
|
160
|
+
type admin_BanUserOperationRequest = BanUserOperationRequest;
|
|
161
|
+
type admin_CreateUserOperationRequest = CreateUserOperationRequest;
|
|
162
|
+
type admin_DecideApprovalRequest = DecideApprovalRequest;
|
|
163
|
+
type admin_ReadmitMembershipOperationRequest = ReadmitMembershipOperationRequest;
|
|
164
|
+
type admin_RevokeProjectAccessOperationRequest = RevokeProjectAccessOperationRequest;
|
|
165
|
+
type admin_RevokeSessionOperationRequest = RevokeSessionOperationRequest;
|
|
166
|
+
type admin_UnbanUserOperationRequest = UnbanUserOperationRequest;
|
|
167
|
+
declare const admin_adminApprovalIdParamsSchema: typeof adminApprovalIdParamsSchema;
|
|
168
|
+
declare const admin_adminGetUserAccessQuerySchema: typeof adminGetUserAccessQuerySchema;
|
|
169
|
+
declare const admin_adminListPendingApprovalsQuerySchema: typeof adminListPendingApprovalsQuerySchema;
|
|
170
|
+
declare const admin_adminListProjectUsersQuerySchema: typeof adminListProjectUsersQuerySchema;
|
|
171
|
+
declare const admin_adminMutationEnvelopeSchema: typeof adminMutationEnvelopeSchema;
|
|
172
|
+
declare const admin_adminUserIdParamsSchema: typeof adminUserIdParamsSchema;
|
|
173
|
+
declare const admin_assignProjectRoleOperationSchema: typeof assignProjectRoleOperationSchema;
|
|
174
|
+
declare const admin_banUserOperationSchema: typeof banUserOperationSchema;
|
|
175
|
+
declare const admin_createUserOperationSchema: typeof createUserOperationSchema;
|
|
176
|
+
declare const admin_decideApprovalSchema: typeof decideApprovalSchema;
|
|
177
|
+
declare const admin_readmitMembershipOperationSchema: typeof readmitMembershipOperationSchema;
|
|
178
|
+
declare const admin_revokeProjectAccessOperationSchema: typeof revokeProjectAccessOperationSchema;
|
|
179
|
+
declare const admin_revokeSessionOperationSchema: typeof revokeSessionOperationSchema;
|
|
180
|
+
declare const admin_unbanUserOperationSchema: typeof unbanUserOperationSchema;
|
|
181
|
+
declare namespace admin {
|
|
182
|
+
export { type admin_AdminGetUserAccessQuery as AdminGetUserAccessQuery, type admin_AdminListPendingApprovalsQuery as AdminListPendingApprovalsQuery, type admin_AdminListProjectUsersQuery as AdminListProjectUsersQuery, type admin_AdminMutationEnvelope as AdminMutationEnvelope, type admin_AdminMutationResponse as AdminMutationResponse, type admin_AdminOperationResponseStatus as AdminOperationResponseStatus, type admin_AssignProjectRoleOperationRequest as AssignProjectRoleOperationRequest, type admin_BanUserOperationRequest as BanUserOperationRequest, type admin_CreateUserOperationRequest as CreateUserOperationRequest, type admin_DecideApprovalRequest as DecideApprovalRequest, type admin_ReadmitMembershipOperationRequest as ReadmitMembershipOperationRequest, type admin_RevokeProjectAccessOperationRequest as RevokeProjectAccessOperationRequest, type admin_RevokeSessionOperationRequest as RevokeSessionOperationRequest, type admin_UnbanUserOperationRequest as UnbanUserOperationRequest, admin_adminApprovalIdParamsSchema as adminApprovalIdParamsSchema, admin_adminGetUserAccessQuerySchema as adminGetUserAccessQuerySchema, admin_adminListPendingApprovalsQuerySchema as adminListPendingApprovalsQuerySchema, admin_adminListProjectUsersQuerySchema as adminListProjectUsersQuerySchema, admin_adminMutationEnvelopeSchema as adminMutationEnvelopeSchema, admin_adminUserIdParamsSchema as adminUserIdParamsSchema, admin_assignProjectRoleOperationSchema as assignProjectRoleOperationSchema, admin_banUserOperationSchema as banUserOperationSchema, admin_createUserOperationSchema as createUserOperationSchema, admin_decideApprovalSchema as decideApprovalSchema, admin_readmitMembershipOperationSchema as readmitMembershipOperationSchema, admin_revokeProjectAccessOperationSchema as revokeProjectAccessOperationSchema, admin_revokeSessionOperationSchema as revokeSessionOperationSchema, admin_unbanUserOperationSchema as unbanUserOperationSchema };
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
export { type AdminGetUserAccessQuery as A, type BanUserOperationRequest as B, type CreateUserOperationRequest as C, type DecideApprovalRequest as D, type ReadmitMembershipOperationRequest as R, type UnbanUserOperationRequest as U, admin as a, type AdminListPendingApprovalsQuery as b, type AdminListProjectUsersQuery as c, type AdminMutationEnvelope as d, type AdminMutationResponse as e, type AdminOperationResponseStatus as f, type AssignProjectRoleOperationRequest as g, type RevokeProjectAccessOperationRequest as h, type RevokeSessionOperationRequest as i, adminApprovalIdParamsSchema as j, adminGetUserAccessQuerySchema as k, adminListPendingApprovalsQuerySchema as l, adminListProjectUsersQuerySchema as m, adminMutationEnvelopeSchema as n, adminUserIdParamsSchema as o, assignProjectRoleOperationSchema as p, banUserOperationSchema as q, createUserOperationSchema as r, decideApprovalSchema as s, readmitMembershipOperationSchema as t, revokeProjectAccessOperationSchema as u, revokeSessionOperationSchema as v, unbanUserOperationSchema as w };
|
package/dist/admin.d.ts
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import 'zod';
|
|
2
|
+
export { A as AdminGetUserAccessQuery, b as AdminListPendingApprovalsQuery, c as AdminListProjectUsersQuery, d as AdminMutationEnvelope, e as AdminMutationResponse, f as AdminOperationResponseStatus, g as AssignProjectRoleOperationRequest, B as BanUserOperationRequest, C as CreateUserOperationRequest, D as DecideApprovalRequest, R as ReadmitMembershipOperationRequest, h as RevokeProjectAccessOperationRequest, i as RevokeSessionOperationRequest, U as UnbanUserOperationRequest, j as adminApprovalIdParamsSchema, k as adminGetUserAccessQuerySchema, l as adminListPendingApprovalsQuerySchema, m as adminListProjectUsersQuerySchema, n as adminMutationEnvelopeSchema, o as adminUserIdParamsSchema, p as assignProjectRoleOperationSchema, q as banUserOperationSchema, r as createUserOperationSchema, s as decideApprovalSchema, t as readmitMembershipOperationSchema, u as revokeProjectAccessOperationSchema, v as revokeSessionOperationSchema, w as unbanUserOperationSchema } from './admin-DggLseAG.js';
|
package/dist/admin.js
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import {
|
|
2
|
+
adminApprovalIdParamsSchema,
|
|
3
|
+
adminGetUserAccessQuerySchema,
|
|
4
|
+
adminListPendingApprovalsQuerySchema,
|
|
5
|
+
adminListProjectUsersQuerySchema,
|
|
6
|
+
adminMutationEnvelopeSchema,
|
|
7
|
+
adminUserIdParamsSchema,
|
|
8
|
+
assignProjectRoleOperationSchema,
|
|
9
|
+
banUserOperationSchema,
|
|
10
|
+
createUserOperationSchema,
|
|
11
|
+
decideApprovalSchema,
|
|
12
|
+
readmitMembershipOperationSchema,
|
|
13
|
+
revokeProjectAccessOperationSchema,
|
|
14
|
+
revokeSessionOperationSchema,
|
|
15
|
+
unbanUserOperationSchema
|
|
16
|
+
} from "./chunk-EQAB2XCS.js";
|
|
17
|
+
import "./chunk-PZ5AY32C.js";
|
|
18
|
+
export {
|
|
19
|
+
adminApprovalIdParamsSchema,
|
|
20
|
+
adminGetUserAccessQuerySchema,
|
|
21
|
+
adminListPendingApprovalsQuerySchema,
|
|
22
|
+
adminListProjectUsersQuerySchema,
|
|
23
|
+
adminMutationEnvelopeSchema,
|
|
24
|
+
adminUserIdParamsSchema,
|
|
25
|
+
assignProjectRoleOperationSchema,
|
|
26
|
+
banUserOperationSchema,
|
|
27
|
+
createUserOperationSchema,
|
|
28
|
+
decideApprovalSchema,
|
|
29
|
+
readmitMembershipOperationSchema,
|
|
30
|
+
revokeProjectAccessOperationSchema,
|
|
31
|
+
revokeSessionOperationSchema,
|
|
32
|
+
unbanUserOperationSchema
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=admin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
import {
|
|
2
|
+
membershipStatusSchema,
|
|
3
|
+
projectMembershipUserSchema,
|
|
4
|
+
projectRoleSummarySchema,
|
|
5
|
+
projectSummarySchema
|
|
6
|
+
} from "./chunk-ENAO7AFV.js";
|
|
7
|
+
import {
|
|
8
|
+
__export
|
|
9
|
+
} from "./chunk-PZ5AY32C.js";
|
|
10
|
+
|
|
11
|
+
// src/project-admin.ts
|
|
12
|
+
var project_admin_exports = {};
|
|
13
|
+
__export(project_admin_exports, {
|
|
14
|
+
adminOperationStatusSchema: () => adminOperationStatusSchema,
|
|
15
|
+
createProjectMembershipRequestSchema: () => createProjectMembershipRequestSchema,
|
|
16
|
+
listProjectAdminOperationsQuerySchema: () => listProjectAdminOperationsQuerySchema,
|
|
17
|
+
listProjectAuditLogsQuerySchema: () => listProjectAuditLogsQuerySchema,
|
|
18
|
+
listProjectMembershipsQuerySchema: () => listProjectMembershipsQuerySchema,
|
|
19
|
+
membershipAuditActionSchema: () => membershipAuditActionSchema,
|
|
20
|
+
membershipStatusSchema: () => membershipStatusSchema,
|
|
21
|
+
projectAccessResponseSchema: () => projectAccessResponseSchema,
|
|
22
|
+
projectAdminOperationApprovalSchema: () => projectAdminOperationApprovalSchema,
|
|
23
|
+
projectAdminOperationItemSchema: () => projectAdminOperationItemSchema,
|
|
24
|
+
projectAdminOperationListResponseSchema: () => projectAdminOperationListResponseSchema,
|
|
25
|
+
projectAuditLogItemSchema: () => projectAuditLogItemSchema,
|
|
26
|
+
projectAuditLogListResponseSchema: () => projectAuditLogListResponseSchema,
|
|
27
|
+
projectMembershipListItemSchema: () => projectMembershipListItemSchema,
|
|
28
|
+
projectMembershipListResponseSchema: () => projectMembershipListResponseSchema,
|
|
29
|
+
projectMembershipParamsSchema: () => projectMembershipParamsSchema,
|
|
30
|
+
projectMembershipResponseSchema: () => projectMembershipResponseSchema,
|
|
31
|
+
projectMembershipUserSchema: () => projectMembershipUserSchema,
|
|
32
|
+
projectRoleSummarySchema: () => projectRoleSummarySchema,
|
|
33
|
+
projectSlugParamsSchema: () => projectSlugParamsSchema,
|
|
34
|
+
projectSummarySchema: () => projectSummarySchema,
|
|
35
|
+
replaceProjectMembershipRolesRequestSchema: () => replaceProjectMembershipRolesRequestSchema
|
|
36
|
+
});
|
|
37
|
+
import { z } from "zod";
|
|
38
|
+
var projectSlugParamsSchema = z.object({
|
|
39
|
+
slug: z.string().trim().min(1)
|
|
40
|
+
});
|
|
41
|
+
var projectMembershipParamsSchema = projectSlugParamsSchema.extend({
|
|
42
|
+
userId: z.string().trim().min(1)
|
|
43
|
+
});
|
|
44
|
+
var listProjectMembershipsQuerySchema = z.object({
|
|
45
|
+
limit: z.coerce.number().int().min(1).max(50).default(20),
|
|
46
|
+
cursor: z.string().trim().min(1).optional(),
|
|
47
|
+
status: membershipStatusSchema.optional(),
|
|
48
|
+
q: z.string().trim().min(1).optional()
|
|
49
|
+
});
|
|
50
|
+
var membershipAuditActionSchema = z.enum([
|
|
51
|
+
"CREATED",
|
|
52
|
+
"ROLES_REPLACED",
|
|
53
|
+
"SUSPENDED",
|
|
54
|
+
"REACTIVATED",
|
|
55
|
+
"REVOKED",
|
|
56
|
+
"READMITTED"
|
|
57
|
+
]);
|
|
58
|
+
var listProjectAuditLogsQuerySchema = z.object({
|
|
59
|
+
limit: z.coerce.number().int().min(1).max(50).default(20),
|
|
60
|
+
cursor: z.string().trim().min(1).optional(),
|
|
61
|
+
action: membershipAuditActionSchema.optional(),
|
|
62
|
+
targetUserId: z.string().trim().min(1).optional(),
|
|
63
|
+
membershipId: z.string().trim().min(1).optional()
|
|
64
|
+
});
|
|
65
|
+
var createProjectMembershipRequestSchema = z.object({
|
|
66
|
+
email: z.string().trim().pipe(z.email()),
|
|
67
|
+
roleCodes: z.array(z.string().trim().min(1)).min(1)
|
|
68
|
+
});
|
|
69
|
+
var replaceProjectMembershipRolesRequestSchema = z.object({
|
|
70
|
+
roleCodes: z.array(z.string().trim().min(1)).min(1)
|
|
71
|
+
});
|
|
72
|
+
var projectAccessResponseSchema = z.object({
|
|
73
|
+
project: projectSummarySchema,
|
|
74
|
+
access: z.object({
|
|
75
|
+
isMember: z.boolean(),
|
|
76
|
+
membershipId: z.string().nullable(),
|
|
77
|
+
status: membershipStatusSchema.nullable(),
|
|
78
|
+
roles: z.array(projectRoleSummarySchema),
|
|
79
|
+
isAdmin: z.boolean()
|
|
80
|
+
})
|
|
81
|
+
});
|
|
82
|
+
var projectMembershipResponseSchema = z.object({
|
|
83
|
+
membershipId: z.string(),
|
|
84
|
+
user: projectMembershipUserSchema,
|
|
85
|
+
project: projectSummarySchema,
|
|
86
|
+
status: membershipStatusSchema,
|
|
87
|
+
roles: z.array(projectRoleSummarySchema)
|
|
88
|
+
});
|
|
89
|
+
var projectMembershipListItemSchema = z.object({
|
|
90
|
+
membershipId: z.string(),
|
|
91
|
+
user: projectMembershipUserSchema,
|
|
92
|
+
status: membershipStatusSchema,
|
|
93
|
+
roles: z.array(projectRoleSummarySchema),
|
|
94
|
+
createdAt: z.iso.datetime(),
|
|
95
|
+
updatedAt: z.iso.datetime()
|
|
96
|
+
});
|
|
97
|
+
var projectMembershipListResponseSchema = z.object({
|
|
98
|
+
project: projectSummarySchema,
|
|
99
|
+
items: z.array(projectMembershipListItemSchema),
|
|
100
|
+
page: z.object({
|
|
101
|
+
nextCursor: z.string().nullable(),
|
|
102
|
+
hasMore: z.boolean(),
|
|
103
|
+
limit: z.number().int().min(1).max(50)
|
|
104
|
+
})
|
|
105
|
+
});
|
|
106
|
+
var projectAuditLogItemSchema = z.object({
|
|
107
|
+
id: z.string(),
|
|
108
|
+
action: membershipAuditActionSchema,
|
|
109
|
+
membershipId: z.string(),
|
|
110
|
+
actor: projectMembershipUserSchema,
|
|
111
|
+
target: projectMembershipUserSchema,
|
|
112
|
+
fromStatus: membershipStatusSchema.nullable(),
|
|
113
|
+
toStatus: membershipStatusSchema.nullable(),
|
|
114
|
+
fromRoleCodes: z.array(z.string()),
|
|
115
|
+
toRoleCodes: z.array(z.string()),
|
|
116
|
+
createdAt: z.iso.datetime()
|
|
117
|
+
});
|
|
118
|
+
var projectAuditLogListResponseSchema = z.object({
|
|
119
|
+
project: projectSummarySchema,
|
|
120
|
+
items: z.array(projectAuditLogItemSchema),
|
|
121
|
+
page: z.object({
|
|
122
|
+
nextCursor: z.string().nullable(),
|
|
123
|
+
hasMore: z.boolean(),
|
|
124
|
+
limit: z.number().int().min(1).max(50)
|
|
125
|
+
})
|
|
126
|
+
});
|
|
127
|
+
var adminOperationStatusSchema = z.enum([
|
|
128
|
+
"COMPLETED",
|
|
129
|
+
"PENDING_APPROVAL",
|
|
130
|
+
"DENIED",
|
|
131
|
+
"FAILED"
|
|
132
|
+
]);
|
|
133
|
+
var listProjectAdminOperationsQuerySchema = z.object({
|
|
134
|
+
limit: z.coerce.number().int().min(1).max(50).default(20),
|
|
135
|
+
cursor: z.string().trim().min(1).optional(),
|
|
136
|
+
status: adminOperationStatusSchema.optional(),
|
|
137
|
+
operationName: z.string().trim().min(1).optional()
|
|
138
|
+
});
|
|
139
|
+
var projectAdminOperationApprovalSchema = z.object({
|
|
140
|
+
approvalId: z.string(),
|
|
141
|
+
status: z.enum(["PENDING", "APPROVED", "REJECTED", "EXPIRED"]),
|
|
142
|
+
requestedByUserId: z.string().nullable(),
|
|
143
|
+
approvedByUserId: z.string().nullable(),
|
|
144
|
+
requestedAt: z.iso.datetime(),
|
|
145
|
+
decidedAt: z.iso.datetime().nullable(),
|
|
146
|
+
expiresAt: z.iso.datetime()
|
|
147
|
+
});
|
|
148
|
+
var projectAdminOperationItemSchema = z.object({
|
|
149
|
+
operationId: z.string(),
|
|
150
|
+
operationName: z.string(),
|
|
151
|
+
status: adminOperationStatusSchema,
|
|
152
|
+
reason: z.string().nullable(),
|
|
153
|
+
ticketRef: z.string().nullable(),
|
|
154
|
+
sourceChannel: z.string().nullable(),
|
|
155
|
+
operatorUserId: z.string().nullable(),
|
|
156
|
+
servicePrincipalId: z.string().nullable(),
|
|
157
|
+
targetUserId: z.string().nullable(),
|
|
158
|
+
targetSessionId: z.string().nullable(),
|
|
159
|
+
correlationId: z.string().nullable(),
|
|
160
|
+
policyVersion: z.string().nullable(),
|
|
161
|
+
errorCode: z.string().nullable(),
|
|
162
|
+
approval: projectAdminOperationApprovalSchema.nullable(),
|
|
163
|
+
createdAt: z.iso.datetime(),
|
|
164
|
+
updatedAt: z.iso.datetime()
|
|
165
|
+
});
|
|
166
|
+
var projectAdminOperationListResponseSchema = z.object({
|
|
167
|
+
project: projectSummarySchema,
|
|
168
|
+
items: z.array(projectAdminOperationItemSchema),
|
|
169
|
+
page: z.object({
|
|
170
|
+
nextCursor: z.string().nullable(),
|
|
171
|
+
hasMore: z.boolean(),
|
|
172
|
+
limit: z.number().int().min(1).max(50)
|
|
173
|
+
})
|
|
174
|
+
});
|
|
175
|
+
|
|
176
|
+
export {
|
|
177
|
+
projectSlugParamsSchema,
|
|
178
|
+
projectMembershipParamsSchema,
|
|
179
|
+
listProjectMembershipsQuerySchema,
|
|
180
|
+
membershipAuditActionSchema,
|
|
181
|
+
listProjectAuditLogsQuerySchema,
|
|
182
|
+
createProjectMembershipRequestSchema,
|
|
183
|
+
replaceProjectMembershipRolesRequestSchema,
|
|
184
|
+
projectAccessResponseSchema,
|
|
185
|
+
projectMembershipResponseSchema,
|
|
186
|
+
projectMembershipListItemSchema,
|
|
187
|
+
projectMembershipListResponseSchema,
|
|
188
|
+
projectAuditLogItemSchema,
|
|
189
|
+
projectAuditLogListResponseSchema,
|
|
190
|
+
adminOperationStatusSchema,
|
|
191
|
+
listProjectAdminOperationsQuerySchema,
|
|
192
|
+
projectAdminOperationApprovalSchema,
|
|
193
|
+
projectAdminOperationItemSchema,
|
|
194
|
+
projectAdminOperationListResponseSchema,
|
|
195
|
+
project_admin_exports
|
|
196
|
+
};
|
|
197
|
+
//# sourceMappingURL=chunk-35J5NTZH.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/project-admin.ts"],"sourcesContent":["import { z } from 'zod';\n\nimport {\n membershipStatusSchema,\n projectMembershipUserSchema,\n projectRoleSummarySchema,\n projectSummarySchema,\n} from './shared.js';\n\n// Re-exported under the names the identity-service project-admin surface uses.\nexport { membershipStatusSchema, projectMembershipUserSchema, projectRoleSummarySchema, projectSummarySchema };\n\nexport const projectSlugParamsSchema = z.object({\n slug: z.string().trim().min(1),\n});\n\nexport const projectMembershipParamsSchema = projectSlugParamsSchema.extend({\n userId: z.string().trim().min(1),\n});\n\nexport const listProjectMembershipsQuerySchema = z.object({\n limit: z.coerce.number().int().min(1).max(50).default(20),\n cursor: z.string().trim().min(1).optional(),\n status: membershipStatusSchema.optional(),\n q: z.string().trim().min(1).optional(),\n});\n\nexport const membershipAuditActionSchema = z.enum([\n 'CREATED',\n 'ROLES_REPLACED',\n 'SUSPENDED',\n 'REACTIVATED',\n 'REVOKED',\n 'READMITTED',\n]);\n\nexport const listProjectAuditLogsQuerySchema = z.object({\n limit: z.coerce.number().int().min(1).max(50).default(20),\n cursor: z.string().trim().min(1).optional(),\n action: membershipAuditActionSchema.optional(),\n targetUserId: z.string().trim().min(1).optional(),\n membershipId: z.string().trim().min(1).optional(),\n});\n\nexport const createProjectMembershipRequestSchema = z.object({\n email: z.string().trim().pipe(z.email()),\n roleCodes: z.array(z.string().trim().min(1)).min(1),\n});\n\nexport const replaceProjectMembershipRolesRequestSchema = z.object({\n roleCodes: z.array(z.string().trim().min(1)).min(1),\n});\n\nexport const projectAccessResponseSchema = z.object({\n project: projectSummarySchema,\n access: z.object({\n isMember: z.boolean(),\n membershipId: z.string().nullable(),\n status: membershipStatusSchema.nullable(),\n roles: z.array(projectRoleSummarySchema),\n isAdmin: z.boolean(),\n }),\n});\n\nexport const projectMembershipResponseSchema = z.object({\n membershipId: z.string(),\n user: projectMembershipUserSchema,\n project: projectSummarySchema,\n status: membershipStatusSchema,\n roles: z.array(projectRoleSummarySchema),\n});\n\nexport const projectMembershipListItemSchema = z.object({\n membershipId: z.string(),\n user: projectMembershipUserSchema,\n status: membershipStatusSchema,\n roles: z.array(projectRoleSummarySchema),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n});\n\nexport const projectMembershipListResponseSchema = z.object({\n project: projectSummarySchema,\n items: z.array(projectMembershipListItemSchema),\n page: z.object({\n nextCursor: z.string().nullable(),\n hasMore: z.boolean(),\n limit: z.number().int().min(1).max(50),\n }),\n});\n\nexport const projectAuditLogItemSchema = z.object({\n id: z.string(),\n action: membershipAuditActionSchema,\n membershipId: z.string(),\n actor: projectMembershipUserSchema,\n target: projectMembershipUserSchema,\n fromStatus: membershipStatusSchema.nullable(),\n toStatus: membershipStatusSchema.nullable(),\n fromRoleCodes: z.array(z.string()),\n toRoleCodes: z.array(z.string()),\n createdAt: z.iso.datetime(),\n});\n\nexport const projectAuditLogListResponseSchema = z.object({\n project: projectSummarySchema,\n items: z.array(projectAuditLogItemSchema),\n page: z.object({\n nextCursor: z.string().nullable(),\n hasMore: z.boolean(),\n limit: z.number().int().min(1).max(50),\n }),\n});\n\nexport const adminOperationStatusSchema = z.enum([\n 'COMPLETED',\n 'PENDING_APPROVAL',\n 'DENIED',\n 'FAILED',\n]);\n\nexport const listProjectAdminOperationsQuerySchema = z.object({\n limit: z.coerce.number().int().min(1).max(50).default(20),\n cursor: z.string().trim().min(1).optional(),\n status: adminOperationStatusSchema.optional(),\n operationName: z.string().trim().min(1).optional(),\n});\n\nexport const projectAdminOperationApprovalSchema = z.object({\n approvalId: z.string(),\n status: z.enum(['PENDING', 'APPROVED', 'REJECTED', 'EXPIRED']),\n requestedByUserId: z.string().nullable(),\n approvedByUserId: z.string().nullable(),\n requestedAt: z.iso.datetime(),\n decidedAt: z.iso.datetime().nullable(),\n expiresAt: z.iso.datetime(),\n});\n\nexport const projectAdminOperationItemSchema = z.object({\n operationId: z.string(),\n operationName: z.string(),\n status: adminOperationStatusSchema,\n reason: z.string().nullable(),\n ticketRef: z.string().nullable(),\n sourceChannel: z.string().nullable(),\n operatorUserId: z.string().nullable(),\n servicePrincipalId: z.string().nullable(),\n targetUserId: z.string().nullable(),\n targetSessionId: z.string().nullable(),\n correlationId: z.string().nullable(),\n policyVersion: z.string().nullable(),\n errorCode: z.string().nullable(),\n approval: projectAdminOperationApprovalSchema.nullable(),\n createdAt: z.iso.datetime(),\n updatedAt: z.iso.datetime(),\n});\n\nexport const projectAdminOperationListResponseSchema = z.object({\n project: projectSummarySchema,\n items: z.array(projectAdminOperationItemSchema),\n page: z.object({\n nextCursor: z.string().nullable(),\n hasMore: z.boolean(),\n limit: z.number().int().min(1).max(50),\n }),\n});\n\nexport type ListProjectAdminOperationsQuery = z.infer<\n typeof listProjectAdminOperationsQuerySchema\n>;\nexport type ProjectAdminOperationListResponse = z.infer<\n typeof projectAdminOperationListResponseSchema\n>;\nexport type ProjectSlugParams = z.infer<typeof projectSlugParamsSchema>;\nexport type ProjectMembershipParams = z.infer<typeof projectMembershipParamsSchema>;\nexport type ListProjectMembershipsQuery = z.infer<typeof listProjectMembershipsQuerySchema>;\nexport type CreateProjectMembershipRequest = z.infer<typeof createProjectMembershipRequestSchema>;\nexport type ReplaceProjectMembershipRolesRequest = z.infer<\n typeof replaceProjectMembershipRolesRequestSchema\n>;\nexport type ProjectAccessResponse = z.infer<typeof projectAccessResponseSchema>;\nexport type ProjectMembershipResponse = z.infer<typeof projectMembershipResponseSchema>;\nexport type ProjectMembershipListResponse = z.infer<typeof projectMembershipListResponseSchema>;\nexport type ListProjectAuditLogsQuery = z.infer<typeof listProjectAuditLogsQuerySchema>;\nexport type ProjectAuditLogListResponse = z.infer<typeof projectAuditLogListResponseSchema>;\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
// src/shared.ts
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
var projectSummarySchema = z.object({
|
|
4
|
+
id: z.string(),
|
|
5
|
+
slug: z.string(),
|
|
6
|
+
name: z.string()
|
|
7
|
+
});
|
|
8
|
+
var projectRoleSummarySchema = z.object({
|
|
9
|
+
id: z.string(),
|
|
10
|
+
code: z.string(),
|
|
11
|
+
name: z.string()
|
|
12
|
+
});
|
|
13
|
+
var membershipStatusSchema = z.enum(["ACTIVE", "SUSPENDED", "REVOKED"]);
|
|
14
|
+
var userStatusSchema = z.enum(["ACTIVE", "BANNED"]);
|
|
15
|
+
var projectMembershipUserSchema = z.object({
|
|
16
|
+
id: z.string(),
|
|
17
|
+
email: z.string(),
|
|
18
|
+
displayName: z.string().nullable()
|
|
19
|
+
});
|
|
20
|
+
var apiErrorSchema = z.object({
|
|
21
|
+
error: z.object({
|
|
22
|
+
code: z.string(),
|
|
23
|
+
message: z.string(),
|
|
24
|
+
issues: z.array(z.unknown()).optional()
|
|
25
|
+
})
|
|
26
|
+
});
|
|
27
|
+
var KNOWN_API_ERROR_CODES = [
|
|
28
|
+
"VALIDATION_ERROR",
|
|
29
|
+
"AUTHENTICATION_REQUIRED",
|
|
30
|
+
"USER_BANNED",
|
|
31
|
+
"PROJECT_DISABLED",
|
|
32
|
+
"PROJECT_NOT_FOUND",
|
|
33
|
+
"PROJECT_ADMIN_REQUIRED",
|
|
34
|
+
"SERVICE_PRINCIPAL_AUTH_REQUIRED",
|
|
35
|
+
"SERVICE_PRINCIPAL_DISABLED",
|
|
36
|
+
"SERVICE_PRINCIPAL_PROJECT_FORBIDDEN",
|
|
37
|
+
"ADMIN_IDEMPOTENCY_KEY_REUSED"
|
|
38
|
+
];
|
|
39
|
+
|
|
40
|
+
export {
|
|
41
|
+
projectSummarySchema,
|
|
42
|
+
projectRoleSummarySchema,
|
|
43
|
+
membershipStatusSchema,
|
|
44
|
+
userStatusSchema,
|
|
45
|
+
projectMembershipUserSchema,
|
|
46
|
+
apiErrorSchema,
|
|
47
|
+
KNOWN_API_ERROR_CODES
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=chunk-ENAO7AFV.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/shared.ts"],"sourcesContent":["import { z } from 'zod';\n\nexport const projectSummarySchema = z.object({\n id: z.string(),\n slug: z.string(),\n name: z.string(),\n});\nexport type ProjectSummary = z.infer<typeof projectSummarySchema>;\n\nexport const projectRoleSummarySchema = z.object({\n id: z.string(),\n code: z.string(),\n name: z.string(),\n});\nexport type ProjectRoleSummary = z.infer<typeof projectRoleSummarySchema>;\n\nexport const membershipStatusSchema = z.enum(['ACTIVE', 'SUSPENDED', 'REVOKED']);\nexport type MembershipStatus = z.infer<typeof membershipStatusSchema>;\n\nexport const userStatusSchema = z.enum(['ACTIVE', 'BANNED']);\nexport type UserStatus = z.infer<typeof userStatusSchema>;\n\nexport const projectMembershipUserSchema = z.object({\n id: z.string(),\n email: z.string(),\n displayName: z.string().nullable(),\n});\nexport type ProjectMembershipUser = z.infer<typeof projectMembershipUserSchema>;\n\n/**\n * The JSON error envelope returned by identity-service on any failure:\n * `{ \"error\": { \"code\", \"message\", \"issues?\" } }`.\n */\nexport const apiErrorSchema = z.object({\n error: z.object({\n code: z.string(),\n message: z.string(),\n issues: z.array(z.unknown()).optional(),\n }),\n});\nexport type ApiError = z.infer<typeof apiErrorSchema>;\n\n/** Stable error codes the surfaces may return (non-exhaustive, for ergonomics). */\nexport const KNOWN_API_ERROR_CODES = [\n 'VALIDATION_ERROR',\n 'AUTHENTICATION_REQUIRED',\n 'USER_BANNED',\n 'PROJECT_DISABLED',\n 'PROJECT_NOT_FOUND',\n 'PROJECT_ADMIN_REQUIRED',\n 'SERVICE_PRINCIPAL_AUTH_REQUIRED',\n 'SERVICE_PRINCIPAL_DISABLED',\n 'SERVICE_PRINCIPAL_PROJECT_FORBIDDEN',\n 'ADMIN_IDEMPOTENCY_KEY_REUSED',\n] as const;\nexport type KnownApiErrorCode = (typeof KNOWN_API_ERROR_CODES)[number];\n"],"mappings":";AAAA,SAAS,SAAS;AAEX,IAAM,uBAAuB,EAAE,OAAO;AAAA,EAC3C,IAAI,EAAE,OAAO;AAAA,EACb,MAAM,EAAE,OAAO;AAAA,EACf,MAAM,EAAE,OAAO;AACjB,CAAC;AAGM,IAAM,2BAA2B,EAAE,OAAO;AAAA,EAC/C,IAAI,EAAE,OAAO;AAAA,EACb,MAAM,EAAE,OAAO;AAAA,EACf,MAAM,EAAE,OAAO;AACjB,CAAC;AAGM,IAAM,yBAAyB,EAAE,KAAK,CAAC,UAAU,aAAa,SAAS,CAAC;AAGxE,IAAM,mBAAmB,EAAE,KAAK,CAAC,UAAU,QAAQ,CAAC;AAGpD,IAAM,8BAA8B,EAAE,OAAO;AAAA,EAClD,IAAI,EAAE,OAAO;AAAA,EACb,OAAO,EAAE,OAAO;AAAA,EAChB,aAAa,EAAE,OAAO,EAAE,SAAS;AACnC,CAAC;AAOM,IAAM,iBAAiB,EAAE,OAAO;AAAA,EACrC,OAAO,EAAE,OAAO;AAAA,IACd,MAAM,EAAE,OAAO;AAAA,IACf,SAAS,EAAE,OAAO;AAAA,IAClB,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,SAAS;AAAA,EACxC,CAAC;AACH,CAAC;AAIM,IAAM,wBAAwB;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;","names":[]}
|