trilium/services/source_id.js

44 lines
974 B
JavaScript
Raw Normal View History

const utils = require('./utils');
2017-11-07 08:23:35 +08:00
const log = require('./log');
const sql = require('./sql');
async function generateSourceId() {
const sourceId = utils.randomString(12);
2017-11-07 08:23:35 +08:00
log.info("Generated sourceId=" + sourceId);
2017-11-07 08:23:35 +08:00
await sql.doInTransaction(async () => {
await sql.insert("source_ids", {
source_id: sourceId,
date_created: utils.nowDate()
2017-11-17 11:18:25 +08:00
});
});
await refreshSourceIds();
return sourceId;
}
async function refreshSourceIds() {
allSourceIds = await sql.getFlattenedResults("SELECT source_id FROM source_ids ORDER BY date_created DESC");
}
let allSourceIds = [];
sql.dbReady.then(refreshSourceIds);
function isLocalSourceId(srcId) {
return allSourceIds.includes(srcId);
}
const currentSourceIdPromise = generateSourceId();
async function getCurrentSourceId() {
return await currentSourceIdPromise;
}
module.exports = {
generateSourceId,
getCurrentSourceId,
isLocalSourceId
};