@mwater/visualization 5.3.1 → 5.4.0

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.
Files changed (309) hide show
  1. package/lib/ColorComponent.d.ts +1 -1
  2. package/lib/ColorComponent.js +2 -2
  3. package/lib/CustomColorsContext.d.ts +1 -1
  4. package/lib/DateRangeComponent.js +10 -10
  5. package/lib/LocaleContextInjector.js +2 -2
  6. package/lib/MWaterAddRelatedFormComponent.js +8 -8
  7. package/lib/MWaterAddRelatedIndicatorComponent.d.ts +0 -1
  8. package/lib/MWaterAddRelatedIndicatorComponent.js +6 -6
  9. package/lib/MWaterAssetSystemsListComponent.d.ts +3 -3
  10. package/lib/MWaterAssetSystemsListComponent.js +4 -3
  11. package/lib/MWaterCompleteTableSelectComponent.d.ts +33 -34
  12. package/lib/MWaterCompleteTableSelectComponent.js +39 -38
  13. package/lib/MWaterCustomTablesetListComponent.d.ts +3 -3
  14. package/lib/MWaterCustomTablesetListComponent.js +5 -4
  15. package/lib/MWaterGlobalFiltersComponent.js +4 -4
  16. package/lib/MWaterLoaderComponent.d.ts +5 -5
  17. package/lib/MWaterLoaderComponent.js +1 -1
  18. package/lib/MWaterMetricsTableListComponent.d.ts +3 -3
  19. package/lib/MWaterMetricsTableListComponent.js +4 -3
  20. package/lib/MWaterResponsesFilterComponent.js +4 -4
  21. package/lib/MWaterTableSelectComponent.d.ts +1 -1
  22. package/lib/MWaterTableSelectComponent.js +5 -5
  23. package/lib/PopoverComponent.d.ts +4 -4
  24. package/lib/UIComponents.d.ts +5 -2
  25. package/lib/axes/AxisBuilder.js +42 -43
  26. package/lib/axes/AxisColorEditorComponent.d.ts +4 -4
  27. package/lib/axes/AxisColorEditorComponent.js +25 -60
  28. package/lib/axes/AxisComponent.d.ts +2 -3
  29. package/lib/axes/AxisComponent.js +20 -20
  30. package/lib/axes/BinsComponent.js +6 -6
  31. package/lib/axes/CategoryMapComponent.d.ts +2 -1
  32. package/lib/axes/CategoryMapComponent.js +7 -5
  33. package/lib/axes/ColorPaletteCollectionComponent.js +9 -9
  34. package/lib/axes/RangesComponent.js +12 -12
  35. package/lib/compressJson.js +1 -1
  36. package/lib/dashboards/DashboardComponent.d.ts +2 -0
  37. package/lib/dashboards/DashboardComponent.js +15 -8
  38. package/lib/dashboards/DashboardUtils.js +2 -3
  39. package/lib/dashboards/DashboardViewComponent.js +4 -4
  40. package/lib/dashboards/FontStyleEditor.js +8 -8
  41. package/lib/dashboards/LayoutOptionsComponent.js +102 -75
  42. package/lib/dashboards/SettingsModalComponent.d.ts +3 -4
  43. package/lib/dashboards/SettingsModalComponent.js +54 -40
  44. package/lib/dashboards/WidgetComponent.d.ts +0 -1
  45. package/lib/dashboards/WidgetComponent.js +1 -2
  46. package/lib/dashboards/layoutOptions.js +11 -7
  47. package/lib/datagrids/DatagridComponent.d.ts +1 -8
  48. package/lib/datagrids/DatagridComponent.js +14 -13
  49. package/lib/datagrids/DatagridDesignerComponent.js +18 -18
  50. package/lib/datagrids/DatagridQueryBuilder.d.ts +4 -4
  51. package/lib/datagrids/DatagridUtils.js +2 -2
  52. package/lib/datagrids/DatagridViewComponent.js +4 -4
  53. package/lib/datagrids/ExprCellComponent.js +1 -1
  54. package/lib/datagrids/FindReplaceModalComponent.js +17 -17
  55. package/lib/datagrids/OrderBysDesignerComponent.js +2 -2
  56. package/lib/languages.js +2 -2
  57. package/lib/layouts/DecoratedBlockComponent.js +2 -2
  58. package/lib/layouts/blocks/BlocksDisplayComponent.js +13 -13
  59. package/lib/layouts/blocks/BlocksLayoutManager.d.ts +2 -1
  60. package/lib/layouts/blocks/ClipboardPaletteItemComponent.js +3 -3
  61. package/lib/layouts/blocks/HorizontalBlockComponent.js +3 -3
  62. package/lib/layouts/blocks/blockUtils.js +4 -5
  63. package/lib/mWaterLoader.js +1 -1
  64. package/lib/maps/AddLayerComponent.js +13 -13
  65. package/lib/maps/AdminScopeAndDetailLevelComponent.js +5 -5
  66. package/lib/maps/BaseLayerDesignerComponent.js +2 -2
  67. package/lib/maps/BufferLayer.js +7 -7
  68. package/lib/maps/BufferLayerDesignerComponent.js +8 -8
  69. package/lib/maps/ChoroplethLayer.js +6 -6
  70. package/lib/maps/ChoroplethLayerDesigner.js +16 -16
  71. package/lib/maps/ClusterLayer.js +3 -3
  72. package/lib/maps/ClusterLayerDesignerComponent.js +5 -5
  73. package/lib/maps/DetailLevelSelectComponent.d.ts +11 -1
  74. package/lib/maps/DetailLevelSelectComponent.js +3 -3
  75. package/lib/maps/DirectMapDataSource.js +1 -2
  76. package/lib/maps/EditHoverOver.js +7 -5
  77. package/lib/maps/EditPopupComponent.js +2 -2
  78. package/lib/maps/GridLayer.js +5 -5
  79. package/lib/maps/GridLayerDesigner.js +15 -15
  80. package/lib/maps/LayerSwitcherComponent.js +1 -2
  81. package/lib/maps/LeafletMapComponent.d.ts +1 -1
  82. package/lib/maps/LeafletMapComponent.js +1 -1
  83. package/lib/maps/LegendComponent.js +1 -1
  84. package/lib/maps/MWaterServerLayer.d.ts +0 -1
  85. package/lib/maps/MWaterServerLayer.js +1 -1
  86. package/lib/maps/MapComponent.js +8 -8
  87. package/lib/maps/MapControlComponent.js +1 -1
  88. package/lib/maps/MapDesignerComponent.js +16 -16
  89. package/lib/maps/MapFiltersDesignerComponent.js +2 -2
  90. package/lib/maps/MapLayerViewDesignerComponent.js +8 -8
  91. package/lib/maps/MapUtils.js +6 -7
  92. package/lib/maps/MapViewComponent.js +1 -2
  93. package/lib/maps/MarkerSymbolSelectComponent.js +3 -3
  94. package/lib/maps/MarkersLayer.js +6 -7
  95. package/lib/maps/MarkersLayerDesignerComponent.js +22 -22
  96. package/lib/maps/PopupFilterJoinsEditComponent.js +4 -4
  97. package/lib/maps/PopupFilterJoinsUtils.js +2 -3
  98. package/lib/maps/RasterMapViewComponent.d.ts +3 -3
  99. package/lib/maps/RasterMapViewComponent.js +4 -4
  100. package/lib/maps/RegionSelectComponent.d.ts +1 -3
  101. package/lib/maps/RegionSelectComponent.js +1 -2
  102. package/lib/maps/ScopeAndDetailLevelComponent.js +3 -3
  103. package/lib/maps/TileUrlLayer.d.ts +1 -1
  104. package/lib/maps/TileUrlLayer.js +3 -3
  105. package/lib/maps/VectorMapViewComponent.js +6 -7
  106. package/lib/maps/ZoomLevelsComponent.js +5 -5
  107. package/lib/maps/mapSymbols.d.ts +1 -1
  108. package/lib/maps/mapSymbols.js +51 -50
  109. package/lib/maps/mapboxUtils.js +2 -3
  110. package/lib/maps/maps.d.ts +0 -1
  111. package/lib/maps/vectorMaps.js +14 -15
  112. package/lib/memoizedDebounce.js +1 -2
  113. package/lib/quickfilter/DateExprComponent.d.ts +4 -0
  114. package/lib/quickfilter/DateExprComponent.js +17 -16
  115. package/lib/quickfilter/IdArrayQuickfilterComponent.js +1 -1
  116. package/lib/quickfilter/QuickfilterUtils.js +1 -2
  117. package/lib/quickfilter/QuickfiltersComponent.d.ts +23 -2
  118. package/lib/quickfilter/QuickfiltersComponent.js +2 -2
  119. package/lib/quickfilter/QuickfiltersDesignComponent.js +8 -8
  120. package/lib/quickfilter/TextLiteralComponent.d.ts +35 -2
  121. package/lib/quickfilter/TextLiteralComponent.js +6 -6
  122. package/lib/richtext/DropdownPaletteItem.js +1 -1
  123. package/lib/richtext/ExprItemsHtmlConverter.js +8 -10
  124. package/lib/richtext/FontColorPaletteItem.js +7 -7
  125. package/lib/richtext/ItemsHtmlConverter.js +0 -1
  126. package/lib/richtext/RichTextComponent.d.ts +1 -0
  127. package/lib/richtext/RichTextComponent.js +33 -29
  128. package/lib/valueFormatter.js +18 -19
  129. package/lib/wellknown.js +2 -3
  130. package/lib/widgets/IFrameWidgetComponent.d.ts +9 -1
  131. package/lib/widgets/IFrameWidgetComponent.js +3 -3
  132. package/lib/widgets/ImageUploaderComponent.js +5 -5
  133. package/lib/widgets/ImageWidget.js +2 -2
  134. package/lib/widgets/ImageWidgetComponent.d.ts +9 -1
  135. package/lib/widgets/ImageWidgetComponent.js +20 -20
  136. package/lib/widgets/ImagelistCarouselComponent.js +1 -1
  137. package/lib/widgets/MapWidget.js +2 -2
  138. package/lib/widgets/MarkdownWidget.d.ts +1 -1
  139. package/lib/widgets/MarkdownWidget.js +1 -1
  140. package/lib/widgets/TOCWidget.js +11 -12
  141. package/lib/widgets/WidgetScopesViewComponent.js +1 -1
  142. package/lib/widgets/charts/Chart.js +1 -1
  143. package/lib/widgets/charts/ChartViewComponent.js +9 -9
  144. package/lib/widgets/charts/ChartWidgetComponent.js +4 -4
  145. package/lib/widgets/charts/calendar/CalendarChart.js +4 -4
  146. package/lib/widgets/charts/calendar/CalendarChartDesignerComponent.js +7 -7
  147. package/lib/widgets/charts/calendar/CalendarChartViewComponent.js +3 -3
  148. package/lib/widgets/charts/imagemosaic/ImageMosaicChart.d.ts +18 -5
  149. package/lib/widgets/charts/imagemosaic/ImageMosaicChart.js +3 -4
  150. package/lib/widgets/charts/imagemosaic/ImageMosaicChartDesignerComponent.js +5 -5
  151. package/lib/widgets/charts/imagemosaic/ImageMosaicChartViewComponent.d.ts +5 -19
  152. package/lib/widgets/charts/imagemosaic/ImageMosaicChartViewComponent.js +66 -70
  153. package/lib/widgets/charts/imagemosaic/ImagePopupComponent.js +1 -1
  154. package/lib/widgets/charts/layered/LayeredChart.d.ts +1 -1
  155. package/lib/widgets/charts/layered/LayeredChart.js +9 -9
  156. package/lib/widgets/charts/layered/LayeredChartCompiler.d.ts +8 -8
  157. package/lib/widgets/charts/layered/LayeredChartCompiler.js +15 -15
  158. package/lib/widgets/charts/layered/LayeredChartDesignerComponent.js +33 -33
  159. package/lib/widgets/charts/layered/LayeredChartLayerDesignerComponent.js +16 -16
  160. package/lib/widgets/charts/layered/LayeredChartUtils.js +1 -2
  161. package/lib/widgets/charts/layered/LayeredChartViewComponent.js +4 -4
  162. package/lib/widgets/charts/pivot/IntersectionDesignerComponent.js +18 -17
  163. package/lib/widgets/charts/pivot/PivotChart.d.ts +1 -1
  164. package/lib/widgets/charts/pivot/PivotChart.js +12 -4
  165. package/lib/widgets/charts/pivot/PivotChartDesignerComponent.d.ts +5 -5
  166. package/lib/widgets/charts/pivot/PivotChartDesignerComponent.js +10 -10
  167. package/lib/widgets/charts/pivot/PivotChartLayoutComponent.js +5 -5
  168. package/lib/widgets/charts/pivot/PivotChartQueryBuilder.d.ts +1 -1
  169. package/lib/widgets/charts/pivot/PivotChartQueryBuilder.js +5 -6
  170. package/lib/widgets/charts/pivot/PivotChartUtils.js +11 -12
  171. package/lib/widgets/charts/pivot/PivotChartViewComponent.js +9 -9
  172. package/lib/widgets/charts/pivot/SegmentDesignerComponent.d.ts +30 -30
  173. package/lib/widgets/charts/pivot/SegmentDesignerComponent.js +28 -26
  174. package/lib/widgets/charts/table/OrderingsComponent.js +2 -2
  175. package/lib/widgets/charts/table/TableChart.js +3 -3
  176. package/lib/widgets/charts/table/TableChartDesignerComponent.js +17 -17
  177. package/lib/widgets/charts/table/TableChartViewComponent.js +3 -3
  178. package/lib/widgets/text/ExprInsertModalComponent.d.ts +2 -3
  179. package/lib/widgets/text/ExprInsertModalComponent.js +2 -14
  180. package/lib/widgets/text/ExprItemEditorComponent.js +4 -4
  181. package/lib/widgets/text/ExprUpdateModalComponent.d.ts +2 -3
  182. package/lib/widgets/text/ExprUpdateModalComponent.js +3 -15
  183. package/lib/widgets/text/TextComponent.js +3 -3
  184. package/lib/widgets/text/TextWidget.d.ts +1 -1
  185. package/lib/widgets/text/TextWidgetComponent.js +11 -11
  186. package/lib/widgets/text/TextWidgetDesign.d.ts +2 -1
  187. package/lib/widgets/text/TextWidgetDesign.js +1 -2
  188. package/package.json +3 -3
  189. package/src/ColorComponent.tsx +2 -2
  190. package/src/DateRangeComponent.ts +10 -10
  191. package/src/LocaleContextInjector.tsx +1 -1
  192. package/src/MWaterAddRelatedFormComponent.ts +7 -7
  193. package/src/MWaterAddRelatedIndicatorComponent.ts +5 -5
  194. package/src/MWaterAssetSystemsListComponent.tsx +3 -3
  195. package/src/MWaterCompleteTableSelectComponent.tsx +36 -35
  196. package/src/MWaterCustomTablesetListComponent.tsx +4 -4
  197. package/src/MWaterGlobalFiltersComponent.ts +4 -4
  198. package/src/MWaterLoaderComponent.ts +1 -1
  199. package/src/MWaterMetricsTableListComponent.tsx +3 -3
  200. package/src/MWaterResponsesFilterComponent.ts +6 -6
  201. package/src/MWaterTableSelectComponent.tsx +6 -7
  202. package/src/axes/AxisBuilder.ts +42 -44
  203. package/src/axes/AxisColorEditorComponent.tsx +178 -0
  204. package/src/axes/AxisComponent.ts +20 -20
  205. package/src/axes/BinsComponent.tsx +6 -6
  206. package/src/axes/CategoryMapComponent.ts +10 -10
  207. package/src/axes/ColorPaletteCollectionComponent.tsx +3 -3
  208. package/src/axes/RangesComponent.ts +14 -14
  209. package/src/dashboards/DashboardComponent.tsx +21 -9
  210. package/src/dashboards/DashboardViewComponent.tsx +3 -3
  211. package/src/dashboards/FontStyleEditor.tsx +8 -8
  212. package/src/dashboards/LayoutOptionsComponent.tsx +74 -74
  213. package/src/dashboards/SettingsModalComponent.tsx +134 -107
  214. package/src/dashboards/layoutOptions.tsx +5 -1
  215. package/src/datagrids/DatagridComponent.ts +65 -62
  216. package/src/datagrids/DatagridDesignerComponent.tsx +17 -17
  217. package/src/datagrids/DatagridUtils.ts +2 -2
  218. package/src/datagrids/DatagridViewComponent.ts +3 -3
  219. package/src/datagrids/ExprCellComponent.ts +1 -1
  220. package/src/datagrids/FindReplaceModalComponent.ts +13 -13
  221. package/src/datagrids/OrderBysDesignerComponent.tsx +2 -2
  222. package/src/globals.d.ts +7 -1
  223. package/src/languages.ts +2 -2
  224. package/src/layouts/blocks/BlocksDisplayComponent.tsx +13 -13
  225. package/src/layouts/blocks/BlocksLayoutManager.ts +3 -2
  226. package/src/layouts/blocks/ClipboardPaletteItemComponent.ts +3 -3
  227. package/src/maps/AddLayerComponent.ts +13 -13
  228. package/src/maps/AdminScopeAndDetailLevelComponent.ts +5 -5
  229. package/src/maps/BaseLayerDesignerComponent.ts +8 -8
  230. package/src/maps/BufferLayer.ts +5 -5
  231. package/src/maps/BufferLayerDesignerComponent.ts +8 -8
  232. package/src/maps/ChoroplethLayer.ts +3 -3
  233. package/src/maps/ChoroplethLayerDesigner.tsx +16 -16
  234. package/src/maps/ClusterLayer.ts +3 -3
  235. package/src/maps/ClusterLayerDesignerComponent.ts +5 -5
  236. package/src/maps/DetailLevelSelectComponent.ts +3 -3
  237. package/src/maps/EditHoverOver.tsx +5 -5
  238. package/src/maps/EditPopupComponent.ts +2 -2
  239. package/src/maps/GridLayer.ts +5 -5
  240. package/src/maps/GridLayerDesigner.tsx +15 -16
  241. package/src/maps/MWaterServerLayer.ts +1 -1
  242. package/src/maps/MapComponent.ts +6 -6
  243. package/src/maps/MapControlComponent.ts +1 -1
  244. package/src/maps/MapDesignerComponent.tsx +20 -20
  245. package/src/maps/MapFiltersDesignerComponent.tsx +3 -3
  246. package/src/maps/MapLayerViewDesignerComponent.ts +9 -9
  247. package/src/maps/MarkerSymbolSelectComponent.ts +4 -5
  248. package/src/maps/MarkersLayerDesignerComponent.ts +22 -22
  249. package/src/maps/PopupFilterJoinsEditComponent.ts +4 -4
  250. package/src/maps/RasterMapViewComponent.ts +2 -2
  251. package/src/maps/RegionSelectComponent.ts +1 -2
  252. package/src/maps/ScopeAndDetailLevelComponent.ts +3 -3
  253. package/src/maps/TileUrlLayer.tsx +3 -3
  254. package/src/maps/VectorMapViewComponent.tsx +5 -5
  255. package/src/maps/ZoomLevelsComponent.ts +6 -6
  256. package/src/maps/mapSymbols.ts +49 -49
  257. package/src/maps/vectorMaps.tsx +2 -2
  258. package/src/quickfilter/DateExprComponent.ts +19 -18
  259. package/src/quickfilter/IdArrayQuickfilterComponent.ts +1 -1
  260. package/src/quickfilter/QuickfiltersComponent.ts +1 -1
  261. package/src/quickfilter/QuickfiltersDesignComponent.tsx +9 -9
  262. package/src/quickfilter/TextLiteralComponent.ts +4 -4
  263. package/src/richtext/DropdownPaletteItem.tsx +1 -1
  264. package/src/richtext/ExprItemsHtmlConverter.ts +8 -10
  265. package/src/richtext/ItemsHtmlConverter.ts +0 -1
  266. package/src/richtext/RichTextComponent.tsx +31 -31
  267. package/src/valueFormatter.ts +14 -14
  268. package/src/widgets/IFrameWidgetComponent.ts +3 -3
  269. package/src/widgets/ImageUploaderComponent.tsx +5 -5
  270. package/src/widgets/ImageWidget.ts +2 -2
  271. package/src/widgets/ImageWidgetComponent.ts +26 -26
  272. package/src/widgets/ImagelistCarouselComponent.ts +2 -2
  273. package/src/widgets/MapWidget.ts +1 -1
  274. package/src/widgets/MarkdownWidget.ts +1 -1
  275. package/src/widgets/TOCWidget.ts +13 -14
  276. package/src/widgets/WidgetScopesViewComponent.ts +1 -1
  277. package/src/widgets/charts/Chart.ts +1 -1
  278. package/src/widgets/charts/ChartViewComponent.ts +4 -4
  279. package/src/widgets/charts/ChartWidgetComponent.tsx +3 -3
  280. package/src/widgets/charts/calendar/CalendarChart.ts +4 -4
  281. package/src/widgets/charts/calendar/CalendarChartDesignerComponent.ts +7 -7
  282. package/src/widgets/charts/calendar/CalendarChartViewComponent.tsx +2 -2
  283. package/src/widgets/charts/imagemosaic/ImageMosaicChart.ts +25 -8
  284. package/src/widgets/charts/imagemosaic/ImageMosaicChartDesignerComponent.ts +5 -5
  285. package/src/widgets/charts/imagemosaic/ImageMosaicChartViewComponent.tsx +128 -0
  286. package/src/widgets/charts/layered/LayeredChart.ts +9 -9
  287. package/src/widgets/charts/layered/LayeredChartCompiler.ts +45 -45
  288. package/src/widgets/charts/layered/LayeredChartDesignerComponent.tsx +39 -39
  289. package/src/widgets/charts/layered/LayeredChartLayerDesignerComponent.tsx +18 -19
  290. package/src/widgets/charts/layered/LayeredChartViewComponent.ts +1 -1
  291. package/src/widgets/charts/pivot/IntersectionDesignerComponent.tsx +22 -23
  292. package/src/widgets/charts/pivot/PivotChart.ts +15 -5
  293. package/src/widgets/charts/pivot/PivotChartDesignerComponent.tsx +12 -12
  294. package/src/widgets/charts/pivot/PivotChartLayoutComponent.tsx +5 -5
  295. package/src/widgets/charts/pivot/PivotChartQueryBuilder.ts +7 -8
  296. package/src/widgets/charts/pivot/PivotChartViewComponent.tsx +6 -6
  297. package/src/widgets/charts/pivot/SegmentDesignerComponent.tsx +30 -30
  298. package/src/widgets/charts/table/OrderingsComponent.tsx +2 -2
  299. package/src/widgets/charts/table/TableChart.ts +3 -3
  300. package/src/widgets/charts/table/TableChartDesignerComponent.ts +16 -16
  301. package/src/widgets/charts/table/TableChartViewComponent.ts +2 -2
  302. package/src/widgets/text/{ExprInsertModalComponent.ts → ExprInsertModalComponent.tsx} +18 -20
  303. package/src/widgets/text/ExprItemEditorComponent.tsx +4 -4
  304. package/src/widgets/text/{ExprUpdateModalComponent.ts → ExprUpdateModalComponent.tsx} +18 -20
  305. package/src/widgets/text/TextComponent.tsx +2 -2
  306. package/src/widgets/text/TextWidgetComponent.tsx +10 -10
  307. package/src/widgets/text/TextWidgetDesign.ts +3 -1
  308. package/src/axes/AxisColorEditorComponent.ts +0 -210
  309. package/src/widgets/charts/imagemosaic/ImageMosaicChartViewComponent.ts +0 -117
