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.
Files changed (131) hide show
  1. package/README.md +272 -51
  2. package/dist/HPApi.d.ts +13 -3
  3. package/dist/HPApi.js +106 -28
  4. package/dist/HPApi.js.map +1 -1
  5. package/dist/PathHelper.d.ts +7 -4
  6. package/dist/PathHelper.js +108 -31
  7. package/dist/PathHelper.js.map +1 -1
  8. package/dist/commands/adfAutoscanCmd.js +2 -2
  9. package/dist/commands/adfAutoscanCmd.js.map +1 -1
  10. package/dist/commands/listenCmd.d.ts +3 -0
  11. package/dist/commands/listenCmd.js +75 -42
  12. package/dist/commands/listenCmd.js.map +1 -1
  13. package/dist/commands/singleScanCmd.js +1 -1
  14. package/dist/commands/singleScanCmd.js.map +1 -1
  15. package/dist/commitInfo.json +1 -1
  16. package/dist/healthcheck.d.ts +2 -1
  17. package/dist/healthcheck.js +1 -0
  18. package/dist/healthcheck.js.map +1 -1
  19. package/dist/hpModels/AdfState.d.ts +4 -0
  20. package/dist/hpModels/AdfState.js +9 -0
  21. package/dist/hpModels/AdfState.js.map +1 -0
  22. package/dist/hpModels/Destination.js +2 -36
  23. package/dist/hpModels/Destination.js.map +1 -1
  24. package/dist/hpModels/EnumUtils.d.ts +3 -0
  25. package/dist/hpModels/EnumUtils.js +13 -0
  26. package/dist/hpModels/EnumUtils.js.map +1 -0
  27. package/dist/hpModels/EsclManifest.d.ts +45 -0
  28. package/dist/hpModels/EsclManifest.js +43 -0
  29. package/dist/hpModels/EsclManifest.js.map +1 -0
  30. package/dist/hpModels/EsclScanCaps.d.ts +37 -0
  31. package/dist/hpModels/EsclScanCaps.js +83 -0
  32. package/dist/hpModels/EsclScanCaps.js.map +1 -0
  33. package/dist/hpModels/EsclScanImageInfo.d.ts +17 -0
  34. package/dist/hpModels/EsclScanImageInfo.js +26 -0
  35. package/dist/hpModels/EsclScanImageInfo.js.map +1 -0
  36. package/dist/hpModels/EsclScanJobSettings.d.ts +16 -0
  37. package/dist/hpModels/EsclScanJobSettings.js +95 -0
  38. package/dist/hpModels/EsclScanJobSettings.js.map +1 -0
  39. package/dist/hpModels/EsclScanStatus.d.ts +75 -0
  40. package/dist/hpModels/EsclScanStatus.js +98 -0
  41. package/dist/hpModels/EsclScanStatus.js.map +1 -0
  42. package/dist/hpModels/EventTable.js +2 -5
  43. package/dist/hpModels/EventTable.js.map +1 -1
  44. package/dist/hpModels/IScanJobSettings.d.ts +5 -0
  45. package/dist/hpModels/IScanJobSettings.js +3 -0
  46. package/dist/hpModels/IScanJobSettings.js.map +1 -0
  47. package/dist/hpModels/IScanStatus.d.ts +9 -0
  48. package/dist/hpModels/IScanStatus.js +3 -0
  49. package/dist/hpModels/IScanStatus.js.map +1 -0
  50. package/dist/hpModels/Job.d.ts +11 -2
  51. package/dist/hpModels/Job.js +18 -7
  52. package/dist/hpModels/Job.js.map +1 -1
  53. package/dist/hpModels/ParseXmlString.d.ts +1 -0
  54. package/dist/hpModels/ParseXmlString.js +17 -0
  55. package/dist/hpModels/ParseXmlString.js.map +1 -0
  56. package/dist/hpModels/ScanCaps.d.ts +1 -0
  57. package/dist/hpModels/ScanCaps.js +5 -5
  58. package/dist/hpModels/ScanCaps.js.map +1 -1
  59. package/dist/hpModels/ScanJobManifest.d.ts +1 -0
  60. package/dist/hpModels/ScanJobManifest.js +9 -5
  61. package/dist/hpModels/ScanJobManifest.js.map +1 -1
  62. package/dist/hpModels/ScanJobSettings.d.ts +7 -2
  63. package/dist/hpModels/ScanJobSettings.js +19 -3
  64. package/dist/hpModels/ScanJobSettings.js.map +1 -1
  65. package/dist/hpModels/ScanPlexMode.d.ts +4 -0
  66. package/dist/hpModels/ScanPlexMode.js +9 -0
  67. package/dist/hpModels/ScanPlexMode.js.map +1 -0
  68. package/dist/hpModels/ScanStatus.d.ts +6 -3
  69. package/dist/hpModels/ScanStatus.js +9 -10
  70. package/dist/hpModels/ScanStatus.js.map +1 -1
  71. package/dist/hpModels/ScannerState.d.ts +4 -0
  72. package/dist/hpModels/ScannerState.js +9 -0
  73. package/dist/hpModels/ScannerState.js.map +1 -0
  74. package/dist/hpModels/WalkupScanDestination.d.ts +2 -1
  75. package/dist/hpModels/WalkupScanDestination.js +5 -6
  76. package/dist/hpModels/WalkupScanDestination.js.map +1 -1
  77. package/dist/hpModels/WalkupScanDestinations.js +2 -5
  78. package/dist/hpModels/WalkupScanDestinations.js.map +1 -1
  79. package/dist/hpModels/WalkupScanManifest.js +2 -5
  80. package/dist/hpModels/WalkupScanManifest.js.map +1 -1
  81. package/dist/hpModels/WalkupScanToCompCaps.js +2 -5
  82. package/dist/hpModels/WalkupScanToCompCaps.js.map +1 -1
  83. package/dist/hpModels/WalkupScanToCompDestination.d.ts +2 -1
  84. package/dist/hpModels/WalkupScanToCompDestination.js +5 -6
  85. package/dist/hpModels/WalkupScanToCompDestination.js.map +1 -1
  86. package/dist/hpModels/WalkupScanToCompDestinations.js +2 -5
  87. package/dist/hpModels/WalkupScanToCompDestinations.js.map +1 -1
  88. package/dist/hpModels/WalkupScanToCompEvent.d.ts +7 -1
  89. package/dist/hpModels/WalkupScanToCompEvent.js +13 -6
  90. package/dist/hpModels/WalkupScanToCompEvent.js.map +1 -1
  91. package/dist/hpModels/WalkupScanToCompManifest.js +2 -5
  92. package/dist/hpModels/WalkupScanToCompManifest.js.map +1 -1
  93. package/dist/index.js +13 -300
  94. package/dist/index.js.map +1 -1
  95. package/dist/listening.js +8 -6
  96. package/dist/listening.js.map +1 -1
  97. package/dist/pdfProcessing.js +1 -1
  98. package/dist/pdfProcessing.js.map +1 -1
  99. package/dist/postProcessing.js +9 -3
  100. package/dist/postProcessing.js.map +1 -1
  101. package/dist/program.d.ts +10 -0
  102. package/dist/program.js +346 -0
  103. package/dist/program.js.map +1 -0
  104. package/dist/readDeviceCapabilities.d.ts +1 -1
  105. package/dist/readDeviceCapabilities.js +56 -4
  106. package/dist/readDeviceCapabilities.js.map +1 -1
  107. package/dist/scanJobHandlers.d.ts +4 -3
  108. package/dist/scanJobHandlers.js +139 -48
  109. package/dist/scanJobHandlers.js.map +1 -1
  110. package/dist/scanProcessing.d.ts +10 -5
  111. package/dist/scanProcessing.js +19 -16
  112. package/dist/scanProcessing.js.map +1 -1
  113. package/dist/type/DeviceCapabilities.d.ts +8 -0
  114. package/dist/type/DiscoveryTree.d.ts +2 -0
  115. package/dist/type/DiscoveryTree.js +12 -20
  116. package/dist/type/DiscoveryTree.js.map +1 -1
  117. package/dist/type/DuplexAssemblyMode.d.ts +33 -0
  118. package/dist/type/DuplexAssemblyMode.js +38 -0
  119. package/dist/type/DuplexAssemblyMode.js.map +1 -0
  120. package/dist/type/FileConfig.d.ts +47 -0
  121. package/dist/type/FileConfig.js +88 -0
  122. package/dist/type/FileConfig.js.map +1 -0
  123. package/dist/type/helpGroupsHeadings.d.ts +10 -0
  124. package/dist/type/helpGroupsHeadings.js +15 -0
  125. package/dist/type/helpGroupsHeadings.js.map +1 -0
  126. package/dist/type/scanConfigs.d.ts +3 -0
  127. package/dist/type/scanMode.d.ts +4 -0
  128. package/dist/type/scanMode.js +9 -0
  129. package/dist/type/scanMode.js.map +1 -0
  130. package/dist/type/scanTargetDefinitions.d.ts +2 -0
  131. package/package.json +35 -28
