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
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DuplexAssemblyMode = void 0;
|
|
4
|
+
var DuplexAssemblyMode;
|
|
5
|
+
(function (DuplexAssemblyMode) {
|
|
6
|
+
/**
|
|
7
|
+
* PAGE_WISE
|
|
8
|
+
* Front scanned: [1, 3, 5, 7]
|
|
9
|
+
* Back scanned: [2, 4, 6, 8]
|
|
10
|
+
* Final order: [1, 2, 3, 4, 5, 6, 7, 8]
|
|
11
|
+
*/
|
|
12
|
+
DuplexAssemblyMode["PAGE_WISE"] = "page-wise";
|
|
13
|
+
/**
|
|
14
|
+
* DOCUMENT_WISE
|
|
15
|
+
* Front scanned: [1, 3, 5, 7]
|
|
16
|
+
* Back scanned (stack flipped): [8, 6, 4, 2]
|
|
17
|
+
* After reversing back: [2, 4, 6, 8]
|
|
18
|
+
* Final order: [1, 2, 3, 4, 5, 6, 7, 8]
|
|
19
|
+
*/
|
|
20
|
+
DuplexAssemblyMode["DOCUMENT_WISE"] = "document-wise";
|
|
21
|
+
/**
|
|
22
|
+
* REVERSE_FRONT
|
|
23
|
+
* Front scanned (stack flipped): [7, 5, 3, 1]
|
|
24
|
+
* Back scanned: [2, 4, 6, 8]
|
|
25
|
+
* After reversing front: [1, 3, 5, 7]
|
|
26
|
+
* Final order: [1, 2, 3, 4, 5, 6, 7, 8]
|
|
27
|
+
*/
|
|
28
|
+
DuplexAssemblyMode["REVERSE_FRONT"] = "reverse-front";
|
|
29
|
+
/**
|
|
30
|
+
* REVERSE_BOTH
|
|
31
|
+
* Front scanned (stack flipped): [7, 5, 3, 1]
|
|
32
|
+
* Back scanned (stack flipped): [8, 6, 4, 2]
|
|
33
|
+
* After reversing front & back: [1, 3, 5, 7], [2, 4, 6, 8]
|
|
34
|
+
* Final order: [1, 2, 3, 4, 5, 6, 7, 8]
|
|
35
|
+
*/
|
|
36
|
+
DuplexAssemblyMode["REVERSE_BOTH"] = "reverse-both";
|
|
37
|
+
})(DuplexAssemblyMode || (exports.DuplexAssemblyMode = DuplexAssemblyMode = {}));
|
|
38
|
+
//# sourceMappingURL=DuplexAssemblyMode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DuplexAssemblyMode.js","sourceRoot":"","sources":["../../src/type/DuplexAssemblyMode.ts"],"names":[],"mappings":";;;AAAA,IAAY,kBAmCX;AAnCD,WAAY,kBAAkB;IAC5B;;;;;OAKG;IACH,6CAAuB,CAAA;IAEvB;;;;;;OAMG;IACH,qDAA+B,CAAA;IAE/B;;;;;;OAMG;IACH,qDAA+B,CAAA;IAE/B;;;;;;OAMG;IACH,mDAA6B,CAAA;AAC/B,CAAC,EAnCW,kBAAkB,kCAAlB,kBAAkB,QAmC7B"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { DuplexAssemblyMode } from "./DuplexAssemblyMode";
|
|
3
|
+
export declare const configSchema: z.ZodObject<{
|
|
4
|
+
ip: z.ZodOptional<z.ZodString>;
|
|
5
|
+
name: z.ZodOptional<z.ZodString>;
|
|
6
|
+
label: z.ZodOptional<z.ZodString>;
|
|
7
|
+
deviceUpPollingInterval: z.ZodOptional<z.ZodNumber>;
|
|
8
|
+
debug: z.ZodOptional<z.ZodBoolean>;
|
|
9
|
+
directory: z.ZodOptional<z.ZodString>;
|
|
10
|
+
tempDirectory: z.ZodOptional<z.ZodString>;
|
|
11
|
+
pattern: z.ZodOptional<z.ZodString>;
|
|
12
|
+
width: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<"max">]>>;
|
|
13
|
+
height: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<"max">]>>;
|
|
14
|
+
resolution: z.ZodOptional<z.ZodNumber>;
|
|
15
|
+
mode: z.ZodOptional<z.ZodEnum<{
|
|
16
|
+
Gray: "Gray";
|
|
17
|
+
Color: "Color";
|
|
18
|
+
}>>;
|
|
19
|
+
prefer_escl: z.ZodOptional<z.ZodBoolean>;
|
|
20
|
+
add_emulated_duplex: z.ZodOptional<z.ZodBoolean>;
|
|
21
|
+
emulated_duplex_label: z.ZodOptional<z.ZodString>;
|
|
22
|
+
emulated_duplex_assembly_mode: z.ZodOptional<z.ZodEnum<{
|
|
23
|
+
"page-wise": DuplexAssemblyMode.PAGE_WISE;
|
|
24
|
+
"document-wise": DuplexAssemblyMode.DOCUMENT_WISE;
|
|
25
|
+
"reverse-front": DuplexAssemblyMode.REVERSE_FRONT;
|
|
26
|
+
"reverse-both": DuplexAssemblyMode.REVERSE_BOTH;
|
|
27
|
+
}>>;
|
|
28
|
+
single_scan_duplex: z.ZodOptional<z.ZodBoolean>;
|
|
29
|
+
single_scan_pdf: z.ZodOptional<z.ZodBoolean>;
|
|
30
|
+
autoscan_duplex: z.ZodOptional<z.ZodBoolean>;
|
|
31
|
+
autoscan_pdf: z.ZodOptional<z.ZodBoolean>;
|
|
32
|
+
autoscan_pollingInterval: z.ZodOptional<z.ZodNumber>;
|
|
33
|
+
autoscan_startScanDelay: z.ZodOptional<z.ZodNumber>;
|
|
34
|
+
paperless_post_document_url: z.ZodOptional<z.ZodString>;
|
|
35
|
+
paperless_token: z.ZodOptional<z.ZodString>;
|
|
36
|
+
paperless_group_multi_page_scan_into_a_pdf: z.ZodOptional<z.ZodBoolean>;
|
|
37
|
+
paperless_always_send_as_pdf_file: z.ZodOptional<z.ZodBoolean>;
|
|
38
|
+
nextcloud_url: z.ZodOptional<z.ZodString>;
|
|
39
|
+
nextcloud_username: z.ZodOptional<z.ZodString>;
|
|
40
|
+
nextcloud_password: z.ZodOptional<z.ZodString>;
|
|
41
|
+
nextcloud_password_file: z.ZodOptional<z.ZodString>;
|
|
42
|
+
nextcloud_upload_folder: z.ZodOptional<z.ZodString>;
|
|
43
|
+
keep_files: z.ZodOptional<z.ZodBoolean>;
|
|
44
|
+
enableHealthCheck: z.ZodOptional<z.ZodBoolean>;
|
|
45
|
+
healthCheckPort: z.ZodOptional<z.ZodNumber>;
|
|
46
|
+
}, z.core.$strip>;
|
|
47
|
+
export type FileConfig = z.infer<typeof configSchema>;
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.configSchema = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const DuplexAssemblyMode_1 = require("./DuplexAssemblyMode");
|
|
6
|
+
// Configuration schema for the config file
|
|
7
|
+
exports.configSchema = zod_1.z.object({
|
|
8
|
+
///
|
|
9
|
+
/// Network and Identification
|
|
10
|
+
///
|
|
11
|
+
ip: zod_1.z.string().optional(), // IP address of the device (optional)
|
|
12
|
+
name: zod_1.z.string().optional(), // Device name (used for mDNS if IP is not set)
|
|
13
|
+
label: zod_1.z.string().optional(), // Display label on the device screen
|
|
14
|
+
///
|
|
15
|
+
/// Connectivity & Debug
|
|
16
|
+
///
|
|
17
|
+
deviceUpPollingInterval: zod_1.z.number().min(0).optional(), // Polling interval (ms) to check if device is reachable
|
|
18
|
+
debug: zod_1.z.boolean().optional(), // Enable debug mode for reporting issues
|
|
19
|
+
///
|
|
20
|
+
/// Directories & File Naming
|
|
21
|
+
///
|
|
22
|
+
directory: zod_1.z.string().optional(), // Directory to store scan results
|
|
23
|
+
tempDirectory: zod_1.z.string().optional(), // Temporary directory for file processing
|
|
24
|
+
pattern: zod_1.z.string().optional(), // Pattern for naming scanned files
|
|
25
|
+
///
|
|
26
|
+
/// Scan Settings
|
|
27
|
+
///
|
|
28
|
+
width: zod_1.z
|
|
29
|
+
.union([
|
|
30
|
+
zod_1.z.number().int().positive(), // Positive integer
|
|
31
|
+
zod_1.z.literal("max"), // The string "max"
|
|
32
|
+
])
|
|
33
|
+
.optional(), // Scan width in pixels
|
|
34
|
+
height: zod_1.z
|
|
35
|
+
.union([
|
|
36
|
+
zod_1.z.number().int().positive(), // Positive integer
|
|
37
|
+
zod_1.z.literal("max"), // The string "max"
|
|
38
|
+
])
|
|
39
|
+
.optional(), // Scan height in pixels
|
|
40
|
+
resolution: zod_1.z.number().int().positive().optional(), // DPI resolution
|
|
41
|
+
mode: zod_1.z.enum(["Gray", "Color"]).optional(), // The scan mode
|
|
42
|
+
prefer_escl: zod_1.z.boolean().optional(), // Always upload scans as PDF
|
|
43
|
+
///
|
|
44
|
+
/// Duplex Scanning Options
|
|
45
|
+
///
|
|
46
|
+
add_emulated_duplex: zod_1.z.boolean().optional(), // Enable emulated duplex feature
|
|
47
|
+
emulated_duplex_label: zod_1.z.string().optional(), // Label for emulated duplex target
|
|
48
|
+
emulated_duplex_assembly_mode: zod_1.z
|
|
49
|
+
.enum(Object.values(DuplexAssemblyMode_1.DuplexAssemblyMode))
|
|
50
|
+
.optional(),
|
|
51
|
+
///
|
|
52
|
+
/// Single Scan Options
|
|
53
|
+
///
|
|
54
|
+
single_scan_duplex: zod_1.z.boolean().optional(), // Use duplex for single scans (if supported)
|
|
55
|
+
single_scan_pdf: zod_1.z.boolean().optional(), // Output format for single scans: PDF (true) or JPG (false)
|
|
56
|
+
///
|
|
57
|
+
/// Auto Scan (Document Feeder)
|
|
58
|
+
///
|
|
59
|
+
autoscan_duplex: zod_1.z.boolean().optional(), // Use duplex for auto scans (if supported)
|
|
60
|
+
autoscan_pdf: zod_1.z.boolean().optional(), // Output format for auto scans: PDF (true) or JPG (false)
|
|
61
|
+
autoscan_pollingInterval: zod_1.z.number().min(0).optional(), // Interval (ms) to poll the document feeder
|
|
62
|
+
autoscan_startScanDelay: zod_1.z.number().min(0).optional(), // Delay (ms) before auto scan starts after feeder is loaded
|
|
63
|
+
///
|
|
64
|
+
/// Paperless Integration
|
|
65
|
+
///
|
|
66
|
+
paperless_post_document_url: zod_1.z.string().optional(), // Paperless POST URL
|
|
67
|
+
paperless_token: zod_1.z.string().optional(), // Paperless API token
|
|
68
|
+
paperless_group_multi_page_scan_into_a_pdf: zod_1.z.boolean().optional(), // Group multi-page scans into a single PDF
|
|
69
|
+
paperless_always_send_as_pdf_file: zod_1.z.boolean().optional(), // Always upload scans as PDF
|
|
70
|
+
///
|
|
71
|
+
/// Nextcloud Integration
|
|
72
|
+
///
|
|
73
|
+
nextcloud_url: zod_1.z.string().optional(), // Nextcloud server URL
|
|
74
|
+
nextcloud_username: zod_1.z.string().optional(), // Nextcloud username
|
|
75
|
+
nextcloud_password: zod_1.z.string().optional(), // Nextcloud password
|
|
76
|
+
nextcloud_password_file: zod_1.z.string().optional(), // Path to file containing Nextcloud password
|
|
77
|
+
nextcloud_upload_folder: zod_1.z.string().optional(), // Upload folder path on Nextcloud
|
|
78
|
+
///
|
|
79
|
+
/// Common to external destination (paperless & nextcloud)
|
|
80
|
+
///
|
|
81
|
+
keep_files: zod_1.z.boolean().optional(), // Keep scanned files locally after upload
|
|
82
|
+
///
|
|
83
|
+
/// Health Check
|
|
84
|
+
///
|
|
85
|
+
enableHealthCheck: zod_1.z.boolean().optional(), // Enable HTTP health check endpoint
|
|
86
|
+
healthCheckPort: zod_1.z.number().int().positive().max(65535).optional(), // Port for health check endpoint
|
|
87
|
+
});
|
|
88
|
+
//# sourceMappingURL=FileConfig.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileConfig.js","sourceRoot":"","sources":["../../src/type/FileConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare enum HelpGroupsHeadings {
|
|
2
|
+
healthCheck = "Health check Options:",
|
|
3
|
+
paperless = "Paperless Options:",
|
|
4
|
+
nextcloud = "Nextcloud Options:",
|
|
5
|
+
scan = "Scan Options:",
|
|
6
|
+
ouput = "Output Options:",
|
|
7
|
+
adfAutoScan = "Auto-scan Options:",
|
|
8
|
+
network = "Network Options:",
|
|
9
|
+
deviceControlScreen = "Device Control Screen Options:"
|
|
10
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.HelpGroupsHeadings = void 0;
|
|
4
|
+
var HelpGroupsHeadings;
|
|
5
|
+
(function (HelpGroupsHeadings) {
|
|
6
|
+
HelpGroupsHeadings["healthCheck"] = "Health check Options:";
|
|
7
|
+
HelpGroupsHeadings["paperless"] = "Paperless Options:";
|
|
8
|
+
HelpGroupsHeadings["nextcloud"] = "Nextcloud Options:";
|
|
9
|
+
HelpGroupsHeadings["scan"] = "Scan Options:";
|
|
10
|
+
HelpGroupsHeadings["ouput"] = "Output Options:";
|
|
11
|
+
HelpGroupsHeadings["adfAutoScan"] = "Auto-scan Options:";
|
|
12
|
+
HelpGroupsHeadings["network"] = "Network Options:";
|
|
13
|
+
HelpGroupsHeadings["deviceControlScreen"] = "Device Control Screen Options:";
|
|
14
|
+
})(HelpGroupsHeadings || (exports.HelpGroupsHeadings = HelpGroupsHeadings = {}));
|
|
15
|
+
//# sourceMappingURL=helpGroupsHeadings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpGroupsHeadings.js","sourceRoot":"","sources":["../../src/type/helpGroupsHeadings.ts"],"names":[],"mappings":";;;AAAA,IAAY,kBASX;AATD,WAAY,kBAAkB;IAC5B,2DAAqC,CAAA;IACrC,sDAAgC,CAAA;IAChC,sDAAgC,CAAA;IAChC,4CAAsB,CAAA;IACtB,+CAAyB,CAAA;IACzB,wDAAkC,CAAA;IAClC,kDAA4B,CAAA;IAC5B,4EAAsD,CAAA;AACxD,CAAC,EATW,kBAAkB,kCAAlB,kBAAkB,QAS7B"}
|
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
import { DirectoryConfig } from "./directoryConfig";
|
|
2
2
|
import { PaperlessConfig } from "../paperless/PaperlessConfig";
|
|
3
3
|
import { NextcloudConfig } from "../nextcloud/NextcloudConfig";
|
|
4
|
+
import { ScanMode } from "./scanMode";
|
|
4
5
|
export type ScanConfig = {
|
|
5
6
|
resolution: number;
|
|
7
|
+
mode: ScanMode;
|
|
6
8
|
width: number | null;
|
|
7
9
|
height: number | null;
|
|
8
10
|
directoryConfig: DirectoryConfig;
|
|
9
11
|
paperlessConfig: PaperlessConfig | undefined;
|
|
10
12
|
nextcloudConfig: NextcloudConfig | undefined;
|
|
13
|
+
preferEscl: boolean;
|
|
11
14
|
};
|
|
12
15
|
export type AdfAutoScanConfig = ScanConfig & {
|
|
13
16
|
isDuplex: boolean;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ScanMode = void 0;
|
|
4
|
+
var ScanMode;
|
|
5
|
+
(function (ScanMode) {
|
|
6
|
+
ScanMode["Gray"] = "Gray";
|
|
7
|
+
ScanMode["Color"] = "Color";
|
|
8
|
+
})(ScanMode || (exports.ScanMode = ScanMode = {}));
|
|
9
|
+
//# sourceMappingURL=scanMode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scanMode.js","sourceRoot":"","sources":["../../src/type/scanMode.ts"],"names":[],"mappings":";;;AAAA,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,yBAAa,CAAA;IACb,2BAAe,CAAA;AACjB,CAAC,EAHW,QAAQ,wBAAR,QAAQ,QAGnB"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import Event from "../hpModels/Event";
|
|
2
|
+
import { DuplexAssemblyMode } from "./DuplexAssemblyMode";
|
|
2
3
|
export type RegistrationConfig = {
|
|
3
4
|
label: string;
|
|
4
5
|
isDuplexSingleSide: boolean;
|
|
6
|
+
duplexAssemblyMode?: DuplexAssemblyMode;
|
|
5
7
|
};
|
|
6
8
|
export type ScanTarget = RegistrationConfig & {
|
|
7
9
|
resourceURI: string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "node-hp-scan-to",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.9.1",
|
|
4
4
|
"description": "Scan document to Computer for HP All-in-One Printers",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"Officejet",
|
|
@@ -17,6 +17,8 @@
|
|
|
17
17
|
"prestart": "node getCommitId.js",
|
|
18
18
|
"start": "ts-node src/index.ts",
|
|
19
19
|
"start:single-scan": "ts-node src/index.ts single-scan",
|
|
20
|
+
"start:clear-registrations": "ts-node src/index.ts clear-registrations",
|
|
21
|
+
"start:adf-autoscan": "ts-node src/index.ts adf-autoscan",
|
|
20
22
|
"start-debug": "ts-node src/index.ts -D",
|
|
21
23
|
"prebuild": "node getCommitId.js",
|
|
22
24
|
"lint": "eslint . --ext .ts,.tsx",
|
|
@@ -25,7 +27,7 @@
|
|
|
25
27
|
"built-start": "tsc -p . && node --trace-warnings ./dist/index.js",
|
|
26
28
|
"start-dev": "nodemon",
|
|
27
29
|
"prepublishOnly": "npm run prebuild && tsc -p ./ --outDir dist/",
|
|
28
|
-
"prettier": "prettier --write \"src/**/*.ts\"",
|
|
30
|
+
"prettier": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"",
|
|
29
31
|
"test": "npx mocha --require ts-node/register ./test/**/*.test.ts",
|
|
30
32
|
"test-ci": "npx nyc --reporter=lcov mocha -r ts-node/register ./test/**/*.test.ts && codecov"
|
|
31
33
|
},
|
|
@@ -34,7 +36,7 @@
|
|
|
34
36
|
"README.md"
|
|
35
37
|
],
|
|
36
38
|
"engines": {
|
|
37
|
-
"node": ">=18.0
|
|
39
|
+
"node": ">=22.18.0"
|
|
38
40
|
},
|
|
39
41
|
"author": {
|
|
40
42
|
"email": "manuc66@gmail.com",
|
|
@@ -49,40 +51,45 @@
|
|
|
49
51
|
},
|
|
50
52
|
"license": "MIT",
|
|
51
53
|
"devDependencies": {
|
|
52
|
-
"@eslint/js": "^9.
|
|
54
|
+
"@eslint/js": "^9.34.0",
|
|
53
55
|
"@istanbuljs/nyc-config-typescript": "^1.0.2",
|
|
54
|
-
"@types/chai": "^5.2.
|
|
55
|
-
"@types/chai-string": "^1.4.
|
|
56
|
-
"@types/config": "^3.3.
|
|
57
|
-
"@types/dateformat": "^5.0.
|
|
58
|
-
"@types/mocha": "^10.0.
|
|
59
|
-
"@types/node": "^
|
|
60
|
-
"@types/xml2js": "^0.4.
|
|
61
|
-
"@typescript-eslint/eslint-plugin": "^8.
|
|
62
|
-
"@typescript-eslint/parser": "^8.
|
|
63
|
-
"chai": "^
|
|
56
|
+
"@types/chai": "^5.2.2",
|
|
57
|
+
"@types/chai-string": "^1.4.5",
|
|
58
|
+
"@types/config": "^3.3.5",
|
|
59
|
+
"@types/dateformat": "^5.0.3",
|
|
60
|
+
"@types/mocha": "^10.0.10",
|
|
61
|
+
"@types/node": "^24.3.0",
|
|
62
|
+
"@types/xml2js": "^0.4.14",
|
|
63
|
+
"@typescript-eslint/eslint-plugin": "^8.41.0",
|
|
64
|
+
"@typescript-eslint/parser": "^8.41.0",
|
|
65
|
+
"chai": "^6.0.1",
|
|
64
66
|
"codecov": "^3.8.3",
|
|
65
|
-
"eslint": "^9.
|
|
66
|
-
"
|
|
67
|
-
"
|
|
68
|
-
"
|
|
69
|
-
"
|
|
70
|
-
"
|
|
71
|
-
"
|
|
67
|
+
"eslint": "^9.34.0",
|
|
68
|
+
"eslint-config-prettier": "^10.1.8",
|
|
69
|
+
"eslint-plugin-prettier": "^5.5.4",
|
|
70
|
+
"globals": "^16.3.0",
|
|
71
|
+
"mocha": "^11.7.1",
|
|
72
|
+
"nock": "^14.0.10",
|
|
73
|
+
"nodemon": "^3.1.10",
|
|
74
|
+
"nyc": "^17.1.0",
|
|
75
|
+
"prettier": "^3.6.2",
|
|
72
76
|
"ts-mockito": "^2.6.1",
|
|
73
77
|
"ts-node": "^10.9.2",
|
|
74
|
-
"typescript": "^5.
|
|
75
|
-
"typescript-eslint": "^8.
|
|
76
|
-
"yarn": "^1.22.
|
|
78
|
+
"typescript": "^5.9.2",
|
|
79
|
+
"typescript-eslint": "^8.41.0",
|
|
80
|
+
"yarn": "^1.22.22"
|
|
77
81
|
},
|
|
78
82
|
"dependencies": {
|
|
79
|
-
"
|
|
83
|
+
"@commander-js/extra-typings": "^14.0.0",
|
|
84
|
+
"axios": "^1.11.0",
|
|
80
85
|
"bonjour-service": "^1.3.0",
|
|
81
86
|
"commander": "^14.0.0",
|
|
82
|
-
"config": "^4.
|
|
87
|
+
"config": "^4.1.1",
|
|
83
88
|
"dateformat": "^5.0.3",
|
|
84
|
-
"jspdf": "^3.0.
|
|
85
|
-
"
|
|
89
|
+
"jspdf": "^3.0.2",
|
|
90
|
+
"nanoid": "^5.1.6",
|
|
91
|
+
"xml2js": "^0.6.2",
|
|
92
|
+
"zod": "^4.1.3"
|
|
86
93
|
},
|
|
87
94
|
"packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
|
|
88
95
|
}
|