@os1-platform/dispatch-mobile 3.0.2 → 3.0.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.
@@ -160,11 +160,8 @@ const FormGenerator = props => {
160
160
  }
161
161
  }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, null))))), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
162
162
  style: styles.bottomView
163
- }, /*#__PURE__*/_react.default.createElement(_reactNative.View, null, /*#__PURE__*/_react.default.createElement(_reactNativePaper.Button, {
164
- style: [_CommonStyles.CommonStyles.nextButton, {
165
- width: 165,
166
- marginStart: 10
167
- }],
163
+ }, /*#__PURE__*/_react.default.createElement(_reactNativePaper.Button, {
164
+ style: [styles.mainBtnStyles, _CommonStyles.CommonStyles.nextButton],
168
165
  labelStyle: _CommonStyles.CommonStyles.nextButtonLabel,
169
166
  mode: 'contained',
170
167
  onPress: () => {
@@ -181,11 +178,8 @@ const FormGenerator = props => {
181
178
  cta: cta
182
179
  });
183
180
  }
184
- }, "Proceed")), /*#__PURE__*/_react.default.createElement(_reactNative.View, null, props.isSelfLoop == false && /*#__PURE__*/_react.default.createElement(_reactNativePaper.Button, {
185
- style: [_CommonStyles.CommonStyles.cancelButton, {
186
- width: 165,
187
- marginEnd: 10
188
- }],
181
+ }, "Proceed"), props.isSelfLoop == false && /*#__PURE__*/_react.default.createElement(_reactNativePaper.Button, {
182
+ style: [styles.mainBtnStyles, _CommonStyles.CommonStyles.cancelButton],
189
183
  labelStyle: _CommonStyles.CommonStyles.cancelButtonLabel,
190
184
  mode: 'outlined',
191
185
  onPress: () => {
@@ -202,7 +196,7 @@ const FormGenerator = props => {
202
196
  cta: cta
203
197
  });
204
198
  }
205
- }, "Cancel")))));
199
+ }, "Cancel"))));
206
200
  };
207
201
  var _default = exports.default = FormGenerator;
