UNPKG

synapse-react-client

Version:

[![npm version](https://badge.fury.io/js/synapse-react-client.svg)](https://badge.fury.io/js/synapse-react-client) [![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettie

71 lines 3.92 kB
import { LockedColumn, UniqueFacetIdentifier } from '@/utils/types'; import { ColumnModel, ColumnTypeEnum, FacetColumnRequest, FacetColumnResult, JsonSubColumnModel, Query, QueryBundleRequest, QueryResultBundle, SelectColumn, Table } from '@sage-bionetworks/synapse-types'; /** * Retrieve the index of a column using the column name * @param name the column name * @param result the QueryResultBundle containing the columns * @returns The index of the column, or -1 if the column doesn't exist in the result */ export declare const getFieldIndex: (name?: string, result?: QueryResultBundle) => number; /** * Retrieve the index of a column using the header column name found inthe query results. * Ignores case. * @param name the column name * @param result the QueryResultBundle containing the columns * @returns The index of the column, or -1 if the column doesn't exist in the result */ export declare const getHeaderIndex: (name: string, result: QueryResultBundle | undefined) => number; /** * Returns the indices of the selectColumns with the specified type * @param columnType * @param selectColumns */ export declare function getTypeIndices(columnType: ColumnTypeEnum, selectColumns?: SelectColumn[]): number[]; export declare const hasFacetedSelectColumn: (facets?: FacetColumnResult[], selectColumns?: SelectColumn[]) => boolean; export declare const isSingleNotSetValue: (facet: FacetColumnResult) => boolean; export declare function removeLockedColumnFromFacetData(data?: QueryResultBundle, lockedColumn?: LockedColumn): QueryResultBundle | undefined; /** * Returns true iff the query has filters applied that can be reset. * This includes facet filters and additional filters that are not applied to a locked column. */ export declare function hasResettableFilters(query: Query, lockedColumn?: LockedColumn): boolean; /** * Returns true iff a table query can be added to the download list. * @param entity * @param entityColumnId */ export declare function canTableQueryBeAddedToDownloadList<T extends Table = Table>(entity?: T, entityColumnId?: string): boolean; /** * Returns true if the queries necessarily return the same result set, i.e. if they have identical parameters other than * limit, offset, sort. * * Note that this does not query the actual tables, so this only captures the semantic equivalence of the queries. */ export declare function queryRequestsHaveSameTotalResults(request1: Query, request2: Query): boolean; /** * Remove null/empty values from the query parameters where an undefined value is equivalent. * * This will ensure a query object is as simple as possible for URL search parameters and also increases the * likelihood of a cache hit. * @param q */ export declare function removeEmptyQueryParams(q: Query): Query; /** * Given a FacetColumnResult and a set of ColumnModels, return the ColumnModel that * matches the FacetColumnResult. * @param facet * @param columnModels */ export declare function getCorrespondingColumnForFacet(facet: FacetColumnResult, columnModels: ColumnModel[]): ColumnModel | JsonSubColumnModel | undefined; /** * Given a set of FacetColumnRequests, return the FacetColumnRequest that matches the given UniqueFacetIdentifier. * @param facetDefinition * @param selectedFacets */ export declare function getCorrespondingSelectedFacet(facetDefinition: UniqueFacetIdentifier, selectedFacets?: FacetColumnRequest[]): FacetColumnRequest | undefined; export declare function facetObjectMatchesDefinition(facetDefinition: UniqueFacetIdentifier | FacetColumnRequest | FacetColumnResult, facetObject: UniqueFacetIdentifier | FacetColumnRequest | FacetColumnResult): boolean; export declare function partitionQueryBundleRequestIntoRowsAndMetadata(queryBundleRequest: QueryBundleRequest): { rowDataRequest: QueryBundleRequest; queryMetadataRequest: QueryBundleRequest; }; //# sourceMappingURL=queryUtils.d.ts.map