UNPKG

@deltares/fews-wms-requests

Version:

Library for making requests to the FEWS WMS-T webservice

29 lines 1.17 kB
import { filterToParamsWMS } from "./utils/filterToParams"; import { WMSRequestType } from "./types/wmsRequestType"; import { PiRestService } from "@deltares/fews-web-oc-utils"; export class WMSProvider { baseUrl; webservice; constructor(baseUrl, options = {}) { this.baseUrl = baseUrl; this.webservice = new PiRestService(baseUrl, options.transformRequestFn); } async getCapabilities(filter) { return this.executeWMSRequest(WMSRequestType.GetCapabilities, filter); } async getLegendGraphic(filter) { filter = { ...{ service: 'WMS', version: '1.3' }, ...filter }; return this.executeWMSRequest(WMSRequestType.GetLegendGraphic, filter); } async executeWMSRequest(requestType, filter) { const defaults = { format: 'application/json', }; const filterWithDefaults = { ...defaults, ...filter }; const queryParameters = filterToParamsWMS(requestType, filterWithDefaults); const url = `${this.baseUrl}${queryParameters}`; const res = await this.webservice.getData(url); return res.data; } } //# sourceMappingURL=wmsProvider.js.map