@tstdl/base 0.71.65 → 0.71.68
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +10 -10
- package/search-index/elastic/index.d.ts +1 -0
- package/search-index/elastic/index.js +1 -0
- package/search-index/elastic/index.js.map +1 -1
- package/search-index/elastic/keyword-rewriter.d.ts +8 -0
- package/search-index/elastic/keyword-rewriter.js +22 -0
- package/search-index/elastic/keyword-rewriter.js.map +1 -0
- package/search-index/elastic/search-index.d.ts +4 -2
- package/search-index/elastic/search-index.js +14 -3
- package/search-index/elastic/search-index.js.map +1 -1
- package/search-index/elastic/sort-converter.d.ts +2 -1
- package/search-index/elastic/sort-converter.js +2 -3
- package/search-index/elastic/sort-converter.js.map +1 -1
- package/search-index/memory/memory-search-index.d.ts +1 -0
- package/search-index/memory/memory-search-index.js +4 -0
- package/search-index/memory/memory-search-index.js.map +1 -1
- package/search-index/search-index.d.ts +1 -0
- package/search-index/search-index.js.map +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tstdl/base",
|
|
3
|
-
"version": "0.71.
|
|
3
|
+
"version": "0.71.68",
|
|
4
4
|
"author": "Patrick Hein",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -15,22 +15,22 @@
|
|
|
15
15
|
"pub": "npm run build:prod && rm -vf dist/test* && npm publish dist/"
|
|
16
16
|
},
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"luxon": "^2",
|
|
18
|
+
"luxon": "^2.4",
|
|
19
19
|
"reflect-metadata": "^0.1",
|
|
20
|
-
"rxjs": "^7",
|
|
21
|
-
"type-fest": "^2"
|
|
20
|
+
"rxjs": "^7.5",
|
|
21
|
+
"type-fest": "^2.14"
|
|
22
22
|
},
|
|
23
23
|
"devDependencies": {
|
|
24
|
-
"@types/chroma-js": "
|
|
24
|
+
"@types/chroma-js": "2.1",
|
|
25
25
|
"@types/koa__router": "8.0",
|
|
26
26
|
"@types/luxon": "2.3",
|
|
27
27
|
"@types/minio": "7.0",
|
|
28
28
|
"@types/mjml": "4.7",
|
|
29
|
-
"@types/node": "
|
|
30
|
-
"@types/nodemailer": "
|
|
29
|
+
"@types/node": "18",
|
|
30
|
+
"@types/nodemailer": "6.4",
|
|
31
31
|
"@types/yup": "0.29",
|
|
32
|
-
"@typescript-eslint/eslint-plugin": "5
|
|
33
|
-
"@typescript-eslint/parser": "5
|
|
32
|
+
"@typescript-eslint/eslint-plugin": "5",
|
|
33
|
+
"@typescript-eslint/parser": "5",
|
|
34
34
|
"eslint": "8.18",
|
|
35
35
|
"ttypescript": "1.5",
|
|
36
36
|
"typedoc": "0.23",
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
"mjml": "^4.12",
|
|
50
50
|
"mongodb": "^4.7",
|
|
51
51
|
"nodemailer": "^6.7",
|
|
52
|
-
"puppeteer": "^
|
|
52
|
+
"puppeteer": "^15.1",
|
|
53
53
|
"superstruct": "^0.16",
|
|
54
54
|
"undici": "^5.5",
|
|
55
55
|
"urlpattern-polyfill": "^4.0"
|
|
@@ -15,6 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./config"), exports);
|
|
18
|
+
__exportStar(require("./keyword-rewriter"), exports);
|
|
18
19
|
__exportStar(require("./model"), exports);
|
|
19
20
|
__exportStar(require("./module"), exports);
|
|
20
21
|
__exportStar(require("./search-index"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../source/search-index/elastic/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,0CAAwB;AACxB,2CAAyB;AACzB,iDAA+B;AAC/B,0CAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../source/search-index/elastic/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,qDAAmC;AACnC,0CAAwB;AACxB,2CAAyB;AACzB,iDAA+B;AAC/B,0CAAwB"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.KeywordRewriter = void 0;
|
|
4
|
+
class KeywordRewriter {
|
|
5
|
+
constructor(fields) {
|
|
6
|
+
this.fields = new Set(fields);
|
|
7
|
+
}
|
|
8
|
+
add(field) {
|
|
9
|
+
this.fields.add(field);
|
|
10
|
+
}
|
|
11
|
+
remove(field) {
|
|
12
|
+
this.fields.delete(field);
|
|
13
|
+
}
|
|
14
|
+
requiresRewrite(field) {
|
|
15
|
+
return this.fields.has(field);
|
|
16
|
+
}
|
|
17
|
+
rewriteIfRequired(field) {
|
|
18
|
+
return this.requiresRewrite(field) ? `${field}.keyword` : field;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
exports.KeywordRewriter = KeywordRewriter;
|
|
22
|
+
//# sourceMappingURL=keyword-rewriter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyword-rewriter.js","sourceRoot":"","sources":["../../../source/search-index/elastic/keyword-rewriter.ts"],"names":[],"mappings":";;;AAAA,MAAa,eAAe;IAG1B,YAAY,MAAwB;QAClC,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAED,GAAG,CAAC,KAAa;QACf,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,KAAa;QAClB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,eAAe,CAAC,KAAa;QAC3B,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,iBAAiB,CAAC,KAAa;QAC7B,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC;IAClE,CAAC;CACF;AAtBD,0CAsBC"}
|
|
@@ -7,6 +7,7 @@ import { SearchIndex } from "..";
|
|
|
7
7
|
import type { Client } from '@elastic/elasticsearch';
|
|
8
8
|
import type { IndicesIndexSettings } from '@elastic/elasticsearch/lib/api/types';
|
|
9
9
|
import type { ElasticSearchIndexConfig } from './config';
|
|
10
|
+
import { KeywordRewriter } from './keyword-rewriter';
|
|
10
11
|
import type { ElasticIndexMapping } from './model';
|
|
11
12
|
export declare class ElasticSearchIndex<T extends Entity> extends SearchIndex<T> implements AfterResolve {
|
|
12
13
|
private readonly logger;
|
|
@@ -14,8 +15,8 @@ export declare class ElasticSearchIndex<T extends Entity> extends SearchIndex<T>
|
|
|
14
15
|
readonly indexName: string;
|
|
15
16
|
readonly indexSettings: IndicesIndexSettings;
|
|
16
17
|
readonly indexMapping: ElasticIndexMapping<T>;
|
|
17
|
-
readonly
|
|
18
|
-
constructor(client: Client, config: ElasticSearchIndexConfig<T>, indexSettings: IndicesIndexSettings, indexMapping: ElasticIndexMapping<T>,
|
|
18
|
+
readonly keywordRewriter: KeywordRewriter;
|
|
19
|
+
constructor(client: Client, config: ElasticSearchIndexConfig<T>, indexSettings: IndicesIndexSettings, indexMapping: ElasticIndexMapping<T>, keywordRewrites: Iterable<string>, logger: Logger);
|
|
19
20
|
[afterResolve](): Promise<void>;
|
|
20
21
|
initialize(): Promise<void>;
|
|
21
22
|
refresh(): Promise<void>;
|
|
@@ -24,6 +25,7 @@ export declare class ElasticSearchIndex<T extends Entity> extends SearchIndex<T>
|
|
|
24
25
|
delete(id: string): Promise<void>;
|
|
25
26
|
deleteByQuery(query: Query<T>): Promise<void>;
|
|
26
27
|
search(searchQueryOrCursor: Query<T> | string, options?: QueryOptions<T>): Promise<SearchResult<T>>;
|
|
28
|
+
count(query?: Query<T>, options?: QueryOptions<T>): Promise<number>;
|
|
27
29
|
drop(): Promise<void>;
|
|
28
30
|
exists(): Promise<boolean>;
|
|
29
31
|
}
|
|
@@ -8,17 +8,18 @@ const base64_1 = require("../../utils/base64");
|
|
|
8
8
|
const encoding_1 = require("../../utils/encoding");
|
|
9
9
|
const object_1 = require("../../utils/object");
|
|
10
10
|
const type_guards_1 = require("../../utils/type-guards");
|
|
11
|
+
const keyword_rewriter_1 = require("./keyword-rewriter");
|
|
11
12
|
const query_converter_1 = require("./query-converter");
|
|
12
13
|
const sort_converter_1 = require("./sort-converter");
|
|
13
14
|
class ElasticSearchIndex extends search_index_1.SearchIndex {
|
|
14
|
-
constructor(client, config, indexSettings, indexMapping,
|
|
15
|
+
constructor(client, config, indexSettings, indexMapping, keywordRewrites, logger) {
|
|
15
16
|
super();
|
|
16
17
|
this.client = client;
|
|
17
18
|
this.indexName = config.indexName;
|
|
18
19
|
this.indexSettings = indexSettings;
|
|
19
20
|
this.indexMapping = indexMapping;
|
|
20
|
-
this.sortKeywordRewrites = sortKeywordRewrites;
|
|
21
21
|
this.logger = logger;
|
|
22
|
+
this.keywordRewriter = new keyword_rewriter_1.KeywordRewriter(keywordRewrites);
|
|
22
23
|
}
|
|
23
24
|
async [container_1.afterResolve]() {
|
|
24
25
|
await this.initialize();
|
|
@@ -91,7 +92,7 @@ class ElasticSearchIndex extends search_index_1.SearchIndex {
|
|
|
91
92
|
if ((0, type_guards_1.isDefined)(cursorData) && (0, type_guards_1.isDefined)(options?.skip)) {
|
|
92
93
|
throw new Error('cursor and skip cannot be used at the same time');
|
|
93
94
|
}
|
|
94
|
-
const sort = cursorData?.sort ?? (options?.sort ?? []).map((sortItem) => (0, sort_converter_1.convertSort)(sortItem, this.
|
|
95
|
+
const sort = cursorData?.sort ?? (options?.sort ?? []).map((sortItem) => (0, sort_converter_1.convertSort)(sortItem, this.keywordRewriter));
|
|
95
96
|
search.sort = sort;
|
|
96
97
|
search.from = options?.skip;
|
|
97
98
|
search.size = options?.limit ?? cursorData?.options?.limit;
|
|
@@ -105,6 +106,16 @@ class ElasticSearchIndex extends search_index_1.SearchIndex {
|
|
|
105
106
|
const result = { total, milliseconds: response.took, totalIsLowerBound, cursor, items: resultItems };
|
|
106
107
|
return result;
|
|
107
108
|
}
|
|
109
|
+
async count(query, options) {
|
|
110
|
+
if ((0, type_guards_1.isDefined)(options?.skip) || (0, type_guards_1.isDefined)(options?.limit)) {
|
|
111
|
+
throw new Error('Options skip and limit for count are not support in ElasticSearchIndex.');
|
|
112
|
+
}
|
|
113
|
+
const result = await this.client.count({
|
|
114
|
+
index: this.indexName,
|
|
115
|
+
query: (0, query_converter_1.convertQuery)(query ?? {})
|
|
116
|
+
});
|
|
117
|
+
return result.count;
|
|
118
|
+
}
|
|
108
119
|
async drop() {
|
|
109
120
|
const exists = await this.exists();
|
|
110
121
|
if (!exists) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-index.js","sourceRoot":"","sources":["../../../source/search-index/elastic/search-index.ts"],"names":[],"mappings":";;;AAEA,+CAA2C;AAE3C,uCAAsD;AAGtD,qCAA+D;AAC/D,+CAA4D;AAC5D,mDAA0D;AAC1D,+CAA8C;AAC9C,yDAAoE;
|
|
1
|
+
{"version":3,"file":"search-index.js","sourceRoot":"","sources":["../../../source/search-index/elastic/search-index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import type { Entity, Sort } from "../../database";
|
|
2
|
+
import type { KeywordRewriter } from './keyword-rewriter';
|
|
2
3
|
import type { SortCombinations } from './model';
|
|
3
|
-
export declare function convertSort<T extends Entity>(sort: Sort<T>,
|
|
4
|
+
export declare function convertSort<T extends Entity>(sort: Sort<T>, keywordRewriter: KeywordRewriter): SortCombinations<T>;
|
|
@@ -6,10 +6,9 @@ const renameMap = new Map([
|
|
|
6
6
|
['$score', '_score']
|
|
7
7
|
]);
|
|
8
8
|
// eslint-disable-next-line max-lines-per-function, max-statements, complexity
|
|
9
|
-
function convertSort(sort,
|
|
9
|
+
function convertSort(sort, keywordRewriter) {
|
|
10
10
|
const name = renameMap.get(sort.field) ?? sort.field;
|
|
11
|
-
const
|
|
12
|
-
const field = rewrite ? `${name}.keyword` : name;
|
|
11
|
+
const field = keywordRewriter.rewriteIfRequired(name);
|
|
13
12
|
const order = sort.order ?? 'asc';
|
|
14
13
|
if (((field != '_score') && (order == 'asc')) || ((field == '_score') && (order == 'desc'))) {
|
|
15
14
|
return field;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sort-converter.js","sourceRoot":"","sources":["../../../source/search-index/elastic/sort-converter.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"sort-converter.js","sourceRoot":"","sources":["../../../source/search-index/elastic/sort-converter.ts"],"names":[],"mappings":";;;AAIA,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;IACxB,CAAC,IAAI,EAAE,KAAK,CAAC;IACb,CAAC,QAAQ,EAAE,QAAQ,CAAC;CACrB,CAAC,CAAC;AAEH,8EAA8E;AAC9E,SAAgB,WAAW,CAAmB,IAAa,EAAE,eAAgC;IAC3F,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAe,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC;IAC/D,MAAM,KAAK,GAAG,eAAe,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACtD,MAAM,KAAK,GAAc,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC;IAE7C,IAAI,CAAC,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,CAAC,EAAE;QAC3F,OAAO,KAAgB,CAAC;KACzB;IAED,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAyB,CAAC;AACnD,CAAC;AAVD,kCAUC"}
|
|
@@ -11,6 +11,7 @@ export declare class MemorySearchIndex<T extends Entity> extends SearchIndex<T>
|
|
|
11
11
|
delete(id: string): Promise<void>;
|
|
12
12
|
deleteByQuery(query: Query<T>): Promise<void>;
|
|
13
13
|
search(queryOrCursor: string | Query<T>, options?: QueryOptions<T>): Promise<SearchResult<T>>;
|
|
14
|
+
count(query?: Query<T>, options?: QueryOptions<T> | undefined): Promise<number>;
|
|
14
15
|
drop(): Promise<void>;
|
|
15
16
|
private _delete;
|
|
16
17
|
private indexEntity;
|
|
@@ -83,6 +83,10 @@ class MemorySearchIndex extends search_index_1.SearchIndex {
|
|
|
83
83
|
};
|
|
84
84
|
return result;
|
|
85
85
|
}
|
|
86
|
+
async count(query, options) {
|
|
87
|
+
const items = await this.searchAll(query ?? {}, options);
|
|
88
|
+
return items.length;
|
|
89
|
+
}
|
|
86
90
|
// eslint-disable-next-line @typescript-eslint/require-await
|
|
87
91
|
async drop() {
|
|
88
92
|
this.allSet.clear();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory-search-index.js","sourceRoot":"","sources":["../../../source/search-index/memory/memory-search-index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"memory-search-index.js","sourceRoot":"","sources":["../../../source/search-index/memory/memory-search-index.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,6 +37,7 @@ export declare abstract class SearchIndex<T extends Entity> {
|
|
|
37
37
|
abstract search(query: Query<T>, options?: QueryOptions<T>): Promise<SearchResult<T>>;
|
|
38
38
|
abstract search(cursor: string, options?: QueryOptions<T>): Promise<SearchResult<T>>;
|
|
39
39
|
abstract search(queryOrCursor: Query<T> | string, options?: QueryOptions<T>): Promise<SearchResult<T>>;
|
|
40
|
+
abstract count(query?: Query<T>, options?: QueryOptions<T>): Promise<number>;
|
|
40
41
|
/**
|
|
41
42
|
* drop index. If you only want to delete all items from the index, use {@link deleteByQuery} with an empty query.
|
|
42
43
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-index.js","sourceRoot":"","sources":["../../source/search-index/search-index.ts"],"names":[],"mappings":";;;AAEA,sDAAgD;AAShD,MAAsB,WAAW;IAG/B;;;;OAIG;IACH,KAAK,CAAC,CAAC,YAAY,CAAC,KAAe,EAAE,OAAgC;QACnE,IAAI,MAA0B,CAAC;QAE/B,GAAG;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,KAAK,EAAE,OAAO,CAAC,CAAC;YAC3D,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YAEvB,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SACrB,QACM,IAAA,uBAAS,EAAC,MAAM,CAAC,EAAE;IAC5B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,SAAS,CAAC,KAAe,EAAE,OAAyB;QACxD,MAAM,OAAO,GAA4B,EAAE,CAAC;QAC5C,IAAI,MAA0B,CAAC;QAE/B,GAAG;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,KAAK,EAAE,OAAO,CAAC,CAAC;YAC3D,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YAEvB,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SAC5B,QACM,IAAA,uBAAS,EAAC,MAAM,CAAC,EAAE;QAE1B,OAAQ,EAA4B,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC;IAC1D,CAAC;
|
|
1
|
+
{"version":3,"file":"search-index.js","sourceRoot":"","sources":["../../source/search-index/search-index.ts"],"names":[],"mappings":";;;AAEA,sDAAgD;AAShD,MAAsB,WAAW;IAG/B;;;;OAIG;IACH,KAAK,CAAC,CAAC,YAAY,CAAC,KAAe,EAAE,OAAgC;QACnE,IAAI,MAA0B,CAAC;QAE/B,GAAG;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,KAAK,EAAE,OAAO,CAAC,CAAC;YAC3D,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YAEvB,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SACrB,QACM,IAAA,uBAAS,EAAC,MAAM,CAAC,EAAE;IAC5B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,SAAS,CAAC,KAAe,EAAE,OAAyB;QACxD,MAAM,OAAO,GAA4B,EAAE,CAAC;QAC5C,IAAI,MAA0B,CAAC;QAE/B,GAAG;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,KAAK,EAAE,OAAO,CAAC,CAAC;YAC3D,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YAEvB,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SAC5B,QACM,IAAA,uBAAS,EAAC,MAAM,CAAC,EAAE;QAE1B,OAAQ,EAA4B,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC;IAC1D,CAAC;CA8BF;AApED,kCAoEC"}
|