@mleonard9/vin-scanner 1.2.4 → 1.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/android/src/main/java/com/visioncamerabarcodescanner/VisionCameraBarcodeScannerModule.kt +2 -52
  2. package/android/src/main/java/com/visioncameratextrecognition/VisionCameraTextRecognitionModule.kt +0 -31
  3. package/ios/VisionCameraBarcodeScanner.m +2 -34
  4. package/ios/VisionCameraTextRecognition.m +0 -26
  5. package/lib/commonjs/scanBarcodes.js +4 -16
  6. package/lib/commonjs/scanBarcodes.js.map +1 -1
  7. package/lib/commonjs/scanText.js +4 -16
  8. package/lib/commonjs/scanText.js.map +1 -1
  9. package/lib/commonjs/useVinScanner.js +6 -9
  10. package/lib/commonjs/useVinScanner.js.map +1 -1
  11. package/lib/commonjs/vinUtils.js +7 -18
  12. package/lib/commonjs/vinUtils.js.map +1 -1
  13. package/lib/module/scanBarcodes.js +4 -16
  14. package/lib/module/scanBarcodes.js.map +1 -1
  15. package/lib/module/scanText.js +4 -16
  16. package/lib/module/scanText.js.map +1 -1
  17. package/lib/module/useVinScanner.js +6 -9
  18. package/lib/module/useVinScanner.js.map +1 -1
  19. package/lib/module/vinUtils.js +7 -18
  20. package/lib/module/vinUtils.js.map +1 -1
  21. package/lib/typescript/src/scanBarcodes.d.ts.map +1 -1
  22. package/lib/typescript/src/scanText.d.ts.map +1 -1
  23. package/lib/typescript/src/types.d.ts +0 -17
  24. package/lib/typescript/src/types.d.ts.map +1 -1
  25. package/lib/typescript/src/useVinScanner.d.ts.map +1 -1
  26. package/lib/typescript/src/vinUtils.d.ts +1 -2
  27. package/lib/typescript/src/vinUtils.d.ts.map +1 -1
  28. package/package.json +1 -1
  29. package/src/scanBarcodes.ts +6 -29
  30. package/src/scanText.ts +6 -24
  31. package/src/types.ts +0 -18
  32. package/src/useVinScanner.ts +6 -9
  33. package/src/vinUtils.ts +11 -13
@@ -1,6 +1,5 @@
1
1
  package com.visioncamerabarcodescanner
2
2
 
3
- import android.graphics.Rect
4
3
  import android.media.Image
5
4
  import com.google.android.gms.tasks.Task
6
5
  import com.google.android.gms.tasks.Tasks
@@ -79,14 +78,6 @@ class VisionCameraBarcodeScannerModule(
79
78
  }
80
79
  }
81
80
 
