11import SldStyleParser from 'geostyler-sld-parser' ;
22import { WellKnownName } from 'geostyler-style' ;
33import GeoserverTextSymbolizer from './GeoserverTextSymbolizer' ;
4- import GeoserverMarkSymbolizer from './GeoserverMarkSymbolizer'
4+ import GeoserverMarkSymbolizer from './GeoserverMarkSymbolizer' ;
5+ import GeoserverFillSymbolizer from './GeoserverFillSymbolizer' ;
56import {
67 Filter ,
78 ComparisonFilter , BaseSymbolizer ,
89} from 'geostyler-style' ;
9- import GeoserverFillSymbolizer from './GeoserverFillSymbolizer' ;
10- import GeoserverTextSymbolizer from './GeoserverTextSymbolizer' ;
11- var _get = require ( 'lodash.get' )
12-
10+ const _get = require ( 'lodash.get' ) ;
11+ type CssParam = {
12+ '_' : string | number ,
13+ '$' : {
14+ name : string
15+ } ;
16+ } ;
1317const VENDOR_OPTIONS_MAP = [
1418 'partials' ,
1519 'repeat' ,
@@ -28,7 +32,7 @@ function keysByValue (object: any, value: any) {
2832 return Object . keys ( object ) . filter ( key => object [ key ] === value ) ;
2933}
3034
31- var WELLKNOWNNAME_TTF_REGEXP = / ^ t t f : \/ \/ ( .+ ) # ( .+ ) $ / ;
35+ const WELLKNOWNNAME_TTF_REGEXP = / ^ t t f : \/ \/ ( .+ ) # ( .+ ) $ / ;
3236
3337class GeoserverSldStyleParser extends SldStyleParser {
3438 getSldComparisonFilterFromComparisonFilter ( comparisonFilter : ComparisonFilter ) : any {
@@ -99,8 +103,7 @@ class GeoserverSldStyleParser extends SldStyleParser {
99103 return finalSymbolizer ;
100104 }
101105
102-
103- /**
106+ /**
104107 * Get the GeoStyler-Style MarkSymbolizer from an SLD Symbolizer
105108 *
106109 * @param {object } sldSymbolizer The SLD Symbolizer
@@ -116,7 +119,6 @@ class GeoserverSldStyleParser extends SldStyleParser {
116119 const size : string = _get ( sldSymbolizer , 'Graphic[0].Size[0]' ) ;
117120 const rotation : string = _get ( sldSymbolizer , 'Graphic[0].Rotation[0]' ) ;
118121
119-
120122 let fillParams : any [ ] = _get ( sldSymbolizer , 'Graphic[0].Mark[0].Fill[0].CssParameter' ) || [ ] ;
121123 if ( fillParams . length === 0 ) {
122124 fillParams = _get ( sldSymbolizer , 'Graphic[0].Mark[0].Fill[0].SvgParameter' ) || [ ] ;
@@ -132,46 +134,46 @@ class GeoserverSldStyleParser extends SldStyleParser {
132134 }
133135 }
134136
135- var sldFunction = _get ( sldSymbolizer , 'Graphic[0].Mark[0].Fill[0].CssParameter[' + colorIdx + '].Function' ) ;
137+ const sldFunction = _get ( sldSymbolizer , 'Graphic[0].Mark[0].Fill[0].CssParameter[' + colorIdx + '].Function' ) ;
136138
137139 const fillOpacityIdx : number = fillParams . findIndex ( ( cssParam : any ) => {
138140 return cssParam . $ . name === 'fill-opacity' ;
139141 } ) ;
140142 let fillOpacity : string = _get ( sldSymbolizer ,
141- 'Graphic[0].Mark[0].Fill[0].CssParameter[' + fillOpacityIdx + ']._' ) ;
143+ 'Graphic[0].Mark[0].Fill[0].CssParameter[' + fillOpacityIdx + ']._' ) ;
142144 if ( ! fillOpacity ) {
143145 fillOpacity = _get ( sldSymbolizer ,
144- 'Graphic[0].Mark[0].Fill[0].SvgParameter[' + fillOpacityIdx + ']._' ) ;
146+ 'Graphic[0].Mark[0].Fill[0].SvgParameter[' + fillOpacityIdx + ']._' ) ;
145147 }
146148 const markSymbolizer : GeoserverMarkSymbolizer = {
147149 kind : 'Mark' ,
148150 } as GeoserverMarkSymbolizer ;
149151
150152 if ( sldFunction ) {
151153 if ( sldFunction [ 0 ] . $ . name === 'Interpolate' ) {
152- const perChunk = 2 // items per chunk
154+ const perChunk = 2 ; // items per chunk
153155
154156 var newArray = sldFunction [ 0 ] . Literal . reduce ( ( resultArray : any , item : any , index : any ) => {
155- const chunkIndex = Math . floor ( index / perChunk )
157+ const chunkIndex = Math . floor ( index / perChunk ) ;
156158
157- if ( ! resultArray [ chunkIndex ] ) {
158- resultArray [ chunkIndex ] = [ ] // start a new chunk
159+ if ( ! resultArray [ chunkIndex ] ) {
160+ resultArray [ chunkIndex ] = [ ] ; // start a new chunk
159161 }
160- resultArray [ chunkIndex ] . push ( item )
162+ resultArray [ chunkIndex ] . push ( item ) ;
161163
162- return resultArray
163- } , [ ] )
164+ return resultArray ;
165+ } , [ ] ) ;
164166
165167 const newestArray = newArray . map ( ( arr : any , i : any ) => {
166- return [ i === 0 ? '>' : '<' , sldFunction [ 0 ] . PropertyName [ 0 ] , ...arr ]
167- } )
168+ return [ i === 0 ? '>' : '<' , sldFunction [ 0 ] . PropertyName [ 0 ] , ...arr ] ;
169+ } ) ;
168170
169171 const functionArray = [
170172 sldFunction [ 0 ] . $ . name ,
171173 ...newestArray
172- ]
174+ ] ;
173175
174- markSymbolizer . func = functionArray
176+ markSymbolizer . func = functionArray ;
175177 }
176178 }
177179
@@ -255,7 +257,7 @@ class GeoserverSldStyleParser extends SldStyleParser {
255257 } ] ;
256258
257259 if ( markSymbolizer . color || markSymbolizer . fillOpacity ) {
258- const cssParameters = [ ] ;
260+ const cssParameters : CssParam [ ] = [ ] ;
259261 if ( markSymbolizer . color ) {
260262 cssParameters . push ( {
261263 '_' : markSymbolizer . color ,
@@ -309,14 +311,14 @@ class GeoserverSldStyleParser extends SldStyleParser {
309311 }
310312
311313 if ( markSymbolizer . func ) {
312- const propertyName = markSymbolizer . func [ 1 ] [ 1 ]
313- const emptyArray : string [ ] = [ ]
314+ const propertyName = markSymbolizer . func [ 1 ] [ 1 ] ;
315+ const emptyArray : string [ ] = [ ] ;
314316 markSymbolizer . func . map ( ( arr : string [ ] , i : any ) => {
315317 if ( i !== 0 ) {
316- emptyArray . push ( arr [ 2 ] )
317- if ( arr . length === 4 ) emptyArray . push ( arr [ 3 ] )
318+ emptyArray . push ( arr [ 2 ] ) ;
319+ if ( arr . length === 4 ) { emptyArray . push ( arr [ 3 ] ) ; }
318320 }
319- } )
321+ } ) ;
320322
321323 const cssParameters = [ ] ;
322324
0 commit comments