UNPKG

dynamodb-toolbox

Version:

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

28 lines (27 loc) 859 B
import { anyOf } from '../../../../schema/anyOf/index.js'; import { fromSchemaDTO } from './attribute.js'; /** * @debt feature "handle defaults, links & validators" */ export const fromAnyOfSchemaDTO = ({ elements, required, hidden, key, savedAs, discriminator }) => { /** * @debt types "fix those casts" */ let anyOf_ = anyOf(...elements.map(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_; };