Skip to main content
Using Deno in production at your company? Earn free Deno merch.
Give us feedback
Latest
class VisitorAbstract
implements IVisitor
extends EventEmitter
Abstract
import { VisitorAbstract } from "https://deno.land/x/flagship_io_js_sdk@4.0.1/visitor/VisitorAbstract.ts";

Constructors

new
VisitorAbstract(param: NewVisitor & { visitorId?: string; configManager: IConfigManager; context: Record<string, primitive>; monitoringData?: sdkInitialData; })

Properties

private
optional
_consentHitTroubleshooting: Troubleshooting
private
_fetchStatus: FetchFlagsStatus
private
optional
_getCampaignsPromise: Promise<CampaignDTO[] | null>
private
_instanceId: string
private
optional
_onFetchFlagsStatusChanged: (unnamed 0: FetchFlagsStatus) => void
private
optional
_segmentHitTroubleshooting: Troubleshooting
private
_traffic: number
private
optional
_visitorCacheStatus: VisitorCacheStatus
protected
_anonymousId: string | null
protected
_campaigns: CampaignDTO[]
protected
_configManager: IConfigManager
protected
_context: Record<string, primitive>
protected
_exposedVariations: Record<string, VisitorVariations>
protected
_flags: Map<string, FlagDTO>
protected
_hasConsented: boolean
protected
_isCleaningDeDuplicationCache: boolean
protected
optional
_sdkInitialData: sdkInitialData
protected
optional
_sendExposedVariationTimeoutId: NodeJS.Timeout
protected
_visitorId: string
anonymousId: string | null
campaigns: CampaignDTO[]
readonly
config: IFlagshipConfig
readonly
configManager: IConfigManager
consentHitTroubleshooting: Troubleshooting | undefined
context: Record<string, primitive>
deDuplicationCache: Record<string, number>
fetchStatus: FetchFlagsStatus
flagsData: Map<string, FlagDTO>
getCampaignsPromise: Promise<CampaignDTO[] | null> | undefined
hasConsented: boolean
readonly
instanceId: string
lastFetchFlagsTimestamp: number
onFetchFlagsStatusChanged: ((unnamed 0: FetchFlagsStatus) => void) | undefined
readonly
sdkInitialData: sdkInitialData | undefined
segmentHitTroubleshooting: Troubleshooting | undefined
traffic: number
optional
visitorCache: VisitorCacheDTO
visitorCacheStatus: VisitorCacheStatus | undefined
visitorId: string

Methods

protected
generateVisitorId(): string
protected
setInitialFlags(flags?: SerializedFlagMetadata[]): void
protected
setInitializeCampaigns(campaigns?: CampaignDTO[], hasInitialFlags?: boolean): void
protected
updateCache(): void
abstract
authenticate(visitorId: string): void
abstract
clearContext(): void
clearDeDuplicationCache(deDuplicationTime: number): void
abstract
fetchFlags(): Promise<void>
abstract
getFlag(key: string): IFSFlag
abstract
getFlagValue<T>(param: GetFlagValueParam<T>): T extends null ? unknown : T
getSdkStatus(): FSSdkStatus | undefined
abstract
sendHit(hit: HitAbstract): Promise<void>
abstract
sendHit(hit: IHit): Promise<void>
abstract
sendHit(hit: IHit | HitAbstract): Promise<void>
abstract
sendHits(hit: HitAbstract[]): Promise<void>
abstract
sendHits(hit: IHit[]): Promise<void>
abstract
sendHits(hit: HitAbstract[] | IHit[]): Promise<void>
setConsent(hasConsented: boolean): void
abstract
unauthenticate(): void
abstract
updateContext(key: string, value: primitive): void
abstract
updateContext(context: Record<string, primitive>): void
abstract
updateContext(context: Record<string, primitive> | string, value?: primitive): void
abstract
visitorExposed(param: VisitorExposedParam): Promise<void>

Static Properties

optional
SdkStatus: FSSdkStatus