@schemavaults/auth-common 0.7.30 → 0.8.4
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/MaximumBrowserCookieSize.d.ts +3 -0
- package/dist/MaximumBrowserCookieSize.js +4 -0
- package/dist/MaximumBrowserCookieSize.js.map +1 -0
- package/dist/index.d.ts +3 -2
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/invite-code/invite-code-definition.d.ts +3 -3
- package/dist/middleware/{decode-first-of-several-jwts.d.ts → decode-jwts.d.ts} +3 -3
- package/dist/middleware/{decode-first-of-several-jwts.js → decode-jwts.js} +7 -5
- package/dist/middleware/decode-jwts.js.map +1 -0
- package/dist/middleware/determine-auth-status.js +2 -2
- package/dist/middleware/determine-auth-status.js.map +1 -1
- package/dist/middleware/index.d.ts +1 -1
- package/dist/middleware/index.js +1 -1
- package/dist/middleware/index.js.map +1 -1
- package/dist/organizations/index.d.ts +5 -0
- package/dist/organizations/index.js +3 -0
- package/dist/organizations/index.js.map +1 -1
- package/dist/organizations/invite_member_form.d.ts +32 -0
- package/dist/organizations/invite_member_form.js +36 -0
- package/dist/organizations/invite_member_form.js.map +1 -0
- package/dist/organizations/organization_constants.d.ts +2 -1
- package/dist/organizations/organization_constants.js +2 -1
- package/dist/organizations/organization_constants.js.map +1 -1
- package/dist/organizations/organization_definition.d.ts +3 -0
- package/dist/organizations/organization_definition.js +1 -0
- package/dist/organizations/organization_definition.js.map +1 -1
- package/dist/organizations/organization_invitation.d.ts +87 -0
- package/dist/organizations/organization_invitation.js +24 -0
- package/dist/organizations/organization_invitation.js.map +1 -0
- package/dist/request_tokens_result.d.ts +7 -7
- package/dist/user_data/user_data.d.ts +5 -5
- package/package.json +4 -3
- package/dist/middleware/decode-first-of-several-jwts.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MaximumBrowserCookieSize.js","sourceRoot":"","sources":["../src/MaximumBrowserCookieSize.ts"],"names":[],"mappings":"AAAA,MAAM,wBAAwB,GAAG,IAAI,CAAC,CAAC,MAAM;AAE7C,OAAO,EAAE,wBAAwB,EAAE,CAAC;AACpC,eAAe,wBAAwB,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -17,5 +17,6 @@ export { appIdSchema } from "@schemavaults/app-definitions";
|
|
|
17
17
|
export { audienceSchema, audienceRefSchema } from "./audience-schema";
|
|
18
18
|
export { inviteCodeFormatSchema, inviteCodeDefinitionSchema, } from "./invite-code";
|
|
19
19
|
export type { InviteCode, InviteCodeDefinition } from "./invite-code";
|
|
20
|
-
export { organizationIdSchema, isValidOrganizationID, organizationDefinitionSchema, hardcodedOrgs, SCHEMAVAULTS_ORGANIZATION_ID, } from "./organizations";
|
|
21
|
-
export type { OrganizationID, OrganizationDefinition } from "./organizations";
|
|
20
|
+
export { organizationIdSchema, isValidOrganizationID, organizationDefinitionSchema, hardcodedOrgs, SCHEMAVAULTS_ORGANIZATION_ID, MAXIMUM_USER_ORGANIZATIONS, MINIMUM_ORGANIZATION_ID_LENGTH, MAXIMUM_ORGANIZATION_ID_LENGTH, inviteMemberInputModes, inviteMemberFormSchema, organizationInvitationStatusTypes, organizationInvitationStatusSchema, organizationInvitationSchema, } from "./organizations";
|
|
21
|
+
export type { OrganizationID, OrganizationDefinition, InviteMemberInputMode, InviteMemberFormValues, InviteMemberSubmitData, OrganizationInvitationStatus, OrganizationInvitation, UserPendingInvitation, OrganizationInvitationWithUserData, } from "./organizations";
|
|
22
|
+
export { MaximumBrowserCookieSize } from "./MaximumBrowserCookieSize";
|
package/dist/index.js
CHANGED
|
@@ -11,5 +11,6 @@ export { PRODUCTION_AUTH_SERVER_URL } from "@schemavaults/app-definitions";
|
|
|
11
11
|
export { appIdSchema } from "@schemavaults/app-definitions";
|
|
12
12
|
export { audienceSchema, audienceRefSchema } from "./audience-schema";
|
|
13
13
|
export { inviteCodeFormatSchema, inviteCodeDefinitionSchema, } from "./invite-code";
|
|
14
|
-
export { organizationIdSchema, isValidOrganizationID, organizationDefinitionSchema, hardcodedOrgs, SCHEMAVAULTS_ORGANIZATION_ID, } from "./organizations";
|
|
14
|
+
export { organizationIdSchema, isValidOrganizationID, organizationDefinitionSchema, hardcodedOrgs, SCHEMAVAULTS_ORGANIZATION_ID, MAXIMUM_USER_ORGANIZATIONS, MINIMUM_ORGANIZATION_ID_LENGTH, MAXIMUM_ORGANIZATION_ID_LENGTH, inviteMemberInputModes, inviteMemberFormSchema, organizationInvitationStatusTypes, organizationInvitationStatusSchema, organizationInvitationSchema, } from "./organizations";
|
|
15
|
+
export { MaximumBrowserCookieSize } from "./MaximumBrowserCookieSize";
|
|
15
16
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAiB,MAAM,aAAa,CAAC;AAE5D,cAAc,eAAe,CAAC;AAG9B,mBAAmB;AACnB,cAAc,cAAc,CAAC;AAM7B,cAAc,cAAc,CAAC;AAG7B,cAAc,QAAQ,CAAC;AAGvB,OAAO,EACL,wBAAwB,GAEzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,yBAAyB,EAEzB,uCAAuC,GAExC,MAAM,yBAAyB,CAAC;AAEjC,cAAc,mCAAmC,CAAC;AAGlD,OAAO,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtE,OAAO,EACL,sBAAsB,EACtB,0BAA0B,GAC3B,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,4BAA4B,EAC5B,aAAa,EACb,4BAA4B,GAC7B,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAiB,MAAM,aAAa,CAAC;AAE5D,cAAc,eAAe,CAAC;AAG9B,mBAAmB;AACnB,cAAc,cAAc,CAAC;AAM7B,cAAc,cAAc,CAAC;AAG7B,cAAc,QAAQ,CAAC;AAGvB,OAAO,EACL,wBAAwB,GAEzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,yBAAyB,EAEzB,uCAAuC,GAExC,MAAM,yBAAyB,CAAC;AAEjC,cAAc,mCAAmC,CAAC;AAGlD,OAAO,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtE,OAAO,EACL,sBAAsB,EACtB,0BAA0B,GAC3B,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,4BAA4B,EAC5B,aAAa,EACb,4BAA4B,EAC5B,0BAA0B,EAC1B,8BAA8B,EAC9B,8BAA8B,EAC9B,sBAAsB,EACtB,sBAAsB,EACtB,iCAAiC,EACjC,kCAAkC,EAClC,4BAA4B,GAC7B,MAAM,iBAAiB,CAAC;AAazB,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export declare const inviteCodeDefinitionSchema: z.ZodObject<{
|
|
3
3
|
created_at: z.ZodNumber;
|
|
4
|
+
created_by: z.ZodOptional<z.ZodString>;
|
|
4
5
|
invite_code: z.ZodString;
|
|
5
6
|
max_uses: z.ZodNumber;
|
|
6
7
|
description: z.ZodOptional<z.ZodString>;
|
|
7
|
-
created_by: z.ZodOptional<z.ZodString>;
|
|
8
8
|
}, "strict", z.ZodTypeAny, {
|
|
9
9
|
created_at: number;
|
|
10
10
|
invite_code: string;
|
|
11
11
|
max_uses: number;
|
|
12
|
-
description?: string | undefined;
|
|
13
12
|
created_by?: string | undefined;
|
|
13
|
+
description?: string | undefined;
|
|
14
14
|
}, {
|
|
15
15
|
created_at: number;
|
|
16
16
|
invite_code: string;
|
|
17
17
|
max_uses: number;
|
|
18
|
-
description?: string | undefined;
|
|
19
18
|
created_by?: string | undefined;
|
|
19
|
+
description?: string | undefined;
|
|
20
20
|
}>;
|
|
21
21
|
export type InviteCodeDefinition = z.infer<typeof inviteCodeDefinitionSchema>;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import type { PotentiallyValidTokenSource } from "./token-source";
|
|
2
2
|
import type { DecodeTokenFn } from "./decode-token-type";
|
|
3
|
-
export interface
|
|
3
|
+
export interface IDecodeSeveralJwtsInputOptions {
|
|
4
4
|
token_sources: readonly PotentiallyValidTokenSource[];
|
|
5
5
|
decodeJWT: DecodeTokenFn;
|
|
6
6
|
jwt_audience: string;
|
|
7
7
|
}
|
|
8
8
|
type DecodeTokenOutput = Awaited<ReturnType<DecodeTokenFn>>;
|
|
9
|
-
export declare function
|
|
10
|
-
export
|
|
9
|
+
export declare function decodeJWTs({ token_sources, decodeJWT, jwt_audience }: IDecodeSeveralJwtsInputOptions, debug?: boolean): Promise<DecodeTokenOutput>;
|
|
10
|
+
export default decodeJWTs;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export async function
|
|
1
|
+
export async function decodeJWTs({ token_sources, decodeJWT, jwt_audience }, debug = false) {
|
|
2
2
|
const n_token_sources = token_sources.length;
|
|
3
3
|
if (!Array.isArray(token_sources) || n_token_sources === 0) {
|
|
4
4
|
throw new Error("Did not receive a list of tokens to decode");
|
|
@@ -22,14 +22,15 @@ export async function decodeFirstOfSeveralJwts({ token_sources, decodeJWT, jwt_a
|
|
|
22
22
|
});
|
|
23
23
|
const successfulDecodeResults = fulfilledDecodePromises.map((fulfilled_decode_result) => fulfilled_decode_result.value);
|
|
24
24
|
const n_successful_decode_results = successfulDecodeResults.length;
|
|
25
|
-
if (debug) {
|
|
26
|
-
console.log(`[decodeFirstOfSeveralJwts] Decoded ${n_successful_decode_results}/${n_token_sources} tokens successfully.`);
|
|
27
|
-
}
|
|
28
25
|
const successfulDecodeResult = n_successful_decode_results >= 1;
|
|
26
|
+
if (debug && successfulDecodeResult) {
|
|
27
|
+
console.log(`[decodeJWTs] Decoded ${n_successful_decode_results}/${n_token_sources} tokens successfully.`);
|
|
28
|
+
}
|
|
29
29
|
if (!successfulDecodeResult) {
|
|
30
30
|
const errorMessage = n_token_sources > 1
|
|
31
31
|
? `Failed to decode any of the ${n_token_sources} provided JWTs`
|
|
32
32
|
: "Failed to decode the single JWT that was provided!";
|
|
33
|
+
console.warn(errorMessage);
|
|
33
34
|
throw new Error(errorMessage);
|
|
34
35
|
}
|
|
35
36
|
function validateSameInfoAcrossTokens() {
|
|
@@ -57,4 +58,5 @@ export async function decodeFirstOfSeveralJwts({ token_sources, decodeJWT, jwt_a
|
|
|
57
58
|
const firstSuccessfulResult = successfulDecodeResults[0];
|
|
58
59
|
return firstSuccessfulResult;
|
|
59
60
|
}
|
|
60
|
-
|
|
61
|
+
export default decodeJWTs;
|
|
62
|
+
//# sourceMappingURL=decode-jwts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decode-jwts.js","sourceRoot":"","sources":["../../src/middleware/decode-jwts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import decodeJWTs from "./decode-jwts";
|
|
2
2
|
export async function determineAuthStatus(opts) {
|
|
3
3
|
const debug = opts.debug ?? false;
|
|
4
4
|
if (debug) {
|
|
@@ -52,7 +52,7 @@ export async function determineAuthStatus(opts) {
|
|
|
52
52
|
const token_sources = opts.token_sources;
|
|
53
53
|
let decoded_jwt;
|
|
54
54
|
try {
|
|
55
|
-
const decoded = await
|
|
55
|
+
const decoded = await decodeJWTs({
|
|
56
56
|
token_sources,
|
|
57
57
|
decodeJWT: opts.decodeJWT,
|
|
58
58
|
jwt_audience,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"determine-auth-status.js","sourceRoot":"","sources":["../../src/middleware/determine-auth-status.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"determine-auth-status.js","sourceRoot":"","sources":["../../src/middleware/determine-auth-status.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,4 +7,4 @@ export { defaultAuthMiddlewareRules } from "./default-auth-middleware-rules";
|
|
|
7
7
|
export { determineAuthStatus } from "./determine-auth-status";
|
|
8
8
|
export type { DecodeTokenFn } from "./decode-token-type";
|
|
9
9
|
export type { PotentiallyValidTokenSource } from "./token-source";
|
|
10
|
-
export {
|
|
10
|
+
export { decodeJWTs, type IDecodeSeveralJwtsInputOptions } from "./decode-jwts";
|
package/dist/middleware/index.js
CHANGED
|
@@ -2,5 +2,5 @@ export { AuthMiddleware } from "./auth-middleware";
|
|
|
2
2
|
export * from "./auth-middleware-error";
|
|
3
3
|
export { defaultAuthMiddlewareRules } from "./default-auth-middleware-rules";
|
|
4
4
|
export { determineAuthStatus } from "./determine-auth-status";
|
|
5
|
-
export {
|
|
5
|
+
export { decodeJWTs } from "./decode-jwts";
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/middleware/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAMnD,cAAc,yBAAyB,CAAC;AAIxC,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAI9D,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/middleware/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAMnD,cAAc,yBAAyB,CAAC;AAIxC,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAI9D,OAAO,EAAE,UAAU,EAAuC,MAAM,eAAe,CAAC"}
|
|
@@ -4,3 +4,8 @@ export { organizationDefinitionSchema } from "./organization_definition";
|
|
|
4
4
|
export type { OrganizationDefinition } from "./organization_definition";
|
|
5
5
|
export { SCHEMAVAULTS_ORGANIZATION_ID } from "./schemavaults_org_id";
|
|
6
6
|
export { hardcodedOrgs } from "./hardcoded_orgs";
|
|
7
|
+
export { MAXIMUM_USER_ORGANIZATIONS, MINIMUM_ORGANIZATION_ID_LENGTH, MAXIMUM_ORGANIZATION_ID_LENGTH, } from "./organization_constants";
|
|
8
|
+
export { inviteMemberInputModes, inviteMemberFormSchema, } from "./invite_member_form";
|
|
9
|
+
export type { InviteMemberInputMode, InviteMemberFormValues, InviteMemberSubmitData, } from "./invite_member_form";
|
|
10
|
+
export { organizationInvitationStatusTypes, organizationInvitationStatusSchema, organizationInvitationSchema, } from "./organization_invitation";
|
|
11
|
+
export type { OrganizationInvitationStatus, OrganizationInvitation, UserPendingInvitation, OrganizationInvitationWithUserData, } from "./organization_invitation";
|
|
@@ -2,4 +2,7 @@ export { organizationIdSchema, isValidOrganizationID } from "./organization_id";
|
|
|
2
2
|
export { organizationDefinitionSchema } from "./organization_definition";
|
|
3
3
|
export { SCHEMAVAULTS_ORGANIZATION_ID } from "./schemavaults_org_id";
|
|
4
4
|
export { hardcodedOrgs } from "./hardcoded_orgs";
|
|
5
|
+
export { MAXIMUM_USER_ORGANIZATIONS, MINIMUM_ORGANIZATION_ID_LENGTH, MAXIMUM_ORGANIZATION_ID_LENGTH, } from "./organization_constants";
|
|
6
|
+
export { inviteMemberInputModes, inviteMemberFormSchema, } from "./invite_member_form";
|
|
7
|
+
export { organizationInvitationStatusTypes, organizationInvitationStatusSchema, organizationInvitationSchema, } from "./organization_invitation";
|
|
5
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/organizations/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAGhF,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AAGzE,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAErE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/organizations/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAGhF,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AAGzE,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAErE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EACL,0BAA0B,EAC1B,8BAA8B,EAC9B,8BAA8B,GAC/B,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAO9B,OAAO,EACL,iCAAiC,EACjC,kCAAkC,EAClC,4BAA4B,GAC7B,MAAM,2BAA2B,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { type OrganizationID } from "./organization_id";
|
|
3
|
+
export declare const inviteMemberInputModes: readonly ["email", "uid"];
|
|
4
|
+
export type InviteMemberInputMode = (typeof inviteMemberInputModes)[number];
|
|
5
|
+
export declare const inviteMemberFormSchema: z.ZodEffects<z.ZodObject<{
|
|
6
|
+
organization_id: z.ZodEffects<z.ZodString, string, string>;
|
|
7
|
+
input_mode: z.ZodEnum<["email", "uid"]>;
|
|
8
|
+
identifier: z.ZodUnion<[z.ZodString, z.ZodString]>;
|
|
9
|
+
}, "strict", z.ZodTypeAny, {
|
|
10
|
+
organization_id: string;
|
|
11
|
+
input_mode: "email" | "uid";
|
|
12
|
+
identifier: string;
|
|
13
|
+
}, {
|
|
14
|
+
organization_id: string;
|
|
15
|
+
input_mode: "email" | "uid";
|
|
16
|
+
identifier: string;
|
|
17
|
+
}>, {
|
|
18
|
+
organization_id: string;
|
|
19
|
+
input_mode: "email" | "uid";
|
|
20
|
+
identifier: string;
|
|
21
|
+
}, {
|
|
22
|
+
organization_id: string;
|
|
23
|
+
input_mode: "email" | "uid";
|
|
24
|
+
identifier: string;
|
|
25
|
+
}>;
|
|
26
|
+
export type InviteMemberFormValues = z.infer<typeof inviteMemberFormSchema>;
|
|
27
|
+
export interface InviteMemberSubmitData {
|
|
28
|
+
organization_id: OrganizationID;
|
|
29
|
+
input_mode: InviteMemberInputMode;
|
|
30
|
+
uid?: string;
|
|
31
|
+
email?: string;
|
|
32
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { organizationIdSchema } from "./organization_id";
|
|
3
|
+
export const inviteMemberInputModes = ["email", "uid"];
|
|
4
|
+
export const inviteMemberFormSchema = z
|
|
5
|
+
.object({
|
|
6
|
+
organization_id: organizationIdSchema,
|
|
7
|
+
input_mode: z.enum(inviteMemberInputModes),
|
|
8
|
+
identifier: z.union([z.string().uuid(), z.string().email()]),
|
|
9
|
+
})
|
|
10
|
+
.required({
|
|
11
|
+
organization_id: true,
|
|
12
|
+
input_mode: true,
|
|
13
|
+
identifier: true,
|
|
14
|
+
})
|
|
15
|
+
.strict()
|
|
16
|
+
.superRefine((data, ctx) => {
|
|
17
|
+
if (data.input_mode === "uid") {
|
|
18
|
+
if (!z.string().uuid().safeParse(data.identifier).success) {
|
|
19
|
+
ctx.addIssue({
|
|
20
|
+
code: z.ZodIssueCode.custom,
|
|
21
|
+
message: "Must be a valid UUID",
|
|
22
|
+
path: ["identifier"],
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
else if (data.input_mode === "email") {
|
|
27
|
+
if (!z.string().email().safeParse(data.identifier).success) {
|
|
28
|
+
ctx.addIssue({
|
|
29
|
+
code: z.ZodIssueCode.custom,
|
|
30
|
+
message: "Must be a valid email address",
|
|
31
|
+
path: ["identifier"],
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
//# sourceMappingURL=invite_member_form.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invite_member_form.js","sourceRoot":"","sources":["../../src/organizations/invite_member_form.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAuB,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9E,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,OAAO,EAAE,KAAK,CAAU,CAAC;AAGhE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC;KACpC,MAAM,CAAC;IACN,eAAe,EAAE,oBAAoB;IACrC,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC;IAC1C,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;CAC7D,CAAC;KACD,QAAQ,CAAC;IACR,eAAe,EAAE,IAAI;IACrB,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,IAAI;CACjB,CAAC;KACD,MAAM,EAAE;KACR,WAAW,CAAC,CAAC,IAAI,EAAE,GAAoB,EAAE,EAAE;IAC1C,IAAI,IAAI,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC;YAC1D,GAAG,CAAC,QAAQ,CAAC;gBACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;gBAC3B,OAAO,EAAE,sBAAsB;gBAC/B,IAAI,EAAE,CAAC,YAAY,CAAC;aACrB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;SAAM,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC;QACvC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC;YAC3D,GAAG,CAAC,QAAQ,CAAC;gBACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;gBAC3B,OAAO,EAAE,+BAA+B;gBACxC,IAAI,EAAE,CAAC,YAAY,CAAC;aACrB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export declare const MINIMUM_ORGANIZATION_ID_LENGTH: 4;
|
|
2
|
-
export declare const MAXIMUM_ORGANIZATION_ID_LENGTH:
|
|
2
|
+
export declare const MAXIMUM_ORGANIZATION_ID_LENGTH: 32;
|
|
3
3
|
export declare const MINIMUM_ORGANIZATION_NAME_LENGTH: 1;
|
|
4
4
|
export declare const MAXIMUM_ORGANIZATION_NAME_LENGTH: 64;
|
|
5
|
+
export declare const MAXIMUM_USER_ORGANIZATIONS: 10;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export const MINIMUM_ORGANIZATION_ID_LENGTH = 4;
|
|
2
|
-
export const MAXIMUM_ORGANIZATION_ID_LENGTH =
|
|
2
|
+
export const MAXIMUM_ORGANIZATION_ID_LENGTH = 32;
|
|
3
3
|
export const MINIMUM_ORGANIZATION_NAME_LENGTH = 1;
|
|
4
4
|
export const MAXIMUM_ORGANIZATION_NAME_LENGTH = 64;
|
|
5
|
+
export const MAXIMUM_USER_ORGANIZATIONS = 10;
|
|
5
6
|
//# sourceMappingURL=organization_constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"organization_constants.js","sourceRoot":"","sources":["../../src/organizations/organization_constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAA2B,CAAC;AAC1E,MAAM,CAAC,MAAM,8BAA8B,GAAG,EAA4B,CAAC;AAE3E,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAA2B,CAAC;AAC5E,MAAM,CAAC,MAAM,gCAAgC,GAAG,EAA4B,CAAC"}
|
|
1
|
+
{"version":3,"file":"organization_constants.js","sourceRoot":"","sources":["../../src/organizations/organization_constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAA2B,CAAC;AAC1E,MAAM,CAAC,MAAM,8BAA8B,GAAG,EAA4B,CAAC;AAE3E,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAA2B,CAAC;AAC5E,MAAM,CAAC,MAAM,gCAAgC,GAAG,EAA4B,CAAC;AAE7E,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAA4B,CAAC"}
|
|
@@ -3,13 +3,16 @@ export declare const organizationDefinitionSchema: z.ZodObject<{
|
|
|
3
3
|
organization_id: z.ZodEffects<z.ZodString, string, string>;
|
|
4
4
|
name: z.ZodString;
|
|
5
5
|
created_at: z.ZodNumber;
|
|
6
|
+
created_by: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
6
7
|
}, "strict", z.ZodTypeAny, {
|
|
7
8
|
organization_id: string;
|
|
8
9
|
name: string;
|
|
9
10
|
created_at: number;
|
|
11
|
+
created_by?: string | null | undefined;
|
|
10
12
|
}, {
|
|
11
13
|
organization_id: string;
|
|
12
14
|
name: string;
|
|
13
15
|
created_at: number;
|
|
16
|
+
created_by?: string | null | undefined;
|
|
14
17
|
}>;
|
|
15
18
|
export type OrganizationDefinition = z.infer<typeof organizationDefinitionSchema>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"organization_definition.js","sourceRoot":"","sources":["../../src/organizations/organization_definition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EACL,gCAAgC,EAChC,gCAAgC,GACjC,MAAM,0BAA0B,CAAC;AAElC,MAAM,sBAAsB,GAAG,CAAC;KAC7B,MAAM,EAAE;KACR,GAAG,CACF,gCAAgC,EAChC,sCAAsC,gCAAgC,aAAa,gCAAgC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,CAC5I;KACA,GAAG,CACF,gCAAgC,EAChC,4CAA4C,gCAAgC,mBAAmB,CAChG,CAAC;AAEJ,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC;KAC1C,MAAM,CAAC;IACN,eAAe,EAAE,oBAAoB;IACrC,IAAI,EAAE,sBAAsB;IAC5B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"file":"organization_definition.js","sourceRoot":"","sources":["../../src/organizations/organization_definition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EACL,gCAAgC,EAChC,gCAAgC,GACjC,MAAM,0BAA0B,CAAC;AAElC,MAAM,sBAAsB,GAAG,CAAC;KAC7B,MAAM,EAAE;KACR,GAAG,CACF,gCAAgC,EAChC,sCAAsC,gCAAgC,aAAa,gCAAgC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,CAC5I;KACA,GAAG,CACF,gCAAgC,EAChC,4CAA4C,gCAAgC,mBAAmB,CAChG,CAAC;AAEJ,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC;KAC1C,MAAM,CAAC;IACN,eAAe,EAAE,oBAAoB;IACrC,IAAI,EAAE,sBAAsB;IAC5B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACpD,CAAC;KACD,QAAQ,CAAC;IACR,eAAe,EAAE,IAAI;IACrB,IAAI,EAAE,IAAI;IACV,UAAU,EAAE,IAAI;CACjB,CAAC;KACD,MAAM,EAAE,CAAC"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { type OrganizationID } from "./organization_id";
|
|
3
|
+
export declare const organizationInvitationStatusTypes: readonly ["pending", "accepted", "declined", "revoked", "expired"];
|
|
4
|
+
export type OrganizationInvitationStatus = (typeof organizationInvitationStatusTypes)[number];
|
|
5
|
+
export declare const organizationInvitationStatusSchema: z.ZodEnum<["pending", "accepted", "declined", "revoked", "expired"]>;
|
|
6
|
+
/**
|
|
7
|
+
* Organization invitation as returned by the API for display in the UI.
|
|
8
|
+
* Includes display fields like organization_name and inviter_email.
|
|
9
|
+
*/
|
|
10
|
+
export interface OrganizationInvitation {
|
|
11
|
+
invitation_id: string;
|
|
12
|
+
organization_id: OrganizationID;
|
|
13
|
+
organization_name?: string;
|
|
14
|
+
inviter_uid: string;
|
|
15
|
+
inviter_email?: string;
|
|
16
|
+
invitee_uid: string;
|
|
17
|
+
invitee_email?: string;
|
|
18
|
+
status: OrganizationInvitationStatus;
|
|
19
|
+
created_at: number;
|
|
20
|
+
expires_at: number;
|
|
21
|
+
responded_at?: number | null;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Pending invitation for a user, with display fields for the account page.
|
|
25
|
+
*/
|
|
26
|
+
export interface UserPendingInvitation {
|
|
27
|
+
invitation_id: string;
|
|
28
|
+
organization_id: OrganizationID;
|
|
29
|
+
organization_name: string;
|
|
30
|
+
inviter_uid: string;
|
|
31
|
+
inviter_email: string;
|
|
32
|
+
status: OrganizationInvitationStatus;
|
|
33
|
+
created_at: number;
|
|
34
|
+
expires_at: number;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Invitation with user data, for displaying in the organization's sent invitations list.
|
|
38
|
+
*/
|
|
39
|
+
export interface OrganizationInvitationWithUserData {
|
|
40
|
+
invitation_id: string;
|
|
41
|
+
organization_id: OrganizationID;
|
|
42
|
+
inviter_uid: string;
|
|
43
|
+
inviter_email: string;
|
|
44
|
+
invitee_uid: string;
|
|
45
|
+
invitee_email: string;
|
|
46
|
+
status: OrganizationInvitationStatus;
|
|
47
|
+
created_at: number;
|
|
48
|
+
expires_at: number;
|
|
49
|
+
responded_at?: number | null;
|
|
50
|
+
}
|
|
51
|
+
export declare const organizationInvitationSchema: z.ZodObject<{
|
|
52
|
+
invitation_id: z.ZodString;
|
|
53
|
+
organization_id: z.ZodEffects<z.ZodString, string, string>;
|
|
54
|
+
organization_name: z.ZodOptional<z.ZodString>;
|
|
55
|
+
inviter_uid: z.ZodString;
|
|
56
|
+
inviter_email: z.ZodOptional<z.ZodString>;
|
|
57
|
+
invitee_uid: z.ZodString;
|
|
58
|
+
invitee_email: z.ZodOptional<z.ZodString>;
|
|
59
|
+
status: z.ZodEnum<["pending", "accepted", "declined", "revoked", "expired"]>;
|
|
60
|
+
created_at: z.ZodNumber;
|
|
61
|
+
expires_at: z.ZodNumber;
|
|
62
|
+
responded_at: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
63
|
+
}, "strip", z.ZodTypeAny, {
|
|
64
|
+
status: "pending" | "accepted" | "declined" | "revoked" | "expired";
|
|
65
|
+
expires_at: number;
|
|
66
|
+
organization_id: string;
|
|
67
|
+
created_at: number;
|
|
68
|
+
invitation_id: string;
|
|
69
|
+
inviter_uid: string;
|
|
70
|
+
invitee_uid: string;
|
|
71
|
+
organization_name?: string | undefined;
|
|
72
|
+
inviter_email?: string | undefined;
|
|
73
|
+
invitee_email?: string | undefined;
|
|
74
|
+
responded_at?: number | null | undefined;
|
|
75
|
+
}, {
|
|
76
|
+
status: "pending" | "accepted" | "declined" | "revoked" | "expired";
|
|
77
|
+
expires_at: number;
|
|
78
|
+
organization_id: string;
|
|
79
|
+
created_at: number;
|
|
80
|
+
invitation_id: string;
|
|
81
|
+
inviter_uid: string;
|
|
82
|
+
invitee_uid: string;
|
|
83
|
+
organization_name?: string | undefined;
|
|
84
|
+
inviter_email?: string | undefined;
|
|
85
|
+
invitee_email?: string | undefined;
|
|
86
|
+
responded_at?: number | null | undefined;
|
|
87
|
+
}>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { organizationIdSchema } from "./organization_id";
|
|
3
|
+
export const organizationInvitationStatusTypes = [
|
|
4
|
+
"pending",
|
|
5
|
+
"accepted",
|
|
6
|
+
"declined",
|
|
7
|
+
"revoked",
|
|
8
|
+
"expired",
|
|
9
|
+
];
|
|
10
|
+
export const organizationInvitationStatusSchema = z.enum(organizationInvitationStatusTypes);
|
|
11
|
+
export const organizationInvitationSchema = z.object({
|
|
12
|
+
invitation_id: z.string().uuid(),
|
|
13
|
+
organization_id: organizationIdSchema,
|
|
14
|
+
organization_name: z.string().optional(),
|
|
15
|
+
inviter_uid: z.string().uuid(),
|
|
16
|
+
inviter_email: z.string().email().optional(),
|
|
17
|
+
invitee_uid: z.string().uuid(),
|
|
18
|
+
invitee_email: z.string().email().optional(),
|
|
19
|
+
status: organizationInvitationStatusSchema,
|
|
20
|
+
created_at: z.number().positive(),
|
|
21
|
+
expires_at: z.number().positive(),
|
|
22
|
+
responded_at: z.number().positive().nullable().optional(),
|
|
23
|
+
});
|
|
24
|
+
//# sourceMappingURL=organization_invitation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"organization_invitation.js","sourceRoot":"","sources":["../../src/organizations/organization_invitation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAuB,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9E,MAAM,CAAC,MAAM,iCAAiC,GAAG;IAC/C,SAAS;IACT,UAAU;IACV,UAAU;IACV,SAAS;IACT,SAAS;CACD,CAAC;AAKX,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;AAkD5F,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IAChC,eAAe,EAAE,oBAAoB;IACrC,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACxC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IAC9B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;IAC5C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IAC9B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;IAC5C,MAAM,EAAE,kCAAkC;IAC1C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC1D,CAAC,CAAC"}
|
|
@@ -207,9 +207,9 @@ export declare const requestTokensResultSchema: z.ZodUnion<[z.ZodObject<{
|
|
|
207
207
|
}>>;
|
|
208
208
|
userData: z.ZodOptional<z.ZodEffects<z.ZodObject<{
|
|
209
209
|
created_at: z.ZodNumber;
|
|
210
|
+
email: z.ZodString;
|
|
210
211
|
uid: z.ZodString;
|
|
211
212
|
sub: z.ZodString;
|
|
212
|
-
email: z.ZodString;
|
|
213
213
|
email_verified: z.ZodOptional<z.ZodBoolean>;
|
|
214
214
|
admin: z.ZodOptional<z.ZodBoolean>;
|
|
215
215
|
phone_number: z.ZodOptional<z.ZodString>;
|
|
@@ -218,9 +218,9 @@ export declare const requestTokensResultSchema: z.ZodUnion<[z.ZodObject<{
|
|
|
218
218
|
invite_code: z.ZodOptional<z.ZodString>;
|
|
219
219
|
}, "strict", z.ZodTypeAny, {
|
|
220
220
|
created_at: number;
|
|
221
|
+
email: string;
|
|
221
222
|
uid: string;
|
|
222
223
|
sub: string;
|
|
223
|
-
email: string;
|
|
224
224
|
email_verified?: boolean | undefined;
|
|
225
225
|
admin?: boolean | undefined;
|
|
226
226
|
phone_number?: string | undefined;
|
|
@@ -229,9 +229,9 @@ export declare const requestTokensResultSchema: z.ZodUnion<[z.ZodObject<{
|
|
|
229
229
|
invite_code?: string | undefined;
|
|
230
230
|
}, {
|
|
231
231
|
created_at: number;
|
|
232
|
+
email: string;
|
|
232
233
|
uid: string;
|
|
233
234
|
sub: string;
|
|
234
|
-
email: string;
|
|
235
235
|
email_verified?: boolean | undefined;
|
|
236
236
|
admin?: boolean | undefined;
|
|
237
237
|
phone_number?: string | undefined;
|
|
@@ -240,9 +240,9 @@ export declare const requestTokensResultSchema: z.ZodUnion<[z.ZodObject<{
|
|
|
240
240
|
invite_code?: string | undefined;
|
|
241
241
|
}>, {
|
|
242
242
|
created_at: number;
|
|
243
|
+
email: string;
|
|
243
244
|
uid: string;
|
|
244
245
|
sub: string;
|
|
245
|
-
email: string;
|
|
246
246
|
email_verified?: boolean | undefined;
|
|
247
247
|
admin?: boolean | undefined;
|
|
248
248
|
phone_number?: string | undefined;
|
|
@@ -251,9 +251,9 @@ export declare const requestTokensResultSchema: z.ZodUnion<[z.ZodObject<{
|
|
|
251
251
|
invite_code?: string | undefined;
|
|
252
252
|
}, {
|
|
253
253
|
created_at: number;
|
|
254
|
+
email: string;
|
|
254
255
|
uid: string;
|
|
255
256
|
sub: string;
|
|
256
|
-
email: string;
|
|
257
257
|
email_verified?: boolean | undefined;
|
|
258
258
|
admin?: boolean | undefined;
|
|
259
259
|
phone_number?: string | undefined;
|
|
@@ -289,9 +289,9 @@ export declare const requestTokensResultSchema: z.ZodUnion<[z.ZodObject<{
|
|
|
289
289
|
} | undefined;
|
|
290
290
|
userData?: {
|
|
291
291
|
created_at: number;
|
|
292
|
+
email: string;
|
|
292
293
|
uid: string;
|
|
293
294
|
sub: string;
|
|
294
|
-
email: string;
|
|
295
295
|
email_verified?: boolean | undefined;
|
|
296
296
|
admin?: boolean | undefined;
|
|
297
297
|
phone_number?: string | undefined;
|
|
@@ -327,9 +327,9 @@ export declare const requestTokensResultSchema: z.ZodUnion<[z.ZodObject<{
|
|
|
327
327
|
} | undefined;
|
|
328
328
|
userData?: {
|
|
329
329
|
created_at: number;
|
|
330
|
+
email: string;
|
|
330
331
|
uid: string;
|
|
331
332
|
sub: string;
|
|
332
|
-
email: string;
|
|
333
333
|
email_verified?: boolean | undefined;
|
|
334
334
|
admin?: boolean | undefined;
|
|
335
335
|
phone_number?: string | undefined;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export declare const userDataSchema: z.ZodEffects<z.ZodObject<{
|
|
3
3
|
created_at: z.ZodNumber;
|
|
4
|
+
email: z.ZodString;
|
|
4
5
|
uid: z.ZodString;
|
|
5
6
|
sub: z.ZodString;
|
|
6
|
-
email: z.ZodString;
|
|
7
7
|
email_verified: z.ZodOptional<z.ZodBoolean>;
|
|
8
8
|
admin: z.ZodOptional<z.ZodBoolean>;
|
|
9
9
|
phone_number: z.ZodOptional<z.ZodString>;
|
|
@@ -12,9 +12,9 @@ export declare const userDataSchema: z.ZodEffects<z.ZodObject<{
|
|
|
12
12
|
invite_code: z.ZodOptional<z.ZodString>;
|
|
13
13
|
}, "strict", z.ZodTypeAny, {
|
|
14
14
|
created_at: number;
|
|
15
|
+
email: string;
|
|
15
16
|
uid: string;
|
|
16
17
|
sub: string;
|
|
17
|
-
email: string;
|
|
18
18
|
email_verified?: boolean | undefined;
|
|
19
19
|
admin?: boolean | undefined;
|
|
20
20
|
phone_number?: string | undefined;
|
|
@@ -23,9 +23,9 @@ export declare const userDataSchema: z.ZodEffects<z.ZodObject<{
|
|
|
23
23
|
invite_code?: string | undefined;
|
|
24
24
|
}, {
|
|
25
25
|
created_at: number;
|
|
26
|
+
email: string;
|
|
26
27
|
uid: string;
|
|
27
28
|
sub: string;
|
|
28
|
-
email: string;
|
|
29
29
|
email_verified?: boolean | undefined;
|
|
30
30
|
admin?: boolean | undefined;
|
|
31
31
|
phone_number?: string | undefined;
|
|
@@ -34,9 +34,9 @@ export declare const userDataSchema: z.ZodEffects<z.ZodObject<{
|
|
|
34
34
|
invite_code?: string | undefined;
|
|
35
35
|
}>, {
|
|
36
36
|
created_at: number;
|
|
37
|
+
email: string;
|
|
37
38
|
uid: string;
|
|
38
39
|
sub: string;
|
|
39
|
-
email: string;
|
|
40
40
|
email_verified?: boolean | undefined;
|
|
41
41
|
admin?: boolean | undefined;
|
|
42
42
|
phone_number?: string | undefined;
|
|
@@ -45,9 +45,9 @@ export declare const userDataSchema: z.ZodEffects<z.ZodObject<{
|
|
|
45
45
|
invite_code?: string | undefined;
|
|
46
46
|
}, {
|
|
47
47
|
created_at: number;
|
|
48
|
+
email: string;
|
|
48
49
|
uid: string;
|
|
49
50
|
sub: string;
|
|
50
|
-
email: string;
|
|
51
51
|
email_verified?: boolean | undefined;
|
|
52
52
|
admin?: boolean | undefined;
|
|
53
53
|
phone_number?: string | undefined;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@schemavaults/auth-common",
|
|
3
3
|
"description": "Types and utility functions for authentication and authorization",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.8.4",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"private": false,
|
|
7
7
|
"repository": {
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"types": "dist/index.d.ts",
|
|
15
15
|
"dependencies": {
|
|
16
16
|
"zod": "3.23.8",
|
|
17
|
-
"@schemavaults/app-definitions": "0.6.
|
|
17
|
+
"@schemavaults/app-definitions": "0.6.12",
|
|
18
18
|
"crypto-js": "4.2.0"
|
|
19
19
|
},
|
|
20
20
|
"scripts": {
|
|
@@ -23,7 +23,8 @@
|
|
|
23
23
|
"cleanup:compiled-tests-output": "find ./dist -type f \\( -name \"*.test.js\" -o -name \"*.test.js.map\" -o -name \"*.test.d.ts\" \\) -delete",
|
|
24
24
|
"cleanup": "bun run cleanup:compiled-tests-output",
|
|
25
25
|
"postbuild": "bun run cleanup",
|
|
26
|
-
"lint": "eslint src --ext .ts,.tsx"
|
|
26
|
+
"lint": "eslint src --ext .ts,.tsx",
|
|
27
|
+
"typecheck": "tsc --project tsconfig.json --noEmit"
|
|
27
28
|
},
|
|
28
29
|
"devDependencies": {
|
|
29
30
|
"typescript": "5.8.3",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"decode-first-of-several-jwts.js","sourceRoot":"","sources":["../../src/middleware/decode-first-of-several-jwts.ts"],"names":[],"mappings":"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"}
|