{"version":3,"file":"VtoCaptureVideo.chunk.js","mappings":"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","sources":["../node_modules/@luxottica/capture-component/src/interfaces/CaptureStatus.ts","../node_modules/@luxottica/capture-component/src/app/functions/CloseCapture.ts","../node_modules/@luxottica/capture-component/src/app/functions/CloseUploadImage.ts","../node_modules/@luxottica/capture-component/src/app/functions/CloseVtoCapture.ts","../node_modules/@luxottica/capture-component/src/app/functions/Controls.ts","../node_modules/@luxottica/capture-component/src/constants/DefaultTrackingOptionsLandscape.ts","../node_modules/@luxottica/capture-component/src/constants/DefaultVtoCaptureOptions.ts","../node_modules/@luxottica/capture-component/src/components/fa-capture/FrameAdvisorErrorOverlay.tsx","../node_modules/@luxottica/capture-component/src/components/fa-capture/tips/icons/CrosshairIcon.tsx","../node_modules/@luxottica/capture-component/src/components/fa-capture/tips/icons/DeviceIcon.tsx","../node_modules/@luxottica/capture-component/src/components/fa-capture/tips/icons/EyeglassIcon.tsx","../node_modules/@luxottica/capture-component/src/components/fa-capture/tips/icons/FaceIcon.tsx","../node_modules/@luxottica/capture-component/src/components/fa-capture/tips/icons/HairIcon.tsx","../node_modules/@luxottica/capture-component/src/components/fa-capture/tips/icons/SunIcon.tsx","../node_modules/@luxottica/capture-component/src/components/fa-capture/tips/icons/RotateIcon.tsx","../node_modules/@luxottica/capture-component/src/components/fa-capture/tips/FrameAdvisorCaptureTips.tsx","../node_modules/@luxottica/capture-component/src/components/fa-capture/FrameAdvisorContainer.tsx","../node_modules/@luxottica/capture-component/src/components/fa-capture/FrameAdvisorLoader.tsx","../node_modules/@luxottica/capture-component/src/components/fa-capture/TimeRemaining.tsx","../node_modules/@luxottica/capture-component/src/components/fa-capture/FrameAdvisorCaptureOverlay.tsx","../node_modules/@luxottica/capture-component/src/components/fa-capture/Metrics.tsx","../node_modules/@luxottica/capture-component/src/components/DebugPosetracker.tsx","../node_modules/@luxottica/capture-component/src/components/SimpleNumberInput.tsx","../node_modules/@luxottica/capture-component/src/components/AdjustNudgingDepth.tsx","../node_modules/@luxottica/capture-component/src/components/fa-capture/FrameAdvisorVideo.tsx","../node_modules/@luxottica/capture-component/src/constants/DefaultCaptureOptions.ts","../node_modules/@luxottica/capture-component/src/constants/DefaultInitializeOptions.ts","../node_modules/@luxottica/capture-component/src/constants/DefaultTrackingOptionsPortrait.ts","../node_modules/@luxottica/capture-component/src/constants/DefaultUploadOptions.ts","../node_modules/@luxottica/capture-component/src/helpers/ParameterHelper.ts","../node_modules/@luxottica/capture-component/src/constants/DefaultSmartRulerOptions.ts","../node_modules/@luxottica/capture-component/src/app/functions/HasInitialized.ts","../node_modules/@luxottica/capture-component/src/helpers/SupportedFeaturesHelper.ts","../node_modules/@luxottica/capture-component/src/app/functions/Initialize.ts","../node_modules/@luxottica/capture-component/src/components/LoadingSpinner.tsx","../node_modules/@luxottica/capture-component/src/app/functions/OnError.ts","../node_modules/@luxottica/capture-component/src/helpers/RecordingHelper.ts","../node_modules/@luxottica/capture-component/src/helpers/RequestHelper.ts","../node_modules/@luxottica/capture-component/src/constants/Styling.ts","../node_modules/@luxottica/capture-component/src/constants/VideoStatus.ts","../node_modules/@luxottica/capture-component/src/helpers/Timer.ts","../node_modules/@luxottica/capture-component/src/helpers/WebCamHelper.ts","../node_modules/@luxottica/capture-component/src/components/NudgingGuide.tsx","../node_modules/@luxottica/capture-component/src/components/CheckIcon.tsx","../node_modules/@luxottica/capture-component/src/components/TrackingAreaPlaceholder.tsx","../node_modules/@luxottica/capture-component/src/components/upload-image/UploadImageData.tsx","../node_modules/@luxottica/capture-component/src/app/functions/UploadImageData.ts","../node_modules/@luxottica/capture-component/src/components/upload-image/UploadStatus.ts","../node_modules/@luxottica/capture-component/src/components/upload-image/UploadImage.tsx","../node_modules/@luxottica/capture-component/src/components/upload-image/UploadImageContainer.tsx","../node_modules/@luxottica/capture-component/src/components/upload-image/UploadImageLoader.tsx","../node_modules/@luxottica/capture-component/src/app/functions/VtoCapture.ts","../node_modules/@luxottica/capture-component/src/components/vto-capture/VtoCaptureErrorOverlay.tsx","../node_modules/@luxottica/capture-component/src/components/vto-capture/VtoCaptureLoader.tsx","../node_modules/@luxottica/capture-component/src/components/vto-capture/VtoCaptureContainer.tsx","../node_modules/@luxottica/capture-component/src/interfaces/RecordingStatus.ts","../node_modules/@luxottica/capture-component/src/components/vto-capture/VtoCaptureVideo.tsx","../node_modules/@luxottica/capture-component/src/components/RecordingGuide.tsx","../node_modules/@luxottica/capture-component/src/components/vto-capture/VtoCaptureOverlay.tsx","../node_modules/@luxottica/virtual-mirror/src/helpers/InitializationHelper.ts","../node_modules/@luxottica/virtual-mirror/src/app/functions/Initialize.ts","../node_modules/@luxottica/virtual-mirror/src/app/mirror/FpsCounter.ts","../node_modules/@luxottica/virtual-mirror/src/interfaces/MirrorOptions.ts","../node_modules/@luxottica/virtual-mirror/src/constants/DefaultEnvironmentOptions.ts","../node_modules/@luxottica/virtual-mirror/src/constants/DefaultPrivacyOptions.ts","../node_modules/@luxottica/virtual-mirror/src/constants/DefaultRenderingOptions.ts","../node_modules/@luxottica/virtual-mirror/src/constants/DefaultTrackingOptions.ts","../node_modules/@luxottica/virtual-mirror/src/constants/DefaultGestureDetectorOptions.ts","../node_modules/@luxottica/virtual-mirror/src/helpers/ParameterHelper.ts","../node_modules/@luxottica/virtual-mirror/src/app/functions/RenderMirror.ts","../node_modules/@luxottica/virtual-mirror/src/helpers/SupportedFeaturesHelper.ts","../node_modules/@luxottica/virtual-mirror/src/app/functions/WarmUp.ts","../node_modules/@luxottica/virtual-mirror/src/errors/errors.ts","../node_modules/@luxottica/virtual-mirror/src/constants/DefaultInitializationOptions.ts","../node_modules/@luxottica/virtual-mirror/src/helpers/FeatureConfigHelper.ts","../node_modules/@luxottica/virtual-mirror/src/interfaces/Features.ts","../node_modules/@luxottica/virtual-mirror/src/app/service/FeatureLicensingService.ts","../node_modules/@luxottica/virtual-mirror/src/app/VmCore.tsx","../node_modules/@luxottica/virtual-mirror/src/constants/actions.ts","../node_modules/@luxottica/virtual-mirror/src/reducers/appReducer.ts","../node_modules/@luxottica/virtual-mirror/src/reducers/mirrorReducer.ts","../node_modules/@luxottica/virtual-mirror/src/reducers/userReducer.ts","../node_modules/@luxottica/virtual-mirror/src/reducers/combinedReducers.ts","../node_modules/@luxottica/virtual-mirror/src/helpers/TransitionColorHelper.ts","../node_modules/@luxottica/virtual-mirror/src/remotelog/AppViewSessionKeys.ts","../node_modules/@luxottica/virtual-mirror/src/Store.ts","../node_modules/@luxottica/virtual-mirror/src/constants/DOMEvents.ts","../node_modules/@luxottica/virtual-mirror/src/helpers/CallbackHelper.ts","../node_modules/@luxottica/virtual-mirror/src/app/functions/AnimateOpacity.ts","../node_modules/@luxottica/virtual-mirror/src/helpers/RequestHelper.ts","../node_modules/@luxottica/virtual-mirror/src/constants/Events.ts","../node_modules/@luxottica/virtual-mirror/src/remotelog/VmLogger.ts","../node_modules/@luxottica/virtual-mirror/src/helpers/AdobeHelper.ts","../node_modules/@luxottica/virtual-mirror/src/helpers/AnalyticsHelper.ts","../node_modules/@luxottica/virtual-mirror/src/app/mirror/VmWebCam.ts","../node_modules/@luxottica/virtual-mirror/src/app/functions/Pause.ts","../node_modules/@luxottica/virtual-mirror/src/app/functions/SetTransitionOverrideColor.ts","../node_modules/@luxottica/virtual-mirror/src/Catalogue.ts","../node_modules/@luxottica/virtual-mirror/src/helpers/LocalizationDefaults.ts","../node_modules/@luxottica/virtual-mirror/src/helpers/LocalizationHelper.ts","../node_modules/@luxottica/virtual-mirror/src/interfaces/GestureDetector.ts","../node_modules/@luxottica/virtual-mirror/src/VirtualMirror.ts","../node_modules/@luxottica/virtual-mirror/src/app/functions/GetBipaVersion.ts","../node_modules/@luxottica/virtual-mirror/src/app/functions/SaveBipaEntry.ts","../node_modules/@luxottica/virtual-mirror/src/app/functions/SetTransitionOpacity.ts","../node_modules/@luxottica/virtual-mirror/src/app/functions/RecreateFaceWeb.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/bipa-manager/src/errors/errors.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/bipa-manager/src/constants/DefaultPrivacyLocalization.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/bipa-manager/src/helpers/LocalizationHelper.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/bipa-manager/src/interfaces/PrivacyLocalization.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/bipa-manager/src/helpers/ParameterHelper.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/bipa-manager/src/components/ErrorIcon.tsx","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/bipa-manager/src/components/BipaBiometricForm.tsx","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/bipa-manager/src/components/YesNoCheckbox.tsx","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/bipa-manager/src/components/PrivacyAgreement.tsx","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/bipa-manager/src/helpers/CookieHelper.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/bipa-manager/src/helpers/RequestHelper.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/bipa-manager/src/BipaOverlay.tsx","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/bipa-manager/src/constants/Styling.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/bipa-manager/src/BipaManager.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/domain/mockWebcam/ImageLoader.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/domain/mockWebcam/MockStreamTrack.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/domain/mockWebcam/MockStream.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/domain/mockWebcam/MockBridgeMedia.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/domain/nativeWebcam/AbstractNativeBridge.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/domain/nativeWebcam/NativeBridge.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/domain/nativeWebcam/NativeStreamTrack.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/domain/nativeWebcam/NativeStream.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/domain/nativeWebcam/NativeBridgeMedia.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/domain/adapter/UserMedia.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/domain/mockWebcam/MockVideoStream.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/domain/nativeWebcam/NativeVideoStream.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/domain/adapter/WebCamVideoStream.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/domain/adapter/WebCamStream.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/cameraSets/CameraSets.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/domain/WebCamConstraints.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/error/WebCamAbstractError.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/error/WebCamAccessNotFoundError.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/error/WebCamAccessRejectedError.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/remotelog/AppViewSessionKeys.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/error/WebCamAccessSystemError.ts","../node_modules/@luxottica/virtual-mirror/node_modules/@luxottica/vm-webcam/src/WebCam.ts","../node_modules/@luxottica/vm-eventbus/src/EventBus.ts","../node_modules/@luxottica/vm-webcam/src/domain/mockWebcam/ImageLoader.ts","../node_modules/@luxottica/vm-webcam/src/domain/mockWebcam/MockStreamTrack.ts","../node_modules/@luxottica/vm-webcam/src/domain/mockWebcam/MockStream.ts","../node_modules/@luxottica/vm-webcam/src/domain/mockWebcam/MockBridgeMedia.ts","../node_modules/@luxottica/vm-webcam/src/domain/nativeWebcam/AbstractNativeBridge.ts","../node_modules/@luxottica/vm-webcam/src/domain/nativeWebcam/NativeBridge.ts","../node_modules/@luxottica/vm-webcam/src/domain/nativeWebcam/NativeStreamTrack.ts","../node_modules/@luxottica/vm-webcam/src/domain/nativeWebcam/NativeStream.ts","../node_modules/@luxottica/vm-webcam/src/domain/nativeWebcam/NativeBridgeMedia.ts","../node_modules/@luxottica/vm-webcam/src/domain/adapter/UserMedia.ts","../node_modules/@luxottica/vm-webcam/src/domain/mockWebcam/MockVideoStream.ts","../node_modules/@luxottica/vm-webcam/src/domain/nativeWebcam/NativeVideoStream.ts","../node_modules/@luxottica/vm-webcam/src/domain/adapter/WebCamVideoStream.ts","../node_modules/@luxottica/vm-webcam/src/domain/adapter/WebCamStream.ts","../node_modules/@luxottica/vm-webcam/src/cameraSets/CameraSets.ts","../node_modules/@luxottica/vm-webcam/src/domain/WebCamConstraints.ts","../node_modules/@luxottica/vm-webcam/src/error/WebCamAbstractError.ts","../node_modules/@luxottica/vm-webcam/src/error/WebCamAccessNotFoundError.ts","../node_modules/@luxottica/vm-webcam/src/error/WebCamAccessRejectedError.ts","../node_modules/@luxottica/vm-webcam/src/remotelog/AppViewSessionKeys.ts","../node_modules/@luxottica/vm-webcam/src/error/WebCamAccessSystemError.ts","../node_modules/@luxottica/vm-webcam/src/WebCam.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/domain/mockWebcam/ImageLoader.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/domain/mockWebcam/MockStreamTrack.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/domain/mockWebcam/MockStream.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/domain/mockWebcam/MockBridgeMedia.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/domain/nativeWebcam/AbstractNativeBridge.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/domain/nativeWebcam/NativeBridge.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/domain/nativeWebcam/NativeStreamTrack.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/domain/nativeWebcam/NativeStream.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/domain/nativeWebcam/NativeBridgeMedia.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/domain/adapter/UserMedia.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/domain/mockWebcam/MockVideoStream.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/domain/nativeWebcam/NativeVideoStream.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/domain/adapter/WebCamVideoStream.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/domain/adapter/WebCamStream.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/cameraSets/CameraSets.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/domain/WebCamConstraints.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/error/WebCamAbstractError.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/error/WebCamAccessNotFoundError.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/error/WebCamAccessRejectedError.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/remotelog/AppViewSessionKeys.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/error/WebCamAccessSystemError.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-webcam/src/WebCam.ts","../node_modules/current-device/es/index.js","../node_modules/uuid/index.js","../node_modules/uuid/lib/bytesToUuid.js","../node_modules/uuid/lib/rng-browser.js","../node_modules/uuid/v1.js","../node_modules/uuid/v4.js","../node_modules/@luxottica/vmp/src/canvasIds.ts","../node_modules/@luxottica/vmp/src/VmWebCam.ts","../node_modules/@luxottica/vmp/src/plugins/GlassesRemovalEffect.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-plugin-glasses-removal/src/components/GlassesRemovalRenderer.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-plugin-glasses-removal/src/components/GlassesDetector.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-plugin-glasses-removal/src/GlassesRemovalPlugin.ts","../node_modules/@luxottica/vmp/node_modules/@luxottica/vm-plugin-glasses-removal/src/components/libs/utils/FaceMeshUtils.ts"],"sourcesContent":["enum CaptureStatus {\n LOADING = 'LOADING',\n INITIAL = 'INITIAL',\n SAVING = 'SAVING',\n UPLOADING = 'UPLOADING',\n PROCESSING = 'PROCESSING',\n COMPLETE = 'COMPLETE',\n PAUSED = 'PAUSED',\n RESUMED = 'RESUMED',\n ERROR = 'ERROR'\n}\n\nexport {\n CaptureStatus,\n};\n","import { closeFrameAdvisorComponent } from '../../components/fa-capture/FrameAdvisorLoader';\nimport { onError } from './OnError';\n\nexport const closeCapture = () => {\n closeFrameAdvisorComponent();\n window.removeEventListener('error', onError);\n};\n","import { closeUploadImageComponent } from '../../components/upload-image/UploadImageLoader';\nimport { onError } from './OnError';\n\nexport const closeUploadImage = (): void => {\n closeUploadImageComponent();\n window.removeEventListener('error', onError);\n};\n","import { closeVtoCaptureComponent } from '../../components/vto-capture/VtoCaptureLoader';\nimport { onError } from './OnError';\n\nexport const closeVtoCapture = (): void => {\n closeVtoCaptureComponent();\n window.removeEventListener('error', onError);\n};\n","import { FrameAdvisorVideo } from '../../components/fa-capture/FrameAdvisorVideo';\n\nexport const pauseCapture = () => {\n const instance = FrameAdvisorVideo.getInstance();\n if (instance) {\n instance.pauseFrameVideo();\n } else {\n console.warn('FrameAdvisorVideo instance not found');\n }\n};\n\nexport const resumeCapture = () => {\n const instance = FrameAdvisorVideo.getInstance();\n if (instance) {\n instance.resumeFrameVideo();\n } else {\n console.warn('FrameAdvisorVideo instance not found');\n }\n};","import { TrackingOptions } from '@luxottica/vm-posetracker-faceweb';\n\nconst DefaultTrackingOptionsLandscape: Required = {\n debug: false,\n inspect: false,\n machineLearning: false,\n areaSize: 1,\n standstill: {\n // settings coming from: https://luxotticaretail.atlassian.net/browse/PICOMMON-2884?focusedCommentId=908433\n depthRange: {\n min: 430,\n max: 850\n }\n },\n fov: 52.0,\n minimumFaceSizeRatio: 0.3,\n accountForLightingConditions: false,\n filter: undefined,\n\n roi: undefined,\n\n minTrackingConfidence: undefined,\n \n minDetectionConfidence: undefined,\n};\n\nexport { DefaultTrackingOptionsLandscape };\n","import { VtoCaptureOptions } from '../interfaces/CaptureParameters';\nimport { DefaultTrackingOptionsLandscape } from './DefaultTrackingOptionsLandscape';\n\nconst DefaultCaptureDuration = 10000;\n\nconst DefaultVtoCaptureOptions: VtoCaptureOptions = {\n tracking: DefaultTrackingOptionsLandscape,\n showLoading: true,\n enableMachineLearning: false,\n enableVto: true\n};\n\nexport { DefaultCaptureDuration, DefaultVtoCaptureOptions };\n","import React from 'react';\nimport { LocalizationHelper } from '../../helpers/LocalizationHelper';\nimport './FrameAdvisorErrorOverlay.scss';\n\nconst FrameAdvisorErrorOverlay = (props: {\n enabled: boolean,\n onClickOk: () => void\n}) => {\n\n return (\n
\n {props.enabled &&\n
\n
{LocalizationHelper.getString('capture_error', 'error')}
\n
{LocalizationHelper.getString('capture_error', 'subtext')}
\n \n
\n }\n
\n );\n};\n\nexport {\n FrameAdvisorErrorOverlay\n};\n","import React from 'react';\n\nexport const CrosshairIcon = () => (\n
\n \n \n \n \n
\n);","import React from 'react';\n\nexport const DeviceIcon = () => (\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n);","import React from 'react';\n\nexport const EyeglassIcon = () => (\n
\n \n \n \n \n \n \n \n \n \n \n \n \n
\n);","import React from 'react';\n\nexport const FaceIcon = () => (\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n);","import React from 'react';\n\nexport const HairIcon = () => (\n
\n \n \n \n \n \n \n
\n);","import React from 'react';\n\nexport const SunIcon = () => (\n
\n \n \n \n \n \n \n \n \n \n \n \n \n
\n);","import React from 'react';\n\nexport const RotateIcon = () => (\n
\n \n \n \n \n \n \n \n \n
\n);","import React, { useEffect, useState } from 'react';\nimport { LocalizationHelper } from '../../../helpers/LocalizationHelper';\nimport device from 'current-device';\n\nimport './FrameAdvisorCaptureTips.scss';\nimport { CrosshairIcon } from './icons/CrosshairIcon';\nimport { DeviceIcon } from './icons/DeviceIcon';\nimport { EyeglassIcon } from './icons/EyeglassIcon';\nimport { FaceIcon } from './icons/FaceIcon';\nimport { HairIcon } from './icons/HairIcon';\nimport { SunIcon } from './icons/SunIcon';\nimport { RotateIcon } from './icons/RotateIcon';\n\nconst FrameAdvisorCaptureTips = (props: {\n onComplete: () => void,\n landscape?: boolean,\n}) => {\n\n const [landscapeMode, setLandscapeMode] = useState(device.landscape());\n // if the device is already in landscape mode, show the tips\n const [currentPage, setCurrentPage] = useState<'TIPS' | 'ROTATE'>(props.landscape ? 'ROTATE' : 'TIPS');\n\n const setOrientation = () => {\n setLandscapeMode(device.landscape());\n };\n\n const onClickContinue = () => {\n if (landscapeMode) {\n setCurrentPage('ROTATE');\n } else {\n props.onComplete();\n }\n };\n\n useEffect(() => {\n window.addEventListener('resize', setOrientation);\n return () => {\n window.removeEventListener('resize', setOrientation);\n };\n }, []);\n\n useEffect(() => {\n if (currentPage === 'ROTATE' && !landscapeMode) {\n props.onComplete();\n }\n }, [currentPage, landscapeMode]);\n\n if (currentPage === 'TIPS') {\n return (\n
\n {(landscapeMode) ? \n
\n \n
{LocalizationHelper.getSmartShopperString('take-tips', 'title')}
\n \n
\n \n
\n
\n \n {LocalizationHelper.getSmartShopperString('take-tips', 'light')}\n
\n
\n \n {LocalizationHelper.getSmartShopperString('take-tips', 'look-straight-2')}\n
\n
\n \n {LocalizationHelper.getSmartShopperString('take-tips', 'relaxed-face')}\n
\n
\n \n
\n
\n \n {LocalizationHelper.getSmartShopperString('take-tips', 'take-eyeglasses-off')}\n
\n
\n \n {LocalizationHelper.getSmartShopperString('take-tips', 'move-your-hair')}\n
\n
\n \n {LocalizationHelper.getSmartShopperString('take-tips', 'hold-with-both-hands')}\n
\n
\n \n
\n \n \n \n
\n :\n
\n \n
{LocalizationHelper.getSmartShopperString('take-tips', 'title')}
\n \n
\n
\n \n {LocalizationHelper.getSmartShopperString('take-tips', 'light')}\n
\n
\n \n {LocalizationHelper.getSmartShopperString('take-tips', 'look-straight-2')}\n
\n
\n \n {LocalizationHelper.getSmartShopperString('take-tips', 'relaxed-face')}\n
\n
\n \n {LocalizationHelper.getSmartShopperString('take-tips', 'take-eyeglasses-off')}\n
\n
\n \n {LocalizationHelper.getSmartShopperString('take-tips', 'move-your-hair')}\n
\n
\n \n {LocalizationHelper.getSmartShopperString('take-tips', 'hold-with-both-hands')}\n
\n
\n \n \n \n
\n }\n
\n );\n } else if (currentPage === 'ROTATE') {\n return (\n
\n \n {LocalizationHelper.getSmartShopperString('turn-screen', 'turn-your-device')}\n
\n );\n\n } else {\n return <>;\n }\n\n};\n\nexport {\n FrameAdvisorCaptureTips\n};\n","import { AgreementType, BipaManager, BipaOverlay, BipaPage } from '@luxottica/bipa-manager';\nimport React, { lazy, Suspense, useEffect, useState } from 'react';\nimport { getAuthData } from '../../helpers/AuthHelper';\nimport { CallbackHelper } from '../../helpers/CallbackHelper';\nimport { CONFIG } from '../../helpers/ConfigHelper';\nimport { CaptureOptions } from '../../interfaces/CaptureParameters';\nimport { LoadingSpinner } from '../LoadingSpinner';\nimport { FrameAdvisorCaptureTips } from './tips/FrameAdvisorCaptureTips';\nimport './FrameAdvisorContainer.scss';\nimport { FrameAdvisorErrorOverlay } from './FrameAdvisorErrorOverlay';\nimport device from 'current-device';\nimport { CaptureStatus } from '../../interfaces/CaptureStatus';\n\ntype agreementStatus = 'INITIAL' | 'APPROVED' | 'REJECTED' | 'ERROR';\n\n// this is used to prevent an application reset in case the device is rotated after the capture\nlet captureComplete = false;\n\nconst FrameAdvisorContainer = (props: {\n options: CaptureOptions\n}) => {\n\n // begin to download the capture chunk while the user is checking the privacy\n // in case the privacy is already accepted the user will see a loading spinner\n const lazyFrameAdvisorPromise = import(/* webpackChunkName: \"FrameAdvisorVideo\" */ './FrameAdvisorVideo')\n .then(({ FrameAdvisorVideo }) => ({ default: FrameAdvisorVideo }));\n\n // REACT.lazy wrapper used to display a spinner while loading\n const LazyFrameAdvisorVideo = lazy(() => lazyFrameAdvisorPromise);\n\n const [agreementStatus, setAgreementStatus] = useState(\n BipaManager.biometricCookieExists(AgreementType.BIOMETRIC) || props.options.ignorePrivacyPolicy ? 'APPROVED' : 'INITIAL'\n );\n\n const [showCaptureTips, setShowCaptureTips] = useState(CONFIG.showCaptureTips);\n\n const [landscape, setLandscape] = useState(false);\n\n useEffect(() => {\n // react to device orientation only if the capture tips are used\n if (CONFIG.showCaptureTips) {\n device.onChangeOrientation((orientation) => {\n setLandscape(orientation === 'landscape' && !captureComplete);\n });\n }\n }, []);\n\n let content;\n\n switch (agreementStatus) {\n case 'INITIAL':\n CallbackHelper.onPrivacyDisplay();\n content = (\n {\n CallbackHelper.onDisplayPrivacyPage(page);\n },\n onSubmit: () => {\n // close the Privacy agreement and start the experience\n setAgreementStatus('APPROVED');\n },\n onUserReject: () => {\n // close the Privacy agreement and BLOCK the experience\n setAgreementStatus('REJECTED');\n CallbackHelper.onPrivacyReject();\n },\n onError: (error) => {\n setAgreementStatus('ERROR');\n CallbackHelper.onPrivacyFail(error);\n },\n onAuthUpdated: CallbackHelper.onAuthUpdated\n }} privacy={{\n termsAndConditions: CONFIG.privacy.termsAndConditions,\n localizationText: CONFIG.privacy?.localizationText\n }}/>\n );\n break;\n case 'APPROVED':\n if (showCaptureTips || landscape) {\n content = { setShowCaptureTips(false); }} landscape={landscape}/>;\n } else {\n CallbackHelper.onCaptureProcess();\n content = (\n }>\n {\n captureComplete = \n status === CaptureStatus.COMPLETE ||\n status === CaptureStatus.PROCESSING ||\n status === CaptureStatus.UPLOADING ||\n status === CaptureStatus.SAVING ||\n status === CaptureStatus.ERROR\n ;\n }}/>\n \n );\n }\n break;\n case 'ERROR':\n content = { setAgreementStatus('INITIAL'); }} />;\n break;\n case 'REJECTED':\n default:\n content = <>;\n break;\n }\n\n return (\n
\n {content}\n
\n );\n};\n\nexport {\n FrameAdvisorContainer\n};\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { ROOT_STYLE_NAME } from '../../constants/Styling';\nimport { CaptureOptions } from '../../interfaces/CaptureParameters';\nimport { FrameAdvisorContainer } from './FrameAdvisorContainer';\n\nlet currentContainer;\n\nconst loadFrameAdvisor = (\n container: HTMLElement,\n options: CaptureOptions,\n onMount: () => void\n) => {\n currentContainer = container;\n currentContainer.classList.add(ROOT_STYLE_NAME);\n ReactDOM.render(\n ,\n container,\n onMount\n );\n};\n\nconst closeFrameAdvisorComponent = () => {\n if (!!currentContainer) {\n ReactDOM.unmountComponentAtNode(currentContainer);\n }\n};\n\nexport {\n loadFrameAdvisor,\n closeFrameAdvisorComponent\n};\n","import * as React from 'react';\nimport './TimeRemaining.scss';\n\ninterface TimeRemainingProps {\n timeRemaining: number;\n countdownDuration: number;\n countdownDelay: number;\n}\n\nexport class TimeRemaining extends React.PureComponent<\n TimeRemainingProps\n> {\n\n private formatTime(timeRemaining: number) {\n return (timeRemaining <= 0) ? undefined : Math.ceil(timeRemaining / 1000);\n }\n\n public render() {\n const formattedTime = this.formatTime(this.props.timeRemaining);\n\n return (!!formattedTime && this.props.timeRemaining < this.props.countdownDuration)\n ?\n
\n {formattedTime}\n
\n :\n <>;\n }\n}\n","import { PoseResponse, TrackingOptions, GuidanceCommand } from '@luxottica/vm-posetracker-faceweb';\nimport React from 'react';\nimport { TimeRemaining } from './TimeRemaining';\n\nimport './FrameAdvisorCaptureOverlay.scss';\nimport { CaptureStatus } from '../../interfaces/CaptureStatus';\nimport { LocalizationHelper } from '../../helpers/LocalizationHelper';\nimport { NudgingGuide } from '../NudgingGuide';\nimport { TrackingAreaPlaceholder } from '../TrackingAreaPlaceholder';\nimport { LoadingSpinner } from '../LoadingSpinner';\n\nconst FrameAdvisorCaptureOverlay = (props: {\n enabled: boolean,\n captureStatus: CaptureStatus,\n options: TrackingOptions,\n pose: PoseResponse,\n countdownDuration: number,\n countdownDelay: number,\n timeRemaining: number,\n}) => {\n\n const showLoading = (\n props.captureStatus === CaptureStatus.LOADING\n || props.captureStatus === CaptureStatus.SAVING\n || props.captureStatus === CaptureStatus.UPLOADING\n || props.captureStatus === CaptureStatus.PROCESSING\n ) && props.enabled;\n\n let overlayText;\n switch (props.captureStatus) {\n case CaptureStatus.LOADING:\n overlayText = LocalizationHelper.getString('server_processing', 'loading');\n break;\n case CaptureStatus.INITIAL:\n overlayText = '';\n break;\n case CaptureStatus.SAVING:\n overlayText = LocalizationHelper.getString('server_processing', 'image_upload');\n break;\n case CaptureStatus.UPLOADING:\n overlayText = LocalizationHelper.getString('server_processing', 'image_upload');\n break;\n case CaptureStatus.ERROR:\n overlayText = '';\n break;\n case CaptureStatus.PROCESSING:\n overlayText = LocalizationHelper.getString('server_processing', 'image_processing');\n break;\n case CaptureStatus.COMPLETE:\n overlayText = LocalizationHelper.getString('server_processing', 'done');\n break;\n default:\n overlayText = '';\n break;\n }\n\n return (\n
\n {props.captureStatus === CaptureStatus.INITIAL &&\n <>\n \n \n = props.countdownDuration}\n areaSize={props.options.areaSize}\n minimumFaceSizeRatio={props.options.minimumFaceSizeRatio}\n sourceWidth={1280}\n sourceHeight={720}\n mirrorVideoWidth={1280}\n mirrorVideoHeight={720}\n guidance={props.pose?.guidanceCommand}\n debug={false}\n />\n {props.options && props.options.debug && props.pose && props.pose.pose &&
\n
guidanceResult: {GuidanceCommand[props.pose?.guidanceCommand]}
\n
defectsList: \n
    \n {props.pose?.defectList.map((defect, index) => (\n
  • {defect}
  • \n ))}\n
\n
\n {\n (() => {\n let i = 0;\n const data = [];\n for (const key in props.pose?.guidanceInspection) {\n data.push(

{key}: {props.pose?.guidanceInspection[key]}

);\n }\n return data;\n })()\n }\n {\n (() => {\n let i = 0;\n const data = [];\n for (const pose of props.pose?.pose) {\n data.push(

{pose.toFixed(2)}

);\n }\n return data;\n })()\n }\n
}\n \n }\n\n
\n \n {overlayText}\n
\n
\n );\n};\n\nexport {\n FrameAdvisorCaptureOverlay\n};\n","import { IFaceMetrics } from '@luxottica/vm-posetracker-faceweb';\nimport React from 'react';\n\nexport const Metrics = ({metrics}: {metrics: IFaceMetrics}) => {\n return
\n {(() => {\n const metricsElements = [];\n for (const metric in metrics) {\n metricsElements.push(\n

{metric}: {metrics[metric]}

\n );\n }\n return metricsElements;\n })()}\n
;\n};\n","import React, { Suspense, lazy } from 'react';\n\nconst DebugPosetracker = (props: {\n poseTrackerDebugOptions\n}) => {\n const lazyReactJson = import(/* webpackChunkName: \"ReactJson\" */ 'react-json-view');\n // REACT.lazy wrapper used to display a spinner while loading\n const LazyReactJson = lazy(() => lazyReactJson);\n\n // eslint-disable-next-line no-console\n console.log(props.poseTrackerDebugOptions);\n\n return }>\n \n ;\n};\n\nexport {\n DebugPosetracker,\n};\n","import React, { useEffect, useState } from 'react';\n\nconst onlyNumbersFilter = (event) => {\n if (!/[0-9]/.test(event.key)) {\n event.preventDefault();\n }\n};\n\nfunction SimpleNumberInput(props: { label: string, default: number, onChange: (v: number) => void }): JSX.Element {\n const [value, setValue] = useState(props.default);\n\n useEffect(() => {\n props.onChange(value);\n }, [value]);\n\n return (<>\n \n \n\n \n );\n}\n\nexport { SimpleNumberInput };","import React, { useEffect, useState } from 'react';\nimport { SimpleNumberInput } from './SimpleNumberInput';\n\nfunction AdjustNudgingDepth(props: {onChange: (depthRange: TrackingOptions['standstill']['depthRange']) => void, defaultValue: TrackingOptions['standstill']['depthRange']}) {\n const [min, setMin] = useState(props.defaultValue.min);\n const [max, setMax] = useState(props.defaultValue.max);\n const [open, setOpen] = useState(false);\n\n useEffect(() => {\n props.onChange({ min, max });\n }, [min, max]);\n\n return
\n {open && <>\n

\n \n

\n

\n \n

\n }\n

\n
;\n}\n\nexport { AdjustNudgingDepth };","import { GuidanceCommand, IFaceMetrics, PoseResponse, PoseTracker, TrackingOptions } from '@luxottica/vm-posetracker-faceweb';\nimport { RemoteLogConfig } from '@luxottica/vm-remotelog';\nimport { MicroserviceEnvironment } from '@luxottica/vto-microservices';\nimport { NativeStream, WebCamStream } from '@luxottica/vm-webcam';\nimport React, { Component } from 'react';\nimport * as localforage from 'localforage';\n\nimport { name, version } from '../../../package.json';\nimport { VideoStatus } from '../../constants/VideoStatus';\nimport { CallbackHelper, guidanceUpdate } from '../../helpers/CallbackHelper';\nimport { RequestHelper } from '../../helpers/RequestHelper';\nimport { Timer } from '../../helpers/Timer';\nimport { WebcamHelper } from '../../helpers/WebCamHelper';\nimport { CaptureOptions } from '../../interfaces/CaptureParameters';\nimport { CaptureStatus } from '../../interfaces/CaptureStatus';\nimport { FrameAdvisorCaptureOverlay } from './FrameAdvisorCaptureOverlay';\nimport { FrameAdvisorErrorOverlay } from './FrameAdvisorErrorOverlay';\nimport './FrameAdvisorVideo.scss';\nimport { Metrics } from './Metrics';\nimport { CONFIG } from '../../helpers/ConfigHelper';\nimport { DebugPosetracker } from '../DebugPosetracker';\nimport { AdjustNudgingDepth } from '../AdjustNudgingDepth';\n\nconst logger = RemoteLogConfig.getInstance().getLoggerInfo(name, version, 'FrameAdvisorVideo');\n\nconst VIDEO_DIV_ID = 'webcam-target';\nlet canvas: HTMLCanvasElement;\nlet context: CanvasRenderingContext2D;\nlet mounted: boolean;\n\ninterface FrameAdvisorVideoProps {\n options: CaptureOptions,\n environment: MicroserviceEnvironment,\n onStatusChange?: (status: CaptureStatus) => void,\n}\n\ninterface FrameAdvisorVideoState {\n trackingOptions: TrackingOptions,\n webcamStream: MediaStream;\n videoStatus: VideoStatus;\n captureStatus: CaptureStatus;\n pose: PoseResponse;\n metrics?: IFaceMetrics;\n poseTrackerDebugOptions?: Record;\n}\n\nclass FrameAdvisorVideo extends Component {\n private static instance: FrameAdvisorVideo | null = null;\n poseTracker: PoseTracker;\n\n animationRef: number = undefined;\n webcamStream: WebCamStream;\n timer = new Timer();\n metricsPromise: Promise;\n\n previousTime = -1;\n luxDB = localforage.createInstance({name: 'lux_VMP'});\n\n constructor(props: FrameAdvisorVideoProps) {\n super(props);\n FrameAdvisorVideo.instance = this;\n if (!props.onStatusChange) {\n props.onStatusChange = () => { return; };\n }\n localforage.setDriver(localforage.INDEXEDDB);\n this.state = {\n trackingOptions: props.options.tracking,\n webcamStream: undefined,\n videoStatus: VideoStatus.LOADING,\n captureStatus: CaptureStatus.LOADING,\n pose: undefined,\n };\n }\n\n private update = async () => {\n if (\n !this.webcamStream ||\n this.state.videoStatus === VideoStatus.STOPPED ||\n // do not send duplicate frames\n this.webcamStream.streamObject.currentTime === this.previousTime\n ) {\n this.animationRef = requestAnimationFrame(this.update);\n return;\n } else if (!!this.poseTracker && this.poseTracker.isReady()) {\n // keep track of previous frame timestamp\n this.previousTime = this.webcamStream.streamObject.currentTime;\n\n context.drawImage(this.webcamStream.streamObject.image, 0, 0, this.webcamStream.streamObject.videoWidth, this.webcamStream.streamObject.videoHeight);\n \n if (this.state.captureStatus === CaptureStatus.INITIAL && this.state.videoStatus === VideoStatus.PLAYING) {\n const response = await this.poseTracker.getPose({image: canvas});\n\n // store the guidance update because after react state update will not be possible to check it\n const hasGuidanceUpdate = response.guidanceCommand !== this.state.pose?.guidanceCommand;\n\n if (!!CallbackHelper.onLandmarks) {\n CallbackHelper.onLandmarks({\n faceLandmarks: response.result?.debugInfo?.facePoints,\n faceEllipse: response.result?.debugInfo?.faceEllipse,\n });\n }\n\n // set the state and let update the UI before the next step\n // we permit to pause the capture but probably is better to update the UI first\n await new Promise((resolve) => {\n this.setState({\n pose: response\n }, resolve);\n });\n\n // wait for user input in case of necessity\n await guidanceUpdate(response.guidanceCommand, hasGuidanceUpdate, response.defectList);\n }\n\n if (this.timer.active) {\n CallbackHelper.onCountdown(this.timer.currentTime, this.props.options.countdownDuration);\n }\n }\n\n this.animationRef = requestAnimationFrame(this.update);\n };\n\n componentDidMount() {\n canvas = document.createElement('canvas');\n context = canvas.getContext('2d', { preserveDrawingBuffer: true }) as CanvasRenderingContext2D;\n mounted = true;\n this.setState({ videoStatus: VideoStatus.LOADING });\n\n WebcamHelper.openWebcam(1280, 720).then((stream) => {\n this.webcamStream = WebcamHelper.createStream({\n target: VIDEO_DIV_ID+'container',\n className: 'class-video-name',\n id: VIDEO_DIV_ID\n }, stream as MediaStream | NativeStream);\n this.setState({ webcamStream: stream as MediaStream });\n\n this.webcamStream.streamObject.play().then(() => {\n try {\n\n this.poseTracker = new PoseTracker(\n 52,\n this.props.options.tracking.filter,\n this.props.environment == 'PRODUCTION' ? 'PRODUCTION' : 'TEST',\n () => { this.setState({ captureStatus: CaptureStatus.INITIAL }); },\n () => { return; },\n this.state.trackingOptions\n );\n\n CallbackHelper.onPosetrackerLoaded();\n canvas.width = this.webcamStream.streamObject.videoWidth;\n canvas.height = this.webcamStream.streamObject.videoHeight;\n this.setState({ videoStatus: VideoStatus.PLAYING});\n this.animationRef = requestAnimationFrame(this.update);\n } catch (error) {\n this.setState({ captureStatus: CaptureStatus.ERROR });\n CallbackHelper.onCaptureError(error);\n }\n });\n }).catch((error) => {\n this.setState({ captureStatus: CaptureStatus.ERROR });\n CallbackHelper.onCaptureError(error);\n });\n }\n\n componentWillUnmount() {\n FrameAdvisorVideo.instance = null;\n this.timer.stop();\n this.poseTracker?.stopPhotoQualityCheck();\n WebcamHelper.closeStream();\n cancelAnimationFrame(this.animationRef);\n mounted = false;\n\n // closing canvas and context\n canvas.width = 0;\n canvas.height = 0;\n context = null;\n canvas = null;\n \n PoseTracker.destroy();\n this.setState({ videoStatus: VideoStatus.STOPPED });\n }\n\n private async getFaceMeasurement() {\n await this.poseTracker.startRuler(CONFIG.smartRulerConfig);\n return this.poseTracker.getMetrics();\n }\n\n static getInstance(): FrameAdvisorVideo | null {\n return FrameAdvisorVideo.instance;\n }\n\n componentDidUpdate(\n prevProps: FrameAdvisorVideoProps,\n prevState: FrameAdvisorVideoState\n ) {\n if (\n this.poseTracker &&\n (prevState.trackingOptions.standstill.depthRange.max !== this.state.trackingOptions.standstill.depthRange.max ||\n prevState.trackingOptions.standstill.depthRange.min !== this.state.trackingOptions.standstill.depthRange.min)\n ) {\n this.poseTracker.updateOptions(this.state.trackingOptions);\n }\n\n this.props.onStatusChange(this.state.captureStatus);\n if (this.poseTracker) {\n this.poseTracker.startPhotoQualityCheck();\n }\n\n if (this.state.captureStatus === CaptureStatus.INITIAL) {\n if (this.state.pose?.guidanceCommand === GuidanceCommand.STAY_STILL) {\n if (!this.timer.active) {\n logger.debug('start countdown');\n this.timer.start(this.props.options.countdownDuration + this.props.options.countdownDelay, () => {\n if (this.props.options.enableMachineLearning === true) {\n this.metricsPromise.then((metrics: IFaceMetrics) => {\n const poseTrackerDebugOptions = this.poseTracker.debugGetConfig();\n this.setState({\n metrics,\n poseTrackerDebugOptions\n });\n RequestHelper.uploadMeasurement(metrics.finalPDmm, metrics.finalFBmm);\n });\n }\n this.poseTracker.stopPhotoQualityCheck();\n this.uploadImage();\n });\n if (this.props.options.enableMachineLearning === true) {\n this.metricsPromise = this.getFaceMeasurement();\n }\n CallbackHelper.onCountdown(0, this.props.options.countdownDuration + this.props.options.countdownDelay);\n }\n } else {\n this.timer.stop();\n }\n }\n }\n\n uploadImage = () => {\n logger.debug('CAPTURE OK');\n this.timer.stop();\n CallbackHelper.onLoading();\n this.setState({ captureStatus: CaptureStatus.SAVING });\n const uploadCanvas = document.createElement('canvas');\n\n uploadCanvas.width = this.webcamStream.streamObject.videoWidth;\n uploadCanvas.height = this.webcamStream.streamObject.videoHeight;\n\n const uploadContext = uploadCanvas.getContext('2d', { preserveDrawingBuffer: true }) as CanvasRenderingContext2D;\n uploadContext.scale(-1, 1);\n uploadContext.drawImage(this.webcamStream.streamObject.image,\n 0, 0, this.webcamStream.streamObject.videoWidth * -1, this.webcamStream.streamObject.videoHeight);\n\n let imageBlob: Blob;\n new Promise((resolve) => {\n try {\n logger.debug('WRITING IMAGE');\n if (mounted) {\n uploadCanvas.toBlob((blob) => { resolve(blob); }, 'image/jpeg', 0.95);\n }\n } catch (e) {\n throw (e);\n }\n }).then((blob) => {\n imageBlob = blob;\n logger.debug('UPLOADING');\n if (mounted) {\n this.setState({ captureStatus: CaptureStatus.UPLOADING });\n return RequestHelper.uploadImage(blob);\n }\n }).then(() => {\n logger.debug('PROCESSING');\n if (mounted) {\n this.setState({ captureStatus: CaptureStatus.PROCESSING });\n return RequestHelper.processImage(\n this.props.options.enableMachineLearning,\n this.props.options.enableVto,\n () => { return !mounted; });\n }\n }).then((result) => {\n logger.debug('COMPLETE');\n console.log(result.videoId);\n if(this.props.options.enableVmp)\n this.luxDB.setItem(result.videoId, {pose: this.state.pose?.pose, image: imageBlob});\n if (mounted) {\n this.setState({ captureStatus: CaptureStatus.COMPLETE });\n CallbackHelper.onAdvisorResult({\n ...(this.props.options.enableMachineLearning && { properties: result.properties }),\n videoId: result.videoId\n });\n }\n }).catch((error) => {\n if (mounted) {\n this.setState({ captureStatus: CaptureStatus.ERROR });\n CallbackHelper.onCaptureError(error);\n }\n });\n }\n\n resetCapture = () => {\n this.timer.stop();\n cancelAnimationFrame(this.animationRef);\n this.animationRef = requestAnimationFrame(this.update);\n this.setState({ captureStatus: CaptureStatus.INITIAL });\n }\n\n pauseFrameVideo = () => {\n mounted = false;\n // this.webcamStream.streamObject.pause();\n this.timer.stop();\n this.poseTracker?.stopPhotoQualityCheck();\n this.setState({ captureStatus: CaptureStatus.PAUSED });\n this.setState({ videoStatus: VideoStatus.STOPPED });\n }\n\n resumeFrameVideo = () => {\n mounted = true;\n this.webcamStream.streamObject.play().then(() => {\n this.setState({ videoStatus: VideoStatus.PLAYING });\n this.setState({ captureStatus: CaptureStatus.INITIAL });\n });\n }\n\n render() {\n return (\n <>\n
\n \n \n {\n this.props.options.debugMeasurement && this.state.metrics &&\n \n }\n {\n this.props.options.debugMeasurement && this.state.poseTrackerDebugOptions &&\n
\n \n
\n }\n {\n this.props.options.tracking.debug &&\n {\n this.setDepthRange(depthRange);\n }}\n />\n }\n \n );\n }\n\n setDepthRange(depthRange: TrackingOptions['standstill']['depthRange']) {\n this.setState(prevState => ({\n ...prevState,\n trackingOptions: {\n ...prevState.trackingOptions,\n standstill: {\n ...prevState.trackingOptions.standstill,\n depthRange\n }\n }\n }));\n }\n}\n\nexport {\n FrameAdvisorVideo,\n};\n","import { CaptureOptions } from '../interfaces/CaptureParameters';\nimport { DefaultTrackingOptionsLandscape } from './DefaultTrackingOptionsLandscape';\n\nconst DefaultCaptureOptions: Required = {\n enableCountdown: true,\n countdownDuration: 3000,\n countdownDelay: 1000,\n tracking: DefaultTrackingOptionsLandscape,\n showLoading: true,\n enableMachineLearning: false,\n enableVto: true,\n debugMeasurement: false,\n showCaptureTips: false,\n earlyFeedbacks: [],\n ignorePrivacyPolicy: false,\n enableVmp: false,\n};\n\nexport { DefaultCaptureOptions };\n","import { InitializeOptions } from '../interfaces/InitializeParameters';\n\nconst DefaultInitializeOptions: InitializeOptions = {\n locale: '',\n region: 'US',\n source: 'WEB',\n tokenVersion: 2,\n showCaptureTips: false,\n environment: 'PRODUCTION'\n};\n\nexport { DefaultInitializeOptions };\n","import { TrackingOptions } from '@luxottica/vm-posetracker-faceweb';\n\nconst DefaultTrackingOptionsPortrait: Required = {\n debug: false,\n inspect: false,\n machineLearning: false,\n areaSize: 1,\n standstill: {\n // settings coming from: https://luxotticaretail.atlassian.net/browse/PICOMMON-2884?focusedCommentId=908433\n depthRange: {\n min: 500,\n max: 850\n }\n },\n /* axisLimit: undefined, */\n fov: 52.0,\n minimumFaceSizeRatio: 0.3,\n accountForLightingConditions: false,\n filter: undefined,\n\n roi: undefined,\n\n minTrackingConfidence: undefined,\n \n minDetectionConfidence: undefined,\n};\n\nexport { DefaultTrackingOptionsPortrait };\n","import { UploadOptions } from '../interfaces/CaptureParameters';\n\nconst DefaultUploadOptions: UploadOptions = {\n showLoading: true,\n enableMachineLearning: false,\n enableVto: true,\n};\n\nexport { DefaultUploadOptions };\n","import { DefaultCaptureOptions } from '../constants/DefaultCaptureOptions';\nimport { DefaultInitializeOptions } from '../constants/DefaultInitializeOptions';\nimport { DefaultTrackingOptionsLandscape } from '../constants/DefaultTrackingOptionsLandscape';\nimport { DefaultTrackingOptionsPortrait } from '../constants/DefaultTrackingOptionsPortrait';\nimport { CaptureOptions, PhotoQualityCheck, UploadOptions, VtoCaptureOptions } from '../interfaces/CaptureParameters';\nimport { InitializeOptions, PrivacyOptions } from '../interfaces/InitializeParameters';\nimport { InitializationParamsError } from '../errors/errors';\nimport { DefaultUploadOptions } from '../constants/DefaultUploadOptions';\nimport { DefaultVtoCaptureOptions } from '../constants/DefaultVtoCaptureOptions';\nimport { DefaultSmartRulerOptions } from '../constants/DefaultSmartRulerOptions';\nimport { SmartRulerConfig } from '@luxottica/face-web';\nimport { FrameAdvisorConfiguration } from '../interfaces/Config';\nimport device, { DeviceType } from 'current-device';\n\nconst setDefaultInitializeOptions = (\n inputParams: Partial = {}\n): InitializeOptions => {\n // region and source are mandatory\n if (!inputParams.region || !inputParams.source) {\n throw new InitializationParamsError(inputParams);\n }\n return {\n ...DefaultInitializeOptions,\n ...inputParams\n };\n};\n\nconst setDefaultSmartRulerConfig = (\n smartRulerConfig: SmartRulerConfig\n): SmartRulerConfig => {\n return {\n ...DefaultSmartRulerOptions,\n ...smartRulerConfig,\n };\n};\n\nconst setDefaultCaptureOptions = (\n inputParams: Partial = {}\n): Required => {\n const deviceType: DeviceType = device.tablet() || device.mobile() ? 'mobile' : 'desktop';\n const config = {\n ...DefaultCaptureOptions,\n ...inputParams,\n tracking: {\n ...DefaultTrackingOptionsPortrait,\n ...inputParams?.tracking,\n standstill: {\n ...(deviceType === 'mobile' ? DefaultTrackingOptionsPortrait.standstill : DefaultTrackingOptionsLandscape.standstill),\n ...inputParams?.tracking?.standstill,\n }\n },\n showLoading: (inputParams.showLoading === undefined || inputParams.showLoading === null) ? DefaultCaptureOptions.showLoading : inputParams.showLoading,\n };\n config.tracking.accountForLightingConditions = config.earlyFeedbacks.indexOf(PhotoQualityCheck.LIGHT_CONDITIONS) >= 0;\n return config;\n};\n\nconst setDefaultVtoCaptureOptions = (\n inputParams: Partial = {}\n): CaptureOptions => {\n return {\n ...DefaultVtoCaptureOptions,\n ...inputParams,\n tracking: {\n ...DefaultTrackingOptionsPortrait,\n ...inputParams.tracking,\n }\n };\n};\n\nconst setDefaultUploadImageOptions = (\n inputParams: Partial = {}\n): UploadOptions => {\n return {\n ...DefaultUploadOptions,\n ...inputParams,\n showLoading: (inputParams.showLoading === undefined || inputParams.showLoading === null) ? DefaultCaptureOptions.showLoading : inputParams.showLoading,\n };\n};\n\nconst validatePrivacyOptions = (\n privacy: PrivacyOptions\n): FrameAdvisorConfiguration['privacy'] => {\n // this throws an error if the URL is not valid\n return {\n termsAndConditions: new URL(privacy.termsAndConditions as string ),\n localizationText: privacy.localizationText,\n onTermsAndConditionsClick: privacy.onTermsAndConditionsClick,\n };\n};\n\nexport {\n setDefaultInitializeOptions,\n setDefaultCaptureOptions,\n setDefaultVtoCaptureOptions,\n setDefaultUploadImageOptions,\n validatePrivacyOptions,\n setDefaultSmartRulerConfig,\n};\n","import { SmartRulerConfig } from '@luxottica/face-web';\n\nconst DefaultSmartRulerOptions: SmartRulerConfig = undefined;\n\nexport { DefaultSmartRulerOptions };\n","let initialized = false;\n\nexport const hasInitialized = (): boolean => {\n return initialized;\n};\n\nexport const setInitialized = (v: boolean) => {\n initialized = v;\n};\n","import { DeviceDetection } from '@luxottica/vm-devicedetection';\nimport { SupportedFeatures } from '../interfaces/InitializeResult';\n\nconst SupportedFeaturesHelper = {\n getSupportedFeatures() {\n return new Promise((resolve, reject) => {\n const devicedetection = new DeviceDetection();\n return devicedetection.isVideoInputDeviceAvailable().then((available) => {\n resolve({\n wasmSupport: devicedetection.isWebAssemblySupported(),\n webcamAccess: devicedetection.isUserMediaSupported(),\n webcamAvailable: available\n });\n }).catch((error) => {\n reject(error);\n });\n });\n }\n};\n\nexport { \n SupportedFeaturesHelper\n};\n","import { RemoteLogConfig } from '@luxottica/vm-remotelog';\nimport { name, version } from '../../../package.json';\nimport { AuthenticationOptions, InitializeParameters } from '../../interfaces/InitializeParameters';\nimport { InitializeResult } from '../../interfaces/InitializeResult';\nimport { setDefaultInitializeOptions, setDefaultSmartRulerConfig, validatePrivacyOptions } from '../../helpers/ParameterHelper';\nimport { CONFIG, setConfig } from '../../helpers/ConfigHelper';\nimport { setCallbacks } from '../../helpers/CallbackHelper';\nimport { setAuthData } from '../../helpers/AuthHelper';\nimport { SupportedFeaturesHelper } from '../../helpers/SupportedFeaturesHelper';\nimport { RequestHelper } from '../../helpers/RequestHelper';\nimport { warmUp } from './WarmUp';\nimport { LocalizationHelper } from '../../helpers/LocalizationHelper';\nimport { FrameAdvisorError, InitializationError } from '../../errors/errors';\nimport { onError } from './OnError';\nimport { setInitialized } from './HasInitialized';\n\nconst logger = RemoteLogConfig.getInstance().getLoggerInfo(name, version, 'FrameAdvisorCapture-Initialize');\n\nexport const initialize = (\n initParams: InitializeParameters\n): Promise => {\n window.addEventListener('error', onError);\n logger.debug('initializing');\n setInitialized(false);\n\n // in this world promise is a valid alternative to try/catch block\n return Promise.resolve().then(() => {\n const validatedParams = setDefaultInitializeOptions(initParams.options);\n const validatedPrivacyOptions = validatePrivacyOptions(initParams.privacy);\n const validatedSmartRulerOptions = setDefaultSmartRulerConfig(initParams.smartRulerConfig);\n\n // set a CONFIG variable to be shared with capture() method\n setConfig(\n validatedParams.environment,\n validatedParams.region,\n validatedParams.source,\n validatedParams.locale,\n validatedPrivacyOptions, // validate privacy URLs\n validatedParams.tokenVersion,\n validatedParams.showCaptureTips,\n validatedSmartRulerOptions,\n );\n setCallbacks(initParams.callbacks);\n setAuthData(initParams.auth as AuthenticationOptions);\n\n return Promise.all([\n SupportedFeaturesHelper.getSupportedFeatures().then((features) => {\n return {\n locale: validatedParams.locale,\n isSupported: features.webcamAvailable && features.webcamAccess && features.wasmSupport,\n supportedFeatures: features\n };\n }),\n RequestHelper.login(validatedParams.tokenVersion)\n ]);\n }).then((responseData) => {\n // this downloads all the heavy stuff for the tracker engine\n warmUp(CONFIG.environment);\n return LocalizationHelper.setLocalizationText(responseData[0].locale, CONFIG.source, CONFIG.showCaptureTips, CONFIG.environment).then(() => {\n setInitialized(true);\n return {\n locale: responseData[0].locale,\n isSupported: responseData[0].isSupported,\n supportedFeatures: responseData[0].supportedFeatures,\n };\n });\n }).catch((e) => {\n if (e instanceof FrameAdvisorError) {\n throw e;\n } else {\n const error = new InitializationError(initParams, undefined, e);\n logger.error(error);\n throw error;\n }\n });\n};\n","import * as React from 'react';\nimport './LoadingSpinner.scss';\n\ninterface LoadingSpinnerProps {\n width: number;\n height: number;\n background: boolean;\n text?: string;\n}\n\nexport const LoadingSpinner = (props: LoadingSpinnerProps) => {\n\n const size = Math.min(props.width, props.height);\n\n return (\n
\n
\n
\n
\n
\n );\n};","import { RemoteLog } from '@luxottica/vm-remotelog';\n\nconst remoteLog: RemoteLog = new RemoteLog();\n\nexport const onError = (e) => {\n remoteLog.sendAppViewSession({\n statusCode: '99-error',\n statusText: e.message\n });\n};\n","import { RemoteLogConfig } from '@luxottica/vm-remotelog';\nimport { name, version } from '../../package.json';\nimport { RecordingError } from '../errors/errors';\n\nlet mediaRecorder: MediaRecorder;\nlet chunks: Blob[] = [];\n\nconst defaultMimeType = 'video/webm;codecs=vp9';\nconst iosMimeType = 'video/mp4';\nconst ffMimeType = 'video/webm';\nlet currentFileType: 'mp4' | 'webm';\n\nconst logger = RemoteLogConfig.getInstance().getLoggerInfo(name, version, 'RecordingHelper');\n\nconst RecordingHelper = {\n initialize: (\n mediaStream: MediaStream,\n onComplete: (videoData: Blob[]) => void\n ) => {\n RecordingHelper.reset();\n\n let mimeType;\n if (MediaRecorder.isTypeSupported(defaultMimeType)) {\n mimeType = defaultMimeType;\n currentFileType = 'webm';\n } else if (MediaRecorder.isTypeSupported(iosMimeType)) {\n mimeType = iosMimeType;\n currentFileType = 'mp4';\n } else if (MediaRecorder.isTypeSupported(ffMimeType)) {\n mimeType = ffMimeType;\n currentFileType = 'webm';\n } else {\n throw new RecordingError('recording video mime type unsupported');\n }\n\n mediaRecorder = new MediaRecorder(mediaStream, { mimeType: mimeType });\n\n mediaRecorder.onstart = () => { \n logger.debug('media recorder started');\n };\n\n mediaRecorder.ondataavailable = (blobEvent: BlobEvent) => {\n logger.debug('media recorder data available: size={} mimeType={}', blobEvent.data.size, mediaRecorder.mimeType);\n chunks.push(blobEvent.data);\n onComplete(chunks);\n };\n },\n\n startRecording: () => {\n if (!!mediaRecorder && mediaRecorder.state !== 'recording') {\n mediaRecorder.start(100000000000);\n }\n },\n\n stopRecording: () => {\n if (!!mediaRecorder && mediaRecorder.state === 'recording') {\n mediaRecorder.stop();\n }\n },\n\n getFileType: (): 'webm' | 'mp4' => {\n return (!!currentFileType) ? currentFileType : undefined;\n },\n\n reset: () => {\n mediaRecorder = undefined;\n chunks = [];\n }\n};\n\nexport {\n RecordingHelper\n};\n","import {\n loginRequest, LoginReturn,\n processImageRequest, uploadImageDataRequest, uploadImageRequest,\n processVideoRequest, uploadVideoRequest,\n ProfileReturn,\n sessionRequest, SessionReturn,\n uploadMeasurementRequest } from '@luxottica/vto-microservices';\nimport { getAuthData } from './AuthHelper';\nimport { CallbackHelper } from './CallbackHelper';\nimport { CONFIG } from './ConfigHelper';\nimport { RecordingHelper } from './RecordingHelper';\n\nlet videoId: string;\nlet uploadPath: string;\n\nconst RequestHelper = {\n login: (tokenVersion: 1 | 2): Promise => {\n return loginRequest({\n environment: CONFIG.environment,\n accessToken: getAuthData().accessToken,\n refreshToken: getAuthData().refreshToken,\n version: tokenVersion,\n onAuthUpdated: CallbackHelper.onAuthUpdated,\n });\n },\n\n startSession: (): Promise => {\n return sessionRequest({\n environment: CONFIG.environment,\n accessToken: getAuthData().accessToken,\n refreshToken: getAuthData().refreshToken,\n onAuthUpdated: CallbackHelper.onAuthUpdated,\n region: CONFIG.region,\n source: CONFIG.source\n }).then((result) => {\n videoId = result.videoId;\n uploadPath = result.uploadPath;\n return result;\n });\n },\n\n uploadImage: (\n img: Blob\n ): Promise => {\n return uploadImageRequest({\n environment: CONFIG.environment,\n accessToken: getAuthData().accessToken,\n refreshToken: getAuthData().refreshToken,\n onAuthUpdated: CallbackHelper.onAuthUpdated,\n img: img,\n uploadPath: uploadPath\n });\n },\n\n uploadImageData: (\n imgData: ImageData\n ): Promise => {\n return uploadImageDataRequest({\n environment: CONFIG.environment,\n accessToken: getAuthData().accessToken,\n refreshToken: getAuthData().refreshToken,\n onAuthUpdated: CallbackHelper.onAuthUpdated,\n imgData: imgData,\n uploadPath: uploadPath\n });\n },\n\n processImage: (\n enableMachineLearning: boolean,\n enableVto: boolean,\n shouldCancel: () => boolean\n ): Promise => {\n return processImageRequest({\n environment: CONFIG.environment,\n accessToken: getAuthData().accessToken,\n refreshToken: getAuthData().refreshToken,\n onAuthUpdated: CallbackHelper.onAuthUpdated,\n videoId: videoId,\n enableMachineLearning: enableMachineLearning,\n enableVto: enableVto,\n shouldCancel: shouldCancel\n });\n },\n\n uploadVideo: (\n video: Blob[]\n ): Promise => {\n return uploadVideoRequest({\n environment: CONFIG.environment,\n accessToken: getAuthData().accessToken,\n refreshToken: getAuthData().refreshToken,\n onAuthUpdated: CallbackHelper.onAuthUpdated,\n videoId: videoId,\n video: video,\n fileType: RecordingHelper.getFileType(),\n uploadPath: uploadPath,\n });\n },\n\n processVideo: (\n enableMachineLearning: boolean,\n enableVto: boolean,\n shouldCancel: () => boolean\n ): Promise => {\n return processVideoRequest({\n environment: CONFIG.environment,\n accessToken: getAuthData().accessToken,\n refreshToken: getAuthData().refreshToken,\n onAuthUpdated: CallbackHelper.onAuthUpdated,\n videoId: videoId,\n enableMachineLearning: enableMachineLearning,\n enableVto: enableVto,\n shouldCancel: shouldCancel\n });\n },\n\n uploadMeasurement: (\n finalComputedPD: number,\n finalFaceBreadth: number\n ): Promise => {\n return uploadMeasurementRequest({\n environment: CONFIG.environment,\n accessToken: getAuthData().accessToken,\n refreshToken: getAuthData().refreshToken,\n finalComputedPD,\n finalFaceBreadth,\n videoId: videoId,\n });\n }\n};\n\nexport {\n RequestHelper,\n};\n","const ROOT_STYLE_NAME = 'frame-advisor-root-style';\n\nexport {\n ROOT_STYLE_NAME\n};\n","export enum VideoStatus {\n LOADING = 'LOADING',\n PLAYING = 'PLAYING', \n STOPPED = 'STOPPED'\n}","class Timer {\n\n private startTime: number;\n private currentDuration: number;\n private currentTimer: number;\n\n public start(\n duration: number,\n onComplete: () => void\n ) {\n this.stop();\n this.startTime = Date.now();\n this.currentDuration = duration;\n this.currentTimer = window.setTimeout(onComplete, duration);\n }\n\n public stop() {\n window.clearTimeout(this.currentTimer);\n this.startTime = undefined;\n this.currentDuration = undefined;\n this.currentTimer = undefined;\n }\n\n public get active() {\n return this.currentTimer !== undefined;\n }\n\n public get currentTime() {\n return (this.currentDuration) ? Math.min(Date.now() - this.startTime, this.currentDuration) : undefined;\n }\n\n public get timeRemaining() {\n return (this.currentDuration) ? (this.currentDuration - (Date.now() - this.startTime)) : undefined;\n }\n}\n\nexport {\n Timer\n};\n","import { RemoteLogConfig } from '@luxottica/vm-remotelog';\nimport { NativeStream, WebCam } from '@luxottica/vm-webcam';\nimport { name, version } from '../../package.json';\n\nconst logger = RemoteLogConfig.getInstance().getLoggerInfo(name, version, 'WebCamHelper');\n\nconst webCam = new WebCam();\n\nconst WebcamHelper = {\n openWebcam: (\n width: number,\n height: number\n ) => {\n logger.debug('Try to open webcam {}x{}', width, height);\n return webCam.tryToOpenWebCam(width, height, 'user');\n },\n\n createStream: (\n options: {\n target: string;\n id?: string;\n className?: string;\n }, \n stream: MediaStream | NativeStream\n ) => {\n return webCam.createStreamObject(options, stream);\n },\n\n closeStream: () => {\n return webCam.closeCurrentMediaStream();\n }\n};\n\nexport {\n WebcamHelper\n};\n","import { GuidanceCommand } from '@luxottica/vm-posetracker-faceweb';\nimport * as React from 'react';\nimport { getText } from '../helpers/LocalizationHelper';\nimport './NudgingGuide.scss';\n\ninterface NudgingGuideProps {\n guidance: GuidanceCommand;\n glasses?: boolean;\n vto?: boolean;\n}\n\nexport class NudgingGuide extends React.PureComponent<\n NudgingGuideProps\n> {\n public render() {\n if (this.props.guidance === undefined || this.props.guidance === GuidanceCommand.NONE) {\n return <>;\n } else {\n return (\n
\n {getText(this.props.guidance, this.props.glasses, this.props.vto)}\n
\n );\n }\n }\n}\n","import * as React from 'react';\n\nimport './CheckIcon.scss';\n\ninterface CheckIconProps {\n enabled: boolean;\n size: number;\n}\n\nexport const CheckIcon = (props: CheckIconProps) => {\n\n return (\n
\n \n \n \n \n
\n );\n};","import { GuidanceCommand, IEllipse, PoseTracker } from '@luxottica/vm-posetracker-faceweb';\nimport { RemoteLogConfig } from '@luxottica/vm-remotelog';\nimport * as React from 'react';\nimport { name, version } from '../../package.json';\nimport { CheckIcon } from './CheckIcon';\nimport { CallbackHelper } from '../helpers/CallbackHelper';\nimport './TrackingAreaPlaceholder.scss';\n\nconst logger = RemoteLogConfig.getInstance().getLoggerInfo(name, version, 'TrackingAreaPlaceholder');\n\nexport interface TrackingAreaPlaceholderProps {\n areaSize?: number;\n sourceWidth: number;\n sourceHeight: number;\n minimumFaceSizeRatio?: number;\n mirrorVideoWidth: number;\n mirrorVideoHeight: number;\n guidance: GuidanceCommand;\n checkIcon: boolean;\n strokeWidth?: number;\n debug?: boolean;\n}\n\nexport class TrackingAreaPlaceholder extends React.PureComponent {\n\n private strokeWidth = 3;\n private strokeDashArray = '6, 7';\n\n // oval state classes\n private nudingClassUnknown = 'fa-nudging-unknown';\n private nudingClassDirections = 'fa-nudging-directions';\n private nudingClassStandstill = 'fa-nudging-stay-still';\n\n public ellipseData: IEllipse | undefined;\n\n constructor(props: TrackingAreaPlaceholderProps) {\n super(props);\n logger.debug('render tracking area with size {}', this.props.areaSize);\n logger.debug('canvas crop size: {}x{}', this.props.sourceHeight, this.props.sourceWidth);\n logger.debug('svg ellipse 1 [cx={},cy={},rx={},ry={}]',\n this.svgEllipseCX(), this.svgEllipseCY(), this.svgEllipseRadiusX_UI(), this.svgEllipseRadiusY_UI());\n logger.debug(\n 'svg ellipse 2 [enabled={}] [cx={},cy={},rx={},ry={}]',\n this.props.debug,\n this.svgEllipseCX(),\n this.svgEllipseCY(),\n this.svgEllipseRadiusX_debug(),\n this.svgEllipseRadiusY_debug()\n );\n }\n\n\n public render() {\n\n if (this.props.guidance === undefined || this.props.guidance === GuidanceCommand.NONE) {\n return <>;\n } else {\n const styleName = this.getNudgingStyle(this.props.guidance);\n\n if(this.ellipseData === undefined) {\n this.ellipseData = this.getTargetEllipse(); \n }\n \n // don't render ellipse if user wants to use a custom one\n if(!!CallbackHelper.ellipseDimension) {\n CallbackHelper.ellipseDimension(this.ellipseData);\n return (\n \n );\n }\n\n return (\n <>\n \n \n { /* this represent the face size according to the current poseTracker debug messages */\n this.props.debug &&\n }\n \n \n \n );\n }\n }\n\n private getTargetEllipse(): IEllipse {\n return PoseTracker.getTargetEllipse({\n width: this.props.sourceWidth,\n height: this.props.sourceHeight,\n });\n }\n\n private getNudgingStyle(\n guidance: GuidanceCommand\n ): string {\n if (guidance === GuidanceCommand.UNKNOWN) {\n return this.nudingClassUnknown;\n } else if (guidance === GuidanceCommand.STAY_STILL) {\n return this.nudingClassStandstill;\n } else {\n return this.nudingClassDirections;\n }\n }\n\n private svgEllipseCX(): number {\n return this.props.sourceWidth / 2;\n }\n\n private svgEllipseCY(): number {\n return this.props.sourceHeight / 2; \n }\n\n private svgEllipseRadiusX_UI(): number {\n return this.ellipseData ? this.ellipseData.sizePx.width / 2 : 0; \n }\n\n private svgEllipseRadiusY_UI(): number {\n return this.ellipseData ? this.ellipseData.sizePx.height / 2 : 0; \n }\n\n private svgEllipseRadiusX_debug(): number {\n return this.getFaceSize() / 2;\n }\n\n private svgEllipseRadiusY_debug(): number {\n return this.getFaceSize() / 2;\n }\n\n /*\n From Headtracker source code\n https://github.com/luxdeepblue/\n vto_wasm_headtracker/blob/2d6bef37d4eccd96579d55411965602c3da94a31/src/vto/head_tracker.cpp#L87-L97\n */\n private getFaceSize(): number {\n const smallestSide = Math.min(this.props.mirrorVideoWidth, this.props.mirrorVideoHeight);\n const faceSideSize = smallestSide * this.props.minimumFaceSizeRatio;\n return faceSideSize;\n }\n\n // We define an ellipse with diameters of: width: 1.0, height: 1.4\n // To calculate ellipse's diameters we check two fixed proportions against the minimumFaceSizeRatio\n private get getFaceSizeUI(): {\n width: number;\n height: number;\n } {\n const smallestSide: number = Math.min(this.props.mirrorVideoWidth, this.props.mirrorVideoHeight);\n const isLandscape: boolean = smallestSide === this.props.mirrorVideoHeight;\n const referenceSide = isLandscape ? this.props.mirrorVideoHeight * 0.5 : this.props.mirrorVideoWidth * 0.8;\n const faceSize = {\n width: referenceSide * Math.max(1, this.props.minimumFaceSizeRatio),\n height: referenceSide * Math.max(1.4, (this.props.minimumFaceSizeRatio * 1.4)),\n };\n return faceSize;\n }\n}\n","import { RemoteLogConfig } from '@luxottica/vm-remotelog';\nimport { name, version } from '../../../package.json';\nimport { CallbackHelper } from '../../helpers/CallbackHelper';\nimport { RequestHelper } from '../../helpers/RequestHelper';\nimport { UploadOptions } from '../../interfaces/CaptureParameters';\nimport './UploadImage.scss';\n\nconst logger = RemoteLogConfig.getInstance().getLoggerInfo(name, version, 'UploadImageData');\n\nconst uploadImageData = (\n imageData: ImageData,\n options: UploadOptions\n): Promise => {\n if (!!imageData) {\n logger.debug('imageData received');\n\n return RequestHelper.startSession().then(() => {\n RequestHelper.uploadImageData(imageData).then(() => {\n return RequestHelper.processImage(\n options.enableMachineLearning,\n options.enableVto,\n () => { return false; }\n );\n }).then((result) => {\n logger.debug('upload imageData complete');\n CallbackHelper.onAdvisorResult({\n ...(options.enableMachineLearning && { properties: result.properties }),\n videoId: result.videoId\n });\n }).catch((error) => {\n CallbackHelper.onCaptureError(error);\n });\n });\n } else {\n logger.warn('invalid imageData, aborting upload process');\n }\n};\n\nexport {\n uploadImageData,\n};\n","import { uploadImageData as uploadData } from '../../components/upload-image/UploadImageData';\nimport { NotInitializedError } from '../../errors/errors';\nimport { setDefaultUploadImageOptions } from '../../helpers/ParameterHelper';\nimport { UploadImageDataParameters } from '../../interfaces/CaptureParameters';\nimport { hasInitialized } from './HasInitialized';\n\nexport const uploadImageData = (\n uploadParams: UploadImageDataParameters\n): Promise => {\n if (!hasInitialized()) {\n return Promise.reject(new NotInitializedError());\n }\n\n const validatedOptions = setDefaultUploadImageOptions(uploadParams.options);\n return uploadData(uploadParams.imageData, validatedOptions);\n};\n","enum UploadStatus {\n INITIAL = 'INITIAL',\n ACCEPT = 'ACCEPT',\n ACCEPT_THIRD_PARTY = 'ACCEPT_THIRD_PARTY',\n UPLOADING = 'UPLOADING',\n PROCESSING = 'PROCESSING',\n ERROR = 'ERROR'\n}\n\nexport {\n UploadStatus,\n};\n","import { RemoteLogConfig } from '@luxottica/vm-remotelog';\nimport { DeviceType } from 'current-device';\nimport React, { Component, createRef, RefObject } from 'react';\nimport { name, version } from '../../../package.json';\nimport { CallbackHelper } from '../../helpers/CallbackHelper';\nimport { LocalizationHelper } from '../../helpers/LocalizationHelper';\nimport { RequestHelper } from '../../helpers/RequestHelper';\nimport { UploadOptions } from '../../interfaces/CaptureParameters';\nimport { FrameAdvisorErrorOverlay } from '../fa-capture/FrameAdvisorErrorOverlay';\nimport { LoadingSpinner } from '../LoadingSpinner';\n\nimport './UploadImage.scss';\nimport { UploadStatus } from './UploadStatus';\n\nconst logger = RemoteLogConfig.getInstance().getLoggerInfo(name, version, 'UploadImage');\n\ninterface UploadImageProps {\n options: UploadOptions;\n deviceType: DeviceType;\n}\n\ninterface UploadImageState {\n uploadStatus: UploadStatus;\n dragOver: boolean;\n}\n\nclass UploadImage extends Component<\n UploadImageProps,\n UploadImageState\n> {\n\n private mounted: boolean;\n private imageInput: RefObject;\n private currentFile: File;\n private currentImage = new Image();\n\n constructor(props: UploadImageProps) {\n super(props);\n this.imageInput = createRef();\n this.state = {\n uploadStatus: UploadStatus.INITIAL,\n dragOver: false\n };\n }\n\n componentDidMount() {\n this.mounted = true;\n document.body.addEventListener('mouseenter', this.mouseEnterHandler);\n document.body.addEventListener('dragover', this.dragOverHandler);\n document.body.addEventListener('dragenter', this.dragEnterHandler);\n document.body.addEventListener('dragleave', this.dragLeaveHandler);\n document.body.addEventListener('drop', this.windowDropHandler);\n }\n\n componentWillUnmount() {\n this.mounted = false;\n document.body.removeEventListener('mouseenter', this.mouseEnterHandler);\n document.body.removeEventListener('dragover', this.dragOverHandler);\n document.body.removeEventListener('dragenter', this.dragEnterHandler);\n document.body.removeEventListener('dragleave', this.dragLeaveHandler);\n document.body.removeEventListener('drop', this.windowDropHandler);\n }\n\n imageInputHandler = (e: React.FormEvent) => {\n if (!!this.imageInput.current?.files?.[0]) {\n this.generateImagePreview(this.imageInput.current?.files?.[0]);\n }\n e.currentTarget.value = '';\n }\n\n dropHandler = (e) => {\n e.stopPropagation();\n e.preventDefault();\n this.setState({ dragOver: false });\n\n let file: File;\n if (e.dataTransfer.items && e.dataTransfer.items?.[0].kind === 'file') {\n file = e.dataTransfer.items[0].getAsFile();\n } else if (e.dataTransfer?.files.length > 0) {\n file = e.dataTransfer.files[0];\n }\n\n if (!!file) {\n this.generateImagePreview(file);\n }\n };\n\n generateImagePreview = (file: File) => {\n this.currentFile = file;\n const reader = new FileReader();\n reader.readAsDataURL(this.currentFile);\n\t\treader.onload = (e) => {\n this.currentImage.src = e.target.result.toString();\n this.currentImage.onload = () => {\n\n if (!!CallbackHelper.onImageConfirm) {\n this.setState({ uploadStatus: UploadStatus.ACCEPT_THIRD_PARTY });\n CallbackHelper.onImageConfirm(this.currentImage.src).then((imageAccepted) => {\n if (imageAccepted) {\n this.sendUploadImageRequest(this.currentFile);\n } else {\n this.setState({ uploadStatus: UploadStatus.INITIAL });\n }\n });\n\n } else {\n this.setState({ uploadStatus: UploadStatus.ACCEPT });\n }\n };\n };\n }\n\n windowDropHandler = (e) => {\n e.preventDefault();\n this.setState({ dragOver: false });\n };\n\n mouseEnterHandler = () => {\n if (this.state.dragOver === true) {\n this.setState({ dragOver: false });\n }\n };\n\n dragOverHandler = (e) => {\n e.stopPropagation();\n e.preventDefault();\n };\n\n dragEnterHandler = (e) => {\n e.stopPropagation();\n e.preventDefault();\n this.setState({ dragOver: true });\n };\n\n dragLeaveHandler = (e) => {\n e.preventDefault();\n };\n\n onAcceptFile = () => {\n this.sendUploadImageRequest(this.currentFile);\n }\n\n onDeclineFile = () => {\n this.setState({\n uploadStatus: UploadStatus.INITIAL\n });\n }\n\n sendUploadImageRequest = (file: File): void => {\n if (!!file) {\n logger.debug(`file received: ${file.name}`);\n logger.debug(file);\n\n this.setState({ uploadStatus: UploadStatus.UPLOADING });\n\n RequestHelper.startSession().then(() => {\n RequestHelper.uploadImage(file).then(() => {\n if (this.mounted) {\n this.setState({ uploadStatus: UploadStatus.PROCESSING });\n return RequestHelper.processImage(\n this.props.options.enableMachineLearning,\n this.props.options.enableVto,\n () => { return !this.mounted; });\n }\n }).then((result) => {\n if (this.mounted) {\n logger.debug('upload image complete');\n this.resetComponent();\n CallbackHelper.onAdvisorResult({\n ...(this.props.options.enableMachineLearning && { properties: result.properties }),\n videoId: result.videoId\n });\n }\n }).catch((error) => {\n if (this.mounted) {\n this.setState({ uploadStatus: UploadStatus.ERROR });\n CallbackHelper.onCaptureError(error);\n }\n });\n });\n } else {\n logger.warn('invalid file, aborting upload process');\n }\n }\n\n resetComponent = () => {\n this.currentFile = undefined;\n this.currentImage = new Image();\n this.setState({ uploadStatus: UploadStatus.INITIAL });\n }\n\n render() {\n let displayText = '';\n if (this.props.deviceType === 'mobile') {\n displayText = LocalizationHelper.getString('upload', 'tap_to_upload');\n } else {\n displayText = (this.state.dragOver) ? LocalizationHelper.getString('upload', 'drop_here') : LocalizationHelper.getString('upload', 'click_or_drop');\n }\n\n const showLoading = (this.state.uploadStatus === UploadStatus.UPLOADING || this.state.uploadStatus === UploadStatus.PROCESSING);\n const showImgPreview = showLoading || this.state.uploadStatus === UploadStatus.ACCEPT || this.state.uploadStatus === UploadStatus.ERROR;\n\n return (\n
\n {this.state.uploadStatus === UploadStatus.INITIAL &&\n \n }\n\n {showImgPreview &&\n
\n
\n \n
\n
\n }\n\n {(this.state.uploadStatus === UploadStatus.ACCEPT) &&\n
\n \n \n
\n }\n\n
\n \n
\n {(this.state.uploadStatus === UploadStatus.UPLOADING) ?\n LocalizationHelper.getString('server_processing', 'image_upload') : LocalizationHelper.getString('server_processing', 'image_processing')}\n
\n
\n\n \n
\n );\n }\n}\n\nexport {\n UploadImage,\n};\n","import { AgreementType, BipaManager, BipaOverlay } from '@luxottica/bipa-manager';\nimport { DeviceType } from 'current-device';\nimport React, { useState } from 'react';\nimport { getAuthData } from '../../helpers/AuthHelper';\nimport { CallbackHelper } from '../../helpers/CallbackHelper';\nimport { CONFIG } from '../../helpers/ConfigHelper';\nimport { UploadOptions } from '../../interfaces/CaptureParameters';\nimport { FrameAdvisorErrorOverlay } from '../fa-capture/FrameAdvisorErrorOverlay';\nimport { UploadImage } from './UploadImage';\nimport './UploadImageContainer.scss';\n\ntype agreementStatus = 'INITIAL' | 'APPROVED' | 'REJECTED' | 'ERROR';\n\nconst UploadImageContainer = (props: {\n options: UploadOptions,\n deviceType: DeviceType\n}) => {\n\n const [agreementStatus, setAgreementStatus] = useState(\n BipaManager.biometricCookieExists(AgreementType.BIOMETRIC) || props.options.ignorePrivacyPolicy ? 'APPROVED' : 'INITIAL'\n );\n\n let content;\n\n switch (agreementStatus) {\n case 'INITIAL':\n CallbackHelper.onPrivacyDisplay();\n content = (\n {\n // close the Privacy agreement and start the experience\n setAgreementStatus('APPROVED');\n },\n onUserReject: () => {\n // close the Privacy agreement and BLOCK the experience\n setAgreementStatus('REJECTED');\n CallbackHelper.onPrivacyReject();\n },\n onError: (error) => {\n setAgreementStatus('ERROR');\n CallbackHelper.onPrivacyFail(error);\n },\n onAuthUpdated: CallbackHelper.onAuthUpdated\n }} privacy={{\n termsAndConditions: CONFIG.privacy.termsAndConditions,\n localizationText: CONFIG.privacy?.localizationText\n }}/>\n );\n break;\n case 'APPROVED':\n CallbackHelper.onCaptureProcess();\n content = ;\n break;\n case 'ERROR':\n content = { setAgreementStatus('INITIAL'); }} />;\n break;\n case 'REJECTED':\n default:\n content = <>;\n break;\n }\n\n return (\n
\n {content}\n
\n );\n};\n\nexport {\n UploadImageContainer\n};\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { UploadImageContainer } from './UploadImageContainer';\nimport device, { DeviceType } from 'current-device';\nimport { ROOT_STYLE_NAME } from '../../constants/Styling';\nimport { UploadOptions } from '../../interfaces/CaptureParameters';\n\nlet currentContainer;\n\nconst loadUploadImage = (\n container: HTMLElement,\n options: UploadOptions,\n onMount: () => void\n) => {\n\n currentContainer = container;\n currentContainer.classList.add(ROOT_STYLE_NAME);\n const deviceType: DeviceType = (device.mobile()) ? 'mobile' : 'desktop';\n\n ReactDOM.render(\n ,\n container,\n onMount\n );\n};\n\nconst closeUploadImageComponent = () => {\n if (!!currentContainer) {\n ReactDOM.unmountComponentAtNode(currentContainer);\n }\n};\n\nexport {\n loadUploadImage,\n closeUploadImageComponent\n};\n","import { loadVtoCapture } from '../../components/vto-capture/VtoCaptureLoader';\nimport { MountError, NotInitializedError } from '../../errors/errors';\nimport { setDefaultVtoCaptureOptions } from '../../helpers/ParameterHelper';\nimport { RequestHelper } from '../../helpers/RequestHelper';\nimport { VtoCaptureParameters } from '../../interfaces/CaptureParameters';\nimport { hasInitialized } from './HasInitialized';\n\nexport const vtoCapture = (\n vtoCaptureParams: VtoCaptureParameters\n): Promise => {\n if (!hasInitialized()) {\n return Promise.reject(new NotInitializedError());\n }\n\n const validatedOptions = setDefaultVtoCaptureOptions(vtoCaptureParams.options);\n return RequestHelper.startSession().then(() => {\n return new Promise((resolve, reject) => {\n const container = document.getElementById(vtoCaptureParams.target);\n if (!!container) {\n loadVtoCapture(container, validatedOptions, () => { resolve(undefined); });\n } else {\n reject(new MountError(vtoCaptureParams.target));\n }\n });\n });\n};\n","import React from 'react';\nimport { LocalizationHelper } from '../../helpers/LocalizationHelper';\nimport './VtoCaptureErrorOverlay.scss';\n\nconst VtoCaptureErrorOverlay = (props: {\n enabled: boolean,\n onClickOk: () => void\n}) => {\n\n return (\n
\n {props.enabled &&\n
\n
{LocalizationHelper.getString('vto_record', 'video_doesnt_fulfill_requirements')}
\n
{LocalizationHelper.getString('capture_error', 'subtext')}
\n \n
\n }\n
\n );\n};\n\nexport {\n VtoCaptureErrorOverlay\n};\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { ROOT_STYLE_NAME } from '../../constants/Styling';\nimport { VtoCaptureOptions } from '../../interfaces/CaptureParameters';\nimport { VtoCaptureContainer } from './VtoCaptureContainer';\n\nlet currentContainer;\n\nconst loadVtoCapture = (\n container: HTMLElement,\n options: VtoCaptureOptions,\n onMount: () => void\n) => {\n currentContainer = container;\n currentContainer.classList.add(ROOT_STYLE_NAME);\n ReactDOM.render(\n ,\n container,\n onMount\n );\n};\n\nconst closeVtoCaptureComponent = () => {\n if (!!currentContainer) {\n ReactDOM.unmountComponentAtNode(currentContainer);\n }\n};\n\nexport {\n loadVtoCapture,\n closeVtoCaptureComponent\n};\n","import { AgreementType, BipaManager, BipaOverlay, BipaPage } from '@luxottica/bipa-manager';\nimport React, { lazy, Suspense, useState } from 'react';\nimport { getAuthData } from '../../helpers/AuthHelper';\nimport { CallbackHelper } from '../../helpers/CallbackHelper';\nimport { CONFIG } from '../../helpers/ConfigHelper';\nimport { VtoCaptureOptions } from '../../interfaces/CaptureParameters';\nimport { LoadingSpinner } from '../LoadingSpinner';\nimport './VtoCaptureContainer.scss';\nimport { VtoCaptureErrorOverlay } from './VtoCaptureErrorOverlay';\n\n\ntype agreementStatus = 'INITIAL' | 'APPROVED' | 'REJECTED' | 'ERROR';\n\nconst VtoCaptureContainer = (props: {\n options: VtoCaptureOptions\n}) => {\n\n // begin to download the capture chunk while the user is checking the privacy\n // in case the privacy is already accepted the user will see a loading spinner\n const lazyVtoCapturePromise = import(/* webpackChunkName: \"VtoCaptureVideo\" */ './VtoCaptureVideo')\n .then(({ VtoCaptureVideo }) => ({ default: VtoCaptureVideo }));\n\n // REACT.lazy wrapper used to display a spinner while loading\n const LazyVtoCaptureVideo = lazy(() => lazyVtoCapturePromise);\n\n const [agreementStatus, setAgreementStatus] = useState(\n BipaManager.biometricCookieExists(AgreementType.BIOMETRIC) || props.options.ignorePrivacyPolicy ? 'APPROVED' : 'INITIAL'\n );\n\n let content;\n\n switch (agreementStatus) {\n case 'INITIAL':\n CallbackHelper.onPrivacyDisplay();\n content = (\n {\n CallbackHelper.onDisplayPrivacyPage(page);\n },\n onSubmit: () => {\n // close the Privacy agreement and start the experience\n setAgreementStatus('APPROVED');\n },\n onUserReject: () => {\n // close the Privacy agreement and BLOCK the experience\n setAgreementStatus('REJECTED');\n CallbackHelper.onPrivacyReject();\n },\n onError: (error) => {\n setAgreementStatus('ERROR');\n CallbackHelper.onPrivacyFail(error);\n },\n onAuthUpdated: CallbackHelper.onAuthUpdated\n }} privacy={{\n termsAndConditions: CONFIG.privacy.termsAndConditions,\n localizationText: CONFIG.privacy?.localizationText\n }}/>\n );\n break;\n case 'APPROVED':\n CallbackHelper.onCaptureProcess();\n content = (\n }>\n \n \n );\n break;\n case 'ERROR':\n content = { setAgreementStatus('INITIAL'); }} />;\n break;\n case 'REJECTED':\n default:\n content = <>;\n break;\n }\n\n return (\n
\n {content}\n
\n );\n};\n\nexport {\n VtoCaptureContainer\n};\n","enum RecordingStatus {\n OFF = 'OFF',\n STEP_1 = 'STEP_1',\n STEP_2 = 'STEP_2',\n STEP_3 = 'STEP_3',\n STEP_4 = 'STEP_4',\n STEP_5 = 'STEP_5',\n}\n\nexport {\n RecordingStatus,\n};\n","import { GuidanceCommand, PoseResponse, PoseTracker } from '@luxottica/vm-posetracker-faceweb';\nimport { RemoteLogConfig } from '@luxottica/vm-remotelog';\nimport React, { Component, createRef, RefObject } from 'react';\nimport { name, version } from '../../../package.json';\nimport { VideoStatus } from '../../constants/VideoStatus';\nimport { CallbackHelper, guidanceUpdate } from '../../helpers/CallbackHelper';\nimport { RequestHelper } from '../../helpers/RequestHelper';\nimport { Timer } from '../../helpers/Timer';\nimport { WebcamHelper } from '../../helpers/WebCamHelper';\nimport { VtoCaptureOptions } from '../../interfaces/CaptureParameters';\nimport { CaptureStatus } from '../../interfaces/CaptureStatus';\nimport './VtoCaptureVideo.scss';\nimport { VtoCaptureErrorOverlay } from './VtoCaptureErrorOverlay';\nimport { VtoCaptureOverlay } from './VtoCaptureOverlay';\nimport { RecordingHelper } from '../../helpers/RecordingHelper';\nimport { RecordingStatus } from '../../interfaces/RecordingStatus';\nimport { DefaultCaptureDuration } from '../../constants/DefaultVtoCaptureOptions';\nimport { MicroserviceEnvironment } from '@luxottica/vto-microservices';\n\nconst logger = RemoteLogConfig.getInstance().getLoggerInfo(name, version, 'VtoCaptureVideo');\n\nconst VIDEO_DIV_ID = 'webcam-target';\n\nlet canvas: HTMLCanvasElement;\nlet context: CanvasRenderingContext2D;\nlet mounted: boolean;\n\ninterface VtoCaptureVideoProps {\n options: VtoCaptureOptions,\n environment: MicroserviceEnvironment\n}\n\ninterface VtoCaptureVideoState {\n webcamStream: MediaStream;\n videoStatus: VideoStatus;\n captureStatus: CaptureStatus;\n recordingStatus: RecordingStatus;\n pose: PoseResponse;\n}\n\nclass VtoCaptureVideo extends Component<\n VtoCaptureVideoProps,\n VtoCaptureVideoState\n> {\n\n poseTracker: PoseTracker;\n \n animationRef: number = undefined;\n videoRef: RefObject = undefined;\n timer = new Timer();\n\n constructor(props: VtoCaptureVideoProps) {\n super(props);\n this.state = {\n webcamStream: undefined,\n videoStatus: VideoStatus.LOADING,\n captureStatus: CaptureStatus.LOADING,\n recordingStatus: RecordingStatus.OFF,\n pose: undefined,\n };\n this.videoRef = createRef();\n }\n\n private update = async () => {\n if (!this.videoRef.current || this.state.videoStatus === VideoStatus.STOPPED) {\n return;\n\n } else if (!!this.poseTracker && this.poseTracker.isReady()) {\n context.drawImage(this.videoRef.current, 0, 0, this.videoRef.current.videoWidth, this.videoRef.current.videoHeight);\n \n if (this.state.captureStatus === CaptureStatus.INITIAL\n && this.state.videoStatus === VideoStatus.PLAYING\n && this.state.recordingStatus === RecordingStatus.OFF) {\n const response = await this.poseTracker.getPose({image: canvas});\n \n // store the guidance update because after react state update will not be possible to check it\n const hasGuidanceUpdate = response.guidanceCommand !== this.state.pose?.guidanceCommand;\n\n // set the state and let update the UI before the next step\n // we permit to pause the capture but probably is better to update the UI first\n await new Promise((resolve) => {\n this.setState({\n pose: response\n }, resolve);\n });\n\n // wait for user input in case of necessity\n await guidanceUpdate(response.guidanceCommand, hasGuidanceUpdate, response.defectList, true);\n }\n }\n\n this.animationRef = requestAnimationFrame(this.update);\n };\n\n componentDidMount() {\n canvas = document.createElement('canvas');\n context = canvas.getContext('2d', { preserveDrawingBuffer: true }) as CanvasRenderingContext2D;\n mounted = true;\n this.setState({ videoStatus: VideoStatus.LOADING});\n\n WebcamHelper.openWebcam(1280, 720).then((stream) => {\n this.setState({ webcamStream: stream as MediaStream });\n this.videoRef.current.onplaying = () => {\n try {\n this.poseTracker = new PoseTracker(\n 52,\n this.props.options.tracking.filter,\n this.props.environment == 'PRODUCTION' ? 'PRODUCTION' : 'TEST',\n () => { this.setState({ captureStatus: CaptureStatus.INITIAL }); },\n () => { return; },\n {\n accountForLightingConditions: false,\n standstill: {\n depthRange: {\n min: 300,\n max: 800,\n }\n }\n }\n );\n canvas.width = this.videoRef.current.videoWidth;\n canvas.height = this.videoRef.current.videoHeight;\n this.setState({ videoStatus: VideoStatus.PLAYING});\n this.animationRef = requestAnimationFrame(this.update);\n } catch (error) {\n this.setState({ captureStatus: CaptureStatus.ERROR });\n CallbackHelper.onCaptureError(error);\n }\n };\n try {\n RecordingHelper.initialize(\n stream as MediaStream,\n (videoBlob) => { this.uploadVideo(videoBlob); }\n );\n } catch (error) {\n this.setState({ captureStatus: CaptureStatus.ERROR });\n logger.error(error);\n }\n }).catch((error) => {\n this.setState({ captureStatus: CaptureStatus.ERROR });\n logger.error(error);\n CallbackHelper.onCaptureError(error);\n });\n }\n\n componentWillUnmount() {\n this.timer.stop();\n WebcamHelper.closeStream();\n cancelAnimationFrame(this.animationRef);\n mounted = false;\n\n // closing canvas and context\n canvas.width = 0;\n canvas.height = 0;\n context = null;\n canvas = null;\n\n PoseTracker.destroy();\n this.setState({ videoStatus: VideoStatus.STOPPED });\n }\n\n componentDidUpdate(\n prevProps: VtoCaptureVideoProps,\n prevState: VtoCaptureVideoState\n ) {\n if (!prevState.webcamStream && this.state.webcamStream) {\n this.videoRef.current.srcObject = this.state.webcamStream;\n }\n\n if (this.state.captureStatus === CaptureStatus.INITIAL) {\n if (this.state.pose?.guidanceCommand === GuidanceCommand.STAY_STILL) {\n if (!this.timer.active) {\n this.timer.start(2000, this.startRecording);\n }\n } else {\n this.timer.stop();\n }\n }\n }\n\n startRecording = () => {\n RecordingHelper.startRecording();\n const recordingInterval = DefaultCaptureDuration * 0.2;\n this.setState({\n captureStatus: CaptureStatus.SAVING,\n recordingStatus: RecordingStatus.STEP_1\n });\n\n setTimeout(() => {\n //TODO: make this better\n if (mounted) {\n this.setState({ recordingStatus: RecordingStatus.STEP_2 });\n\n if (mounted) {\n setTimeout(() => {\n this.setState({ recordingStatus: RecordingStatus.STEP_3 });\n\n if (mounted) {\n setTimeout(() => {\n this.setState({ recordingStatus: RecordingStatus.STEP_4 });\n\n if (mounted) {\n setTimeout(() => {\n this.setState({ recordingStatus: RecordingStatus.STEP_5 });\n\n if (mounted) {\n setTimeout(() => {\n this.setState({ recordingStatus: RecordingStatus.OFF });\n RecordingHelper.stopRecording();\n }, recordingInterval);\n }\n\n }, recordingInterval);\n }\n\n }, recordingInterval);\n }\n\n }, recordingInterval);\n }\n\n }\n }, recordingInterval);\n }\n\n uploadVideo = (videoBlob: Blob[]) => {\n CallbackHelper.onLoading();\n\n logger.debug('UPLOADING');\n if (mounted) {\n this.setState({ captureStatus: CaptureStatus.UPLOADING });\n return RequestHelper.uploadVideo(videoBlob).then(() => {\n logger.debug('PROCESSING');\n if (mounted) {\n this.setState({ captureStatus: CaptureStatus.PROCESSING });\n return RequestHelper.processVideo(\n this.props.options.enableMachineLearning,\n this.props.options.enableVto,\n () => { return !mounted; });\n }\n }).then((result) => {\n logger.debug('COMPLETE', result);\n if (mounted) {\n this.setState({ captureStatus: CaptureStatus.COMPLETE });\n CallbackHelper.onAdvisorResult({\n ...(this.props.options.enableMachineLearning && { properties: result.properties }),\n videoId: result.videoId\n });\n }\n }).catch((error) => {\n if (mounted) {\n this.setState({ captureStatus: CaptureStatus.ERROR });\n CallbackHelper.onCaptureError(error);\n }\n });\n }\n }\n\n resetCapture = () => {\n this.timer.stop();\n cancelAnimationFrame(this.animationRef);\n this.animationRef = requestAnimationFrame(this.update);\n this.setState({ captureStatus: CaptureStatus.INITIAL });\n }\n\n render() {\n return (\n <>\n