providerrefactor part1
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
import { ADD } from '../../providers/mssql/queries/google_auth.js';
|
||||
import { ADD as MSSQL_ADD } from '../../providers/mssql/queries/google_auth.js';
|
||||
import { ADD as SQLITE_ADD } from '../../providers/sqlite3/queries/google_auth.js';
|
||||
|
||||
export default function add(pool) {
|
||||
export default function add(provider) {
|
||||
const sql = provider.dialect === 'sqlite3' ? SQLITE_ADD : MSSQL_ADD;
|
||||
/**
|
||||
* Adds a new allowed Google auth email.
|
||||
*
|
||||
@@ -12,11 +14,7 @@ export default function add(pool) {
|
||||
* // => 1
|
||||
*/
|
||||
return async (email) => {
|
||||
const result = await pool
|
||||
.request()
|
||||
.input('email', email)
|
||||
.query(ADD);
|
||||
|
||||
return result.recordset[0].id;
|
||||
const result = await provider.query(sql, { email });
|
||||
return result.rows[0]?.id ?? result.insertId;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
import { GET_BY_EMAIL } from '../../providers/mssql/queries/google_auth.js';
|
||||
import { GET_BY_EMAIL as MSSQL_GET } from '../../providers/mssql/queries/google_auth.js';
|
||||
import { GET_BY_EMAIL as SQLITE_GET } from '../../providers/sqlite3/queries/google_auth.js';
|
||||
|
||||
export default function getByEmail(pool) {
|
||||
export default function getByEmail(provider) {
|
||||
const sql = provider.dialect === 'sqlite3' ? SQLITE_GET : MSSQL_GET;
|
||||
/**
|
||||
* Returns a Google auth row by email.
|
||||
*
|
||||
@@ -12,11 +14,7 @@ export default function getByEmail(pool) {
|
||||
* // => { id, email, ... }
|
||||
*/
|
||||
return async (email) => {
|
||||
const result = await pool
|
||||
.request()
|
||||
.input('email', email)
|
||||
.query(GET_BY_EMAIL);
|
||||
|
||||
return result.recordset[0];
|
||||
const result = await provider.query(sql, { email });
|
||||
return result.rows[0];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
import { GET_BY_ID } from '../../providers/mssql/queries/google_auth.js';
|
||||
import { GET_BY_ID as MSSQL_GET } from '../../providers/mssql/queries/google_auth.js';
|
||||
import { GET_BY_ID as SQLITE_GET } from '../../providers/sqlite3/queries/google_auth.js';
|
||||
|
||||
export default function getById(pool) {
|
||||
export default function getById(provider) {
|
||||
const sql = provider.dialect === 'sqlite3' ? SQLITE_GET : MSSQL_GET;
|
||||
/**
|
||||
* Returns a Google auth row by its id.
|
||||
*
|
||||
@@ -12,11 +14,7 @@ export default function getById(pool) {
|
||||
* // => { id, email, ... }
|
||||
*/
|
||||
return async (googleAuthId) => {
|
||||
const result = await pool
|
||||
.request()
|
||||
.input('googleAuthId', googleAuthId)
|
||||
.query(GET_BY_ID);
|
||||
|
||||
return result.recordset[0];
|
||||
const result = await provider.query(sql, { googleAuthId });
|
||||
return result.rows[0];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
import { LIST_ALLOWED_EMAILS } from '../../providers/mssql/queries/google_auth.js';
|
||||
import { LIST_ALLOWED_EMAILS as MSSQL_LIST } from '../../providers/mssql/queries/google_auth.js';
|
||||
import { LIST_ALLOWED_EMAILS as SQLITE_LIST } from '../../providers/sqlite3/queries/google_auth.js';
|
||||
|
||||
export default function listAllowedEmails(pool) {
|
||||
export default function listAllowedEmails(provider) {
|
||||
const sql = provider.dialect === 'sqlite3' ? SQLITE_LIST : MSSQL_LIST;
|
||||
/**
|
||||
* Lists all allowed Google auth emails.
|
||||
*
|
||||
@@ -11,7 +13,7 @@ export default function listAllowedEmails(pool) {
|
||||
* // => [{ id, email }]
|
||||
*/
|
||||
return async () => {
|
||||
const result = await pool.request().query(LIST_ALLOWED_EMAILS);
|
||||
return result.recordset;
|
||||
const result = await provider.query(sql);
|
||||
return result.rows;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
import { REMOVE_ALLOWED_EMAIL } from '../../providers/mssql/queries/google_auth.js';
|
||||
import { REMOVE_ALLOWED_EMAIL as MSSQL_REMOVE } from '../../providers/mssql/queries/google_auth.js';
|
||||
import { REMOVE_ALLOWED_EMAIL as SQLITE_REMOVE } from '../../providers/sqlite3/queries/google_auth.js';
|
||||
|
||||
export default function removeAllowedEmail(pool) {
|
||||
export default function removeAllowedEmail(provider) {
|
||||
const sql = provider.dialect === 'sqlite3' ? SQLITE_REMOVE : MSSQL_REMOVE;
|
||||
/**
|
||||
* Removes an allowed Google auth email.
|
||||
*
|
||||
@@ -11,9 +13,6 @@ export default function removeAllowedEmail(pool) {
|
||||
* await store.google_auth.removeAllowedEmail('user@example.com');
|
||||
*/
|
||||
return async (email) => {
|
||||
await pool
|
||||
.request()
|
||||
.input('email', email)
|
||||
.query(REMOVE_ALLOWED_EMAIL);
|
||||
await provider.query(sql, { email });
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
import { SET_PROFILE } from '../../providers/mssql/queries/google_auth.js';
|
||||
import { SET_PROFILE as MSSQL_SET } from '../../providers/mssql/queries/google_auth.js';
|
||||
import { SET_PROFILE as SQLITE_SET } from '../../providers/sqlite3/queries/google_auth.js';
|
||||
|
||||
export default function setProfile(pool) {
|
||||
export default function setProfile(provider) {
|
||||
const sql = provider.dialect === 'sqlite3' ? SQLITE_SET : MSSQL_SET;
|
||||
/**
|
||||
* Updates the profile (picture, picture binary, sub) of a Google auth user.
|
||||
*
|
||||
@@ -23,15 +25,14 @@ export default function setProfile(pool) {
|
||||
throw new Error('Invalid pictureBinary');
|
||||
}
|
||||
|
||||
const result = await pool
|
||||
.request()
|
||||
.input('googleAuthId', googleAuthId)
|
||||
.input('picture', picture)
|
||||
.input('pictureBinary', pictureBinary)
|
||||
.input('sub', sub)
|
||||
.query(SET_PROFILE);
|
||||
const result = await provider.query(sql, {
|
||||
googleAuthId,
|
||||
picture,
|
||||
pictureBinary,
|
||||
sub,
|
||||
});
|
||||
|
||||
if (!result.rowsAffected[0]) {
|
||||
if (!result.rowsAffected) {
|
||||
throw new Error('User not found');
|
||||
}
|
||||
};
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
import { SET_SELECTED_COMPANY } from '../../providers/mssql/queries/google_auth.js';
|
||||
import { SET_SELECTED_COMPANY as MSSQL_SET } from '../../providers/mssql/queries/google_auth.js';
|
||||
import { SET_SELECTED_COMPANY as SQLITE_SET } from '../../providers/sqlite3/queries/google_auth.js';
|
||||
|
||||
export default function setSelectedCompany(pool) {
|
||||
export default function setSelectedCompany(provider) {
|
||||
const sql = provider.dialect === 'sqlite3' ? SQLITE_SET : MSSQL_SET;
|
||||
/**
|
||||
* Sets the currently selected company for a Google auth user.
|
||||
*
|
||||
@@ -12,10 +14,6 @@ export default function setSelectedCompany(pool) {
|
||||
* await store.google_auth.setSelectedCompany(42, 1);
|
||||
*/
|
||||
return async (googleAuthId, companyId) => {
|
||||
await pool
|
||||
.request()
|
||||
.input('googleAuthId', googleAuthId)
|
||||
.input('companyId', companyId)
|
||||
.query(SET_SELECTED_COMPANY);
|
||||
await provider.query(sql, { googleAuthId, companyId });
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user