@xbone-3/cordova-plugin-mlkit-barcodescanner 4.0.0
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.
- package/CHANGELOG.md +51 -0
- package/LICENSE.md +21 -0
- package/README.md +260 -0
- package/package.json +67 -0
- package/plugin.xml +133 -0
- package/src/android/build-extras.gradle +14 -0
- package/src/android/res/assets/beep.ogg +0 -0
- package/src/android/res/drawable/flashlight.png +0 -0
- package/src/android/res/drawable/torch_active.xml +12 -0
- package/src/android/res/drawable/torch_inactive.xml +12 -0
- package/src/android/res/layout/capture_activity.xml +97 -0
- package/src/android/res/values/strings-de.xml +20 -0
- package/src/android/res/values/strings-en.xml +20 -0
- package/src/android/src/CaptureActivity.java +762 -0
- package/src/android/src/MLKitBarcodeScanner.java +221 -0
- package/src/android/src/utils/BitmapUtils.java +286 -0
- package/src/android/src/utils/FrameMetadata.java +69 -0
- package/src/ios/CDViOSScanner.h +21 -0
- package/src/ios/CDViOSScanner.m +183 -0
- package/src/ios/CameraViewController.h +36 -0
- package/src/ios/CameraViewController.m +503 -0
- package/src/ios/Sounds/beep.caf +0 -0
- package/src/ios/de.lproj/Localizable.strings +8 -0
- package/src/ios/en.lproj/Localizable.strings +8 -0
- package/www/BarcodeScanner.contract.d.ts +10 -0
- package/www/BarcodeScanner.contract.js +10 -0
- package/www/BarcodeScanner.plugin.d.ts +8 -0
- package/www/BarcodeScanner.plugin.js +145 -0
- package/www/Detector.d.ts +29 -0
- package/www/Interface.d.ts +65 -0
- package/www/Options.d.ts +2 -0
- package/www/util/Object.d.ts +3 -0
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
const barcodeFormat = Object.freeze({
|
|
6
|
+
Code128: 1,
|
|
7
|
+
Code39: 2,
|
|
8
|
+
Code93: 4,
|
|
9
|
+
CodaBar: 8,
|
|
10
|
+
DataMatrix: 16,
|
|
11
|
+
EAN13: 32,
|
|
12
|
+
EAN8: 64,
|
|
13
|
+
ITF: 128,
|
|
14
|
+
QRCode: 256,
|
|
15
|
+
UPCA: 512,
|
|
16
|
+
UPCE: 1024,
|
|
17
|
+
PDF417: 2048,
|
|
18
|
+
Aztec: 4096,
|
|
19
|
+
});
|
|
20
|
+
const barcodeType = Object.freeze({
|
|
21
|
+
CONTACT_INFO: 1,
|
|
22
|
+
EMAIL: 2,
|
|
23
|
+
ISBN: 3,
|
|
24
|
+
PHONE: 4,
|
|
25
|
+
PRODUCT: 5,
|
|
26
|
+
SMS: 6,
|
|
27
|
+
TEXT: 7,
|
|
28
|
+
URL: 8,
|
|
29
|
+
WIFI: 9,
|
|
30
|
+
GEO: 10,
|
|
31
|
+
CALENDAR_EVENT: 11,
|
|
32
|
+
DRIVER_LICENSE: 12,
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
const defaultOptions = Object.freeze({
|
|
36
|
+
barcodeFormats: {
|
|
37
|
+
Code128: true,
|
|
38
|
+
Code39: true,
|
|
39
|
+
Code93: true,
|
|
40
|
+
CodaBar: true,
|
|
41
|
+
DataMatrix: true,
|
|
42
|
+
EAN13: true,
|
|
43
|
+
EAN8: true,
|
|
44
|
+
ITF: true,
|
|
45
|
+
QRCode: true,
|
|
46
|
+
UPCA: true,
|
|
47
|
+
UPCE: true,
|
|
48
|
+
PDF417: true,
|
|
49
|
+
Aztec: true,
|
|
50
|
+
},
|
|
51
|
+
beepOnSuccess: false,
|
|
52
|
+
vibrateOnSuccess: false,
|
|
53
|
+
detectorSize: 0.6,
|
|
54
|
+
rotateCamera: false,
|
|
55
|
+
continuous: false,
|
|
56
|
+
multiple: false,
|
|
57
|
+
drawDetectionBorder: false,
|
|
58
|
+
confirmation: false,
|
|
59
|
+
});
|
|
60
|
+
|
|
61
|
+
function keyByValue(obj, value) {
|
|
62
|
+
const keys = Object.keys(obj);
|
|
63
|
+
const index = keys.map((key) => obj[key]).indexOf(value);
|
|
64
|
+
return keys[index] || String(value);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
class MLKitBarcodeScanner {
|
|
68
|
+
getBarcodeFormat(format) {
|
|
69
|
+
return keyByValue(barcodeFormat, format);
|
|
70
|
+
}
|
|
71
|
+
getBarcodeType(type) {
|
|
72
|
+
return keyByValue(barcodeType, type);
|
|
73
|
+
}
|
|
74
|
+
getBarcodeFormatFlags(barcodeFormats) {
|
|
75
|
+
let barcodeFormatFlag = 0;
|
|
76
|
+
let key;
|
|
77
|
+
const formats = barcodeFormats || defaultOptions.barcodeFormats;
|
|
78
|
+
// eslint-disable-next-line no-restricted-syntax
|
|
79
|
+
for (key in formats) {
|
|
80
|
+
if (barcodeFormat.hasOwnProperty(key) &&
|
|
81
|
+
formats.hasOwnProperty(key) &&
|
|
82
|
+
formats[key]) {
|
|
83
|
+
barcodeFormatFlag += barcodeFormat[key];
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
return barcodeFormatFlag;
|
|
87
|
+
}
|
|
88
|
+
scan(userOptions, success, failure) {
|
|
89
|
+
const barcodeFormats = (userOptions === null || userOptions === void 0 ? void 0 : userOptions.barcodeFormats) || defaultOptions.barcodeFormats;
|
|
90
|
+
const config = {
|
|
91
|
+
...defaultOptions,
|
|
92
|
+
...userOptions,
|
|
93
|
+
barcodeFormats: this.getBarcodeFormatFlags(barcodeFormats),
|
|
94
|
+
};
|
|
95
|
+
this.sendScanRequest(config, success, failure);
|
|
96
|
+
}
|
|
97
|
+
sendScanRequest(config, successCallback, failureCallback) {
|
|
98
|
+
cordova.exec((data) => {
|
|
99
|
+
// A single scan can arrive as a flat triple [text, format, type]
|
|
100
|
+
// (iOS / legacy), while multi and continuous scans send an array of
|
|
101
|
+
// such triples. Normalise to an array either way.
|
|
102
|
+
const triples = Array.isArray(data[0])
|
|
103
|
+
? data
|
|
104
|
+
: [data];
|
|
105
|
+
const results = triples.map(([text, format, type]) => ({
|
|
106
|
+
text,
|
|
107
|
+
format: this.getBarcodeFormat(format),
|
|
108
|
+
type: this.getBarcodeType(type),
|
|
109
|
+
}));
|
|
110
|
+
successCallback(config.multiple ? results : results[0]);
|
|
111
|
+
}, (err) => {
|
|
112
|
+
// Plugin errors arrive as an array ([code, ...]), but Cordova
|
|
113
|
+
// framework errors (e.g. "Class not found") arrive as a plain
|
|
114
|
+
// string. Normalise to the error code/message either way.
|
|
115
|
+
const code = Array.isArray(err) ? err[0] : err;
|
|
116
|
+
switch (code) {
|
|
117
|
+
case null:
|
|
118
|
+
case undefined:
|
|
119
|
+
case 'USER_CANCELLED':
|
|
120
|
+
failureCallback({
|
|
121
|
+
cancelled: true,
|
|
122
|
+
message: 'The scan was cancelled.',
|
|
123
|
+
});
|
|
124
|
+
break;
|
|
125
|
+
case 'SCANNER_OPEN':
|
|
126
|
+
failureCallback({
|
|
127
|
+
cancelled: false,
|
|
128
|
+
message: 'Scanner already open.',
|
|
129
|
+
});
|
|
130
|
+
break;
|
|
131
|
+
default:
|
|
132
|
+
failureCallback({
|
|
133
|
+
cancelled: false,
|
|
134
|
+
message: code || 'Unknown Error',
|
|
135
|
+
});
|
|
136
|
+
break;
|
|
137
|
+
}
|
|
138
|
+
}, 'cordova-plugin-mlkit-barcodescanner', 'startScan', [config]);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
const barcodeScanner = new MLKitBarcodeScanner();
|
|
142
|
+
module.exports = barcodeScanner;
|
|
143
|
+
|
|
144
|
+
exports.MLKitBarcodeScanner = MLKitBarcodeScanner;
|
|
145
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFyY29kZVNjYW5uZXIucGx1Z2luLmpzIiwic291cmNlcyI6WyIuLi9zcmMtdHlwZXNjcmlwdC9EZXRlY3Rvci50cyIsIi4uL3NyYy10eXBlc2NyaXB0L09wdGlvbnMudHMiLCIuLi9zcmMtdHlwZXNjcmlwdC91dGlsL09iamVjdC50cyIsIi4uL3NyYy10eXBlc2NyaXB0L0JhcmNvZGVTY2FubmVyLnBsdWdpbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgYmFyY29kZUZvcm1hdCA9IE9iamVjdC5mcmVlemUoe1xyXG4gIENvZGUxMjg6IDEsXHJcbiAgQ29kZTM5OiAyLFxyXG4gIENvZGU5MzogNCxcclxuICBDb2RhQmFyOiA4LFxyXG4gIERhdGFNYXRyaXg6IDE2LFxyXG4gIEVBTjEzOiAzMixcclxuICBFQU44OiA2NCxcclxuICBJVEY6IDEyOCxcclxuICBRUkNvZGU6IDI1NixcclxuICBVUENBOiA1MTIsXHJcbiAgVVBDRTogMTAyNCxcclxuICBQREY0MTc6IDIwNDgsXHJcbiAgQXp0ZWM6IDQwOTYsXHJcbn0pO1xyXG5cclxuZXhwb3J0IGNvbnN0IGJhcmNvZGVUeXBlID0gT2JqZWN0LmZyZWV6ZSh7XHJcbiAgQ09OVEFDVF9JTkZPOiAxLFxyXG4gIEVNQUlMOiAyLFxyXG4gIElTQk46IDMsXHJcbiAgUEhPTkU6IDQsXHJcbiAgUFJPRFVDVDogNSxcclxuICBTTVM6IDYsXHJcbiAgVEVYVDogNyxcclxuICBVUkw6IDgsXHJcbiAgV0lGSTogOSxcclxuICBHRU86IDEwLFxyXG4gIENBTEVOREFSX0VWRU5UOiAxMSxcclxuICBEUklWRVJfTElDRU5TRTogMTIsXHJcbn0pO1xyXG4iLCJpbXBvcnQgeyBJT3B0aW9ucyB9IGZyb20gJy4vSW50ZXJmYWNlJztcclxuXHJcbmV4cG9ydCBjb25zdCBkZWZhdWx0T3B0aW9uczogUmVxdWlyZWQ8SU9wdGlvbnM+ID0gT2JqZWN0LmZyZWV6ZSh7XHJcbiAgYmFyY29kZUZvcm1hdHM6IHtcclxuICAgIENvZGUxMjg6IHRydWUsXHJcbiAgICBDb2RlMzk6IHRydWUsXHJcbiAgICBDb2RlOTM6IHRydWUsXHJcbiAgICBDb2RhQmFyOiB0cnVlLFxyXG4gICAgRGF0YU1hdHJpeDogdHJ1ZSxcclxuICAgIEVBTjEzOiB0cnVlLFxyXG4gICAgRUFOODogdHJ1ZSxcclxuICAgIElURjogdHJ1ZSxcclxuICAgIFFSQ29kZTogdHJ1ZSxcclxuICAgIFVQQ0E6IHRydWUsXHJcbiAgICBVUENFOiB0cnVlLFxyXG4gICAgUERGNDE3OiB0cnVlLFxyXG4gICAgQXp0ZWM6IHRydWUsXHJcbiAgfSxcclxuICBiZWVwT25TdWNjZXNzOiBmYWxzZSxcclxuICB2aWJyYXRlT25TdWNjZXNzOiBmYWxzZSxcclxuICBkZXRlY3RvclNpemU6IDAuNixcclxuICByb3RhdGVDYW1lcmE6IGZhbHNlLFxyXG4gIGNvbnRpbnVvdXM6IGZhbHNlLFxyXG4gIG11bHRpcGxlOiBmYWxzZSxcclxuICBkcmF3RGV0ZWN0aW9uQm9yZGVyOiBmYWxzZSxcclxuICBjb25maXJtYXRpb246IGZhbHNlLFxyXG59KTtcclxuIiwiZXhwb3J0IGZ1bmN0aW9uIGtleUJ5VmFsdWU8VE9iamVjdD4oXHJcbiAgb2JqOiB7IFtzOiBzdHJpbmddOiBUT2JqZWN0IH0sXHJcbiAgdmFsdWU6IFRPYmplY3QsXHJcbik6IHN0cmluZyB7XHJcbiAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKG9iaik7XHJcbiAgY29uc3QgaW5kZXggPSBrZXlzLm1hcCgoa2V5KSA9PiBvYmpba2V5XSkuaW5kZXhPZih2YWx1ZSk7XHJcbiAgcmV0dXJuIGtleXNbaW5kZXhdIHx8IFN0cmluZyh2YWx1ZSk7XHJcbn1cclxuIiwiaW1wb3J0IHsgYmFyY29kZUZvcm1hdCwgYmFyY29kZVR5cGUgfSBmcm9tICcuL0RldGVjdG9yJztcclxuaW1wb3J0IHtcclxuICBJQmFyY29kZUZvcm1hdHMsXHJcbiAgSUNvbmZpZyxcclxuICBJRXJyb3IsXHJcbiAgSU9wdGlvbnMsXHJcbiAgSVJlc3VsdCxcclxufSBmcm9tICcuL0ludGVyZmFjZSc7XHJcbmltcG9ydCB7IGRlZmF1bHRPcHRpb25zIH0gZnJvbSAnLi9PcHRpb25zJztcclxuaW1wb3J0IHsga2V5QnlWYWx1ZSB9IGZyb20gJy4vdXRpbC9PYmplY3QnO1xyXG5cclxuZXhwb3J0IGNsYXNzIE1MS2l0QmFyY29kZVNjYW5uZXIge1xyXG4gIHByaXZhdGUgZ2V0QmFyY29kZUZvcm1hdChmb3JtYXQ6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICByZXR1cm4ga2V5QnlWYWx1ZShiYXJjb2RlRm9ybWF0LCBmb3JtYXQpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRCYXJjb2RlVHlwZSh0eXBlOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGtleUJ5VmFsdWUoYmFyY29kZVR5cGUsIHR5cGUpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRCYXJjb2RlRm9ybWF0RmxhZ3MoYmFyY29kZUZvcm1hdHM/OiBJQmFyY29kZUZvcm1hdHMpOiBudW1iZXIge1xyXG4gICAgbGV0IGJhcmNvZGVGb3JtYXRGbGFnID0gMDtcclxuICAgIGxldCBrZXk6IGtleW9mIHR5cGVvZiBiYXJjb2RlRm9ybWF0O1xyXG4gICAgY29uc3QgZm9ybWF0cyA9IGJhcmNvZGVGb3JtYXRzIHx8IGRlZmF1bHRPcHRpb25zLmJhcmNvZGVGb3JtYXRzO1xyXG5cclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1yZXN0cmljdGVkLXN5bnRheFxyXG4gICAgZm9yIChrZXkgaW4gZm9ybWF0cykge1xyXG4gICAgICBpZiAoXHJcbiAgICAgICAgYmFyY29kZUZvcm1hdC5oYXNPd25Qcm9wZXJ0eShrZXkpICYmXHJcbiAgICAgICAgZm9ybWF0cy5oYXNPd25Qcm9wZXJ0eShrZXkpICYmXHJcbiAgICAgICAgZm9ybWF0c1trZXldXHJcbiAgICAgICkge1xyXG4gICAgICAgIGJhcmNvZGVGb3JtYXRGbGFnICs9IGJhcmNvZGVGb3JtYXRba2V5XTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGJhcmNvZGVGb3JtYXRGbGFnO1xyXG4gIH1cclxuXHJcbiAgc2NhbihcclxuICAgIHVzZXJPcHRpb25zOiBJT3B0aW9ucyxcclxuICAgIHN1Y2Nlc3M6IChyZXN1bHQ6IElSZXN1bHQgfCBJUmVzdWx0W10pID0+IHVua25vd24sXHJcbiAgICBmYWlsdXJlOiAoZXJyb3I6IElFcnJvcikgPT4gdW5rbm93bixcclxuICApOiB2b2lkIHtcclxuICAgIGNvbnN0IGJhcmNvZGVGb3JtYXRzID1cclxuICAgICAgdXNlck9wdGlvbnM/LmJhcmNvZGVGb3JtYXRzIHx8IGRlZmF1bHRPcHRpb25zLmJhcmNvZGVGb3JtYXRzO1xyXG4gICAgY29uc3QgY29uZmlnOiBJQ29uZmlnID0ge1xyXG4gICAgICAuLi5kZWZhdWx0T3B0aW9ucyxcclxuICAgICAgLi4udXNlck9wdGlvbnMsXHJcbiAgICAgIGJhcmNvZGVGb3JtYXRzOiB0aGlzLmdldEJhcmNvZGVGb3JtYXRGbGFncyhiYXJjb2RlRm9ybWF0cyksXHJcbiAgICB9O1xyXG5cclxuICAgIHRoaXMuc2VuZFNjYW5SZXF1ZXN0KGNvbmZpZywgc3VjY2VzcywgZmFpbHVyZSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNlbmRTY2FuUmVxdWVzdChcclxuICAgIGNvbmZpZzogSUNvbmZpZyxcclxuICAgIHN1Y2Nlc3NDYWxsYmFjazogKHJlc3VsdDogSVJlc3VsdCB8IElSZXN1bHRbXSkgPT4gdW5rbm93bixcclxuICAgIGZhaWx1cmVDYWxsYmFjazogKGVycm9yOiBJRXJyb3IpID0+IHVua25vd24sXHJcbiAgKTogdm9pZCB7XHJcbiAgICB0eXBlIFRyaXBsZSA9IFtzdHJpbmcsIG51bWJlciwgbnVtYmVyXTtcclxuICAgIGNvcmRvdmEuZXhlYyhcclxuICAgICAgKGRhdGE6IFRyaXBsZSB8IFRyaXBsZVtdKSA9PiB7XHJcbiAgICAgICAgLy8gQSBzaW5nbGUgc2NhbiBjYW4gYXJyaXZlIGFzIGEgZmxhdCB0cmlwbGUgW3RleHQsIGZvcm1hdCwgdHlwZV1cclxuICAgICAgICAvLyAoaU9TIC8gbGVnYWN5KSwgd2hpbGUgbXVsdGkgYW5kIGNvbnRpbnVvdXMgc2NhbnMgc2VuZCBhbiBhcnJheSBvZlxyXG4gICAgICAgIC8vIHN1Y2ggdHJpcGxlcy4gTm9ybWFsaXNlIHRvIGFuIGFycmF5IGVpdGhlciB3YXkuXHJcbiAgICAgICAgY29uc3QgdHJpcGxlczogVHJpcGxlW10gPSBBcnJheS5pc0FycmF5KGRhdGFbMF0pXHJcbiAgICAgICAgICA/IChkYXRhIGFzIFRyaXBsZVtdKVxyXG4gICAgICAgICAgOiBbZGF0YSBhcyBUcmlwbGVdO1xyXG5cclxuICAgICAgICBjb25zdCByZXN1bHRzOiBJUmVzdWx0W10gPSB0cmlwbGVzLm1hcCgoW3RleHQsIGZvcm1hdCwgdHlwZV0pID0+ICh7XHJcbiAgICAgICAgICB0ZXh0LFxyXG4gICAgICAgICAgZm9ybWF0OiB0aGlzLmdldEJhcmNvZGVGb3JtYXQoZm9ybWF0KSxcclxuICAgICAgICAgIHR5cGU6IHRoaXMuZ2V0QmFyY29kZVR5cGUodHlwZSksXHJcbiAgICAgICAgfSkpO1xyXG5cclxuICAgICAgICBzdWNjZXNzQ2FsbGJhY2soY29uZmlnLm11bHRpcGxlID8gcmVzdWx0cyA6IHJlc3VsdHNbMF0pO1xyXG4gICAgICB9LFxyXG4gICAgICAoZXJyOiBzdHJpbmcgfCAoc3RyaW5nIHwgbnVsbClbXSB8IG51bGwpID0+IHtcclxuICAgICAgICAvLyBQbHVnaW4gZXJyb3JzIGFycml2ZSBhcyBhbiBhcnJheSAoW2NvZGUsIC4uLl0pLCBidXQgQ29yZG92YVxyXG4gICAgICAgIC8vIGZyYW1ld29yayBlcnJvcnMgKGUuZy4gXCJDbGFzcyBub3QgZm91bmRcIikgYXJyaXZlIGFzIGEgcGxhaW5cclxuICAgICAgICAvLyBzdHJpbmcuIE5vcm1hbGlzZSB0byB0aGUgZXJyb3IgY29kZS9tZXNzYWdlIGVpdGhlciB3YXkuXHJcbiAgICAgICAgY29uc3QgY29kZSA9IEFycmF5LmlzQXJyYXkoZXJyKSA/IGVyclswXSA6IGVycjtcclxuXHJcbiAgICAgICAgc3dpdGNoIChjb2RlKSB7XHJcbiAgICAgICAgICBjYXNlIG51bGw6XHJcbiAgICAgICAgICBjYXNlIHVuZGVmaW5lZDpcclxuICAgICAgICAgIGNhc2UgJ1VTRVJfQ0FOQ0VMTEVEJzpcclxuICAgICAgICAgICAgZmFpbHVyZUNhbGxiYWNrKHtcclxuICAgICAgICAgICAgICBjYW5jZWxsZWQ6IHRydWUsXHJcbiAgICAgICAgICAgICAgbWVzc2FnZTogJ1RoZSBzY2FuIHdhcyBjYW5jZWxsZWQuJyxcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgY2FzZSAnU0NBTk5FUl9PUEVOJzpcclxuICAgICAgICAgICAgZmFpbHVyZUNhbGxiYWNrKHtcclxuICAgICAgICAgICAgICBjYW5jZWxsZWQ6IGZhbHNlLFxyXG4gICAgICAgICAgICAgIG1lc3NhZ2U6ICdTY2FubmVyIGFscmVhZHkgb3Blbi4nLFxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICBmYWlsdXJlQ2FsbGJhY2soe1xyXG4gICAgICAgICAgICAgIGNhbmNlbGxlZDogZmFsc2UsXHJcbiAgICAgICAgICAgICAgbWVzc2FnZTogY29kZSB8fCAnVW5rbm93biBFcnJvcicsXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcbiAgICAgIH0sXHJcbiAgICAgICdjb3Jkb3ZhLXBsdWdpbi1tbGtpdC1iYXJjb2Rlc2Nhbm5lcicsXHJcbiAgICAgICdzdGFydFNjYW4nLFxyXG4gICAgICBbY29uZmlnXSxcclxuICAgICk7XHJcbiAgfVxyXG59XHJcblxyXG5jb25zdCBiYXJjb2RlU2Nhbm5lciA9IG5ldyBNTEtpdEJhcmNvZGVTY2FubmVyKCk7XHJcbm1vZHVsZS5leHBvcnRzID0gYmFyY29kZVNjYW5uZXI7XHJcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQU8sTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUN6QyxPQUFPLEVBQUUsQ0FBQztJQUNWLE1BQU0sRUFBRSxDQUFDO0lBQ1QsTUFBTSxFQUFFLENBQUM7SUFDVCxPQUFPLEVBQUUsQ0FBQztJQUNWLFVBQVUsRUFBRSxFQUFFO0lBQ2QsS0FBSyxFQUFFLEVBQUU7SUFDVCxJQUFJLEVBQUUsRUFBRTtJQUNSLEdBQUcsRUFBRSxHQUFHO0lBQ1IsTUFBTSxFQUFFLEdBQUc7SUFDWCxJQUFJLEVBQUUsR0FBRztJQUNULElBQUksRUFBRSxJQUFJO0lBQ1YsTUFBTSxFQUFFLElBQUk7SUFDWixLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUMsQ0FBQztBQUVJLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDdkMsWUFBWSxFQUFFLENBQUM7SUFDZixLQUFLLEVBQUUsQ0FBQztJQUNSLElBQUksRUFBRSxDQUFDO0lBQ1AsS0FBSyxFQUFFLENBQUM7SUFDUixPQUFPLEVBQUUsQ0FBQztJQUNWLEdBQUcsRUFBRSxDQUFDO0lBQ04sSUFBSSxFQUFFLENBQUM7SUFDUCxHQUFHLEVBQUUsQ0FBQztJQUNOLElBQUksRUFBRSxDQUFDO0lBQ1AsR0FBRyxFQUFFLEVBQUU7SUFDUCxjQUFjLEVBQUUsRUFBRTtJQUNsQixjQUFjLEVBQUUsRUFBRTtDQUNuQixDQUFDOztBQzNCSyxNQUFNLGNBQWMsR0FBdUIsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUM5RCxjQUFjLEVBQUU7UUFDZCxPQUFPLEVBQUUsSUFBSTtRQUNiLE1BQU0sRUFBRSxJQUFJO1FBQ1osTUFBTSxFQUFFLElBQUk7UUFDWixPQUFPLEVBQUUsSUFBSTtRQUNiLFVBQVUsRUFBRSxJQUFJO1FBQ2hCLEtBQUssRUFBRSxJQUFJO1FBQ1gsSUFBSSxFQUFFLElBQUk7UUFDVixHQUFHLEVBQUUsSUFBSTtRQUNULE1BQU0sRUFBRSxJQUFJO1FBQ1osSUFBSSxFQUFFLElBQUk7UUFDVixJQUFJLEVBQUUsSUFBSTtRQUNWLE1BQU0sRUFBRSxJQUFJO1FBQ1osS0FBSyxFQUFFLElBQUk7S0FDWjtJQUNELGFBQWEsRUFBRSxLQUFLO0lBQ3BCLGdCQUFnQixFQUFFLEtBQUs7SUFDdkIsWUFBWSxFQUFFLEdBQUc7SUFDakIsWUFBWSxFQUFFLEtBQUs7SUFDbkIsVUFBVSxFQUFFLEtBQUs7SUFDakIsUUFBUSxFQUFFLEtBQUs7SUFDZixtQkFBbUIsRUFBRSxLQUFLO0lBQzFCLFlBQVksRUFBRSxLQUFLO0NBQ3BCLENBQUM7O1NDMUJjLFVBQVUsQ0FDeEIsR0FBNkIsRUFDN0IsS0FBYztJQUVkLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDOUIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsS0FBSyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3RDOztNQ0lhLG1CQUFtQjtJQUN0QixnQkFBZ0IsQ0FBQyxNQUFjO1FBQ3JDLE9BQU8sVUFBVSxDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsQ0FBQztLQUMxQztJQUVPLGNBQWMsQ0FBQyxJQUFZO1FBQ2pDLE9BQU8sVUFBVSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQztLQUN0QztJQUVPLHFCQUFxQixDQUFDLGNBQWdDO1FBQzVELElBQUksaUJBQWlCLEdBQUcsQ0FBQyxDQUFDO1FBQzFCLElBQUksR0FBK0IsQ0FBQztRQUNwQyxNQUFNLE9BQU8sR0FBRyxjQUFjLElBQUksY0FBYyxDQUFDLGNBQWMsQ0FBQzs7UUFHaEUsS0FBSyxHQUFHLElBQUksT0FBTyxFQUFFO1lBQ25CLElBQ0UsYUFBYSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUM7Z0JBQ2pDLE9BQU8sQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDO2dCQUMzQixPQUFPLENBQUMsR0FBRyxDQUFDLEVBQ1o7Z0JBQ0EsaUJBQWlCLElBQUksYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ3pDO1NBQ0Y7UUFDRCxPQUFPLGlCQUFpQixDQUFDO0tBQzFCO0lBRUQsSUFBSSxDQUNGLFdBQXFCLEVBQ3JCLE9BQWlELEVBQ2pELE9BQW1DO1FBRW5DLE1BQU0sY0FBYyxHQUNsQixDQUFBLFdBQVcsYUFBWCxXQUFXLHVCQUFYLFdBQVcsQ0FBRSxjQUFjLEtBQUksY0FBYyxDQUFDLGNBQWMsQ0FBQztRQUMvRCxNQUFNLE1BQU0sR0FBWTtZQUN0QixHQUFHLGNBQWM7WUFDakIsR0FBRyxXQUFXO1lBQ2QsY0FBYyxFQUFFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxjQUFjLENBQUM7U0FDM0QsQ0FBQztRQUVGLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztLQUNoRDtJQUVPLGVBQWUsQ0FDckIsTUFBZSxFQUNmLGVBQXlELEVBQ3pELGVBQTJDO1FBRzNDLE9BQU8sQ0FBQyxJQUFJLENBQ1YsQ0FBQyxJQUF1Qjs7OztZQUl0QixNQUFNLE9BQU8sR0FBYSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztrQkFDM0MsSUFBaUI7a0JBQ2xCLENBQUMsSUFBYyxDQUFDLENBQUM7WUFFckIsTUFBTSxPQUFPLEdBQWMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtnQkFDaEUsSUFBSTtnQkFDSixNQUFNLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQztnQkFDckMsSUFBSSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDO2FBQ2hDLENBQUMsQ0FBQyxDQUFDO1lBRUosZUFBZSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEdBQUcsT0FBTyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3pELEVBQ0QsQ0FBQyxHQUFzQzs7OztZQUlyQyxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUM7WUFFL0MsUUFBUSxJQUFJO2dCQUNWLEtBQUssSUFBSSxDQUFDO2dCQUNWLEtBQUssU0FBUyxDQUFDO2dCQUNmLEtBQUssZ0JBQWdCO29CQUNuQixlQUFlLENBQUM7d0JBQ2QsU0FBUyxFQUFFLElBQUk7d0JBQ2YsT0FBTyxFQUFFLHlCQUF5QjtxQkFDbkMsQ0FBQyxDQUFDO29CQUNILE1BQU07Z0JBQ1IsS0FBSyxjQUFjO29CQUNqQixlQUFlLENBQUM7d0JBQ2QsU0FBUyxFQUFFLEtBQUs7d0JBQ2hCLE9BQU8sRUFBRSx1QkFBdUI7cUJBQ2pDLENBQUMsQ0FBQztvQkFDSCxNQUFNO2dCQUNSO29CQUNFLGVBQWUsQ0FBQzt3QkFDZCxTQUFTLEVBQUUsS0FBSzt3QkFDaEIsT0FBTyxFQUFFLElBQUksSUFBSSxlQUFlO3FCQUNqQyxDQUFDLENBQUM7b0JBQ0gsTUFBTTthQUNUO1NBQ0YsRUFDRCxxQ0FBcUMsRUFDckMsV0FBVyxFQUNYLENBQUMsTUFBTSxDQUFDLENBQ1QsQ0FBQztLQUNIO0NBQ0Y7QUFFRCxNQUFNLGNBQWMsR0FBRyxJQUFJLG1CQUFtQixFQUFFLENBQUM7QUFDakQsTUFBTSxDQUFDLE9BQU8sR0FBRyxjQUFjOzs7OyJ9
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export declare const barcodeFormat: Readonly<{
|
|
2
|
+
Code128: number;
|
|
3
|
+
Code39: number;
|
|
4
|
+
Code93: number;
|
|
5
|
+
CodaBar: number;
|
|
6
|
+
DataMatrix: number;
|
|
7
|
+
EAN13: number;
|
|
8
|
+
EAN8: number;
|
|
9
|
+
ITF: number;
|
|
10
|
+
QRCode: number;
|
|
11
|
+
UPCA: number;
|
|
12
|
+
UPCE: number;
|
|
13
|
+
PDF417: number;
|
|
14
|
+
Aztec: number;
|
|
15
|
+
}>;
|
|
16
|
+
export declare const barcodeType: Readonly<{
|
|
17
|
+
CONTACT_INFO: number;
|
|
18
|
+
EMAIL: number;
|
|
19
|
+
ISBN: number;
|
|
20
|
+
PHONE: number;
|
|
21
|
+
PRODUCT: number;
|
|
22
|
+
SMS: number;
|
|
23
|
+
TEXT: number;
|
|
24
|
+
URL: number;
|
|
25
|
+
WIFI: number;
|
|
26
|
+
GEO: number;
|
|
27
|
+
CALENDAR_EVENT: number;
|
|
28
|
+
DRIVER_LICENSE: number;
|
|
29
|
+
}>;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
export interface IBarcodeFormats {
|
|
2
|
+
Aztec: boolean;
|
|
3
|
+
CodaBar: boolean;
|
|
4
|
+
Code39: boolean;
|
|
5
|
+
Code93: boolean;
|
|
6
|
+
Code128: boolean;
|
|
7
|
+
DataMatrix: boolean;
|
|
8
|
+
EAN8: boolean;
|
|
9
|
+
EAN13: boolean;
|
|
10
|
+
ITF: boolean;
|
|
11
|
+
PDF417: boolean;
|
|
12
|
+
QRCode: boolean;
|
|
13
|
+
UPCA: boolean;
|
|
14
|
+
UPCE: boolean;
|
|
15
|
+
}
|
|
16
|
+
export interface IOptions {
|
|
17
|
+
barcodeFormats?: IBarcodeFormats;
|
|
18
|
+
beepOnSuccess?: boolean;
|
|
19
|
+
vibrateOnSuccess?: boolean;
|
|
20
|
+
detectorSize?: number;
|
|
21
|
+
rotateCamera?: boolean;
|
|
22
|
+
/**
|
|
23
|
+
* Keep the camera open and stream every newly detected barcode back to the
|
|
24
|
+
* success callback (which may be invoked many times). The scanner closes
|
|
25
|
+
* when the user presses back, surfacing a cancelled error. Default: false.
|
|
26
|
+
*/
|
|
27
|
+
continuous?: boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Detect every barcode visible in a frame instead of just the first one.
|
|
30
|
+
* When enabled the success callback receives an array of results. Default:
|
|
31
|
+
* false.
|
|
32
|
+
*/
|
|
33
|
+
multiple?: boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Draw a border around each barcode as it is detected in the camera
|
|
36
|
+
* preview, tracing the code's corner points. Default: false.
|
|
37
|
+
*/
|
|
38
|
+
drawDetectionBorder?: boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Require the user to confirm a detected barcode before it is returned. The
|
|
41
|
+
* preview freezes on the detected frame with a Confirm/Retry prompt. Ignored
|
|
42
|
+
* in continuous mode. Default: false.
|
|
43
|
+
*/
|
|
44
|
+
confirmation?: boolean;
|
|
45
|
+
}
|
|
46
|
+
export interface IConfig {
|
|
47
|
+
barcodeFormats: number;
|
|
48
|
+
beepOnSuccess: boolean;
|
|
49
|
+
vibrateOnSuccess: boolean;
|
|
50
|
+
detectorSize: number;
|
|
51
|
+
rotateCamera: boolean;
|
|
52
|
+
continuous: boolean;
|
|
53
|
+
multiple: boolean;
|
|
54
|
+
drawDetectionBorder: boolean;
|
|
55
|
+
confirmation: boolean;
|
|
56
|
+
}
|
|
57
|
+
export interface IResult {
|
|
58
|
+
text: string;
|
|
59
|
+
format: string;
|
|
60
|
+
type: string;
|
|
61
|
+
}
|
|
62
|
+
export interface IError {
|
|
63
|
+
cancelled: boolean;
|
|
64
|
+
message: string;
|
|
65
|
+
}
|
package/www/Options.d.ts
ADDED