UNPKG

@shipengine/connect-loader

Version:

Internal library for loading ShipEngine Connect apps

32 lines 1.8 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.readDeliveryServiceArrayDefinition = exports.readDeliveryServiceDefinition = void 0; const read_definition_1 = require("../read-definition"); const read_delivery_confirmation_definition_1 = require("./read-delivery-confirmation-definition"); const read_packaging_definition_1 = require("./read-packaging-definition"); /** * Reads a delivery service definition */ async function readDeliveryServiceDefinition(definition, cwd, fieldName) { [definition, cwd] = await read_definition_1.readDefinition(definition, cwd, fieldName); return { ...definition, availableCountries: await read_definition_1.readDefinitionValue(definition.availableCountries, cwd, `${fieldName}.availableCountries`), packaging: await read_packaging_definition_1.readPackingArrayDefinition(definition.packaging, cwd, `${fieldName}.packaging`), deliveryConfirmations: await read_delivery_confirmation_definition_1.readDeliveryConfirmationArrayDefinition(definition.deliveryConfirmations, cwd, `${fieldName}.deliveryConfirmations`), }; } exports.readDeliveryServiceDefinition = readDeliveryServiceDefinition; /** * Reads an array of delivery service definitions */ async function readDeliveryServiceArrayDefinition(definitions, cwd, fieldName) { let array; [array, cwd] = await read_definition_1.readDefinitions(definitions, cwd, fieldName); if (Array.isArray(array)) { definitions = await Promise.all(array.map((service, index) => readDeliveryServiceDefinition(service, cwd, `${fieldName}[${index}]`))); } return definitions; } exports.readDeliveryServiceArrayDefinition = readDeliveryServiceArrayDefinition; //# sourceMappingURL=read-delivery-service-definition.js.map