sane-wasm 0.6.0 → 0.6.2

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/README.md CHANGED
@@ -6,7 +6,7 @@ It supports USB scanners on browser environments through the [WebUSB API](https:
6
6
 
7
7
  This works by compiling all SANE backends (and required dependencies) to WebAssembly using Emscripten. The other key piece is @RReverser's bridge from libusb to WebUSB ([article](https://web.dev/articles/porting-libusb-to-webusb)/[article](https://web.dev/articles/porting-gphoto2-to-the-web)/[code](https://github.com/libusb/libusb/pull/1057)/[code](https://github.com/libusb/libusb/pull/1339)) for direct USB access.
8
8
 
9
- Right now, it includes [all backends](http://www.sane-project.org/lists/sane-backends-cvs.html) that have support for at least one USB device ([genesys is not included due to issues](https://github.com/goncalomb/sane-wasm/issues/3)). No [external backends](http://www.sane-project.org/lists/sane-backends-external.html) are included at the moment.
9
+ Right now, it includes [all backends](http://www.sane-project.org/lists/sane-backends-cvs.html) that have support for at least one USB device. No [external backends](http://www.sane-project.org/lists/sane-backends-external.html) are included at the moment.
10
10
 
11
11
  ## WebScan
12
12
 
@@ -26,7 +26,7 @@ npm install sane-wasm
26
26
 
27
27
  Cross-origin isolation ([COOP+COEP](https://web.dev/articles/coop-coep)) is required for [multithreading](https://emscripten.org/docs/porting/pthreads.html) which uses Web Workers and SharedArrayBuffer. This is not optional.
28
28
 
29
- See [examples/webpack/](./examples/webpack/) for a working example.
29
+ See [examples/webpack/](https://github.com/goncalomb/sane-wasm/tree/master/examples/webpack) for a working example.
30
30
 
31
31
  ### For Node.js
32
32
 
@@ -36,7 +36,7 @@ npm install sane-wasm usb
36
36
 
37
37
  The usb package ([node-usb](https://github.com/node-usb/node-usb)) is required to provide USB functionality.
38
38
 
39
- See [examples/node/](./examples/node/) for a working example.
39
+ See [examples/node/](https://github.com/goncalomb/sane-wasm/tree/master/examples/node) for a working example.
40
40
 
41
41
  ## Building
42
42
 
@@ -64,7 +64,7 @@ npm run test # run the tests
64
64
 
65
65
  ### Non-Docker builds and `build.sh`
66
66
 
67
- Building without Docker is possible but untested. It requires [Emscripten](https://emscripten.org/) and all the tools to build the dependencies, see [Dockerfile](./Dockerfile).
67
+ Building without Docker is possible but untested. It requires [Emscripten](https://emscripten.org/) and all the tools to build the dependencies, see [Dockerfile](https://github.com/goncalomb/sane-wasm/blob/master/Dockerfile).
68
68
 
69
69
  The `./build.sh` script controls the build and has other options for debugging:
70
70
 
@@ -105,8 +105,8 @@ Other differences include:
105
105
 
106
106
  ### Extra TypeScript classes (utilities)
107
107
 
108
- - [src/options.ts](./src/options.ts) to manage scanner options
109
- - [src/readers.ts](./src/readers.ts) for image acquisition and decoding
108
+ - [src/options.ts](https://github.com/goncalomb/sane-wasm/blob/master/src/options.ts) to manage scanner options
109
+ - [src/readers.ts](https://github.com/goncalomb/sane-wasm/blob/master/src/readers.ts) for image acquisition and decoding
110
110
 
111
111
  ## License
112
112
 
@@ -311,10 +311,10 @@
311
311
  ["td", null, `${n}`],
312
312
  ["td", null, [
313
313
  ["strong", null, `${opt.title}`],
314
- ` [name=${opt.name}] [type=${LibSANE.SANE_TYPE.asString(opt.type)}] [unit=${LibSANE.SANE_UNIT.asString(opt.unit)}] [size=${opt.size}]`, ["br"],
314
+ ` [name=${opt.name}] [type=${LibSANE.SANE_TYPE[opt.type]}] [unit=${LibSANE.SANE_UNIT[opt.unit]}] [size=${opt.size}]`, ["br"],
315
315
  ["abbr", { title: [
316
316
  `cap=${JSON.stringify(opt.cap, null, 2)}`,
317
- `constraint_type=${LibSANE.SANE_CONSTRAINT.asString(opt.constraint_type)}`,
317
+ `constraint_type=${LibSANE.SANE_CONSTRAINT[opt.constraint_type]}`,
318
318
  `constraint=${JSON.stringify(opt.constraint, null, 2)}`,
319
319
  ].join("\n") }, "[cap=...] [constraint_type=...] [constraint=...]"], ["br"],
320
320
  ["small", null, opt.desc],
package/build/libsane.js CHANGED
@@ -152,24 +152,6 @@ if (ENVIRONMENT_IS_NODE) {
152
152
  */
153
153
 
154
154
  {
155
- class EnumSANE {
156
- // static reverseObject = Symbol("reverseObject"); // not supported
157
-
158
- static promote(obj) {
159
- obj.__proto__ = this.prototype;
160
- obj[this.reverseObject] = {};
161
- Object.keys(obj).forEach(k => {
162
- obj[obj[k]] = k; // reverse mapping à la typescript
163
- obj[this.reverseObject][obj[k]] = k; // XXX: old reverse mapping, consider removing
164
- });
165
- }
166
-
167
- asString(i) {
168
- return this[this.constructor.reverseObject][i] || null;
169
- }
170
- }
171
- EnumSANE.reverseObject = Symbol("reverseObject");
172
-
173
155
  // Many SANE functions are expected to return a promise, even though
174
156
  // they originally are blocking calls. This happens because we use
175
157
  // emscripten's asyncify feature.
@@ -205,6 +187,7 @@ if (ENVIRONMENT_IS_NODE) {
205
187
  }
206
188
 
207
189
  Module.sane = {
190
+ backends: undefined,
208
191
  debugSANE: false,
209
192
  debugUSB: false,
210
193
  debugFunctionCalls: false,
@@ -239,9 +222,32 @@ if (ENVIRONMENT_IS_NODE) {
239
222
  // The library just starts working when we call sane_init externally.
240
223
 
241
224
  Module.postRun.push(() => {
242
- // promote enums to more useful objects
225
+ // write the list of backends to dll.conf
226
+ let backendsFinal = Module.SANE_WASM_BACKENDS.split(' ');
227
+ if (Module.sane.backends) {
228
+ if (Array.isArray(Module.sane.backends)) {
229
+ backendsFinal = backendsFinal.filter(b => Module.sane.backends.includes(b));
230
+ } else {
231
+ const { include, exclude } = Module.sane.backends;
232
+ if (Array.isArray(include)) {
233
+ backendsFinal = backendsFinal.filter(b => include.includes(b));
234
+ }
235
+ if (Array.isArray(exclude)) {
236
+ backendsFinal = backendsFinal.filter(b => !exclude.includes(b));
237
+ }
238
+ }
239
+ }
240
+ const data = backendsFinal.length ? backendsFinal.join('\n') + '\n' : '';
241
+ Module.FS.writeFile('/etc/sane.d/dll.conf', data);
242
+ });
243
+
244
+ Module.postRun.push(() => {
245
+ // add reverse mapping to the enums (same as typescript)
243
246
  ["SANE_STATUS", "SANE_TYPE", "SANE_UNIT", "SANE_CONSTRAINT", "SANE_FRAME"].forEach(s => {
244
- EnumSANE.promote(Module[s]);
247
+ const obj = Module[s];
248
+ Object.keys(obj).forEach(k => {
249
+ obj[obj[k]] = k;
250
+ });
245
251
  });
246
252
 
247
253
  // set test backend number of devices
@@ -6073,9 +6079,30 @@ var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {
6073
6079
 
6074
6080
 
6075
6081
 
6082
+ function ___syscall_mkdirat(dirfd, path, mode) {
6083
+ if (ENVIRONMENT_IS_PTHREAD)
6084
+ return proxyToMainThread(13, 0, 1, dirfd, path, mode);
6085
+
6086
+ try {
6087
+
6088
+ path = SYSCALLS.getStr(path);
6089
+ path = SYSCALLS.calculateAt(dirfd, path);
6090
+ mode &= ~SYSCALLS.currentUmask;
6091
+ FS.mkdir(path, mode);
6092
+ return 0;
6093
+ } catch (e) {
6094
+ if (typeof FS == 'undefined' || !(e.name === 'ErrnoError')) throw e;
6095
+ return -e.errno;
6096
+ }
6097
+
6098
+ }
6099
+
6100
+
6101
+
6102
+
6076
6103
  function ___syscall_newfstatat(dirfd, path, buf, flags) {
6077
6104
  if (ENVIRONMENT_IS_PTHREAD)
6078
- return proxyToMainThread(13, 0, 1, dirfd, path, buf, flags);
6105
+ return proxyToMainThread(14, 0, 1, dirfd, path, buf, flags);
6079
6106
 
6080
6107
  try {
6081
6108
 
@@ -6099,7 +6126,7 @@ var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {
6099
6126
 
6100
6127
  function ___syscall_openat(dirfd, path, flags, varargs) {
6101
6128
  if (ENVIRONMENT_IS_PTHREAD)
6102
- return proxyToMainThread(14, 0, 1, dirfd, path, flags, varargs);
6129
+ return proxyToMainThread(15, 0, 1, dirfd, path, flags, varargs);
6103
6130
 
6104
6131
  SYSCALLS.varargs = varargs;
6105
6132
  try {
@@ -6406,7 +6433,7 @@ var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {
6406
6433
 
6407
6434
  function ___syscall_pipe2(fdPtr, flags) {
6408
6435
  if (ENVIRONMENT_IS_PTHREAD)
6409
- return proxyToMainThread(15, 0, 1, fdPtr, flags);
6436
+ return proxyToMainThread(16, 0, 1, fdPtr, flags);
6410
6437
 
6411
6438
  try {
6412
6439
 
@@ -6504,7 +6531,7 @@ var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {
6504
6531
  var ___syscall_poll =
6505
6532
  function(fds, nfds, timeout) {
6506
6533
  if (ENVIRONMENT_IS_PTHREAD)
6507
- return proxyToMainThread(16, 0, 2, fds, nfds, timeout);
6534
+ return proxyToMainThread(17, 0, 2, fds, nfds, timeout);
6508
6535
 
6509
6536
  let innerFunc = () => {
6510
6537
 
@@ -6538,7 +6565,7 @@ var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {
6538
6565
 
6539
6566
  function ___syscall_poll_nonblocking(fds, nfds) {
6540
6567
  if (ENVIRONMENT_IS_PTHREAD)
6541
- return proxyToMainThread(17, 0, 1, fds, nfds);
6568
+ return proxyToMainThread(18, 0, 1, fds, nfds);
6542
6569
 
6543
6570
  try {
6544
6571
 
@@ -6597,7 +6624,7 @@ var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {
6597
6624
 
6598
6625
  function ___syscall_recvfrom(fd, buf, len, flags, addr, alen) {
6599
6626
  if (ENVIRONMENT_IS_PTHREAD)
6600
- return proxyToMainThread(18, 0, 1, fd, buf, len, flags, addr, alen);
6627
+ return proxyToMainThread(19, 0, 1, fd, buf, len, flags, addr, alen);
6601
6628
 
6602
6629
  try {
6603
6630
 
@@ -6622,7 +6649,7 @@ var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {
6622
6649
 
6623
6650
  function ___syscall_rmdir(path) {
6624
6651
  if (ENVIRONMENT_IS_PTHREAD)
6625
- return proxyToMainThread(19, 0, 1, path);
6652
+ return proxyToMainThread(20, 0, 1, path);
6626
6653
 
6627
6654
  try {
6628
6655
 
@@ -6643,7 +6670,7 @@ var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {
6643
6670
 
6644
6671
  function ___syscall_sendto(fd, buf, len, flags, addr, alen) {
6645
6672
  if (ENVIRONMENT_IS_PTHREAD)
6646
- return proxyToMainThread(20, 0, 1, fd, buf, len, flags, addr, alen);
6673
+ return proxyToMainThread(21, 0, 1, fd, buf, len, flags, addr, alen);
6647
6674
 
6648
6675
  try {
6649
6676
 
@@ -6667,7 +6694,7 @@ var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {
6667
6694
 
6668
6695
  function ___syscall_setsockopt(fd, level, optname, optval, optlen, unused) {
6669
6696
  if (ENVIRONMENT_IS_PTHREAD)
6670
- return proxyToMainThread(21, 0, 1, fd, level, optname, optval, optlen, unused);
6697
+ return proxyToMainThread(22, 0, 1, fd, level, optname, optval, optlen, unused);
6671
6698
 
6672
6699
  try {
6673
6700
 
@@ -6685,7 +6712,7 @@ var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {
6685
6712
 
6686
6713
  function ___syscall_socket(domain, type, protocol, u1, u2, u3) {
6687
6714
  if (ENVIRONMENT_IS_PTHREAD)
6688
- return proxyToMainThread(22, 0, 1, domain, type, protocol, u1, u2, u3);
6715
+ return proxyToMainThread(23, 0, 1, domain, type, protocol, u1, u2, u3);
6689
6716
 
6690
6717
  try {
6691
6718
 
@@ -6703,7 +6730,7 @@ var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {
6703
6730
 
6704
6731
  function ___syscall_stat64(path, buf) {
6705
6732
  if (ENVIRONMENT_IS_PTHREAD)
6706
- return proxyToMainThread(23, 0, 1, path, buf);
6733
+ return proxyToMainThread(24, 0, 1, path, buf);
6707
6734
 
6708
6735
  try {
6709
6736
 
@@ -6721,7 +6748,7 @@ var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {
6721
6748
 
6722
6749
  function ___syscall_umask(mask) {
6723
6750
  if (ENVIRONMENT_IS_PTHREAD)
6724
- return proxyToMainThread(24, 0, 1, mask);
6751
+ return proxyToMainThread(25, 0, 1, mask);
6725
6752
 
6726
6753
  try {
6727
6754
 
@@ -6740,7 +6767,7 @@ var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {
6740
6767
 
6741
6768
  function ___syscall_unlinkat(dirfd, path, flags) {
6742
6769
  if (ENVIRONMENT_IS_PTHREAD)
6743
- return proxyToMainThread(25, 0, 1, dirfd, path, flags);
6770
+ return proxyToMainThread(26, 0, 1, dirfd, path, flags);
6744
6771
 
6745
6772
  try {
6746
6773
 
@@ -7037,6 +7064,191 @@ var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {
7037
7064
  };
7038
7065
  var __embind_register_emval = (rawType) => registerType(rawType, EmValType);
7039
7066
 
7067
+ var ensureOverloadTable = (proto, methodName, humanName) => {
7068
+ if (undefined === proto[methodName].overloadTable) {
7069
+ var prevFunc = proto[methodName];
7070
+ // Inject an overload resolver function that routes to the appropriate overload based on the number of arguments.
7071
+ proto[methodName] = function(...args) {
7072
+ // TODO This check can be removed in -O3 level "unsafe" optimizations.
7073
+ if (!proto[methodName].overloadTable.hasOwnProperty(args.length)) {
7074
+ throwBindingError(`Function '${humanName}' called with an invalid number of arguments (${args.length}) - expects one of (${proto[methodName].overloadTable})!`);
7075
+ }
7076
+ return proto[methodName].overloadTable[args.length].apply(this, args);
7077
+ };
7078
+ // Move the previous function into the overload table.
7079
+ proto[methodName].overloadTable = [];
7080
+ proto[methodName].overloadTable[prevFunc.argCount] = prevFunc;
7081
+ }
7082
+ };
7083
+
7084
+ /** @param {number=} numArguments */
7085
+ var exposePublicSymbol = (name, value, numArguments) => {
7086
+ if (Module.hasOwnProperty(name)) {
7087
+ if (undefined === numArguments || (undefined !== Module[name].overloadTable && undefined !== Module[name].overloadTable[numArguments])) {
7088
+ throwBindingError(`Cannot register public name '${name}' twice`);
7089
+ }
7090
+
7091
+ // We are exposing a function with the same name as an existing function. Create an overload table and a function selector
7092
+ // that routes between the two.
7093
+ ensureOverloadTable(Module, name, name);
7094
+ if (Module[name].overloadTable.hasOwnProperty(numArguments)) {
7095
+ throwBindingError(`Cannot register multiple overloads of a function with the same number of arguments (${numArguments})!`);
7096
+ }
7097
+ // Add the new function into the overload table.
7098
+ Module[name].overloadTable[numArguments] = value;
7099
+ } else {
7100
+ Module[name] = value;
7101
+ Module[name].argCount = numArguments;
7102
+ }
7103
+ };
7104
+
7105
+
7106
+
7107
+
7108
+
7109
+
7110
+ var enumReadValueFromPointer = (name, width, signed) => {
7111
+ switch (width) {
7112
+ case 1: return signed ?
7113
+ function(pointer) { return this.fromWireType(HEAP8[pointer]) } :
7114
+ function(pointer) { return this.fromWireType(HEAPU8[pointer]) };
7115
+ case 2: return signed ?
7116
+ function(pointer) { return this.fromWireType(HEAP16[((pointer)>>1)]) } :
7117
+ function(pointer) { return this.fromWireType(HEAPU16[((pointer)>>1)]) };
7118
+ case 4: return signed ?
7119
+ function(pointer) { return this.fromWireType(HEAP32[((pointer)>>2)]) } :
7120
+ function(pointer) { return this.fromWireType(HEAPU32[((pointer)>>2)]) };
7121
+ default:
7122
+ throw new TypeError(`invalid integer width (${width}): ${name}`);
7123
+ }
7124
+ };
7125
+
7126
+
7127
+
7128
+ function getEnumValueType(rawValueType) {
7129
+ // This must match the values of enum_value_type in wire.h
7130
+ return !rawValueType ? 'object' : (rawValueType === 1 ? 'number' : 'string');
7131
+ }
7132
+ /** @suppress {globalThis} */
7133
+ var __embind_register_enum = (rawType, name, size, isSigned, rawValueType) => {
7134
+ name = AsciiToString(name);
7135
+ const valueType = getEnumValueType(rawValueType);
7136
+
7137
+ switch (valueType) {
7138
+ case 'object': {
7139
+ function ctor() {}
7140
+ ctor.values = {};
7141
+
7142
+ registerType(rawType, {
7143
+ name,
7144
+ constructor: ctor,
7145
+ valueType,
7146
+ fromWireType: function(c) {
7147
+ return this.constructor.values[c];
7148
+ },
7149
+ toWireType: (destructors, c) => c.value,
7150
+ readValueFromPointer: enumReadValueFromPointer(name, size, isSigned),
7151
+ destructorFunction: null,
7152
+ });
7153
+
7154
+ exposePublicSymbol(name, ctor);
7155
+ break;
7156
+ }
7157
+ case 'number': {
7158
+ var keysMap = {};
7159
+
7160
+ registerType(rawType, {
7161
+ name: name,
7162
+ keysMap,
7163
+ valueType,
7164
+ fromWireType: (c) => c,
7165
+ toWireType: (destructors, c) => c,
7166
+ readValueFromPointer: enumReadValueFromPointer(name, size, isSigned),
7167
+ destructorFunction: null,
7168
+ });
7169
+
7170
+ exposePublicSymbol(name, keysMap);
7171
+ // Just exposes a simple dict. argCount is meaningless here,
7172
+ delete Module[name].argCount;
7173
+ break;
7174
+ }
7175
+ case 'string': {
7176
+ var valuesMap = {};
7177
+ var reverseMap = {};
7178
+ var keysMap = {};
7179
+
7180
+ registerType(rawType, {
7181
+ name: name,
7182
+ valuesMap,
7183
+ reverseMap,
7184
+ keysMap,
7185
+ valueType,
7186
+ fromWireType: function(c) {
7187
+ return this.reverseMap[c];
7188
+ },
7189
+ toWireType: function(destructors, c) {
7190
+ return this.valuesMap[c];
7191
+ },
7192
+ readValueFromPointer: enumReadValueFromPointer(name, size, isSigned),
7193
+ destructorFunction: null,
7194
+ });
7195
+
7196
+ exposePublicSymbol(name, keysMap);
7197
+ // Just exposes a simple dict. argCount is meaningless here,
7198
+ delete Module[name].argCount;
7199
+ break;
7200
+ }
7201
+ }
7202
+ };
7203
+
7204
+ var createNamedFunction = (name, func) => Object.defineProperty(func, 'name', { value: name });
7205
+
7206
+
7207
+
7208
+
7209
+
7210
+ var getTypeName = (type) => {
7211
+ var ptr = ___getTypeName(type);
7212
+ var rv = AsciiToString(ptr);
7213
+ _free(ptr);
7214
+ return rv;
7215
+ };
7216
+
7217
+ var requireRegisteredType = (rawType, humanName) => {
7218
+ var impl = registeredTypes[rawType];
7219
+ if (undefined === impl) {
7220
+ throwBindingError(`${humanName} has unknown type ${getTypeName(rawType)}`);
7221
+ }
7222
+ return impl;
7223
+ };
7224
+ var __embind_register_enum_value = (rawEnumType, name, enumValue) => {
7225
+ var enumType = requireRegisteredType(rawEnumType, 'enum');
7226
+ name = AsciiToString(name);
7227
+
7228
+ switch (enumType.valueType) {
7229
+ case 'object': {
7230
+ var Enum = enumType.constructor;
7231
+ var Value = Object.create(enumType.constructor.prototype, {
7232
+ value: {value: enumValue},
7233
+ constructor: {value: createNamedFunction(`${enumType.name}_${name}`, function() {})},
7234
+ });
7235
+ Enum.values[enumValue] = Value;
7236
+ Enum[name] = Value;
7237
+ break;
7238
+ }
7239
+ case 'number': {
7240
+ enumType.keysMap[name] = enumValue;
7241
+ break;
7242
+ }
7243
+ case 'string': {
7244
+ enumType.valuesMap[name] = enumValue;
7245
+ enumType.reverseMap[enumValue] = name;
7246
+ enumType.keysMap[name] = name;
7247
+ break;
7248
+ }
7249
+ }
7250
+ };
7251
+
7040
7252
  /** @type {!Float32Array} */
7041
7253
  var HEAPF32;
7042
7254
 
@@ -7073,7 +7285,6 @@ var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {
7073
7285
  });
7074
7286
  };
7075
7287
 
7076
- var createNamedFunction = (name, func) => Object.defineProperty(func, 'name', { value: name });
7077
7288
 
7078
7289
  var runDestructors = (destructors) => {
7079
7290
  while (destructors.length) {
@@ -7618,43 +7829,6 @@ var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {
7618
7829
  return createNamedFunction(humanName, invokerFn);
7619
7830
  }
7620
7831
 
7621
- var ensureOverloadTable = (proto, methodName, humanName) => {
7622
- if (undefined === proto[methodName].overloadTable) {
7623
- var prevFunc = proto[methodName];
7624
- // Inject an overload resolver function that routes to the appropriate overload based on the number of arguments.
7625
- proto[methodName] = function(...args) {
7626
- // TODO This check can be removed in -O3 level "unsafe" optimizations.
7627
- if (!proto[methodName].overloadTable.hasOwnProperty(args.length)) {
7628
- throwBindingError(`Function '${humanName}' called with an invalid number of arguments (${args.length}) - expects one of (${proto[methodName].overloadTable})!`);
7629
- }
7630
- return proto[methodName].overloadTable[args.length].apply(this, args);
7631
- };
7632
- // Move the previous function into the overload table.
7633
- proto[methodName].overloadTable = [];
7634
- proto[methodName].overloadTable[prevFunc.argCount] = prevFunc;
7635
- }
7636
- };
7637
-
7638
- /** @param {number=} numArguments */
7639
- var exposePublicSymbol = (name, value, numArguments) => {
7640
- if (Module.hasOwnProperty(name)) {
7641
- if (undefined === numArguments || (undefined !== Module[name].overloadTable && undefined !== Module[name].overloadTable[numArguments])) {
7642
- throwBindingError(`Cannot register public name '${name}' twice`);
7643
- }
7644
-
7645
- // We are exposing a function with the same name as an existing function. Create an overload table and a function selector
7646
- // that routes between the two.
7647
- ensureOverloadTable(Module, name, name);
7648
- if (Module[name].overloadTable.hasOwnProperty(numArguments)) {
7649
- throwBindingError(`Cannot register multiple overloads of a function with the same number of arguments (${numArguments})!`);
7650
- }
7651
- // Add the new function into the overload table.
7652
- Module[name].overloadTable[numArguments] = value;
7653
- } else {
7654
- Module[name] = value;
7655
- Module[name].argCount = numArguments;
7656
- }
7657
- };
7658
7832
 
7659
7833
  var heap32VectorToArray = (count, firstElement) => {
7660
7834
  var array = [];
@@ -7707,14 +7881,6 @@ var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {
7707
7881
 
7708
7882
  class UnboundTypeError extends Error {}
7709
7883
 
7710
-
7711
-
7712
- var getTypeName = (type) => {
7713
- var ptr = ___getTypeName(type);
7714
- var rv = AsciiToString(ptr);
7715
- _free(ptr);
7716
- return rv;
7717
- };
7718
7884
  var throwUnboundTypeError = (message, types) => {
7719
7885
  var unboundTypes = [];
7720
7886
  var seen = {};
@@ -8129,7 +8295,7 @@ var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {
8129
8295
 
8130
8296
  function __emscripten_lookup_name(name) {
8131
8297
  if (ENVIRONMENT_IS_PTHREAD)
8132
- return proxyToMainThread(26, 0, 1, name);
8298
+ return proxyToMainThread(27, 0, 1, name);
8133
8299
 
8134
8300
  // uint32_t _emscripten_lookup_name(const char *name);
8135
8301
  var nameString = UTF8ToString(name);
@@ -8349,15 +8515,6 @@ var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => {
8349
8515
  };
8350
8516
 
8351
8517
 
8352
-
8353
- var requireRegisteredType = (rawType, humanName) => {
8354
- var impl = registeredTypes[rawType];
8355
- if (undefined === impl) {
8356
- throwBindingError(`${humanName} has unknown type ${getTypeName(rawType)}`);
8357
- }
8358
- return impl;
8359
- };
8360
-
8361
8518
  var emval_lookupTypes = (argCount, argTypes) => {
8362
8519
  var a = new Array(argCount);
8363
8520
  for (var i = 0; i < argCount; ++i) {
@@ -8609,7 +8766,7 @@ ${functionBody}
8609
8766
 
8610
8767
  function __mmap_js(len, prot, flags, fd, offset, allocated, addr) {
8611
8768
  if (ENVIRONMENT_IS_PTHREAD)
8612
- return proxyToMainThread(27, 0, 1, len, prot, flags, fd, offset, allocated, addr);
8769
+ return proxyToMainThread(28, 0, 1, len, prot, flags, fd, offset, allocated, addr);
8613
8770
 
8614
8771
  offset = bigintToI53Checked(offset);
8615
8772
 
@@ -8639,7 +8796,7 @@ ${functionBody}
8639
8796
 
8640
8797
  function __munmap_js(addr, len, prot, flags, fd, offset) {
8641
8798
  if (ENVIRONMENT_IS_PTHREAD)
8642
- return proxyToMainThread(28, 0, 1, addr, len, prot, flags, fd, offset);
8799
+ return proxyToMainThread(29, 0, 1, addr, len, prot, flags, fd, offset);
8643
8800
 
8644
8801
  offset = bigintToI53Checked(offset);
8645
8802
 
@@ -8675,7 +8832,7 @@ ${functionBody}
8675
8832
 
8676
8833
  function __setitimer_js(which, timeout_ms) {
8677
8834
  if (ENVIRONMENT_IS_PTHREAD)
8678
- return proxyToMainThread(29, 0, 1, which, timeout_ms);
8835
+ return proxyToMainThread(30, 0, 1, which, timeout_ms);
8679
8836
 
8680
8837
  // First, clear any existing timer.
8681
8838
  if (timers[which]) {
@@ -8795,6 +8952,11 @@ ${functionBody}
8795
8952
 
8796
8953
  };
8797
8954
 
8955
+ var _emscripten_clear_interval = (id) => {
8956
+ runtimeKeepalivePop();
8957
+ clearInterval(id);
8958
+ };
8959
+
8798
8960
 
8799
8961
  var _emscripten_exit_with_live_runtime = () => {
8800
8962
  runtimeKeepalivePush();
@@ -8887,6 +9049,12 @@ ${functionBody}
8887
9049
 
8888
9050
  var _emscripten_runtime_keepalive_push = runtimeKeepalivePush;
8889
9051
 
9052
+
9053
+ var _emscripten_set_interval = (cb, msecs, userData) => {
9054
+ runtimeKeepalivePush();
9055
+ return setInterval(() => callUserCallback(((a1) => dynCall_vi(cb, a1)), userData), msecs);
9056
+ };
9057
+
8890
9058
  var _emscripten_unwind_to_js_event_loop = () => {
8891
9059
  throw 'unwind';
8892
9060
  };
@@ -8930,7 +9098,7 @@ ${functionBody}
8930
9098
 
8931
9099
  function _environ_get(__environ, environ_buf) {
8932
9100
  if (ENVIRONMENT_IS_PTHREAD)
8933
- return proxyToMainThread(30, 0, 1, __environ, environ_buf);
9101
+ return proxyToMainThread(31, 0, 1, __environ, environ_buf);
8934
9102
 
8935
9103
  var bufSize = 0;
8936
9104
  var envp = 0;
@@ -8951,7 +9119,7 @@ ${functionBody}
8951
9119
 
8952
9120
  function _environ_sizes_get(penviron_count, penviron_buf_size) {
8953
9121
  if (ENVIRONMENT_IS_PTHREAD)
8954
- return proxyToMainThread(31, 0, 1, penviron_count, penviron_buf_size);
9122
+ return proxyToMainThread(32, 0, 1, penviron_count, penviron_buf_size);
8955
9123
 
8956
9124
  var strings = getEnvStrings();
8957
9125
  HEAPU32[((penviron_count)>>2)] = strings.length;
@@ -8970,7 +9138,7 @@ ${functionBody}
8970
9138
 
8971
9139
  function _fd_close(fd) {
8972
9140
  if (ENVIRONMENT_IS_PTHREAD)
8973
- return proxyToMainThread(32, 0, 1, fd);
9141
+ return proxyToMainThread(33, 0, 1, fd);
8974
9142
 
8975
9143
  try {
8976
9144
 
@@ -9020,7 +9188,7 @@ ${functionBody}
9020
9188
 
9021
9189
  function _fd_read(fd, iov, iovcnt, pnum) {
9022
9190
  if (ENVIRONMENT_IS_PTHREAD)
9023
- return proxyToMainThread(33, 0, 1, fd, iov, iovcnt, pnum);
9191
+ return proxyToMainThread(34, 0, 1, fd, iov, iovcnt, pnum);
9024
9192
 
9025
9193
  try {
9026
9194
 
@@ -9042,7 +9210,7 @@ ${functionBody}
9042
9210
 
9043
9211
  function _fd_seek(fd, offset, whence, newOffset) {
9044
9212
  if (ENVIRONMENT_IS_PTHREAD)
9045
- return proxyToMainThread(34, 0, 1, fd, offset, whence, newOffset);
9213
+ return proxyToMainThread(35, 0, 1, fd, offset, whence, newOffset);
9046
9214
 
9047
9215
  offset = bigintToI53Checked(offset);
9048
9216
 
@@ -9096,7 +9264,7 @@ ${functionBody}
9096
9264
 
9097
9265
  function _fd_write(fd, iov, iovcnt, pnum) {
9098
9266
  if (ENVIRONMENT_IS_PTHREAD)
9099
- return proxyToMainThread(35, 0, 1, fd, iov, iovcnt, pnum);
9267
+ return proxyToMainThread(36, 0, 1, fd, iov, iovcnt, pnum);
9100
9268
 
9101
9269
  try {
9102
9270
 
@@ -9126,7 +9294,7 @@ ${functionBody}
9126
9294
 
9127
9295
  function _getaddrinfo(node, service, hint, out) {
9128
9296
  if (ENVIRONMENT_IS_PTHREAD)
9129
- return proxyToMainThread(36, 0, 1, node, service, hint, out);
9297
+ return proxyToMainThread(37, 0, 1, node, service, hint, out);
9130
9298
 
9131
9299
  // Note getaddrinfo currently only returns a single addrinfo with ai_next defaulting to NULL. When NULL
9132
9300
  // hints are specified or ai_family set to AF_UNSPEC or ai_socktype or ai_protocol set to 0 then we
@@ -9304,7 +9472,7 @@ ${functionBody}
9304
9472
 
9305
9473
  function _getnameinfo(sa, salen, node, nodelen, serv, servlen, flags) {
9306
9474
  if (ENVIRONMENT_IS_PTHREAD)
9307
- return proxyToMainThread(37, 0, 1, sa, salen, node, nodelen, serv, servlen, flags);
9475
+ return proxyToMainThread(38, 0, 1, sa, salen, node, nodelen, serv, servlen, flags);
9308
9476
 
9309
9477
  var info = readSockaddr(sa, salen);
9310
9478
  if (info.errno) {
@@ -9356,9 +9524,6 @@ ${functionBody}
9356
9524
 
9357
9525
 
9358
9526
 
9359
-
9360
-
9361
-
9362
9527
  var FS_createPath = (...args) => FS.createPath(...args);
9363
9528
 
9364
9529
 
@@ -9581,13 +9746,11 @@ if (Module['printErr']) err = Module['printErr'];
9581
9746
  'getLiveInheritedInstances',
9582
9747
  'getFunctionArgsName',
9583
9748
  'createJsInvokerSignature',
9584
- 'getEnumValueType',
9585
9749
  'PureVirtualError',
9586
9750
  'getBasestPointer',
9587
9751
  'registerInheritedInstance',
9588
9752
  'unregisterInheritedInstance',
9589
9753
  'getInheritedInstance',
9590
- 'enumReadValueFromPointer',
9591
9754
  'installIndexedIterator',
9592
9755
  'genericPointerToWireType',
9593
9756
  'constNoSmartPtrRawPointerToWireType',
@@ -9893,6 +10056,7 @@ missingLibrarySymbols.forEach(missingLibrarySymbol)
9893
10056
  'usesDestructorStack',
9894
10057
  'argsUseStackAlloc',
9895
10058
  'checkArgCount',
10059
+ 'getEnumValueType',
9896
10060
  'getRequiredArgCount',
9897
10061
  'createJsInvoker',
9898
10062
  'UnboundTypeError',
@@ -9907,6 +10071,7 @@ missingLibrarySymbols.forEach(missingLibrarySymbol)
9907
10071
  'registeredPointers',
9908
10072
  'registerType',
9909
10073
  'integerReadValueFromPointer',
10074
+ 'enumReadValueFromPointer',
9910
10075
  'floatReadValueFromPointer',
9911
10076
  'assertIntegerRange',
9912
10077
  'readPointer',
@@ -9953,6 +10118,7 @@ var proxiedFunctionTable = [
9953
10118
  ___syscall_getuid32,
9954
10119
  ___syscall_ioctl,
9955
10120
  ___syscall_lstat64,
10121
+ ___syscall_mkdirat,
9956
10122
  ___syscall_newfstatat,
9957
10123
  ___syscall_openat,
9958
10124
  ___syscall_pipe2,
@@ -10009,7 +10175,6 @@ function checkIncomingModuleAPI() {
10009
10175
  ignoredModuleProp('wasmMemory');
10010
10176
  ignoredModuleProp('wasmBinary');
10011
10177
  }
10012
- function module_set(k,v) { Module[UTF8ToString(k)] = Emval.toValue(v); }
10013
10178
  function __asyncjs__em_libusb_wait_async(ptr,expected_value,timeout) { return Asyncify.handleAsync(async () => { await Atomics.waitAsync(HEAP32, ptr >> 2, expected_value, timeout).value; }); }
10014
10179
  function usbi_em_promise_catch(handle) { let promise = Emval.toValue(handle); promise = promise.then( value => ({error : 0, value}), error => { let errorCode = -99; if (error == Symbol.for('libusb.cancelled')) { errorCode = -10; } else { console.error(error); } if (error instanceof DOMException) { const ERROR_CODES = { NetworkError : -1, DataError : -2, TypeMismatchError : -2, IndexSizeError : -2, SecurityError : -3, NotFoundError : -5, InvalidStateError : -6, TimeoutError : -7, AbortError : -10, NotSupportedError : -12, }; errorCode = ERROR_CODES[error.name] ?? errorCode; } else if (error instanceof RangeError || error instanceof TypeError) { errorCode = -2; } return {error: errorCode, value: undefined}; } ); return Emval.toHandle(promise); }
10015
10180
  function usbi_em_copy_from_dataview(dst,src) { src = Emval.toValue(src); src = new Uint8Array(src.buffer, src.byteOffset, src.byteLength); HEAPU8.set(src, dst); }
@@ -10021,7 +10186,6 @@ function usbi_em_wrap_transfer_promise(transfer,handle) { let cancel; const prom
10021
10186
  var _malloc = makeInvalidEarlyAccess('_malloc');
10022
10187
  var _free = makeInvalidEarlyAccess('_free');
10023
10188
  var _pthread_self = makeInvalidEarlyAccess('_pthread_self');
10024
- var _main = Module['_main'] = makeInvalidEarlyAccess('_main');
10025
10189
  var ___getTypeName = makeInvalidEarlyAccess('___getTypeName');
10026
10190
  var __embind_initialize_bindings = makeInvalidEarlyAccess('__embind_initialize_bindings');
10027
10191
  var __emval_coro_resume = makeInvalidEarlyAccess('__emval_coro_resume');
@@ -10052,22 +10216,29 @@ var __emscripten_stack_restore = makeInvalidEarlyAccess('__emscripten_stack_rest
10052
10216
  var __emscripten_stack_alloc = makeInvalidEarlyAccess('__emscripten_stack_alloc');
10053
10217
  var _emscripten_stack_get_current = makeInvalidEarlyAccess('_emscripten_stack_get_current');
10054
10218
  var dynCall_vi = makeInvalidEarlyAccess('dynCall_vi');
10055
- var dynCall_v = makeInvalidEarlyAccess('dynCall_v');
10056
10219
  var dynCall_ii = makeInvalidEarlyAccess('dynCall_ii');
10220
+ var dynCall_v = makeInvalidEarlyAccess('dynCall_v');
10057
10221
  var dynCall_vii = makeInvalidEarlyAccess('dynCall_vii');
10058
10222
  var dynCall_viii = makeInvalidEarlyAccess('dynCall_viii');
10059
10223
  var dynCall_iii = makeInvalidEarlyAccess('dynCall_iii');
10060
10224
  var dynCall_iiii = makeInvalidEarlyAccess('dynCall_iiii');
10061
10225
  var dynCall_iiiiii = makeInvalidEarlyAccess('dynCall_iiiiii');
10062
- var dynCall_iiiii = makeInvalidEarlyAccess('dynCall_iiiii');
10063
10226
  var dynCall_viiii = makeInvalidEarlyAccess('dynCall_viiii');
10064
- var dynCall_i = makeInvalidEarlyAccess('dynCall_i');
10065
- var dynCall_viiiiiii = makeInvalidEarlyAccess('dynCall_viiiiiii');
10066
10227
  var dynCall_viiiii = makeInvalidEarlyAccess('dynCall_viiiii');
10228
+ var dynCall_viiiiiii = makeInvalidEarlyAccess('dynCall_viiiiiii');
10229
+ var dynCall_iiiii = makeInvalidEarlyAccess('dynCall_iiiii');
10230
+ var dynCall_i = makeInvalidEarlyAccess('dynCall_i');
10067
10231
  var dynCall_viiiiii = makeInvalidEarlyAccess('dynCall_viiiiii');
10068
10232
  var dynCall_iiiiiii = makeInvalidEarlyAccess('dynCall_iiiiiii');
10069
10233
  var dynCall_jiji = makeInvalidEarlyAccess('dynCall_jiji');
10070
10234
  var dynCall_iidiiiii = makeInvalidEarlyAccess('dynCall_iidiiiii');
10235
+ var dynCall_viijii = makeInvalidEarlyAccess('dynCall_viijii');
10236
+ var dynCall_iiiiiiiii = makeInvalidEarlyAccess('dynCall_iiiiiiiii');
10237
+ var dynCall_iiiiij = makeInvalidEarlyAccess('dynCall_iiiiij');
10238
+ var dynCall_iiiiid = makeInvalidEarlyAccess('dynCall_iiiiid');
10239
+ var dynCall_iiiiijj = makeInvalidEarlyAccess('dynCall_iiiiijj');
10240
+ var dynCall_iiiiiiii = makeInvalidEarlyAccess('dynCall_iiiiiiii');
10241
+ var dynCall_iiiiiijj = makeInvalidEarlyAccess('dynCall_iiiiiijj');
10071
10242
  var _asyncify_start_unwind = makeInvalidEarlyAccess('_asyncify_start_unwind');
10072
10243
  var _asyncify_stop_unwind = makeInvalidEarlyAccess('_asyncify_stop_unwind');
10073
10244
  var _asyncify_start_rewind = makeInvalidEarlyAccess('_asyncify_start_rewind');
@@ -10078,7 +10249,6 @@ function assignWasmExports(wasmExports) {
10078
10249
  assert(typeof wasmExports['malloc'] != 'undefined', 'missing Wasm export: malloc');
10079
10250
  assert(typeof wasmExports['free'] != 'undefined', 'missing Wasm export: free');
10080
10251
  assert(typeof wasmExports['pthread_self'] != 'undefined', 'missing Wasm export: pthread_self');
10081
- assert(typeof wasmExports['main'] != 'undefined', 'missing Wasm export: main');
10082
10252
  assert(typeof wasmExports['__getTypeName'] != 'undefined', 'missing Wasm export: __getTypeName');
10083
10253
  assert(typeof wasmExports['_embind_initialize_bindings'] != 'undefined', 'missing Wasm export: _embind_initialize_bindings');
10084
10254
  assert(typeof wasmExports['_emval_coro_resume'] != 'undefined', 'missing Wasm export: _emval_coro_resume');
@@ -10109,22 +10279,29 @@ function assignWasmExports(wasmExports) {
10109
10279
  assert(typeof wasmExports['_emscripten_stack_alloc'] != 'undefined', 'missing Wasm export: _emscripten_stack_alloc');
10110
10280
  assert(typeof wasmExports['emscripten_stack_get_current'] != 'undefined', 'missing Wasm export: emscripten_stack_get_current');
10111
10281
  assert(typeof wasmExports['dynCall_vi'] != 'undefined', 'missing Wasm export: dynCall_vi');
10112
- assert(typeof wasmExports['dynCall_v'] != 'undefined', 'missing Wasm export: dynCall_v');
10113
10282
  assert(typeof wasmExports['dynCall_ii'] != 'undefined', 'missing Wasm export: dynCall_ii');
10283
+ assert(typeof wasmExports['dynCall_v'] != 'undefined', 'missing Wasm export: dynCall_v');
10114
10284
  assert(typeof wasmExports['dynCall_vii'] != 'undefined', 'missing Wasm export: dynCall_vii');
10115
10285
  assert(typeof wasmExports['dynCall_viii'] != 'undefined', 'missing Wasm export: dynCall_viii');
10116
10286
  assert(typeof wasmExports['dynCall_iii'] != 'undefined', 'missing Wasm export: dynCall_iii');
10117
10287
  assert(typeof wasmExports['dynCall_iiii'] != 'undefined', 'missing Wasm export: dynCall_iiii');
10118
10288
  assert(typeof wasmExports['dynCall_iiiiii'] != 'undefined', 'missing Wasm export: dynCall_iiiiii');
10119
- assert(typeof wasmExports['dynCall_iiiii'] != 'undefined', 'missing Wasm export: dynCall_iiiii');
10120
10289
  assert(typeof wasmExports['dynCall_viiii'] != 'undefined', 'missing Wasm export: dynCall_viiii');
10121
- assert(typeof wasmExports['dynCall_i'] != 'undefined', 'missing Wasm export: dynCall_i');
10122
- assert(typeof wasmExports['dynCall_viiiiiii'] != 'undefined', 'missing Wasm export: dynCall_viiiiiii');
10123
10290
  assert(typeof wasmExports['dynCall_viiiii'] != 'undefined', 'missing Wasm export: dynCall_viiiii');
10291
+ assert(typeof wasmExports['dynCall_viiiiiii'] != 'undefined', 'missing Wasm export: dynCall_viiiiiii');
10292
+ assert(typeof wasmExports['dynCall_iiiii'] != 'undefined', 'missing Wasm export: dynCall_iiiii');
10293
+ assert(typeof wasmExports['dynCall_i'] != 'undefined', 'missing Wasm export: dynCall_i');
10124
10294
  assert(typeof wasmExports['dynCall_viiiiii'] != 'undefined', 'missing Wasm export: dynCall_viiiiii');
10125
10295
  assert(typeof wasmExports['dynCall_iiiiiii'] != 'undefined', 'missing Wasm export: dynCall_iiiiiii');
10126
10296
  assert(typeof wasmExports['dynCall_jiji'] != 'undefined', 'missing Wasm export: dynCall_jiji');
10127
10297
  assert(typeof wasmExports['dynCall_iidiiiii'] != 'undefined', 'missing Wasm export: dynCall_iidiiiii');
10298
+ assert(typeof wasmExports['dynCall_viijii'] != 'undefined', 'missing Wasm export: dynCall_viijii');
10299
+ assert(typeof wasmExports['dynCall_iiiiiiiii'] != 'undefined', 'missing Wasm export: dynCall_iiiiiiiii');
10300
+ assert(typeof wasmExports['dynCall_iiiiij'] != 'undefined', 'missing Wasm export: dynCall_iiiiij');
10301
+ assert(typeof wasmExports['dynCall_iiiiid'] != 'undefined', 'missing Wasm export: dynCall_iiiiid');
10302
+ assert(typeof wasmExports['dynCall_iiiiijj'] != 'undefined', 'missing Wasm export: dynCall_iiiiijj');
10303
+ assert(typeof wasmExports['dynCall_iiiiiiii'] != 'undefined', 'missing Wasm export: dynCall_iiiiiiii');
10304
+ assert(typeof wasmExports['dynCall_iiiiiijj'] != 'undefined', 'missing Wasm export: dynCall_iiiiiijj');
10128
10305
  assert(typeof wasmExports['asyncify_start_unwind'] != 'undefined', 'missing Wasm export: asyncify_start_unwind');
10129
10306
  assert(typeof wasmExports['asyncify_stop_unwind'] != 'undefined', 'missing Wasm export: asyncify_stop_unwind');
10130
10307
  assert(typeof wasmExports['asyncify_start_rewind'] != 'undefined', 'missing Wasm export: asyncify_start_rewind');
@@ -10133,7 +10310,6 @@ function assignWasmExports(wasmExports) {
10133
10310
  _malloc = createExportWrapper('malloc', wasmExports['malloc'], 1);
10134
10311
  _free = createExportWrapper('free', wasmExports['free'], 1);
10135
10312
  _pthread_self = wasmExports['pthread_self'];
10136
- _main = Module['_main'] = createExportWrapper('main', wasmExports['main'], 2);
10137
10313
  ___getTypeName = createExportWrapper('__getTypeName', wasmExports['__getTypeName'], 1);
10138
10314
  __embind_initialize_bindings = createExportWrapper('_embind_initialize_bindings', wasmExports['_embind_initialize_bindings'], 0);
10139
10315
  __emval_coro_resume = createExportWrapper('_emval_coro_resume', wasmExports['_emval_coro_resume'], 2);
@@ -10164,22 +10340,29 @@ function assignWasmExports(wasmExports) {
10164
10340
  __emscripten_stack_alloc = wasmExports['_emscripten_stack_alloc'];
10165
10341
  _emscripten_stack_get_current = wasmExports['emscripten_stack_get_current'];
10166
10342
  dynCall_vi = dynCalls['vi'] = createExportWrapper('dynCall_vi', wasmExports['dynCall_vi'], 2);
10167
- dynCall_v = dynCalls['v'] = createExportWrapper('dynCall_v', wasmExports['dynCall_v'], 1);
10168
10343
  dynCall_ii = dynCalls['ii'] = createExportWrapper('dynCall_ii', wasmExports['dynCall_ii'], 2);
10344
+ dynCall_v = dynCalls['v'] = createExportWrapper('dynCall_v', wasmExports['dynCall_v'], 1);
10169
10345
  dynCall_vii = dynCalls['vii'] = createExportWrapper('dynCall_vii', wasmExports['dynCall_vii'], 3);
10170
10346
  dynCall_viii = dynCalls['viii'] = createExportWrapper('dynCall_viii', wasmExports['dynCall_viii'], 4);
10171
10347
  dynCall_iii = dynCalls['iii'] = createExportWrapper('dynCall_iii', wasmExports['dynCall_iii'], 3);
10172
10348
  dynCall_iiii = dynCalls['iiii'] = createExportWrapper('dynCall_iiii', wasmExports['dynCall_iiii'], 4);
10173
10349
  dynCall_iiiiii = dynCalls['iiiiii'] = createExportWrapper('dynCall_iiiiii', wasmExports['dynCall_iiiiii'], 6);
10174
- dynCall_iiiii = dynCalls['iiiii'] = createExportWrapper('dynCall_iiiii', wasmExports['dynCall_iiiii'], 5);
10175
10350
  dynCall_viiii = dynCalls['viiii'] = createExportWrapper('dynCall_viiii', wasmExports['dynCall_viiii'], 5);
10176
- dynCall_i = dynCalls['i'] = createExportWrapper('dynCall_i', wasmExports['dynCall_i'], 1);
10177
- dynCall_viiiiiii = dynCalls['viiiiiii'] = createExportWrapper('dynCall_viiiiiii', wasmExports['dynCall_viiiiiii'], 8);
10178
10351
  dynCall_viiiii = dynCalls['viiiii'] = createExportWrapper('dynCall_viiiii', wasmExports['dynCall_viiiii'], 6);
10352
+ dynCall_viiiiiii = dynCalls['viiiiiii'] = createExportWrapper('dynCall_viiiiiii', wasmExports['dynCall_viiiiiii'], 8);
10353
+ dynCall_iiiii = dynCalls['iiiii'] = createExportWrapper('dynCall_iiiii', wasmExports['dynCall_iiiii'], 5);
10354
+ dynCall_i = dynCalls['i'] = createExportWrapper('dynCall_i', wasmExports['dynCall_i'], 1);
10179
10355
  dynCall_viiiiii = dynCalls['viiiiii'] = createExportWrapper('dynCall_viiiiii', wasmExports['dynCall_viiiiii'], 7);
10180
10356
  dynCall_iiiiiii = dynCalls['iiiiiii'] = createExportWrapper('dynCall_iiiiiii', wasmExports['dynCall_iiiiiii'], 7);
10181
10357
  dynCall_jiji = dynCalls['jiji'] = createExportWrapper('dynCall_jiji', wasmExports['dynCall_jiji'], 4);
10182
10358
  dynCall_iidiiiii = dynCalls['iidiiiii'] = createExportWrapper('dynCall_iidiiiii', wasmExports['dynCall_iidiiiii'], 8);
10359
+ dynCall_viijii = dynCalls['viijii'] = createExportWrapper('dynCall_viijii', wasmExports['dynCall_viijii'], 6);
10360
+ dynCall_iiiiiiiii = dynCalls['iiiiiiiii'] = createExportWrapper('dynCall_iiiiiiiii', wasmExports['dynCall_iiiiiiiii'], 9);
10361
+ dynCall_iiiiij = dynCalls['iiiiij'] = createExportWrapper('dynCall_iiiiij', wasmExports['dynCall_iiiiij'], 6);
10362
+ dynCall_iiiiid = dynCalls['iiiiid'] = createExportWrapper('dynCall_iiiiid', wasmExports['dynCall_iiiiid'], 6);
10363
+ dynCall_iiiiijj = dynCalls['iiiiijj'] = createExportWrapper('dynCall_iiiiijj', wasmExports['dynCall_iiiiijj'], 7);
10364
+ dynCall_iiiiiiii = dynCalls['iiiiiiii'] = createExportWrapper('dynCall_iiiiiiii', wasmExports['dynCall_iiiiiiii'], 8);
10365
+ dynCall_iiiiiijj = dynCalls['iiiiiijj'] = createExportWrapper('dynCall_iiiiiijj', wasmExports['dynCall_iiiiiijj'], 8);
10183
10366
  _asyncify_start_unwind = createExportWrapper('asyncify_start_unwind', wasmExports['asyncify_start_unwind'], 1);
10184
10367
  _asyncify_stop_unwind = createExportWrapper('asyncify_stop_unwind', wasmExports['asyncify_stop_unwind'], 0);
10185
10368
  _asyncify_start_rewind = createExportWrapper('asyncify_start_rewind', wasmExports['asyncify_start_rewind'], 1);
@@ -10221,6 +10404,8 @@ function assignWasmExports(wasmExports) {
10221
10404
  /** @export */
10222
10405
  __syscall_lstat64: ___syscall_lstat64,
10223
10406
  /** @export */
10407
+ __syscall_mkdirat: ___syscall_mkdirat,
10408
+ /** @export */
10224
10409
  __syscall_newfstatat: ___syscall_newfstatat,
10225
10410
  /** @export */
10226
10411
  __syscall_openat: ___syscall_openat,
@@ -10257,6 +10442,10 @@ function assignWasmExports(wasmExports) {
10257
10442
  /** @export */
10258
10443
  _embind_register_emval: __embind_register_emval,
10259
10444
  /** @export */
10445
+ _embind_register_enum: __embind_register_enum,
10446
+ /** @export */
10447
+ _embind_register_enum_value: __embind_register_enum_value,
10448
+ /** @export */
10260
10449
  _embind_register_float: __embind_register_float,
10261
10450
  /** @export */
10262
10451
  _embind_register_function: __embind_register_function,
@@ -10351,6 +10540,8 @@ function assignWasmExports(wasmExports) {
10351
10540
  /** @export */
10352
10541
  emscripten_check_blocking_allowed: _emscripten_check_blocking_allowed,
10353
10542
  /** @export */
10543
+ emscripten_clear_interval: _emscripten_clear_interval,
10544
+ /** @export */
10354
10545
  emscripten_date_now: _emscripten_date_now,
10355
10546
  /** @export */
10356
10547
  emscripten_exit_with_live_runtime: _emscripten_exit_with_live_runtime,
@@ -10365,6 +10556,8 @@ function assignWasmExports(wasmExports) {
10365
10556
  /** @export */
10366
10557
  emscripten_runtime_keepalive_push: _emscripten_runtime_keepalive_push,
10367
10558
  /** @export */
10559
+ emscripten_set_interval: _emscripten_set_interval,
10560
+ /** @export */
10368
10561
  emscripten_unwind_to_js_event_loop: _emscripten_unwind_to_js_event_loop,
10369
10562
  /** @export */
10370
10563
  environ_get: _environ_get,
@@ -10387,8 +10580,6 @@ function assignWasmExports(wasmExports) {
10387
10580
  /** @export */
10388
10581
  memory: wasmMemory,
10389
10582
  /** @export */
10390
- module_set,
10391
- /** @export */
10392
10583
  proc_exit: _proc_exit,
10393
10584
  /** @export */
10394
10585
  usbi_em_cancel_transfer_promise,
@@ -10409,27 +10600,6 @@ function assignWasmExports(wasmExports) {
10409
10600
 
10410
10601
  var calledRun;
10411
10602
 
10412
- function callMain() {
10413
- assert(runDependencies == 0, 'cannot call main when async dependencies remain! (listen on Module["onRuntimeInitialized"])');
10414
- assert(typeof onPreRuns === 'undefined' || onPreRuns.length == 0, 'cannot call main when preRun functions remain to be called');
10415
-
10416
- var entryFunction = _main;
10417
-
10418
- var argc = 0;
10419
- var argv = 0;
10420
-
10421
- try {
10422
-
10423
- var ret = entryFunction(argc, argv);
10424
-
10425
- // if we're not running an evented main loop, it's time to exit
10426
- exitJS(ret, /* implicit = */ true);
10427
- return ret;
10428
- } catch (e) {
10429
- return handleException(e);
10430
- }
10431
- }
10432
-
10433
10603
  function stackCheckInit() {
10434
10604
  // This is normally called automatically during __wasm_call_ctors but need to
10435
10605
  // get these values before even running any of the ctors so we call it redundantly
@@ -10471,13 +10641,10 @@ async function run() {
10471
10641
 
10472
10642
  initRuntime();
10473
10643
 
10474
- // No ATMAINS hooks
10475
-
10476
10644
  Module['onRuntimeInitialized']?.();
10477
10645
  consumedModuleProp('onRuntimeInitialized');
10478
10646
 
10479
- var noInitialRun = Module['noInitialRun'] || false;
10480
- if (!noInitialRun) callMain();
10647
+ assert(!Module['_main'], 'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]');
10481
10648
 
10482
10649
  postRun();
10483
10650
  }
Binary file
package/dist/index.d.ts CHANGED
@@ -167,16 +167,6 @@ export type SANEParameters = {
167
167
  lines: number;
168
168
  depth: number;
169
169
  };
170
- /**
171
- * @private Type for enums provided by the core SANE Emscripten module.
172
- * @deprecated
173
- */
174
- export type SANEEnum<E, TE> = E & {
175
- /**
176
- * @deprecated Use reverse map already built into TS enums.
177
- */
178
- asString: (value: TE) => string;
179
- };
180
170
  /**
181
171
  * The core SANE Emscripten module.
182
172
  */
@@ -212,7 +202,7 @@ export interface LibSANE {
212
202
  * require having a reference to the library module. All enums are
213
203
  * exported with the package.
214
204
  */
215
- SANE_STATUS: SANEEnum<typeof SANEStatus, SANEStatus>;
205
+ SANE_STATUS: typeof SANEStatus;
216
206
  /**
217
207
  * @deprecated Consider using the SANEValueType enum directly.
218
208
  *
@@ -222,7 +212,7 @@ export interface LibSANE {
222
212
  * require having a reference to the library module. All enums are
223
213
  * exported with the package.
224
214
  */
225
- SANE_TYPE: SANEEnum<typeof SANEValueType, SANEValueType>;
215
+ SANE_TYPE: typeof SANEValueType;
226
216
  /**
227
217
  * @deprecated Consider using the SANEUnit enum directly.
228
218
  *
@@ -232,7 +222,7 @@ export interface LibSANE {
232
222
  * require having a reference to the library module. All enums are
233
223
  * exported with the package.
234
224
  */
235
- SANE_UNIT: SANEEnum<typeof SANEUnit, SANEUnit>;
225
+ SANE_UNIT: typeof SANEUnit;
236
226
  /**
237
227
  * @deprecated Consider using the SANEConstraintType enum directly.
238
228
  *
@@ -242,7 +232,7 @@ export interface LibSANE {
242
232
  * require having a reference to the library module. All enums are
243
233
  * exported with the package.
244
234
  */
245
- SANE_CONSTRAINT: SANEEnum<typeof SANEConstraintType, SANEConstraintType>;
235
+ SANE_CONSTRAINT: typeof SANEConstraintType;
246
236
  /**
247
237
  * @deprecated Consider using the SANEFrame enum directly.
248
238
  *
@@ -252,7 +242,7 @@ export interface LibSANE {
252
242
  * require having a reference to the library module. All enums are
253
243
  * exported with the package.
254
244
  */
255
- SANE_FRAME: SANEEnum<typeof SANEFrame, SANEFrame>;
245
+ SANE_FRAME: typeof SANEFrame;
256
246
  /**
257
247
  * Get the current state of the library.
258
248
  *
@@ -402,6 +392,15 @@ export interface LibSANE {
402
392
  * SANE Emscripten module options (specific to sane-wasm).
403
393
  */
404
394
  export type LibSANEOptions = {
395
+ /**
396
+ * Selects which SANE backends to include or exclude.
397
+ *
398
+ * @defaultValue (all backends)
399
+ */
400
+ backends?: string[] | {
401
+ include?: string[];
402
+ exclude?: string[];
403
+ };
405
404
  /**
406
405
  * Enables SANE low-level debug messages, this can be quite verbose.
407
406
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAN,IAAY,UAaX;AAbD,WAAY,UAAU;IAClB,2CAAQ,CAAA;IACR,yDAAW,CAAA;IACX,qDAAS,CAAA;IACT,yDAAW,CAAA;IACX,6CAAK,CAAA;IACL,yCAAG,CAAA;IACH,+CAAM,CAAA;IACN,iDAAO,CAAA;IACP,uDAAU,CAAA;IACV,mDAAQ,CAAA;IACR,gDAAM,CAAA;IACN,8DAAa,CAAA;AACjB,CAAC,EAbW,UAAU,KAAV,UAAU,QAarB;AAED;;;GAGG;AACH,MAAM,CAAN,IAAY,aAOX;AAPD,WAAY,aAAa;IACrB,iDAAQ,CAAA;IACR,+CAAG,CAAA;IACH,mDAAK,CAAA;IACL,qDAAM,CAAA;IACN,qDAAM,CAAA;IACN,mDAAK,CAAA;AACT,CAAC,EAPW,aAAa,KAAb,aAAa,QAOxB;AAED;;;GAGG;AACH,MAAM,CAAN,IAAY,QAQX;AARD,WAAY,QAAQ;IAChB,uCAAQ,CAAA;IACR,yCAAK,CAAA;IACL,qCAAG,CAAA;IACH,mCAAE,CAAA;IACF,qCAAG,CAAA;IACH,6CAAO,CAAA;IACP,qDAAW,CAAA;AACf,CAAC,EARW,QAAQ,KAAR,QAAQ,QAQnB;AAED;;;GAGG;AACH,MAAM,CAAN,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC1B,2DAAQ,CAAA;IACR,6DAAK,CAAA;IACL,qEAAS,CAAA;IACT,yEAAW,CAAA;AACf,CAAC,EALW,kBAAkB,KAAlB,kBAAkB,QAK7B;AAED;;;GAGG;AACH,MAAM,CAAN,IAAY,SAMX;AAND,WAAY,SAAS;IACjB,yCAAQ,CAAA;IACR,uCAAG,CAAA;IACH,uCAAG,CAAA;IACH,2CAAK,CAAA;IACL,yCAAI,CAAA;AACR,CAAC,EANW,SAAS,KAAT,SAAS,QAMpB;AA8XD;;GAEG;AACH,aAAa;AACb,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,OAAyB,CAAC;AAEvF;;;GAGG;AACH,eAAe,OAAO,CAAC;AAEvB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAN,IAAY,UAaX;AAbD,WAAY,UAAU;IAClB,2CAAQ,CAAA;IACR,yDAAW,CAAA;IACX,qDAAS,CAAA;IACT,yDAAW,CAAA;IACX,6CAAK,CAAA;IACL,yCAAG,CAAA;IACH,+CAAM,CAAA;IACN,iDAAO,CAAA;IACP,uDAAU,CAAA;IACV,mDAAQ,CAAA;IACR,gDAAM,CAAA;IACN,8DAAa,CAAA;AACjB,CAAC,EAbW,UAAU,KAAV,UAAU,QAarB;AAED;;;GAGG;AACH,MAAM,CAAN,IAAY,aAOX;AAPD,WAAY,aAAa;IACrB,iDAAQ,CAAA;IACR,+CAAG,CAAA;IACH,mDAAK,CAAA;IACL,qDAAM,CAAA;IACN,qDAAM,CAAA;IACN,mDAAK,CAAA;AACT,CAAC,EAPW,aAAa,KAAb,aAAa,QAOxB;AAED;;;GAGG;AACH,MAAM,CAAN,IAAY,QAQX;AARD,WAAY,QAAQ;IAChB,uCAAQ,CAAA;IACR,yCAAK,CAAA;IACL,qCAAG,CAAA;IACH,mCAAE,CAAA;IACF,qCAAG,CAAA;IACH,6CAAO,CAAA;IACP,qDAAW,CAAA;AACf,CAAC,EARW,QAAQ,KAAR,QAAQ,QAQnB;AAED;;;GAGG;AACH,MAAM,CAAN,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC1B,2DAAQ,CAAA;IACR,6DAAK,CAAA;IACL,qEAAS,CAAA;IACT,yEAAW,CAAA;AACf,CAAC,EALW,kBAAkB,KAAlB,kBAAkB,QAK7B;AAED;;;GAGG;AACH,MAAM,CAAN,IAAY,SAMX;AAND,WAAY,SAAS;IACjB,yCAAQ,CAAA;IACR,uCAAG,CAAA;IACH,uCAAG,CAAA;IACH,2CAAK,CAAA;IACL,yCAAI,CAAA;AACR,CAAC,EANW,SAAS,KAAT,SAAS,QAMpB;AA4XD;;GAEG;AACH,aAAa;AACb,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,OAAyB,CAAC;AAEvF;;;GAGG;AACH,eAAe,OAAO,CAAC;AAEvB,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC"}
package/dist/readers.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { LibSANE, SANEParameters, SANEStatus } from "./index.js";
2
2
  declare abstract class EventBaseClass<T extends Record<keyof T, any[]>> {
3
+ private _queue;
3
4
  private _firing;
4
5
  private _listeners;
5
6
  /**
@@ -9,7 +10,7 @@ declare abstract class EventBaseClass<T extends Record<keyof T, any[]>> {
9
10
  /**
10
11
  * Fire event.
11
12
  */
12
- protected fire<K extends keyof T>(type: K, ...args: T[K]): Promise<null> | null;
13
+ protected fire<K extends keyof T>(type: K, ...args: T[K]): void;
13
14
  }
14
15
  /**
15
16
  * Events types for {@link ScanDataReader}.
@@ -99,7 +100,7 @@ export interface ScanImageReaderEventMap extends ScanDataReaderEventMap {
99
100
  export declare class ScanImageReader<T extends ScanImageReaderEventMap = ScanImageReaderEventMap> extends ScanDataReader<T> {
100
101
  private _line;
101
102
  private _allData;
102
- private _remainder;
103
+ private _tmpData;
103
104
  constructor(lib: LibSANE);
104
105
  private _onStart;
105
106
  private _onData;
@@ -1 +1 @@
1
- {"version":3,"file":"readers.d.ts","sourceRoot":"","sources":["../src/readers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAa,cAAc,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE5E,uBAAe,cAAc,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;IAE1D,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAEX;IAEP;;OAEG;IACH,EAAE,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI;IAOhE;;OAEG;IACH,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;CAclF;AAED;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC;IACjE;;OAEG;IACH,KAAK,EAAE,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IACpC;;OAEG;IACH,IAAI,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC,CAAC;IACxD;;OAEG;IACH,IAAI,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;CACxD;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,cAAc,CAAC,CAAC,SAAS,sBAAsB,GAAG,sBAAsB,CAAE,SAAQ,cAAc,CAAC,CAAC,CAAC;IAC5G,OAAO,CAAC,IAAI,CAAU;IACtB,OAAO,CAAC,KAAK,CAAkB;IAC/B,OAAO,CAAC,OAAO,CAA0B;gBAE7B,GAAG,EAAE,OAAO;YAKV,YAAY;IAmD1B;;OAEG;IACG,KAAK;;;;;;;;;IA2CX;;OAEG;IACH,MAAM;CAKT;AAED;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,sBAAsB;IACnE;;OAEG;IACH,IAAI,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,IAAI,EAAE,iBAAiB,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACvF;;OAEG;IACH,KAAK,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,IAAI,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC,CAAC;CAC7E;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,eAAe,CAAC,CAAC,SAAS,uBAAuB,GAAG,uBAAuB,CAAE,SAAQ,cAAc,CAAC,CAAC,CAAC;IAE/G,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,QAAQ,CAA2B;IAC3C,OAAO,CAAC,UAAU,CAA2B;gBAEjC,GAAG,EAAE,OAAO;IAOxB,OAAO,CAAC,QAAQ;IA2BhB,OAAO,CAAC,OAAO;IAqEf,OAAO,CAAC,OAAO;CAMlB"}
1
+ {"version":3,"file":"readers.d.ts","sourceRoot":"","sources":["../src/readers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAa,cAAc,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE5E,uBAAe,cAAc,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;IAE1D,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAEX;IAEP;;OAEG;IACH,EAAE,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI;IAOhE;;OAEG;IACH,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;CAe3D;AAED;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC;IACjE;;OAEG;IACH,KAAK,EAAE,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IACpC;;OAEG;IACH,IAAI,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC,CAAC;IACxD;;OAEG;IACH,IAAI,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;CACxD;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,cAAc,CAAC,CAAC,SAAS,sBAAsB,GAAG,sBAAsB,CAAE,SAAQ,cAAc,CAAC,CAAC,CAAC;IAC5G,OAAO,CAAC,IAAI,CAAU;IACtB,OAAO,CAAC,KAAK,CAAkB;IAC/B,OAAO,CAAC,OAAO,CAA0B;gBAE7B,GAAG,EAAE,OAAO;YAKV,YAAY;IAmD1B;;OAEG;IACG,KAAK;;;;;;;;;IA2CX;;OAEG;IACH,MAAM;CAKT;AAED;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,sBAAsB;IACnE;;OAEG;IACH,IAAI,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,IAAI,EAAE,iBAAiB,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACvF;;OAEG;IACH,KAAK,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,IAAI,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC,CAAC;CAC7E;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,eAAe,CAAC,CAAC,SAAS,uBAAuB,GAAG,uBAAuB,CAAE,SAAQ,cAAc,CAAC,CAAC,CAAC;IAE/G,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,QAAQ,CAA2B;IAC3C,OAAO,CAAC,QAAQ,CAA2B;gBAE/B,GAAG,EAAE,OAAO;IAOxB,OAAO,CAAC,QAAQ;IA4BhB,OAAO,CAAC,OAAO;IA6Ef,OAAO,CAAC,OAAO;CAMlB"}
package/dist/readers.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import { SANEFrame, SANEStatus } from "./index.js";
2
2
  class EventBaseClass {
3
+ _queue = [];
3
4
  _firing = false;
4
5
  _listeners = {};
5
6
  /**
@@ -15,19 +16,20 @@ class EventBaseClass {
15
16
  * Fire event.
16
17
  */
17
18
  fire(type, ...args) {
18
- // if already firing an event, queue for later
19
+ this._queue.push(() => this._listeners[type]?.forEach(fn => fn.apply(this, args)));
19
20
  if (this._firing) {
20
- return Promise.resolve().then(() => this.fire(type, ...args));
21
+ return;
21
22
  }
22
- // fire now
23
23
  this._firing = true;
24
24
  try {
25
- this._listeners[type]?.forEach(fn => fn.apply(this, args));
25
+ while (this._queue.length) {
26
+ this._queue.shift()();
27
+ }
26
28
  }
27
29
  finally {
30
+ this._queue = [];
28
31
  this._firing = false;
29
32
  }
30
- return null;
31
33
  }
32
34
  }
33
35
  /**
@@ -171,7 +173,7 @@ export class ScanDataReader extends EventBaseClass {
171
173
  export class ScanImageReader extends ScanDataReader {
172
174
  _line = 0;
173
175
  _allData = new Uint8ClampedArray();
174
- _remainder = new Uint8ClampedArray();
176
+ _tmpData = new Uint8ClampedArray();
175
177
  constructor(lib) {
176
178
  super(lib);
177
179
  this.on('start', this._onStart);
@@ -203,19 +205,24 @@ export class ScanImageReader extends ScanDataReader {
203
205
  // we support GRAY and RGB single-pass, 1 and 8-bit, known height
204
206
  // that should cover most modern scanners
205
207
  this._allData = new Uint8ClampedArray(parameters.lines * parameters.pixels_per_line * 4);
208
+ this._tmpData = new Uint8ClampedArray(new ArrayBuffer(0, { maxByteLength: this._allData.byteLength }), 0, 0);
206
209
  }
207
210
  _onData(parameters, data) {
208
- const dataIn = new Uint8ClampedArray(this._remainder.length + data.length);
209
- dataIn.set(this._remainder, 0);
210
- dataIn.set(data, this._remainder.length);
211
+ const sz = this._tmpData.byteLength + data.byteLength;
212
+ if (sz > this._tmpData.buffer.byteLength) {
213
+ this._tmpData.buffer.resize(sz);
214
+ }
215
+ // append new data after previous data
216
+ const dataIn = new Uint8ClampedArray(this._tmpData.buffer, 0, sz);
217
+ dataIn.set(data, this._tmpData.length);
211
218
  // line count, number of full available lines
212
219
  const lc = Math.floor(dataIn.length / parameters.bytes_per_line);
213
220
  if (!lc) {
214
221
  // not enough data for a full line
215
- this._remainder = dataIn;
222
+ this._tmpData = dataIn;
216
223
  return;
217
224
  }
218
- const dataOut = new Uint8ClampedArray(lc * parameters.pixels_per_line * 4); // RGBA (8-bit)
225
+ const dataOut = this._allData.subarray(this._line * parameters.pixels_per_line * 4); // RGBA (8-bit)
219
226
  let ik = 0; // consumed data on dataIn
220
227
  if (parameters.depth === 8) {
221
228
  if (parameters.format === SANEFrame.GRAY) {
@@ -268,9 +275,10 @@ export class ScanImageReader extends ScanDataReader {
268
275
  }
269
276
  }
270
277
  }
271
- this._remainder = dataIn.subarray(ik);
278
+ // shift remaining data
279
+ dataIn.copyWithin(0, ik);
280
+ this._tmpData = dataIn.subarray(0, dataIn.length - ik);
272
281
  this.fire('line', parameters, dataOut, this._line);
273
- this._allData.set(dataOut, this._line * parameters.pixels_per_line * 4);
274
282
  this._line += lc;
275
283
  }
276
284
  _onStop(parameters, error) {
@@ -1 +1 @@
1
- {"version":3,"file":"readers.js","sourceRoot":"","sources":["../src/readers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"readers.js","sourceRoot":"","sources":["../src/readers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,SAAS,EAAkB,UAAU,EAAE,MAAM,YAAY,CAAC;AAE5E,MAAe,cAAc;IAEjB,MAAM,GAAmB,EAAE,CAAC;IAC5B,OAAO,GAAG,KAAK,CAAC;IAChB,UAAU,GAEd,EAAE,CAAC;IAEP;;OAEG;IACH,EAAE,CAAoB,IAAO,EAAE,QAAiC;QAC5D,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QAC/B,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACO,IAAI,CAAoB,IAAO,EAAE,GAAG,IAAU;QACpD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QACnF,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,OAAO;QACX,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC;YACD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACxB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAG,EAAE,CAAC;YAC3B,CAAC;QACL,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;YACjB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACzB,CAAC;IACL,CAAC;CACJ;AAoBD;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAO,cAA0E,SAAQ,cAAiB;IACpG,IAAI,CAAU;IACd,KAAK,GAAY,KAAK,CAAC;IACvB,OAAO,GAAoB,KAAK,CAAC;IAEzC,YAAY,GAAY;QACpB,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;IACpB,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,UAAiC;QACxD,OAAO,IAAI,EAAE,CAAC;YACV,IAAI,CAAC;gBACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACf,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,gBAAgB;gBACnD,CAAC;gBAED,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBAErD,IAAI,MAAM,KAAK,UAAU,CAAC,IAAI,EAAE,CAAC;oBAC7B,IAAI,UAAU,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;wBAC5B,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;oBACxC,CAAC;gBAEL,CAAC;qBAAM,IACH,MAAM,KAAK,UAAU,CAAC,SAAS;oBAC/B,6DAA6D;oBAC7D,mEAAmE;oBACnE,gEAAgE;oBAChE,oEAAoE;oBACpE,oEAAoE;oBACpE,qDAAqD;oBACrD,qBAAqB;oBACrB,kEAAkE;oBAClE,CAAC,MAAM,KAAK,UAAU,CAAC,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,EAC7C,CAAC;oBACC,IAAI,IAAI,CAAC,OAAO,YAAY,KAAK,EAAE,CAAC;wBAChC,MAAM,IAAI,CAAC,OAAO,CAAC;oBACvB,CAAC;oBACD,OAAO;gBAEX,CAAC;qBAAM,IAAI,MAAM,KAAK,UAAU,CAAC,GAAG,EAAE,CAAC;oBACnC,iBAAiB;oBACjB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBAExB,CAAC;qBAAM,CAAC;oBACJ,kDAAkD;oBAClD,IAAI,CAAC,OAAO,GAAG,IAAI,KAAK,CAAC,UAAU,UAAU,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;gBAEjF,CAAC;YACL,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,MAAM,EAAE,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;gBAC/E,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACf,oDAAoD;oBACpD,MAAM,EAAE,CAAC;gBACb,CAAC;gBACD,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;YACtB,CAAC;QACL,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACP,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,yBAAyB;YACzB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACtD,CAAC;aAAM,CAAC;YACJ,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChD,IAAI,MAAM,KAAK,UAAU,CAAC,IAAI,EAAE,CAAC;gBAC7B,OAAO;oBACH,MAAM;oBACN,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,OAAO,CAAC,MAAM,CAAO,IAAI,KAAK,CAAC,UAAU,UAAU,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;iBAChG,CAAC;YACN,CAAC;YACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QACtB,CAAC;QAED,qEAAqE;QACrE,sEAAsE;QACtE,wBAAwB;QAExB,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACrE,IAAI,MAAM,KAAK,UAAU,CAAC,IAAI,EAAE,CAAC;YAC7B,IAAI,CAAC,OAAO,GAAG,IAAI,KAAK,CAAC,UAAU,UAAU,CAAC,MAAM,CAAC,gCAAgC,CAAC,CAAC;YACvF,OAAO;gBACH,MAAM,EAAE,UAAU;gBAClB,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC;aACzC,CAAC;QACN,CAAC;QAED,IAAI,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,IAAI,CAAC,OAAO,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAChG,CAAC;QAED,OAAO;YACH,MAAM,EAAE,UAAU;YAClB,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;gBAChD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,OAAO,YAAY,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACvF,CAAC,CAAC;SACL,CAAC;IACN,CAAC;IAED;;OAEG;IACH,MAAM;QACF,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAC9B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACxB,CAAC;IACL,CAAC;CACJ;AAgBD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,OAAO,eAA6E,SAAQ,cAAiB;IAEvG,KAAK,GAAW,CAAC,CAAC;IAClB,QAAQ,GAAG,IAAI,iBAAiB,EAAE,CAAC;IACnC,QAAQ,GAAG,IAAI,iBAAiB,EAAE,CAAC;IAE3C,YAAY,GAAY;QACpB,KAAK,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9B,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAEO,QAAQ,CAAC,UAA0B;QACvC,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS,CAAC,IAAI,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS,CAAC,GAAG,EAAE,CAAC;YAC9E,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACvE,CAAC;QACD,IAAI,UAAU,CAAC,KAAK,KAAK,CAAC,IAAI,UAAU,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;YACnD,MAAM,IAAI,KAAK,CAAC,sBAAsB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC1E,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,6BAA6B,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACjF,CAAC;QACD,IAAI,UAAU,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,mCAAmC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACvF,CAAC;QACD,IAAI,UAAU,CAAC,cAAc,IAAI,CAAC,IAAI,UAAU,CAAC,eAAe,IAAI,CAAC,IAAI,UAAU,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC;YAC7F,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC9E,CAAC;QACD,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,KAAK,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9D,MAAM,IAAI,GAAG,UAAU,CAAC,eAAe,GAAG,UAAU,CAAC,KAAK,GAAG,QAAQ,CAAC;QACtE,IAAI,UAAU,CAAC,cAAc,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC9E,CAAC;QACD,2BAA2B;QAC3B,iEAAiE;QACjE,yCAAyC;QACzC,IAAI,CAAC,QAAQ,GAAG,IAAI,iBAAiB,CAAC,UAAU,CAAC,KAAK,GAAG,UAAU,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC;QACzF,IAAI,CAAC,QAAQ,GAAG,IAAI,iBAAiB,CAAC,IAAI,WAAW,CAAC,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACjH,CAAC;IAEO,OAAO,CAAC,UAA0B,EAAE,IAAgB;QACxD,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACtD,IAAI,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACvC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACpC,CAAC;QAED,sCAAsC;QACtC,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAClE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAEvC,6CAA6C;QAC7C,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;QACjE,IAAI,CAAC,EAAE,EAAE,CAAC;YACN,kCAAkC;YAClC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC;YACvB,OAAO;QACX,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe;QACpG,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,0BAA0B;QACtC,IAAI,UAAU,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;YACzB,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;gBACvC,oBAAoB;gBACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC,YAAY;oBAC/E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,UAAU,CAAC,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,aAAa;wBACrF,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;wBACzD,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,QAAQ;oBACnC,CAAC;gBACL,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,qBAAqB;gBACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC,YAAY;oBAC/E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,UAAU,CAAC,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,aAAa;wBACxF,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBAC1C,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,QAAQ;oBACnC,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;aAAM,CAAC,CAAC,wBAAwB;YAC7B,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;gBACvC,oBAAoB;gBACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC,YAAY;oBAC/E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,UAAU,CAAC,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,eAAe;wBAC1E,KAAK,IAAI,IAAI,GAAG,IAAI,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,eAAe,EAAE,IAAI,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,aAAa;4BACxG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;4BAC9E,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,QAAQ;wBACnC,CAAC;oBACL,CAAC;gBACL,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,qBAAqB;gBACrB,iEAAiE;gBACjE,kFAAkF;gBAClF,oFAAoF;gBACpF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC,YAAY;oBAC/E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,UAAU,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,eAAe;wBAC7E,KAAK,IAAI,IAAI,GAAG,IAAI,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,eAAe,EAAE,IAAI,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,aAAa;4BACxG,gDAAgD;4BAChD,yCAAyC;4BACzC,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;4BAC5C,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;4BACpD,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;4BACpD,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,QAAQ;wBACnC,CAAC;oBACL,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QAED,uBAAuB;QACvB,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;QAEvD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;IACrB,CAAC;IAEO,OAAO,CAAC,UAA0B,EAAE,KAAmB;QAC3D,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClD,CAAC;IACL,CAAC;CAEJ"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sane-wasm",
3
- "version": "0.6.0",
3
+ "version": "0.6.2",
4
4
  "description": "A project to bring the SANE API to the web.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -36,7 +36,7 @@
36
36
  },
37
37
  "homepage": "https://github.com/goncalomb/sane-wasm#readme",
38
38
  "peerDependencies": {
39
- "usb": "^2.10.0"
39
+ "usb": ">=2.10.0 <3.0.0 || >=3.3.0"
40
40
  },
41
41
  "peerDependenciesMeta": {
42
42
  "usb": {
@@ -45,11 +45,10 @@
45
45
  },
46
46
  "devDependencies": {
47
47
  "@types/emscripten": "^1.41.6",
48
- "@types/node": "^26.6.4",
49
- "jest-extended": "^7.0.0",
48
+ "@types/node": "^26.6.6",
50
49
  "typedoc": "^0.28.20",
51
50
  "typescript": "^6.0.3",
52
- "usb": "^2.10.0",
53
- "vitest": "^5.0.3"
51
+ "usb": "^3.3.0",
52
+ "vitest": "^5.1.0"
54
53
  }
55
54
  }