@monkvision/inspection-capture-web 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +32 -0
- package/README.md +97 -0
- package/lib/PhotoCapture/PhotoCapture.d.ts +44 -0
- package/lib/PhotoCapture/PhotoCapture.js +179 -0
- package/lib/PhotoCapture/PhotoCapture.js.map +1 -0
- package/lib/PhotoCapture/PhotoCapture.styles.d.ts +2 -0
- package/lib/PhotoCapture/PhotoCapture.styles.js +34 -0
- package/lib/PhotoCapture/PhotoCapture.styles.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHOC.d.ts +40 -0
- package/lib/PhotoCapture/PhotoCaptureHOC.js +60 -0
- package/lib/PhotoCapture/PhotoCaptureHOC.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUD.d.ts +88 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUD.js +51 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUD.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUD.styles.d.ts +2 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUD.styles.js +25 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUD.styles.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDButtons/PhotoCaptureHUDButtons.d.ts +66 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDButtons/PhotoCaptureHUDButtons.js +44 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDButtons/PhotoCaptureHUDButtons.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDButtons/PhotoCaptureHUDButtons.styles.d.ts +5 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDButtons/PhotoCaptureHUDButtons.styles.js +72 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDButtons/PhotoCaptureHUDButtons.styles.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDButtons/hooks.d.ts +25 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDButtons/hooks.js +45 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDButtons/hooks.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDButtons/index.d.ts +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDButtons/index.js +6 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDButtons/index.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDCancelButton/PhotoCaptureHUDCancelButton.d.ts +13 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDCancelButton/PhotoCaptureHUDCancelButton.js +29 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDCancelButton/PhotoCaptureHUDCancelButton.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDCancelButton/index.d.ts +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDCancelButton/index.js +6 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDCancelButton/index.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDCounter/PhotoCaptureHUDCounter.d.ts +5 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDCounter/PhotoCaptureHUDCounter.js +28 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDCounter/PhotoCaptureHUDCounter.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDCounter/PhotoCaptureHUDCounter.styles.d.ts +2 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDCounter/PhotoCaptureHUDCounter.styles.js +17 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDCounter/PhotoCaptureHUDCounter.styles.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDCounter/hooks.d.ts +24 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDCounter/hooks.js +17 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDCounter/hooks.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDCounter/index.d.ts +2 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDCounter/index.js +6 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDCounter/index.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElements/PhotoCaptureHUDElements.d.ts +63 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElements/PhotoCaptureHUDElements.js +25 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElements/PhotoCaptureHUDElements.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElements/index.d.ts +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElements/index.js +6 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElements/index.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage1stShot/PhotoCaptureHUDElementsAddDamage1stShot.d.ts +14 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage1stShot/PhotoCaptureHUDElementsAddDamage1stShot.js +39 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage1stShot/PhotoCaptureHUDElementsAddDamage1stShot.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage1stShot/PhotoCaptureHUDElementsAddDamage1stShot.styles.d.ts +2 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage1stShot/PhotoCaptureHUDElementsAddDamage1stShot.styles.js +46 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage1stShot/PhotoCaptureHUDElementsAddDamage1stShot.styles.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage1stShot/hooks.d.ts +6 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage1stShot/hooks.js +25 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage1stShot/hooks.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage1stShot/index.d.ts +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage1stShot/index.js +6 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage1stShot/index.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage2ndShot/PhotoCaptureHUDElementsAddDamage2ndShot.d.ts +19 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage2ndShot/PhotoCaptureHUDElementsAddDamage2ndShot.js +41 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage2ndShot/PhotoCaptureHUDElementsAddDamage2ndShot.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage2ndShot/PhotoCaptureHUDElementsAddDamage2ndShot.styles.d.ts +2 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage2ndShot/PhotoCaptureHUDElementsAddDamage2ndShot.styles.js +78 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage2ndShot/PhotoCaptureHUDElementsAddDamage2ndShot.styles.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage2ndShot/hooks.d.ts +7 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage2ndShot/hooks.js +26 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage2ndShot/hooks.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage2ndShot/index.d.ts +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage2ndShot/index.js +6 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsAddDamage2ndShot/index.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/AddDamageButton/AddDamageButton.d.ts +19 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/AddDamageButton/AddDamageButton.js +29 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/AddDamageButton/AddDamageButton.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/AddDamageButton/index.d.ts +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/AddDamageButton/index.js +6 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/AddDamageButton/index.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/PhotoCaptureHUDElementsSight.d.ts +6 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/PhotoCaptureHUDElementsSight.js +35 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/PhotoCaptureHUDElementsSight.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/PhotoCaptureHUDElementsSight.styles.d.ts +2 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/PhotoCaptureHUDElementsSight.styles.js +40 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/PhotoCaptureHUDElementsSight.styles.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightGuideline/SightGuideline.d.ts +14 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightGuideline/SightGuideline.js +37 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightGuideline/SightGuideline.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightGuideline/SightGuideline.styles.d.ts +2 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightGuideline/SightGuideline.styles.js +28 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightGuideline/SightGuideline.styles.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightGuideline/index.d.ts +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightGuideline/index.js +18 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightGuideline/index.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightSlider/SightSlider.d.ts +36 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightSlider/SightSlider.js +63 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightSlider/SightSlider.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightSlider/SightSlider.styles.d.ts +2 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightSlider/SightSlider.styles.js +30 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightSlider/SightSlider.styles.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightSlider/SightSliderButton.d.ts +26 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightSlider/SightSliderButton.js +67 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightSlider/SightSliderButton.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightSlider/hooks.d.ts +5 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightSlider/hooks.js +24 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightSlider/hooks.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightSlider/index.d.ts +2 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightSlider/index.js +8 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/SightSlider/index.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/hooks.d.ts +867 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/hooks.js +38 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/hooks.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/index.d.ts +5 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/index.js +23 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDElementsSight/index.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDOverlay/PhotoCaptureHUDOverlay.d.ts +6 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDOverlay/PhotoCaptureHUDOverlay.js +37 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDOverlay/PhotoCaptureHUDOverlay.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDOverlay/PhotoCaptureHUDOverlay.styles.d.ts +2 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDOverlay/PhotoCaptureHUDOverlay.styles.js +40 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDOverlay/PhotoCaptureHUDOverlay.styles.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDOverlay/hooks.d.ts +28 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDOverlay/hooks.js +58 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDOverlay/hooks.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDOverlay/index.d.ts +2 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDOverlay/index.js +6 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDOverlay/index.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDTutorial/ArrowIcon.d.ts +5 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDTutorial/ArrowIcon.js +20 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDTutorial/ArrowIcon.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDTutorial/DisplayText.d.ts +5 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDTutorial/DisplayText.js +25 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDTutorial/DisplayText.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDTutorial/PhotoCaptureHUDTutorial.d.ts +27 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDTutorial/PhotoCaptureHUDTutorial.js +37 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDTutorial/PhotoCaptureHUDTutorial.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDTutorial/PhotoCaptureHUDTutorial.styles.d.ts +2 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDTutorial/PhotoCaptureHUDTutorial.styles.js +68 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDTutorial/PhotoCaptureHUDTutorial.styles.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDTutorial/index.d.ts +3 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDTutorial/index.js +10 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/PhotoCaptureHUDTutorial/index.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/hooks/index.d.ts +2 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/hooks/index.js +19 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/hooks/index.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/hooks/usePhotoCaptureHUDButtonBackground.d.ts +4 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/hooks/usePhotoCaptureHUDButtonBackground.js +14 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/hooks/usePhotoCaptureHUDButtonBackground.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/hooks/usePhotoCaptureHUDStyle.d.ts +814 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/hooks/usePhotoCaptureHUDStyle.js +25 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/hooks/usePhotoCaptureHUDStyle.js.map +1 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/index.d.ts +11 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/index.js +30 -0
- package/lib/PhotoCapture/PhotoCaptureHUD/index.js.map +1 -0
- package/lib/PhotoCapture/errors.d.ts +3 -0
- package/lib/PhotoCapture/errors.js +8 -0
- package/lib/PhotoCapture/errors.js.map +1 -0
- package/lib/PhotoCapture/hooks/index.d.ts +11 -0
- package/lib/PhotoCapture/hooks/index.js +28 -0
- package/lib/PhotoCapture/hooks/index.js.map +1 -0
- package/lib/PhotoCapture/hooks/useAdaptiveCameraConfig.d.ts +29 -0
- package/lib/PhotoCapture/hooks/useAdaptiveCameraConfig.js +80 -0
- package/lib/PhotoCapture/hooks/useAdaptiveCameraConfig.js.map +1 -0
- package/lib/PhotoCapture/hooks/useAddDamageMode.d.ts +42 -0
- package/lib/PhotoCapture/hooks/useAddDamageMode.js +58 -0
- package/lib/PhotoCapture/hooks/useAddDamageMode.js.map +1 -0
- package/lib/PhotoCapture/hooks/useBadConnectionWarning.d.ts +27 -0
- package/lib/PhotoCapture/hooks/useBadConnectionWarning.js +38 -0
- package/lib/PhotoCapture/hooks/useBadConnectionWarning.js.map +1 -0
- package/lib/PhotoCapture/hooks/useComplianceAnalytics.d.ts +20 -0
- package/lib/PhotoCapture/hooks/useComplianceAnalytics.js +54 -0
- package/lib/PhotoCapture/hooks/useComplianceAnalytics.js.map +1 -0
- package/lib/PhotoCapture/hooks/usePhotoCaptureImages.d.ts +5 -0
- package/lib/PhotoCapture/hooks/usePhotoCaptureImages.js +14 -0
- package/lib/PhotoCapture/hooks/usePhotoCaptureImages.js.map +1 -0
- package/lib/PhotoCapture/hooks/usePhotoCaptureSightState.d.ts +80 -0
- package/lib/PhotoCapture/hooks/usePhotoCaptureSightState.js +201 -0
- package/lib/PhotoCapture/hooks/usePhotoCaptureSightState.js.map +1 -0
- package/lib/PhotoCapture/hooks/usePhotoCaptureTutorial.d.ts +36 -0
- package/lib/PhotoCapture/hooks/usePhotoCaptureTutorial.js +67 -0
- package/lib/PhotoCapture/hooks/usePhotoCaptureTutorial.js.map +1 -0
- package/lib/PhotoCapture/hooks/usePictureTaken.d.ts +35 -0
- package/lib/PhotoCapture/hooks/usePictureTaken.js +45 -0
- package/lib/PhotoCapture/hooks/usePictureTaken.js.map +1 -0
- package/lib/PhotoCapture/hooks/useStartTasksOnComplete.d.ts +33 -0
- package/lib/PhotoCapture/hooks/useStartTasksOnComplete.js +100 -0
- package/lib/PhotoCapture/hooks/useStartTasksOnComplete.js.map +1 -0
- package/lib/PhotoCapture/hooks/useTracking.d.ts +17 -0
- package/lib/PhotoCapture/hooks/useTracking.js +29 -0
- package/lib/PhotoCapture/hooks/useTracking.js.map +1 -0
- package/lib/PhotoCapture/hooks/useUploadQueue.d.ts +95 -0
- package/lib/PhotoCapture/hooks/useUploadQueue.js +117 -0
- package/lib/PhotoCapture/hooks/useUploadQueue.js.map +1 -0
- package/lib/PhotoCapture/index.d.ts +3 -0
- package/lib/PhotoCapture/index.js +21 -0
- package/lib/PhotoCapture/index.js.map +1 -0
- package/lib/assets/arrows.asset.d.ts +2 -0
- package/lib/assets/arrows.asset.js +6 -0
- package/lib/assets/arrows.asset.js.map +1 -0
- package/lib/assets/crosshair.asset.d.ts +1 -0
- package/lib/assets/crosshair.asset.js +5 -0
- package/lib/assets/crosshair.asset.js.map +1 -0
- package/lib/assets/index.d.ts +2 -0
- package/lib/assets/index.js +19 -0
- package/lib/assets/index.js.map +1 -0
- package/lib/i18n.d.ts +6 -0
- package/lib/i18n.js +25 -0
- package/lib/i18n.js.map +1 -0
- package/lib/index.d.ts +2 -0
- package/lib/index.js +19 -0
- package/lib/index.js.map +1 -0
- package/lib/translations/de.json +45 -0
- package/lib/translations/en.json +45 -0
- package/lib/translations/fr.json +45 -0
- package/lib/translations/nl.json +45 -0
- package/package.json +94 -0
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
3
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
4
|
+
if (ar || !(i in from)) {
|
|
5
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
6
|
+
ar[i] = from[i];
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.usePhotoCaptureSightState = void 0;
|
|
13
|
+
var react_1 = require("react");
|
|
14
|
+
var network_1 = require("@monkvision/network");
|
|
15
|
+
var monitoring_1 = require("@monkvision/monitoring");
|
|
16
|
+
var common_1 = require("@monkvision/common");
|
|
17
|
+
var types_1 = require("@monkvision/types");
|
|
18
|
+
var sights_1 = require("@monkvision/sights");
|
|
19
|
+
var analytics_1 = require("@monkvision/analytics");
|
|
20
|
+
var errors_1 = require("../errors");
|
|
21
|
+
function getCaptureTasks(captureSights, tasksBySight) {
|
|
22
|
+
var tasks = [];
|
|
23
|
+
captureSights.forEach(function (sight) {
|
|
24
|
+
var sightTasks = tasksBySight ? tasksBySight[sight.id] : sight.tasks;
|
|
25
|
+
sightTasks.forEach(function (task) {
|
|
26
|
+
if (!tasks.includes(task)) {
|
|
27
|
+
tasks.push(task);
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
return tasks;
|
|
32
|
+
}
|
|
33
|
+
function assertInspectionIsValid(inspectionId, response, captureSights, tasksBySight) {
|
|
34
|
+
var _a, _b;
|
|
35
|
+
var inspectionTasks = (_b = (_a = response.entities.tasks) === null || _a === void 0 ? void 0 : _a.filter(function (task) { return task.inspectionId === inspectionId; })) === null || _b === void 0 ? void 0 : _b.map(function (task) { return task.name; });
|
|
36
|
+
if (inspectionTasks) {
|
|
37
|
+
var missingTasks_1 = [];
|
|
38
|
+
getCaptureTasks(captureSights, tasksBySight).forEach(function (captureTask) {
|
|
39
|
+
if (!inspectionTasks.includes(captureTask)) {
|
|
40
|
+
missingTasks_1.push(captureTask);
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
if (missingTasks_1.length > 0) {
|
|
44
|
+
var error = new Error("The provided inspection is missing the following tasks required by the current capture configuration : ".concat(missingTasks_1));
|
|
45
|
+
error.name = errors_1.PhotoCaptureErrorName.MISSING_TASK_IN_INSPECTION;
|
|
46
|
+
throw error;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
function getSightsTaken(inspectionId, response) {
|
|
51
|
+
var _a, _b;
|
|
52
|
+
return (0, common_1.uniq)((_b = (_a = response.entities.images) === null || _a === void 0 ? void 0 : _a.filter(function (image) { return image.inspectionId === inspectionId && image.sightId; }).map(function (image) { return sights_1.sights[image.sightId]; })) !== null && _b !== void 0 ? _b : []);
|
|
53
|
+
}
|
|
54
|
+
function getLastPictureTakenUri(inspectionId, response) {
|
|
55
|
+
var images = response.entities.images.filter(function (image) { return image.inspectionId === inspectionId; });
|
|
56
|
+
return images && images.length > 0 ? images[images.length - 1].path : null;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Custom hook used to manage the state of the PhotoCapture sights. This state is automatically fetched from the API at
|
|
60
|
+
* the start of the PhotoCapture process in order to allow users to start the inspection where they left it before.
|
|
61
|
+
*/
|
|
62
|
+
function usePhotoCaptureSightState(_a) {
|
|
63
|
+
var inspectionId = _a.inspectionId, captureSights = _a.captureSights, apiConfig = _a.apiConfig, loading = _a.loading, onLastSightTaken = _a.onLastSightTaken, tasksBySight = _a.tasksBySight, setIsInitialInspectionFetched = _a.setIsInitialInspectionFetched, complianceOptions = _a.complianceOptions;
|
|
64
|
+
if (captureSights.length === 0) {
|
|
65
|
+
throw new Error('Empty sight list given to the Monk PhotoCapture component.');
|
|
66
|
+
}
|
|
67
|
+
var _b = (0, react_1.useState)(0), retryCount = _b[0], setRetryCount = _b[1];
|
|
68
|
+
var _c = (0, react_1.useState)(null), lastPictureTakenUri = _c[0], setLastPictureTakenUri = _c[1];
|
|
69
|
+
var _d = (0, react_1.useState)(captureSights[0]), selectedSight = _d[0], setSelectedSight = _d[1];
|
|
70
|
+
var _e = (0, react_1.useState)([]), sightsTaken = _e[0], setSightsTaken = _e[1];
|
|
71
|
+
var getInspection = (0, network_1.useMonkApi)(apiConfig).getInspection;
|
|
72
|
+
var handleError = (0, monitoring_1.useMonitoring)().handleError;
|
|
73
|
+
var state = (0, common_1.useMonkState)().state;
|
|
74
|
+
var analytics = (0, analytics_1.useAnalytics)();
|
|
75
|
+
var onFetchInspection = function (response) {
|
|
76
|
+
try {
|
|
77
|
+
setIsInitialInspectionFetched(true);
|
|
78
|
+
assertInspectionIsValid(inspectionId, response, captureSights, tasksBySight);
|
|
79
|
+
var alreadyTakenSights_1 = getSightsTaken(inspectionId, response);
|
|
80
|
+
setSightsTaken(alreadyTakenSights_1);
|
|
81
|
+
var notCapturedSights = captureSights.filter(function (s) { return !alreadyTakenSights_1.includes(s); });
|
|
82
|
+
analytics.setUserProperties({
|
|
83
|
+
alreadyTakenSights: alreadyTakenSights_1.length,
|
|
84
|
+
totalSights: captureSights.length,
|
|
85
|
+
sightSelected: notCapturedSights.length > 0 ? notCapturedSights[0].label : null,
|
|
86
|
+
});
|
|
87
|
+
analytics.setEventsProperties({ totalSights: captureSights.length });
|
|
88
|
+
analytics.trackEvent('Capture Started', {
|
|
89
|
+
newInspection: alreadyTakenSights_1.length === 0,
|
|
90
|
+
alreadyTakenSights: alreadyTakenSights_1.length,
|
|
91
|
+
totalSights: captureSights.length,
|
|
92
|
+
});
|
|
93
|
+
if (notCapturedSights.length > 0) {
|
|
94
|
+
setSelectedSight(notCapturedSights[0]);
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
onLastSightTaken();
|
|
98
|
+
var notCompliantSights = captureSights
|
|
99
|
+
.map(function (s) { return ({
|
|
100
|
+
sight: s,
|
|
101
|
+
image: (0, common_1.getInspectionImages)(inspectionId, state.images, true).find(function (i) { return i.inspectionId === inspectionId && i.sightId === s.id; }),
|
|
102
|
+
}); })
|
|
103
|
+
.filter(function (_a) {
|
|
104
|
+
var image = _a.image;
|
|
105
|
+
return !!image &&
|
|
106
|
+
[types_1.ImageStatus.NOT_COMPLIANT, types_1.ImageStatus.UPLOAD_FAILED].includes(image.status);
|
|
107
|
+
})
|
|
108
|
+
.map(function (_a) {
|
|
109
|
+
var sight = _a.sight;
|
|
110
|
+
return sight;
|
|
111
|
+
});
|
|
112
|
+
var sightToRetake_1 = notCompliantSights.length > 0
|
|
113
|
+
? notCompliantSights[0]
|
|
114
|
+
: captureSights[captureSights.length - 1];
|
|
115
|
+
setSightsTaken(alreadyTakenSights_1.filter(function (sight) { return sight !== sightToRetake_1; }));
|
|
116
|
+
setSelectedSight(sightToRetake_1);
|
|
117
|
+
}
|
|
118
|
+
setLastPictureTakenUri(getLastPictureTakenUri(inspectionId, response));
|
|
119
|
+
loading.onSuccess();
|
|
120
|
+
}
|
|
121
|
+
catch (err) {
|
|
122
|
+
handleError(err);
|
|
123
|
+
loading.onError(err);
|
|
124
|
+
}
|
|
125
|
+
};
|
|
126
|
+
(0, common_1.useAsyncEffect)(function () {
|
|
127
|
+
loading.start();
|
|
128
|
+
analytics.setUserProperties({ inspectionId: inspectionId });
|
|
129
|
+
analytics.setEventsProperties({ inspectionId: inspectionId });
|
|
130
|
+
return getInspection({
|
|
131
|
+
id: inspectionId,
|
|
132
|
+
compliance: complianceOptions,
|
|
133
|
+
});
|
|
134
|
+
}, [inspectionId, retryCount, complianceOptions], {
|
|
135
|
+
onResolve: onFetchInspection,
|
|
136
|
+
onReject: function (err) {
|
|
137
|
+
handleError(err);
|
|
138
|
+
loading.onError(err);
|
|
139
|
+
},
|
|
140
|
+
});
|
|
141
|
+
var retryLoadingInspection = (0, react_1.useCallback)(function () {
|
|
142
|
+
setRetryCount(function (value) { return value + 1; });
|
|
143
|
+
}, []);
|
|
144
|
+
var takeSelectedSight = (0, react_1.useCallback)(function () {
|
|
145
|
+
var _a, _b;
|
|
146
|
+
var isRetake = sightsTaken.includes(selectedSight);
|
|
147
|
+
var updatedSightsTaken = isRetake ? sightsTaken : __spreadArray(__spreadArray([], sightsTaken, true), [selectedSight], false);
|
|
148
|
+
setSightsTaken(updatedSightsTaken);
|
|
149
|
+
var nextSight = captureSights.filter(function (s) { return !updatedSightsTaken.includes(s); })[0];
|
|
150
|
+
analytics.trackEvent('Sight Captured', {
|
|
151
|
+
order: captureSights.indexOf(selectedSight) + 1,
|
|
152
|
+
alreadyTakenSights: updatedSightsTaken.length,
|
|
153
|
+
totalSights: captureSights.length,
|
|
154
|
+
sightId: selectedSight.id,
|
|
155
|
+
sightLabel: selectedSight.label,
|
|
156
|
+
nextSightId: (_a = nextSight === null || nextSight === void 0 ? void 0 : nextSight.id) !== null && _a !== void 0 ? _a : null,
|
|
157
|
+
nextSightLabel: (_b = nextSight === null || nextSight === void 0 ? void 0 : nextSight.label) !== null && _b !== void 0 ? _b : null,
|
|
158
|
+
retake: isRetake,
|
|
159
|
+
});
|
|
160
|
+
analytics.setUserProperties({
|
|
161
|
+
alreadyTakenSights: updatedSightsTaken.length,
|
|
162
|
+
sightSelected: selectedSight.label,
|
|
163
|
+
});
|
|
164
|
+
if (nextSight) {
|
|
165
|
+
setSelectedSight(nextSight);
|
|
166
|
+
}
|
|
167
|
+
else {
|
|
168
|
+
onLastSightTaken();
|
|
169
|
+
}
|
|
170
|
+
}, [sightsTaken, selectedSight, captureSights, onLastSightTaken]);
|
|
171
|
+
var retakeSight = (0, react_1.useCallback)(function (id) {
|
|
172
|
+
var sightToRetake = captureSights.find(function (sight) { return sight.id === id; });
|
|
173
|
+
if (sightToRetake) {
|
|
174
|
+
setSelectedSight(sightToRetake);
|
|
175
|
+
}
|
|
176
|
+
}, [captureSights]);
|
|
177
|
+
var selectSight = function (s) {
|
|
178
|
+
var _a, _b;
|
|
179
|
+
var sightsNotTaken = (_a = captureSights.filter(function (sight) { return !sightsTaken.includes(sight); })) !== null && _a !== void 0 ? _a : [];
|
|
180
|
+
var nextSight = (_b = sightsNotTaken.at(sightsNotTaken.indexOf(s) + 1)) !== null && _b !== void 0 ? _b : null;
|
|
181
|
+
setSelectedSight(s);
|
|
182
|
+
analytics.trackEvent('Sight Selected', {
|
|
183
|
+
sightId: s.id,
|
|
184
|
+
sightLabel: s.label,
|
|
185
|
+
nextSightId: nextSight === null || nextSight === void 0 ? void 0 : nextSight.id,
|
|
186
|
+
nextSightLabel: nextSight === null || nextSight === void 0 ? void 0 : nextSight.label,
|
|
187
|
+
});
|
|
188
|
+
};
|
|
189
|
+
return (0, common_1.useObjectMemo)({
|
|
190
|
+
selectedSight: selectedSight,
|
|
191
|
+
sightsTaken: sightsTaken,
|
|
192
|
+
selectSight: selectSight,
|
|
193
|
+
takeSelectedSight: takeSelectedSight,
|
|
194
|
+
lastPictureTakenUri: lastPictureTakenUri,
|
|
195
|
+
setLastPictureTakenUri: setLastPictureTakenUri,
|
|
196
|
+
retryLoadingInspection: retryLoadingInspection,
|
|
197
|
+
retakeSight: retakeSight,
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
exports.usePhotoCaptureSightState = usePhotoCaptureSightState;
|
|
201
|
+
//# sourceMappingURL=usePhotoCaptureSightState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePhotoCaptureSightState.js","sourceRoot":"","sources":["../../../src/PhotoCapture/hooks/usePhotoCaptureSightState.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { CaptureAppConfig } from '@monkvision/types';
|
|
2
|
+
export declare const STORAGE_KEY_PHOTO_CAPTURE_TUTORIAL = "@monk_photoCaptureTutorial";
|
|
3
|
+
/**
|
|
4
|
+
* Enum of the different steps of the PhotoCapture Tutorial component.
|
|
5
|
+
*/
|
|
6
|
+
export declare enum TutorialSteps {
|
|
7
|
+
/**
|
|
8
|
+
* Welcome step.
|
|
9
|
+
*/
|
|
10
|
+
WELCOME = "welcome",
|
|
11
|
+
/**
|
|
12
|
+
* Guideline step.
|
|
13
|
+
*/
|
|
14
|
+
GUIDELINE = "guideline",
|
|
15
|
+
/**
|
|
16
|
+
* Sight tutorial step.
|
|
17
|
+
*/
|
|
18
|
+
SIGHT_TUTORIAL = "sightTutorial",
|
|
19
|
+
/**
|
|
20
|
+
* Sight step.
|
|
21
|
+
*/
|
|
22
|
+
SIGHT = "sight"
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Parameters of the usePhotoCaptureTutorial hook.
|
|
26
|
+
*/
|
|
27
|
+
export interface PhotoCaptureTutorial extends Pick<CaptureAppConfig, 'enableTutorial' | 'enableSightTutorial' | 'enableSightGuidelines'> {
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Custom hook used to manage the state of photo capture tutorial.
|
|
31
|
+
*/
|
|
32
|
+
export declare function usePhotoCaptureTutorial({ enableTutorial, enableSightTutorial, enableSightGuidelines, }: PhotoCaptureTutorial): {
|
|
33
|
+
currentTutorialStep: TutorialSteps | null;
|
|
34
|
+
goToNextTutorialStep: () => void;
|
|
35
|
+
closeTutorial: () => void;
|
|
36
|
+
};
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.usePhotoCaptureTutorial = exports.TutorialSteps = exports.STORAGE_KEY_PHOTO_CAPTURE_TUTORIAL = void 0;
|
|
4
|
+
var react_1 = require("react");
|
|
5
|
+
var types_1 = require("@monkvision/types");
|
|
6
|
+
var common_1 = require("@monkvision/common");
|
|
7
|
+
exports.STORAGE_KEY_PHOTO_CAPTURE_TUTORIAL = '@monk_photoCaptureTutorial';
|
|
8
|
+
/**
|
|
9
|
+
* Enum of the different steps of the PhotoCapture Tutorial component.
|
|
10
|
+
*/
|
|
11
|
+
var TutorialSteps;
|
|
12
|
+
(function (TutorialSteps) {
|
|
13
|
+
/**
|
|
14
|
+
* Welcome step.
|
|
15
|
+
*/
|
|
16
|
+
TutorialSteps["WELCOME"] = "welcome";
|
|
17
|
+
/**
|
|
18
|
+
* Guideline step.
|
|
19
|
+
*/
|
|
20
|
+
TutorialSteps["GUIDELINE"] = "guideline";
|
|
21
|
+
/**
|
|
22
|
+
* Sight tutorial step.
|
|
23
|
+
*/
|
|
24
|
+
TutorialSteps["SIGHT_TUTORIAL"] = "sightTutorial";
|
|
25
|
+
/**
|
|
26
|
+
* Sight step.
|
|
27
|
+
*/
|
|
28
|
+
TutorialSteps["SIGHT"] = "sight";
|
|
29
|
+
})(TutorialSteps = exports.TutorialSteps || (exports.TutorialSteps = {}));
|
|
30
|
+
function getTutorialState(enableTutorial) {
|
|
31
|
+
var isFirstTime = !!localStorage.getItem(exports.STORAGE_KEY_PHOTO_CAPTURE_TUTORIAL);
|
|
32
|
+
return enableTutorial === types_1.PhotoCaptureTutorialOption.DISABLED ||
|
|
33
|
+
(enableTutorial === types_1.PhotoCaptureTutorialOption.FIRST_TIME_ONLY && isFirstTime)
|
|
34
|
+
? null
|
|
35
|
+
: TutorialSteps.WELCOME;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Custom hook used to manage the state of photo capture tutorial.
|
|
39
|
+
*/
|
|
40
|
+
function usePhotoCaptureTutorial(_a) {
|
|
41
|
+
var enableTutorial = _a.enableTutorial, enableSightTutorial = _a.enableSightTutorial, enableSightGuidelines = _a.enableSightGuidelines;
|
|
42
|
+
var _b = (0, react_1.useState)(getTutorialState(enableTutorial)), currentTutorialStep = _b[0], setCurrentTutorialStep = _b[1];
|
|
43
|
+
var goToNextTutorialStep = (0, react_1.useCallback)(function () {
|
|
44
|
+
var steps = Object.values(TutorialSteps);
|
|
45
|
+
if (!enableSightGuidelines) {
|
|
46
|
+
steps = steps.filter(function (v) { return v !== TutorialSteps.GUIDELINE; });
|
|
47
|
+
}
|
|
48
|
+
if (!enableSightTutorial) {
|
|
49
|
+
steps = steps.filter(function (v) { return v !== TutorialSteps.SIGHT_TUTORIAL; });
|
|
50
|
+
}
|
|
51
|
+
if (currentTutorialStep === steps.at(-1)) {
|
|
52
|
+
setCurrentTutorialStep(null);
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
var currentIndex = steps.findIndex(function (v) { return currentTutorialStep === v; });
|
|
56
|
+
setCurrentTutorialStep(steps[currentIndex + 1]);
|
|
57
|
+
}, [currentTutorialStep]);
|
|
58
|
+
var closeTutorial = (0, react_1.useCallback)(function () {
|
|
59
|
+
setCurrentTutorialStep(null);
|
|
60
|
+
}, []);
|
|
61
|
+
(0, react_1.useEffect)(function () {
|
|
62
|
+
localStorage.setItem(exports.STORAGE_KEY_PHOTO_CAPTURE_TUTORIAL, exports.STORAGE_KEY_PHOTO_CAPTURE_TUTORIAL);
|
|
63
|
+
}, []);
|
|
64
|
+
return (0, common_1.useObjectMemo)({ currentTutorialStep: currentTutorialStep, goToNextTutorialStep: goToNextTutorialStep, closeTutorial: closeTutorial });
|
|
65
|
+
}
|
|
66
|
+
exports.usePhotoCaptureTutorial = usePhotoCaptureTutorial;
|
|
67
|
+
//# sourceMappingURL=usePhotoCaptureTutorial.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePhotoCaptureTutorial.js","sourceRoot":"","sources":["../../../src/PhotoCapture/hooks/usePhotoCaptureTutorial.ts"],"names":[],"mappings":";;;AAAA,+BAAyD;AACzD,2CAAiF;AACjF,6CAAmD;AAEtC,QAAA,kCAAkC,GAAG,4BAA4B,CAAC;AAE/E;;GAEG;AACH,IAAY,aAiBX;AAjBD,WAAY,aAAa;IACvB;;OAEG;IACH,oCAAmB,CAAA;IACnB;;OAEG;IACH,wCAAuB,CAAA;IACvB;;OAEG;IACH,iDAAgC,CAAA;IAChC;;OAEG;IACH,gCAAe,CAAA;AACjB,CAAC,EAjBW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAiBxB;AAED,SAAS,gBAAgB,CACvB,cAAsD;IAEtD,IAAM,WAAW,GAAG,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,0CAAkC,CAAC,CAAC;IAE/E,OAAO,cAAc,KAAK,kCAA0B,CAAC,QAAQ;QAC3D,CAAC,cAAc,KAAK,kCAA0B,CAAC,eAAe,IAAI,WAAW,CAAC;QAC9E,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC;AAC5B,CAAC;AAWD;;GAEG;AACH,SAAgB,uBAAuB,CAAC,EAIjB;QAHrB,cAAc,oBAAA,EACd,mBAAmB,yBAAA,EACnB,qBAAqB,2BAAA;IAEf,IAAA,KAAgD,IAAA,gBAAQ,EAC5D,gBAAgB,CAAC,cAAc,CAAC,CACjC,EAFM,mBAAmB,QAAA,EAAE,sBAAsB,QAEjD,CAAC;IAEF,IAAM,oBAAoB,GAAG,IAAA,mBAAW,EAAC;QACvC,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QACzC,IAAI,CAAC,qBAAqB,EAAE;YAC1B,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,KAAK,aAAa,CAAC,SAAS,EAA7B,CAA6B,CAAC,CAAC;SAC5D;QACD,IAAI,CAAC,mBAAmB,EAAE;YACxB,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,KAAK,aAAa,CAAC,cAAc,EAAlC,CAAkC,CAAC,CAAC;SACjE;QACD,IAAI,mBAAmB,KAAK,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;YACxC,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAC7B,OAAO;SACR;QACD,IAAM,YAAY,GAAG,KAAK,CAAC,SAAS,CAAC,UAAC,CAAC,IAAK,OAAA,mBAAmB,KAAK,CAAC,EAAzB,CAAyB,CAAC,CAAC;QACvE,sBAAsB,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC;IAClD,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAE1B,IAAM,aAAa,GAAG,IAAA,mBAAW,EAAC;QAChC,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAA,iBAAS,EAAC;QACR,YAAY,CAAC,OAAO,CAAC,0CAAkC,EAAE,0CAAkC,CAAC,CAAC;IAC/F,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,IAAA,sBAAa,EAAC,EAAE,mBAAmB,qBAAA,EAAE,oBAAoB,sBAAA,EAAE,aAAa,eAAA,EAAE,CAAC,CAAC;AACrF,CAAC;AAlCD,0DAkCC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { MonkPicture, TaskName } from '@monkvision/types';
|
|
2
|
+
import { Queue } from '@monkvision/common';
|
|
3
|
+
import { PictureUpload } from './useUploadQueue';
|
|
4
|
+
import { AddDamageHandle } from './useAddDamageMode';
|
|
5
|
+
import { PhotoCaptureSightState } from './usePhotoCaptureSightState';
|
|
6
|
+
/**
|
|
7
|
+
* Parameters of the usePictureTaken hook.
|
|
8
|
+
*/
|
|
9
|
+
export interface UseTakePictureParams {
|
|
10
|
+
/**
|
|
11
|
+
* The PhotoCapture sight state, created using the usePhotoCaptureSightState hook.
|
|
12
|
+
*/
|
|
13
|
+
sightState: PhotoCaptureSightState;
|
|
14
|
+
/**
|
|
15
|
+
* The PhotoCapture add damage handle, created using the useAddDamageMode hook.
|
|
16
|
+
*/
|
|
17
|
+
addDamageHandle: AddDamageHandle;
|
|
18
|
+
/**
|
|
19
|
+
* Photo capture upload queue, created using the useUploadQueue hook.
|
|
20
|
+
*/
|
|
21
|
+
uploadQueue: Queue<PictureUpload>;
|
|
22
|
+
/**
|
|
23
|
+
* Record associating each sight to a list of tasks to execute for it. If not provided, the default tasks of the sight
|
|
24
|
+
* will be used.
|
|
25
|
+
*/
|
|
26
|
+
tasksBySight?: Record<string, TaskName[]>;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Callback called when the user has taken a picture.
|
|
30
|
+
*/
|
|
31
|
+
export type HandleTakePictureFunction = (picture: MonkPicture) => void;
|
|
32
|
+
/**
|
|
33
|
+
* Custom hook used to generate the callback called when the user has taken a picture to handle picture upload etc.
|
|
34
|
+
*/
|
|
35
|
+
export declare function usePictureTaken({ sightState, addDamageHandle, uploadQueue, tasksBySight, }: UseTakePictureParams): HandleTakePictureFunction;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.usePictureTaken = void 0;
|
|
4
|
+
var react_1 = require("react");
|
|
5
|
+
var analytics_1 = require("@monkvision/analytics");
|
|
6
|
+
var useAddDamageMode_1 = require("./useAddDamageMode");
|
|
7
|
+
/**
|
|
8
|
+
* Custom hook used to generate the callback called when the user has taken a picture to handle picture upload etc.
|
|
9
|
+
*/
|
|
10
|
+
function usePictureTaken(_a) {
|
|
11
|
+
var sightState = _a.sightState, addDamageHandle = _a.addDamageHandle, uploadQueue = _a.uploadQueue, tasksBySight = _a.tasksBySight;
|
|
12
|
+
var trackEvent = (0, analytics_1.useAnalytics)().trackEvent;
|
|
13
|
+
return (0, react_1.useCallback)(function (picture) {
|
|
14
|
+
var _a;
|
|
15
|
+
sightState.setLastPictureTakenUri(picture.uri);
|
|
16
|
+
var upload = addDamageHandle.mode === useAddDamageMode_1.PhotoCaptureMode.SIGHT
|
|
17
|
+
? {
|
|
18
|
+
mode: addDamageHandle.mode,
|
|
19
|
+
picture: picture,
|
|
20
|
+
sightId: sightState.selectedSight.id,
|
|
21
|
+
tasks: (_a = tasksBySight === null || tasksBySight === void 0 ? void 0 : tasksBySight[sightState.selectedSight.id]) !== null && _a !== void 0 ? _a : sightState.selectedSight.tasks,
|
|
22
|
+
}
|
|
23
|
+
: { mode: addDamageHandle.mode, picture: picture };
|
|
24
|
+
uploadQueue.push(upload);
|
|
25
|
+
if (addDamageHandle.mode === useAddDamageMode_1.PhotoCaptureMode.SIGHT) {
|
|
26
|
+
sightState.takeSelectedSight();
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
trackEvent('AddDamage Captured', {
|
|
30
|
+
mode: addDamageHandle.mode,
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
addDamageHandle.updatePhotoCaptureModeAfterPictureTaken();
|
|
34
|
+
}, [
|
|
35
|
+
sightState.setLastPictureTakenUri,
|
|
36
|
+
addDamageHandle.mode,
|
|
37
|
+
sightState.selectedSight.id,
|
|
38
|
+
tasksBySight,
|
|
39
|
+
uploadQueue.push,
|
|
40
|
+
sightState.takeSelectedSight,
|
|
41
|
+
addDamageHandle.updatePhotoCaptureModeAfterPictureTaken,
|
|
42
|
+
]);
|
|
43
|
+
}
|
|
44
|
+
exports.usePictureTaken = usePictureTaken;
|
|
45
|
+
//# sourceMappingURL=usePictureTaken.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePictureTaken.js","sourceRoot":"","sources":["../../../src/PhotoCapture/hooks/usePictureTaken.ts"],"names":[],"mappings":";;;AAEA,+BAAoC;AACpC,mDAAqD;AAErD,uDAAuE;AA+BvE;;GAEG;AACH,SAAgB,eAAe,CAAC,EAKT;QAJrB,UAAU,gBAAA,EACV,eAAe,qBAAA,EACf,WAAW,iBAAA,EACX,YAAY,kBAAA;IAEJ,IAAA,UAAU,GAAK,IAAA,wBAAY,GAAE,WAAnB,CAAoB;IACtC,OAAO,IAAA,mBAAW,EAChB,UAAC,OAAoB;;QACnB,UAAU,CAAC,sBAAsB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC/C,IAAM,MAAM,GACV,eAAe,CAAC,IAAI,KAAK,mCAAgB,CAAC,KAAK;YAC7C,CAAC,CAAC;gBACE,IAAI,EAAE,eAAe,CAAC,IAAI;gBAC1B,OAAO,SAAA;gBACP,OAAO,EAAE,UAAU,CAAC,aAAa,CAAC,EAAE;gBACpC,KAAK,EAAE,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAG,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC,mCAAI,UAAU,CAAC,aAAa,CAAC,KAAK;aACrF;YACH,CAAC,CAAC,EAAE,IAAI,EAAE,eAAe,CAAC,IAAI,EAAE,OAAO,SAAA,EAAE,CAAC;QAC9C,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzB,IAAI,eAAe,CAAC,IAAI,KAAK,mCAAgB,CAAC,KAAK,EAAE;YACnD,UAAU,CAAC,iBAAiB,EAAE,CAAC;SAChC;aAAM;YACL,UAAU,CAAC,oBAAoB,EAAE;gBAC/B,IAAI,EAAE,eAAe,CAAC,IAAI;aAC3B,CAAC,CAAC;SACJ;QACD,eAAe,CAAC,uCAAuC,EAAE,CAAC;IAC5D,CAAC,EACD;QACE,UAAU,CAAC,sBAAsB;QACjC,eAAe,CAAC,IAAI;QACpB,UAAU,CAAC,aAAa,CAAC,EAAE;QAC3B,YAAY;QACZ,WAAW,CAAC,IAAI;QAChB,UAAU,CAAC,iBAAiB;QAC5B,eAAe,CAAC,uCAAuC;KACxD,CACF,CAAC;AACJ,CAAC;AAvCD,0CAuCC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { CaptureAppConfig, Sight } from '@monkvision/types';
|
|
2
|
+
import { LoadingState } from '@monkvision/common';
|
|
3
|
+
import { MonkApiConfig } from '@monkvision/network';
|
|
4
|
+
/**
|
|
5
|
+
* Parameters of the useStartTasksOnComplete hook.
|
|
6
|
+
*/
|
|
7
|
+
export interface UseStartTasksOnCompleteParams extends Pick<CaptureAppConfig, 'additionalTasks' | 'tasksBySight' | 'startTasksOnComplete'> {
|
|
8
|
+
/**
|
|
9
|
+
* The inspection ID.
|
|
10
|
+
*/
|
|
11
|
+
inspectionId: string;
|
|
12
|
+
/**
|
|
13
|
+
* The list of sights passed to the PhotoCapture component.
|
|
14
|
+
*/
|
|
15
|
+
sights: Sight[];
|
|
16
|
+
/**
|
|
17
|
+
* The api config used to communicate with the API.
|
|
18
|
+
*/
|
|
19
|
+
apiConfig: MonkApiConfig;
|
|
20
|
+
/**
|
|
21
|
+
* Global loading state of the PhotoCapture component.
|
|
22
|
+
*/
|
|
23
|
+
loading: LoadingState;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Callback to be called when the PhotoCapture inspection is complete in order to start (or not) to inspection tasks.
|
|
27
|
+
*/
|
|
28
|
+
export type StartTasksFunction = () => Promise<void>;
|
|
29
|
+
/**
|
|
30
|
+
* Custom hook used to generate a callback called at the end of the PhotoCapture inspection in order to automatically
|
|
31
|
+
* start (or not) the inspection tasks.
|
|
32
|
+
*/
|
|
33
|
+
export declare function useStartTasksOnComplete({ inspectionId, apiConfig, sights, additionalTasks, tasksBySight, startTasksOnComplete, loading, }: UseStartTasksOnCompleteParams): StartTasksFunction;
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.useStartTasksOnComplete = void 0;
|
|
40
|
+
var types_1 = require("@monkvision/types");
|
|
41
|
+
var common_1 = require("@monkvision/common");
|
|
42
|
+
var network_1 = require("@monkvision/network");
|
|
43
|
+
var monitoring_1 = require("@monkvision/monitoring");
|
|
44
|
+
var react_1 = require("react");
|
|
45
|
+
var TASKS_NOT_TO_START = [types_1.TaskName.HUMAN_IN_THE_LOOP];
|
|
46
|
+
function getTasksToStart(_a) {
|
|
47
|
+
var sights = _a.sights, additionalTasks = _a.additionalTasks, tasksBySight = _a.tasksBySight, startTasksOnComplete = _a.startTasksOnComplete;
|
|
48
|
+
var tasks;
|
|
49
|
+
if (Array.isArray(startTasksOnComplete)) {
|
|
50
|
+
tasks = startTasksOnComplete;
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
tasks = (0, common_1.uniq)((0, common_1.flatMap)(sights, function (sight) { var _a; return (_a = tasksBySight === null || tasksBySight === void 0 ? void 0 : tasksBySight[sight.id]) !== null && _a !== void 0 ? _a : sight.tasks; }));
|
|
54
|
+
additionalTasks === null || additionalTasks === void 0 ? void 0 : additionalTasks.forEach(function (additionalTask) {
|
|
55
|
+
if (!tasks.includes(additionalTask)) {
|
|
56
|
+
tasks.push(additionalTask);
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
return tasks.filter(function (task) { return !TASKS_NOT_TO_START.includes(task); });
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Custom hook used to generate a callback called at the end of the PhotoCapture inspection in order to automatically
|
|
64
|
+
* start (or not) the inspection tasks.
|
|
65
|
+
*/
|
|
66
|
+
function useStartTasksOnComplete(_a) {
|
|
67
|
+
var _this = this;
|
|
68
|
+
var inspectionId = _a.inspectionId, apiConfig = _a.apiConfig, sights = _a.sights, additionalTasks = _a.additionalTasks, tasksBySight = _a.tasksBySight, startTasksOnComplete = _a.startTasksOnComplete, loading = _a.loading;
|
|
69
|
+
var startInspectionTasks = (0, network_1.useMonkApi)(apiConfig).startInspectionTasks;
|
|
70
|
+
var handleError = (0, monitoring_1.useMonitoring)().handleError;
|
|
71
|
+
return (0, react_1.useCallback)(function () { return __awaiter(_this, void 0, void 0, function () {
|
|
72
|
+
var names, err_1;
|
|
73
|
+
return __generator(this, function (_a) {
|
|
74
|
+
switch (_a.label) {
|
|
75
|
+
case 0:
|
|
76
|
+
if (!startTasksOnComplete) {
|
|
77
|
+
return [2 /*return*/];
|
|
78
|
+
}
|
|
79
|
+
names = getTasksToStart({ sights: sights, additionalTasks: additionalTasks, tasksBySight: tasksBySight, startTasksOnComplete: startTasksOnComplete });
|
|
80
|
+
loading.start();
|
|
81
|
+
_a.label = 1;
|
|
82
|
+
case 1:
|
|
83
|
+
_a.trys.push([1, 3, , 4]);
|
|
84
|
+
return [4 /*yield*/, startInspectionTasks({ inspectionId: inspectionId, names: names })];
|
|
85
|
+
case 2:
|
|
86
|
+
_a.sent();
|
|
87
|
+
loading.onSuccess();
|
|
88
|
+
return [3 /*break*/, 4];
|
|
89
|
+
case 3:
|
|
90
|
+
err_1 = _a.sent();
|
|
91
|
+
handleError(err_1);
|
|
92
|
+
loading.onError(err_1);
|
|
93
|
+
return [3 /*break*/, 4];
|
|
94
|
+
case 4: return [2 /*return*/];
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
}); }, [startTasksOnComplete, loading, sights, tasksBySight, inspectionId, handleError]);
|
|
98
|
+
}
|
|
99
|
+
exports.useStartTasksOnComplete = useStartTasksOnComplete;
|
|
100
|
+
//# sourceMappingURL=useStartTasksOnComplete.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useStartTasksOnComplete.js","sourceRoot":"","sources":["../../../src/PhotoCapture/hooks/useStartTasksOnComplete.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAsE;AACtE,6CAAiE;AACjE,+CAAgE;AAChE,qDAAuD;AACvD,+BAAoC;AA8BpC,IAAM,kBAAkB,GAAG,CAAC,gBAAQ,CAAC,iBAAiB,CAAC,CAAC;AAExD,SAAS,eAAe,CAAC,EAQxB;QAPC,MAAM,YAAA,EACN,eAAe,qBAAA,EACf,YAAY,kBAAA,EACZ,oBAAoB,0BAAA;IAKpB,IAAI,KAAiB,CAAC;IACtB,IAAI,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE;QACvC,KAAK,GAAG,oBAAoB,CAAC;KAC9B;SAAM;QACL,KAAK,GAAG,IAAA,aAAI,EAAC,IAAA,gBAAO,EAAC,MAAM,EAAE,UAAC,KAAK,YAAK,OAAA,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAG,KAAK,CAAC,EAAE,CAAC,mCAAI,KAAK,CAAC,KAAK,CAAA,EAAA,CAAC,CAAC,CAAC;QAClF,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,OAAO,CAAC,UAAC,cAAc;YACtC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE;gBACnC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;aAC5B;QACH,CAAC,CAAC,CAAC;KACJ;IACD,OAAO,KAAK,CAAC,MAAM,CAAC,UAAC,IAAI,IAAK,OAAA,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAlC,CAAkC,CAAC,CAAC;AACpE,CAAC;AAED;;;GAGG;AACH,SAAgB,uBAAuB,CAAC,EAQR;IARhC,iBA2BC;QA1BC,YAAY,kBAAA,EACZ,SAAS,eAAA,EACT,MAAM,YAAA,EACN,eAAe,qBAAA,EACf,YAAY,kBAAA,EACZ,oBAAoB,0BAAA,EACpB,OAAO,aAAA;IAEC,IAAA,oBAAoB,GAAK,IAAA,oBAAU,EAAC,SAAS,CAAC,qBAA1B,CAA2B;IAC/C,IAAA,WAAW,GAAK,IAAA,0BAAa,GAAE,YAApB,CAAqB;IAExC,OAAO,IAAA,mBAAW,EAAC;;;;;oBACjB,IAAI,CAAC,oBAAoB,EAAE;wBACzB,sBAAO;qBACR;oBACK,KAAK,GAAG,eAAe,CAAC,EAAE,MAAM,QAAA,EAAE,eAAe,iBAAA,EAAE,YAAY,cAAA,EAAE,oBAAoB,sBAAA,EAAE,CAAC,CAAC;oBAE/F,OAAO,CAAC,KAAK,EAAE,CAAC;;;;oBAEd,qBAAM,oBAAoB,CAAC,EAAE,YAAY,cAAA,EAAE,KAAK,OAAA,EAAE,CAAC,EAAA;;oBAAnD,SAAmD,CAAC;oBACpD,OAAO,CAAC,SAAS,EAAE,CAAC;;;;oBAEpB,WAAW,CAAC,KAAG,CAAC,CAAC;oBACjB,OAAO,CAAC,OAAO,CAAC,KAAG,CAAC,CAAC;;;;;SAExB,EAAE,CAAC,oBAAoB,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC;AACvF,CAAC;AA3BD,0DA2BC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parameters of the useTracking hook.
|
|
3
|
+
*/
|
|
4
|
+
export interface TrackingParams {
|
|
5
|
+
/**
|
|
6
|
+
* The inspection ID.
|
|
7
|
+
*/
|
|
8
|
+
inspectionId: string;
|
|
9
|
+
/**
|
|
10
|
+
* The authentication token used to communicate with the API.
|
|
11
|
+
*/
|
|
12
|
+
authToken: string;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Custom hook used for adding tags and userId to analytics and monitoring provider.
|
|
16
|
+
*/
|
|
17
|
+
export declare function useTracking({ inspectionId, authToken }: TrackingParams): void;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useTracking = void 0;
|
|
4
|
+
var analytics_1 = require("@monkvision/analytics");
|
|
5
|
+
var monitoring_1 = require("@monkvision/monitoring");
|
|
6
|
+
var network_1 = require("@monkvision/network");
|
|
7
|
+
var react_1 = require("react");
|
|
8
|
+
/**
|
|
9
|
+
* Custom hook used for adding tags and userId to analytics and monitoring provider.
|
|
10
|
+
*/
|
|
11
|
+
function useTracking(_a) {
|
|
12
|
+
var inspectionId = _a.inspectionId, authToken = _a.authToken;
|
|
13
|
+
var analytics = (0, analytics_1.useAnalytics)();
|
|
14
|
+
var monitoring = (0, monitoring_1.useMonitoring)();
|
|
15
|
+
(0, react_1.useEffect)(function () {
|
|
16
|
+
var _a;
|
|
17
|
+
analytics.setUserId(inspectionId);
|
|
18
|
+
monitoring.setTags({
|
|
19
|
+
inspectionId: inspectionId,
|
|
20
|
+
});
|
|
21
|
+
var userId = (_a = (0, network_1.decodeMonkJwt)(authToken)) === null || _a === void 0 ? void 0 : _a.sub;
|
|
22
|
+
if (userId) {
|
|
23
|
+
monitoring.setUserId(userId);
|
|
24
|
+
analytics.setUserProperties({ authToken: userId });
|
|
25
|
+
}
|
|
26
|
+
}, [inspectionId, authToken]);
|
|
27
|
+
}
|
|
28
|
+
exports.useTracking = useTracking;
|
|
29
|
+
//# sourceMappingURL=useTracking.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTracking.js","sourceRoot":"","sources":["../../../src/PhotoCapture/hooks/useTracking.ts"],"names":[],"mappings":";;;AAAA,mDAAqD;AACrD,qDAAuD;AACvD,+CAAoD;AACpD,+BAAkC;AAgBlC;;GAEG;AACH,SAAgB,WAAW,CAAC,EAA2C;QAAzC,YAAY,kBAAA,EAAE,SAAS,eAAA;IACnD,IAAM,SAAS,GAAG,IAAA,wBAAY,GAAE,CAAC;IACjC,IAAM,UAAU,GAAG,IAAA,0BAAa,GAAE,CAAC;IAEnC,IAAA,iBAAS,EAAC;;QACR,SAAS,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAClC,UAAU,CAAC,OAAO,CAAC;YACjB,YAAY,cAAA;SACb,CAAC,CAAC;QACH,IAAM,MAAM,GAAG,MAAA,IAAA,uBAAa,EAAC,SAAS,CAAC,0CAAE,GAAG,CAAC;QAC7C,IAAI,MAAM,EAAE;YACV,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAC7B,SAAS,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;SACpD;IACH,CAAC,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC;AAChC,CAAC;AAfD,kCAeC"}
|