@os1-platform/dispatch-mobile 2.1.1 → 2.1.3
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/lib/commonjs/components/executiontasks/deliver/DeliverETInput.js.map +1 -1
- package/lib/commonjs/components/executiontasks/deliver/SLDeliverET.js +9 -4
- package/lib/commonjs/components/executiontasks/deliver/SLDeliverET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/doodle/SignatureET.js +78 -36
- package/lib/commonjs/components/executiontasks/doodle/SignatureET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/doodle/SignatureSchema.js.map +1 -1
- package/lib/commonjs/components/executiontasks/dropCash/DropCashSchema.js.map +1 -1
- package/lib/commonjs/components/executiontasks/dropCash/SLDropCash.js +1 -1
- package/lib/commonjs/components/executiontasks/dropCash/SLDropCash.js.map +1 -1
- package/lib/commonjs/components/executiontasks/forms/FormGenerator.js +1 -1
- package/lib/commonjs/components/executiontasks/forms/FormGenerator.js.map +1 -1
- package/lib/commonjs/components/executiontasks/forms/FormSchema.js.map +1 -1
- package/lib/commonjs/components/executiontasks/imageCapture/CaptureSchema.js.map +1 -1
- package/lib/commonjs/components/executiontasks/imageCapture/CaptureUtils.js +2 -3
- package/lib/commonjs/components/executiontasks/imageCapture/CaptureUtils.js.map +1 -1
- package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js +223 -127
- package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
- package/lib/commonjs/components/executiontasks/imageCapture/camera.svg +3 -0
- package/lib/commonjs/components/executiontasks/imageCapture/circle-xmark.svg +5 -0
- package/lib/commonjs/components/executiontasks/payments/completePayment/CompletePaymentET.js +1 -1
- package/lib/commonjs/components/executiontasks/payments/completePayment/CompletePaymentET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/payments/completePayment/CompletePaymentSchema.js.map +1 -1
- package/lib/commonjs/components/executiontasks/payments/init/InitPaymentET.js +1 -1
- package/lib/commonjs/components/executiontasks/payments/init/InitPaymentET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/payments/init/InitPaymentSchema.js.map +1 -1
- package/lib/commonjs/components/executiontasks/payments/processPayment/ProcessPaymentET.js +1 -1
- package/lib/commonjs/components/executiontasks/payments/processPayment/ProcessPaymentET.js.map +1 -1
- package/lib/commonjs/components/executiontasks/payments/processPayment/ProcessPaymentSchema.js.map +1 -1
- package/lib/commonjs/components/executiontasks/pickup/PickpSchema.js.map +1 -1
- package/lib/commonjs/components/executiontasks/pickup/SLPickupET.js +1 -1
- package/lib/commonjs/components/executiontasks/pickup/SLPickupET.js.map +1 -1
- package/lib/commonjs/constants/constants.js +1 -1
- package/lib/commonjs/constants/constants.js.map +1 -1
- package/lib/commonjs/index.js +7 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/locale/Str.js +3 -1
- package/lib/commonjs/locale/Str.js.map +1 -1
- package/lib/commonjs/locale/en.json +2 -1
- package/lib/commonjs/locale/i18n.js +5 -1
- package/lib/commonjs/locale/i18n.js.map +1 -1
- package/lib/commonjs/manager/syncmanager/DBConfig.js +1 -1
- package/lib/commonjs/manager/syncmanager/DBConfig.js.map +1 -1
- package/lib/commonjs/styles/executionTasks/CommonStyles.js +2 -1
- package/lib/commonjs/styles/executionTasks/CommonStyles.js.map +1 -1
- package/lib/commonjs/ui/screens/DeliverScreen.js +24 -5
- package/lib/commonjs/ui/screens/DeliverScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/DoodleScreen.js +22 -1
- package/lib/commonjs/ui/screens/DoodleScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/DropCashScreen.js +24 -5
- package/lib/commonjs/ui/screens/DropCashScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/FormsScreen.js +22 -1
- package/lib/commonjs/ui/screens/FormsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ImageCaptureScreen.js +24 -5
- package/lib/commonjs/ui/screens/ImageCaptureScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/PaymentScreen.js +25 -4
- package/lib/commonjs/ui/screens/PaymentScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/PickupScreen.js +31 -5
- package/lib/commonjs/ui/screens/PickupScreen.js.map +1 -1
- package/lib/commonjs/utils/helper.js +46 -3
- package/lib/commonjs/utils/helper.js.map +1 -1
- package/lib/module/components/executiontasks/deliver/DeliverETInput.js.map +1 -1
- package/lib/module/components/executiontasks/deliver/SLDeliverET.js +9 -4
- package/lib/module/components/executiontasks/deliver/SLDeliverET.js.map +1 -1
- package/lib/module/components/executiontasks/doodle/SignatureET.js +78 -36
- package/lib/module/components/executiontasks/doodle/SignatureET.js.map +1 -1
- package/lib/module/components/executiontasks/doodle/SignatureSchema.js.map +1 -1
- package/lib/module/components/executiontasks/dropCash/DropCashSchema.js.map +1 -1
- package/lib/module/components/executiontasks/dropCash/SLDropCash.js +1 -1
- package/lib/module/components/executiontasks/dropCash/SLDropCash.js.map +1 -1
- package/lib/module/components/executiontasks/forms/FormGenerator.js +1 -1
- package/lib/module/components/executiontasks/forms/FormGenerator.js.map +1 -1
- package/lib/module/components/executiontasks/forms/FormSchema.js.map +1 -1
- package/lib/module/components/executiontasks/imageCapture/CaptureSchema.js.map +1 -1
- package/lib/module/components/executiontasks/imageCapture/CaptureUtils.js +2 -3
- package/lib/module/components/executiontasks/imageCapture/CaptureUtils.js.map +1 -1
- package/lib/module/components/executiontasks/imageCapture/ImageCapture.js +226 -130
- package/lib/module/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
- package/lib/module/components/executiontasks/imageCapture/camera.svg +3 -0
- package/lib/module/components/executiontasks/imageCapture/circle-xmark.svg +5 -0
- package/lib/module/components/executiontasks/payments/completePayment/CompletePaymentET.js +1 -1
- package/lib/module/components/executiontasks/payments/completePayment/CompletePaymentET.js.map +1 -1
- package/lib/module/components/executiontasks/payments/completePayment/CompletePaymentSchema.js.map +1 -1
- package/lib/module/components/executiontasks/payments/init/InitPaymentET.js +1 -1
- package/lib/module/components/executiontasks/payments/init/InitPaymentET.js.map +1 -1
- package/lib/module/components/executiontasks/payments/init/InitPaymentSchema.js.map +1 -1
- package/lib/module/components/executiontasks/payments/processPayment/ProcessPaymentET.js +1 -1
- package/lib/module/components/executiontasks/payments/processPayment/ProcessPaymentET.js.map +1 -1
- package/lib/module/components/executiontasks/payments/processPayment/ProcessPaymentSchema.js.map +1 -1
- package/lib/module/components/executiontasks/pickup/PickpSchema.js.map +1 -1
- package/lib/module/components/executiontasks/pickup/SLPickupET.js +1 -1
- package/lib/module/components/executiontasks/pickup/SLPickupET.js.map +1 -1
- package/lib/module/constants/constants.js +1 -1
- package/lib/module/constants/constants.js.map +1 -1
- package/lib/module/index.js +2 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/locale/Str.js +3 -1
- package/lib/module/locale/Str.js.map +1 -1
- package/lib/module/locale/en.json +2 -1
- package/lib/module/locale/i18n.js +5 -1
- package/lib/module/locale/i18n.js.map +1 -1
- package/lib/module/manager/syncmanager/DBConfig.js +1 -1
- package/lib/module/manager/syncmanager/DBConfig.js.map +1 -1
- package/lib/module/styles/executionTasks/CommonStyles.js +2 -1
- package/lib/module/styles/executionTasks/CommonStyles.js.map +1 -1
- package/lib/module/ui/screens/DeliverScreen.js +24 -5
- package/lib/module/ui/screens/DeliverScreen.js.map +1 -1
- package/lib/module/ui/screens/DoodleScreen.js +22 -1
- package/lib/module/ui/screens/DoodleScreen.js.map +1 -1
- package/lib/module/ui/screens/DropCashScreen.js +25 -5
- package/lib/module/ui/screens/DropCashScreen.js.map +1 -1
- package/lib/module/ui/screens/FormsScreen.js +22 -1
- package/lib/module/ui/screens/FormsScreen.js.map +1 -1
- package/lib/module/ui/screens/ImageCaptureScreen.js +24 -5
- package/lib/module/ui/screens/ImageCaptureScreen.js.map +1 -1
- package/lib/module/ui/screens/PaymentScreen.js +25 -4
- package/lib/module/ui/screens/PaymentScreen.js.map +1 -1
- package/lib/module/ui/screens/PickupScreen.js +31 -5
- package/lib/module/ui/screens/PickupScreen.js.map +1 -1
- package/lib/module/utils/helper.js +46 -4
- package/lib/module/utils/helper.js.map +1 -1
- package/lib/typescript/components/executiontasks/deliver/DeliverETInput.d.ts +1 -0
- package/lib/typescript/components/executiontasks/doodle/SignatureSchema.d.ts +1 -0
- package/lib/typescript/components/executiontasks/dropCash/DropCashSchema.d.ts +1 -0
- package/lib/typescript/components/executiontasks/forms/FormSchema.d.ts +1 -0
- package/lib/typescript/components/executiontasks/imageCapture/CaptureSchema.d.ts +1 -0
- package/lib/typescript/components/executiontasks/imageCapture/CaptureUtils.d.ts +6 -1
- package/lib/typescript/components/executiontasks/imageCapture/ImageCapture.d.ts +1 -2
- package/lib/typescript/components/executiontasks/payments/completePayment/CompletePaymentSchema.d.ts +1 -0
- package/lib/typescript/components/executiontasks/payments/init/InitPaymentSchema.d.ts +1 -0
- package/lib/typescript/components/executiontasks/payments/processPayment/ProcessPaymentSchema.d.ts +1 -0
- package/lib/typescript/components/executiontasks/pickup/PickpSchema.d.ts +1 -0
- package/lib/typescript/constants/constants.d.ts +1 -1
- package/lib/typescript/index.d.ts +2 -0
- package/lib/typescript/locale/Str.d.ts +2 -0
- package/lib/typescript/manager/syncmanager/DBConfig.d.ts +1 -1
- package/lib/typescript/styles/executionTasks/CommonStyles.d.ts +1 -0
- package/lib/typescript/utils/helper.d.ts +4 -3
- package/package.json +4 -5
- package/src/components/executiontasks/deliver/DeliverETInput.ts +1 -0
- package/src/components/executiontasks/deliver/SLDeliverET.tsx +13 -6
- package/src/components/executiontasks/doodle/SignatureET.tsx +48 -43
- package/src/components/executiontasks/doodle/SignatureSchema.ts +1 -0
- package/src/components/executiontasks/dropCash/DropCashSchema.ts +1 -0
- package/src/components/executiontasks/dropCash/SLDropCash.tsx +4 -4
- package/src/components/executiontasks/forms/FormGenerator.tsx +4 -3
- package/src/components/executiontasks/forms/FormSchema.ts +1 -0
- package/src/components/executiontasks/imageCapture/CaptureSchema.ts +1 -0
- package/src/components/executiontasks/imageCapture/CaptureUtils.ts +4 -9
- package/src/components/executiontasks/imageCapture/ImageCapture.tsx +279 -185
- package/src/components/executiontasks/imageCapture/camera.svg +3 -0
- package/src/components/executiontasks/imageCapture/circle-xmark.svg +5 -0
- package/src/components/executiontasks/payments/completePayment/CompletePaymentET.tsx +2 -1
- package/src/components/executiontasks/payments/completePayment/CompletePaymentSchema.ts +1 -0
- package/src/components/executiontasks/payments/init/InitPaymentET.tsx +2 -3
- package/src/components/executiontasks/payments/init/InitPaymentSchema.ts +1 -0
- package/src/components/executiontasks/payments/processPayment/ProcessPaymentET.tsx +3 -2
- package/src/components/executiontasks/payments/processPayment/ProcessPaymentSchema.ts +1 -0
- package/src/components/executiontasks/pickup/PickpSchema.ts +1 -0
- package/src/components/executiontasks/pickup/SLPickupET.tsx +5 -3
- package/src/constants/constants.ts +1 -1
- package/src/index.tsx +4 -2
- package/src/locale/Str.ts +3 -1
- package/src/locale/en.json +2 -1
- package/src/locale/i18n.ts +5 -1
- package/src/manager/syncmanager/DBConfig.ts +1 -1
- package/src/styles/executionTasks/CommonStyles.ts +1 -0
- package/src/ui/screens/DeliverScreen.tsx +27 -8
- package/src/ui/screens/DoodleScreen.tsx +25 -2
- package/src/ui/screens/DropCashScreen.tsx +27 -8
- package/src/ui/screens/FormsScreen.tsx +23 -1
- package/src/ui/screens/ImageCaptureScreen.tsx +29 -11
- package/src/ui/screens/PaymentScreen.tsx +32 -10
- package/src/ui/screens/PickupScreen.tsx +35 -8
- package/src/utils/helper.ts +47 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useRef","useState","useLayoutEffect","BackHandler","KeyboardAvoidingView","Platform","ScrollView","StyleSheet","Text","View","ReactNativeForm","defaultProps","FormContext","DateTimeWidget","TimeRangeSelector","QRBarcodeScannerWidget","DropdownWidget","Button","Provider","getBaseETResponse","getEventCodeByET","EntityCode","ExecutionTaskID","CommonStyles","Fonts","SdkColors","ColorTheme","Icon","GO_BACK_EVENT_CODE","hasGoBackConnector","GoBackModal","useFocusEffect","customWidgets","datePicker","timeRangeSelector","scanner","select","FormGenerator","props","form","showBackModal","setShowBackModal","onCancel","setOnCancel","useCallback","onBackPress","_props$taskMeta","taskMeta","enableGoBack","applicableReasons","navigation","goBack","addEventListener","removeEventListener","setOptions","title","headerLeft","createElement","onPress","_props$taskMeta2","name","color","size","style","paddingRight","paddingTop","renderModal","showModal","setShowModal","onSuccess","onSubmitET","FORMS","mergedObjectiveId","data","onFailure","mainContainer","flex","flexGrow","padding","value","requiredTitle","theme","primaryColor","LIGHT","primaryButton","highlightColor","borderColor","textColor","placeholderTextColor","errorColor","fontFamily","OS","IBMPlexSans_400Regular","styles","message","noHtml5Validate","noValidate","widgets","ref","schema","jsonSchema","showErrorList","uiSchema","onError","error","_props$applicableReas","failure","onSubmit","response","_props$applicableReas2","formData","_props$applicableReas3","success","bottomView","nextButton","width","marginStart","labelStyle","nextButtonLabel","mode","current","submit","cancelButton","marginEnd","cancelButtonLabel","create","marginTop","marginBottom","fontStyle","fontSize","lineHeight","letterSpacing","alignItems","flexDirection","justifyContent","backgroundColor"],"sources":["FormGenerator.tsx"],"sourcesContent":["import React, { useRef, useState, useLayoutEffect } from 'react';\nimport {\n BackHandler,\n KeyboardAvoidingView,\n Platform,\n ScrollView,\n StyleSheet,\n Text,\n View,\n} from 'react-native';\nimport ReactNativeForm, { defaultProps, FormContext } from 'rjsf-native';\nimport DateTimeWidget from './widgets/DateTimeWidget';\nimport TimeRangeSelector from './widgets/TimeRangeSelector';\nimport QRBarcodeScannerWidget from './widgets/QRBarcodeScannerWidget';\nimport DropdownWidget from './widgets/DropdownWidget';\nimport { Button, Modal, Portal, Provider } from 'react-native-paper';\nimport type { FormInputSchema } from './FormSchema';\nimport { getBaseETResponse } from '../../../utils/ExecTaskUtils';\nimport { getEventCodeByET } from '../../../manager/dispatchCodes/EventCodeContainer';\nimport {\n EntityCode,\n ExecutionTaskID,\n} from '../../../models/execTasks/ETConfig';\nimport {\n CommonStyles,\n Fonts,\n} from '../../../styles/executionTasks/CommonStyles';\nimport SdkColors, { ColorTheme } from '../../../styles/SdkColors';\nimport Icon from 'react-native-vector-icons/MaterialIcons';\nimport { GO_BACK_EVENT_CODE } from '../../../constants/constants';\nimport { hasGoBackConnector } from '../../../components/utils';\nimport GoBackModal from '../../../components/widgets/GoBackModal';\nimport { useFocusEffect } from '@react-navigation/native';\n\nconst customWidgets = {\n datePicker: DateTimeWidget,\n timeRangeSelector: TimeRangeSelector,\n scanner: QRBarcodeScannerWidget,\n select: DropdownWidget,\n};\n\nconst FormGenerator = (props: FormInputSchema) => {\n const form = useRef(null);\n const [showBackModal, setShowBackModal] = useState(false);\n const [onCancel, setOnCancel] = useState(false);\n\n // Handle back-button click when scanList was being viewed\n useFocusEffect(\n React.useCallback(() => {\n const onBackPress = () => {\n if (\n props.taskMeta?.enableGoBack &&\n hasGoBackConnector(props.applicableReasons)\n ) {\n setShowBackModal(true);\n return true;\n } else {\n props.navigation.goBack();\n return true;\n }\n };\n BackHandler.addEventListener('hardwareBackPress', onBackPress);\n return () =>\n BackHandler.removeEventListener('hardwareBackPress', onBackPress);\n }, [])\n );\n\n useLayoutEffect(() => {\n props.navigation.setOptions({\n title: props.title,\n headerLeft: () => {\n return (\n <Icon\n onPress={() => {\n if (\n props.taskMeta?.enableGoBack &&\n hasGoBackConnector(props.applicableReasons)\n )\n setShowBackModal(true);\n else props.navigation.goBack();\n }}\n name=\"arrow-back\"\n color={'black'}\n size={25}\n style={{\n paddingRight: 15,\n paddingTop: 5,\n }}\n />\n );\n },\n });\n }, [props.navigation, props.title]);\n\n const renderModal = () => {\n return (\n <GoBackModal\n showModal={showBackModal}\n setShowModal={setShowBackModal}\n onSuccess={async () => {\n props.onSubmitET({\n ...(await getBaseETResponse(\n EntityCode.FORMS,\n false,\n GO_BACK_EVENT_CODE,\n '',\n props.mergedObjectiveId,\n ExecutionTaskID.FORMS\n )),\n data: {},\n });\n setShowBackModal(false);\n }}\n onFailure={() => setShowBackModal(false)}\n />\n );\n };\n\n return (\n <Provider>\n {renderModal()}\n <KeyboardAvoidingView style={CommonStyles.mainContainer}>\n <ScrollView style={{ flex: 1, flexGrow: 1 }}>\n <View\n style={{\n flex: 1,\n padding: 20,\n }}\n >\n <FormContext.Provider\n value={{\n ...defaultProps,\n requiredTitle: '*',\n theme: {\n primaryColor: SdkColors[ColorTheme.LIGHT].primaryButton,\n highlightColor: SdkColors[ColorTheme.LIGHT].primaryButton,\n borderColor: SdkColors[ColorTheme.LIGHT].primaryButton,\n textColor: '#3D445C',\n placeholderTextColor: '#3D445C',\n errorColor: '#b00020',\n fontFamily:\n Platform.OS === 'android'\n ? Fonts.IBMPlexSans_400Regular\n : 'IBMPlexSans-Regular',\n },\n }}\n >\n <Text style={[styles.title]}>{props.message}</Text>\n <ReactNativeForm\n noHtml5Validate={onCancel ? true : false}\n noValidate={onCancel ? true : false}\n widgets={customWidgets}\n // @ts-ignore\n ref={form}\n // @ts-ignore\n schema={props.jsonSchema}\n showErrorList={false}\n uiSchema={props.uiSchema}\n onError={async (error) => {\n if (onCancel === false) props.onError(error);\n else {\n props.onSubmitET({\n ...(await getBaseETResponse(\n EntityCode.FORMS,\n false,\n getEventCodeByET(\n ExecutionTaskID.FORMS,\n false,\n props.applicableReasons?.failure\n ),\n '',\n props.mergedObjectiveId,\n ExecutionTaskID.FORMS\n )),\n data: {},\n });\n }\n }}\n onSubmit={async (response) => {\n if (onCancel === true) {\n props.onSubmitET({\n ...(await getBaseETResponse(\n EntityCode.FORMS,\n false,\n getEventCodeByET(\n ExecutionTaskID.FORMS,\n false,\n props.applicableReasons?.failure\n ),\n '',\n props.mergedObjectiveId,\n ExecutionTaskID.FORMS\n )),\n data: response.formData,\n });\n } else {\n props.onSubmitET({\n ...(await getBaseETResponse(\n EntityCode.FORMS,\n true,\n getEventCodeByET(\n ExecutionTaskID.FORMS,\n true,\n props.applicableReasons?.success\n ),\n '',\n props.mergedObjectiveId,\n ExecutionTaskID.FORMS\n )),\n data: response.formData,\n });\n }\n }}\n >\n <Text>{}</Text>\n </ReactNativeForm>\n </FormContext.Provider>\n </View>\n </ScrollView>\n <View style={styles.bottomView}>\n <View>\n <Button\n style={[CommonStyles.nextButton, { width: 165, marginStart: 10 }]}\n labelStyle={CommonStyles.nextButtonLabel}\n mode={'contained'}\n onPress={() => {\n if (form.current) {\n setOnCancel(false);\n // @ts-ignore\n form.current.submit();\n }\n }}\n >\n Proceed\n </Button>\n </View>\n <View>\n <Button\n style={[CommonStyles.cancelButton, { width: 165, marginEnd: 10 }]}\n labelStyle={CommonStyles.cancelButtonLabel}\n mode={'outlined'}\n onPress={() => {\n if (form.current) {\n setOnCancel(true);\n // @ts-ignore\n form.current.submit();\n }\n }}\n >\n Cancel\n </Button>\n </View>\n </View>\n </KeyboardAvoidingView>\n </Provider>\n );\n};\n\nexport default FormGenerator;\n\nconst styles = StyleSheet.create({\n title: {\n marginTop: 10,\n marginBottom: 20,\n fontFamily:\n Platform.OS === 'android'\n ? Fonts.IBMPlexSans_400Regular\n : 'IBMPlexSans-Regular',\n fontStyle: 'normal',\n fontSize: 16,\n lineHeight: 20,\n letterSpacing: 0.25,\n color: '#3D445C',\n alignItems: 'center',\n },\n bottomView: {\n flexDirection: 'row-reverse',\n justifyContent: 'space-evenly',\n padding: 16,\n backgroundColor: 'white',\n },\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["React","useRef","useState","useLayoutEffect","BackHandler","KeyboardAvoidingView","Platform","ScrollView","StyleSheet","Text","View","ReactNativeForm","defaultProps","FormContext","DateTimeWidget","TimeRangeSelector","QRBarcodeScannerWidget","DropdownWidget","Button","Provider","getBaseETResponse","getEventCodeByET","EntityCode","ExecutionTaskID","CommonStyles","Fonts","SdkColors","ColorTheme","Icon","GO_BACK_EVENT_CODE","hasGoBackConnector","GoBackModal","useFocusEffect","customWidgets","datePicker","timeRangeSelector","scanner","select","FormGenerator","props","form","showBackModal","setShowBackModal","onCancel","setOnCancel","useCallback","onBackPress","_props$taskMeta","taskMeta","enableGoBack","applicableReasons","navigation","goBack","addEventListener","removeEventListener","setOptions","title","headerLeft","createElement","onPress","_props$taskMeta2","name","color","size","style","paddingRight","paddingTop","renderModal","showModal","setShowModal","onSuccess","onSubmitET","FORMS","mergedObjectiveId","data","onFailure","mainContainer","flex","flexGrow","padding","value","requiredTitle","theme","primaryColor","LIGHT","primaryButton","highlightColor","borderColor","textColor","placeholderTextColor","errorColor","fontFamily","OS","IBMPlexSans_400Regular","styles","message","noHtml5Validate","noValidate","widgets","ref","schema","jsonSchema","showErrorList","uiSchema","onError","error","_props$applicableReas","failure","onSubmit","response","_props$applicableReas2","formData","_props$applicableReas3","success","bottomView","nextButton","width","marginStart","labelStyle","nextButtonLabel","mode","current","submit","isSelfLoop","cancelButton","marginEnd","cancelButtonLabel","create","marginTop","marginBottom","fontStyle","fontSize","lineHeight","letterSpacing","alignItems","flexDirection","justifyContent","backgroundColor"],"sources":["FormGenerator.tsx"],"sourcesContent":["import React, { useRef, useState, useLayoutEffect, useEffect } from 'react';\nimport {\n BackHandler,\n KeyboardAvoidingView,\n Platform,\n ScrollView,\n StyleSheet,\n Text,\n View,\n} from 'react-native';\nimport ReactNativeForm, { defaultProps, FormContext } from 'rjsf-native';\nimport DateTimeWidget from './widgets/DateTimeWidget';\nimport TimeRangeSelector from './widgets/TimeRangeSelector';\nimport QRBarcodeScannerWidget from './widgets/QRBarcodeScannerWidget';\nimport DropdownWidget from './widgets/DropdownWidget';\nimport { Button, Modal, Portal, Provider } from 'react-native-paper';\nimport type { FormInputSchema } from './FormSchema';\nimport { getBaseETResponse } from '../../../utils/ExecTaskUtils';\nimport { getEventCodeByET } from '../../../manager/dispatchCodes/EventCodeContainer';\nimport {\n EntityCode,\n ExecutionTaskID,\n} from '../../../models/execTasks/ETConfig';\nimport {\n CommonStyles,\n Fonts,\n} from '../../../styles/executionTasks/CommonStyles';\nimport SdkColors, { ColorTheme } from '../../../styles/SdkColors';\nimport Icon from 'react-native-vector-icons/MaterialIcons';\nimport { GO_BACK_EVENT_CODE } from '../../../constants/constants';\nimport { hasGoBackConnector } from '../../../components/utils';\nimport GoBackModal from '../../../components/widgets/GoBackModal';\nimport { useFocusEffect } from '@react-navigation/native';\n\nconst customWidgets = {\n datePicker: DateTimeWidget,\n timeRangeSelector: TimeRangeSelector,\n scanner: QRBarcodeScannerWidget,\n select: DropdownWidget,\n};\n\nconst FormGenerator = (props: FormInputSchema) => {\n const form = useRef(null);\n const [showBackModal, setShowBackModal] = useState(false);\n const [onCancel, setOnCancel] = useState(false);\n\n // Handle back-button click when scanList was being viewed\n useFocusEffect(\n React.useCallback(() => {\n const onBackPress = () => {\n if (\n props.taskMeta?.enableGoBack &&\n hasGoBackConnector(props.applicableReasons)\n ) {\n setShowBackModal(true);\n return true;\n } else {\n props.navigation.goBack();\n return true;\n }\n };\n BackHandler.addEventListener('hardwareBackPress', onBackPress);\n return () =>\n BackHandler.removeEventListener('hardwareBackPress', onBackPress);\n }, [])\n );\n\n useLayoutEffect(() => {\n props.navigation.setOptions({\n title: props.title,\n headerLeft: () => {\n return (\n <Icon\n onPress={() => {\n if (\n props.taskMeta?.enableGoBack &&\n hasGoBackConnector(props.applicableReasons)\n )\n setShowBackModal(true);\n else props.navigation.goBack();\n }}\n name=\"arrow-back\"\n color={'black'}\n size={25}\n style={{\n paddingRight: 15,\n paddingTop: 5,\n }}\n />\n );\n },\n });\n }, [props.navigation, props.title]);\n\n const renderModal = () => {\n return (\n <GoBackModal\n showModal={showBackModal}\n setShowModal={setShowBackModal}\n onSuccess={async () => {\n props.onSubmitET({\n ...(await getBaseETResponse(\n EntityCode.FORMS,\n false,\n GO_BACK_EVENT_CODE,\n '',\n props.mergedObjectiveId,\n ExecutionTaskID.FORMS\n )),\n data: {},\n });\n setShowBackModal(false);\n }}\n onFailure={() => setShowBackModal(false)}\n />\n );\n };\n\n return (\n <Provider>\n {renderModal()}\n <KeyboardAvoidingView style={CommonStyles.mainContainer}>\n <ScrollView style={{ flex: 1, flexGrow: 1 }}>\n <View\n style={{\n flex: 1,\n padding: 20,\n }}\n >\n <FormContext.Provider\n value={{\n ...defaultProps,\n requiredTitle: '*',\n theme: {\n primaryColor: SdkColors[ColorTheme.LIGHT].primaryButton,\n highlightColor: SdkColors[ColorTheme.LIGHT].primaryButton,\n borderColor: SdkColors[ColorTheme.LIGHT].primaryButton,\n textColor: '#3D445C',\n placeholderTextColor: '#3D445C',\n errorColor: '#b00020',\n fontFamily:\n Platform.OS === 'android'\n ? Fonts.IBMPlexSans_400Regular\n : 'IBMPlexSans-Regular',\n },\n }}\n >\n <Text style={[styles.title]}>{props.message}</Text>\n <ReactNativeForm\n noHtml5Validate={onCancel ? true : false}\n noValidate={onCancel ? true : false}\n widgets={customWidgets}\n // @ts-ignore\n ref={form}\n // @ts-ignore\n schema={props.jsonSchema}\n showErrorList={false}\n uiSchema={props.uiSchema}\n onError={async (error) => {\n if (onCancel === false) props.onError(error);\n else {\n props.onSubmitET({\n ...(await getBaseETResponse(\n EntityCode.FORMS,\n false,\n getEventCodeByET(\n ExecutionTaskID.FORMS,\n false,\n props.applicableReasons?.failure\n ),\n '',\n props.mergedObjectiveId,\n ExecutionTaskID.FORMS\n )),\n data: {},\n });\n }\n }}\n onSubmit={async (response) => {\n if (onCancel === true) {\n props.onSubmitET({\n ...(await getBaseETResponse(\n EntityCode.FORMS,\n false,\n getEventCodeByET(\n ExecutionTaskID.FORMS,\n false,\n props.applicableReasons?.failure\n ),\n '',\n props.mergedObjectiveId,\n ExecutionTaskID.FORMS\n )),\n data: response.formData,\n });\n } else {\n props.onSubmitET({\n ...(await getBaseETResponse(\n EntityCode.FORMS,\n true,\n getEventCodeByET(\n ExecutionTaskID.FORMS,\n true,\n props.applicableReasons?.success\n ),\n '',\n props.mergedObjectiveId,\n ExecutionTaskID.FORMS\n )),\n data: response.formData,\n });\n }\n }}\n >\n <Text>{ }</Text>\n </ReactNativeForm>\n </FormContext.Provider>\n </View>\n </ScrollView>\n <View style={styles.bottomView}>\n <View>\n <Button\n style={[CommonStyles.nextButton, { width: 165, marginStart: 10 }]}\n labelStyle={CommonStyles.nextButtonLabel}\n mode={'contained'}\n onPress={() => {\n if (form.current) {\n setOnCancel(false);\n // @ts-ignore\n form.current.submit();\n }\n }}\n >\n Proceed\n </Button>\n </View>\n <View>\n {(props.isSelfLoop == false) && <Button\n style={[CommonStyles.cancelButton, { width: 165, marginEnd: 10 }]}\n labelStyle={CommonStyles.cancelButtonLabel}\n mode={'outlined'}\n onPress={() => {\n if (form.current) {\n setOnCancel(true);\n // @ts-ignore\n form.current.submit();\n }\n }}\n >\n Cancel\n </Button>\n }\n </View>\n </View>\n </KeyboardAvoidingView>\n </Provider>\n );\n};\n\nexport default FormGenerator;\n\nconst styles = StyleSheet.create({\n title: {\n marginTop: 10,\n marginBottom: 20,\n fontFamily:\n Platform.OS === 'android'\n ? Fonts.IBMPlexSans_400Regular\n : 'IBMPlexSans-Regular',\n fontStyle: 'normal',\n fontSize: 16,\n lineHeight: 20,\n letterSpacing: 0.25,\n color: '#3D445C',\n alignItems: 'center',\n },\n bottomView: {\n flexDirection: 'row-reverse',\n justifyContent: 'space-evenly',\n padding: 16,\n backgroundColor: 'white',\n },\n});\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["FormSchema.ts"],"sourcesContent":["import type {\n BaseETRequest,\n BaseETResponse,\n} from '../../../models/execTasks/ETBaseModels';\n\nexport type FormInputSchema = BaseETRequest & {\n jsonSchema: JSONSchema;\n uiSchema: UISchame;\n onError: (e: any) => void;\n onSubmitET: (result: FormOutputSchema) => void;\n};\n/**\n * Json schema used in react-jsonschema-form\n */\nexport interface JSONSchema {\n [k: string]: unknown;\n}\n/**\n * UI schema used in react-jsonschema-form\n */\nexport interface UISchame {\n [k: string]: unknown;\n}\n\nexport type FormOutputSchema = BaseETResponse & {\n data: {\n [k: string]: unknown;\n };\n};\n"],"mappings":""}
|
|
1
|
+
{"version":3,"names":[],"sources":["FormSchema.ts"],"sourcesContent":["import type {\n BaseETRequest,\n BaseETResponse,\n} from '../../../models/execTasks/ETBaseModels';\n\nexport type FormInputSchema = BaseETRequest & {\n jsonSchema: JSONSchema;\n uiSchema: UISchame;\n isSelfLoop: boolean;\n onError: (e: any) => void;\n onSubmitET: (result: FormOutputSchema) => void;\n};\n/**\n * Json schema used in react-jsonschema-form\n */\nexport interface JSONSchema {\n [k: string]: unknown;\n}\n/**\n * UI schema used in react-jsonschema-form\n */\nexport interface UISchame {\n [k: string]: unknown;\n}\n\nexport type FormOutputSchema = BaseETResponse & {\n data: {\n [k: string]: unknown;\n };\n};\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["CaptureSchema.ts"],"sourcesContent":["/**\n * Length (in cm)\n */\nimport type {\n BaseETRequest,\n BaseETResponse,\n} from '../../../models/execTasks/ETBaseModels';\n\nexport interface CapturedImage {\n /**\n * Url of image\n */\n url: string;\n file?: { folder: string; name: string };\n\n /**\n * Epoch timestamp for the image capture\n */\n timestamp: number;\n}\n\nexport type CaptureOutput = BaseETResponse & {\n /**\n * Array of captured images\n */\n captures?: CapturedImage[];\n};\n\nexport type ImageData = {\n id: string;\n path: string;\n url: string;\n timestamp: number;\n};\n\n/**\n * Length (in cm)\n */\nexport type Length = number;\n/**\n * Breadth (in cm)\n */\nexport type Breadth = number;\n/**\n * Maximum Size limit (in kb) of image to be captured\n */\nexport type MaxFileSize = number;\n/**\n * Mode of capturing image\n */\nexport type CaptureMode = 'SINGLE' | 'MULTI';\n/**\n * Max limit of images to be captured in multi-capture mode\n */\nexport type MaxImageCount = number;\n/**\n * Title of instruction\n */\nexport type Title = string;\n/**\n * Message of instruction\n */\nexport type Message = string;\n/**\n * Can go back\n */\nexport type CanGoBack = boolean;\n\nexport type MultiAdditionalConfig = '1' | 'N';\n\nexport interface AdditionalMultiConfig {\n minCaptureCount: MultiAdditionalConfig;\n}\n\nexport type CaptureInput = BaseETRequest & {\n resolution: Resolution;\n fileSizeLimit: MaxFileSize;\n captureMode: CaptureMode;\n captureCountLimit?: MaxImageCount;\n additionalMultiConfig?: AdditionalMultiConfig;\n onSubmitET: (etOutput: CaptureOutput) => void;\n} & {\n captureCount: number;\n jobIds: string[];\n objRefs: string[];\n};\n/**\n * Resolution of image to be captured\n */\nexport interface Resolution {\n length: Length;\n breadth: Breadth;\n}\n"],"mappings":""}
|
|
1
|
+
{"version":3,"names":[],"sources":["CaptureSchema.ts"],"sourcesContent":["/**\n * Length (in cm)\n */\nimport type {\n BaseETRequest,\n BaseETResponse,\n} from '../../../models/execTasks/ETBaseModels';\n\nexport interface CapturedImage {\n /**\n * Url of image\n */\n url: string;\n file?: { folder: string; name: string };\n\n /**\n * Epoch timestamp for the image capture\n */\n timestamp: number;\n}\n\nexport type CaptureOutput = BaseETResponse & {\n /**\n * Array of captured images\n */\n captures?: CapturedImage[];\n};\n\nexport type ImageData = {\n id: string;\n path: string;\n url: string;\n timestamp: number;\n};\n\n/**\n * Length (in cm)\n */\nexport type Length = number;\n/**\n * Breadth (in cm)\n */\nexport type Breadth = number;\n/**\n * Maximum Size limit (in kb) of image to be captured\n */\nexport type MaxFileSize = number;\n/**\n * Mode of capturing image\n */\nexport type CaptureMode = 'SINGLE' | 'MULTI';\n/**\n * Max limit of images to be captured in multi-capture mode\n */\nexport type MaxImageCount = number;\n/**\n * Title of instruction\n */\nexport type Title = string;\n/**\n * Message of instruction\n */\nexport type Message = string;\n/**\n * Can go back\n */\nexport type CanGoBack = boolean;\n\nexport type MultiAdditionalConfig = '1' | 'N';\n\nexport interface AdditionalMultiConfig {\n minCaptureCount: MultiAdditionalConfig;\n}\n\nexport type CaptureInput = BaseETRequest & {\n isSelfLoop: boolean;\n resolution: Resolution;\n fileSizeLimit: MaxFileSize;\n captureMode: CaptureMode;\n captureCountLimit?: MaxImageCount;\n additionalMultiConfig?: AdditionalMultiConfig;\n onSubmitET: (etOutput: CaptureOutput) => void;\n} & {\n captureCount: number;\n jobIds: string[];\n objRefs: string[];\n};\n/**\n * Resolution of image to be captured\n */\nexport interface Resolution {\n length: Length;\n breadth: Breadth;\n}\n"],"mappings":""}
|
|
@@ -15,9 +15,8 @@ import { insertDocumentInDB } from '../../../utils/SyncManagerUtils';
|
|
|
15
15
|
import { launchCamera } from 'react-native-image-picker';
|
|
16
16
|
export async function deleteImage(imageData, images) {
|
|
17
17
|
await FileSystem.deleteAsync(imageData.path);
|
|
18
|
-
let filtered = images.filter(img =>
|
|
19
|
-
|
|
20
|
-
});
|
|
18
|
+
let filtered = images.filter(ele => ele).filter(img => img.id.toString().toLowerCase() !== imageData.id.toString().toLowerCase());
|
|
19
|
+
console.log("filtered", filtered);
|
|
21
20
|
return filtered;
|
|
22
21
|
}
|
|
23
22
|
export function getMaxImagesCount(props) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Alert","FileSystem","ImagePicker","PermissionStatus","showToast","ImageManipulator","Logger","LOG_TYPE","getBaseETResponse","getEventCodeByET","EntityCode","ExecutionTaskID","BaseError","BaseErrorCodes","DispatchSdkCache","insertDocumentInDB","launchCamera","deleteImage","imageData","images","deleteAsync","path","filtered","filter","img","id","getMaxImagesCount","props","captureCountLimit","getImagesFileName","Date","now","toString","getCompressionRatio","uri","maxSize","fileInfo","getInfoAsync","size","Math","min","exists","fileSize","error","getInstance","logEvent","message","SDK_ERROR","checkCameraPermissionUtil","response","getCameraPermissionsAsync","granted","resp","requestCameraPermissionsAsync","status","GRANTED","captureImage","imageWidth","imageHeight","alert","cameraResult","options","selectionLimit","mediaType","includeBase64","didCancel","console","log","errorCode","errorMessage","assets","compressionRatio","saveOptions","compress","resizedImage","manipulateAsync","then","SDK_DEBUG","catch","exception","getCaptureOutput","imageDataList","captureProps","_captureProps$applica","length","IMAGE_CAPTURE","applicableReasons","failure","mergedObjectiveId","_captureProps$applica2","success","captures","getImagesData","imagesDataList","output","folderName","getKeyFromCache","KEYS","FMS_FOLDER","data","insertID","title","push","url","timestamp","file","folder","name","SQLiteDBIssue"],"sources":["CaptureUtils.ts"],"sourcesContent":["import type {\n CapturedImage,\n CaptureInput,\n CaptureOutput,\n ImageData,\n} from './CaptureSchema';\nimport { Alert, Platform } from 'react-native';\nimport * as FileSystem from 'expo-file-system';\nimport * as ImagePicker from 'expo-image-picker';\nimport { PermissionStatus } from 'expo-image-picker';\nimport { showToast } from '../../widgets/Toaster';\nimport type { ActionResize, ImageResult } from 'expo-image-manipulator';\nimport * as ImageManipulator from 'expo-image-manipulator';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport { getBaseETResponse } from '../../../utils/ExecTaskUtils';\nimport { getEventCodeByET } from '../../../manager/dispatchCodes/EventCodeContainer';\nimport {\n EntityCode,\n ExecutionTaskID,\n} from '../../../models/execTasks/ETConfig';\nimport { BaseError } from '../../../errors/BaseError';\nimport BaseErrorCodes from '../../../errors/ErrorCodes';\nimport DispatchSdkCache from '../../../manager/sdk/DispatchSdkCache';\nimport { insertDocumentInDB } from '../../../utils/SyncManagerUtils';\n\nimport {CameraOptions, launchCamera} from 'react-native-image-picker';\nimport { useState } from 'react';\n\nexport async function deleteImage(\n imageData: ImageData,\n images: ImageData[]\n): Promise<ImageData[]> {\n await FileSystem.deleteAsync(imageData.path);\n let filtered = images.filter((img) => {\n return img.id !== imageData.id;\n });\n return filtered;\n}\n\nexport function getMaxImagesCount(props: CaptureInput) {\n if (props && props.captureCountLimit) return props.captureCountLimit;\n else return 1;\n}\n\nexport function getImagesFileName() {\n return `IMG_${Date.now().toString()}.jpg`;\n}\n\nexport async function getCompressionRatio(\n uri: string,\n maxSize: number\n): Promise<number> {\n try {\n let fileInfo = await FileSystem.getInfoAsync(uri, {\n size: true,\n });\n maxSize = Math.min(maxSize, 1024);\n if (fileInfo.exists) {\n let fileSize = fileInfo.size / 1024;\n if (fileSize > maxSize) {\n return maxSize / fileSize;\n } else return 1;\n }\n return 1;\n } catch (error: any) {\n Logger.getInstance().logEvent(\n 'getCompressionRatio',\n error.message,\n LOG_TYPE.SDK_ERROR\n );\n return 1;\n }\n}\n\nexport async function checkCameraPermissionUtil(): Promise<boolean> {\n let response = await ImagePicker.getCameraPermissionsAsync();\n if (response.granted) return true;\n else {\n let resp = await ImagePicker.requestCameraPermissionsAsync();\n return resp.status === PermissionStatus.GRANTED;\n }\n}\n\ninterface responseType {\n cancelled?: boolean;\n uri?: string;\n assets?: any[];\n}\n\nexport async function captureImage(\n imageWidth: number,\n imageHeight: number,\n fileSize: number\n): Promise<ImageResult | null> {\n try {\n if (!(await checkCameraPermissionUtil())) {\n Alert.alert('Permissions Error', 'Camera permissions not provided!');\n return null;\n }\n\n\n //let response : responseType;\n let uri : string = ''\n let cameraResult = null;\n\n const options = {\n selectionLimit: 1,\n mediaType: 'photo',\n includeBase64: false,\n };\n\n \n\n // You can also use as a promise without 'callback':\n // await launchCamera(options as CameraOptions , response => { \n // if (response?.didCancel){\n // console.log(\"aks:didCancel=\")\n // showToast('User cancelled the action'); \n // console.log('User cancelled the action');\n // } else if (response.errorCode == ('camera_unavailable' || 'permission' || 'others')) {\n // console.log(\"aks:errorCode=\")\n // showToast(response.errorMessage? response.errorMessage : ''); \n // console.log('ImagePicker Error: ', response.errorMessage);\n // } else {\n // console.log(\"aks:errorCode=before\")\n // async()=>{\n // console.log(\"aks:else=after\")\n // let assets = response.assets? response.assets : null; \n // console.log(\"aks:assets=\", assets)\n // // \n // if(assets != null){\n // uri = assets[0].uri as string;\n // //\n // let compressionRatio = await getCompressionRatio(uri, fileSize);\n // console.log(\"aks:compressionRatio=\", compressionRatio)\n \n // //\n // const saveOptions = {\n // compress: compressionRatio,\n // }\n // //\n // console.log(\"aks:uri=blank\")\n // console.log(\"aks:uri=\", uri)\n // let resizedImage = await ImageManipulator.manipulateAsync(uri, [], saveOptions,);\n // //\n // console.log(\"aks:resizedImage=\", resizedImage)\n // //delete file\n // FileSystem.deleteAsync(uri)\n // .then(() =>\n // Logger.getInstance().logEvent('CAPTURE_ET','File deleted success',LOG_TYPE.SDK_DEBUG)\n // ).catch((error) => {\n // Logger.getInstance().logEvent('CAPTURE_ET',error.message,LOG_TYPE.SDK_ERROR);\n // });\n // //\n // return resizedImage;\n // } \n // return null; \n // }\n // } \n // });\n\n await launchCamera(options as CameraOptions , response => { \n if (response?.didCancel){\n console.log(\"aks:didCancel=\")\n showToast('User cancelled the action'); \n console.log('User cancelled the action');\n } else if (response.errorCode == ('camera_unavailable' || 'permission' || 'others')) {\n console.log(\"aks:errorCode=\")\n showToast(response.errorMessage? response.errorMessage : ''); \n console.log('ImagePicker Error: ', response.errorMessage);\n } else {\n console.log(\"aks:response=else-start\")\n // \n let assets = response.assets? response.assets : null; \n console.log(\"aks:assets=\", assets)\n \n //\n if(assets != null){\n uri = assets[0].uri as string;\n }\n\n console.log(\"aks:uri=before\", uri)\n } \n });\n\n console.log(\"aks:uri-after=\", uri)\n // \n if(uri != null){ \n //\n let compressionRatio = await getCompressionRatio(uri, fileSize);\n console.log(\"aks:compressionRatio=\", compressionRatio)\n \n //\n const saveOptions = {\n compress: compressionRatio,\n }\n //\n console.log(\"aks:uri=blank\")\n console.log(\"aks:uri=\", uri)\n let resizedImage = await ImageManipulator.manipulateAsync(uri, [], saveOptions,);\n //\n console.log(\"aks:resizedImage=\", resizedImage)\n //delete file\n FileSystem.deleteAsync(uri)\n .then(() =>\n Logger.getInstance().logEvent('CAPTURE_ET','File deleted success',LOG_TYPE.SDK_DEBUG)\n ).catch((error) => {\n Logger.getInstance().logEvent('CAPTURE_ET',error.message,LOG_TYPE.SDK_ERROR);\n });\n //\n\n console.log(\"resizedImage=before\")\n console.log(\"resizedImage=\", resizedImage)\n\n return resizedImage;\n }\n\n // if(Platform.OS = 'android'){\n // response = {'uri': 'hello'}\n // uri = 'hello';\n // } else {\n // response = await ImagePicker.launchCameraAsync({\n // quality: 1,\n // });\n // let assets = response.assets;\n // if(assets){\n // uri = assets[0].uri\n // } \n // }\n\n // if (response?.cancelled){\n // showToast('User cancelled the action');\n // return null;\n // } \n\n \n // let actionResize: ActionResize = {\n // resize: {\n // width: imageWidth,\n // height: imageHeight,\n // },\n // };\n\n return null\n \n } catch (exception: any) {\n //showToast(`Error ${exception.message}`);\n //console.error('capture image error: ', exception);\n return null;\n }\n}\n\n\nexport async function getCaptureOutput(\n imageDataList: ImageData[],\n captureProps: CaptureInput\n): Promise<CaptureOutput> {\n if (!imageDataList || imageDataList.length === 0)\n return {\n ...(await getBaseETResponse(\n EntityCode.IMAGE_CAPTURE,\n false,\n getEventCodeByET(\n ExecutionTaskID.IMAGE_CAPTURE,\n false,\n captureProps.applicableReasons?.failure\n ),\n '',\n captureProps.mergedObjectiveId,\n ExecutionTaskID.IMAGE_CAPTURE\n )),\n };\n else {\n return {\n ...(await getBaseETResponse(\n EntityCode.IMAGE_CAPTURE,\n true,\n getEventCodeByET(\n ExecutionTaskID.IMAGE_CAPTURE,\n true,\n captureProps.applicableReasons?.success\n ),\n '',\n captureProps.mergedObjectiveId,\n ExecutionTaskID.IMAGE_CAPTURE\n )),\n captures: await getImagesData(imageDataList, captureProps),\n };\n }\n}\n\nasync function getImagesData(\n imagesDataList: ImageData[],\n captureProps: CaptureInput\n): Promise<CapturedImage[]> {\n if (imagesDataList && imagesDataList.length > 0) {\n let output: CapturedImage[] = [];\n const folderName =\n (await DispatchSdkCache.getInstance().getKeyFromCache(\n DispatchSdkCache.KEYS.FMS_FOLDER\n )) ?? 'NULL';\n for (const data of imagesDataList) {\n let insertID = await insertDocumentInDB(\n data.id,\n folderName,\n // JSON.stringify(captureProps.jobIds),\n // JSON.stringify(captureProps.objRefs),\n null,\n captureProps.title,\n data.path\n );\n if (insertID)\n output.push({\n url: '',\n timestamp: data.timestamp,\n file: { folder: folderName, name: data.id },\n });\n else\n throw new BaseError(\n BaseErrorCodes.SQLiteDBIssue,\n 'Unable to save Image'\n );\n }\n return output;\n } else return [];\n}"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["Alert","FileSystem","ImagePicker","PermissionStatus","showToast","ImageManipulator","Logger","LOG_TYPE","getBaseETResponse","getEventCodeByET","EntityCode","ExecutionTaskID","BaseError","BaseErrorCodes","DispatchSdkCache","insertDocumentInDB","launchCamera","deleteImage","imageData","images","deleteAsync","path","filtered","filter","ele","img","id","toString","toLowerCase","console","log","getMaxImagesCount","props","captureCountLimit","getImagesFileName","Date","now","getCompressionRatio","uri","maxSize","fileInfo","getInfoAsync","size","Math","min","exists","fileSize","error","getInstance","logEvent","message","SDK_ERROR","checkCameraPermissionUtil","response","getCameraPermissionsAsync","granted","resp","requestCameraPermissionsAsync","status","GRANTED","captureImage","imageWidth","imageHeight","alert","cameraResult","options","selectionLimit","mediaType","includeBase64","didCancel","errorCode","errorMessage","assets","compressionRatio","saveOptions","compress","resizedImage","manipulateAsync","then","SDK_DEBUG","catch","exception","getCaptureOutput","imageDataList","captureProps","_captureProps$applica","length","IMAGE_CAPTURE","applicableReasons","failure","mergedObjectiveId","_captureProps$applica2","success","captures","getImagesData","imagesDataList","output","folderName","getKeyFromCache","KEYS","FMS_FOLDER","data","insertID","title","push","url","timestamp","file","folder","name","SQLiteDBIssue"],"sources":["CaptureUtils.ts"],"sourcesContent":["import type {\n CapturedImage,\n CaptureInput,\n CaptureOutput,\n ImageData,\n} from './CaptureSchema';\nimport { Alert, Platform } from 'react-native';\nimport * as FileSystem from 'expo-file-system';\nimport * as ImagePicker from 'expo-image-picker';\nimport { PermissionStatus } from 'expo-image-picker';\nimport { showToast } from '../../widgets/Toaster';\nimport type { ActionResize, ImageResult } from 'expo-image-manipulator';\nimport * as ImageManipulator from 'expo-image-manipulator';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport { getBaseETResponse } from '../../../utils/ExecTaskUtils';\nimport { getEventCodeByET } from '../../../manager/dispatchCodes/EventCodeContainer';\nimport {\n EntityCode,\n ExecutionTaskID,\n} from '../../../models/execTasks/ETConfig';\nimport { BaseError } from '../../../errors/BaseError';\nimport BaseErrorCodes from '../../../errors/ErrorCodes';\nimport DispatchSdkCache from '../../../manager/sdk/DispatchSdkCache';\nimport { insertDocumentInDB } from '../../../utils/SyncManagerUtils';\nimport {CameraOptions, launchCamera} from 'react-native-image-picker';\n\nexport async function deleteImage(imageData: { path: string; id: { toString: () => string; }; }, images: any[]) {\n await FileSystem.deleteAsync(imageData.path);\n let filtered = images.filter(ele=>ele).filter(img => img.id.toString().toLowerCase() !== imageData.id.toString().toLowerCase()\n );\n console.log(\"filtered\",filtered);\n return filtered;\n}\n\nexport function getMaxImagesCount(props: CaptureInput) {\n if (props && props.captureCountLimit) return props.captureCountLimit;\n else return 1;\n}\n\nexport function getImagesFileName() {\n return `IMG_${Date.now().toString()}.jpg`;\n}\n\nexport async function getCompressionRatio(\n uri: string,\n maxSize: number\n): Promise<number> {\n try {\n let fileInfo = await FileSystem.getInfoAsync(uri, {\n size: true,\n });\n maxSize = Math.min(maxSize, 1024);\n if (fileInfo.exists) {\n let fileSize = fileInfo.size / 1024;\n if (fileSize > maxSize) {\n return maxSize / fileSize;\n } else return 1;\n }\n return 1;\n } catch (error: any) {\n Logger.getInstance().logEvent(\n 'getCompressionRatio',\n error.message,\n LOG_TYPE.SDK_ERROR\n );\n return 1;\n }\n}\n\nexport async function checkCameraPermissionUtil(): Promise<boolean> {\n let response = await ImagePicker.getCameraPermissionsAsync();\n if (response.granted) return true;\n else {\n let resp = await ImagePicker.requestCameraPermissionsAsync();\n return resp.status === PermissionStatus.GRANTED;\n }\n}\n\ninterface responseType {\n cancelled?: boolean;\n uri?: string;\n assets?: any[];\n}\n\nexport async function captureImage(\n imageWidth: number,\n imageHeight: number,\n fileSize: number\n): Promise<ImageResult | null> {\n try {\n if (!(await checkCameraPermissionUtil())) {\n Alert.alert('Permissions Error', 'Camera permissions not provided!');\n return null;\n }\n\n\n //let response : responseType;\n let uri : string = ''\n let cameraResult = null;\n\n const options = {\n selectionLimit: 1,\n mediaType: 'photo',\n includeBase64: false,\n };\n\n \n\n // You can also use as a promise without 'callback':\n // await launchCamera(options as CameraOptions , response => { \n // if (response?.didCancel){\n // console.log(\"aks:didCancel=\")\n // showToast('User cancelled the action'); \n // console.log('User cancelled the action');\n // } else if (response.errorCode == ('camera_unavailable' || 'permission' || 'others')) {\n // console.log(\"aks:errorCode=\")\n // showToast(response.errorMessage? response.errorMessage : ''); \n // console.log('ImagePicker Error: ', response.errorMessage);\n // } else {\n // console.log(\"aks:errorCode=before\")\n // async()=>{\n // console.log(\"aks:else=after\")\n // let assets = response.assets? response.assets : null; \n // console.log(\"aks:assets=\", assets)\n // // \n // if(assets != null){\n // uri = assets[0].uri as string;\n // //\n // let compressionRatio = await getCompressionRatio(uri, fileSize);\n // console.log(\"aks:compressionRatio=\", compressionRatio)\n \n // //\n // const saveOptions = {\n // compress: compressionRatio,\n // }\n // //\n // console.log(\"aks:uri=blank\")\n // console.log(\"aks:uri=\", uri)\n // let resizedImage = await ImageManipulator.manipulateAsync(uri, [], saveOptions,);\n // //\n // console.log(\"aks:resizedImage=\", resizedImage)\n // //delete file\n // FileSystem.deleteAsync(uri)\n // .then(() =>\n // Logger.getInstance().logEvent('CAPTURE_ET','File deleted success',LOG_TYPE.SDK_DEBUG)\n // ).catch((error) => {\n // Logger.getInstance().logEvent('CAPTURE_ET',error.message,LOG_TYPE.SDK_ERROR);\n // });\n // //\n // return resizedImage;\n // } \n // return null; \n // }\n // } \n // });\n\n await launchCamera(options as CameraOptions , response => { \n if (response?.didCancel){\n console.log(\"aks:didCancel=\")\n showToast('User cancelled the action'); \n console.log('User cancelled the action');\n } else if (response.errorCode == ('camera_unavailable' || 'permission' || 'others')) {\n console.log(\"aks:errorCode=\")\n showToast(response.errorMessage? response.errorMessage : ''); \n console.log('ImagePicker Error: ', response.errorMessage);\n } else {\n console.log(\"aks:response=else-start\")\n // \n let assets = response.assets? response.assets : null; \n console.log(\"aks:assets=\", assets)\n \n //\n if(assets != null){\n uri = assets[0].uri as string;\n }\n\n console.log(\"aks:uri=before\", uri)\n } \n });\n\n console.log(\"aks:uri-after=\", uri)\n // \n if(uri != null){ \n //\n let compressionRatio = await getCompressionRatio(uri, fileSize);\n console.log(\"aks:compressionRatio=\", compressionRatio)\n \n //\n const saveOptions = {\n compress: compressionRatio,\n }\n //\n console.log(\"aks:uri=blank\")\n console.log(\"aks:uri=\", uri)\n let resizedImage = await ImageManipulator.manipulateAsync(uri, [], saveOptions,);\n //\n console.log(\"aks:resizedImage=\", resizedImage)\n //delete file\n FileSystem.deleteAsync(uri)\n .then(() =>\n Logger.getInstance().logEvent('CAPTURE_ET','File deleted success',LOG_TYPE.SDK_DEBUG)\n ).catch((error) => {\n Logger.getInstance().logEvent('CAPTURE_ET',error.message,LOG_TYPE.SDK_ERROR);\n });\n //\n\n console.log(\"resizedImage=before\")\n console.log(\"resizedImage=\", resizedImage)\n\n return resizedImage;\n }\n\n // if(Platform.OS = 'android'){\n // response = {'uri': 'hello'}\n // uri = 'hello';\n // } else {\n // response = await ImagePicker.launchCameraAsync({\n // quality: 1,\n // });\n // let assets = response.assets;\n // if(assets){\n // uri = assets[0].uri\n // } \n // }\n\n // if (response?.cancelled){\n // showToast('User cancelled the action');\n // return null;\n // } \n\n \n // let actionResize: ActionResize = {\n // resize: {\n // width: imageWidth,\n // height: imageHeight,\n // },\n // };\n\n return null\n \n } catch (exception: any) {\n //showToast(`Error ${exception.message}`);\n //console.error('capture image error: ', exception);\n return null;\n }\n}\n\n\nexport async function getCaptureOutput(\n imageDataList: ImageData[],\n captureProps: CaptureInput\n): Promise<CaptureOutput> {\n if (!imageDataList || imageDataList.length === 0)\n return {\n ...(await getBaseETResponse(\n EntityCode.IMAGE_CAPTURE,\n false,\n getEventCodeByET(\n ExecutionTaskID.IMAGE_CAPTURE,\n false,\n captureProps.applicableReasons?.failure\n ),\n '',\n captureProps.mergedObjectiveId,\n ExecutionTaskID.IMAGE_CAPTURE\n )),\n };\n else {\n return {\n ...(await getBaseETResponse(\n EntityCode.IMAGE_CAPTURE,\n true,\n getEventCodeByET(\n ExecutionTaskID.IMAGE_CAPTURE,\n true,\n captureProps.applicableReasons?.success\n ),\n '',\n captureProps.mergedObjectiveId,\n ExecutionTaskID.IMAGE_CAPTURE\n )),\n captures: await getImagesData(imageDataList, captureProps),\n };\n }\n}\n\nasync function getImagesData(\n imagesDataList: ImageData[],\n captureProps: CaptureInput\n): Promise<CapturedImage[]> {\n if (imagesDataList && imagesDataList.length > 0) {\n let output: CapturedImage[] = [];\n const folderName =\n (await DispatchSdkCache.getInstance().getKeyFromCache(\n DispatchSdkCache.KEYS.FMS_FOLDER\n )) ?? 'NULL';\n for (const data of imagesDataList) {\n let insertID = await insertDocumentInDB(\n data.id,\n folderName,\n // JSON.stringify(captureProps.jobIds),\n // JSON.stringify(captureProps.objRefs),\n null,\n captureProps.title,\n data.path\n );\n if (insertID)\n output.push({\n url: '',\n timestamp: data.timestamp,\n file: { folder: folderName, name: data.id },\n });\n else\n throw new BaseError(\n BaseErrorCodes.SQLiteDBIssue,\n 'Unable to save Image'\n );\n }\n return output;\n } else return [];\n}"],"mappings":"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"}
|