node-hp-scan-to 1.8.0 → 1.9.1
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 +272 -51
- package/dist/HPApi.d.ts +13 -3
- package/dist/HPApi.js +106 -28
- package/dist/HPApi.js.map +1 -1
- package/dist/PathHelper.d.ts +7 -4
- package/dist/PathHelper.js +108 -31
- package/dist/PathHelper.js.map +1 -1
- package/dist/commands/adfAutoscanCmd.js +2 -2
- package/dist/commands/adfAutoscanCmd.js.map +1 -1
- package/dist/commands/listenCmd.d.ts +3 -0
- package/dist/commands/listenCmd.js +75 -42
- package/dist/commands/listenCmd.js.map +1 -1
- package/dist/commands/singleScanCmd.js +1 -1
- package/dist/commands/singleScanCmd.js.map +1 -1
- package/dist/commitInfo.json +1 -1
- package/dist/healthcheck.d.ts +2 -1
- package/dist/healthcheck.js +1 -0
- package/dist/healthcheck.js.map +1 -1
- package/dist/hpModels/AdfState.d.ts +4 -0
- package/dist/hpModels/AdfState.js +9 -0
- package/dist/hpModels/AdfState.js.map +1 -0
- package/dist/hpModels/Destination.js +2 -36
- package/dist/hpModels/Destination.js.map +1 -1
- package/dist/hpModels/EnumUtils.d.ts +3 -0
- package/dist/hpModels/EnumUtils.js +13 -0
- package/dist/hpModels/EnumUtils.js.map +1 -0
- package/dist/hpModels/EsclManifest.d.ts +45 -0
- package/dist/hpModels/EsclManifest.js +43 -0
- package/dist/hpModels/EsclManifest.js.map +1 -0
- package/dist/hpModels/EsclScanCaps.d.ts +37 -0
- package/dist/hpModels/EsclScanCaps.js +83 -0
- package/dist/hpModels/EsclScanCaps.js.map +1 -0
- package/dist/hpModels/EsclScanImageInfo.d.ts +17 -0
- package/dist/hpModels/EsclScanImageInfo.js +26 -0
- package/dist/hpModels/EsclScanImageInfo.js.map +1 -0
- package/dist/hpModels/EsclScanJobSettings.d.ts +16 -0
- package/dist/hpModels/EsclScanJobSettings.js +95 -0
- package/dist/hpModels/EsclScanJobSettings.js.map +1 -0
- package/dist/hpModels/EsclScanStatus.d.ts +75 -0
- package/dist/hpModels/EsclScanStatus.js +98 -0
- package/dist/hpModels/EsclScanStatus.js.map +1 -0
- package/dist/hpModels/EventTable.js +2 -5
- package/dist/hpModels/EventTable.js.map +1 -1
- package/dist/hpModels/IScanJobSettings.d.ts +5 -0
- package/dist/hpModels/IScanJobSettings.js +3 -0
- package/dist/hpModels/IScanJobSettings.js.map +1 -0
- package/dist/hpModels/IScanStatus.d.ts +9 -0
- package/dist/hpModels/IScanStatus.js +3 -0
- package/dist/hpModels/IScanStatus.js.map +1 -0
- package/dist/hpModels/Job.d.ts +11 -2
- package/dist/hpModels/Job.js +18 -7
- package/dist/hpModels/Job.js.map +1 -1
- package/dist/hpModels/ParseXmlString.d.ts +1 -0
- package/dist/hpModels/ParseXmlString.js +17 -0
- package/dist/hpModels/ParseXmlString.js.map +1 -0
- package/dist/hpModels/ScanCaps.d.ts +1 -0
- package/dist/hpModels/ScanCaps.js +5 -5
- package/dist/hpModels/ScanCaps.js.map +1 -1
- package/dist/hpModels/ScanJobManifest.d.ts +1 -0
- package/dist/hpModels/ScanJobManifest.js +9 -5
- package/dist/hpModels/ScanJobManifest.js.map +1 -1
- package/dist/hpModels/ScanJobSettings.d.ts +7 -2
- package/dist/hpModels/ScanJobSettings.js +19 -3
- package/dist/hpModels/ScanJobSettings.js.map +1 -1
- package/dist/hpModels/ScanPlexMode.d.ts +4 -0
- package/dist/hpModels/ScanPlexMode.js +9 -0
- package/dist/hpModels/ScanPlexMode.js.map +1 -0
- package/dist/hpModels/ScanStatus.d.ts +6 -3
- package/dist/hpModels/ScanStatus.js +9 -10
- package/dist/hpModels/ScanStatus.js.map +1 -1
- package/dist/hpModels/ScannerState.d.ts +4 -0
- package/dist/hpModels/ScannerState.js +9 -0
- package/dist/hpModels/ScannerState.js.map +1 -0
- package/dist/hpModels/WalkupScanDestination.d.ts +2 -1
- package/dist/hpModels/WalkupScanDestination.js +5 -6
- package/dist/hpModels/WalkupScanDestination.js.map +1 -1
- package/dist/hpModels/WalkupScanDestinations.js +2 -5
- package/dist/hpModels/WalkupScanDestinations.js.map +1 -1
- package/dist/hpModels/WalkupScanManifest.js +2 -5
- package/dist/hpModels/WalkupScanManifest.js.map +1 -1
- package/dist/hpModels/WalkupScanToCompCaps.js +2 -5
- package/dist/hpModels/WalkupScanToCompCaps.js.map +1 -1
- package/dist/hpModels/WalkupScanToCompDestination.d.ts +2 -1
- package/dist/hpModels/WalkupScanToCompDestination.js +5 -6
- package/dist/hpModels/WalkupScanToCompDestination.js.map +1 -1
- package/dist/hpModels/WalkupScanToCompDestinations.js +2 -5
- package/dist/hpModels/WalkupScanToCompDestinations.js.map +1 -1
- package/dist/hpModels/WalkupScanToCompEvent.d.ts +7 -1
- package/dist/hpModels/WalkupScanToCompEvent.js +13 -6
- package/dist/hpModels/WalkupScanToCompEvent.js.map +1 -1
- package/dist/hpModels/WalkupScanToCompManifest.js +2 -5
- package/dist/hpModels/WalkupScanToCompManifest.js.map +1 -1
- package/dist/index.js +13 -300
- package/dist/index.js.map +1 -1
- package/dist/listening.js +8 -6
- package/dist/listening.js.map +1 -1
- package/dist/pdfProcessing.js +1 -1
- package/dist/pdfProcessing.js.map +1 -1
- package/dist/postProcessing.js +9 -3
- package/dist/postProcessing.js.map +1 -1
- package/dist/program.d.ts +10 -0
- package/dist/program.js +346 -0
- package/dist/program.js.map +1 -0
- package/dist/readDeviceCapabilities.d.ts +1 -1
- package/dist/readDeviceCapabilities.js +56 -4
- package/dist/readDeviceCapabilities.js.map +1 -1
- package/dist/scanJobHandlers.d.ts +4 -3
- package/dist/scanJobHandlers.js +139 -48
- package/dist/scanJobHandlers.js.map +1 -1
- package/dist/scanProcessing.d.ts +10 -5
- package/dist/scanProcessing.js +19 -16
- package/dist/scanProcessing.js.map +1 -1
- package/dist/type/DeviceCapabilities.d.ts +8 -0
- package/dist/type/DiscoveryTree.d.ts +2 -0
- package/dist/type/DiscoveryTree.js +12 -20
- package/dist/type/DiscoveryTree.js.map +1 -1
- package/dist/type/DuplexAssemblyMode.d.ts +33 -0
- package/dist/type/DuplexAssemblyMode.js +38 -0
- package/dist/type/DuplexAssemblyMode.js.map +1 -0
- package/dist/type/FileConfig.d.ts +47 -0
- package/dist/type/FileConfig.js +88 -0
- package/dist/type/FileConfig.js.map +1 -0
- package/dist/type/helpGroupsHeadings.d.ts +10 -0
- package/dist/type/helpGroupsHeadings.js +15 -0
- package/dist/type/helpGroupsHeadings.js.map +1 -0
- package/dist/type/scanConfigs.d.ts +3 -0
- package/dist/type/scanMode.d.ts +4 -0
- package/dist/type/scanMode.js +9 -0
- package/dist/type/scanMode.js.map +1 -0
- package/dist/type/scanTargetDefinitions.d.ts +2 -0
- package/package.json +35 -28
package/dist/scanJobHandlers.js
CHANGED
|
@@ -7,35 +7,39 @@ exports.executeScanJob = executeScanJob;
|
|
|
7
7
|
exports.executeScanJobs = executeScanJobs;
|
|
8
8
|
const HPApi_1 = __importDefault(require("./HPApi"));
|
|
9
9
|
const listening_1 = require("./listening");
|
|
10
|
+
const Job_1 = require("./hpModels/Job");
|
|
10
11
|
const delay_1 = require("./delay");
|
|
11
12
|
const PathHelper_1 = __importDefault(require("./PathHelper"));
|
|
12
13
|
const InputSource_1 = require("./type/InputSource");
|
|
13
14
|
const promises_1 = __importDefault(require("fs/promises"));
|
|
14
15
|
const JpegUtil_1 = __importDefault(require("./JpegUtil"));
|
|
15
16
|
const pageCountingStrategy_1 = require("./type/pageCountingStrategy");
|
|
17
|
+
const WalkupScanToCompEvent_1 = require("./hpModels/WalkupScanToCompEvent");
|
|
18
|
+
const EsclScanStatus_1 = require("./hpModels/EsclScanStatus");
|
|
16
19
|
async function waitDeviceUntilItIsReadyToUploadOrCompleted(jobUrl) {
|
|
17
20
|
let job = null;
|
|
18
21
|
let isReadyToUpload = false;
|
|
19
22
|
do {
|
|
20
23
|
job = await HPApi_1.default.getJob(jobUrl);
|
|
21
|
-
|
|
24
|
+
const jobStateStr = job.jobState.toString();
|
|
25
|
+
if (job.jobState === Job_1.JobState.Canceled) {
|
|
22
26
|
return job;
|
|
23
27
|
}
|
|
24
|
-
else if (job.pageState ===
|
|
25
|
-
job.jobState ===
|
|
28
|
+
else if (job.pageState === Job_1.PageState.ReadyToUpload ||
|
|
29
|
+
job.jobState === Job_1.JobState.Completed) {
|
|
26
30
|
isReadyToUpload = true;
|
|
27
31
|
}
|
|
28
|
-
else if (job.jobState ==
|
|
32
|
+
else if (job.jobState == Job_1.JobState.Processing) {
|
|
29
33
|
isReadyToUpload = false;
|
|
30
34
|
}
|
|
31
35
|
else {
|
|
32
|
-
console.log(`Unknown jobState: ${
|
|
36
|
+
console.log(`Unknown jobState: ${jobStateStr}`);
|
|
33
37
|
}
|
|
34
38
|
await (0, delay_1.delay)(300);
|
|
35
39
|
} while (!isReadyToUpload);
|
|
36
40
|
return job;
|
|
37
41
|
}
|
|
38
|
-
async function
|
|
42
|
+
async function fixJpegHeight(filePath) {
|
|
39
43
|
const buffer = await promises_1.default.readFile(filePath);
|
|
40
44
|
const height = JpegUtil_1.default.fixSizeWithDNL(buffer);
|
|
41
45
|
if (height != null) {
|
|
@@ -57,21 +61,15 @@ function createScanPage(job, currentPageNumber, filePath, sizeFixed) {
|
|
|
57
61
|
};
|
|
58
62
|
}
|
|
59
63
|
async function handleScanProcessingState(job, inputSource, folder, scanCount, currentPageNumber, filePattern, date) {
|
|
60
|
-
if (job.pageState ==
|
|
64
|
+
if (job.pageState == Job_1.PageState.ReadyToUpload &&
|
|
61
65
|
job.binaryURL != null &&
|
|
62
66
|
job.currentPageNumber != null) {
|
|
63
67
|
console.log(`Ready to download page job page ${job.currentPageNumber} at:`, job.binaryURL);
|
|
64
|
-
const destinationFilePath = PathHelper_1.default.getFileForPage(folder, scanCount, currentPageNumber, filePattern, "jpg", date);
|
|
68
|
+
const destinationFilePath = await PathHelper_1.default.getFileForPage(folder, scanCount, currentPageNumber, filePattern, "jpg", date);
|
|
65
69
|
const filePath = await HPApi_1.default.downloadPage(job.binaryURL, destinationFilePath);
|
|
66
70
|
console.log("Page downloaded to:", filePath);
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
sizeFixed = await scanProcessing(filePath);
|
|
70
|
-
if (sizeFixed == null) {
|
|
71
|
-
console.log(`File size has not been fixed, DNF may not have been found and approximate height is: ${job.imageHeight}`);
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
return createScanPage(job, currentPageNumber, filePath, sizeFixed);
|
|
71
|
+
const adfHeight = await getAndFixHeightWHenAdf(inputSource, filePath, job.imageHeight);
|
|
72
|
+
return createScanPage(job, currentPageNumber, filePath, adfHeight);
|
|
75
73
|
}
|
|
76
74
|
else {
|
|
77
75
|
console.log(`Unknown pageState: ${job.pageState}`);
|
|
@@ -79,81 +77,174 @@ async function handleScanProcessingState(job, inputSource, folder, scanCount, cu
|
|
|
79
77
|
return null;
|
|
80
78
|
}
|
|
81
79
|
}
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
80
|
+
function getPageNumber(pageCountingStrategy, scanJobContent) {
|
|
81
|
+
if (pageCountingStrategy === pageCountingStrategy_1.PageCountingStrategy.Normal) {
|
|
82
|
+
return scanJobContent.elements.length + 1;
|
|
83
|
+
}
|
|
84
|
+
else if (pageCountingStrategy === pageCountingStrategy_1.PageCountingStrategy.OddOnly) {
|
|
85
|
+
return scanJobContent.elements.length * 2 + 1;
|
|
86
|
+
}
|
|
87
|
+
else if (pageCountingStrategy === pageCountingStrategy_1.PageCountingStrategy.EvenOnly) {
|
|
88
|
+
return (scanJobContent.elements.length + 1) * 2;
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
throw new Error(`Unknown page counting strategy: ` + JSON.stringify(pageCountingStrategy));
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
async function hpScanJobHandling(jobUrl, pageCountingStrategy, scanJobContent, inputSource, folder, scanCount, filePattern) {
|
|
86
95
|
let job = await HPApi_1.default.getJob(jobUrl);
|
|
87
|
-
while (job.jobState !==
|
|
96
|
+
while (job.jobState !== Job_1.JobState.Completed) {
|
|
88
97
|
job = await waitDeviceUntilItIsReadyToUploadOrCompleted(jobUrl);
|
|
89
|
-
if (job.jobState ==
|
|
98
|
+
if (job.jobState == Job_1.JobState.Completed) {
|
|
90
99
|
continue;
|
|
91
100
|
}
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
pageNumber = scanJobContent.elements.length + 1;
|
|
96
|
-
}
|
|
97
|
-
else if (pageCountingStrategy === pageCountingStrategy_1.PageCountingStrategy.OddOnly) {
|
|
98
|
-
pageNumber = scanJobContent.elements.length * 2 + 1;
|
|
99
|
-
}
|
|
100
|
-
else if (pageCountingStrategy === pageCountingStrategy_1.PageCountingStrategy.EvenOnly) {
|
|
101
|
-
pageNumber = (scanJobContent.elements.length + 1) * 2;
|
|
102
|
-
}
|
|
103
|
-
else {
|
|
104
|
-
throw new Error(`Unknown page counting strategy: ${pageCountingStrategy}`);
|
|
105
|
-
}
|
|
101
|
+
const jobStateStr = job.jobState.toString();
|
|
102
|
+
if (job.jobState === Job_1.JobState.Processing) {
|
|
103
|
+
const pageNumber = getPageNumber(pageCountingStrategy, scanJobContent);
|
|
106
104
|
const page = await handleScanProcessingState(job, inputSource, folder, scanCount, pageNumber, filePattern, new Date());
|
|
107
105
|
job = await HPApi_1.default.getJob(jobUrl);
|
|
108
|
-
if (page != null && job.jobState !=
|
|
106
|
+
if (page != null && job.jobState != Job_1.JobState.Canceled) {
|
|
109
107
|
scanJobContent.elements.push(page);
|
|
110
108
|
}
|
|
111
109
|
}
|
|
112
|
-
else if (job.jobState ===
|
|
110
|
+
else if (job.jobState === Job_1.JobState.Canceled) {
|
|
113
111
|
console.log("Job cancelled by device");
|
|
114
112
|
break;
|
|
115
113
|
}
|
|
116
114
|
else {
|
|
117
|
-
console.log(`Unhandled jobState: ${
|
|
115
|
+
console.log(`Unhandled jobState: ${jobStateStr}`);
|
|
118
116
|
await (0, delay_1.delay)(200);
|
|
119
117
|
}
|
|
120
118
|
}
|
|
121
119
|
console.log(`Job state: ${job.jobState}, totalPages: ${scanJobContent.elements.length}:`);
|
|
122
120
|
return job.jobState;
|
|
123
121
|
}
|
|
122
|
+
function logJobInfo(jobUrl, scanImageInfo, jobInfo) {
|
|
123
|
+
if (jobUrl.indexOf(scanImageInfo.jobURI) == -1) {
|
|
124
|
+
// for an unknown reason this happens on an HP Smart Tank Plus 570!
|
|
125
|
+
console.log(`Incoherent state !!!! Job URI has changed: ${jobUrl} -> ${scanImageInfo.jobURI} -- crazy!`);
|
|
126
|
+
}
|
|
127
|
+
console.log("From scanImageInfo:");
|
|
128
|
+
console.log(`\tJob Uri: ${scanImageInfo?.jobURI ?? null}`);
|
|
129
|
+
console.log(`\tJob Uuid: ${scanImageInfo?.jobUuid ?? null}`);
|
|
130
|
+
console.log("From jobInfo:");
|
|
131
|
+
console.log(`\tJob Uri: ${jobInfo?.getJobUri() ?? null}`);
|
|
132
|
+
console.log(`\tJob Uuid: ${jobInfo?.getJobUuid() ?? null}`);
|
|
133
|
+
console.log(`\tJob state reason: ${jobInfo?.getJobStateReason() ?? null}`);
|
|
134
|
+
console.log(`\tJob state: ${jobInfo?.getJobState() ?? null}`);
|
|
135
|
+
}
|
|
136
|
+
function mapToJobState(jobStateReason) {
|
|
137
|
+
if (jobStateReason === EsclScanStatus_1.JobStateReason.JobCanceledByUser) {
|
|
138
|
+
return Job_1.JobState.Canceled;
|
|
139
|
+
}
|
|
140
|
+
if (jobStateReason === EsclScanStatus_1.JobStateReason.JobCompletedSuccessfully) {
|
|
141
|
+
return Job_1.JobState.Completed;
|
|
142
|
+
}
|
|
143
|
+
console.log(`Unknown job state reason: ${jobStateReason}, job will be cancelled`);
|
|
144
|
+
return Job_1.JobState.Canceled;
|
|
145
|
+
}
|
|
146
|
+
async function getAndFixHeightWHenAdf(inputSource, filePath, actualHeight) {
|
|
147
|
+
let sizeFixed = null;
|
|
148
|
+
if (inputSource == InputSource_1.InputSource.Adf) {
|
|
149
|
+
sizeFixed = await fixJpegHeight(filePath);
|
|
150
|
+
if (sizeFixed == null) {
|
|
151
|
+
console.log(`Image height has not been fixed, DNF may not have been found and approximate height is: ${actualHeight}`);
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
if (HPApi_1.default.isDebug()) {
|
|
155
|
+
console.log(`Image height has been fixed to: ${sizeFixed} (contained in jpeg's DNL), scan job indicates: ${actualHeight}`);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
return sizeFixed;
|
|
160
|
+
}
|
|
161
|
+
async function eSCLScanJobHandling(jobUrl, scanJobSettings, pageCountingStrategy, scanJobContent, inputSource, folder, scanCount, filePattern) {
|
|
162
|
+
let jobStateReason = null;
|
|
163
|
+
let jobInfo = undefined;
|
|
164
|
+
do {
|
|
165
|
+
await (0, delay_1.delay)(1000);
|
|
166
|
+
const pageNumber = getPageNumber(pageCountingStrategy, scanJobContent);
|
|
167
|
+
const destinationFilePath = await PathHelper_1.default.getFileForPage(folder, scanCount, pageNumber, filePattern, "jpg", new Date());
|
|
168
|
+
const jobLocation = PathHelper_1.default.getPathFromHttpLocation(jobUrl);
|
|
169
|
+
const filePath = await HPApi_1.default.downloadEsclPage(jobUrl, destinationFilePath);
|
|
170
|
+
const scanImageInfo = await HPApi_1.default.getEsclScanImageInfo(jobLocation);
|
|
171
|
+
console.log("scanImageInfo:", scanImageInfo.jobURI);
|
|
172
|
+
const actualHeight = scanImageInfo.actualHeight;
|
|
173
|
+
const adfHeight = await getAndFixHeightWHenAdf(inputSource, filePath, actualHeight);
|
|
174
|
+
const scannerStatus = await HPApi_1.default.getEsclScanStatus();
|
|
175
|
+
console.log("Page downloaded to:", filePath);
|
|
176
|
+
const page = {
|
|
177
|
+
path: filePath,
|
|
178
|
+
pageNumber,
|
|
179
|
+
width: scanImageInfo.actualWidth,
|
|
180
|
+
height: adfHeight ?? scanImageInfo.actualHeight,
|
|
181
|
+
xResolution: scanJobSettings.xResolution,
|
|
182
|
+
yResolution: scanJobSettings.yResolution,
|
|
183
|
+
};
|
|
184
|
+
scanJobContent.elements.push(page);
|
|
185
|
+
jobInfo = scannerStatus.findJobByUri(jobLocation);
|
|
186
|
+
if (HPApi_1.default.isDebug()) {
|
|
187
|
+
logJobInfo(jobUrl, scanImageInfo, jobInfo);
|
|
188
|
+
}
|
|
189
|
+
jobStateReason = jobInfo?.getJobStateReason() ?? null;
|
|
190
|
+
} while (jobStateReason !== null &&
|
|
191
|
+
jobStateReason !== EsclScanStatus_1.JobStateReason.JobCompletedSuccessfully &&
|
|
192
|
+
jobStateReason != EsclScanStatus_1.JobStateReason.JobCanceledByUser);
|
|
193
|
+
if (jobStateReason == null) {
|
|
194
|
+
console.log("Job state reason is null, it means that the current " +
|
|
195
|
+
"job was not found in the device's status, this is probably a bug " +
|
|
196
|
+
"in the device, the current scan will be marked as cancelled");
|
|
197
|
+
return Job_1.JobState.Canceled;
|
|
198
|
+
}
|
|
199
|
+
return mapToJobState(jobStateReason);
|
|
200
|
+
}
|
|
201
|
+
async function executeScanJob(scanJobSettings, inputSource, folder, scanCount, scanJobContent, filePattern, pageCountingStrategy, deviceCapabilities) {
|
|
202
|
+
const jobUrl = await deviceCapabilities.submitScanJob(scanJobSettings);
|
|
203
|
+
console.log(`Creating job with settings: ${JSON.stringify(scanJobSettings)}`);
|
|
204
|
+
console.log("New job created:", jobUrl);
|
|
205
|
+
let jobState;
|
|
206
|
+
if (deviceCapabilities.isEscl) {
|
|
207
|
+
jobState = await eSCLScanJobHandling(jobUrl, scanJobSettings, pageCountingStrategy, scanJobContent, inputSource, folder, scanCount, filePattern);
|
|
208
|
+
}
|
|
209
|
+
else {
|
|
210
|
+
jobState = await hpScanJobHandling(jobUrl, pageCountingStrategy, scanJobContent, inputSource, folder, scanCount, filePattern);
|
|
211
|
+
}
|
|
212
|
+
return jobState;
|
|
213
|
+
}
|
|
124
214
|
async function waitScanNewPageRequest(compEventURI) {
|
|
125
215
|
let startNewScanJob = false;
|
|
126
216
|
let wait = true;
|
|
127
217
|
while (wait) {
|
|
128
218
|
await new Promise((resolve) => setTimeout(resolve, 1000)); //wait 1s
|
|
129
219
|
const walkupScanToCompEvent = await HPApi_1.default.getWalkupScanToCompEvent(compEventURI);
|
|
130
|
-
const
|
|
131
|
-
|
|
220
|
+
const eventType = walkupScanToCompEvent.eventType;
|
|
221
|
+
const eventTypeStr = eventType.toString();
|
|
222
|
+
if (eventType === WalkupScanToCompEvent_1.EventType.ScanNewPageRequested) {
|
|
132
223
|
startNewScanJob = true;
|
|
133
224
|
wait = false;
|
|
134
225
|
}
|
|
135
|
-
else if (
|
|
226
|
+
else if (eventType === WalkupScanToCompEvent_1.EventType.ScanPagesComplete) {
|
|
136
227
|
wait = false;
|
|
137
228
|
}
|
|
138
|
-
else if (
|
|
229
|
+
else if (eventType === WalkupScanToCompEvent_1.EventType.ScanRequested) {
|
|
139
230
|
// continue waiting
|
|
140
231
|
}
|
|
141
232
|
else {
|
|
142
233
|
wait = false;
|
|
143
|
-
console.log(`Unknown eventType: ${
|
|
234
|
+
console.log(`Unknown eventType: ${eventTypeStr}`);
|
|
144
235
|
}
|
|
145
236
|
}
|
|
146
237
|
return startNewScanJob;
|
|
147
238
|
}
|
|
148
239
|
async function executeScanJobs(scanJobSettings, inputSource, folder, scanCount, scanJobContent, selectedScanTarget, deviceCapabilities, filePattern, pageCountingStrategy) {
|
|
149
|
-
let jobState = await executeScanJob(scanJobSettings, inputSource, folder, scanCount, scanJobContent, filePattern, pageCountingStrategy);
|
|
240
|
+
let jobState = await executeScanJob(scanJobSettings, inputSource, folder, scanCount, scanJobContent, filePattern, pageCountingStrategy, deviceCapabilities);
|
|
150
241
|
const scanTarget = {
|
|
151
242
|
resourceURI: selectedScanTarget.resourceURI,
|
|
152
243
|
label: selectedScanTarget.label,
|
|
153
244
|
isDuplexSingleSide: selectedScanTarget.isDuplexSingleSide,
|
|
154
245
|
};
|
|
155
246
|
let lastEvent = selectedScanTarget.event;
|
|
156
|
-
if (jobState ===
|
|
247
|
+
if (jobState === Job_1.JobState.Completed &&
|
|
157
248
|
lastEvent.compEventURI &&
|
|
158
249
|
inputSource !== InputSource_1.InputSource.Adf &&
|
|
159
250
|
lastEvent.destinationURI &&
|
|
@@ -164,8 +255,8 @@ async function executeScanJobs(scanJobSettings, inputSource, folder, scanCount,
|
|
|
164
255
|
}
|
|
165
256
|
let startNewScanJob = await waitScanNewPageRequest(lastEvent.compEventURI);
|
|
166
257
|
while (startNewScanJob) {
|
|
167
|
-
jobState = await executeScanJob(scanJobSettings, inputSource, folder, scanCount, scanJobContent, filePattern, pageCountingStrategy);
|
|
168
|
-
if (jobState !==
|
|
258
|
+
jobState = await executeScanJob(scanJobSettings, inputSource, folder, scanCount, scanJobContent, filePattern, pageCountingStrategy, deviceCapabilities);
|
|
259
|
+
if (jobState !== Job_1.JobState.Completed) {
|
|
169
260
|
return;
|
|
170
261
|
}
|
|
171
262
|
if (!lastEvent.destinationURI) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scanJobHandlers.js","sourceRoot":"","sources":["../src/scanJobHandlers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scanJobHandlers.js","sourceRoot":"","sources":["../src/scanJobHandlers.ts"],"names":[],"mappings":"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"}
|
package/dist/scanProcessing.d.ts
CHANGED
|
@@ -1,17 +1,22 @@
|
|
|
1
1
|
import Event from "./hpModels/Event";
|
|
2
|
-
import WalkupScanDestination from "./hpModels/WalkupScanDestination";
|
|
3
|
-
import WalkupScanToCompDestination from "./hpModels/WalkupScanToCompDestination";
|
|
4
2
|
import { DeviceCapabilities } from "./type/DeviceCapabilities";
|
|
5
3
|
import { ScanContent } from "./type/ScanContent";
|
|
6
4
|
import { InputSource } from "./type/InputSource";
|
|
7
5
|
import { SelectedScanTarget } from "./type/scanTargetDefinitions";
|
|
6
|
+
import { KnownShortcut } from "./type/KnownShortcut";
|
|
8
7
|
import { AdfAutoScanConfig, ScanConfig, SingleScanConfig } from "./type/scanConfigs";
|
|
9
8
|
import { PageCountingStrategy } from "./type/pageCountingStrategy";
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
import { IScanStatus } from "./hpModels/IScanStatus";
|
|
10
|
+
import { ScanPlexMode } from "./hpModels/ScanPlexMode";
|
|
11
|
+
export interface WalkupDestination {
|
|
12
|
+
get shortcut(): null | KnownShortcut;
|
|
13
|
+
get scanPlexMode(): ScanPlexMode | null;
|
|
14
|
+
}
|
|
15
|
+
export declare function tryGetDestination(event: Event): Promise<WalkupDestination | null>;
|
|
16
|
+
export declare function isPdf(destination: WalkupDestination): boolean;
|
|
12
17
|
export declare function getScanWidth(scanConfig: ScanConfig, inputSource: InputSource, deviceCapabilities: DeviceCapabilities, isDuplex: boolean): number | null;
|
|
13
18
|
export declare function getScanHeight(scanConfig: ScanConfig, inputSource: InputSource, deviceCapabilities: DeviceCapabilities, isDuplex: boolean): number | null;
|
|
14
19
|
export declare function saveScanFromEvent(selectedScanTarget: SelectedScanTarget, folder: string, tempFolder: string, scanCount: number, deviceCapabilities: DeviceCapabilities, scanConfig: ScanConfig, isDuplex: boolean, isPdf: boolean, pageCountingStrategy: PageCountingStrategy): Promise<ScanContent>;
|
|
15
20
|
export declare function scanFromAdf(scanCount: number, folder: string, tempFolder: string, adfAutoScanConfig: AdfAutoScanConfig, deviceCapabilities: DeviceCapabilities, date: Date): Promise<void>;
|
|
16
21
|
export declare function singleScan(scanCount: number, folder: string, tempFolder: string, scanConfig: SingleScanConfig, deviceCapabilities: DeviceCapabilities, date: Date): Promise<void>;
|
|
17
|
-
export declare function waitAdfLoaded(pollingInterval: number, startScanDelay: number): Promise<void>;
|
|
22
|
+
export declare function waitAdfLoaded(pollingInterval: number, startScanDelay: number, getScanStatus: () => Promise<IScanStatus>): Promise<void>;
|
package/dist/scanProcessing.js
CHANGED
|
@@ -12,15 +12,15 @@ exports.scanFromAdf = scanFromAdf;
|
|
|
12
12
|
exports.singleScan = singleScan;
|
|
13
13
|
exports.waitAdfLoaded = waitAdfLoaded;
|
|
14
14
|
const HPApi_1 = __importDefault(require("./HPApi"));
|
|
15
|
-
const ScanJobSettings_1 = __importDefault(require("./hpModels/ScanJobSettings"));
|
|
16
15
|
const delay_1 = require("./delay");
|
|
17
16
|
const InputSource_1 = require("./type/InputSource");
|
|
18
17
|
const postProcessing_1 = require("./postProcessing");
|
|
19
18
|
const scanJobHandlers_1 = require("./scanJobHandlers");
|
|
20
19
|
const KnownShortcut_1 = require("./type/KnownShortcut");
|
|
21
20
|
const pageCountingStrategy_1 = require("./type/pageCountingStrategy");
|
|
21
|
+
const ScannerState_1 = require("./hpModels/ScannerState");
|
|
22
22
|
async function tryGetDestination(event) {
|
|
23
|
-
// this code can in some cases be executed before the user actually chooses between Document or Photo
|
|
23
|
+
// this code can in some cases be executed before the user actually chooses between Document or Photo,
|
|
24
24
|
// so, let's fetch the contentType (Document or Photo) until we get a value
|
|
25
25
|
let destination = null;
|
|
26
26
|
for (let i = 0; i < 20; i++) {
|
|
@@ -96,26 +96,29 @@ function getScanHeight(scanConfig, inputSource, deviceCapabilities, isDuplex) {
|
|
|
96
96
|
async function saveScanFromEvent(selectedScanTarget, folder, tempFolder, scanCount, deviceCapabilities, scanConfig, isDuplex, isPdf, pageCountingStrategy) {
|
|
97
97
|
let destinationFolder;
|
|
98
98
|
let contentType;
|
|
99
|
+
let filePattern;
|
|
99
100
|
if (isPdf) {
|
|
100
101
|
contentType = "Document";
|
|
101
102
|
destinationFolder = tempFolder;
|
|
103
|
+
filePattern = undefined;
|
|
102
104
|
console.log(`Scan will be converted to pdf, using ${destinationFolder} as temp scan output directory for individual pages`);
|
|
103
105
|
}
|
|
104
106
|
else {
|
|
105
107
|
contentType = "Photo";
|
|
106
108
|
destinationFolder = folder;
|
|
109
|
+
filePattern = scanConfig.directoryConfig.filePattern;
|
|
107
110
|
}
|
|
108
|
-
const scanStatus = await
|
|
109
|
-
if (scanStatus.scannerState !==
|
|
111
|
+
const scanStatus = await deviceCapabilities.getScanStatus();
|
|
112
|
+
if (scanStatus.scannerState !== ScannerState_1.ScannerState.Idle) {
|
|
110
113
|
console.log("Scanner state is not Idle, aborting scan attempt...!");
|
|
111
114
|
}
|
|
112
115
|
console.log("Afd is : " + scanStatus.adfState);
|
|
113
116
|
const inputSource = scanStatus.getInputSource();
|
|
114
117
|
const scanWidth = getScanWidth(scanConfig, inputSource, deviceCapabilities, isDuplex);
|
|
115
118
|
const scanHeight = getScanHeight(scanConfig, inputSource, deviceCapabilities, isDuplex);
|
|
116
|
-
const scanJobSettings =
|
|
119
|
+
const scanJobSettings = deviceCapabilities.createScanJobSettings(inputSource, contentType, scanConfig.resolution, scanConfig.mode, scanWidth, scanHeight, isDuplex);
|
|
117
120
|
const scanJobContent = { elements: [] };
|
|
118
|
-
await (0, scanJobHandlers_1.executeScanJobs)(scanJobSettings, inputSource, destinationFolder, scanCount, scanJobContent, selectedScanTarget, deviceCapabilities,
|
|
121
|
+
await (0, scanJobHandlers_1.executeScanJobs)(scanJobSettings, inputSource, destinationFolder, scanCount, scanJobContent, selectedScanTarget, deviceCapabilities, filePattern, pageCountingStrategy);
|
|
119
122
|
console.log(`Scan of page(s) completed totalPages: ${scanJobContent.elements.length}:`);
|
|
120
123
|
return scanJobContent;
|
|
121
124
|
}
|
|
@@ -133,9 +136,9 @@ async function scanFromAdf(scanCount, folder, tempFolder, adfAutoScanConfig, dev
|
|
|
133
136
|
}
|
|
134
137
|
const scanWidth = getScanWidth(adfAutoScanConfig, InputSource_1.InputSource.Adf, deviceCapabilities, adfAutoScanConfig.isDuplex);
|
|
135
138
|
const scanHeight = getScanHeight(adfAutoScanConfig, InputSource_1.InputSource.Adf, deviceCapabilities, adfAutoScanConfig.isDuplex);
|
|
136
|
-
const scanJobSettings =
|
|
139
|
+
const scanJobSettings = deviceCapabilities.createScanJobSettings(InputSource_1.InputSource.Adf, contentType, adfAutoScanConfig.resolution, adfAutoScanConfig.mode, scanWidth, scanHeight, adfAutoScanConfig.isDuplex);
|
|
137
140
|
const scanJobContent = { elements: [] };
|
|
138
|
-
await (0, scanJobHandlers_1.executeScanJob)(scanJobSettings, InputSource_1.InputSource.Adf, destinationFolder, scanCount, scanJobContent, adfAutoScanConfig.directoryConfig.filePattern, pageCountingStrategy_1.PageCountingStrategy.Normal);
|
|
141
|
+
await (0, scanJobHandlers_1.executeScanJob)(scanJobSettings, InputSource_1.InputSource.Adf, destinationFolder, scanCount, scanJobContent, adfAutoScanConfig.directoryConfig.filePattern, pageCountingStrategy_1.PageCountingStrategy.Normal, deviceCapabilities);
|
|
139
142
|
console.log(`Scan of page(s) completed, total pages: ${scanJobContent.elements.length}:`);
|
|
140
143
|
await (0, postProcessing_1.postProcessing)(adfAutoScanConfig, folder, tempFolder, scanCount, scanJobContent, date, adfAutoScanConfig.generatePdf);
|
|
141
144
|
}
|
|
@@ -151,27 +154,27 @@ async function singleScan(scanCount, folder, tempFolder, scanConfig, deviceCapab
|
|
|
151
154
|
contentType = "Photo";
|
|
152
155
|
destinationFolder = folder;
|
|
153
156
|
}
|
|
154
|
-
const scanStatus = await
|
|
155
|
-
if (scanStatus.scannerState !==
|
|
157
|
+
const scanStatus = await deviceCapabilities.getScanStatus();
|
|
158
|
+
if (scanStatus.scannerState !== ScannerState_1.ScannerState.Idle) {
|
|
156
159
|
console.log("Scanner state is not Idle, aborting scan attempt...!");
|
|
157
160
|
}
|
|
158
161
|
console.log("Afd is : " + scanStatus.adfState);
|
|
159
162
|
const inputSource = scanStatus.getInputSource();
|
|
160
163
|
const scanWidth = getScanWidth(scanConfig, inputSource, deviceCapabilities, scanConfig.isDuplex);
|
|
161
164
|
const scanHeight = getScanHeight(scanConfig, inputSource, deviceCapabilities, scanConfig.isDuplex);
|
|
162
|
-
const scanJobSettings =
|
|
165
|
+
const scanJobSettings = deviceCapabilities.createScanJobSettings(inputSource, contentType, scanConfig.resolution, scanConfig.mode, scanWidth, scanHeight, scanConfig.isDuplex);
|
|
163
166
|
const scanJobContent = { elements: [] };
|
|
164
|
-
await (0, scanJobHandlers_1.executeScanJob)(scanJobSettings, inputSource, destinationFolder, scanCount, scanJobContent, scanConfig.directoryConfig.filePattern, pageCountingStrategy_1.PageCountingStrategy.Normal);
|
|
167
|
+
await (0, scanJobHandlers_1.executeScanJob)(scanJobSettings, inputSource, destinationFolder, scanCount, scanJobContent, scanConfig.directoryConfig.filePattern, pageCountingStrategy_1.PageCountingStrategy.Normal, deviceCapabilities);
|
|
165
168
|
console.log(`Scan of page(s) completed, total pages: ${scanJobContent.elements.length}:`);
|
|
166
169
|
await (0, postProcessing_1.postProcessing)(scanConfig, folder, tempFolder, scanCount, scanJobContent, date, scanConfig.generatePdf);
|
|
167
170
|
}
|
|
168
|
-
async function waitAdfLoaded(pollingInterval, startScanDelay) {
|
|
171
|
+
async function waitAdfLoaded(pollingInterval, startScanDelay, getScanStatus) {
|
|
169
172
|
let ready = false;
|
|
170
173
|
while (!ready) {
|
|
171
|
-
let scanStatus = await
|
|
174
|
+
let scanStatus = await getScanStatus();
|
|
172
175
|
while (!scanStatus.isLoaded()) {
|
|
173
176
|
await (0, delay_1.delay)(pollingInterval);
|
|
174
|
-
scanStatus = await
|
|
177
|
+
scanStatus = await getScanStatus();
|
|
175
178
|
}
|
|
176
179
|
console.log(`ADF load detected`);
|
|
177
180
|
let loaded = true;
|
|
@@ -179,7 +182,7 @@ async function waitAdfLoaded(pollingInterval, startScanDelay) {
|
|
|
179
182
|
const shortPollingInterval = 500;
|
|
180
183
|
while (loaded && counter < startScanDelay) {
|
|
181
184
|
await (0, delay_1.delay)(shortPollingInterval);
|
|
182
|
-
scanStatus = await
|
|
185
|
+
scanStatus = await getScanStatus();
|
|
183
186
|
loaded = scanStatus.isLoaded();
|
|
184
187
|
counter += shortPollingInterval;
|
|
185
188
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scanProcessing.js","sourceRoot":"","sources":["../src/scanProcessing.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"scanProcessing.js","sourceRoot":"","sources":["../src/scanProcessing.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
import { IScanStatus } from "../hpModels/IScanStatus";
|
|
2
|
+
import { IScanJobSettings } from "../hpModels/IScanJobSettings";
|
|
3
|
+
import { InputSource } from "./InputSource";
|
|
4
|
+
import { ScanMode } from "./scanMode";
|
|
1
5
|
export interface DeviceCapabilities {
|
|
2
6
|
supportsMultiItemScanFromPlaten: boolean;
|
|
3
7
|
useWalkupScanToComp: boolean;
|
|
@@ -9,4 +13,8 @@ export interface DeviceCapabilities {
|
|
|
9
13
|
adfDuplexMaxHeight: number | null;
|
|
10
14
|
hasAdfDuplex: boolean;
|
|
11
15
|
hasAdfDetectPaperLoaded: boolean;
|
|
16
|
+
isEscl: boolean;
|
|
17
|
+
getScanStatus: () => Promise<IScanStatus>;
|
|
18
|
+
createScanJobSettings: (inputSource: InputSource, contentType: "Document" | "Photo", resolution: number, mode: ScanMode, width: number | null, height: number | null, isDuplex: boolean) => IScanJobSettings;
|
|
19
|
+
submitScanJob: (scanJobSettings: IScanJobSettings) => Promise<string>;
|
|
12
20
|
}
|
|
@@ -10,7 +10,9 @@ export default class DiscoveryTree {
|
|
|
10
10
|
private readonly data;
|
|
11
11
|
constructor(data: DiscoveryTreeData);
|
|
12
12
|
static createDiscoveryTree(content: string): Promise<DiscoveryTree>;
|
|
13
|
+
private getManifestURI;
|
|
13
14
|
get WalkupScanToCompManifestURI(): string | null;
|
|
14
15
|
get WalkupScanManifestURI(): string | null;
|
|
15
16
|
get ScanJobManifestURI(): string | null;
|
|
17
|
+
get EsclManifestURI(): string | null;
|
|
16
18
|
}
|
|
@@ -1,37 +1,29 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const
|
|
4
|
-
const parser = new xml2js_1.Parser();
|
|
5
|
-
const util_1 = require("util");
|
|
6
|
-
const parseString = (0, util_1.promisify)(parser.parseString);
|
|
3
|
+
const ParseXmlString_1 = require("../hpModels/ParseXmlString");
|
|
7
4
|
class DiscoveryTree {
|
|
8
5
|
constructor(data) {
|
|
9
6
|
this.data = data;
|
|
10
7
|
}
|
|
11
8
|
static async createDiscoveryTree(content) {
|
|
12
|
-
const parsed = await
|
|
9
|
+
const parsed = await (0, ParseXmlString_1.parseXmlString)(content);
|
|
13
10
|
return new DiscoveryTree(parsed);
|
|
14
11
|
}
|
|
12
|
+
getManifestURI(resourceType) {
|
|
13
|
+
const manifest = this.data["ledm:DiscoveryTree"]["ledm:SupportedIfc"].find((x) => x["dd:ResourceType"][0] === resourceType);
|
|
14
|
+
return manifest ? manifest["ledm:ManifestURI"][0] : null;
|
|
15
|
+
}
|
|
15
16
|
get WalkupScanToCompManifestURI() {
|
|
16
|
-
|
|
17
|
-
if (hpLedmWalkupScanToCompManifest !== undefined) {
|
|
18
|
-
return hpLedmWalkupScanToCompManifest["ledm:ManifestURI"][0];
|
|
19
|
-
}
|
|
20
|
-
return null;
|
|
17
|
+
return this.getManifestURI("ledm:hpLedmWalkupScanToCompManifest");
|
|
21
18
|
}
|
|
22
19
|
get WalkupScanManifestURI() {
|
|
23
|
-
|
|
24
|
-
if (hpLedmWalkupScanToCompManifest === undefined) {
|
|
25
|
-
return null;
|
|
26
|
-
}
|
|
27
|
-
return hpLedmWalkupScanToCompManifest["ledm:ManifestURI"][0];
|
|
20
|
+
return this.getManifestURI("hpCnxWalkupScanManifest");
|
|
28
21
|
}
|
|
29
22
|
get ScanJobManifestURI() {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
return hpLedmWalkupScanToCompManifest["ledm:ManifestURI"][0];
|
|
23
|
+
return this.getManifestURI("ledm:hpLedmScanJobManifest");
|
|
24
|
+
}
|
|
25
|
+
get EsclManifestURI() {
|
|
26
|
+
return this.getManifestURI("eSCL:eSclManifest");
|
|
35
27
|
}
|
|
36
28
|
}
|
|
37
29
|
exports.default = DiscoveryTree;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DiscoveryTree.js","sourceRoot":"","sources":["../../src/type/DiscoveryTree.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;
|
|
1
|
+
{"version":3,"file":"DiscoveryTree.js","sourceRoot":"","sources":["../../src/type/DiscoveryTree.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,+DAA4D;AAW5D,MAAqB,aAAa;IAGhC,YAAY,IAAuB;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,OAAe;QAC9C,MAAM,MAAM,GAAG,MAAM,IAAA,+BAAc,EAAoB,OAAO,CAAC,CAAC;QAChE,OAAO,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;IAEO,cAAc,CAAC,YAAoB;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,mBAAmB,CAAC,CAAC,IAAI,CACxE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,KAAK,YAAY,CAChD,CAAC;QACF,OAAO,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3D,CAAC;IAED,IAAI,2BAA2B;QAC7B,OAAO,IAAI,CAAC,cAAc,CAAC,qCAAqC,CAAC,CAAC;IACpE,CAAC;IAED,IAAI,qBAAqB;QACvB,OAAO,IAAI,CAAC,cAAc,CAAC,yBAAyB,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,kBAAkB;QACpB,OAAO,IAAI,CAAC,cAAc,CAAC,4BAA4B,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC;IAClD,CAAC;CACF;AAlCD,gCAkCC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export declare enum DuplexAssemblyMode {
|
|
2
|
+
/**
|
|
3
|
+
* PAGE_WISE
|
|
4
|
+
* Front scanned: [1, 3, 5, 7]
|
|
5
|
+
* Back scanned: [2, 4, 6, 8]
|
|
6
|
+
* Final order: [1, 2, 3, 4, 5, 6, 7, 8]
|
|
7
|
+
*/
|
|
8
|
+
PAGE_WISE = "page-wise",
|
|
9
|
+
/**
|
|
10
|
+
* DOCUMENT_WISE
|
|
11
|
+
* Front scanned: [1, 3, 5, 7]
|
|
12
|
+
* Back scanned (stack flipped): [8, 6, 4, 2]
|
|
13
|
+
* After reversing back: [2, 4, 6, 8]
|
|
14
|
+
* Final order: [1, 2, 3, 4, 5, 6, 7, 8]
|
|
15
|
+
*/
|
|
16
|
+
DOCUMENT_WISE = "document-wise",
|
|
17
|
+
/**
|
|
18
|
+
* REVERSE_FRONT
|
|
19
|
+
* Front scanned (stack flipped): [7, 5, 3, 1]
|
|
20
|
+
* Back scanned: [2, 4, 6, 8]
|
|
21
|
+
* After reversing front: [1, 3, 5, 7]
|
|
22
|
+
* Final order: [1, 2, 3, 4, 5, 6, 7, 8]
|
|
23
|
+
*/
|
|
24
|
+
REVERSE_FRONT = "reverse-front",
|
|
25
|
+
/**
|
|
26
|
+
* REVERSE_BOTH
|
|
27
|
+
* Front scanned (stack flipped): [7, 5, 3, 1]
|
|
28
|
+
* Back scanned (stack flipped): [8, 6, 4, 2]
|
|
29
|
+
* After reversing front & back: [1, 3, 5, 7], [2, 4, 6, 8]
|
|
30
|
+
* Final order: [1, 2, 3, 4, 5, 6, 7, 8]
|
|
31
|
+
*/
|
|
32
|
+
REVERSE_BOTH = "reverse-both"
|
|
33
|
+
}
|