mirror of
https://github.com/xfarrow/blink
synced 2025-06-27 09:03:02 +02:00
Change endpoint from persons to people
This commit is contained in:
80
backend/apis/nodejs/node_modules/knex/lib/knex-builder/FunctionHelper.js
generated
vendored
Normal file
80
backend/apis/nodejs/node_modules/knex/lib/knex-builder/FunctionHelper.js
generated
vendored
Normal file
@ -0,0 +1,80 @@
|
||||
// FunctionHelper
|
||||
// -------
|
||||
// Used for adding functions from the builder
|
||||
// Example usage: table.dateTime('datetime_to_date').notNull().defaultTo(knex.fn.now());
|
||||
class FunctionHelper {
|
||||
constructor(client) {
|
||||
this.client = client;
|
||||
}
|
||||
|
||||
now(precision) {
|
||||
if (typeof precision === 'number') {
|
||||
return this.client.raw(`CURRENT_TIMESTAMP(${precision})`);
|
||||
}
|
||||
return this.client.raw('CURRENT_TIMESTAMP');
|
||||
}
|
||||
|
||||
uuid() {
|
||||
switch (this.client.driverName) {
|
||||
case 'sqlite3':
|
||||
case 'better-sqlite3':
|
||||
return this.client.raw(
|
||||
"(lower(hex(randomblob(4))) || '-' || lower(hex(randomblob(2))) || '-4' || substr(lower(hex(randomblob(2))),2) || '-' || substr('89ab',abs(random()) % 4 + 1, 1) || substr(lower(hex(randomblob(2))),2) || '-' || lower(hex(randomblob(6))))"
|
||||
);
|
||||
case 'mssql':
|
||||
return this.client.raw('(NEWID())');
|
||||
case 'pg':
|
||||
case 'pgnative':
|
||||
case 'cockroachdb':
|
||||
return this.client.raw('(gen_random_uuid())');
|
||||
case 'oracle':
|
||||
case 'oracledb':
|
||||
return this.client.raw('(random_uuid())');
|
||||
case 'mysql':
|
||||
case 'mysql2':
|
||||
return this.client.raw('(UUID())');
|
||||
default:
|
||||
throw new Error(
|
||||
`${this.client.driverName} does not have a uuid function`
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
uuidToBin(uuid, ordered = true) {
|
||||
const buf = Buffer.from(uuid.replace(/-/g, ''), 'hex');
|
||||
return ordered
|
||||
? Buffer.concat([
|
||||
buf.slice(6, 8),
|
||||
buf.slice(4, 6),
|
||||
buf.slice(0, 4),
|
||||
buf.slice(8, 16),
|
||||
])
|
||||
: Buffer.concat([
|
||||
buf.slice(0, 4),
|
||||
buf.slice(4, 6),
|
||||
buf.slice(6, 8),
|
||||
buf.slice(8, 16),
|
||||
]);
|
||||
}
|
||||
|
||||
binToUuid(bin, ordered = true) {
|
||||
const buf = Buffer.from(bin, 'hex');
|
||||
return ordered
|
||||
? [
|
||||
buf.toString('hex', 4, 8),
|
||||
buf.toString('hex', 2, 4),
|
||||
buf.toString('hex', 0, 2),
|
||||
buf.toString('hex', 8, 10),
|
||||
buf.toString('hex', 10, 16),
|
||||
].join('-')
|
||||
: [
|
||||
buf.toString('hex', 0, 4),
|
||||
buf.toString('hex', 4, 6),
|
||||
buf.toString('hex', 6, 8),
|
||||
buf.toString('hex', 8, 10),
|
||||
buf.toString('hex', 10, 16),
|
||||
].join('-');
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = FunctionHelper;
|
Reference in New Issue
Block a user