react-native-timacare 3.3.56-alert → 3.3.57-cccd

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.
Files changed (101) hide show
  1. package/lib/commonjs/assets/icons/index.js +1 -1
  2. package/lib/commonjs/assets/icons/index.js.flow +2 -0
  3. package/lib/commonjs/assets/icons/index.js.map +1 -1
  4. package/lib/commonjs/assets/icons/modal_confirm.svg +5 -5
  5. package/lib/commonjs/assets/icons/modal_notice.svg +32 -32
  6. package/lib/commonjs/assets/icons/modal_success.svg +26 -26
  7. package/lib/commonjs/assets/icons/modal_warning.svg +21 -21
  8. package/lib/commonjs/assets/icons/user_security.svg +10 -0
  9. package/lib/commonjs/assets/tts/Frame1000011947.png +0 -0
  10. package/lib/commonjs/navigation/primary-navigator.js +1 -1
  11. package/lib/commonjs/navigation/primary-navigator.js.flow +7 -0
  12. package/lib/commonjs/navigation/primary-navigator.js.map +1 -1
  13. package/lib/commonjs/screens/NFC/OcrStart.js +2 -0
  14. package/lib/commonjs/screens/NFC/OcrStart.js.flow +171 -0
  15. package/lib/commonjs/screens/NFC/OcrStart.js.map +1 -0
  16. package/lib/commonjs/screens/NFC/ScanMRZ.js +2 -0
  17. package/lib/commonjs/screens/NFC/ScanMRZ.js.flow +563 -0
  18. package/lib/commonjs/screens/NFC/ScanMRZ.js.map +1 -0
  19. package/lib/commonjs/screens/camera/CCCDCameraScreen.js +1 -1
  20. package/lib/commonjs/screens/camera/CCCDCameraScreen.js.flow +203 -133
  21. package/lib/commonjs/screens/camera/CCCDCameraScreen.js.map +1 -1
  22. package/lib/commonjs/screens/home/index.js +1 -1
  23. package/lib/commonjs/screens/home/index.js.flow +7 -112
  24. package/lib/commonjs/screens/home/index.js.map +1 -1
  25. package/lib/commonjs/screens/nationalID/index.js +1 -1
  26. package/lib/commonjs/screens/nationalID/index.js.flow +123 -218
  27. package/lib/commonjs/screens/nationalID/index.js.map +1 -1
  28. package/lib/commonjs/screens/nationalIDBack/index.js +1 -1
  29. package/lib/commonjs/screens/nationalIDBack/index.js.flow +129 -209
  30. package/lib/commonjs/screens/nationalIDBack/index.js.map +1 -1
  31. package/lib/commonjs/screens/toan-trinh-so/OCR.js +1 -1
  32. package/lib/commonjs/screens/toan-trinh-so/OCR.js.flow +269 -555
  33. package/lib/commonjs/screens/toan-trinh-so/OCR.js.map +1 -1
  34. package/lib/commonjs/screens/toan-trinh-so/VehicleCamera.js +1 -1
  35. package/lib/commonjs/screens/toan-trinh-so/VehicleCamera.js.flow +225 -287
  36. package/lib/commonjs/screens/toan-trinh-so/VehicleCamera.js.map +1 -1
  37. package/lib/commonjs/utils/cameraCrop.js +2 -0
  38. package/lib/commonjs/utils/cameraCrop.js.flow +96 -0
  39. package/lib/commonjs/utils/cameraCrop.js.map +1 -0
  40. package/lib/module/assets/icons/index.js +1 -1
  41. package/lib/module/assets/icons/index.js.map +1 -1
  42. package/lib/module/assets/icons/modal_confirm.svg +5 -5
  43. package/lib/module/assets/icons/modal_notice.svg +32 -32
  44. package/lib/module/assets/icons/modal_success.svg +26 -26
  45. package/lib/module/assets/icons/modal_warning.svg +21 -21
  46. package/lib/module/assets/icons/user_security.svg +10 -0
  47. package/lib/module/assets/tts/Frame1000011947.png +0 -0
  48. package/lib/module/navigation/primary-navigator.js +1 -1
  49. package/lib/module/navigation/primary-navigator.js.map +1 -1
  50. package/lib/module/screens/NFC/OcrStart.js +2 -0
  51. package/lib/module/screens/NFC/OcrStart.js.map +1 -0
  52. package/lib/module/screens/NFC/ScanMRZ.js +2 -0
  53. package/lib/module/screens/NFC/ScanMRZ.js.map +1 -0
  54. package/lib/module/screens/camera/CCCDCameraScreen.js +1 -1
  55. package/lib/module/screens/camera/CCCDCameraScreen.js.map +1 -1
  56. package/lib/module/screens/home/index.js +1 -1
  57. package/lib/module/screens/home/index.js.map +1 -1
  58. package/lib/module/screens/nationalID/index.js +1 -1
  59. package/lib/module/screens/nationalID/index.js.map +1 -1
  60. package/lib/module/screens/nationalIDBack/index.js +1 -1
  61. package/lib/module/screens/nationalIDBack/index.js.map +1 -1
  62. package/lib/module/screens/toan-trinh-so/OCR.js +1 -1
  63. package/lib/module/screens/toan-trinh-so/OCR.js.map +1 -1
  64. package/lib/module/screens/toan-trinh-so/VehicleCamera.js +1 -1
  65. package/lib/module/screens/toan-trinh-so/VehicleCamera.js.map +1 -1
  66. package/lib/module/utils/cameraCrop.js +2 -0
  67. package/lib/module/utils/cameraCrop.js.map +1 -0
  68. package/lib/typescript/assets/icons/index.d.ts +2 -1
  69. package/lib/typescript/assets/icons/index.d.ts.map +1 -1
  70. package/lib/typescript/navigation/primary-navigator.d.ts +3 -0
  71. package/lib/typescript/navigation/primary-navigator.d.ts.map +1 -1
  72. package/lib/typescript/screens/NFC/OcrStart.d.ts +2 -0
  73. package/lib/typescript/screens/NFC/OcrStart.d.ts.map +1 -0
  74. package/lib/typescript/screens/NFC/ScanMRZ.d.ts +15 -0
  75. package/lib/typescript/screens/NFC/ScanMRZ.d.ts.map +1 -0
  76. package/lib/typescript/screens/camera/CCCDCameraScreen.d.ts.map +1 -1
  77. package/lib/typescript/screens/home/index.d.ts.map +1 -1
  78. package/lib/typescript/screens/nationalID/index.d.ts.map +1 -1
  79. package/lib/typescript/screens/nationalIDBack/index.d.ts.map +1 -1
  80. package/lib/typescript/screens/toan-trinh-so/OCR.d.ts.map +1 -1
  81. package/lib/typescript/screens/toan-trinh-so/VehicleCamera.d.ts.map +1 -1
  82. package/lib/typescript/utils/cameraCrop.d.ts +43 -0
  83. package/lib/typescript/utils/cameraCrop.d.ts.map +1 -0
  84. package/package.json +2 -1
  85. package/src/assets/icons/index.tsx +2 -0
  86. package/src/assets/icons/modal_confirm.svg +5 -5
  87. package/src/assets/icons/modal_notice.svg +32 -32
  88. package/src/assets/icons/modal_success.svg +26 -26
  89. package/src/assets/icons/modal_warning.svg +21 -21
  90. package/src/assets/icons/user_security.svg +10 -0
  91. package/src/assets/tts/Frame1000011947.png +0 -0
  92. package/src/navigation/primary-navigator.tsx +7 -0
  93. package/src/screens/NFC/OcrStart.tsx +171 -0
  94. package/src/screens/NFC/ScanMRZ.tsx +563 -0
  95. package/src/screens/camera/CCCDCameraScreen.tsx +203 -133
  96. package/src/screens/home/index.tsx +7 -112
  97. package/src/screens/nationalID/index.tsx +123 -218
  98. package/src/screens/nationalIDBack/index.tsx +129 -209
  99. package/src/screens/toan-trinh-so/OCR.tsx +269 -555
  100. package/src/screens/toan-trinh-so/VehicleCamera.tsx +225 -287
  101. package/src/utils/cameraCrop.ts +96 -0
