diff --git a/apps/basket/src/lib/event-service.ts b/apps/basket/src/lib/event-service.ts index b3f4ea34e..7e4468fa0 100644 --- a/apps/basket/src/lib/event-service.ts +++ b/apps/basket/src/lib/event-service.ts @@ -201,13 +201,20 @@ export async function insertOutgoingLink( const now = Date.now(); + const salt = await getDailySalt(); + + let anonymousId = sanitizeString( + linkData.anonymousId, + VALIDATION_LIMITS.SHORT_STRING_MAX_LENGTH + ); + if (anonymousId) { + anonymousId = saltAnonymousId(anonymousId, salt); + } + const outgoingLinkEvent: CustomOutgoingLink = { id: randomUUID(), client_id: clientId, - anonymous_id: sanitizeString( - linkData.anonymousId, - VALIDATION_LIMITS.SHORT_STRING_MAX_LENGTH - ), + anonymous_id: anonymousId, session_id: validateSessionId(linkData.sessionId), href: sanitizeString(linkData.href, VALIDATION_LIMITS.PATH_MAX_LENGTH), text: sanitizeString(linkData.text, VALIDATION_LIMITS.TEXT_MAX_LENGTH), diff --git a/apps/basket/src/routes/basket.ts b/apps/basket/src/routes/basket.ts index 0c7b24778..acbfb2c82 100644 --- a/apps/basket/src/routes/basket.ts +++ b/apps/basket/src/routes/basket.ts @@ -71,7 +71,9 @@ function processTrackEventData( trackData.anonymousId, VALIDATION_LIMITS.SHORT_STRING_MAX_LENGTH ); - anonymousId = saltAnonymousId(anonymousId, salt); + if (anonymousId) { + anonymousId = saltAnonymousId(anonymousId, salt); + } return { id: randomUUID(), @@ -141,19 +143,26 @@ function processTrackEventData( }); } -function processOutgoingLinkData( +async function processOutgoingLinkData( linkData: any, clientId: string -): CustomOutgoingLink { +): Promise { const timestamp = parseTimestamp(linkData.timestamp); + const salt = await getDailySalt(); + + let anonymousId = sanitizeString( + linkData.anonymousId, + VALIDATION_LIMITS.SHORT_STRING_MAX_LENGTH + ); + if (anonymousId) { + anonymousId = saltAnonymousId(anonymousId, salt); + } + return { id: randomUUID(), client_id: clientId, - anonymous_id: sanitizeString( - linkData.anonymousId, - VALIDATION_LIMITS.SHORT_STRING_MAX_LENGTH - ), + anonymous_id: anonymousId, session_id: validateSessionId(linkData.sessionId), href: sanitizeString(linkData.href, VALIDATION_LIMITS.PATH_MAX_LENGTH), text: sanitizeString(linkData.text, VALIDATION_LIMITS.TEXT_MAX_LENGTH),