82
- private fun isInRegion(rect: Rect, roi: Rect?): Boolean {
83
- if (roi == null) return true
84
- // Check if the detection center is within the ROI
85
- val centerX = rect.centerX()
86
- val centerY = rect.centerY()
87
- return roi.contains(centerX, centerY)
88
- }
89
-
90
81
  override fun callback(frame: Frame, arguments: Map<String, Any>?): Any {
91
82
  return try {
92
83
  val options = mergedOptions(arguments)
@@ -98,56 +89,15 @@ class VisionCameraBarcodeScannerModule(
98
89
  val task: Task<List<Barcode>> = scanner.process(image)
99
90
  val barcodes: List<Barcode> = Tasks.await(task)
100
91
 
101
- // Region of Interest processing
102
- // ROI is passed as fractional coordinates (0.0-1.0) relative to the image size
103
- var roiRect: Rect? = null
104
- val roiMap = options["regionOfInterest"] as? Map<*, *>
105
- if (roiMap != null) {
106
- val top = (roiMap["top"] as? Double ?: 0.0)
107
- val left = (roiMap["left"] as? Double ?: 0.0)
108
- val width = (roiMap["width"] as? Double ?: 1.0)
109
- val height = (roiMap["height"] as? Double ?: 1.0)
110
-
111
- // The input image dimensions (rotated)
112
- // MLKit coordinates match the InputImage dimensions.
113
- // If we have rotation, we need to be careful.
114
- // However, for simplicity in V1, let's assume ROI is relative to the *displayed* frame
115
- // which matches MLKit's coordinate system after rotation usually?
116
- // Actually, MLKit reports coordinates in the image's coordinate system.
117
- // If rotation is 90, width/height swap.
118
- // Let's use the dimensions from MLKit's InputImage if accessible, or Frame.
119
- // VisionCamera Frame width/height are oriented.
120
-
121
- val imgWidth = image.width
122
- val imgHeight = image.height
123
-
124
- val rLeft = (left * imgWidth).toInt()
125
- val rTop = (top * imgHeight).toInt()
126
- val rRight = rLeft + (width * imgWidth).toInt()
127
- val rBottom = rTop + (height * imgHeight).toInt()
128
-
129
- roiRect = Rect(rLeft, rTop, rRight, rBottom)
130
- }
131
-
132
92
  val detections = ArrayList<Map<String, Any?>>()
133
- // We can't predict exact size if we filter by ROI, but allocating max size is safe for SharedArray
134
- // Ideally we would compact it, but SharedArray is fixed size.
135
- // We'll filter in the loop and just leave unused slots at the end (or compact indices).
136
- // Actually, simpler to just build the list and then write to SharedArray.
137
-
138
- val filteredBarcodes = barcodes.filter { barcode ->
139
- val box = barcode.boundingBox
140
- box == null || isInRegion(box, roiRect)
141
- }
142
-
143
93
  val sharedArray =
144
- if (filteredBarcodes.isNotEmpty()) SharedArray(proxy, filteredBarcodes.size * BOX_STRIDE * java.lang.Float.BYTES)
94
+ if (barcodes.isNotEmpty()) SharedArray(proxy, barcodes.size * BOX_STRIDE * java.lang.Float.BYTES)
145
95
  else null
146
96
  val floatBuffer = sharedArray?.byteBuffer
147
97
  ?.order(ByteOrder.nativeOrder())
148
98
  ?.asFloatBuffer()
149
99
 
150
- filteredBarcodes.forEachIndexed { index, barcode ->
100
+ barcodes.forEachIndexed { index, barcode ->
151
101
  val detection = HashMap<String, Any?>()
152
102
  detection["rawValue"] = barcode.rawValue
153
103
  detection["displayValue"] = barcode.displayValue
@@ -1,6 +1,5 @@
1
1
  package com.visioncameratextrecognition
2
2
 
3
- import android.graphics.Rect
4
3
  import android.media.Image
5
4
  import com.google.android.gms.tasks.Task
6
5
  import com.google.android.gms.tasks.Tasks
@@ -54,12 +53,6 @@ class VisionCameraTextRecognitionModule(
54
53
  }
55
54
  }
56
55
 
57
- private fun isInRegion(rect: Rect?, roi: Rect?): Boolean {
58
- if (roi == null || rect == null) return true
59
- // Check if overlap or contained. For VIN scanning, contained center is usually best
60
- return roi.contains(rect.centerX(), rect.centerY())
61
- }
62
-
63
56
  override fun callback(frame: Frame, arguments: Map<String, Any>?): Any {
64
57
  try {
65
58
  val mediaImage: Image = frame.image
@@ -78,32 +71,10 @@ class VisionCameraTextRecognitionModule(
78
71
  val detections = ArrayList<Map<String, Any?>>()
79
72
  val boxValues = ArrayList<FloatArray>()
80
73
 
81
- // Calculate ROI if present
82
- var roiRect: Rect? = null
83
- val roiMap = arguments?.get("regionOfInterest") as? Map<*, *>
84
- if (roiMap != null) {
85
- val top = (roiMap["top"] as? Double ?: 0.0)
86
- val left = (roiMap["left"] as? Double ?: 0.0)
87
- val width = (roiMap["width"] as? Double ?: 1.0)
88
- val height = (roiMap["height"] as? Double ?: 1.0)
89
-
90
- val imgWidth = image.width
91
- val imgHeight = image.height
92
-
93
- val rLeft = (left * imgWidth).toInt()
94
- val rTop = (top * imgHeight).toInt()
95
- val rRight = rLeft + (width * imgWidth).toInt()
96
- val rBottom = rTop + (height * imgHeight).toInt()
97
-
98
- roiRect = Rect(rLeft, rTop, rRight, rBottom)
99
- }
100
-
101
74
  // Compile regex if pattern provided
102
75
  val pattern = if (validationPattern != null) Pattern.compile(validationPattern) else null
103
76
 
104
77
  result?.textBlocks?.forEach { block ->
105
- if (!isInRegion(block.boundingBox, roiRect)) return@forEach
106
-
107
78
  // Native filtering optimization:
108
79
  // If a validation pattern is provided, we check if the block text matches it.
109
80
  // If not, we skip it. This significantly reduces bridge traffic.
@@ -136,8 +107,6 @@ class VisionCameraTextRecognitionModule(
136
107
  )
137
108
  }
138
109
  block.lines.forEach { line ->
139
- // Optional: we could also check line bounding box against ROI, but block check is usually sufficient and faster
140
-
141
110
  if (line.elements.isEmpty()) {
142
111
  val detection = HashMap<String, Any?>()
143
112
  detection["resultText"] = resultText
@@ -37,12 +37,6 @@
37
37
  return self;
38
38
  }
39
39
 
40
- - (BOOL)isRect:(CGRect)rect withinROI:(CGRect)roi {
41
- // Check if the center of the rect is within the ROI
42
- CGPoint center = CGPointMake(CGRectGetMidX(rect), CGRectGetMidY(rect));
43
- return CGRectContainsPoint(roi, center);
44
- }
45
-
46
40
  - (id _Nullable)callback:(Frame* _Nonnull)frame
47
41
  withArguments:(NSDictionary* _Nullable)arguments {
48
42
  NSMutableDictionary *config = [self.configuration mutableCopy] ?: [NSMutableDictionary dictionary];
@@ -91,21 +85,6 @@
91
85
  NSMutableArray *detections = [NSMutableArray array];
92
86
  __block NSDictionary *resultPayload = @{};
93
87
 
94
- // Region of Interest
95
- NSDictionary *roiConfig = config[@"regionOfInterest"];
96
- CGRect roiRect = CGRectNull;
97
- if (roiConfig) {
98
- CGFloat top = [roiConfig[@"top"] doubleValue];
99
- CGFloat left = [roiConfig[@"left"] doubleValue];
100
- CGFloat width = [roiConfig[@"width"] doubleValue];
101
- CGFloat height = [roiConfig[@"height"] doubleValue];
102
-
103
- CGFloat imgWidth = CVPixelBufferGetWidth(CMSampleBufferGetImageBuffer(buffer));
104
- CGFloat imgHeight = CVPixelBufferGetHeight(CMSampleBufferGetImageBuffer(buffer));
105
-
106
- roiRect = CGRectMake(left * imgWidth, top * imgHeight, width * imgWidth, height * imgHeight);
107
- }
108
-
109
88
  dispatch_group_t dispatchGroup = dispatch_group_create();
110
89
  dispatch_group_enter(dispatchGroup);
111
90
  dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
@@ -116,26 +95,15 @@
116
95
  dispatch_group_leave(dispatchGroup);
117
96
  return;
118
97
  }
119
-
120
- // Filter barcodes by ROI
121
- NSMutableArray<MLKBarcode *> *filteredBarcodes = [NSMutableArray array];
122
- if (barcodes.count > 0) {
123
- for (MLKBarcode *barcode in barcodes) {
124
- if (CGRectIsNull(roiRect) || [self isRect:barcode.frame withinROI:roiRect]) {
125
- [filteredBarcodes addObject:barcode];
126
- }
127
- }
128
- }
129
-
130
98
  SharedArray *sharedBoxes = nil;
131
99
  float *boxData = nil;
132
- const NSUInteger count = filteredBarcodes.count;
100
+ const NSUInteger count = barcodes.count;
133
101
  if (count > 0 && self.proxyHolder != nil) {
134
102
  sharedBoxes = [[SharedArray alloc] initWithProxy:self.proxyHolder
135
103
  allocateWithSize:count * sizeof(float) * 6];
136
104
  boxData = (float *)sharedBoxes.data;
137
105
  }
138
- [filteredBarcodes enumerateObjectsUsingBlock:^(MLKBarcode * _Nonnull barcode, NSUInteger idx, BOOL * _Nonnull stop) {
106
+ [barcodes enumerateObjectsUsingBlock:^(MLKBarcode * _Nonnull barcode, NSUInteger idx, BOOL * _Nonnull stop) {
139
107
  NSMutableDictionary *obj = [[NSMutableDictionary alloc] init];
140
108
  obj[@"displayValue"] = barcode.displayValue ?: (id)kCFNull;
141
109
  obj[@"rawValue"] = barcode.rawValue ?: (id)kCFNull;
@@ -78,12 +78,6 @@
78
78
  return fallback;
79
79
  }
80
80
 
81
- - (BOOL)isRect:(CGRect)rect withinROI:(CGRect)roi {
82
- // Check if the center of the rect is within the ROI
83
- CGPoint center = CGPointMake(CGRectGetMidX(rect), CGRectGetMidY(rect));
84
- return CGRectContainsPoint(roi, center);
85
- }
86
-
87
81
  - (id _Nullable)callback:(Frame* _Nonnull)frame
88
82
  withArguments:(NSDictionary* _Nullable)arguments {
89
83
  CMSampleBufferRef buffer = frame.buffer;
@@ -120,21 +114,6 @@
120
114
  NSString *language = arguments[@"language"] ?: self.preferredLanguage ?: @"latin";
121
115
  NSString *validationPattern = arguments[@"validationPattern"];
122
116
 
123
- // Region of Interest
124
- NSDictionary *roiConfig = arguments[@"regionOfInterest"];
125
- CGRect roiRect = CGRectNull;
126
- if (roiConfig) {
127
- CGFloat top = [roiConfig[@"top"] doubleValue];
128
- CGFloat left = [roiConfig[@"left"] doubleValue];
129
- CGFloat width = [roiConfig[@"width"] doubleValue];
130
- CGFloat height = [roiConfig[@"height"] doubleValue];
131
-
132
- CGFloat imgWidth = CVPixelBufferGetWidth(CMSampleBufferGetImageBuffer(buffer));
133
- CGFloat imgHeight = CVPixelBufferGetHeight(CMSampleBufferGetImageBuffer(buffer));
134
-
135
- roiRect = CGRectMake(left * imgWidth, top * imgHeight, width * imgWidth, height * imgHeight);
136
- }
137
-
138
117
  NSRegularExpression *regex = nil;
139
118
  if (validationPattern.length > 0) {
140
119
  NSError *regexError = nil;
@@ -158,11 +137,6 @@
158
137
  }
159
138
  NSString *resultText = result.text;
160
139
  for (MLKTextBlock *block in result.blocks) {
161
- // Filter by ROI
162
- if (!CGRectIsNull(roiRect) && ![self isRect:block.frame withinROI:roiRect]) {
163
- continue;
164
- }
165
-
166
140
  // Filter by Regex
167
141
  if (regex != nil) {
168
142
  NSRange range = NSMakeRange(0, block.text.length);
@@ -70,7 +70,7 @@ const normalizeBarcodeDetections = payload => {
70
70
  return output;
71
71
  });
72
72
  };
73
- const mergeArgs = (baseArgs, overrides, orientation, regionOfInterest) => {
73
+ const mergeArgs = (baseArgs, overrides, orientation) => {
74
74
  'worklet';
75
75
 
76
76
  const merged = {
@@ -79,7 +79,6 @@ const mergeArgs = (baseArgs, overrides, orientation, regionOfInterest) => {
79
79
  if (overrides) {
80
80
  const {
81
81
  orientation: overrideOrientation,
82
- regionOfInterest: overrideRoi,
83
82
  ...formatMap
84
83
  } = overrides;
85
84
  Object.entries(formatMap).forEach(([key, value]) => {
@@ -90,18 +89,8 @@ const mergeArgs = (baseArgs, overrides, orientation, regionOfInterest) => {
90
89
  } else if (orientation) {
91
90
  merged.orientation = orientation;
92
91
  }
93
- if (overrideRoi) {
94
- merged.regionOfInterest = overrideRoi;
95
- } else if (regionOfInterest) {
96
- merged.regionOfInterest = regionOfInterest;
97
- }
98
- } else {
99
- if (orientation) {
100
- merged.orientation = orientation;
101
- }
102
- if (regionOfInterest) {
103
- merged.regionOfInterest = regionOfInterest;
104
- }
92
+ } else if (orientation) {
93
+ merged.orientation = orientation;
105
94
  }
106
95
  return merged;
107
96
  };
@@ -118,8 +107,7 @@ function createBarcodeScannerPlugin(formats) {
118
107
  'worklet';
119
108
 
120
109
  const orientation = overrides === null || overrides === void 0 ? void 0 : overrides.orientation;
121
- const regionOfInterest = overrides === null || overrides === void 0 ? void 0 : overrides.regionOfInterest;
122
- const args = overrides || orientation || regionOfInterest ? mergeArgs(baseOptions, overrides, orientation ?? null, regionOfInterest ?? null) : baseOptions;
110
+ const args = overrides || orientation ? mergeArgs(baseOptions, overrides, orientation ?? null) : baseOptions;
123
111
  const result = plugin.call(frame, args);
124
112
  return normalizeBarcodeDetections(result);
125
113
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_reactNativeVisionCamera","LINKING_ERROR","Platform","select","ios","default","DEFAULT_FORMATS","KNOWN_FORMATS","toNativeBarcodeOptions","formats","sanitized","length","includes","all","reduce","acc","format","BOX_STRIDE","toFloat32Array","input","Float32Array","undefined","normalizeBarcodeDetections","payload","Array","isArray","record","detections","buffer","boxes","map","detection","index","output","boxIndex","offset","top","bottom","left","right","width","height","mergeArgs","baseArgs","overrides","orientation","regionOfInterest","merged","overrideOrientation","overrideRoi","formatMap","Object","entries","forEach","key","value","createBarcodeScannerPlugin","baseOptions","plugin","VisionCameraProxy","initFrameProcessorPlugin","Error","scanBarcodes","frame","args","result","call"],"sourceRoot":"../../src","sources":["scanBarcodes.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_reactNativeVisionCamera","LINKING_ERROR","Platform","select","ios","default","DEFAULT_FORMATS","KNOWN_FORMATS","toNativeBarcodeOptions","formats","sanitized","length","includes","all","reduce","acc","format","BOX_STRIDE","toFloat32Array","input","Float32Array","undefined","normalizeBarcodeDetections","payload","Array","isArray","record","detections","buffer","boxes","map","detection","index","output","boxIndex","offset","top","bottom","left","right","width","height","mergeArgs","baseArgs","overrides","orientation","merged","overrideOrientation","formatMap","Object","entries","forEach","key","value","createBarcodeScannerPlugin","baseOptions","plugin","VisionCameraProxy","initFrameProcessorPlugin","Error","scanBarcodes","frame","args","result","call"],"sourceRoot":"../../src","sources":["scanBarcodes.ts"],"mappings":"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","ignoreList":[]}
@@ -60,7 +60,7 @@ const normalizeTextDetections = payload => {
60
60
  return output;
61
61
  });
62
62
  };
63
- const mergeTextArgs = (base, overrides, orientation, regionOfInterest) => {
63
+ const mergeTextArgs = (base, overrides, orientation) => {
64
64
  'worklet';
65
65
 
66
66
  const merged = {
@@ -69,7 +69,6 @@ const mergeTextArgs = (base, overrides, orientation, regionOfInterest) => {
69
69
  if (overrides) {
70
70
  const {
71
71
  orientation: overrideOrientation,
72
- regionOfInterest: overrideRoi,
73
72
  ...rest
74
73
  } = overrides;
75
74
  Object.assign(merged, rest);
@@ -78,18 +77,8 @@ const mergeTextArgs = (base, overrides, orientation, regionOfInterest) => {
78
77
  } else if (orientation) {
79
78
  merged.orientation = orientation;
80
79
  }
81
- if (overrideRoi) {
82
- merged.regionOfInterest = overrideRoi;
83
- } else if (regionOfInterest) {
84
- merged.regionOfInterest = regionOfInterest;
85
- }
86
- } else {
87
- if (orientation) {
88
- merged.orientation = orientation;
89
- }
90
- if (regionOfInterest) {
91
- merged.regionOfInterest = regionOfInterest;
92
- }
80
+ } else if (orientation) {
81
+ merged.orientation = orientation;
93
82
  }
94
83
  return merged;
95
84
  };
@@ -105,8 +94,7 @@ function createTextRecognitionPlugin(options) {
105
94
  'worklet';
106
95
 
107
96
  const orientation = overrides === null || overrides === void 0 ? void 0 : overrides.orientation;
108
- const regionOfInterest = overrides === null || overrides === void 0 ? void 0 : overrides.regionOfInterest;
109
- const args = overrides || orientation || regionOfInterest ? mergeTextArgs(options, overrides, orientation ?? null, regionOfInterest ?? null) : options;
97
+ const args = overrides || orientation ? mergeTextArgs(options, overrides, orientation ?? null) : options;
110
98
  const result = plugin.call(frame, args);
111
99
  return normalizeTextDetections(result);
112
100
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_reactNativeVisionCamera","LINKING_ERROR","Platform","select","ios","default","TEXT_BOX_STRIDE","toFloat32Array","input","Float32Array","undefined","normalizeTextDetections","payload","Array","isArray","record","detections","buffer","boxes","map","detection","index","output","boxIndex","offset","length","blockFrameTop","blockFrameBottom","blockFrameLeft","blockFrameRight","lineFrameTop","lineFrameBottom","lineFrameLeft","lineFrameRight","elementFrameTop","elementFrameBottom","elementFrameLeft","elementFrameRight","mergeTextArgs","base","overrides","orientation","regionOfInterest","merged","overrideOrientation","overrideRoi","rest","Object","assign","createTextRecognitionPlugin","options","plugin","VisionCameraProxy","initFrameProcessorPlugin","Error","scanText","frame","args","result","call"],"sourceRoot":"../../src","sources":["scanText.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,wBAAA,GAAAD,OAAA;AAaA,MAAME,aAAqB,GACzB,iFAAiF,GACjFC,qBAAQ,CAACC,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAEjC,MAAMC,eAAe,GAAG,EAAE;AAE1B,MAAMC,cAAc,GAAIC,KAAc,IAA+B;EACnE,SAAS;;EACT,IACEA,KAAK,IACL,OAAOA,KAAK,KAAK,QAAQ,IACzB,YAAY,IAAKA,KAAqB,EACtC;IACA,IAAI;MACF,OAAO,IAAIC,YAAY,CAACD,KAAoB,CAAC;IAC/C,CAAC,CAAC,MAAM;MACN,OAAOE,SAAS;IAClB;EACF;EACA,OAAOA,SAAS;AAClB,CAAC;AAED,MAAMC,uBAAuB,GAAIC,OAAgB,IAAsB;EACrE,SAAS;;EACT,IAAI,CAACA,OAAO,EAAE;IACZ,OAAO,EAAE;EACX;EACA,IAAIC,KAAK,CAACC,OAAO,CAACF,OAAO,CAAC,EAAE;IAC1B,OAAOA,OAAO;EAChB;EACA,MAAMG,MAAM,GAAGH,OAGd;EACD,MAAMI,UAAU,GAAGH,KAAK,CAACC,OAAO,CAACC,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEC,UAAU,CAAC,GAAGD,MAAM,CAACC,UAAU,GAAG,EAAE;EAC7E,MAAMC,MAAM,GAAGV,cAAc,CAACQ,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEG,KAAK,CAAC;EAC5C,OAAOF,UAAU,CAACG,GAAG,CAAC,CAACC,SAAS,EAAEC,KAAK,KAAK;IAC1C,MAAMC,MAAqB,GAAG;MAAE,GAAGF;IAAU,CAAC;IAC9C,MAAMG,QAAQ,GACZ,QAAOH,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAEG,QAAQ,MAAK,QAAQ,GAAGH,SAAS,CAACG,QAAQ,GAAGF,KAAK;IACtE,IAAIJ,MAAM,IAAIM,QAAQ,IAAI,CAAC,EAAE;MAC3B,MAAMC,MAAM,GAAGD,QAAQ,GAAGjB,eAAe;MACzC,IAAIkB,MAAM,GAAGlB,eAAe,IAAIW,MAAM,CAACQ,MAAM,EAAE;QAC7CH,MAAM,CAACI,aAAa,GAAGT,MAAM,CAACO,MAAM,CAAC;QACrCF,MAAM,CAACK,gBAAgB,GAAGV,MAAM,CAACO,MAAM,GAAG,CAAC,CAAC;QAC5CF,MAAM,CAACM,cAAc,GAAGX,MAAM,CAACO,MAAM,GAAG,CAAC,CAAC;QAC1CF,MAAM,CAACO,eAAe,GAAGZ,MAAM,CAACO,MAAM,GAAG,CAAC,CAAC;QAC3CF,MAAM,CAACQ,YAAY,GAAGb,MAAM,CAACO,MAAM,GAAG,CAAC,CAAC;QACxCF,MAAM,CAACS,eAAe,GAAGd,MAAM,CAACO,MAAM,GAAG,CAAC,CAAC;QAC3CF,MAAM,CAACU,aAAa,GAAGf,MAAM,CAACO,MAAM,GAAG,CAAC,CAAC;QACzCF,MAAM,CAACW,cAAc,GAAGhB,MAAM,CAACO,MAAM,GAAG,CAAC,CAAC;QAC1CF,MAAM,CAACY,eAAe,GAAGjB,MAAM,CAACO,MAAM,GAAG,CAAC,CAAC;QAC3CF,MAAM,CAACa,kBAAkB,GAAGlB,MAAM,CAACO,MAAM,GAAG,CAAC,CAAC;QAC9CF,MAAM,CAACc,gBAAgB,GAAGnB,MAAM,CAACO,MAAM,GAAG,EAAE,CAAC;QAC7CF,MAAM,CAACe,iBAAiB,GAAGpB,MAAM,CAACO,MAAM,GAAG,EAAE,CAAC;MAChD;IACF;IACA,OAAOF,MAAM;EACf,CAAC,CAAC;AACJ,CAAC;AAED,MAAMgB,aAAa,GAAGA,CACpBC,IAA4B,EAC5BC,SAGC,EACDC,WAAqC,EACrCC,gBAA0C,KACvC;EACH,SAAS;;EACT,MAAMC,MAGL,GAAG;IACF,GAAGJ;EACL,CAAC;EACD,IAAIC,SAAS,EAAE;IACb,MAAM;MAAEC,WAAW,EAAEG,mBAAmB;MAAEF,gBAAgB,EAAEG,WAAW;MAAE,GAAGC;IAAK,CAAC,GAAGN,SAAS;IAC9FO,MAAM,CAACC,MAAM,CAACL,MAAM,EAAEG,IAAI,CAAC;IAC3B,IAAIF,mBAAmB,EAAE;MACvBD,MAAM,CAACF,WAAW,GAAGG,mBAAmB;IAC1C,CAAC,MAAM,IAAIH,WAAW,EAAE;MACtBE,MAAM,CAACF,WAAW,GAAGA,WAAW;IAClC;IAEA,IAAII,WAAW,EAAE;MACfF,MAAM,CAACD,gBAAgB,GAAGG,WAAW;IACvC,CAAC,MAAM,IAAIH,gBAAgB,EAAE;MAC3BC,MAAM,CAACD,gBAAgB,GAAGA,gBAAgB;IAC5C;EAEF,CAAC,MAAM;IACL,IAAID,WAAW,EAAE;MACfE,MAAM,CAACF,WAAW,GAAGA,WAAW;IAClC;IACA,IAAIC,gBAAgB,EAAE;MACpBC,MAAM,CAACD,gBAAgB,GAAGA,gBAAgB;IAC5C;EACF;EACA,OAAOC,MAAM;AACf,CAAC;AAEM,SAASM,2BAA2BA,CACzCC,OAA+B,EACR;EACvB,MAAMC,MAAwC,GAC5CC,0CAAiB,CAACC,wBAAwB,CAAC,gBAAgB,EAAE;IAC3D,GAAGH;EACL,CAAC,CAAC;EACJ,IAAI,CAACC,MAAM,EAAE;IACX,MAAM,IAAIG,KAAK,CAACrD,aAAa,CAAC;EAChC;EACA,OAAO;IACLsD,QAAQ,EAAEA,CACRC,KAAY,EACZhB,SAGC,KACmB;MACpB,SAAS;;MACT,MAAMC,WAAW,GAAGD,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAEC,WAAW;MAC1C,MAAMC,gBAAgB,GAAGF,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAEE,gBAAgB;MACpD,MAAMe,IAAI,GACRjB,SAAS,IAAIC,WAAW,IAAIC,gBAAgB,GACxCJ,aAAa,CAACY,OAAO,EAAEV,SAAS,EAAEC,WAAW,IAAI,IAAI,EAAEC,gBAAgB,IAAI,IAAI,CAAC,GAChFQ,OAAO;MACb,MAAMQ,MAAM,GAAGP,MAAM,CAACQ,IAAI,CAACH,KAAK,EAAEC,IAAI,CAAC;MACvC,OAAO9C,uBAAuB,CAAC+C,MAAM,CAAC;IACxC;EACF,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_reactNativeVisionCamera","LINKING_ERROR","Platform","select","ios","default","TEXT_BOX_STRIDE","toFloat32Array","input","Float32Array","undefined","normalizeTextDetections","payload","Array","isArray","record","detections","buffer","boxes","map","detection","index","output","boxIndex","offset","length","blockFrameTop","blockFrameBottom","blockFrameLeft","blockFrameRight","lineFrameTop","lineFrameBottom","lineFrameLeft","lineFrameRight","elementFrameTop","elementFrameBottom","elementFrameLeft","elementFrameRight","mergeTextArgs","base","overrides","orientation","merged","overrideOrientation","rest","Object","assign","createTextRecognitionPlugin","options","plugin","VisionCameraProxy","initFrameProcessorPlugin","Error","scanText","frame","args","result","call"],"sourceRoot":"../../src","sources":["scanText.ts"],"mappings":"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","ignoreList":[]}
@@ -50,11 +50,9 @@ function useVinScanner(options) {
50
50
  lastFrameTimestampRef.current = now;
51
51
  }
52
52
  const orientationOverride = resolvedOptions.detection.forceOrientation ?? null;
53
- const regionOfInterest = resolvedOptions.detection.regionOfInterest;
54
- const barcodeArgs = {
55
- orientation: orientationOverride ?? undefined,
56
- regionOfInterest
57
- };
53
+ const barcodeArgs = orientationOverride ? {
54
+ orientation: orientationOverride
55
+ } : undefined;
58
56
  const barcodes = barcodeScanner ? barcodeScanner.scanBarcodes(frame, barcodeArgs) : [];
59
57
 
60
58
  // Performance Optimization:
@@ -71,10 +69,9 @@ function useVinScanner(options) {
71
69
  hasBarcodeVin = true;
72
70
  }
73
71
  }
74
- const textArgs = {
75
- orientation: orientationOverride ?? undefined,
76
- regionOfInterest
77
- };
72
+ const textArgs = orientationOverride ? {
73
+ orientation: orientationOverride
74
+ } : undefined;
78
75
  frameCounterRef.current += 1;
79
76
  const frameIndex = frameCounterRef.current;
80
77
  const textScanInterval = resolvedOptions.detection.textScanInterval;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNativeVisionCamera","_reactNativeWorkletsCore","_scanBarcodes","_scanText","_vinUtils","useVinScanner","options","resolvedOptions","useMemo","resolveOptions","lastFrameTimestampRef","useRef","frameCounterRef","barcodeScanner","barcode","enabled","createBarcodeScannerPlugin","formats","textScanner","text","createTextRecognitionPlugin","language","validationPattern","emitResult","useRunOnJS","result","event","onResult","frameProcessor","useFrameProcessor","frame","now","timestamp","Date","maxFps","detection","maxFrameRate","minInterval","current","orientationOverride","forceOrientation","regionOfInterest","barcodeArgs","orientation","undefined","barcodes","scanBarcodes","hasBarcodeVin","length","tempCandidates","buildVinCandidates","textBlocks","textArgs","frameIndex","textScanInterval","shouldRunText","scanText","payload","candidates","best","pickFirstCandidate","mode","resultMode","normalizedResult","raw"],"sourceRoot":"../../src","sources":["useVinScanner.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNativeVisionCamera","_reactNativeWorkletsCore","_scanBarcodes","_scanText","_vinUtils","useVinScanner","options","resolvedOptions","useMemo","resolveOptions","lastFrameTimestampRef","useRef","frameCounterRef","barcodeScanner","barcode","enabled","createBarcodeScannerPlugin","formats","textScanner","text","createTextRecognitionPlugin","language","validationPattern","emitResult","useRunOnJS","result","event","onResult","frameProcessor","useFrameProcessor","frame","now","timestamp","Date","maxFps","detection","maxFrameRate","minInterval","current","orientationOverride","forceOrientation","barcodeArgs","orientation","undefined","barcodes","scanBarcodes","hasBarcodeVin","length","tempCandidates","buildVinCandidates","textBlocks","textArgs","frameIndex","textScanInterval","shouldRunText","scanText","payload","candidates","best","pickFirstCandidate","mode","resultMode","normalizedResult","raw"],"sourceRoot":"../../src","sources":["useVinScanner.ts"],"mappings":"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","ignoreList":[]}
@@ -34,22 +34,15 @@ const DEFAULT_RESOLVED_OPTIONS = {
34
34
  resultMode: 'first',
35
35
  textScanInterval: 1,
36
36
  maxFrameRate: 30,
37
- forceOrientation: null,
38
- regionOfInterest: {
39
- top: 0,
40
- left: 0,
41
- width: 1,
42
- height: 1
43
- }
37
+ forceOrientation: null
44
38
  }
45
39
  };
46
40
  const resolveOptions = options => {
47
41
  'worklet';
48
42
 
49
- var _options$detection, _options$detection2, _options$detection3, _options$barcode, _options$barcode2, _options$text, _options$text2, _options$detection4, _options$detection5;
43
+ var _options$detection, _options$detection2, _options$barcode, _options$barcode2, _options$text, _options$text2, _options$detection3, _options$detection4;
50
44
  const resultMode = (options === null || options === void 0 || (_options$detection = options.detection) === null || _options$detection === void 0 ? void 0 : _options$detection.resultMode) ?? DEFAULT_RESOLVED_OPTIONS.detection.resultMode;
51
45
  const textScanInterval = Math.max(1, (options === null || options === void 0 || (_options$detection2 = options.detection) === null || _options$detection2 === void 0 ? void 0 : _options$detection2.textScanInterval) ?? DEFAULT_RESOLVED_OPTIONS.detection.textScanInterval);
52
- const regionOfInterest = (options === null || options === void 0 || (_options$detection3 = options.detection) === null || _options$detection3 === void 0 ? void 0 : _options$detection3.regionOfInterest) ?? DEFAULT_RESOLVED_OPTIONS.detection.regionOfInterest;
53
46
  return {
54
47
  barcode: {
55
48
  enabled: (options === null || options === void 0 || (_options$barcode = options.barcode) === null || _options$barcode === void 0 ? void 0 : _options$barcode.enabled) ?? DEFAULT_RESOLVED_OPTIONS.barcode.enabled,
@@ -62,9 +55,8 @@ const resolveOptions = options => {
62
55
  detection: {
63
56
  resultMode,
64
57
  textScanInterval,
65
- maxFrameRate: (options === null || options === void 0 || (_options$detection4 = options.detection) === null || _options$detection4 === void 0 ? void 0 : _options$detection4.maxFrameRate) ?? DEFAULT_RESOLVED_OPTIONS.detection.maxFrameRate,
66
- forceOrientation: (options === null || options === void 0 || (_options$detection5 = options.detection) === null || _options$detection5 === void 0 ? void 0 : _options$detection5.forceOrientation) ?? DEFAULT_RESOLVED_OPTIONS.detection.forceOrientation,
67
- regionOfInterest
58
+ maxFrameRate: (options === null || options === void 0 || (_options$detection3 = options.detection) === null || _options$detection3 === void 0 ? void 0 : _options$detection3.maxFrameRate) ?? DEFAULT_RESOLVED_OPTIONS.detection.maxFrameRate,
59
+ forceOrientation: (options === null || options === void 0 || (_options$detection4 = options.detection) === null || _options$detection4 === void 0 ? void 0 : _options$detection4.forceOrientation) ?? DEFAULT_RESOLVED_OPTIONS.detection.forceOrientation
68
60
  }
69
61
  };
70
62
  };
@@ -268,12 +260,9 @@ const isValidWmi = value => {
268
260
  return false;
269
261
  }
270
262
  const firstChar = value[0];
271
-
272
- // 1-5: North America
273
- // WZJ: Europe (W: Germany, Z: Italy, J: Japan)
274
-
275
- // Checking against common valid WMI first characters
276
- return typeof firstChar === 'string' && /^[1-9JWZ]/.test(firstChar);
263
+ // North America: 1, 2 (Canada), 3, 4, 5 (United States)
264
+ // Japan : 'J' Germany : 'W'
265
+ return firstChar === '1' || firstChar === '2' || firstChar === '3' || firstChar === '4' || firstChar === '5' || firstChar === 'J' || firstChar === 'W';
277
266
  };
278
267
 
279
268
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["DEFAULT_RESOLVED_OPTIONS","barcode","enabled","formats","text","language","detection","resultMode","textScanInterval","maxFrameRate","forceOrientation","regionOfInterest","top","left","width","height","resolveOptions","options","_options$detection","_options$detection2","_options$detection3","_options$barcode","_options$barcode2","_options$text","_options$text2","_options$detection4","_options$detection5","Math","max","length","exports","transliteration","A","B","C","D","E","F","G","H","J","K","L","M","N","P","R","S","T","U","V","W","X","Y","Z","weights","OCR_SUBSTITUTIONS","generateSubstitutionCandidates","value","maxSubstitutions","candidates","Set","positions","i","char","push","positionsToTry","slice","generate","current","posIndex","substitutionCount","add","pos","undefined","replacements","forEach","replacement","newValue","Array","from","extractWithContext","matches","VIN_PATTERN","patterns","pattern","match","exec","captured","replace","candidate","toUpperCase","test","tokenizeCandidate","normalized","vin","cleaned","tokens","split","filter","token","hasSubstitutableChars","substitutions","sub","isValidWmi","firstChar","isValidVin","chars","sum","numeric","Number","parseInt","weight","remainder","expected","toString","checkDigit","toBoundingBox","preferred","maybe","bottom","right","block","blockBox","blockFrameTop","blockFrameBottom","blockFrameLeft","blockFrameRight","lineBox","lineFrameTop","lineFrameBottom","lineFrameLeft","lineFrameRight","elementBox","elementFrameTop","elementFrameBottom","elementFrameLeft","elementFrameRight","candidateFromBarcode","values","rawValue","displayValue","boundingBox","map","source","origin","rawPayload","candidateFromText","valueMap","Map","elementText","order","lineText","blockText","resultText","v","_valueMap$get","has","get","set","rawText","entries","_detection$elementTex","_detection$lineText","includes","dedupeCandidates","_candidate$boundingBo","_candidate$boundingBo2","key","join","buildVinCandidates","payload","list","prefersBarcodeFirst","addBarcodeCandidates","barcodes","addTextCandidates","textBlocks","textBlock","pickFirstCandidate"],"sourceRoot":"../../src","sources":["vinUtils.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["DEFAULT_RESOLVED_OPTIONS","barcode","enabled","formats","text","language","detection","resultMode","textScanInterval","maxFrameRate","forceOrientation","resolveOptions","options","_options$detection","_options$detection2","_options$barcode","_options$barcode2","_options$text","_options$text2","_options$detection3","_options$detection4","Math","max","length","exports","transliteration","A","B","C","D","E","F","G","H","J","K","L","M","N","P","R","S","T","U","V","W","X","Y","Z","weights","OCR_SUBSTITUTIONS","generateSubstitutionCandidates","value","maxSubstitutions","candidates","Set","positions","i","char","push","positionsToTry","slice","generate","current","posIndex","substitutionCount","add","pos","undefined","replacements","forEach","replacement","newValue","Array","from","extractWithContext","matches","VIN_PATTERN","patterns","pattern","match","exec","captured","replace","candidate","toUpperCase","test","tokenizeCandidate","normalized","vin","cleaned","tokens","split","filter","token","hasSubstitutableChars","substitutions","sub","isValidWmi","firstChar","isValidVin","chars","sum","numeric","Number","parseInt","weight","remainder","expected","toString","checkDigit","toBoundingBox","preferred","maybe","top","bottom","left","right","width","height","block","blockBox","blockFrameTop","blockFrameBottom","blockFrameLeft","blockFrameRight","lineBox","lineFrameTop","lineFrameBottom","lineFrameLeft","lineFrameRight","elementBox","elementFrameTop","elementFrameBottom","elementFrameLeft","elementFrameRight","candidateFromBarcode","values","rawValue","displayValue","boundingBox","map","source","origin","rawPayload","candidateFromText","valueMap","Map","elementText","order","lineText","blockText","resultText","v","_valueMap$get","has","get","set","rawText","entries","_detection$elementTex","_detection$lineText","includes","dedupeCandidates","_candidate$boundingBo","_candidate$boundingBo2","key","join","buildVinCandidates","payload","list","prefersBarcodeFirst","addBarcodeCandidates","barcodes","addTextCandidates","textBlocks","textBlock","pickFirstCandidate"],"sourceRoot":"../../src","sources":["vinUtils.ts"],"mappings":"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","ignoreList":[]}