node-hp-scan-to 1.2.2 → 1.3.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 (283) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +47 -10
  3. package/dist/Destination.js +36 -84
  4. package/dist/Destination.js.map +1 -1
  5. package/dist/DeviceCapabilities.d.ts +4 -0
  6. package/dist/DeviceCapabilities.js +3 -0
  7. package/dist/DeviceCapabilities.js.map +1 -0
  8. package/dist/DiscoveryTree.d.ts +16 -0
  9. package/dist/DiscoveryTree.js +38 -0
  10. package/dist/DiscoveryTree.js.map +1 -0
  11. package/dist/Event.d.ts +1 -1
  12. package/dist/Event.js +24 -39
  13. package/dist/Event.js.map +1 -1
  14. package/dist/EventTable.d.ts +5 -0
  15. package/dist/EventTable.js +24 -18
  16. package/dist/EventTable.js.map +1 -1
  17. package/dist/HPApi.d.ts +26 -18
  18. package/dist/HPApi.js +386 -461
  19. package/dist/HPApi.js.map +1 -1
  20. package/dist/Job.d.ts +8 -7
  21. package/dist/Job.js +69 -86
  22. package/dist/Job.js.map +1 -1
  23. package/dist/JpegUtil.js +73 -82
  24. package/dist/JpegUtil.js.map +1 -1
  25. package/dist/KnownShortcut.d.ts +1 -0
  26. package/dist/KnownShortcut.js +3 -0
  27. package/dist/KnownShortcut.js.map +1 -0
  28. package/dist/PathHelper.d.ts +2 -1
  29. package/dist/PathHelper.js +41 -68
  30. package/dist/PathHelper.js.map +1 -1
  31. package/dist/ScanCaps.d.ts +7 -0
  32. package/dist/ScanCaps.js +17 -0
  33. package/dist/ScanCaps.js.map +1 -0
  34. package/dist/ScanContent.js +18 -73
  35. package/dist/ScanContent.js.map +1 -1
  36. package/dist/ScanJobManifest.d.ts +23 -0
  37. package/dist/ScanJobManifest.js +24 -0
  38. package/dist/ScanJobManifest.js.map +1 -0
  39. package/dist/ScanJobSettings.d.ts +3 -1
  40. package/dist/ScanJobSettings.js +48 -88
  41. package/dist/ScanJobSettings.js.map +1 -1
  42. package/dist/ScanStatus.d.ts +1 -0
  43. package/dist/ScanStatus.js +27 -28
  44. package/dist/ScanStatus.js.map +1 -1
  45. package/dist/WalkupScanDestination.d.ts +11 -13
  46. package/dist/WalkupScanDestination.js +32 -35
  47. package/dist/WalkupScanDestination.js.map +1 -1
  48. package/dist/WalkupScanDestinations.d.ts +1 -0
  49. package/dist/WalkupScanDestinations.js +21 -18
  50. package/dist/WalkupScanDestinations.js.map +1 -1
  51. package/dist/WalkupScanManifest.d.ts +23 -0
  52. package/dist/WalkupScanManifest.js +25 -0
  53. package/dist/WalkupScanManifest.js.map +1 -0
  54. package/dist/WalkupScanToCompCaps.d.ts +12 -0
  55. package/dist/WalkupScanToCompCaps.js +20 -0
  56. package/dist/WalkupScanToCompCaps.js.map +1 -0
  57. package/dist/WalkupScanToCompDestination.d.ts +10 -14
  58. package/dist/WalkupScanToCompDestination.js +32 -38
  59. package/dist/WalkupScanToCompDestination.js.map +1 -1
  60. package/dist/WalkupScanToCompDestinations.d.ts +1 -0
  61. package/dist/WalkupScanToCompDestinations.js +21 -18
  62. package/dist/WalkupScanToCompDestinations.js.map +1 -1
  63. package/dist/WalkupScanToCompEvent.d.ts +2 -1
  64. package/dist/WalkupScanToCompEvent.js +14 -11
  65. package/dist/WalkupScanToCompEvent.js.map +1 -1
  66. package/dist/WalkupScanToCompManifest.d.ts +23 -0
  67. package/dist/WalkupScanToCompManifest.js +25 -0
  68. package/dist/WalkupScanToCompManifest.js.map +1 -0
  69. package/dist/delay.d.ts +1 -0
  70. package/dist/delay.js +10 -0
  71. package/dist/delay.js.map +1 -0
  72. package/dist/fixJpegSize.d.ts +19 -0
  73. package/dist/fixJpegSize.js +292 -0
  74. package/dist/fixJpegSize.js.map +1 -0
  75. package/dist/index.js +209 -607
  76. package/dist/index.js.map +1 -1
  77. package/dist/listening.d.ts +9 -0
  78. package/dist/listening.js +108 -0
  79. package/dist/listening.js.map +1 -0
  80. package/dist/models/Destination.d.ts +8 -0
  81. package/dist/models/Destination.js +68 -0
  82. package/dist/models/Destination.js.map +1 -0
  83. package/dist/models/DiscoveryTree.d.ts +16 -0
  84. package/dist/models/DiscoveryTree.js +38 -0
  85. package/dist/models/DiscoveryTree.js.map +1 -0
  86. package/dist/models/Event.d.ts +21 -0
  87. package/dist/models/Event.js +32 -0
  88. package/dist/models/Event.js.map +1 -0
  89. package/dist/models/EventTable.d.ts +16 -0
  90. package/dist/models/EventTable.js +33 -0
  91. package/dist/models/EventTable.js.map +1 -0
  92. package/dist/models/Job.d.ts +37 -0
  93. package/dist/models/Job.js +78 -0
  94. package/dist/models/Job.js.map +1 -0
  95. package/dist/models/ScanCaps.d.ts +7 -0
  96. package/dist/models/ScanCaps.js +17 -0
  97. package/dist/models/ScanCaps.js.map +1 -0
  98. package/dist/models/ScanJobManifest.d.ts +23 -0
  99. package/dist/models/ScanJobManifest.js +24 -0
  100. package/dist/models/ScanJobManifest.js.map +1 -0
  101. package/dist/models/ScanJobSettings.d.ts +8 -0
  102. package/dist/models/ScanJobSettings.js +56 -0
  103. package/dist/models/ScanJobSettings.js.map +1 -0
  104. package/dist/models/WalkupScanDestination.d.ts +22 -0
  105. package/dist/models/WalkupScanDestination.js +38 -0
  106. package/dist/models/WalkupScanDestination.js.map +1 -0
  107. package/dist/models/WalkupScanDestinations.d.ts +12 -0
  108. package/dist/models/WalkupScanDestinations.js +30 -0
  109. package/dist/models/WalkupScanDestinations.js.map +1 -0
  110. package/dist/models/WalkupScanManifest.d.ts +23 -0
  111. package/dist/models/WalkupScanManifest.js +25 -0
  112. package/dist/models/WalkupScanManifest.js.map +1 -0
  113. package/dist/models/WalkupScanToCompCaps.d.ts +12 -0
  114. package/dist/models/WalkupScanToCompCaps.js +20 -0
  115. package/dist/models/WalkupScanToCompCaps.js.map +1 -0
  116. package/dist/models/WalkupScanToCompDestination.d.ts +22 -0
  117. package/dist/models/WalkupScanToCompDestination.js +38 -0
  118. package/dist/models/WalkupScanToCompDestination.js.map +1 -0
  119. package/dist/models/WalkupScanToCompDestinations.d.ts +12 -0
  120. package/dist/models/WalkupScanToCompDestinations.js +30 -0
  121. package/dist/models/WalkupScanToCompDestinations.js.map +1 -0
  122. package/dist/models/WalkupScanToCompEvent.d.ts +11 -0
  123. package/dist/models/WalkupScanToCompEvent.js +20 -0
  124. package/dist/models/WalkupScanToCompEvent.js.map +1 -0
  125. package/dist/models/WalkupScanToCompManifest.d.ts +23 -0
  126. package/dist/models/WalkupScanToCompManifest.js +25 -0
  127. package/dist/models/WalkupScanToCompManifest.js.map +1 -0
  128. package/dist/readDeviceCapabilities.d.ts +2 -0
  129. package/dist/readDeviceCapabilities.js +41 -0
  130. package/dist/readDeviceCapabilities.js.map +1 -0
  131. package/dist/scanProcess.d.ts +19 -0
  132. package/dist/scanProcess.js +292 -0
  133. package/dist/scanProcess.js.map +1 -0
  134. package/dist/scanProcessing.d.ts +20 -0
  135. package/dist/scanProcessing.js +320 -0
  136. package/dist/scanProcessing.js.map +1 -0
  137. package/dist/src/Destination.d.ts +8 -0
  138. package/dist/src/Destination.js +68 -0
  139. package/dist/src/Destination.js.map +1 -0
  140. package/dist/src/DiscoveryTree.d.ts +16 -0
  141. package/dist/src/DiscoveryTree.js +38 -0
  142. package/dist/src/DiscoveryTree.js.map +1 -0
  143. package/dist/src/Event.d.ts +21 -0
  144. package/dist/src/Event.js +32 -0
  145. package/dist/src/Event.js.map +1 -0
  146. package/dist/src/EventTable.d.ts +16 -0
  147. package/dist/src/EventTable.js +33 -0
  148. package/dist/src/EventTable.js.map +1 -0
  149. package/dist/src/HPApi.d.ts +50 -0
  150. package/dist/src/HPApi.js +454 -0
  151. package/dist/src/HPApi.js.map +1 -0
  152. package/dist/src/Job.d.ts +37 -0
  153. package/dist/src/Job.js +78 -0
  154. package/dist/src/Job.js.map +1 -0
  155. package/dist/src/JpegUtil.d.ts +26 -0
  156. package/dist/src/JpegUtil.js +229 -0
  157. package/dist/src/JpegUtil.js.map +1 -0
  158. package/dist/src/KnownShortcut.d.ts +1 -0
  159. package/dist/src/KnownShortcut.js +3 -0
  160. package/dist/src/KnownShortcut.js.map +1 -0
  161. package/dist/src/PathHelper.d.ts +6 -0
  162. package/dist/src/PathHelper.js +52 -0
  163. package/dist/src/PathHelper.js.map +1 -0
  164. package/dist/src/ScanCaps.d.ts +7 -0
  165. package/dist/src/ScanCaps.js +17 -0
  166. package/dist/src/ScanCaps.js.map +1 -0
  167. package/dist/src/ScanJobManifest.d.ts +23 -0
  168. package/dist/src/ScanJobManifest.js +24 -0
  169. package/dist/src/ScanJobManifest.js.map +1 -0
  170. package/dist/src/ScanJobSettings.d.ts +8 -0
  171. package/dist/src/ScanJobSettings.js +56 -0
  172. package/dist/src/ScanJobSettings.js.map +1 -0
  173. package/dist/src/ScanStatus.d.ts +19 -0
  174. package/dist/src/ScanStatus.js +35 -0
  175. package/dist/src/ScanStatus.js.map +1 -0
  176. package/dist/src/WalkupScanDestination.d.ts +22 -0
  177. package/dist/src/WalkupScanDestination.js +38 -0
  178. package/dist/src/WalkupScanDestination.js.map +1 -0
  179. package/dist/src/WalkupScanDestinations.d.ts +12 -0
  180. package/dist/src/WalkupScanDestinations.js +30 -0
  181. package/dist/src/WalkupScanDestinations.js.map +1 -0
  182. package/dist/src/WalkupScanManifest.d.ts +23 -0
  183. package/dist/src/WalkupScanManifest.js +25 -0
  184. package/dist/src/WalkupScanManifest.js.map +1 -0
  185. package/dist/src/WalkupScanToCompCaps.d.ts +12 -0
  186. package/dist/src/WalkupScanToCompCaps.js +20 -0
  187. package/dist/src/WalkupScanToCompCaps.js.map +1 -0
  188. package/dist/src/WalkupScanToCompDestination.d.ts +22 -0
  189. package/dist/src/WalkupScanToCompDestination.js +38 -0
  190. package/dist/src/WalkupScanToCompDestination.js.map +1 -0
  191. package/dist/src/WalkupScanToCompDestinations.d.ts +12 -0
  192. package/dist/src/WalkupScanToCompDestinations.js +30 -0
  193. package/dist/src/WalkupScanToCompDestinations.js.map +1 -0
  194. package/dist/src/WalkupScanToCompEvent.d.ts +11 -0
  195. package/dist/src/WalkupScanToCompEvent.js +20 -0
  196. package/dist/src/WalkupScanToCompEvent.js.map +1 -0
  197. package/dist/src/WalkupScanToCompManifest.d.ts +23 -0
  198. package/dist/src/WalkupScanToCompManifest.js +25 -0
  199. package/dist/src/WalkupScanToCompManifest.js.map +1 -0
  200. package/dist/src/delay.d.ts +1 -0
  201. package/dist/src/delay.js +10 -0
  202. package/dist/src/delay.js.map +1 -0
  203. package/dist/test/DiscoveryTree.test.d.ts +1 -0
  204. package/dist/test/DiscoveryTree.test.js +68 -0
  205. package/dist/test/DiscoveryTree.test.js.map +1 -0
  206. package/dist/test/EtagEventTable.test.d.ts +1 -0
  207. package/dist/test/EtagEventTable.test.js +93 -0
  208. package/dist/test/EtagEventTable.test.js.map +1 -0
  209. package/dist/test/Job.test.d.ts +1 -0
  210. package/dist/test/Job.test.js +104 -0
  211. package/dist/test/Job.test.js.map +1 -0
  212. package/dist/test/JpegUtil.test.d.ts +1 -0
  213. package/dist/test/JpegUtil.test.js +51 -0
  214. package/dist/test/JpegUtil.test.js.map +1 -0
  215. package/dist/test/PathHelper.test.d.ts +1 -0
  216. package/dist/test/PathHelper.test.js +99 -0
  217. package/dist/test/PathHelper.test.js.map +1 -0
  218. package/dist/test/ScanJobManifest.test.d.ts +1 -0
  219. package/dist/test/ScanJobManifest.test.js +56 -0
  220. package/dist/test/ScanJobManifest.test.js.map +1 -0
  221. package/dist/test/ScanJobSettings.test.d.ts +1 -0
  222. package/dist/test/ScanJobSettings.test.js +53 -0
  223. package/dist/test/ScanJobSettings.test.js.map +1 -0
  224. package/dist/test/ScanStatus.test.d.ts +1 -0
  225. package/dist/test/ScanStatus.test.js +75 -0
  226. package/dist/test/ScanStatus.test.js.map +1 -0
  227. package/dist/test/WalkupScanDestination.test.d.ts +1 -0
  228. package/dist/test/WalkupScanDestination.test.js +80 -0
  229. package/dist/test/WalkupScanDestination.test.js.map +1 -0
  230. package/dist/test/WalkupScanDestinations.test.d.ts +1 -0
  231. package/dist/test/WalkupScanDestinations.test.js +68 -0
  232. package/dist/test/WalkupScanDestinations.test.js.map +1 -0
  233. package/dist/test/WalkupScanManifest.test.d.ts +1 -0
  234. package/dist/test/WalkupScanManifest.test.js +46 -0
  235. package/dist/test/WalkupScanManifest.test.js.map +1 -0
  236. package/dist/test/WalkupScanToCompCaps.test.d.ts +1 -0
  237. package/dist/test/WalkupScanToCompCaps.test.js +56 -0
  238. package/dist/test/WalkupScanToCompCaps.test.js.map +1 -0
  239. package/dist/test/WalkupScanToCompDestination.test.d.ts +1 -0
  240. package/dist/test/WalkupScanToCompDestination.test.js +58 -0
  241. package/dist/test/WalkupScanToCompDestination.test.js.map +1 -0
  242. package/dist/test/WalkupScanToCompDestinations.test.d.ts +1 -0
  243. package/dist/test/WalkupScanToCompDestinations.test.js +58 -0
  244. package/dist/test/WalkupScanToCompDestinations.test.js.map +1 -0
  245. package/dist/test/WalkupScanToCompEvent.test.d.ts +1 -0
  246. package/dist/test/WalkupScanToCompEvent.test.js +46 -0
  247. package/dist/test/WalkupScanToCompEvent.test.js.map +1 -0
  248. package/dist/test/WalkupScanToCompManifest.test.d.ts +1 -0
  249. package/dist/test/WalkupScanToCompManifest.test.js +46 -0
  250. package/dist/test/WalkupScanToCompManifest.test.js.map +1 -0
  251. package/dist/test/clean.d.ts +1 -0
  252. package/dist/test/clean.js +21 -0
  253. package/dist/test/clean.js.map +1 -0
  254. package/package.json +27 -18
  255. package/src/Destination.ts +1 -1
  256. package/src/DeviceCapabilities.ts +4 -0
  257. package/src/DiscoveryTree.ts +56 -0
  258. package/src/Event.ts +17 -7
  259. package/src/EventTable.ts +20 -0
  260. package/src/HPApi.ts +245 -103
  261. package/src/Job.ts +51 -29
  262. package/src/JpegUtil.ts +8 -4
  263. package/src/KnownShortcut.ts +6 -0
  264. package/src/PathHelper.ts +47 -13
  265. package/src/ScanCaps.ts +19 -0
  266. package/src/ScanContent.ts +4 -1
  267. package/src/ScanJobManifest.ts +55 -0
  268. package/src/ScanJobSettings.ts +18 -3
  269. package/src/ScanStatus.ts +9 -0
  270. package/src/WalkupScanDestination.ts +42 -18
  271. package/src/WalkupScanDestinations.ts +12 -0
  272. package/src/WalkupScanManifest.ts +59 -0
  273. package/src/WalkupScanToCompCaps.ts +36 -0
  274. package/src/WalkupScanToCompDestination.ts +38 -24
  275. package/src/WalkupScanToCompDestinations.ts +12 -0
  276. package/src/WalkupScanToCompEvent.ts +15 -3
  277. package/src/WalkupScanToCompManifest.ts +59 -0
  278. package/src/delay.ts +5 -0
  279. package/src/index.ts +267 -465
  280. package/src/listening.ts +145 -0
  281. package/src/readDeviceCapabilities.ts +46 -0
  282. package/src/scanProcessing.ts +535 -0
  283. package/tsconfig.json +1 -1
