portakal-lite 0.0.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.
- package/LICENSE +25 -0
- package/README.md +159 -0
- package/dist/builder.d.ts +39 -0
- package/dist/builder.js +250 -0
- package/dist/builder.js.map +1 -0
- package/dist/errors.d.ts +11 -0
- package/dist/errors.js +18 -0
- package/dist/errors.js.map +1 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.js +17 -0
- package/dist/index.js.map +1 -0
- package/dist/lang/tsc.d.ts +16 -0
- package/dist/lang/tsc.js +217 -0
- package/dist/lang/tsc.js.map +1 -0
- package/dist/lang/zpl.d.ts +16 -0
- package/dist/lang/zpl.js +262 -0
- package/dist/lang/zpl.js.map +1 -0
- package/dist/languages/tsc.d.ts +3 -0
- package/dist/languages/tsc.js +161 -0
- package/dist/languages/tsc.js.map +1 -0
- package/dist/languages/zpl.d.ts +3 -0
- package/dist/languages/zpl.js +205 -0
- package/dist/languages/zpl.js.map +1 -0
- package/dist/profiles.d.ts +61 -0
- package/dist/profiles.js +102 -0
- package/dist/profiles.js.map +1 -0
- package/dist/raster.d.ts +39 -0
- package/dist/raster.js +204 -0
- package/dist/raster.js.map +1 -0
- package/dist/receipt.d.ts +22 -0
- package/dist/receipt.js +91 -0
- package/dist/receipt.js.map +1 -0
- package/dist/types.d.ts +336 -0
- package/dist/types.js +6 -0
- package/dist/types.js.map +1 -0
- package/dist/utils.d.ts +15 -0
- package/dist/utils.js +28 -0
- package/dist/utils.js.map +1 -0
- package/package.json +46 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
|
package/dist/utils.d.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { Unit } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Convert a measurement to dots based on unit and DPI.
|
|
4
|
+
* Throws InvalidConfigError for non-finite values so malformed
|
|
5
|
+
* commands like "SIZE NaN mm" are never generated.
|
|
6
|
+
*/
|
|
7
|
+
export declare function toDots(value: number, unit: Unit, dpi: number): number;
|
|
8
|
+
/**
|
|
9
|
+
* Default TSPL font "0" base size in dots at a given DPI.
|
|
10
|
+
* 203 DPI → 12×24 dots (~1.5×3 mm); 300 DPI → 18×36 dots.
|
|
11
|
+
*/
|
|
12
|
+
export declare function defaultFontBase(dpi: number): {
|
|
13
|
+
width: number;
|
|
14
|
+
height: number;
|
|
15
|
+
};
|
package/dist/utils.js
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { InvalidConfigError } from "./errors.js";
|
|
2
|
+
/**
|
|
3
|
+
* Convert a measurement to dots based on unit and DPI.
|
|
4
|
+
* Throws InvalidConfigError for non-finite values so malformed
|
|
5
|
+
* commands like "SIZE NaN mm" are never generated.
|
|
6
|
+
*/
|
|
7
|
+
export function toDots(value, unit, dpi) {
|
|
8
|
+
if (!Number.isFinite(value)) {
|
|
9
|
+
throw new InvalidConfigError(`Invalid measurement: ${String(value)} (must be a finite number)`);
|
|
10
|
+
}
|
|
11
|
+
switch (unit) {
|
|
12
|
+
case "dot":
|
|
13
|
+
return Math.round(value);
|
|
14
|
+
case "mm":
|
|
15
|
+
return Math.round(value * (dpi / 25.4));
|
|
16
|
+
case "inch":
|
|
17
|
+
return Math.round(value * dpi);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Default TSPL font "0" base size in dots at a given DPI.
|
|
22
|
+
* 203 DPI → 12×24 dots (~1.5×3 mm); 300 DPI → 18×36 dots.
|
|
23
|
+
*/
|
|
24
|
+
export function defaultFontBase(dpi) {
|
|
25
|
+
const scale = dpi >= 300 ? 1.5 : 1;
|
|
26
|
+
return { width: Math.round(12 * scale), height: Math.round(24 * scale) };
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD;;;;GAIG;AACH,MAAM,UAAU,MAAM,CAAC,KAAa,EAAE,IAAU,EAAE,GAAW;IAC3D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,kBAAkB,CAAC,wBAAwB,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAClG,CAAC;IACD,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,KAAK;YACR,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,KAAK,IAAI;YACP,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC;QAC1C,KAAK,MAAM;YACT,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;IACnC,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,MAAM,KAAK,GAAG,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACnC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC;AAC3E,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "portakal-lite",
|
|
3
|
+
"version": "0.0.1",
|
|
4
|
+
"description": "Standalone TSC/TSPL2 + ZPL II label compiler with SVG preview and receipt layout helpers. Zero dependencies, no transport layer — you get a printer-ready string.",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"printer",
|
|
7
|
+
"label-printer",
|
|
8
|
+
"thermal-printer",
|
|
9
|
+
"tsc",
|
|
10
|
+
"tspl",
|
|
11
|
+
"zpl",
|
|
12
|
+
"label",
|
|
13
|
+
"receipt",
|
|
14
|
+
"typescript",
|
|
15
|
+
"zero-dependency"
|
|
16
|
+
],
|
|
17
|
+
"license": "MIT",
|
|
18
|
+
"type": "module",
|
|
19
|
+
"sideEffects": false,
|
|
20
|
+
"files": [
|
|
21
|
+
"dist"
|
|
22
|
+
],
|
|
23
|
+
"main": "./dist/index.js",
|
|
24
|
+
"module": "./dist/index.js",
|
|
25
|
+
"types": "./dist/index.d.ts",
|
|
26
|
+
"exports": {
|
|
27
|
+
".": {
|
|
28
|
+
"types": "./dist/index.d.ts",
|
|
29
|
+
"default": "./dist/index.js"
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
"scripts": {
|
|
33
|
+
"build": "tsc -p tsconfig.build.json",
|
|
34
|
+
"typecheck": "tsc --noEmit",
|
|
35
|
+
"test": "vitest run",
|
|
36
|
+
"test:watch": "vitest",
|
|
37
|
+
"prepublishOnly": "npm run build && npm run typecheck && npm test"
|
|
38
|
+
},
|
|
39
|
+
"dependencies": {
|
|
40
|
+
"etiket": ">=0.12.0"
|
|
41
|
+
},
|
|
42
|
+
"devDependencies": {
|
|
43
|
+
"typescript": "^5.9.3",
|
|
44
|
+
"vitest": "^4.1.10"
|
|
45
|
+
}
|
|
46
|
+
}
|