mirror of
https://github.com/nextapps-de/flexsearch.git
synced 2025-08-28 16:20:04 +02:00
resolver types within index.d.ts
This commit is contained in:
206
index.d.ts
vendored
206
index.d.ts
vendored
@@ -195,10 +195,10 @@ declare module "flexsearch" {
|
||||
W extends WorkerType = false,
|
||||
S extends StorageInterface | boolean = false,
|
||||
R extends boolean = true,
|
||||
D extends DocumentData = undefined
|
||||
//D extends DocumentData = undefined
|
||||
> = R extends true
|
||||
? DefaultSearchResults
|
||||
: Resolver<D, W, S>
|
||||
: Resolver<undefined, W, S>
|
||||
|
||||
/**
|
||||
* Basic usage and variants: https://github.com/nextapps-de/flexsearch#basic-usage-and-variants \
|
||||
@@ -210,12 +210,12 @@ declare module "flexsearch" {
|
||||
W extends WorkerType = false,
|
||||
S extends StorageInterface | boolean = false,
|
||||
R extends boolean = true,
|
||||
D extends DocumentData = undefined
|
||||
//D extends DocumentData = undefined
|
||||
> = W extends false
|
||||
? S extends false
|
||||
? SearchResults<W, S, R, D>
|
||||
: Promise<SearchResults<W, S, R, D>>
|
||||
: Promise<SearchResults<W, S, R, D>>
|
||||
? SearchResults<W, S, R>
|
||||
: Promise<SearchResults<W, S, R>>
|
||||
: Promise<SearchResults<W, S, R>>
|
||||
|
||||
export class Index<
|
||||
W extends WorkerType = false,
|
||||
@@ -501,7 +501,7 @@ declare module "flexsearch" {
|
||||
D extends DocumentData = DocumentData,
|
||||
H extends HighlightOptions | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false
|
||||
E extends boolean = H extends HighlightOptions ? true : false
|
||||
> = FieldName<D> | DocumentSearchOptions<D, H, true, R, E>;
|
||||
|
||||
export type DocumentSearchResults<
|
||||
@@ -509,21 +509,40 @@ declare module "flexsearch" {
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false,
|
||||
E extends boolean = H extends HighlightOptions ? true : false,
|
||||
M extends boolean = false
|
||||
> = P extends false
|
||||
? M extends true
|
||||
? MergedDocumentSearchResults<D>
|
||||
: E extends true
|
||||
? EnrichedDocumentSearchResults<D>
|
||||
: H extends false
|
||||
? DefaultDocumentSearchResults<D>
|
||||
: EnrichedDocumentSearchResults<D>
|
||||
: E extends true
|
||||
? EnrichedResults<D>
|
||||
: DefaultSearchResults;
|
||||
|
||||
export type DocumentSearchResultsWrapper<
|
||||
D extends DocumentData = DocumentData,
|
||||
W extends WorkerType = false,
|
||||
S extends StorageInterface | boolean = false,
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = H extends HighlightOptions ? true : false,
|
||||
M extends boolean = false
|
||||
> = R extends true
|
||||
? P extends false
|
||||
? M extends true
|
||||
? MergedDocumentSearchResults<D>
|
||||
: E extends true
|
||||
? EnrichedDocumentSearchResults<D>
|
||||
: H extends false
|
||||
? DefaultDocumentSearchResults<D>
|
||||
: EnrichedDocumentSearchResults<D>
|
||||
: E extends true
|
||||
? EnrichedResults<D>
|
||||
: DefaultSearchResults
|
||||
: Resolver;
|
||||
? W extends false
|
||||
? S extends false
|
||||
? DocumentSearchResults<D, H, P, R, E, M>
|
||||
: Promise<DocumentSearchResults<D, H, P, R, E, M>>
|
||||
: Promise<DocumentSearchResults<D, H, P, R, E, M>>
|
||||
: W extends false
|
||||
? S extends false
|
||||
? Resolver<D, W, S, H, R, E>
|
||||
: Promise<Resolver<D, W, S, H, R, E>>
|
||||
: Promise<Resolver<D, W, S, H, R, E>>;
|
||||
|
||||
/**
|
||||
* **Document:**
|
||||
@@ -534,7 +553,7 @@ declare module "flexsearch" {
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false,
|
||||
E extends boolean = H extends HighlightOptions ? true : false,
|
||||
M extends boolean = false,
|
||||
> = SearchOptions<R> & {
|
||||
tag?: {[field: FieldName]: TagName} | Array<{[field: FieldName]: TagName}>;
|
||||
@@ -557,21 +576,6 @@ declare module "flexsearch" {
|
||||
[key: string]: DocumentValue | DocumentValue[];
|
||||
};
|
||||
|
||||
export type DocumentSearchResultsWrapper<
|
||||
D extends DocumentData = DocumentData,
|
||||
W extends WorkerType = false,
|
||||
S extends StorageInterface | boolean = false,
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false,
|
||||
M extends boolean = false
|
||||
> = W extends false
|
||||
? S extends false
|
||||
? DocumentSearchResults<D, H, P, R, E, M>
|
||||
: Promise<DocumentSearchResults<D, H, P, R, E, M>>
|
||||
: Promise<DocumentSearchResults<D, H, P, R, E, M>>
|
||||
|
||||
/**
|
||||
* Basic usage and variants: https://github.com/nextapps-de/flexsearch#basic-usage-and-variants \
|
||||
* API overview: https://github.com/nextapps-de/flexsearch#api-overview \
|
||||
@@ -626,7 +630,7 @@ declare module "flexsearch" {
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false,
|
||||
E extends boolean = H extends HighlightOptions ? true : false,
|
||||
M extends boolean = false
|
||||
>(
|
||||
query: string,
|
||||
@@ -636,7 +640,7 @@ declare module "flexsearch" {
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false,
|
||||
E extends boolean = H extends HighlightOptions ? true : false,
|
||||
M extends boolean = false
|
||||
>(
|
||||
query: string,
|
||||
@@ -648,7 +652,7 @@ declare module "flexsearch" {
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false,
|
||||
E extends boolean = H extends HighlightOptions ? true : false,
|
||||
M extends boolean = false
|
||||
>(
|
||||
query: string,
|
||||
@@ -660,7 +664,7 @@ declare module "flexsearch" {
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false,
|
||||
E extends boolean = H extends HighlightOptions ? true : false,
|
||||
M extends boolean = false
|
||||
>(
|
||||
query: string,
|
||||
@@ -672,7 +676,7 @@ declare module "flexsearch" {
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false,
|
||||
E extends boolean = H extends HighlightOptions ? true : false,
|
||||
M extends boolean = false
|
||||
>(
|
||||
options: DocumentSearchOptions<D, H, P, R, E, M>,
|
||||
@@ -681,7 +685,7 @@ declare module "flexsearch" {
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false,
|
||||
E extends boolean = H extends HighlightOptions ? true : false,
|
||||
M extends boolean = false
|
||||
>(
|
||||
options: DocumentSearchOptions<D, H, P, R, E, M>,
|
||||
@@ -766,118 +770,118 @@ declare module "flexsearch" {
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false,
|
||||
E extends boolean = H extends HighlightOptions ? true : false,
|
||||
M extends boolean = false
|
||||
>(
|
||||
query: string,
|
||||
callback?: AsyncCallback<DocumentSearchResults<D, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResults<D, H, P, R, E, M>>
|
||||
callback?: AsyncCallback<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>
|
||||
searchCacheAsync<
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false,
|
||||
E extends boolean = H extends HighlightOptions ? true : false,
|
||||
M extends boolean = false
|
||||
>(
|
||||
query: string,
|
||||
callback?: AsyncCallback<DocumentSearchResults<D, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResults<D, H, P, R, E, M>>
|
||||
callback?: AsyncCallback<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>
|
||||
|
||||
/** @deprecated Pass "limit" within options */
|
||||
searchAsync<
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false,
|
||||
E extends boolean = H extends HighlightOptions ? true : false,
|
||||
M extends boolean = false
|
||||
>(
|
||||
query: string,
|
||||
limit: Limit,
|
||||
callback?: AsyncCallback<DocumentSearchResults<D, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResults<D, H, P, R, E, M>>
|
||||
callback?: AsyncCallback<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>
|
||||
/** @deprecated Pass "limit" within options */
|
||||
searchCacheAsync<
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false,
|
||||
E extends boolean = H extends HighlightOptions ? true : false,
|
||||
M extends boolean = false
|
||||
>(
|
||||
query: string,
|
||||
limit: Limit,
|
||||
callback?: AsyncCallback<DocumentSearchResults<D, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResults<D, H, P, R, E, M>>
|
||||
callback?: AsyncCallback<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>
|
||||
|
||||
/** @deprecated Pass "limit" within options */
|
||||
searchAsync<
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false,
|
||||
E extends boolean = H extends HighlightOptions ? true : false,
|
||||
M extends boolean = false
|
||||
>(
|
||||
query: string,
|
||||
limit: Limit,
|
||||
options?: DocumentSearchOptions<D, H, P, R, E, M>,
|
||||
callback?: AsyncCallback<DocumentSearchResults<D, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResults<D, H, P, R, E, M>>;
|
||||
callback?: AsyncCallback<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>;
|
||||
/** @deprecated Pass "limit" within options */
|
||||
searchCacheAsync<
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false,
|
||||
E extends boolean = H extends HighlightOptions ? true : false,
|
||||
M extends boolean = false
|
||||
>(
|
||||
query: string,
|
||||
limit: Limit,
|
||||
options?: DocumentSearchOptions<D, H, P, R, E, M>,
|
||||
callback?: AsyncCallback<DocumentSearchResults<D, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResults<D, H, P, R, E, M>>;
|
||||
callback?: AsyncCallback<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>;
|
||||
|
||||
searchAsync<
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false,
|
||||
E extends boolean = H extends HighlightOptions ? true : false,
|
||||
M extends boolean = false
|
||||
>(
|
||||
query: string,
|
||||
options?: DocumentSearchOptions<D, H, P, R, E, M>,
|
||||
callback?: AsyncCallback<DocumentSearchResults<D, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResults<D, H, P, R, E, M>>
|
||||
callback?: AsyncCallback<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>
|
||||
searchCacheAsync<
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false,
|
||||
E extends boolean = H extends HighlightOptions ? true : false,
|
||||
M extends boolean = false
|
||||
>(
|
||||
query: string,
|
||||
options?: DocumentSearchOptions<D, H, P, R, E, M>,
|
||||
callback?: AsyncCallback<DocumentSearchResults<D, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResults<D, H, P, R, E, M>>
|
||||
callback?: AsyncCallback<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>
|
||||
|
||||
searchAsync<
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false,
|
||||
E extends boolean = H extends HighlightOptions ? true : false,
|
||||
M extends boolean = false
|
||||
>(
|
||||
options: DocumentSearchOptions<D, H, P, R, E, M>,
|
||||
callback?: AsyncCallback<DocumentSearchResults<D, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResults<D, H, P, R, E, M>>;
|
||||
callback?: AsyncCallback<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>;
|
||||
searchCacheAsync<
|
||||
H extends HighlightOptions | boolean = false,
|
||||
P extends PluckOptions<D, H, R, E> | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false,
|
||||
E extends boolean = H extends HighlightOptions ? true : false,
|
||||
M extends boolean = false
|
||||
>(
|
||||
options: DocumentSearchOptions<D, H, P, R, E, M>,
|
||||
callback?: AsyncCallback<DocumentSearchResults<D, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResults<D, H, P, R, E, M>>;
|
||||
callback?: AsyncCallback<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>,
|
||||
): Promise<DocumentSearchResultsWrapper<D, W, S, H, P, R, E, M>>;
|
||||
}
|
||||
|
||||
type IdType =
|
||||
@@ -902,7 +906,7 @@ declare module "flexsearch" {
|
||||
"uint64" |
|
||||
"bigint";
|
||||
|
||||
type PersistentOptions = {
|
||||
export type PersistentOptions = {
|
||||
name?: string;
|
||||
type?: IdType;
|
||||
db?: any;
|
||||
@@ -910,7 +914,6 @@ declare module "flexsearch" {
|
||||
|
||||
export type DefaultResolve<
|
||||
D extends DocumentData = undefined,
|
||||
H extends HighlightOptions | boolean = false,
|
||||
R extends boolean = true,
|
||||
E extends boolean = false
|
||||
> = {
|
||||
@@ -921,10 +924,6 @@ declare module "flexsearch" {
|
||||
enrich?: D extends DocumentData
|
||||
? R extends true ? E : false
|
||||
: false;
|
||||
/** only usable when "resolve" was not set to false */
|
||||
highlight?: D extends DocumentData
|
||||
? R extends true ? H : false
|
||||
: false;
|
||||
};
|
||||
|
||||
export type ResolverOptions<
|
||||
@@ -933,8 +932,8 @@ declare module "flexsearch" {
|
||||
S extends StorageInterface | boolean = false,
|
||||
H extends HighlightOptions | boolean = false,
|
||||
R extends boolean = false,
|
||||
E extends boolean = false
|
||||
> = DefaultResolve<D, H, R, E> & {
|
||||
E extends boolean = H extends HighlightOptions ? true : false
|
||||
> = DefaultResolve<D, R, E> & {
|
||||
query?: string;
|
||||
index?: Index<W, S> | Document<D, W, S>;
|
||||
pluck?: FieldName<D>;
|
||||
@@ -946,6 +945,10 @@ declare module "flexsearch" {
|
||||
not?: ResolverOptions<D, W, S, H, R, E> | Array<ResolverOptions<D, W, S, H, R, E>>;
|
||||
boost?: number;
|
||||
suggest?: boolean;
|
||||
/** only usable when "resolve" was not set to false */
|
||||
highlight?: D extends DocumentData
|
||||
? R extends true ? H : false
|
||||
: false;
|
||||
};
|
||||
|
||||
export type HighlightBoundaryOptions = {
|
||||
@@ -988,23 +991,42 @@ declare module "flexsearch" {
|
||||
export class Resolver<
|
||||
D extends DocumentData = undefined,
|
||||
W extends WorkerType = false,
|
||||
S extends StorageInterface | boolean = false
|
||||
S extends StorageInterface | boolean = false,
|
||||
H extends HighlightOptions | boolean = false,
|
||||
R extends boolean = false,
|
||||
E extends boolean = H extends HighlightOptions ? true : false
|
||||
> {
|
||||
result: IntermediateSearchResults;
|
||||
|
||||
constructor(options?: ResolverOptions<D, W, S> | IntermediateSearchResults);
|
||||
|
||||
and<R extends boolean = false>(...args: ResolverOptions<D, W, S, false, R>[]):
|
||||
IndexSearchResultsWrapper<W, S, R, D>;
|
||||
and<d extends DocumentData = D,
|
||||
h extends HighlightOptions | boolean = H,
|
||||
r extends boolean = R,
|
||||
e extends boolean = h extends HighlightOptions ? true : E
|
||||
>(...args: ResolverOptions<d, W, S, h, r, e>[]):
|
||||
DocumentSearchResultsWrapper<d, W, S, h, true, r, e>;
|
||||
|
||||
or<R extends boolean = false>(...args: ResolverOptions<D, W, S, false, R>[]):
|
||||
IndexSearchResultsWrapper<W, S, R, D>;
|
||||
or<d extends DocumentData = D,
|
||||
h extends HighlightOptions | boolean = H,
|
||||
r extends boolean = R,
|
||||
e extends boolean = h extends HighlightOptions ? true : E
|
||||
>(...args: ResolverOptions<d, W, S, h, r, e>[]):
|
||||
DocumentSearchResultsWrapper<d, W, S, h, true, r, e>;
|
||||
|
||||
xor<R extends boolean = false>(...args: ResolverOptions<D, W, S, false, R>[]):
|
||||
IndexSearchResultsWrapper<W, S, R, D>;
|
||||
xor<d extends DocumentData = D,
|
||||
h extends HighlightOptions | boolean = H,
|
||||
r extends boolean = R,
|
||||
e extends boolean = h extends HighlightOptions ? true : E
|
||||
>(...args: ResolverOptions<d, W, S, h, r, e>[]):
|
||||
DocumentSearchResultsWrapper<d, W, S, h, true, r, e>;
|
||||
|
||||
not<R extends boolean = false>(...args: ResolverOptions<D, W, S, false, R>[]):
|
||||
IndexSearchResultsWrapper<W, S, R, D>;
|
||||
not<d extends DocumentData = D,
|
||||
h extends HighlightOptions | boolean = H,
|
||||
r extends boolean = R,
|
||||
e extends boolean = h extends HighlightOptions ? true : E
|
||||
>(...args: ResolverOptions<d, W, S, h, r, e>[]):
|
||||
DocumentSearchResultsWrapper<d, W, S, h, true, r, e>;
|
||||
|
||||
limit(limit: number): Resolver<D, W, S>;
|
||||
|
||||
@@ -1012,7 +1034,7 @@ declare module "flexsearch" {
|
||||
|
||||
boost(boost: number): Resolver<D, W, S>;
|
||||
|
||||
resolve(options?: DefaultResolve<D>): IndexSearchResultsWrapper<W, S, true, D>;
|
||||
resolve<e extends boolean = E>(options?: DefaultResolve<D, true, e>): DocumentSearchResultsWrapper<D, W, S, false, true, true, e>;
|
||||
}
|
||||
|
||||
export class StorageInterface {
|
||||
@@ -1067,8 +1089,8 @@ declare module "flexsearch/db/*" {
|
||||
|
||||
declare module "flexsearch/lang/*" {
|
||||
import { EncoderOptions } from "flexsearch";
|
||||
const Options: EncoderOptions;
|
||||
export default Options;
|
||||
//const Options: EncoderOptions;
|
||||
export default EncoderOptions;
|
||||
}
|
||||
|
||||
// https://www.typescriptlang.org/docs/handbook/jsdoc-supported-types.html
|
||||
|
@@ -48,7 +48,7 @@ async function test_index() {
|
||||
const res3: DefaultSearchResults = res2.resolve();
|
||||
|
||||
const res4: Resolver<undefined, false, IndexedDB> = new Resolver({ index: index3 });
|
||||
const res5: Promise<Resolver<undefined, false, IndexedDB>> = res4.and();
|
||||
const res5: Promise<Resolver<undefined, false, IndexedDB>> = res4.and({});
|
||||
const res6: Promise<Resolver<undefined, false, IndexedDB>> = res4.and({ index: index3 });
|
||||
const res7: Promise<DefaultSearchResults> = (await res6).limit(100).resolve();
|
||||
|
||||
@@ -89,14 +89,14 @@ async function test_index() {
|
||||
|
||||
async function test_document() {
|
||||
|
||||
// ----------------------------------------------------------------
|
||||
|
||||
const document = new Document<{
|
||||
type doctype = {
|
||||
id: number,
|
||||
title: string,
|
||||
description: string,
|
||||
tags: string[]
|
||||
}>({
|
||||
};
|
||||
|
||||
const document = new Document<doctype>({
|
||||
encoder: "LatinBalance",
|
||||
resolution: 9,
|
||||
context: false,
|
||||
@@ -108,7 +108,7 @@ async function test_document() {
|
||||
},
|
||||
});
|
||||
|
||||
type doctype = {
|
||||
type doctype2 = {
|
||||
id: number,
|
||||
meta: {
|
||||
title: string,
|
||||
@@ -117,7 +117,7 @@ async function test_document() {
|
||||
}
|
||||
};
|
||||
|
||||
const document2 = new Document<doctype>({
|
||||
const document2 = new Document<doctype2>({
|
||||
document: {
|
||||
id: "id",
|
||||
store: [{
|
||||
@@ -176,25 +176,25 @@ async function test_document() {
|
||||
const doc11: Promise<DefaultDocumentSearchResults> = document.searchCacheAsync({});
|
||||
const doc13: DefaultDocumentSearchResults = document.search({ resolve: true });
|
||||
|
||||
const doc14: Resolver = document.search({ resolve: false });
|
||||
const doc14: Resolver<doctype> = document.search({ resolve: false });
|
||||
const doc15: DefaultSearchResults = doc14.resolve({});
|
||||
const doc16: DefaultSearchResults = doc14.and({ resolve: true });
|
||||
const doc17: EnrichedResults = doc14.resolve({ enrich: true });
|
||||
const doc18: EnrichedResults = doc14.and({ resolve: true, enrich: true });
|
||||
const doc19: Resolver = doc14.and({ index: document, field: "title" });
|
||||
const doc20: Resolver = doc19.or({ index: document2, pluck: "meta:title" });
|
||||
const doc19: Resolver<doctype> = doc14.and({ index: document, field: "title" });
|
||||
const doc20: Resolver<doctype2> = doc19.or({ index: document2, pluck: "meta:title" });
|
||||
const doc21: DefaultSearchResults = doc20.resolve();
|
||||
const doc22: EnrichedResults = doc20.resolve({ enrich: true });
|
||||
// highlight within last resolver stage is work in progress:
|
||||
const doc23: EnrichedResults = doc20.and({ resolve: true, highlight: { template: "", boundary: {} } });
|
||||
|
||||
const doc24: Resolver = new Resolver({ index: document });
|
||||
const doc25: EnrichedResults = doc24.and({}, { index: document2, resolve: true, enrich: true });
|
||||
const doc24: Resolver<doctype2> = new Resolver({ index: document2 });
|
||||
const doc25: EnrichedResults = doc24.and({}, { index: document, resolve: true, enrich: true });
|
||||
const doc26: EnrichedResults = doc24.and({}, { index: document2 }).resolve({ enrich: true });
|
||||
// highlight within last resolver stage is work in progress:
|
||||
const doc27: EnrichedResults = doc24.and({}, { index: document2, resolve: true, highlight: "" });
|
||||
const doc28: DefaultSearchResults = document2.search({ pluck: { field: "meta:title", limit: 10 } });
|
||||
const doc30: EnrichedResults = document2.search({ pluck: { field: "meta:title", highlight: true } });
|
||||
const doc30: EnrichedResults = document2.search({ highlight: true, enrich: true, pluck: { field: "meta:title"} });
|
||||
|
||||
// highlight on .resolve() is never supported:
|
||||
// @ts-expect-error
|
||||
|
Reference in New Issue
Block a user