import { RDSDataService } from "aws-sdk"; import { QueryBuilderBaseParamEnum } from "../enums"; import { LeQuerybuilderAuroraMysqlDataApiError, LeQuerybuilderAuroraMysqlDataApiErrorEnum } from "../error"; import { QueryBuilderConfField, QueryBuilderField, QueryBuilderFieldBlob, QueryBuilderFieldBoolean, QueryBuilderFieldDouble, QueryBuilderFieldLong, QueryBuilderFieldString, } from "../interfaces"; export interface ContainSetFields { fields: QueryBuilderConfField[]; } export function set(confobj: ContainSetFields, field: QueryBuilderField) { if (typeof field.val === "undefined") { throw new LeQuerybuilderAuroraMysqlDataApiError(LeQuerybuilderAuroraMysqlDataApiErrorEnum.SetFieldTypeError); } confobj.fields.push({...field}); } export function setBlob(confobj: ContainSetFields, field: Omit, val: RDSDataService._Blob) { return set(confobj, {...field, ...{val}}); } export function setBoolean(confobj: ContainSetFields, field: Omit, val: RDSDataService.BoxedBoolean) { return set(confobj, {...field, ...{val}}); } export function setDouble(confobj: ContainSetFields, field: Omit, val: RDSDataService.BoxedDouble) { return set(confobj, {...field, ...{val}}); } export function setLong(confobj: ContainSetFields, field: Omit, val: RDSDataService.BoxedLong) { return set(confobj, {...field, ...{val}}); } export function setString(confobj: ContainSetFields, field: Omit, val: RDSDataService.String) { return set(confobj, {...field, ...{val}}); } export function setRaw(confobj: ContainSetFields, fieldName: string, val: string) { if (typeof val === "undefined") { throw new LeQuerybuilderAuroraMysqlDataApiError(LeQuerybuilderAuroraMysqlDataApiErrorEnum.SetFieldTypeError); } confobj.fields.push({ name: fieldName, raw: val, }); }