@@ -2,8 +2,7 @@ import { InputField } from '@segment/actions-core/destination-kit/types'
2
2
import { US_STATE_CODES , COUNTRY_CODES } from './constants'
3
3
import { Payload } from './addToCart/generated-types'
4
4
import isEmpty from 'lodash/isEmpty'
5
- import { processHashing } from '../../lib/hashing-utils'
6
- import { Features } from '@segment/actions-core'
5
+ import { processHashingV2 } from '../../lib/hashing-utils'
7
6
8
7
// Implementation of Facebook user data object
9
8
// https://developers.facebook.com/docs/marketing-api/conversions-api/parameters/customer-information-parameters
@@ -193,16 +192,14 @@ type UserData = Pick<Payload, 'user_data'>
193
192
194
193
const isHashedInformation = ( information : string ) : boolean => new RegExp ( / [ 0 - 9 a b c d e f ] { 64 } / gi) . test ( information )
195
194
196
- const hash = ( value : string | string [ ] | undefined , features : Features ) : string | string [ ] | undefined => {
195
+ const hash = ( value : string | string [ ] | undefined ) : string | string [ ] | undefined => {
197
196
if ( value === undefined || ! value . length ) return
198
197
199
198
if ( typeof value == 'string' ) {
200
- return processHashing ( value , 'sha256' , 'hex' , features || { } , 'actions-facebook-conversions-api ')
199
+ return processHashingV2 ( value , 'sha256' , 'hex' )
201
200
}
202
201
203
- return value . map ( ( el : string ) =>
204
- processHashing ( el , 'sha256' , 'hex' , features || { } , 'actions-facebook-conversions-api' )
205
- )
202
+ return value . map ( ( el : string ) => processHashingV2 ( el , 'sha256' , 'hex' ) )
206
203
}
207
204
208
205
/**
@@ -276,21 +273,21 @@ export const normalize_user_data = (payload: UserData) => {
276
273
}
277
274
}
278
275
279
- export const hash_user_data = ( payload : UserData , features : Features ) : Object => {
276
+ export const hash_user_data = ( payload : UserData ) : Object => {
280
277
normalize_user_data ( payload )
281
278
// Hashing this is recommended but not required
282
279
return {
283
- em : hash ( payload . user_data ?. email , features ) ,
284
- ph : hash ( payload . user_data ?. phone , features ) ,
285
- ge : hash ( payload . user_data ?. gender , features ) ,
286
- db : hash ( payload . user_data ?. dateOfBirth , features ) ,
287
- ln : hash ( payload . user_data ?. lastName , features ) ,
288
- fn : hash ( payload . user_data ?. firstName , features ) ,
289
- ct : hash ( payload . user_data ?. city , features ) ,
290
- st : hash ( payload . user_data ?. state , features ) ,
291
- zp : hash ( payload . user_data ?. zip , features ) ,
292
- country : hash ( payload . user_data ?. country , features ) ,
293
- external_id : hash ( payload . user_data ?. externalId , features ) , //to provide support for externalId as string and array both
280
+ em : hash ( payload . user_data ?. email ) ,
281
+ ph : hash ( payload . user_data ?. phone ) ,
282
+ ge : hash ( payload . user_data ?. gender ) ,
283
+ db : hash ( payload . user_data ?. dateOfBirth ) ,
284
+ ln : hash ( payload . user_data ?. lastName ) ,
285
+ fn : hash ( payload . user_data ?. firstName ) ,
286
+ ct : hash ( payload . user_data ?. city ) ,
287
+ st : hash ( payload . user_data ?. state ) ,
288
+ zp : hash ( payload . user_data ?. zip ) ,
289
+ country : hash ( payload . user_data ?. country ) ,
290
+ external_id : hash ( payload . user_data ?. externalId ) , //to provide support for externalId as string and array both
294
291
client_ip_address : payload . user_data ?. client_ip_address ,
295
292
client_user_agent : payload . user_data ?. client_user_agent ,
296
293
fbc : payload . user_data ?. fbc ,
0 commit comments