From 41b90cbfd1686c5546426534b5d5299c50b112a6 Mon Sep 17 00:00:00 2001 From: Hongbo Wu Date: Tue, 26 Mar 2024 17:53:48 +0800 Subject: [PATCH] fix some undefined error --- packages/api/src/services/library_item.ts | 8 ++++---- packages/api/src/services/recommendation.ts | 1 + 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/api/src/services/library_item.ts b/packages/api/src/services/library_item.ts index 0ae7af95e..3aa4c2da2 100644 --- a/packages/api/src/services/library_item.ts +++ b/packages/api/src/services/library_item.ts @@ -1371,7 +1371,7 @@ export const filterItemEvents = ( throw new Error('Expected a literal expression.') } - const lowercasedValue = expression.value?.toString().toLowerCase() + const lowercasedValue = expression.value?.toString()?.toLowerCase() if (field.type === 'ImplicitField') { throw new RequiresSearchQueryError() @@ -1422,7 +1422,7 @@ export const filterItemEvents = ( } } case 'type': { - return event.itemType?.toString().toLowerCase() === lowercasedValue + return event.itemType?.toString()?.toLowerCase() === lowercasedValue } case 'label': { const labels = event.labelNames as string[] | undefined @@ -1495,7 +1495,7 @@ export const filterItemEvents = ( // get camel case column name const key = camelCase(columnName) as 'subscription' | 'itemLanguage' - return event[key]?.toString().toLowerCase() === lowercasedValue + return event[key]?.toString()?.toLowerCase() === lowercasedValue } // match filters case 'author': @@ -1512,7 +1512,7 @@ export const filterItemEvents = ( | 'siteName' // TODO: Implement full text search - return event[key]?.toString().match(new RegExp(lowercasedValue, 'i')) + return event[key]?.toString()?.match(new RegExp(lowercasedValue, 'i')) } case 'includes': { const ids = lowercasedValue.split(',') diff --git a/packages/api/src/services/recommendation.ts b/packages/api/src/services/recommendation.ts index 483b10366..af73e5b4c 100644 --- a/packages/api/src/services/recommendation.ts +++ b/packages/api/src/services/recommendation.ts @@ -41,6 +41,7 @@ export const addRecommendation = async ( uploadFile: item.uploadFile, wordCount: item.wordCount, publishedAt: item.publishedAt, + recommenderNames: item.recommenderNames, } recommendedItem = await createOrUpdateLibraryItem(newItem, userId)