@@ -11,7 +11,7 @@ export class HTMLTileElement extends HTMLElement {
1111 return [ 'row' , 'col' , 'zoom' , 'src' ] ;
1212 }
1313 /* jshint ignore:start */
14- #hasConnected;
14+ #hasConnected; // prevents attributeChangedCallback before connectedCallback
1515 #initialRow;
1616 #initialCol;
1717 #initialZoom;
@@ -119,7 +119,7 @@ export class HTMLTileElement extends HTMLElement {
119119 /* jshint ignore:end */
120120 // Get parent element to determine how to handle the tile
121121 // Need to handle shadow DOM correctly like map-feature does
122- this . _parentElement =
122+ this . _parentEl =
123123 this . parentNode . nodeName . toUpperCase ( ) === 'MAP-LAYER' ||
124124 this . parentNode . nodeName . toUpperCase ( ) === 'LAYER-' ||
125125 this . parentNode . nodeName . toUpperCase ( ) === 'MAP-LINK'
@@ -141,6 +141,7 @@ export class HTMLTileElement extends HTMLElement {
141141
142142 // If this was the last tile in the layer, clean up the layer
143143 if ( this . _tileLayer . _mapTiles && this . _tileLayer . _mapTiles . length === 0 ) {
144+ this . _tileLayer . remove ( ) ;
144145 this . _tileLayer = null ;
145146 delete this . _tileLayer ;
146147 }
@@ -217,24 +218,24 @@ export class HTMLTileElement extends HTMLElement {
217218 getMeta ( metaName ) {
218219 let name = metaName . toLowerCase ( ) ;
219220 if ( name !== 'cs' && name !== 'zoom' && name !== 'projection' ) return ;
220- let sdMeta = this . _parentElement . shadowRoot . querySelector (
221+ let sdMeta = this . _parentEl . shadowRoot . querySelector (
221222 `map-meta[name=${ name } ][content]`
222223 ) ;
223- if ( this . _parentElement . nodeName === 'MAP-LINK' ) {
224+ if ( this . _parentEl . nodeName === 'MAP-LINK' ) {
224225 // sd.map-meta || map-extent meta || layer meta
225- return sdMeta || this . _parentElement . parentElement . getMeta ( metaName ) ;
226+ return sdMeta || this . _parentEl . parentElement . getMeta ( metaName ) ;
226227 } else {
227- return this . _parentElement . src
228- ? this . _parentElement . shadowRoot . querySelector (
228+ return this . _parentEl . src
229+ ? this . _parentEl . shadowRoot . querySelector (
229230 `map-meta[name=${ name } ][content]`
230231 )
231- : this . _parentElement . querySelector ( `map-meta[name=${ name } ][content]` ) ;
232+ : this . _parentEl . querySelector ( `map-meta[name=${ name } ][content]` ) ;
232233 }
233234 }
234235 async _createOrGetTileLayer ( ) {
235- await this . _parentElement . whenReady ( ) ;
236+ await this . _parentEl . whenReady ( ) ;
236237 if ( this . isFirst ( ) ) {
237- const parentElement = this . _parentElement ;
238+ const parentElement = this . _parentEl ;
238239
239240 // Create a new MapTileLayer
240241 this . _tileLayer = mapTileLayer ( {
0 commit comments