diff --git a/packages/api/src/services/create_user.ts b/packages/api/src/services/create_user.ts
index 6fd8e2033..a04ff8164 100644
--- a/packages/api/src/services/create_user.ts
+++ b/packages/api/src/services/create_user.ts
@@ -159,7 +159,7 @@ const createDefaultFiltersForUser =
name: 'Continue Reading',
filter: 'in:inbox sort:read-desc is:reading',
},
- { name: 'Non-Feed Items', filter: 'in:library' },
+ { name: 'Non-Feed Items', filter: 'no:subscription' },
{ name: 'Highlights', filter: 'has:highlights mode:highlights' },
{ name: 'Unlabeled', filter: 'no:label' },
{ name: 'Oldest First', filter: 'sort:saved-asc' },
diff --git a/packages/api/src/services/library_item.ts b/packages/api/src/services/library_item.ts
index 5cbfeb134..6d66184a3 100644
--- a/packages/api/src/services/library_item.ts
+++ b/packages/api/src/services/library_item.ts
@@ -232,7 +232,9 @@ const buildWhereClause = (
if (args.noFilters) {
args.noFilters.forEach((filter) => {
- queryBuilder.andWhere(`library_item.${filter.field} = '{}'`)
+ queryBuilder.andWhere(
+ `library_item.${filter.field} = '{}' OR library_item.${filter.field} IS NULL`
+ )
})
}
diff --git a/packages/api/src/utils/search.ts b/packages/api/src/utils/search.ts
index af8e26d9f..dde0e019d 100644
--- a/packages/api/src/utils/search.ts
+++ b/packages/api/src/utils/search.ts
@@ -386,13 +386,20 @@ const parseNoFilter = (str?: string): NoFilter | undefined => {
return { field: 'highlight_annotations' }
case 'label':
return { field: 'label_names' }
+ case 'subscription':
+ return { field: 'subscription' }
}
return undefined
}
export const parseSearchQuery = (query: string | undefined): SearchFilter => {
- const searchQuery = query ? query.replace(/\W\s":/g, '') : undefined
+ const searchQuery = query
+ ? query
+ .replace(/\W\s":/g, '')
+ .replace('in:subscription', 'has:subscriptions') // compatibility with old search
+ .replace('in:library', 'no:subscription') // compatibility with old search
+ : undefined
const result: SearchFilter = {
query: searchQuery,
readFilter: ReadFilter.ALL,
diff --git a/packages/web/components/templates/homeFeed/EmptyLibrary.tsx b/packages/web/components/templates/homeFeed/EmptyLibrary.tsx
index 72da7891b..23dfe3d7b 100644
--- a/packages/web/components/templates/homeFeed/EmptyLibrary.tsx
+++ b/packages/web/components/templates/homeFeed/EmptyLibrary.tsx
@@ -169,7 +169,7 @@ export const EmptyLibrary = (props: EmptyLibraryProps) => {
return 'inbox'
case 'in:inbox sort:read-desc is:reading':
return 'continue'
- case 'in:library':
+ case 'no:subscription':
return 'non-feed'
case 'has:highlights mode:highlights':
return 'highlight'
@@ -181,7 +181,7 @@ export const EmptyLibrary = (props: EmptyLibraryProps) => {
return 'archive'
case 'label:RSS':
return 'feed'
- case 'in:subscription':
+ case 'has:subscriptions':
return 'subscription'
case 'label:Newsletter':
return 'newsletter'
diff --git a/packages/web/components/templates/homeFeed/LibraryFilterMenu.tsx b/packages/web/components/templates/homeFeed/LibraryFilterMenu.tsx
index 13a27dea4..d7bb99f9b 100644
--- a/packages/web/components/templates/homeFeed/LibraryFilterMenu.tsx
+++ b/packages/web/components/templates/homeFeed/LibraryFilterMenu.tsx
@@ -241,7 +241,7 @@ function Subscriptions(
>
{!collapsed ? (
<>
-
+