@@ -0,0 +1,17 @@
1
+ export interface EsclScanImageInfoData {
2
+ "scan:ScanImageInfo": {
3
+ "pwg:JobUri": string[];
4
+ "pwg:JobUuid": string[];
5
+ "scan:ActualWidth": string[];
6
+ "scan:ActualHeight": string[];
7
+ };
8
+ }
9
+ export default class EsclScanImageInfo {
10
+ private readonly data;
11
+ constructor(data: EsclScanImageInfoData);
12
+ static createScanImageInfo(content: string): Promise<EsclScanImageInfo>;
13
+ get actualWidth(): number;
14
+ get actualHeight(): number;
15
+ get jobURI(): string;
16
+ get jobUuid(): string;
17
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const ParseXmlString_1 = require("./ParseXmlString");
4
+ class EsclScanImageInfo {
5
+ constructor(data) {
6
+ this.data = data;
7
+ }
8
+ static async createScanImageInfo(content) {
9
+ const parsed = await (0, ParseXmlString_1.parseXmlString)(content);
10
+ return new EsclScanImageInfo(parsed);
11
+ }
12
+ get actualWidth() {
13
+ return parseInt(this.data["scan:ScanImageInfo"]["scan:ActualWidth"][0], 10);
14
+ }
15
+ get actualHeight() {
16
+ return parseInt(this.data["scan:ScanImageInfo"]["scan:ActualHeight"][0], 10);
17
+ }
18
+ get jobURI() {
19
+ return this.data["scan:ScanImageInfo"]["pwg:JobUri"][0];
20
+ }
21
+ get jobUuid() {
22
+ return this.data["scan:ScanImageInfo"]["pwg:JobUuid"][0];
23
+ }
24
+ }
25
+ exports.default = EsclScanImageInfo;
26
+ //# sourceMappingURL=EsclScanImageInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EsclScanImageInfo.js","sourceRoot":"","sources":["../../src/hpModels/EsclScanImageInfo.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,qDAAkD;AAWlD,MAAqB,iBAAiB;IAGpC,YAAY,IAA2B;QACrC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,OAAe;QAC9C,MAAM,MAAM,GAAG,MAAM,IAAA,+BAAc,EAAwB,OAAO,CAAC,CAAC;QACpE,OAAO,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,WAAW;QACb,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED,IAAI,YAAY;QACd,OAAO,QAAQ,CACb,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,EACvD,EAAE,CACH,CAAC;IACJ,CAAC;IACD,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,CAAC;CACF;AA5BD,oCA4BC"}
@@ -0,0 +1,16 @@
1
+ import { InputSource } from "../type/InputSource";
2
+ import { IScanJobSettings } from "./IScanJobSettings";
3
+ import { ScanMode } from "../type/scanMode";
4
+ export default class EsclScanJobSettings implements IScanJobSettings {
5
+ private readonly inputSource;
6
+ private readonly contentType;
7
+ private readonly resolution;
8
+ private readonly mode;
9
+ private readonly width;
10
+ private readonly height;
11
+ private readonly isDuplex;
12
+ constructor(inputSource: InputSource, contentType: "Document" | "Photo", resolution: number, mode: ScanMode, width: number | null, height: number | null, isDuplex: boolean);
13
+ toXML(): Promise<string>;
14
+ get xResolution(): number;
15
+ get yResolution(): number;
16
+ }
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const xml2js_1 = __importDefault(require("xml2js"));
7
+ const InputSource_1 = require("../type/InputSource");
8
+ const ParseXmlString_1 = require("./ParseXmlString");
9
+ const scanMode_1 = require("../type/scanMode");
10
+ class EsclScanJobSettings {
11
+ constructor(inputSource, contentType, resolution, mode, width, height, isDuplex) {
12
+ this.inputSource = inputSource;
13
+ this.contentType = contentType;
14
+ this.resolution = resolution;
15
+ this.mode = mode;
16
+ this.width = width;
17
+ this.height = height;
18
+ this.isDuplex = isDuplex;
19
+ }
20
+ async toXML() {
21
+ const rawJob = '<?xml version="1.0" encoding="UTF-8"?>\n' +
22
+ '<ScanSettings xmlns="http://schemas.hp.com/imaging/escl/2011/05/03" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.hp.com/imaging/escl/2011/05/03 Scan Schema - 0.26.xsd">\n' +
23
+ '\t<Version xmlns="http://www.pwg.org/schemas/2010/12/sm">2.62</Version>\n' +
24
+ "\t<Intent>Document</Intent>\n" +
25
+ '\t<ScanRegions xmlns="http://www.pwg.org/schemas/2010/12/sm" xmlns:n0="http://www.pwg.org/schemas/2010/12/sm" n0:MustHonor="false">\n' +
26
+ "\t\t<ScanRegion>\n" +
27
+ "\t\t\t<Height>4200</Height>\n" +
28
+ "\t\t\t<Width>2550</Width>\n" +
29
+ "\t\t\t<XOffset>0</XOffset>\n" +
30
+ "\t\t\t<YOffset>0</YOffset>\n" +
31
+ "\t\t\t<ContentRegionUnits>escl:ThreeHundredthsOfInches</ContentRegionUnits>\n" +
32
+ "\t\t</ScanRegion>\n" +
33
+ "\t</ScanRegions>\n" +
34
+ "\t<DocumentFormatExt>image/jpeg</DocumentFormatExt>\n" +
35
+ '\t<InputSource xmlns="http://www.pwg.org/schemas/2010/12/sm">Feeder</InputSource>\n' +
36
+ "\t<XResolution>200</XResolution>\n" +
37
+ "\t<YResolution>200</YResolution>\n" +
38
+ "\t<ColorMode>RGB24</ColorMode>\n" +
39
+ "\t<Duplex>true</Duplex>\n" +
40
+ "\t<MultipickDetection>true</MultipickDetection>\n" +
41
+ "\t<ShowMultipickResolveDialog>true</ShowMultipickResolveDialog>\n" +
42
+ "\t<MultipickExclusionLength>0</MultipickExclusionLength>\n" +
43
+ "\t<AutoCrop>false</AutoCrop>\n" +
44
+ "\t<Brightness>996</Brightness>\n" +
45
+ "\t<CompressionFactor>0</CompressionFactor>\n" +
46
+ "\t<Contrast>996</Contrast>\n" +
47
+ "\t<Gamma>180</Gamma>\n" +
48
+ "\t<Highlight>1396</Highlight>\n" +
49
+ "\t<Shadow>70</Shadow>\n" +
50
+ "\t<Overscan>true</Overscan>\n" +
51
+ "</ScanSettings>";
52
+ const parsed = await (0, ParseXmlString_1.parseXmlString)(rawJob);
53
+ parsed.ScanSettings.XResolution = this.resolution;
54
+ parsed.ScanSettings.YResolution = this.resolution;
55
+ parsed.ScanSettings.Intent = this.contentType;
56
+ if (this.mode === scanMode_1.ScanMode.Gray) {
57
+ parsed.ScanSettings.ColorMode = "Grayscale8";
58
+ }
59
+ else {
60
+ parsed.ScanSettings.ColorMode = "RGB24";
61
+ }
62
+ if (this.width !== null) {
63
+ parsed.ScanSettings.ScanRegions[0].ScanRegion[0].Width = this.width;
64
+ }
65
+ if (this.height !== null) {
66
+ parsed.ScanSettings.ScanRegions[0].ScanRegion[0].Height = this.height;
67
+ }
68
+ if (this.inputSource === InputSource_1.InputSource.Adf) {
69
+ parsed.ScanSettings.InputSource = {
70
+ _: "Feeder", // The text content
71
+ $: { xmlns: "http://www.pwg.org/schemas/2010/12/sm" }, // The namespace
72
+ };
73
+ }
74
+ else {
75
+ parsed.ScanSettings.InputSource = {
76
+ _: "Platen", // The text content
77
+ $: { xmlns: "http://www.pwg.org/schemas/2010/12/sm" }, // The namespace
78
+ };
79
+ }
80
+ parsed.ScanSettings.Duplex = this.isDuplex;
81
+ const builder = new xml2js_1.default.Builder({
82
+ xmldec: { version: "1.0", encoding: "UTF-8" },
83
+ renderOpts: { pretty: true, indent: "\t", newline: "\n" },
84
+ });
85
+ return builder.buildObject(parsed);
86
+ }
87
+ get xResolution() {
88
+ return this.resolution;
89
+ }
90
+ get yResolution() {
91
+ return this.resolution;
92
+ }
93
+ }
94
+ exports.default = EsclScanJobSettings;
95
+ //# sourceMappingURL=EsclScanJobSettings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EsclScanJobSettings.js","sourceRoot":"","sources":["../../src/hpModels/EsclScanJobSettings.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,75 @@
1
+ import { InputSource } from "../type/InputSource";
2
+ import { IScanStatus } from "./IScanStatus";
3
+ import { ScannerState } from "./ScannerState";
4
+ import { AdfState } from "./AdfState";
5
+ export declare enum JobStateReason {
6
+ JobCompletedSuccessfully = "JobCompletedSuccessfully",
7
+ JobCanceledByUser = "JobCanceledByUser",
8
+ JobScanning = "JobScanning"
9
+ }
10
+ export declare enum eSCLJobState {
11
+ Processing = "Processing",
12
+ Completed = "Completed",
13
+ Canceled = "Canceled"
14
+ }
15
+ interface EsclJobInfoData {
16
+ "pwg:JobUri": {
17
+ "0": string;
18
+ };
19
+ "pwg:JobUuid": {
20
+ "0": string;
21
+ };
22
+ "scan:Age": {
23
+ "0": string;
24
+ };
25
+ "pwg:ImagesCompleted": {
26
+ "0": string;
27
+ };
28
+ "pwg:ImagesToTransfer": {
29
+ "0": string;
30
+ };
31
+ "pwg:JobState": {
32
+ "0": string;
33
+ };
34
+ "pwg:JobStateReasons": {
35
+ "0": {
36
+ "pwg:JobStateReason": {
37
+ "0": string;
38
+ };
39
+ };
40
+ };
41
+ }
42
+ export declare class EsclJobInfo {
43
+ private readonly data;
44
+ constructor(data: EsclJobInfoData);
45
+ getJobUri(): string;
46
+ getJobUuid(): string;
47
+ getAge(): string;
48
+ getJobState(): eSCLJobState;
49
+ getJobStateReason(): JobStateReason;
50
+ }
51
+ export interface EsclScanStatusData {
52
+ "scan:ScannerStatus": {
53
+ "pwg:State": {
54
+ "0": string;
55
+ };
56
+ "scan:AdfState": {
57
+ "0": string;
58
+ };
59
+ "scan:Jobs"?: {
60
+ "scan:JobInfo": EsclJobInfoData[];
61
+ }[];
62
+ };
63
+ }
64
+ export default class EsclScanStatus implements IScanStatus {
65
+ private readonly data;
66
+ constructor(data: EsclScanStatusData);
67
+ static createScanStatus(content: string): Promise<EsclScanStatus>;
68
+ get scannerState(): ScannerState;
69
+ get adfState(): AdfState;
70
+ isLoaded(): boolean;
71
+ getInputSource(): InputSource;
72
+ findJobByUri(jobLocation: string): EsclJobInfo | undefined;
73
+ getJobInfos(): EsclJobInfo[];
74
+ }
75
+ export {};
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.EsclJobInfo = exports.eSCLJobState = exports.JobStateReason = void 0;
7
+ const InputSource_1 = require("../type/InputSource");
8
+ const ParseXmlString_1 = require("./ParseXmlString");
9
+ const ScannerState_1 = require("./ScannerState");
10
+ const AdfState_1 = require("./AdfState");
11
+ const EnumUtils_1 = require("./EnumUtils");
12
+ const PathHelper_1 = __importDefault(require("../PathHelper"));
13
+ var JobStateReason;
14
+ (function (JobStateReason) {
15
+ JobStateReason["JobCompletedSuccessfully"] = "JobCompletedSuccessfully";
16
+ JobStateReason["JobCanceledByUser"] = "JobCanceledByUser";
17
+ JobStateReason["JobScanning"] = "JobScanning";
18
+ })(JobStateReason || (exports.JobStateReason = JobStateReason = {}));
19
+ var eSCLJobState;
20
+ (function (eSCLJobState) {
21
+ eSCLJobState["Processing"] = "Processing";
22
+ eSCLJobState["Completed"] = "Completed";
23
+ eSCLJobState["Canceled"] = "Canceled";
24
+ })(eSCLJobState || (exports.eSCLJobState = eSCLJobState = {}));
25
+ class EsclJobInfo {
26
+ constructor(data) {
27
+ this.data = data;
28
+ }
29
+ getJobUri() {
30
+ return this.data["pwg:JobUri"]["0"];
31
+ }
32
+ getJobUuid() {
33
+ return this.data["pwg:JobUuid"]["0"];
34
+ }
35
+ getAge() {
36
+ return this.data["scan:Age"]["0"];
37
+ }
38
+ getJobState() {
39
+ return EnumUtils_1.EnumUtils.getState("JobState", eSCLJobState, this.data["pwg:JobState"]["0"]);
40
+ }
41
+ getJobStateReason() {
42
+ const jobStateReasons = this.data["pwg:JobStateReasons"]["0"];
43
+ return EnumUtils_1.EnumUtils.getState("JobStateReason", JobStateReason, jobStateReasons["pwg:JobStateReason"]["0"]);
44
+ }
45
+ }
46
+ exports.EsclJobInfo = EsclJobInfo;
47
+ class EsclScanStatus {
48
+ constructor(data) {
49
+ this.data = data;
50
+ }
51
+ static async createScanStatus(content) {
52
+ const parsed = await (0, ParseXmlString_1.parseXmlString)(content);
53
+ return new EsclScanStatus(parsed);
54
+ }
55
+ get scannerState() {
56
+ const scannerStateStr = this.data["scan:ScannerStatus"]["pwg:State"]["0"];
57
+ return EnumUtils_1.EnumUtils.getState("ScannerState", ScannerState_1.ScannerState, scannerStateStr);
58
+ }
59
+ get adfState() {
60
+ if (Object.prototype.hasOwnProperty.call(this.data["scan:ScannerStatus"], "scan:AdfState")) {
61
+ //not all printers have an automatic document feeder
62
+ const adfState = this.data["scan:ScannerStatus"]["scan:AdfState"]["0"];
63
+ // map value to the one of ScanStatus for commodity
64
+ if (adfState === "ScannerAdfEmpty") {
65
+ return AdfState_1.AdfState.Empty;
66
+ }
67
+ else if (adfState === "ScannerAdfLoaded") {
68
+ return AdfState_1.AdfState.Loaded;
69
+ }
70
+ else {
71
+ console.error(`"${adfState}" is not a know AdfState value, you would be kind as a reader of this message to fill an issue to help at better state handling.`);
72
+ }
73
+ return adfState;
74
+ }
75
+ else {
76
+ return AdfState_1.AdfState.Empty;
77
+ }
78
+ }
79
+ isLoaded() {
80
+ return this.adfState === AdfState_1.AdfState.Loaded;
81
+ }
82
+ getInputSource() {
83
+ return this.isLoaded() ? InputSource_1.InputSource.Adf : InputSource_1.InputSource.Platen;
84
+ }
85
+ findJobByUri(jobLocation) {
86
+ return this.getJobInfos().find((x) => jobLocation === PathHelper_1.default.getPathFromHttpLocation(x.getJobUri()) ||
87
+ jobLocation === PathHelper_1.default.getPathFromHttpLocation(x.getJobUri()) + "/");
88
+ }
89
+ getJobInfos() {
90
+ const jobs = this.data["scan:ScannerStatus"]["scan:Jobs"];
91
+ if (jobs === undefined || jobs.length === 0) {
92
+ return [];
93
+ }
94
+ return jobs[0]["scan:JobInfo"].map((x) => new EsclJobInfo(x));
95
+ }
96
+ }
97
+ exports.default = EsclScanStatus;
98
+ //# sourceMappingURL=EsclScanStatus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EsclScanStatus.js","sourceRoot":"","sources":["../../src/hpModels/EsclScanStatus.ts"],"names":[],"mappings":"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"}
@@ -4,16 +4,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const Event_1 = __importDefault(require("./Event"));
7
- const xml2js_1 = require("xml2js");
8
- const parser = new xml2js_1.Parser();
9
- const util_1 = require("util");
10
- const parseString = (0, util_1.promisify)(parser.parseString);
7
+ const ParseXmlString_1 = require("./ParseXmlString");
11
8
  class EventTable {
12
9
  constructor(data) {
13
10
  this.data = data;
14
11
  }
15
12
  static async createEtagEventTable(content, etagReceived) {
16
- const parsed = await parseString(content);
13
+ const parsed = await (0, ParseXmlString_1.parseXmlString)(content);
17
14
  return {
18
15
  etag: etagReceived,
19
16
  eventTable: new EventTable(parsed),
@@ -1 +1 @@
1
- {"version":3,"file":"EventTable.js","sourceRoot":"","sources":["../../src/hpModels/EventTable.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;AAEb,oDAA2C;AAC3C,mCAAgC;AAChC,MAAM,MAAM,GAAG,IAAI,eAAM,EAAE,CAAC;AAC5B,+BAAiC;AACjC,MAAM,WAAW,GAAG,IAAA,gBAAS,EAAyB,MAAM,CAAC,WAAW,CAAC,CAAC;AAa1E,MAAqB,UAAU;IAE7B,YAAY,IAAoB;QAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAC/B,OAAe,EACf,YAAoB;QAEpB,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC;QAC1C,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,UAAU,EAAE,IAAI,UAAU,CAAC,MAAM,CAAC;SACnC,CAAC;IACJ,CAAC;IAED,IAAI,MAAM;QACR,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC9C,IAAI,UAAU,IAAI,IAAI,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC;YACzD,OAAO,UAAU,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,eAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACN,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;CACF;AAzBD,6BAyBC"}
1
+ {"version":3,"file":"EventTable.js","sourceRoot":"","sources":["../../src/hpModels/EventTable.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;AAEb,oDAA2C;AAC3C,qDAAkD;AAalD,MAAqB,UAAU;IAE7B,YAAY,IAAoB;QAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAC/B,OAAe,EACf,YAAoB;QAEpB,MAAM,MAAM,GAAG,MAAM,IAAA,+BAAc,EAAiB,OAAO,CAAC,CAAC;QAC7D,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,UAAU,EAAE,IAAI,UAAU,CAAC,MAAM,CAAC;SACnC,CAAC;IACJ,CAAC;IAED,IAAI,MAAM;QACR,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC9C,IAAI,UAAU,IAAI,IAAI,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC;YACzD,OAAO,UAAU,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,eAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACN,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;CACF;AAzBD,6BAyBC"}
@@ -0,0 +1,5 @@
1
+ export interface IScanJobSettings {
2
+ toXML(): Promise<string>;
3
+ get xResolution(): number;
4
+ get yResolution(): number;
5
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IScanJobSettings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IScanJobSettings.js","sourceRoot":"","sources":["../../src/hpModels/IScanJobSettings.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import { InputSource } from "../type/InputSource";
2
+ import { ScannerState } from "./ScannerState";
3
+ import { AdfState } from "./AdfState";
4
+ export interface IScanStatus {
5
+ readonly scannerState: ScannerState;
6
+ readonly adfState: AdfState;
7
+ isLoaded(): boolean;
8
+ getInputSource(): InputSource;
9
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=IScanStatus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IScanStatus.js","sourceRoot":"","sources":["../../src/hpModels/IScanStatus.ts"],"names":[],"mappings":""}
@@ -23,14 +23,23 @@ export interface JobData {
23
23
  "j:JobState": string[];
24
24
  };
25
25
  }
26
+ export declare enum JobState {
27
+ Completed = "Completed",
28
+ Processing = "Processing",
29
+ Canceled = "Canceled"
30
+ }
31
+ export declare enum PageState {
32
+ ReadyToUpload = "ReadyToUpload",
33
+ PreparingScan = "PreparingScan"
34
+ }
26
35
  export default class Job {
27
36
  private readonly data;
28
37
  constructor(data: JobData);
29
38
  static createJob(content: string): Promise<Job>;
30
39
  get currentPageNumber(): string | null;
31
40
  get totalPageNumber(): number | null;
32
- get jobState(): "Completed" | "Processing" | "ReadyToUpload" | "Canceled" | string;
33
- get pageState(): string | null;
41
+ get jobState(): JobState;
42
+ get pageState(): PageState | null;
34
43
  get binaryURL(): string | null;
35
44
  get imageWidth(): number | null;
36
45
  get imageHeight(): number | null;
@@ -1,15 +1,25 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const xml2js_1 = require("xml2js");
4
- const parser = new xml2js_1.Parser();
5
- const util_1 = require("util");
6
- const parseString = (0, util_1.promisify)(parser.parseString);
3
+ exports.PageState = exports.JobState = void 0;
4
+ const ParseXmlString_1 = require("./ParseXmlString");
5
+ const EnumUtils_1 = require("./EnumUtils");
6
+ var JobState;
7
+ (function (JobState) {
8
+ JobState["Completed"] = "Completed";
9
+ JobState["Processing"] = "Processing";
10
+ JobState["Canceled"] = "Canceled";
11
+ })(JobState || (exports.JobState = JobState = {}));
12
+ var PageState;
13
+ (function (PageState) {
14
+ PageState["ReadyToUpload"] = "ReadyToUpload";
15
+ PageState["PreparingScan"] = "PreparingScan";
16
+ })(PageState || (exports.PageState = PageState = {}));
7
17
  class Job {
8
18
  constructor(data) {
9
19
  this.data = data;
10
20
  }
11
21
  static async createJob(content) {
12
- const parsed = await parseString(content);
22
+ const parsed = await (0, ParseXmlString_1.parseXmlString)(content);
13
23
  return new Job(parsed);
14
24
  }
15
25
  get currentPageNumber() {
@@ -28,12 +38,13 @@ class Job {
28
38
  return null;
29
39
  }
30
40
  get jobState() {
31
- return this.data["j:Job"]["j:JobState"][0];
41
+ const jobStateStr = this.data["j:Job"]["j:JobState"][0];
42
+ return EnumUtils_1.EnumUtils.getState("JobState", JobState, jobStateStr);
32
43
  }
33
44
  get pageState() {
34
45
  const preScanPage = this.data["j:Job"].ScanJob[0].PreScanPage;
35
46
  if (preScanPage) {
36
- return preScanPage[0].PageState[0];
47
+ return EnumUtils_1.EnumUtils.getState("PageState", PageState, preScanPage[0].PageState[0]);
37
48
  }
38
49
  else {
39
50
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"Job.js","sourceRoot":"","sources":["../../src/hpModels/Job.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Job.js","sourceRoot":"","sources":["../../src/hpModels/Job.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare const parseXmlString: <T>(value: string) => Promise<T>;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseXmlString = void 0;
4
+ const xml2js_1 = require("xml2js");
5
+ const parser = new xml2js_1.Parser();
6
+ const parseXmlString = (value) => new Promise((resolve, reject) => {
7
+ parser.parseString(value, (error, result) => {
8
+ if (error) {
9
+ reject(error);
10
+ }
11
+ else {
12
+ resolve(result);
13
+ }
14
+ });
15
+ });
16
+ exports.parseXmlString = parseXmlString;
17
+ //# sourceMappingURL=ParseXmlString.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParseXmlString.js","sourceRoot":"","sources":["../../src/hpModels/ParseXmlString.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAChC,MAAM,MAAM,GAAG,IAAI,eAAM,EAAE,CAAC;AACrB,MAAM,cAAc,GAAG,CAAI,KAAa,EAAc,EAAE,CAC7D,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,MAAe,EAAE,EAAE;QACnD,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,MAAW,CAAC,CAAC;QACvB,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AATQ,QAAA,cAAc,kBAStB"}
@@ -33,4 +33,5 @@ export default class ScanCaps {
33
33
  get adfDuplexMaxHeight(): number | null;
34
34
  get hasAdfDetectPaperLoaded(): boolean;
35
35
  get hasAdfDuplex(): boolean;
36
+ get isEscl(): boolean;
36
37
  }
@@ -1,15 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const xml2js_1 = require("xml2js");
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("./ParseXmlString");
7
4
  class ScanCaps {
8
5
  constructor(data) {
9
6
  this.data = data;
10
7
  }
11
8
  static async createScanCaps(content) {
12
- const parsed = await parseString(content);
9
+ const parsed = await (0, ParseXmlString_1.parseXmlString)(content);
13
10
  return new ScanCaps(parsed);
14
11
  }
15
12
  get platenMaxWidth() {
@@ -78,6 +75,9 @@ class ScanCaps {
78
75
  }
79
76
  return false;
80
77
  }
78
+ get isEscl() {
79
+ return false;
80
+ }
81
81
  }
82
82
  exports.default = ScanCaps;
83
83
  //# sourceMappingURL=ScanCaps.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ScanCaps.js","sourceRoot":"","sources":["../../src/hpModels/ScanCaps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ScanCaps.js","sourceRoot":"","sources":["../../src/hpModels/ScanCaps.ts"],"names":[],"mappings":"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"}
@@ -20,4 +20,5 @@ export default class ScanJobManifest {
20
20
  constructor(data: ScanJobManifestData);
21
21
  static createScanJobManifest(content: string): Promise<ScanJobManifest>;
22
22
  get ScanCapsURI(): string | null;
23
+ get StatusURI(): string | null;
23
24
  }
@@ -1,15 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const xml2js_1 = require("xml2js");
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("./ParseXmlString");
7
4
  class ScanJobManifest {
8
5
  constructor(data) {
9
6
  this.data = data;
10
7
  }
11
8
  static async createScanJobManifest(content) {
12
- const parsed = await parseString(content);
9
+ const parsed = await (0, ParseXmlString_1.parseXmlString)(content);
13
10
  return new ScanJobManifest(parsed);
14
11
  }
15
12
  get ScanCapsURI() {
@@ -19,6 +16,13 @@ class ScanJobManifest {
19
16
  }
20
17
  return (this.data["man:Manifest"]["map:ResourceMap"]["0"]["map:ResourceLink"][0]["dd:ResourceURI"][0] + scanCaps["map:ResourceLink"][0]["dd:ResourceURI"][0]);
21
18
  }
19
+ get StatusURI() {
20
+ const scanCaps = this.data["man:Manifest"]["map:ResourceMap"]["0"]["map:ResourceNode"].find((x) => x["map:ResourceType"][0]["scan:ScanResourceType"][0] === "Status");
21
+ if (scanCaps === undefined) {
22
+ return null;
23
+ }
24
+ return (this.data["man:Manifest"]["map:ResourceMap"]["0"]["map:ResourceLink"][0]["dd:ResourceURI"][0] + scanCaps["map:ResourceLink"][0]["dd:ResourceURI"][0]);
25
+ }
22
26
  }
23
27
  exports.default = ScanJobManifest;
24
28
  //# sourceMappingURL=ScanJobManifest.js.map