@@ -6,7 +6,9 @@ import { UserDBScheme } from '@hawk.so/types';
66 * @returns boolean - true if valid, false if invalid
77 */
88export function validateUtmParams ( utm : UserDBScheme [ 'utm' ] ) : boolean {
9- if ( ! utm ) return true ;
9+ if ( ! utm ) {
10+ return true ;
11+ }
1012
1113 // Check if utm is an object
1214 if ( typeof utm !== 'object' || Array . isArray ( utm ) ) {
@@ -40,7 +42,7 @@ export function validateUtmParams(utm: UserDBScheme['utm']): boolean {
4042 }
4143
4244 // Check for valid characters - only allow alphanumeric, spaces, hyphens, underscores, dots
43- if ( ! / ^ [ a - z A - Z 0 - 9 \s \- _ \ .] + $ / . test ( value ) ) {
45+ if ( ! / ^ [ a - z A - Z 0 - 9 \s \- _ . ] + $ / . test ( value ) ) {
4446 return false ;
4547 }
4648 }
@@ -55,7 +57,9 @@ export function validateUtmParams(utm: UserDBScheme['utm']): boolean {
5557 * @returns sanitized UTM parameters or undefined if invalid
5658 */
5759export function sanitizeUtmParams ( utm : UserDBScheme [ 'utm' ] ) : UserDBScheme [ 'utm' ] {
58- if ( ! utm ) return undefined ;
60+ if ( ! utm ) {
61+ return undefined ;
62+ }
5963
6064 const utmKeys = [ 'source' , 'medium' , 'campaign' , 'content' , 'term' ] ;
6165 const sanitized : UserDBScheme [ 'utm' ] = { } ;
@@ -64,7 +68,7 @@ export function sanitizeUtmParams(utm: UserDBScheme['utm']): UserDBScheme['utm']
6468 if ( utmKeys . includes ( key ) && value && typeof value === 'string' ) {
6569 // Sanitize value: keep only allowed characters and limit length
6670 const cleanValue = value
67- . replace ( / [ ^ a - z A - Z 0 - 9 \s \- _ \ .] / g, '' )
71+ . replace ( / [ ^ a - z A - Z 0 - 9 \s \- _ . ] / g, '' )
6872 . trim ( )
6973 . substring ( 0 , 200 ) ;
7074
0 commit comments