Browse Source

fix: Fix onboard-meeting-members deep link with groupId.

This was cherry-picked from master-patch
electron-build-capacitor-config
Trent Larson 3 weeks ago
parent
commit
9ea2f96106
  1. 36
      src/services/deepLinks.ts

36
src/services/deepLinks.ts

@ -74,13 +74,13 @@ export class DeepLinkHandler {
* @throws {DeepLinkError} If validation fails or route is invalid * @throws {DeepLinkError} If validation fails or route is invalid
*/ */
async handleDeepLink(url: string): Promise<void> { async handleDeepLink(url: string): Promise<void> {
logger.info(`[DeepLink] 🚀 Starting deeplink processing for URL: ${url}`); logger.debug(`[DeepLink] 🚀 Starting deeplink processing for URL: ${url}`);
try { try {
logger.info(`[DeepLink] 📍 Parsing URL: ${url}`); logger.debug(`[DeepLink] 📍 Parsing URL: ${url}`);
const { path, params, query } = this.parseDeepLink(url); const { path, params, query } = this.parseDeepLink(url);
logger.info(`[DeepLink] ✅ URL parsed successfully:`, { logger.debug(`[DeepLink] ✅ URL parsed successfully:`, {
path, path,
params: Object.keys(params), params: Object.keys(params),
query: Object.keys(query), query: Object.keys(query),
@ -93,10 +93,10 @@ export class DeepLinkHandler {
Object.entries(params).map(([key, value]) => [key, value ?? ""]), Object.entries(params).map(([key, value]) => [key, value ?? ""]),
); );
logger.info(`[DeepLink] 🧹 Parameters sanitized:`, sanitizedParams); logger.debug(`[DeepLink] 🧹 Parameters sanitized:`, sanitizedParams);
await this.validateAndRoute(path, sanitizedParams, query); await this.validateAndRoute(path, sanitizedParams, query);
logger.info(`[DeepLink] 🎯 Deeplink processing completed successfully`); logger.debug(`[DeepLink] 🎯 Deeplink processing completed successfully`);
} catch (error) { } catch (error) {
logger.error(`[DeepLink] ❌ Deeplink processing failed:`, { logger.error(`[DeepLink] ❌ Deeplink processing failed:`, {
url, url,
@ -159,7 +159,7 @@ export class DeepLinkHandler {
logger.debug(`[DeepLink] 🔗 Query parameters extracted:`, query); logger.debug(`[DeepLink] 🔗 Query parameters extracted:`, query);
} }
logger.info(`[DeepLink] ✅ Parse completed:`, { logger.debug(`[DeepLink] ✅ Parse completed:`, {
routePath, routePath,
pathParams: pathParams.length, pathParams: pathParams.length,
queryParams: Object.keys(query).length, queryParams: Object.keys(query).length,
@ -186,7 +186,7 @@ export class DeepLinkHandler {
params: Record<string, string>, params: Record<string, string>,
query: Record<string, string>, query: Record<string, string>,
): Promise<void> { ): Promise<void> {
logger.info( logger.debug(
`[DeepLink] 🎯 Starting validation and routing for path: ${path}`, `[DeepLink] 🎯 Starting validation and routing for path: ${path}`,
); );
@ -197,11 +197,11 @@ export class DeepLinkHandler {
logger.debug(`[DeepLink] 🔍 Validating route path: ${path}`); logger.debug(`[DeepLink] 🔍 Validating route path: ${path}`);
// Validate route exists // Validate route exists
const validRoute = routeSchema.parse(path) as DeepLinkRoute; const validRoute = routeSchema.parse(path) as DeepLinkRoute;
logger.info(`[DeepLink] ✅ Route validation passed: ${validRoute}`); logger.debug(`[DeepLink] ✅ Route validation passed: ${validRoute}`);
// Get route configuration // Get route configuration
const routeConfig = ROUTE_MAP[validRoute]; const routeConfig = ROUTE_MAP[validRoute];
logger.info(`[DeepLink] 📋 Route config retrieved:`, routeConfig); logger.debug(`[DeepLink] 📋 Route config retrieved:`, routeConfig);
if (!routeConfig) { if (!routeConfig) {
logger.error(`[DeepLink] ❌ No route config found for: ${validRoute}`); logger.error(`[DeepLink] ❌ No route config found for: ${validRoute}`);
@ -209,7 +209,7 @@ export class DeepLinkHandler {
} }
routeName = routeConfig.name; routeName = routeConfig.name;
logger.info(`[DeepLink] 🎯 Route name resolved: ${routeName}`); logger.debug(`[DeepLink] 🎯 Route name resolved: ${routeName}`);
} catch (error) { } catch (error) {
logger.error(`[DeepLink] ❌ Route validation failed:`, { logger.error(`[DeepLink] ❌ Route validation failed:`, {
path, path,
@ -228,14 +228,14 @@ export class DeepLinkHandler {
}, },
}); });
logger.info( logger.debug(
`[DeepLink] 🔄 Redirected to error page for invalid route: ${path}`, `[DeepLink] 🔄 Redirected to error page for invalid route: ${path}`,
); );
return; return;
} }
// Continue with parameter validation // Continue with parameter validation
logger.info( logger.debug(
`[DeepLink] 🔍 Starting parameter validation for route: ${routeName}`, `[DeepLink] 🔍 Starting parameter validation for route: ${routeName}`,
); );
@ -258,7 +258,7 @@ export class DeepLinkHandler {
if (pathSchema) { if (pathSchema) {
logger.debug(`[DeepLink] 🔍 Validating path parameters:`, params); logger.debug(`[DeepLink] 🔍 Validating path parameters:`, params);
validatedPathParams = await pathSchema.parseAsync(params); validatedPathParams = await pathSchema.parseAsync(params);
logger.info( logger.debug(
`[DeepLink] ✅ Path parameters validated:`, `[DeepLink] ✅ Path parameters validated:`,
validatedPathParams, validatedPathParams,
); );
@ -270,7 +270,7 @@ export class DeepLinkHandler {
if (querySchema) { if (querySchema) {
logger.debug(`[DeepLink] 🔍 Validating query parameters:`, query); logger.debug(`[DeepLink] 🔍 Validating query parameters:`, query);
validatedQueryParams = await querySchema.parseAsync(query); validatedQueryParams = await querySchema.parseAsync(query);
logger.info( logger.debug(
`[DeepLink] ✅ Query parameters validated:`, `[DeepLink] ✅ Query parameters validated:`,
validatedQueryParams, validatedQueryParams,
); );
@ -299,7 +299,7 @@ export class DeepLinkHandler {
}, },
}); });
logger.info( logger.debug(
`[DeepLink] 🔄 Redirected to error page for invalid parameters`, `[DeepLink] 🔄 Redirected to error page for invalid parameters`,
); );
return; return;
@ -307,7 +307,7 @@ export class DeepLinkHandler {
// Attempt navigation // Attempt navigation
try { try {
logger.info(`[DeepLink] 🚀 Attempting navigation:`, { logger.debug(`[DeepLink] 🚀 Attempting navigation:`, {
routeName, routeName,
pathParams: validatedPathParams, pathParams: validatedPathParams,
queryParams: validatedQueryParams, queryParams: validatedQueryParams,
@ -319,7 +319,7 @@ export class DeepLinkHandler {
query: validatedQueryParams, query: validatedQueryParams,
}); });
logger.info(`[DeepLink] ✅ Navigation successful to: ${routeName}`); logger.debug(`[DeepLink] ✅ Navigation successful to: ${routeName}`);
} catch (error) { } catch (error) {
logger.error(`[DeepLink] ❌ Navigation failed:`, { logger.error(`[DeepLink] ❌ Navigation failed:`, {
routeName, routeName,
@ -342,7 +342,7 @@ export class DeepLinkHandler {
}, },
}); });
logger.info( logger.debug(
`[DeepLink] 🔄 Redirected to error page for navigation failure`, `[DeepLink] 🔄 Redirected to error page for navigation failure`,
); );
} }

Loading…
Cancel
Save