This commit is contained in:
Tutur33
2023-11-24 22:35:41 +01:00
parent 3c0b507a93
commit 7644b2a0f7
45165 changed files with 4803356 additions and 3 deletions
+39
View File
@@ -0,0 +1,39 @@
const Raw = require('./raw');
class Ref extends Raw {
constructor(client, ref) {
super(client);
this.ref = ref;
this._schema = null;
this._alias = null;
}
withSchema(schema) {
this._schema = schema;
return this;
}
as(alias) {
this._alias = alias;
return this;
}
toSQL() {
const string = this._schema ? `${this._schema}.${this.ref}` : this.ref;
const formatter = this.client.formatter(this);
const ref = formatter.columnize(string);
const sql = this._alias ? `${ref} as ${formatter.wrap(this._alias)}` : ref;
this.set(sql, []);
return super.toSQL(...arguments);
}
}
module.exports = Ref;