UNPKG

medusa-plugin-meilisearch-variants-v3

Version:

Meilisearch plugin for Medusa 2 Product Variants

50 lines 4.56 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.transformVariant = transformVariant; const types_1 = require("../types"); function transformVariant(variant, options) { const { i18n, language, fields } = options || {}; const baseVariant = {}; if (fields && Array.isArray(fields)) { fields.forEach((field) => { if (field === "deleted_at") { baseVariant.deleted_at = variant.deleted_at ?? null; } else if (variant.hasOwnProperty(field)) { const value = variant[field]; baseVariant[field] = value === undefined ? null : value; } else { baseVariant[field] = null; } }); } else { baseVariant.id = variant.id; baseVariant.sku = variant.sku; baseVariant.title = variant.title; baseVariant.product_id = variant.product_id; baseVariant.created_at = variant.created_at; baseVariant.updated_at = variant.updated_at; baseVariant.deleted_at = variant.deleted_at ?? null; } if (!i18n || i18n.strategy !== "field-suffix") { return baseVariant; } const translatableFields = (0, types_1.normalizeFieldConfig)(i18n.translatableFields || []); const result = { ...baseVariant }; translatableFields.forEach((fieldConfig) => { const { field, languages } = fieldConfig; const value = variant[field]; if (value && typeof value === "string") { languages.forEach((lang) => { const translatedValue = (0, types_1.getTranslation)(variant.translations, field, lang); const finalValue = translatedValue || value; const fieldKey = `${field}_${lang}`; result[fieldKey] = finalValue; }); } }); return result; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmb3JtZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9tZWlsaXNlYXJjaC12YXJpYW50cy91dGlscy90cmFuc2Zvcm1lci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQW1CQSw0Q0F3REM7QUExRUQsb0NBS2tCO0FBYWxCLFNBQWdCLGdCQUFnQixDQUM5QixPQUEwQixFQUMxQixPQUEwQjtJQUUxQixNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsR0FBRyxPQUFPLElBQUksRUFBRSxDQUFDO0lBQ2pELE1BQU0sV0FBVyxHQUF3QixFQUFFLENBQUM7SUFFNUMsSUFBSSxNQUFNLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ3BDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUN2QixJQUFJLEtBQUssS0FBSyxZQUFZLEVBQUUsQ0FBQztnQkFDM0IsV0FBVyxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQztZQUN0RCxDQUFDO2lCQUFNLElBQUksT0FBTyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUN6QyxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBZ0MsQ0FBQyxDQUFDO2dCQUN4RCxXQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7WUFDMUQsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLFdBQVcsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUM7WUFDNUIsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztTQUFNLENBQUM7UUFDTixXQUFXLENBQUMsRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFLENBQUM7UUFDNUIsV0FBVyxDQUFDLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDO1FBQzlCLFdBQVcsQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUNsQyxXQUFXLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUM7UUFDNUMsV0FBVyxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDO1FBQzVDLFdBQVcsQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQztRQUM1QyxXQUFXLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDO0lBQ3RELENBQUM7SUFFRCxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssY0FBYyxFQUFFLENBQUM7UUFDOUMsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztJQUVELE1BQU0sa0JBQWtCLEdBQUcsSUFBQSw0QkFBb0IsRUFDN0MsSUFBSSxDQUFDLGtCQUFrQixJQUFJLEVBQUUsQ0FDOUIsQ0FBQztJQUNGLE1BQU0sTUFBTSxHQUFHLEVBQUUsR0FBRyxXQUFXLEVBQUUsQ0FBQztJQUVsQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRTtRQUN6QyxNQUFNLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxHQUFHLFdBQVcsQ0FBQztRQUN6QyxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBZ0MsQ0FBQyxDQUFDO1FBRXhELElBQUksS0FBSyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ3ZDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtnQkFDekIsTUFBTSxlQUFlLEdBQUcsSUFBQSxzQkFBYyxFQUNuQyxPQUFlLENBQUMsWUFBWSxFQUM3QixLQUFLLEVBQ0wsSUFBSSxDQUNMLENBQUM7Z0JBQ0YsTUFBTSxVQUFVLEdBQUcsZUFBZSxJQUFJLEtBQUssQ0FBQztnQkFDNUMsTUFBTSxRQUFRLEdBQUcsR0FBRyxLQUFLLElBQUksSUFBSSxFQUFFLENBQUM7Z0JBQ3BDLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxVQUFVLENBQUM7WUFDaEMsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQyxDQUFDLENBQUM7SUFFSCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDIn0=