UNPKG

@devx-commerce/strapi

Version:

Medusa plugin for Strapi as CMS

39 lines 3.06 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.config = void 0; exports.default = syncCategoriesHandler; const utils_1 = require("@medusajs/framework/utils"); const upsert_categories_strapi_1 = require("../workflows/upsert-categories-strapi"); async function syncCategoriesHandler({ container, }) { const query = container.resolve(utils_1.ContainerRegistrationKeys.QUERY); const logger = container.resolve(utils_1.ContainerRegistrationKeys.LOGGER); const batchSize = 100; let hasMore = true; let offset = 0; let totalCount = 0; while (hasMore) { const { data: categories, metadata: { count } = {} } = await query.graph({ entity: "product_category", fields: ["id"], pagination: { skip: offset, take: batchSize, }, }); if (categories.length) { await (0, upsert_categories_strapi_1.upsertCategoriesStrapiWorkflow)(container).run({ input: { category_ids: categories.map((category) => category.id), }, }); } hasMore = categories.length === batchSize; offset += batchSize; totalCount = count ?? 0; } logger.log(`Synced ${totalCount} categories to Strapi`); } exports.config = { event: "strapi-categories.sync", }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy1jYXRlZ29yaWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3N1YnNjcmliZXJzL3N5bmMtY2F0ZWdvcmllcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFJQSx3Q0FtQ0M7QUF0Q0QscURBQXNFO0FBQ3RFLG9GQUF1RjtBQUV4RSxLQUFLLFVBQVUscUJBQXFCLENBQUMsRUFDbEQsU0FBUyxHQUMrQjtJQUN4QyxNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLGlDQUF5QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pFLE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsaUNBQXlCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFbkUsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDO0lBQ3RCLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQztJQUNuQixJQUFJLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDZixJQUFJLFVBQVUsR0FBRyxDQUFDLENBQUM7SUFFbkIsT0FBTyxPQUFPLEVBQUUsQ0FBQztRQUNmLE1BQU0sRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRSxHQUFHLE1BQU0sS0FBSyxDQUFDLEtBQUssQ0FBQztZQUN2RSxNQUFNLEVBQUUsa0JBQWtCO1lBQzFCLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQztZQUNkLFVBQVUsRUFBRTtnQkFDVixJQUFJLEVBQUUsTUFBTTtnQkFDWixJQUFJLEVBQUUsU0FBUzthQUNoQjtTQUNGLENBQUMsQ0FBQztRQUVILElBQUksVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3RCLE1BQU0sSUFBQSx5REFBOEIsRUFBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLENBQUM7Z0JBQ2xELEtBQUssRUFBRTtvQkFDTCxZQUFZLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztpQkFDeEQ7YUFDRixDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsT0FBTyxHQUFHLFVBQVUsQ0FBQyxNQUFNLEtBQUssU0FBUyxDQUFDO1FBQzFDLE1BQU0sSUFBSSxTQUFTLENBQUM7UUFDcEIsVUFBVSxHQUFHLEtBQUssSUFBSSxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVELE1BQU0sQ0FBQyxHQUFHLENBQUMsVUFBVSxVQUFVLHVCQUF1QixDQUFDLENBQUM7QUFDMUQsQ0FBQztBQUVZLFFBQUEsTUFBTSxHQUFxQjtJQUN0QyxLQUFLLEVBQUUsd0JBQXdCO0NBQ2hDLENBQUMifQ==