UNPKG

react-native-obd-retriver

Version:

A React Native hook library to manage Bluetooth Low Energy connections and communication with ELM327 OBD-II adapters.

2 lines 5.54 kB
Object.defineProperty(exports,"__esModule",{value:true});exports.initialState=exports.ecuReducer=void 0;var _logger=require("../../utils/logger");var _constants=require("../utils/constants");var _types=require("../utils/types");var initialState=exports.initialState={status:_constants.ECUConnectionStatus.DISCONNECTED,activeProtocol:null,protocolName:null,lastError:null,deviceVoltage:null,detectedEcuAddresses:[],selectedEcuAddress:null,currentDTCs:null,pendingDTCs:null,permanentDTCs:null,dtcLoading:false,dtcClearing:false,rawCurrentDTCs:null,rawPendingDTCs:null,rawPermanentDTCs:null,rawDTCLoading:false};var ecuReducer=exports.ecuReducer=function ecuReducer(state,action){var _action$payload$error,_action$payload5,_action$payload$volta2,_action$payload6,_action$payload$dtcs,_action$payload7,_action$payload$error2,_action$payload8,_action$payload$error3,_action$payload9,_action$payload$data,_action$payload10,_action$payload$data2,_action$payload11,_action$payload$data3,_action$payload12,_action$payload$error4,_action$payload13;void _logger.log.debug(`[ECUReducer] Action: ${action.type}`,{payload:action.payload});switch(action.type){case _types.ECUActionType.CONNECT_START:return Object.assign({},initialState,{status:_constants.ECUConnectionStatus.CONNECTING});case _types.ECUActionType.CONNECT_SUCCESS:{var _action$payload$proto,_action$payload,_action$payload$proto2,_action$payload2,_action$payload$detec,_action$payload3,_action$payload$volta,_action$payload4,_detectedEcus$;var protocol=(_action$payload$proto=(_action$payload=action.payload)==null?void 0:_action$payload.protocol)!=null?_action$payload$proto:null;var protocolName=(_action$payload$proto2=(_action$payload2=action.payload)==null?void 0:_action$payload2.protocolName)!=null?_action$payload$proto2:null;var detectedEcus=(_action$payload$detec=(_action$payload3=action.payload)==null?void 0:_action$payload3.detectedEcuAddresses)!=null?_action$payload$detec:[];var voltage=(_action$payload$volta=(_action$payload4=action.payload)==null?void 0:_action$payload4.voltage)!=null?_action$payload$volta:null;return Object.assign({},state,{status:_constants.ECUConnectionStatus.CONNECTED,activeProtocol:protocol,protocolName:protocolName,selectedEcuAddress:(_detectedEcus$=detectedEcus[0])!=null?_detectedEcus$:null,detectedEcuAddresses:detectedEcus,lastError:null,deviceVoltage:voltage});}case _types.ECUActionType.CONNECT_FAILURE:return Object.assign({},initialState,{status:_constants.ECUConnectionStatus.CONNECTION_FAILED,lastError:(_action$payload$error=(_action$payload5=action.payload)==null?void 0:_action$payload5.error)!=null?_action$payload$error:'Unknown connection error'});case _types.ECUActionType.DISCONNECT:return Object.assign({},initialState,{deviceVoltage:state.deviceVoltage});case _types.ECUActionType.SET_ECU_INFO:return Object.assign({},state,{deviceVoltage:(_action$payload$volta2=(_action$payload6=action.payload)==null?void 0:_action$payload6.voltage)!=null?_action$payload$volta2:state.deviceVoltage});case _types.ECUActionType.RESET:return initialState;case _types.ECUActionType.FETCH_DTCS_START:return Object.assign({},state,{dtcLoading:true,currentDTCs:null,pendingDTCs:null,permanentDTCs:null});case _types.ECUActionType.FETCH_DTCS_SUCCESS:return Object.assign({},state,{dtcLoading:false,currentDTCs:(_action$payload$dtcs=(_action$payload7=action.payload)==null?void 0:_action$payload7.dtcs)!=null?_action$payload$dtcs:state.currentDTCs});case _types.ECUActionType.FETCH_DTCS_FAILURE:return Object.assign({},state,{dtcLoading:false,lastError:(_action$payload$error2=(_action$payload8=action.payload)==null?void 0:_action$payload8.error)!=null?_action$payload$error2:'Failed to fetch DTCs'});case _types.ECUActionType.CLEAR_DTCS_START:return Object.assign({},state,{dtcClearing:true});case _types.ECUActionType.CLEAR_DTCS_SUCCESS:return Object.assign({},state,{dtcClearing:false,currentDTCs:[],pendingDTCs:[],permanentDTCs:[],rawCurrentDTCs:null,rawPendingDTCs:null,rawPermanentDTCs:null,lastError:null});case _types.ECUActionType.CLEAR_DTCS_FAILURE:return Object.assign({},state,{dtcClearing:false,lastError:(_action$payload$error3=(_action$payload9=action.payload)==null?void 0:_action$payload9.error)!=null?_action$payload$error3:'Failed to clear DTCs'});case _types.ECUActionType.FETCH_RAW_DTCS_START:return Object.assign({},state,{rawDTCLoading:true});case _types.ECUActionType.FETCH_RAW_CURRENT_DTCS_SUCCESS:return Object.assign({},state,{rawDTCLoading:false,rawCurrentDTCs:(_action$payload$data=(_action$payload10=action.payload)==null?void 0:_action$payload10.data)!=null?_action$payload$data:null});case _types.ECUActionType.FETCH_RAW_PENDING_DTCS_SUCCESS:return Object.assign({},state,{rawDTCLoading:false,rawPendingDTCs:(_action$payload$data2=(_action$payload11=action.payload)==null?void 0:_action$payload11.data)!=null?_action$payload$data2:null});case _types.ECUActionType.FETCH_RAW_PERMANENT_DTCS_SUCCESS:return Object.assign({},state,{rawDTCLoading:false,rawPermanentDTCs:(_action$payload$data3=(_action$payload12=action.payload)==null?void 0:_action$payload12.data)!=null?_action$payload$data3:null});case _types.ECUActionType.FETCH_RAW_DTCS_FAILURE:return Object.assign({},state,{rawDTCLoading:false,lastError:(_action$payload$error4=(_action$payload13=action.payload)==null?void 0:_action$payload13.error)!=null?_action$payload$error4:'Failed to fetch raw DTCs'});default:void _logger.log.warn(`[ECUReducer] Received unknown action type: ${action.type}`);return state;}}; //# sourceMappingURL=ECUReducer.js.map