@thermal-label/brother-ql-core 0.2.1 → 0.4.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 +274 -4
- package/dist/__tests__/media.test.js.map +1 -1
- package/dist/__tests__/pack-bits.test.d.ts +2 -0
- package/dist/__tests__/pack-bits.test.d.ts.map +1 -0
- package/dist/__tests__/pack-bits.test.js +90 -0
- package/dist/__tests__/pack-bits.test.js.map +1 -0
- package/dist/__tests__/preview.test.js +1 -1
- package/dist/__tests__/preview.test.js.map +1 -1
- package/dist/__tests__/protocol.test.js +214 -2
- 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 +14 -271
- 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 -273
- package/dist/devices.js.map +1 -1
- package/dist/index.d.ts +10 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -6
- package/dist/index.js.map +1 -1
- package/dist/media.d.ts +37 -10
- 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 +75 -264
- package/dist/media.js.map +1 -1
- package/dist/orientation.d.ts +11 -0
- package/dist/orientation.d.ts.map +1 -0
- package/dist/orientation.js +10 -0
- package/dist/orientation.js.map +1 -0
- package/dist/pack-bits.d.ts +20 -0
- package/dist/pack-bits.d.ts.map +1 -0
- package/dist/pack-bits.js +61 -0
- package/dist/pack-bits.js.map +1 -0
- package/dist/preview.d.ts +6 -6
- package/dist/preview.d.ts.map +1 -1
- package/dist/preview.js +11 -12
- package/dist/preview.js.map +1 -1
- package/dist/protocol.d.ts +54 -3
- package/dist/protocol.d.ts.map +1 -1
- package/dist/protocol.js +125 -20
- package/dist/protocol.js.map +1 -1
- package/dist/status.d.ts +5 -2
- package/dist/status.d.ts.map +1 -1
- package/dist/status.js +6 -3
- package/dist/status.js.map +1 -1
- package/dist/types.d.ts +106 -31
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -2
- package/dist/types.js.map +1 -1
- package/package.json +13 -9
- package/src/__tests__/devices.test.ts +122 -32
- package/src/__tests__/media.test.ts +312 -4
- package/src/__tests__/pack-bits.test.ts +92 -0
- package/src/__tests__/preview.test.ts +1 -1
- package/src/__tests__/protocol.test.ts +256 -1
- package/src/__tests__/status.test.ts +87 -0
- package/src/devices.generated.ts +840 -0
- package/src/devices.ts +31 -273
- package/src/index.ts +36 -8
- package/src/media.generated.ts +1644 -0
- package/src/media.ts +87 -264
- package/src/orientation.ts +11 -0
- package/src/pack-bits.ts +64 -0
- package/src/preview.ts +13 -12
- package/src/protocol.ts +204 -19
- package/src/status.ts +11 -5
- package/src/types.ts +113 -32
- package/dist/__tests__/colour.test.d.ts +0 -2
- package/dist/__tests__/colour.test.d.ts.map +0 -1
- package/dist/__tests__/colour.test.js +0 -106
- package/dist/__tests__/colour.test.js.map +0 -1
- package/dist/colour.d.ts +0 -26
- package/dist/colour.d.ts.map +0 -1
- package/dist/colour.js +0 -84
- package/dist/colour.js.map +0 -1
- package/src/__tests__/colour.test.ts +0 -126
- package/src/colour.ts +0 -101
package/dist/preview.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preview.js","sourceRoot":"","sources":["../src/preview.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"preview.js","sourceRoot":"","sources":["../src/preview.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAKvE;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAmB,EAAE,KAAqB;IAC7E,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAClB,MAAM,MAAM,GAAG,qBAAqB,CAAC,KAAK,EAAE;YAC1C,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,CAAyC,CAAC;QAC3C,OAAO;YACL,MAAM,EAAE;gBACN,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE;gBAChE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE;aAC7D;YACD,KAAK;YACL,OAAO,EAAE,KAAK;SACf,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IACpD,OAAO;QACL,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;QAC5D,KAAK;QACL,OAAO,EAAE,KAAK;KACf,CAAC;AACJ,CAAC"}
|
package/dist/protocol.d.ts
CHANGED
|
@@ -1,17 +1,68 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
1
|
+
import type { PrintEngine } from '@thermal-label/contracts';
|
|
2
|
+
import type { BrotherEngineCapabilities, BrotherQLMedia, PageData, JobOptions } from './types.js';
|
|
3
|
+
export declare function buildInvalidate(byteCount?: number): Uint8Array;
|
|
3
4
|
export declare function buildStatusRequest(): Uint8Array;
|
|
4
5
|
export declare function buildInitialize(): Uint8Array;
|
|
5
6
|
export declare function buildRasterMode(): Uint8Array;
|
|
6
7
|
export declare function buildStatusNotification(enabled: boolean): Uint8Array;
|
|
7
8
|
export declare function buildPrintInfo(media: BrotherQLMedia, rowCount: number, pageIndex: number): Uint8Array;
|
|
8
9
|
export declare function buildVariousMode(autoCut: boolean): Uint8Array;
|
|
9
|
-
export declare function buildExpandedMode(cutAtEnd: boolean, highRes: boolean, twoColor?: boolean): Uint8Array;
|
|
10
|
+
export declare function buildExpandedMode(cutAtEnd: boolean, highRes: boolean, twoColor?: boolean, highResFlagBit?: number): Uint8Array;
|
|
10
11
|
export declare function buildCutEach(n: number): Uint8Array;
|
|
11
12
|
export declare function buildMargin(dots: number): Uint8Array;
|
|
12
13
|
export declare function buildCompression(enabled: boolean): Uint8Array;
|
|
13
14
|
export declare function buildRasterRow(rowBytes: Uint8Array, color: 'black' | 'red', twoColor?: boolean): Uint8Array;
|
|
14
15
|
export declare function buildZeroRow(): Uint8Array;
|
|
15
16
|
export declare function buildPrintCommand(isLastPage: boolean): Uint8Array;
|
|
17
|
+
/**
|
|
18
|
+
* Per-protocol wire-format constants.
|
|
19
|
+
*
|
|
20
|
+
* QL and PT raster differ in three numeric constants and one rule —
|
|
21
|
+
* everything else (status request, raster opcode, PackBits, two-colour
|
|
22
|
+
* plane encoding) is shared and lives in `encodeRasterJob`. Per the
|
|
23
|
+
* plan §4.2 / §7, these are protocol-internal and do not leak onto
|
|
24
|
+
* the device registry.
|
|
25
|
+
*
|
|
26
|
+
* - `feedMarginDots` — leading/trailing blank tape (`ESC i d`). QL = 35,
|
|
27
|
+
* PT = 14. Per `brother_label/devices.py` and Brother's PT raster
|
|
28
|
+
* manual; verify against print output during phase 4.
|
|
29
|
+
* - `invalidateBytes` — leading invalidate sequence. QL is 200 by
|
|
30
|
+
* default but the encoder bumps it to 400 when the engine carries
|
|
31
|
+
* `capabilities.twoColor`. PT is always 200 (no two-colour PT model
|
|
32
|
+
* exists today).
|
|
33
|
+
* - `highResFlagBit` — bit set in `ESC i K` flags when `highRes`
|
|
34
|
+
* is requested. QL uses bit 4 (0x10) for 300x600; PT uses bit 6
|
|
35
|
+
* (0x40) for 180x360 / 360x720 (per nbuchwitz/ptouch).
|
|
36
|
+
* - `duplicateRasterLines` — when `highRes` is on, PT requires each
|
|
37
|
+
* raster line to be sent twice. QL's high-res mode does not.
|
|
38
|
+
*/
|
|
39
|
+
export interface RasterProtocolConfig {
|
|
40
|
+
feedMarginDots: number;
|
|
41
|
+
invalidateBytes: number;
|
|
42
|
+
highResFlagBit: number;
|
|
43
|
+
duplicateRasterLines: boolean;
|
|
44
|
+
}
|
|
45
|
+
export declare const QL_PROTOCOL_CONFIG: RasterProtocolConfig;
|
|
46
|
+
export declare const PT_PROTOCOL_CONFIG: RasterProtocolConfig;
|
|
47
|
+
/** Engine shape consumed by the encoder — narrow `Pick` so unit tests can synthesise minimal stubs. */
|
|
48
|
+
export type EncoderEngine = Pick<PrintEngine, 'protocol' | 'headDots'> & {
|
|
49
|
+
capabilities?: BrotherEngineCapabilities;
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* Encode a QL job. Public legacy entry point — DK media only, no
|
|
53
|
+
* engine awareness, two-colour invalidate-byte boost not applied.
|
|
54
|
+
* Use `encodeJobForEngine` for PT or for QL with two-colour invalidate
|
|
55
|
+
* derivation from `engine.capabilities.twoColor`.
|
|
56
|
+
*/
|
|
16
57
|
export declare function encodeJob(pages: PageData[], options?: JobOptions): Uint8Array;
|
|
58
|
+
/**
|
|
59
|
+
* Encode a job for a specific engine. Dispatches on `engine.protocol`:
|
|
60
|
+
* `'ql-raster'` picks the QL config, `'pt-raster'` picks the PT config
|
|
61
|
+
* and threads `engine.headDots` through to head-family geometry
|
|
62
|
+
* resolution for TZe / HSe media.
|
|
63
|
+
*
|
|
64
|
+
* `deviceName` is optional; when supplied, it enables the per-name
|
|
65
|
+
* cutter-compression guard for PT-E550W (§7.2 / §12.12).
|
|
66
|
+
*/
|
|
67
|
+
export declare function encodeJobForEngine(pages: PageData[], options: JobOptions, engine: EncoderEngine, deviceName?: string): Uint8Array;
|
|
17
68
|
//# sourceMappingURL=protocol.d.ts.map
|
package/dist/protocol.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,
|
|
1
|
+
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAG5D,OAAO,KAAK,EACV,yBAAyB,EACzB,cAAc,EACd,QAAQ,EACR,UAAU,EAGX,MAAM,YAAY,CAAC;AAEpB,wBAAgB,eAAe,CAAC,SAAS,SAAM,GAAG,UAAU,CAE3D;AAED,wBAAgB,kBAAkB,IAAI,UAAU,CAE/C;AAED,wBAAgB,eAAe,IAAI,UAAU,CAE5C;AAED,wBAAgB,eAAe,IAAI,UAAU,CAE5C;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,UAAU,CAEpE;AAED,wBAAgB,cAAc,CAC5B,KAAK,EAAE,cAAc,EACrB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAChB,UAAU,CAsBZ;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,UAAU,CAE7D;AAED,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,OAAO,EACjB,OAAO,EAAE,OAAO,EAChB,QAAQ,UAAQ,EAChB,cAAc,SAAO,GACpB,UAAU,CAMZ;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,UAAU,CAElD;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAEpD;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,UAAU,CAE7D;AAKD,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,UAAU,EACpB,KAAK,EAAE,OAAO,GAAG,KAAK,EACtB,QAAQ,UAAQ,GACf,UAAU,CAYZ;AAED,wBAAgB,YAAY,IAAI,UAAU,CAEzC;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,OAAO,GAAG,UAAU,CAEjE;AA8BD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,WAAW,oBAAoB;IACnC,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,oBAAoB,EAAE,OAAO,CAAC;CAC/B;AAED,eAAO,MAAM,kBAAkB,EAAE,oBAKhC,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,oBAKhC,CAAC;AAEF,uGAAuG;AACvG,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,UAAU,CAAC,GAAG;IACvE,YAAY,CAAC,EAAE,yBAAyB,CAAC;CAC1C,CAAC;AAiLF;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,OAAO,GAAE,UAAe,GAAG,UAAU,CAEjF;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,QAAQ,EAAE,EACjB,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,aAAa,EACrB,UAAU,CAAC,EAAE,MAAM,GAClB,UAAU,CAGZ"}
|
package/dist/protocol.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { getRow, createBitmap } from '@mbtech-nl/bitmap';
|
|
2
|
-
import {} from './
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
import { packBits } from './pack-bits.js';
|
|
3
|
+
import { resolveTapeGeometry } from './media.js';
|
|
4
|
+
export function buildInvalidate(byteCount = 200) {
|
|
5
|
+
return new Uint8Array(byteCount);
|
|
5
6
|
}
|
|
6
7
|
export function buildStatusRequest() {
|
|
7
8
|
return new Uint8Array([0x1b, 0x69, 0x53]);
|
|
@@ -41,14 +42,14 @@ export function buildPrintInfo(media, rowCount, pageIndex) {
|
|
|
41
42
|
export function buildVariousMode(autoCut) {
|
|
42
43
|
return new Uint8Array([0x1b, 0x69, 0x4d, autoCut ? 0x40 : 0x00]);
|
|
43
44
|
}
|
|
44
|
-
export function buildExpandedMode(cutAtEnd, highRes, twoColor = false) {
|
|
45
|
+
export function buildExpandedMode(cutAtEnd, highRes, twoColor = false, highResFlagBit = 0x10) {
|
|
45
46
|
let flags = 0x00;
|
|
46
47
|
if (twoColor)
|
|
47
48
|
flags |= 0x01;
|
|
48
49
|
if (cutAtEnd)
|
|
49
50
|
flags |= 0x08;
|
|
50
51
|
if (highRes)
|
|
51
|
-
flags |=
|
|
52
|
+
flags |= highResFlagBit;
|
|
52
53
|
return new Uint8Array([0x1b, 0x69, 0x4b, flags]);
|
|
53
54
|
}
|
|
54
55
|
export function buildCutEach(n) {
|
|
@@ -105,13 +106,72 @@ function concat(...arrays) {
|
|
|
105
106
|
}
|
|
106
107
|
return out;
|
|
107
108
|
}
|
|
108
|
-
export
|
|
109
|
+
export const QL_PROTOCOL_CONFIG = {
|
|
110
|
+
feedMarginDots: 35,
|
|
111
|
+
invalidateBytes: 200,
|
|
112
|
+
highResFlagBit: 0x10,
|
|
113
|
+
duplicateRasterLines: false,
|
|
114
|
+
};
|
|
115
|
+
export const PT_PROTOCOL_CONFIG = {
|
|
116
|
+
feedMarginDots: 14,
|
|
117
|
+
invalidateBytes: 200,
|
|
118
|
+
highResFlagBit: 0x40,
|
|
119
|
+
duplicateRasterLines: true,
|
|
120
|
+
};
|
|
121
|
+
/**
|
|
122
|
+
* Cutter compression-required quirk.
|
|
123
|
+
*
|
|
124
|
+
* PT-E550W silently fails to cut when compression is disabled —
|
|
125
|
+
* documented in nbuchwitz/ptouch:PTE550W ("E550W requires compression
|
|
126
|
+
* ON for cutting to work"). Encoded as a per-name guard rather than a
|
|
127
|
+
* registry capability so we don't promote a one-model bug into the
|
|
128
|
+
* data shape.
|
|
129
|
+
*/
|
|
130
|
+
const COMPRESSION_REQUIRED_FOR_CUTTER = new Set(['PT-E550W']);
|
|
131
|
+
function maybeCheckCutterCompressionQuirk(deviceName, autoCut, compress) {
|
|
132
|
+
if (autoCut && !compress && deviceName && COMPRESSION_REQUIRED_FOR_CUTTER.has(deviceName)) {
|
|
133
|
+
throw new Error(`${deviceName} requires compression to be enabled when autocut is on (per nbuchwitz/ptouch)`);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Resolve per-page geometry for the encoder.
|
|
138
|
+
*
|
|
139
|
+
* QL paths take the flat fields off the media row directly; PT paths
|
|
140
|
+
* delegate to `resolveTapeGeometry` so the head-family dispatch lives
|
|
141
|
+
* in one place. `engine` is required for PT and ignored for QL.
|
|
142
|
+
*/
|
|
143
|
+
function resolveEncoderGeometry(media, engine) {
|
|
144
|
+
if (media.tapeSystem === 'dk') {
|
|
145
|
+
if (typeof media.printAreaDots !== 'number' ||
|
|
146
|
+
typeof media.leftMarginPins !== 'number' ||
|
|
147
|
+
typeof media.rightMarginPins !== 'number') {
|
|
148
|
+
throw new Error(`DK media ${media.id.toString()} missing flat geometry fields`);
|
|
149
|
+
}
|
|
150
|
+
return {
|
|
151
|
+
printAreaDots: media.printAreaDots,
|
|
152
|
+
leftMarginPins: media.leftMarginPins,
|
|
153
|
+
rightMarginPins: media.rightMarginPins,
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
if (!engine) {
|
|
157
|
+
throw new Error(`tape system "${media.tapeSystem}" requires an engine to resolve head-family geometry`);
|
|
158
|
+
}
|
|
159
|
+
return resolveTapeGeometry(media, engine);
|
|
160
|
+
}
|
|
161
|
+
function encodeRasterJob(pages, options, ctx) {
|
|
162
|
+
const { config, engine, deviceName } = ctx;
|
|
109
163
|
const copies = options.copies ?? 1;
|
|
110
164
|
const chunks = [];
|
|
111
|
-
//
|
|
165
|
+
// Two-colour invalidate-byte derivation (§7.1): QL bumps to 400 when
|
|
166
|
+
// the engine carries `twoColor`. PT has no two-colour models today;
|
|
167
|
+
// its config keeps invalidateBytes at 200 regardless.
|
|
168
|
+
const baseInvalidate = config.invalidateBytes;
|
|
169
|
+
const twoColorInvalidateBoost = engine?.protocol === 'ql-raster' && engine.capabilities?.twoColor === true;
|
|
170
|
+
const invalidateBytes = twoColorInvalidateBoost ? baseInvalidate * 2 : baseInvalidate;
|
|
171
|
+
// Python brother_ql sequence: raster-mode first, then invalidate, then init, then
|
|
112
172
|
// raster-mode again (matches observed working sequence for QL-820NWB).
|
|
113
173
|
chunks.push(buildRasterMode());
|
|
114
|
-
chunks.push(buildInvalidate());
|
|
174
|
+
chunks.push(buildInvalidate(invalidateBytes));
|
|
115
175
|
chunks.push(buildInitialize());
|
|
116
176
|
const allPageInstances = [];
|
|
117
177
|
for (let c = 0; c < copies; c++) {
|
|
@@ -125,14 +185,22 @@ export function encodeJob(pages, options = {}) {
|
|
|
125
185
|
const autoCut = opts.autoCut ?? true;
|
|
126
186
|
const cutAtEnd = opts.cutAtEnd ?? true;
|
|
127
187
|
const highRes = opts.highResolution ?? false;
|
|
128
|
-
const marginDots = opts.marginDots ?? 35;
|
|
129
188
|
const compress = opts.compress ?? false;
|
|
130
189
|
const { bitmap, media } = page;
|
|
131
|
-
//
|
|
190
|
+
// High-res mode requires the engine to declare `capabilities.highResDpi`.
|
|
191
|
+
if (highRes && engine && engine.capabilities?.highResDpi === undefined) {
|
|
192
|
+
throw new Error(`${deviceName ?? 'device'} does not support high-res mode (engine.capabilities.highResDpi is not set)`);
|
|
193
|
+
}
|
|
194
|
+
maybeCheckCutterCompressionQuirk(deviceName, autoCut, compress);
|
|
195
|
+
// Per §7.3: PT high-res doubles the feed margin and duplicates
|
|
196
|
+
// each raster line. QL high-res leaves both untouched.
|
|
197
|
+
const baseMargin = opts.marginDots ?? config.feedMarginDots;
|
|
198
|
+
const marginDots = config.duplicateRasterLines && highRes ? baseMargin * 2 : baseMargin;
|
|
199
|
+
// Multi-ink media (e.g. DK-22251) requires two-color mode even for black-only jobs.
|
|
132
200
|
// Auto-create an empty red plane when the tape demands it but caller didn't supply one.
|
|
133
|
-
const
|
|
134
|
-
const
|
|
135
|
-
|
|
201
|
+
const multiInk = media.palette !== undefined;
|
|
202
|
+
const twoColor = page.redBitmap !== undefined || multiInk;
|
|
203
|
+
const redBitmap = page.redBitmap ?? (multiInk ? createBitmap(bitmap.widthPx, bitmap.heightPx) : undefined);
|
|
136
204
|
if (twoColor && redBitmap !== undefined) {
|
|
137
205
|
if (bitmap.widthPx !== redBitmap.widthPx || bitmap.heightPx !== redBitmap.heightPx) {
|
|
138
206
|
throw new Error('Two-color bitmaps must have identical dimensions');
|
|
@@ -144,30 +212,67 @@ export function encodeJob(pages, options = {}) {
|
|
|
144
212
|
chunks.push(buildPrintInfo(media, rowCount, i));
|
|
145
213
|
chunks.push(buildVariousMode(autoCut));
|
|
146
214
|
chunks.push(buildCutEach(1));
|
|
147
|
-
chunks.push(buildExpandedMode(cutAtEnd, highRes, twoColor));
|
|
215
|
+
chunks.push(buildExpandedMode(cutAtEnd, highRes, twoColor, config.highResFlagBit));
|
|
148
216
|
chunks.push(buildMargin(marginDots));
|
|
149
217
|
if (compress)
|
|
150
218
|
chunks.push(buildCompression(true));
|
|
151
219
|
// Each raster row must cover the full print head width (derived from media geometry).
|
|
152
|
-
// leftMarginPins + printAreaDots + rightMarginPins = head pin count (720
|
|
153
|
-
const
|
|
220
|
+
// leftMarginPins + printAreaDots + rightMarginPins = head pin count (720 / 1296 / 128 / 560).
|
|
221
|
+
const geometry = resolveEncoderGeometry(media, engine);
|
|
222
|
+
const leftMarginPins = geometry.leftMarginPins;
|
|
223
|
+
const totalPins = leftMarginPins + geometry.printAreaDots + geometry.rightMarginPins;
|
|
154
224
|
const rowByteLen = Math.ceil(totalPins / 8);
|
|
155
225
|
// Rows interleaved per raster line (matches Python brother_ql behaviour).
|
|
156
226
|
// Two-color: black row then red row for each line. Single-color: black only.
|
|
227
|
+
// When `compress` is on, each row's bytes are PackBits-encoded and the
|
|
228
|
+
// raster-row LEN byte carries the compressed length.
|
|
229
|
+
//
|
|
230
|
+
// Per §7.3: PT high-res duplicates each raster line. QL doesn't.
|
|
231
|
+
const duplicate = config.duplicateRasterLines && highRes;
|
|
157
232
|
for (let r = 0; r < rowCount; r++) {
|
|
158
233
|
const blackSrc = getRow(bitmap, r);
|
|
159
234
|
const blackBytes = new Uint8Array(rowByteLen);
|
|
160
|
-
placeBits(blackSrc, bitmap.widthPx, blackBytes,
|
|
161
|
-
|
|
235
|
+
placeBits(blackSrc, bitmap.widthPx, blackBytes, leftMarginPins);
|
|
236
|
+
const blackPayload = compress ? packBits(blackBytes) : blackBytes;
|
|
237
|
+
const blackChunk = buildRasterRow(blackPayload, 'black', twoColor);
|
|
238
|
+
chunks.push(blackChunk);
|
|
239
|
+
if (duplicate)
|
|
240
|
+
chunks.push(blackChunk);
|
|
162
241
|
if (twoColor && redBitmap !== undefined) {
|
|
163
242
|
const redSrc = getRow(redBitmap, r);
|
|
164
243
|
const redBytes = new Uint8Array(rowByteLen);
|
|
165
|
-
placeBits(redSrc, redBitmap.widthPx, redBytes,
|
|
166
|
-
|
|
244
|
+
placeBits(redSrc, redBitmap.widthPx, redBytes, leftMarginPins);
|
|
245
|
+
const redPayload = compress ? packBits(redBytes) : redBytes;
|
|
246
|
+
const redChunk = buildRasterRow(redPayload, 'red', twoColor);
|
|
247
|
+
chunks.push(redChunk);
|
|
248
|
+
if (duplicate)
|
|
249
|
+
chunks.push(redChunk);
|
|
167
250
|
}
|
|
168
251
|
}
|
|
169
252
|
chunks.push(buildPrintCommand(isLastPage));
|
|
170
253
|
}
|
|
171
254
|
return concat(...chunks);
|
|
172
255
|
}
|
|
256
|
+
/**
|
|
257
|
+
* Encode a QL job. Public legacy entry point — DK media only, no
|
|
258
|
+
* engine awareness, two-colour invalidate-byte boost not applied.
|
|
259
|
+
* Use `encodeJobForEngine` for PT or for QL with two-colour invalidate
|
|
260
|
+
* derivation from `engine.capabilities.twoColor`.
|
|
261
|
+
*/
|
|
262
|
+
export function encodeJob(pages, options = {}) {
|
|
263
|
+
return encodeRasterJob(pages, options, { config: QL_PROTOCOL_CONFIG });
|
|
264
|
+
}
|
|
265
|
+
/**
|
|
266
|
+
* Encode a job for a specific engine. Dispatches on `engine.protocol`:
|
|
267
|
+
* `'ql-raster'` picks the QL config, `'pt-raster'` picks the PT config
|
|
268
|
+
* and threads `engine.headDots` through to head-family geometry
|
|
269
|
+
* resolution for TZe / HSe media.
|
|
270
|
+
*
|
|
271
|
+
* `deviceName` is optional; when supplied, it enables the per-name
|
|
272
|
+
* cutter-compression guard for PT-E550W (§7.2 / §12.12).
|
|
273
|
+
*/
|
|
274
|
+
export function encodeJobForEngine(pages, options, engine, deviceName) {
|
|
275
|
+
const config = engine.protocol === 'pt-raster' ? PT_PROTOCOL_CONFIG : QL_PROTOCOL_CONFIG;
|
|
276
|
+
return encodeRasterJob(pages, options, { config, engine, deviceName });
|
|
277
|
+
}
|
|
173
278
|
//# sourceMappingURL=protocol.js.map
|
package/dist/protocol.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"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"}
|
package/dist/status.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { PrintEngine } from '@thermal-label/contracts';
|
|
2
|
+
import type { BrotherQLStatus } from './types.js';
|
|
2
3
|
export declare const STATUS_REQUEST: Uint8Array;
|
|
3
4
|
/**
|
|
4
5
|
* Parse a Brother QL 32-byte status response.
|
|
@@ -10,6 +11,8 @@ export declare const STATUS_REQUEST: Uint8Array;
|
|
|
10
11
|
* byte 11 — media type (0x0A continuous, 0x0B die-cut)
|
|
11
12
|
* byte 17 — media length (mm), 0 for continuous
|
|
12
13
|
* byte 18 — status type (0x02 = error response)
|
|
14
|
+
* byte 25 — bit 7 set when the loaded roll is two-color (DK-22251);
|
|
15
|
+
* clear on single-color rolls. See scripts/STATUS-CAPTURE.md.
|
|
13
16
|
*
|
|
14
17
|
* `detectedMedia` is resolved against the media registry via
|
|
15
18
|
* `findMediaByDimensions`. `editorLiteMode` is a driver-specific
|
|
@@ -18,5 +21,5 @@ export declare const STATUS_REQUEST: Uint8Array;
|
|
|
18
21
|
* set it from other signals (e.g. mass-storage PID detected during
|
|
19
22
|
* discovery) without changing the return type.
|
|
20
23
|
*/
|
|
21
|
-
export declare function parseStatus(bytes: Uint8Array): BrotherQLStatus;
|
|
24
|
+
export declare function parseStatus(bytes: Uint8Array, engine?: Pick<PrintEngine, 'headDots' | 'mediaCompatibility'>): BrotherQLStatus;
|
|
22
25
|
//# sourceMappingURL=status.d.ts.map
|
package/dist/status.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../src/status.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../src/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAgB,MAAM,0BAA0B,CAAC;AAC1E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAGlD,eAAO,MAAM,cAAc,YAAqC,CAAC;AAyBjE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,UAAU,EACjB,MAAM,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,oBAAoB,CAAC,GAC5D,eAAe,CAoCjB"}
|
package/dist/status.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import {} from './types.js';
|
|
2
1
|
import { findMediaByDimensions } from './media.js';
|
|
3
2
|
export const STATUS_REQUEST = new Uint8Array([0x1b, 0x69, 0x53]);
|
|
4
3
|
/** Error-info 1 bit → structured PrinterError code + human message. */
|
|
@@ -32,6 +31,8 @@ const ERROR_INFO_2 = [
|
|
|
32
31
|
* byte 11 — media type (0x0A continuous, 0x0B die-cut)
|
|
33
32
|
* byte 17 — media length (mm), 0 for continuous
|
|
34
33
|
* byte 18 — status type (0x02 = error response)
|
|
34
|
+
* byte 25 — bit 7 set when the loaded roll is two-color (DK-22251);
|
|
35
|
+
* clear on single-color rolls. See scripts/STATUS-CAPTURE.md.
|
|
35
36
|
*
|
|
36
37
|
* `detectedMedia` is resolved against the media registry via
|
|
37
38
|
* `findMediaByDimensions`. `editorLiteMode` is a driver-specific
|
|
@@ -40,7 +41,7 @@ const ERROR_INFO_2 = [
|
|
|
40
41
|
* set it from other signals (e.g. mass-storage PID detected during
|
|
41
42
|
* discovery) without changing the return type.
|
|
42
43
|
*/
|
|
43
|
-
export function parseStatus(bytes) {
|
|
44
|
+
export function parseStatus(bytes, engine) {
|
|
44
45
|
if (bytes.length < 32) {
|
|
45
46
|
throw new Error(`Status response too short: ${bytes.length.toString()} bytes`);
|
|
46
47
|
}
|
|
@@ -51,6 +52,7 @@ export function parseStatus(bytes) {
|
|
|
51
52
|
const mediaTypeByte = view.getUint8(11);
|
|
52
53
|
const mediaLengthMm = view.getUint8(17);
|
|
53
54
|
const statusType = view.getUint8(18);
|
|
55
|
+
const twoColorFlag = (view.getUint8(25) & 0x80) !== 0;
|
|
54
56
|
const errors = [];
|
|
55
57
|
for (const { bit, code, message } of ERROR_INFO_1) {
|
|
56
58
|
if (errInfo1 & (1 << bit))
|
|
@@ -62,12 +64,13 @@ export function parseStatus(bytes) {
|
|
|
62
64
|
}
|
|
63
65
|
const mediaLoaded = mediaWidthMm > 0 && mediaTypeByte !== 0;
|
|
64
66
|
const detected = mediaLoaded
|
|
65
|
-
? findMediaByDimensions(mediaWidthMm, mediaLengthMm,
|
|
67
|
+
? findMediaByDimensions(mediaWidthMm, mediaLengthMm, twoColorFlag, engine)
|
|
66
68
|
: undefined;
|
|
67
69
|
return {
|
|
68
70
|
ready: errors.length === 0 && statusType !== 0x02,
|
|
69
71
|
mediaLoaded,
|
|
70
72
|
...(detected === undefined ? {} : { detectedMedia: detected }),
|
|
73
|
+
...(mediaLoaded ? { twoColorRoll: twoColorFlag } : {}),
|
|
71
74
|
errors,
|
|
72
75
|
editorLiteMode: false,
|
|
73
76
|
rawBytes: bytes,
|
package/dist/status.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../src/status.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../src/status.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,50 +1,103 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import type {
|
|
1
|
+
import type { LabelBitmap } from '@mbtech-nl/bitmap';
|
|
2
|
+
import type { DeviceEntry, MediaDescriptor, PrintEngineCapabilities, PrintOptions, PrinterStatus } from '@thermal-label/contracts';
|
|
3
3
|
export type MediaType = 'continuous' | 'die-cut';
|
|
4
4
|
export type HeadWidth = 720 | 1296;
|
|
5
5
|
export type ColorMode = 'single' | 'two-color';
|
|
6
|
-
export type NetworkSupport = 'none' | 'wifi' | 'wired' | 'wifi+wired';
|
|
7
6
|
/**
|
|
8
|
-
*
|
|
7
|
+
* Tape-system discriminator on `BrotherQLMedia`. DK is the QL series'
|
|
8
|
+
* paper-label system; TZe is the laminated-tape system used by the
|
|
9
|
+
* PT-P / PT-E line; HSe 2:1 and HSe 3:1 are heat-shrink tubing systems
|
|
10
|
+
* supported by most P900-series and PT-E550W. Lookup paths gate on
|
|
11
|
+
* this so a QL printer never resolves a TZe entry, and vice versa.
|
|
12
|
+
*/
|
|
13
|
+
export type TapeSystem = 'dk' | 'tze' | 'hse-2to1' | 'hse-3to1';
|
|
14
|
+
/**
|
|
15
|
+
* Per-head-family geometry on `BrotherQLMedia`.
|
|
9
16
|
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
17
|
+
* Brother's PT-P / PT-E line ships two head families with different
|
|
18
|
+
* per-tape pin layouts. The same TZe id maps to different
|
|
19
|
+
* `printAreaDots` / `leftMarginPins` / `rightMarginPins` values on a
|
|
20
|
+
* 128-pin head (PT-E550W, PT-P750W) versus a 560-pin head (PT-P900,
|
|
21
|
+
* P900W, P950NW, P910BT). DK media leaves these unset and resolves via
|
|
22
|
+
* the flat fields on `BrotherQLMedia` directly.
|
|
23
|
+
*/
|
|
24
|
+
export interface TapeGeometry {
|
|
25
|
+
printAreaDots: number;
|
|
26
|
+
leftMarginPins: number;
|
|
27
|
+
rightMarginPins: number;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Brother-specific engine capabilities.
|
|
13
31
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
32
|
+
* Extends the contracts-defined `PrintEngineCapabilities` (which
|
|
33
|
+
* carries the multi-vendor named flags `autocut` and `mediaDetection`)
|
|
34
|
+
* with the driver-side `twoColor` flag — Brother-only today, so it
|
|
35
|
+
* lands here via the contracts open index signature. Promote to a
|
|
36
|
+
* named contracts key when a second vendor implements the same
|
|
37
|
+
* capability with compatible semantics.
|
|
19
38
|
*/
|
|
20
|
-
export interface
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
/** Alternate PID seen when the printer is in Editor Lite mass-storage mode. */
|
|
32
|
-
massStoragePid?: number;
|
|
39
|
+
export interface BrotherEngineCapabilities extends PrintEngineCapabilities {
|
|
40
|
+
/** Two-colour ribbon path — black + red plane raster encoding. */
|
|
41
|
+
twoColor?: boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Doubled-density mode along the feed axis (`ESC i K` bit 6).
|
|
44
|
+
* `360` on PT-E550W / PT-P750W (native 180); `720` on the PT-P900
|
|
45
|
+
* family (native 360). Undefined on QL and PT models that don't
|
|
46
|
+
* support high-res. The encoder branches on this when
|
|
47
|
+
* `BrotherQLPrintOptions.highRes` is set.
|
|
48
|
+
*/
|
|
49
|
+
highResDpi?: 360 | 720;
|
|
33
50
|
}
|
|
51
|
+
/**
|
|
52
|
+
* Brother QL device entry — alias for the contracts `DeviceEntry`
|
|
53
|
+
* shape. Re-exported under a driver-named type so consumers don't
|
|
54
|
+
* have to import contracts directly. Per-device chassis-level
|
|
55
|
+
* capabilities (`editorLite`, `massStoragePid`) ride on the open
|
|
56
|
+
* index signature of `DeviceEntry.capabilities`; engine-level flags
|
|
57
|
+
* (`autocut`, `mediaDetection`, `twoColor`) ride on
|
|
58
|
+
* `engines[].capabilities`.
|
|
59
|
+
*
|
|
60
|
+
* **Bluetooth on the QL-820NWB / 820NWBc**: not exposed over GATT.
|
|
61
|
+
* Classic Bluetooth SPP is paired at the OS level — declared as the
|
|
62
|
+
* `bluetooth-spp` transport. The runtime's serial implementation
|
|
63
|
+
* satisfies that transport key by opening the OS-paired RFCOMM
|
|
64
|
+
* device path. macOS dropped classic Bluetooth SPP — no SPP route
|
|
65
|
+
* there.
|
|
66
|
+
*/
|
|
67
|
+
export type BrotherQLDevice = DeviceEntry;
|
|
34
68
|
/**
|
|
35
69
|
* Brother QL media descriptor.
|
|
36
70
|
*
|
|
37
71
|
* Extends `MediaDescriptor` with the dots-based geometry the raster
|
|
38
|
-
* encoder needs.
|
|
39
|
-
*
|
|
72
|
+
* encoder needs. The base `palette` field flips the driver into
|
|
73
|
+
* multi-plane mode — only DK-22251 declares one in the registry.
|
|
40
74
|
*/
|
|
41
75
|
export interface BrotherQLMedia extends MediaDescriptor {
|
|
42
76
|
id: number;
|
|
43
77
|
type: MediaType;
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
78
|
+
/**
|
|
79
|
+
* Tape system this entry belongs to. Drives lookup gating in
|
|
80
|
+
* `findMediaByDimensions(width, height, engine)` so QL engines never
|
|
81
|
+
* resolve TZe / HSe entries and vice versa.
|
|
82
|
+
*/
|
|
83
|
+
tapeSystem: TapeSystem;
|
|
84
|
+
/**
|
|
85
|
+
* Per-head-family geometry. `narrow` = 128-pin head (PT-E550W,
|
|
86
|
+
* PT-P750W); `wide` = 560-pin head (PT-P900 family). DK entries
|
|
87
|
+
* leave both unset and use the flat fields below; TZe / HSe entries
|
|
88
|
+
* leave the flat fields undefined and populate `narrow` and/or
|
|
89
|
+
* `wide` per the *Raster Command Reference* PDFs. `undefined` on a
|
|
90
|
+
* head family means "this tape doesn't fit this head" (e.g. 36 mm
|
|
91
|
+
* TZe and 31 mm HSe-3:1 have no `narrow` entry).
|
|
92
|
+
*/
|
|
93
|
+
geometry?: {
|
|
94
|
+
narrow?: TapeGeometry;
|
|
95
|
+
wide?: TapeGeometry;
|
|
96
|
+
};
|
|
97
|
+
/** DK-only flat geometry. PT-* entries populate `geometry` instead. */
|
|
98
|
+
printAreaDots?: number;
|
|
99
|
+
leftMarginPins?: number;
|
|
100
|
+
rightMarginPins?: number;
|
|
48
101
|
/** Die-cut masked area in dots (registration windows). */
|
|
49
102
|
dieCutMaskedAreaDots?: number;
|
|
50
103
|
}
|
|
@@ -55,6 +108,11 @@ export interface BrotherQLMedia extends MediaDescriptor {
|
|
|
55
108
|
*/
|
|
56
109
|
export interface BrotherQLStatus extends PrinterStatus {
|
|
57
110
|
editorLiteMode: boolean;
|
|
111
|
+
/**
|
|
112
|
+
* True when the loaded roll reports two-color capability via byte 25
|
|
113
|
+
* bit 7 of the status response. Undefined when no media is loaded.
|
|
114
|
+
*/
|
|
115
|
+
twoColorRoll?: boolean;
|
|
58
116
|
}
|
|
59
117
|
export interface PageData {
|
|
60
118
|
bitmap: LabelBitmap;
|
|
@@ -72,4 +130,21 @@ export interface PageOptions {
|
|
|
72
130
|
export interface JobOptions {
|
|
73
131
|
copies?: number;
|
|
74
132
|
}
|
|
133
|
+
/**
|
|
134
|
+
* Per-call print options for `BrotherQLPrinter.print()`.
|
|
135
|
+
*
|
|
136
|
+
* Extends the cross-driver `PrintOptions` with QL-specific knobs. The
|
|
137
|
+
* `rotate` override picks the rotation angle passed to
|
|
138
|
+
* `renderImage` / `renderMultiPlaneImage` — `'auto'` (the default)
|
|
139
|
+
* defers to the media's `defaultOrientation` heuristic.
|
|
140
|
+
*/
|
|
141
|
+
export interface BrotherQLPrintOptions extends PrintOptions {
|
|
142
|
+
rotate?: 'auto' | 0 | 90 | 180 | 270;
|
|
143
|
+
/**
|
|
144
|
+
* Opt into high-resolution mode (doubles dpi along the feed axis).
|
|
145
|
+
* Requires the engine's `capabilities.highResDpi` to be set; throws
|
|
146
|
+
* at job-build time otherwise. PT-* only — QL ignores the option.
|
|
147
|
+
*/
|
|
148
|
+
highRes?: boolean;
|
|
149
|
+
}
|
|
75
150
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EACV,WAAW,EACX,eAAe,EACf,uBAAuB,EACvB,YAAY,EACZ,aAAa,EACd,MAAM,0BAA0B,CAAC;AAElC,MAAM,MAAM,SAAS,GAAG,YAAY,GAAG,SAAS,CAAC;AACjD,MAAM,MAAM,SAAS,GAAG,GAAG,GAAG,IAAI,CAAC;AACnC,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,WAAW,CAAC;AAE/C;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,KAAK,GAAG,UAAU,GAAG,UAAU,CAAC;AAEhE;;;;;;;;;GASG;AACH,MAAM,WAAW,YAAY;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,yBAA0B,SAAQ,uBAAuB;IACxE,kEAAkE;IAClE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC;CACxB;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,eAAe,GAAG,WAAW,CAAC;AAE1C;;;;;;GAMG;AACH,MAAM,WAAW,cAAe,SAAQ,eAAe;IACrD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,SAAS,CAAC;IAChB;;;;OAIG;IACH,UAAU,EAAE,UAAU,CAAC;IACvB;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,YAAY,CAAC;QAAC,IAAI,CAAC,EAAE,YAAY,CAAA;KAAE,CAAC;IAC1D,uEAAuE;IACvE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,0DAA0D;IAC1D,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAgB,SAAQ,aAAa;IACpD,cAAc,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB,KAAK,EAAE,cAAc,CAAC;IACtB,OAAO,CAAC,EAAE,WAAW,CAAC;CACvB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,qBAAsB,SAAQ,YAAY;IACzD,MAAM,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,GAAG,CAAC;IACrC;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB"}
|
package/dist/types.js
CHANGED
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|