@sqb/connect
Version:
Multi-dialect database connection framework written with TypeScript
26 lines (25 loc) • 909 B
JavaScript
import { resolveEntityMeta } from '../util/orm.helper.js';
export var EmbeddedFieldMetadata;
(function (EmbeddedFieldMetadata) {
function create(entity, name, type, options) {
const result = {
kind: 'object',
entity,
name,
type,
};
if (options?.fieldNamePrefix)
result.fieldNamePrefix = options.fieldNamePrefix;
if (options?.fieldNameSuffix)
result.fieldNameSuffix = options.fieldNameSuffix;
return result;
}
EmbeddedFieldMetadata.create = create;
async function resolveType(meta) {
const typ = await resolveEntityMeta(meta.type);
if (typ)
return typ;
throw new Error(`Can't resolve type of ${meta.entity.name}.${meta.name}`);
}
EmbeddedFieldMetadata.resolveType = resolveType;
})(EmbeddedFieldMetadata || (EmbeddedFieldMetadata = {}));