UNPKG

onfido-sdk-ui

Version:

JavaScript SDK view layer for Onfido identity verification

197 lines (187 loc) 5.9 kB
import type { DeviceTypes } from './commons' import type { StepConfig } from './steps' export const USER_ANALYTICS_EVENT = 'userAnalyticsEvent' export type LegacyTrackedEventNames = | 'screen_complete' | 'screen_complete_crossdevice_mobile_success' | 'screen_document_country_select' | 'screen_document_crossDevice_client_intro' | 'screen_face_crossDevice_client_intro' | 'screen_poa_crossDevice_client_intro' | 'screen_crossDevice_desktop_submit' | 'screen_crossDevice_crossdevice_link' | 'screen_crossDevice' | 'copy link selected' | 'qr code selected' | 'sms selected' | 'screen_crossDevice_mobile_notification_sent' | 'screen_crossDevice_mobile_connected' | 'screen_crossDevice_sms_failed' | 'Starting upload' | 'screen_document_back_capture_camera_error' | 'screen_document_front_capture_camera_error' | 'Taking live photo of document' | 'screen_document_back_capture_file_upload' | 'screen_document_back_capture' | 'screen_document_front_capture_file_upload' | 'screen_document_front_capture' | 'screen_document_back_confirmation' | 'screen_document_front_confirmation' | 'screen_document_fallback_clicked' | 'screen_document_image_quality_guide' | 'screen_document_type_select' | 'screen_document_document_video_capture_file_upload' | 'screen_document_document_video_capture' | 'screen_document_document_video_capture_fallback_triggered' | 'screen_face_selfie_intro' | 'screen_face_selfie_capture_camera_error' | 'screen_face_selfie_capture_file_upload' | 'screen_face_selfie_capture' | 'screen_face_selfie_confirmation' | 'screen_face_selfie_capture_fallback_triggered' | 'Snapshot upload completed' | 'Starting snapshot upload' | 'Starting live photo upload' | 'screen_face_face_video_capture_camera_error' | 'screen_face_face_video_capture_file_upload' | 'screen_face_face_video_capture' | 'screen_face_video_capture_step_1' | 'screen_face_video_capture_step_2' | 'screen_face_video_challenge_load_failed' | 'screen_face_video_challenge_loaded' | 'screen_face_video_challenge_requested' | 'screen_face_face_video_confirmation' | 'screen_face_face_video_capture_fallback_triggered' | 'screen_face_video_intro' | 'completed flow' | 'started flow' | 'screen_forbidden_client_error' | 'screen_generic_client_error' | 'screen_interrupted_flow_error' | 'screen_poa_poa_file_upload' | 'screen_poa_poa' | 'screen_poa_front_confirmation' | 'screen_poa_type_select' | 'screen_poa' | 'screen_unsupported_android_browser' | 'screen_unsupported_ios_browser' | 'Completed upload' | 'screen_userConsent' | 'screen_welcome' export type UserAnalyticsEventNames = | 'WELCOME' | 'USER_CONSENT' | 'DOCUMENT_CAPTURE_FRONT' | 'DOCUMENT_CAPTURE_CONFIRMATION_FRONT' | 'DOCUMENT_CAPTURE_BACK' | 'DOCUMENT_CAPTURE_CONFIRMATION_BACK' | 'FACIAL_INTRO' | 'FACIAL_CAPTURE' | 'FACIAL_CAPTURE_CONFIRMATION' | 'VIDEO_FACIAL_INTRO' | 'VIDEO_FACIAL_CAPTURE_STEP_1' | 'VIDEO_FACIAL_CAPTURE_STEP_2' | 'DOCUMENT_TYPE_SELECT' | 'ID_DOCUMENT_COUNTRY_SELECT' | 'CROSS_DEVICE_INTRO' | 'CROSS_DEVICE_GET_LINK' | 'UPLOAD' export type UserAnalyticsEventDetail = { eventName: UserAnalyticsEventNames isCrossDevice: boolean properties: Record<string, unknown> } type TrackedEventTypes = 'screen' | 'action' | 'flow' | 'view' export type TrackedEnvironmentData = { device?: DeviceTypes os: string os_version: string browser: string browser_version: string } export type AnalyticsEventProperties = { event_type?: TrackedEventTypes step?: string is_cross_device?: boolean is_custom_ui?: boolean status?: string capture_method_rendered?: 'upload' | 'camera' document_side?: 'front' | 'back' video_capture_step?: 'step1' | 'step2' link_method_selected?: 'copy' | 'qr_code' | 'sms' } export type AnalyticsPayload = { applicant_uuid?: string client_uuid?: string event?: AnalyticsTrackedEventNames event_metadata: { domain: string } & TrackedEnvironmentData event_time: string event_uuid: string properties: AnalyticsEventProperties session_uuid?: string source: string source_metadata: { platform?: string version?: string sdk_environment?: string } sdk_config: { expected_steps: string steps_config?: StepConfig[] sdk_token?: string } } export type AnalyticsTrackedEventNames = | 'COMPLETE' | 'COMPLETE_CROSS_DEVICE_MOBILE_SUCCESS' | 'COUNTRY_SELECTION' | 'CROSS_DEVICE_CLIENT_INTRO' | 'CROSS_DEVICE_DESKTOP_SUBMIT' | 'CROSS_DEVICE_GET_LINK' | 'CROSS_DEVICE_INTRO' | 'CROSS_DEVICE_LINK_METHOD_SELECTED' | 'CROSS_DEVICE_MOBILE_NOTIFICATION_SENT' | 'CROSS_DEVICE_MOBILE_SUBMIT' | 'CROSS_DEVICE_SMS_FAILED' | 'CUSTOM_API_REQUEST_STARTED' | 'DOCUMENT_CAMERA_ERROR' | 'DOCUMENT_CAMERA_SHUTTER_CLICK' | 'DOCUMENT_CAPTURE' | 'DOCUMENT_CONFIRMATION' | 'DOCUMENT_FALLBACK_CLICKED' | 'DOCUMENT_IMAGE_QUALITY_GUIDE' | 'DOCUMENT_TYPE_SELECTION' | 'DOCUMENT_VIDEO_CAPTURE' | 'DOCUMENT_VIDEO_FALLBACK_TRIGGERED' | 'FACE_INTRO' | 'FACE_SELFIE_CAMERA_ERROR' | 'FACE_SELFIE_CAPTURE' | 'FACE_SELFIE_CONFIRMATION' | 'FACE_SELFIE_FALLBACK_TRIGGERED' | 'FACE_SELFIE_SNAPSHOT_UPLOAD_COMPLETED' | 'FACE_SELFIE_SNAPSHOT_UPLOAD_STARTED' | 'FACE_SELFIE_UPLOAD_STARTED' | 'FACE_VIDEO_CAMERA_ERROR' | 'FACE_VIDEO_CAPTURE' | 'FACE_VIDEO_CHALLENGE_FETCH_ERROR' | 'FACE_VIDEO_CHALLENGE_LOADED' | 'FACE_VIDEO_CHALLENGE_REQUESTED' | 'FACE_VIDEO_CONFIRMATION' | 'FACE_VIDEO_FALLBACK_TRIGGERED' | 'FACE_VIDEO_INTRO' | 'FLOW_COMPLETED' | 'FLOW_STARTED' | 'FORBIDDEN_CLIENT_ERROR' | 'GENERIC_CLIENT_ERROR' | 'INTERRUPTED_FLOW_ERROR' | 'POA_CAPTURE' | 'POA_CAPTURE_POA' | 'POA_CONFIRMATION' | 'POA_DOCUMENT_TYPE_SELECTION' | 'POA_INTRO' | 'UNSUPPORTED_BROWSER' | 'UPLOAD_COMPLETED' | 'USER_CONSENT' | 'WELCOME'