@rcsb/rcsb-search-tools 0.0.1 → 0.0.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.
- package/lib/SearchClient/SearchClient.d.ts +6 -0
- package/lib/SearchParseTools/SearchFacetInterface.d.ts +49 -0
- package/lib/SearchParseTools/SearchFacetTools.d.ts +3 -0
- package/lib/SearchQueryTools/SearchQueryInterfaces.d.ts +18 -0
- package/lib/SearchQueryTools/SearchQueryTools.d.ts +9 -0
- package/lib/app.d.ts +0 -0
- package/package.json +4 -3
- /package/lib/{SearchFacetTools → SearchParseTools}/SearchFacetInterface.js +0 -0
- /package/lib/{SearchFacetTools → SearchParseTools}/SearchFacetTools.js +0 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { CardinalityFacet, DateHistogramFacet, DateRangeFacet, FilterFacet, FilterQueryGroupNode, FilterQueryTerminalNode, HistogramFacet, RangeFacet, TermsFacet } from "@rcsb/rcsb-api-tools/build/RcsbSearch/Types/SearchQueryInterface";
|
|
2
|
+
import { RcsbSearchAttributeType } from "@rcsb/rcsb-api-tools/build/RcsbSearch/Types/SearchMetadata";
|
|
3
|
+
type TermsFacetType = Omit<TermsFacet, "attribute" | "facets"> & {
|
|
4
|
+
attribute: RcsbSearchAttributeType;
|
|
5
|
+
facets?: [(AttributeFacetType | FilterFacetType), ...(AttributeFacetType | FilterFacetType)[]];
|
|
6
|
+
};
|
|
7
|
+
type HistogramFacetType = Omit<HistogramFacet, "attribute" | "facets"> & {
|
|
8
|
+
attribute: RcsbSearchAttributeType;
|
|
9
|
+
facets?: [(AttributeFacetType | FilterFacetType), ...(AttributeFacetType | FilterFacetType)[]];
|
|
10
|
+
};
|
|
11
|
+
type DateHistogramFacetType = Omit<DateHistogramFacet, "attribute" | "facets"> & {
|
|
12
|
+
attribute: RcsbSearchAttributeType;
|
|
13
|
+
facets?: [(AttributeFacetType | FilterFacetType), ...(AttributeFacetType | FilterFacetType)[]];
|
|
14
|
+
};
|
|
15
|
+
type RangeFacetType = Omit<RangeFacet, "attribute" | "facets"> & {
|
|
16
|
+
attribute: RcsbSearchAttributeType;
|
|
17
|
+
facets?: [(AttributeFacetType | FilterFacetType), ...(AttributeFacetType | FilterFacetType)[]];
|
|
18
|
+
};
|
|
19
|
+
type DateRangeFacetType = Omit<DateRangeFacet, "attribute" | "facets"> & {
|
|
20
|
+
attribute: RcsbSearchAttributeType;
|
|
21
|
+
facets?: [(AttributeFacetType | FilterFacetType), ...(AttributeFacetType | FilterFacetType)[]];
|
|
22
|
+
};
|
|
23
|
+
type CardinalityFacetType = Omit<CardinalityFacet, "attribute" | "facets"> & {
|
|
24
|
+
attribute: RcsbSearchAttributeType;
|
|
25
|
+
facets?: [(AttributeFacetType | FilterFacetType), ...(AttributeFacetType | FilterFacetType)[]];
|
|
26
|
+
};
|
|
27
|
+
export type AttributeFacetType = TermsFacetType | HistogramFacetType | DateHistogramFacetType | RangeFacetType | DateRangeFacetType | CardinalityFacetType;
|
|
28
|
+
type FilterQueryTerminalNodeType = Omit<FilterQueryTerminalNode, "parameters"> & {
|
|
29
|
+
parameters: Omit<FilterQueryTerminalNode["parameters"], "attribute"> & {
|
|
30
|
+
attribute: RcsbSearchAttributeType;
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
type FilterQueryGroupNodeType = Omit<FilterQueryGroupNode, "nodes"> & {
|
|
34
|
+
nodes: [FilterQueryTerminalNodeType | FilterQueryGroupNodeType, ...(FilterQueryTerminalNodeType | FilterQueryGroupNodeType)[]];
|
|
35
|
+
};
|
|
36
|
+
export type FilterFacetType = Omit<FilterFacet, "facets"> & {
|
|
37
|
+
facets: [AttributeFacetType | FilterFacetType, ...(AttributeFacetType | FilterFacetType)[]];
|
|
38
|
+
filter: FilterQueryGroupNodeType | FilterQueryTerminalNodeType;
|
|
39
|
+
};
|
|
40
|
+
export type BucketDataType = {
|
|
41
|
+
label: string | number;
|
|
42
|
+
population: number;
|
|
43
|
+
};
|
|
44
|
+
export type SearchBucketFacetType = {
|
|
45
|
+
name: string;
|
|
46
|
+
data: BucketDataType[];
|
|
47
|
+
labelPath: string[];
|
|
48
|
+
};
|
|
49
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { RcsbSearchAttributeType } from "@rcsb/rcsb-api-tools/build/RcsbSearch/Types/SearchMetadata";
|
|
2
|
+
import { AttributeTextQueryParameters, GroupNode, RequestOptions, SearchQuery, TerminalNode } from "@rcsb/rcsb-api-tools/build/RcsbSearch/Types/SearchQueryInterface";
|
|
3
|
+
import { Service } from "@rcsb/rcsb-api-tools/build/RcsbSearch/Types/SearchEnums";
|
|
4
|
+
import { AttributeFacetType, FilterFacetType } from "../SearchParseTools/SearchFacetInterface";
|
|
5
|
+
export interface SearchAttributeInterface {
|
|
6
|
+
attribute: RcsbSearchAttributeType;
|
|
7
|
+
value: AttributeTextQueryParameters['value'];
|
|
8
|
+
operator: AttributeTextQueryParameters["operator"];
|
|
9
|
+
service: Service.Text | Service.TextChem;
|
|
10
|
+
negation?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export type SearchQueryType = GroupNode | TerminalNode;
|
|
13
|
+
export type SearchRequestType = Omit<SearchQuery, "request_options"> & {
|
|
14
|
+
request_options?: RequestOptionsType;
|
|
15
|
+
};
|
|
16
|
+
export type RequestOptionsType = Omit<RequestOptions, "facets"> & {
|
|
17
|
+
facets: [(FilterFacetType | AttributeFacetType), ...(FilterFacetType | AttributeFacetType)[]];
|
|
18
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { LogicalOperator, ReturnType } from "@rcsb/rcsb-api-tools/build/RcsbSearch/Types/SearchEnums";
|
|
2
|
+
import { RequestOptionsType, SearchAttributeInterface, SearchQueryType, SearchRequestType } from "./SearchQueryInterfaces";
|
|
3
|
+
export declare function buildRequestFromAttribute(searchAttribute: SearchAttributeInterface, returnType: ReturnType, requestOptions?: RequestOptionsType): SearchRequestType;
|
|
4
|
+
export declare function buildRequestFromAttributeAndSearchQuery(searchAttribute: SearchAttributeInterface, searchQuery: SearchQueryType, returnType: ReturnType, logicalOperator?: LogicalOperator, requestOptions?: RequestOptionsType): SearchRequestType;
|
|
5
|
+
export declare function buildRequestFromCombinedSearchQuery(additionalSearchQuery: SearchQueryType, searchQuery: SearchQueryType, returnType: ReturnType, logicalOperator?: LogicalOperator, requestOptions?: RequestOptionsType): SearchRequestType;
|
|
6
|
+
export declare function buildRequestFromSearchQuery(searchQuery: SearchQueryType, returnType: ReturnType, requestOptions?: RequestOptionsType): SearchRequestType;
|
|
7
|
+
export declare function addAttributeToSearchQuery(searchAttribute: SearchAttributeInterface, searchQuery: SearchQueryType, logicalOperator?: LogicalOperator): SearchQueryType;
|
|
8
|
+
export declare function combineSearchQuery(additionalSearchQuery: SearchQueryType, searchQuery: SearchQueryType, logicalOperator?: LogicalOperator): SearchQueryType;
|
|
9
|
+
export declare function buildAttributeQuery(searchAttribute: SearchAttributeInterface): SearchQueryType;
|
package/lib/app.d.ts
ADDED
|
File without changes
|
package/package.json
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rcsb/rcsb-search-tools",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.2",
|
|
4
4
|
"description": "RCSB PDB Search API request tools",
|
|
5
5
|
"main": "build/app.js",
|
|
6
6
|
"files": [
|
|
7
7
|
"lib"
|
|
8
8
|
],
|
|
9
9
|
"scripts": {
|
|
10
|
-
"
|
|
10
|
+
"runTest": "jest",
|
|
11
11
|
"tsc": "tsc",
|
|
12
|
+
"buildApp": "npm run tsc",
|
|
12
13
|
"publishApp": "npm publish"
|
|
13
14
|
},
|
|
14
15
|
"repository": {
|
|
@@ -38,6 +39,6 @@
|
|
|
38
39
|
"webpack-cli": "^5.1.1"
|
|
39
40
|
},
|
|
40
41
|
"dependencies": {
|
|
41
|
-
"@rcsb/rcsb-api-tools": "^4.1.
|
|
42
|
+
"@rcsb/rcsb-api-tools": "^4.1.8"
|
|
42
43
|
}
|
|
43
44
|
}
|
|
File without changes
|
|
File without changes
|