208
202
  const styles = _reactNative.StyleSheet.create({
@@ -221,6 +215,16 @@ const styles = _reactNative.StyleSheet.create({
221
215
  flexDirection: 'row-reverse',
222
216
  justifyContent: 'space-evenly',
223
217
  padding: 16,
218
+ backgroundColor: 'white',
219
+ gap: 16
220
+ },
221
+ mainBtnStyles: {
222
+ display: 'flex',
223
+ flexDirection: 'row',
224
+ justifyContent: 'center',
225
+ alignItems: 'center',
226
+ flex: 1,
227
+ width: '100%',
224
228
  backgroundColor: 'white'
225
229
  }
226
230
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_rjsfNative","_DateTimeWidget","_interopRequireDefault","_TimeRangeSelector","_QRBarcodeScannerWidget","_DropdownWidget","_reactNativePaper","_ExecTaskUtils","_EventCodeContainer","_ETConfig","_CommonStyles","_SdkColors","_MaterialIcons","_constants","_utils","_GoBackModal","_native","_SentrySdkConstants","_SentryAnalyticsUtils","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","customWidgets","datePicker","DateTimeWidget","timeRangeSelector","TimeRangeSelector","scanner","QRBarcodeScannerWidget","select","DropdownWidget","FormGenerator","props","form","useRef","showBackModal","setShowBackModal","useState","onCancel","setOnCancel","useFocusEffect","React","useCallback","onBackPress","_props$taskMeta","taskMeta","enableGoBack","hasGoBackConnector","applicableReasons","navigation","goBack","BackHandler","addEventListener","removeEventListener","useLayoutEffect","setOptions","title","headerLeft","createElement","onPress","_props$taskMeta2","cta","fireEventWithScreenName","severityLevel","SeverityLevelValue","LOG","eventName","SentryEventNameSdkConstants","BUTTON_CLICKED","screenName","ScreenNameSdkConstants","FORM_ET_SCREEN","name","color","size","style","paddingRight","paddingTop","renderModal","showModal","setShowModal","onSuccess","onSubmitET","getBaseETResponse","EntityCode","FORMS","GO_BACK_EVENT_CODE","mergedObjectiveId","ExecutionTaskID","data","onFailure","Provider","KeyboardAvoidingView","CommonStyles","mainContainer","ScrollView","flex","flexGrow","View","padding","FormContext","value","defaultProps","requiredTitle","theme","primaryColor","SdkColors","ColorTheme","LIGHT","primaryButton","highlightColor","borderColor","textColor","placeholderTextColor","errorColor","fontFamily","Platform","OS","Fonts","IBMPlexSans_400Regular","Text","styles","message","noHtml5Validate","noValidate","widgets","ref","schema","jsonSchema","showErrorList","uiSchema","onError","error","_props$applicableReas","getEventCodeByET","failure","onSubmit","response","_props$applicableReas2","formData","_props$applicableReas3","success","bottomView","Button","nextButton","width","marginStart","labelStyle","nextButtonLabel","mode","current","submit","isSelfLoop","cancelButton","marginEnd","cancelButtonLabel","_default","exports","StyleSheet","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';\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../../analytics/sentry/SentryAnalyticsUtils';\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 const cta = 'Back Arrow';\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.FORM_ET_SCREEN, cta: cta }); \n\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 const cta = 'Proceed';\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.FORM_ET_SCREEN, cta: cta }); \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 const cta = 'Cancel';\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.FORM_ET_SCREEN, cta: cta }); \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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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_rjsfNative","_DateTimeWidget","_interopRequireDefault","_TimeRangeSelector","_QRBarcodeScannerWidget","_DropdownWidget","_reactNativePaper","_ExecTaskUtils","_EventCodeContainer","_ETConfig","_CommonStyles","_SdkColors","_MaterialIcons","_constants","_utils","_GoBackModal","_native","_SentrySdkConstants","_SentryAnalyticsUtils","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","customWidgets","datePicker","DateTimeWidget","timeRangeSelector","TimeRangeSelector","scanner","QRBarcodeScannerWidget","select","DropdownWidget","FormGenerator","props","form","useRef","showBackModal","setShowBackModal","useState","onCancel","setOnCancel","useFocusEffect","React","useCallback","onBackPress","_props$taskMeta","taskMeta","enableGoBack","hasGoBackConnector","applicableReasons","navigation","goBack","BackHandler","addEventListener","removeEventListener","useLayoutEffect","setOptions","title","headerLeft","createElement","onPress","_props$taskMeta2","cta","fireEventWithScreenName","severityLevel","SeverityLevelValue","LOG","eventName","SentryEventNameSdkConstants","BUTTON_CLICKED","screenName","ScreenNameSdkConstants","FORM_ET_SCREEN","name","color","size","style","paddingRight","paddingTop","renderModal","showModal","setShowModal","onSuccess","onSubmitET","getBaseETResponse","EntityCode","FORMS","GO_BACK_EVENT_CODE","mergedObjectiveId","ExecutionTaskID","data","onFailure","Provider","KeyboardAvoidingView","CommonStyles","mainContainer","ScrollView","flex","flexGrow","View","padding","FormContext","value","defaultProps","requiredTitle","theme","primaryColor","SdkColors","ColorTheme","LIGHT","primaryButton","highlightColor","borderColor","textColor","placeholderTextColor","errorColor","fontFamily","Platform","OS","Fonts","IBMPlexSans_400Regular","Text","styles","message","noHtml5Validate","noValidate","widgets","ref","schema","jsonSchema","showErrorList","uiSchema","onError","error","_props$applicableReas","getEventCodeByET","failure","onSubmit","response","_props$applicableReas2","formData","_props$applicableReas3","success","bottomView","Button","mainBtnStyles","nextButton","labelStyle","nextButtonLabel","mode","current","submit","isSelfLoop","cancelButton","cancelButtonLabel","_default","exports","StyleSheet","create","marginTop","marginBottom","fontStyle","fontSize","lineHeight","letterSpacing","alignItems","flexDirection","justifyContent","backgroundColor","gap","display","width"],"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';\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../../analytics/sentry/SentryAnalyticsUtils';\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 const cta = 'Back Arrow';\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.FORM_ET_SCREEN, cta: cta }); \n\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 <Button\n style={[styles.mainBtnStyles, CommonStyles.nextButton]}\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 const cta = 'Proceed';\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.FORM_ET_SCREEN, cta: cta }); \n \n }}\n >\n Proceed\n </Button>\n {(props.isSelfLoop == false) && <Button\n style={[styles.mainBtnStyles, CommonStyles.cancelButton]}\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 const cta = 'Cancel';\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.FORM_ET_SCREEN, cta: cta }); \n \n }}\n >\n Cancel\n </Button>\n }\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 gap: 16,\n },\n mainBtnStyles: {\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n flex: 1,\n width: '100%',\n backgroundColor: 'white',\n },\n});\n"],"mappings":"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","ignoreList":[]}
@@ -88,7 +88,10 @@ class AppSyncManager {
88
88
  * Call this method from index file of the app
89
89
  */
90
90
  static registerSyncTask() {
91
- _reactNative.AppRegistry.registerHeadlessTask('SYNC_MANAGER', () => AppSyncManager.startAppSyncManager);
91
+ // We will not register headless js task for api level 31 and above
92
+ if (_reactNative.Platform.OS == 'android' && _reactNative.Platform.Version > 30) {
93
+ _reactNative.AppRegistry.registerHeadlessTask('SYNC_MANAGER', () => AppSyncManager.startAppSyncManager);
94
+ }
92
95
  }
93
96
  async getAllEvents(dispatchID) {
94
97
  return _EventsSyncManager.default.getInstance().getAllEvents(dispatchID);
@@ -1 +1 @@
1
- {"version":3,"names":["_DocumentSyncManager","_interopRequireDefault","require","_EventsSyncManager","_NetworkUtil","_Logger","_interopRequireWildcard","_NativeSyncManager","_DispatchSdkCache","_reactNative","_BaseError","_ErrorCodes","_constants","_constants2","_AppSyncManager","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_defineProperty","_toPropertyKey","value","enumerable","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","AppSyncManager","constructor","tenantBaseURL","retryCount","DocumentSyncManager","getInstance","init","EventsSyncManager","initSyncManager","startSyncing","forceSync","_syncType","NetworkUtil","isAvailableAsync","forceDocumentSync","startSync","startDocumentSync","Logger","logEvent","LOG_TYPE","SDK_INFO","isAppSyncPending","isSyncPending","initAppSync","syncRetryCount","instance","BaseError","ErrorCodes","AppSyncNotInitialized","startAppSyncManager","NativeSyncManager","stopSyncManager","sdkConfig","DispatchSdkCache","getObjectFromCache","KEYS","SDK_CONFIG","MAX_RETRY_COUNT","startSDKSyncManager","SDK_ERROR","isSyncActive","error","message","SDK_WARNING","registerSyncTask","AppRegistry","registerHeadlessTask","getAllEvents","dispatchID","getAllDocuments","config","Platform","OS","isForceStartEnabled","_config$notificationC","_config$notificationC2","_config$notificationC3","retries","startSyncManager","notificationConfig","interval","DEFAULT_INTERVAL","title","DEFAULT_NOTIFICATION_TITLE","description","DEFAULT_NOTIFICATION_DESCRIPTION","then","catch","pushToQueue","pushData","insertBulkEvent","JSON","stringify","errorMessage","exports"],"sources":["AppSyncManager.ts"],"sourcesContent":["import DocumentSyncManager from './document/DocumentSyncManager';\nimport EventsSyncManager from './events/EventsSyncManager';\nimport NetworkUtil from '../../utils/NetworkUtil';\nimport Logger, { LOG_TYPE } from '../../utils/Logger';\nimport NativeSyncManager from './NativeSyncManager';\nimport DispatchSdkCache from '../sdk/DispatchSdkCache';\nimport { AppRegistry, Platform } from 'react-native';\nimport { BaseError } from '../../errors/BaseError';\nimport ErrorCodes from '../../errors/ErrorCodes';\nimport type { SdkSyncType } from '../../models/DispatchModels';\nimport type { BulkEvent, DocumentRow, EventRow } from './DBConfig';\nimport {\n DEFAULT_INTERVAL,\n DEFAULT_NOTIFICATION_DESCRIPTION,\n DEFAULT_NOTIFICATION_TITLE,\n} from '../../constants/constants';\nimport type { DispatchSDKConfig } from '../../models/sdk';\nimport { MAX_RETRY_COUNT } from './constants';\n\nexport default class AppSyncManager {\n private constructor(tenantBaseURL: string, retryCount: number) {\n DocumentSyncManager.getInstance().init(tenantBaseURL, retryCount);\n EventsSyncManager.getInstance().initSyncManager(tenantBaseURL, retryCount);\n }\n private static instance: AppSyncManager;\n public isSyncActive = false;\n public isForceStartEnabled = true;\n\n /**\n *\n * @param forceSync - true/false - if true resets the retry count key and start the sync\n * @param syncType\n */\n public async startSyncing(forceSync: boolean, _syncType?: SdkSyncType) {\n if (await NetworkUtil.isAvailableAsync()) {\n if (forceSync) {\n EventsSyncManager.getInstance().forceSync();\n DocumentSyncManager.getInstance().forceDocumentSync();\n } else {\n EventsSyncManager.getInstance().startSync();\n DocumentSyncManager.getInstance().startDocumentSync();\n }\n } else {\n Logger.getInstance().logEvent(\n 'startSync',\n 'No network',\n LOG_TYPE.SDK_INFO\n );\n }\n }\n\n public async isAppSyncPending(): Promise<boolean> {\n return (\n (await EventsSyncManager.getInstance().isSyncPending()) ||\n (await DocumentSyncManager.getInstance().isSyncPending())\n );\n }\n public static initAppSync(\n tenantBaseURL: string,\n syncRetryCount: number\n ): AppSyncManager {\n // removing this check to allow tenant change in app due to this manager instance did't re-init and event and docs didn't sync\n // if (!AppSyncManager.instance) {\n Logger.getInstance().logEvent(\n 'initAppSync',\n 'CREATING NEW INSTANCE',\n LOG_TYPE.SDK_INFO\n );\n AppSyncManager.instance = new AppSyncManager(\n tenantBaseURL,\n syncRetryCount\n );\n // }\n return AppSyncManager.instance;\n }\n public static getInstance(): AppSyncManager {\n if (!AppSyncManager.instance)\n throw new BaseError(\n ErrorCodes.AppSyncNotInitialized,\n 'SDK sync Manager is not initialized'\n );\n else return AppSyncManager.instance;\n }\n\n public static async startAppSyncManager() {\n try {\n if (!AppSyncManager.instance) {\n NativeSyncManager.stopSyncManager();\n let sdkConfig =\n (await DispatchSdkCache.getInstance().getObjectFromCache(\n DispatchSdkCache.KEYS.SDK_CONFIG\n )) as DispatchSDKConfig;\n const retryCount = sdkConfig.syncRetryCount ?? MAX_RETRY_COUNT;\n if (sdkConfig.tenantBaseURL != null && retryCount != null) {\n AppSyncManager.initAppSync(sdkConfig.tenantBaseURL, +retryCount);\n AppSyncManager.getInstance().startSDKSyncManager();\n } else {\n Logger.getInstance().logEvent(\n 'SYNC_MANAGER_ASM',\n 'TENANT BASE URL IS NULL',\n LOG_TYPE.SDK_ERROR\n );\n }\n } else if (await AppSyncManager.instance.isAppSyncPending()) {\n AppSyncManager.instance.startSyncing(false);\n } else {\n NativeSyncManager.stopSyncManager();\n AppSyncManager.getInstance().isSyncActive = false;\n }\n } catch (error: any) {\n Logger.getInstance().logEvent(\n 'startAppSyncManager',\n `Unable to start App Sync Manager ${error.message}`,\n LOG_TYPE.SDK_WARNING\n );\n }\n }\n\n /**\n * Call this method from index file of the app\n */\n public static registerSyncTask() {\n AppRegistry.registerHeadlessTask(\n 'SYNC_MANAGER',\n () => AppSyncManager.startAppSyncManager\n );\n }\n\n public async getAllEvents(dispatchID?: string): Promise<EventRow[]> {\n return EventsSyncManager.getInstance().getAllEvents(dispatchID);\n }\n public async getAllDocuments(dispatchID?: string): Promise<DocumentRow[]> {\n return DocumentSyncManager.getInstance().getAllDocuments(dispatchID);\n }\n public startSDKSyncManager() {\n (async () => {\n const config = (await DispatchSdkCache.getInstance().getObjectFromCache(\n DispatchSdkCache.KEYS.SDK_CONFIG\n )) as DispatchSDKConfig;\n if (Platform.OS === 'android') {\n if (!this.isSyncActive && this.isForceStartEnabled) {\n this.isSyncActive = true;\n\n /**\n * Reset Retry Counter\n */\n EventsSyncManager.getInstance().retries = 0;\n DocumentSyncManager.getInstance().retries = 0;\n NativeSyncManager.startSyncManager(\n config?.notificationConfig?.interval ?? DEFAULT_INTERVAL,\n config?.notificationConfig?.title ?? DEFAULT_NOTIFICATION_TITLE,\n config?.notificationConfig?.description ??\n DEFAULT_NOTIFICATION_DESCRIPTION\n );\n } else {\n Logger.getInstance().logEvent(\n 'startNativeSyncManager',\n 'ANDROID SYNC SERVICE ALREADY RUNNING',\n LOG_TYPE.SDK_INFO\n );\n }\n } else {\n /**\n * For iOS we have to start Normal Foreground sync\n */\n this.startSyncing(true).then().catch();\n }\n })();\n }\n\n // NEW CODE\n public async pushToQueue(pushData: BulkEvent): Promise<boolean> {\n try {\n await EventsSyncManager.getInstance().insertBulkEvent(pushData);\n\n AppSyncManager.getInstance().startSDKSyncManager();\n return true;\n } catch (error: any) {\n Logger.getInstance().logEvent(\n 'pushToQueue ',\n JSON.stringify({\n errorMessage: error.message,\n }),\n LOG_TYPE.SDK_ERROR\n );\n return false;\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_DocumentSyncManager","_interopRequireDefault","require","_EventsSyncManager","_NetworkUtil","_Logger","_interopRequireWildcard","_NativeSyncManager","_DispatchSdkCache","_reactNative","_BaseError","_ErrorCodes","_constants","_constants2","_AppSyncManager","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_defineProperty","_toPropertyKey","value","enumerable","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","AppSyncManager","constructor","tenantBaseURL","retryCount","DocumentSyncManager","getInstance","init","EventsSyncManager","initSyncManager","startSyncing","forceSync","_syncType","NetworkUtil","isAvailableAsync","forceDocumentSync","startSync","startDocumentSync","Logger","logEvent","LOG_TYPE","SDK_INFO","isAppSyncPending","isSyncPending","initAppSync","syncRetryCount","instance","BaseError","ErrorCodes","AppSyncNotInitialized","startAppSyncManager","NativeSyncManager","stopSyncManager","sdkConfig","DispatchSdkCache","getObjectFromCache","KEYS","SDK_CONFIG","MAX_RETRY_COUNT","startSDKSyncManager","SDK_ERROR","isSyncActive","error","message","SDK_WARNING","registerSyncTask","Platform","OS","Version","AppRegistry","registerHeadlessTask","getAllEvents","dispatchID","getAllDocuments","config","isForceStartEnabled","_config$notificationC","_config$notificationC2","_config$notificationC3","retries","startSyncManager","notificationConfig","interval","DEFAULT_INTERVAL","title","DEFAULT_NOTIFICATION_TITLE","description","DEFAULT_NOTIFICATION_DESCRIPTION","then","catch","pushToQueue","pushData","insertBulkEvent","JSON","stringify","errorMessage","exports"],"sources":["AppSyncManager.ts"],"sourcesContent":["import DocumentSyncManager from './document/DocumentSyncManager';\nimport EventsSyncManager from './events/EventsSyncManager';\nimport NetworkUtil from '../../utils/NetworkUtil';\nimport Logger, { LOG_TYPE } from '../../utils/Logger';\nimport NativeSyncManager from './NativeSyncManager';\nimport DispatchSdkCache from '../sdk/DispatchSdkCache';\nimport { AppRegistry, Platform } from 'react-native';\nimport { BaseError } from '../../errors/BaseError';\nimport ErrorCodes from '../../errors/ErrorCodes';\nimport type { SdkSyncType } from '../../models/DispatchModels';\nimport type { BulkEvent, DocumentRow, EventRow } from './DBConfig';\nimport {\n DEFAULT_INTERVAL,\n DEFAULT_NOTIFICATION_DESCRIPTION,\n DEFAULT_NOTIFICATION_TITLE,\n} from '../../constants/constants';\nimport type { DispatchSDKConfig } from '../../models/sdk';\nimport { MAX_RETRY_COUNT } from './constants';\n\nexport default class AppSyncManager {\n private constructor(tenantBaseURL: string, retryCount: number) {\n DocumentSyncManager.getInstance().init(tenantBaseURL, retryCount);\n EventsSyncManager.getInstance().initSyncManager(tenantBaseURL, retryCount);\n }\n private static instance: AppSyncManager;\n public isSyncActive = false;\n public isForceStartEnabled = true;\n\n /**\n *\n * @param forceSync - true/false - if true resets the retry count key and start the sync\n * @param syncType\n */\n public async startSyncing(forceSync: boolean, _syncType?: SdkSyncType) {\n if (await NetworkUtil.isAvailableAsync()) {\n if (forceSync) {\n EventsSyncManager.getInstance().forceSync();\n DocumentSyncManager.getInstance().forceDocumentSync();\n } else {\n EventsSyncManager.getInstance().startSync();\n DocumentSyncManager.getInstance().startDocumentSync();\n }\n } else {\n Logger.getInstance().logEvent(\n 'startSync',\n 'No network',\n LOG_TYPE.SDK_INFO\n );\n }\n }\n\n public async isAppSyncPending(): Promise<boolean> {\n return (\n (await EventsSyncManager.getInstance().isSyncPending()) ||\n (await DocumentSyncManager.getInstance().isSyncPending())\n );\n }\n public static initAppSync(\n tenantBaseURL: string,\n syncRetryCount: number\n ): AppSyncManager {\n // removing this check to allow tenant change in app due to this manager instance did't re-init and event and docs didn't sync\n // if (!AppSyncManager.instance) {\n Logger.getInstance().logEvent(\n 'initAppSync',\n 'CREATING NEW INSTANCE',\n LOG_TYPE.SDK_INFO\n );\n AppSyncManager.instance = new AppSyncManager(\n tenantBaseURL,\n syncRetryCount\n );\n // }\n return AppSyncManager.instance;\n }\n public static getInstance(): AppSyncManager {\n if (!AppSyncManager.instance)\n throw new BaseError(\n ErrorCodes.AppSyncNotInitialized,\n 'SDK sync Manager is not initialized'\n );\n else return AppSyncManager.instance;\n }\n\n public static async startAppSyncManager() {\n try {\n if (!AppSyncManager.instance) {\n NativeSyncManager.stopSyncManager();\n let sdkConfig =\n (await DispatchSdkCache.getInstance().getObjectFromCache(\n DispatchSdkCache.KEYS.SDK_CONFIG\n )) as DispatchSDKConfig;\n const retryCount = sdkConfig.syncRetryCount ?? MAX_RETRY_COUNT;\n if (sdkConfig.tenantBaseURL != null && retryCount != null) {\n AppSyncManager.initAppSync(sdkConfig.tenantBaseURL, +retryCount);\n AppSyncManager.getInstance().startSDKSyncManager();\n } else {\n Logger.getInstance().logEvent(\n 'SYNC_MANAGER_ASM',\n 'TENANT BASE URL IS NULL',\n LOG_TYPE.SDK_ERROR\n );\n }\n } else if (await AppSyncManager.instance.isAppSyncPending()) {\n AppSyncManager.instance.startSyncing(false);\n } else {\n NativeSyncManager.stopSyncManager();\n AppSyncManager.getInstance().isSyncActive = false;\n }\n } catch (error: any) {\n Logger.getInstance().logEvent(\n 'startAppSyncManager',\n `Unable to start App Sync Manager ${error.message}`,\n LOG_TYPE.SDK_WARNING\n );\n }\n }\n\n /**\n * Call this method from index file of the app\n */\n public static registerSyncTask() {\n // We will not register headless js task for api level 31 and above\n if (Platform.OS == 'android' && Platform.Version > 30) {\n AppRegistry.registerHeadlessTask(\n 'SYNC_MANAGER',\n () => AppSyncManager.startAppSyncManager\n );\n }\n }\n\n public async getAllEvents(dispatchID?: string): Promise<EventRow[]> {\n return EventsSyncManager.getInstance().getAllEvents(dispatchID);\n }\n public async getAllDocuments(dispatchID?: string): Promise<DocumentRow[]> {\n return DocumentSyncManager.getInstance().getAllDocuments(dispatchID);\n }\n public startSDKSyncManager() {\n (async () => {\n const config = (await DispatchSdkCache.getInstance().getObjectFromCache(\n DispatchSdkCache.KEYS.SDK_CONFIG\n )) as DispatchSDKConfig;\n if (Platform.OS === 'android') {\n if (!this.isSyncActive && this.isForceStartEnabled) {\n this.isSyncActive = true;\n\n /**\n * Reset Retry Counter\n */\n EventsSyncManager.getInstance().retries = 0;\n DocumentSyncManager.getInstance().retries = 0;\n NativeSyncManager.startSyncManager(\n config?.notificationConfig?.interval ?? DEFAULT_INTERVAL,\n config?.notificationConfig?.title ?? DEFAULT_NOTIFICATION_TITLE,\n config?.notificationConfig?.description ??\n DEFAULT_NOTIFICATION_DESCRIPTION\n );\n } else {\n Logger.getInstance().logEvent(\n 'startNativeSyncManager',\n 'ANDROID SYNC SERVICE ALREADY RUNNING',\n LOG_TYPE.SDK_INFO\n );\n }\n } else {\n /**\n * For iOS we have to start Normal Foreground sync\n */\n this.startSyncing(true).then().catch();\n }\n })();\n }\n\n // NEW CODE\n public async pushToQueue(pushData: BulkEvent): Promise<boolean> {\n try {\n await EventsSyncManager.getInstance().insertBulkEvent(pushData);\n\n AppSyncManager.getInstance().startSDKSyncManager();\n return true;\n } catch (error: any) {\n Logger.getInstance().logEvent(\n 'pushToQueue ',\n JSON.stringify({\n errorMessage: error.message,\n }),\n LOG_TYPE.SDK_ERROR\n );\n return false;\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -150,8 +150,10 @@ class DocumentHttpClient extends _client.default {
150
150
  if (processedFileExist) {
151
151
  filePathToUpload = document.processed_file_path;
152
152
  }
153
+ const fileStat = await _reactNativeFs.default.stat(filePathToUpload);
153
154
  const url = sdkConfig.tenantBaseURL + `/api/folders/${document.fms_folder_id}/files`;
154
155
  let extraParameters = {
156
+ fSize: fileStat.size + " b",
155
157
  fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4) : '',
156
158
  dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4) : '',
157
159
  dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9) : ''
@@ -1 +1 @@
1
- {"version":3,"names":["_client","_interopRequireDefault","require","_expoFileSystem","_interopRequireWildcard","FileSystem","_DispatchSdkCache","_Logger","_reactNativeFs","_SentrySdkConstants","_SentryAnalyticsUtils","_utils","_callbacksHandler","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","cache","DispatchSdkCache","getInstance","cacheKeys","KEYS","DocumentHttpClient","HttpClient","constructor","baseURL","uploadDocument","document","base64","data","response","uploadBase64File","info","body","status","substring","String","extraParameters","fName","file_name","length","dName","fms_folder_id","dispId","dispatch_id","fireEventWithScreenName","severityLevel","SeverityLevelValue","LOG","eventName","SentryEventNameSdkConstants","API_RESPONSE","screenName","extraParams","Logger","logEvent","flattenObject","LOG_TYPE","SDK_ERROR","id","uploadResponse","uploadBinaryFile","_JSON$parse","deleteAsync","file_path","then","catch","processed_file_path","JSON","parse","dataToUpload","undefined","requestBody","stringify","file","type","description","desc","tags","key","value","fileName","sdkConfig","getObjectFromCache","SDK_CONFIG","isTokenExpired","accessToken","callbackHandler","refresheAndUpdateToken","API_CALL","instance","post","headers","tenantID","filePathToUpload","processedFileExist","RNFS","exists","url","tenantBaseURL","uploadAsync","httpMethod","uploadType","FileSystemUploadType","MULTIPART","fieldName","parameters","exports"],"sources":["DocumentHttpClient.ts"],"sourcesContent":["import HttpClient from '../../../network/client';\nimport type { DocumentRow } from '../DBConfig';\nimport type { AxiosResponse } from 'axios';\nimport * as FileSystem from 'expo-file-system';\nimport { FileSystemUploadResult, FileSystemUploadType } from 'expo-file-system';\nimport DispatchSdkCache from '../../sdk/DispatchSdkCache';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport type { DispatchSDKConfig } from '../../../models/sdk';\nimport RNFS from 'react-native-fs';\nimport { stat } from 'react-native-fs';\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../../analytics/sentry/SentryAnalyticsUtils';\nimport { flattenObject, isTokenExpired } from '../../../utils/utils';\nimport callbackHandler from '../../../manager/sdk/callbacksHandler';\n\nconst cache = DispatchSdkCache.getInstance();\nconst cacheKeys = DispatchSdkCache.KEYS;\nexport default class DocumentHttpClient extends HttpClient {\n constructor(baseURL: string) {\n super(baseURL);\n }\n public async uploadDocument(document: DocumentRow): Promise<string | null> {\n if (document.base64 && document.data != null) {\n const response = await this.uploadBase64File(document);\n let info = '';\n if (\n response &&\n response.data !== null &&\n response.data.body !== null &&\n response.status !== 202\n ) {\n let body = response.data.body;\n info = body.substring(40);\n } else {\n info = String(response.status);\n }\n let extraParameters = { \n response: info,\n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_RESPONSE,\n screenName: 'uploadDocument:Upload_Base64_File_Response',\n extraParams: extraParameters,\n });\n\n Logger.getInstance().logEvent(\n 'uploadDocument:uploadBase64FileResponse',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n if (\n response &&\n response.data != null &&\n response.data.data != null &&\n response.data.data.id &&\n response.status === 202\n ) {\n return response.data.data.id;\n }else{\n return null;\n }\n } else {\n const uploadResponse = await this.uploadBinaryFile(document);\n let info = '';\n if (\n uploadResponse &&\n uploadResponse.body !== null &&\n uploadResponse.status !== 202\n ) {\n let body = uploadResponse.body;\n info = body.substring(40);\n } else {\n info = String(uploadResponse.status);\n }\n let extraParameters = { \n response: info,\n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_RESPONSE,\n screenName: 'uploadDocument:Upload_Binary_File_Response',\n extraParams: extraParameters,\n });\n Logger.getInstance().logEvent(\n 'uploadDocument:uploadBinaryFileResponse',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n if (\n uploadResponse != null &&\n uploadResponse.status === 202 &&\n uploadResponse.body != null\n ) {\n Logger.getInstance().logEvent(\n 'uploadDocument:DeletingFiles',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n FileSystem.deleteAsync(document.file_path).then().catch(); // WE DELETE FILE HERE\n FileSystem.deleteAsync(document.processed_file_path).then().catch(); // WE DELETE FILE HERE\n\n return JSON.parse(uploadResponse.body)?.data?.id;\n }else{\n return null;\n }\n }\n }\n\n // This function will upload processed base64 data (overlayed base64 data ) if exist otherwise will uplaod original base 64 data for pod signature.\n public async uploadBase64File(document: DocumentRow): Promise<AxiosResponse> {\n let dataToUpload = document.data;\n if (\n document.processed_file_path !== null &&\n document.processed_file_path !== undefined &&\n document.processed_file_path !== ''\n ) {\n dataToUpload = document.processed_file_path;\n }\n let requestBody = JSON.stringify({\n file: {\n type: 'FILE',\n data: dataToUpload,\n },\n description: document.desc,\n tags: [\n { key: 'dispatchId', value: document.dispatch_id },\n // { key: 'jobId', value: document.job_id },\n // { key: 'objectiveRef', value: document.objective_ref },\n { key: 'fileName', value: document.file_name },\n ],\n fileName: document.file_name,\n });\n let sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n if(isTokenExpired(sdkConfig.accessToken)){\n await callbackHandler.refresheAndUpdateToken();\n sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n }\n let extraParameters = { \n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_CALL,\n screenName: 'Upload_Base64_File_Request',\n extraParams: extraParameters,\n });\n Logger.getInstance().logEvent(\n 'uploadBase64FileRequest',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n \n return this.instance.post(\n `/api/folders/${document.fms_folder_id}/files`,\n requestBody,\n {\n headers: {\n 'accept': 'application/json',\n 'X-COREOS-REQUEST-ID': document.dispatch_id,\n 'X-COREOS-ACCESS': sdkConfig.accessToken ?? '',\n 'X-COREOS-TID': sdkConfig.tenantID ?? '',\n 'Content-Type': 'application/json',\n },\n }\n );\n }\n\n // This function will upload processed (overlayed file) if exist otherwise will uplaod original file for pod images.\n private async uploadBinaryFile(\n document: DocumentRow\n ): Promise<FileSystemUploadResult> {\n \n let sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n if(isTokenExpired(sdkConfig.accessToken)){\n await callbackHandler.refresheAndUpdateToken();\n sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n }\n\n let filePathToUpload = document.file_path;\n let processedFileExist = await RNFS.exists(document.processed_file_path);\n if (processedFileExist) {\n filePathToUpload = document.processed_file_path;\n }\n const url =\n sdkConfig.tenantBaseURL + `/api/folders/${document.fms_folder_id}/files`;\n \n let extraParameters = { \n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_CALL,\n screenName: 'Upload_Binary_File_Request',\n extraParams: extraParameters,\n });\n Logger.getInstance().logEvent(\n 'uploadBinaryFileRequest',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n \n return FileSystem.uploadAsync(url, filePathToUpload, {\n headers: {\n 'accept': 'application/json',\n 'Content-Type': 'multipart/form-data',\n 'X-COREOS-REQUEST-ID': document.dispatch_id,\n 'X-COREOS-TID': sdkConfig.tenantID ?? '',\n 'X-COREOS-ACCESS': sdkConfig.accessToken ?? '',\n },\n httpMethod: 'POST',\n uploadType: FileSystemUploadType.MULTIPART,\n fieldName: 'file',\n parameters: {\n tags: JSON.stringify([\n { key: 'dispatchId', value: document.dispatch_id },\n // { key: 'jobId', value: document.job_id },\n // { key: 'objectiveRef', value: document.objective_ref },\n { key: 'fileName', value: document.file_name },\n ]),\n },\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_client","_interopRequireDefault","require","_expoFileSystem","_interopRequireWildcard","FileSystem","_DispatchSdkCache","_Logger","_reactNativeFs","_SentrySdkConstants","_SentryAnalyticsUtils","_utils","_callbacksHandler","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","cache","DispatchSdkCache","getInstance","cacheKeys","KEYS","DocumentHttpClient","HttpClient","constructor","baseURL","uploadDocument","document","base64","data","response","uploadBase64File","info","body","status","substring","String","extraParameters","fName","file_name","length","dName","fms_folder_id","dispId","dispatch_id","fireEventWithScreenName","severityLevel","SeverityLevelValue","LOG","eventName","SentryEventNameSdkConstants","API_RESPONSE","screenName","extraParams","Logger","logEvent","flattenObject","LOG_TYPE","SDK_ERROR","id","uploadResponse","uploadBinaryFile","_JSON$parse","deleteAsync","file_path","then","catch","processed_file_path","JSON","parse","dataToUpload","undefined","requestBody","stringify","file","type","description","desc","tags","key","value","fileName","sdkConfig","getObjectFromCache","SDK_CONFIG","isTokenExpired","accessToken","callbackHandler","refresheAndUpdateToken","API_CALL","instance","post","headers","tenantID","filePathToUpload","processedFileExist","RNFS","exists","fileStat","stat","url","tenantBaseURL","fSize","size","uploadAsync","httpMethod","uploadType","FileSystemUploadType","MULTIPART","fieldName","parameters","exports"],"sources":["DocumentHttpClient.ts"],"sourcesContent":["import HttpClient from '../../../network/client';\nimport type { DocumentRow } from '../DBConfig';\nimport type { AxiosResponse } from 'axios';\nimport * as FileSystem from 'expo-file-system';\nimport { FileSystemUploadResult, FileSystemUploadType } from 'expo-file-system';\nimport DispatchSdkCache from '../../sdk/DispatchSdkCache';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport type { DispatchSDKConfig } from '../../../models/sdk';\nimport RNFS from 'react-native-fs';\nimport { stat } from 'react-native-fs';\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../../analytics/sentry/SentryAnalyticsUtils';\nimport { flattenObject, isTokenExpired } from '../../../utils/utils';\nimport callbackHandler from '../../../manager/sdk/callbacksHandler';\n\nconst cache = DispatchSdkCache.getInstance();\nconst cacheKeys = DispatchSdkCache.KEYS;\nexport default class DocumentHttpClient extends HttpClient {\n constructor(baseURL: string) {\n super(baseURL);\n }\n public async uploadDocument(document: DocumentRow): Promise<string | null> {\n if (document.base64 && document.data != null) {\n const response = await this.uploadBase64File(document);\n let info = '';\n if (\n response &&\n response.data !== null &&\n response.data.body !== null &&\n response.status !== 202\n ) {\n let body = response.data.body;\n info = body.substring(40);\n } else {\n info = String(response.status);\n }\n let extraParameters = { \n response: info,\n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_RESPONSE,\n screenName: 'uploadDocument:Upload_Base64_File_Response',\n extraParams: extraParameters,\n });\n\n Logger.getInstance().logEvent(\n 'uploadDocument:uploadBase64FileResponse',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n if (\n response &&\n response.data != null &&\n response.data.data != null &&\n response.data.data.id &&\n response.status === 202\n ) {\n return response.data.data.id;\n }else{\n return null;\n }\n } else {\n const uploadResponse = await this.uploadBinaryFile(document);\n let info = '';\n if (\n uploadResponse &&\n uploadResponse.body !== null &&\n uploadResponse.status !== 202\n ) {\n let body = uploadResponse.body;\n info = body.substring(40);\n } else {\n info = String(uploadResponse.status);\n }\n let extraParameters = { \n response: info,\n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_RESPONSE,\n screenName: 'uploadDocument:Upload_Binary_File_Response',\n extraParams: extraParameters,\n });\n Logger.getInstance().logEvent(\n 'uploadDocument:uploadBinaryFileResponse',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n if (\n uploadResponse != null &&\n uploadResponse.status === 202 &&\n uploadResponse.body != null\n ) {\n Logger.getInstance().logEvent(\n 'uploadDocument:DeletingFiles',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n FileSystem.deleteAsync(document.file_path).then().catch(); // WE DELETE FILE HERE\n FileSystem.deleteAsync(document.processed_file_path).then().catch(); // WE DELETE FILE HERE\n\n return JSON.parse(uploadResponse.body)?.data?.id;\n }else{\n return null;\n }\n }\n }\n\n // This function will upload processed base64 data (overlayed base64 data ) if exist otherwise will uplaod original base 64 data for pod signature.\n public async uploadBase64File(document: DocumentRow): Promise<AxiosResponse> {\n let dataToUpload = document.data;\n if (\n document.processed_file_path !== null &&\n document.processed_file_path !== undefined &&\n document.processed_file_path !== ''\n ) {\n dataToUpload = document.processed_file_path;\n }\n let requestBody = JSON.stringify({\n file: {\n type: 'FILE',\n data: dataToUpload,\n },\n description: document.desc,\n tags: [\n { key: 'dispatchId', value: document.dispatch_id },\n // { key: 'jobId', value: document.job_id },\n // { key: 'objectiveRef', value: document.objective_ref },\n { key: 'fileName', value: document.file_name },\n ],\n fileName: document.file_name,\n });\n let sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n if(isTokenExpired(sdkConfig.accessToken)){\n await callbackHandler.refresheAndUpdateToken();\n sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n }\n let extraParameters = { \n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_CALL,\n screenName: 'Upload_Base64_File_Request',\n extraParams: extraParameters,\n });\n Logger.getInstance().logEvent(\n 'uploadBase64FileRequest',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n \n return this.instance.post(\n `/api/folders/${document.fms_folder_id}/files`,\n requestBody,\n {\n headers: {\n 'accept': 'application/json',\n 'X-COREOS-REQUEST-ID': document.dispatch_id,\n 'X-COREOS-ACCESS': sdkConfig.accessToken ?? '',\n 'X-COREOS-TID': sdkConfig.tenantID ?? '',\n 'Content-Type': 'application/json',\n },\n }\n );\n }\n\n // This function will upload processed (overlayed file) if exist otherwise will uplaod original file for pod images.\n private async uploadBinaryFile(\n document: DocumentRow\n ): Promise<FileSystemUploadResult> {\n \n let sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n if(isTokenExpired(sdkConfig.accessToken)){\n await callbackHandler.refresheAndUpdateToken();\n sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n }\n\n let filePathToUpload = document.file_path;\n let processedFileExist = await RNFS.exists(document.processed_file_path);\n if (processedFileExist) {\n filePathToUpload = document.processed_file_path;\n }\n const fileStat = await RNFS.stat(filePathToUpload);\n\n const url =\n sdkConfig.tenantBaseURL + `/api/folders/${document.fms_folder_id}/files`;\n \n let extraParameters = { \n fSize: fileStat.size + \" b\",\n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_CALL,\n screenName: 'Upload_Binary_File_Request',\n extraParams: extraParameters,\n });\n Logger.getInstance().logEvent(\n 'uploadBinaryFileRequest',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n \n return FileSystem.uploadAsync(url, filePathToUpload, {\n headers: {\n 'accept': 'application/json',\n 'Content-Type': 'multipart/form-data',\n 'X-COREOS-REQUEST-ID': document.dispatch_id,\n 'X-COREOS-TID': sdkConfig.tenantID ?? '',\n 'X-COREOS-ACCESS': sdkConfig.accessToken ?? '',\n },\n httpMethod: 'POST',\n uploadType: FileSystemUploadType.MULTIPART,\n fieldName: 'file',\n parameters: {\n tags: JSON.stringify([\n { key: 'dispatchId', value: document.dispatch_id },\n // { key: 'jobId', value: document.job_id },\n // { key: 'objectiveRef', value: document.objective_ref },\n { key: 'fileName', value: document.file_name },\n ]),\n },\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -54,25 +54,6 @@ class SdkUtils {
54
54
  });
55
55
  }
56
56
 
57
- /**
58
- * Function to download apk file from a public URL
59
- * @param apkURL - URL where apk is hosted
60
- * @param version - expected version of apk (used for naming the file)
61
- * @param callback - callback for getting progress of download
62
- */
63
- static async downloadAPK(apkURL, version, callback) {
64
- const fileUri = FileSystem.cacheDirectory + `${version}.apk`;
65
- const fileInfo = await FileSystem.getInfoAsync(fileUri);
66
- const currentDate = new Date().toLocaleDateString();
67
- const fileDate = new Date(fileInfo.modificationTime ? fileInfo.modificationTime * 1000 : 0).toLocaleDateString();
68
- if (fileInfo.exists && currentDate === fileDate) {
69
- return fileInfo.uri;
70
- }
71
- const downloadResumable = FileSystem.createDownloadResumable(apkURL, FileSystem.cacheDirectory + `${version}.apk`, {}, callback);
72
- const downloadResult = await downloadResumable.downloadAsync();
73
- return downloadResult === null || downloadResult === void 0 ? void 0 : downloadResult.uri;
74
- }
75
-
76
57
  /**
77
58
  * Opens & Install an APK file
78
59
  * @param uri - source of apk file
@@ -1 +1 @@
1
- {"version":3,"names":["_remoteConfig","_interopRequireDefault","require","_Logger","_interopRequireWildcard","FileSystem","_reactNative","Location","_NetworkUtil","_BaseError","_ErrorCodes","_PermissionModule","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","DispatchSdkUtils","NativeModules","exports","DispatchUtilsInterface","SdkUtils","getRemoteConfig","expiration","Promise","resolve","reject","remoteConfig","fetch","setDefaults","cxRumDevApiKey","cxRumProdApiKey","isMandatoryUpdate","isMandatoryUpdateiOS","toggleInAppUpdateiOS","toggleInAppUpdate","then","fetchAndActivate","fetchedRemotely","config","getAll","Logger","getInstance","logEvent","LOG_TYPE","SDK_INFO","catch","err","error","downloadAPK","apkURL","version","callback","fileUri","cacheDirectory","fileInfo","getInfoAsync","currentDate","Date","toLocaleDateString","fileDate","modificationTime","exists","uri","downloadResumable","createDownloadResumable","downloadResult","downloadAsync","deleteApk","deleteAsync","openAPKFile","openAndInstallApk","openAppSettings","openSettings","message","SDK_ERROR","checkMandatory","Platform","OS","foregroundLocation","PermissionModule","requestForegroundPermissions","BaseError","ErrorCodes","LOCATION_OR_GPS_NOT_ENABLED","dateTimeCheck","isAutomaticDateTimeEnabled","SYSTEM_TIME_CHECK_FAILED","requestWakeLockPermissions","enableNetworkProviderAsync","locationServicesCheck","hasServicesEnabledAsync","bgLocation","requestBackgroundPermissions","internet","NetworkUtil","isAvailableAsync","INTERNET_NOT_ENABLED"],"sources":["SdkUtils.ts"],"sourcesContent":["import remoteConfig from '@react-native-firebase/remote-config';\nimport Logger, { LOG_TYPE } from './Logger';\nimport type { DownloadProgressData } from 'expo-file-system';\nimport * as FileSystem from 'expo-file-system';\nimport { NativeModules, Platform } from 'react-native';\nimport * as Location from 'expo-location';\nimport NetworkUtil from './NetworkUtil';\nimport { BaseError } from '../errors/BaseError';\nimport ErrorCodes from '../errors/ErrorCodes';\nimport PermissionModule from '../native/PermissionModule';\n\nconst { DispatchSdkUtils } = NativeModules;\n\ninterface DispatchUtilsInterface {\n openAndInstallApk(apkUri: String): Promise<boolean>;\n openSettings(): Promise<boolean>;\n showAndroidDialog(\n title: string,\n message: string,\n positiveText: string,\n negativeText: string | null,\n cancelable: boolean\n ): Promise<boolean>;\n isAutomaticDateTimeEnabled(): Promise<boolean>;\n}\n\nexport { DispatchSdkUtils as DispatchUtilsInterface };\n\nexport default class SdkUtils {\n /**\n * number of seconds to cache the firebase config\n * @param expiration\n */\n static async getRemoteConfig(expiration: number): Promise<any> {\n return new Promise(async (resolve, reject) => {\n try {\n await remoteConfig().fetch(expiration);\n remoteConfig()\n .setDefaults({\n cxRumDevApiKey: 'NA',\n cxRumProdApiKey: 'NA',\n isMandatoryUpdate: 'false',\n isMandatoryUpdateiOS: 'false',\n toggleInAppUpdateiOS: 'false',\n toggleInAppUpdate: 'false',\n })\n .then(() => remoteConfig().fetchAndActivate())\n .then((fetchedRemotely) => {\n let config = remoteConfig().getAll();\n if (fetchedRemotely) {\n Logger.getInstance().logEvent(\n 'Remote Config',\n 'Configs were retrieved from the backend and activated.',\n LOG_TYPE.SDK_INFO\n );\n resolve(config);\n } else {\n Logger.getInstance().logEvent(\n 'Remote Config',\n 'No configs were fetched from the backend, and the local configs were already activated',\n LOG_TYPE.SDK_INFO\n );\n resolve(config);\n }\n })\n .catch((err) => {\n reject(err);\n });\n } catch (error: any) {\n reject(error);\n }\n });\n }\n\n /**\n * Function to download apk file from a public URL\n * @param apkURL - URL where apk is hosted\n * @param version - expected version of apk (used for naming the file)\n * @param callback - callback for getting progress of download\n */\n public static async downloadAPK(\n apkURL: string,\n version: string,\n callback: (progress: DownloadProgressData) => any\n ): Promise<string | undefined> {\n const fileUri = FileSystem.cacheDirectory + `${version}.apk`;\n const fileInfo = await FileSystem.getInfoAsync(fileUri);\n const currentDate = new Date().toLocaleDateString();\n const fileDate = new Date(\n fileInfo.modificationTime ? fileInfo.modificationTime * 1000 : 0\n ).toLocaleDateString();\n if (fileInfo.exists && currentDate === fileDate) {\n return fileInfo.uri;\n }\n const downloadResumable = FileSystem.createDownloadResumable(\n apkURL,\n FileSystem.cacheDirectory + `${version}.apk`,\n {},\n callback\n );\n const downloadResult = await downloadResumable.downloadAsync();\n return downloadResult?.uri;\n }\n\n /**\n * Opens & Install an APK file\n * @param uri - source of apk file\n */\n public static async deleteApk(version: string) {\n await FileSystem.deleteAsync(FileSystem.cacheDirectory + `${version}.apk`);\n }\n\n public static async openAPKFile(uri: string) {\n return await (DispatchSdkUtils as DispatchUtilsInterface).openAndInstallApk(\n uri\n );\n }\n\n public static openAppSettings() {\n (DispatchSdkUtils as DispatchUtilsInterface)\n .openSettings()\n .then()\n .catch((error) => {\n Logger.getInstance().logEvent(\n 'Intent error',\n error.message,\n LOG_TYPE.SDK_ERROR\n );\n });\n }\n\n public static async checkMandatory() {\n if (Platform.OS === 'ios') {\n const foregroundLocation = await PermissionModule.requestForegroundPermissions();\n if (!(foregroundLocation)) {\n throw new BaseError(\n ErrorCodes.LOCATION_OR_GPS_NOT_ENABLED,\n 'Location or GPS not enabled'\n );\n }\n return;\n }\n const dateTimeCheck = await (\n DispatchSdkUtils as DispatchUtilsInterface\n ).isAutomaticDateTimeEnabled();\n if (!dateTimeCheck) {\n throw new BaseError(\n ErrorCodes.SYSTEM_TIME_CHECK_FAILED,\n 'Automatic date/time not enabled!'\n );\n }\n if (Platform.OS === 'android') {\n await PermissionModule.requestWakeLockPermissions();\n await Location.enableNetworkProviderAsync();\n let locationServicesCheck = await Location.hasServicesEnabledAsync();\n const foregroundLocation = await PermissionModule.requestForegroundPermissions();\n // await Location.requestForegroundPermissionsAsync(); //permission code using expo module\n const bgLocation = await PermissionModule.requestBackgroundPermissions();\n // await Location.requestBackgroundPermissionsAsync(); //permission code using expo module\n if (!(locationServicesCheck && foregroundLocation && bgLocation)) {\n throw new BaseError(\n ErrorCodes.LOCATION_OR_GPS_NOT_ENABLED,\n 'Location or GPS not enabled'\n );\n }\n }\n let internet = await NetworkUtil.isAvailableAsync();\n if (!internet)\n throw new BaseError(\n ErrorCodes.INTERNET_NOT_ENABLED,\n 'Internet is disabled! Please enable internet and try again '\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_remoteConfig","_interopRequireDefault","require","_Logger","_interopRequireWildcard","FileSystem","_reactNative","Location","_NetworkUtil","_BaseError","_ErrorCodes","_PermissionModule","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","DispatchSdkUtils","NativeModules","exports","DispatchUtilsInterface","SdkUtils","getRemoteConfig","expiration","Promise","resolve","reject","remoteConfig","fetch","setDefaults","cxRumDevApiKey","cxRumProdApiKey","isMandatoryUpdate","isMandatoryUpdateiOS","toggleInAppUpdateiOS","toggleInAppUpdate","then","fetchAndActivate","fetchedRemotely","config","getAll","Logger","getInstance","logEvent","LOG_TYPE","SDK_INFO","catch","err","error","deleteApk","version","deleteAsync","cacheDirectory","openAPKFile","uri","openAndInstallApk","openAppSettings","openSettings","message","SDK_ERROR","checkMandatory","Platform","OS","foregroundLocation","PermissionModule","requestForegroundPermissions","BaseError","ErrorCodes","LOCATION_OR_GPS_NOT_ENABLED","dateTimeCheck","isAutomaticDateTimeEnabled","SYSTEM_TIME_CHECK_FAILED","requestWakeLockPermissions","enableNetworkProviderAsync","locationServicesCheck","hasServicesEnabledAsync","bgLocation","requestBackgroundPermissions","internet","NetworkUtil","isAvailableAsync","INTERNET_NOT_ENABLED"],"sources":["SdkUtils.ts"],"sourcesContent":["import remoteConfig from '@react-native-firebase/remote-config';\nimport Logger, { LOG_TYPE } from './Logger';\nimport type { DownloadProgressData } from 'expo-file-system';\nimport * as FileSystem from 'expo-file-system';\nimport { NativeModules, Platform } from 'react-native';\nimport * as Location from 'expo-location';\nimport NetworkUtil from './NetworkUtil';\nimport { BaseError } from '../errors/BaseError';\nimport ErrorCodes from '../errors/ErrorCodes';\nimport PermissionModule from '../native/PermissionModule';\n\nconst { DispatchSdkUtils } = NativeModules;\n\ninterface DispatchUtilsInterface {\n openAndInstallApk(apkUri: String): Promise<boolean>;\n openSettings(): Promise<boolean>;\n showAndroidDialog(\n title: string,\n message: string,\n positiveText: string,\n negativeText: string | null,\n cancelable: boolean\n ): Promise<boolean>;\n isAutomaticDateTimeEnabled(): Promise<boolean>;\n}\n\nexport { DispatchSdkUtils as DispatchUtilsInterface };\n\nexport default class SdkUtils {\n /**\n * number of seconds to cache the firebase config\n * @param expiration\n */\n static async getRemoteConfig(expiration: number): Promise<any> {\n return new Promise(async (resolve, reject) => {\n try {\n await remoteConfig().fetch(expiration);\n remoteConfig()\n .setDefaults({\n cxRumDevApiKey: 'NA',\n cxRumProdApiKey: 'NA',\n isMandatoryUpdate: 'false',\n isMandatoryUpdateiOS: 'false',\n toggleInAppUpdateiOS: 'false',\n toggleInAppUpdate: 'false',\n })\n .then(() => remoteConfig().fetchAndActivate())\n .then((fetchedRemotely) => {\n let config = remoteConfig().getAll();\n if (fetchedRemotely) {\n Logger.getInstance().logEvent(\n 'Remote Config',\n 'Configs were retrieved from the backend and activated.',\n LOG_TYPE.SDK_INFO\n );\n resolve(config);\n } else {\n Logger.getInstance().logEvent(\n 'Remote Config',\n 'No configs were fetched from the backend, and the local configs were already activated',\n LOG_TYPE.SDK_INFO\n );\n resolve(config);\n }\n })\n .catch((err) => {\n reject(err);\n });\n } catch (error: any) {\n reject(error);\n }\n });\n }\n\n /**\n * Opens & Install an APK file\n * @param uri - source of apk file\n */\n public static async deleteApk(version: string) {\n await FileSystem.deleteAsync(FileSystem.cacheDirectory + `${version}.apk`);\n }\n\n public static async openAPKFile(uri: string) {\n return await (DispatchSdkUtils as DispatchUtilsInterface).openAndInstallApk(\n uri\n );\n }\n\n public static openAppSettings() {\n (DispatchSdkUtils as DispatchUtilsInterface)\n .openSettings()\n .then()\n .catch((error) => {\n Logger.getInstance().logEvent(\n 'Intent error',\n error.message,\n LOG_TYPE.SDK_ERROR\n );\n });\n }\n\n public static async checkMandatory() {\n if (Platform.OS === 'ios') {\n const foregroundLocation = await PermissionModule.requestForegroundPermissions();\n if (!(foregroundLocation)) {\n throw new BaseError(\n ErrorCodes.LOCATION_OR_GPS_NOT_ENABLED,\n 'Location or GPS not enabled'\n );\n }\n return;\n }\n const dateTimeCheck = await (\n DispatchSdkUtils as DispatchUtilsInterface\n ).isAutomaticDateTimeEnabled();\n if (!dateTimeCheck) {\n throw new BaseError(\n ErrorCodes.SYSTEM_TIME_CHECK_FAILED,\n 'Automatic date/time not enabled!'\n );\n }\n if (Platform.OS === 'android') {\n await PermissionModule.requestWakeLockPermissions();\n await Location.enableNetworkProviderAsync();\n let locationServicesCheck = await Location.hasServicesEnabledAsync();\n const foregroundLocation = await PermissionModule.requestForegroundPermissions();\n // await Location.requestForegroundPermissionsAsync(); //permission code using expo module\n const bgLocation = await PermissionModule.requestBackgroundPermissions();\n // await Location.requestBackgroundPermissionsAsync(); //permission code using expo module\n if (!(locationServicesCheck && foregroundLocation && bgLocation)) {\n throw new BaseError(\n ErrorCodes.LOCATION_OR_GPS_NOT_ENABLED,\n 'Location or GPS not enabled'\n );\n }\n }\n let internet = await NetworkUtil.isAvailableAsync();\n if (!internet)\n throw new BaseError(\n ErrorCodes.INTERNET_NOT_ENABLED,\n 'Internet is disabled! Please enable internet and try again '\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -151,11 +151,8 @@ const FormGenerator = props => {
151
151
  }
152
152
  }, /*#__PURE__*/React.createElement(Text, null))))), /*#__PURE__*/React.createElement(View, {
153
153
  style: styles.bottomView
154
- }, /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(Button, {
155
- style: [CommonStyles.nextButton, {
156
- width: 165,
157
- marginStart: 10
158
- }],
154
+ }, /*#__PURE__*/React.createElement(Button, {
155
+ style: [styles.mainBtnStyles, CommonStyles.nextButton],
159
156
  labelStyle: CommonStyles.nextButtonLabel,
160
157
  mode: 'contained',
161
158
  onPress: () => {
@@ -172,11 +169,8 @@ const FormGenerator = props => {
172
169
  cta: cta
173
170
  });
174
171
  }
175
- }, "Proceed")), /*#__PURE__*/React.createElement(View, null, props.isSelfLoop == false && /*#__PURE__*/React.createElement(Button, {
176
- style: [CommonStyles.cancelButton, {
177
- width: 165,
178
- marginEnd: 10
179
- }],
172
+ }, "Proceed"), props.isSelfLoop == false && /*#__PURE__*/React.createElement(Button, {
173
+ style: [styles.mainBtnStyles, CommonStyles.cancelButton],
180
174
  labelStyle: CommonStyles.cancelButtonLabel,
181
175
  mode: 'outlined',
182
176
  onPress: () => {
@@ -193,7 +187,7 @@ const FormGenerator = props => {
193
187
  cta: cta
194
188
  });
195
189
  }
196
- }, "Cancel")))));
190
+ }, "Cancel"))));
197
191
  };
