UNPKG

dynamodb-toolbox

Version:

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

25 lines (24 loc) 746 B
import { tuple } from '../../../../schema/tuple/index.js'; import { fromSchemaDTO } from './attribute.js'; /** * @debt feature "handle defaults, links & validators" */ export const fromTupleSchemaDTO = ({ elements, required, hidden, key, savedAs }) => { /** * @debt types "fix those casts" */ let tuple_ = tuple(...elements.map(fromSchemaDTO)); if (required !== undefined && required !== 'atLeastOnce') { tuple_ = tuple_.required(required); } if (hidden !== undefined && hidden) { tuple_ = tuple_.hidden(hidden); } if (key !== undefined && key) { tuple_ = tuple_.key(key); } if (savedAs !== undefined) { tuple_ = tuple_.savedAs(savedAs); } return tuple_; };