I have issues with text encoding in widgets. This is Angular 8 app. Language is Swedish. Swedish symbols from data layer are displayed correctly. But those defined in html do not display correctly:
Is there any way to resolve this issue?
Table - it is a custom widget. Such problem I have with all html content on the map.
But if the data from Feature Layer all displays correctly. The same was with Feature Table
Header names are defined in html (like text in tags). Row data is from Feature Layer.
Unfortunately I can't share app or featurelayer. But I can send parts of the code:
<SPAN class="keyword token">import</SPAN> <SPAN class="punctuation token">{</SPAN> Component<SPAN class="punctuation token">,</SPAN> OnInit<SPAN class="punctuation token">,</SPAN> ViewChild<SPAN class="punctuation token">,</SPAN> ElementRef<SPAN class="punctuation token">,</SPAN> Input<SPAN class="punctuation token">,</SPAN> Output<SPAN class="punctuation token">,</SPAN> EventEmitter<SPAN class="punctuation token">,</SPAN> OnDestroy<SPAN class="punctuation token">,</SPAN> Injector <SPAN class="punctuation token">}</SPAN> <SPAN class="keyword token">from</SPAN> <SPAN class="string token">'@angular/core'</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">import</SPAN> <SPAN class="punctuation token">{</SPAN> loadModules <SPAN class="punctuation token">}</SPAN> <SPAN class="keyword token">from</SPAN> <SPAN class="string token">'esri-loader'</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">import</SPAN> esri <SPAN class="operator token">=</SPAN> __esri<SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">import</SPAN> <SPAN class="punctuation token">{</SPAN> EstateConfigService <SPAN class="punctuation token">}</SPAN> <SPAN class="keyword token">from</SPAN> <SPAN class="string token">'../services/estate-config.service'</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">import</SPAN> <SPAN class="punctuation token">{</SPAN> EstateConfig <SPAN class="punctuation token">}</SPAN> <SPAN class="keyword token">from</SPAN> <SPAN class="string token">'../config/estate.config'</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">import</SPAN> <SPAN class="punctuation token">{</SPAN> EsryCredentaials <SPAN class="punctuation token">}</SPAN> <SPAN class="keyword token">from</SPAN> <SPAN class="string token">'../models/EsryCredentaials.model'</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">import</SPAN> <SPAN class="punctuation token">{</SPAN> TranslateService <SPAN class="punctuation token">}</SPAN> <SPAN class="keyword token">from</SPAN> <SPAN class="string token">'@ngx-translate/core'</SPAN><SPAN class="punctuation token">;</SPAN> @<SPAN class="token function">Component</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">{</SPAN> selector<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">'app-my-estate-map'</SPAN><SPAN class="punctuation token">,</SPAN> templateUrl<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">'./my-estate-map.component.html'</SPAN><SPAN class="punctuation token">,</SPAN> styleUrls<SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="string token">'./my-estate-map.component.scss'</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="keyword token">export</SPAN> <SPAN class="keyword token">class</SPAN> <SPAN class="token class-name">MyEstateMapComponent</SPAN> <SPAN class="keyword token">implements</SPAN> <SPAN class="token class-name">OnInit</SPAN><SPAN class="punctuation token">,</SPAN> OnDestroy <SPAN class="punctuation token">{</SPAN> @<SPAN class="token function">Input</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN> personalNumber<SPAN class="punctuation token">:</SPAN> string<SPAN class="punctuation token">;</SPAN> @<SPAN class="token function">Output</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN> estateDataLoadedEvent <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">new</SPAN> <SPAN class="token class-name">EventEmitter</SPAN><SPAN class="operator token"><</SPAN>any<SPAN class="punctuation token">[</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="operator token">></SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> @<SPAN class="token function">ViewChild</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'mapViewNode'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">static</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">true</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="keyword token">private</SPAN> mapViewEl<SPAN class="punctuation token">:</SPAN> ElementRef<SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">private</SPAN> _view<SPAN class="punctuation token">:</SPAN> esri<SPAN class="punctuation token">.</SPAN>MapView <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">null</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">private</SPAN> _webMap<SPAN class="punctuation token">:</SPAN> esri<SPAN class="punctuation token">.</SPAN>WebMap <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">null</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">private</SPAN> _featureLayer<SPAN class="punctuation token">:</SPAN> esri<SPAN class="punctuation token">.</SPAN>FeatureLayer <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">null</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">private</SPAN> zoomToExtentFunc<SPAN class="punctuation token">:</SPAN> any<SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">private</SPAN> highLightPolygonFunc<SPAN class="punctuation token">:</SPAN> any<SPAN class="punctuation token">;</SPAN> tableData<SPAN class="punctuation token">:</SPAN> any<SPAN class="punctuation token">[</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">;</SPAN> tableFields<SPAN class="punctuation token">:</SPAN> any<SPAN class="punctuation token">[</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">;</SPAN> forestryPlanDocuments<SPAN class="punctuation token">:</SPAN> any<SPAN class="punctuation token">[</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">;</SPAN> forestryPlanOptions<SPAN class="punctuation token">:</SPAN> any<SPAN class="punctuation token">[</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">;</SPAN> selectedDepartment<SPAN class="punctuation token">:</SPAN> string<SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">private</SPAN> estateConfig<SPAN class="punctuation token">:</SPAN> EstateConfig<SPAN class="punctuation token">;</SPAN> <SPAN class="token function">constructor</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="keyword token">private</SPAN> translateService<SPAN class="punctuation token">:</SPAN> TranslateService<SPAN class="punctuation token">,</SPAN>injector<SPAN class="punctuation token">:</SPAN> Injector<SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>estateConfig <SPAN class="operator token">=</SPAN> injector<SPAN class="punctuation token">.</SPAN><SPAN class="keyword token">get</SPAN><SPAN class="punctuation token">(</SPAN>EstateConfigService<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="token function">ngOnInit</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">void</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">try</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN><SPAN class="token function">initializeMap</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="keyword token">catch</SPAN> <SPAN class="punctuation token">(</SPAN><SPAN class="token class-name">e</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN> console<SPAN class="punctuation token">.</SPAN><SPAN class="token function">error</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'EsriLoader: '</SPAN><SPAN class="punctuation token">,</SPAN> e<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>tableFields <SPAN class="operator token">=</SPAN> <SPAN class="punctuation token">[</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Department"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.department'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Area"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.area'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Age"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.age'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"MaturityClass"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.maturityClass'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"ManagementClass"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.managementClass'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"SiteIndex"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.siteIndex'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"WoodVolume"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.woodVolume'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"GrowingDepartmentStock"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.growingDepartmentStock'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"PineDistribution"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.pineDistribution'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"SpruceDistribution"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.spruceDistribution'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"BroadLeavesDistribution"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.broadLeavesDistribution'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"HardWoodDistribution"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.hardWoodDistribution'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"ForeignSpeciesDistribution"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.foreignSpeciesDistribution'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Stems"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.stems'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"AverageTreeTrunk"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.averageTreeTrunk'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Description"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.description'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"ActionType"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN><SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.actionType'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Urgency"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.urgency'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"RemovalGrowthPerc"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"%"</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"RemovalGrowth"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.removalGrowth'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"YearlyGrowth"</SPAN><SPAN class="punctuation token">,</SPAN> label<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>translateService<SPAN class="punctuation token">.</SPAN><SPAN class="token function">instant</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'myEstateMap.columnHeadings.yearlyGrowth'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="token function">onSelectedDepartmentChanged</SPAN><SPAN class="punctuation token">(</SPAN>feature<SPAN class="punctuation token">:</SPAN> any<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">void</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN><SPAN class="token function">highLightPolygonFunc</SPAN><SPAN class="punctuation token">(</SPAN>feature<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="token function">onForestryPlansSelectChange</SPAN><SPAN class="punctuation token">(</SPAN>value<SPAN class="punctuation token">:</SPAN> string<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">void</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>selectedDepartment <SPAN class="operator token">=</SPAN> <SPAN class="string token">''</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>forestryPlanDocuments <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>forestryPlanOptions<SPAN class="punctuation token">.</SPAN><SPAN class="token function">filter</SPAN><SPAN class="punctuation token">(</SPAN>obj <SPAN class="operator token">=</SPAN><SPAN class="operator token">></SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">return</SPAN> obj<SPAN class="punctuation token">.</SPAN>forestryPlanId <SPAN class="operator token">===</SPAN> value <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">[</SPAN><SPAN class="number token">0</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">.</SPAN>documents <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_featureLayer<SPAN class="punctuation token">.</SPAN>definitionExpression <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN><SPAN class="token function">createDefinitionExpression</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="template-string token"><SPAN class="string token">`ForestryPlanId = </SPAN><SPAN class="interpolation token"><SPAN class="interpolation-punctuation punctuation token">${</SPAN>value<SPAN class="interpolation-punctuation punctuation token">}</SPAN></SPAN><SPAN class="string token">`</SPAN></SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN><SPAN class="token function">zoomToExtentFunc</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">const</SPAN> query <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_featureLayer<SPAN class="punctuation token">.</SPAN><SPAN class="token function">createQuery</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN> query<SPAN class="punctuation token">.</SPAN>returnGeometry <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">true</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_featureLayer<SPAN class="punctuation token">.</SPAN><SPAN class="token function">queryFeatures</SPAN><SPAN class="punctuation token">(</SPAN>query<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">.</SPAN><SPAN class="token function">then</SPAN><SPAN class="punctuation token">(</SPAN>response <SPAN class="operator token">=</SPAN><SPAN class="operator token">></SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>tableData <SPAN class="operator token">=</SPAN> response<SPAN class="punctuation token">.</SPAN>features<SPAN class="punctuation token">.</SPAN><SPAN class="token function">map</SPAN><SPAN class="punctuation token">(</SPAN>item <SPAN class="operator token">=</SPAN><SPAN class="operator token">></SPAN> <SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">{</SPAN> Department<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>Department<SPAN class="punctuation token">,</SPAN> Area<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>Area<SPAN class="punctuation token">,</SPAN> Age<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>Age<SPAN class="punctuation token">,</SPAN> MaturityClass<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>MaturityClass<SPAN class="punctuation token">,</SPAN> ManagementClass<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>ManagementClass<SPAN class="punctuation token">,</SPAN> SiteIndex<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>SiteIndex<SPAN class="punctuation token">,</SPAN> WoodVolume<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>WoodVolume<SPAN class="punctuation token">,</SPAN> GrowingDepartmentStock<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>GrowingDepartmentStock<SPAN class="punctuation token">,</SPAN> PineDistribution<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>PineDistribution<SPAN class="punctuation token">,</SPAN> SpruceDistribution<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>SpruceDistribution<SPAN class="punctuation token">,</SPAN> BroadLeavesDistribution<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>BroadLeavesDistribution<SPAN class="punctuation token">,</SPAN> HardWoodDistribution<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>HardWoodDistribution<SPAN class="punctuation token">,</SPAN> ForeignSpeciesDistribution<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>ForeignSpeciesDistribution<SPAN class="punctuation token">,</SPAN> Stems<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>Stems<SPAN class="punctuation token">,</SPAN> AverageTreeTrunk<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>AverageTreeTrunk<SPAN class="punctuation token">,</SPAN> Description<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>Description<SPAN class="punctuation token">,</SPAN> ActionType<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>ActionType<SPAN class="punctuation token">,</SPAN> Urgency<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>Urgency<SPAN class="punctuation token">,</SPAN> YearlyGrowth<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>YearlyGrowth<SPAN class="punctuation token">,</SPAN> RelatedFeature<SPAN class="punctuation token">:</SPAN> item <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="token function">createDefinitionExpression</SPAN><SPAN class="punctuation token">(</SPAN>subExpression<SPAN class="punctuation token">:</SPAN> string<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN> string <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">const</SPAN> baseExpression <SPAN class="operator token">=</SPAN> `SupplierIds LIKE <SPAN class="string token">'%${this.personalNumber}%'</SPAN>`<SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">return</SPAN> subExpression <SPAN class="operator token">?</SPAN> baseExpression <SPAN class="operator token">+</SPAN> <SPAN class="string token">" AND ("</SPAN> <SPAN class="operator token">+</SPAN> subExpression <SPAN class="operator token">+</SPAN> <SPAN class="string token">")"</SPAN> <SPAN class="punctuation token">:</SPAN> baseExpression<SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="keyword token">async</SPAN> <SPAN class="token function">initializeMap</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN> Promise<SPAN class="operator token"><</SPAN><SPAN class="keyword token">void</SPAN><SPAN class="operator token">></SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="comment token">// Load the modules for the ArcGIS API for JavaScript</SPAN> <SPAN class="keyword token">const</SPAN> <SPAN class="punctuation token">[</SPAN>WebMap<SPAN class="punctuation token">,</SPAN> MapView<SPAN class="punctuation token">,</SPAN> esriId<SPAN class="punctuation token">,</SPAN> ServerInfo<SPAN class="punctuation token">,</SPAN> FullScreen<SPAN class="punctuation token">,</SPAN> BaseMapToggle<SPAN class="punctuation token">,</SPAN> SimpleFillSymbol<SPAN class="punctuation token">]</SPAN> <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">await</SPAN> <SPAN class="token function">loadModules</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">[</SPAN> <SPAN class="string token">'esri/WebMap'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'esri/views/MapView'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'esri/identity/IdentityManager'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'esri/identity/ServerInfo'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'esri/widgets/Fullscreen'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'esri/widgets/BasemapToggle'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'esri/symbols/SimpleFillSymbol'</SPAN> <SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>estateConfigForMap<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>zoomToExtentFunc <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">function</SPAN> <SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">const</SPAN> query <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_featureLayer<SPAN class="punctuation token">.</SPAN><SPAN class="token function">createQuery</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> query<SPAN class="punctuation token">.</SPAN>outSpatialReference <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_view<SPAN class="punctuation token">.</SPAN>spatialReference <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_featureLayer<SPAN class="punctuation token">.</SPAN><SPAN class="token function">queryExtent</SPAN><SPAN class="punctuation token">(</SPAN>query<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">.</SPAN><SPAN class="token function">then</SPAN><SPAN class="punctuation token">(</SPAN>response <SPAN class="operator token">=</SPAN><SPAN class="operator token">></SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_view<SPAN class="punctuation token">.</SPAN><SPAN class="token function">goTo</SPAN><SPAN class="punctuation token">(</SPAN>response<SPAN class="punctuation token">.</SPAN>extent <SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">.</SPAN><SPAN class="keyword token">catch</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="keyword token">function</SPAN> <SPAN class="punctuation token">(</SPAN>error<SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN> console<SPAN class="punctuation token">.</SPAN><SPAN class="token function">error</SPAN><SPAN class="punctuation token">(</SPAN>error<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>highLightPolygonFunc <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">function</SPAN> <SPAN class="punctuation token">(</SPAN>graphic<SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_view<SPAN class="punctuation token">.</SPAN>graphics<SPAN class="punctuation token">.</SPAN><SPAN class="token function">removeAll</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">if</SPAN> <SPAN class="punctuation token">(</SPAN>graphic<SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">let</SPAN> symbol <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">new</SPAN> <SPAN class="token class-name">SimpleFillSymbol</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">{</SPAN> color<SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="number token">102</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">204</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">255</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">0.5</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN> style<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"solid"</SPAN><SPAN class="punctuation token">,</SPAN> outline<SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">{</SPAN> color<SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="number token">0</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">102</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">204</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN> width<SPAN class="punctuation token">:</SPAN> <SPAN class="number token">1</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">var</SPAN> selectionGraphic <SPAN class="operator token">=</SPAN> graphic<SPAN class="punctuation token">;</SPAN> selectionGraphic<SPAN class="punctuation token">.</SPAN>symbol <SPAN class="operator token">=</SPAN> symbol<SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_view<SPAN class="punctuation token">.</SPAN>graphics<SPAN class="punctuation token">.</SPAN><SPAN class="token function">add</SPAN><SPAN class="punctuation token">(</SPAN>selectionGraphic<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_webMap <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">new</SPAN> <SPAN class="token class-name">WebMap</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">{</SPAN> portalItem<SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">{</SPAN> id<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">'696e6f1ce4af48358d1b6ee3faf4278d'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_webMap<SPAN class="punctuation token">.</SPAN><SPAN class="token function">when</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">(</SPAN>map<SPAN class="punctuation token">)</SPAN> <SPAN class="operator token">=</SPAN><SPAN class="operator token">></SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_featureLayer <SPAN class="operator token">=</SPAN> map<SPAN class="punctuation token">.</SPAN>layers<SPAN class="punctuation token">.</SPAN><SPAN class="token function">getItemAt</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="number token">0</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_featureLayer<SPAN class="punctuation token">.</SPAN>definitionExpression <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN><SPAN class="token function">createDefinitionExpression</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">''</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_featureLayer<SPAN class="punctuation token">.</SPAN><SPAN class="token function">when</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="operator token">=</SPAN><SPAN class="operator token">></SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">const</SPAN> query <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_featureLayer<SPAN class="punctuation token">.</SPAN><SPAN class="token function">createQuery</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN> query<SPAN class="punctuation token">.</SPAN>returnGeometry <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">true</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">return</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_featureLayer<SPAN class="punctuation token">.</SPAN><SPAN class="token function">queryFeatures</SPAN><SPAN class="punctuation token">(</SPAN>query<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">.</SPAN><SPAN class="token function">then</SPAN><SPAN class="punctuation token">(</SPAN>response <SPAN class="operator token">=</SPAN><SPAN class="operator token">></SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>forestryPlanOptions <SPAN class="operator token">=</SPAN> response<SPAN class="punctuation token">.</SPAN>features <SPAN class="punctuation token">.</SPAN><SPAN class="token function">map</SPAN><SPAN class="punctuation token">(</SPAN>item <SPAN class="operator token">=</SPAN><SPAN class="operator token">></SPAN> <SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">{</SPAN> forestryPlanId<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>ForestryPlanId<SPAN class="punctuation token">,</SPAN> forestryPlanName<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>ForestryPlanName<SPAN class="punctuation token">,</SPAN> documents<SPAN class="punctuation token">:</SPAN> item<SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>DocumentLinks<SPAN class="punctuation token">.</SPAN><SPAN class="token function">split</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">','</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">.</SPAN><SPAN class="token function">map</SPAN><SPAN class="punctuation token">(</SPAN>document <SPAN class="operator token">=</SPAN><SPAN class="operator token">></SPAN> <SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">{</SPAN> name<SPAN class="punctuation token">:</SPAN> document<SPAN class="punctuation token">.</SPAN><SPAN class="token function">substr</SPAN><SPAN class="punctuation token">(</SPAN>document<SPAN class="punctuation token">.</SPAN><SPAN class="token function">lastIndexOf</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'/'</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="operator token">+</SPAN> <SPAN class="number token">1</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">,</SPAN> link<SPAN class="punctuation token">:</SPAN> document <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">.</SPAN><SPAN class="token function">filter</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">(</SPAN>obj<SPAN class="punctuation token">,</SPAN> index<SPAN class="punctuation token">,</SPAN> self<SPAN class="punctuation token">)</SPAN> <SPAN class="operator token">=</SPAN><SPAN class="operator token">></SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">return</SPAN> self<SPAN class="punctuation token">.</SPAN><SPAN class="token function">findIndex</SPAN><SPAN class="punctuation token">(</SPAN>t <SPAN class="operator token">=</SPAN><SPAN class="operator token">></SPAN> t<SPAN class="punctuation token">.</SPAN>forestryPlanId <SPAN class="operator token">===</SPAN> obj<SPAN class="punctuation token">.</SPAN>forestryPlanId<SPAN class="punctuation token">)</SPAN> <SPAN class="operator token">===</SPAN> index <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN><SPAN class="token function">onForestryPlansSelectChange</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>forestryPlanOptions<SPAN class="punctuation token">[</SPAN><SPAN class="number token">0</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">.</SPAN>forestryPlanId<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">const</SPAN> mapViewProperties<SPAN class="punctuation token">:</SPAN> esri<SPAN class="punctuation token">.</SPAN>MapViewProperties <SPAN class="operator token">=</SPAN> <SPAN class="punctuation token">{</SPAN> container<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>mapViewEl<SPAN class="punctuation token">.</SPAN>nativeElement<SPAN class="punctuation token">,</SPAN> map<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_webMap <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">const</SPAN> serverInfo <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">new</SPAN> <SPAN class="token class-name">ServerInfo</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> serverInfo<SPAN class="punctuation token">.</SPAN>server <SPAN class="operator token">=</SPAN> <SPAN class="string token">'https://www.arcgis.com'</SPAN><SPAN class="punctuation token">;</SPAN> serverInfo<SPAN class="punctuation token">.</SPAN>tokenServiceUrl <SPAN class="operator token">=</SPAN> <SPAN class="string token">'https://www.arcgis.com/sharing/rest/generateToken'</SPAN><SPAN class="punctuation token">;</SPAN> serverInfo<SPAN class="punctuation token">.</SPAN>shortLivedTokenValidity <SPAN class="operator token">=</SPAN> <SPAN class="number token">7200</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="comment token">//this parameter should be investigated and adjusted</SPAN> esriId<SPAN class="punctuation token">.</SPAN><SPAN class="token function">registerServers</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">[</SPAN>serverInfo<SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">const</SPAN> userInfo <SPAN class="operator token">=</SPAN> <SPAN class="punctuation token">{</SPAN> username<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>esryCredentials<SPAN class="punctuation token">.</SPAN>_userId<SPAN class="punctuation token">,</SPAN> password<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>esryCredentials<SPAN class="punctuation token">.</SPAN>_password<SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">;</SPAN> esriId<SPAN class="punctuation token">.</SPAN><SPAN class="token function">generateToken</SPAN><SPAN class="punctuation token">(</SPAN>serverInfo<SPAN class="punctuation token">,</SPAN> userInfo<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">.</SPAN><SPAN class="token function">then</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">(</SPAN>response<SPAN class="punctuation token">)</SPAN> <SPAN class="operator token">=</SPAN><SPAN class="operator token">></SPAN> <SPAN class="punctuation token">{</SPAN> response<SPAN class="punctuation token">.</SPAN>server <SPAN class="operator token">=</SPAN> serverInfo<SPAN class="punctuation token">.</SPAN>server<SPAN class="punctuation token">;</SPAN> response<SPAN class="punctuation token">.</SPAN>userId <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>esryCredentials<SPAN class="punctuation token">.</SPAN>_userId<SPAN class="punctuation token">;</SPAN> esriId<SPAN class="punctuation token">.</SPAN><SPAN class="token function">registerToken</SPAN><SPAN class="punctuation token">(</SPAN>response<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_view <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">new</SPAN> <SPAN class="token class-name">MapView</SPAN><SPAN class="punctuation token">(</SPAN>mapViewProperties<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_view<SPAN class="punctuation token">.</SPAN>popup<SPAN class="punctuation token">.</SPAN>autoOpenEnabled <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">false</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_view<SPAN class="punctuation token">.</SPAN><SPAN class="token function">when</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="operator token">=</SPAN><SPAN class="operator token">></SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_view<SPAN class="punctuation token">.</SPAN><SPAN class="token function">on</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">"click"</SPAN><SPAN class="punctuation token">,</SPAN> event <SPAN class="operator token">=</SPAN><SPAN class="operator token">></SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_view<SPAN class="punctuation token">.</SPAN><SPAN class="token function">hitTest</SPAN><SPAN class="punctuation token">(</SPAN>event<SPAN class="punctuation token">.</SPAN>screenPoint<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">.</SPAN><SPAN class="token function">then</SPAN><SPAN class="punctuation token">(</SPAN>response <SPAN class="operator token">=</SPAN><SPAN class="operator token">></SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">let</SPAN> result <SPAN class="operator token">=</SPAN> response<SPAN class="punctuation token">.</SPAN>results<SPAN class="punctuation token">[</SPAN><SPAN class="number token">0</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN><SPAN class="token function">highLightPolygonFunc</SPAN><SPAN class="punctuation token">(</SPAN>response<SPAN class="punctuation token">.</SPAN>results<SPAN class="punctuation token">[</SPAN><SPAN class="number token">0</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="operator token">?</SPAN><SPAN class="punctuation token">.</SPAN>graphic<SPAN class="punctuation token">)</SPAN> <SPAN class="keyword token">if</SPAN> <SPAN class="punctuation token">(</SPAN><SPAN class="operator token">!</SPAN>result<SPAN class="operator token">?</SPAN><SPAN class="punctuation token">.</SPAN>graphic<SPAN class="operator token">?</SPAN><SPAN class="punctuation token">.</SPAN>attributes<SPAN class="operator token">?</SPAN><SPAN class="punctuation token">.</SPAN>OBJECTID<SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>selectedDepartment <SPAN class="operator token">=</SPAN> <SPAN class="string token">''</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">return</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_featureLayer<SPAN class="punctuation token">.</SPAN><SPAN class="token function">queryFeatures</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">{</SPAN> outFields<SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="string token">"*"</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN> objectIds<SPAN class="punctuation token">:</SPAN> result<SPAN class="punctuation token">.</SPAN>graphic<SPAN class="operator token">?</SPAN><SPAN class="punctuation token">.</SPAN>attributes<SPAN class="operator token">?</SPAN><SPAN class="punctuation token">.</SPAN>OBJECTID <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">.</SPAN><SPAN class="token function">then</SPAN><SPAN class="punctuation token">(</SPAN>response <SPAN class="operator token">=</SPAN><SPAN class="operator token">></SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">const</SPAN> department <SPAN class="operator token">=</SPAN> response<SPAN class="punctuation token">.</SPAN>features<SPAN class="punctuation token">[</SPAN><SPAN class="number token">0</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="operator token">?</SPAN><SPAN class="punctuation token">.</SPAN>attributes<SPAN class="punctuation token">.</SPAN>Department <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>selectedDepartment <SPAN class="operator token">=</SPAN> department<SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">let</SPAN> fullscreen <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">new</SPAN> <SPAN class="token class-name">FullScreen</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">{</SPAN> view<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_view<SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">const</SPAN> toggle <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">new</SPAN> <SPAN class="token class-name">BaseMapToggle</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">{</SPAN> view<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_view<SPAN class="punctuation token">,</SPAN> nextBasemap<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">'hybrid'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_view<SPAN class="punctuation token">.</SPAN>ui<SPAN class="punctuation token">.</SPAN><SPAN class="token function">add</SPAN><SPAN class="punctuation token">(</SPAN>fullscreen<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'top-left'</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_view<SPAN class="punctuation token">.</SPAN>ui<SPAN class="punctuation token">.</SPAN><SPAN class="token function">add</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">"forestryPlansDiv"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"top-right"</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_view<SPAN class="punctuation token">.</SPAN>ui<SPAN class="punctuation token">.</SPAN><SPAN class="token function">add</SPAN><SPAN class="punctuation token">(</SPAN>toggle<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'top-right'</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_view<SPAN class="punctuation token">.</SPAN>ui<SPAN class="punctuation token">.</SPAN><SPAN class="token function">add</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'estateDataTable'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'bottom-leading'</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">await</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_view<SPAN class="punctuation token">.</SPAN><SPAN class="token function">when</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">return</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="keyword token">get</SPAN> <SPAN class="token function">estateConfigForMap</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN> EstateConfig <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">return</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>estateConfig<SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="keyword token">get</SPAN> <SPAN class="token function">esryCredentials</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN> EsryCredentaials <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">const</SPAN> credentials <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>estateConfig<SPAN class="punctuation token">.</SPAN>esryCredentials<SPAN class="punctuation token">;</SPAN> <SPAN class="keyword token">return</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="punctuation token">.</SPAN><SPAN class="punctuation token">.</SPAN><SPAN class="punctuation token">.</SPAN>credentials <SPAN class="punctuation token">}</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="token function">ngOnDestroy</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">void</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="keyword token">if</SPAN> <SPAN class="punctuation token">(</SPAN><SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_view<SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="comment token">// destroy the map view</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_view<SPAN class="punctuation token">.</SPAN>container <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">null</SPAN><SPAN class="punctuation token">;</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>
<SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>div</SPAN> <SPAN class="attr-name token">#mapViewNode</SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>div</SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>div</SPAN> <SPAN class="attr-name token">class</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>container<SPAN class="punctuation token">"</SPAN></SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>div</SPAN> <SPAN class="attr-name token">class</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>estate-table-container<SPAN class="punctuation token">"</SPAN></SPAN> <SPAN class="attr-name token">id</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>tableDiv<SPAN class="punctuation token">"</SPAN></SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>div</SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>div</SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>div</SPAN> <SPAN class="attr-name token">class</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>esri-widget my-estate-widget<SPAN class="punctuation token">"</SPAN></SPAN> <SPAN class="attr-name token">id</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>forestryPlansDiv<SPAN class="punctuation token">"</SPAN></SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>h2</SPAN><SPAN class="punctuation token">></SPAN></SPAN>Åtgärder<SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>h2</SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>select</SPAN> <SPAN class="attr-name token">class</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>esri-select<SPAN class="punctuation token">"</SPAN></SPAN> <SPAN class="attr-name token">(change)</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>onForestryPlansSelectChange($event.target.value)<SPAN class="punctuation token">"</SPAN></SPAN> <SPAN class="attr-name token">id</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>forestryPlansSelect<SPAN class="punctuation token">"</SPAN></SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>option</SPAN> <SPAN class="attr-name token">[value]</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>option.forestryPlanId<SPAN class="punctuation token">"</SPAN></SPAN> <SPAN class="attr-name token">*ngFor</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>let option of forestryPlanOptions<SPAN class="punctuation token">"</SPAN></SPAN><SPAN class="punctuation token">></SPAN></SPAN> {{ option.forestryPlanName }} <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>option</SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>select</SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>ul</SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>li</SPAN> <SPAN class="attr-name token">*ngFor</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>let doc of forestryPlanDocuments<SPAN class="punctuation token">"</SPAN></SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>a</SPAN> <SPAN class="attr-name token">href</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>{{doc.link}}<SPAN class="punctuation token">"</SPAN></SPAN> <SPAN class="attr-name token">target</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>_blank<SPAN class="punctuation token">"</SPAN></SPAN><SPAN class="punctuation token">></SPAN></SPAN><SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>i</SPAN> <SPAN class="attr-name token">class</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>material-icons<SPAN class="punctuation token">"</SPAN></SPAN><SPAN class="punctuation token">></SPAN></SPAN>file_present<SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>i</SPAN><SPAN class="punctuation token">></SPAN></SPAN>{{doc.name}}<SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>a</SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>li</SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>ul</SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="comment token"><!--<button class="esri-button" id="zoom">Zoom to selected feature</button>--></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>div</SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN>app-estate-data-table</SPAN> <SPAN class="attr-name token">[dataFields]</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>tableFields<SPAN class="punctuation token">"</SPAN></SPAN> <SPAN class="attr-name token">[tableData]</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>tableData<SPAN class="punctuation token">"</SPAN></SPAN> <SPAN class="attr-name token">[selectedDepartment]</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>selectedDepartment<SPAN class="punctuation token">"</SPAN></SPAN> <SPAN class="attr-name token">(selectedDepartmentChanged)</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>onSelectedDepartmentChanged($event)<SPAN class="punctuation token">"</SPAN></SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN>app-estate-data-table</SPAN><SPAN class="punctuation token">></SPAN></SPAN> <SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>
Evry Industries Sweden - I'm not familiar with Angular but it "should" work. In your app, how are you retrieving the data used in that table? I tested with webmap containing a regular feature layer where the field names contain åäö and it seems to work fine.
Are you overwriting the field names in your code? Could you share your app? Or the featurelayer you're using?
1) Version is 4.152) It's a custom html widgets but when I tried FeatureTable result was the same.3) I have two options:
<div #mapViewNode></div> <div class="container"> <div class="estate-table-container" id="tableDiv"></div> </div> <div class="esri-widget my-estate-widget" id="forestryPlansDiv"> <h2>Åtgärder</h2> <select class="esri-select" (change)="onForestryPlansSelectChange($event.target.value)" id="forestryPlansSelect"> <option [value]="option.forestryPlanId" *ngFor="let option of forestryPlanOptions"> {{ option.forestryPlanName }} </option> </select> <ul> <li *ngFor="let doc of forestryPlanDocuments"> <a href="{{doc.link}}" target="_blank"><i class="material-icons">file_present</i>{{doc.name}}</a> </li> </ul> <!--<button class="esri-button" id="zoom">Zoom to selected feature</button>--> </div> <app-estate-data-table [dataFields]="tableFields" [tableData]="tableData" [selectedDepartment]="selectedDepartment" (selectedDepartmentChanged)="onSelectedDepartmentChanged($event)"> </app-estate-data-table><SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>
Like html (id="forestryPlansDiv")And as angular component (app-estate-data-table). Html in the component:
<div id="estateDataTable" class="table-container"> <div class="table-wrapper" *ngIf="isDataPrepared(dataFields, tableData)"> <table class="estate-table"> <thead> <tr> ..........<SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>
But I guess it is the same for ArcGIS API.In scripts:
this._view.ui.add(fullscreen, 'top-left'); this._view.ui.add("forestryPlansDiv", "top-right"); this._view.ui.add(toggle, 'top-right'); this._view.ui.add('estateDataTable', 'bottom-leading');<SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>
and result the same for both:
Couple questions to help us get going:
1) What version of the ArcGIS API for JavaScript are you using?
2) What widget(s) are you using?
But those defined in html do not display correctly:
3) How is this defined in the html?
Angemeldete Mitglieder können Beiträge verfassen, Updates folgen und mehr. Neu hier? Registriere ein kostenloses Konto.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.