medusa-pos-plugin 0.0.40 → 0.0.42
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/.medusa/server/src/api/admin/barcode-template/route.js +9 -3
- package/.medusa/server/src/api/admin/pos/catalog/route.js +44 -1
- package/.medusa/server/src/api/admin/pos/print-settings/route.js +35 -0
- package/.medusa/server/src/utils/barcode-labels.js +16 -7
- package/.medusa/server/src/utils/barcode-template-default.js +1 -1
- package/.medusa/server/src/utils/barcode-templates.js +200 -0
- package/.medusa/server/src/utils/pos-access.js +2 -1
- package/.medusa/server/src/utils/pos-auto-promotions.js +1 -1
- package/.medusa/server/src/utils/print-settings-store.js +80 -0
- package/.medusa/server/src/utils/print-templates-catalog.js +80 -0
- package/README.md +1 -1
- package/package.json +1 -1
|
@@ -4,6 +4,8 @@ exports.GET = GET;
|
|
|
4
4
|
exports.POST = POST;
|
|
5
5
|
const utils_1 = require("@medusajs/framework/utils");
|
|
6
6
|
const barcode_labels_1 = require("../../../utils/barcode-labels");
|
|
7
|
+
const barcode_templates_1 = require("../../../utils/barcode-templates");
|
|
8
|
+
const print_settings_store_1 = require("../../../utils/print-settings-store");
|
|
7
9
|
const VARIANT_FIELDS = [
|
|
8
10
|
"id",
|
|
9
11
|
"barcode",
|
|
@@ -52,7 +54,9 @@ async function resolveRegionId(scope, requested) {
|
|
|
52
54
|
*/
|
|
53
55
|
async function GET(req, res) {
|
|
54
56
|
try {
|
|
55
|
-
|
|
57
|
+
(0, barcode_labels_1.warnIgnoredHostBarcodeTemplate)();
|
|
58
|
+
const { barcodeTemplateId } = (0, print_settings_store_1.getPrintSettings)();
|
|
59
|
+
const template = (0, barcode_templates_1.resolveBarcodeTemplate)(barcodeTemplateId);
|
|
56
60
|
const contactDetails = await loadContactDetails(req.scope);
|
|
57
61
|
res.json({ template, contactDetails });
|
|
58
62
|
}
|
|
@@ -79,7 +83,9 @@ async function POST(req, res) {
|
|
|
79
83
|
const uniqueVariantIds = [...new Set(printQueue)];
|
|
80
84
|
const printWidth = Number(body.print_width) || 2;
|
|
81
85
|
const printHeight = Number(body.print_height) || 60;
|
|
82
|
-
|
|
86
|
+
(0, barcode_labels_1.warnIgnoredHostBarcodeTemplate)();
|
|
87
|
+
const { barcodeTemplateId } = (0, print_settings_store_1.getPrintSettings)();
|
|
88
|
+
const template = (0, barcode_templates_1.resolveBarcodeTemplate)(barcodeTemplateId);
|
|
83
89
|
const contactHtml = (0, barcode_labels_1.buildContactHtml)(await loadContactDetails(req.scope));
|
|
84
90
|
const regionId = await resolveRegionId(req.scope, body.region_id);
|
|
85
91
|
const query = req.scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
|
|
@@ -129,4 +135,4 @@ async function POST(req, res) {
|
|
|
129
135
|
});
|
|
130
136
|
}
|
|
131
137
|
}
|
|
132
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
138
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL2JhcmNvZGUtdGVtcGxhdGUvcm91dGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFpR0Esa0JBY0M7QUFTRCxvQkEwRUM7QUFqTUQscURBSWtDO0FBQ2xDLGtFQVNzQztBQUN0Qyx3RUFBeUU7QUFDekUsOEVBQXNFO0FBdUJ0RSxNQUFNLGNBQWMsR0FBRztJQUNyQixJQUFJO0lBQ0osU0FBUztJQUNULEtBQUs7SUFDTCxZQUFZO0lBQ1osZUFBZTtJQUNmLGVBQWU7SUFDZixzQkFBc0I7SUFDdEIsb0JBQW9CO0lBQ3BCLHlCQUF5QjtJQUN6QixnQ0FBZ0M7SUFDaEMsZ0NBQWdDO0NBQ2pDLENBQUE7QUFFRCxTQUFTLFlBQVksQ0FBQyxLQUFjO0lBQ2xDLE9BQU8sQ0FDTCxDQUFDLENBQUMsS0FBSztRQUNQLE9BQU8sS0FBSyxLQUFLLFFBQVE7UUFDekIsT0FBUSxLQUEwQixDQUFDLEVBQUUsS0FBSyxRQUFRLENBQ25ELENBQUE7QUFDSCxDQUFDO0FBRUQsS0FBSyxVQUFVLGtCQUFrQixDQUMvQixLQUE2QjtJQUU3QixJQUFJLENBQUM7UUFDSCxNQUFNLG9CQUFvQixHQUN4QixLQUFLLENBQUMsT0FBTyxDQUF1QixnQkFBZ0IsQ0FBQyxDQUFBO1FBQ3ZELE9BQU8sSUFBQSx5Q0FBd0IsRUFBQyxNQUFNLG9CQUFvQixDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUE7SUFDMUUsQ0FBQztJQUFDLE9BQU8sV0FBVyxFQUFFLENBQUM7UUFDckIsT0FBTyxDQUFDLElBQUksQ0FBQyxvREFBb0QsRUFBRSxXQUFXLENBQUMsQ0FBQTtRQUMvRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBQTtJQUM5QyxDQUFDO0FBQ0gsQ0FBQztBQUVELEtBQUssVUFBVSxl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
|
|
@@ -121,6 +121,49 @@ async function GET(req, res) {
|
|
|
121
121
|
}
|
|
122
122
|
total = products.length;
|
|
123
123
|
}
|
|
124
|
+
const allVariantIds = [];
|
|
125
|
+
for (const p of products) {
|
|
126
|
+
if (Array.isArray(p.variants)) {
|
|
127
|
+
for (const v of p.variants) {
|
|
128
|
+
if (v && typeof v.id === "string") {
|
|
129
|
+
allVariantIds.push(v.id);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
if (allVariantIds.length > 0) {
|
|
135
|
+
try {
|
|
136
|
+
const knex = req.scope.resolve(utils_1.ContainerRegistrationKeys.PG_CONNECTION);
|
|
137
|
+
if (knex) {
|
|
138
|
+
const rows = await knex("variant_cost_price")
|
|
139
|
+
.whereIn("variant_id", allVariantIds)
|
|
140
|
+
.whereNull("deleted_at")
|
|
141
|
+
.select("variant_id", "cost_price", "mrp");
|
|
142
|
+
const costMap = new Map();
|
|
143
|
+
for (const r of rows || []) {
|
|
144
|
+
costMap.set(r.variant_id, {
|
|
145
|
+
cost_price: Number(r.cost_price) || 0,
|
|
146
|
+
mrp: Number(r.mrp) || 0,
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
for (const p of products) {
|
|
150
|
+
if (Array.isArray(p.variants)) {
|
|
151
|
+
for (const v of p.variants) {
|
|
152
|
+
if (v && typeof v.id === "string") {
|
|
153
|
+
const pricing = costMap.get(v.id);
|
|
154
|
+
v.cost_price = pricing ? pricing.cost_price : 0;
|
|
155
|
+
v.unit_cost = pricing ? pricing.cost_price : 0;
|
|
156
|
+
v.mrp = pricing ? pricing.mrp : null;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
catch (err) {
|
|
164
|
+
console.warn("[pos catalog] failed to enrich variant_cost_price:", err);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
124
167
|
const ms = Math.round(performance.now() - t0);
|
|
125
168
|
console.log(`[pos catalog] channel=${salesChannelId || "all"} products=${products.length} ms=${ms}`);
|
|
126
169
|
res.status(200).json({
|
|
@@ -136,4 +179,4 @@ async function GET(req, res) {
|
|
|
136
179
|
});
|
|
137
180
|
}
|
|
138
181
|
}
|
|
139
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
182
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Bvcy9jYXRhbG9nL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBb0NBLGtCQXNLQztBQXpNRCxxREFBcUU7QUFNckUsTUFBTSxjQUFjLEdBQUc7SUFDckIsSUFBSTtJQUNKLE9BQU87SUFDUCxXQUFXO0lBQ1gsUUFBUTtJQUNSLFFBQVE7SUFDUixhQUFhO0lBQ2IsZ0JBQWdCO0lBQ2hCLGNBQWM7SUFDZCxrQkFBa0I7SUFDbEIsY0FBYztJQUNkLGNBQWM7SUFDZCx3QkFBd0I7SUFDeEIsK0JBQStCO0lBQy9CLHFCQUFxQjtJQUNyQix3QkFBd0I7SUFDeEIsNEJBQTRCO0lBQzVCLDRCQUE0QjtJQUM1QiwrQkFBK0I7SUFDL0IsWUFBWTtJQUNaLGVBQWU7SUFDZixtQkFBbUI7SUFDbkIsc0JBQXNCO0NBQ3ZCLENBQUE7QUFFRDs7O0dBR0c7QUFDSSxLQUFLLFVBQVUsR0FBRyxDQUFDLEdBQWtCLEVBQUUsR0FBbUI7SUFDL0QsTUFBTSxXQUFXLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBaUIsQ0FBQTtJQUNyRCxNQUFNLGNBQWMsR0FDbEIsT0FBTyxXQUFXLENBQUMsZ0JBQWdCLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQTtJQUU3RixNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxpQ0FBeUIsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUNoRSxNQUFNLEVBQUUsR0FBRyxXQUFXLENBQUMsR0FBRyxFQUFFLENBQUE7SUFFNUIsSUFBSSxDQUFDO1FBQ0gsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFBO1FBQ3BCLElBQUksTUFBTSxHQUFHLENBQUMsQ0FBQTtRQUNk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
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GET = GET;
|
|
4
|
+
exports.PATCH = PATCH;
|
|
5
|
+
const print_templates_catalog_1 = require("../../../../utils/print-templates-catalog");
|
|
6
|
+
const print_settings_store_1 = require("../../../../utils/print-settings-store");
|
|
7
|
+
function responsePayload() {
|
|
8
|
+
const settings = (0, print_settings_store_1.getPrintSettings)();
|
|
9
|
+
return {
|
|
10
|
+
billTemplateId: settings.billTemplateId,
|
|
11
|
+
barcodeTemplateId: settings.barcodeTemplateId,
|
|
12
|
+
catalog: (0, print_templates_catalog_1.printTemplatesCatalog)(),
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* GET /admin/pos/print-settings
|
|
17
|
+
*/
|
|
18
|
+
async function GET(_req, res) {
|
|
19
|
+
res.status(200).json(responsePayload());
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* PATCH /admin/pos/print-settings
|
|
23
|
+
* Body: { billTemplateId?, barcodeTemplateId? }
|
|
24
|
+
*/
|
|
25
|
+
async function PATCH(req, res) {
|
|
26
|
+
const body = (req.body && typeof req.body === "object"
|
|
27
|
+
? req.body
|
|
28
|
+
: {});
|
|
29
|
+
(0, print_settings_store_1.updatePrintSettings)({
|
|
30
|
+
billTemplateId: body.billTemplateId,
|
|
31
|
+
barcodeTemplateId: body.barcodeTemplateId,
|
|
32
|
+
});
|
|
33
|
+
res.status(200).json(responsePayload());
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Bvcy9wcmludC1zZXR0aW5ncy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQW1CQSxrQkFFQztBQU1ELHNCQVdDO0FBckNELHVGQUFpRjtBQUNqRixpRkFHK0M7QUFFL0MsU0FBUyxlQUFlO0lBQ3RCLE1BQU0sUUFBUSxHQUFHLElBQUEsdUNBQWdCLEdBQUUsQ0FBQTtJQUNuQyxPQUFPO1FBQ0wsY0FBYyxFQUFFLFFBQVEsQ0FBQyxjQUFjO1FBQ3ZDLGlCQUFpQixFQUFFLFFBQVEsQ0FBQyxpQkFBaUI7UUFDN0MsT0FBTyxFQUFFLElBQUEsK0NBQXFCLEdBQUU7S0FDakMsQ0FBQTtBQUNILENBQUM7QUFFRDs7R0FFRztBQUNJLEtBQUssVUFBVSxHQUFHLENBQUMsSUFBbUIsRUFBRSxHQUFtQjtJQUNoRSxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFBO0FBQ3pDLENBQUM7QUFFRDs7O0dBR0c7QUFDSSxLQUFLLFVBQVUsS0FBSyxDQUFDLEdBQWtCLEVBQUUsR0FBbUI7SUFDakUsTUFBTSxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxJQUFJLE9BQU8sR0FBRyxDQUFDLElBQUksS0FBSyxRQUFRO1FBQ3BELENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSTtRQUNWLENBQUMsQ0FBQyxFQUFFLENBQTRCLENBQUE7SUFFbEMsSUFBQSwwQ0FBbUIsRUFBQztRQUNsQixjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWM7UUFDbkMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjtLQUMxQyxDQUFDLENBQUE7SUFFRixHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFBO0FBQ3pDLENBQUMifQ==
|
|
@@ -13,11 +13,12 @@ exports.buildContactHtml = buildContactHtml;
|
|
|
13
13
|
exports.resolvePrices = resolvePrices;
|
|
14
14
|
exports.buildPriceHtml = buildPriceHtml;
|
|
15
15
|
exports.buildOptionsHtml = buildOptionsHtml;
|
|
16
|
+
exports.warnIgnoredHostBarcodeTemplate = warnIgnoredHostBarcodeTemplate;
|
|
16
17
|
exports.loadBarcodeTemplate = loadBarcodeTemplate;
|
|
17
18
|
exports.renderBarcodeLabelsHtml = renderBarcodeLabelsHtml;
|
|
18
19
|
const fs_1 = __importDefault(require("fs"));
|
|
19
20
|
const path_1 = __importDefault(require("path"));
|
|
20
|
-
const
|
|
21
|
+
const barcode_templates_1 = require("./barcode-templates");
|
|
21
22
|
exports.MAX_BARCODE_QTY_PER_VARIANT = 500;
|
|
22
23
|
/** Host override path, relative to the Medusa project root. */
|
|
23
24
|
exports.HOST_BARCODE_TEMPLATE_PATH = path_1.default.join("templates", "barcode-template.html");
|
|
@@ -173,18 +174,26 @@ function buildOptionsHtml(variant) {
|
|
|
173
174
|
})
|
|
174
175
|
.join("");
|
|
175
176
|
}
|
|
176
|
-
|
|
177
|
-
|
|
177
|
+
let hostTemplateIgnoredLogged = false;
|
|
178
|
+
/** Logs once in non-production when a legacy host template file exists (ignored). */
|
|
179
|
+
function warnIgnoredHostBarcodeTemplate(cwd = process.cwd()) {
|
|
180
|
+
if (hostTemplateIgnoredLogged || process.env.NODE_ENV === "production")
|
|
181
|
+
return;
|
|
178
182
|
const hostPath = path_1.default.join(cwd, exports.HOST_BARCODE_TEMPLATE_PATH);
|
|
179
183
|
try {
|
|
180
184
|
if (fs_1.default.existsSync(hostPath)) {
|
|
181
|
-
|
|
185
|
+
hostTemplateIgnoredLogged = true;
|
|
186
|
+
console.warn("[medusa-pos-plugin] templates/barcode-template.html is ignored; select a template via GET/PATCH /admin/pos/print-settings (barcodeTemplateId).");
|
|
182
187
|
}
|
|
183
188
|
}
|
|
184
189
|
catch {
|
|
185
|
-
//
|
|
190
|
+
// ignore
|
|
186
191
|
}
|
|
187
|
-
|
|
192
|
+
}
|
|
193
|
+
/** @deprecated Use resolveBarcodeTemplate(templateId) */
|
|
194
|
+
function loadBarcodeTemplate(cwd = process.cwd(), templateId) {
|
|
195
|
+
warnIgnoredHostBarcodeTemplate(cwd);
|
|
196
|
+
return (0, barcode_templates_1.resolveBarcodeTemplate)(templateId);
|
|
188
197
|
}
|
|
189
198
|
function buildPrintScript(barcodesList, printWidth, printHeight) {
|
|
190
199
|
return `
|
|
@@ -333,4 +342,4 @@ function renderBarcodeLabelsHtml(input) {
|
|
|
333
342
|
html = html.replace("</body>", buildPrintScript(barcodesList, input.printWidth, input.printHeight));
|
|
334
343
|
return { html, count: input.variants.length };
|
|
335
344
|
}
|
|
336
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyY29kZS1sYWJlbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdXRpbHMvYmFyY29kZS1sYWJlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBdURBLDRCQUlDO0FBR0Qsc0RBNEJDO0FBR0QsMENBV0M7QUFPRCxnQ0FNQztBQUdELDREQVVDO0FBRUQsNENBK0JDO0FBRUQsc0NBMENDO0FBRUQsd0NBaUJDO0FBRUQsNENBVUM7QUFHRCxrREFVQztBQTRIRCwwREFxREM7QUE1YUQsNENBQW1CO0FBQ25CLGdEQUF1QjtBQUN2Qix5RUFBMEU7QUE2QzdELFFBQUEsMkJBQTJCLEdBQUcsR0FBRyxDQUFBO0FBRTlDLCtEQUErRDtBQUNsRCxRQUFBLDBCQUEwQixHQUFHLGNBQUksQ0FBQyxJQUFJLENBQ2pELFdBQVcsRUFDWCx1QkFBdUIsQ0FDeEIsQ0FBQTtBQUVELFNBQWdCLFFBQVEsQ0FBQyxLQUFjO0lBQ3JDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUE7SUFDbkMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7UUFBRSxPQUFPLENBQUMsQ0FBQTtJQUMxQyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLG1DQUEyQixDQUFDLENBQUE7QUFDakQsQ0FBQztBQUVELGdGQUFnRjtBQUNoRixTQUFnQixxQkFBcUIsQ0FBQyxHQUFZO0lBQ2hELElBQUksQ0FBQyxHQUFHLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUTtRQUFFLE9BQU8sRUFBRSxDQUFBO0lBQzlDLE1BQU0sSUFBSSxHQUFHLEdBQThCLENBQUE7SUFDM0MsTUFBTSxNQUFNLEdBQXFCLEVBQUUsQ0FBQTtJQUVuQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxF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
|
|
345
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyY29kZS1sYWJlbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdXRpbHMvYmFyY29kZS1sYWJlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBdURBLDRCQUlDO0FBR0Qsc0RBNEJDO0FBR0QsMENBV0M7QUFPRCxnQ0FNQztBQUdELDREQVVDO0FBRUQsNENBK0JDO0FBRUQsc0NBMENDO0FBRUQsd0NBaUJDO0FBRUQsNENBVUM7QUFLRCx3RUFhQztBQUdELGtEQU1DO0FBNEhELDBEQXFEQztBQTFiRCw0Q0FBbUI7QUFDbkIsZ0RBQXVCO0FBQ3ZCLDJEQUE0RDtBQTZDL0MsUUFBQSwyQkFBMkIsR0FBRyxHQUFHLENBQUE7QUFFOUMsK0RBQStEO0FBQ2xELFFBQUEsMEJBQTBCLEdBQUcsY0FBSSxDQUFDLElBQUksQ0FDakQsV0FBVyxFQUNYLHVCQUF1QixDQUN4QixDQUFBO0FBRUQsU0FBZ0IsUUFBUSxDQUFDLEtBQWM7SUFDckMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQTtJQUNuQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztRQUFFLE9BQU8sQ0FBQyxDQUFBO0lBQzFDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsbUNBQTJCLENBQUMsQ0FBQTtBQUNqRCxDQUFDO0FBRUQsZ0ZBQWdGO0FBQ2hGLFNBQWdCLHFCQUFxQixDQUFDLEdBQVk7SUFDaEQsSUFBSSxDQUFDLEdBQUcsSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRO1FBQUUsT0FBTyxFQUFFLENBQUE7SUFDOUMsTUFBTSxJQUFJLEdBQUcsR0FBOEIsQ0FBQTtJQUMzQyxNQUFNLE1BQU0sR0FBcUIsRUFBRSxDQUFBO0lBRW5DLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMs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
|
|
@@ -4,7 +4,7 @@ exports.DEFAULT_BARCODE_TEMPLATE_HTML = void 0;
|
|
|
4
4
|
/**
|
|
5
5
|
* Default 2in x 3in hang-tag label. Placeholders: {{ALL_TAGS_HTML}} plus, inside
|
|
6
6
|
* <template id="single-tag">, {{PRODUCT_NAME}} {{OPTIONS_HTML}} {{SKU_HTML}} {{PRICE_HTML}}
|
|
7
|
-
* {{CONTACT_DETAILS}} {{BARCODE_SVG_ID}}.
|
|
7
|
+
* {{CONTACT_DETAILS}} {{BARCODE_SVG_ID}}. Resolved by catalog id (default barcode-01).
|
|
8
8
|
*/
|
|
9
9
|
exports.DEFAULT_BARCODE_TEMPLATE_HTML = `<!DOCTYPE html>
|
|
10
10
|
<html>
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.resolveBarcodeTemplate = resolveBarcodeTemplate;
|
|
4
|
+
exports.listBundledBarcodeTemplateIds = listBundledBarcodeTemplateIds;
|
|
5
|
+
const barcode_template_default_1 = require("./barcode-template-default");
|
|
6
|
+
const print_templates_catalog_1 = require("./print-templates-catalog");
|
|
7
|
+
const GRID_SINGLE_TAG = `
|
|
8
|
+
<div class="label-card">
|
|
9
|
+
<div class="label-title">{{PRODUCT_NAME}}</div>
|
|
10
|
+
{{OPTIONS_HTML}}
|
|
11
|
+
{{SKU_HTML}}
|
|
12
|
+
<div class="label-price">{{PRICE_HTML}}</div>
|
|
13
|
+
<div class="label-barcode"><canvas id="barcode-{{BARCODE_SVG_ID}}"></canvas></div>
|
|
14
|
+
<div class="label-footer">{{CONTACT_DETAILS}}</div>
|
|
15
|
+
</div>`;
|
|
16
|
+
function buildGridBarcodeTemplate(variantClass, extraCss) {
|
|
17
|
+
return `<!DOCTYPE html>
|
|
18
|
+
<html class="${variantClass}">
|
|
19
|
+
<head>
|
|
20
|
+
<meta charset="UTF-8" />
|
|
21
|
+
<style>
|
|
22
|
+
* { box-sizing: border-box; }
|
|
23
|
+
html, body {
|
|
24
|
+
font-family: Arial, Helvetica, sans-serif;
|
|
25
|
+
margin: 0;
|
|
26
|
+
padding: 0;
|
|
27
|
+
background: #fff;
|
|
28
|
+
}
|
|
29
|
+
.tags-wrapper {
|
|
30
|
+
display: flex;
|
|
31
|
+
flex-wrap: wrap;
|
|
32
|
+
gap: 10px;
|
|
33
|
+
padding: 8px;
|
|
34
|
+
align-content: flex-start;
|
|
35
|
+
}
|
|
36
|
+
.label-card {
|
|
37
|
+
width: 180px;
|
|
38
|
+
min-height: 110px;
|
|
39
|
+
border: 1px dashed #cbd5e1;
|
|
40
|
+
border-radius: 6px;
|
|
41
|
+
padding: 8px;
|
|
42
|
+
page-break-inside: avoid;
|
|
43
|
+
display: flex;
|
|
44
|
+
flex-direction: column;
|
|
45
|
+
align-items: center;
|
|
46
|
+
text-align: center;
|
|
47
|
+
}
|
|
48
|
+
.label-title {
|
|
49
|
+
font-size: 11px;
|
|
50
|
+
font-weight: 800;
|
|
51
|
+
text-transform: uppercase;
|
|
52
|
+
line-height: 1.15;
|
|
53
|
+
margin-bottom: 4px;
|
|
54
|
+
}
|
|
55
|
+
.option-line {
|
|
56
|
+
font-size: 9px;
|
|
57
|
+
font-weight: 600;
|
|
58
|
+
text-transform: uppercase;
|
|
59
|
+
}
|
|
60
|
+
.sku-inline { font-size: 8px; color: #444; }
|
|
61
|
+
.label-price { margin: 4px 0; width: 100%; }
|
|
62
|
+
.price-label { font-size: 7px; }
|
|
63
|
+
.mrp-only, .sale-price, .mrp-crossed { font-size: 13px; font-weight: 800; }
|
|
64
|
+
.label-barcode canvas, .label-barcode .barcode-img {
|
|
65
|
+
max-width: 160px;
|
|
66
|
+
height: auto;
|
|
67
|
+
}
|
|
68
|
+
.label-footer { font-size: 6px; text-align: left; width: 100%; margin-top: 4px; }
|
|
69
|
+
${extraCss}
|
|
70
|
+
</style>
|
|
71
|
+
</head>
|
|
72
|
+
<body>
|
|
73
|
+
<div class="tags-wrapper">{{ALL_TAGS_HTML}}</div>
|
|
74
|
+
<template id="single-tag">${GRID_SINGLE_TAG}
|
|
75
|
+
</template>
|
|
76
|
+
</body>
|
|
77
|
+
</html>`;
|
|
78
|
+
}
|
|
79
|
+
const STRIP_SINGLE_TAG = `
|
|
80
|
+
<div class="strip-card">
|
|
81
|
+
<div class="strip-left">
|
|
82
|
+
<div class="label-title">{{PRODUCT_NAME}}</div>
|
|
83
|
+
{{OPTIONS_HTML}}
|
|
84
|
+
{{SKU_HTML}}
|
|
85
|
+
</div>
|
|
86
|
+
<div class="strip-mid">{{PRICE_HTML}}</div>
|
|
87
|
+
<div class="strip-barcode"><canvas id="barcode-{{BARCODE_SVG_ID}}"></canvas></div>
|
|
88
|
+
<div class="strip-footer">{{CONTACT_DETAILS}}</div>
|
|
89
|
+
</div>`;
|
|
90
|
+
function buildStripBarcodeTemplate(extraCss) {
|
|
91
|
+
return `<!DOCTYPE html>
|
|
92
|
+
<html>
|
|
93
|
+
<head>
|
|
94
|
+
<meta charset="UTF-8" />
|
|
95
|
+
<style>
|
|
96
|
+
* { box-sizing: border-box; }
|
|
97
|
+
html, body { margin: 0; padding: 8px; font-family: Arial, sans-serif; background: #fff; }
|
|
98
|
+
.tags-wrapper { display: flex; flex-direction: column; gap: 8px; }
|
|
99
|
+
.strip-card {
|
|
100
|
+
display: grid;
|
|
101
|
+
grid-template-columns: 1fr auto auto;
|
|
102
|
+
grid-template-rows: auto auto;
|
|
103
|
+
gap: 6px 12px;
|
|
104
|
+
width: 100%;
|
|
105
|
+
border-bottom: 1px dashed #ccc;
|
|
106
|
+
padding: 8px 4px;
|
|
107
|
+
page-break-inside: avoid;
|
|
108
|
+
}
|
|
109
|
+
.strip-left { grid-column: 1; }
|
|
110
|
+
.strip-mid { grid-column: 2; align-self: center; }
|
|
111
|
+
.strip-barcode { grid-column: 3; align-self: center; }
|
|
112
|
+
.strip-footer { grid-column: 1 / -1; font-size: 7px; }
|
|
113
|
+
.label-title { font-size: 12px; font-weight: 800; text-transform: uppercase; }
|
|
114
|
+
${extraCss}
|
|
115
|
+
</style>
|
|
116
|
+
</head>
|
|
117
|
+
<body>
|
|
118
|
+
<div class="tags-wrapper">{{ALL_TAGS_HTML}}</div>
|
|
119
|
+
<template id="single-tag">${STRIP_SINGLE_TAG}
|
|
120
|
+
</template>
|
|
121
|
+
</body>
|
|
122
|
+
</html>`;
|
|
123
|
+
}
|
|
124
|
+
const PRICE_TOP_SINGLE_TAG = `
|
|
125
|
+
<div class="label-card price-top">
|
|
126
|
+
<div class="label-price">{{PRICE_HTML}}</div>
|
|
127
|
+
<div class="label-title">{{PRODUCT_NAME}}</div>
|
|
128
|
+
{{OPTIONS_HTML}}
|
|
129
|
+
{{SKU_HTML}}
|
|
130
|
+
<div class="label-barcode"><canvas id="barcode-{{BARCODE_SVG_ID}}"></canvas></div>
|
|
131
|
+
<div class="label-footer">{{CONTACT_DETAILS}}</div>
|
|
132
|
+
</div>`;
|
|
133
|
+
function buildPriceTopTemplate() {
|
|
134
|
+
return buildGridBarcodeTemplate("barcode-04", `.label-card.price-top .label-price { order: -1; margin-bottom: 6px; }
|
|
135
|
+
.label-card.price-top { gap: 2px; }`).replace(GRID_SINGLE_TAG, PRICE_TOP_SINGLE_TAG);
|
|
136
|
+
}
|
|
137
|
+
const SKU_FOCUS_SINGLE_TAG = `
|
|
138
|
+
<div class="label-card sku-focus">
|
|
139
|
+
<div class="label-barcode"><canvas id="barcode-{{BARCODE_SVG_ID}}"></canvas></div>
|
|
140
|
+
<div class="label-title">{{PRODUCT_NAME}}</div>
|
|
141
|
+
{{SKU_HTML}}
|
|
142
|
+
<div class="label-footer">{{CONTACT_DETAILS}}</div>
|
|
143
|
+
</div>`;
|
|
144
|
+
function buildSkuFocusTemplate() {
|
|
145
|
+
return `<!DOCTYPE html>
|
|
146
|
+
<html>
|
|
147
|
+
<head>
|
|
148
|
+
<meta charset="UTF-8" />
|
|
149
|
+
<style>
|
|
150
|
+
* { box-sizing: border-box; }
|
|
151
|
+
body { font-family: Arial, sans-serif; margin: 0; padding: 8px; }
|
|
152
|
+
.tags-wrapper { display: flex; flex-wrap: wrap; gap: 8px; }
|
|
153
|
+
.label-card.sku-focus {
|
|
154
|
+
width: 200px;
|
|
155
|
+
border: 1px solid #111;
|
|
156
|
+
padding: 10px;
|
|
157
|
+
text-align: center;
|
|
158
|
+
}
|
|
159
|
+
.label-title { font-size: 9px; font-weight: 600; margin-top: 6px; }
|
|
160
|
+
.sku-inline { font-size: 8px; }
|
|
161
|
+
.label-footer { font-size: 6px; text-align: left; margin-top: 6px; }
|
|
162
|
+
</style>
|
|
163
|
+
</head>
|
|
164
|
+
<body>
|
|
165
|
+
<div class="tags-wrapper">{{ALL_TAGS_HTML}}</div>
|
|
166
|
+
<template id="single-tag">${SKU_FOCUS_SINGLE_TAG}
|
|
167
|
+
</template>
|
|
168
|
+
</body>
|
|
169
|
+
</html>`;
|
|
170
|
+
}
|
|
171
|
+
function buildRollTemplate() {
|
|
172
|
+
const base = barcode_template_default_1.DEFAULT_BARCODE_TEMPLATE_HTML;
|
|
173
|
+
return base
|
|
174
|
+
.replace("@page {\n margin: 0 !important;\n size: 2in 3in;\n }", "@page {\n margin: 0 !important;\n size: 58mm auto;\n }")
|
|
175
|
+
.replace(/2in/g, "58mm")
|
|
176
|
+
.replace(/3in/g, "auto");
|
|
177
|
+
}
|
|
178
|
+
const BARCODE_TEMPLATES_BY_ID = {
|
|
179
|
+
"barcode-01": barcode_template_default_1.DEFAULT_BARCODE_TEMPLATE_HTML,
|
|
180
|
+
"barcode-02": buildGridBarcodeTemplate("barcode-02", `.label-card { width: 140px; min-height: 90px; padding: 6px; gap: 1px; }
|
|
181
|
+
.label-title { font-size: 10px; }`),
|
|
182
|
+
"barcode-03": buildStripBarcodeTemplate(""),
|
|
183
|
+
"barcode-04": buildPriceTopTemplate(),
|
|
184
|
+
"barcode-05": buildGridBarcodeTemplate("barcode-05", `.label-card .option-line, .label-card .sku-inline, .label-card .label-price:empty { display: none; }`),
|
|
185
|
+
"barcode-06": buildGridBarcodeTemplate("barcode-06", `.label-card { border: 2px solid #111; border-radius: 0; }`),
|
|
186
|
+
"barcode-07": barcode_template_default_1.DEFAULT_BARCODE_TEMPLATE_HTML.replace(".product-name {", ".product-name {\n font-size: 11px;"),
|
|
187
|
+
"barcode-08": buildRollTemplate(),
|
|
188
|
+
"barcode-09": buildGridBarcodeTemplate("barcode-09", `.tags-wrapper { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; max-width: 420px; }
|
|
189
|
+
.label-card { width: 100%; }
|
|
190
|
+
.label-barcode canvas { transform: scale(1.15); transform-origin: center; }`),
|
|
191
|
+
"barcode-10": buildSkuFocusTemplate(),
|
|
192
|
+
};
|
|
193
|
+
function resolveBarcodeTemplate(templateId) {
|
|
194
|
+
const id = (0, print_templates_catalog_1.normalizeBarcodeTemplateId)(templateId);
|
|
195
|
+
return BARCODE_TEMPLATES_BY_ID[id];
|
|
196
|
+
}
|
|
197
|
+
function listBundledBarcodeTemplateIds() {
|
|
198
|
+
return [...print_templates_catalog_1.BARCODE_TEMPLATE_IDS];
|
|
199
|
+
}
|
|
200
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyY29kZS10ZW1wbGF0ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdXRpbHMvYmFyY29kZS10ZW1wbGF0ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFtT0Esd0RBR0M7QUFFRCxzRUFFQztBQTFPRCx5RUFBMEU7QUFDMUUsdUVBSWtDO0FBRWxDLE1BQU0sZUFBZSxHQUFHOzs7Ozs7OzthQVFYLENBQUE7QUFFYixTQUFTLHdCQUF3QixDQUMvQixZQUFvQixFQUNwQixRQUFnQjtJQUVoQixPQUFPO2VBQ00sWUFBWTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1FBbURuQixRQUFROzs7OztnQ0FLZ0IsZUFBZTs7O1FBR3ZDLENBQUE7QUFDUixDQUFDO0FBRUQsTUFBTSxnQkFBZ0IsR0FBRzs7Ozs7Ozs7OzthQVVaLENBQUE7QUFFYixTQUFTLHlCQUF5QixDQUFDLFFBQWdCO0lBQ2pELE9BQU87Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1FBdUJELFFBQVE7Ozs7O2dDQUtnQixnQkFBZ0I7OztRQUd4QyxDQUFBO0FBQ1IsQ0FBQztBQUVELE1BQU0sb0JBQW9CLEdBQUc7Ozs7Ozs7O2FBUWhCLENBQUE7QUFFYixTQUFTLHFCQUFxQjtJQUM1QixPQUFPLHdCQUF3QixDQUM3QixZQUFZLEVBQ1o7eUNBQ3FDLENBQ3RDLENBQUMsT0FBTyxDQUFDLGVBQWUsRUFBRSxvQkFBb0IsQ0FBQyxDQUFBO0FBQ2xELENBQUM7QUFFRCxNQUFNLG9CQUFvQixHQUFHOzs7Ozs7YUFNaEIsQ0FBQTtBQUViLFNBQVMscUJBQXFCO0lBQzVCLE9BQU87Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztnQ0FxQnVCLG9CQUFvQjs7O1FBRzVDLENBQUE7QUFDUixDQUFDO0FBRUQsU0FBUyxpQkFBaUI7SUFDeEIsTUFBTSxJQUFJLEdBQUcsd0RBQTZCLENBQUE7SUFDMUMsT0FBTyxJQUFJO1NBQ1IsT0FBTyxDQUNOLCtFQUErRSxFQUMvRSxpRkFBaUYsQ0FDbEY7U0FDQSxPQUFPLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQztTQUN2QixPQUFPLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFBO0FBQzVCLENBQUM7QUFFRCxNQUFNLHVCQUF1QixHQUFzQztJQUNqRSxZQUFZLEVBQUUsd0RBQTZCO0lBQzNDLFlBQVksRUFBRSx3QkFBd0IsQ0FDcEMsWUFBWSxFQUNaO3VDQUNtQyxDQUNwQztJQUNELFlBQVksRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUM7SUFDM0MsWUFBWSxFQUFFLHFCQUFxQixFQUFFO0lBQ3JDLFlBQVksRUFBRSx3QkFBd0IsQ0FDcEMsWUFBWSxFQUNaLHNHQUFzRyxDQUN2RztJQUNELFlBQVksRUFBRSx3QkFBd0IsQ0FDcEMsWUFBWSxFQUNaLDJEQUEyRCxDQUM1RDtJQUNELFlBQVksRUFBRSx3REFBNkIsQ0FBQyxPQUFPLENBQ2pELGlCQUFpQixFQUNqQiwyQ0FBMkMsQ0FDNUM7SUFDRCxZQUFZLEVBQUUsaUJBQWlCLEVBQUU7SUFDakMsWUFBWSxFQUFFLHdCQUF3QixDQUNwQyxZQUFZLEVBQ1o7O2lGQUU2RSxDQUM5RTtJQUNELFlBQVksRUFBRSxxQkFBcUIsRUFBRTtDQUN0QyxDQUFBO0FBRUQsU0FBZ0Isc0JBQXNCLENBQUMsVUFBbUI7SUFDeEQsTUFBTSxFQUFFLEdBQUcsSUFBQSxvREFBMEIsRUFBQyxVQUFVLENBQUMsQ0FBQTtJQUNqRCxPQUFPLHVCQUF1QixDQUFDLEVBQUUsQ0FBQyxDQUFBO0FBQ3BDLENBQUM7QUFFRCxTQUFnQiw2QkFBNkI7SUFDM0MsT0FBTyxDQUFDLEdBQUcsOENBQW9CLENBQUMsQ0FBQTtBQUNsQyxDQUFDIn0=
|
|
@@ -48,6 +48,7 @@ const SETTINGS_WRITE_BLOCKED = [
|
|
|
48
48
|
"/admin/refund-reasons",
|
|
49
49
|
"/admin/notifications",
|
|
50
50
|
"/admin/pos/setup",
|
|
51
|
+
"/admin/pos/print-settings",
|
|
51
52
|
];
|
|
52
53
|
/** Catalog, pricing, stock and money-back actions: manager and owner. */
|
|
53
54
|
const MANAGER_WRITE_ONLY = [
|
|
@@ -166,4 +167,4 @@ function checkPosAccess(input) {
|
|
|
166
167
|
return checkBindings(path, input.body, claims);
|
|
167
168
|
return null;
|
|
168
169
|
}
|
|
169
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
170
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9zLWFjY2Vzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy91dGlscy9wb3MtYWNjZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7O0dBTUc7O0FBb0JILHNDQU1DO0FBK0hELHdDQWdDQztBQXZLRCxNQUFNLEtBQUssR0FBYyxDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUE7QUFFeEQsU0FBZ0IsYUFBYSxDQUFDLFdBQW9CO0lBQ2hELE1BQU0sR0FBRyxHQUFJLFdBQTZDLEVBQUUsR0FBcUMsQ0FBQTtJQUNqRyxJQUFJLENBQUMsR0FBRyxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVE7UUFBRSxPQUFPLElBQUksQ0FBQTtJQUNoRCxJQUFJLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztRQUFFLE9BQU8sSUFBSSxDQUFBO0lBQ3RFLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVU7UUFBRSxPQUFPLElBQUksQ0FBQTtJQUNqRCxPQUFPLEdBQWdCLENBQUE7QUFDekIsQ0FBQztBQUVELE1BQU0sYUFBYSxHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQTtBQUVqRSw2REFBNkQ7QUFDN0QsTUFBTSxjQUFjLEdBQUc7SUFDckIsaUJBQWlCO0lBQ2pCLGdCQUFnQjtJQUNoQixjQUFjO0lBQ2Qsa0JBQWtCO0lBQ2xCLDZCQUE2QjtDQUM5QixDQUFBO0FBRUQsdUNBQXVDO0FBQ3ZDLE1BQU0sc0JBQXNCLEdBQUc7SUFDN0Isd0JBQXdCO0lBQ3hCLGdCQUFnQjtJQUNoQix1QkFBdUI7SUFDdkIsZUFBZTtJQUNmLGtCQUFrQjtJ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
|
|
@@ -6,7 +6,7 @@ const utils_1 = require("@medusajs/framework/utils");
|
|
|
6
6
|
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
7
7
|
const pos_draft_edit_1 = require("./pos-draft-edit");
|
|
8
8
|
const pos_attached_promos_1 = require("./pos-attached-promos");
|
|
9
|
-
exports.POS_PLUGIN_VERSION = "0.0.
|
|
9
|
+
exports.POS_PLUGIN_VERSION = "0.0.41";
|
|
10
10
|
/**
|
|
11
11
|
* Attach active automatic promotions to a POS draft order.
|
|
12
12
|
* Same begin → addDraftOrderPromotion → confirm sequence as /promotions.
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.setPrintSettingsOptionDefaults = setPrintSettingsOptionDefaults;
|
|
7
|
+
exports.getPrintSettings = getPrintSettings;
|
|
8
|
+
exports.updatePrintSettings = updatePrintSettings;
|
|
9
|
+
exports.resetPrintSettingsForTests = resetPrintSettingsForTests;
|
|
10
|
+
const fs_1 = __importDefault(require("fs"));
|
|
11
|
+
const path_1 = __importDefault(require("path"));
|
|
12
|
+
const print_templates_catalog_1 = require("./print-templates-catalog");
|
|
13
|
+
function settingsFilePath() {
|
|
14
|
+
return path_1.default.join(process.cwd(), ".medusa", "pos-print-settings.json");
|
|
15
|
+
}
|
|
16
|
+
let optionDefaults = {
|
|
17
|
+
billTemplateId: print_templates_catalog_1.DEFAULT_BILL_TEMPLATE_ID,
|
|
18
|
+
barcodeTemplateId: print_templates_catalog_1.DEFAULT_BARCODE_TEMPLATE_ID,
|
|
19
|
+
};
|
|
20
|
+
/** Optional plugin-option defaults (barcodeTemplateId / billTemplateId). */
|
|
21
|
+
function setPrintSettingsOptionDefaults(input) {
|
|
22
|
+
optionDefaults = {
|
|
23
|
+
billTemplateId: (0, print_templates_catalog_1.normalizeBillTemplateId)(input.billTemplateId ?? optionDefaults.billTemplateId),
|
|
24
|
+
barcodeTemplateId: (0, print_templates_catalog_1.normalizeBarcodeTemplateId)(input.barcodeTemplateId ?? optionDefaults.barcodeTemplateId),
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
function readFileSettings() {
|
|
28
|
+
try {
|
|
29
|
+
const file = settingsFilePath();
|
|
30
|
+
if (!fs_1.default.existsSync(file))
|
|
31
|
+
return null;
|
|
32
|
+
const raw = JSON.parse(fs_1.default.readFileSync(file, "utf-8"));
|
|
33
|
+
return {
|
|
34
|
+
billTemplateId: (0, print_templates_catalog_1.normalizeBillTemplateId)(raw.billTemplateId),
|
|
35
|
+
barcodeTemplateId: (0, print_templates_catalog_1.normalizeBarcodeTemplateId)(raw.barcodeTemplateId),
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
function getPrintSettings() {
|
|
43
|
+
const fromFile = readFileSettings();
|
|
44
|
+
return {
|
|
45
|
+
billTemplateId: fromFile?.billTemplateId ?? optionDefaults.billTemplateId,
|
|
46
|
+
barcodeTemplateId: fromFile?.barcodeTemplateId ?? optionDefaults.barcodeTemplateId,
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
function updatePrintSettings(patch) {
|
|
50
|
+
const current = getPrintSettings();
|
|
51
|
+
const next = {
|
|
52
|
+
billTemplateId: patch.billTemplateId !== undefined
|
|
53
|
+
? (0, print_templates_catalog_1.normalizeBillTemplateId)(patch.billTemplateId)
|
|
54
|
+
: current.billTemplateId,
|
|
55
|
+
barcodeTemplateId: patch.barcodeTemplateId !== undefined
|
|
56
|
+
? (0, print_templates_catalog_1.normalizeBarcodeTemplateId)(patch.barcodeTemplateId)
|
|
57
|
+
: current.barcodeTemplateId,
|
|
58
|
+
};
|
|
59
|
+
const file = settingsFilePath();
|
|
60
|
+
fs_1.default.mkdirSync(path_1.default.dirname(file), { recursive: true });
|
|
61
|
+
fs_1.default.writeFileSync(file, JSON.stringify(next, null, 2) + "\n", "utf-8");
|
|
62
|
+
return next;
|
|
63
|
+
}
|
|
64
|
+
/** @internal test helper */
|
|
65
|
+
function resetPrintSettingsForTests(cwd) {
|
|
66
|
+
const file = cwd
|
|
67
|
+
? path_1.default.join(cwd, ".medusa", "pos-print-settings.json")
|
|
68
|
+
: settingsFilePath();
|
|
69
|
+
try {
|
|
70
|
+
fs_1.default.rmSync(file, { force: true });
|
|
71
|
+
}
|
|
72
|
+
catch {
|
|
73
|
+
// ignore
|
|
74
|
+
}
|
|
75
|
+
optionDefaults = {
|
|
76
|
+
billTemplateId: print_templates_catalog_1.DEFAULT_BILL_TEMPLATE_ID,
|
|
77
|
+
barcodeTemplateId: print_templates_catalog_1.DEFAULT_BARCODE_TEMPLATE_ID,
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbnQtc2V0dGluZ3Mtc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdXRpbHMvcHJpbnQtc2V0dGluZ3Mtc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUEwQkEsd0VBWUM7QUFtQkQsNENBUUM7QUFFRCxrREFpQkM7QUFHRCxnRUFhQztBQXBHRCw0Q0FBbUI7QUFDbkIsZ0RBQXVCO0FBQ3ZCLHVFQU9rQztBQU9sQyxTQUFTLGdCQUFnQjtJQUN2QixPQUFPLGNBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLFNBQVMsRUFBRSx5QkFBeUIsQ0FBQyxDQUFBO0FBQ3ZFLENBQUM7QUFFRCxJQUFJLGNBQWMsR0FBcUI7SUFDckMsY0FBYyxFQUFFLGtEQUF3QjtJQUN4QyxpQkFBaUIsRUFBRSxxREFBMkI7Q0FDL0MsQ0FBQTtBQUVELDRFQUE0RTtBQUM1RSxTQUFnQiw4QkFBOEIsQ0FBQyxLQUc5QztJQUNDLGNBQWMsR0FBRztRQUNmLGNBQWMsRUFBRSxJQUFBLGlEQUF1QixFQUNyQyxLQUFLLENBQUMsY0FBYyxJQUFJLGNBQWMsQ0FBQyxjQUFjLENBQ3REO1FBQ0QsaUJBQWlCLEVBQUUsSUFBQSxvREFBMEIsRUFDM0MsS0FBSyxDQUFDLGlCQUFpQixJQUFJLGNBQWMsQ0FBQyxpQkFBaUIsQ0FDNUQ7S0FDRixDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQVMsZ0JBQWdCO0lBQ3ZCLElBQUksQ0FBQztRQUNILE1BQU0sSUFBSSxHQUFHLGdCQUFnQixFQUFFLENBQUE7UUFDL0IsSUFBSSxDQUFDLFlBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO1lBQUUsT0FBTyxJQUFJLENBQUE7UUFDckMsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFFLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FHcEQsQ0FBQTtRQUNELE9BQU87WUFDTCxjQUFjLEVBQUUsSUFBQSxpREFBdUIsRUFBQyxHQUFHLENBQUMsY0FBYyxDQUFDO1lBQzNELGlCQUFpQixFQUFFLElBQUEsb0RBQTBCLEVBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDO1NBQ3JFLENBQUE7SUFDSCxDQUFDO0lBQUMsTUFBTSxDQUFDO1FBQ1AsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0FBQ0gsQ0FBQztBQUVELFNBQWdCLGdCQUFnQjtJQUM5QixNQUFNLFFBQVEsR0FBRyxnQkFBZ0IsRUFBRSxDQUFBO0lBQ25DLE9BQU87UUFDTCxjQUFjLEVBQ1osUUFBUSxFQUFFLGNBQWMsSUFBSSxjQUFjLENBQUMsY0FBYztRQUMzRCxpQkFBaUIsRUFDZixRQUFRLEVBQUUsaUJBQWlCLElBQUksY0FBYyxDQUFDLGlCQUFpQjtLQUNsRSxDQUFBO0FBQ0gsQ0FBQztBQUVELFNBQWdCLG1CQUFtQixDQUNqQyxLQUF5RTtJQUV6RSxNQUFNLE9BQU8sR0FBRyxnQkFBZ0IsRUFBRSxDQUFBO0lBQ2xDLE1BQU0sSUFBSSxHQUFxQjtRQUM3QixjQUFjLEVBQUUsS0FBSyxDQUFDLGNBQWMsS0FBSyxTQUFTO1lBQ2hELENBQUMsQ0FBQyxJQUFBLGlEQUF1QixFQUFDLEtBQUssQ0FBQyxjQUFjLENBQUM7WUFDL0MsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxjQUFjO1FBQzFCLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxpQkFBaUIsS0FBSyxTQUFTO1lBQ3RELENBQUMsQ0FBQyxJQUFBLG9EQUEwQixFQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQztZQUNyRCxDQUFDLENBQUMsT0FBTyxDQUFDLGlCQUFpQjtLQUM5QixDQUFBO0lBRUQsTUFBTSxJQUFJLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQTtJQUMvQixZQUFFLENBQUMsU0FBUyxDQUFDLGNBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQTtJQUNyRCxZQUFFLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLEdBQUcsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFBO0lBQ3JFLE9BQU8sSUFBSSxDQUFBO0FBQ2IsQ0FBQztBQUVELDRCQUE0QjtBQUM1QixTQUFnQiwwQkFBMEIsQ0FBQyxHQUFZO0lBQ3JELE1BQU0sSUFBSSxHQUFHLEdBQUc7UUFDZCxDQUFDLENBQUMsY0FBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsU0FBUyxFQUFFLHlCQUF5QixDQUFDO1FBQ3RELENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFBO0lBQ3RCLElBQUksQ0FBQztRQUNILFlBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUE7SUFDbEMsQ0FBQztJQUFDLE1BQU0sQ0FBQztRQUNQLFNBQVM7SUFDWCxDQUFDO0lBQ0QsY0FBYyxHQUFHO1FBQ2YsY0FBYyxFQUFFLGtEQUF3QjtRQUN4QyxpQkFBaUIsRUFBRSxxREFBMkI7S0FDL0MsQ0FBQTtBQUNILENBQUMifQ==
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/** Closed catalog of POS bill + barcode templates (keep in sync with @pradip1995/pos-common). */
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.BARCODE_TEMPLATES = exports.BILL_TEMPLATES = exports.BARCODE_TEMPLATE_IDS = exports.BILL_TEMPLATE_IDS = exports.DEFAULT_BARCODE_TEMPLATE_ID = exports.DEFAULT_BILL_TEMPLATE_ID = void 0;
|
|
5
|
+
exports.isBillTemplateId = isBillTemplateId;
|
|
6
|
+
exports.isBarcodeTemplateId = isBarcodeTemplateId;
|
|
7
|
+
exports.normalizeBillTemplateId = normalizeBillTemplateId;
|
|
8
|
+
exports.normalizeBarcodeTemplateId = normalizeBarcodeTemplateId;
|
|
9
|
+
exports.printTemplatesCatalog = printTemplatesCatalog;
|
|
10
|
+
exports.DEFAULT_BILL_TEMPLATE_ID = "bill-01";
|
|
11
|
+
exports.DEFAULT_BARCODE_TEMPLATE_ID = "barcode-01";
|
|
12
|
+
exports.BILL_TEMPLATE_IDS = [
|
|
13
|
+
"bill-01",
|
|
14
|
+
"bill-02",
|
|
15
|
+
"bill-03",
|
|
16
|
+
"bill-04",
|
|
17
|
+
"bill-05",
|
|
18
|
+
"bill-06",
|
|
19
|
+
"bill-07",
|
|
20
|
+
"bill-08",
|
|
21
|
+
"bill-09",
|
|
22
|
+
"bill-10",
|
|
23
|
+
];
|
|
24
|
+
exports.BARCODE_TEMPLATE_IDS = [
|
|
25
|
+
"barcode-01",
|
|
26
|
+
"barcode-02",
|
|
27
|
+
"barcode-03",
|
|
28
|
+
"barcode-04",
|
|
29
|
+
"barcode-05",
|
|
30
|
+
"barcode-06",
|
|
31
|
+
"barcode-07",
|
|
32
|
+
"barcode-08",
|
|
33
|
+
"barcode-09",
|
|
34
|
+
"barcode-10",
|
|
35
|
+
];
|
|
36
|
+
exports.BILL_TEMPLATES = [
|
|
37
|
+
{ id: "bill-01", name: "Classic", description: "Centered logo, dashed lines, QR at bottom" },
|
|
38
|
+
{ id: "bill-02", name: "Compact", description: "Tighter spacing for short tickets" },
|
|
39
|
+
{ id: "bill-03", name: "Bold total", description: "Large TOTAL PAID block and thick rules" },
|
|
40
|
+
{ id: "bill-04", name: "Left brand", description: "Store name left-aligned, meta on the right" },
|
|
41
|
+
{ id: "bill-05", name: "Minimal", description: "No logo block, thin rules, small QR" },
|
|
42
|
+
{ id: "bill-06", name: "QR first", description: "Scan code near the top under the title" },
|
|
43
|
+
{ id: "bill-07", name: "Items focus", description: "Larger item table, totals condensed" },
|
|
44
|
+
{ id: "bill-08", name: "Two-tone", description: "Accent header bar with white store name" },
|
|
45
|
+
{ id: "bill-09", name: "Footer note", description: "Extra thank-you footer and order barcode line" },
|
|
46
|
+
{ id: "bill-10", name: "Dense 58mm", description: "Narrow fonts and stacked qty/price for 2″ rolls" },
|
|
47
|
+
];
|
|
48
|
+
exports.BARCODE_TEMPLATES = [
|
|
49
|
+
{ id: "barcode-01", name: "Sheet grid", description: "180px cards in a wrapping grid" },
|
|
50
|
+
{ id: "barcode-02", name: "Compact grid", description: "Smaller labels, more per page" },
|
|
51
|
+
{ id: "barcode-03", name: "Wide strip", description: "Full-width horizontal strips" },
|
|
52
|
+
{ id: "barcode-04", name: "Price top", description: "Price above title, barcode below" },
|
|
53
|
+
{ id: "barcode-05", name: "Name only", description: "Title + barcode, hide variant/price when empty" },
|
|
54
|
+
{ id: "barcode-06", name: "Bordered", description: "Solid border cards for sticker sheets" },
|
|
55
|
+
{ id: "barcode-07", name: "Hang tag", description: "Tall 2×3 style vertical hang tag" },
|
|
56
|
+
{ id: "barcode-08", name: "58mm roll", description: "Single-column labels for 58mm printers" },
|
|
57
|
+
{ id: "barcode-09", name: "Two-up", description: "Two columns, larger barcode bars" },
|
|
58
|
+
{ id: "barcode-10", name: "SKU focus", description: "Barcode-first with small title under code" },
|
|
59
|
+
];
|
|
60
|
+
function isBillTemplateId(value) {
|
|
61
|
+
return typeof value === "string" && exports.BILL_TEMPLATE_IDS.includes(value);
|
|
62
|
+
}
|
|
63
|
+
function isBarcodeTemplateId(value) {
|
|
64
|
+
return typeof value === "string" && exports.BARCODE_TEMPLATE_IDS.includes(value);
|
|
65
|
+
}
|
|
66
|
+
function normalizeBillTemplateId(value) {
|
|
67
|
+
return isBillTemplateId(value) ? value : exports.DEFAULT_BILL_TEMPLATE_ID;
|
|
68
|
+
}
|
|
69
|
+
function normalizeBarcodeTemplateId(value) {
|
|
70
|
+
return isBarcodeTemplateId(value) ? value : exports.DEFAULT_BARCODE_TEMPLATE_ID;
|
|
71
|
+
}
|
|
72
|
+
function printTemplatesCatalog() {
|
|
73
|
+
return {
|
|
74
|
+
bills: exports.BILL_TEMPLATES,
|
|
75
|
+
barcodes: exports.BARCODE_TEMPLATES,
|
|
76
|
+
defaultBillTemplateId: exports.DEFAULT_BILL_TEMPLATE_ID,
|
|
77
|
+
defaultBarcodeTemplateId: exports.DEFAULT_BARCODE_TEMPLATE_ID,
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbnQtdGVtcGxhdGVzLWNhdGFsb2cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdXRpbHMvcHJpbnQtdGVtcGxhdGVzLWNhdGFsb2cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLGlHQUFpRzs7O0FBa0VqRyw0Q0FFQztBQUVELGtEQUVDO0FBRUQsMERBRUM7QUFFRCxnRUFFQztBQUVELHNEQU9DO0FBdkZZLFFBQUEsd0JBQXdCLEdBQUcsU0FBa0IsQ0FBQTtBQUM3QyxRQUFBLDJCQUEyQixHQUFHLFlBQXFCLENBQUE7QUFFbkQsUUFBQSxpQkFBaUIsR0FBRztJQUMvQixTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0NBQ0QsQ0FBQTtBQUVHLFFBQUEsb0JBQW9CLEdBQUc7SUFDbEMsWUFBWTtJQUNaLFlBQVk7SUFDWixZQUFZO0lBQ1osWUFBWTtJQUNaLFlBQVk7SUFDWixZQUFZO0lBQ1osWUFBWTtJQUNaLFlBQVk7SUFDWixZQUFZO0lBQ1osWUFBWTtDQUNKLENBQUE7QUFXRyxRQUFBLGNBQWMsR0FBd0I7SUFDakQsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLDJDQUEyQyxFQUFFO0lBQzVGLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxtQ0FBbUMsRUFBRTtJQUNwRixFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsd0NBQXdDLEVBQUU7SUFDNUYsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLDRDQUE0QyxFQUFFO0lBQ2hHLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFB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
|
package/README.md
CHANGED
|
@@ -111,7 +111,7 @@ Legacy `{ "variant_ids": ["variant_1"] }` still works (one label each). Quantity
|
|
|
111
111
|
|
|
112
112
|
**`POST /admin/barcodes/bulk-generate`** — body `{ "variantIds": ["variant_1"] }`. Builds `Product|Variant|Option=Value|Weight=…|Width=…|Length=…|Height=…`, hashes it with SHA-256 and turns it into a 13-digit EAN with prefix `200`. The same input always gives the same barcode. Returns `{ success, message, count }`.
|
|
113
113
|
|
|
114
|
-
**
|
|
114
|
+
**Templates.** Ten bundled barcode layouts (`barcode-01`…`barcode-10`; default `barcode-01` is the 2in × 3in hang tag). Merchants select via `GET`/`PATCH` `/admin/pos/print-settings` (`barcodeTemplateId`, `billTemplateId`). Legacy host `templates/barcode-template.html` is ignored. Placeholders: `{{ALL_TAGS_HTML}}`, `<template id="single-tag">`, `{{PRODUCT_NAME}}`, `{{OPTIONS_HTML}}`, `{{SKU_HTML}}`, `{{PRICE_HTML}}`, `{{CONTACT_DETAILS}}`, `<canvas id="barcode-{{BARCODE_SVG_ID}}">`.
|
|
115
115
|
|
|
116
116
|
**Contact block.** If the `dynamic_config` service (medusa-plugin-dynamic-config) is registered, values whose keys contain `contact-phone`, `contact-email` and `contact-address` fill the footer. Without it the footer shows only "Country Of Origin India".
|
|
117
117
|
|
package/package.json
CHANGED