@@ -1,2 +1,2 @@
1
- var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.default=CCCDCameraScreen;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _react=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _reactNativeVisionCamera=require("react-native-vision-camera");var _icons=require("../../assets/icons");var _MText=require("../../components/MText");var _AlertGlobal=require("../../components/ModalNotification/AlertGlobal");var _native=require("@react-navigation/native");var _reactNativeSafeAreaContext=require("react-native-safe-area-context");var _CommonStyles=require("../CommonStyles");var _reactNativePermissions=require("react-native-permissions");var _jsxFileName="/Users/tima/Tima/react-native-timacare/src/screens/camera/CCCDCameraScreen.tsx";function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap(),n=new WeakMap();return(_interopRequireWildcard=function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;var o,i,f={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return f;if(o=t?n:r){if(o.has(e))return o.get(e);o.set(e,f);}for(var _t2 in e)"default"!==_t2&&{}.hasOwnProperty.call(e,_t2)&&((i=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,_t2))&&(i.get||i.set)?o(f,_t2,i):f[_t2]=e[_t2]);return f;})(e,t);}function CCCDCameraScreen(props){var _props$route2,_props$route2$params;var insets=(0,_reactNativeSafeAreaContext.useSafeAreaInsets)();var navigation=(0,_native.useNavigation)();var isFocused=(0,_native.useIsFocused)();var myCamera=(0,_react.useRef)(null);var _useState=(0,_react.useState)(false),_useState2=(0,_slicedToArray2.default)(_useState,2),passPermission=_useState2[0],setPassPermission=_useState2[1];var _useState3=(0,_react.useState)(false),_useState4=(0,_slicedToArray2.default)(_useState3,2),shouldRenderCamera=_useState4[0],setShouldRenderCamera=_useState4[1];var device=(0,_reactNativeVisionCamera.useCameraDevice)('back');var format=(0,_reactNativeVisionCamera.useCameraFormat)(device,[{photoResolution:{width:1280,height:720}}]);var takePicture=function _callee(){var _props$route,_props$route$params,data,_t;return _regenerator.default.async(function(_context){while(1)switch(_context.prev=_context.next){case 0:if(!(myCamera.current==null)){_context.next=1;break;}return _context.abrupt("return");case 1:_context.prev=1;_context.next=2;return _regenerator.default.awrap(myCamera.current.takePhoto({qualityPrioritization:'quality'}));case 2:data=_context.sent;navigation.goBack();if((_props$route=props.route)!=null&&(_props$route$params=_props$route.params)!=null&&_props$route$params.callback){props.route.params.callback('file://'+data.path);}_context.next=4;break;case 3:_context.prev=3;_t=_context["catch"](1);console.error(_t);case 4:case"end":return _context.stop();}},null,null,[[1,3]],Promise);};var _requestPermissions=function requestPermissions(){(0,_reactNativePermissions.request)(_reactNative.Platform.OS==='ios'?_reactNativePermissions.PERMISSIONS.IOS.CAMERA:_reactNativePermissions.PERMISSIONS.ANDROID.CAMERA).then(function(result){switch(result){case _reactNativePermissions.RESULTS.UNAVAILABLE:console.log('This feature is not available (on this device / in this context)');_AlertGlobal.AlertGlobal.show({type:'warning',title:'Thông báo',message:'Máy ảnh trên thiết bị không tương thích.\nVui lòng kiểm tra lại thiết bị!',primaryText:'Đồng ý'});break;case _reactNativePermissions.RESULTS.DENIED:console.log('The permission has not been requested / is denied but requestable');_AlertGlobal.AlertGlobal.show({type:'warning',title:'Thông báo',message:'Bạn đã từ chối quyền máy ảnh. Vui lòng cấp quyền máy ảnh để tiếp tục!',primaryText:'Đồng ý',onPrimaryPress:function onPrimaryPress(){if(_reactNative.Platform.OS==='ios'){(0,_reactNativePermissions.openSettings)();}else{_requestPermissions();}}});break;case _reactNativePermissions.RESULTS.LIMITED:console.log('The permission is limited: some actions are possible');_AlertGlobal.AlertGlobal.show({type:'warning',title:'Thông báo',message:'Quyền máy ảnh bị hạn chế. Vui lòng kiểm tra lại để tiếp tục!',primaryText:'Đồng ý',onPrimaryPress:function onPrimaryPress(){if(_reactNative.Platform.OS==='ios'){(0,_reactNativePermissions.openSettings)();}else{_requestPermissions();}}});break;case _reactNativePermissions.RESULTS.GRANTED:console.log('The permission is granted');setPassPermission(true);break;case _reactNativePermissions.RESULTS.BLOCKED:console.log('The permission is denied and not requestable anymore');_AlertGlobal.AlertGlobal.show({type:'warning',title:'Thông báo',message:'Bạn đã từ chối quyền máy ảnh. Vui lòng cấp quyền máy ảnh để tiếp tục!',primaryText:'Đồng ý',onPrimaryPress:function onPrimaryPress(){if(_reactNative.Platform.OS==='ios'){(0,_reactNativePermissions.openSettings)();}else{(0,_reactNativePermissions.openSettings)();}}});break;}});};(0,_react.useEffect)(function(){_requestPermissions();},[]);(0,_react.useEffect)(function(){var timeout;if(isFocused){timeout=setTimeout(function(){setShouldRenderCamera(true);},500);}else{setShouldRenderCamera(false);}return function(){return clearTimeout(timeout);};},[isFocused]);if(!passPermission&&!shouldRenderCamera){return _react.default.createElement(_reactNative.View,{style:_CommonStyles.commonStyles.fill,__self:this,__source:{fileName:_jsxFileName,lineNumber:156,columnNumber:7}},_react.default.createElement(_reactNative.ActivityIndicator,{size:"large",color:"#0000ff",__self:this,__source:{fileName:_jsxFileName,lineNumber:157,columnNumber:9}}));}return _react.default.createElement(_reactNative.View,{style:{flex:1,backgroundColor:'black'},pointerEvents:'box-none',__self:this,__source:{fileName:_jsxFileName,lineNumber:163,columnNumber:5}},_react.default.createElement(_reactNative.View,{style:[_CommonStyles.commonStyles.alignCenter,_CommonStyles.commonStyles.fill,_CommonStyles.commonStyles.justifyCenter,{position:'absolute',width:_reactNative.Dimensions.get('window').width,height:_reactNative.Dimensions.get('window').height}],__self:this,__source:{fileName:_jsxFileName,lineNumber:167,columnNumber:7}},device?_react.default.createElement(_reactNative.View,{style:$cameraFrame,__self:this,__source:{fileName:_jsxFileName,lineNumber:180,columnNumber:11}},_react.default.createElement(_reactNativeVisionCamera.Camera,{ref:myCamera,style:_reactNative.StyleSheet.absoluteFill,device:device,isActive:true,photo:true,format:format,__self:this,__source:{fileName:_jsxFileName,lineNumber:181,columnNumber:13}})):_react.default.createElement(_reactNative.ActivityIndicator,{__self:this,__source:{fileName:_jsxFileName,lineNumber:191,columnNumber:11}})),_react.default.createElement(_reactNative.View,{style:[$back,{top:insets.top+16}],__self:this,__source:{fileName:_jsxFileName,lineNumber:195,columnNumber:7}},_react.default.createElement(_reactNative.TouchableOpacity,{onPress:function onPress(){navigation.goBack();},style:{position:'absolute',left:0,width:48,height:48,zIndex:1000,alignItems:'center'},__self:this,__source:{fileName:_jsxFileName,lineNumber:196,columnNumber:9}},_react.default.createElement(_icons.IconBackWhite,{__self:this,__source:{fileName:_jsxFileName,lineNumber:209,columnNumber:11}})),_react.default.createElement(_MText.MText,{style:{textAlign:'center',zIndex:10,color:'#FFFFFF',fontSize:16},__self:this,__source:{fileName:_jsxFileName,lineNumber:211,columnNumber:9}},props!=null&&(_props$route2=props.route)!=null&&(_props$route2$params=_props$route2.params)!=null&&_props$route2$params.front?'Chụp CMND/ CCCD mặt trước':'Chụp CMND/ CCCD mặt sau')),_react.default.createElement(_reactNative.View,{style:{position:'absolute',bottom:insets.bottom,alignSelf:'center',flexDirection:'column',alignItems:'center'},__self:this,__source:{fileName:_jsxFileName,lineNumber:224,columnNumber:7}},_react.default.createElement(_MText.MText,{style:{color:'#fff',marginBottom:16,textAlign:'center',paddingHorizontal:24},__self:this,__source:{fileName:_jsxFileName,lineNumber:233,columnNumber:9}},"Vui l\xF2ng \u0111\u1EB7t gi\u1EA5y t\u1EDD n\u1EB1m v\u1EEBa khung h\xECnh ch\u1EEF nh\u1EADt, ch\u1EE5p \u0111\u1EE7 \xE1nh s\xE1ng v\xE0 r\xF5 n\xE9t."),_react.default.createElement(_reactNative.TouchableOpacity,{onPress:takePicture,__self:this,__source:{fileName:_jsxFileName,lineNumber:244,columnNumber:9}},_react.default.createElement(_icons.TakePhotoSvg,{__self:this,__source:{fileName:_jsxFileName,lineNumber:245,columnNumber:11}}))));}var overlayColor='rgba(22, 22, 22, 0.7)';var $back={position:'absolute',left:0,right:0};var $cameraFrame={width:_reactNative.Dimensions.get('window').width,height:260,overflow:'hidden',backgroundColor:'black'};var $overlay=(0,_extends2.default)({},_reactNative.StyleSheet.absoluteFillObject,{justifyContent:'center',alignItems:'center'});var $container={flex:1,backgroundColor:'#000'};var $row={flexDirection:'row',alignItems:'center'};var $darkOverlayTop={width:'100%',backgroundColor:overlayColor};var $darkOverlayBottom={width:'100%',backgroundColor:overlayColor};var $darkOverlaySide={backgroundColor:overlayColor};var $frameBorder={};
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.default=CCCDCameraScreen;var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _react=_interopRequireWildcard(require("react"));var _reactNative=require("react-native");var _reactNativeVisionCamera=require("react-native-vision-camera");var _icons=require("../../assets/icons");var _MText=require("../../components/MText");var _AlertGlobal=require("../../components/ModalNotification/AlertGlobal");var _native=require("@react-navigation/native");var _reactNativeSafeAreaContext=require("react-native-safe-area-context");var _CommonStyles=require("../CommonStyles");var _reactNativePermissions=require("react-native-permissions");var _cameraCrop=require("../../utils/cameraCrop");var _jsxFileName="/Users/tima/Tima/react-native-timacare/src/screens/camera/CCCDCameraScreen.tsx";function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap(),n=new WeakMap();return(_interopRequireWildcard=function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;var o,i,f={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return f;if(o=t?n:r){if(o.has(e))return o.get(e);o.set(e,f);}for(var _t4 in e)"default"!==_t4&&{}.hasOwnProperty.call(e,_t4)&&((i=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,_t4))&&(i.get||i.set)?o(f,_t4,i):f[_t4]=e[_t4]);return f;})(e,t);}var ORANGE='#F05123';var CARD_ASPECT_RATIO=85.6/54;var FRAME_ASPECT=CARD_ASPECT_RATIO;function CCCDCameraScreen(props){var _props$route2,_props$route2$params;var insets=(0,_reactNativeSafeAreaContext.useSafeAreaInsets)();var navigation=(0,_native.useNavigation)();var isFocused=(0,_native.useIsFocused)();var myCamera=(0,_react.useRef)(null);var frameSize=(0,_react.useRef)({width:0,height:0});var focusTimer=(0,_react.useRef)(null);var takingRef=(0,_react.useRef)(false);var _useState=(0,_react.useState)(false),_useState2=(0,_slicedToArray2.default)(_useState,2),passPermission=_useState2[0],setPassPermission=_useState2[1];var _useState3=(0,_react.useState)(false),_useState4=(0,_slicedToArray2.default)(_useState3,2),shouldRenderCamera=_useState4[0],setShouldRenderCamera=_useState4[1];var _useState5=(0,_react.useState)(null),_useState6=(0,_slicedToArray2.default)(_useState5,2),focusPoint=_useState6[0],setFocusPoint=_useState6[1];var devices=(0,_reactNativeVisionCamera.useCameraDevices)();var device=(0,_react.useMemo)(function(){return(0,_cameraCrop.pickClosestFocusDevice)(devices,'back');},[devices]);var focusAt=(0,_react.useCallback)(function _callee(x,y){var cam,_t;return _regenerator.default.async(function(_context){while(1)switch(_context.prev=_context.next){case 0:cam=myCamera.current;if(!(cam==null||!(device!=null&&device.supportsFocus))){_context.next=1;break;}return _context.abrupt("return");case 1:setFocusPoint({x:x,y:y});if(focusTimer.current)clearTimeout(focusTimer.current);focusTimer.current=setTimeout(function(){return setFocusPoint(null);},800);_context.prev=2;_context.next=3;return _regenerator.default.awrap(cam.focus({x:x,y:y}));case 3:_context.next=5;break;case 4:_context.prev=4;_t=_context["catch"](2);case 5:case"end":return _context.stop();}},null,null,[[2,4]],Promise);},[device]);var takePicture=function _callee2(){var _props$route,_props$route$params,_frameSize$current,fw,fh,data,uri,_t2,_t3;return _regenerator.default.async(function(_context2){while(1)switch(_context2.prev=_context2.next){case 0:if(!(myCamera.current==null||takingRef.current)){_context2.next=1;break;}return _context2.abrupt("return");case 1:takingRef.current=true;_context2.prev=2;_frameSize$current=frameSize.current,fw=_frameSize$current.width,fh=_frameSize$current.height;if(!(device!=null&&device.supportsFocus&&fw&&fh)){_context2.next=6;break;}_context2.prev=3;_context2.next=4;return _regenerator.default.awrap(myCamera.current.focus({x:fw/2,y:fh/2}));case 4:_context2.next=6;break;case 5:_context2.prev=5;_t2=_context2["catch"](3);case 6:_context2.next=7;return _regenerator.default.awrap(myCamera.current.takePhoto({qualityPrioritization:'quality'}));case 7:data=_context2.sent;_context2.next=8;return _regenerator.default.awrap((0,_cameraCrop.cropPhotoToAspect)(data,FRAME_ASPECT));case 8:uri=_context2.sent;navigation.goBack();if((_props$route=props.route)!=null&&(_props$route$params=_props$route.params)!=null&&_props$route$params.callback){props.route.params.callback(uri);}_context2.next=10;break;case 9:_context2.prev=9;_t3=_context2["catch"](2);console.error(_t3);takingRef.current=false;case 10:case"end":return _context2.stop();}},null,null,[[2,9],[3,5]],Promise);};var _requestPermissions=function requestPermissions(){(0,_reactNativePermissions.request)(_reactNative.Platform.OS==='ios'?_reactNativePermissions.PERMISSIONS.IOS.CAMERA:_reactNativePermissions.PERMISSIONS.ANDROID.CAMERA).then(function(result){switch(result){case _reactNativePermissions.RESULTS.UNAVAILABLE:console.log('This feature is not available (on this device / in this context)');_AlertGlobal.AlertGlobal.show({type:'warning',title:'Thông báo',message:'Máy ảnh trên thiết bị không tương thích.\nVui lòng kiểm tra lại thiết bị!',primaryText:'Đồng ý'});break;case _reactNativePermissions.RESULTS.DENIED:console.log('The permission has not been requested / is denied but requestable');_AlertGlobal.AlertGlobal.show({type:'warning',title:'Thông báo',message:'Bạn đã từ chối quyền máy ảnh. Vui lòng cấp quyền máy ảnh để tiếp tục!',primaryText:'Đồng ý',onPrimaryPress:function onPrimaryPress(){if(_reactNative.Platform.OS==='ios'){(0,_reactNativePermissions.openSettings)();}else{_requestPermissions();}}});break;case _reactNativePermissions.RESULTS.LIMITED:console.log('The permission is limited: some actions are possible');_AlertGlobal.AlertGlobal.show({type:'warning',title:'Thông báo',message:'Quyền máy ảnh bị hạn chế. Vui lòng kiểm tra lại để tiếp tục!',primaryText:'Đồng ý',onPrimaryPress:function onPrimaryPress(){if(_reactNative.Platform.OS==='ios'){(0,_reactNativePermissions.openSettings)();}else{_requestPermissions();}}});break;case _reactNativePermissions.RESULTS.GRANTED:console.log('The permission is granted');setPassPermission(true);break;case _reactNativePermissions.RESULTS.BLOCKED:console.log('The permission is denied and not requestable anymore');_AlertGlobal.AlertGlobal.show({type:'warning',title:'Thông báo',message:'Bạn đã từ chối quyền máy ảnh. Vui lòng cấp quyền máy ảnh để tiếp tục!',primaryText:'Đồng ý',onPrimaryPress:function onPrimaryPress(){if(_reactNative.Platform.OS==='ios'){(0,_reactNativePermissions.openSettings)();}else{(0,_reactNativePermissions.openSettings)();}}});break;}});};(0,_react.useEffect)(function(){_requestPermissions();return function(){if(focusTimer.current)clearTimeout(focusTimer.current);};},[]);(0,_react.useEffect)(function(){var timeout;if(isFocused){timeout=setTimeout(function(){setShouldRenderCamera(true);},500);}else{setShouldRenderCamera(false);}return function(){return clearTimeout(timeout);};},[isFocused]);if(!passPermission&&!shouldRenderCamera){return _react.default.createElement(_reactNative.View,{style:_CommonStyles.commonStyles.fill,__self:this,__source:{fileName:_jsxFileName,lineNumber:209,columnNumber:7}},_react.default.createElement(_reactNative.ActivityIndicator,{size:"large",color:"#0000ff",__self:this,__source:{fileName:_jsxFileName,lineNumber:210,columnNumber:9}}));}return _react.default.createElement(_reactNative.View,{style:styles.container,__self:this,__source:{fileName:_jsxFileName,lineNumber:216,columnNumber:5}},_react.default.createElement(_reactNative.View,{style:[styles.header,{paddingTop:insets.top+16}],__self:this,__source:{fileName:_jsxFileName,lineNumber:217,columnNumber:7}},_react.default.createElement(_reactNative.TouchableOpacity,{onPress:function onPress(){return navigation.goBack();},hitSlop:{top:12,bottom:12,left:12,right:12},__self:this,__source:{fileName:_jsxFileName,lineNumber:218,columnNumber:9}},_react.default.createElement(_icons.IconBack,{__self:this,__source:{fileName:_jsxFileName,lineNumber:222,columnNumber:11}})),_react.default.createElement(_reactNative.View,{style:styles.titleWrap,__self:this,__source:{fileName:_jsxFileName,lineNumber:224,columnNumber:9}},_react.default.createElement(_MText.MText,{style:styles.headerTitle,__self:this,__source:{fileName:_jsxFileName,lineNumber:225,columnNumber:11}},"CMND / CCCD"))),_react.default.createElement(_MText.MText,{style:styles.instruction,__self:this,__source:{fileName:_jsxFileName,lineNumber:229,columnNumber:7}},props!=null&&(_props$route2=props.route)!=null&&(_props$route2$params=_props$route2.params)!=null&&_props$route2$params.front?'Chụp CMND/ CCCD mặt trước':'Chụp CMND/ CCCD mặt sau'),_react.default.createElement(_reactNative.View,{style:styles.photoFrame,onLayout:function onLayout(e){frameSize.current=e.nativeEvent.layout;},onStartShouldSetResponder:function onStartShouldSetResponder(){return true;},onResponderRelease:function onResponderRelease(e){return focusAt(e.nativeEvent.locationX,e.nativeEvent.locationY);},__self:this,__source:{fileName:_jsxFileName,lineNumber:237,columnNumber:7}},device?_react.default.createElement(_reactNativeVisionCamera.Camera,{ref:myCamera,style:_reactNative.StyleSheet.absoluteFill,device:device,isActive:isFocused,photo:true,__self:this,__source:{fileName:_jsxFileName,lineNumber:248,columnNumber:11}}):null,_react.default.createElement(_reactNative.View,{style:[styles.corner,styles.cornerTL],__self:this,__source:{fileName:_jsxFileName,lineNumber:256,columnNumber:9}}),_react.default.createElement(_reactNative.View,{style:[styles.corner,styles.cornerTR],__self:this,__source:{fileName:_jsxFileName,lineNumber:257,columnNumber:9}}),_react.default.createElement(_reactNative.View,{style:[styles.corner,styles.cornerBL],__self:this,__source:{fileName:_jsxFileName,lineNumber:258,columnNumber:9}}),_react.default.createElement(_reactNative.View,{style:[styles.corner,styles.cornerBR],__self:this,__source:{fileName:_jsxFileName,lineNumber:259,columnNumber:9}}),focusPoint&&_react.default.createElement(_reactNative.View,{pointerEvents:"none",style:[styles.focusRing,{left:focusPoint.x-32,top:focusPoint.y-32}],__self:this,__source:{fileName:_jsxFileName,lineNumber:261,columnNumber:11}})),_react.default.createElement(_reactNative.View,{style:styles.spacer,__self:this,__source:{fileName:_jsxFileName,lineNumber:271,columnNumber:7}}),_react.default.createElement(_MText.MText,{style:[styles.hint,{marginTop:0,marginBottom:20}],__self:this,__source:{fileName:_jsxFileName,lineNumber:272,columnNumber:7}},"\u0110\u01B0a gi\u1EA5y t\u1EDD l\u1EA1i g\u1EA7n cho v\u1EEBa khung, ch\u1EA1m v\xE0o m\xE0n h\xECnh",'\n',"\u0111\u1EC3 l\u1EA5y n\xE9t n\u1EBFu \u1EA3nh b\u1ECB m\u1EDD."),_react.default.createElement(_reactNative.TouchableOpacity,{style:[styles.captureButton,{marginBottom:insets.bottom+24}],onPress:takePicture,__self:this,__source:{fileName:_jsxFileName,lineNumber:276,columnNumber:7}},_react.default.createElement(_icons.TakePhotoSvg,{__self:this,__source:{fileName:_jsxFileName,lineNumber:280,columnNumber:9}})));}var styles=_reactNative.StyleSheet.create({container:{flex:1,backgroundColor:'#FFFFFF'},header:{flexDirection:'row',alignItems:'center',paddingHorizontal:16,paddingTop:8},titleWrap:{flex:1,alignItems:'center',justifyContent:'center',marginRight:24},headerTitle:{color:'#333333',fontSize:16,fontWeight:'600'},instruction:{textAlign:'center',color:'#333333',fontSize:14,lineHeight:20,marginTop:20,marginBottom:28},photoFrame:{marginHorizontal:24,aspectRatio:CARD_ASPECT_RATIO,borderRadius:8,overflow:'hidden',backgroundColor:'#000000'},corner:{position:'absolute',width:26,height:26,borderColor:ORANGE},focusRing:{position:'absolute',width:64,height:64,borderRadius:8,borderWidth:1.5,borderColor:'#FFD54A'},cornerTL:{top:0,left:0,borderTopWidth:4,borderLeftWidth:4,borderTopLeftRadius:8},cornerTR:{top:0,right:0,borderTopWidth:4,borderRightWidth:4,borderTopRightRadius:8},cornerBL:{bottom:0,left:0,borderBottomWidth:4,borderLeftWidth:4,borderBottomLeftRadius:8},cornerBR:{bottom:0,right:0,borderBottomWidth:4,borderRightWidth:4,borderBottomRightRadius:8},hint:{textAlign:'center',color:'#555555',fontSize:13,lineHeight:19,marginTop:48},spacer:{flex:1},captureButton:{alignSelf:'center'}});
2
2
  //# sourceMappingURL=CCCDCameraScreen.js.map
