database .init() .then(() => info('connected to database')) .catch(err => error(err));
// Logging (debug only). app.use(morgan('combined', { stream: { write: msg => info(msg) } }));
remove(id) { if (!isString(id)) { throw new Error('Invalid parameter. String required.'); } let entries = this.all(); let k = entries.findIndex((el) => { return el._id_ === id; }); if (k >= 0) { entries.splice(k, 1); this.entries = entries; this.onchange(); info(`Removed an item: ${id}`); return true; } return false; }
const loadPersistentData = () => { let { dir, ext, } = config; let dirs = readdirSync(dir, 'utf8'); if (dirs && dirs.length) { dirs.forEach((file) => { if (file.endsWith(ext)) { let fname = basename(file, ext); let c = new Collection(fname); if (c) { info(`Loaded persistent data for collection "${c.name}"`); } } }); } }
(() => { nock(URL) .get('') .reply(200, DATA); test(`Parse ATOM feed: .parse(${URL})`, (t) => { parse(URL).then((feed) => { info(feed); t.ok(bella.isObject(feed), 'feed must be an object.'); t.ok(isGoodEntry(feed.title), 'feed.title must be valid.'); t.ok(isGoodEntry(feed.link), 'feed.link must be valid.'); t.ok(bella.isArray(feed.entries), 'feed.entries must be an array.'); t.ok(feed.entries.length > 0, 'feed.entries is not empty.'); feed.entries.forEach((item) => { testOneEntry(item, t); }); }).catch(error).finally(t.end); }); })();
article.url = normalizedUrl; if (hasProvider(normalizedUrl)) { info('Provider found, loading as oEmbed data...'); const json = await extractOembed(normalizedUrl); if (json) {
info(`Transforming ${imageSrc}`);
info(`Transforming ${imageSrc}`);