@@ -0,0 +1,145 @@
1
+ import HPApi from "./HPApi";
2
+ import Event from "./Event";
3
+ import Destination from "./Destination";
4
+ import { DeviceCapabilities } from "./DeviceCapabilities";
5
+
6
+ export async function waitScanRequest(compEventURI: string): Promise<boolean> {
7
+ const waitMax = 50;
8
+ for (let i = 0; i < waitMax; i++) {
9
+ let walkupScanToCompEvent = await HPApi.getWalkupScanToCompEvent(
10
+ compEventURI
11
+ );
12
+ let message = walkupScanToCompEvent.eventType;
13
+ if (message === "HostSelected") {
14
+ // this ok to wait
15
+ } else if (message === "ScanRequested") {
16
+ break;
17
+ } else if (message === "ScanNewPageRequested") {
18
+ break;
19
+ } else if (message === "ScanPagesComplete") {
20
+ console.log("no more page to scan, scan is finished");
21
+ return false;
22
+ } else {
23
+ console.log(`Unknown eventType: ${message}`);
24
+ return false;
25
+ }
26
+
27
+ console.log(`Waiting user input: ${i + 1}/${waitMax}`);
28
+ await new Promise((resolve) => setTimeout(resolve, 1000)); //wait 1s
29
+ }
30
+ return true;
31
+ }
32
+
33
+ export async function waitForScanEvent(
34
+ resourceURI: string,
35
+ afterEtag: string | null = null
36
+ ): Promise<Event> {
37
+ console.log("Start listening for new ScanEvent");
38
+
39
+ let eventTable = await HPApi.getEvents(afterEtag ?? "");
40
+ let acceptedScanEvent = null;
41
+ let currentEtag = eventTable.etag;
42
+ while (acceptedScanEvent == null) {
43
+ eventTable = await HPApi.getEvents(currentEtag, 1200);
44
+ currentEtag = eventTable.etag;
45
+
46
+ acceptedScanEvent = eventTable.eventTable.events.find(
47
+ (ev) =>
48
+ ev.isScanEvent &&
49
+ ev.destinationURI &&
50
+ ev.destinationURI.indexOf(resourceURI) >= 0
51
+ );
52
+ }
53
+ return acceptedScanEvent;
54
+ }
55
+
56
+ async function registerWalkupScanToCompDestination(
57
+ registrationConfig: RegistrationConfig
58
+ ): Promise<string> {
59
+ const walkupScanDestinations = await HPApi.getWalkupScanToCompDestinations();
60
+ const destinations = walkupScanDestinations.destinations;
61
+
62
+ console.log(
63
+ "Host destinations fetched:",
64
+ destinations.map((d) => d.name).join(", ")
65
+ );
66
+
67
+ const hostname = registrationConfig.label;
68
+ const destination = destinations.find((x) => x.name === hostname);
69
+
70
+ let resourceURI;
71
+ if (destination) {
72
+ console.log(
73
+ `Re-using existing destination: ${hostname} - ${destination.resourceURI}`
74
+ );
75
+ resourceURI = destination.resourceURI;
76
+ } else {
77
+ resourceURI = await HPApi.registerWalkupScanToCompDestination(
78
+ new Destination(hostname, hostname, true)
79
+ );
80
+ console.log(`New Destination registered: ${hostname} - ${resourceURI}`);
81
+ }
82
+
83
+ console.log(`Using: ${hostname}`);
84
+
85
+ return resourceURI;
86
+ }
87
+
88
+ async function registerWalkupScanDestination(
89
+ registrationConfig: RegistrationConfig
90
+ ): Promise<string> {
91
+ const walkupScanDestinations = await HPApi.getWalkupScanDestinations();
92
+ const destinations = walkupScanDestinations.destinations;
93
+
94
+ console.log(
95
+ "Host destinations fetched:",
96
+ destinations.map((d) => d.name).join(", ")
97
+ );
98
+
99
+ const hostname = registrationConfig.label;
100
+ const destination = destinations.find((x) => x.name === hostname);
101
+
102
+ let resourceURI;
103
+ if (destination) {
104
+ console.log(
105
+ `Re-using existing destination: ${hostname} - ${destination.resourceURI}`
106
+ );
107
+ resourceURI = destination.resourceURI;
108
+ } else {
109
+ resourceURI = await HPApi.registerWalkupScanDestination(
110
+ new Destination(hostname, hostname, false)
111
+ );
112
+ console.log(`New Destination registered: ${hostname} - ${resourceURI}`);
113
+ }
114
+
115
+ console.log(`Using: ${hostname}`);
116
+
117
+ return resourceURI;
118
+ }
119
+
120
+ export type RegistrationConfig = {
121
+ label: string;
122
+ };
123
+
124
+ export async function waitScanEvent(
125
+ deviceCapabilities: DeviceCapabilities,
126
+ registrationConfig: RegistrationConfig
127
+ ): Promise<Event> {
128
+ let resourceURI: string;
129
+ if (deviceCapabilities.useWalkupScanToComp) {
130
+ resourceURI = await registerWalkupScanToCompDestination(registrationConfig);
131
+ } else {
132
+ resourceURI = await registerWalkupScanDestination(registrationConfig);
133
+ }
134
+
135
+ console.log("Waiting scan event for:", resourceURI);
136
+ return await waitForScanEvent(resourceURI);
137
+ }
138
+
139
+ export async function clearRegistrations() {
140
+ const dests = await HPApi.getWalkupScanToCompDestinations();
141
+ for (let i = 0; i < dests.destinations.length; i++) {
142
+ console.log(`Removing: ${dests.destinations[i].name}`);
143
+ await HPApi.removeDestination(dests.destinations[i]);
144
+ }
145
+ }
@@ -0,0 +1,46 @@
1
+ import { DeviceCapabilities } from "./DeviceCapabilities";
2
+ import HPApi from "./HPApi";
3
+ import WalkupScanToCompCaps from "./WalkupScanToCompCaps";
4
+
5
+ export async function readDeviceCapabilities(): Promise<DeviceCapabilities> {
6
+ let supportsMultiItemScanFromPlaten = true;
7
+ const discoveryTree = await HPApi.getDiscoveryTree();
8
+ let walkupScanToCompCaps: WalkupScanToCompCaps | null = null;
9
+ if (discoveryTree.WalkupScanToCompManifestURI != null) {
10
+ const walkupScanToCompManifest = await HPApi.getWalkupScanToCompManifest(
11
+ discoveryTree.WalkupScanToCompManifestURI
12
+ );
13
+ if (walkupScanToCompManifest.WalkupScanToCompCapsURI != null) {
14
+ walkupScanToCompCaps = await HPApi.getWalkupScanToCompCaps(
15
+ walkupScanToCompManifest.WalkupScanToCompCapsURI
16
+ );
17
+ supportsMultiItemScanFromPlaten =
18
+ walkupScanToCompCaps.supportsMultiItemScanFromPlaten;
19
+ }
20
+ } else if (discoveryTree.WalkupScanManifestURI != null) {
21
+ const walkupScanManifest = await HPApi.getWalkupScanManifest(
22
+ discoveryTree.WalkupScanManifestURI
23
+ );
24
+ if (walkupScanManifest.walkupScanDestinationsURI != null) {
25
+ await HPApi.getWalkupScanDestinations(
26
+ walkupScanManifest.walkupScanDestinationsURI
27
+ );
28
+ }
29
+ } else {
30
+ console.log("Unknown device!");
31
+ }
32
+
33
+ if (discoveryTree.ScanJobManifestURI != null) {
34
+ const scanJobManifest = await HPApi.getScanJobManifest(
35
+ discoveryTree.ScanJobManifestURI
36
+ );
37
+ if (scanJobManifest.ScanCapsURI != null) {
38
+ await HPApi.getScanCaps(scanJobManifest.ScanCapsURI);
39
+ }
40
+ }
41
+
42
+ return {
43
+ supportsMultiItemScanFromPlaten,
44
+ useWalkupScanToComp: walkupScanToCompCaps != null,
45
+ };
46
+ }