UNPKG

dynamodb-toolbox

Version:

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

32 lines (31 loc) 1.05 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.fromAnyOfSchemaDTO = void 0; const index_js_1 = require("../../../../schema/anyOf/index.js"); const attribute_js_1 = require("./attribute.js"); /** * @debt feature "handle defaults, links & validators" */ const fromAnyOfSchemaDTO = ({ elements, required, hidden, key, savedAs, discriminator }) => { /** * @debt types "fix those casts" */ let anyOf_ = (0, index_js_1.anyOf)(...elements.map(attribute_js_1.fromSchemaDTO)); if (required !== undefined && required !== 'atLeastOnce') { anyOf_ = anyOf_.required(required); } if (hidden !== undefined && hidden) { anyOf_ = anyOf_.hidden(hidden); } if (key !== undefined && key) { anyOf_ = anyOf_.key(key); } if (savedAs !== undefined) { anyOf_ = anyOf_.savedAs(savedAs); } if (discriminator !== undefined) { anyOf_ = anyOf_.discriminate(discriminator); } return anyOf_; }; exports.fromAnyOfSchemaDTO = fromAnyOfSchemaDTO;