barkoder-nativescript 1.6.3 → 1.6.5

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 (68) hide show
  1. package/barkoder-nativescript.android.ts +242 -4
  2. package/barkoder-nativescript.common.ts +30 -2
  3. package/barkoder-nativescript.ios.ts +252 -3
  4. package/package.json +1 -1
  5. package/platforms/android/barkoder.aar +0 -0
  6. package/platforms/ios/Barkoder.xcframework/Info.plist +5 -5
  7. package/platforms/ios/Barkoder.xcframework/ios-arm64/Barkoder.framework/Barkoder +0 -0
  8. package/platforms/ios/Barkoder.xcframework/ios-arm64/Barkoder.framework/Headers/iBarkoder.h +12 -2
  9. package/platforms/ios/Barkoder.xcframework/ios-arm64/Barkoder.framework/Info.plist +0 -0
  10. package/platforms/ios/Barkoder.xcframework/ios-arm64/Barkoder.framework/Modules/module.modulemap +0 -0
  11. package/platforms/ios/Barkoder.xcframework/ios-arm64/Barkoder.framework/default.metallib +0 -0
  12. package/platforms/ios/Barkoder.xcframework/ios-arm64/Barkoder.framework/float16_512x384.mlmodelc/coremldata.bin +0 -0
  13. package/platforms/ios/Barkoder.xcframework/ios-arm64/Barkoder.framework/float16_512x384.mlmodelc/metadata.json +3 -3
  14. package/platforms/ios/Barkoder.xcframework/ios-arm64/Barkoder.framework/float16_512x384.mlmodelc/model.mil +1 -1
  15. package/platforms/ios/Barkoder.xcframework/ios-arm64/Barkoder.framework/int8_384x256_small2.mlmodelc/analytics/coremldata.bin +0 -0
  16. package/platforms/ios/Barkoder.xcframework/ios-arm64/Barkoder.framework/int8_384x256_small2.mlmodelc/coremldata.bin +0 -0
  17. package/platforms/ios/Barkoder.xcframework/{ios-arm64_x86_64-simulator/Barkoder.framework/float16_384x256.mlmodelc → ios-arm64/Barkoder.framework/int8_384x256_small2.mlmodelc}/metadata.json +37 -37
  18. package/platforms/ios/Barkoder.xcframework/ios-arm64/Barkoder.framework/int8_384x256_small2.mlmodelc/model/coremldata.bin +0 -0
  19. package/platforms/ios/Barkoder.xcframework/ios-arm64/Barkoder.framework/int8_384x256_small2.mlmodelc/model.espresso.net +5929 -0
  20. package/platforms/ios/Barkoder.xcframework/ios-arm64/Barkoder.framework/int8_384x256_small2.mlmodelc/model.espresso.shape +1915 -0
  21. package/platforms/ios/Barkoder.xcframework/ios-arm64/Barkoder.framework/int8_384x256_small2.mlmodelc/model.espresso.weights +0 -0
  22. package/platforms/ios/Barkoder.xcframework/ios-arm64/Barkoder.framework/int8_384x256_small2.mlmodelc/neural_network_optionals/coremldata.bin +0 -0
  23. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/Barkoder +0 -0
  24. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/Headers/iBarkoder.h +12 -2
  25. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/Info.plist +0 -0
  26. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/Modules/module.modulemap +0 -0
  27. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/_CodeSignature/CodeResources +78 -49
  28. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/default.metallib +0 -0
  29. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/float16_512x384.mlmodelc/coremldata.bin +0 -0
  30. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/float16_512x384.mlmodelc/metadata.json +4 -4
  31. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/float16_512x384.mlmodelc/model.mil +1 -1
  32. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/int8_384x256_small2.mlmodelc/analytics/coremldata.bin +0 -0
  33. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/int8_384x256_small2.mlmodelc/coremldata.bin +0 -0
  34. package/platforms/ios/Barkoder.xcframework/{ios-arm64/Barkoder.framework/float16_384x256.mlmodelc → ios-arm64_x86_64-simulator/Barkoder.framework/int8_384x256_small2.mlmodelc}/metadata.json +37 -37
  35. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/int8_384x256_small2.mlmodelc/model/coremldata.bin +0 -0
  36. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/int8_384x256_small2.mlmodelc/model.espresso.net +5929 -0
  37. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/int8_384x256_small2.mlmodelc/model.espresso.shape +1915 -0
  38. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/int8_384x256_small2.mlmodelc/model.espresso.weights +0 -0
  39. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/int8_384x256_small2.mlmodelc/neural_network_optionals/coremldata.bin +0 -0
  40. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64/BarkoderSDK.framework/BarkoderSDK +0 -0
  41. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64/BarkoderSDK.framework/Headers/BarkoderSDK-Swift.h +153 -12
  42. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64/BarkoderSDK.framework/Info.plist +0 -0
  43. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64/BarkoderSDK.framework/Modules/BarkoderSDK.swiftmodule/arm64-apple-ios.abi.json +4172 -181
  44. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64/BarkoderSDK.framework/Modules/BarkoderSDK.swiftmodule/arm64-apple-ios.private.swiftinterface +96 -4
  45. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64/BarkoderSDK.framework/Modules/BarkoderSDK.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  46. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64/BarkoderSDK.framework/Modules/BarkoderSDK.swiftmodule/arm64-apple-ios.swiftinterface +96 -4
  47. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64/BarkoderSDK.framework/templates.json +346 -15
  48. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64_x86_64-simulator/BarkoderSDK.framework/BarkoderSDK +0 -0
  49. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64_x86_64-simulator/BarkoderSDK.framework/Headers/BarkoderSDK-Swift.h +306 -24
  50. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64_x86_64-simulator/BarkoderSDK.framework/Info.plist +0 -0
  51. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64_x86_64-simulator/BarkoderSDK.framework/Modules/BarkoderSDK.swiftmodule/arm64-apple-ios-simulator.abi.json +4172 -181
  52. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64_x86_64-simulator/BarkoderSDK.framework/Modules/BarkoderSDK.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +96 -4
  53. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64_x86_64-simulator/BarkoderSDK.framework/Modules/BarkoderSDK.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
  54. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64_x86_64-simulator/BarkoderSDK.framework/Modules/BarkoderSDK.swiftmodule/arm64-apple-ios-simulator.swiftinterface +96 -4
  55. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64_x86_64-simulator/BarkoderSDK.framework/Modules/BarkoderSDK.swiftmodule/x86_64-apple-ios-simulator.abi.json +4172 -181
  56. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64_x86_64-simulator/BarkoderSDK.framework/Modules/BarkoderSDK.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +96 -4
  57. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64_x86_64-simulator/BarkoderSDK.framework/Modules/BarkoderSDK.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
  58. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64_x86_64-simulator/BarkoderSDK.framework/Modules/BarkoderSDK.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +96 -4
  59. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64_x86_64-simulator/BarkoderSDK.framework/_CodeSignature/CodeResources +25 -25
  60. package/platforms/ios/BarkoderSDK.xcframework/ios-arm64_x86_64-simulator/BarkoderSDK.framework/templates.json +346 -15
  61. package/platforms/ios/Barkoder.xcframework/ios-arm64/Barkoder.framework/float16_384x256.mlmodelc/analytics/coremldata.bin +0 -0
  62. package/platforms/ios/Barkoder.xcframework/ios-arm64/Barkoder.framework/float16_384x256.mlmodelc/coremldata.bin +0 -0
  63. package/platforms/ios/Barkoder.xcframework/ios-arm64/Barkoder.framework/float16_384x256.mlmodelc/model.mil +0 -753
  64. package/platforms/ios/Barkoder.xcframework/ios-arm64/Barkoder.framework/float16_384x256.mlmodelc/weights/weight.bin +0 -0
  65. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/float16_384x256.mlmodelc/analytics/coremldata.bin +0 -0
  66. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/float16_384x256.mlmodelc/coremldata.bin +0 -0
  67. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/float16_384x256.mlmodelc/model.mil +0 -753
  68. package/platforms/ios/Barkoder.xcframework/ios-arm64_x86_64-simulator/Barkoder.framework/float16_384x256.mlmodelc/weights/weight.bin +0 -0
