diff --git a/fixtures/wms/capabilities-brgm-1-1-1.xml b/fixtures/wms/capabilities-brgm-1-1-1.xml index 019d86e..643a374 100644 --- a/fixtures/wms/capabilities-brgm-1-1-1.xml +++ b/fixtures/wms/capabilities-brgm-1-1-1.xml @@ -240,7 +240,7 @@ - + SCAN_F_GEOL250 Carte géologique image de la France au 1/250000 BD Scan-Géol-250 est la base de données géoréférencées des cartes géologiques image à 1/250 000. Utilisation scientifique, technique, pédagogique @@ -275,7 +275,7 @@ - + SCAN_D_GEOL50 Carte géologique image de la France au 1/50 000e BD Scan-Géol-50 est la base de données géoréférencées des cartes géologiques 'papier' à 1/50 000 diff --git a/fixtures/wms/capabilities-brgm-1-3-0.xml b/fixtures/wms/capabilities-brgm-1-3-0.xml index fa653ee..3fbd863 100644 --- a/fixtures/wms/capabilities-brgm-1-3-0.xml +++ b/fixtures/wms/capabilities-brgm-1-3-0.xml @@ -248,7 +248,7 @@ 200000 1e+07 - + SCAN_F_GEOL250 Carte géologique image de la France au 1/250000 BD Scan-Géol-250 est la base de données géoréférencées des cartes géologiques image à 1/250 000. Utilisation scientifique, technique, pédagogique @@ -289,7 +289,7 @@ 80000 500000 - + SCAN_D_GEOL50 Carte géologique image de la France au 1/50 000e BD Scan-Géol-50 est la base de données géoréférencées des cartes géologiques 'papier' à 1/50 000 diff --git a/src/wms/capabilities.spec.ts b/src/wms/capabilities.spec.ts index e22d151..f27cfd5 100644 --- a/src/wms/capabilities.spec.ts +++ b/src/wms/capabilities.spec.ts @@ -64,6 +64,7 @@ describe('WMS capabilities', () => { ], name: 'GEOSERVICES_GEOLOGIE', queryable: false, + opaque: false, styles: [ { legendUrl: expect.stringContaining( @@ -89,6 +90,7 @@ describe('WMS capabilities', () => { keywords: [], name: 'GEOLOGIE', queryable: false, + opaque: false, styles, title: 'Cartes géologiques', children: [ @@ -132,6 +134,7 @@ describe('WMS capabilities', () => { keywords: ['Geologie', 'INSPIRE:Geology', 'Geology'], name: 'SCAN_F_GEOL1M', queryable: false, + opaque: false, styles: [ { legendUrl: @@ -184,6 +187,7 @@ describe('WMS capabilities', () => { keywords: ['Geologie', 'INSPIRE:Geology', 'Geology'], name: 'SCAN_F_GEOL250', queryable: true, + opaque: true, styles, title: 'Carte géologique image de la France au 1/250000', }, @@ -223,6 +227,7 @@ describe('WMS capabilities', () => { keywords: ['Geologie', 'INSPIRE:Geology', 'Geology'], name: 'SCAN_D_GEOL50', queryable: true, + opaque: true, styles, title: 'Carte géologique image de la France au 1/50 000e', }, @@ -250,6 +255,7 @@ describe('WMS capabilities', () => { keywords: [], name: 'INHERIT_BBOX', queryable: false, + opaque: false, styles: [ { name: 'default', diff --git a/src/wms/capabilities.ts b/src/wms/capabilities.ts index 8fe059c..adb462e 100644 --- a/src/wms/capabilities.ts +++ b/src/wms/capabilities.ts @@ -139,6 +139,11 @@ function parseLayer( ? true : false; + const opaque = + layerEl.attributes.opaque === '1' || + layerEl.attributes.opaque === 'true' + ? true + : false; const keywords = findChildrenElement( findChildElement(layerEl, 'KeywordList'), 'Keyword' @@ -159,6 +164,7 @@ function parseLayer( boundingBoxes, keywords, queryable, + opaque, ...(children.length && { children }), }; } diff --git a/src/wms/endpoint.spec.ts b/src/wms/endpoint.spec.ts index 566e31d..b96eb3b 100644 --- a/src/wms/endpoint.spec.ts +++ b/src/wms/endpoint.spec.ts @@ -134,6 +134,7 @@ describe('WmsEndpoint', () => { keywords: [], name: 'GEOLOGIE', queryable: false, + opaque: false, styles: [ { name: 'default', diff --git a/src/wms/model.ts b/src/wms/model.ts index 7966b62..73b27f5 100644 --- a/src/wms/model.ts +++ b/src/wms/model.ts @@ -33,6 +33,7 @@ export type WmsLayerFull = { */ boundingBoxes: Record; queryable: boolean; + opaque: boolean; attribution?: WmsLayerAttribution; keywords?: string[]; /**