refactored .thens as try catch
This commit is contained in:
parent
b78fc7b9fb
commit
ccf2a3e7f0
|
@ -15,22 +15,27 @@ export const getWords = async () => {
|
||||||
return db
|
return db
|
||||||
.select("word")
|
.select("word")
|
||||||
.from("dictionary")
|
.from("dictionary")
|
||||||
.catch(error=>{throw error})
|
.catch(error => { throw error })
|
||||||
}
|
}
|
||||||
|
|
||||||
export const valueExistsInTable = async (table,column,value) =>{
|
export const valueExistsInTable = async (table, column, value) => {
|
||||||
const number = await db(table)
|
try {
|
||||||
.count('* as count')
|
const number = await db(table)
|
||||||
.where(column, value)
|
.count('* as count')
|
||||||
.catch(error => { throw error })
|
.where(column, value)
|
||||||
return number[0].count > 0
|
return number[0].count > 0
|
||||||
|
} catch (error) {
|
||||||
|
logger.error("valueExistsInTable failed!")
|
||||||
|
throw error
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
export const todaysPromptAlreadyPublished = async () => {
|
export const todaysPromptAlreadyPublished = async () => {
|
||||||
return valueExistsInTable('published','date',isoDate())
|
return valueExistsInTable('published', 'date', isoDate())
|
||||||
}
|
}
|
||||||
|
|
||||||
export const wordIsAlreadyInBuffer = async (word) => {
|
export const wordIsAlreadyInBuffer = async (word) => {
|
||||||
return valueExistsInTable('buffer','word',word)
|
return valueExistsInTable('buffer', 'word', word)
|
||||||
}
|
}
|
|
@ -10,7 +10,8 @@ const blocklist = db.union([
|
||||||
|
|
||||||
export default async () => {
|
export default async () => {
|
||||||
logger.trace("getAcceptablePrompt called")
|
logger.trace("getAcceptablePrompt called")
|
||||||
return db('dictionary')
|
try {
|
||||||
|
return db('dictionary')
|
||||||
.select('*')
|
.select('*')
|
||||||
.where({
|
.where({
|
||||||
derivative: 0,
|
derivative: 0,
|
||||||
|
@ -22,5 +23,8 @@ export default async () => {
|
||||||
.whereRaw('length(word) > 3')
|
.whereRaw('length(word) > 3')
|
||||||
.whereNotNull('pronunciation')
|
.whereNotNull('pronunciation')
|
||||||
.orderByRaw('count desc')
|
.orderByRaw('count desc')
|
||||||
.catch(error=>{throw error})
|
} catch (error) {
|
||||||
|
logger.error("getAcceptablePrompts failed!")
|
||||||
|
throw error
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -2,62 +2,62 @@ import { db } from "./db.mjs"
|
||||||
import { isoDate } from "../utilities.mjs"
|
import { isoDate } from "../utilities.mjs"
|
||||||
import logger from "../logger.mjs"
|
import logger from "../logger.mjs"
|
||||||
const sampleRes = {
|
const sampleRes = {
|
||||||
createdNote: {
|
createdNote: {
|
||||||
id: '9i8urek4jtzhmtuh',
|
id: '9i8urek4jtzhmtuh',
|
||||||
createdAt: '2023-08-10T15:02:35.380Z',
|
createdAt: '2023-08-10T15:02:35.380Z',
|
||||||
userId: '9i5z5o9zy11l3skl',
|
userId: '9i5z5o9zy11l3skl',
|
||||||
user: {
|
user: {
|
||||||
id: '9i5z5o9zy11l3skl',
|
id: '9i5z5o9zy11l3skl',
|
||||||
name: null,
|
name: null,
|
||||||
username: 'micro365',
|
username: 'micro365',
|
||||||
host: null,
|
host: null,
|
||||||
avatarUrl: 'https://localhost:3000/files/thumbnail-4e0e8b82-df72-48f7-8100-b7515173da9d',
|
avatarUrl: 'https://localhost:3000/files/thumbnail-4e0e8b82-df72-48f7-8100-b7515173da9d',
|
||||||
avatarBlurhash: 'ySPjGct7xu%M-;xu-;%MRjWBoffQofWB~qRjRjayRjfQM{M{t7ofWBt7ayfQ~qj[WBj[M{WBof?bofayfQM{WBfQt7xuofWBofofM{',
|
avatarBlurhash: 'ySPjGct7xu%M-;xu-;%MRjWBoffQofWB~qRjRjayRjfQM{M{t7ofWBt7ayfQ~qj[WBj[M{WBof?bofayfQM{WBfQt7xuofWBofofM{',
|
||||||
avatarColor: null,
|
avatarColor: null,
|
||||||
isLocked: false,
|
isLocked: false,
|
||||||
speakAsCat: true,
|
speakAsCat: true,
|
||||||
emojis: [],
|
|
||||||
onlineStatus: 'active',
|
|
||||||
driveCapacityOverrideMb: null
|
|
||||||
},
|
|
||||||
text: "Today's #micro365 prompt is:\n" +
|
|
||||||
'<small><small><small># </small></small></small>$[x2 $[font.serif **marmalade**]]\n' +
|
|
||||||
'/mˈɑːmɐlˌeɪd/\n' +
|
|
||||||
'<small>**noun**:\n' +
|
|
||||||
'- A kind of jam made with citrus fruit, distinguished by being made slightly bitter by the addition of the peel and by partial caramelisation during manufacture. Most commonly made with Seville oranges, and usually qualified by the name of the fruit when made with other types of fruit.\n' +
|
|
||||||
'- A kind of jam made with citrus fruit, distinguished by being made slightly bitter by the addition of the peel and by partial caramelisation during manufacture. Most commonly made with Seville oranges, and usually qualified by the name of the fruit when made with other types of fruit. Ellipsis of orange marmalade.\n' +
|
|
||||||
'- quince jam\n' +
|
|
||||||
'**verb**:\n' +
|
|
||||||
'- To spread marmalade on.\n' +
|
|
||||||
'</small>#writing #microfiction #vss #marmalade',
|
|
||||||
cw: null,
|
|
||||||
visibility: 'public',
|
|
||||||
renoteCount: 0,
|
|
||||||
repliesCount: 0,
|
|
||||||
reactions: {},
|
|
||||||
reactionEmojis: [],
|
|
||||||
emojis: [],
|
emojis: [],
|
||||||
tags: [ 'micro365', 'writing', 'microfiction', 'vss', 'marmalade' ],
|
onlineStatus: 'active',
|
||||||
fileIds: [],
|
driveCapacityOverrideMb: null
|
||||||
files: [],
|
},
|
||||||
replyId: null,
|
text: "Today's #micro365 prompt is:\n" +
|
||||||
renoteId: null
|
'<small><small><small># </small></small></small>$[x2 $[font.serif **marmalade**]]\n' +
|
||||||
}
|
'/mˈɑːmɐlˌeɪd/\n' +
|
||||||
|
'<small>**noun**:\n' +
|
||||||
|
'- A kind of jam made with citrus fruit, distinguished by being made slightly bitter by the addition of the peel and by partial caramelisation during manufacture. Most commonly made with Seville oranges, and usually qualified by the name of the fruit when made with other types of fruit.\n' +
|
||||||
|
'- A kind of jam made with citrus fruit, distinguished by being made slightly bitter by the addition of the peel and by partial caramelisation during manufacture. Most commonly made with Seville oranges, and usually qualified by the name of the fruit when made with other types of fruit. Ellipsis of orange marmalade.\n' +
|
||||||
|
'- quince jam\n' +
|
||||||
|
'**verb**:\n' +
|
||||||
|
'- To spread marmalade on.\n' +
|
||||||
|
'</small>#writing #microfiction #vss #marmalade',
|
||||||
|
cw: null,
|
||||||
|
visibility: 'public',
|
||||||
|
renoteCount: 0,
|
||||||
|
repliesCount: 0,
|
||||||
|
reactions: {},
|
||||||
|
reactionEmojis: [],
|
||||||
|
emojis: [],
|
||||||
|
tags: ['micro365', 'writing', 'microfiction', 'vss', 'marmalade'],
|
||||||
|
fileIds: [],
|
||||||
|
files: [],
|
||||||
|
replyId: null,
|
||||||
|
renoteId: null
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
export default async function insertPublished(res, word){
|
export default async function insertPublished(res, word) {
|
||||||
const childLogger = logger.child({res,word})
|
logger.trace("insertPublished called")
|
||||||
childLogger.trace("insertPublished called")
|
try {
|
||||||
return db('published')
|
return db('published')
|
||||||
.insert({
|
.insert({
|
||||||
id: res.createdNote.id,
|
id: res.createdNote.id,
|
||||||
word,
|
word,
|
||||||
date: isoDate(sampleRes.createdNote.createdAt)
|
date: isoDate(sampleRes.createdNote.createdAt)
|
||||||
})
|
})
|
||||||
.then(res => {
|
} catch (error) {
|
||||||
childLogger.trace("succesful insertion into table: published")
|
logger.trace("succesful insertion into table: published")
|
||||||
return res
|
throw error
|
||||||
})
|
}
|
||||||
.catch(error => {throw error})
|
|
||||||
}
|
}
|
||||||
//console.log(await insertPublished(sampleRes,'marmalade'))
|
//console.log(await insertPublished(sampleRes,'marmalade'))
|
|
@ -1,11 +1,17 @@
|
||||||
import { db } from "./db.mjs";
|
import { db } from "./db.mjs";
|
||||||
import { isoDate } from "../utilities.mjs";
|
import { isoDate } from "../utilities.mjs";
|
||||||
|
import logger from "../logger.mjs";
|
||||||
export default async function todaysPromptAlreadyPublished() {
|
export default async function todaysPromptAlreadyPublished() {
|
||||||
const number = await db('published')
|
try {
|
||||||
|
const number = await db('published')
|
||||||
.count('* as count')
|
.count('* as count')
|
||||||
.where('date', isoDate())
|
.where('date', isoDate())
|
||||||
.catch(error=>{throw error})
|
return number[0].count > 0
|
||||||
return number[0].count > 0
|
} catch (error) {
|
||||||
|
logger.error("todaysPromptAlreadyPublished failed!")
|
||||||
|
throw error
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//console.log(await todaysPromptAlreadyPublished())
|
//console.log(await todaysPromptAlreadyPublished())
|
||||||
|
|
Loading…
Reference in New Issue