@@ -99,33 +99,33 @@ class GridLayerDesigner extends react_1.default.Component {
99
99
  };
100
100
  renderShape() {
101
101
  return (react_1.default.createElement("div", { className: "mb-3" },
102
- react_1.default.createElement("label", { className: "text-muted" }, "Grid Type"),
102
+ react_1.default.createElement("label", { className: "text-muted" }, T `Grid Type`),
103
103
  react_1.default.createElement("div", { style: { marginLeft: 10 } },
104
104
  react_1.default.createElement(ui.Toggle, { allowReset: false, value: this.props.design.shape, onChange: this.handleShapeChange, size: "sm", options: [
105
- { value: "hex", label: "Hexagonal" },
106
- { value: "square", label: "Square" }
105
+ { value: "hex", label: T `Hexagonal` },
106
+ { value: "square", label: T `Square` }
107
107
  ] }))));
108
108
  }
109
109
  renderSize() {
110
110
  return (react_1.default.createElement("div", { className: "mb-3" },
111
- react_1.default.createElement("label", { className: "text-muted" }, "Size"),
111
+ react_1.default.createElement("label", { className: "text-muted" }, T `Size`),
112
112
  react_1.default.createElement("div", { style: { marginLeft: 10 } },
113
113
  react_1.default.createElement("div", { style: { display: "inline-block" } },
114
114
  react_1.default.createElement(ui.NumberInput, { decimal: true, value: this.props.design.size, onChange: this.handleSizeChange })),
115
115
  "\u00A0",
116
116
  react_1.default.createElement("div", { style: { display: "inline-block" } },
117
117
  react_1.default.createElement(ui.Toggle, { allowReset: false, value: this.props.design.sizeUnits, onChange: this.handleSizeUnitsChange, size: "sm", options: [
118
- { value: "pixels", label: "Pixels" },
119
- { value: "meters", label: "Meters (approximate)" }
118
+ { value: "pixels", label: T `Pixels` },
119
+ { value: "meters", label: T `Meters (approximate)` }
120
120
  ] })),
121
121
  "\u00A0",
122
- react_1.default.createElement(PopoverHelpComponent_1.default, { placement: "bottom" }, "Pixel grids always appear to be the same size when zoomed. Meters are for a fixed-size grid and have limits on how far the user can zoom out."))));
122
+ react_1.default.createElement(PopoverHelpComponent_1.default, { placement: "bottom" }, T `Pixel grids always appear to be the same size when zoomed. Meters are for a fixed-size grid and have limits on how far the user can zoom out.`))));
123
123
  }
