dynamodb-toolbox
Version:
Lightweight and type-safe query builder for DynamoDB and TypeScript.
18 lines (17 loc) • 765 B
JavaScript
import { DynamoDBToolboxError } from '../errors/dynamoDBToolboxError.js';
import { isString } from '../utils/validation/isString.js';
export const parseIndexOption = (table, index) => {
if (!isString(index)) {
throw new DynamoDBToolboxError('options.invalidIndexOption', {
message: `Invalid index option: '${String(index)}'. 'index' must be a string.`,
payload: { index }
});
}
if (table.indexes[index] === undefined) {
throw new DynamoDBToolboxError('options.invalidIndexOption', {
message: `Invalid index option: '${String(index)}'. Index is not defined on Table, please provide an 'indexes' option to its constructor.`,
payload: { index }
});
}
return index;
};