UNPKG

dynamodb-toolbox

Version:

Lightweight and type-safe query builder for DynamoDB and TypeScript.

44 lines (43 loc) 1.75 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.fromTransformerDTO = void 0; const jsonStringify_js_1 = require("../../../../transformers/jsonStringify.js"); const pipe_js_1 = require("../../../../transformers/pipe.js"); const prefix_js_1 = require("../../../../transformers/prefix.js"); const suffix_js_1 = require("../../../../transformers/suffix.js"); const fromTransformerDTO = (transformerDTO) => { try { switch (transformerDTO.transformerId) { case 'custom': return null; case 'jsonStringify': { const { space } = transformerDTO; return (0, jsonStringify_js_1.jsonStringify)({ space }); } case 'prefix': { const { prefix: _prefix, delimiter } = transformerDTO; return (0, prefix_js_1.prefix)(_prefix, { delimiter }); } case 'suffix': { const { suffix: _suffix, delimiter } = transformerDTO; return (0, suffix_js_1.suffix)(_suffix, { delimiter }); } case 'pipe': { const { transformers: transformerDTOs } = transformerDTO; const transformers = []; for (const transformerDTO of transformerDTOs) { const transformer = (0, exports.fromTransformerDTO)(transformerDTO); if (transformer === null) { return null; } transformers.push(transformer); } return (0, pipe_js_1.pipe)(...transformers); } } } catch { return null; } }; exports.fromTransformerDTO = fromTransformerDTO;