198
192
  export default FormGenerator;
199
193
  const styles = StyleSheet.create({
@@ -212,6 +206,16 @@ const styles = StyleSheet.create({
212
206
  flexDirection: 'row-reverse',
213
207
  justifyContent: 'space-evenly',
214
208
  padding: 16,
209
+ backgroundColor: 'white',
210
+ gap: 16
211
+ },
212
+ mainBtnStyles: {
213
+ display: 'flex',
214
+ flexDirection: 'row',
215
+ justifyContent: 'center',
216
+ alignItems: 'center',
217
+ flex: 1,
218
+ width: '100%',
215
219
  backgroundColor: 'white'
216
220
  }
217
221
  });
@@ -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","ScreenNameSdkConstants","SentryEventNameSdkConstants","SeverityLevelValue","fireEventWithScreenName","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","cta","severityLevel","LOG","eventName","BUTTON_CLICKED","screenName","FORM_ET_SCREEN","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';\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../../analytics/sentry/SentryAnalyticsUtils';\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 const cta = 'Back Arrow';\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.FORM_ET_SCREEN, cta: cta }); \n\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 const cta = 'Proceed';\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.FORM_ET_SCREEN, cta: cta }); \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 const cta = 'Cancel';\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.FORM_ET_SCREEN, cta: cta }); \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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","ignoreList":[]}
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","ScreenNameSdkConstants","SentryEventNameSdkConstants","SeverityLevelValue","fireEventWithScreenName","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","cta","severityLevel","LOG","eventName","BUTTON_CLICKED","screenName","FORM_ET_SCREEN","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","mainBtnStyles","nextButton","labelStyle","nextButtonLabel","mode","current","submit","isSelfLoop","cancelButton","cancelButtonLabel","create","marginTop","marginBottom","fontStyle","fontSize","lineHeight","letterSpacing","alignItems","flexDirection","justifyContent","backgroundColor","gap","display","width"],"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';\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../../analytics/sentry/SentryAnalyticsUtils';\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 const cta = 'Back Arrow';\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.FORM_ET_SCREEN, cta: cta }); \n\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 <Button\n style={[styles.mainBtnStyles, CommonStyles.nextButton]}\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 const cta = 'Proceed';\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.FORM_ET_SCREEN, cta: cta }); \n \n }}\n >\n Proceed\n </Button>\n {(props.isSelfLoop == false) && <Button\n style={[styles.mainBtnStyles, CommonStyles.cancelButton]}\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 const cta = 'Cancel';\n fireEventWithScreenName({ severityLevel: SeverityLevelValue.LOG, eventName: SentryEventNameSdkConstants.BUTTON_CLICKED, screenName: ScreenNameSdkConstants.FORM_ET_SCREEN, cta: cta }); \n \n }}\n >\n Cancel\n </Button>\n }\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 gap: 16,\n },\n mainBtnStyles: {\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n flex: 1,\n width: '100%',\n backgroundColor: 'white',\n },\n});\n"],"mappings":"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","ignoreList":[]}
@@ -79,7 +79,10 @@ export default class AppSyncManager {
79
79
  * Call this method from index file of the app
80
80
  */
81
81
  static registerSyncTask() {
82
- AppRegistry.registerHeadlessTask('SYNC_MANAGER', () => AppSyncManager.startAppSyncManager);
82
+ // We will not register headless js task for api level 31 and above
83
+ if (Platform.OS == 'android' && Platform.Version > 30) {
84
+ AppRegistry.registerHeadlessTask('SYNC_MANAGER', () => AppSyncManager.startAppSyncManager);
85
+ }
83
86
  }
84
87
  async getAllEvents(dispatchID) {
85
88
  return EventsSyncManager.getInstance().getAllEvents(dispatchID);
@@ -1 +1 @@
1
- {"version":3,"names":["DocumentSyncManager","EventsSyncManager","NetworkUtil","Logger","LOG_TYPE","NativeSyncManager","DispatchSdkCache","AppRegistry","Platform","BaseError","ErrorCodes","DEFAULT_INTERVAL","DEFAULT_NOTIFICATION_DESCRIPTION","DEFAULT_NOTIFICATION_TITLE","MAX_RETRY_COUNT","AppSyncManager","constructor","tenantBaseURL","retryCount","_defineProperty","getInstance","init","initSyncManager","startSyncing","forceSync","_syncType","isAvailableAsync","forceDocumentSync","startSync","startDocumentSync","logEvent","SDK_INFO","isAppSyncPending","isSyncPending","initAppSync","syncRetryCount","instance","AppSyncNotInitialized","startAppSyncManager","stopSyncManager","sdkConfig","getObjectFromCache","KEYS","SDK_CONFIG","startSDKSyncManager","SDK_ERROR","isSyncActive","error","message","SDK_WARNING","registerSyncTask","registerHeadlessTask","getAllEvents","dispatchID","getAllDocuments","config","OS","isForceStartEnabled","_config$notificationC","_config$notificationC2","_config$notificationC3","retries","startSyncManager","notificationConfig","interval","title","description","then","catch","pushToQueue","pushData","insertBulkEvent","JSON","stringify","errorMessage","_AppSyncManager"],"sources":["AppSyncManager.ts"],"sourcesContent":["import DocumentSyncManager from './document/DocumentSyncManager';\nimport EventsSyncManager from './events/EventsSyncManager';\nimport NetworkUtil from '../../utils/NetworkUtil';\nimport Logger, { LOG_TYPE } from '../../utils/Logger';\nimport NativeSyncManager from './NativeSyncManager';\nimport DispatchSdkCache from '../sdk/DispatchSdkCache';\nimport { AppRegistry, Platform } from 'react-native';\nimport { BaseError } from '../../errors/BaseError';\nimport ErrorCodes from '../../errors/ErrorCodes';\nimport type { SdkSyncType } from '../../models/DispatchModels';\nimport type { BulkEvent, DocumentRow, EventRow } from './DBConfig';\nimport {\n DEFAULT_INTERVAL,\n DEFAULT_NOTIFICATION_DESCRIPTION,\n DEFAULT_NOTIFICATION_TITLE,\n} from '../../constants/constants';\nimport type { DispatchSDKConfig } from '../../models/sdk';\nimport { MAX_RETRY_COUNT } from './constants';\n\nexport default class AppSyncManager {\n private constructor(tenantBaseURL: string, retryCount: number) {\n DocumentSyncManager.getInstance().init(tenantBaseURL, retryCount);\n EventsSyncManager.getInstance().initSyncManager(tenantBaseURL, retryCount);\n }\n private static instance: AppSyncManager;\n public isSyncActive = false;\n public isForceStartEnabled = true;\n\n /**\n *\n * @param forceSync - true/false - if true resets the retry count key and start the sync\n * @param syncType\n */\n public async startSyncing(forceSync: boolean, _syncType?: SdkSyncType) {\n if (await NetworkUtil.isAvailableAsync()) {\n if (forceSync) {\n EventsSyncManager.getInstance().forceSync();\n DocumentSyncManager.getInstance().forceDocumentSync();\n } else {\n EventsSyncManager.getInstance().startSync();\n DocumentSyncManager.getInstance().startDocumentSync();\n }\n } else {\n Logger.getInstance().logEvent(\n 'startSync',\n 'No network',\n LOG_TYPE.SDK_INFO\n );\n }\n }\n\n public async isAppSyncPending(): Promise<boolean> {\n return (\n (await EventsSyncManager.getInstance().isSyncPending()) ||\n (await DocumentSyncManager.getInstance().isSyncPending())\n );\n }\n public static initAppSync(\n tenantBaseURL: string,\n syncRetryCount: number\n ): AppSyncManager {\n // removing this check to allow tenant change in app due to this manager instance did't re-init and event and docs didn't sync\n // if (!AppSyncManager.instance) {\n Logger.getInstance().logEvent(\n 'initAppSync',\n 'CREATING NEW INSTANCE',\n LOG_TYPE.SDK_INFO\n );\n AppSyncManager.instance = new AppSyncManager(\n tenantBaseURL,\n syncRetryCount\n );\n // }\n return AppSyncManager.instance;\n }\n public static getInstance(): AppSyncManager {\n if (!AppSyncManager.instance)\n throw new BaseError(\n ErrorCodes.AppSyncNotInitialized,\n 'SDK sync Manager is not initialized'\n );\n else return AppSyncManager.instance;\n }\n\n public static async startAppSyncManager() {\n try {\n if (!AppSyncManager.instance) {\n NativeSyncManager.stopSyncManager();\n let sdkConfig =\n (await DispatchSdkCache.getInstance().getObjectFromCache(\n DispatchSdkCache.KEYS.SDK_CONFIG\n )) as DispatchSDKConfig;\n const retryCount = sdkConfig.syncRetryCount ?? MAX_RETRY_COUNT;\n if (sdkConfig.tenantBaseURL != null && retryCount != null) {\n AppSyncManager.initAppSync(sdkConfig.tenantBaseURL, +retryCount);\n AppSyncManager.getInstance().startSDKSyncManager();\n } else {\n Logger.getInstance().logEvent(\n 'SYNC_MANAGER_ASM',\n 'TENANT BASE URL IS NULL',\n LOG_TYPE.SDK_ERROR\n );\n }\n } else if (await AppSyncManager.instance.isAppSyncPending()) {\n AppSyncManager.instance.startSyncing(false);\n } else {\n NativeSyncManager.stopSyncManager();\n AppSyncManager.getInstance().isSyncActive = false;\n }\n } catch (error: any) {\n Logger.getInstance().logEvent(\n 'startAppSyncManager',\n `Unable to start App Sync Manager ${error.message}`,\n LOG_TYPE.SDK_WARNING\n );\n }\n }\n\n /**\n * Call this method from index file of the app\n */\n public static registerSyncTask() {\n AppRegistry.registerHeadlessTask(\n 'SYNC_MANAGER',\n () => AppSyncManager.startAppSyncManager\n );\n }\n\n public async getAllEvents(dispatchID?: string): Promise<EventRow[]> {\n return EventsSyncManager.getInstance().getAllEvents(dispatchID);\n }\n public async getAllDocuments(dispatchID?: string): Promise<DocumentRow[]> {\n return DocumentSyncManager.getInstance().getAllDocuments(dispatchID);\n }\n public startSDKSyncManager() {\n (async () => {\n const config = (await DispatchSdkCache.getInstance().getObjectFromCache(\n DispatchSdkCache.KEYS.SDK_CONFIG\n )) as DispatchSDKConfig;\n if (Platform.OS === 'android') {\n if (!this.isSyncActive && this.isForceStartEnabled) {\n this.isSyncActive = true;\n\n /**\n * Reset Retry Counter\n */\n EventsSyncManager.getInstance().retries = 0;\n DocumentSyncManager.getInstance().retries = 0;\n NativeSyncManager.startSyncManager(\n config?.notificationConfig?.interval ?? DEFAULT_INTERVAL,\n config?.notificationConfig?.title ?? DEFAULT_NOTIFICATION_TITLE,\n config?.notificationConfig?.description ??\n DEFAULT_NOTIFICATION_DESCRIPTION\n );\n } else {\n Logger.getInstance().logEvent(\n 'startNativeSyncManager',\n 'ANDROID SYNC SERVICE ALREADY RUNNING',\n LOG_TYPE.SDK_INFO\n );\n }\n } else {\n /**\n * For iOS we have to start Normal Foreground sync\n */\n this.startSyncing(true).then().catch();\n }\n })();\n }\n\n // NEW CODE\n public async pushToQueue(pushData: BulkEvent): Promise<boolean> {\n try {\n await EventsSyncManager.getInstance().insertBulkEvent(pushData);\n\n AppSyncManager.getInstance().startSDKSyncManager();\n return true;\n } catch (error: any) {\n Logger.getInstance().logEvent(\n 'pushToQueue ',\n JSON.stringify({\n errorMessage: error.message,\n }),\n LOG_TYPE.SDK_ERROR\n );\n return false;\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["DocumentSyncManager","EventsSyncManager","NetworkUtil","Logger","LOG_TYPE","NativeSyncManager","DispatchSdkCache","AppRegistry","Platform","BaseError","ErrorCodes","DEFAULT_INTERVAL","DEFAULT_NOTIFICATION_DESCRIPTION","DEFAULT_NOTIFICATION_TITLE","MAX_RETRY_COUNT","AppSyncManager","constructor","tenantBaseURL","retryCount","_defineProperty","getInstance","init","initSyncManager","startSyncing","forceSync","_syncType","isAvailableAsync","forceDocumentSync","startSync","startDocumentSync","logEvent","SDK_INFO","isAppSyncPending","isSyncPending","initAppSync","syncRetryCount","instance","AppSyncNotInitialized","startAppSyncManager","stopSyncManager","sdkConfig","getObjectFromCache","KEYS","SDK_CONFIG","startSDKSyncManager","SDK_ERROR","isSyncActive","error","message","SDK_WARNING","registerSyncTask","OS","Version","registerHeadlessTask","getAllEvents","dispatchID","getAllDocuments","config","isForceStartEnabled","_config$notificationC","_config$notificationC2","_config$notificationC3","retries","startSyncManager","notificationConfig","interval","title","description","then","catch","pushToQueue","pushData","insertBulkEvent","JSON","stringify","errorMessage","_AppSyncManager"],"sources":["AppSyncManager.ts"],"sourcesContent":["import DocumentSyncManager from './document/DocumentSyncManager';\nimport EventsSyncManager from './events/EventsSyncManager';\nimport NetworkUtil from '../../utils/NetworkUtil';\nimport Logger, { LOG_TYPE } from '../../utils/Logger';\nimport NativeSyncManager from './NativeSyncManager';\nimport DispatchSdkCache from '../sdk/DispatchSdkCache';\nimport { AppRegistry, Platform } from 'react-native';\nimport { BaseError } from '../../errors/BaseError';\nimport ErrorCodes from '../../errors/ErrorCodes';\nimport type { SdkSyncType } from '../../models/DispatchModels';\nimport type { BulkEvent, DocumentRow, EventRow } from './DBConfig';\nimport {\n DEFAULT_INTERVAL,\n DEFAULT_NOTIFICATION_DESCRIPTION,\n DEFAULT_NOTIFICATION_TITLE,\n} from '../../constants/constants';\nimport type { DispatchSDKConfig } from '../../models/sdk';\nimport { MAX_RETRY_COUNT } from './constants';\n\nexport default class AppSyncManager {\n private constructor(tenantBaseURL: string, retryCount: number) {\n DocumentSyncManager.getInstance().init(tenantBaseURL, retryCount);\n EventsSyncManager.getInstance().initSyncManager(tenantBaseURL, retryCount);\n }\n private static instance: AppSyncManager;\n public isSyncActive = false;\n public isForceStartEnabled = true;\n\n /**\n *\n * @param forceSync - true/false - if true resets the retry count key and start the sync\n * @param syncType\n */\n public async startSyncing(forceSync: boolean, _syncType?: SdkSyncType) {\n if (await NetworkUtil.isAvailableAsync()) {\n if (forceSync) {\n EventsSyncManager.getInstance().forceSync();\n DocumentSyncManager.getInstance().forceDocumentSync();\n } else {\n EventsSyncManager.getInstance().startSync();\n DocumentSyncManager.getInstance().startDocumentSync();\n }\n } else {\n Logger.getInstance().logEvent(\n 'startSync',\n 'No network',\n LOG_TYPE.SDK_INFO\n );\n }\n }\n\n public async isAppSyncPending(): Promise<boolean> {\n return (\n (await EventsSyncManager.getInstance().isSyncPending()) ||\n (await DocumentSyncManager.getInstance().isSyncPending())\n );\n }\n public static initAppSync(\n tenantBaseURL: string,\n syncRetryCount: number\n ): AppSyncManager {\n // removing this check to allow tenant change in app due to this manager instance did't re-init and event and docs didn't sync\n // if (!AppSyncManager.instance) {\n Logger.getInstance().logEvent(\n 'initAppSync',\n 'CREATING NEW INSTANCE',\n LOG_TYPE.SDK_INFO\n );\n AppSyncManager.instance = new AppSyncManager(\n tenantBaseURL,\n syncRetryCount\n );\n // }\n return AppSyncManager.instance;\n }\n public static getInstance(): AppSyncManager {\n if (!AppSyncManager.instance)\n throw new BaseError(\n ErrorCodes.AppSyncNotInitialized,\n 'SDK sync Manager is not initialized'\n );\n else return AppSyncManager.instance;\n }\n\n public static async startAppSyncManager() {\n try {\n if (!AppSyncManager.instance) {\n NativeSyncManager.stopSyncManager();\n let sdkConfig =\n (await DispatchSdkCache.getInstance().getObjectFromCache(\n DispatchSdkCache.KEYS.SDK_CONFIG\n )) as DispatchSDKConfig;\n const retryCount = sdkConfig.syncRetryCount ?? MAX_RETRY_COUNT;\n if (sdkConfig.tenantBaseURL != null && retryCount != null) {\n AppSyncManager.initAppSync(sdkConfig.tenantBaseURL, +retryCount);\n AppSyncManager.getInstance().startSDKSyncManager();\n } else {\n Logger.getInstance().logEvent(\n 'SYNC_MANAGER_ASM',\n 'TENANT BASE URL IS NULL',\n LOG_TYPE.SDK_ERROR\n );\n }\n } else if (await AppSyncManager.instance.isAppSyncPending()) {\n AppSyncManager.instance.startSyncing(false);\n } else {\n NativeSyncManager.stopSyncManager();\n AppSyncManager.getInstance().isSyncActive = false;\n }\n } catch (error: any) {\n Logger.getInstance().logEvent(\n 'startAppSyncManager',\n `Unable to start App Sync Manager ${error.message}`,\n LOG_TYPE.SDK_WARNING\n );\n }\n }\n\n /**\n * Call this method from index file of the app\n */\n public static registerSyncTask() {\n // We will not register headless js task for api level 31 and above\n if (Platform.OS == 'android' && Platform.Version > 30) {\n AppRegistry.registerHeadlessTask(\n 'SYNC_MANAGER',\n () => AppSyncManager.startAppSyncManager\n );\n }\n }\n\n public async getAllEvents(dispatchID?: string): Promise<EventRow[]> {\n return EventsSyncManager.getInstance().getAllEvents(dispatchID);\n }\n public async getAllDocuments(dispatchID?: string): Promise<DocumentRow[]> {\n return DocumentSyncManager.getInstance().getAllDocuments(dispatchID);\n }\n public startSDKSyncManager() {\n (async () => {\n const config = (await DispatchSdkCache.getInstance().getObjectFromCache(\n DispatchSdkCache.KEYS.SDK_CONFIG\n )) as DispatchSDKConfig;\n if (Platform.OS === 'android') {\n if (!this.isSyncActive && this.isForceStartEnabled) {\n this.isSyncActive = true;\n\n /**\n * Reset Retry Counter\n */\n EventsSyncManager.getInstance().retries = 0;\n DocumentSyncManager.getInstance().retries = 0;\n NativeSyncManager.startSyncManager(\n config?.notificationConfig?.interval ?? DEFAULT_INTERVAL,\n config?.notificationConfig?.title ?? DEFAULT_NOTIFICATION_TITLE,\n config?.notificationConfig?.description ??\n DEFAULT_NOTIFICATION_DESCRIPTION\n );\n } else {\n Logger.getInstance().logEvent(\n 'startNativeSyncManager',\n 'ANDROID SYNC SERVICE ALREADY RUNNING',\n LOG_TYPE.SDK_INFO\n );\n }\n } else {\n /**\n * For iOS we have to start Normal Foreground sync\n */\n this.startSyncing(true).then().catch();\n }\n })();\n }\n\n // NEW CODE\n public async pushToQueue(pushData: BulkEvent): Promise<boolean> {\n try {\n await EventsSyncManager.getInstance().insertBulkEvent(pushData);\n\n AppSyncManager.getInstance().startSDKSyncManager();\n return true;\n } catch (error: any) {\n Logger.getInstance().logEvent(\n 'pushToQueue ',\n JSON.stringify({\n errorMessage: error.message,\n }),\n LOG_TYPE.SDK_ERROR\n );\n return false;\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -141,8 +141,10 @@ export default class DocumentHttpClient extends HttpClient {
141
141
  if (processedFileExist) {
142
142
  filePathToUpload = document.processed_file_path;
143
143
  }
144
+ const fileStat = await RNFS.stat(filePathToUpload);
144
145
  const url = sdkConfig.tenantBaseURL + `/api/folders/${document.fms_folder_id}/files`;
145
146
  let extraParameters = {
147
+ fSize: fileStat.size + " b",
146
148
  fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4) : '',
147
149
  dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4) : '',
148
150
  dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9) : ''
@@ -1 +1 @@
1
- {"version":3,"names":["HttpClient","FileSystem","FileSystemUploadType","DispatchSdkCache","Logger","LOG_TYPE","RNFS","SentryEventNameSdkConstants","SeverityLevelValue","fireEventWithScreenName","flattenObject","isTokenExpired","callbackHandler","cache","getInstance","cacheKeys","KEYS","DocumentHttpClient","constructor","baseURL","uploadDocument","document","base64","data","response","uploadBase64File","info","body","status","substring","String","extraParameters","fName","file_name","length","dName","fms_folder_id","dispId","dispatch_id","severityLevel","LOG","eventName","API_RESPONSE","screenName","extraParams","logEvent","SDK_ERROR","id","uploadResponse","uploadBinaryFile","_JSON$parse","deleteAsync","file_path","then","catch","processed_file_path","JSON","parse","dataToUpload","undefined","requestBody","stringify","file","type","description","desc","tags","key","value","fileName","sdkConfig","getObjectFromCache","SDK_CONFIG","accessToken","refresheAndUpdateToken","API_CALL","instance","post","headers","tenantID","filePathToUpload","processedFileExist","exists","url","tenantBaseURL","uploadAsync","httpMethod","uploadType","MULTIPART","fieldName","parameters"],"sources":["DocumentHttpClient.ts"],"sourcesContent":["import HttpClient from '../../../network/client';\nimport type { DocumentRow } from '../DBConfig';\nimport type { AxiosResponse } from 'axios';\nimport * as FileSystem from 'expo-file-system';\nimport { FileSystemUploadResult, FileSystemUploadType } from 'expo-file-system';\nimport DispatchSdkCache from '../../sdk/DispatchSdkCache';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport type { DispatchSDKConfig } from '../../../models/sdk';\nimport RNFS from 'react-native-fs';\nimport { stat } from 'react-native-fs';\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../../analytics/sentry/SentryAnalyticsUtils';\nimport { flattenObject, isTokenExpired } from '../../../utils/utils';\nimport callbackHandler from '../../../manager/sdk/callbacksHandler';\n\nconst cache = DispatchSdkCache.getInstance();\nconst cacheKeys = DispatchSdkCache.KEYS;\nexport default class DocumentHttpClient extends HttpClient {\n constructor(baseURL: string) {\n super(baseURL);\n }\n public async uploadDocument(document: DocumentRow): Promise<string | null> {\n if (document.base64 && document.data != null) {\n const response = await this.uploadBase64File(document);\n let info = '';\n if (\n response &&\n response.data !== null &&\n response.data.body !== null &&\n response.status !== 202\n ) {\n let body = response.data.body;\n info = body.substring(40);\n } else {\n info = String(response.status);\n }\n let extraParameters = { \n response: info,\n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_RESPONSE,\n screenName: 'uploadDocument:Upload_Base64_File_Response',\n extraParams: extraParameters,\n });\n\n Logger.getInstance().logEvent(\n 'uploadDocument:uploadBase64FileResponse',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n if (\n response &&\n response.data != null &&\n response.data.data != null &&\n response.data.data.id &&\n response.status === 202\n ) {\n return response.data.data.id;\n }else{\n return null;\n }\n } else {\n const uploadResponse = await this.uploadBinaryFile(document);\n let info = '';\n if (\n uploadResponse &&\n uploadResponse.body !== null &&\n uploadResponse.status !== 202\n ) {\n let body = uploadResponse.body;\n info = body.substring(40);\n } else {\n info = String(uploadResponse.status);\n }\n let extraParameters = { \n response: info,\n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_RESPONSE,\n screenName: 'uploadDocument:Upload_Binary_File_Response',\n extraParams: extraParameters,\n });\n Logger.getInstance().logEvent(\n 'uploadDocument:uploadBinaryFileResponse',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n if (\n uploadResponse != null &&\n uploadResponse.status === 202 &&\n uploadResponse.body != null\n ) {\n Logger.getInstance().logEvent(\n 'uploadDocument:DeletingFiles',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n FileSystem.deleteAsync(document.file_path).then().catch(); // WE DELETE FILE HERE\n FileSystem.deleteAsync(document.processed_file_path).then().catch(); // WE DELETE FILE HERE\n\n return JSON.parse(uploadResponse.body)?.data?.id;\n }else{\n return null;\n }\n }\n }\n\n // This function will upload processed base64 data (overlayed base64 data ) if exist otherwise will uplaod original base 64 data for pod signature.\n public async uploadBase64File(document: DocumentRow): Promise<AxiosResponse> {\n let dataToUpload = document.data;\n if (\n document.processed_file_path !== null &&\n document.processed_file_path !== undefined &&\n document.processed_file_path !== ''\n ) {\n dataToUpload = document.processed_file_path;\n }\n let requestBody = JSON.stringify({\n file: {\n type: 'FILE',\n data: dataToUpload,\n },\n description: document.desc,\n tags: [\n { key: 'dispatchId', value: document.dispatch_id },\n // { key: 'jobId', value: document.job_id },\n // { key: 'objectiveRef', value: document.objective_ref },\n { key: 'fileName', value: document.file_name },\n ],\n fileName: document.file_name,\n });\n let sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n if(isTokenExpired(sdkConfig.accessToken)){\n await callbackHandler.refresheAndUpdateToken();\n sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n }\n let extraParameters = { \n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_CALL,\n screenName: 'Upload_Base64_File_Request',\n extraParams: extraParameters,\n });\n Logger.getInstance().logEvent(\n 'uploadBase64FileRequest',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n \n return this.instance.post(\n `/api/folders/${document.fms_folder_id}/files`,\n requestBody,\n {\n headers: {\n 'accept': 'application/json',\n 'X-COREOS-REQUEST-ID': document.dispatch_id,\n 'X-COREOS-ACCESS': sdkConfig.accessToken ?? '',\n 'X-COREOS-TID': sdkConfig.tenantID ?? '',\n 'Content-Type': 'application/json',\n },\n }\n );\n }\n\n // This function will upload processed (overlayed file) if exist otherwise will uplaod original file for pod images.\n private async uploadBinaryFile(\n document: DocumentRow\n ): Promise<FileSystemUploadResult> {\n \n let sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n if(isTokenExpired(sdkConfig.accessToken)){\n await callbackHandler.refresheAndUpdateToken();\n sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n }\n\n let filePathToUpload = document.file_path;\n let processedFileExist = await RNFS.exists(document.processed_file_path);\n if (processedFileExist) {\n filePathToUpload = document.processed_file_path;\n }\n const url =\n sdkConfig.tenantBaseURL + `/api/folders/${document.fms_folder_id}/files`;\n \n let extraParameters = { \n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_CALL,\n screenName: 'Upload_Binary_File_Request',\n extraParams: extraParameters,\n });\n Logger.getInstance().logEvent(\n 'uploadBinaryFileRequest',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n \n return FileSystem.uploadAsync(url, filePathToUpload, {\n headers: {\n 'accept': 'application/json',\n 'Content-Type': 'multipart/form-data',\n 'X-COREOS-REQUEST-ID': document.dispatch_id,\n 'X-COREOS-TID': sdkConfig.tenantID ?? '',\n 'X-COREOS-ACCESS': sdkConfig.accessToken ?? '',\n },\n httpMethod: 'POST',\n uploadType: FileSystemUploadType.MULTIPART,\n fieldName: 'file',\n parameters: {\n tags: JSON.stringify([\n { key: 'dispatchId', value: document.dispatch_id },\n // { key: 'jobId', value: document.job_id },\n // { key: 'objectiveRef', value: document.objective_ref },\n { key: 'fileName', value: document.file_name },\n ]),\n },\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["HttpClient","FileSystem","FileSystemUploadType","DispatchSdkCache","Logger","LOG_TYPE","RNFS","SentryEventNameSdkConstants","SeverityLevelValue","fireEventWithScreenName","flattenObject","isTokenExpired","callbackHandler","cache","getInstance","cacheKeys","KEYS","DocumentHttpClient","constructor","baseURL","uploadDocument","document","base64","data","response","uploadBase64File","info","body","status","substring","String","extraParameters","fName","file_name","length","dName","fms_folder_id","dispId","dispatch_id","severityLevel","LOG","eventName","API_RESPONSE","screenName","extraParams","logEvent","SDK_ERROR","id","uploadResponse","uploadBinaryFile","_JSON$parse","deleteAsync","file_path","then","catch","processed_file_path","JSON","parse","dataToUpload","undefined","requestBody","stringify","file","type","description","desc","tags","key","value","fileName","sdkConfig","getObjectFromCache","SDK_CONFIG","accessToken","refresheAndUpdateToken","API_CALL","instance","post","headers","tenantID","filePathToUpload","processedFileExist","exists","fileStat","stat","url","tenantBaseURL","fSize","size","uploadAsync","httpMethod","uploadType","MULTIPART","fieldName","parameters"],"sources":["DocumentHttpClient.ts"],"sourcesContent":["import HttpClient from '../../../network/client';\nimport type { DocumentRow } from '../DBConfig';\nimport type { AxiosResponse } from 'axios';\nimport * as FileSystem from 'expo-file-system';\nimport { FileSystemUploadResult, FileSystemUploadType } from 'expo-file-system';\nimport DispatchSdkCache from '../../sdk/DispatchSdkCache';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport type { DispatchSDKConfig } from '../../../models/sdk';\nimport RNFS from 'react-native-fs';\nimport { stat } from 'react-native-fs';\nimport { ScreenNameSdkConstants, SentryEventNameSdkConstants, SeverityLevelValue } from '../../../analytics/sentry/SentrySdkConstants';\nimport { fireEventWithScreenName } from '../../../analytics/sentry/SentryAnalyticsUtils';\nimport { flattenObject, isTokenExpired } from '../../../utils/utils';\nimport callbackHandler from '../../../manager/sdk/callbacksHandler';\n\nconst cache = DispatchSdkCache.getInstance();\nconst cacheKeys = DispatchSdkCache.KEYS;\nexport default class DocumentHttpClient extends HttpClient {\n constructor(baseURL: string) {\n super(baseURL);\n }\n public async uploadDocument(document: DocumentRow): Promise<string | null> {\n if (document.base64 && document.data != null) {\n const response = await this.uploadBase64File(document);\n let info = '';\n if (\n response &&\n response.data !== null &&\n response.data.body !== null &&\n response.status !== 202\n ) {\n let body = response.data.body;\n info = body.substring(40);\n } else {\n info = String(response.status);\n }\n let extraParameters = { \n response: info,\n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_RESPONSE,\n screenName: 'uploadDocument:Upload_Base64_File_Response',\n extraParams: extraParameters,\n });\n\n Logger.getInstance().logEvent(\n 'uploadDocument:uploadBase64FileResponse',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n if (\n response &&\n response.data != null &&\n response.data.data != null &&\n response.data.data.id &&\n response.status === 202\n ) {\n return response.data.data.id;\n }else{\n return null;\n }\n } else {\n const uploadResponse = await this.uploadBinaryFile(document);\n let info = '';\n if (\n uploadResponse &&\n uploadResponse.body !== null &&\n uploadResponse.status !== 202\n ) {\n let body = uploadResponse.body;\n info = body.substring(40);\n } else {\n info = String(uploadResponse.status);\n }\n let extraParameters = { \n response: info,\n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_RESPONSE,\n screenName: 'uploadDocument:Upload_Binary_File_Response',\n extraParams: extraParameters,\n });\n Logger.getInstance().logEvent(\n 'uploadDocument:uploadBinaryFileResponse',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n if (\n uploadResponse != null &&\n uploadResponse.status === 202 &&\n uploadResponse.body != null\n ) {\n Logger.getInstance().logEvent(\n 'uploadDocument:DeletingFiles',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n FileSystem.deleteAsync(document.file_path).then().catch(); // WE DELETE FILE HERE\n FileSystem.deleteAsync(document.processed_file_path).then().catch(); // WE DELETE FILE HERE\n\n return JSON.parse(uploadResponse.body)?.data?.id;\n }else{\n return null;\n }\n }\n }\n\n // This function will upload processed base64 data (overlayed base64 data ) if exist otherwise will uplaod original base 64 data for pod signature.\n public async uploadBase64File(document: DocumentRow): Promise<AxiosResponse> {\n let dataToUpload = document.data;\n if (\n document.processed_file_path !== null &&\n document.processed_file_path !== undefined &&\n document.processed_file_path !== ''\n ) {\n dataToUpload = document.processed_file_path;\n }\n let requestBody = JSON.stringify({\n file: {\n type: 'FILE',\n data: dataToUpload,\n },\n description: document.desc,\n tags: [\n { key: 'dispatchId', value: document.dispatch_id },\n // { key: 'jobId', value: document.job_id },\n // { key: 'objectiveRef', value: document.objective_ref },\n { key: 'fileName', value: document.file_name },\n ],\n fileName: document.file_name,\n });\n let sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n if(isTokenExpired(sdkConfig.accessToken)){\n await callbackHandler.refresheAndUpdateToken();\n sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n }\n let extraParameters = { \n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_CALL,\n screenName: 'Upload_Base64_File_Request',\n extraParams: extraParameters,\n });\n Logger.getInstance().logEvent(\n 'uploadBase64FileRequest',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n \n return this.instance.post(\n `/api/folders/${document.fms_folder_id}/files`,\n requestBody,\n {\n headers: {\n 'accept': 'application/json',\n 'X-COREOS-REQUEST-ID': document.dispatch_id,\n 'X-COREOS-ACCESS': sdkConfig.accessToken ?? '',\n 'X-COREOS-TID': sdkConfig.tenantID ?? '',\n 'Content-Type': 'application/json',\n },\n }\n );\n }\n\n // This function will upload processed (overlayed file) if exist otherwise will uplaod original file for pod images.\n private async uploadBinaryFile(\n document: DocumentRow\n ): Promise<FileSystemUploadResult> {\n \n let sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n if(isTokenExpired(sdkConfig.accessToken)){\n await callbackHandler.refresheAndUpdateToken();\n sdkConfig = (await cache.getObjectFromCache(\n cacheKeys.SDK_CONFIG\n )) as DispatchSDKConfig;\n }\n\n let filePathToUpload = document.file_path;\n let processedFileExist = await RNFS.exists(document.processed_file_path);\n if (processedFileExist) {\n filePathToUpload = document.processed_file_path;\n }\n const fileStat = await RNFS.stat(filePathToUpload);\n\n const url =\n sdkConfig.tenantBaseURL + `/api/folders/${document.fms_folder_id}/files`;\n \n let extraParameters = { \n fSize: fileStat.size + \" b\",\n fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',\n dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',\n dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''\n };\n\n fireEventWithScreenName({\n severityLevel: SeverityLevelValue.LOG,\n eventName: SentryEventNameSdkConstants.API_CALL,\n screenName: 'Upload_Binary_File_Request',\n extraParams: extraParameters,\n });\n Logger.getInstance().logEvent(\n 'uploadBinaryFileRequest',\n flattenObject(extraParameters),\n LOG_TYPE.SDK_ERROR\n );\n \n return FileSystem.uploadAsync(url, filePathToUpload, {\n headers: {\n 'accept': 'application/json',\n 'Content-Type': 'multipart/form-data',\n 'X-COREOS-REQUEST-ID': document.dispatch_id,\n 'X-COREOS-TID': sdkConfig.tenantID ?? '',\n 'X-COREOS-ACCESS': sdkConfig.accessToken ?? '',\n },\n httpMethod: 'POST',\n uploadType: FileSystemUploadType.MULTIPART,\n fieldName: 'file',\n parameters: {\n tags: JSON.stringify([\n { key: 'dispatchId', value: document.dispatch_id },\n // { key: 'jobId', value: document.job_id },\n // { key: 'objectiveRef', value: document.objective_ref },\n { key: 'fileName', value: document.file_name },\n ]),\n },\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -45,25 +45,6 @@ export default class SdkUtils {
45
45
  });
46
46
  }
47
47
 
48
- /**
49
- * Function to download apk file from a public URL
50
- * @param apkURL - URL where apk is hosted
51
- * @param version - expected version of apk (used for naming the file)
52
- * @param callback - callback for getting progress of download
53
- */
54
- static async downloadAPK(apkURL, version, callback) {
55
- const fileUri = FileSystem.cacheDirectory + `${version}.apk`;
56
- const fileInfo = await FileSystem.getInfoAsync(fileUri);
57
- const currentDate = new Date().toLocaleDateString();
58
- const fileDate = new Date(fileInfo.modificationTime ? fileInfo.modificationTime * 1000 : 0).toLocaleDateString();
59
- if (fileInfo.exists && currentDate === fileDate) {
60
- return fileInfo.uri;
61
- }
62
- const downloadResumable = FileSystem.createDownloadResumable(apkURL, FileSystem.cacheDirectory + `${version}.apk`, {}, callback);
63
- const downloadResult = await downloadResumable.downloadAsync();
64
- return downloadResult === null || downloadResult === void 0 ? void 0 : downloadResult.uri;
65
- }
66
-
67
48
  /**
68
49
  * Opens & Install an APK file
69
50
  * @param uri - source of apk file
@@ -1 +1 @@
1
- {"version":3,"names":["remoteConfig","Logger","LOG_TYPE","FileSystem","NativeModules","Platform","Location","NetworkUtil","BaseError","ErrorCodes","PermissionModule","DispatchSdkUtils","DispatchUtilsInterface","SdkUtils","getRemoteConfig","expiration","Promise","resolve","reject","fetch","setDefaults","cxRumDevApiKey","cxRumProdApiKey","isMandatoryUpdate","isMandatoryUpdateiOS","toggleInAppUpdateiOS","toggleInAppUpdate","then","fetchAndActivate","fetchedRemotely","config","getAll","getInstance","logEvent","SDK_INFO","catch","err","error","downloadAPK","apkURL","version","callback","fileUri","cacheDirectory","fileInfo","getInfoAsync","currentDate","Date","toLocaleDateString","fileDate","modificationTime","exists","uri","downloadResumable","createDownloadResumable","downloadResult","downloadAsync","deleteApk","deleteAsync","openAPKFile","openAndInstallApk","openAppSettings","openSettings","message","SDK_ERROR","checkMandatory","OS","foregroundLocation","requestForegroundPermissions","LOCATION_OR_GPS_NOT_ENABLED","dateTimeCheck","isAutomaticDateTimeEnabled","SYSTEM_TIME_CHECK_FAILED","requestWakeLockPermissions","enableNetworkProviderAsync","locationServicesCheck","hasServicesEnabledAsync","bgLocation","requestBackgroundPermissions","internet","isAvailableAsync","INTERNET_NOT_ENABLED"],"sources":["SdkUtils.ts"],"sourcesContent":["import remoteConfig from '@react-native-firebase/remote-config';\nimport Logger, { LOG_TYPE } from './Logger';\nimport type { DownloadProgressData } from 'expo-file-system';\nimport * as FileSystem from 'expo-file-system';\nimport { NativeModules, Platform } from 'react-native';\nimport * as Location from 'expo-location';\nimport NetworkUtil from './NetworkUtil';\nimport { BaseError } from '../errors/BaseError';\nimport ErrorCodes from '../errors/ErrorCodes';\nimport PermissionModule from '../native/PermissionModule';\n\nconst { DispatchSdkUtils } = NativeModules;\n\ninterface DispatchUtilsInterface {\n openAndInstallApk(apkUri: String): Promise<boolean>;\n openSettings(): Promise<boolean>;\n showAndroidDialog(\n title: string,\n message: string,\n positiveText: string,\n negativeText: string | null,\n cancelable: boolean\n ): Promise<boolean>;\n isAutomaticDateTimeEnabled(): Promise<boolean>;\n}\n\nexport { DispatchSdkUtils as DispatchUtilsInterface };\n\nexport default class SdkUtils {\n /**\n * number of seconds to cache the firebase config\n * @param expiration\n */\n static async getRemoteConfig(expiration: number): Promise<any> {\n return new Promise(async (resolve, reject) => {\n try {\n await remoteConfig().fetch(expiration);\n remoteConfig()\n .setDefaults({\n cxRumDevApiKey: 'NA',\n cxRumProdApiKey: 'NA',\n isMandatoryUpdate: 'false',\n isMandatoryUpdateiOS: 'false',\n toggleInAppUpdateiOS: 'false',\n toggleInAppUpdate: 'false',\n })\n .then(() => remoteConfig().fetchAndActivate())\n .then((fetchedRemotely) => {\n let config = remoteConfig().getAll();\n if (fetchedRemotely) {\n Logger.getInstance().logEvent(\n 'Remote Config',\n 'Configs were retrieved from the backend and activated.',\n LOG_TYPE.SDK_INFO\n );\n resolve(config);\n } else {\n Logger.getInstance().logEvent(\n 'Remote Config',\n 'No configs were fetched from the backend, and the local configs were already activated',\n LOG_TYPE.SDK_INFO\n );\n resolve(config);\n }\n })\n .catch((err) => {\n reject(err);\n });\n } catch (error: any) {\n reject(error);\n }\n });\n }\n\n /**\n * Function to download apk file from a public URL\n * @param apkURL - URL where apk is hosted\n * @param version - expected version of apk (used for naming the file)\n * @param callback - callback for getting progress of download\n */\n public static async downloadAPK(\n apkURL: string,\n version: string,\n callback: (progress: DownloadProgressData) => any\n ): Promise<string | undefined> {\n const fileUri = FileSystem.cacheDirectory + `${version}.apk`;\n const fileInfo = await FileSystem.getInfoAsync(fileUri);\n const currentDate = new Date().toLocaleDateString();\n const fileDate = new Date(\n fileInfo.modificationTime ? fileInfo.modificationTime * 1000 : 0\n ).toLocaleDateString();\n if (fileInfo.exists && currentDate === fileDate) {\n return fileInfo.uri;\n }\n const downloadResumable = FileSystem.createDownloadResumable(\n apkURL,\n FileSystem.cacheDirectory + `${version}.apk`,\n {},\n callback\n );\n const downloadResult = await downloadResumable.downloadAsync();\n return downloadResult?.uri;\n }\n\n /**\n * Opens & Install an APK file\n * @param uri - source of apk file\n */\n public static async deleteApk(version: string) {\n await FileSystem.deleteAsync(FileSystem.cacheDirectory + `${version}.apk`);\n }\n\n public static async openAPKFile(uri: string) {\n return await (DispatchSdkUtils as DispatchUtilsInterface).openAndInstallApk(\n uri\n );\n }\n\n public static openAppSettings() {\n (DispatchSdkUtils as DispatchUtilsInterface)\n .openSettings()\n .then()\n .catch((error) => {\n Logger.getInstance().logEvent(\n 'Intent error',\n error.message,\n LOG_TYPE.SDK_ERROR\n );\n });\n }\n\n public static async checkMandatory() {\n if (Platform.OS === 'ios') {\n const foregroundLocation = await PermissionModule.requestForegroundPermissions();\n if (!(foregroundLocation)) {\n throw new BaseError(\n ErrorCodes.LOCATION_OR_GPS_NOT_ENABLED,\n 'Location or GPS not enabled'\n );\n }\n return;\n }\n const dateTimeCheck = await (\n DispatchSdkUtils as DispatchUtilsInterface\n ).isAutomaticDateTimeEnabled();\n if (!dateTimeCheck) {\n throw new BaseError(\n ErrorCodes.SYSTEM_TIME_CHECK_FAILED,\n 'Automatic date/time not enabled!'\n );\n }\n if (Platform.OS === 'android') {\n await PermissionModule.requestWakeLockPermissions();\n await Location.enableNetworkProviderAsync();\n let locationServicesCheck = await Location.hasServicesEnabledAsync();\n const foregroundLocation = await PermissionModule.requestForegroundPermissions();\n // await Location.requestForegroundPermissionsAsync(); //permission code using expo module\n const bgLocation = await PermissionModule.requestBackgroundPermissions();\n // await Location.requestBackgroundPermissionsAsync(); //permission code using expo module\n if (!(locationServicesCheck && foregroundLocation && bgLocation)) {\n throw new BaseError(\n ErrorCodes.LOCATION_OR_GPS_NOT_ENABLED,\n 'Location or GPS not enabled'\n );\n }\n }\n let internet = await NetworkUtil.isAvailableAsync();\n if (!internet)\n throw new BaseError(\n ErrorCodes.INTERNET_NOT_ENABLED,\n 'Internet is disabled! Please enable internet and try again '\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["remoteConfig","Logger","LOG_TYPE","FileSystem","NativeModules","Platform","Location","NetworkUtil","BaseError","ErrorCodes","PermissionModule","DispatchSdkUtils","DispatchUtilsInterface","SdkUtils","getRemoteConfig","expiration","Promise","resolve","reject","fetch","setDefaults","cxRumDevApiKey","cxRumProdApiKey","isMandatoryUpdate","isMandatoryUpdateiOS","toggleInAppUpdateiOS","toggleInAppUpdate","then","fetchAndActivate","fetchedRemotely","config","getAll","getInstance","logEvent","SDK_INFO","catch","err","error","deleteApk","version","deleteAsync","cacheDirectory","openAPKFile","uri","openAndInstallApk","openAppSettings","openSettings","message","SDK_ERROR","checkMandatory","OS","foregroundLocation","requestForegroundPermissions","LOCATION_OR_GPS_NOT_ENABLED","dateTimeCheck","isAutomaticDateTimeEnabled","SYSTEM_TIME_CHECK_FAILED","requestWakeLockPermissions","enableNetworkProviderAsync","locationServicesCheck","hasServicesEnabledAsync","bgLocation","requestBackgroundPermissions","internet","isAvailableAsync","INTERNET_NOT_ENABLED"],"sources":["SdkUtils.ts"],"sourcesContent":["import remoteConfig from '@react-native-firebase/remote-config';\nimport Logger, { LOG_TYPE } from './Logger';\nimport type { DownloadProgressData } from 'expo-file-system';\nimport * as FileSystem from 'expo-file-system';\nimport { NativeModules, Platform } from 'react-native';\nimport * as Location from 'expo-location';\nimport NetworkUtil from './NetworkUtil';\nimport { BaseError } from '../errors/BaseError';\nimport ErrorCodes from '../errors/ErrorCodes';\nimport PermissionModule from '../native/PermissionModule';\n\nconst { DispatchSdkUtils } = NativeModules;\n\ninterface DispatchUtilsInterface {\n openAndInstallApk(apkUri: String): Promise<boolean>;\n openSettings(): Promise<boolean>;\n showAndroidDialog(\n title: string,\n message: string,\n positiveText: string,\n negativeText: string | null,\n cancelable: boolean\n ): Promise<boolean>;\n isAutomaticDateTimeEnabled(): Promise<boolean>;\n}\n\nexport { DispatchSdkUtils as DispatchUtilsInterface };\n\nexport default class SdkUtils {\n /**\n * number of seconds to cache the firebase config\n * @param expiration\n */\n static async getRemoteConfig(expiration: number): Promise<any> {\n return new Promise(async (resolve, reject) => {\n try {\n await remoteConfig().fetch(expiration);\n remoteConfig()\n .setDefaults({\n cxRumDevApiKey: 'NA',\n cxRumProdApiKey: 'NA',\n isMandatoryUpdate: 'false',\n isMandatoryUpdateiOS: 'false',\n toggleInAppUpdateiOS: 'false',\n toggleInAppUpdate: 'false',\n })\n .then(() => remoteConfig().fetchAndActivate())\n .then((fetchedRemotely) => {\n let config = remoteConfig().getAll();\n if (fetchedRemotely) {\n Logger.getInstance().logEvent(\n 'Remote Config',\n 'Configs were retrieved from the backend and activated.',\n LOG_TYPE.SDK_INFO\n );\n resolve(config);\n } else {\n Logger.getInstance().logEvent(\n 'Remote Config',\n 'No configs were fetched from the backend, and the local configs were already activated',\n LOG_TYPE.SDK_INFO\n );\n resolve(config);\n }\n })\n .catch((err) => {\n reject(err);\n });\n } catch (error: any) {\n reject(error);\n }\n });\n }\n\n /**\n * Opens & Install an APK file\n * @param uri - source of apk file\n */\n public static async deleteApk(version: string) {\n await FileSystem.deleteAsync(FileSystem.cacheDirectory + `${version}.apk`);\n }\n\n public static async openAPKFile(uri: string) {\n return await (DispatchSdkUtils as DispatchUtilsInterface).openAndInstallApk(\n uri\n );\n }\n\n public static openAppSettings() {\n (DispatchSdkUtils as DispatchUtilsInterface)\n .openSettings()\n .then()\n .catch((error) => {\n Logger.getInstance().logEvent(\n 'Intent error',\n error.message,\n LOG_TYPE.SDK_ERROR\n );\n });\n }\n\n public static async checkMandatory() {\n if (Platform.OS === 'ios') {\n const foregroundLocation = await PermissionModule.requestForegroundPermissions();\n if (!(foregroundLocation)) {\n throw new BaseError(\n ErrorCodes.LOCATION_OR_GPS_NOT_ENABLED,\n 'Location or GPS not enabled'\n );\n }\n return;\n }\n const dateTimeCheck = await (\n DispatchSdkUtils as DispatchUtilsInterface\n ).isAutomaticDateTimeEnabled();\n if (!dateTimeCheck) {\n throw new BaseError(\n ErrorCodes.SYSTEM_TIME_CHECK_FAILED,\n 'Automatic date/time not enabled!'\n );\n }\n if (Platform.OS === 'android') {\n await PermissionModule.requestWakeLockPermissions();\n await Location.enableNetworkProviderAsync();\n let locationServicesCheck = await Location.hasServicesEnabledAsync();\n const foregroundLocation = await PermissionModule.requestForegroundPermissions();\n // await Location.requestForegroundPermissionsAsync(); //permission code using expo module\n const bgLocation = await PermissionModule.requestBackgroundPermissions();\n // await Location.requestBackgroundPermissionsAsync(); //permission code using expo module\n if (!(locationServicesCheck && foregroundLocation && bgLocation)) {\n throw new BaseError(\n ErrorCodes.LOCATION_OR_GPS_NOT_ENABLED,\n 'Location or GPS not enabled'\n );\n }\n }\n let internet = await NetworkUtil.isAvailableAsync();\n if (!internet)\n throw new BaseError(\n ErrorCodes.INTERNET_NOT_ENABLED,\n 'Internet is disabled! Please enable internet and try again '\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,3 @@
1
- import type { DownloadProgressData } from 'expo-file-system';
2
1
  declare const DispatchSdkUtils: any;
3
2
  export { DispatchSdkUtils as DispatchUtilsInterface };
4
3
  export default class SdkUtils {
@@ -7,13 +6,6 @@ export default class SdkUtils {
7
6
  * @param expiration
8
7
  */
9
8
  static getRemoteConfig(expiration: number): Promise<any>;
10
- /**
11
- * Function to download apk file from a public URL
12
- * @param apkURL - URL where apk is hosted
13
- * @param version - expected version of apk (used for naming the file)
14
- * @param callback - callback for getting progress of download
15
- */
16
- static downloadAPK(apkURL: string, version: string, callback: (progress: DownloadProgressData) => any): Promise<string | undefined>;
17
9
  /**
18
10
  * Opens & Install an APK file
19
11
  * @param uri - source of apk file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@os1-platform/dispatch-mobile",
3
- "version": "3.0.2",
3
+ "version": "3.0.3",
4
4
  "description": "Dispatch SDK React Native Package",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -52,7 +52,7 @@
52
52
  "homepage": "https://github.com/FoxtrotPlatform/platform-coreos-dispatch-sdk/#readme",
53
53
  "devDependencies": {
54
54
  "@apollo/client": "^3.5.6",
55
- "@babel/core": "^7.12.9",
55
+ "@babel/core": "^7.20.0",
56
56
  "@babel/preset-env": "^7.15.8",
57
57
  "@babel/preset-typescript": "^7.15.0",
58
58
  "@babel/runtime": "^7.12.5",
@@ -94,15 +94,16 @@
94
94
  "eslint": "^7.32.0",
95
95
  "eslint-config-prettier": "^7.0.0",
96
96
  "eslint-plugin-prettier": "^3.1.3",
97
- "expo": "~47.0.13",
98
- "expo-barcode-scanner": "~11.2.1",
99
- "expo-blur": "~11.0.0",
100
- "expo-camera": "~12.1.2",
101
- "expo-file-system": "~13.0.3",
102
- "expo-font": "~10.0.3",
103
- "expo-image-picker": "~11.0.3",
104
- "expo-location": "~13.0.4",
105
- "expo-sqlite": "~11.0.0",
97
+ "expo": "~48.0.21",
98
+ "expo-barcode-scanner": "~12.3.2",
99
+ "expo-blur": "~12.2.2",
100
+ "expo-camera": "~13.2.1",
101
+ "expo-file-system": "~15.2.2",
102
+ "expo-font": "~11.1.1",
103
+ "expo-image-picker": "~14.1.1",
104
+ "expo-location": "~15.1.1",
105
+ "expo-sqlite": "~11.1.1",
106
+ "expo-image-manipulator": "~11.1.1",
106
107
  "graphql": "^16.2.0",
107
108
  "husky": "^4.2.5",
108
109
  "jest": "^26.6.3",
@@ -112,13 +113,13 @@
112
113
  "pod-install": "^0.1.0",
113
114
  "prettier": "^2.0.5",
114
115
  "react": "18.2.0",
115
- "react-dom": "^17.0.2",
116
+ "react-dom": "18.2.0",
116
117
  "react-native": "0.71.19",
117
118
  "react-native-builder-bob": "^0.18.0",
118
119
  "react-native-compressor": "^1.8.24",
119
120
  "react-native-dropdown-picker": "^5.4.0",
120
121
  "react-native-get-random-values": "^1.8.0",
121
- "react-native-image-picker": "^7.0.2",
122
+ "react-native-image-picker": "7.0.2",
122
123
  "react-native-paper": "^4.9.2",
123
124
  "react-native-safe-area-context": "^3.3.2",
124
125
  "react-native-screens": "^3.9.0",
@@ -143,15 +144,16 @@
143
144
  "@react-navigation/native-stack": "^6.2.5",
144
145
  "@sentry/react-native": "^5.13.0",
145
146
  "axios": "^0.24.0",
146
- "expo": "~47.0.13",
147
- "expo-barcode-scanner": "~11.4.0",
148
- "expo-blur": "~11.0.0",
149
- "expo-camera": "~13.1.0",
150
- "expo-file-system": "~15.1.1",
151
- "expo-font": "~11.0.1",
152
- "expo-image-picker": "~14.1.0",
153
- "expo-location": "~15.0.1",
154
- "expo-sqlite": "~11.0.0",
147
+ "expo": "~48.0.21",
148
+ "expo-barcode-scanner": "~12.3.2",
149
+ "expo-blur": "~12.2.2",
150
+ "expo-camera": "~13.2.1",
151
+ "expo-file-system": "~15.2.2",
152
+ "expo-font": "~11.1.1",
153
+ "expo-image-picker": "~14.1.1",
154
+ "expo-location": "~15.1.1",
155
+ "expo-sqlite": "~11.1.1",
156
+ "expo-image-manipulator": "~11.1.1",
155
157
  "graphql": "^16.2.0",
156
158
  "react": "^18.2.0",
157
159
  "react-native": "^0.71.19",
@@ -163,6 +165,25 @@
163
165
  "react-native-screens": "^3.9.0",
164
166
  "react-native-vector-icons": "^9.0.0"
165
167
  },
168
+ "dependencies": {
169
+ "@os1-platform/platform-coreos-execution-engine-sdk": "1.0.18",
170
+ "@rjsf/core": "^2.0.0",
171
+ "apollo-link-timeout": "^4.0.0",
172
+ "decompress": "^4.2.1",
173
+ "i18n-js": "^4.3.2",
174
+ "json-logic-js": "^2.0.1",
175
+ "jsonpath-plus": "^6.0.1",
176
+ "jwt-decode": "^3.1.2",
177
+ "latlng-to-dms": "^1.0.2",
178
+ "lodash": "^4.17.21",
179
+ "react-native-fs": "^2.20.0",
180
+ "react-native-image-marker": "1.1.15",
181
+ "react-native-otp-textinput": "0.0.8",
182
+ "react-native-svg": "^13.6.0",
183
+ "recyclerlistview": "^4.2.0",
184
+ "rjsf-native": "^1.0.14",
185
+ "toggle-switch-react-native": "^3.3.0"
186
+ },
166
187
  "jest": {
167
188
  "moduleFileExtensions": [
168
189
  "ts",
@@ -255,24 +276,5 @@
255
276
  }
256
277
  ]
257
278
  ]
258
- },
259
- "dependencies": {
260
- "@os1-platform/platform-coreos-execution-engine-sdk": "1.0.17",
261
- "@rjsf/core": "^2.0.0",
262
- "apollo-link-timeout": "^4.0.0",
263
- "decompress": "^4.2.1",
264
- "i18n-js": "^4.3.2",
265
- "json-logic-js": "^2.0.1",
266
- "jsonpath-plus": "^6.0.1",
267
- "jwt-decode": "^3.1.2",
268
- "latlng-to-dms": "^1.0.2",
269
- "lodash": "^4.17.21",
270
- "react-native-fs": "^2.20.0",
271
- "react-native-image-marker": "1.1.15",
272
- "react-native-otp-textinput": "0.0.8",
273
- "react-native-svg": "^13.6.0",
274
- "recyclerlistview": "^4.2.0",
275
- "rjsf-native": "^1.0.14",
276
- "toggle-switch-react-native": "^3.3.0"
277
279
  }
278
280
  }
@@ -223,9 +223,8 @@ const FormGenerator = (props: FormInputSchema) => {
223
223
  </View>
224
224
  </ScrollView>
225
225
  <View style={styles.bottomView}>
226
- <View>
227
226
  <Button
228
- style={[CommonStyles.nextButton, { width: 165, marginStart: 10 }]}
227
+ style={[styles.mainBtnStyles, CommonStyles.nextButton]}
229
228
  labelStyle={CommonStyles.nextButtonLabel}
230
229
  mode={'contained'}
231
230
  onPress={() => {
@@ -241,10 +240,8 @@ const FormGenerator = (props: FormInputSchema) => {
241
240
  >
242
241
  Proceed
243
242
  </Button>
244
- </View>
245
- <View>
246
243
  {(props.isSelfLoop == false) && <Button
247
- style={[CommonStyles.cancelButton, { width: 165, marginEnd: 10 }]}
244
+ style={[styles.mainBtnStyles, CommonStyles.cancelButton]}
248
245
  labelStyle={CommonStyles.cancelButtonLabel}
249
246
  mode={'outlined'}
250
247
  onPress={() => {
@@ -261,7 +258,6 @@ const FormGenerator = (props: FormInputSchema) => {
261
258
  Cancel
262
259
  </Button>
263
260
  }
264
- </View>
265
261
  </View>
266
262
  </KeyboardAvoidingView>
267
263
  </Provider>
@@ -290,5 +286,15 @@ const styles = StyleSheet.create({
290
286
  justifyContent: 'space-evenly',
291
287
  padding: 16,
292
288
  backgroundColor: 'white',
289
+ gap: 16,
290
+ },
291
+ mainBtnStyles: {
292
+ display: 'flex',
293
+ flexDirection: 'row',
294
+ justifyContent: 'center',
295
+ alignItems: 'center',
296
+ flex: 1,
297
+ width: '100%',
298
+ backgroundColor: 'white',
293
299
  },
294
300
  });
@@ -120,10 +120,13 @@ export default class AppSyncManager {
120
120
  * Call this method from index file of the app
121
121
  */
122
122
  public static registerSyncTask() {
123
- AppRegistry.registerHeadlessTask(
124
- 'SYNC_MANAGER',
125
- () => AppSyncManager.startAppSyncManager
126
- );
123
+ // We will not register headless js task for api level 31 and above
124
+ if (Platform.OS == 'android' && Platform.Version > 30) {
125
+ AppRegistry.registerHeadlessTask(
126
+ 'SYNC_MANAGER',
127
+ () => AppSyncManager.startAppSyncManager
128
+ );
129
+ }
127
130
  }
128
131
 
129
132
  public async getAllEvents(dispatchID?: string): Promise<EventRow[]> {
@@ -201,10 +201,13 @@ export default class DocumentHttpClient extends HttpClient {
201
201
  if (processedFileExist) {
202
202
  filePathToUpload = document.processed_file_path;
203
203
  }
204
+ const fileStat = await RNFS.stat(filePathToUpload);
205
+
204
206
  const url =
205
207
  sdkConfig.tenantBaseURL + `/api/folders/${document.fms_folder_id}/files`;
206
208
 
207
209
  let extraParameters = {
210
+ fSize: fileStat.size + " b",
208
211
  fName: document.file_name && document.file_name.length != 0 ? document.file_name.substring(4): '',
209
212
  dName: document.fms_folder_id && document.fms_folder_id.length != 0 ? document.fms_folder_id.substring(4): '',
210
213
  dispId: document.dispatch_id && document.dispatch_id.length != 0 ? document.dispatch_id.substring(9): ''
@@ -72,36 +72,6 @@ export default class SdkUtils {
72
72
  });
73
73
  }
74
74
 
75
- /**
76
- * Function to download apk file from a public URL
77
- * @param apkURL - URL where apk is hosted
78
- * @param version - expected version of apk (used for naming the file)
79
- * @param callback - callback for getting progress of download
80
- */
81
- public static async downloadAPK(
82
- apkURL: string,
83
- version: string,
84
- callback: (progress: DownloadProgressData) => any
85
- ): Promise<string | undefined> {
86
- const fileUri = FileSystem.cacheDirectory + `${version}.apk`;
87
- const fileInfo = await FileSystem.getInfoAsync(fileUri);
88
- const currentDate = new Date().toLocaleDateString();
89
- const fileDate = new Date(
90
- fileInfo.modificationTime ? fileInfo.modificationTime * 1000 : 0
91
- ).toLocaleDateString();
92
- if (fileInfo.exists && currentDate === fileDate) {
93
- return fileInfo.uri;
94
- }
95
- const downloadResumable = FileSystem.createDownloadResumable(
96
- apkURL,
97
- FileSystem.cacheDirectory + `${version}.apk`,
98
- {},
99
- callback
100
- );
101
- const downloadResult = await downloadResumable.downloadAsync();
102
- return downloadResult?.uri;
103
- }
104
-
105
75
  /**
106
76
  * Opens & Install an APK file
107
77
  * @param uri - source of apk file