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