@selleragent/api-contract 0.8.0 → 0.9.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 ADDED
@@ -0,0 +1,457 @@
1
+ import { z } from 'zod';
2
+ export declare const operatorRoleSchema: z.ZodEnum<{
3
+ workspace_admin: "workspace_admin";
4
+ operator: "operator";
5
+ observer: "observer";
6
+ }>;
7
+ export declare const operatorAccountStatusSchema: z.ZodEnum<{
8
+ active: "active";
9
+ disabled: "disabled";
10
+ }>;
11
+ export declare const workspaceMembershipStatusSchema: z.ZodEnum<{
12
+ active: "active";
13
+ revoked: "revoked";
14
+ }>;
15
+ export declare const authSessionSourceSchema: z.ZodEnum<{
16
+ magic_link: "magic_link";
17
+ scenario_token: "scenario_token";
18
+ }>;
19
+ export declare const operatorRecordSchema: z.ZodObject<{
20
+ operatorId: z.ZodString;
21
+ email: z.ZodString;
22
+ displayName: z.ZodNullable<z.ZodString>;
23
+ supabaseUserId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
24
+ status: z.ZodEnum<{
25
+ active: "active";
26
+ disabled: "disabled";
27
+ }>;
28
+ createdAt: z.ZodString;
29
+ updatedAt: z.ZodString;
30
+ }, z.core.$strip>;
31
+ export declare const workspaceMembershipSchema: z.ZodObject<{
32
+ membershipId: z.ZodString;
33
+ operatorId: z.ZodString;
34
+ workspaceId: z.ZodString;
35
+ workspaceSlug: z.ZodString;
36
+ workspaceName: z.ZodString;
37
+ role: z.ZodEnum<{
38
+ workspace_admin: "workspace_admin";
39
+ operator: "operator";
40
+ observer: "observer";
41
+ }>;
42
+ status: z.ZodEnum<{
43
+ active: "active";
44
+ revoked: "revoked";
45
+ }>;
46
+ createdAt: z.ZodString;
47
+ updatedAt: z.ZodString;
48
+ }, z.core.$strip>;
49
+ export declare const authSessionSchema: z.ZodObject<{
50
+ sessionId: z.ZodString;
51
+ sessionToken: z.ZodOptional<z.ZodString>;
52
+ source: z.ZodEnum<{
53
+ magic_link: "magic_link";
54
+ scenario_token: "scenario_token";
55
+ }>;
56
+ issuedAt: z.ZodString;
57
+ expiresAt: z.ZodString;
58
+ }, z.core.$strip>;
59
+ export declare const operatorAccessContextSchema: z.ZodObject<{
60
+ authenticated: z.ZodBoolean;
61
+ environment: z.ZodString;
62
+ operator: z.ZodNullable<z.ZodObject<{
63
+ operatorId: z.ZodString;
64
+ email: z.ZodString;
65
+ displayName: z.ZodNullable<z.ZodString>;
66
+ supabaseUserId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
67
+ status: z.ZodEnum<{
68
+ active: "active";
69
+ disabled: "disabled";
70
+ }>;
71
+ createdAt: z.ZodString;
72
+ updatedAt: z.ZodString;
73
+ }, z.core.$strip>>;
74
+ memberships: z.ZodArray<z.ZodObject<{
75
+ membershipId: z.ZodString;
76
+ operatorId: z.ZodString;
77
+ workspaceId: z.ZodString;
78
+ workspaceSlug: z.ZodString;
79
+ workspaceName: z.ZodString;
80
+ role: z.ZodEnum<{
81
+ workspace_admin: "workspace_admin";
82
+ operator: "operator";
83
+ observer: "observer";
84
+ }>;
85
+ status: z.ZodEnum<{
86
+ active: "active";
87
+ revoked: "revoked";
88
+ }>;
89
+ createdAt: z.ZodString;
90
+ updatedAt: z.ZodString;
91
+ }, z.core.$strip>>;
92
+ session: z.ZodNullable<z.ZodObject<{
93
+ sessionId: z.ZodString;
94
+ sessionToken: z.ZodOptional<z.ZodString>;
95
+ source: z.ZodEnum<{
96
+ magic_link: "magic_link";
97
+ scenario_token: "scenario_token";
98
+ }>;
99
+ issuedAt: z.ZodString;
100
+ expiresAt: z.ZodString;
101
+ }, z.core.$strip>>;
102
+ currentWorkspaceId: z.ZodNullable<z.ZodString>;
103
+ currentWorkspaceSlug: z.ZodDefault<z.ZodNullable<z.ZodString>>;
104
+ }, z.core.$strip>;
105
+ export declare const authEnsureOperatorRequestSchema: z.ZodObject<{
106
+ email: z.ZodString;
107
+ displayName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
108
+ workspaceSlug: z.ZodOptional<z.ZodString>;
109
+ workspaceName: z.ZodOptional<z.ZodString>;
110
+ role: z.ZodOptional<z.ZodEnum<{
111
+ workspace_admin: "workspace_admin";
112
+ operator: "operator";
113
+ observer: "observer";
114
+ }>>;
115
+ bootstrapSecret: z.ZodOptional<z.ZodNullable<z.ZodString>>;
116
+ }, z.core.$strip>;
117
+ export declare const authEnsureOperatorResponseSchema: z.ZodObject<{
118
+ operator: z.ZodObject<{
119
+ operatorId: z.ZodString;
120
+ email: z.ZodString;
121
+ displayName: z.ZodNullable<z.ZodString>;
122
+ supabaseUserId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
123
+ status: z.ZodEnum<{
124
+ active: "active";
125
+ disabled: "disabled";
126
+ }>;
127
+ createdAt: z.ZodString;
128
+ updatedAt: z.ZodString;
129
+ }, z.core.$strip>;
130
+ memberships: z.ZodArray<z.ZodObject<{
131
+ membershipId: z.ZodString;
132
+ operatorId: z.ZodString;
133
+ workspaceId: z.ZodString;
134
+ workspaceSlug: z.ZodString;
135
+ workspaceName: z.ZodString;
136
+ role: z.ZodEnum<{
137
+ workspace_admin: "workspace_admin";
138
+ operator: "operator";
139
+ observer: "observer";
140
+ }>;
141
+ status: z.ZodEnum<{
142
+ active: "active";
143
+ revoked: "revoked";
144
+ }>;
145
+ createdAt: z.ZodString;
146
+ updatedAt: z.ZodString;
147
+ }, z.core.$strip>>;
148
+ created: z.ZodBoolean;
149
+ }, z.core.$strip>;
150
+ export declare const authRequestMagicLinkRequestSchema: z.ZodObject<{
151
+ email: z.ZodString;
152
+ redirectTo: z.ZodOptional<z.ZodNullable<z.ZodString>>;
153
+ }, z.core.$strip>;
154
+ export declare const authRequestMagicLinkResponseSchema: z.ZodObject<{
155
+ accepted: z.ZodBoolean;
156
+ email: z.ZodString;
157
+ }, z.core.$strip>;
158
+ export declare const authIssueScenarioTokenRequestSchema: z.ZodObject<{
159
+ email: z.ZodString;
160
+ displayName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
161
+ workspaceSlug: z.ZodOptional<z.ZodString>;
162
+ workspaceName: z.ZodOptional<z.ZodString>;
163
+ role: z.ZodOptional<z.ZodEnum<{
164
+ workspace_admin: "workspace_admin";
165
+ operator: "operator";
166
+ observer: "observer";
167
+ }>>;
168
+ expiresInMinutes: z.ZodOptional<z.ZodNumber>;
169
+ bootstrapSecret: z.ZodOptional<z.ZodNullable<z.ZodString>>;
170
+ }, z.core.$strip>;
171
+ export declare const authIssueScenarioTokenResponseSchema: z.ZodObject<{
172
+ token: z.ZodString;
173
+ expiresAt: z.ZodString;
174
+ operator: z.ZodObject<{
175
+ operatorId: z.ZodString;
176
+ email: z.ZodString;
177
+ displayName: z.ZodNullable<z.ZodString>;
178
+ supabaseUserId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
179
+ status: z.ZodEnum<{
180
+ active: "active";
181
+ disabled: "disabled";
182
+ }>;
183
+ createdAt: z.ZodString;
184
+ updatedAt: z.ZodString;
185
+ }, z.core.$strip>;
186
+ memberships: z.ZodArray<z.ZodObject<{
187
+ membershipId: z.ZodString;
188
+ operatorId: z.ZodString;
189
+ workspaceId: z.ZodString;
190
+ workspaceSlug: z.ZodString;
191
+ workspaceName: z.ZodString;
192
+ role: z.ZodEnum<{
193
+ workspace_admin: "workspace_admin";
194
+ operator: "operator";
195
+ observer: "observer";
196
+ }>;
197
+ status: z.ZodEnum<{
198
+ active: "active";
199
+ revoked: "revoked";
200
+ }>;
201
+ createdAt: z.ZodString;
202
+ updatedAt: z.ZodString;
203
+ }, z.core.$strip>>;
204
+ }, z.core.$strip>;
205
+ export declare const authGetSessionRequestSchema: z.ZodObject<{
206
+ sessionToken: z.ZodOptional<z.ZodNullable<z.ZodString>>;
207
+ }, z.core.$strip>;
208
+ export declare const authGetSessionResponseSchema: z.ZodObject<{
209
+ accessContext: z.ZodObject<{
210
+ authenticated: z.ZodBoolean;
211
+ environment: z.ZodString;
212
+ operator: z.ZodNullable<z.ZodObject<{
213
+ operatorId: z.ZodString;
214
+ email: z.ZodString;
215
+ displayName: z.ZodNullable<z.ZodString>;
216
+ supabaseUserId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
217
+ status: z.ZodEnum<{
218
+ active: "active";
219
+ disabled: "disabled";
220
+ }>;
221
+ createdAt: z.ZodString;
222
+ updatedAt: z.ZodString;
223
+ }, z.core.$strip>>;
224
+ memberships: z.ZodArray<z.ZodObject<{
225
+ membershipId: z.ZodString;
226
+ operatorId: z.ZodString;
227
+ workspaceId: z.ZodString;
228
+ workspaceSlug: z.ZodString;
229
+ workspaceName: z.ZodString;
230
+ role: z.ZodEnum<{
231
+ workspace_admin: "workspace_admin";
232
+ operator: "operator";
233
+ observer: "observer";
234
+ }>;
235
+ status: z.ZodEnum<{
236
+ active: "active";
237
+ revoked: "revoked";
238
+ }>;
239
+ createdAt: z.ZodString;
240
+ updatedAt: z.ZodString;
241
+ }, z.core.$strip>>;
242
+ session: z.ZodNullable<z.ZodObject<{
243
+ sessionId: z.ZodString;
244
+ sessionToken: z.ZodOptional<z.ZodString>;
245
+ source: z.ZodEnum<{
246
+ magic_link: "magic_link";
247
+ scenario_token: "scenario_token";
248
+ }>;
249
+ issuedAt: z.ZodString;
250
+ expiresAt: z.ZodString;
251
+ }, z.core.$strip>>;
252
+ currentWorkspaceId: z.ZodNullable<z.ZodString>;
253
+ currentWorkspaceSlug: z.ZodDefault<z.ZodNullable<z.ZodString>>;
254
+ }, z.core.$strip>;
255
+ }, z.core.$strip>;
256
+ export declare const authExchangeScenarioTokenRequestSchema: z.ZodObject<{
257
+ token: z.ZodString;
258
+ nextPath: z.ZodOptional<z.ZodNullable<z.ZodString>>;
259
+ }, z.core.$strip>;
260
+ export declare const authExchangeScenarioTokenResponseSchema: z.ZodObject<{
261
+ accessContext: z.ZodObject<{
262
+ authenticated: z.ZodBoolean;
263
+ environment: z.ZodString;
264
+ operator: z.ZodNullable<z.ZodObject<{
265
+ operatorId: z.ZodString;
266
+ email: z.ZodString;
267
+ displayName: z.ZodNullable<z.ZodString>;
268
+ supabaseUserId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
269
+ status: z.ZodEnum<{
270
+ active: "active";
271
+ disabled: "disabled";
272
+ }>;
273
+ createdAt: z.ZodString;
274
+ updatedAt: z.ZodString;
275
+ }, z.core.$strip>>;
276
+ memberships: z.ZodArray<z.ZodObject<{
277
+ membershipId: z.ZodString;
278
+ operatorId: z.ZodString;
279
+ workspaceId: z.ZodString;
280
+ workspaceSlug: z.ZodString;
281
+ workspaceName: z.ZodString;
282
+ role: z.ZodEnum<{
283
+ workspace_admin: "workspace_admin";
284
+ operator: "operator";
285
+ observer: "observer";
286
+ }>;
287
+ status: z.ZodEnum<{
288
+ active: "active";
289
+ revoked: "revoked";
290
+ }>;
291
+ createdAt: z.ZodString;
292
+ updatedAt: z.ZodString;
293
+ }, z.core.$strip>>;
294
+ session: z.ZodNullable<z.ZodObject<{
295
+ sessionId: z.ZodString;
296
+ sessionToken: z.ZodOptional<z.ZodString>;
297
+ source: z.ZodEnum<{
298
+ magic_link: "magic_link";
299
+ scenario_token: "scenario_token";
300
+ }>;
301
+ issuedAt: z.ZodString;
302
+ expiresAt: z.ZodString;
303
+ }, z.core.$strip>>;
304
+ currentWorkspaceId: z.ZodNullable<z.ZodString>;
305
+ currentWorkspaceSlug: z.ZodDefault<z.ZodNullable<z.ZodString>>;
306
+ }, z.core.$strip>;
307
+ nextPath: z.ZodNullable<z.ZodString>;
308
+ sessionToken: z.ZodString;
309
+ }, z.core.$strip>;
310
+ export declare const authCompleteMagicLinkRequestSchema: z.ZodObject<{
311
+ tokenHash: z.ZodString;
312
+ type: z.ZodString;
313
+ nextPath: z.ZodOptional<z.ZodNullable<z.ZodString>>;
314
+ }, z.core.$strip>;
315
+ export declare const authCompleteMagicLinkResponseSchema: z.ZodObject<{
316
+ accessContext: z.ZodObject<{
317
+ authenticated: z.ZodBoolean;
318
+ environment: z.ZodString;
319
+ operator: z.ZodNullable<z.ZodObject<{
320
+ operatorId: z.ZodString;
321
+ email: z.ZodString;
322
+ displayName: z.ZodNullable<z.ZodString>;
323
+ supabaseUserId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
324
+ status: z.ZodEnum<{
325
+ active: "active";
326
+ disabled: "disabled";
327
+ }>;
328
+ createdAt: z.ZodString;
329
+ updatedAt: z.ZodString;
330
+ }, z.core.$strip>>;
331
+ memberships: z.ZodArray<z.ZodObject<{
332
+ membershipId: z.ZodString;
333
+ operatorId: z.ZodString;
334
+ workspaceId: z.ZodString;
335
+ workspaceSlug: z.ZodString;
336
+ workspaceName: z.ZodString;
337
+ role: z.ZodEnum<{
338
+ workspace_admin: "workspace_admin";
339
+ operator: "operator";
340
+ observer: "observer";
341
+ }>;
342
+ status: z.ZodEnum<{
343
+ active: "active";
344
+ revoked: "revoked";
345
+ }>;
346
+ createdAt: z.ZodString;
347
+ updatedAt: z.ZodString;
348
+ }, z.core.$strip>>;
349
+ session: z.ZodNullable<z.ZodObject<{
350
+ sessionId: z.ZodString;
351
+ sessionToken: z.ZodOptional<z.ZodString>;
352
+ source: z.ZodEnum<{
353
+ magic_link: "magic_link";
354
+ scenario_token: "scenario_token";
355
+ }>;
356
+ issuedAt: z.ZodString;
357
+ expiresAt: z.ZodString;
358
+ }, z.core.$strip>>;
359
+ currentWorkspaceId: z.ZodNullable<z.ZodString>;
360
+ currentWorkspaceSlug: z.ZodDefault<z.ZodNullable<z.ZodString>>;
361
+ }, z.core.$strip>;
362
+ nextPath: z.ZodNullable<z.ZodString>;
363
+ sessionToken: z.ZodString;
364
+ }, z.core.$strip>;
365
+ export declare const authCheckAccessRequestSchema: z.ZodObject<{
366
+ sessionToken: z.ZodOptional<z.ZodNullable<z.ZodString>>;
367
+ workspaceId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
368
+ workspaceSlug: z.ZodOptional<z.ZodNullable<z.ZodString>>;
369
+ requiredRole: z.ZodEnum<{
370
+ workspace_admin: "workspace_admin";
371
+ operator: "operator";
372
+ observer: "observer";
373
+ }>;
374
+ }, z.core.$strip>;
375
+ export declare const authCheckAccessResponseSchema: z.ZodObject<{
376
+ allowed: z.ZodBoolean;
377
+ accessContext: z.ZodObject<{
378
+ authenticated: z.ZodBoolean;
379
+ environment: z.ZodString;
380
+ operator: z.ZodNullable<z.ZodObject<{
381
+ operatorId: z.ZodString;
382
+ email: z.ZodString;
383
+ displayName: z.ZodNullable<z.ZodString>;
384
+ supabaseUserId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
385
+ status: z.ZodEnum<{
386
+ active: "active";
387
+ disabled: "disabled";
388
+ }>;
389
+ createdAt: z.ZodString;
390
+ updatedAt: z.ZodString;
391
+ }, z.core.$strip>>;
392
+ memberships: z.ZodArray<z.ZodObject<{
393
+ membershipId: z.ZodString;
394
+ operatorId: z.ZodString;
395
+ workspaceId: z.ZodString;
396
+ workspaceSlug: z.ZodString;
397
+ workspaceName: z.ZodString;
398
+ role: z.ZodEnum<{
399
+ workspace_admin: "workspace_admin";
400
+ operator: "operator";
401
+ observer: "observer";
402
+ }>;
403
+ status: z.ZodEnum<{
404
+ active: "active";
405
+ revoked: "revoked";
406
+ }>;
407
+ createdAt: z.ZodString;
408
+ updatedAt: z.ZodString;
409
+ }, z.core.$strip>>;
410
+ session: z.ZodNullable<z.ZodObject<{
411
+ sessionId: z.ZodString;
412
+ sessionToken: z.ZodOptional<z.ZodString>;
413
+ source: z.ZodEnum<{
414
+ magic_link: "magic_link";
415
+ scenario_token: "scenario_token";
416
+ }>;
417
+ issuedAt: z.ZodString;
418
+ expiresAt: z.ZodString;
419
+ }, z.core.$strip>>;
420
+ currentWorkspaceId: z.ZodNullable<z.ZodString>;
421
+ currentWorkspaceSlug: z.ZodDefault<z.ZodNullable<z.ZodString>>;
422
+ }, z.core.$strip>;
423
+ workspaceId: z.ZodNullable<z.ZodString>;
424
+ workspaceSlug: z.ZodNullable<z.ZodString>;
425
+ requiredRole: z.ZodEnum<{
426
+ workspace_admin: "workspace_admin";
427
+ operator: "operator";
428
+ observer: "observer";
429
+ }>;
430
+ }, z.core.$strip>;
431
+ export declare const authLogoutResponseSchema: z.ZodObject<{
432
+ ok: z.ZodLiteral<true>;
433
+ }, z.core.$strip>;
434
+ export type OperatorRole = z.infer<typeof operatorRoleSchema>;
435
+ export type OperatorAccountStatus = z.infer<typeof operatorAccountStatusSchema>;
436
+ export type WorkspaceMembershipStatus = z.infer<typeof workspaceMembershipStatusSchema>;
437
+ export type OperatorRecord = z.infer<typeof operatorRecordSchema>;
438
+ export type WorkspaceMembership = z.infer<typeof workspaceMembershipSchema>;
439
+ export type AuthSessionSource = z.infer<typeof authSessionSourceSchema>;
440
+ export type AuthSession = z.infer<typeof authSessionSchema>;
441
+ export type OperatorAccessContext = z.infer<typeof operatorAccessContextSchema>;
442
+ export type AuthEnsureOperatorInput = z.infer<typeof authEnsureOperatorRequestSchema>;
443
+ export type AuthEnsureOperatorOutput = z.infer<typeof authEnsureOperatorResponseSchema>;
444
+ export type AuthRequestMagicLinkInput = z.infer<typeof authRequestMagicLinkRequestSchema>;
445
+ export type AuthRequestMagicLinkOutput = z.infer<typeof authRequestMagicLinkResponseSchema>;
446
+ export type AuthIssueScenarioTokenInput = z.infer<typeof authIssueScenarioTokenRequestSchema>;
447
+ export type AuthIssueScenarioTokenOutput = z.infer<typeof authIssueScenarioTokenResponseSchema>;
448
+ export type AuthGetSessionInput = z.infer<typeof authGetSessionRequestSchema>;
449
+ export type AuthGetSessionOutput = z.infer<typeof authGetSessionResponseSchema>;
450
+ export type AuthExchangeScenarioTokenInput = z.infer<typeof authExchangeScenarioTokenRequestSchema>;
451
+ export type AuthExchangeScenarioTokenOutput = z.infer<typeof authExchangeScenarioTokenResponseSchema>;
452
+ export type AuthCompleteMagicLinkInput = z.infer<typeof authCompleteMagicLinkRequestSchema>;
453
+ export type AuthCompleteMagicLinkOutput = z.infer<typeof authCompleteMagicLinkResponseSchema>;
454
+ export type AuthCheckAccessInput = z.infer<typeof authCheckAccessRequestSchema>;
455
+ export type AuthCheckAccessOutput = z.infer<typeof authCheckAccessResponseSchema>;
456
+ export type AuthLogoutOutput = z.infer<typeof authLogoutResponseSchema>;
457
+ //# sourceMappingURL=auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,kBAAkB;;;;EAAsD,CAAC;AACtF,eAAO,MAAM,2BAA2B;;;EAAiC,CAAC;AAC1E,eAAO,MAAM,+BAA+B;;;EAAgC,CAAC;AAC7E,eAAO,MAAM,uBAAuB;;;EAA2C,CAAC;AAEhF,eAAO,MAAM,oBAAoB;;;;;;;;;;;iBAQ/B,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;iBAUpC,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;iBAM5B,CAAC;AAEH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAQtC,CAAC;AAEH,eAAO,MAAM,+BAA+B;;;;;;;;;;;iBAO1C,CAAC;AAEH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAI3C,CAAC;AAEH,eAAO,MAAM,iCAAiC;;;iBAG5C,CAAC;AAEH,eAAO,MAAM,kCAAkC;;;iBAG7C,CAAC;AAEH,eAAO,MAAM,mCAAmC;;;;;;;;;;;;iBAQ9C,CAAC;AAEH,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAK/C,CAAC;AAEH,eAAO,MAAM,2BAA2B;;iBAEtC,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAEvC,CAAC;AAEH,eAAO,MAAM,sCAAsC;;;iBAGjD,CAAC;AAEH,eAAO,MAAM,uCAAuC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAIlD,CAAC;AAEH,eAAO,MAAM,kCAAkC;;;;iBAI7C,CAAC;AAEH,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAI9C,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;;;;;iBAKvC,CAAC;AAEH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAMxC,CAAC;AAEH,eAAO,MAAM,wBAAwB;;iBAEnC,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AACxF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AACtF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AACxF,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;AAC1F,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAC;AAC5F,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC;AAC9F,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAC;AAChG,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAC9E,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAChF,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAClD,OAAO,sCAAsC,CAC9C,CAAC;AACF,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CACnD,OAAO,uCAAuC,CAC/C,CAAC;AACF,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAC;AAC5F,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAC;AAC9F,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAChF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAClF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
package/dist/auth.js ADDED
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.authLogoutResponseSchema = exports.authCheckAccessResponseSchema = exports.authCheckAccessRequestSchema = exports.authCompleteMagicLinkResponseSchema = exports.authCompleteMagicLinkRequestSchema = exports.authExchangeScenarioTokenResponseSchema = exports.authExchangeScenarioTokenRequestSchema = exports.authGetSessionResponseSchema = exports.authGetSessionRequestSchema = exports.authIssueScenarioTokenResponseSchema = exports.authIssueScenarioTokenRequestSchema = exports.authRequestMagicLinkResponseSchema = exports.authRequestMagicLinkRequestSchema = exports.authEnsureOperatorResponseSchema = exports.authEnsureOperatorRequestSchema = exports.operatorAccessContextSchema = exports.authSessionSchema = exports.workspaceMembershipSchema = exports.operatorRecordSchema = exports.authSessionSourceSchema = exports.workspaceMembershipStatusSchema = exports.operatorAccountStatusSchema = exports.operatorRoleSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ exports.operatorRoleSchema = zod_1.z.enum(['workspace_admin', 'operator', 'observer']);
6
+ exports.operatorAccountStatusSchema = zod_1.z.enum(['active', 'disabled']);
7
+ exports.workspaceMembershipStatusSchema = zod_1.z.enum(['active', 'revoked']);
8
+ exports.authSessionSourceSchema = zod_1.z.enum(['magic_link', 'scenario_token']);
9
+ exports.operatorRecordSchema = zod_1.z.object({
10
+ operatorId: zod_1.z.string().uuid(),
11
+ email: zod_1.z.string().email(),
12
+ displayName: zod_1.z.string().nullable(),
13
+ supabaseUserId: zod_1.z.string().min(1).nullable().default(null),
14
+ status: exports.operatorAccountStatusSchema,
15
+ createdAt: zod_1.z.string(),
16
+ updatedAt: zod_1.z.string()
17
+ });
18
+ exports.workspaceMembershipSchema = zod_1.z.object({
19
+ membershipId: zod_1.z.string().uuid(),
20
+ operatorId: zod_1.z.string().uuid(),
21
+ workspaceId: zod_1.z.string().uuid(),
22
+ workspaceSlug: zod_1.z.string().min(1),
23
+ workspaceName: zod_1.z.string().min(1),
24
+ role: exports.operatorRoleSchema,
25
+ status: exports.workspaceMembershipStatusSchema,
26
+ createdAt: zod_1.z.string(),
27
+ updatedAt: zod_1.z.string()
28
+ });
29
+ exports.authSessionSchema = zod_1.z.object({
30
+ sessionId: zod_1.z.string().uuid(),
31
+ sessionToken: zod_1.z.string().min(1).optional(),
32
+ source: exports.authSessionSourceSchema,
33
+ issuedAt: zod_1.z.string(),
34
+ expiresAt: zod_1.z.string()
35
+ });
36
+ exports.operatorAccessContextSchema = zod_1.z.object({
37
+ authenticated: zod_1.z.boolean(),
38
+ environment: zod_1.z.string(),
39
+ operator: exports.operatorRecordSchema.nullable(),
40
+ memberships: zod_1.z.array(exports.workspaceMembershipSchema),
41
+ session: exports.authSessionSchema.nullable(),
42
+ currentWorkspaceId: zod_1.z.string().uuid().nullable(),
43
+ currentWorkspaceSlug: zod_1.z.string().min(1).nullable().default(null)
44
+ });
45
+ exports.authEnsureOperatorRequestSchema = zod_1.z.object({
46
+ email: zod_1.z.string().email(),
47
+ displayName: zod_1.z.string().nullable().optional(),
48
+ workspaceSlug: zod_1.z.string().min(1).optional(),
49
+ workspaceName: zod_1.z.string().min(1).optional(),
50
+ role: exports.operatorRoleSchema.optional(),
51
+ bootstrapSecret: zod_1.z.string().min(1).nullable().optional()
52
+ });
53
+ exports.authEnsureOperatorResponseSchema = zod_1.z.object({
54
+ operator: exports.operatorRecordSchema,
55
+ memberships: zod_1.z.array(exports.workspaceMembershipSchema),
56
+ created: zod_1.z.boolean()
57
+ });
58
+ exports.authRequestMagicLinkRequestSchema = zod_1.z.object({
59
+ email: zod_1.z.string().email(),
60
+ redirectTo: zod_1.z.string().url().nullable().optional()
61
+ });
62
+ exports.authRequestMagicLinkResponseSchema = zod_1.z.object({
63
+ accepted: zod_1.z.boolean(),
64
+ email: zod_1.z.string().email()
65
+ });
66
+ exports.authIssueScenarioTokenRequestSchema = zod_1.z.object({
67
+ email: zod_1.z.string().email(),
68
+ displayName: zod_1.z.string().nullable().optional(),
69
+ workspaceSlug: zod_1.z.string().min(1).optional(),
70
+ workspaceName: zod_1.z.string().min(1).optional(),
71
+ role: exports.operatorRoleSchema.optional(),
72
+ expiresInMinutes: zod_1.z.number().int().min(1).max(120).optional(),
73
+ bootstrapSecret: zod_1.z.string().min(1).nullable().optional()
74
+ });
75
+ exports.authIssueScenarioTokenResponseSchema = zod_1.z.object({
76
+ token: zod_1.z.string().min(1),
77
+ expiresAt: zod_1.z.string(),
78
+ operator: exports.operatorRecordSchema,
79
+ memberships: zod_1.z.array(exports.workspaceMembershipSchema)
80
+ });
81
+ exports.authGetSessionRequestSchema = zod_1.z.object({
82
+ sessionToken: zod_1.z.string().min(1).nullable().optional()
83
+ });
84
+ exports.authGetSessionResponseSchema = zod_1.z.object({
85
+ accessContext: exports.operatorAccessContextSchema
86
+ });
87
+ exports.authExchangeScenarioTokenRequestSchema = zod_1.z.object({
88
+ token: zod_1.z.string().min(1),
89
+ nextPath: zod_1.z.string().nullable().optional()
90
+ });
91
+ exports.authExchangeScenarioTokenResponseSchema = zod_1.z.object({
92
+ accessContext: exports.operatorAccessContextSchema,
93
+ nextPath: zod_1.z.string().nullable(),
94
+ sessionToken: zod_1.z.string().min(1)
95
+ });
96
+ exports.authCompleteMagicLinkRequestSchema = zod_1.z.object({
97
+ tokenHash: zod_1.z.string().min(1),
98
+ type: zod_1.z.string().min(1),
99
+ nextPath: zod_1.z.string().nullable().optional()
100
+ });
101
+ exports.authCompleteMagicLinkResponseSchema = zod_1.z.object({
102
+ accessContext: exports.operatorAccessContextSchema,
103
+ nextPath: zod_1.z.string().nullable(),
104
+ sessionToken: zod_1.z.string().min(1)
105
+ });
106
+ exports.authCheckAccessRequestSchema = zod_1.z.object({
107
+ sessionToken: zod_1.z.string().min(1).nullable().optional(),
108
+ workspaceId: zod_1.z.string().uuid().nullable().optional(),
109
+ workspaceSlug: zod_1.z.string().min(1).nullable().optional(),
110
+ requiredRole: exports.operatorRoleSchema
111
+ });
112
+ exports.authCheckAccessResponseSchema = zod_1.z.object({
113
+ allowed: zod_1.z.boolean(),
114
+ accessContext: exports.operatorAccessContextSchema,
115
+ workspaceId: zod_1.z.string().uuid().nullable(),
116
+ workspaceSlug: zod_1.z.string().min(1).nullable(),
117
+ requiredRole: exports.operatorRoleSchema
118
+ });
119
+ exports.authLogoutResponseSchema = zod_1.z.object({
120
+ ok: zod_1.z.literal(true)
121
+ });
122
+ //# sourceMappingURL=auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}