ogcopenapis 1.0.3 → 1.1.1
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/CHANGELOG.md +42 -1
- package/README.md +35 -1
- package/lib/OgcOpenApiGetCapabilities.d.ts +15 -1
- package/lib/OgcOpenApiGetCapabilities.d.ts.map +1 -1
- package/lib/OgcOpenApiGetCapabilities.js +109 -126
- package/lib/OgcOpenApiGetCapabilities.js.map +1 -1
- package/lib/OgcOpenApiMapsModel.d.ts.map +1 -1
- package/lib/OgcOpenApiMapsModel.js.map +1 -1
- package/lib/OgcOpenApiTileMatrixTools.d.ts +6 -0
- package/lib/OgcOpenApiTileMatrixTools.d.ts.map +1 -1
- package/lib/OgcOpenApiTileMatrixTools.js +13 -0
- package/lib/OgcOpenApiTileMatrixTools.js.map +1 -1
- package/lib/OgcOpenApiTilesModel.d.ts +2 -0
- package/lib/OgcOpenApiTilesModel.d.ts.map +1 -1
- package/lib/OgcOpenApiTilesModel.js +3 -2
- package/lib/OgcOpenApiTilesModel.js.map +1 -1
- package/lib/OgcOpenApiVectorTilesModel.d.ts +1 -0
- package/lib/OgcOpenApiVectorTilesModel.d.ts.map +1 -1
- package/lib/OgcOpenApiVectorTilesModel.js +1 -1
- package/lib/OgcOpenApiVectorTilesModel.js.map +1 -1
- package/package.json +1 -1
- package/src/OgcOpenApiGetCapabilities.ts +115 -151
- package/src/OgcOpenApiMapsModel.ts +2 -0
- package/src/OgcOpenApiTileMatrixTools.ts +13 -0
- package/src/OgcOpenApiTilesModel.ts +9 -3
- package/src/OgcOpenApiVectorTilesModel.ts +4 -1
package/CHANGELOG.md
CHANGED
|
@@ -8,6 +8,45 @@ Each pull request adds its changes under Unreleased. A release renames Unrelease
|
|
|
8
8
|
|
|
9
9
|
## [Unreleased]
|
|
10
10
|
|
|
11
|
+
## [1.1.1] - 2026-10-29
|
|
12
|
+
|
|
13
|
+
### Fixed
|
|
14
|
+
- `fromURL` settles in every case: it stayed pending forever when the collections request failed (an HTTP error, a
|
|
15
|
+
response that is not JSON, a network error, an abort), and when a `service-desc` link had no type. Cancelling
|
|
16
|
+
through an abort signal added by `proxify` now works during the collections request too. Reported by a user of 1.1.0.
|
|
17
|
+
- `fromURL` asks for JSON: `Accept: application/json` for the landing page, the collections and the conformance
|
|
18
|
+
classes, and the media type of its link for the API document. `requestHeaders` can replace it. Reported by a user of
|
|
19
|
+
1.1.0.
|
|
20
|
+
- The `format` of OgcOpenApiMapsModel is documented as what it is: the `f` value of the requests, as the server names
|
|
21
|
+
its formats (`png`), not a media type, unlike the `format` of OgcOpenApiTilesModel. Best left out, the map link
|
|
22
|
+
carries the `f` value; a media type gave HTTP 400 on pygeoapi. Reported by a user of 1.1.0.
|
|
23
|
+
|
|
24
|
+
### Changed
|
|
25
|
+
- `fromURL` rejects with an `Error` whose message says what failed and where, instead of a status number or a string.
|
|
26
|
+
A failed request rejects with the error of `fetch` as it is, such as a `TypeError` or an `AbortError`. The API
|
|
27
|
+
document and the conformance classes stay optional.
|
|
28
|
+
- The requests for tilesets and tile matrix sets reject with the error of `fetch` as it is when the request fails,
|
|
29
|
+
instead of an `{error, message}` object.
|
|
30
|
+
|
|
31
|
+
### Added
|
|
32
|
+
- Demo: a feature limit per view, 1000 by default and editable: without it, servers answered their own default page
|
|
33
|
+
of features, often only 10. Servers cap it at their own maximum. Feature layers use MapEvolution's scale levels, so
|
|
34
|
+
that zooming in requests the features of the new view again.
|
|
35
|
+
- Demo: a balloon with the id and properties of a clicked feature, a line of details of the selected collection
|
|
36
|
+
(description, extent, keywords, what it offers), and errors in plain words (an HTTP status, a server that cannot be
|
|
37
|
+
reached).
|
|
38
|
+
|
|
39
|
+
## [1.1.0] - 2026-10-27
|
|
40
|
+
|
|
41
|
+
### Added
|
|
42
|
+
- The tiles of the dataset limited to some of its collections (OGC API Tiles, collections selection): the option
|
|
43
|
+
`collections` of OgcOpenApiTilesModel and OgcOpenApiVectorTilesModel, which request `collections=a,b`.
|
|
44
|
+
- `fromURL` reads the conformance classes of the server, in `capabilities.conformsTo`.
|
|
45
|
+
- `supportsCollectionSelection(capabilities)`: whether the server declares collections selection, by the conformance
|
|
46
|
+
class of the standard (`COLLECTIONS_SELECTION_CONFORMANCE`), or by the name ldproxy declares it under, which is not in
|
|
47
|
+
the standard (`COLLECTIONS_SELECTION_CONFORMANCE_VARIANTS`).
|
|
48
|
+
- Demo: the collections in the tiles of the dataset, when the server supports collections selection.
|
|
49
|
+
|
|
11
50
|
## [1.0.3] - 2026-10-27
|
|
12
51
|
|
|
13
52
|
### Fixed
|
|
@@ -85,7 +124,9 @@ Each pull request adds its changes under Unreleased. A release renames Unrelease
|
|
|
85
124
|
|
|
86
125
|
See the [git history](https://github.com/felipecarrillo100/ogcopenapis/commits/main).
|
|
87
126
|
|
|
88
|
-
[Unreleased]: https://github.com/felipecarrillo100/ogcopenapis/compare/v1.
|
|
127
|
+
[Unreleased]: https://github.com/felipecarrillo100/ogcopenapis/compare/v1.1.1...HEAD
|
|
128
|
+
[1.1.1]: https://github.com/felipecarrillo100/ogcopenapis/compare/v1.1.0...v1.1.1
|
|
129
|
+
[1.1.0]: https://github.com/felipecarrillo100/ogcopenapis/compare/v1.0.3...v1.1.0
|
|
89
130
|
[1.0.3]: https://github.com/felipecarrillo100/ogcopenapis/compare/v1.0.2...v1.0.3
|
|
90
131
|
[1.0.2]: https://github.com/felipecarrillo100/ogcopenapis/compare/v1.0.1...v1.0.2
|
|
91
132
|
[1.0.1]: https://github.com/felipecarrillo100/ogcopenapis/compare/v1.0.0...v1.0.1
|
package/README.md
CHANGED
|
@@ -88,6 +88,9 @@ dataset, in a LuciadRIA map. It needs a LuciadRIA development license in `demo/l
|
|
|
88
88
|
npm run demo
|
|
89
89
|
```
|
|
90
90
|
|
|
91
|
+
Ideas for an application on top of the library, from how other clients present OGC API data, are in
|
|
92
|
+
[docs/ux-recommendations.md](docs/ux-recommendations.md).
|
|
93
|
+
|
|
91
94
|
## To use in your project
|
|
92
95
|
|
|
93
96
|
Simply import the NPM package into your project, with LuciadRIA, its peer dependency:
|
|
@@ -110,7 +113,10 @@ const capabilities = await OgcOpenApiGetCapabilities.fromURL(serverUrl, {filterC
|
|
|
110
113
|
// The collections, as the server lists them: id, title, extent, crs and links
|
|
111
114
|
const collection = capabilities.collections.find(c => c.id === collectionId);
|
|
112
115
|
```
|
|
113
|
-
Links that are relative are resolved against the document that has them.
|
|
116
|
+
Links that are relative are resolved against the document that has them. `fromURL` asks for JSON with the `Accept`
|
|
117
|
+
header, and rejects with an `Error` when the landing page or the collections cannot be read; a failed request rejects
|
|
118
|
+
with the error of `fetch`, an `AbortError` included, so a request can be cancelled through `proxify`. The API document
|
|
119
|
+
and the conformance classes are optional.
|
|
114
120
|
|
|
115
121
|
All components accept `credentials` and `requestHeaders` for their requests, and `proxify`, a function that rewrites each
|
|
116
122
|
request, for instance to send it through a proxy:
|
|
@@ -192,6 +198,10 @@ function createMapLayer(map: Map, collection: OgcOpenApiCapabilitiesCollection)
|
|
|
192
198
|
return new RasterTileSetLayer(model, {label: collection.title || collection.id});
|
|
193
199
|
}
|
|
194
200
|
```
|
|
201
|
+
Leave out the `format` of OgcOpenApiMapsModel: the map link carries the `f` value the server accepts, and the model keeps
|
|
202
|
+
it. `format` replaces that value as it is, so it must be an `f` value as the server names its formats (pygeoapi: `png`),
|
|
203
|
+
not a media type. pygeoapi refuses `f=image/png`. This differs from the `format` of OgcOpenApiTilesModel below, which is
|
|
204
|
+
a media type (`image/png`).
|
|
195
205
|
|
|
196
206
|
### Tilesets
|
|
197
207
|
Map tiles and vector tiles start from the tilesets: of a collection, or of the dataset (`collection` null), all its
|
|
@@ -316,6 +326,30 @@ if (OgcOpenApiGetCapabilities.hasDatasetTileSets(capabilities, CollectionLinkTyp
|
|
|
316
326
|
}
|
|
317
327
|
```
|
|
318
328
|
|
|
329
|
+
The tiles of the dataset can hold only some of its collections, when the server supports the `collections` parameter
|
|
330
|
+
(OGC API Tiles, collections selection). Both tiles models take them as `collections`:
|
|
331
|
+
```typescript
|
|
332
|
+
if (OgcOpenApiGetCapabilities.supportsCollectionSelection(capabilities)) {
|
|
333
|
+
const model = new OgcOpenApiVectorTilesModel({
|
|
334
|
+
tileMatrix,
|
|
335
|
+
baseURL: link.href,
|
|
336
|
+
collection: "dataset",
|
|
337
|
+
tileMatrixSetLimits: tileSet.tileMatrixSetLimits,
|
|
338
|
+
// The ids of the collections, as capabilities.collections lists them
|
|
339
|
+
collections: ["abschnitteaeste"],
|
|
340
|
+
});
|
|
341
|
+
}
|
|
342
|
+
```
|
|
343
|
+
* `supportsCollectionSelection` reads the conformance classes of the server (`capabilities.conformsTo`): the class of the
|
|
344
|
+
standard, `http://www.opengis.net/spec/ogcapi-tiles-1/1.0/conf/collections-selection` (OGC 20-057, Table 7).
|
|
345
|
+
* It also accepts `http://www.opengis.net/spec/ogcapi-tiles-1/1.0/conf/collection-selection`, a name that is not in the
|
|
346
|
+
standard: ldproxy declares the class so, and supports the parameter as the standard requires.
|
|
347
|
+
`COLLECTIONS_SELECTION_CONFORMANCE_VARIANTS` lists it, to be removed once ldproxy declares the class of the standard.
|
|
348
|
+
* The models do not check the conformance classes: they request the collections they are given. Use `collections` for
|
|
349
|
+
tilesets of the dataset only, the tiles of a collection hold that collection.
|
|
350
|
+
* A comma inside a collection id is encoded, the commas between ids are not. A `collections` parameter in the tile URL
|
|
351
|
+
template is replaced.
|
|
352
|
+
|
|
319
353
|
### Styles
|
|
320
354
|
* LuciadRIA reads the Mapbox GL encoding of OGC API Styles only, not SLD or other encodings.
|
|
321
355
|
* A server can publish a stylesheet per tile matrix set, because zoom levels depend on it. `pickStylesheet` picks the one for the tile matrix set in use.
|
|
@@ -11,6 +11,8 @@ export interface LinkType {
|
|
|
11
11
|
}
|
|
12
12
|
export declare const JSON_FG_MEDIA_TYPE = "application/vnd.ogc.fg+json";
|
|
13
13
|
export declare const JSON_FG_PROFILE = "http://www.opengis.net/def/profile/OGC/0/jsonfg";
|
|
14
|
+
export declare const COLLECTIONS_SELECTION_CONFORMANCE = "http://www.opengis.net/spec/ogcapi-tiles-1/1.0/conf/collections-selection";
|
|
15
|
+
export declare const COLLECTIONS_SELECTION_CONFORMANCE_VARIANTS: string[];
|
|
14
16
|
export interface TileMatrix {
|
|
15
17
|
id: string;
|
|
16
18
|
scaleDenominator: number;
|
|
@@ -89,6 +91,7 @@ export interface OgcOpenApiCapabilitiesObject {
|
|
|
89
91
|
baseUrl: string;
|
|
90
92
|
tileMatrixSetsUrl?: string;
|
|
91
93
|
links?: LinkType[];
|
|
94
|
+
conformsTo?: string[];
|
|
92
95
|
serverOptions: FetchServerOptions;
|
|
93
96
|
}
|
|
94
97
|
export interface OgcOpenApiCapabilitiesCollection {
|
|
@@ -131,8 +134,14 @@ export interface OgcOpenApiGetCapabilitiesFromURL {
|
|
|
131
134
|
proxify?: ProxifyFunction;
|
|
132
135
|
}
|
|
133
136
|
export declare class OgcOpenApiGetCapabilities {
|
|
137
|
+
/**
|
|
138
|
+
* Reads the landing page of a server, its collections, the API document and the conformance classes, asking for
|
|
139
|
+
* JSON. Rejects with an Error when the landing page or the collections cannot be read, and with the error of the
|
|
140
|
+
* request as it is when it fails, an AbortError included. The API document and the conformance classes are
|
|
141
|
+
* optional: without them the capabilities have no version and declare no conformance classes.
|
|
142
|
+
*/
|
|
134
143
|
static fromURL(inputRequest: string, fromUrlOptions?: OgcOpenApiGetCapabilitiesFromURL): Promise<OgcOpenApiCapabilitiesObject>;
|
|
135
|
-
private static
|
|
144
|
+
private static toError;
|
|
136
145
|
static filterCollectionLinks(links: OgcOpenApiCapabilitiesCollectionServiceLinkType[], linkType: CollectionLinkType): OgcOpenApiCapabilitiesCollectionServiceLinkType[];
|
|
137
146
|
static getDataLink(currentLayer: OgcOpenApiCapabilitiesCollection, preferedFormat: string): string;
|
|
138
147
|
/**
|
|
@@ -158,6 +167,11 @@ export declare class OgcOpenApiGetCapabilities {
|
|
|
158
167
|
}, linkType?: CollectionLinkType): Promise<LinkType[]>;
|
|
159
168
|
private static getTileSetsHref;
|
|
160
169
|
private static getDatasetTileSetsHref;
|
|
170
|
+
/**
|
|
171
|
+
* Whether the server supports the collections parameter of dataset tiles (OGC API Tiles, collections selection),
|
|
172
|
+
* as its conformance classes declare: the class of the standard, or the variant of COLLECTIONS_SELECTION_CONFORMANCE_VARIANTS
|
|
173
|
+
*/
|
|
174
|
+
static supportsCollectionSelection(capabilities: OgcOpenApiCapabilitiesObject | null): boolean;
|
|
161
175
|
/**
|
|
162
176
|
* Whether the server tiles the dataset as a whole, all its collections in each tile, for linkType Tiles or VectorTiles
|
|
163
177
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OgcOpenApiGetCapabilities.d.ts","sourceRoot":"","sources":["../src/OgcOpenApiGetCapabilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,kBAAkB,EAAuB,MAAM,2BAA2B,CAAC;AAGxF,KAAK,cAAc,GAAG;IAAC,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;CAAC,GAAG,IAAI,CAAA;AAC5D,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IAEb,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC7B;AAID,eAAO,MAAM,kBAAkB,gCAAgC,CAAC;AAChE,eAAO,MAAM,eAAe,oDAAoD,CAAC;
|
|
1
|
+
{"version":3,"file":"OgcOpenApiGetCapabilities.d.ts","sourceRoot":"","sources":["../src/OgcOpenApiGetCapabilities.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,11 @@ const SCALE_DENOMINATOR_TOLERANCE = 1e-8;
|
|
|
4
4
|
// Reading it needs a JSON-FG codec, GeoJsonCodec reads GeoJSON
|
|
5
5
|
export const JSON_FG_MEDIA_TYPE = "application/vnd.ogc.fg+json";
|
|
6
6
|
export const JSON_FG_PROFILE = "http://www.opengis.net/def/profile/OGC/0/jsonfg";
|
|
7
|
+
// The conformance class of OGC API Tiles for the collections parameter of dataset tiles (OGC 20-057, Table 7)
|
|
8
|
+
export const COLLECTIONS_SELECTION_CONFORMANCE = "http://www.opengis.net/spec/ogcapi-tiles-1/1.0/conf/collections-selection";
|
|
9
|
+
// The same class under another name, also accepted. Not in the standard: ldproxy declares it so, and supports the
|
|
10
|
+
// collections parameter as the standard requires. To be removed once ldproxy declares the class of the standard
|
|
11
|
+
export const COLLECTIONS_SELECTION_CONFORMANCE_VARIANTS = ["http://www.opengis.net/spec/ogcapi-tiles-1/1.0/conf/collection-selection"];
|
|
7
12
|
export var CollectionLinkType;
|
|
8
13
|
(function (CollectionLinkType) {
|
|
9
14
|
CollectionLinkType["Items"] = "items";
|
|
@@ -28,123 +33,96 @@ const CollectionLinkTypeDefaultFormat = {
|
|
|
28
33
|
[CollectionLinkType.VectorTiles]: "application/vnd.mapbox-vector-tile",
|
|
29
34
|
};
|
|
30
35
|
export class OgcOpenApiGetCapabilities {
|
|
31
|
-
|
|
36
|
+
/**
|
|
37
|
+
* Reads the landing page of a server, its collections, the API document and the conformance classes, asking for
|
|
38
|
+
* JSON. Rejects with an Error when the landing page or the collections cannot be read, and with the error of the
|
|
39
|
+
* request as it is when it fails, an AbortError included. The API document and the conformance classes are
|
|
40
|
+
* optional: without them the capabilities have no version and declare no conformance classes.
|
|
41
|
+
*/
|
|
42
|
+
static async fromURL(inputRequest, fromUrlOptions) {
|
|
32
43
|
const options = fromUrlOptions ? fromUrlOptions : {};
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
headers: options ? options.requestHeaders : {},
|
|
42
|
-
}, serverOptions).then((response) => {
|
|
43
|
-
if (response.status === 200) {
|
|
44
|
-
response.json().then((jsonObject) => {
|
|
45
|
-
if (!jsonObject.links) {
|
|
46
|
-
reject("Invalid format: (property 'links' is missing)");
|
|
47
|
-
return;
|
|
48
|
-
}
|
|
49
|
-
let linkToData = jsonObject.links.find((link) => link.rel === 'data' && link.type === 'application/json');
|
|
50
|
-
if (!linkToData) {
|
|
51
|
-
linkToData = jsonObject.links.find((link) => link.rel === 'data');
|
|
52
|
-
}
|
|
53
|
-
const linkToApi = jsonObject.links.find((link) => {
|
|
54
|
-
return ((link.rel === 'service-desc' || link.rel === 'service') &&
|
|
55
|
-
link.type.indexOf('openapi+json') > -1);
|
|
56
|
-
});
|
|
57
|
-
const tilingSchemes = jsonObject.links.filter((link) => isRel(link, 'tiling-schemes'));
|
|
58
|
-
const linkToTileMatrixSets = tilingSchemes.find((link) => link.type === 'application/json') || tilingSchemes.find((link) => !link.type);
|
|
59
|
-
// The links of the landing page are relative to it, the links of the collections to /collections
|
|
60
|
-
const resolveLink = (link, documentUrl) => ({ ...link, href: OgcOpenApiFetchTools.resolveUrl(link.href, documentUrl, serverOptions) });
|
|
61
|
-
const promiseArray = [];
|
|
62
|
-
if (linkToData) {
|
|
63
|
-
const collectionsLink = resolveLink(linkToData, requestUrl);
|
|
64
|
-
const collectionsPromise = OgcOpenApiGetCapabilities.fetchLinkContentAsJSON(collectionsLink, { credentials: options.credentials, requestHeaders: options.requestHeaders }, serverOptions);
|
|
65
|
-
promiseArray.push(collectionsPromise);
|
|
66
|
-
if (linkToApi) {
|
|
67
|
-
const apiPromise = OgcOpenApiGetCapabilities.fetchLinkContentAsJSON(resolveLink(linkToApi, requestUrl), { credentials: options.credentials, requestHeaders: options.requestHeaders }, serverOptions);
|
|
68
|
-
promiseArray.push(apiPromise);
|
|
69
|
-
}
|
|
70
|
-
Promise.all(promiseArray).then((responses) => {
|
|
71
|
-
const responseDataLink = responses[0];
|
|
72
|
-
const responseOpenApi = responses.length >= 1 ? responses[1] : undefined;
|
|
73
|
-
const crsArray = typeof responseDataLink.crs !== "undefined" ? { crs: responseDataLink.crs } : {};
|
|
74
|
-
const foundCollections = responseDataLink.collections.filter(c => options && options.filterCollectionsByLinkType ?
|
|
75
|
-
OgcOpenApiGetCapabilities.filterCollectionLinks(c.links, options.filterCollectionsByLinkType).length > 0 : true)
|
|
76
|
-
.map((collection) => {
|
|
77
|
-
const name = typeof collection.id !== 'undefined'
|
|
78
|
-
? collection.id
|
|
79
|
-
: collection.name;
|
|
80
|
-
const collectionCrsObject = {};
|
|
81
|
-
if (typeof collection.crs !== "undefined")
|
|
82
|
-
collectionCrsObject.crs = collection.crs;
|
|
83
|
-
if (typeof collection.storageCrs !== "undefined")
|
|
84
|
-
collectionCrsObject.storageCrs = collection.storageCrs;
|
|
85
|
-
const layer = {
|
|
86
|
-
description: collection.description,
|
|
87
|
-
id: name,
|
|
88
|
-
name,
|
|
89
|
-
title: collection.title,
|
|
90
|
-
keywords: collection.keywords
|
|
91
|
-
? collection.keywords
|
|
92
|
-
: [],
|
|
93
|
-
defaultReference: 'CRS:84',
|
|
94
|
-
links: collection.links,
|
|
95
|
-
outputFormats: options.filterCollectionsByLinkType ?
|
|
96
|
-
this.filterCollectionLinks(collection.links, options.filterCollectionsByLinkType).map(link => this.detectTypeFormat(link))
|
|
97
|
-
:
|
|
98
|
-
collection.links.map(link => this.detectTypeFormat(link)),
|
|
99
|
-
extent: collection.extent,
|
|
100
|
-
...collectionCrsObject
|
|
101
|
-
};
|
|
102
|
-
return layer;
|
|
103
|
-
});
|
|
104
|
-
// console.log(featureTypes);
|
|
105
|
-
const o = {
|
|
106
|
-
name: '',
|
|
107
|
-
collections: foundCollections.map(col => ({ ...col, crs: col.crs ? col.crs : [], links: col.links.map(l => resolveLink(l, collectionsLink.href)) })),
|
|
108
|
-
version: responseOpenApi ? responseOpenApi.openapi : '',
|
|
109
|
-
service: '',
|
|
110
|
-
info: responseOpenApi ? responseOpenApi.info : {},
|
|
111
|
-
...crsArray,
|
|
112
|
-
serverOptions: serverOptions,
|
|
113
|
-
links: jsonObject.links.map(l => resolveLink(l, requestUrl)),
|
|
114
|
-
baseUrl,
|
|
115
|
-
tileMatrixSetsUrl: linkToTileMatrixSets ? resolveLink(linkToTileMatrixSets, requestUrl).href : undefined
|
|
116
|
-
};
|
|
117
|
-
resolve(o);
|
|
118
|
-
});
|
|
119
|
-
}
|
|
120
|
-
else {
|
|
121
|
-
reject("Invalid format: (property 'links' contains no links with rel=data");
|
|
122
|
-
}
|
|
123
|
-
}, () => {
|
|
124
|
-
reject("Not JSON");
|
|
125
|
-
});
|
|
126
|
-
}
|
|
127
|
-
else {
|
|
128
|
-
reject(response.status);
|
|
129
|
-
}
|
|
130
|
-
}, (err) => {
|
|
131
|
-
reject(err);
|
|
132
|
-
});
|
|
44
|
+
// The landing page, with the query it was given, such as an api key. baseUrl is without it
|
|
45
|
+
const baseUrl = OgcOpenApiFetchTools.cleanUrl(inputRequest);
|
|
46
|
+
const requestUrl = OgcOpenApiFetchTools.appendPath(inputRequest, "");
|
|
47
|
+
const serverOptions = OgcOpenApiFetchTools.createFetchOptions({ originalUrl: requestUrl, proxify: options.proxify });
|
|
48
|
+
// The requests before the capabilities exist
|
|
49
|
+
const server = { serverOptions };
|
|
50
|
+
const getJson = (href, accept) => OgcOpenApiGetCapabilities.fetchJson(server, href, options, accept).catch(e => {
|
|
51
|
+
throw OgcOpenApiGetCapabilities.toError(e, href);
|
|
133
52
|
});
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
53
|
+
const landing = await getJson(requestUrl);
|
|
54
|
+
if (!landing || !Array.isArray(landing.links))
|
|
55
|
+
throw new Error("Invalid format: (property 'links' is missing) in " + requestUrl);
|
|
56
|
+
const links = landing.links;
|
|
57
|
+
const linkToData = links.find(link => link.rel === 'data' && link.type === 'application/json') || links.find(link => link.rel === 'data');
|
|
58
|
+
if (!linkToData)
|
|
59
|
+
throw new Error("Invalid format: (property 'links' contains no links with rel=data) in " + requestUrl);
|
|
60
|
+
const linkToApi = links.find(link => (link.rel === 'service-desc' || link.rel === 'service') && (link.type || "").indexOf('openapi+json') > -1);
|
|
61
|
+
const tilingSchemes = links.filter(link => isRel(link, 'tiling-schemes'));
|
|
62
|
+
const linkToTileMatrixSets = tilingSchemes.find(link => link.type === 'application/json') || tilingSchemes.find(link => !link.type);
|
|
63
|
+
const conformance = links.find(link => isRel(link, 'conformance'));
|
|
64
|
+
// The links of the landing page are relative to it, the links of the collections to /collections
|
|
65
|
+
const resolveLink = (link, documentUrl) => ({ ...link, href: OgcOpenApiFetchTools.resolveUrl(link.href, documentUrl, serverOptions) });
|
|
66
|
+
const collectionsLink = resolveLink(linkToData, requestUrl);
|
|
67
|
+
// The collections are required, the API document (in its own media type) and the conformance classes are not
|
|
68
|
+
const [collectionsDocument, api, conformsTo] = await Promise.all([
|
|
69
|
+
getJson(collectionsLink.href),
|
|
70
|
+
linkToApi ? getJson(resolveLink(linkToApi, requestUrl).href, linkToApi.type).catch(() => undefined) : Promise.resolve(undefined),
|
|
71
|
+
conformance ?
|
|
72
|
+
getJson(resolveLink(conformance, requestUrl).href).then(data => Array.isArray(data.conformsTo) ? data.conformsTo : [], () => []) :
|
|
73
|
+
Promise.resolve([]),
|
|
74
|
+
]);
|
|
75
|
+
if (!collectionsDocument || !Array.isArray(collectionsDocument.collections)) {
|
|
76
|
+
throw new Error("Invalid format: (property 'collections' is missing) in " + collectionsLink.href);
|
|
77
|
+
}
|
|
78
|
+
const crsArray = typeof collectionsDocument.crs !== "undefined" ? { crs: collectionsDocument.crs } : {};
|
|
79
|
+
const foundCollections = collectionsDocument.collections
|
|
80
|
+
.filter(c => options.filterCollectionsByLinkType ?
|
|
81
|
+
OgcOpenApiGetCapabilities.filterCollectionLinks(c.links, options.filterCollectionsByLinkType).length > 0 : true)
|
|
82
|
+
.map((collection) => {
|
|
83
|
+
const name = typeof collection.id !== 'undefined' ? collection.id : collection.name;
|
|
84
|
+
const collectionCrsObject = {};
|
|
85
|
+
if (typeof collection.crs !== "undefined")
|
|
86
|
+
collectionCrsObject.crs = collection.crs;
|
|
87
|
+
if (typeof collection.storageCrs !== "undefined")
|
|
88
|
+
collectionCrsObject.storageCrs = collection.storageCrs;
|
|
89
|
+
const layer = {
|
|
90
|
+
description: collection.description,
|
|
91
|
+
id: name,
|
|
92
|
+
name,
|
|
93
|
+
title: collection.title,
|
|
94
|
+
keywords: collection.keywords ? collection.keywords : [],
|
|
95
|
+
defaultReference: 'CRS:84',
|
|
96
|
+
links: collection.links,
|
|
97
|
+
outputFormats: options.filterCollectionsByLinkType ?
|
|
98
|
+
this.filterCollectionLinks(collection.links, options.filterCollectionsByLinkType).map(link => this.detectTypeFormat(link)) :
|
|
99
|
+
collection.links.map(link => this.detectTypeFormat(link)),
|
|
100
|
+
extent: collection.extent,
|
|
101
|
+
...collectionCrsObject
|
|
102
|
+
};
|
|
103
|
+
return layer;
|
|
147
104
|
});
|
|
105
|
+
return {
|
|
106
|
+
name: '',
|
|
107
|
+
collections: foundCollections.map(col => ({ ...col, crs: col.crs ? col.crs : [], links: col.links.map(l => resolveLink(l, collectionsLink.href)) })),
|
|
108
|
+
version: api ? api.openapi : '',
|
|
109
|
+
service: '',
|
|
110
|
+
info: api ? api.info : {},
|
|
111
|
+
...crsArray,
|
|
112
|
+
serverOptions: serverOptions,
|
|
113
|
+
links: links.map(l => resolveLink(l, requestUrl)),
|
|
114
|
+
baseUrl,
|
|
115
|
+
tileMatrixSetsUrl: linkToTileMatrixSets ? resolveLink(linkToTileMatrixSets, requestUrl).href : undefined,
|
|
116
|
+
conformsTo,
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
// An Error for a failed request of fromURL: the error of fetch as it is, such as an AbortError, otherwise its message
|
|
120
|
+
// and the URL. An error of fetch can come from another realm (a DOMException of jsdom is not instanceof Error), so
|
|
121
|
+
// anything with a name and a message is kept; the {error, message} of fetchJson has no name
|
|
122
|
+
static toError(e, href) {
|
|
123
|
+
if (e instanceof Error || (e && typeof e.name === "string" && typeof e.message === "string"))
|
|
124
|
+
return e;
|
|
125
|
+
return new Error((e && e.message ? e.message : String(e)) + " for " + href);
|
|
148
126
|
}
|
|
149
127
|
static filterCollectionLinks(links, linkType) {
|
|
150
128
|
switch (linkType) {
|
|
@@ -239,18 +217,14 @@ export class OgcOpenApiGetCapabilities {
|
|
|
239
217
|
}));
|
|
240
218
|
}
|
|
241
219
|
// GETs a JSON document. Servers answer JSON for the Accept header, or for the f parameter that their links carry.
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
}
|
|
251
|
-
catch (err) {
|
|
252
|
-
throw { error: true, message: err.message };
|
|
253
|
-
}
|
|
220
|
+
// accept is the media type to ask for, application/json by default; requestHeaders can replace it. A failed request
|
|
221
|
+
// rejects with the error of fetch as it is, such as an AbortError
|
|
222
|
+
static async fetchJson(capabilities, href, options, accept = "application/json") {
|
|
223
|
+
const result = await OgcOpenApiFetchTools.fetch(href, {
|
|
224
|
+
method: "GET",
|
|
225
|
+
credentials: options?.credentials ? "same-origin" : "omit",
|
|
226
|
+
headers: { Accept: accept, ...(options?.requestHeaders ? options.requestHeaders : {}) }
|
|
227
|
+
}, capabilities.serverOptions);
|
|
254
228
|
if (result.status !== 200)
|
|
255
229
|
throw { error: true, message: "Invalid response: " + result.status };
|
|
256
230
|
try {
|
|
@@ -280,6 +254,15 @@ export class OgcOpenApiGetCapabilities {
|
|
|
280
254
|
const link = dataLinks.find((link) => link.type === "application/json") || dataLinks.find((link) => !link.type) || dataLinks[0];
|
|
281
255
|
return link ? link.href : '';
|
|
282
256
|
}
|
|
257
|
+
/**
|
|
258
|
+
* Whether the server supports the collections parameter of dataset tiles (OGC API Tiles, collections selection),
|
|
259
|
+
* as its conformance classes declare: the class of the standard, or the variant of COLLECTIONS_SELECTION_CONFORMANCE_VARIANTS
|
|
260
|
+
*/
|
|
261
|
+
static supportsCollectionSelection(capabilities) {
|
|
262
|
+
const conformsTo = capabilities && capabilities.conformsTo ? capabilities.conformsTo : [];
|
|
263
|
+
return conformsTo.indexOf(COLLECTIONS_SELECTION_CONFORMANCE) > -1 ||
|
|
264
|
+
COLLECTIONS_SELECTION_CONFORMANCE_VARIANTS.some(variant => conformsTo.indexOf(variant) > -1);
|
|
265
|
+
}
|
|
283
266
|
/**
|
|
284
267
|
* Whether the server tiles the dataset as a whole, all its collections in each tile, for linkType Tiles or VectorTiles
|
|
285
268
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OgcOpenApiGetCapabilities.js","sourceRoot":"","sources":["../src/OgcOpenApiGetCapabilities.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OgcOpenApiGetCapabilities.js","sourceRoot":"","sources":["../src/OgcOpenApiGetCapabilities.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OgcOpenApiMapsModel.d.ts","sourceRoot":"","sources":["../src/OgcOpenApiMapsModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,6CAA6C,CAAC;AAC3E,OAAO,EAAC,kBAAkB,EAAC,MAAM,iDAAiD,CAAC;AACnF,OAAO,EAAC,eAAe,EAAC,MAAM,8CAA8C,CAAC;AAG7E,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,6CAA6C,CAAC;AAChF,OAAO,EAAC,MAAM,EAAC,MAAM,6BAA6B,CAAC;AAGnD,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,gCAAgC,CAAC;AAMpE,UAAU,qCAAqC;IAC3C,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE;QAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"OgcOpenApiMapsModel.d.ts","sourceRoot":"","sources":["../src/OgcOpenApiMapsModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,6CAA6C,CAAC;AAC3E,OAAO,EAAC,kBAAkB,EAAC,MAAM,iDAAiD,CAAC;AACnF,OAAO,EAAC,eAAe,EAAC,MAAM,8CAA8C,CAAC;AAG7E,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,6CAA6C,CAAC;AAChF,OAAO,EAAC,MAAM,EAAC,MAAM,6BAA6B,CAAC;AAGnD,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,gCAAgC,CAAC;AAMpE,UAAU,qCAAqC;IAC3C,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE;QAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAGzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,OAAO,CAAC,EAAE,eAAe,CAAA;CAC5B;AAED,cAAM,mBAAoB,SAAQ,eAAe;IAC7C,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,WAAW,CAAsB;IACzC,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,KAAK,CAAkB;IAE/B,OAAO,CAAC,cAAc,CAA4B;gBAEtC,CAAC,EAAE,qCAAqC;IAiCpD,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI;IA8BhE,OAAO,CAAC,MAAM,CAAC,kBAAkB;IASjC,OAAO,CAAC,MAAM,CAAC,gBAAgB;CAKlC;AAED,OAAO,EACH,mBAAmB,EACtB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OgcOpenApiMapsModel.js","sourceRoot":"","sources":["../src/OgcOpenApiMapsModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,6CAA6C,CAAC;AAC3E,OAAO,EAAC,kBAAkB,EAAC,MAAM,iDAAiD,CAAC;AACnF,OAAO,EAAC,eAAe,EAAC,MAAM,8CAA8C,CAAC;AAC7E,OAAO,EAAC,kBAAkB,EAAC,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAC,YAAY,EAAC,MAAM,4CAA4C,CAAC;AAExE,OAAO,EAAC,MAAM,EAAC,MAAM,6BAA6B,CAAC;AACnD,OAAO,EAAC,mBAAmB,EAAC,MAAM,8CAA8C,CAAC;AACjF,OAAO,EAAC,YAAY,EAAC,MAAM,mCAAmC,CAAC;AAE/D,OAAO,EAAC,yBAAyB,EAAC,MAAM,gCAAgC,CAAC;AAEzE,uDAAuD;AACvD,MAAM,uBAAuB,GAAG,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"OgcOpenApiMapsModel.js","sourceRoot":"","sources":["../src/OgcOpenApiMapsModel.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,6 +30,12 @@ declare class OgcOpenApiTileMatrixTools {
|
|
|
30
30
|
tileCol: number;
|
|
31
31
|
} | null;
|
|
32
32
|
static getLuciadTile(grid: OgcOpenApiTileGrid, tileMatrixId: string, tileRow: number, tileCol: number): TileCoordinate | null;
|
|
33
|
+
/**
|
|
34
|
+
* The tiles of the dataset limited to some of its collections (OGC API Tiles, collections selection):
|
|
35
|
+
* collections=a,b. A comma inside an id is encoded, the commas between ids are not. A collections parameter
|
|
36
|
+
* that the URL already has is replaced. Without collections, the URL is returned as is.
|
|
37
|
+
*/
|
|
38
|
+
static setCollections(url: string, collections?: string[]): string;
|
|
33
39
|
static appendQueryParameters(url: string, parameters: {
|
|
34
40
|
[key: string]: string | number | boolean | undefined;
|
|
35
41
|
}): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OgcOpenApiTileMatrixTools.d.ts","sourceRoot":"","sources":["../src/OgcOpenApiTileMatrixTools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,6BAA6B,CAAC;AACnD,OAAO,EAAC,mBAAmB,EAAC,MAAM,8CAA8C,CAAC;AACjF,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,6CAA6C,CAAC;AAIhF,OAAO,EAA4B,KAAK,UAAU,EAAE,KAAK,WAAW,EAAC,MAAM,gCAAgC,CAAC;AAE5G;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IAC/B,SAAS,EAAE,mBAAmB,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,UAAU,EAAE,CAAC;CAC9B;AAED,cAAM,yBAAyB;WAEb,cAAc,CAAC,OAAO,EAAE,WAAW,GAAG,kBAAkB;IAqBtE;;;OAGG;WACW,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI;WASpG,UAAU,CAAC,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,cAAc,GAAG;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;WAQ3H,aAAa,CAAC,IAAI,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"OgcOpenApiTileMatrixTools.d.ts","sourceRoot":"","sources":["../src/OgcOpenApiTileMatrixTools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,6BAA6B,CAAC;AACnD,OAAO,EAAC,mBAAmB,EAAC,MAAM,8CAA8C,CAAC;AACjF,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,6CAA6C,CAAC;AAIhF,OAAO,EAA4B,KAAK,UAAU,EAAE,KAAK,WAAW,EAAC,MAAM,gCAAgC,CAAC;AAE5G;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IAC/B,SAAS,EAAE,mBAAmB,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,UAAU,EAAE,CAAC;CAC9B;AAED,cAAM,yBAAyB;WAEb,cAAc,CAAC,OAAO,EAAE,WAAW,GAAG,kBAAkB;IAqBtE;;;OAGG;WACW,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI;WASpG,UAAU,CAAC,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,cAAc,GAAG;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;WAQ3H,aAAa,CAAC,IAAI,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI;IAQpI;;;;OAIG;WACW,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM;WAQ3D,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAA;KAAE,GAAG,MAAM;IAS9H,OAAO,CAAC,MAAM,CAAC,YAAY;IAK3B,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAUlC,OAAO,CAAC,MAAM,CAAC,mBAAmB;CAMrC;AAED,OAAO,EACH,yBAAyB,EAC5B,CAAA"}
|