node-hp-scan-to 1.9.2 → 1.9.3
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/dist/HPApi.d.ts +22 -21
- package/dist/HPApi.js +101 -119
- package/dist/HPApi.js.map +1 -1
- package/dist/JpegUtil.d.ts +1 -3
- package/dist/JpegUtil.js +2 -5
- package/dist/JpegUtil.js.map +1 -1
- package/dist/PathHelper.js +21 -60
- package/dist/PathHelper.js.map +1 -1
- package/dist/commands/adfAutoscanCmd.d.ts +1 -1
- package/dist/commands/adfAutoscanCmd.js +16 -22
- package/dist/commands/adfAutoscanCmd.js.map +1 -1
- package/dist/commands/clearRegistrationsCmd.js +6 -12
- package/dist/commands/clearRegistrationsCmd.js.map +1 -1
- package/dist/commands/listenCmd.d.ts +4 -4
- package/dist/commands/listenCmd.js +62 -69
- package/dist/commands/listenCmd.js.map +1 -1
- package/dist/commands/singleScanCmd.d.ts +1 -1
- package/dist/commands/singleScanCmd.js +10 -16
- package/dist/commands/singleScanCmd.js.map +1 -1
- package/dist/commitInfo.json +1 -1
- package/dist/delay.js +1 -4
- package/dist/delay.js.map +1 -1
- package/dist/healthcheck.js +4 -9
- package/dist/healthcheck.js.map +1 -1
- package/dist/hpModels/AdfState.js +2 -5
- package/dist/hpModels/AdfState.js.map +1 -1
- package/dist/hpModels/Destination.js +9 -7
- package/dist/hpModels/Destination.js.map +1 -1
- package/dist/hpModels/EnumUtils.js +1 -5
- package/dist/hpModels/EnumUtils.js.map +1 -1
- package/dist/hpModels/EsclManifest.js +4 -5
- package/dist/hpModels/EsclManifest.js.map +1 -1
- package/dist/hpModels/EsclScanCaps.d.ts +1 -1
- package/dist/hpModels/EsclScanCaps.js +5 -8
- package/dist/hpModels/EsclScanCaps.js.map +1 -1
- package/dist/hpModels/EsclScanImageInfo.js +4 -5
- package/dist/hpModels/EsclScanImageInfo.js.map +1 -1
- package/dist/hpModels/EsclScanJobSettings.d.ts +3 -3
- package/dist/hpModels/EsclScanJobSettings.js +16 -15
- package/dist/hpModels/EsclScanJobSettings.js.map +1 -1
- package/dist/hpModels/EsclScanStatus.d.ts +4 -4
- package/dist/hpModels/EsclScanStatus.js +25 -30
- package/dist/hpModels/EsclScanStatus.js.map +1 -1
- package/dist/hpModels/Event.d.ts +2 -2
- package/dist/hpModels/Event.js +2 -3
- package/dist/hpModels/Event.js.map +1 -1
- package/dist/hpModels/EventTable.d.ts +1 -1
- package/dist/hpModels/EventTable.js +7 -11
- package/dist/hpModels/EventTable.js.map +1 -1
- package/dist/hpModels/IScanJobSettings.js +1 -2
- package/dist/hpModels/IScanStatus.d.ts +3 -3
- package/dist/hpModels/IScanStatus.js +3 -2
- package/dist/hpModels/IScanStatus.js.map +1 -1
- package/dist/hpModels/Job.js +11 -13
- package/dist/hpModels/Job.js.map +1 -1
- package/dist/hpModels/ParseXmlString.js +3 -7
- package/dist/hpModels/ParseXmlString.js.map +1 -1
- package/dist/hpModels/ScanCaps.d.ts +1 -1
- package/dist/hpModels/ScanCaps.js +25 -28
- package/dist/hpModels/ScanCaps.js.map +1 -1
- package/dist/hpModels/ScanJobManifest.js +4 -5
- package/dist/hpModels/ScanJobManifest.js.map +1 -1
- package/dist/hpModels/ScanJobSettings.d.ts +3 -3
- package/dist/hpModels/ScanJobSettings.js +17 -16
- package/dist/hpModels/ScanJobSettings.js.map +1 -1
- package/dist/hpModels/ScanPlexMode.js +2 -5
- package/dist/hpModels/ScanPlexMode.js.map +1 -1
- package/dist/hpModels/ScanStatus.d.ts +4 -4
- package/dist/hpModels/ScanStatus.js +14 -15
- package/dist/hpModels/ScanStatus.js.map +1 -1
- package/dist/hpModels/ScannerState.js +2 -5
- package/dist/hpModels/ScannerState.js.map +1 -1
- package/dist/hpModels/WalkupScanDestination.d.ts +2 -2
- package/dist/hpModels/WalkupScanDestination.js +8 -8
- package/dist/hpModels/WalkupScanDestination.js.map +1 -1
- package/dist/hpModels/WalkupScanDestinations.d.ts +1 -1
- package/dist/hpModels/WalkupScanDestinations.js +6 -10
- package/dist/hpModels/WalkupScanDestinations.js.map +1 -1
- package/dist/hpModels/WalkupScanManifest.js +4 -5
- package/dist/hpModels/WalkupScanManifest.js.map +1 -1
- package/dist/hpModels/WalkupScanToCompCaps.js +4 -5
- package/dist/hpModels/WalkupScanToCompCaps.js.map +1 -1
- package/dist/hpModels/WalkupScanToCompDestination.d.ts +2 -2
- package/dist/hpModels/WalkupScanToCompDestination.js +8 -8
- package/dist/hpModels/WalkupScanToCompDestination.js.map +1 -1
- package/dist/hpModels/WalkupScanToCompDestinations.d.ts +1 -1
- package/dist/hpModels/WalkupScanToCompDestinations.js +6 -10
- package/dist/hpModels/WalkupScanToCompDestinations.js.map +1 -1
- package/dist/hpModels/WalkupScanToCompEvent.js +8 -10
- package/dist/hpModels/WalkupScanToCompEvent.js.map +1 -1
- package/dist/hpModels/WalkupScanToCompManifest.js +4 -5
- package/dist/hpModels/WalkupScanToCompManifest.js.map +1 -1
- package/dist/index.js +10 -46
- package/dist/index.js.map +1 -1
- package/dist/listening.d.ts +3 -3
- package/dist/listening.js +21 -31
- package/dist/listening.js.map +1 -1
- package/dist/nextcloud/NextcloudConfig.d.ts +2 -2
- package/dist/nextcloud/NextcloudConfig.js +1 -2
- package/dist/nextcloud/nextcloud.d.ts +2 -2
- package/dist/nextcloud/nextcloud.js +9 -16
- package/dist/nextcloud/nextcloud.js.map +1 -1
- package/dist/paperless/PaperlessConfig.d.ts +2 -2
- package/dist/paperless/PaperlessConfig.js +1 -2
- package/dist/paperless/paperless.d.ts +3 -3
- package/dist/paperless/paperless.js +20 -29
- package/dist/paperless/paperless.js.map +1 -1
- package/dist/pdfProcessing.d.ts +1 -1
- package/dist/pdfProcessing.js +14 -22
- package/dist/pdfProcessing.js.map +1 -1
- package/dist/postProcessing.d.ts +2 -2
- package/dist/postProcessing.js +15 -21
- package/dist/postProcessing.js.map +1 -1
- package/dist/program.d.ts +6 -6
- package/dist/program.js +76 -80
- package/dist/program.js.map +1 -1
- package/dist/readDeviceCapabilities.d.ts +1 -1
- package/dist/readDeviceCapabilities.js +32 -33
- package/dist/readDeviceCapabilities.js.map +1 -1
- package/dist/scanJobHandlers.d.ts +7 -7
- package/dist/scanJobHandlers.js +65 -71
- package/dist/scanJobHandlers.js.map +1 -1
- package/dist/scanProcessing.d.ts +10 -10
- package/dist/scanProcessing.js +40 -49
- package/dist/scanProcessing.js.map +1 -1
- package/dist/type/DeviceCapabilities.d.ts +4 -4
- package/dist/type/DeviceCapabilities.js +2 -2
- package/dist/type/DeviceCapabilities.js.map +1 -1
- package/dist/type/DiscoveryTree.js +4 -5
- package/dist/type/DiscoveryTree.js.map +1 -1
- package/dist/type/DuplexAssemblyMode.js +2 -5
- package/dist/type/DuplexAssemblyMode.js.map +1 -1
- package/dist/type/FileConfig.d.ts +2 -2
- package/dist/type/FileConfig.js +42 -45
- package/dist/type/FileConfig.js.map +1 -1
- package/dist/type/InputSource.js +2 -5
- package/dist/type/InputSource.js.map +1 -1
- package/dist/type/KnownShortcut.js +2 -5
- package/dist/type/KnownShortcut.js.map +1 -1
- package/dist/type/ScanContent.js +1 -2
- package/dist/type/directoryConfig.d.ts +2 -2
- package/dist/type/directoryConfig.js +1 -2
- package/dist/type/duplexMode.js +2 -5
- package/dist/type/duplexMode.js.map +1 -1
- package/dist/type/helpGroupsHeadings.js +2 -5
- package/dist/type/helpGroupsHeadings.js.map +1 -1
- package/dist/type/pageCountingStrategy.js +2 -5
- package/dist/type/pageCountingStrategy.js.map +1 -1
- package/dist/type/scanConfigs.d.ts +6 -6
- package/dist/type/scanConfigs.js +1 -2
- package/dist/type/scanConfigs.js.map +1 -1
- package/dist/type/scanMode.js +2 -5
- package/dist/type/scanMode.js.map +1 -1
- package/dist/type/scanTargetDefinitions.d.ts +4 -4
- package/dist/type/scanTargetDefinitions.js +2 -2
- package/dist/type/scanTargetDefinitions.js.map +1 -1
- package/dist/type/targetDuplexMode.js +2 -5
- package/dist/type/targetDuplexMode.js.map +1 -1
- package/package.json +35 -41
package/dist/PathHelper.js
CHANGED
|
@@ -1,59 +1,21 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
-
};
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
const node_path_1 = __importDefault(require("node:path"));
|
|
40
|
-
const node_os_1 = __importDefault(require("node:os"));
|
|
41
|
-
const node_fs_1 = __importStar(require("node:fs"));
|
|
42
|
-
const dateformat_1 = __importDefault(require("dateformat"));
|
|
43
|
-
const nanoid_1 = require("nanoid");
|
|
44
|
-
const nanoid = (0, nanoid_1.customAlphabet)("23456789abcdefghijkmnpqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ", 6);
|
|
45
|
-
class PathHelper {
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
import os from "node:os";
|
|
3
|
+
import fs, { promises as Fs } from "node:fs";
|
|
4
|
+
import dateformat from "dateformat";
|
|
5
|
+
import { customAlphabet } from "nanoid";
|
|
6
|
+
const nanoid = customAlphabet("23456789abcdefghijkmnpqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ", 6);
|
|
7
|
+
export default class PathHelper {
|
|
46
8
|
static async getFileForPage(folder, scanCount, currentPageNumber, filePattern, extension, date) {
|
|
47
9
|
if (filePattern) {
|
|
48
|
-
return this.makeUnique(
|
|
10
|
+
return this.makeUnique(path.join(folder, `${dateformat(date, filePattern)}.${extension}`), date);
|
|
49
11
|
}
|
|
50
|
-
return this.makeUnique(
|
|
12
|
+
return this.makeUnique(path.join(folder, `scan${scanCount}_page${currentPageNumber}.${extension}`), date);
|
|
51
13
|
}
|
|
52
14
|
static async getNextScanNumber(folder, currentScanCount, filePattern) {
|
|
53
15
|
if (filePattern) {
|
|
54
16
|
return ++currentScanCount;
|
|
55
17
|
}
|
|
56
|
-
const files = await
|
|
18
|
+
const files = await Fs.readdir(folder);
|
|
57
19
|
for (let i = currentScanCount + 1; i < Number.MAX_SAFE_INTEGER; i++) {
|
|
58
20
|
const currentScanCountProbe = `scan${i}`;
|
|
59
21
|
if (!(files.some((x) => x.startsWith(currentScanCountProbe)) &&
|
|
@@ -68,22 +30,22 @@ class PathHelper {
|
|
|
68
30
|
if (await this.tryCreateFile(filePath)) {
|
|
69
31
|
return filePath;
|
|
70
32
|
}
|
|
71
|
-
const { dir, name, ext } =
|
|
72
|
-
const dateStamp = (
|
|
33
|
+
const { dir, name, ext } = path.parse(filePath);
|
|
34
|
+
const dateStamp = dateformat(date, "yyyymmdd-HHMMss");
|
|
73
35
|
let baseName;
|
|
74
36
|
if (name.includes(dateStamp)) {
|
|
75
37
|
baseName = name;
|
|
76
38
|
}
|
|
77
39
|
else {
|
|
78
40
|
baseName = `${name}_${dateStamp}`;
|
|
79
|
-
const pathWithDate =
|
|
41
|
+
const pathWithDate = path.join(dir, `${baseName}${ext}`);
|
|
80
42
|
if (await this.tryCreateFile(pathWithDate)) {
|
|
81
43
|
return pathWithDate;
|
|
82
44
|
}
|
|
83
45
|
}
|
|
84
46
|
// Retry nanoid a few times (paranoid safety) -- be bit para-nanoid ;-)
|
|
85
47
|
for (let i = 0; i < 3; i++) {
|
|
86
|
-
const finalPath =
|
|
48
|
+
const finalPath = path.join(dir, `${baseName}_${nanoid()}${ext}`);
|
|
87
49
|
if (await this.tryCreateFile(finalPath)) {
|
|
88
50
|
return finalPath;
|
|
89
51
|
}
|
|
@@ -93,36 +55,36 @@ class PathHelper {
|
|
|
93
55
|
}
|
|
94
56
|
static async tryCreateFile(filePath) {
|
|
95
57
|
try {
|
|
96
|
-
const fd = await
|
|
58
|
+
const fd = await fs.promises.open(filePath, "wx");
|
|
97
59
|
await fd.close();
|
|
98
60
|
return true;
|
|
99
61
|
}
|
|
100
62
|
catch (err) {
|
|
101
63
|
const e = err;
|
|
102
|
-
if (e
|
|
64
|
+
if (e?.code === "EEXIST")
|
|
103
65
|
return false;
|
|
104
66
|
throw err;
|
|
105
67
|
}
|
|
106
68
|
}
|
|
107
69
|
static async getFileForScan(folder, scanCount, filePattern, extension, date) {
|
|
108
70
|
if (filePattern) {
|
|
109
|
-
return await this.makeUnique(
|
|
71
|
+
return await this.makeUnique(path.join(folder, `${dateformat(date, filePattern)}.${extension}`), date);
|
|
110
72
|
}
|
|
111
|
-
return await this.makeUnique(
|
|
73
|
+
return await this.makeUnique(path.join(folder, `scan${scanCount}.${extension}`), date);
|
|
112
74
|
}
|
|
113
75
|
static async getOutputFolder(folder) {
|
|
114
76
|
if (typeof folder !== "string") {
|
|
115
|
-
return
|
|
77
|
+
return Fs.mkdtemp(path.join(os.tmpdir(), "scan-to-pc"));
|
|
116
78
|
}
|
|
117
79
|
if (folder.startsWith("~")) {
|
|
118
|
-
return folder.replace(/^~/,
|
|
80
|
+
return folder.replace(/^~/, os.homedir());
|
|
119
81
|
}
|
|
120
82
|
return folder;
|
|
121
83
|
}
|
|
122
84
|
static async checkIfFolderIsWritable(folder) {
|
|
123
85
|
// Check if the folder exists
|
|
124
86
|
try {
|
|
125
|
-
await
|
|
87
|
+
await fs.promises.access(folder, fs.constants.W_OK);
|
|
126
88
|
return folder; // The folder exists and is writable
|
|
127
89
|
}
|
|
128
90
|
catch {
|
|
@@ -152,5 +114,4 @@ class PathHelper {
|
|
|
152
114
|
}
|
|
153
115
|
}
|
|
154
116
|
}
|
|
155
|
-
exports.default = PathHelper;
|
|
156
117
|
//# sourceMappingURL=PathHelper.js.map
|
package/dist/PathHelper.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PathHelper.js","sourceRoot":"","sources":["../src/PathHelper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PathHelper.js","sourceRoot":"","sources":["../src/PathHelper.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { AdfAutoScanConfig } from "../type/scanConfigs";
|
|
1
|
+
import type { AdfAutoScanConfig } from "../type/scanConfigs.js";
|
|
2
2
|
export declare function adfAutoscanCmd(adfAutoScanConfig: AdfAutoScanConfig, deviceUpPollingInterval: number): Promise<void>;
|
|
@@ -1,22 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
exports.adfAutoscanCmd = adfAutoscanCmd;
|
|
7
|
-
const HPApi_1 = __importDefault(require("../HPApi"));
|
|
8
|
-
const readDeviceCapabilities_1 = require("../readDeviceCapabilities");
|
|
9
|
-
const scanProcessing_1 = require("../scanProcessing");
|
|
10
|
-
const delay_1 = require("../delay");
|
|
11
|
-
const PathHelper_1 = __importDefault(require("../PathHelper"));
|
|
1
|
+
import HPApi from "../HPApi.js";
|
|
2
|
+
import { readDeviceCapabilities } from "../readDeviceCapabilities.js";
|
|
3
|
+
import { scanFromAdf, waitAdfLoaded } from "../scanProcessing.js";
|
|
4
|
+
import { delay } from "../delay.js";
|
|
5
|
+
import PathHelper from "../PathHelper.js";
|
|
12
6
|
let iteration = 0;
|
|
13
|
-
async function adfAutoscanCmd(adfAutoScanConfig, deviceUpPollingInterval) {
|
|
7
|
+
export async function adfAutoscanCmd(adfAutoScanConfig, deviceUpPollingInterval) {
|
|
14
8
|
// first make sure the device is reachable
|
|
15
|
-
await
|
|
9
|
+
await HPApi.waitDeviceUp(deviceUpPollingInterval);
|
|
16
10
|
let deviceUp = true;
|
|
17
|
-
const folder = await
|
|
18
|
-
const tempFolder = await
|
|
19
|
-
const deviceCapabilities = await
|
|
11
|
+
const folder = await PathHelper.getTargetFolder(adfAutoScanConfig.directoryConfig.directory);
|
|
12
|
+
const tempFolder = await PathHelper.getTempFolder(adfAutoScanConfig.directoryConfig.tempDirectory);
|
|
13
|
+
const deviceCapabilities = await readDeviceCapabilities(adfAutoScanConfig.preferEscl);
|
|
20
14
|
if (!deviceCapabilities.hasAdfDetectPaperLoaded) {
|
|
21
15
|
console.log("WARNING: The automatic scan feature is likely unsupported on this device, as its advertised capabilities do not include this feature.");
|
|
22
16
|
}
|
|
@@ -28,16 +22,16 @@ async function adfAutoscanCmd(adfAutoScanConfig, deviceUpPollingInterval) {
|
|
|
28
22
|
let errorCount = 0;
|
|
29
23
|
while (keepActive) {
|
|
30
24
|
iteration++;
|
|
31
|
-
console.log(`Iteration ${iteration} (Errors so far
|
|
25
|
+
console.log(`Iteration ${iteration} (Errors so far: ${errorCount})`);
|
|
32
26
|
try {
|
|
33
|
-
await
|
|
27
|
+
await waitAdfLoaded(adfAutoScanConfig.pollingInterval, adfAutoScanConfig.startScanDelay, deviceCapabilities.getScanStatus);
|
|
34
28
|
scanCount++;
|
|
35
29
|
console.log(`Scan event captured, saving scan #${scanCount}`);
|
|
36
|
-
await
|
|
30
|
+
await scanFromAdf(scanCount, folder, tempFolder, adfAutoScanConfig, deviceCapabilities, new Date());
|
|
37
31
|
}
|
|
38
32
|
catch (e) {
|
|
39
33
|
console.log(e);
|
|
40
|
-
if (await
|
|
34
|
+
if (await HPApi.isAlive()) {
|
|
41
35
|
errorCount++;
|
|
42
36
|
}
|
|
43
37
|
else {
|
|
@@ -48,10 +42,10 @@ async function adfAutoscanCmd(adfAutoScanConfig, deviceUpPollingInterval) {
|
|
|
48
42
|
keepActive = false;
|
|
49
43
|
}
|
|
50
44
|
if (!deviceUp) {
|
|
51
|
-
await
|
|
45
|
+
await HPApi.waitDeviceUp(deviceUpPollingInterval);
|
|
52
46
|
}
|
|
53
47
|
else {
|
|
54
|
-
await
|
|
48
|
+
await delay(1000);
|
|
55
49
|
}
|
|
56
50
|
}
|
|
57
51
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adfAutoscanCmd.js","sourceRoot":"","sources":["../../src/commands/adfAutoscanCmd.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"adfAutoscanCmd.js","sourceRoot":"","sources":["../../src/commands/adfAutoscanCmd.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,aAAa,CAAC;AAChC,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,UAAU,MAAM,kBAAkB,CAAC;AAE1C,IAAI,SAAS,GAAG,CAAC,CAAC;AAClB,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,iBAAoC,EACpC,uBAA+B;IAE/B,0CAA0C;IAC1C,MAAM,KAAK,CAAC,YAAY,CAAC,uBAAuB,CAAC,CAAC;IAClD,IAAI,QAAQ,GAAG,IAAI,CAAC;IAEpB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,eAAe,CAC7C,iBAAiB,CAAC,eAAe,CAAC,SAAS,CAC5C,CAAC;IACF,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,aAAa,CAC/C,iBAAiB,CAAC,eAAe,CAAC,aAAa,CAChD,CAAC;IAEF,MAAM,kBAAkB,GAAG,MAAM,sBAAsB,CACrD,iBAAiB,CAAC,UAAU,CAC7B,CAAC;IAEF,IAAI,CAAC,kBAAkB,CAAC,uBAAuB,EAAE,CAAC;QAChD,OAAO,CAAC,GAAG,CACT,uIAAuI,CACxI,CAAC;IACJ,CAAC;IAED,IAAI,iBAAiB,CAAC,QAAQ,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;QACnE,OAAO,CAAC,GAAG,CACT,6IAA6I,CAC9I,CAAC;IACJ,CAAC;IAED,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,UAAU,GAAG,IAAI,CAAC;IACtB,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,OAAO,UAAU,EAAE,CAAC;QAClB,SAAS,EAAE,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,aAAa,SAAS,oBAAoB,UAAU,GAAG,CAAC,CAAC;QACrE,IAAI,CAAC;YACH,MAAM,aAAa,CACjB,iBAAiB,CAAC,eAAe,EACjC,iBAAiB,CAAC,cAAc,EAChC,kBAAkB,CAAC,aAAa,CACjC,CAAC;YAEF,SAAS,EAAE,CAAC;YAEZ,OAAO,CAAC,GAAG,CAAC,qCAAqC,SAAS,EAAE,CAAC,CAAC;YAE9D,MAAM,WAAW,CACf,SAAS,EACT,MAAM,EACN,UAAU,EACV,iBAAiB,EACjB,kBAAkB,EAClB,IAAI,IAAI,EAAE,CACX,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACf,IAAI,MAAM,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC1B,UAAU,EAAE,CAAC;YACf,CAAC;iBAAM,CAAC;gBACN,QAAQ,GAAG,KAAK,CAAC;YACnB,CAAC;QACH,CAAC;QAED,IAAI,UAAU,KAAK,EAAE,EAAE,CAAC;YACtB,UAAU,GAAG,KAAK,CAAC;QACrB,CAAC;QAED,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,KAAK,CAAC,YAAY,CAAC,uBAAuB,CAAC,CAAC;QACpD,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -1,15 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const HPApi_1 = __importDefault(require("../HPApi"));
|
|
8
|
-
async function clearRegistrationsCmd() {
|
|
9
|
-
const dests = await HPApi_1.default.getWalkupScanToCompDestinations();
|
|
10
|
-
for (let i = 0; i < dests.destinations.length; i++) {
|
|
11
|
-
console.log(`Removing: ${dests.destinations[i].name}`);
|
|
12
|
-
await HPApi_1.default.removeDestination(dests.destinations[i]);
|
|
1
|
+
import HPApi from "../HPApi.js";
|
|
2
|
+
export async function clearRegistrationsCmd() {
|
|
3
|
+
const dests = await HPApi.getWalkupScanToCompDestinations();
|
|
4
|
+
for (const item of dests.destinations) {
|
|
5
|
+
console.log(`Removing: ${item.name}`);
|
|
6
|
+
await HPApi.removeDestination(item);
|
|
13
7
|
}
|
|
14
8
|
}
|
|
15
9
|
//# sourceMappingURL=clearRegistrationsCmd.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clearRegistrationsCmd.js","sourceRoot":"","sources":["../../src/commands/clearRegistrationsCmd.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"clearRegistrationsCmd.js","sourceRoot":"","sources":["../../src/commands/clearRegistrationsCmd.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,aAAa,CAAC;AAEhC,MAAM,CAAC,KAAK,UAAU,qBAAqB;IACzC,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,+BAA+B,EAAE,CAAC;IAC5D,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACtC,MAAM,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;AACH,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { RegistrationConfig } from "../type/scanTargetDefinitions";
|
|
2
|
-
import { ScanContent } from "../type/ScanContent";
|
|
3
|
-
import { ScanConfig } from "../type/scanConfigs";
|
|
4
|
-
import { DuplexAssemblyMode } from "../type/DuplexAssemblyMode";
|
|
1
|
+
import type { RegistrationConfig } from "../type/scanTargetDefinitions.js";
|
|
2
|
+
import type { ScanContent } from "../type/ScanContent.js";
|
|
3
|
+
import type { ScanConfig } from "../type/scanConfigs.js";
|
|
4
|
+
import { DuplexAssemblyMode } from "../type/DuplexAssemblyMode.js";
|
|
5
5
|
export declare function listenCmd(registrationConfigs: RegistrationConfig[], scanConfig: ScanConfig, deviceUpPollingInterval: number): Promise<void>;
|
|
6
6
|
export declare function assembleDuplexScan(frontScan: ScanContent, backScan: ScanContent, mode: DuplexAssemblyMode): ScanContent;
|
|
@@ -1,48 +1,41 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
const PathHelper_1 = __importDefault(require("../PathHelper"));
|
|
14
|
-
const delay_1 = require("../delay");
|
|
15
|
-
const duplexMode_1 = require("../type/duplexMode");
|
|
16
|
-
const targetDuplexMode_1 = require("../type/targetDuplexMode");
|
|
17
|
-
const pageCountingStrategy_1 = require("../type/pageCountingStrategy");
|
|
18
|
-
const ScanPlexMode_1 = require("../hpModels/ScanPlexMode");
|
|
19
|
-
const DuplexAssemblyMode_1 = require("../type/DuplexAssemblyMode");
|
|
1
|
+
import HPApi from "../HPApi.js";
|
|
2
|
+
import { readDeviceCapabilities } from "../readDeviceCapabilities.js";
|
|
3
|
+
import { waitScanEvent, waitScanRequest } from "../listening.js";
|
|
4
|
+
import { isPdf, saveScanFromEvent, tryGetDestination, } from "../scanProcessing.js";
|
|
5
|
+
import { postProcessing } from "../postProcessing.js";
|
|
6
|
+
import PathHelper from "../PathHelper.js";
|
|
7
|
+
import { delay } from "../delay.js";
|
|
8
|
+
import { DuplexMode } from "../type/duplexMode.js";
|
|
9
|
+
import { TargetDuplexMode } from "../type/targetDuplexMode.js";
|
|
10
|
+
import { PageCountingStrategy } from "../type/pageCountingStrategy.js";
|
|
11
|
+
import { ScanPlexMode } from "../hpModels/ScanPlexMode.js";
|
|
12
|
+
import { DuplexAssemblyMode } from "../type/DuplexAssemblyMode.js";
|
|
20
13
|
let iteration = 0;
|
|
21
|
-
async function listenCmd(registrationConfigs, scanConfig, deviceUpPollingInterval) {
|
|
14
|
+
export async function listenCmd(registrationConfigs, scanConfig, deviceUpPollingInterval) {
|
|
22
15
|
// first make sure the device is reachable
|
|
23
|
-
await
|
|
16
|
+
await HPApi.waitDeviceUp(deviceUpPollingInterval);
|
|
24
17
|
let deviceUp = true;
|
|
25
|
-
const folder = await
|
|
26
|
-
const tempFolder = await
|
|
27
|
-
const deviceCapabilities = await
|
|
18
|
+
const folder = await PathHelper.getTargetFolder(scanConfig.directoryConfig.directory);
|
|
19
|
+
const tempFolder = await PathHelper.getTempFolder(scanConfig.directoryConfig.tempDirectory);
|
|
20
|
+
const deviceCapabilities = await readDeviceCapabilities(scanConfig.preferEscl);
|
|
28
21
|
let scanCount = 0;
|
|
29
22
|
let keepActive = true;
|
|
30
23
|
let errorCount = 0;
|
|
31
24
|
let lastScanTarget = undefined;
|
|
32
|
-
let lastDuplexMode =
|
|
25
|
+
let lastDuplexMode = DuplexMode.Simplex;
|
|
33
26
|
let frontOfDoubleSidedScanContext = null;
|
|
34
27
|
while (keepActive) {
|
|
35
28
|
iteration++;
|
|
36
|
-
console.log(`Iteration ${iteration} (Errors so far
|
|
29
|
+
console.log(`Iteration ${iteration} (Errors so far: ${errorCount})`);
|
|
37
30
|
try {
|
|
38
|
-
const selectedScanTarget = await
|
|
31
|
+
const selectedScanTarget = await waitScanEvent(deviceCapabilities, registrationConfigs);
|
|
39
32
|
let proceedToScan = true;
|
|
40
33
|
if (selectedScanTarget.event.compEventURI) {
|
|
41
|
-
proceedToScan = await
|
|
34
|
+
proceedToScan = await waitScanRequest(selectedScanTarget.event.compEventURI);
|
|
42
35
|
}
|
|
43
36
|
let destination = null;
|
|
44
37
|
if (proceedToScan) {
|
|
45
|
-
destination = await
|
|
38
|
+
destination = await tryGetDestination(selectedScanTarget.event);
|
|
46
39
|
}
|
|
47
40
|
if (!destination) {
|
|
48
41
|
console.log("No shortcut selected - Impossible to proceed with scan, skipping.");
|
|
@@ -55,12 +48,12 @@ async function listenCmd(registrationConfigs, scanConfig, deviceUpPollingInterva
|
|
|
55
48
|
lastDuplexMode = r.duplexMode;
|
|
56
49
|
}
|
|
57
50
|
catch (e) {
|
|
58
|
-
if (await
|
|
51
|
+
if (await HPApi.isAlive()) {
|
|
59
52
|
console.log(e);
|
|
60
53
|
errorCount++;
|
|
61
54
|
}
|
|
62
55
|
else {
|
|
63
|
-
if (
|
|
56
|
+
if (HPApi.isDebug()) {
|
|
64
57
|
console.log(e);
|
|
65
58
|
}
|
|
66
59
|
deviceUp = false;
|
|
@@ -70,10 +63,10 @@ async function listenCmd(registrationConfigs, scanConfig, deviceUpPollingInterva
|
|
|
70
63
|
keepActive = false;
|
|
71
64
|
}
|
|
72
65
|
if (!deviceUp) {
|
|
73
|
-
await
|
|
66
|
+
await HPApi.waitDeviceUp(deviceUpPollingInterval);
|
|
74
67
|
}
|
|
75
68
|
else {
|
|
76
|
-
await
|
|
69
|
+
await delay(1000);
|
|
77
70
|
}
|
|
78
71
|
}
|
|
79
72
|
}
|
|
@@ -83,19 +76,19 @@ async function processScanWithDestination(destination, selectedScanTarget, lastD
|
|
|
83
76
|
if (lastScanTarget != null &&
|
|
84
77
|
frontOfDoubleSidedScanContext != null &&
|
|
85
78
|
lastScanTarget.isDuplexSingleSide &&
|
|
86
|
-
lastDuplexMode ==
|
|
87
|
-
(duplexMode ==
|
|
79
|
+
lastDuplexMode == DuplexMode.FrontOfDoubleSided &&
|
|
80
|
+
(duplexMode == DuplexMode.Simplex || duplexMode == DuplexMode.Duplex)) {
|
|
88
81
|
await processFinishedPartialDuplexScan(lastScanTarget, selectedScanTarget, scanCount, frontOfDoubleSidedScanContext);
|
|
89
82
|
}
|
|
90
83
|
const scanParameters = await setupScanParameters(duplexMode, targetDuplexMode, destination, scanCount, folder, scanConfig, frontOfDoubleSidedScanContext);
|
|
91
84
|
const { pageCountingStrategy, scanToPdf, scanDate, scanCount: newScanCount, } = scanParameters;
|
|
92
85
|
scanCount = newScanCount;
|
|
93
|
-
const scanJobContent = await
|
|
94
|
-
frontOfDoubleSidedScanContext = await handleScanResult(duplexMode, frontOfDoubleSidedScanContext, scanConfig, folder, tempFolder, scanCount, scanJobContent, scanDate, scanToPdf, selectedScanTarget.duplexAssemblyMode ??
|
|
86
|
+
const scanJobContent = await saveScanFromEvent(selectedScanTarget, folder, tempFolder, scanCount, deviceCapabilities, scanConfig, targetDuplexMode == TargetDuplexMode.Duplex, scanToPdf, pageCountingStrategy);
|
|
87
|
+
frontOfDoubleSidedScanContext = await handleScanResult(duplexMode, frontOfDoubleSidedScanContext, scanConfig, folder, tempFolder, scanCount, scanJobContent, scanDate, scanToPdf, selectedScanTarget.duplexAssemblyMode ?? DuplexAssemblyMode.DOCUMENT_WISE);
|
|
95
88
|
return { scanCount, frontOfDoubleSidedScanContext, duplexMode };
|
|
96
89
|
}
|
|
97
90
|
async function handleScanResult(duplexMode, frontOfDoubleSidedScanContext, scanConfig, folder, tempFolder, scanCount, scanJobContent, scanDate, scanToPdf, duplexAssemblyMode) {
|
|
98
|
-
if (duplexMode ==
|
|
91
|
+
if (duplexMode == DuplexMode.FrontOfDoubleSided) {
|
|
99
92
|
frontOfDoubleSidedScanContext = {
|
|
100
93
|
scanConfig,
|
|
101
94
|
folder,
|
|
@@ -108,7 +101,7 @@ async function handleScanResult(duplexMode, frontOfDoubleSidedScanContext, scanC
|
|
|
108
101
|
}
|
|
109
102
|
else {
|
|
110
103
|
let finalScanJobContent;
|
|
111
|
-
if (duplexMode ==
|
|
104
|
+
if (duplexMode == DuplexMode.BackOfDoubleSided) {
|
|
112
105
|
console.log("Emulated duplex scan completed; front and back pages are being assembled");
|
|
113
106
|
const frontScans = frontOfDoubleSidedScanContext?.scanJobContent ?? {
|
|
114
107
|
elements: [],
|
|
@@ -118,53 +111,53 @@ async function handleScanResult(duplexMode, frontOfDoubleSidedScanContext, scanC
|
|
|
118
111
|
else {
|
|
119
112
|
finalScanJobContent = scanJobContent;
|
|
120
113
|
}
|
|
121
|
-
await
|
|
114
|
+
await postProcessing(scanConfig, folder, tempFolder, scanCount, finalScanJobContent, scanDate, scanToPdf);
|
|
122
115
|
}
|
|
123
116
|
return frontOfDoubleSidedScanContext;
|
|
124
117
|
}
|
|
125
118
|
function determineDuplexModes(destination, selectedScanTarget, previousDuplexMode, lastScanTarget) {
|
|
126
119
|
const isDuplex = destination.scanPlexMode != null &&
|
|
127
|
-
destination.scanPlexMode !=
|
|
120
|
+
destination.scanPlexMode != ScanPlexMode.Simplex;
|
|
128
121
|
let duplexMode;
|
|
129
122
|
let targetDuplexMode;
|
|
130
123
|
if (isDuplex) {
|
|
131
|
-
targetDuplexMode =
|
|
132
|
-
duplexMode =
|
|
124
|
+
targetDuplexMode = TargetDuplexMode.Duplex;
|
|
125
|
+
duplexMode = DuplexMode.Duplex;
|
|
133
126
|
}
|
|
134
127
|
else if (selectedScanTarget.isDuplexSingleSide) {
|
|
135
|
-
targetDuplexMode =
|
|
128
|
+
targetDuplexMode = TargetDuplexMode.EmulatedDuplex;
|
|
136
129
|
if (lastScanTarget != null &&
|
|
137
130
|
selectedScanTarget.resourceURI === lastScanTarget.resourceURI &&
|
|
138
|
-
previousDuplexMode !==
|
|
139
|
-
duplexMode =
|
|
131
|
+
previousDuplexMode !== DuplexMode.BackOfDoubleSided) {
|
|
132
|
+
duplexMode = DuplexMode.BackOfDoubleSided;
|
|
140
133
|
}
|
|
141
134
|
else {
|
|
142
|
-
duplexMode =
|
|
135
|
+
duplexMode = DuplexMode.FrontOfDoubleSided;
|
|
143
136
|
}
|
|
144
137
|
}
|
|
145
138
|
else {
|
|
146
|
-
targetDuplexMode =
|
|
147
|
-
duplexMode =
|
|
139
|
+
targetDuplexMode = TargetDuplexMode.Simplex;
|
|
140
|
+
duplexMode = DuplexMode.Simplex;
|
|
148
141
|
}
|
|
149
142
|
return { duplexMode, targetDuplexMode };
|
|
150
143
|
}
|
|
151
|
-
function assembleDuplexScan(frontScan, backScan, mode) {
|
|
144
|
+
export function assembleDuplexScan(frontScan, backScan, mode) {
|
|
152
145
|
let frontContent = frontScan.elements;
|
|
153
146
|
let backContent = backScan.elements;
|
|
154
147
|
// Apply inversions based on the selected mode
|
|
155
148
|
switch (mode) {
|
|
156
|
-
case
|
|
149
|
+
case DuplexAssemblyMode.PAGE_WISE:
|
|
157
150
|
// Fronts and backs are in natural order; no changes needed
|
|
158
151
|
break;
|
|
159
|
-
case
|
|
152
|
+
case DuplexAssemblyMode.DOCUMENT_WISE:
|
|
160
153
|
// Backs are reversed because the stack was flipped
|
|
161
154
|
backContent = [...backContent].reverse();
|
|
162
155
|
break;
|
|
163
|
-
case
|
|
156
|
+
case DuplexAssemblyMode.REVERSE_FRONT:
|
|
164
157
|
// Fronts are reversed (e.g., stack inserted backwards)
|
|
165
158
|
frontContent = [...frontContent].reverse();
|
|
166
159
|
break;
|
|
167
|
-
case
|
|
160
|
+
case DuplexAssemblyMode.REVERSE_BOTH:
|
|
168
161
|
// Both fronts and backs are reversed
|
|
169
162
|
frontContent = [...frontContent].reverse();
|
|
170
163
|
backContent = [...backContent].reverse();
|
|
@@ -188,41 +181,41 @@ async function setupScanParameters(duplexMode, targetDuplexMode, destination, sc
|
|
|
188
181
|
let scanToPdf;
|
|
189
182
|
let scanDate;
|
|
190
183
|
console.log(`Scan mode: ${targetDuplexMode}`);
|
|
191
|
-
if (duplexMode ==
|
|
192
|
-
pageCountingStrategy =
|
|
193
|
-
scanToPdf =
|
|
184
|
+
if (duplexMode == DuplexMode.Duplex) {
|
|
185
|
+
pageCountingStrategy = PageCountingStrategy.Normal;
|
|
186
|
+
scanToPdf = isPdf(destination);
|
|
194
187
|
scanDate = new Date();
|
|
195
|
-
scanCount = await
|
|
188
|
+
scanCount = await PathHelper.getNextScanNumber(folder, scanCount, scanConfig.directoryConfig.filePattern);
|
|
196
189
|
console.log(`Scan event captured, saving scan #${scanCount}`);
|
|
197
190
|
}
|
|
198
|
-
else if (targetDuplexMode ==
|
|
199
|
-
if (duplexMode ==
|
|
200
|
-
pageCountingStrategy =
|
|
201
|
-
scanToPdf =
|
|
191
|
+
else if (targetDuplexMode == TargetDuplexMode.EmulatedDuplex) {
|
|
192
|
+
if (duplexMode == DuplexMode.FrontOfDoubleSided) {
|
|
193
|
+
pageCountingStrategy = PageCountingStrategy.OddOnly;
|
|
194
|
+
scanToPdf = isPdf(destination);
|
|
202
195
|
scanDate = new Date();
|
|
203
|
-
scanCount = await
|
|
196
|
+
scanCount = await PathHelper.getNextScanNumber(folder, scanCount, scanConfig.directoryConfig.filePattern);
|
|
204
197
|
console.log(`Scan event captured, saving front sides of scan #${scanCount}`);
|
|
205
198
|
}
|
|
206
199
|
else {
|
|
207
|
-
pageCountingStrategy =
|
|
200
|
+
pageCountingStrategy = PageCountingStrategy.EvenOnly;
|
|
208
201
|
scanToPdf =
|
|
209
|
-
frontOfDoubleSidedScanContext?.scanToPdf ??
|
|
202
|
+
frontOfDoubleSidedScanContext?.scanToPdf ?? isPdf(destination);
|
|
210
203
|
scanDate = frontOfDoubleSidedScanContext?.scanDate ?? new Date();
|
|
211
204
|
scanCount = frontOfDoubleSidedScanContext?.scanCount ?? scanCount;
|
|
212
205
|
console.log(`Scan event captured, saving back sides of scan #${scanCount}`);
|
|
213
206
|
}
|
|
214
207
|
}
|
|
215
208
|
else {
|
|
216
|
-
pageCountingStrategy =
|
|
217
|
-
scanToPdf =
|
|
209
|
+
pageCountingStrategy = PageCountingStrategy.Normal;
|
|
210
|
+
scanToPdf = isPdf(destination);
|
|
218
211
|
scanDate = new Date();
|
|
219
|
-
scanCount = await
|
|
212
|
+
scanCount = await PathHelper.getNextScanNumber(folder, scanCount, scanConfig.directoryConfig.filePattern);
|
|
220
213
|
console.log(`Scan event captured, saving scan #${scanCount}`);
|
|
221
214
|
}
|
|
222
215
|
return { pageCountingStrategy, scanToPdf, scanDate, scanCount };
|
|
223
216
|
}
|
|
224
217
|
async function processFinishedPartialDuplexScan(lastScanTarget, selectedScanTarget, scanCount, frontOfDoubleSidedScanContext) {
|
|
225
218
|
console.log(`Scan target changed from ${lastScanTarget.label} to ${selectedScanTarget.label}, saving scan #${scanCount} before processing`);
|
|
226
|
-
await
|
|
219
|
+
await postProcessing(frontOfDoubleSidedScanContext.scanConfig, frontOfDoubleSidedScanContext.folder, frontOfDoubleSidedScanContext.tempFolder, frontOfDoubleSidedScanContext.scanCount, frontOfDoubleSidedScanContext.scanJobContent, frontOfDoubleSidedScanContext.scanDate, frontOfDoubleSidedScanContext.scanToPdf);
|
|
227
220
|
}
|
|
228
221
|
//# sourceMappingURL=listenCmd.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listenCmd.js","sourceRoot":"","sources":["../../src/commands/listenCmd.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"listenCmd.js","sourceRoot":"","sources":["../../src/commands/listenCmd.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { SingleScanConfig } from "../type/scanConfigs";
|
|
1
|
+
import type { SingleScanConfig } from "../type/scanConfigs.js";
|
|
2
2
|
export declare function singleScanCmd(singleScanConfig: SingleScanConfig, deviceUpPollingInterval: number): Promise<void>;
|