rack-node
Version:
write like human, search like computer
34 lines (33 loc) • 1.18 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
/**
* Parvez M Robin
* this@parvezmrobin.com
* Jul 07, 2020
*/
const db_1 = require("../db");
const app_json_1 = require("../config/app.json");
const MAX_API_NUM = app_json_1.delta1.toString();
class ApiRepository {
// eslint-disable-next-line no-useless-constructor
constructor(queryTerms) {
this.queryTerms = queryTerms;
}
async getApis() {
const tokenMap = new Map();
try {
const query = 'select ct.Token from CodeToken as ct, TextToken as tt where ct.EntryID=tt.EntryID and tt.Token=? group by ct.Token order by count(*) desc limit ?';
for (const queryTerm of this.queryTerms) {
// eslint-disable-next-line no-await-in-loop
const apis = await db_1.exec(query, [queryTerm, MAX_API_NUM]);
tokenMap.set(queryTerm, apis.map(row => row.Token));
}
}
catch (error) {
// eslint-disable-next-line no-console
console.error(error);
}
return tokenMap;
}
}
exports.default = ApiRepository;