(value: unknown)
| 315 | } |
| 316 | |
| 317 | function signalFromSpurValue(value: unknown): FreeModeIpPrivacySignal | null { |
| 318 | if (typeof value !== 'string') return null |
| 319 | const normalized = value.toUpperCase() |
| 320 | if (normalized.includes('RESIDENTIAL') || normalized.includes('RES_PROXY')) { |
| 321 | return 'res_proxy' |
| 322 | } |
| 323 | if (normalized.includes('TOR')) return 'tor' |
| 324 | if (normalized.includes('VPN')) return 'vpn' |
| 325 | if (normalized.includes('PROXY')) return 'proxy' |
| 326 | return null |
| 327 | } |
| 328 | |
| 329 | function signalFromSpurService(value: unknown): FreeModeIpPrivacySignal | null { |
| 330 | if (typeof value !== 'string') return null |
no outgoing calls
no test coverage detected