Skip to content

Commit d84d7e3

Browse files
authored
chore(shared): Gracefully handle missing reverification error metadata (#4636)
1 parent fe9e147 commit d84d7e3

File tree

4 files changed

+12
-3
lines changed

4 files changed

+12
-3
lines changed

.changeset/many-bees-mate.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@clerk/shared': patch
3+
---
4+
5+
Gracefully handle missing reverification error metadata

packages/shared/src/authorization-errors.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ type ReverificationError<M extends { metadata?: any } = { metadata: unknown }> =
1616
const reverificationError = <MC extends ReverificationConfig>(
1717
missingConfig?: MC,
1818
): ReverificationError<{
19-
metadata: {
19+
metadata?: {
2020
reverification?: MC;
2121
};
2222
}> => ({

packages/shared/src/authorization.ts

+5-1
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,11 @@ const checkOrgAuthorization: CheckOrgAuthorization = (params, options) => {
7979
return null;
8080
};
8181

82-
const validateReverificationConfig = (config: ReverificationConfig | undefined) => {
82+
const validateReverificationConfig = (config: ReverificationConfig | undefined | null) => {
83+
if (!config) {
84+
return false;
85+
}
86+
8387
const convertConfigToObject = (config: ReverificationConfig) => {
8488
if (typeof config === 'string') {
8589
return TYPES_TO_OBJECTS[config];

packages/shared/src/react/hooks/useReverification.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ function createReverificationHandler(params: CreateReverificationHandlerParams)
5252
*/
5353
const resolvers = createDeferredPromise();
5454

55-
const isValidMetadata = validateReverificationConfig(result.clerk_error.metadata.reverification);
55+
const isValidMetadata = validateReverificationConfig(result.clerk_error.metadata?.reverification);
5656

5757
/**
5858
* On success resolve the pending promise

0 commit comments

Comments
 (0)