124
124
  renderTable() {
125
125
  return (react_1.default.createElement("div", { className: "mb-3" },
126
126
  react_1.default.createElement("label", { className: "text-muted" },
127
127
  react_1.default.createElement("i", { className: "fa fa-database" }),
128
- " Data Source"),
128
+ T ` Data Source`),
129
129
  react_1.default.createElement(expressions_ui_2.TableSelectComponent, { schema: this.props.schema, value: this.props.design.table, onChange: this.handleTableChange, filter: this.props.design.filter, onFilterChange: this.handleFilterChange })));
130
130
  }
131
131
  renderGeometryExpr() {
@@ -136,7 +136,7 @@ class GridLayerDesigner extends react_1.default.Component {
136
136
  return (react_1.default.createElement("div", { className: "mb-3" },
137
137
  react_1.default.createElement("label", { className: "text-muted" },
138
138
  react_1.default.createElement("i", { className: "fas fa-map-marker-alt" }),
139
- " Location"),
139
+ T ` Location`),
140
140
  react_1.default.createElement("div", { style: { marginLeft: 8 } },
141
141
  react_1.default.createElement(expressions_ui_1.ExprComponent, { schema: this.props.schema, dataSource: this.props.dataSource, onChange: this.handleGeometryExprChange, table: this.props.design.table, types: ["geometry"], value: this.props.design.geometryExpr }))));
142
142
  }
