@thermal-label/brother-ql-core 0.3.0 → 0.5.0
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 +1 -1
- package/data/devices.json +823 -0
- package/data/media.json +823 -0
- package/dist/__tests__/devices.test.js +112 -31
- package/dist/__tests__/devices.test.js.map +1 -1
- package/dist/__tests__/media.test.js +251 -1
- package/dist/__tests__/media.test.js.map +1 -1
- package/dist/__tests__/protocol.test.js +168 -1
- package/dist/__tests__/protocol.test.js.map +1 -1
- package/dist/__tests__/status.test.js +71 -0
- package/dist/__tests__/status.test.js.map +1 -1
- package/dist/devices.d.ts +13 -270
- package/dist/devices.d.ts.map +1 -1
- package/dist/devices.generated.d.ts +696 -0
- package/dist/devices.generated.d.ts.map +1 -0
- package/dist/devices.generated.js +831 -0
- package/dist/devices.generated.js.map +1 -0
- package/dist/devices.js +28 -272
- package/dist/devices.js.map +1 -1
- package/dist/index.d.ts +13 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -3
- package/dist/index.js.map +1 -1
- package/dist/media.d.ts +37 -22
- package/dist/media.d.ts.map +1 -1
- package/dist/media.generated.d.ts +4 -0
- package/dist/media.generated.d.ts.map +1 -0
- package/dist/media.generated.js +1640 -0
- package/dist/media.generated.js.map +1 -0
- package/dist/media.js +74 -281
- package/dist/media.js.map +1 -1
- package/dist/protocol.d.ts +54 -3
- package/dist/protocol.d.ts.map +1 -1
- package/dist/protocol.js +117 -18
- package/dist/protocol.js.map +1 -1
- package/dist/status.d.ts +4 -1
- package/dist/status.d.ts.map +1 -1
- package/dist/status.js +6 -2
- package/dist/status.js.map +1 -1
- package/dist/types.d.ts +92 -27
- package/dist/types.d.ts.map +1 -1
- package/package.json +13 -9
- package/src/__tests__/devices.test.ts +122 -32
- package/src/__tests__/media.test.ts +287 -1
- package/src/__tests__/protocol.test.ts +209 -0
- package/src/__tests__/status.test.ts +87 -0
- package/src/devices.generated.ts +840 -0
- package/src/devices.ts +30 -272
- package/src/index.ts +28 -4
- package/src/media.generated.ts +1644 -0
- package/src/media.ts +86 -282
- package/src/protocol.ts +196 -18
- package/src/status.ts +10 -3
- package/src/types.ts +93 -27
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { describe, it, expect } from 'vitest';
|
|
2
2
|
import { createBitmap } from '@mbtech-nl/bitmap';
|
|
3
|
-
import { buildInvalidate, buildInitialize, buildRasterMode, buildRasterRow, buildPrintCommand, buildPrintInfo, buildZeroRow, buildCompression, buildStatusNotification, buildVariousMode, buildExpandedMode, encodeJob, } from '../protocol.js';
|
|
3
|
+
import { buildInvalidate, buildInitialize, buildRasterMode, buildRasterRow, buildPrintCommand, buildPrintInfo, buildZeroRow, buildCompression, buildStatusNotification, buildVariousMode, buildExpandedMode, encodeJob, encodeJobForEngine, } from '../protocol.js';
|
|
4
4
|
import { MEDIA } from '../media.js';
|
|
5
5
|
describe('buildInvalidate', () => {
|
|
6
6
|
it('returns exactly 200 zero bytes', () => {
|
|
@@ -244,4 +244,171 @@ describe('buildCompression', () => {
|
|
|
244
244
|
expect(Array.from(buildCompression(false))).toEqual([0x4d, 0x00]);
|
|
245
245
|
});
|
|
246
246
|
});
|
|
247
|
+
describe('encodeJobForEngine — dispatch + invalidate-byte derivation', () => {
|
|
248
|
+
const TZE_12MM = MEDIA[404];
|
|
249
|
+
const DK_62MM = MEDIA[259];
|
|
250
|
+
const NARROW_PT_ENGINE = {
|
|
251
|
+
protocol: 'pt-raster',
|
|
252
|
+
headDots: 128,
|
|
253
|
+
capabilities: { autocut: true, mediaDetection: true, highResDpi: 360 },
|
|
254
|
+
};
|
|
255
|
+
const WIDE_PT_ENGINE = {
|
|
256
|
+
protocol: 'pt-raster',
|
|
257
|
+
headDots: 560,
|
|
258
|
+
capabilities: { autocut: true, mediaDetection: true, highResDpi: 720 },
|
|
259
|
+
};
|
|
260
|
+
const QL_TWO_COLOR_ENGINE = {
|
|
261
|
+
protocol: 'ql-raster',
|
|
262
|
+
headDots: 720,
|
|
263
|
+
capabilities: { autocut: true, mediaDetection: true, twoColor: true },
|
|
264
|
+
};
|
|
265
|
+
const QL_SINGLE_COLOR_ENGINE = {
|
|
266
|
+
protocol: 'ql-raster',
|
|
267
|
+
headDots: 720,
|
|
268
|
+
capabilities: { autocut: true, mediaDetection: true },
|
|
269
|
+
};
|
|
270
|
+
it('PT-raster job uses 200-byte invalidate', () => {
|
|
271
|
+
const bitmap = createBitmap(70, 5);
|
|
272
|
+
const out = encodeJobForEngine([{ bitmap, media: TZE_12MM }], {}, NARROW_PT_ENGINE);
|
|
273
|
+
// After buildRasterMode (4 bytes: 0x1B 0x69 0x61 0x01), invalidate begins.
|
|
274
|
+
expect(out.slice(0, 4)).toEqual(new Uint8Array([0x1b, 0x69, 0x61, 0x01]));
|
|
275
|
+
// Confirm the next 200 bytes are zero (PT invalidate).
|
|
276
|
+
for (let i = 4; i < 204; i++)
|
|
277
|
+
expect(out[i]).toBe(0);
|
|
278
|
+
// The byte after the 200-zero invalidate should be 0x1B (start of buildInitialize),
|
|
279
|
+
// proving the invalidate is not 400 bytes.
|
|
280
|
+
expect(out[204]).toBe(0x1b);
|
|
281
|
+
});
|
|
282
|
+
it('QL two-colour engine bumps invalidate to 400 bytes', () => {
|
|
283
|
+
const bitmap = createBitmap(696, 5);
|
|
284
|
+
const out = encodeJobForEngine([{ bitmap, media: DK_62MM }], {}, QL_TWO_COLOR_ENGINE);
|
|
285
|
+
expect(out.slice(0, 4)).toEqual(new Uint8Array([0x1b, 0x69, 0x61, 0x01]));
|
|
286
|
+
for (let i = 4; i < 404; i++)
|
|
287
|
+
expect(out[i]).toBe(0);
|
|
288
|
+
expect(out[404]).toBe(0x1b);
|
|
289
|
+
});
|
|
290
|
+
it('QL single-colour engine keeps invalidate at 200 bytes', () => {
|
|
291
|
+
const bitmap = createBitmap(696, 5);
|
|
292
|
+
const out = encodeJobForEngine([{ bitmap, media: DK_62MM }], {}, QL_SINGLE_COLOR_ENGINE);
|
|
293
|
+
for (let i = 4; i < 204; i++)
|
|
294
|
+
expect(out[i]).toBe(0);
|
|
295
|
+
expect(out[204]).toBe(0x1b);
|
|
296
|
+
});
|
|
297
|
+
it('PT-raster expanded-mode uses bit 6 (0x40) for high-res', () => {
|
|
298
|
+
const bitmap = createBitmap(70, 5);
|
|
299
|
+
const out = encodeJobForEngine([{ bitmap, media: TZE_12MM, options: { highResolution: true } }], {}, NARROW_PT_ENGINE);
|
|
300
|
+
// Locate the ESC i K command (0x1B 0x69 0x4B FLAGS).
|
|
301
|
+
let idx = -1;
|
|
302
|
+
for (let i = 0; i < out.length - 3; i++) {
|
|
303
|
+
if (out[i] === 0x1b && out[i + 1] === 0x69 && out[i + 2] === 0x4b) {
|
|
304
|
+
idx = i;
|
|
305
|
+
break;
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
expect(idx).toBeGreaterThanOrEqual(0);
|
|
309
|
+
expect((out[idx + 3] ?? 0) & 0x40).toBe(0x40);
|
|
310
|
+
expect((out[idx + 3] ?? 0) & 0x10).toBe(0x00);
|
|
311
|
+
});
|
|
312
|
+
it('PT-raster feed-margin defaults to 14 dots', () => {
|
|
313
|
+
const bitmap = createBitmap(70, 5);
|
|
314
|
+
const out = encodeJobForEngine([{ bitmap, media: TZE_12MM }], {}, NARROW_PT_ENGINE);
|
|
315
|
+
// Locate ESC i d (0x1B 0x69 0x64 LO HI).
|
|
316
|
+
let idx = -1;
|
|
317
|
+
for (let i = 0; i < out.length - 4; i++) {
|
|
318
|
+
if (out[i] === 0x1b && out[i + 1] === 0x69 && out[i + 2] === 0x64) {
|
|
319
|
+
idx = i;
|
|
320
|
+
break;
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
expect(idx).toBeGreaterThanOrEqual(0);
|
|
324
|
+
const lo = out[idx + 3] ?? 0;
|
|
325
|
+
const hi = out[idx + 4] ?? 0;
|
|
326
|
+
expect(lo | (hi << 8)).toBe(14);
|
|
327
|
+
});
|
|
328
|
+
it('QL feed-margin defaults to 35 dots', () => {
|
|
329
|
+
const bitmap = createBitmap(696, 5);
|
|
330
|
+
const out = encodeJobForEngine([{ bitmap, media: DK_62MM }], {}, QL_SINGLE_COLOR_ENGINE);
|
|
331
|
+
let idx = -1;
|
|
332
|
+
for (let i = 0; i < out.length - 4; i++) {
|
|
333
|
+
if (out[i] === 0x1b && out[i + 1] === 0x69 && out[i + 2] === 0x64) {
|
|
334
|
+
idx = i;
|
|
335
|
+
break;
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
expect(idx).toBeGreaterThanOrEqual(0);
|
|
339
|
+
const lo = out[idx + 3] ?? 0;
|
|
340
|
+
const hi = out[idx + 4] ?? 0;
|
|
341
|
+
expect(lo | (hi << 8)).toBe(35);
|
|
342
|
+
});
|
|
343
|
+
it('PT high-res duplicates each raster line', () => {
|
|
344
|
+
const bitmap = createBitmap(70, 3);
|
|
345
|
+
const noHighRes = encodeJobForEngine([{ bitmap, media: TZE_12MM }], {}, NARROW_PT_ENGINE);
|
|
346
|
+
const highRes = encodeJobForEngine([{ bitmap, media: TZE_12MM, options: { highResolution: true } }], {}, NARROW_PT_ENGINE);
|
|
347
|
+
// Counting the 0x67 raster opcodes is the cleanest signal: 3 lines
|
|
348
|
+
// native vs 6 lines high-res.
|
|
349
|
+
const countOp = (buf, op) => {
|
|
350
|
+
let n = 0;
|
|
351
|
+
for (const b of buf)
|
|
352
|
+
if (b === op)
|
|
353
|
+
n++;
|
|
354
|
+
return n;
|
|
355
|
+
};
|
|
356
|
+
// 0x67 happens to also be present in invalidate-zero adjacency rare;
|
|
357
|
+
// we instead compare relative line counts (delta = doubled rows).
|
|
358
|
+
expect(countOp(highRes, 0x67) - countOp(noHighRes, 0x67)).toBe(3);
|
|
359
|
+
});
|
|
360
|
+
it('PT high-res doubles the feed-margin field', () => {
|
|
361
|
+
const bitmap = createBitmap(70, 3);
|
|
362
|
+
const out = encodeJobForEngine([{ bitmap, media: TZE_12MM, options: { highResolution: true } }], {}, NARROW_PT_ENGINE);
|
|
363
|
+
let idx = -1;
|
|
364
|
+
for (let i = 0; i < out.length - 4; i++) {
|
|
365
|
+
if (out[i] === 0x1b && out[i + 1] === 0x69 && out[i + 2] === 0x64) {
|
|
366
|
+
idx = i;
|
|
367
|
+
break;
|
|
368
|
+
}
|
|
369
|
+
}
|
|
370
|
+
const lo = out[idx + 3] ?? 0;
|
|
371
|
+
const hi = out[idx + 4] ?? 0;
|
|
372
|
+
expect(lo | (hi << 8)).toBe(28);
|
|
373
|
+
});
|
|
374
|
+
it('encodeJobForEngine resolves narrow vs wide TZe geometry', () => {
|
|
375
|
+
const bitmap = createBitmap(70, 1);
|
|
376
|
+
const narrow = encodeJobForEngine([{ bitmap, media: TZE_12MM }], {}, NARROW_PT_ENGINE);
|
|
377
|
+
const bitmap2 = createBitmap(150, 1);
|
|
378
|
+
const wide = encodeJobForEngine([{ bitmap: bitmap2, media: TZE_12MM }], {}, WIDE_PT_ENGINE);
|
|
379
|
+
// narrow: 128 pin head → row payload 16 bytes per raster line.
|
|
380
|
+
// wide: 560 pin head → row payload 70 bytes per raster line.
|
|
381
|
+
// Find the 0x67 raster opcode and check the LEN byte.
|
|
382
|
+
const findRowLen = (buf) => {
|
|
383
|
+
for (let i = 0; i < buf.length - 2; i++) {
|
|
384
|
+
if (buf[i] === 0x67 && buf[i + 1] === 0x00)
|
|
385
|
+
return buf[i + 2] ?? -1;
|
|
386
|
+
}
|
|
387
|
+
return -1;
|
|
388
|
+
};
|
|
389
|
+
expect(findRowLen(narrow)).toBe(16);
|
|
390
|
+
expect(findRowLen(wide)).toBe(70);
|
|
391
|
+
});
|
|
392
|
+
it('throws when high-res requested on an engine without highResDpi', () => {
|
|
393
|
+
const bitmap = createBitmap(696, 1);
|
|
394
|
+
expect(() => encodeJobForEngine([{ bitmap, media: DK_62MM, options: { highResolution: true } }], {}, QL_SINGLE_COLOR_ENGINE)).toThrow(/high-res/);
|
|
395
|
+
});
|
|
396
|
+
it('PT-E550W rejects autocut with compression disabled (cutter quirk)', () => {
|
|
397
|
+
const bitmap = createBitmap(70, 3);
|
|
398
|
+
expect(() => encodeJobForEngine([{ bitmap, media: TZE_12MM, options: { autoCut: true, compress: false } }], {}, NARROW_PT_ENGINE, 'PT-E550W')).toThrow(/PT-E550W/);
|
|
399
|
+
});
|
|
400
|
+
it('PT-P750W (same head family, different name) does NOT trigger the E550W cutter quirk', () => {
|
|
401
|
+
const bitmap = createBitmap(70, 3);
|
|
402
|
+
expect(() => encodeJobForEngine([{ bitmap, media: TZE_12MM, options: { autoCut: true, compress: false } }], {}, NARROW_PT_ENGINE, 'PT-P750W')).not.toThrow();
|
|
403
|
+
});
|
|
404
|
+
});
|
|
405
|
+
describe('encodeJob legacy entry point — back compat', () => {
|
|
406
|
+
it('still produces the original 200-byte single-colour invalidate', () => {
|
|
407
|
+
const bitmap = createBitmap(696, 1);
|
|
408
|
+
const out = encodeJob([{ bitmap, media: MEDIA[259] }], {});
|
|
409
|
+
for (let i = 4; i < 204; i++)
|
|
410
|
+
expect(out[i]).toBe(0);
|
|
411
|
+
expect(out[204]).toBe(0x1b);
|
|
412
|
+
});
|
|
413
|
+
});
|
|
247
414
|
//# sourceMappingURL=protocol.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.test.js","sourceRoot":"","sources":["../../src/__tests__/protocol.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"protocol.test.js","sourceRoot":"","sources":["../../src/__tests__/protocol.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,8 +12,35 @@ function makeStatusBytes(overrides) {
|
|
|
12
12
|
bytes[11] = overrides?.mediaTypeByte ?? 0x0a;
|
|
13
13
|
bytes[17] = overrides?.mediaLengthMm ?? 0;
|
|
14
14
|
bytes[18] = overrides?.statusType ?? 0x00;
|
|
15
|
+
bytes[25] = overrides?.byte25 ?? 0;
|
|
15
16
|
return bytes;
|
|
16
17
|
}
|
|
18
|
+
/**
|
|
19
|
+
* Verbatim 32-byte captures from scripts/STATUS-CAPTURE.md. These lock
|
|
20
|
+
* in the byte-25 two-color flag against the registry — without them,
|
|
21
|
+
* the DK-22251/DK-22205 detection ambiguity could silently regress.
|
|
22
|
+
*/
|
|
23
|
+
function captureBytes(values) {
|
|
24
|
+
if (values.length !== 32)
|
|
25
|
+
throw new Error(`expected 32 bytes, got ${values.length.toString()}`);
|
|
26
|
+
return Uint8Array.from(values);
|
|
27
|
+
}
|
|
28
|
+
const CAPTURE_DK_22251 = captureBytes([
|
|
29
|
+
0x80, 0x20, 0x42, 0x34, 0x41, 0x30, 0x04, 0x00, 0x00, 0x00, 0x3e, 0x0a, 0x00, 0x00, 0x23, 0x00,
|
|
30
|
+
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
31
|
+
]);
|
|
32
|
+
const CAPTURE_DK_22205 = captureBytes([
|
|
33
|
+
0x80, 0x20, 0x42, 0x34, 0x41, 0x30, 0x04, 0x00, 0x00, 0x00, 0x3e, 0x0a, 0x00, 0x00, 0x15, 0x00,
|
|
34
|
+
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
35
|
+
]);
|
|
36
|
+
const CAPTURE_DK_11201 = captureBytes([
|
|
37
|
+
0x80, 0x20, 0x42, 0x34, 0x41, 0x30, 0x04, 0x00, 0x00, 0x00, 0x1d, 0x0b, 0x00, 0x00, 0x01, 0x00,
|
|
38
|
+
0x00, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
39
|
+
]);
|
|
40
|
+
const CAPTURE_DK_22214 = captureBytes([
|
|
41
|
+
0x80, 0x20, 0x42, 0x34, 0x41, 0x30, 0x04, 0x00, 0x00, 0x00, 0x0c, 0x0a, 0x00, 0x00, 0x1a, 0x00,
|
|
42
|
+
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
43
|
+
]);
|
|
17
44
|
describe('parseStatus', () => {
|
|
18
45
|
it('throws on short input', () => {
|
|
19
46
|
expect(() => parseStatus(new Uint8Array(10))).toThrow('too short');
|
|
@@ -71,6 +98,50 @@ describe('parseStatus', () => {
|
|
|
71
98
|
const status = parseStatus(makeStatusBytes());
|
|
72
99
|
expect(status.editorLiteMode).toBe(false);
|
|
73
100
|
});
|
|
101
|
+
it('byte 25 bit 7 set → twoColorRoll=true and resolves to DK-22251', () => {
|
|
102
|
+
const status = parseStatus(makeStatusBytes({ mediaWidthMm: 62, mediaTypeByte: 0x0a, byte25: 0x81 }));
|
|
103
|
+
expect(status.twoColorRoll).toBe(true);
|
|
104
|
+
expect(status.detectedMedia?.id).toBe(251);
|
|
105
|
+
});
|
|
106
|
+
it('byte 25 bit 7 clear → twoColorRoll=false and resolves to DK-22205', () => {
|
|
107
|
+
const status = parseStatus(makeStatusBytes({ mediaWidthMm: 62, mediaTypeByte: 0x0a, byte25: 0x01 }));
|
|
108
|
+
expect(status.twoColorRoll).toBe(false);
|
|
109
|
+
expect(status.detectedMedia?.id).toBe(259);
|
|
110
|
+
});
|
|
111
|
+
it('twoColorRoll is omitted when no media is loaded', () => {
|
|
112
|
+
const status = parseStatus(makeStatusBytes({ mediaWidthMm: 0, mediaTypeByte: 0 }));
|
|
113
|
+
expect(status.twoColorRoll).toBeUndefined();
|
|
114
|
+
});
|
|
115
|
+
});
|
|
116
|
+
describe('parseStatus — real hardware captures', () => {
|
|
117
|
+
it('DK-22251 (62mm two-color continuous) resolves to id 251', () => {
|
|
118
|
+
const status = parseStatus(CAPTURE_DK_22251);
|
|
119
|
+
expect(status.mediaLoaded).toBe(true);
|
|
120
|
+
expect(status.detectedMedia?.id).toBe(251);
|
|
121
|
+
expect(status.twoColorRoll).toBe(true);
|
|
122
|
+
expect(status.errors).toEqual([]);
|
|
123
|
+
});
|
|
124
|
+
it('DK-22205 (62mm single-color continuous) resolves to id 259, NOT 251', () => {
|
|
125
|
+
const status = parseStatus(CAPTURE_DK_22205);
|
|
126
|
+
expect(status.mediaLoaded).toBe(true);
|
|
127
|
+
expect(status.detectedMedia?.id).toBe(259);
|
|
128
|
+
expect(status.twoColorRoll).toBe(false);
|
|
129
|
+
expect(status.errors).toEqual([]);
|
|
130
|
+
});
|
|
131
|
+
it('DK-11201 (29×90mm die-cut) resolves to id 271', () => {
|
|
132
|
+
const status = parseStatus(CAPTURE_DK_11201);
|
|
133
|
+
expect(status.mediaLoaded).toBe(true);
|
|
134
|
+
expect(status.detectedMedia?.id).toBe(271);
|
|
135
|
+
expect(status.twoColorRoll).toBe(false);
|
|
136
|
+
expect(status.errors).toEqual([]);
|
|
137
|
+
});
|
|
138
|
+
it('DK-22214 (12mm continuous) resolves to id 257', () => {
|
|
139
|
+
const status = parseStatus(CAPTURE_DK_22214);
|
|
140
|
+
expect(status.mediaLoaded).toBe(true);
|
|
141
|
+
expect(status.detectedMedia?.id).toBe(257);
|
|
142
|
+
expect(status.twoColorRoll).toBe(false);
|
|
143
|
+
expect(status.errors).toEqual([]);
|
|
144
|
+
});
|
|
74
145
|
});
|
|
75
146
|
describe('STATUS_REQUEST', () => {
|
|
76
147
|
it('is the correct byte sequence', () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.test.js","sourceRoot":"","sources":["../../src/__tests__/status.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE3D,SAAS,eAAe,CACtB,
|
|
1
|
+
{"version":3,"file":"status.test.js","sourceRoot":"","sources":["../../src/__tests__/status.test.ts"],"names":[],"mappings":"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"}
|
package/dist/devices.d.ts
CHANGED
|
@@ -1,274 +1,17 @@
|
|
|
1
1
|
import type { BrotherQLDevice } from './types.js';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
readonly editorLite: true;
|
|
16
|
-
};
|
|
17
|
-
readonly QL_820NWBc: {
|
|
18
|
-
readonly name: "QL-820NWBc";
|
|
19
|
-
readonly family: "brother-ql";
|
|
20
|
-
readonly transports: ["usb", "webusb", "tcp", "serial", "web-serial"];
|
|
21
|
-
readonly vid: 1273;
|
|
22
|
-
readonly pid: 8349;
|
|
23
|
-
readonly headPins: 720;
|
|
24
|
-
readonly bytesPerRow: 90;
|
|
25
|
-
readonly twoColor: true;
|
|
26
|
-
readonly network: "wifi+wired";
|
|
27
|
-
readonly autocut: true;
|
|
28
|
-
readonly compression: true;
|
|
29
|
-
readonly editorLite: true;
|
|
30
|
-
};
|
|
31
|
-
readonly QL_810W: {
|
|
32
|
-
readonly name: "QL-810W";
|
|
33
|
-
readonly family: "brother-ql";
|
|
34
|
-
readonly transports: ["usb", "webusb", "tcp"];
|
|
35
|
-
readonly vid: 1273;
|
|
36
|
-
readonly pid: 8348;
|
|
37
|
-
readonly headPins: 720;
|
|
38
|
-
readonly bytesPerRow: 90;
|
|
39
|
-
readonly twoColor: true;
|
|
40
|
-
readonly network: "wifi";
|
|
41
|
-
readonly autocut: true;
|
|
42
|
-
readonly compression: true;
|
|
43
|
-
readonly editorLite: true;
|
|
44
|
-
};
|
|
45
|
-
readonly QL_800: {
|
|
46
|
-
readonly name: "QL-800";
|
|
47
|
-
readonly family: "brother-ql";
|
|
48
|
-
readonly transports: ["usb", "webusb"];
|
|
49
|
-
readonly vid: 1273;
|
|
50
|
-
readonly pid: 8347;
|
|
51
|
-
readonly headPins: 720;
|
|
52
|
-
readonly bytesPerRow: 90;
|
|
53
|
-
readonly twoColor: true;
|
|
54
|
-
readonly network: "none";
|
|
55
|
-
readonly autocut: true;
|
|
56
|
-
readonly compression: true;
|
|
57
|
-
readonly editorLite: true;
|
|
58
|
-
};
|
|
59
|
-
readonly QL_720NW: {
|
|
60
|
-
readonly name: "QL-720NW";
|
|
61
|
-
readonly family: "brother-ql";
|
|
62
|
-
readonly transports: ["usb", "webusb", "tcp"];
|
|
63
|
-
readonly vid: 1273;
|
|
64
|
-
readonly pid: 8261;
|
|
65
|
-
readonly headPins: 720;
|
|
66
|
-
readonly bytesPerRow: 90;
|
|
67
|
-
readonly twoColor: false;
|
|
68
|
-
readonly network: "wired";
|
|
69
|
-
readonly autocut: true;
|
|
70
|
-
readonly compression: true;
|
|
71
|
-
readonly editorLite: false;
|
|
72
|
-
};
|
|
73
|
-
readonly QL_710W: {
|
|
74
|
-
readonly name: "QL-710W";
|
|
75
|
-
readonly family: "brother-ql";
|
|
76
|
-
readonly transports: ["usb", "webusb", "tcp"];
|
|
77
|
-
readonly vid: 1273;
|
|
78
|
-
readonly pid: 8260;
|
|
79
|
-
readonly headPins: 720;
|
|
80
|
-
readonly bytesPerRow: 90;
|
|
81
|
-
readonly twoColor: false;
|
|
82
|
-
readonly network: "wifi";
|
|
83
|
-
readonly autocut: true;
|
|
84
|
-
readonly compression: true;
|
|
85
|
-
readonly editorLite: true;
|
|
86
|
-
};
|
|
87
|
-
readonly QL_700: {
|
|
88
|
-
readonly name: "QL-700";
|
|
89
|
-
readonly family: "brother-ql";
|
|
90
|
-
readonly transports: ["usb", "webusb"];
|
|
91
|
-
readonly vid: 1273;
|
|
92
|
-
readonly pid: 8258;
|
|
93
|
-
readonly headPins: 720;
|
|
94
|
-
readonly bytesPerRow: 90;
|
|
95
|
-
readonly twoColor: false;
|
|
96
|
-
readonly network: "none";
|
|
97
|
-
readonly autocut: true;
|
|
98
|
-
readonly compression: true;
|
|
99
|
-
readonly editorLite: true;
|
|
100
|
-
};
|
|
101
|
-
readonly QL_600: {
|
|
102
|
-
readonly name: "QL-600";
|
|
103
|
-
readonly family: "brother-ql";
|
|
104
|
-
readonly transports: ["usb", "webusb"];
|
|
105
|
-
readonly vid: 1273;
|
|
106
|
-
readonly pid: 8448;
|
|
107
|
-
readonly headPins: 720;
|
|
108
|
-
readonly bytesPerRow: 90;
|
|
109
|
-
readonly twoColor: false;
|
|
110
|
-
readonly network: "none";
|
|
111
|
-
readonly autocut: true;
|
|
112
|
-
readonly compression: true;
|
|
113
|
-
readonly editorLite: false;
|
|
114
|
-
};
|
|
115
|
-
readonly QL_580N: {
|
|
116
|
-
readonly name: "QL-580N";
|
|
117
|
-
readonly family: "brother-ql";
|
|
118
|
-
readonly transports: ["usb", "webusb", "tcp"];
|
|
119
|
-
readonly vid: 1273;
|
|
120
|
-
readonly pid: 8219;
|
|
121
|
-
readonly headPins: 720;
|
|
122
|
-
readonly bytesPerRow: 90;
|
|
123
|
-
readonly twoColor: false;
|
|
124
|
-
readonly network: "wired";
|
|
125
|
-
readonly autocut: true;
|
|
126
|
-
readonly compression: true;
|
|
127
|
-
readonly editorLite: false;
|
|
128
|
-
};
|
|
129
|
-
readonly QL_570: {
|
|
130
|
-
readonly name: "QL-570";
|
|
131
|
-
readonly family: "brother-ql";
|
|
132
|
-
readonly transports: ["usb", "webusb"];
|
|
133
|
-
readonly vid: 1273;
|
|
134
|
-
readonly pid: 8217;
|
|
135
|
-
readonly headPins: 720;
|
|
136
|
-
readonly bytesPerRow: 90;
|
|
137
|
-
readonly twoColor: false;
|
|
138
|
-
readonly network: "none";
|
|
139
|
-
readonly autocut: true;
|
|
140
|
-
readonly compression: true;
|
|
141
|
-
readonly editorLite: false;
|
|
142
|
-
};
|
|
143
|
-
readonly QL_560: {
|
|
144
|
-
readonly name: "QL-560";
|
|
145
|
-
readonly family: "brother-ql";
|
|
146
|
-
readonly transports: ["usb", "webusb"];
|
|
147
|
-
readonly vid: 1273;
|
|
148
|
-
readonly pid: 8216;
|
|
149
|
-
readonly headPins: 720;
|
|
150
|
-
readonly bytesPerRow: 90;
|
|
151
|
-
readonly twoColor: false;
|
|
152
|
-
readonly network: "none";
|
|
153
|
-
readonly autocut: true;
|
|
154
|
-
readonly compression: false;
|
|
155
|
-
readonly editorLite: false;
|
|
156
|
-
};
|
|
157
|
-
readonly QL_550: {
|
|
158
|
-
readonly name: "QL-550";
|
|
159
|
-
readonly family: "brother-ql";
|
|
160
|
-
readonly transports: ["usb", "webusb"];
|
|
161
|
-
readonly vid: 1273;
|
|
162
|
-
readonly pid: 8214;
|
|
163
|
-
readonly headPins: 720;
|
|
164
|
-
readonly bytesPerRow: 90;
|
|
165
|
-
readonly twoColor: false;
|
|
166
|
-
readonly network: "none";
|
|
167
|
-
readonly autocut: false;
|
|
168
|
-
readonly compression: false;
|
|
169
|
-
readonly editorLite: false;
|
|
170
|
-
};
|
|
171
|
-
readonly QL_500: {
|
|
172
|
-
readonly name: "QL-500";
|
|
173
|
-
readonly family: "brother-ql";
|
|
174
|
-
readonly transports: ["usb", "webusb"];
|
|
175
|
-
readonly vid: 1273;
|
|
176
|
-
readonly pid: 8211;
|
|
177
|
-
readonly headPins: 720;
|
|
178
|
-
readonly bytesPerRow: 90;
|
|
179
|
-
readonly twoColor: false;
|
|
180
|
-
readonly network: "none";
|
|
181
|
-
readonly autocut: false;
|
|
182
|
-
readonly compression: false;
|
|
183
|
-
readonly editorLite: false;
|
|
184
|
-
};
|
|
185
|
-
readonly QL_650TD: {
|
|
186
|
-
readonly name: "QL-650TD";
|
|
187
|
-
readonly family: "brother-ql";
|
|
188
|
-
readonly transports: ["usb", "webusb"];
|
|
189
|
-
readonly vid: 1273;
|
|
190
|
-
readonly pid: 8220;
|
|
191
|
-
readonly headPins: 720;
|
|
192
|
-
readonly bytesPerRow: 90;
|
|
193
|
-
readonly twoColor: false;
|
|
194
|
-
readonly network: "none";
|
|
195
|
-
readonly autocut: true;
|
|
196
|
-
readonly compression: true;
|
|
197
|
-
readonly editorLite: false;
|
|
198
|
-
};
|
|
199
|
-
readonly QL_1100: {
|
|
200
|
-
readonly name: "QL-1100";
|
|
201
|
-
readonly family: "brother-ql";
|
|
202
|
-
readonly transports: ["usb", "webusb"];
|
|
203
|
-
readonly vid: 1273;
|
|
204
|
-
readonly pid: 8360;
|
|
205
|
-
readonly headPins: 1296;
|
|
206
|
-
readonly bytesPerRow: 162;
|
|
207
|
-
readonly twoColor: false;
|
|
208
|
-
readonly network: "none";
|
|
209
|
-
readonly autocut: true;
|
|
210
|
-
readonly compression: true;
|
|
211
|
-
readonly editorLite: true;
|
|
212
|
-
readonly massStoragePid: 8362;
|
|
213
|
-
};
|
|
214
|
-
readonly QL_1110NWB: {
|
|
215
|
-
readonly name: "QL-1110NWB";
|
|
216
|
-
readonly family: "brother-ql";
|
|
217
|
-
readonly transports: ["usb", "webusb", "tcp"];
|
|
218
|
-
readonly vid: 1273;
|
|
219
|
-
readonly pid: 8361;
|
|
220
|
-
readonly headPins: 1296;
|
|
221
|
-
readonly bytesPerRow: 162;
|
|
222
|
-
readonly twoColor: false;
|
|
223
|
-
readonly network: "wifi+wired";
|
|
224
|
-
readonly autocut: true;
|
|
225
|
-
readonly compression: true;
|
|
226
|
-
readonly editorLite: true;
|
|
227
|
-
readonly massStoragePid: 8363;
|
|
228
|
-
};
|
|
229
|
-
readonly QL_1115NWB: {
|
|
230
|
-
readonly name: "QL-1115NWB";
|
|
231
|
-
readonly family: "brother-ql";
|
|
232
|
-
readonly transports: ["usb", "webusb", "tcp"];
|
|
233
|
-
readonly vid: 1273;
|
|
234
|
-
readonly pid: 8364;
|
|
235
|
-
readonly headPins: 1296;
|
|
236
|
-
readonly bytesPerRow: 162;
|
|
237
|
-
readonly twoColor: false;
|
|
238
|
-
readonly network: "wifi+wired";
|
|
239
|
-
readonly autocut: true;
|
|
240
|
-
readonly compression: true;
|
|
241
|
-
readonly editorLite: true;
|
|
242
|
-
};
|
|
243
|
-
readonly QL_1050: {
|
|
244
|
-
readonly name: "QL-1050";
|
|
245
|
-
readonly family: "brother-ql";
|
|
246
|
-
readonly transports: ["usb", "webusb"];
|
|
247
|
-
readonly vid: 1273;
|
|
248
|
-
readonly pid: 8231;
|
|
249
|
-
readonly headPins: 1296;
|
|
250
|
-
readonly bytesPerRow: 162;
|
|
251
|
-
readonly twoColor: false;
|
|
252
|
-
readonly network: "none";
|
|
253
|
-
readonly autocut: true;
|
|
254
|
-
readonly compression: true;
|
|
255
|
-
readonly editorLite: false;
|
|
256
|
-
};
|
|
257
|
-
readonly QL_1060N: {
|
|
258
|
-
readonly name: "QL-1060N";
|
|
259
|
-
readonly family: "brother-ql";
|
|
260
|
-
readonly transports: ["usb", "webusb", "tcp"];
|
|
261
|
-
readonly vid: 1273;
|
|
262
|
-
readonly pid: 8232;
|
|
263
|
-
readonly headPins: 1296;
|
|
264
|
-
readonly bytesPerRow: 162;
|
|
265
|
-
readonly twoColor: false;
|
|
266
|
-
readonly network: "wired";
|
|
267
|
-
readonly autocut: true;
|
|
268
|
-
readonly compression: true;
|
|
269
|
-
readonly editorLite: false;
|
|
270
|
-
};
|
|
271
|
-
};
|
|
2
|
+
import { DEVICES, DEVICE_REGISTRY } from './devices.generated.js';
|
|
3
|
+
export { DEVICE_REGISTRY, DEVICES };
|
|
4
|
+
/**
|
|
5
|
+
* Numeric VID/PID extracted from a device's USB transport.
|
|
6
|
+
*
|
|
7
|
+
* Returns `undefined` when the device has no USB transport. Hex
|
|
8
|
+
* strings on the registry (`'0x04f9'`) are parsed at this boundary so
|
|
9
|
+
* runtime callers stay numeric.
|
|
10
|
+
*/
|
|
11
|
+
export declare function getUsbIds(device: BrotherQLDevice): {
|
|
12
|
+
vid: number;
|
|
13
|
+
pid: number;
|
|
14
|
+
} | undefined;
|
|
272
15
|
export declare function findDevice(vid: number, pid: number): BrotherQLDevice | undefined;
|
|
273
16
|
export declare function isMassStorageMode(pid: number): boolean;
|
|
274
17
|
//# sourceMappingURL=devices.d.ts.map
|