@enterprisestandard/react-validators-zod 0.0.5-beta.20251125.1 → 0.0.5-beta.20260114.1
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/index.d.ts +105 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +115 -1
- package/dist/index.js.map +3 -3
- package/package.json +2 -2
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import type { CreateTenantResponse, IdTokenClaims, OidcCallbackParams, ScimUser, StandardSchemaV1, TokenResponse } from '@enterprisestandard/react';
|
|
2
|
+
/**
|
|
3
|
+
* Pre-built Zod validators for OIDC/SSO flows
|
|
4
|
+
*
|
|
5
|
+
* These validators implement the StandardSchemaV1 interface and can be used
|
|
6
|
+
* directly in SSOHandlerConfig.validation
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```typescript
|
|
10
|
+
* import { createZodValidators } from '@enterprisestandard/react-validators-zod';
|
|
11
|
+
*
|
|
12
|
+
* const validators = createZodValidators();
|
|
13
|
+
*
|
|
14
|
+
* const ssoConfig: SSOHandlerConfig = {
|
|
15
|
+
* loginUrl: '/api/auth/login',
|
|
16
|
+
* validation: validators,
|
|
17
|
+
* };
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export declare function createZodValidators(): {
|
|
21
|
+
callbackParams: StandardSchemaV1<unknown, OidcCallbackParams>;
|
|
22
|
+
idTokenClaims: StandardSchemaV1<unknown, IdTokenClaims>;
|
|
23
|
+
tokenResponse: StandardSchemaV1<unknown, TokenResponse>;
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Individual Zod schema factories for custom usage
|
|
27
|
+
*/
|
|
28
|
+
export declare const zodValidators: {
|
|
29
|
+
/**
|
|
30
|
+
* Creates a Zod validator for OIDC callback parameters
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* ```typescript
|
|
34
|
+
* import { zodValidators } from '@enterprisestandard/react-validators-zod';
|
|
35
|
+
*
|
|
36
|
+
* const callbackParams = zodValidators.oidcCallbackParams();
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
39
|
+
oidcCallbackParams: () => StandardSchemaV1<unknown, OidcCallbackParams>;
|
|
40
|
+
/**
|
|
41
|
+
* Creates a Zod validator for ID token claims
|
|
42
|
+
* Use .extend() to add custom claims validation
|
|
43
|
+
*
|
|
44
|
+
* @example Extending with custom claims
|
|
45
|
+
* ```typescript
|
|
46
|
+
* import { zodValidators } from '@enterprisestandard/react-validators-zod';
|
|
47
|
+
* import { z } from 'zod';
|
|
48
|
+
*
|
|
49
|
+
* const customClaimsSchema = (zodValidators.idTokenClaims() as any)
|
|
50
|
+
* .extend({
|
|
51
|
+
* custom_claim: z.string(),
|
|
52
|
+
* roles: z.array(z.string()),
|
|
53
|
+
* });
|
|
54
|
+
* ```
|
|
55
|
+
*/
|
|
56
|
+
idTokenClaims: () => StandardSchemaV1<unknown, IdTokenClaims>;
|
|
57
|
+
/**
|
|
58
|
+
* Creates a Zod validator for token responses from IdP
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* ```typescript
|
|
62
|
+
* import { zodValidators } from '@enterprisestandard/react-validators-zod';
|
|
63
|
+
*
|
|
64
|
+
* const tokenResponse = zodValidators.tokenResponse();
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
tokenResponse: () => StandardSchemaV1<unknown, TokenResponse>;
|
|
68
|
+
/**
|
|
69
|
+
* Creates a Zod validator for SCIM User resources
|
|
70
|
+
* Use .extend() to add custom SCIM extensions
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* ```typescript
|
|
74
|
+
* import { zodValidators } from '@enterprisestandard/react-validators-zod';
|
|
75
|
+
*
|
|
76
|
+
* const userValidator = zodValidators.scimUser();
|
|
77
|
+
* ```
|
|
78
|
+
*
|
|
79
|
+
* @example Extending with custom SCIM schema extensions
|
|
80
|
+
* ```typescript
|
|
81
|
+
* import { zodValidators } from '@enterprisestandard/react-validators-zod';
|
|
82
|
+
* import { z } from 'zod';
|
|
83
|
+
*
|
|
84
|
+
* const customUserSchema = (zodValidators.scimUser() as any)
|
|
85
|
+
* .extend({
|
|
86
|
+
* 'urn:ietf:params:scim:schemas:extension:custom:2.0:User': z.object({
|
|
87
|
+
* customField: z.string(),
|
|
88
|
+
* }),
|
|
89
|
+
* });
|
|
90
|
+
* ```
|
|
91
|
+
*/
|
|
92
|
+
scimUser: () => StandardSchemaV1<unknown, ScimUser>;
|
|
93
|
+
/**
|
|
94
|
+
* Creates a Zod validator for tenant creation responses
|
|
95
|
+
*
|
|
96
|
+
* @example
|
|
97
|
+
* ```typescript
|
|
98
|
+
* import { zodValidators } from '@enterprisestandard/react-validators-zod';
|
|
99
|
+
*
|
|
100
|
+
* const tenantResponse = zodValidators.createTenantResponse();
|
|
101
|
+
* ```
|
|
102
|
+
*/
|
|
103
|
+
createTenantResponse: () => StandardSchemaV1<unknown, CreateTenantResponse>;
|
|
104
|
+
};
|
|
105
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,aAAa,EACb,kBAAkB,EAClB,QAAQ,EACR,gBAAgB,EAChB,aAAa,EACd,MAAM,2BAA2B,CAAC;AAGnC;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,mBAAmB;oBAuCwB,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,CAAC;mBACnD,gBAAgB,CAAC,OAAO,EAAE,aAAa,CAAC;mBACxC,gBAAgB,CAAC,OAAO,EAAE,aAAa,CAAC;EAE5F;AAED;;GAEG;AACH,eAAO,MAAM,aAAa;IACxB;;;;;;;;;OASG;8BAUgB,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,CAAC;IAEhE;;;;;;;;;;;;;;;OAeG;yBAe8B,gBAAgB,CAAC,OAAO,EAAE,aAAa,CAAC;IAEzE;;;;;;;;;OASG;yBAYgB,gBAAgB,CAAC,OAAO,EAAE,aAAa,CAAC;IAE3D;;;;;;;;;;;;;;;;;;;;;;;OAuBG;oBAwIgB,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC;IAGtD;;;;;;;;;OASG;gCAKgB,gBAAgB,CAAC,OAAO,EAAE,oBAAoB,CAAC;CACnE,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -71,6 +71,120 @@ var zodValidators = {
|
|
|
71
71
|
refresh_expires_in: z.number().optional(),
|
|
72
72
|
session_state: z.string().optional(),
|
|
73
73
|
expires: z.string().optional()
|
|
74
|
+
}),
|
|
75
|
+
scimUser: () => {
|
|
76
|
+
const nameSchema = z.object({
|
|
77
|
+
formatted: z.string().optional(),
|
|
78
|
+
familyName: z.string().optional(),
|
|
79
|
+
givenName: z.string().optional(),
|
|
80
|
+
middleName: z.string().optional(),
|
|
81
|
+
honorificPrefix: z.string().optional(),
|
|
82
|
+
honorificSuffix: z.string().optional()
|
|
83
|
+
});
|
|
84
|
+
const emailSchema = z.object({
|
|
85
|
+
value: z.string().email(),
|
|
86
|
+
display: z.string().optional(),
|
|
87
|
+
type: z.string().optional(),
|
|
88
|
+
primary: z.boolean().optional()
|
|
89
|
+
});
|
|
90
|
+
const phoneNumberSchema = z.object({
|
|
91
|
+
value: z.string(),
|
|
92
|
+
display: z.string().optional(),
|
|
93
|
+
type: z.string().optional(),
|
|
94
|
+
primary: z.boolean().optional()
|
|
95
|
+
});
|
|
96
|
+
const addressSchema = z.object({
|
|
97
|
+
formatted: z.string().optional(),
|
|
98
|
+
streetAddress: z.string().optional(),
|
|
99
|
+
locality: z.string().optional(),
|
|
100
|
+
region: z.string().optional(),
|
|
101
|
+
postalCode: z.string().optional(),
|
|
102
|
+
country: z.string().optional(),
|
|
103
|
+
type: z.string().optional(),
|
|
104
|
+
primary: z.boolean().optional()
|
|
105
|
+
});
|
|
106
|
+
const groupSchema = z.object({
|
|
107
|
+
value: z.string(),
|
|
108
|
+
$ref: z.string().optional(),
|
|
109
|
+
display: z.string().optional(),
|
|
110
|
+
type: z.string().optional()
|
|
111
|
+
});
|
|
112
|
+
const roleSchema = z.object({
|
|
113
|
+
value: z.string(),
|
|
114
|
+
display: z.string().optional(),
|
|
115
|
+
type: z.string().optional(),
|
|
116
|
+
primary: z.boolean().optional()
|
|
117
|
+
});
|
|
118
|
+
const enterpriseUserSchema = z.object({
|
|
119
|
+
employeeNumber: z.string().optional(),
|
|
120
|
+
costCenter: z.string().optional(),
|
|
121
|
+
organization: z.string().optional(),
|
|
122
|
+
division: z.string().optional(),
|
|
123
|
+
department: z.string().optional(),
|
|
124
|
+
manager: z.object({
|
|
125
|
+
value: z.string().optional(),
|
|
126
|
+
$ref: z.string().optional(),
|
|
127
|
+
displayName: z.string().optional()
|
|
128
|
+
}).optional()
|
|
129
|
+
});
|
|
130
|
+
return z.object({
|
|
131
|
+
id: z.string().optional(),
|
|
132
|
+
externalId: z.string().optional(),
|
|
133
|
+
meta: z.object({
|
|
134
|
+
resourceType: z.string().optional(),
|
|
135
|
+
created: z.string().optional(),
|
|
136
|
+
lastModified: z.string().optional(),
|
|
137
|
+
location: z.string().optional(),
|
|
138
|
+
version: z.string().optional()
|
|
139
|
+
}).optional(),
|
|
140
|
+
userName: z.string(),
|
|
141
|
+
name: nameSchema.optional(),
|
|
142
|
+
displayName: z.string().optional(),
|
|
143
|
+
nickName: z.string().optional(),
|
|
144
|
+
profileUrl: z.string().url().optional(),
|
|
145
|
+
title: z.string().optional(),
|
|
146
|
+
userType: z.string().optional(),
|
|
147
|
+
preferredLanguage: z.string().optional(),
|
|
148
|
+
locale: z.string().optional(),
|
|
149
|
+
timezone: z.string().optional(),
|
|
150
|
+
active: z.boolean().optional(),
|
|
151
|
+
password: z.string().optional(),
|
|
152
|
+
emails: z.array(emailSchema).optional(),
|
|
153
|
+
phoneNumbers: z.array(phoneNumberSchema).optional(),
|
|
154
|
+
ims: z.array(z.object({
|
|
155
|
+
value: z.string(),
|
|
156
|
+
display: z.string().optional(),
|
|
157
|
+
type: z.string().optional(),
|
|
158
|
+
primary: z.boolean().optional()
|
|
159
|
+
})).optional(),
|
|
160
|
+
photos: z.array(z.object({
|
|
161
|
+
value: z.string(),
|
|
162
|
+
display: z.string().optional(),
|
|
163
|
+
type: z.string().optional(),
|
|
164
|
+
primary: z.boolean().optional()
|
|
165
|
+
})).optional(),
|
|
166
|
+
addresses: z.array(addressSchema).optional(),
|
|
167
|
+
groups: z.array(groupSchema).optional(),
|
|
168
|
+
entitlements: z.array(z.object({
|
|
169
|
+
value: z.string(),
|
|
170
|
+
display: z.string().optional(),
|
|
171
|
+
type: z.string().optional(),
|
|
172
|
+
primary: z.boolean().optional()
|
|
173
|
+
})).optional(),
|
|
174
|
+
roles: z.array(roleSchema).optional(),
|
|
175
|
+
x509Certificates: z.array(z.object({
|
|
176
|
+
value: z.string(),
|
|
177
|
+
display: z.string().optional(),
|
|
178
|
+
type: z.string().optional(),
|
|
179
|
+
primary: z.boolean().optional()
|
|
180
|
+
})).optional(),
|
|
181
|
+
"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": enterpriseUserSchema.optional(),
|
|
182
|
+
schemas: z.array(z.string()).optional()
|
|
183
|
+
});
|
|
184
|
+
},
|
|
185
|
+
createTenantResponse: () => z.object({
|
|
186
|
+
tenantUrl: z.string().url(),
|
|
187
|
+
status: z.enum(["pending", "processing", "completed", "failed"])
|
|
74
188
|
})
|
|
75
189
|
};
|
|
76
190
|
export {
|
|
@@ -78,4 +192,4 @@ export {
|
|
|
78
192
|
createZodValidators
|
|
79
193
|
};
|
|
80
194
|
|
|
81
|
-
//# debugId=
|
|
195
|
+
//# debugId=8150079BAB5B468764756E2164756E21
|
package/dist/index.js.map
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/index.ts"],
|
|
4
4
|
"sourcesContent": [
|
|
5
|
-
"import { z } from 'zod';\nimport type { StandardSchemaV1 } from '@enterprisestandard/react';\nimport type { OidcCallbackParams, TokenResponse, IdTokenClaims } from '@enterprisestandard/react';\n\n/**\n * Pre-built Zod validators for OIDC/SSO flows\n *\n * These validators implement the StandardSchemaV1 interface and can be used\n * directly in SSOHandlerConfig.validation\n *\n * @example\n * ```typescript\n * import { createZodValidators } from '@enterprisestandard/react-validators-zod';\n *\n * const validators = createZodValidators();\n *\n * const ssoConfig: SSOHandlerConfig = {\n * loginUrl: '/api/auth/login',\n * validation: validators,\n * };\n * ```\n */\nexport function createZodValidators() {\n const oidcCallbackParamsSchema = z.object({\n code: z.string(),\n state: z.string().optional(),\n session_state: z.string().optional(),\n error: z.string().optional(),\n error_description: z.string().optional(),\n error_uri: z.string().optional(),\n iss: z.string().optional(),\n });\n\n const idTokenClaimsSchema = z\n .object({\n sub: z.string().optional(),\n iss: z.string().optional(),\n aud: z.string().optional(),\n exp: z.number().optional(),\n iat: z.number().optional(),\n sid: z.string().optional(),\n name: z.string().optional(),\n email: z.string().email().optional(),\n preferred_username: z.string().optional(),\n picture: z.string().url().optional(),\n })\n .passthrough(); // Allow additional claims\n\n const tokenResponseSchema = z.object({\n access_token: z.string(),\n id_token: z.string(),\n refresh_token: z.string().optional(),\n token_type: z.string(),\n expires_in: z.number().optional(),\n scope: z.string().optional(),\n refresh_expires_in: z.number().optional(),\n session_state: z.string().optional(),\n expires: z.string().optional(),\n });\n\n return {\n callbackParams: oidcCallbackParamsSchema as unknown as StandardSchemaV1<unknown, OidcCallbackParams>,\n idTokenClaims: idTokenClaimsSchema as unknown as StandardSchemaV1<unknown, IdTokenClaims>,\n tokenResponse: tokenResponseSchema as unknown as StandardSchemaV1<unknown, TokenResponse>,\n };\n}\n\n/**\n * Individual Zod schema factories for custom usage\n */\nexport const zodValidators = {\n /**\n * Creates a Zod validator for OIDC callback parameters\n *\n * @example\n * ```typescript\n * import { zodValidators } from '@enterprisestandard/react-validators-zod';\n *\n * const callbackParams = zodValidators.oidcCallbackParams();\n * ```\n */\n oidcCallbackParams: () =>\n z.object({\n code: z.string(),\n state: z.string().optional(),\n session_state: z.string().optional(),\n error: z.string().optional(),\n error_description: z.string().optional(),\n error_uri: z.string().optional(),\n iss: z.string().optional(),\n }) as unknown as StandardSchemaV1<unknown, OidcCallbackParams>,\n\n /**\n * Creates a Zod validator for ID token claims\n * Use .extend() to add custom claims validation\n *\n * @example Extending with custom claims\n * ```typescript\n * import { zodValidators } from '@enterprisestandard/react-validators-zod';\n * import { z } from 'zod';\n *\n * const customClaimsSchema = (zodValidators.idTokenClaims() as any)\n * .extend({\n * custom_claim: z.string(),\n * roles: z.array(z.string()),\n * });\n * ```\n */\n idTokenClaims: () =>\n z\n .object({\n sub: z.string().optional(),\n iss: z.string().optional(),\n aud: z.string().optional(),\n exp: z.number().optional(),\n iat: z.number().optional(),\n sid: z.string().optional(),\n name: z.string().optional(),\n email: z.string().email().optional(),\n preferred_username: z.string().optional(),\n picture: z.string().url().optional(),\n })\n .passthrough() as unknown as StandardSchemaV1<unknown, IdTokenClaims>,\n\n /**\n * Creates a Zod validator for token responses from IdP\n *\n * @example\n * ```typescript\n * import { zodValidators } from '@enterprisestandard/react-validators-zod';\n *\n * const tokenResponse = zodValidators.tokenResponse();\n * ```\n */\n tokenResponse: () =>\n z.object({\n access_token: z.string(),\n id_token: z.string(),\n refresh_token: z.string().optional(),\n token_type: z.string(),\n expires_in: z.number().optional(),\n scope: z.string().optional(),\n refresh_expires_in: z.number().optional(),\n session_state: z.string().optional(),\n expires: z.string().optional(),\n }) as unknown as StandardSchemaV1<unknown, TokenResponse>,\n};\n"
|
|
5
|
+
"import type {\n CreateTenantResponse,\n IdTokenClaims,\n OidcCallbackParams,\n ScimUser,\n StandardSchemaV1,\n TokenResponse,\n} from '@enterprisestandard/react';\nimport { z } from 'zod';\n\n/**\n * Pre-built Zod validators for OIDC/SSO flows\n *\n * These validators implement the StandardSchemaV1 interface and can be used\n * directly in SSOHandlerConfig.validation\n *\n * @example\n * ```typescript\n * import { createZodValidators } from '@enterprisestandard/react-validators-zod';\n *\n * const validators = createZodValidators();\n *\n * const ssoConfig: SSOHandlerConfig = {\n * loginUrl: '/api/auth/login',\n * validation: validators,\n * };\n * ```\n */\nexport function createZodValidators() {\n const oidcCallbackParamsSchema = z.object({\n code: z.string(),\n state: z.string().optional(),\n session_state: z.string().optional(),\n error: z.string().optional(),\n error_description: z.string().optional(),\n error_uri: z.string().optional(),\n iss: z.string().optional(),\n });\n\n const idTokenClaimsSchema = z\n .object({\n sub: z.string().optional(),\n iss: z.string().optional(),\n aud: z.string().optional(),\n exp: z.number().optional(),\n iat: z.number().optional(),\n sid: z.string().optional(),\n name: z.string().optional(),\n email: z.string().email().optional(),\n preferred_username: z.string().optional(),\n picture: z.string().url().optional(),\n })\n .passthrough(); // Allow additional claims\n\n const tokenResponseSchema = z.object({\n access_token: z.string(),\n id_token: z.string(),\n refresh_token: z.string().optional(),\n token_type: z.string(),\n expires_in: z.number().optional(),\n scope: z.string().optional(),\n refresh_expires_in: z.number().optional(),\n session_state: z.string().optional(),\n expires: z.string().optional(),\n });\n\n return {\n callbackParams: oidcCallbackParamsSchema as unknown as StandardSchemaV1<unknown, OidcCallbackParams>,\n idTokenClaims: idTokenClaimsSchema as unknown as StandardSchemaV1<unknown, IdTokenClaims>,\n tokenResponse: tokenResponseSchema as unknown as StandardSchemaV1<unknown, TokenResponse>,\n };\n}\n\n/**\n * Individual Zod schema factories for custom usage\n */\nexport const zodValidators = {\n /**\n * Creates a Zod validator for OIDC callback parameters\n *\n * @example\n * ```typescript\n * import { zodValidators } from '@enterprisestandard/react-validators-zod';\n *\n * const callbackParams = zodValidators.oidcCallbackParams();\n * ```\n */\n oidcCallbackParams: () =>\n z.object({\n code: z.string(),\n state: z.string().optional(),\n session_state: z.string().optional(),\n error: z.string().optional(),\n error_description: z.string().optional(),\n error_uri: z.string().optional(),\n iss: z.string().optional(),\n }) as unknown as StandardSchemaV1<unknown, OidcCallbackParams>,\n\n /**\n * Creates a Zod validator for ID token claims\n * Use .extend() to add custom claims validation\n *\n * @example Extending with custom claims\n * ```typescript\n * import { zodValidators } from '@enterprisestandard/react-validators-zod';\n * import { z } from 'zod';\n *\n * const customClaimsSchema = (zodValidators.idTokenClaims() as any)\n * .extend({\n * custom_claim: z.string(),\n * roles: z.array(z.string()),\n * });\n * ```\n */\n idTokenClaims: () =>\n z\n .object({\n sub: z.string().optional(),\n iss: z.string().optional(),\n aud: z.string().optional(),\n exp: z.number().optional(),\n iat: z.number().optional(),\n sid: z.string().optional(),\n name: z.string().optional(),\n email: z.string().email().optional(),\n preferred_username: z.string().optional(),\n picture: z.string().url().optional(),\n })\n .passthrough() as unknown as StandardSchemaV1<unknown, IdTokenClaims>,\n\n /**\n * Creates a Zod validator for token responses from IdP\n *\n * @example\n * ```typescript\n * import { zodValidators } from '@enterprisestandard/react-validators-zod';\n *\n * const tokenResponse = zodValidators.tokenResponse();\n * ```\n */\n tokenResponse: () =>\n z.object({\n access_token: z.string(),\n id_token: z.string(),\n refresh_token: z.string().optional(),\n token_type: z.string(),\n expires_in: z.number().optional(),\n scope: z.string().optional(),\n refresh_expires_in: z.number().optional(),\n session_state: z.string().optional(),\n expires: z.string().optional(),\n }) as unknown as StandardSchemaV1<unknown, TokenResponse>,\n\n /**\n * Creates a Zod validator for SCIM User resources\n * Use .extend() to add custom SCIM extensions\n *\n * @example\n * ```typescript\n * import { zodValidators } from '@enterprisestandard/react-validators-zod';\n *\n * const userValidator = zodValidators.scimUser();\n * ```\n *\n * @example Extending with custom SCIM schema extensions\n * ```typescript\n * import { zodValidators } from '@enterprisestandard/react-validators-zod';\n * import { z } from 'zod';\n *\n * const customUserSchema = (zodValidators.scimUser() as any)\n * .extend({\n * 'urn:ietf:params:scim:schemas:extension:custom:2.0:User': z.object({\n * customField: z.string(),\n * }),\n * });\n * ```\n */\n scimUser: () => {\n const nameSchema = z.object({\n formatted: z.string().optional(),\n familyName: z.string().optional(),\n givenName: z.string().optional(),\n middleName: z.string().optional(),\n honorificPrefix: z.string().optional(),\n honorificSuffix: z.string().optional(),\n });\n\n const emailSchema = z.object({\n value: z.string().email(),\n display: z.string().optional(),\n type: z.string().optional(),\n primary: z.boolean().optional(),\n });\n\n const phoneNumberSchema = z.object({\n value: z.string(),\n display: z.string().optional(),\n type: z.string().optional(),\n primary: z.boolean().optional(),\n });\n\n const addressSchema = z.object({\n formatted: z.string().optional(),\n streetAddress: z.string().optional(),\n locality: z.string().optional(),\n region: z.string().optional(),\n postalCode: z.string().optional(),\n country: z.string().optional(),\n type: z.string().optional(),\n primary: z.boolean().optional(),\n });\n\n const groupSchema = z.object({\n value: z.string(),\n $ref: z.string().optional(),\n display: z.string().optional(),\n type: z.string().optional(),\n });\n\n const roleSchema = z.object({\n value: z.string(),\n display: z.string().optional(),\n type: z.string().optional(),\n primary: z.boolean().optional(),\n });\n\n const enterpriseUserSchema = z.object({\n employeeNumber: z.string().optional(),\n costCenter: z.string().optional(),\n organization: z.string().optional(),\n division: z.string().optional(),\n department: z.string().optional(),\n manager: z\n .object({\n value: z.string().optional(),\n $ref: z.string().optional(),\n displayName: z.string().optional(),\n })\n .optional(),\n });\n\n return z.object({\n id: z.string().optional(),\n externalId: z.string().optional(),\n meta: z\n .object({\n resourceType: z.string().optional(),\n created: z.string().optional(),\n lastModified: z.string().optional(),\n location: z.string().optional(),\n version: z.string().optional(),\n })\n .optional(),\n userName: z.string(),\n name: nameSchema.optional(),\n displayName: z.string().optional(),\n nickName: z.string().optional(),\n profileUrl: z.string().url().optional(),\n title: z.string().optional(),\n userType: z.string().optional(),\n preferredLanguage: z.string().optional(),\n locale: z.string().optional(),\n timezone: z.string().optional(),\n active: z.boolean().optional(),\n password: z.string().optional(),\n emails: z.array(emailSchema).optional(),\n phoneNumbers: z.array(phoneNumberSchema).optional(),\n ims: z\n .array(\n z.object({\n value: z.string(),\n display: z.string().optional(),\n type: z.string().optional(),\n primary: z.boolean().optional(),\n }),\n )\n .optional(),\n photos: z\n .array(\n z.object({\n value: z.string(),\n display: z.string().optional(),\n type: z.string().optional(),\n primary: z.boolean().optional(),\n }),\n )\n .optional(),\n addresses: z.array(addressSchema).optional(),\n groups: z.array(groupSchema).optional(),\n entitlements: z\n .array(\n z.object({\n value: z.string(),\n display: z.string().optional(),\n type: z.string().optional(),\n primary: z.boolean().optional(),\n }),\n )\n .optional(),\n roles: z.array(roleSchema).optional(),\n x509Certificates: z\n .array(\n z.object({\n value: z.string(),\n display: z.string().optional(),\n type: z.string().optional(),\n primary: z.boolean().optional(),\n }),\n )\n .optional(),\n 'urn:ietf:params:scim:schemas:extension:enterprise:2.0:User': enterpriseUserSchema.optional(),\n schemas: z.array(z.string()).optional(),\n }) as unknown as StandardSchemaV1<unknown, ScimUser>;\n },\n\n /**\n * Creates a Zod validator for tenant creation responses\n *\n * @example\n * ```typescript\n * import { zodValidators } from '@enterprisestandard/react-validators-zod';\n *\n * const tenantResponse = zodValidators.createTenantResponse();\n * ```\n */\n createTenantResponse: () =>\n z.object({\n tenantUrl: z.string().url(),\n status: z.enum(['pending', 'processing', 'completed', 'failed']),\n }) as unknown as StandardSchemaV1<unknown, CreateTenantResponse>,\n};\n"
|
|
6
6
|
],
|
|
7
|
-
"mappings": ";
|
|
8
|
-
"debugId": "
|
|
7
|
+
"mappings": "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",
|
|
8
|
+
"debugId": "8150079BAB5B468764756E2164756E21",
|
|
9
9
|
"names": []
|
|
10
10
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@enterprisestandard/react-validators-zod",
|
|
3
|
-
"version": "0.0.5-beta.
|
|
3
|
+
"version": "0.0.5-beta.20260114.1",
|
|
4
4
|
"description": "Zod validators for @enterprisestandard/react SSO/OIDC flows",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"standardschema"
|
|
27
27
|
],
|
|
28
28
|
"author": "Enterprise Standard",
|
|
29
|
-
"license": "
|
|
29
|
+
"license": "Proprietary",
|
|
30
30
|
"peerDependencies": {
|
|
31
31
|
"@enterprisestandard/react": "^0.0.5",
|
|
32
32
|
"zod": "^3.23.0 || ^4.0.0"
|