@@ -154,7 +154,7 @@ class GridLayerDesigner extends react_1.default.Component {
154
154
  }
155
155
  }
156
156
  const table = this.props.design.table;
157
- return R("div", null, R("div", { className: "mb-3" }, R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }), "Color By Data"), R(AxisComponent_1.default, {
157
+ return R("div", null, R("div", { className: "mb-3" }, R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }), T `Color By Data`), R(AxisComponent_1.default, {
158
158
  schema: this.props.schema,
159
159
  dataSource: this.props.dataSource,
160
160
  table: this.props.design.table,
@@ -168,7 +168,7 @@ class GridLayerDesigner extends react_1.default.Component {
168
168
  })));
169
169
  }
170
170
  renderFillOpacity() {
171
- return R("div", { className: "mb-3" }, R("label", { className: "text-muted" }, "Fill Opacity (%)"), ": ", R(rc_slider_1.default, {
171
+ return R("div", { className: "mb-3" }, R("label", { className: "text-muted" }, T `Fill Opacity (%)`), ": ", R(rc_slider_1.default, {
172
172
  min: 0,
173
173
  max: 100,
174
174
  step: 1,
@@ -179,11 +179,11 @@ class GridLayerDesigner extends react_1.default.Component {
179
179
  }
180
180
  renderBorderStyle() {
181
181
  return (react_1.default.createElement("div", { className: "mb-3" },
182
- react_1.default.createElement("label", { className: "text-muted" }, "Border Style"),
182
+ react_1.default.createElement("label", { className: "text-muted" }, T `Border Style`),
183
183
  react_1.default.createElement("div", { style: { marginLeft: 10 } },
184
184
  react_1.default.createElement(ui.Toggle, { allowReset: false, value: this.props.design.borderStyle, onChange: this.handleBorderStyleChange, size: "sm", options: [
185
- { value: "none", label: "None" },
186
- { value: "color", label: "Line" }
185
+ { value: "none", label: T `None` },
186
+ { value: "color", label: T `Line` }
187
187
  ] }))));
188
188
  }
189
189
  renderFilter() {
@@ -191,7 +191,7 @@ class GridLayerDesigner extends react_1.default.Component {
191
191
  if (!this.props.design.table) {
192
192
  return null;
193
193
  }
194
- return R("div", { className: "mb-3" }, R("label", { className: "text-muted" }, R("span", { className: "fas fa-filter" }), " Filters"), R("div", { style: { marginLeft: 8 } }, R(expressions_ui_1.FilterExprComponent, {
194
+ return R("div", { className: "mb-3" }, R("label", { className: "text-muted" }, R("span", { className: "fas fa-filter" }), T ` Filters`), R("div", { style: { marginLeft: 8 } }, R(expressions_ui_1.FilterExprComponent, {
195
195
  schema: this.props.schema,
196
196
  dataSource: this.props.dataSource,
197
197
  onChange: this.handleFilterChange,
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.LayerSwitcherComponent = void 0;
29
+ exports.LayerSwitcherComponent = LayerSwitcherComponent;
30
30
  const immer_1 = __importDefault(require("immer"));
31
31
  const react_1 = __importStar(require("react"));
32
32
  /** Component to switch layers on a map */
@@ -74,7 +74,6 @@ function LayerSwitcherComponent(props) {
74
74
  react_1.default.createElement("i", { className: "fas fa-layer-group fa-fw" })),
75
75
  dropdownOpen ? (react_1.default.createElement("div", { style: { backgroundColor: "white", padding: 5, textAlign: "left" } }, props.design.layerViews.map(renderLayerView))) : null));
76
76
  }
77
- exports.LayerSwitcherComponent = LayerSwitcherComponent;
78
77
  /** Hook for click outside catching */
79
78
  function useClickOutside(onClickOut) {
80
79
  const node = (0, react_1.useRef)(null);
@@ -132,7 +132,7 @@ export default class LeafletMapComponent extends Component<Props> {
132
132
  componentDidMount(): any;
133
133
  componentDidUpdate(prevProps: any): any;
134
134
  componentWillUnmount(): L.Map;
135
- openPopup(options: any): Element;
135
+ openPopup(options: any): any;
136
136
  updateMap(prevProps?: Props): any;
137
137
  render(): React.DetailedReactHTMLElement<{
138
138
  className: string | undefined;
@@ -141,7 +141,7 @@ class LeafletMapComponent extends react_1.Component {
141
141
  dragging: this.props.dragging,
142
142
  touchZoom: this.props.touchZoom,
143
143
  scrollWheelZoom: this.props.scrollWheelZoom,
144
- minZoom: 1,
144
+ minZoom: 1, // Bing doesn't allow going to zero
145
145
  keyboard: this.props.keyboard
146
146
  };
147
147
  // Must not be null, or will not zoom
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.default = LegendComponent;
6
7
  const lodash_1 = __importDefault(require("lodash"));
7
8
  const react_1 = __importDefault(require("react"));
8
9
  const LayerFactory_1 = __importDefault(require("./LayerFactory"));
@@ -71,4 +72,3 @@ function LegendComponent(props) {
71
72
  react_1.default.createElement("div", { key: "hide", style: hideStyle, onClick: props.onHide },
72
73
  react_1.default.createElement("i", { className: "fa fa-angle-double-right" }))));
73
74
  }
74
- exports.default = LegendComponent;
@@ -1,4 +1,3 @@
1
- /// <reference types="jquery" />
2
1
  import Layer from "./Layer";
3
2
  import React from "react";
4
3
  import { Schema } from "@mwater/expressions";
@@ -78,7 +78,7 @@ exports.default = MWaterServerLayer;
78
78
  class LoadingLegend extends react_1.default.Component {
79
79
  constructor(props) {
80
80
  super(props);
81
- this.state = { html: "Loading..." };
81
+ this.state = { html: T `Loading...` };
82
82
  }
83
83
  componentDidMount() {
84
84
  return jquery_1.default.get(this.props.url).done((data) => {
@@ -15,15 +15,15 @@ const PopoverHelpComponent_1 = __importDefault(require("@mwater/react-library/li
15
15
  const QuickfilterCompiler_1 = __importDefault(require("../quickfilter/QuickfilterCompiler"));
16
16
  const QuickfiltersComponent_1 = __importDefault(require("../quickfilter/QuickfiltersComponent"));
17
17
  const MapUtils_1 = require("./MapUtils");
18
- const contexts_1 = require("@mwater/expressions-ui/lib/contexts");
18
+ const expressions_ui_1 = require("@mwater/expressions-ui");
19
19
  /** Map with designer on right */
20
20
  class MapComponent extends react_1.default.Component {
21
- static contextType = contexts_1.LocaleContext;
21
+ static contextType = expressions_ui_1.LocaleContext;
22
22
  constructor(props) {
23
23
  super(props);
24
24
  this.state = {
25
25
  undoStack: new UndoStack_1.default().push(props.design),
26
- transientDesign: props.design,
26
+ transientDesign: props.design, // Temporary design for read-only maps
27
27
  zoomLocked: true,
28
28
  quickfiltersValues: props.quickfiltersValues ?? null,
29
29
  hideQuickfilters: false
@@ -60,22 +60,22 @@ class MapComponent extends react_1.default.Component {
60
60
  R("a", { key: "lock", className: "btn btn-link btn-sm", onClick: this.handleZoomLockClick }, R("span", {
61
61
  className: `fa ${this.state.zoomLocked ? "fa-lock red" : "fa-unlock green"}`,
62
62
  style: { marginRight: 5 }
63
- }), R(PopoverHelpComponent_1.default, { placement: "bottom" }, "Changes to zoom level wont be saved in locked mode")),
63
+ }), R(PopoverHelpComponent_1.default, { placement: "bottom" }, T `Changes to zoom level wont be saved in locked mode`)),
64
64
  R("a", {
65
65
  key: "undo",
66
66
  className: `btn btn-link btn-sm ${!this.state.undoStack.canUndo() ? "disabled" : ""}`,
67
67
  onClick: this.handleUndo
68
- }, R("span", { className: "fas fa-caret-left" }), R("span", { className: "hide-600px" }, " Undo")),
68
+ }, R("span", { className: "fas fa-caret-left" }), R("span", { className: "hide-600px" }, T ` Undo`)),
69
69
  " ",
70
70
  R("a", {
71
71
  key: "redo",
72
72
  className: `btn btn-link btn-sm ${!this.state.undoStack.canRedo() ? "disabled" : ""}`,
73
73
  onClick: this.handleRedo
74
- }, R("span", { className: "fas fa-caret-right" }), R("span", { className: "hide-600px" }, " Redo"))
74
+ }, R("span", { className: "fas fa-caret-right" }), R("span", { className: "hide-600px" }, T ` Redo`))
75
75
  ]
76
76
  : undefined, this.state.hideQuickfilters && this.props.design.quickfilters && this.props.design.quickfilters.length > 0
77
- ? R("a", { key: "showQuickfilters", className: "btn btn-link btn-sm", onClick: this.handleShowQuickfilters }, R("span", { className: "fa fa-filter" }), R("span", { className: "hide-600px" }, " Show Quickfilters"))
78
- : undefined, this.props.extraTitleButtonsElem, R("a", { key: "toggleDesign", className: "btn btn-link btn-sm", onClick: this.handleToggleDesignPanel, alt: "Toggle design panel" }, this.getDesign().hideDesignPanel ?
77
+ ? R("a", { key: "showQuickfilters", className: "btn btn-link btn-sm", onClick: this.handleShowQuickfilters }, R("span", { className: "fa fa-filter" }), R("span", { className: "hide-600px" }, T ` Show Quickfilters`))
78
+ : undefined, this.props.extraTitleButtonsElem, R("a", { key: "toggleDesign", className: "btn btn-link btn-sm", onClick: this.handleToggleDesignPanel, alt: T `Toggle design panel` }, this.getDesign().hideDesignPanel ?
79
79
  R("span", { className: "fas fa-angle-double-left" })
80
80
  : R("span", { className: "fas fa-angle-double-right" })));
81
81
  }
@@ -16,7 +16,7 @@ class MapControlComponent extends react_1.default.Component {
16
16
  design: this.props.design,
17
17
  onDesignChange: this.props.onDesignChange,
18
18
  allowEditingLayers: false
19
- }), R("br"), R("div", { className: "mb-3" }, R("label", { className: "text-muted" }, "Map Style"), R(BaseLayerDesignerComponent_1.default, {
19
+ }), R("br"), R("div", { className: "mb-3" }, R("label", { className: "text-muted" }, T `Map Style`), R(BaseLayerDesignerComponent_1.default, {
20
20
  design: this.props.design,
21
21
  onDesignChange: this.props.onDesignChange
22
22
  })));
@@ -72,22 +72,22 @@ class MapDesignerComponent extends react_1.default.Component {
72
72
  }), R(CheckboxComponent_1.default, {
73
73
  checked: this.props.design.autoBounds,
74
74
  onChange: this.handleAutoBoundsChange
75
- }, R("span", { className: "text-muted" }, "Automatic zoom ", R(PopoverHelpComponent_1.default, { placement: "left" }, "Automatically zoom to the complete data whenever the map is loaded or the filters change"))), R(CheckboxComponent_1.default, {
75
+ }, R("span", { className: "text-muted" }, T `Automatic zoom `, R(PopoverHelpComponent_1.default, { placement: "left" }, T `Automatically zoom to the complete data whenever the map is loaded or the filters change`))), R(CheckboxComponent_1.default, {
76
76
  checked: this.props.design.showLayerSwitcher,
77
77
  onChange: this.handleShowLayerSwitcherChange
78
- }, R("span", { className: "text-muted" }, "Show Layer Switcher ", R(PopoverHelpComponent_1.default, { placement: "left" }, "Show a control in the map allowing switching layers"))), R(ui.FormGroup, { label: "Initial Legend Display", labelMuted: true }, R(ui.Select, {
78
+ }, R("span", { className: "text-muted" }, T `Show Layer Switcher `, R(PopoverHelpComponent_1.default, { placement: "left" }, T `Show a control in the map allowing switching layers`))), R(ui.FormGroup, { label: T `Initial Legend Display`, labelMuted: true }, R(ui.Select, {
79
79
  value: this.props.design.initialLegendDisplay || "open",
80
80
  onChange: this.handleInitialLegendDisplayChange,
81
81
  options: [
82
- { value: "open", label: "Open" },
83
- { value: "closed", label: "Closed" },
84
- { value: "closedIfSmall", label: "Open if wide enough" }
82
+ { value: "open", label: T `Open` },
83
+ { value: "closed", label: T `Closed` },
84
+ { value: "closedIfSmall", label: T `Open if wide enough` }
85
85
  ],
86
86
  style: { width: "auto" }
87
87
  })), MapUtils.canConvertToClusterMap(this.props.design)
88
- ? R("div", { key: "tocluster" }, R("a", { onClick: this.handleConvertToClusterMap, className: "btn btn-link btn-sm" }, "Convert to cluster map"))
88
+ ? R("div", { key: "tocluster" }, R("a", { onClick: this.handleConvertToClusterMap, className: "btn btn-link btn-sm" }, T `Convert to cluster map`))
89
89
  : undefined, MapUtils.canConvertToMarkersMap(this.props.design)
90
- ? R("div", { key: "toMarker" }, R("a", { onClick: this.handleConvertToMarkersMap, className: "btn btn-link btn-sm" }, "Convert to markers map"))
90
+ ? R("div", { key: "toMarker" }, R("a", { onClick: this.handleConvertToMarkersMap, className: "btn btn-link btn-sm" }, T `Convert to markers map`))
91
91
  : undefined, R(AttributionComponent, {
92
92
  text: this.props.design.attribution,
93
93
  onTextChange: this.handleAttributionChange
@@ -102,7 +102,7 @@ class MapDesignerComponent extends react_1.default.Component {
102
102
  const tabs = [
103
103
  {
104
104
  id: "layers",
105
- label: [R("i", { className: "fa fa-bars" }), " Layers"],
105
+ label: [R("i", { className: "fa fa-bars" }), T ` Layers`],
106
106
  elem: R(MapLayersDesignerComponent_1.default, {
107
107
  schema: this.props.schema,
108
108
  dataSource: this.props.dataSource,
@@ -114,7 +114,7 @@ class MapDesignerComponent extends react_1.default.Component {
114
114
  },
115
115
  {
116
116
  id: "filters",
117
- label: [R("i", { className: "fa fa-filter" }), " Filters"],
117
+ label: [R("i", { className: "fa fa-filter" }), T ` Filters`],
118
118
  elem: R(MapFiltersDesignerComponent_1.default, {
119
119
  schema: this.props.schema,
120
120
  dataSource: this.props.dataSource,
@@ -124,14 +124,14 @@ class MapDesignerComponent extends react_1.default.Component {
124
124
  },
125
125
  {
126
126
  id: "options",
127
- label: [R("i", { className: "fa fa-cog" }), " Options"],
127
+ label: [R("i", { className: "fa fa-cog" }), T ` Options`],
128
128
  elem: this.renderOptionsTab()
129
129
  }
130
130
  ];
131
131
  if (this.props.enableQuickfilters) {
132
132
  tabs.splice(2, 0, {
133
133
  id: "quickfilters",
134
- label: [R("i", { className: "fa fa-bolt" }), " ", T("Quickfilters")],
134
+ label: [R("i", { className: "fa fa-bolt" }), " ", T `Quickfilters`],
135
135
  elem: R("div", { style: { marginBottom: 200 } }, R(QuickfiltersDesignComponent_1.default, {
136
136
  design: this.props.design.quickfilters || [],
137
137
  onDesignChange: (qfDesign) => {
@@ -178,9 +178,9 @@ class AttributionComponent extends react_1.default.Component {
178
178
  ? this.renderEditor()
179
179
  : this.props.text
180
180
  ? R("span", { onClick: this.handleTextClick, style: { cursor: "pointer" } }, this.props.text)
181
- : R("a", { onClick: this.handleTextClick, className: "btn btn-link btn-sm" }, "+ Add attribution"));
181
+ : R("a", { onClick: this.handleTextClick, className: "btn btn-link btn-sm" }, T `+ Add attribution`));
182
182
  if (this.props.text || this.state.editing) {
183
- elem = R("div", { className: "mb-3" }, R("label", { className: "text-muted" }, "Attribution"), elem);
183
+ elem = R("div", { className: "mb-3" }, R("label", { className: "text-muted" }, T `Attribution`), elem);
184
184
  }
185
185
  return elem;
186
186
  }
@@ -195,12 +195,12 @@ class AdvancedOptionsComponent extends react_1.default.Component {
195
195
  }
196
196
  render() {
197
197
  if (!this.state.expanded) {
198
- return R("div", null, R("a", { className: "btn btn-link btn-sm", onClick: () => this.setState({ expanded: true }) }, "Advanced options..."));
198
+ return R("div", null, R("a", { className: "btn btn-link btn-sm", onClick: () => this.setState({ expanded: true }) }, T `Advanced options...`));
199
199
  }
200
- return R("div", { className: "mb-3" }, R("label", { className: "text-muted" }, "Advanced"), R("div", null, R("span", { className: "text-muted" }, "Maximum Zoom Level: "), " ", R(NumberInputComponent_1.default, {
200
+ return R("div", { className: "mb-3" }, R("label", { className: "text-muted" }, T `Advanced`), R("div", null, R("span", { className: "text-muted" }, T `Maximum Zoom Level: `), " ", R(NumberInputComponent_1.default, {
201
201
  small: true,
202
202
  style: { display: "inline-block" },
203
- placeholder: "None",
203
+ placeholder: T `None`,
204
204
  value: this.props.design.maxZoom,
205
205
  onChange: (v) => this.props.onDesignChange(lodash_1.default.extend({}, this.props.design, { maxZoom: v }))
206
206
  })));
@@ -49,14 +49,14 @@ class MapFiltersDesignerComponent extends react_1.default.Component {
49
49
  if (filterableTables.length === 0) {
50
50
  return null;
51
51
  }
52
- return R("div", null, R("div", { className: "mb-3" }, R("label", { className: "text-muted" }, "Filters ", R(PopoverHelpComponent_1.default, { placement: "left" }, "Filters all layers in the map. Individual layers can be filtered by clicking on Customize...")), R("div", { style: { margin: 5 } }, R(FiltersDesignerComponent_1.default, {
52
+ return R("div", null, R("div", { className: "mb-3" }, R("label", { className: "text-muted" }, T `Filters `, R(PopoverHelpComponent_1.default, { placement: "left" }, T `Filters all layers in the map. Individual layers can be filtered by clicking on Customize...`)), R("div", { style: { margin: 5 } }, R(FiltersDesignerComponent_1.default, {
53
53
  schema: this.props.schema,
54
54
  dataSource: this.props.dataSource,
55
55
  filters: this.props.design.filters,
56
56
  onFiltersChange: this.handleFiltersChange,
57
57
  filterableTables
58
58
  }))), react_1.default.createElement(MWaterContextComponent_1.GlobalFiltersElementFactoryContext.Consumer, null, globalFiltersElementFactory => globalFiltersElementFactory
59
- ? R("div", { className: "mb-3" }, R("label", { className: "text-muted" }, "Global Filters "), R("div", { style: { margin: 5 } }, globalFiltersElementFactory({
59
+ ? R("div", { className: "mb-3" }, R("label", { className: "text-muted" }, T `Global Filters `), R("div", { style: { margin: 5 } }, globalFiltersElementFactory({
60
60
  schema: this.props.schema,
61
61
  dataSource: this.props.dataSource,
62
62
  filterableTables,
@@ -62,7 +62,7 @@ class MapLayerViewDesignerComponent extends react_1.default.Component {
62
62
  };
63
63
  handleRename = () => {
64
64
  if (this.props.allowEditingLayer) {
65
- const name = prompt("Enter new name", this.props.layerView.name);
65
+ const name = prompt(T `Enter new name`, this.props.layerView.name);
66
66
  if (name) {
67
67
  return this.update({ name });
68
68
  }
@@ -88,13 +88,13 @@ class MapLayerViewDesignerComponent extends react_1.default.Component {
88
88
  return R("div", {
89
89
  key: "advanced",
90
90
  style: { display: "grid", gridTemplateColumns: "50% auto auto 1fr", alignItems: "center", columnGap: 5 }
91
- }, R(ui.Checkbox, { value: this.props.layerView.hideLegend, onChange: this.handleHideLegend, inline: true }, "Hide Legend"), R("label", { className: "text-muted", key: "label" }, "Group:"), R(ui.TextInput, {
91
+ }, R(ui.Checkbox, { value: this.props.layerView.hideLegend, onChange: this.handleHideLegend, inline: true }, T `Hide Legend`), R("label", { className: "text-muted", key: "label" }, T `Group:`), R(ui.TextInput, {
92
92
  key: "input",
93
93
  value: this.props.layerView.group,
94
94
  onChange: this.handleGroupChange,
95
95
  style: { width: "5em" },
96
- placeholder: "None"
97
- }), R("div", null, R(PopoverHelpComponent_1.default, { placement: "top", key: "help" }, "Layers in the same group can only be selected one at a time")));
96
+ placeholder: T `None`
97
+ }), R("div", null, R(PopoverHelpComponent_1.default, { placement: "top", key: "help" }, T `Layers in the same group can only be selected one at a time`)));
98
98
  }
99
99
  renderName() {
100
100
  return R("span", { className: "hover-display-parent", onClick: this.handleRename, style: { cursor: "pointer" } }, this.props.layerView.name, " ", R("span", { className: "hover-display-child fas fa-pencil-alt text-muted" }));
@@ -111,19 +111,19 @@ class MapLayerViewDesignerComponent extends react_1.default.Component {
111
111
  }
112
112
  renderLayerEditToggle() {
113
113
  return R("div", { key: "edit", style: { marginBottom: this.state.editing ? 10 : undefined } }, R("a", { className: "link-plain", onClick: this.handleToggleEditing, style: { fontSize: 12 } }, this.state.editing
114
- ? [R("i", { className: "fa fa-caret-up" }), " Close"]
115
- : [R("i", { className: "fa fa-cog" }), " Customize..."]));
114
+ ? [R("i", { className: "fa fa-caret-up" }), T ` Close`]
115
+ : [R("i", { className: "fa fa-cog" }), T ` Customize...`]));
116
116
  }
117
117
  handleOpacityChange = (newValue) => {
118
118
  return this.update({ opacity: newValue / 100 });
119
119
  };
120
120
  handleRemove = () => {
121
- if (confirm("Delete layer?")) {
121
+ if (confirm(T `Delete layer?`)) {
122
122
  return this.props.onRemove();
123
123
  }
124
124
  };
125
125
  renderOpacityControl() {
126
- return R("div", { className: "mb-3", style: { paddingTop: 10 } }, R("label", { className: "text-muted" }, R("span", null, `Opacity: ${Math.round(this.props.layerView.opacity * 100)}%`)), R("div", { style: { padding: "10px" } }, react_1.default.createElement(rc_slider_1.default, {
126
+ return R("div", { className: "mb-3", style: { paddingTop: 10 } }, R("label", { className: "text-muted" }, R("span", null, T `Opacity: ${Math.round(this.props.layerView.opacity * 100)}%`)), R("div", { style: { padding: "10px" } }, react_1.default.createElement(rc_slider_1.default, {
127
127
  min: 0,
128
128
  max: 100,
129
129
  step: 1,
@@ -4,7 +4,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  return (mod && mod.__esModule) ? mod : { "default": mod };
5
5
  };
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.getCompiledFilters = exports.getFilterableTables = exports.convertToMarkersMap = exports.convertToClusterMap = exports.canConvertToMarkersMap = exports.canConvertToClusterMap = void 0;
7
+ exports.canConvertToClusterMap = canConvertToClusterMap;
8
+ exports.canConvertToMarkersMap = canConvertToMarkersMap;
9
+ exports.convertToClusterMap = convertToClusterMap;
10
+ exports.convertToMarkersMap = convertToMarkersMap;
11
+ exports.getFilterableTables = getFilterableTables;
12
+ exports.getCompiledFilters = getCompiledFilters;
8
13
  const lodash_1 = __importDefault(require("lodash"));
9
14
  const expressions_1 = require("@mwater/expressions");
10
15
  const LayerFactory_1 = __importDefault(require("./LayerFactory"));
@@ -12,12 +17,10 @@ const LayerFactory_1 = __importDefault(require("./LayerFactory"));
12
17
  function canConvertToClusterMap(design) {
13
18
  return lodash_1.default.any(design.layerViews, (lv) => lv.type === "Markers");
14
19
  }
15
- exports.canConvertToClusterMap = canConvertToClusterMap;
16
20
  // Check if can convert to a markers map. Only maps containing cluster views can be
17
21
  function canConvertToMarkersMap(design) {
18
22
  return lodash_1.default.any(design.layerViews, (lv) => lv.type === "Cluster");
19
23
  }
20
- exports.canConvertToMarkersMap = canConvertToMarkersMap;
21
24
  // Convert to a cluster map
22
25
  function convertToClusterMap(design) {
23
26
  const layerViews = lodash_1.default.map(design.layerViews, (lv) => {
@@ -39,7 +42,6 @@ function convertToClusterMap(design) {
39
42
  });
40
43
  return lodash_1.default.extend({}, design, { layerViews });
41
44
  }
42
- exports.convertToClusterMap = convertToClusterMap;
43
45
  // Convert to a markers map
44
46
  function convertToMarkersMap(design) {
45
47
  const layerViews = lodash_1.default.map(design.layerViews, (lv) => {
@@ -61,7 +63,6 @@ function convertToMarkersMap(design) {
61
63
  });
62
64
  return lodash_1.default.extend({}, design, { layerViews });
63
65
  }
64
- exports.convertToMarkersMap = convertToMarkersMap;
65
66
  // Get ids of filterable tables
66
67
  function getFilterableTables(design, schema) {
67
68
  let filterableTables = [];
@@ -75,7 +76,6 @@ function getFilterableTables(design, schema) {
75
76
  filterableTables = lodash_1.default.filter(filterableTables, (table) => schema.getTable(table));
76
77
  return filterableTables;
77
78
  }
78
- exports.getFilterableTables = getFilterableTables;
79
79
  // Compile map filters with global filters
80
80
  function getCompiledFilters(design, schema, filterableTables) {
81
81
  const exprCompiler = new expressions_1.ExprCompiler(schema);
@@ -116,4 +116,3 @@ function getCompiledFilters(design, schema, filterableTables) {
116
116
  }
117
117
  return compiledFilters;
118
118
  }
119
- exports.getCompiledFilters = getCompiledFilters;
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.MapViewComponent = void 0;
6
+ exports.MapViewComponent = MapViewComponent;
7
7
  const react_1 = __importDefault(require("react"));
8
8
  const VectorMapViewComponent_1 = require("./VectorMapViewComponent");
9
9
  const RasterMapViewComponent_1 = __importDefault(require("./RasterMapViewComponent"));
@@ -17,4 +17,3 @@ function MapViewComponent(props) {
17
17
  return react_1.default.createElement(RasterMapViewComponent_1.default, { ...props });
18
18
  }
19
19
  }
20
- exports.MapViewComponent = MapViewComponent;
@@ -12,11 +12,11 @@ const mapSymbols_1 = require("./mapSymbols");
12
12
  class MarkerSymbolSelectComponent extends react_1.default.Component {
13
13
  render() {
14
14
  // Create options
15
- const options = mapSymbols_1.mapSymbols;
15
+ const options = (0, mapSymbols_1.getMapSymbols)();
16
16
  const optionRenderer = (option) => R("span", null, R("i", { className: `fa fa-${option.value.substr(13)}` }), // Trim "font-awesome/"
17
17
  ` ${option.label}`);
18
- return R("div", { className: "mb-3" }, R("label", { className: "text-muted" }, R("span", { className: "fa fa-star" }), " ", "Symbol"), R(react_select_1.default, {
19
- placeholder: "Circle",
18
+ return R("div", { className: "mb-3" }, R("label", { className: "text-muted" }, R("span", { className: "fa fa-star" }), " ", T `Symbol`), R(react_select_1.default, {
19
+ placeholder: T `Circle`,
20
20
  value: lodash_1.default.findWhere(options, { value: this.props.symbol }) || null,
21
21
  options,
22
22
  formatOptionLabel: optionRenderer,
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.createMarkersVectorQuery = void 0;
29
+ exports.createMarkersVectorQuery = createMarkersVectorQuery;
30
30
  const lodash_1 = __importDefault(require("lodash"));
31
31
  const react_1 = __importDefault(require("react"));
32
32
  const immer_1 = require("immer");
@@ -162,7 +162,7 @@ class MarkersLayer extends Layer_1.default {
162
162
  type: "select",
163
163
  expr: { type: "field", tableAlias: "basequery", column: schema.getTable(design.table).primaryKey },
164
164
  alias: "id"
165
- },
165
+ }, // main primary key as id
166
166
  { type: "select", expr: geometryExpr, alias: "the_geom_webmercator" } // geometry as the_geom_webmercator
167
167
  ],
168
168
  from: exprCompiler.compileTable(design.table, "basequery")
@@ -277,8 +277,8 @@ class MarkersLayer extends Layer_1.default {
277
277
  type: "select",
278
278
  expr: { type: "field", tableAlias: "innerquery", column: schema.getTable(design.table).primaryKey },
279
279
  alias: "id"
280
- },
281
- { type: "select", expr: geometryExpr, alias: "the_geom_webmercator" },
280
+ }, // main primary key as id
281
+ { type: "select", expr: geometryExpr, alias: "the_geom_webmercator" }, // geometry as the_geom_webmercator
282
282
  cluster
283
283
  ],
284
284
  from: exprCompiler.compileTable(design.table, "innerquery")
@@ -322,12 +322,12 @@ class MarkersLayer extends Layer_1.default {
322
322
  type: "select",
323
323
  expr: { type: "field", tableAlias: "innerquery", column: "id" },
324
324
  alias: "id"
325
- },
325
+ }, // innerquery._id as id
326
326
  {
327
327
  type: "select",
328
328
  expr: { type: "field", tableAlias: "innerquery", column: "the_geom_webmercator" },
329
329
  alias: "the_geom_webmercator"
330
- },
330
+ }, // innerquery.the_geom_webmercator as the_geom_webmercator
331
331
  {
332
332
  type: "select",
333
333
  expr: {
@@ -840,4 +840,3 @@ function createMarkersVectorQuery(baseQuery) {
840
840
  };
841
841
  return outerquery;
842
842
  }
843
- exports.createMarkersVectorQuery = createMarkersVectorQuery;