UNPKG

cwmsjs

Version:

CWMS Data API Library for JavaScript/TypeScript created with OpenAPI generator for use with browser webapps

151 lines (124 loc) 4.97 kB
/* tslint:disable */ /* eslint-disable */ /** * CWMS Data API * CWMS REST API for Data Retrieval * * The version of the OpenAPI document: 2.3.2-2025.03.19 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import * as runtime from '../runtime'; import type { Catalog, CatalogableEndpoint, CdaError, UnitSystem, } from '../models/index'; import { CatalogFromJSON, CatalogToJSON, CatalogableEndpointFromJSON, CatalogableEndpointToJSON, CdaErrorFromJSON, CdaErrorToJSON, UnitSystemFromJSON, UnitSystemToJSON, } from '../models/index'; export interface GetCatalogWithDatasetRequest { dataset: CatalogableEndpoint; page?: string; pageSize?: number; unitSystem?: UnitSystem; office?: string; like?: string; timeseriesCategoryLike?: string; timeseriesGroupLike?: string; locationCategoryLike?: string; locationGroupLike?: string; boundingOfficeLike?: string; includeExtents?: boolean; excludeEmpty?: boolean; locationKindLike?: string; locationTypeLike?: string; } /** * */ export class CatalogApi extends runtime.BaseAPI { /** * Get cwmsData catalog with dataset */ async getCatalogWithDatasetRaw(requestParameters: GetCatalogWithDatasetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Catalog>> { if (requestParameters['dataset'] == null) { throw new runtime.RequiredError( 'dataset', 'Required parameter "dataset" was null or undefined when calling getCatalogWithDataset().' ); } const queryParameters: any = {}; if (requestParameters['page'] != null) { queryParameters['page'] = requestParameters['page']; } if (requestParameters['pageSize'] != null) { queryParameters['page-size'] = requestParameters['pageSize']; } if (requestParameters['unitSystem'] != null) { queryParameters['unit-system'] = requestParameters['unitSystem']; } if (requestParameters['office'] != null) { queryParameters['office'] = requestParameters['office']; } if (requestParameters['like'] != null) { queryParameters['like'] = requestParameters['like']; } if (requestParameters['timeseriesCategoryLike'] != null) { queryParameters['timeseries-category-like'] = requestParameters['timeseriesCategoryLike']; } if (requestParameters['timeseriesGroupLike'] != null) { queryParameters['timeseries-group-like'] = requestParameters['timeseriesGroupLike']; } if (requestParameters['locationCategoryLike'] != null) { queryParameters['location-category-like'] = requestParameters['locationCategoryLike']; } if (requestParameters['locationGroupLike'] != null) { queryParameters['location-group-like'] = requestParameters['locationGroupLike']; } if (requestParameters['boundingOfficeLike'] != null) { queryParameters['bounding-office-like'] = requestParameters['boundingOfficeLike']; } if (requestParameters['includeExtents'] != null) { queryParameters['include-extents'] = requestParameters['includeExtents']; } if (requestParameters['excludeEmpty'] != null) { queryParameters['exclude-empty'] = requestParameters['excludeEmpty']; } if (requestParameters['locationKindLike'] != null) { queryParameters['location-kind-like'] = requestParameters['locationKindLike']; } if (requestParameters['locationTypeLike'] != null) { queryParameters['location-type-like'] = requestParameters['locationTypeLike']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/catalog/{dataset}`.replace(`{${"dataset"}}`, encodeURIComponent(String(requestParameters['dataset']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => CatalogFromJSON(jsonValue)); } /** * Get cwmsData catalog with dataset */ async getCatalogWithDataset(requestParameters: GetCatalogWithDatasetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Catalog> { const response = await this.getCatalogWithDatasetRaw(requestParameters, initOverrides); return await response.value(); } }