@thermal-print/escpos 0.1.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.
Files changed (42) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +193 -0
  3. package/dist/command-adapters/escbematech-adapter.d.ts +30 -0
  4. package/dist/command-adapters/escbematech-adapter.d.ts.map +1 -0
  5. package/dist/command-adapters/escbematech-adapter.js +175 -0
  6. package/dist/command-adapters/escpos-adapter.d.ts +25 -0
  7. package/dist/command-adapters/escpos-adapter.d.ts.map +1 -0
  8. package/dist/command-adapters/escpos-adapter.js +144 -0
  9. package/dist/command-adapters/index.d.ts +11 -0
  10. package/dist/command-adapters/index.d.ts.map +1 -0
  11. package/dist/command-adapters/index.js +14 -0
  12. package/dist/command-adapters/types.d.ts +78 -0
  13. package/dist/command-adapters/types.d.ts.map +1 -0
  14. package/dist/command-adapters/types.js +8 -0
  15. package/dist/commands/escbematech.d.ts +867 -0
  16. package/dist/commands/escbematech.d.ts.map +1 -0
  17. package/dist/commands/escbematech.js +1387 -0
  18. package/dist/commands/escpos.d.ts +582 -0
  19. package/dist/commands/escpos.d.ts.map +1 -0
  20. package/dist/commands/escpos.js +1048 -0
  21. package/dist/converter.d.ts +47 -0
  22. package/dist/converter.d.ts.map +1 -0
  23. package/dist/converter.js +92 -0
  24. package/dist/encodings/cp860.d.ts +25 -0
  25. package/dist/encodings/cp860.d.ts.map +1 -0
  26. package/dist/encodings/cp860.js +187 -0
  27. package/dist/generator.d.ts +118 -0
  28. package/dist/generator.d.ts.map +1 -0
  29. package/dist/generator.js +383 -0
  30. package/dist/index.d.ts +17 -0
  31. package/dist/index.d.ts.map +1 -0
  32. package/dist/index.js +55 -0
  33. package/dist/styles.d.ts +72 -0
  34. package/dist/styles.d.ts.map +1 -0
  35. package/dist/styles.js +210 -0
  36. package/dist/traverser.d.ts +60 -0
  37. package/dist/traverser.d.ts.map +1 -0
  38. package/dist/traverser.js +285 -0
  39. package/dist/types.d.ts +21 -0
  40. package/dist/types.d.ts.map +1 -0
  41. package/dist/types.js +5 -0
  42. package/package.json +31 -0
@@ -0,0 +1,78 @@
1
+ /**
2
+ * Command Adapter Interface
3
+ *
4
+ * Abstracts printer-specific ESC/POS command generation to support
5
+ * different printer protocols (ESC/POS, ESC/Bematech, etc.)
6
+ */
7
+ /**
8
+ * Character size specification
9
+ */
10
+ export interface CharacterSize {
11
+ width: number;
12
+ height: number;
13
+ }
14
+ /**
15
+ * Command adapter interface for generating printer-specific commands
16
+ */
17
+ export interface CommandAdapter {
18
+ /**
19
+ * Get the name/identifier of this adapter
20
+ */
21
+ getName(): string;
22
+ /**
23
+ * Get maximum supported character size multipliers
24
+ */
25
+ getMaxCharacterSize(): CharacterSize;
26
+ /**
27
+ * Initialize printer command
28
+ * Resets printer to default state
29
+ */
30
+ getInitCommand(): number[];
31
+ /**
32
+ * Set text alignment command
33
+ * @param align - Text alignment (left, center, right)
34
+ */
35
+ getAlignCommand(align: 'left' | 'center' | 'right'): number[];
36
+ /**
37
+ * Set character size and emphasis (bold) command
38
+ * @param width - Width multiplier
39
+ * @param height - Height multiplier
40
+ * @param bold - Whether text should be bold
41
+ */
42
+ getCharacterSizeCommand(width: number, height: number, bold: boolean): number[];
43
+ /**
44
+ * Set line spacing command
45
+ * @param dots - Line spacing in dots (0-255), undefined for default
46
+ */
47
+ getLineSpacingCommand(dots?: number): number[];
48
+ /**
49
+ * Paper cut command
50
+ * @param type - Cut type (full or partial)
51
+ * @param feedLines - Lines to feed before cutting (optional)
52
+ */
53
+ getCutCommand(type: 'full' | 'partial', feedLines?: number): number[];
54
+ /**
55
+ * Generate QR code command
56
+ * @param data - QR code data (URL or text)
57
+ * @param size - QR code module size (1-16)
58
+ */
59
+ getQRCodeCommand(data: string, size: number): number[];
60
+ /**
61
+ * Generate raster image command
62
+ * @param imageData - Monochrome bitmap data (1 bit per pixel)
63
+ * @param width - Image width in pixels
64
+ * @param height - Image height in pixels
65
+ */
66
+ getRasterImageCommand(imageData: number[], width: number, height: number): number[];
67
+ /**
68
+ * Line feed command
69
+ * @param lines - Number of line feeds (default: 1)
70
+ */
71
+ getLineFeedCommand(lines?: number): number[];
72
+ /**
73
+ * Feed paper command
74
+ * @param lines - Number of lines to feed
75
+ */
76
+ getFeedLinesCommand(lines: number): number[];
77
+ }
78
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/command-adapters/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,OAAO,IAAI,MAAM,CAAC;IAElB;;OAEG;IACH,mBAAmB,IAAI,aAAa,CAAC;IAErC;;;OAGG;IACH,cAAc,IAAI,MAAM,EAAE,CAAC;IAE3B;;;OAGG;IACH,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,EAAE,CAAC;IAE9D;;;;;OAKG;IACH,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,EAAE,CAAC;IAEhF;;;OAGG;IACH,qBAAqB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAE/C;;;;OAIG;IACH,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAEtE;;;;OAIG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAEvD;;;;;OAKG;IACH,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAEpF;;;OAGG;IACH,kBAAkB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAE7C;;;OAGG;IACH,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC9C"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ /**
3
+ * Command Adapter Interface
4
+ *
5
+ * Abstracts printer-specific ESC/POS command generation to support
6
+ * different printer protocols (ESC/POS, ESC/Bematech, etc.)
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });