@@ -22,13 +22,13 @@ public class CapacitorBarcodeScannerPlugin: CAPPlugin {
2222 }
2323
2424 guard let manager = self . manager else {
25- call. reject ( " Capacitor bridge or viewController is not initialized. " )
25+ call. sendError ( with : OSBarcodeError . bridgeNotInitialized )
2626 return
2727 }
2828
2929 guard let argumentsData = try ? JSONSerialization . data ( withJSONObject: call. jsObjectRepresentation) ,
3030 let scanArguments = try ? JSONDecoder ( ) . decode ( OSBarcodeScanArgumentsModel . self, from: argumentsData) else {
31- call. reject ( " Error decoding scan arguments " )
31+ call. sendError ( with : OSBarcodeError . scanInputArgumentsIssue )
3232 return
3333 }
3434
@@ -37,12 +37,20 @@ public class CapacitorBarcodeScannerPlugin: CAPPlugin {
3737 let scannedBarcode = try await manager. scanBarcode ( with: scanArguments. scanInstructions, scanArguments. scanButtonText, scanArguments. cameraDirection, and: scanArguments. scanOrientation)
3838 call. resolve ( [ " ScanResult " : scannedBarcode] )
3939 } catch OSBARCManagerError . cameraAccessDenied {
40- call. reject ( " Camera access denied " )
40+ call. sendError ( with : OSBarcodeError . cameraAccessDenied )
4141 } catch OSBARCManagerError . scanningCancelled {
42- call. reject ( " Scanning cancelled " )
42+ call. sendError ( with : OSBarcodeError . scanningCancelled )
4343 } catch {
44- call. reject ( " An unexpected error occurred: \( error . localizedDescription ) " )
44+ call. sendError ( with : OSBarcodeError . scanningError )
4545 }
4646 }
4747 }
4848}
49+
50+ extension CAPPluginCall {
51+
52+ func sendError( with error: OSBarcodeError ) {
53+ self . reject ( error. errorDescription, error. errorCode)
54+ }
55+
56+ }
0 commit comments