@@ -117,6 +117,7 @@
|
||||
"qs": "6.11.2",
|
||||
"reflect-metadata": "0.2.1",
|
||||
"remove-markdown": "0.5.0",
|
||||
"remove-md-codeblock": "0.0.4",
|
||||
"rxjs": "7.8.1",
|
||||
"semver": "7.5.4",
|
||||
"slugify": "1.6.6",
|
||||
@@ -164,4 +165,4 @@
|
||||
"mongodb-memory-server": "^9.1.5",
|
||||
"redis-memory-server": "^0.10.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
import { inspect } from 'util'
|
||||
import algoliasearch from 'algoliasearch'
|
||||
import { omit } from 'lodash'
|
||||
import removeMdCodeblock from 'remove-md-codeblock'
|
||||
import type { SearchResponse } from '@algolia/client-search'
|
||||
import type { SearchDto } from '~/modules/search/search.dto'
|
||||
import type { Pagination } from '~/shared/interface/paginator.interface'
|
||||
@@ -226,7 +227,6 @@ export class SearchService {
|
||||
}
|
||||
|
||||
async buildAlgoliaIndexData() {
|
||||
const documents: Record<'title' | 'text' | 'type' | 'id', string>[] = []
|
||||
const combineDocuments = await Promise.all([
|
||||
this.postService.model
|
||||
.find({ hide: false })
|
||||
@@ -240,6 +240,7 @@ export class SearchService {
|
||||
Reflect.deleteProperty(data, '_id')
|
||||
return {
|
||||
...data,
|
||||
text: removeMdCodeblock(data.text),
|
||||
type: 'post',
|
||||
}
|
||||
})
|
||||
@@ -369,7 +370,7 @@ export class SearchService {
|
||||
}
|
||||
}
|
||||
|
||||
const MAX_SIZE_IN_BYTES = 100000
|
||||
const MAX_SIZE_IN_BYTES = 100_000
|
||||
function adjustObjectSizeEfficiently<T extends { text: string }>(
|
||||
originalObject: T,
|
||||
maxSizeInBytes: number = MAX_SIZE_IN_BYTES,
|
||||
|
||||
8
pnpm-lock.yaml
generated
8
pnpm-lock.yaml
generated
@@ -280,6 +280,9 @@ importers:
|
||||
remove-markdown:
|
||||
specifier: 0.5.0
|
||||
version: 0.5.0
|
||||
remove-md-codeblock:
|
||||
specifier: 0.0.4
|
||||
version: 0.0.4
|
||||
rxjs:
|
||||
specifier: 7.8.1
|
||||
version: 7.8.1
|
||||
@@ -8081,6 +8084,11 @@ packages:
|
||||
resolution: {integrity: sha512-x917M80K97K5IN1L8lUvFehsfhR8cYjGQ/yAMRI9E7JIKivtl5Emo5iD13DhMr+VojzMCiYk8V2byNPwT/oapg==}
|
||||
dev: false
|
||||
|
||||
/remove-md-codeblock@0.0.4:
|
||||
resolution: {integrity: sha512-DE77wmQz99pE0Ma3SjOt1+ihHkzGgLHtSR58XzGWHvcCkQFfdV/YRAbRruHpBRrcppCLEMW+iJoSy/VpIaq7UA==}
|
||||
engines: {pnpm: '>=6'}
|
||||
dev: false
|
||||
|
||||
/repeat-string@1.6.1:
|
||||
resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==}
|
||||
engines: {node: '>=0.10'}
|
||||
|
||||
Reference in New Issue
Block a user