@risleylima/escpos 0.2.0 → 1.0.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 (106) hide show
  1. package/README.md +94 -766
  2. package/dist/adapter/index.d.ts +29 -0
  3. package/dist/adapter/index.d.ts.map +1 -0
  4. package/dist/adapter/index.js +25 -0
  5. package/dist/adapter/index.js.map +1 -0
  6. package/dist/index.d.ts +14 -0
  7. package/dist/index.d.ts.map +1 -0
  8. package/dist/index.js +25 -0
  9. package/dist/index.js.map +1 -0
  10. package/dist/network-adapter/index.d.ts +24 -0
  11. package/dist/network-adapter/index.d.ts.map +1 -0
  12. package/dist/network-adapter/index.js +263 -0
  13. package/dist/network-adapter/index.js.map +1 -0
  14. package/dist/printer/commands-types.d.ts +37 -0
  15. package/dist/printer/commands-types.d.ts.map +1 -0
  16. package/dist/printer/commands-types.js +63 -0
  17. package/dist/printer/commands-types.js.map +1 -0
  18. package/dist/printer/commands.d.ts +169 -0
  19. package/dist/printer/commands.d.ts.map +1 -0
  20. package/dist/printer/commands.js +192 -0
  21. package/dist/printer/commands.js.map +1 -0
  22. package/dist/printer/image-loader.d.ts +17 -0
  23. package/dist/printer/image-loader.d.ts.map +1 -0
  24. package/dist/printer/image-loader.js +462 -0
  25. package/dist/printer/image-loader.js.map +1 -0
  26. package/dist/printer/image.d.ts +43 -0
  27. package/dist/printer/image.d.ts.map +1 -0
  28. package/dist/printer/image.js +132 -0
  29. package/dist/printer/image.js.map +1 -0
  30. package/dist/printer/index.d.ts +158 -0
  31. package/dist/printer/index.d.ts.map +1 -0
  32. package/dist/printer/index.js +703 -0
  33. package/dist/printer/index.js.map +1 -0
  34. package/dist/printer/profiles/bematech/mp4200th.d.ts +13 -0
  35. package/dist/printer/profiles/bematech/mp4200th.d.ts.map +1 -0
  36. package/dist/printer/profiles/bematech/mp4200th.js +29 -0
  37. package/dist/printer/profiles/bematech/mp4200th.js.map +1 -0
  38. package/dist/printer/profiles/custom/bematech-mp4200th.d.ts +13 -0
  39. package/dist/printer/profiles/custom/bematech-mp4200th.d.ts.map +1 -0
  40. package/dist/printer/profiles/custom/bematech-mp4200th.js +21 -0
  41. package/dist/printer/profiles/custom/bematech-mp4200th.js.map +1 -0
  42. package/dist/printer/profiles/custom/vkp80iii.d.ts +19 -0
  43. package/dist/printer/profiles/custom/vkp80iii.d.ts.map +1 -0
  44. package/dist/printer/profiles/custom/vkp80iii.js +87 -0
  45. package/dist/printer/profiles/custom/vkp80iii.js.map +1 -0
  46. package/dist/printer/profiles/default.d.ts +7 -0
  47. package/dist/printer/profiles/default.d.ts.map +1 -0
  48. package/dist/printer/profiles/default.js +15 -0
  49. package/dist/printer/profiles/default.js.map +1 -0
  50. package/dist/printer/profiles/index.d.ts +41 -0
  51. package/dist/printer/profiles/index.d.ts.map +1 -0
  52. package/dist/printer/profiles/index.js +98 -0
  53. package/dist/printer/profiles/index.js.map +1 -0
  54. package/dist/printer/profiles/merge.d.ts +7 -0
  55. package/dist/printer/profiles/merge.d.ts.map +1 -0
  56. package/dist/printer/profiles/merge.js +58 -0
  57. package/dist/printer/profiles/merge.js.map +1 -0
  58. package/dist/printer/profiles/types.d.ts +99 -0
  59. package/dist/printer/profiles/types.d.ts.map +1 -0
  60. package/dist/printer/profiles/types.js +8 -0
  61. package/dist/printer/profiles/types.js.map +1 -0
  62. package/dist/printer/utils.d.ts +9 -0
  63. package/dist/printer/utils.d.ts.map +1 -0
  64. package/dist/printer/utils.js +54 -0
  65. package/dist/printer/utils.js.map +1 -0
  66. package/dist/serial-adapter/index.d.ts +17 -0
  67. package/dist/serial-adapter/index.d.ts.map +1 -0
  68. package/dist/serial-adapter/index.js +172 -0
  69. package/dist/serial-adapter/index.js.map +1 -0
  70. package/dist/usb-adapter/index.d.ts +20 -0
  71. package/dist/usb-adapter/index.d.ts.map +1 -0
  72. package/dist/usb-adapter/index.js +264 -0
  73. package/dist/usb-adapter/index.js.map +1 -0
  74. package/package.json +42 -15
  75. package/CHANGELOG.md +0 -68
  76. package/docs/COVERAGE_ANALYSIS.md +0 -98
  77. package/docs/DEPENDENCIES_REVIEW.md +0 -127
  78. package/docs/JSDOC_REVIEW.md +0 -122
  79. package/docs/LIBRARY_OVERVIEW.md +0 -383
  80. package/docs/PRE_PUBLISH_CHECKLIST.md +0 -331
  81. package/docs/PUBLIC_API_ANALYSIS.md +0 -223
  82. package/docs/README.md +0 -34
  83. package/docs/SERIALPORT_V13_MIGRATION_COMPLETE.md +0 -127
  84. package/docs/TESTS_IMPLEMENTED.md +0 -129
  85. package/docs/USB_V2_REVIEW.md +0 -148
  86. package/docs/VERIFICATION_RESULTS.md +0 -172
  87. package/examples/printTest.js +0 -59
  88. package/index.js +0 -7
  89. package/jest.config.js +0 -16
  90. package/src/adapter/index.js +0 -75
  91. package/src/printer/commands.js +0 -199
  92. package/src/printer/image.js +0 -159
  93. package/src/printer/index.js +0 -621
  94. package/src/printer/utils.js +0 -58
  95. package/src/serial-adapter/index.js +0 -198
  96. package/src/usb-adapter/index.js +0 -283
  97. package/tests/README.md +0 -67
  98. package/tests/integration/printer-flow.test.js +0 -128
  99. package/tests/unit/adapters/adapter.test.js +0 -49
  100. package/tests/unit/adapters/serial-adapter.test.js +0 -238
  101. package/tests/unit/adapters/usb-adapter.test.js +0 -319
  102. package/tests/unit/image/image.test.js +0 -157
  103. package/tests/unit/printer/buffer.test.js +0 -60
  104. package/tests/unit/printer/commands.test.js +0 -109
  105. package/tests/unit/printer/printer.test.js +0 -405
  106. package/tests/unit/utils/utils.test.js +0 -96
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image.js","sourceRoot":"","sources":["../../src/printer/image.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,158 @@
1
+ import type { CommandSet } from './commands-types';
2
+ import type { PrinterProfile, ProfileRegistry, TicketPresentationOptions, BarcodeOptions, QrCodeOptions } from './profiles';
3
+ import { Image } from './image';
4
+ import type { AdapterLike } from '../adapter';
5
+ export interface PrinterOptions {
6
+ encoding?: string;
7
+ width?: number;
8
+ /** Profile id (e.g. 'default', 'custom-vkp80iii') or profile object. */
9
+ profile?: string | PrinterProfile;
10
+ /**
11
+ * Default presentation options used by profile ticket presentation builder
12
+ * (when available), e.g. CUSTOM VKP80III FS P params.
13
+ */
14
+ ticketPresentation?: TicketPresentationOptions;
15
+ /** Optional isolated profile registry for multi-tenant environments. */
16
+ profileRegistry?: ProfileRegistry;
17
+ /** Max bytes to buffer before throwing an error (prevents OOM). Default: 10MB. */
18
+ maxBufferSize?: number;
19
+ }
20
+ export interface RowColumn {
21
+ text: string;
22
+ width: number;
23
+ align?: 'left' | 'right' | 'center';
24
+ }
25
+ export interface LineItemOptions {
26
+ descWidth?: number;
27
+ priceWidth?: number;
28
+ qtyWidth?: number;
29
+ }
30
+ export interface TotalOptions {
31
+ bold?: boolean;
32
+ }
33
+ export interface PresentTicketOptions extends TicketPresentationOptions {
34
+ /** Feed lines before presentation/cut sequence. */
35
+ feed?: number;
36
+ /** When true and model requires explicit cut, send partial cut. Default: true. */
37
+ part?: boolean;
38
+ }
39
+ declare class SpecBuffer {
40
+ private chunks;
41
+ private currentSize;
42
+ private maxSize;
43
+ constructor(maxSize?: number);
44
+ write(data: Buffer | string, type?: BufferEncoding | string): void;
45
+ prepend(data: Buffer): void;
46
+ flush(): Buffer;
47
+ size(): number;
48
+ }
49
+ export declare class Printer {
50
+ adapter: AdapterLike;
51
+ buffer: SpecBuffer;
52
+ encoding: string;
53
+ width: number;
54
+ options?: PrinterOptions;
55
+ /** Resolved profile, if any (used for paper width command and validation). */
56
+ profile?: PrinterProfile;
57
+ Image: typeof Image;
58
+ commands: CommandSet;
59
+ private styleMap;
60
+ private currentCodepage?;
61
+ private resolveTicketPresentationCommand;
62
+ private ioChain;
63
+ constructor(adapter: AdapterLike, options?: PrinterOptions);
64
+ private enqueueIo;
65
+ /**
66
+ * Set paper width (characters per line). If the profile defines a hardware command
67
+ * (e.g. GS W), it is sent to the printer; otherwise only the internal width is updated.
68
+ */
69
+ paperWidth(width: number): this;
70
+ setCharacterCodeTable(codeTable: number): this;
71
+ margin(type: string, size: number): this;
72
+ marginBottomCancel(): this;
73
+ print(content: string | Buffer): this;
74
+ println(content: string | Buffer): this;
75
+ newLine(): this;
76
+ /**
77
+ * Internal helper to set codepage based on encoding if profile supports it.
78
+ */
79
+ private autoSetCodepage;
80
+ /**
81
+ * Print text with encoding. If the profile has a mapping for the encoding,
82
+ * it automatically sends the codepage command (ESC t n).
83
+ */
84
+ text(content: string, encoding?: string): this;
85
+ textln(content: string, encoding?: string): this;
86
+ drawLine(character?: string): this;
87
+ section(title: string, encoding?: string): this;
88
+ center(content: string, encoding?: string): this;
89
+ centerln(content: string, encoding?: string): this;
90
+ right(content: string, encoding?: string): this;
91
+ rightln(content: string, encoding?: string): this;
92
+ row(columns: RowColumn[], encoding?: string): this;
93
+ /**
94
+ * Alias for row() but allows using decimal proportions for widths (e.g. 0.5 for 50%).
95
+ */
96
+ tableCustom(columns: Array<{
97
+ text: string;
98
+ width: number;
99
+ align?: 'LEFT' | 'CENTER' | 'RIGHT';
100
+ }>, encoding?: string): this;
101
+ lineItem(desc: string, price: string | number, optionsOrEncoding?: LineItemOptions | string, encoding?: string): this;
102
+ lineItemWithQty(desc: string, qty: string | number, price: string | number, optionsOrEncoding?: LineItemOptions | string, encoding?: string): this;
103
+ total(label: string, value: string | number, optionsOrEncoding?: TotalOptions | string, encoding?: string): this;
104
+ encode(encoding: string): this;
105
+ feed(n?: number): this;
106
+ feedLines(n: number): this;
107
+ control(ctrl: string): this;
108
+ align(align: string): this;
109
+ font(family: string): this;
110
+ style(type: string): this;
111
+ size(width: number, height: number): this;
112
+ /** Write default or parameterised command (DRY for spacing/lineSpace). */
113
+ private writeOptionalNumber;
114
+ spacing(n?: number | null): this;
115
+ lineSpace(n?: number | null): this;
116
+ hardware(hw: string): this;
117
+ barcode(code: string, type?: string, options?: BarcodeOptions): this;
118
+ image(image: Image, density?: string): this;
119
+ raster(image: Image, mode?: string): this;
120
+ cashdraw(pin?: 2 | 5): this;
121
+ beep(n?: number, t?: number): this;
122
+ /**
123
+ * Feed paper then cut.
124
+ * If the profile has ejectCommandIncludesCut (e.g. CUSTOM VKP80III),
125
+ * we still send feed if feed > 0 before the eject command.
126
+ */
127
+ cut(part?: boolean, feed?: number): this;
128
+ /**
129
+ * High-level ticket presentation API.
130
+ * Uses profile-specific presentation command when available; otherwise falls back to cut().
131
+ */
132
+ presentTicket(options?: PresentTicketOptions): this;
133
+ flush(): Promise<this>;
134
+ close(options?: {
135
+ timeout?: number;
136
+ }): Promise<this>;
137
+ color(color: 0 | 1): this;
138
+ setReverseColors(bool: boolean): this;
139
+ setReverseColorsAlt(bool: boolean): this;
140
+ raw(data: Buffer | string): this;
141
+ /**
142
+ * Modern QR Code implementation using GS ( k.
143
+ * QR sequence (cn=49): fn=65 (model), fn=67 (module size), fn=69 (EC level), fn=80 (store), fn=81 (print).
144
+ */
145
+ qrcode(code: string, options?: QrCodeOptions): this;
146
+ /**
147
+ * Legacy 2D code command using ESC Z / GS Z command family.
148
+ * Use `qrcode(...)` for modern GS ( k flow when possible.
149
+ */
150
+ code2d(code: string, type?: 'PDF417' | 'DATAMATRIX' | 'QR', level?: 'L' | 'M' | 'Q' | 'H'): this;
151
+ /**
152
+ * Request printer status in real-time.
153
+ * Returns a Buffer with the status byte.
154
+ */
155
+ getStatus(type?: 'PRINTER' | 'OFFLINE' | 'ERROR' | 'PAPER'): Promise<Buffer>;
156
+ }
157
+ export {};
158
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/printer/index.ts"],"names":[],"mappings":"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"}