eth-graph-query 1.1.1 → 1.1.3
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/README.md +61 -12
- package/dist/cjs/eth-graph-query.d.ts +6 -12
- package/dist/cjs/eth-graph-query.d.ts.map +1 -1
- package/dist/cjs/eth-graph-query.js +5 -5
- package/dist/cjs/eth-graph-query.js.map +1 -1
- package/dist/cjs/normal-query.d.ts.map +1 -1
- package/dist/cjs/normal-query.js +14 -5
- package/dist/cjs/normal-query.js.map +1 -1
- package/dist/cjs/query-builder.d.ts +12 -12
- package/dist/cjs/query-builder.d.ts.map +1 -1
- package/dist/cjs/query-builder.js +57 -23
- package/dist/cjs/query-builder.js.map +1 -1
- package/dist/cjs/type.d.ts +27 -22
- package/dist/cjs/type.d.ts.map +1 -1
- package/dist/esm/eth-graph-query.d.ts +6 -12
- package/dist/esm/eth-graph-query.d.ts.map +1 -1
- package/dist/esm/eth-graph-query.js +5 -5
- package/dist/esm/eth-graph-query.js.map +1 -1
- package/dist/esm/normal-query.d.ts.map +1 -1
- package/dist/esm/normal-query.js +14 -5
- package/dist/esm/normal-query.js.map +1 -1
- package/dist/esm/query-builder.d.ts +12 -12
- package/dist/esm/query-builder.d.ts.map +1 -1
- package/dist/esm/query-builder.js +58 -24
- package/dist/esm/query-builder.js.map +1 -1
- package/dist/esm/type.d.ts +27 -22
- package/dist/esm/type.d.ts.map +1 -1
- package/dist/tsconfig.prod.cjs.tsbuildinfo +1 -1
- package/dist/tsconfig.prod.esm.tsbuildinfo +1 -1
- package/package.json +3 -3
- package/src/eth-graph-query.ts +12 -12
- package/src/normal-query.ts +15 -5
- package/src/query-builder.ts +76 -30
- package/src/type.ts +27 -40
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AxiosRequestConfig } from 'axios';
|
|
2
2
|
import { NormalQuery } from './normal-query.js';
|
|
3
|
-
import {
|
|
3
|
+
import { GraphObject, Metadata } from './type.js';
|
|
4
4
|
export declare class EthGraphQuery extends NormalQuery {
|
|
5
5
|
queryName: string;
|
|
6
6
|
/**
|
|
@@ -14,28 +14,22 @@ export declare class EthGraphQuery extends NormalQuery {
|
|
|
14
14
|
* @param {string} query A query string containing all data you want to fetch
|
|
15
15
|
* @returns The data respective with the query string
|
|
16
16
|
*/
|
|
17
|
-
|
|
17
|
+
fetch<T>(query: string): Promise<T>;
|
|
18
18
|
/**
|
|
19
19
|
* Create a query to a particular collection, returns the data respective with the query data.
|
|
20
|
-
* @param {
|
|
20
|
+
* @param {GraphObject} data An data for create query, contains two elements:
|
|
21
21
|
* 1. collection: string - collection name
|
|
22
22
|
* 2. params: GraphParams | undefined - If it is defined, it create a query to the collection
|
|
23
23
|
* @param {Metadata | undefined} metadata If it is defined, the query can get metadata that you defined
|
|
24
24
|
* @returns The data respective with the query data
|
|
25
25
|
*/
|
|
26
|
-
query<T = any>(data:
|
|
27
|
-
collection: string;
|
|
28
|
-
params?: GraphParams;
|
|
29
|
-
}, metadata?: Metadata): Promise<T>;
|
|
26
|
+
query<T = any>(data: GraphObject, metadata?: Metadata): Promise<T>;
|
|
30
27
|
/**
|
|
31
28
|
* Create a query to many collections, returns the data respective with the query data.
|
|
32
|
-
* @param {Array<
|
|
29
|
+
* @param {Array<GraphObject>} data An array contain data to query to many collections
|
|
33
30
|
* @param {Metadata | undefined} metadata If it is defined, the query can get metadata that you defined
|
|
34
31
|
* @returns The data respective with the query data
|
|
35
32
|
*/
|
|
36
|
-
mergeQuery<T = any>(data: Array<
|
|
37
|
-
collection: string;
|
|
38
|
-
params?: GraphParams;
|
|
39
|
-
}>, metadata?: Metadata): Promise<T>;
|
|
33
|
+
mergeQuery<T = any>(data: Array<GraphObject>, metadata?: Metadata): Promise<T>;
|
|
40
34
|
}
|
|
41
35
|
//# sourceMappingURL=eth-graph-query.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eth-graph-query.d.ts","sourceRoot":"","sources":["../../src/eth-graph-query.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAElD,qBAAa,aAAc,SAAQ,WAAW;IAC5C,SAAS,EAAE,MAAM,CAAC;IAElB;;;;OAIG;gBACS,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,kBAAkB;IAKxD;;;;OAIG;IACG,
|
|
1
|
+
{"version":3,"file":"eth-graph-query.d.ts","sourceRoot":"","sources":["../../src/eth-graph-query.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAElD,qBAAa,aAAc,SAAQ,WAAW;IAC5C,SAAS,EAAE,MAAM,CAAC;IAElB;;;;OAIG;gBACS,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,kBAAkB;IAKxD;;;;OAIG;IACG,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAIzC;;;;;;;OAOG;IACG,KAAK,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC;IAQxE;;;;;OAKG;IACG,UAAU,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC;CAIrF"}
|
|
@@ -24,14 +24,14 @@ export class EthGraphQuery extends NormalQuery {
|
|
|
24
24
|
* @param {string} query A query string containing all data you want to fetch
|
|
25
25
|
* @returns The data respective with the query string
|
|
26
26
|
*/
|
|
27
|
-
|
|
27
|
+
fetch(query) {
|
|
28
28
|
return __awaiter(this, void 0, void 0, function* () {
|
|
29
29
|
return yield this.post('', { query: query });
|
|
30
30
|
});
|
|
31
31
|
}
|
|
32
32
|
/**
|
|
33
33
|
* Create a query to a particular collection, returns the data respective with the query data.
|
|
34
|
-
* @param {
|
|
34
|
+
* @param {GraphObject} data An data for create query, contains two elements:
|
|
35
35
|
* 1. collection: string - collection name
|
|
36
36
|
* 2. params: GraphParams | undefined - If it is defined, it create a query to the collection
|
|
37
37
|
* @param {Metadata | undefined} metadata If it is defined, the query can get metadata that you defined
|
|
@@ -40,19 +40,19 @@ export class EthGraphQuery extends NormalQuery {
|
|
|
40
40
|
query(data, metadata) {
|
|
41
41
|
return __awaiter(this, void 0, void 0, function* () {
|
|
42
42
|
const sQuery = QueryBuilder.buildQuery({ collection: data.collection, params: data.params }, metadata);
|
|
43
|
-
return yield this.
|
|
43
|
+
return yield this.fetch(QueryBuilder.makeFullQuery(sQuery, this.queryName));
|
|
44
44
|
});
|
|
45
45
|
}
|
|
46
46
|
/**
|
|
47
47
|
* Create a query to many collections, returns the data respective with the query data.
|
|
48
|
-
* @param {Array<
|
|
48
|
+
* @param {Array<GraphObject>} data An array contain data to query to many collections
|
|
49
49
|
* @param {Metadata | undefined} metadata If it is defined, the query can get metadata that you defined
|
|
50
50
|
* @returns The data respective with the query data
|
|
51
51
|
*/
|
|
52
52
|
mergeQuery(data, metadata) {
|
|
53
53
|
return __awaiter(this, void 0, void 0, function* () {
|
|
54
54
|
const sQuery = QueryBuilder.mergeQuery(data, metadata);
|
|
55
|
-
return yield this.
|
|
55
|
+
return yield this.fetch(QueryBuilder.makeFullQuery(sQuery, this.queryName));
|
|
56
56
|
});
|
|
57
57
|
}
|
|
58
58
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eth-graph-query.js","sourceRoot":"","sources":["../../src/eth-graph-query.ts"],"names":[],"mappings":";;;;;;;;;AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,MAAM,OAAO,aAAc,SAAQ,WAAW;IAG5C;;;;OAIG;IACH,YAAY,OAAe,EAAE,MAA2B;QACtD,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACG,
|
|
1
|
+
{"version":3,"file":"eth-graph-query.js","sourceRoot":"","sources":["../../src/eth-graph-query.ts"],"names":[],"mappings":";;;;;;;;;AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,MAAM,OAAO,aAAc,SAAQ,WAAW;IAG5C;;;;OAIG;IACH,YAAY,OAAe,EAAE,MAA2B;QACtD,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACG,KAAK,CAAI,KAAa;;YAC1B,OAAO,MAAM,IAAI,CAAC,IAAI,CAAuB,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACrE,CAAC;KAAA;IAED;;;;;;;OAOG;IACG,KAAK,CAAU,IAAiB,EAAE,QAAmB;;YACzD,MAAM,MAAM,GAAG,YAAY,CAAC,UAAU,CACpC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EACpD,QAAQ,CACT,CAAC;YACF,OAAO,MAAM,IAAI,CAAC,KAAK,CAAI,YAAY,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QACjF,CAAC;KAAA;IAED;;;;;OAKG;IACG,UAAU,CAAU,IAAwB,EAAE,QAAmB;;YACrE,MAAM,MAAM,GAAG,YAAY,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACvD,OAAO,MAAM,IAAI,CAAC,KAAK,CAAI,YAAY,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QACjF,CAAC;KAAA;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normal-query.d.ts","sourceRoot":"","sources":["../../src/normal-query.ts"],"names":[],"mappings":"AACA,OAAc,EAAE,kBAAkB,EAAiB,MAAM,OAAO,CAAC;AAEjE,eAAO,MAAM,aAAa;;;CAAqE,CAAC;AAMhG,qBAAa,WAAW;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,kBAAkB,CAAC;gBAEf,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,kBAAkB;
|
|
1
|
+
{"version":3,"file":"normal-query.d.ts","sourceRoot":"","sources":["../../src/normal-query.ts"],"names":[],"mappings":"AACA,OAAc,EAAE,kBAAkB,EAAiB,MAAM,OAAO,CAAC;AAEjE,eAAO,MAAM,aAAa;;;CAAqE,CAAC;AAMhG,qBAAa,WAAW;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,kBAAkB,CAAC;gBAEf,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,kBAAkB;cAOxC,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,kBAAkB;cAMrD,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,kBAAkB;cAMzE,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,kBAAkB;cAMxE,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,kBAAkB;CAKtE"}
|
package/dist/esm/normal-query.js
CHANGED
|
@@ -16,26 +16,35 @@ function responseBody(res) {
|
|
|
16
16
|
export class NormalQuery {
|
|
17
17
|
constructor(rootUrl, config) {
|
|
18
18
|
this.root = rootUrl;
|
|
19
|
-
this.config = config
|
|
19
|
+
this.config = config
|
|
20
|
+
? Object.assign(Object.assign({}, config), { headers: defaultHeader }) : { headers: defaultHeader };
|
|
20
21
|
}
|
|
21
22
|
get(url, config) {
|
|
22
23
|
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
-
return yield axios
|
|
24
|
+
return yield axios
|
|
25
|
+
.get(`${this.root}${url}`, Object.assign(Object.assign({}, config), this.config))
|
|
26
|
+
.then(responseBody);
|
|
24
27
|
});
|
|
25
28
|
}
|
|
26
29
|
post(url, data, config) {
|
|
27
30
|
return __awaiter(this, void 0, void 0, function* () {
|
|
28
|
-
return yield axios
|
|
31
|
+
return yield axios
|
|
32
|
+
.post(`${this.root}${url}`, data, Object.assign(Object.assign({}, config), this.config))
|
|
33
|
+
.then(responseBody);
|
|
29
34
|
});
|
|
30
35
|
}
|
|
31
36
|
put(url, data, config) {
|
|
32
37
|
return __awaiter(this, void 0, void 0, function* () {
|
|
33
|
-
return yield axios
|
|
38
|
+
return yield axios
|
|
39
|
+
.put(`${this.root}${url}`, data, Object.assign(Object.assign({}, config), this.config))
|
|
40
|
+
.then(responseBody);
|
|
34
41
|
});
|
|
35
42
|
}
|
|
36
43
|
del(url, config) {
|
|
37
44
|
return __awaiter(this, void 0, void 0, function* () {
|
|
38
|
-
return yield axios
|
|
45
|
+
return yield axios
|
|
46
|
+
.delete(`${this.root}${url}`, Object.assign(Object.assign({}, config), this.config))
|
|
47
|
+
.then(responseBody);
|
|
39
48
|
});
|
|
40
49
|
}
|
|
41
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normal-query.js","sourceRoot":"","sources":["../../src/normal-query.ts"],"names":[],"mappings":";;;;;;;;;AAAA,uDAAuD;AACvD,OAAO,KAA4C,MAAM,OAAO,CAAC;AAEjE,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,MAAM,EAAE,kBAAkB,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;AAEhG,SAAS,YAAY,CAAI,GAAqB;IAC5C,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAED,MAAM,OAAO,WAAW;IAItB,YAAY,OAAe,EAAE,MAA2B;QACtD,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"normal-query.js","sourceRoot":"","sources":["../../src/normal-query.ts"],"names":[],"mappings":";;;;;;;;;AAAA,uDAAuD;AACvD,OAAO,KAA4C,MAAM,OAAO,CAAC;AAEjE,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,MAAM,EAAE,kBAAkB,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;AAEhG,SAAS,YAAY,CAAI,GAAqB;IAC5C,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAED,MAAM,OAAO,WAAW;IAItB,YAAY,OAAe,EAAE,MAA2B;QACtD,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG,MAAM;YAClB,CAAC,iCAAM,MAAM,GAAK,EAAE,OAAO,EAAE,aAAa,EAAE,EAC5C,CAAC,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;IACjC,CAAC;IAEe,GAAG,CAAU,GAAW,EAAE,MAA2B;;YACnE,OAAO,MAAM,KAAK;iBACf,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,EAAE,kCAAO,MAAM,GAAK,IAAI,CAAC,MAAM,EAAG;iBACxD,IAAI,CAAI,YAAY,CAAC,CAAC;QAC3B,CAAC;KAAA;IAEe,IAAI,CAAmB,GAAW,EAAE,IAAQ,EAAE,MAA2B;;YACvF,OAAO,MAAM,KAAK;iBACf,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,EAAE,EAAE,IAAI,kCAAO,MAAM,GAAK,IAAI,CAAC,MAAM,EAAG;iBAC/D,IAAI,CAAI,YAAY,CAAC,CAAC;QAC3B,CAAC;KAAA;IAEe,GAAG,CAAmB,GAAW,EAAE,IAAQ,EAAE,MAA2B;;YACtF,OAAO,MAAM,KAAK;iBACf,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,EAAE,EAAE,IAAI,kCAAO,MAAM,GAAK,IAAI,CAAC,MAAM,EAAG;iBAC9D,IAAI,CAAI,YAAY,CAAC,CAAC;QAC3B,CAAC;KAAA;IAEe,GAAG,CAAU,GAAW,EAAE,MAA2B;;YACnE,OAAO,MAAM,KAAK;iBACf,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,EAAE,kCAAO,MAAM,GAAK,IAAI,CAAC,MAAM,EAAG;iBAC3D,IAAI,CAAI,YAAY,CAAC,CAAC;QAC3B,CAAC;KAAA;CACF"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { ElementType,
|
|
1
|
+
import { ElementType, GraphObject, InlineFragmentType, Metadata, QueryJson } from './type.js';
|
|
2
2
|
export declare class QueryBuilder {
|
|
3
|
-
private static isWhereOptions;
|
|
4
3
|
/**
|
|
5
4
|
* Create a query string from a query with json format.
|
|
6
5
|
* @param {QueryJson} query the json format query
|
|
@@ -19,28 +18,29 @@ export declare class QueryBuilder {
|
|
|
19
18
|
* @returns The string represent the metadata you want to query
|
|
20
19
|
*/
|
|
21
20
|
static buildMetadata(metadata: Metadata): string;
|
|
21
|
+
private static _buildInlineFragment;
|
|
22
|
+
/**
|
|
23
|
+
* Given a instance of Array<{@link InlineFragmentType}>, returns the string represent the inline fragments you want to query
|
|
24
|
+
* @param {Array<InlineFragmentType>} fragments The instance represent the inline fragments you want to query
|
|
25
|
+
* @returns The string represent the inline fragments you want to query
|
|
26
|
+
*/
|
|
27
|
+
static buildInlineFragments(fragments: Array<InlineFragmentType>): string;
|
|
22
28
|
/**
|
|
23
29
|
* Given json data, returns the string query. This function only can create a string query for a particular collection.
|
|
24
|
-
* @param {
|
|
30
|
+
* @param {GraphObject} data An data for create query, contains two elements:
|
|
25
31
|
* 1. collection: string - collection name
|
|
26
32
|
* 2. params: GraphParams | undefined - If it is defined, it create a query to the collection
|
|
27
33
|
* @param {Metadata | undefined} metadata If it is defined, the query can get metadata that you defined
|
|
28
34
|
* @returns The string query
|
|
29
35
|
*/
|
|
30
|
-
static buildQuery(data:
|
|
31
|
-
collection: string;
|
|
32
|
-
params?: GraphParams;
|
|
33
|
-
}, metadata?: Metadata): string;
|
|
36
|
+
static buildQuery(data: GraphObject, metadata?: Metadata): string;
|
|
34
37
|
/**
|
|
35
38
|
* Given a array contain many json data, return a query string represent a query to all collections that is in a array.
|
|
36
|
-
* @param {Array<
|
|
39
|
+
* @param {Array<GraphObject>} data An array contain data to query to many collections
|
|
37
40
|
* @param {Metadata | undefined} metadata If it is defined, the query can get metadata that you defined
|
|
38
41
|
* @returns The query string
|
|
39
42
|
*/
|
|
40
|
-
static mergeQuery(data: Array<
|
|
41
|
-
collection: string;
|
|
42
|
-
params?: GraphParams;
|
|
43
|
-
}>, metadata?: Metadata): string;
|
|
43
|
+
static mergeQuery(data: Array<GraphObject>, metadata?: Metadata): string;
|
|
44
44
|
/**
|
|
45
45
|
* Create complete query string, you can use directly this query to query to the graph
|
|
46
46
|
* @param {string} query The query string
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-builder.d.ts","sourceRoot":"","sources":["../../src/query-builder.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"query-builder.d.ts","sourceRoot":"","sources":["../../src/query-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,WAAW,EAEX,kBAAkB,EAClB,QAAQ,EAER,SAAS,EAEV,MAAM,WAAW,CAAC;AAEnB,qBAAa,YAAY;IACvB;;;;OAIG;IACH,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM;IAkC/C;;;;OAIG;IACH,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IAYjE;;;;OAIG;IACH,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM;IA+BhD,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAMnC;;;;OAIG;IACH,MAAM,CAAC,oBAAoB,CAAC,SAAS,EAAE,KAAK,CAAC,kBAAkB,CAAC,GAAG,MAAM;IAQzE;;;;;;;OAOG;IACH,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM;IAuDjE;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM;IAaxE;;;;;OAKG;IACH,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,SAAU,GAAG,MAAM;CAGjE"}
|
|
@@ -1,16 +1,5 @@
|
|
|
1
|
-
import { OptionKeys } from './type.js';
|
|
1
|
+
import { OptionKeys, } from './type.js';
|
|
2
2
|
export class QueryBuilder {
|
|
3
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
4
|
-
static isWhereOptions(data) {
|
|
5
|
-
const keys = Object.keys(data);
|
|
6
|
-
if (keys.length == 0)
|
|
7
|
-
return true;
|
|
8
|
-
for (const key of keys) {
|
|
9
|
-
if (!OptionKeys.includes(key))
|
|
10
|
-
return false;
|
|
11
|
-
}
|
|
12
|
-
return true;
|
|
13
|
-
}
|
|
14
3
|
/**
|
|
15
4
|
* Create a query string from a query with json format.
|
|
16
5
|
* @param {QueryJson} query the json format query
|
|
@@ -24,20 +13,32 @@ export class QueryBuilder {
|
|
|
24
13
|
const queryArray = query[key];
|
|
25
14
|
whereList.push(`${key}: [${queryArray.map((item) => `"${item}"`).join(', ')}]`);
|
|
26
15
|
}
|
|
27
|
-
else if (
|
|
28
|
-
const
|
|
16
|
+
else if (typeof query[key] == 'object') {
|
|
17
|
+
const normalJson = {};
|
|
18
|
+
const operatorJson = {};
|
|
29
19
|
const options = query[key];
|
|
30
20
|
for (const option in options) {
|
|
31
21
|
const value = options[option];
|
|
32
|
-
if (
|
|
33
|
-
|
|
22
|
+
if (option.length == 1)
|
|
23
|
+
normalJson[option] = value;
|
|
24
|
+
else {
|
|
25
|
+
if (option[0] == '$') {
|
|
26
|
+
const realOperator = option.slice(1);
|
|
27
|
+
if (OptionKeys.includes(realOperator))
|
|
28
|
+
operatorJson[`${key}_${realOperator}`] = value;
|
|
29
|
+
}
|
|
30
|
+
else
|
|
31
|
+
normalJson[option] = value;
|
|
32
|
+
}
|
|
34
33
|
}
|
|
35
|
-
|
|
34
|
+
if (Object.keys(normalJson).length > 0)
|
|
35
|
+
whereList.push(`${key}: {${this.buildJsonQuery(normalJson)}}`);
|
|
36
|
+
if (Object.keys(operatorJson).length > 0)
|
|
37
|
+
whereList.push(this.buildJsonQuery(operatorJson));
|
|
36
38
|
}
|
|
37
|
-
else if (typeof query[key] == '
|
|
38
|
-
whereList.push(`${key}: {${this.buildJsonQuery(query[key])}}`);
|
|
39
|
-
else if (typeof query[key] == 'string')
|
|
39
|
+
else if (typeof query[key] == 'string') {
|
|
40
40
|
whereList.push(`${key}: "${query[key]}"`);
|
|
41
|
+
}
|
|
41
42
|
else
|
|
42
43
|
whereList.push(`${key}: ${query[key]}`);
|
|
43
44
|
}
|
|
@@ -104,9 +105,28 @@ export class QueryBuilder {
|
|
|
104
105
|
}
|
|
105
106
|
return result.length > 0 ? `_meta${result}` : '';
|
|
106
107
|
}
|
|
108
|
+
static _buildInlineFragment(fragment) {
|
|
109
|
+
var _a;
|
|
110
|
+
let elements = ['id'];
|
|
111
|
+
if ((_a = fragment.params) === null || _a === void 0 ? void 0 : _a.elements)
|
|
112
|
+
elements = this.buildElements(fragment.params.elements);
|
|
113
|
+
return `... on ${fragment.collection}{${elements.join(' ')}}`;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Given a instance of Array<{@link InlineFragmentType}>, returns the string represent the inline fragments you want to query
|
|
117
|
+
* @param {Array<InlineFragmentType>} fragments The instance represent the inline fragments you want to query
|
|
118
|
+
* @returns The string represent the inline fragments you want to query
|
|
119
|
+
*/
|
|
120
|
+
static buildInlineFragments(fragments) {
|
|
121
|
+
const result = [];
|
|
122
|
+
for (const fragment of fragments) {
|
|
123
|
+
result.push(this._buildInlineFragment(fragment));
|
|
124
|
+
}
|
|
125
|
+
return result.join(' ');
|
|
126
|
+
}
|
|
107
127
|
/**
|
|
108
128
|
* Given json data, returns the string query. This function only can create a string query for a particular collection.
|
|
109
|
-
* @param {
|
|
129
|
+
* @param {GraphObject} data An data for create query, contains two elements:
|
|
110
130
|
* 1. collection: string - collection name
|
|
111
131
|
* 2. params: GraphParams | undefined - If it is defined, it create a query to the collection
|
|
112
132
|
* @param {Metadata | undefined} metadata If it is defined, the query can get metadata that you defined
|
|
@@ -116,12 +136,16 @@ export class QueryBuilder {
|
|
|
116
136
|
const collection = data.collection;
|
|
117
137
|
const params = data.params;
|
|
118
138
|
const filters = [];
|
|
139
|
+
// build id
|
|
119
140
|
if ((params === null || params === void 0 ? void 0 : params.id) != undefined)
|
|
120
141
|
filters.push(`id: ${params.id}`);
|
|
142
|
+
// build order
|
|
121
143
|
if (params === null || params === void 0 ? void 0 : params.orderBy)
|
|
122
144
|
filters.push(`orderBy: ${params.orderBy}`);
|
|
145
|
+
// build order direction
|
|
123
146
|
if (params === null || params === void 0 ? void 0 : params.orderDirection)
|
|
124
147
|
filters.push(`orderDirection: ${params.orderDirection}`);
|
|
148
|
+
//build first
|
|
125
149
|
if ((params === null || params === void 0 ? void 0 : params.first) != undefined) {
|
|
126
150
|
if (params.first < 0)
|
|
127
151
|
params.first = 0;
|
|
@@ -129,6 +153,7 @@ export class QueryBuilder {
|
|
|
129
153
|
params.first = 1000;
|
|
130
154
|
filters.push(`first: ${params.first}`);
|
|
131
155
|
}
|
|
156
|
+
// build skip
|
|
132
157
|
if ((params === null || params === void 0 ? void 0 : params.skip) != undefined) {
|
|
133
158
|
if (params.skip < 0)
|
|
134
159
|
params.skip = 0;
|
|
@@ -136,26 +161,35 @@ export class QueryBuilder {
|
|
|
136
161
|
params.skip = 5000;
|
|
137
162
|
filters.push(`skip: ${params.skip}`);
|
|
138
163
|
}
|
|
164
|
+
// build where
|
|
139
165
|
if (params === null || params === void 0 ? void 0 : params.where) {
|
|
140
166
|
const sWhere = this.buildJsonQuery(params.where);
|
|
141
167
|
if (sWhere.length > 0)
|
|
142
168
|
filters.push(`where: {${sWhere}}`);
|
|
143
169
|
}
|
|
170
|
+
// build block
|
|
144
171
|
if (params === null || params === void 0 ? void 0 : params.block) {
|
|
145
172
|
const sBlock = this.buildJsonQuery(params.block);
|
|
146
173
|
if (sBlock.length > 0)
|
|
147
174
|
filters.push(`block: {${sBlock}}`);
|
|
148
175
|
}
|
|
149
176
|
const filterString = filters.join(', ');
|
|
177
|
+
// build elements
|
|
150
178
|
let elements = ['id'];
|
|
151
179
|
if (params === null || params === void 0 ? void 0 : params.elements)
|
|
152
180
|
if (params.elements.length > 0)
|
|
153
181
|
elements = this.buildElements(params.elements);
|
|
182
|
+
// build inline fragments
|
|
183
|
+
let inlineFragments = '';
|
|
184
|
+
if (params === null || params === void 0 ? void 0 : params.inlineFragments)
|
|
185
|
+
if (params.inlineFragments.length > 0)
|
|
186
|
+
inlineFragments = this.buildInlineFragments(params.inlineFragments);
|
|
154
187
|
let finalQuery = '';
|
|
188
|
+
const sElements = inlineFragments.length > 0 ? `${elements.join(' ')} ${inlineFragments}` : elements.join(' ');
|
|
155
189
|
if (filterString.length > 0)
|
|
156
|
-
finalQuery = `${collection}(${filterString}) {${
|
|
190
|
+
finalQuery = `${collection}(${filterString}) {${sElements}}`;
|
|
157
191
|
else
|
|
158
|
-
finalQuery = `${collection} {${
|
|
192
|
+
finalQuery = `${collection} {${sElements}}`;
|
|
159
193
|
if (metadata) {
|
|
160
194
|
const sMetadata = this.buildMetadata(metadata);
|
|
161
195
|
if (sMetadata.length > 0)
|
|
@@ -167,7 +201,7 @@ export class QueryBuilder {
|
|
|
167
201
|
}
|
|
168
202
|
/**
|
|
169
203
|
* Given a array contain many json data, return a query string represent a query to all collections that is in a array.
|
|
170
|
-
* @param {Array<
|
|
204
|
+
* @param {Array<GraphObject>} data An array contain data to query to many collections
|
|
171
205
|
* @param {Metadata | undefined} metadata If it is defined, the query can get metadata that you defined
|
|
172
206
|
* @returns The query string
|
|
173
207
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-builder.js","sourceRoot":"","sources":["../../src/query-builder.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"query-builder.js","sourceRoot":"","sources":["../../src/query-builder.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/type.d.ts
CHANGED
|
@@ -1,28 +1,27 @@
|
|
|
1
1
|
declare type BaseQueryType = Array<string> | string | number | boolean | undefined;
|
|
2
2
|
export declare const OptionKeys: string[];
|
|
3
|
-
export declare type OptionsKey = 'contains' | 'contains_nocase' | 'ends_with' | 'end_with_nocase' | 'starts_with' | 'starts_with_nocase' | 'not_contains' | 'not_contains_nocase' | 'not_ends_with' | 'not_ends_with_nocase' | 'not_starts_with' | 'not_starts_with_nocase' | 'gt' | 'gte' | 'lt' | 'lte' | 'not' | 'in' | 'not_in';
|
|
4
3
|
export declare type TextWhereOptions = {
|
|
5
|
-
contains?: BaseQueryType;
|
|
6
|
-
contains_nocase?: BaseQueryType;
|
|
7
|
-
ends_with?: BaseQueryType;
|
|
8
|
-
end_with_nocase?: BaseQueryType;
|
|
9
|
-
starts_with?: BaseQueryType;
|
|
10
|
-
starts_with_nocase?: BaseQueryType;
|
|
11
|
-
not_contains?: BaseQueryType;
|
|
12
|
-
not_contains_nocase?: BaseQueryType;
|
|
13
|
-
not_ends_with?: BaseQueryType;
|
|
14
|
-
not_ends_with_nocase?: BaseQueryType;
|
|
15
|
-
not_starts_with?: BaseQueryType;
|
|
16
|
-
not_starts_with_nocase?: BaseQueryType;
|
|
4
|
+
$contains?: BaseQueryType;
|
|
5
|
+
$contains_nocase?: BaseQueryType;
|
|
6
|
+
$ends_with?: BaseQueryType;
|
|
7
|
+
$end_with_nocase?: BaseQueryType;
|
|
8
|
+
$starts_with?: BaseQueryType;
|
|
9
|
+
$starts_with_nocase?: BaseQueryType;
|
|
10
|
+
$not_contains?: BaseQueryType;
|
|
11
|
+
$not_contains_nocase?: BaseQueryType;
|
|
12
|
+
$not_ends_with?: BaseQueryType;
|
|
13
|
+
$not_ends_with_nocase?: BaseQueryType;
|
|
14
|
+
$not_starts_with?: BaseQueryType;
|
|
15
|
+
$not_starts_with_nocase?: BaseQueryType;
|
|
17
16
|
};
|
|
18
17
|
export declare type CommonWhereOptions = {
|
|
19
|
-
gt?: BaseQueryType;
|
|
20
|
-
gte?: BaseQueryType;
|
|
21
|
-
lt?: BaseQueryType;
|
|
22
|
-
lte?: BaseQueryType;
|
|
23
|
-
not?: BaseQueryType;
|
|
24
|
-
in?: BaseQueryType;
|
|
25
|
-
not_in?: BaseQueryType;
|
|
18
|
+
$gt?: BaseQueryType;
|
|
19
|
+
$gte?: BaseQueryType;
|
|
20
|
+
$lt?: BaseQueryType;
|
|
21
|
+
$lte?: BaseQueryType;
|
|
22
|
+
$not?: BaseQueryType;
|
|
23
|
+
$in?: BaseQueryType;
|
|
24
|
+
$not_in?: BaseQueryType;
|
|
26
25
|
};
|
|
27
26
|
export declare type WhereOptions = TextWhereOptions & CommonWhereOptions;
|
|
28
27
|
export declare type QueryJson = {
|
|
@@ -37,12 +36,14 @@ export declare type Metadata = {
|
|
|
37
36
|
elements?: Array<'deployment' | 'hasIndexingErrors' | 'hash' | 'number' | 'timestamp'>;
|
|
38
37
|
blockQuery?: BlockQuery;
|
|
39
38
|
};
|
|
40
|
-
export declare type ElementType = string |
|
|
39
|
+
export declare type ElementType = string | GraphObject;
|
|
40
|
+
export declare type InlineFragmentType = {
|
|
41
41
|
collection: string;
|
|
42
|
-
params?: GraphParams
|
|
42
|
+
params?: Pick<GraphParams, 'elements'>;
|
|
43
43
|
};
|
|
44
44
|
export interface GraphParams {
|
|
45
45
|
elements?: Array<ElementType>;
|
|
46
|
+
inlineFragments?: Array<InlineFragmentType>;
|
|
46
47
|
where?: QueryJson;
|
|
47
48
|
id?: string;
|
|
48
49
|
first?: number;
|
|
@@ -52,5 +53,9 @@ export interface GraphParams {
|
|
|
52
53
|
subgraphError?: 'allow' | 'deny';
|
|
53
54
|
block?: BlockQuery;
|
|
54
55
|
}
|
|
56
|
+
export interface GraphObject {
|
|
57
|
+
collection: string;
|
|
58
|
+
params?: GraphParams;
|
|
59
|
+
}
|
|
55
60
|
export {};
|
|
56
61
|
//# sourceMappingURL=type.d.ts.map
|
package/dist/esm/type.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../src/type.ts"],"names":[],"mappings":"AAAA,aAAK,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;AAE3E,eAAO,MAAM,UAAU,UAoBtB,CAAC;
|
|
1
|
+
{"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../src/type.ts"],"names":[],"mappings":"AAAA,aAAK,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;AAE3E,eAAO,MAAM,UAAU,UAoBtB,CAAC;AAEF,oBAAY,gBAAgB,GAAG;IAC7B,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,gBAAgB,CAAC,EAAE,aAAa,CAAC;IACjC,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,gBAAgB,CAAC,EAAE,aAAa,CAAC;IACjC,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,mBAAmB,CAAC,EAAE,aAAa,CAAC;IACpC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,oBAAoB,CAAC,EAAE,aAAa,CAAC;IACrC,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,qBAAqB,CAAC,EAAE,aAAa,CAAC;IACtC,gBAAgB,CAAC,EAAE,aAAa,CAAC;IACjC,uBAAuB,CAAC,EAAE,aAAa,CAAC;CACzC,CAAC;AAEF,oBAAY,kBAAkB,GAAG;IAC/B,GAAG,CAAC,EAAE,aAAa,CAAC;IACpB,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,GAAG,CAAC,EAAE,aAAa,CAAC;IACpB,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,GAAG,CAAC,EAAE,aAAa,CAAC;IACpB,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB,CAAC;AAEF,oBAAY,YAAY,GAAG,gBAAgB,GAAG,kBAAkB,CAAC;AAEjE,oBAAY,SAAS,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,YAAY,GAAG,aAAa,CAAA;CAAE,CAAC;AACpF,oBAAY,UAAU,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjF,oBAAY,QAAQ,GAAG;IACrB,QAAQ,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,mBAAmB,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,CAAC,CAAC;IACvF,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB,CAAC;AAEF,oBAAY,WAAW,GAAG,MAAM,GAAG,WAAW,CAAC;AAC/C,oBAAY,kBAAkB,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAA;CAAE,CAAC;AAEhG,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IAC9B,eAAe,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAC5C,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACjC,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB"}
|