@@ -1,6 +1,6 @@
1
1
  #if 0
2
2
  #elif defined(__arm64__) && __arm64__
3
- // Generated by Apple Swift version 6.0.3 effective-5.10 (swiftlang-6.0.3.1.10 clang-1600.0.30.1)
3
+ // Generated by Apple Swift version 6.1.2 effective-5.10 (swiftlang-6.1.2.1.2 clang-1700.0.13.5)
4
4
  #ifndef BARKODERSDK_SWIFT_H
5
5
  #define BARKODERSDK_SWIFT_H
6
6
  #pragma clang diagnostic push
@@ -65,6 +65,7 @@
65
65
  # if __has_include(<uchar.h>)
66
66
  # include <uchar.h>
67
67
  # elif !defined(__cplusplus)
68
+ typedef unsigned char char8_t;
68
69
  typedef uint_least16_t char16_t;
69
70
  typedef uint_least32_t char32_t;
70
71
  # endif
@@ -307,12 +308,141 @@ typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
307
308
  #endif
308
309
 
309
310
  #if defined(__OBJC__)
311
+
312
+ enum BarkoderARMode : NSInteger;
313
+ enum BarkoderAROverlayRefresh : NSInteger;
310
314
  @class UIColor;
315
+ enum BarkoderARLocationType : NSInteger;
316
+ enum BarkoderARHeaderShowMode : NSInteger;
317
+ @class NSString;
318
+ /// Contains all configurable options for AR-related barcode behavior.
319
+ SWIFT_CLASS("_TtC11BarkoderSDK16BarkoderARConfig")
320
+ @interface BarkoderARConfig : NSObject
321
+ /// Defines the overall AR behavior mode (e.g., interactive, non-interactive, disabled).
322
+ /// note:
323
+ /// Default value is <code>.off</code>
324
+ @property (nonatomic) enum BarkoderARMode arMode;
325
+ /// Time delay (in milliseconds) after which a detected barcode result is considered expired and removed from the view.
326
+ /// note:
327
+ /// Default value is 800 ms
328
+ @property (nonatomic) NSInteger resultDisappearanceDelayMs;
329
+ /// Speed factor (0.1 to 1.0) for smooth interpolation of overlay positions during camera movement.
330
+ /// Higher values mean faster transition.
331
+ /// note:
332
+ /// Default value is 0.3
333
+ @property (nonatomic) float locationTransitionSpeed;
334
+ /// Defines how often AR overlays are updated.
335
+ /// A smoother refresh enhances visual quality but consume more processing power.
336
+ /// note:
337
+ /// Default value is <code>.smooth</code>
338
+ @property (nonatomic) enum BarkoderAROverlayRefresh overlayRefresh;
339
+ /// Color used to draw overlays around selected barcodes.
340
+ @property (nonatomic, strong) UIColor * _Nonnull selectedLocationColor;
341
+ /// Color used to draw overlays around non-selected barcodes.
342
+ @property (nonatomic, strong) UIColor * _Nonnull nonSelectedLocationColor;
343
+ /// Line width for selected barcode overlays.
344
+ /// note:
345
+ /// Default value is 2.0
346
+ @property (nonatomic) float selectedLocationLineWidth;
347
+ /// Line width for non-selected barcode overlays.
348
+ /// note:
349
+ /// Default value is 2.0
350
+ @property (nonatomic) float nonSelectedLocationLineWidth;
351
+ /// Type of location overlay to be drawn (tight box, bounding box, or none).
352
+ /// note:
353
+ /// Default is <code>.tight</code>
354
+ @property (nonatomic) enum BarkoderARLocationType locationType;
355
+ /// Whether a double-tap gesture is enabled to freeze/unfreeze barcode scanning in AR mode.
356
+ /// note:
357
+ /// Default value is <code>true</code>
358
+ @property (nonatomic) BOOL doubleTapToFreezeEnabled;
359
+ /// Enables or disables the capturing and processing of image data when a barcode is selected
360
+ /// note:
361
+ /// Default value is false
362
+ @property (nonatomic) BOOL imageResultEnabled;
363
+ /// Retrieve/Sets whether to enable barcode thumbnail on result
364
+ /// note:
365
+ /// Default value is false
366
+ @property (nonatomic) BOOL barcodeThumbnailOnResult;
367
+ /// Height of the header above the barcode.
368
+ /// note:
369
+ /// Default value is 19.0
370
+ @property (nonatomic) float headerHeight;
371
+ /// Defines when the header should be visible above detected barcodes.
372
+ /// note:
373
+ /// Default is <code>.onSelected</code>
374
+ @property (nonatomic) enum BarkoderARHeaderShowMode headerShowMode;
375
+ /// Maximum text height inside the header area.
376
+ /// note:
377
+ /// Default value is 20.0
378
+ @property (nonatomic) float headerMaxTextHeight;
379
+ /// Minimum text height inside the header area.
380
+ /// note:
381
+ /// Default value is 7.0
382
+ @property (nonatomic) float headerMinTextHeight;
383
+ /// Text color used for the header when the barcode is selected.
384
+ @property (nonatomic, strong) UIColor * _Nonnull headerTextColorSelected;
385
+ /// Text color used for the header when the barcode is not selected.
386
+ @property (nonatomic, strong) UIColor * _Nonnull headerTextColorNonSelected;
387
+ /// Horizontal margin inside the header, creating equal padding on both sides of the text.
388
+ /// note:
389
+ /// Default value is 5.0
390
+ @property (nonatomic) float headerHorizontalTextMargin;
391
+ /// Vertical margin inside the header, creating equal padding on both sides of the text.
392
+ /// note:
393
+ /// Default value is 3.0
394
+ @property (nonatomic) float headerVerticalTextMargin;
395
+ /// Format string for the header text above barcodes.
396
+ /// Supports dynamic placeholders like [barcode_type], [barcode_text], [gs1], etc.
397
+ /// note:
398
+ /// Default value is <code>"[barcode_text]"</code>
399
+ @property (nonatomic, copy) NSString * _Nonnull headerTextFormat;
400
+ - (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
401
+ @end
402
+
403
+ /// Defines when the header text (above a barcode) should be shown in AR mode.
404
+ typedef SWIFT_ENUM(NSInteger, BarkoderARHeaderShowMode, open) {
405
+ /// Never display the header text.
406
+ BarkoderARHeaderShowModeNever = 0,
407
+ /// Always display the header text above detected barcodes.
408
+ BarkoderARHeaderShowModeAlways = 1,
409
+ /// Display the header text only when the barcode is selected.
410
+ BarkoderARHeaderShowModeOnSelected = 2,
411
+ };
412
+
413
+ /// Specifies how the location overlays around barcodes should be drawn.
414
+ typedef SWIFT_ENUM(NSInteger, BarkoderARLocationType, open) {
415
+ /// No overlay will be drawn.
416
+ BarkoderARLocationTypeNone = 0,
417
+ /// A tight overlay will be drawn closely around the detected barcode.
418
+ BarkoderARLocationTypeTight = 1,
419
+ /// A full bounding rectangle will be drawn around the barcode.
420
+ BarkoderARLocationTypeBoundingBox = 2,
421
+ };
422
+
423
+ /// Defines the behavior mode for AR barcode selection and interaction.
424
+ typedef SWIFT_ENUM(NSInteger, BarkoderARMode, open) {
425
+ /// AR mode is disabled. No AR-specific features will be used.
426
+ BarkoderARModeOff = 0,
427
+ /// AR is enabled, but new barcodes are not selected automatically by default.
428
+ BarkoderARModeInteractiveDisabled = 1,
429
+ /// AR is enabled, and new barcodes are automatically selected by default.
430
+ BarkoderARModeInteractiveEnabled = 2,
431
+ /// AR is enabled with non-interactive behavior; selection happens automatically without any user actions.
432
+ BarkoderARModeNonInteractive = 3,
433
+ };
434
+
435
+ /// Defines the refresh rate for updating AR barcode overlays on the camera preview.
436
+ typedef SWIFT_ENUM(NSInteger, BarkoderAROverlayRefresh, open) {
437
+ /// Smooth refresh rate — provides optimal visual fidelity, suitable for high-performance devices.
438
+ BarkoderAROverlayRefreshSmooth = 0,
439
+ /// Normal refresh rate — offers a balance between performance and power usage, ideal for lower-end devices.
440
+ BarkoderAROverlayRefreshNormal = 1,
441
+ };
442
+
311
443
  @class Config;
312
444
  enum BarkoderResolution : NSInteger;
313
- @class NSString;
314
445
  @class LicenseCheckResult;
315
-
316
446
  SWIFT_CLASS("_TtC11BarkoderSDK14BarkoderConfig")
317
447
  @interface BarkoderConfig : NSObject
318
448
  /// Retrieves/Sets the color of the lines outlining the Region of Interest (ROI) for barcode scanning on the camera feed
@@ -377,6 +507,8 @@ SWIFT_CLASS("_TtC11BarkoderSDK14BarkoderConfig")
377
507
  @property (nonatomic) BOOL locationInPreviewEnabled;
378
508
  /// Configures the Barkoder functionality based on the provided configuration
379
509
  @property (nonatomic, strong) Config * _Nullable decoderConfig;
510
+ /// Configuration options for AR barcode detection and overlay behavior.
511
+ @property (nonatomic, strong) BarkoderARConfig * _Nonnull arConfig;
380
512
  /// Retrieve/Sets the resolution for barcode scanning
381
513
  /// note:
382
514
  /// Default value is BarkoderView.BarkoderResolution.HD
@@ -387,6 +519,10 @@ SWIFT_CLASS("_TtC11BarkoderSDK14BarkoderConfig")
387
519
  @property (nonatomic) BOOL barcodeThumbnailOnResult;
388
520
  /// Retrieve/Sets the threshold between duplicate scans
389
521
  @property (nonatomic) NSInteger thresholdBetweenDuplicatesScans;
522
+ /// Controls whether duplicate barcode locations are shown on preview.
523
+ /// note:
524
+ /// Default value is true
525
+ @property (nonatomic) BOOL showDuplicatesLocations;
390
526
  /// Defines the Region of Interest (ROI) on the camera preview for barcode scanning, specifying an area where the application focuses on detecting barcodes
391
527
  - (BOOL)setRegionOfInterest:(CGRect)value error:(NSError * _Nullable * _Nullable)error;
392
528
  /// Retrieves the region of interest (ROI)
@@ -421,7 +557,6 @@ SWIFT_CLASS("_TtC11BarkoderSDK14BarkoderConfig")
421
557
  enum BarkoderConfigTemplate : NSInteger;
422
558
  @class NSURL;
423
559
  @class NSData;
424
-
425
560
  SWIFT_CLASS("_TtC11BarkoderSDK14BarkoderHelper")
426
561
  @interface BarkoderHelper : NSObject
427
562
  /// Scan barcode from bitmap image
@@ -488,24 +623,21 @@ typedef SWIFT_ENUM(NSInteger, BarkoderConfigTemplate, open) {
488
623
  BarkoderConfigTemplateGallery_scan = 11,
489
624
  BarkoderConfigTemplateComposite = 12,
490
625
  BarkoderConfigTemplatePostal_codes = 13,
626
+ BarkoderConfigTemplateAr = 14,
491
627
  };
492
628
 
493
-
494
-
495
629
  SWIFT_PROTOCOL("_TtP11BarkoderSDK27BarkoderPerformanceDelegate_")
496
630
  @protocol BarkoderPerformanceDelegate
497
631
  @optional
498
632
  - (void)performanceReceivedWithFps:(float)fps dps:(float)dps;
499
633
  @end
500
634
 
501
-
502
635
  SWIFT_PROTOCOL("_TtP11BarkoderSDK29BarkoderPreviewFramesDelegate_")
503
636
  @protocol BarkoderPreviewFramesDelegate
504
637
  @optional
505
638
  - (void)cameraFrameReceivedWithSampleBuffer:(CMSampleBufferRef _Nonnull)sampleBuffer;
506
639
  @end
507
640
 
508
-
509
641
  SWIFT_PROTOCOL("_TtP11BarkoderSDK22BarkoderResultDelegate_")
510
642
  @protocol BarkoderResultDelegate
511
643
  - (void)scanningFinished:(NSArray<DecoderResult *> * _Nonnull)decoderResults thumbnails:(NSArray<UIImage *> * _Nullable)thumbnails image:(UIImage * _Nullable)image;
@@ -513,7 +645,6 @@ SWIFT_PROTOCOL("_TtP11BarkoderSDK22BarkoderResultDelegate_")
513
645
 
514
646
  @class NSCoder;
515
647
  enum BarkoderCameraPosition : NSInteger;
516
-
517
648
  SWIFT_CLASS("_TtC11BarkoderSDK12BarkoderView")
518
649
  @interface BarkoderView : UIView <BarkoderPreviewFramesDelegate>
519
650
  @property (nonatomic, strong) BarkoderConfig * _Nullable config;
@@ -532,6 +663,12 @@ SWIFT_CLASS("_TtC11BarkoderSDK12BarkoderView")
532
663
  - (void)stopScanning;
533
664
  /// Temporarily suspends the barcode scanning process, pausing the camera feed without completely stopping the scanning session
534
665
  - (void)pauseScanning;
666
+ /// Freezes the AR scanning session by capturing a still image from the camera feed.
667
+ /// Use only when AR mode is enabled to temporarily freeze the view while keeping overlays visible.
668
+ - (void)freezeScanning;
669
+ /// Unfreezes the AR scanning session by removing the still image and reactivating the camera and overlays.
670
+ /// Use only when AR mode is enabled to restore the live AR view and continue scanning.
671
+ - (void)unfreezeScanning;
535
672
  /// Sets the zoom factor for the device’s camera, adjusting the level of zoom during barcode scanning
536
673
  - (void)setZoomFactor:(float)zoomFactor;
537
674
  /// Sets the camera to be used for scanning (back/front).
@@ -544,6 +681,8 @@ SWIFT_CLASS("_TtC11BarkoderSDK12BarkoderView")
544
681
  - (void)setFlash:(BOOL)enabled;
545
682
  /// Retrieves the maximum available zoom factor for the device’s camera
546
683
  - (void)getMaxZoomFactor:(void (^ _Nonnull)(float))completion;
684
+ /// Retrieves the current zoom factor for the device’s camera
685
+ - (float)getCurrentZoomFactor SWIFT_WARN_UNUSED_RESULT;
547
686
  /// Checks whether the device has a built-in flash (torch) that can be used for illumination during barcode scanning
548
687
  - (void)isFlashAvailable:(void (^ _Nonnull)(BOOL))completion;
549
688
  /// Adjusts the camera’s exposure dynamically based on the provided intensity, cycling through predefined compensation values.
@@ -580,9 +719,11 @@ typedef SWIFT_ENUM(NSInteger, BarkoderCameraPosition, open) {
580
719
  BarkoderCameraPositionFRONT = 1,
581
720
  };
582
721
 
583
-
584
-
585
-
722
+ @class UIGestureRecognizer;
723
+ @class UITouch;
724
+ @interface BarkoderView (SWIFT_EXTENSION(BarkoderSDK)) <UIGestureRecognizerDelegate>
725
+ - (BOOL)gestureRecognizer:(UIGestureRecognizer * _Nonnull)gestureRecognizer shouldReceiveTouch:(UITouch * _Nonnull)touch SWIFT_WARN_UNUSED_RESULT;
726
+ @end
586
727
 
587
728
  @interface iBarkoder (SWIFT_EXTENSION(BarkoderSDK))
588
729
  /// Retrieves the version of the Barkoder library
@@ -599,7 +740,7 @@ typedef SWIFT_ENUM(NSInteger, BarkoderCameraPosition, open) {
599
740
  #endif
600
741
 
601
742
  #elif defined(__x86_64__) && __x86_64__
602
- // Generated by Apple Swift version 6.0.3 effective-5.10 (swiftlang-6.0.3.1.10 clang-1600.0.30.1)
743
+ // Generated by Apple Swift version 6.1.2 effective-5.10 (swiftlang-6.1.2.1.2 clang-1700.0.13.5)
603
744
  #ifndef BARKODERSDK_SWIFT_H
604
745
  #define BARKODERSDK_SWIFT_H
605
746
  #pragma clang diagnostic push
@@ -664,6 +805,7 @@ typedef SWIFT_ENUM(NSInteger, BarkoderCameraPosition, open) {
664
805
  # if __has_include(<uchar.h>)
665
806
  # include <uchar.h>
666
807
  # elif !defined(__cplusplus)
808
+ typedef unsigned char char8_t;
667
809
  typedef uint_least16_t char16_t;
668
810
  typedef uint_least32_t char32_t;
669
811
  # endif
@@ -906,12 +1048,141 @@ typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
906
1048
  #endif
907
1049
 
908
1050
  #if defined(__OBJC__)
1051
+
1052
+ enum BarkoderARMode : NSInteger;
1053
+ enum BarkoderAROverlayRefresh : NSInteger;
909
1054
  @class UIColor;
1055
+ enum BarkoderARLocationType : NSInteger;
1056
+ enum BarkoderARHeaderShowMode : NSInteger;
1057
+ @class NSString;
1058
+ /// Contains all configurable options for AR-related barcode behavior.
1059
+ SWIFT_CLASS("_TtC11BarkoderSDK16BarkoderARConfig")
1060
+ @interface BarkoderARConfig : NSObject
1061
+ /// Defines the overall AR behavior mode (e.g., interactive, non-interactive, disabled).
1062
+ /// note:
1063
+ /// Default value is <code>.off</code>
1064
+ @property (nonatomic) enum BarkoderARMode arMode;
1065
+ /// Time delay (in milliseconds) after which a detected barcode result is considered expired and removed from the view.
1066
+ /// note:
1067
+ /// Default value is 800 ms
1068
+ @property (nonatomic) NSInteger resultDisappearanceDelayMs;
1069
+ /// Speed factor (0.1 to 1.0) for smooth interpolation of overlay positions during camera movement.
1070
+ /// Higher values mean faster transition.
1071
+ /// note:
1072
+ /// Default value is 0.3
1073
+ @property (nonatomic) float locationTransitionSpeed;
1074
+ /// Defines how often AR overlays are updated.
1075
+ /// A smoother refresh enhances visual quality but consume more processing power.
1076
+ /// note:
1077
+ /// Default value is <code>.smooth</code>
1078
+ @property (nonatomic) enum BarkoderAROverlayRefresh overlayRefresh;
1079
+ /// Color used to draw overlays around selected barcodes.
1080
+ @property (nonatomic, strong) UIColor * _Nonnull selectedLocationColor;
1081
+ /// Color used to draw overlays around non-selected barcodes.
1082
+ @property (nonatomic, strong) UIColor * _Nonnull nonSelectedLocationColor;
1083
+ /// Line width for selected barcode overlays.
1084
+ /// note:
1085
+ /// Default value is 2.0
1086
+ @property (nonatomic) float selectedLocationLineWidth;
1087
+ /// Line width for non-selected barcode overlays.
1088
+ /// note:
1089
+ /// Default value is 2.0
1090
+ @property (nonatomic) float nonSelectedLocationLineWidth;
1091
+ /// Type of location overlay to be drawn (tight box, bounding box, or none).
1092
+ /// note:
1093
+ /// Default is <code>.tight</code>
1094
+ @property (nonatomic) enum BarkoderARLocationType locationType;
1095
+ /// Whether a double-tap gesture is enabled to freeze/unfreeze barcode scanning in AR mode.
1096
+ /// note:
1097
+ /// Default value is <code>true</code>
1098
+ @property (nonatomic) BOOL doubleTapToFreezeEnabled;
1099
+ /// Enables or disables the capturing and processing of image data when a barcode is selected
1100
+ /// note:
1101
+ /// Default value is false
1102
+ @property (nonatomic) BOOL imageResultEnabled;
1103
+ /// Retrieve/Sets whether to enable barcode thumbnail on result
1104
+ /// note:
1105
+ /// Default value is false
1106
+ @property (nonatomic) BOOL barcodeThumbnailOnResult;
1107
+ /// Height of the header above the barcode.
1108
+ /// note:
1109
+ /// Default value is 19.0
1110
+ @property (nonatomic) float headerHeight;
1111
+ /// Defines when the header should be visible above detected barcodes.
1112
+ /// note:
1113
+ /// Default is <code>.onSelected</code>
1114
+ @property (nonatomic) enum BarkoderARHeaderShowMode headerShowMode;
1115
+ /// Maximum text height inside the header area.
1116
+ /// note:
1117
+ /// Default value is 20.0
1118
+ @property (nonatomic) float headerMaxTextHeight;
1119
+ /// Minimum text height inside the header area.
1120
+ /// note:
1121
+ /// Default value is 7.0
1122
+ @property (nonatomic) float headerMinTextHeight;
1123
+ /// Text color used for the header when the barcode is selected.
1124
+ @property (nonatomic, strong) UIColor * _Nonnull headerTextColorSelected;
1125
+ /// Text color used for the header when the barcode is not selected.
1126
+ @property (nonatomic, strong) UIColor * _Nonnull headerTextColorNonSelected;
1127
+ /// Horizontal margin inside the header, creating equal padding on both sides of the text.
1128
+ /// note:
1129
+ /// Default value is 5.0
1130
+ @property (nonatomic) float headerHorizontalTextMargin;
1131
+ /// Vertical margin inside the header, creating equal padding on both sides of the text.
1132
+ /// note:
1133
+ /// Default value is 3.0
1134
+ @property (nonatomic) float headerVerticalTextMargin;
1135
+ /// Format string for the header text above barcodes.
1136
+ /// Supports dynamic placeholders like [barcode_type], [barcode_text], [gs1], etc.
1137
+ /// note:
1138
+ /// Default value is <code>"[barcode_text]"</code>
1139
+ @property (nonatomic, copy) NSString * _Nonnull headerTextFormat;
1140
+ - (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
1141
+ @end
1142
+
1143
+ /// Defines when the header text (above a barcode) should be shown in AR mode.
1144
+ typedef SWIFT_ENUM(NSInteger, BarkoderARHeaderShowMode, open) {
1145
+ /// Never display the header text.
1146
+ BarkoderARHeaderShowModeNever = 0,
1147
+ /// Always display the header text above detected barcodes.
1148
+ BarkoderARHeaderShowModeAlways = 1,
1149
+ /// Display the header text only when the barcode is selected.
1150
+ BarkoderARHeaderShowModeOnSelected = 2,
1151
+ };
1152
+
1153
+ /// Specifies how the location overlays around barcodes should be drawn.
1154
+ typedef SWIFT_ENUM(NSInteger, BarkoderARLocationType, open) {
1155
+ /// No overlay will be drawn.
1156
+ BarkoderARLocationTypeNone = 0,
1157
+ /// A tight overlay will be drawn closely around the detected barcode.
1158
+ BarkoderARLocationTypeTight = 1,
1159
+ /// A full bounding rectangle will be drawn around the barcode.
1160
+ BarkoderARLocationTypeBoundingBox = 2,
1161
+ };
1162
+
1163
+ /// Defines the behavior mode for AR barcode selection and interaction.
1164
+ typedef SWIFT_ENUM(NSInteger, BarkoderARMode, open) {
1165
+ /// AR mode is disabled. No AR-specific features will be used.
1166
+ BarkoderARModeOff = 0,
1167
+ /// AR is enabled, but new barcodes are not selected automatically by default.
1168
+ BarkoderARModeInteractiveDisabled = 1,
1169
+ /// AR is enabled, and new barcodes are automatically selected by default.
1170
+ BarkoderARModeInteractiveEnabled = 2,
1171
+ /// AR is enabled with non-interactive behavior; selection happens automatically without any user actions.
1172
+ BarkoderARModeNonInteractive = 3,
1173
+ };
1174
+
1175
+ /// Defines the refresh rate for updating AR barcode overlays on the camera preview.
1176
+ typedef SWIFT_ENUM(NSInteger, BarkoderAROverlayRefresh, open) {
1177
+ /// Smooth refresh rate — provides optimal visual fidelity, suitable for high-performance devices.
1178
+ BarkoderAROverlayRefreshSmooth = 0,
1179
+ /// Normal refresh rate — offers a balance between performance and power usage, ideal for lower-end devices.
1180
+ BarkoderAROverlayRefreshNormal = 1,
1181
+ };
1182
+
910
1183
  @class Config;
911
1184
  enum BarkoderResolution : NSInteger;
912
- @class NSString;
913
1185
  @class LicenseCheckResult;
914
-
915
1186
  SWIFT_CLASS("_TtC11BarkoderSDK14BarkoderConfig")
916
1187
  @interface BarkoderConfig : NSObject
917
1188
  /// Retrieves/Sets the color of the lines outlining the Region of Interest (ROI) for barcode scanning on the camera feed
@@ -976,6 +1247,8 @@ SWIFT_CLASS("_TtC11BarkoderSDK14BarkoderConfig")
976
1247
  @property (nonatomic) BOOL locationInPreviewEnabled;
977
1248
  /// Configures the Barkoder functionality based on the provided configuration
978
1249
  @property (nonatomic, strong) Config * _Nullable decoderConfig;
1250
+ /// Configuration options for AR barcode detection and overlay behavior.
1251
+ @property (nonatomic, strong) BarkoderARConfig * _Nonnull arConfig;
979
1252
  /// Retrieve/Sets the resolution for barcode scanning
980
1253
  /// note:
981
1254
  /// Default value is BarkoderView.BarkoderResolution.HD
@@ -986,6 +1259,10 @@ SWIFT_CLASS("_TtC11BarkoderSDK14BarkoderConfig")
986
1259
  @property (nonatomic) BOOL barcodeThumbnailOnResult;
987
1260
  /// Retrieve/Sets the threshold between duplicate scans
988
1261
  @property (nonatomic) NSInteger thresholdBetweenDuplicatesScans;
1262
+ /// Controls whether duplicate barcode locations are shown on preview.
1263
+ /// note:
1264
+ /// Default value is true
1265
+ @property (nonatomic) BOOL showDuplicatesLocations;
989
1266
  /// Defines the Region of Interest (ROI) on the camera preview for barcode scanning, specifying an area where the application focuses on detecting barcodes
990
1267
  - (BOOL)setRegionOfInterest:(CGRect)value error:(NSError * _Nullable * _Nullable)error;
991
1268
  /// Retrieves the region of interest (ROI)
@@ -1020,7 +1297,6 @@ SWIFT_CLASS("_TtC11BarkoderSDK14BarkoderConfig")
1020
1297
  enum BarkoderConfigTemplate : NSInteger;
1021
1298
  @class NSURL;
1022
1299
  @class NSData;
1023
-
1024
1300
  SWIFT_CLASS("_TtC11BarkoderSDK14BarkoderHelper")
1025
1301
  @interface BarkoderHelper : NSObject
1026
1302
  /// Scan barcode from bitmap image
@@ -1087,24 +1363,21 @@ typedef SWIFT_ENUM(NSInteger, BarkoderConfigTemplate, open) {
1087
1363
  BarkoderConfigTemplateGallery_scan = 11,
1088
1364
  BarkoderConfigTemplateComposite = 12,
1089
1365
  BarkoderConfigTemplatePostal_codes = 13,
1366
+ BarkoderConfigTemplateAr = 14,
1090
1367
  };
1091
1368
 
1092
-
1093
-
1094
1369
  SWIFT_PROTOCOL("_TtP11BarkoderSDK27BarkoderPerformanceDelegate_")
1095
1370
  @protocol BarkoderPerformanceDelegate
1096
1371
  @optional
1097
1372
  - (void)performanceReceivedWithFps:(float)fps dps:(float)dps;
1098
1373
  @end
1099
1374
 
1100
-
1101
1375
  SWIFT_PROTOCOL("_TtP11BarkoderSDK29BarkoderPreviewFramesDelegate_")
1102
1376
  @protocol BarkoderPreviewFramesDelegate
1103
1377
  @optional
1104
1378
  - (void)cameraFrameReceivedWithSampleBuffer:(CMSampleBufferRef _Nonnull)sampleBuffer;
1105
1379
  @end
1106
1380
 
1107
-
1108
1381
  SWIFT_PROTOCOL("_TtP11BarkoderSDK22BarkoderResultDelegate_")
1109
1382
  @protocol BarkoderResultDelegate
1110
1383
  - (void)scanningFinished:(NSArray<DecoderResult *> * _Nonnull)decoderResults thumbnails:(NSArray<UIImage *> * _Nullable)thumbnails image:(UIImage * _Nullable)image;
@@ -1112,7 +1385,6 @@ SWIFT_PROTOCOL("_TtP11BarkoderSDK22BarkoderResultDelegate_")
1112
1385
 
1113
1386
  @class NSCoder;
1114
1387
  enum BarkoderCameraPosition : NSInteger;
1115
-
1116
1388
  SWIFT_CLASS("_TtC11BarkoderSDK12BarkoderView")
1117
1389
  @interface BarkoderView : UIView <BarkoderPreviewFramesDelegate>
1118
1390
  @property (nonatomic, strong) BarkoderConfig * _Nullable config;
@@ -1131,6 +1403,12 @@ SWIFT_CLASS("_TtC11BarkoderSDK12BarkoderView")
1131
1403
  - (void)stopScanning;
1132
1404
  /// Temporarily suspends the barcode scanning process, pausing the camera feed without completely stopping the scanning session
1133
1405
  - (void)pauseScanning;
1406
+ /// Freezes the AR scanning session by capturing a still image from the camera feed.
1407
+ /// Use only when AR mode is enabled to temporarily freeze the view while keeping overlays visible.
1408
+ - (void)freezeScanning;
1409
+ /// Unfreezes the AR scanning session by removing the still image and reactivating the camera and overlays.
1410
+ /// Use only when AR mode is enabled to restore the live AR view and continue scanning.
1411
+ - (void)unfreezeScanning;
1134
1412
  /// Sets the zoom factor for the device’s camera, adjusting the level of zoom during barcode scanning
1135
1413
  - (void)setZoomFactor:(float)zoomFactor;
1136
1414
  /// Sets the camera to be used for scanning (back/front).
@@ -1143,6 +1421,8 @@ SWIFT_CLASS("_TtC11BarkoderSDK12BarkoderView")
1143
1421
  - (void)setFlash:(BOOL)enabled;
1144
1422
  /// Retrieves the maximum available zoom factor for the device’s camera
1145
1423
  - (void)getMaxZoomFactor:(void (^ _Nonnull)(float))completion;
1424
+ /// Retrieves the current zoom factor for the device’s camera
1425
+ - (float)getCurrentZoomFactor SWIFT_WARN_UNUSED_RESULT;
1146
1426
  /// Checks whether the device has a built-in flash (torch) that can be used for illumination during barcode scanning
1147
1427
  - (void)isFlashAvailable:(void (^ _Nonnull)(BOOL))completion;
1148
1428
  /// Adjusts the camera’s exposure dynamically based on the provided intensity, cycling through predefined compensation values.
@@ -1179,9 +1459,11 @@ typedef SWIFT_ENUM(NSInteger, BarkoderCameraPosition, open) {
1179
1459
  BarkoderCameraPositionFRONT = 1,
1180
1460
  };
1181
1461
 
1182
-
1183
-
1184
-
1462
+ @class UIGestureRecognizer;
1463
+ @class UITouch;
1464
+ @interface BarkoderView (SWIFT_EXTENSION(BarkoderSDK)) <UIGestureRecognizerDelegate>
1465
+ - (BOOL)gestureRecognizer:(UIGestureRecognizer * _Nonnull)gestureRecognizer shouldReceiveTouch:(UITouch * _Nonnull)touch SWIFT_WARN_UNUSED_RESULT;
1466
+ @end
1185
1467
 
1186
1468
  @interface iBarkoder (SWIFT_EXTENSION(BarkoderSDK))
1187
1469
  /// Retrieves the version of the Barkoder library