@magda/typescript-common 6.0.0-alpha.0 → 6.0.0-alpha.2

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.
@@ -9,11 +9,9 @@ export default class BaseApiClient {
9
9
  apiKey;
10
10
  userId;
11
11
  constructor(options) {
12
- this.baseApiUrl = options.baseApiUrl
13
- ? options.baseApiUrl
14
- : "http://localhost:6103/v0";
12
+ this.baseApiUrl = options.baseApiUrl;
15
13
  if (!this.baseApiUrl) {
16
- throw new Error("IndexerApiClient: baseApiUrl cannot be empty!");
14
+ throw new Error("baseApiUrl cannot be empty!");
17
15
  }
18
16
  this.baseApiUri = urijs(this.baseApiUrl);
19
17
  this.apiKey = options.apiKey;
@@ -1 +1 @@
1
- {"version":3,"file":"BaseApiClient.js","sourceRoot":"","sources":["../src/BaseApiClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAmB7C,MAAM,CAAC,OAAO,OAAgB,aAAa;IACvB,QAAQ,CAAmC;IAEjD,UAAU,CAAS;IACZ,UAAU,CAAQ;IACzB,SAAS,CAAS;IACZ,QAAQ,CAAS;IACvB,MAAM,CAAS;IACT,MAAM,CAAS;IAE/B,YAAY,OAA4B;QACpC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU;YAChC,CAAC,CAAC,OAAO,CAAC,UAAU;YACpB,CAAC,CAAC,0BAA0B,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACrE,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEzC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAE7B,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC/B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC7B,CAAC;aAAM,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACvC,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC;QAC/B,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC7B,CAAC;IACL,CAAC;IAES,aAAa;QACnB,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IACnC,CAAC;IAES,SAAS,CACf,OAAuC,EACvC,UAAkB,EAClB,WAAmB;QAEnB,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO,GAAG,EAAE,CAAC;QACjB,CAAC;QACD,IAAI,OAAO,YAAY,OAAO,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YACrC,OAAO,OAAO,CAAC;QACnB,CAAC;aAAM,CAAC;YACH,OAAe,CAAC,UAAU,CAAC,GAAG,WAAW,CAAC;YAC3C,OAAO,OAAO,CAAC;QACnB,CAAC;IACL,CAAC;IAES,aAAa,CAAC,MAAoB;QACxC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9B,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpB,KAAK,QAAQ;gBACT,IAAI,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;gBAC7B,OAAO,GAAG,IAAI,CAAC,SAAS,CACpB,OAAO,EACP,oBAAoB,EACpB,IAAI,CAAC,QAAQ,CAChB,CAAC;gBACF,OAAO,GAAG,IAAI,CAAC,SAAS,CACpB,OAAO,EACP,iBAAiB,EACjB,IAAI,CAAC,MAAM,CACd,CAAC;gBACF,OAAO;oBACH,GAAG,MAAM;oBACT,OAAO;iBACV,CAAC;YACN,KAAK,UAAU;gBACX,OAAO;oBACH,GAAG,MAAM;oBACT,OAAO,EAAE,IAAI,CAAC,SAAS,CACnB,MAAM,CAAC,OAAO,EACd,iBAAiB,EACjB,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CACxC;iBACJ,CAAC;YACN,KAAK,QAAQ;gBACT,OAAO,EAAE,GAAG,MAAM,EAAE,CAAC;QAC7B,CAAC;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"BaseApiClient.js","sourceRoot":"","sources":["../src/BaseApiClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAmB7C,MAAM,CAAC,OAAO,OAAgB,aAAa;IACvB,QAAQ,CAAmC;IAEjD,UAAU,CAAS;IACZ,UAAU,CAAQ;IACzB,SAAS,CAAS;IACZ,QAAQ,CAAS;IACvB,MAAM,CAAS;IACT,MAAM,CAAS;IAE/B,YAAY,OAA4B;QACpC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACnD,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEzC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAE7B,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC/B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC7B,CAAC;aAAM,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACvC,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC;QAC/B,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC7B,CAAC;IACL,CAAC;IAES,aAAa;QACnB,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IACnC,CAAC;IAES,SAAS,CACf,OAAuC,EACvC,UAAkB,EAClB,WAAmB;QAEnB,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO,GAAG,EAAE,CAAC;QACjB,CAAC;QACD,IAAI,OAAO,YAAY,OAAO,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YACrC,OAAO,OAAO,CAAC;QACnB,CAAC;aAAM,CAAC;YACH,OAAe,CAAC,UAAU,CAAC,GAAG,WAAW,CAAC;YAC3C,OAAO,OAAO,CAAC;QACnB,CAAC;IACL,CAAC;IAES,aAAa,CAAC,MAAoB;QACxC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9B,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpB,KAAK,QAAQ;gBACT,IAAI,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;gBAC7B,OAAO,GAAG,IAAI,CAAC,SAAS,CACpB,OAAO,EACP,oBAAoB,EACpB,IAAI,CAAC,QAAQ,CAChB,CAAC;gBACF,OAAO,GAAG,IAAI,CAAC,SAAS,CACpB,OAAO,EACP,iBAAiB,EACjB,IAAI,CAAC,MAAM,CACd,CAAC;gBACF,OAAO;oBACH,GAAG,MAAM;oBACT,OAAO;iBACV,CAAC;YACN,KAAK,UAAU;gBACX,OAAO;oBACH,GAAG,MAAM;oBACT,OAAO,EAAE,IAAI,CAAC,SAAS,CACnB,MAAM,CAAC,OAAO,EACd,iBAAiB,EACjB,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CACxC;iBACJ,CAAC;YACN,KAAK,QAAQ;gBACT,OAAO,EAAE,GAAG,MAAM,EAAE,CAAC;QAC7B,CAAC;IACL,CAAC;CACJ"}
@@ -0,0 +1,15 @@
1
+ import BaseApiClient, { BaseApiClientConfig } from "./BaseApiClient.js";
2
+ export interface EmbeddingResult {
3
+ data: {
4
+ embedding: number[];
5
+ }[];
6
+ }
7
+ export interface EmbeddingApiClientConfig extends BaseApiClientConfig {
8
+ }
9
+ export default class EmbeddingApiClient extends BaseApiClient {
10
+ private taskSize;
11
+ constructor(options: EmbeddingApiClientConfig);
12
+ private testConnection;
13
+ get(text: string): Promise<number[]>;
14
+ get(textList: string[]): Promise<number[][]>;
15
+ }
@@ -0,0 +1,43 @@
1
+ import BaseApiClient from "./BaseApiClient.js";
2
+ import fetchRequest from "./fetchRequest.js";
3
+ export default class EmbeddingApiClient extends BaseApiClient {
4
+ taskSize = 10;
5
+ constructor(options) {
6
+ options.baseApiUrl = options.baseApiUrl || "http://localhost:3000";
7
+ super(options);
8
+ this.testConnection();
9
+ }
10
+ async testConnection() {
11
+ try {
12
+ await this.get("test");
13
+ console.log(`Successfully connected to embedding API: ${this.getBaseApiUri().toString()}`);
14
+ }
15
+ catch (err) {
16
+ throw new Error(`Failed to connect to embedding API: ${this.getBaseApiUri().toString()}, error: ${err}`);
17
+ }
18
+ }
19
+ async get(input) {
20
+ if (Array.isArray(input)) {
21
+ const result = [];
22
+ for (let i = 0; i < input.length; i += this.taskSize) {
23
+ const chunk = input.slice(i, i + this.taskSize);
24
+ const body = { input: chunk };
25
+ const response = await fetchRequest("post", this.getBaseApiUri()
26
+ .segmentCoded("v1")
27
+ .segmentCoded("embeddings")
28
+ .toString(), body, "application/json", false, this.addAuthHeader());
29
+ result.push(...response.data.map((d) => d.embedding));
30
+ }
31
+ return result;
32
+ }
33
+ else {
34
+ const body = { input };
35
+ const response = await fetchRequest("post", this.getBaseApiUri()
36
+ .segmentCoded("v1")
37
+ .segmentCoded("embeddings")
38
+ .toString(), body, "application/json", false, this.addAuthHeader());
39
+ return response.data[0].embedding;
40
+ }
41
+ }
42
+ }
43
+ //# sourceMappingURL=EmbeddingApiClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmbeddingApiClient.js","sourceRoot":"","sources":["../src/EmbeddingApiClient.ts"],"names":[],"mappings":"AAAA,OAAO,aAAsC,MAAM,oBAAoB,CAAC;AACxE,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAU7C,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,aAAa;IACjD,QAAQ,GAAW,EAAE,CAAC;IAE9B,YAAY,OAAiC;QACzC,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,uBAAuB,CAAC;QACnE,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAEO,KAAK,CAAC,cAAc;QACxB,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACvB,OAAO,CAAC,GAAG,CACP,4CAA4C,IAAI,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE,EAAE,CAChF,CAAC;QACN,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CACX,uCAAuC,IAAI,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE,YAAY,GAAG,EAAE,CAC1F,CAAC;QACN,CAAC;IACL,CAAC;IAID,KAAK,CAAC,GAAG,CAAC,KAAwB;QAC9B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,MAAM,GAAe,EAAE,CAAC;YAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACnD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAChD,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;gBAE9B,MAAM,QAAQ,GAAG,MAAM,YAAY,CAC/B,MAAM,EACN,IAAI,CAAC,aAAa,EAAE;qBACf,YAAY,CAAC,IAAI,CAAC;qBAClB,YAAY,CAAC,YAAY,CAAC;qBAC1B,QAAQ,EAAE,EACf,IAAI,EACJ,kBAAkB,EAClB,KAAK,EACL,IAAI,CAAC,aAAa,EAAE,CACvB,CAAC;gBAEF,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YAC1D,CAAC;YAED,OAAO,MAAM,CAAC;QAClB,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC;YAEvB,MAAM,QAAQ,GAAG,MAAM,YAAY,CAC/B,MAAM,EACN,IAAI,CAAC,aAAa,EAAE;iBACf,YAAY,CAAC,IAAI,CAAC;iBAClB,YAAY,CAAC,YAAY,CAAC;iBAC1B,QAAQ,EAAE,EACf,IAAI,EACJ,kBAAkB,EAClB,KAAK,EACL,IAAI,CAAC,aAAa,EAAE,CACvB,CAAC;YAEF,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACtC,CAAC;IACL,CAAC;CACJ"}
@@ -2,6 +2,7 @@ import fetchRequest from "./fetchRequest.js";
2
2
  import BaseApiClient from "./BaseApiClient.js";
3
3
  export default class IndexerApiClient extends BaseApiClient {
4
4
  constructor(options) {
5
+ options.baseApiUrl = options.baseApiUrl || "http://localhost:6103/v0";
5
6
  super(options);
6
7
  }
7
8
  async indexDataset(datasetId) {
@@ -1 +1 @@
1
- {"version":3,"file":"IndexerApiClient.js","sourceRoot":"","sources":["../src/IndexerApiClient.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAC7C,OAAO,aAAsC,MAAM,oBAAoB,CAAC;AAcxE,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,aAAa;IACvD,YAAY,OAA4B;QACpC,KAAK,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,SAAiB;QAChC,OAAO,MAAM,YAAY,CACrB,KAAK,EACL,IAAI,CAAC,aAAa,EAAE;aACf,YAAY,CAAC,SAAS,CAAC;aACvB,YAAY,CAAC,SAAS,CAAC;aACvB,QAAQ,EAAE,EACf,SAAS,EACT,SAAS,EACT,KAAK,EACL,IAAI,CAAC,aAAa,EAAE,CACvB,CAAC;IACN,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAiB;QACjC,OAAO,MAAM,YAAY,CACrB,QAAQ,EACR,IAAI,CAAC,aAAa,EAAE;aACf,YAAY,CAAC,SAAS,CAAC;aACvB,YAAY,CAAC,SAAS,CAAC;aACvB,QAAQ,EAAE,EACf,SAAS,EACT,SAAS,EACT,KAAK,EACL,IAAI,CAAC,aAAa,EAAE,CACvB,CAAC;IACN,CAAC;CACJ"}
1
+ {"version":3,"file":"IndexerApiClient.js","sourceRoot":"","sources":["../src/IndexerApiClient.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAC7C,OAAO,aAAsC,MAAM,oBAAoB,CAAC;AAcxE,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,aAAa;IACvD,YAAY,OAA4B;QACpC,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,0BAA0B,CAAC;QACtE,KAAK,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,SAAiB;QAChC,OAAO,MAAM,YAAY,CACrB,KAAK,EACL,IAAI,CAAC,aAAa,EAAE;aACf,YAAY,CAAC,SAAS,CAAC;aACvB,YAAY,CAAC,SAAS,CAAC;aACvB,QAAQ,EAAE,EACf,SAAS,EACT,SAAS,EACT,KAAK,EACL,IAAI,CAAC,aAAa,EAAE,CACvB,CAAC;IACN,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAiB;QACjC,OAAO,MAAM,YAAY,CACrB,QAAQ,EACR,IAAI,CAAC,aAAa,EAAE;aACf,YAAY,CAAC,SAAS,CAAC;aACvB,YAAY,CAAC,SAAS,CAAC;aACvB,QAAQ,EAAE,EACf,SAAS,EACT,SAAS,EACT,KAAK,EACL,IAAI,CAAC,aAAa,EAAE,CACvB,CAAC;IACN,CAAC;CACJ"}
@@ -0,0 +1,19 @@
1
+ export interface OpensearchConfig {
2
+ url?: string;
3
+ }
4
+ export default class OpensearchApiClient {
5
+ private client;
6
+ constructor(config: OpensearchConfig);
7
+ static getOpensearchApiClient(openSearchConfig: OpensearchConfig): Promise<OpensearchApiClient>;
8
+ createIndex(indexDefinition: {
9
+ indexName: string;
10
+ settings?: any;
11
+ mappings?: any;
12
+ }): Promise<void>;
13
+ deleteIndex(indexName: string): Promise<void>;
14
+ indexExists(indexName: string): Promise<boolean>;
15
+ indexDocument(indexName: string, document: any): Promise<void>;
16
+ bulkIndexDocument(indexName: string, documents: any[]): Promise<void>;
17
+ searchDocuments(indexName: string, query: string): Promise<import("@opensearch-project/opensearch/api/_types/_core.search.js").ResponseBody>;
18
+ deleteDocument(indexName: string, documentId: string): Promise<void>;
19
+ }
@@ -0,0 +1,91 @@
1
+ import { Client } from "@opensearch-project/opensearch";
2
+ export default class OpensearchApiClient {
3
+ client;
4
+ constructor(config) {
5
+ this.client = new Client({
6
+ node: config.url
7
+ });
8
+ }
9
+ static async getOpensearchApiClient(openSearchConfig) {
10
+ const config = {
11
+ url: "http://localhost:9200",
12
+ ...openSearchConfig
13
+ };
14
+ const instance = new OpensearchApiClient(config);
15
+ try {
16
+ await instance.client.ping();
17
+ console.log(`Successfully connected to OpenSearch: ${config.url}`);
18
+ }
19
+ catch (err) {
20
+ throw new Error(`Failed to connect to OpenSearch: ${config.url}, error: ${err}`);
21
+ }
22
+ return instance;
23
+ }
24
+ async createIndex(indexDefinition) {
25
+ await this.client.indices.create({
26
+ index: indexDefinition.indexName,
27
+ body: {
28
+ mappings: indexDefinition.mappings,
29
+ settings: indexDefinition.settings
30
+ }
31
+ });
32
+ console.log(`Index created successfully: ${indexDefinition.indexName}`);
33
+ }
34
+ async deleteIndex(indexName) {
35
+ await this.client.indices.delete({
36
+ index: indexName,
37
+ ignore_unavailable: true
38
+ });
39
+ console.log(`Index deleted successfully: ${indexName}`);
40
+ }
41
+ async indexExists(indexName) {
42
+ const { body: exists } = await this.client.indices.exists({
43
+ index: indexName
44
+ });
45
+ return exists;
46
+ }
47
+ async indexDocument(indexName, document) {
48
+ await this.client.index({
49
+ index: indexName,
50
+ body: document
51
+ });
52
+ console.log(`Document indexed successfully: ${document}`);
53
+ }
54
+ async bulkIndexDocument(indexName, documents) {
55
+ await this.client.helpers
56
+ .bulk({
57
+ datasource: documents,
58
+ onDocument(_) {
59
+ return { index: { _index: indexName } };
60
+ }
61
+ })
62
+ .then((result) => {
63
+ console.log(`Successfully indexed ${result.successful} documents.`);
64
+ if (result.failed > 0) {
65
+ console.warn(`Failed to index ${result.failed} documents.`);
66
+ }
67
+ });
68
+ }
69
+ async searchDocuments(indexName, query) {
70
+ const searchResult = await this.client.search({
71
+ index: indexName,
72
+ body: {
73
+ query: {
74
+ match: {
75
+ text: query
76
+ }
77
+ }
78
+ }
79
+ });
80
+ console.log(`Search query: ${query}, result: ${JSON.stringify(searchResult.body)}`);
81
+ return searchResult.body;
82
+ }
83
+ async deleteDocument(indexName, documentId) {
84
+ await this.client.delete({
85
+ index: indexName,
86
+ id: documentId
87
+ });
88
+ console.log(`Document deleted successfully: ${documentId}`);
89
+ }
90
+ }
91
+ //# sourceMappingURL=OpensearchApiClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OpensearchApiClient.js","sourceRoot":"","sources":["../src/OpensearchApiClient.ts"],"names":[],"mappings":"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"}
@@ -7,5 +7,6 @@ declare const mockUserDataStore: {
7
7
  getRecordByIndex(idx: number): User;
8
8
  createRecord(user: User): any;
9
9
  countRecord: () => number;
10
+ deleteUser: (userId: string) => void;
10
11
  };
11
12
  export default mockUserDataStore;
@@ -45,6 +45,14 @@ const mockUserDataStore = {
45
45
  },
46
46
  countRecord: function () {
47
47
  return runtimeUserDataStore.length;
48
+ },
49
+ deleteUser: function (userId) {
50
+ const index = runtimeUserDataStore.findIndex((record) => {
51
+ return record.id == userId;
52
+ });
53
+ if (index > -1) {
54
+ runtimeUserDataStore.splice(index, 1);
55
+ }
48
56
  }
49
57
  };
50
58
  mockUserDataStore.reset();
@@ -1 +1 @@
1
- {"version":3,"file":"mockUserDataStore.js","sourceRoot":"","sources":["../../src/test/mockUserDataStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAGpC,MAAM,YAAY,GAAG;IACjB;QACI,EAAE,EAAE,sCAAsC;QAC1C,WAAW,EAAE,OAAO;QACpB,KAAK,EAAE,iBAAiB;QACxB,QAAQ,EAAE,oBAAoB;QAC9B,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE,GAAG;KAChB;IACD;QACI,EAAE,EAAE,sCAAsC;QAC1C,WAAW,EAAE,eAAe;QAC5B,KAAK,EAAE,eAAe;QACtB,QAAQ,EAAE,oBAAoB;QAC9B,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,UAAU;KACvB;CACJ,CAAC;AAEF,IAAI,oBAA4B,CAAC;AAEjC,MAAM,iBAAiB,GAAG;IACtB,KAAK,EAAE;QACH,oBAAoB,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;IACrE,CAAC;IAED,OAAO,EAAE;QACL,OAAO,oBAAoB,CAAC;IAChC,CAAC;IACD,4BAA4B,CAAC,MAAc,EAAE,QAAgB;QACzD,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;YAC1C,OAAO,MAAM,CAAC,MAAM,IAAI,MAAM,IAAI,MAAM,CAAC,QAAQ,IAAI,QAAQ,CAAC;QAClE,CAAC,CAAC,CAAC;IACP,CAAC;IACD,iBAAiB,CAAC,MAAc;QAC5B,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;YAC1C,OAAO,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC;QAC/B,CAAC,CAAC,CAAC;IACP,CAAC;IACD,gBAAgB,CAAC,GAAW;QACxB,OAAO,oBAAoB,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IACD,YAAY,CAAC,IAAU;QACnB,MAAM,SAAS,GAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC;QACjD,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACrC,OAAO,SAAS,CAAC;IACrB,CAAC;IACD,WAAW,EAAE;QACT,OAAO,oBAAoB,CAAC,MAAM,CAAC;IACvC,CAAC;CACJ,CAAC;AAEF,iBAAiB,CAAC,KAAK,EAAE,CAAC;AAE1B,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"mockUserDataStore.js","sourceRoot":"","sources":["../../src/test/mockUserDataStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAGpC,MAAM,YAAY,GAAG;IACjB;QACI,EAAE,EAAE,sCAAsC;QAC1C,WAAW,EAAE,OAAO;QACpB,KAAK,EAAE,iBAAiB;QACxB,QAAQ,EAAE,oBAAoB;QAC9B,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE,GAAG;KAChB;IACD;QACI,EAAE,EAAE,sCAAsC;QAC1C,WAAW,EAAE,eAAe;QAC5B,KAAK,EAAE,eAAe;QACtB,QAAQ,EAAE,oBAAoB;QAC9B,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,UAAU;KACvB;CACJ,CAAC;AAEF,IAAI,oBAA4B,CAAC;AAEjC,MAAM,iBAAiB,GAAG;IACtB,KAAK,EAAE;QACH,oBAAoB,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;IACrE,CAAC;IAED,OAAO,EAAE;QACL,OAAO,oBAAoB,CAAC;IAChC,CAAC;IACD,4BAA4B,CAAC,MAAc,EAAE,QAAgB;QACzD,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;YAC1C,OAAO,MAAM,CAAC,MAAM,IAAI,MAAM,IAAI,MAAM,CAAC,QAAQ,IAAI,QAAQ,CAAC;QAClE,CAAC,CAAC,CAAC;IACP,CAAC;IACD,iBAAiB,CAAC,MAAc;QAC5B,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;YAC1C,OAAO,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC;QAC/B,CAAC,CAAC,CAAC;IACP,CAAC;IACD,gBAAgB,CAAC,GAAW;QACxB,OAAO,oBAAoB,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IACD,YAAY,CAAC,IAAU;QACnB,MAAM,SAAS,GAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC;QACjD,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACrC,OAAO,SAAS,CAAC;IACrB,CAAC;IACD,WAAW,EAAE;QACT,OAAO,oBAAoB,CAAC,MAAM,CAAC;IACvC,CAAC;IACD,UAAU,EAAE,UAAU,MAAc;QAChC,MAAM,KAAK,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE;YACpD,OAAO,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC;YACb,oBAAoB,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC1C,CAAC;IACL,CAAC;CACJ,CAAC;AAEF,iBAAiB,CAAC,KAAK,EAAE,CAAC;AAE1B,eAAe,iBAAiB,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@magda/typescript-common",
3
3
  "description": "Common TypeScript code shared between components.",
4
- "version": "6.0.0-alpha.0",
4
+ "version": "6.0.0-alpha.2",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
7
7
  "exports": {
@@ -23,8 +23,8 @@
23
23
  },
24
24
  "devDependencies": {
25
25
  "@magda/esm-utils": "^1.0.1",
26
- "@magda/registry-aspects": "^6.0.0-alpha.0",
27
- "@magda/scripts": "^6.0.0-alpha.0",
26
+ "@magda/registry-aspects": "^6.0.0-alpha.2",
27
+ "@magda/scripts": "^6.0.0-alpha.2",
28
28
  "@types/chai": "^4.3.11",
29
29
  "@types/chai-as-promised": "^7.1.0",
30
30
  "@types/cross-spawn": "^6.0.1",
@@ -57,6 +57,7 @@
57
57
  "dependencies": {
58
58
  "@magda/esm-utils": "^1.0.1",
59
59
  "@magda/tsmonad": "^0.9.0",
60
+ "@opensearch-project/opensearch": "^3.5.1",
60
61
  "@types/resolve": "^1.14.0",
61
62
  "caller-path": "^4.0.0",
62
63
  "cross-fetch": "^4.0.0",