@@ -1,8 +1,13 @@
1
1
  // @ts-nocheck
2
- import React, { useEffect, useRef, useState } from 'react';
2
+ import React, {
3
+ useCallback,
4
+ useEffect,
5
+ useMemo,
6
+ useRef,
7
+ useState,
8
+ } from 'react';
3
9
  import {
4
10
  ActivityIndicator,
5
- Dimensions,
6
11
  Platform,
7
12
  StyleSheet,
8
13
  TouchableOpacity,
@@ -10,10 +15,9 @@ import {
10
15
  } from 'react-native';
11
16
  import {
12
17
  Camera as VisionCamera,
13
- useCameraDevice,
14
- useCameraFormat,
18
+ useCameraDevices,
15
19
  } from 'react-native-vision-camera';
16
- import { IconBackWhite, TakePhotoSvg } from '../../assets/icons';
20
+ import { IconBack, TakePhotoSvg } from '../../assets/icons';
17
21
  import { MText } from '../../components/MText';
18
22
  import { AlertGlobal } from '../../components/ModalNotification/AlertGlobal';
19
23
  import { useNavigation, useIsFocused } from '@react-navigation/native';
@@ -25,31 +29,77 @@ import {
25
29
  RESULTS,
26
30
  openSettings,
27
31
  } from 'react-native-permissions';
32
+ import {
33
+ cropPhotoToAspect,
34
+ pickClosestFocusDevice,
35
+ } from '../../utils/cameraCrop';
36
+
37
+ const ORANGE = '#F05123';
38
+ // Thẻ CMND/CCCD theo chuẩn ID-1: 85.6mm x 54mm
39
+ const CARD_ASPECT_RATIO = 85.6 / 54;
40
+ // Cắt ảnh vừa đúng khung (khung dùng aspectRatio = CARD_ASPECT_RATIO)
41
+ const FRAME_ASPECT = CARD_ASPECT_RATIO;
28
42
 
29
43
  export default function CCCDCameraScreen(props) {
30
44
  const insets = useSafeAreaInsets();
31
45
  const navigation = useNavigation();
32
46
  const isFocused = useIsFocused();
33
47
  const myCamera = useRef(null);
48
+ const frameSize = useRef({ width: 0, height: 0 });
49
+ const focusTimer = useRef(null);
50
+ const takingRef = useRef(false);
34
51
  const [passPermission, setPassPermission] = useState(false);
35
52
  const [shouldRenderCamera, setShouldRenderCamera] = useState(false);
36
- const device = useCameraDevice('back');
37
- const format = useCameraFormat(device, [
38
- { photoResolution: { width: 1280, height: 720 } },
53
+ const [focusPoint, setFocusPoint] = useState(null);
54
+
55
+ // Chọn ống kính sau lấy nét gần nhất (macro) để chụp cận thẻ mà không mờ
56
+ const devices = useCameraDevices();
57
+ const device = useMemo(() => pickClosestFocusDevice(devices, 'back'), [
58
+ devices,
39
59
  ]);
40
60
 
61
+ // Lấy nét vào một điểm (toạ độ theo hệ của khung preview = camera view).
62
+ // Dùng cho chạm-để-lấy-nét và lấy nét giữa khung trước khi chụp -> tránh mờ
63
+ // khi đưa giấy tờ lại gần (camera không tự bám nét kịp).
64
+ const focusAt = useCallback(
65
+ async (x, y) => {
66
+ const cam = myCamera.current;
67
+ if (cam == null || !device?.supportsFocus) return;
68
+ setFocusPoint({ x, y });
69
+ if (focusTimer.current) clearTimeout(focusTimer.current);
70
+ focusTimer.current = setTimeout(() => setFocusPoint(null), 800);
71
+ try {
72
+ await cam.focus({ x, y });
73
+ } catch (e) {
74
+ // focus có thể lỗi nếu đang lấy nét dở hoặc điểm ngoài vùng -> bỏ qua
75
+ }
76
+ },
77
+ [device]
78
+ );
79
+
41
80
  const takePicture = async () => {
42
- if (myCamera.current == null) return;
81
+ if (myCamera.current == null || takingRef.current) return;
82
+ takingRef.current = true;
43
83
  try {
84
+ // Lấy nét giữa khung trước khi chụp để tài liệu ở gần vẫn nét
85
+ const { width: fw, height: fh } = frameSize.current;
86
+ if (device?.supportsFocus && fw && fh) {
87
+ try {
88
+ await myCamera.current.focus({ x: fw / 2, y: fh / 2 });
89
+ } catch (e) {}
90
+ }
44
91
  const data = await myCamera.current.takePhoto({
45
92
  qualityPrioritization: 'quality',
46
93
  });
94
+ // Cắt ảnh vừa đúng khung preview (giữ nguyên logic điều hướng bên dưới)
95
+ const uri = await cropPhotoToAspect(data, FRAME_ASPECT);
47
96
  navigation.goBack();
48
97
  if (props.route?.params?.callback) {
49
- props.route.params.callback('file://' + data.path);
98
+ props.route.params.callback(uri);
50
99
  }
51
100
  } catch (err) {
52
101
  console.error(err);
102
+ takingRef.current = false;
53
103
  }
54
104
  };
55
105
 
@@ -135,6 +185,9 @@ export default function CCCDCameraScreen(props) {
135
185
 
136
186
  useEffect(() => {
137
187
  requestPermissions();
188
+ return () => {
189
+ if (focusTimer.current) clearTimeout(focusTimer.current);
190
+ };
138
191
  }, []);
139
192
 
140
193
  useEffect(() => {
@@ -160,138 +213,155 @@ export default function CCCDCameraScreen(props) {
160
213
  }
161
214
 
162
215
  return (
163
- <View
164
- style={{ flex: 1, backgroundColor: 'black' }}
165
- pointerEvents={'box-none'}
166
- >
167
- <View
168
- style={[
169
- commonStyles.alignCenter,
170
- commonStyles.fill,
171
- commonStyles.justifyCenter,
172
- {
173
- position: 'absolute',
174
- width: Dimensions.get('window').width,
175
- height: Dimensions.get('window').height,
176
- },
177
- ]}
178
- >
179
- {device ? (
180
- <View style={$cameraFrame}>
181
- <VisionCamera
182
- ref={myCamera}
183
- style={StyleSheet.absoluteFill}
184
- device={device}
185
- isActive={true}
186
- photo={true}
187
- format={format}
188
- />
189
- </View>
190
- ) : (
191
- <ActivityIndicator />
192
- )}
193
- </View>
194
-
195
- <View style={[$back, { top: insets.top + 16 }]}>
216
+ <View style={styles.container}>
217
+ <View style={[styles.header, { paddingTop: insets.top + 16 }]}>
196
218
  <TouchableOpacity
197
- onPress={() => {
198
- navigation.goBack();
199
- }}
200
- style={{
201
- position: 'absolute',
202
- left: 0,
203
- width: 48,
204
- height: 48,
205
- zIndex: 1000,
206
- alignItems: 'center',
207
- }}
219
+ onPress={() => navigation.goBack()}
220
+ hitSlop={{ top: 12, bottom: 12, left: 12, right: 12 }}
208
221
  >
209
- <IconBackWhite />
222
+ <IconBack />
210
223
  </TouchableOpacity>
211
- <MText
212
- style={{
213
- textAlign: 'center',
214
- zIndex: 10,
215
- color: '#FFFFFF',
216
- fontSize: 16,
217
- }}
218
- >
219
- {props?.route?.params?.front
220
- ? 'Chụp CMND/ CCCD mặt trước'
221
- : 'Chụp CMND/ CCCD mặt sau'}
222
- </MText>
224
+ <View style={styles.titleWrap}>
225
+ <MText style={styles.headerTitle}>CMND / CCCD</MText>
226
+ </View>
223
227
  </View>
228
+
229
+ <MText style={styles.instruction}>
230
+ {props?.route?.params?.front
231
+ ? 'Chụp CMND/ CCCD mặt trước'
232
+ : 'Chụp CMND/ CCCD mặt sau'}
233
+ </MText>
234
+
235
+ {/* Khung tỉ lệ thẻ: vùng nhìn thấy của preview = vùng sẽ crop.
236
+ Chạm vào khung để lấy nét thủ công. */}
224
237
  <View
225
- style={{
226
- position: 'absolute',
227
- bottom: insets.bottom,
228
- alignSelf: 'center',
229
- flexDirection: 'column',
230
- alignItems: 'center',
238
+ style={styles.photoFrame}
239
+ onLayout={(e) => {
240
+ frameSize.current = e.nativeEvent.layout;
231
241
  }}
242
+ onStartShouldSetResponder={() => true}
243
+ onResponderRelease={(e) =>
244
+ focusAt(e.nativeEvent.locationX, e.nativeEvent.locationY)
245
+ }
232
246
  >
233
- <MText
234
- style={{
235
- color: '#fff',
236
- marginBottom: 16,
237
- textAlign: 'center',
238
- paddingHorizontal: 24,
239
- }}
240
- >
241
- Vui lòng đặt giấy tờ nằm vừa khung hình chữ nhật, chụp đủ ánh sáng và
242
- nét.
243
- </MText>
244
- <TouchableOpacity onPress={takePicture}>
245
- <TakePhotoSvg />
246
- </TouchableOpacity>
247
+ {device ? (
248
+ <VisionCamera
249
+ ref={myCamera}
250
+ style={StyleSheet.absoluteFill}
251
+ device={device}
252
+ isActive={isFocused}
253
+ photo={true}
254
+ />
255
+ ) : null}
256
+ <View style={[styles.corner, styles.cornerTL]} />
257
+ <View style={[styles.corner, styles.cornerTR]} />
258
+ <View style={[styles.corner, styles.cornerBL]} />
259
+ <View style={[styles.corner, styles.cornerBR]} />
260
+ {focusPoint && (
261
+ <View
262
+ pointerEvents="none"
263
+ style={[
264
+ styles.focusRing,
265
+ { left: focusPoint.x - 32, top: focusPoint.y - 32 },
266
+ ]}
267
+ />
268
+ )}
247
269
  </View>
270
+
271
+ <View style={styles.spacer} />
272
+ <MText style={[styles.hint, { marginTop: 0, marginBottom: 20 }]}>
273
+ Đưa giấy tờ lại gần cho vừa khung, chạm vào màn hình{'\n'}để lấy nét nếu
274
+ ảnh bị mờ.
275
+ </MText>
276
+ <TouchableOpacity
277
+ style={[styles.captureButton, { marginBottom: insets.bottom + 24 }]}
278
+ onPress={takePicture}
279
+ >
280
+ <TakePhotoSvg />
281
+ </TouchableOpacity>
248
282
  </View>
249
283
  );
250
284
  }
251
285
 
252
- const overlayColor = 'rgba(22, 22, 22, 0.7)';
253
- const $back: ViewStyle = {
254
- position: 'absolute',
255
- left: 0,
256
- right: 0,
257
- };
258
-
259
- const $cameraFrame: ViewStyle = {
260
- width: Dimensions.get('window').width,
261
- height: 260,
262
- overflow: 'hidden',
263
- backgroundColor: 'black',
264
- };
265
-
266
- const $overlay: ViewStyle = {
267
- ...StyleSheet.absoluteFillObject,
268
- justifyContent: 'center',
269
- alignItems: 'center',
270
- };
271
-
272
- const $container: ViewStyle = {
273
- flex: 1,
274
- backgroundColor: '#000',
275
- };
276
-
277
- const $row: ViewStyle = {
278
- flexDirection: 'row',
279
- alignItems: 'center',
280
- };
281
-
282
- const $darkOverlayTop: ViewStyle = {
283
- width: '100%',
284
- backgroundColor: overlayColor,
285
- };
286
-
287
- const $darkOverlayBottom: ViewStyle = {
288
- width: '100%',
289
- backgroundColor: overlayColor,
290
- };
291
- const $darkOverlaySide: ViewStyle = {
292
- backgroundColor: overlayColor,
293
- };
294
- const $frameBorder: ViewStyle = {
295
- // borderColor: '#FDFDFD',
296
- // borderWidth: 2,
297
- };
286
+ const styles = StyleSheet.create({
287
+ container: { flex: 1, backgroundColor: '#FFFFFF' },
288
+ header: {
289
+ flexDirection: 'row',
290
+ alignItems: 'center',
291
+ paddingHorizontal: 16,
292
+ paddingTop: 8,
293
+ },
294
+ titleWrap: {
295
+ flex: 1,
296
+ alignItems: 'center',
297
+ justifyContent: 'center',
298
+ marginRight: 24,
299
+ },
300
+ headerTitle: { color: '#333333', fontSize: 16, fontWeight: '600' },
301
+ instruction: {
302
+ textAlign: 'center',
303
+ color: '#333333',
304
+ fontSize: 14,
305
+ lineHeight: 20,
306
+ marginTop: 20,
307
+ marginBottom: 28,
308
+ },
309
+ photoFrame: {
310
+ marginHorizontal: 24,
311
+ aspectRatio: CARD_ASPECT_RATIO,
312
+ borderRadius: 8,
313
+ overflow: 'hidden',
314
+ backgroundColor: '#000000',
315
+ },
316
+ corner: {
317
+ position: 'absolute',
318
+ width: 26,
319
+ height: 26,
320
+ borderColor: ORANGE,
321
+ },
322
+ focusRing: {
323
+ position: 'absolute',
324
+ width: 64,
325
+ height: 64,
326
+ borderRadius: 8,
327
+ borderWidth: 1.5,
328
+ borderColor: '#FFD54A',
329
+ },
330
+ cornerTL: {
331
+ top: 0,
332
+ left: 0,
333
+ borderTopWidth: 4,
334
+ borderLeftWidth: 4,
335
+ borderTopLeftRadius: 8,
336
+ },
337
+ cornerTR: {
338
+ top: 0,
339
+ right: 0,
340
+ borderTopWidth: 4,
341
+ borderRightWidth: 4,
342
+ borderTopRightRadius: 8,
343
+ },
344
+ cornerBL: {
345
+ bottom: 0,
346
+ left: 0,
347
+ borderBottomWidth: 4,
348
+ borderLeftWidth: 4,
349
+ borderBottomLeftRadius: 8,
350
+ },
351
+ cornerBR: {
352
+ bottom: 0,
353
+ right: 0,
354
+ borderBottomWidth: 4,
355
+ borderRightWidth: 4,
356
+ borderBottomRightRadius: 8,
357
+ },
358
+ hint: {
359
+ textAlign: 'center',
360
+ color: '#555555',
361
+ fontSize: 13,
362
+ lineHeight: 19,
363
+ marginTop: 48,
364
+ },
365
+ spacer: { flex: 1 },
366
+ captureButton: { alignSelf: 'center' },
367
+ });
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeVisionCamera","_icons","_MText","_AlertGlobal","_native","_reactNativeSafeAreaContext","_CommonStyles","_reactNativePermissions","_jsxFileName","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t2","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","CCCDCameraScreen","props","_props$route2","_props$route2$params","insets","useSafeAreaInsets","navigation","useNavigation","isFocused","useIsFocused","myCamera","useRef","_useState","useState","_useState2","_slicedToArray2","passPermission","setPassPermission","_useState3","_useState4","shouldRenderCamera","setShouldRenderCamera","device","useCameraDevice","format","useCameraFormat","photoResolution","width","height","takePicture","_callee","_props$route","_props$route$params","data","_t","_regenerator","async","_context","prev","next","current","abrupt","awrap","takePhoto","qualityPrioritization","sent","goBack","route","params","callback","path","console","error","stop","Promise","requestPermissions","request","Platform","OS","PERMISSIONS","IOS","CAMERA","ANDROID","then","result","RESULTS","UNAVAILABLE","log","AlertGlobal","show","type","title","message","primaryText","DENIED","onPrimaryPress","openSettings","LIMITED","GRANTED","BLOCKED","useEffect","timeout","setTimeout","clearTimeout","createElement","View","style","commonStyles","fill","__self","__source","fileName","lineNumber","columnNumber","ActivityIndicator","size","color","flex","backgroundColor","pointerEvents","alignCenter","justifyCenter","position","Dimensions","$cameraFrame","Camera","ref","StyleSheet","absoluteFill","isActive","photo","$back","top","TouchableOpacity","onPress","left","zIndex","alignItems","IconBackWhite","MText","textAlign","fontSize","front","bottom","alignSelf","flexDirection","marginBottom","paddingHorizontal","TakePhotoSvg","overlayColor","right","overflow","$overlay","_extends2","absoluteFillObject","justifyContent","$container","$row","$darkOverlayTop","$darkOverlayBottom","$darkOverlaySide","$frameBorder"],"sourceRoot":"../../../../src","sources":["screens/camera/CCCDCameraScreen.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeVisionCamera","_icons","_MText","_AlertGlobal","_native","_reactNativeSafeAreaContext","_CommonStyles","_reactNativePermissions","_cameraCrop","_jsxFileName","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t4","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ORANGE","CARD_ASPECT_RATIO","FRAME_ASPECT","CCCDCameraScreen","props","_props$route2","_props$route2$params","insets","useSafeAreaInsets","navigation","useNavigation","isFocused","useIsFocused","myCamera","useRef","frameSize","width","height","focusTimer","takingRef","_useState","useState","_useState2","_slicedToArray2","passPermission","setPassPermission","_useState3","_useState4","shouldRenderCamera","setShouldRenderCamera","_useState5","_useState6","focusPoint","setFocusPoint","devices","useCameraDevices","device","useMemo","pickClosestFocusDevice","focusAt","useCallback","_callee","x","y","cam","_t","_regenerator","async","_context","prev","next","current","supportsFocus","abrupt","clearTimeout","setTimeout","awrap","focus","stop","Promise","takePicture","_callee2","_props$route","_props$route$params","_frameSize$current","fw","fh","data","uri","_t2","_t3","_context2","takePhoto","qualityPrioritization","sent","cropPhotoToAspect","goBack","route","params","callback","console","error","requestPermissions","request","Platform","OS","PERMISSIONS","IOS","CAMERA","ANDROID","then","result","RESULTS","UNAVAILABLE","log","AlertGlobal","show","type","title","message","primaryText","DENIED","onPrimaryPress","openSettings","LIMITED","GRANTED","BLOCKED","useEffect","timeout","createElement","View","style","commonStyles","fill","__self","__source","fileName","lineNumber","columnNumber","ActivityIndicator","size","color","styles","container","header","paddingTop","top","TouchableOpacity","onPress","hitSlop","bottom","left","right","IconBack","titleWrap","MText","headerTitle","instruction","front","photoFrame","onLayout","nativeEvent","layout","onStartShouldSetResponder","onResponderRelease","locationX","locationY","Camera","ref","StyleSheet","absoluteFill","isActive","photo","corner","cornerTL","cornerTR","cornerBL","cornerBR","pointerEvents","focusRing","spacer","hint","marginTop","marginBottom","captureButton","TakePhotoSvg","create","flex","backgroundColor","flexDirection","alignItems","paddingHorizontal","justifyContent","marginRight","fontSize","fontWeight","textAlign","lineHeight","marginHorizontal","aspectRatio","borderRadius","overflow","position","borderColor","borderWidth","borderTopWidth","borderLeftWidth","borderTopLeftRadius","borderRightWidth","borderTopRightRadius","borderBottomWidth","borderBottomLeftRadius","borderBottomRightRadius","alignSelf"],"sourceRoot":"../../../../src","sources":["screens/camera/CCCDCameraScreen.tsx"],"mappings":"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","ignoreList":[]}