@rcsb/rcsb-search-tools 0.0.2 → 0.0.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.
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { LogicalOperator, ReturnType } from "@rcsb/rcsb-api-tools/build/RcsbSearch/Types/SearchEnums";
|
|
2
2
|
import { RequestOptionsType, SearchAttributeInterface, SearchQueryType, SearchRequestType } from "./SearchQueryInterfaces";
|
|
3
|
+
import { AttributeFacetType, FilterFacetType } from "../SearchParseTools/SearchFacetInterface";
|
|
3
4
|
export declare function buildRequestFromAttribute(searchAttribute: SearchAttributeInterface, returnType: ReturnType, requestOptions?: RequestOptionsType): SearchRequestType;
|
|
4
5
|
export declare function buildRequestFromAttributeAndSearchQuery(searchAttribute: SearchAttributeInterface, searchQuery: SearchQueryType, returnType: ReturnType, logicalOperator?: LogicalOperator, requestOptions?: RequestOptionsType): SearchRequestType;
|
|
5
6
|
export declare function buildRequestFromCombinedSearchQuery(additionalSearchQuery: SearchQueryType, searchQuery: SearchQueryType, returnType: ReturnType, logicalOperator?: LogicalOperator, requestOptions?: RequestOptionsType): SearchRequestType;
|
|
@@ -7,3 +8,4 @@ export declare function buildRequestFromSearchQuery(searchQuery: SearchQueryType
|
|
|
7
8
|
export declare function addAttributeToSearchQuery(searchAttribute: SearchAttributeInterface, searchQuery: SearchQueryType, logicalOperator?: LogicalOperator): SearchQueryType;
|
|
8
9
|
export declare function combineSearchQuery(additionalSearchQuery: SearchQueryType, searchQuery: SearchQueryType, logicalOperator?: LogicalOperator): SearchQueryType;
|
|
9
10
|
export declare function buildAttributeQuery(searchAttribute: SearchAttributeInterface): SearchQueryType;
|
|
11
|
+
export declare function buildMultiFacet(addFacet: AttributeFacetType | FilterFacetType, toFacet: AttributeFacetType | FilterFacetType): AttributeFacetType | FilterFacetType;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.buildAttributeQuery = exports.combineSearchQuery = exports.addAttributeToSearchQuery = exports.buildRequestFromSearchQuery = exports.buildRequestFromCombinedSearchQuery = exports.buildRequestFromAttributeAndSearchQuery = exports.buildRequestFromAttribute = void 0;
|
|
3
|
+
exports.buildMultiFacet = exports.buildAttributeQuery = exports.combineSearchQuery = exports.addAttributeToSearchQuery = exports.buildRequestFromSearchQuery = exports.buildRequestFromCombinedSearchQuery = exports.buildRequestFromAttributeAndSearchQuery = exports.buildRequestFromAttribute = void 0;
|
|
4
4
|
const SearchEnums_1 = require("@rcsb/rcsb-api-tools/build/RcsbSearch/Types/SearchEnums");
|
|
5
5
|
const lodash_1 = require("lodash");
|
|
6
6
|
function buildRequestFromAttribute(searchAttribute, returnType, requestOptions) {
|
|
@@ -68,3 +68,17 @@ function buildAttributeQuery(searchAttribute) {
|
|
|
68
68
|
};
|
|
69
69
|
}
|
|
70
70
|
exports.buildAttributeQuery = buildAttributeQuery;
|
|
71
|
+
function buildMultiFacet(addFacet, toFacet) {
|
|
72
|
+
toFacet = (0, lodash_1.cloneDeep)(toFacet);
|
|
73
|
+
if ('name' in toFacet && 'attribute' in toFacet) {
|
|
74
|
+
if (Array.isArray(toFacet.facets)) {
|
|
75
|
+
toFacet.facets.forEach(f => buildMultiFacet(addFacet, f));
|
|
76
|
+
toFacet.facets.unshift(addFacet);
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
toFacet.facets = [addFacet];
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return toFacet;
|
|
83
|
+
}
|
|
84
|
+
exports.buildMultiFacet = buildMultiFacet;
|