@loaders.gl/wms 3.4.0-alpha.2 → 3.4.0-alpha.4
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/dist/dist.min.js +412 -176
- package/dist/es5/csw-capabilities-loader.js +7 -11
- package/dist/es5/csw-capabilities-loader.js.map +1 -1
- package/dist/es5/csw-domain-loader.js +7 -10
- package/dist/es5/csw-domain-loader.js.map +1 -1
- package/dist/es5/csw-records-loader.js +7 -10
- package/dist/es5/csw-records-loader.js.map +1 -1
- package/dist/es5/gml-loader.js +7 -10
- package/dist/es5/gml-loader.js.map +1 -1
- package/dist/es5/index.js +0 -7
- package/dist/es5/index.js.map +1 -1
- package/dist/es5/lerc-loader.js +17 -22
- package/dist/es5/lerc-loader.js.map +1 -1
- package/dist/es5/lib/create-image-source.js +1 -2
- package/dist/es5/lib/create-image-source.js.map +1 -1
- package/dist/es5/lib/parsers/csw/parse-csw-capabilities.js.map +1 -1
- package/dist/es5/lib/parsers/csw/parse-csw-domain.js +1 -1
- package/dist/es5/lib/parsers/csw/parse-csw-domain.js.map +1 -1
- package/dist/es5/lib/parsers/csw/parse-csw-records.js +1 -2
- package/dist/es5/lib/parsers/csw/parse-csw-records.js.map +1 -1
- package/dist/es5/lib/parsers/csw/parse-exception-report.js +0 -2
- package/dist/es5/lib/parsers/csw/parse-exception-report.js.map +1 -1
- package/dist/es5/lib/parsers/gml/deep-strict-equal.js +0 -8
- package/dist/es5/lib/parsers/gml/deep-strict-equal.js.map +1 -1
- package/dist/es5/lib/parsers/gml/parse-gml.js +1 -13
- package/dist/es5/lib/parsers/gml/parse-gml.js.map +1 -1
- package/dist/es5/lib/parsers/wms/parse-wms-capabilities.js +197 -54
- package/dist/es5/lib/parsers/wms/parse-wms-capabilities.js.map +1 -1
- package/dist/es5/lib/parsers/wms/parse-wms-error.js +0 -1
- package/dist/es5/lib/parsers/wms/parse-wms-error.js.map +1 -1
- package/dist/es5/lib/parsers/wms/parse-wms-features.js +0 -1
- package/dist/es5/lib/parsers/wms/parse-wms-features.js.map +1 -1
- package/dist/es5/lib/parsers/wms/parse-wms-layer-description.js +0 -1
- package/dist/es5/lib/parsers/wms/parse-wms-layer-description.js.map +1 -1
- package/dist/es5/lib/parsers/xml/parse-xml-helpers.js +67 -0
- package/dist/es5/lib/parsers/xml/parse-xml-helpers.js.map +1 -0
- package/dist/es5/lib/services/arcgis/arcgis-image-service.js +36 -60
- package/dist/es5/lib/services/arcgis/arcgis-image-service.js.map +1 -1
- package/dist/es5/lib/services/arcgis/arcgis-server.js +50 -54
- package/dist/es5/lib/services/arcgis/arcgis-server.js.map +1 -1
- package/dist/es5/lib/services/generic/image-service.js +28 -42
- package/dist/es5/lib/services/generic/image-service.js.map +1 -1
- package/dist/es5/lib/services/ogc/csw-service.js +161 -188
- package/dist/es5/lib/services/ogc/csw-service.js.map +1 -1
- package/dist/es5/lib/services/ogc/wms-service.js +325 -245
- package/dist/es5/lib/services/ogc/wms-service.js.map +1 -1
- package/dist/es5/lib/sources/data-source.js +36 -13
- package/dist/es5/lib/sources/data-source.js.map +1 -1
- package/dist/es5/lib/sources/image-source.js.map +1 -1
- package/dist/es5/lib/sources/tile-source.js.map +1 -1
- package/dist/es5/lib/sources/utils/utils.js +0 -4
- package/dist/es5/lib/sources/utils/utils.js.map +1 -1
- package/dist/es5/wip/arcgis-feature-service.js +2 -7
- package/dist/es5/wip/arcgis-feature-service.js.map +1 -1
- package/dist/es5/wip/data-source.js +0 -2
- package/dist/es5/wip/lib/wcs/parse-wcs-capabilities.js.map +1 -1
- package/dist/es5/wip/lib/wfs/parse-wfs-capabilities.js.map +1 -1
- package/dist/es5/wip/lib/wmts/parse-wmts-capabilities.js.map +1 -1
- package/dist/es5/wip/wcs-capabilities-loader.js +7 -10
- package/dist/es5/wip/wcs-capabilities-loader.js.map +1 -1
- package/dist/es5/wip/wfs-capabilities-loader.js +7 -10
- package/dist/es5/wip/wfs-capabilities-loader.js.map +1 -1
- package/dist/es5/wip/wms-feature-info-loader.js +6 -8
- package/dist/es5/wip/wms-feature-info-loader.js.map +1 -1
- package/dist/es5/wip/wms-layer-description-loader.js +6 -8
- package/dist/es5/wip/wms-layer-description-loader.js.map +1 -1
- package/dist/es5/wip/wmts-capabilities-loader.js +7 -16
- package/dist/es5/wip/wmts-capabilities-loader.js.map +1 -1
- package/dist/es5/wms-capabilities-loader.js +8 -12
- package/dist/es5/wms-capabilities-loader.js.map +1 -1
- package/dist/es5/wms-error-loader.js +7 -9
- package/dist/es5/wms-error-loader.js.map +1 -1
- package/dist/esm/bundle.js +0 -2
- package/dist/esm/bundle.js.map +1 -1
- package/dist/esm/csw-capabilities-loader.js +1 -5
- package/dist/esm/csw-capabilities-loader.js.map +1 -1
- package/dist/esm/csw-domain-loader.js +1 -4
- package/dist/esm/csw-domain-loader.js.map +1 -1
- package/dist/esm/csw-records-loader.js +1 -4
- package/dist/esm/csw-records-loader.js.map +1 -1
- package/dist/esm/gml-loader.js +1 -4
- package/dist/esm/gml-loader.js.map +1 -1
- package/dist/esm/index.js +0 -11
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lerc-loader.js +1 -4
- package/dist/esm/lerc-loader.js.map +1 -1
- package/dist/esm/lib/create-image-source.js +0 -3
- package/dist/esm/lib/create-image-source.js.map +1 -1
- package/dist/esm/lib/parsers/csw/parse-csw-capabilities.js +0 -3
- package/dist/esm/lib/parsers/csw/parse-csw-capabilities.js.map +1 -1
- package/dist/esm/lib/parsers/csw/parse-csw-domain.js +0 -3
- package/dist/esm/lib/parsers/csw/parse-csw-domain.js.map +1 -1
- package/dist/esm/lib/parsers/csw/parse-csw-records.js +0 -3
- package/dist/esm/lib/parsers/csw/parse-csw-records.js.map +1 -1
- package/dist/esm/lib/parsers/csw/parse-exception-report.js +0 -3
- package/dist/esm/lib/parsers/csw/parse-exception-report.js.map +1 -1
- package/dist/esm/lib/parsers/gml/deep-strict-equal.js +0 -9
- package/dist/esm/lib/parsers/gml/deep-strict-equal.js.map +1 -1
- package/dist/esm/lib/parsers/gml/parse-gml.js +0 -14
- package/dist/esm/lib/parsers/gml/parse-gml.js.map +1 -1
- package/dist/esm/lib/parsers/wms/parse-wms-capabilities.js +151 -42
- package/dist/esm/lib/parsers/wms/parse-wms-capabilities.js.map +1 -1
- package/dist/esm/lib/parsers/wms/parse-wms-error.js +0 -3
- package/dist/esm/lib/parsers/wms/parse-wms-error.js.map +1 -1
- package/dist/esm/lib/parsers/wms/parse-wms-features.js +0 -3
- package/dist/esm/lib/parsers/wms/parse-wms-features.js.map +1 -1
- package/dist/esm/lib/parsers/wms/parse-wms-layer-description.js +0 -3
- package/dist/esm/lib/parsers/wms/parse-wms-layer-description.js.map +1 -1
- package/dist/esm/lib/parsers/xml/parse-xml-helpers.js +53 -0
- package/dist/esm/lib/parsers/xml/parse-xml-helpers.js.map +1 -0
- package/dist/esm/lib/services/arcgis/arcgis-image-service.js +0 -11
- package/dist/esm/lib/services/arcgis/arcgis-image-service.js.map +1 -1
- package/dist/esm/lib/services/arcgis/arcgis-server.js +0 -2
- package/dist/esm/lib/services/arcgis/arcgis-server.js.map +1 -1
- package/dist/esm/lib/services/generic/image-service.js +0 -7
- package/dist/esm/lib/services/generic/image-service.js.map +1 -1
- package/dist/esm/lib/services/ogc/csw-service.js +0 -13
- package/dist/esm/lib/services/ogc/csw-service.js.map +1 -1
- package/dist/esm/lib/services/ogc/wms-service.js +135 -86
- package/dist/esm/lib/services/ogc/wms-service.js.map +1 -1
- package/dist/esm/lib/sources/data-source.js +20 -6
- package/dist/esm/lib/sources/data-source.js.map +1 -1
- package/dist/esm/lib/sources/image-source.js +0 -3
- package/dist/esm/lib/sources/image-source.js.map +1 -1
- package/dist/esm/lib/sources/tile-source.js +0 -3
- package/dist/esm/lib/sources/tile-source.js.map +1 -1
- package/dist/esm/lib/sources/utils/utils.js +0 -5
- package/dist/esm/lib/sources/utils/utils.js.map +1 -1
- package/dist/esm/wip/arcgis-feature-service.js +0 -3
- package/dist/esm/wip/arcgis-feature-service.js.map +1 -1
- package/dist/esm/wip/lib/wcs/parse-wcs-capabilities.js +0 -3
- package/dist/esm/wip/lib/wcs/parse-wcs-capabilities.js.map +1 -1
- package/dist/esm/wip/lib/wfs/parse-wfs-capabilities.js +0 -3
- package/dist/esm/wip/lib/wfs/parse-wfs-capabilities.js.map +1 -1
- package/dist/esm/wip/lib/wmts/parse-wmts-capabilities.js +0 -3
- package/dist/esm/wip/lib/wmts/parse-wmts-capabilities.js.map +1 -1
- package/dist/esm/wip/wcs-capabilities-loader.js +1 -4
- package/dist/esm/wip/wcs-capabilities-loader.js.map +1 -1
- package/dist/esm/wip/wfs-capabilities-loader.js +1 -4
- package/dist/esm/wip/wfs-capabilities-loader.js.map +1 -1
- package/dist/esm/wip/wms-feature-info-loader.js +0 -2
- package/dist/esm/wip/wms-feature-info-loader.js.map +1 -1
- package/dist/esm/wip/wms-layer-description-loader.js +0 -2
- package/dist/esm/wip/wms-layer-description-loader.js.map +1 -1
- package/dist/esm/wip/wmts-capabilities-loader.js +1 -6
- package/dist/esm/wip/wmts-capabilities-loader.js.map +1 -1
- package/dist/esm/wms-capabilities-loader.js +3 -7
- package/dist/esm/wms-capabilities-loader.js.map +1 -1
- package/dist/esm/wms-error-loader.js +1 -4
- package/dist/esm/wms-error-loader.js.map +1 -1
- package/dist/index.d.ts +0 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -5
- package/dist/lib/create-image-source.d.ts +1 -1
- package/dist/lib/create-image-source.d.ts.map +1 -1
- package/dist/lib/parsers/wms/parse-wms-capabilities.d.ts +78 -62
- package/dist/lib/parsers/wms/parse-wms-capabilities.d.ts.map +1 -1
- package/dist/lib/parsers/wms/parse-wms-capabilities.js +166 -1935
- package/dist/lib/parsers/xml/parse-xml-helpers.d.ts +11 -0
- package/dist/lib/parsers/xml/parse-xml-helpers.d.ts.map +1 -0
- package/dist/lib/parsers/xml/parse-xml-helpers.js +68 -0
- package/dist/lib/services/arcgis/arcgis-image-service.d.ts +1 -2
- package/dist/lib/services/arcgis/arcgis-image-service.d.ts.map +1 -1
- package/dist/lib/services/arcgis/arcgis-image-service.js +1 -2
- package/dist/lib/services/generic/image-service.d.ts +2 -3
- package/dist/lib/services/generic/image-service.d.ts.map +1 -1
- package/dist/lib/services/generic/image-service.js +1 -2
- package/dist/lib/services/ogc/csw-service.d.ts +2 -3
- package/dist/lib/services/ogc/csw-service.d.ts.map +1 -1
- package/dist/lib/services/ogc/csw-service.js +1 -2
- package/dist/lib/services/ogc/wms-service.d.ts +128 -72
- package/dist/lib/services/ogc/wms-service.d.ts.map +1 -1
- package/dist/lib/services/ogc/wms-service.js +154 -73
- package/dist/lib/sources/data-source.d.ts +12 -2
- package/dist/lib/sources/data-source.d.ts.map +1 -1
- package/dist/lib/sources/data-source.js +22 -0
- package/dist/lib/sources/image-source.d.ts +9 -15
- package/dist/lib/sources/image-source.d.ts.map +1 -1
- package/dist/lib/sources/tile-source.d.ts +4 -2
- package/dist/lib/sources/tile-source.d.ts.map +1 -1
- package/dist/wip/wmts-capabilities-loader.d.ts +3 -4
- package/dist/wip/wmts-capabilities-loader.d.ts.map +1 -1
- package/dist/wip/wmts-capabilities-loader.js +1 -0
- package/dist/wms-capabilities-loader.d.ts +6 -1
- package/dist/wms-capabilities-loader.d.ts.map +1 -1
- package/dist/wms-capabilities-loader.js +2 -2
- package/package.json +6 -6
- package/src/index.ts +3 -4
- package/src/lib/create-image-source.ts +1 -1
- package/src/lib/parsers/wms/parse-wms-capabilities.ts +294 -2004
- package/src/lib/parsers/xml/parse-xml-helpers.ts +65 -0
- package/src/lib/services/arcgis/arcgis-image-service.ts +1 -4
- package/src/lib/services/generic/image-service.ts +2 -5
- package/src/lib/services/ogc/csw-service.ts +2 -4
- package/src/lib/services/ogc/wms-service.ts +290 -125
- package/src/lib/sources/data-source.ts +29 -2
- package/src/lib/sources/image-source.ts +9 -15
- package/src/lib/sources/tile-source.ts +4 -2
- package/src/wip/wmts-capabilities-loader.ts +2 -2
- package/src/wms-capabilities-loader.ts +9 -3
- package/dist/es5/lib/services/generic/tile-service.js +0 -2
- package/dist/es5/lib/services/generic/tile-service.js.map +0 -1
- package/dist/esm/lib/services/generic/tile-service.js +0 -2
- package/dist/esm/lib/services/generic/tile-service.js.map +0 -1
- package/dist/lib/services/generic/tile-service.d.ts +0 -1
- package/dist/lib/services/generic/tile-service.d.ts.map +0 -1
- package/dist/lib/services/generic/tile-service.js +0 -1
- package/src/lib/services/generic/tile-service.ts +0 -0
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
// loaders.gl, MIT license
|
|
2
|
+
|
|
3
|
+
/** A single element of an array is not represented as an array in XML */
|
|
4
|
+
export function getXMLArray(xmlValue: any): any[] {
|
|
5
|
+
// Already an array, return as is
|
|
6
|
+
if (Array.isArray(xmlValue)) {
|
|
7
|
+
return xmlValue;
|
|
8
|
+
}
|
|
9
|
+
// Single value, wrap in array
|
|
10
|
+
if (xmlValue) {
|
|
11
|
+
return [xmlValue];
|
|
12
|
+
}
|
|
13
|
+
// nullish, return empty array
|
|
14
|
+
return [];
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
/** Get a list of strings from XML */
|
|
18
|
+
export function getXMLStringArray(xmlValue: any): string[] {
|
|
19
|
+
const xmlArray = getXMLArray(xmlValue);
|
|
20
|
+
if (xmlArray.length > 0 && xmlArray.every((_) => typeof _ === 'string')) {
|
|
21
|
+
return xmlArray as string[];
|
|
22
|
+
}
|
|
23
|
+
// TODO - error handling?
|
|
24
|
+
return [];
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/** Get XML float */
|
|
28
|
+
export function getXMLFloat(xmlValue: any, defaultValue = undefined): number | undefined {
|
|
29
|
+
switch (typeof xmlValue) {
|
|
30
|
+
case 'number':
|
|
31
|
+
return xmlValue;
|
|
32
|
+
case 'string':
|
|
33
|
+
return parseFloat(xmlValue);
|
|
34
|
+
default:
|
|
35
|
+
return undefined;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/** Get XML integer */
|
|
40
|
+
export function getXMLInteger(xmlValue: any, defaultValue = undefined): number | undefined {
|
|
41
|
+
switch (typeof xmlValue) {
|
|
42
|
+
case 'number':
|
|
43
|
+
return xmlValue;
|
|
44
|
+
case 'string':
|
|
45
|
+
return parseInt(xmlValue, 10);
|
|
46
|
+
default:
|
|
47
|
+
return undefined;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/** Somewhat arbitrary boolean parsing */
|
|
52
|
+
export function getXMLBoolean(xmlValue: any): boolean {
|
|
53
|
+
switch (xmlValue) {
|
|
54
|
+
case 'true':
|
|
55
|
+
return true;
|
|
56
|
+
case 'false':
|
|
57
|
+
return false;
|
|
58
|
+
case '1':
|
|
59
|
+
return true;
|
|
60
|
+
case '0':
|
|
61
|
+
return false;
|
|
62
|
+
default:
|
|
63
|
+
return false;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
@@ -14,15 +14,12 @@ export type ArcGISImageServerProps = ImageSourceProps & {
|
|
|
14
14
|
* Note - exports a big API, that could be exposed here if there is a use case
|
|
15
15
|
* @see https://developers.arcgis.com/rest/services-reference/enterprise/image-service.htm
|
|
16
16
|
*/
|
|
17
|
-
export class ArcGISImageServer extends ImageSource {
|
|
17
|
+
export class ArcGISImageServer extends ImageSource<ArcGISImageServerProps> {
|
|
18
18
|
static type: 'arcgis-image-server' = 'arcgis-image-server';
|
|
19
19
|
static testURL = (url: string): boolean => url.toLowerCase().includes('ImageServer');
|
|
20
20
|
|
|
21
|
-
props: ArcGISImageServerProps;
|
|
22
|
-
|
|
23
21
|
constructor(props: ArcGISImageServerProps) {
|
|
24
22
|
super(props);
|
|
25
|
-
this.props = props;
|
|
26
23
|
}
|
|
27
24
|
|
|
28
25
|
// ImageSource (normalized endpoints)
|
|
@@ -20,15 +20,12 @@ export type ImageServiceProps = {
|
|
|
20
20
|
* ImageSource allows template url strings to be used to ad hoc connect to arbitrary image data sources
|
|
21
21
|
* Accepts a template url string and builds requests URLs
|
|
22
22
|
*/
|
|
23
|
-
export class ImageService extends ImageSource {
|
|
23
|
+
export class ImageService<PropsT extends ImageServiceProps> extends ImageSource<PropsT> {
|
|
24
24
|
static type: 'template' = 'template';
|
|
25
25
|
static testURL = (url: string): boolean => url.toLowerCase().includes('{');
|
|
26
26
|
|
|
27
|
-
props:
|
|
28
|
-
|
|
29
|
-
constructor(props: ImageServiceProps) {
|
|
27
|
+
constructor(props: PropsT) {
|
|
30
28
|
super(props);
|
|
31
|
-
this.props = props;
|
|
32
29
|
}
|
|
33
30
|
|
|
34
31
|
// IMAGE SOURCE API
|
|
@@ -54,11 +54,10 @@ export type CSWServiceProps = DataSourceProps & {
|
|
|
54
54
|
* - implements the ImageService interface
|
|
55
55
|
* @note Only the URL parameter conversion is supported. XML posts are not supported.
|
|
56
56
|
*/
|
|
57
|
-
export class CSWService extends DataSource {
|
|
57
|
+
export class CSWService extends DataSource<CSWServiceProps> {
|
|
58
58
|
static type: 'csw' = 'csw';
|
|
59
59
|
static testURL = (url: string): boolean => url.toLowerCase().includes('csw');
|
|
60
60
|
|
|
61
|
-
props: CSWServiceProps;
|
|
62
61
|
capabilities: CSWCapabilities | null = null;
|
|
63
62
|
|
|
64
63
|
/** A list of loaders used by the CSWService methods */
|
|
@@ -67,7 +66,6 @@ export class CSWService extends DataSource {
|
|
|
67
66
|
/** Create a CSWService */
|
|
68
67
|
constructor(props: CSWServiceProps) {
|
|
69
68
|
super(props);
|
|
70
|
-
this.props = props;
|
|
71
69
|
}
|
|
72
70
|
|
|
73
71
|
async getMetadata(): Promise<CSWCapabilities> {
|
|
@@ -79,7 +77,7 @@ export class CSWService extends DataSource {
|
|
|
79
77
|
return capabilities;
|
|
80
78
|
}
|
|
81
79
|
|
|
82
|
-
async getServiceDirectory(options
|
|
80
|
+
async getServiceDirectory(options?: {includeUnknown?: boolean}): Promise<Service[]> {
|
|
83
81
|
const services: Service[] = [];
|
|
84
82
|
const unknownServices: Service[] = [];
|
|
85
83
|
|