@mwater/visualization 5.3.2 → 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 +0 -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 +3 -3
  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 +101 -74
  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
@@ -126,7 +126,7 @@ export default class DatagridViewComponent extends React.Component<
126
126
  (error: any, newRows: any) => {
127
127
  if (error) {
128
128
  console.error(error)
129
- alert(T("Error loading data"))
129
+ alert(T`Error loading data`)
130
130
  return
131
131
  }
132
132
 
@@ -185,7 +185,7 @@ export default class DatagridViewComponent extends React.Component<
185
185
  (error, rows) => {
186
186
  if (error) {
187
187
  console.error(error)
188
- alert(T("Error loading data"))
188
+ alert(T`Error loading data`)
189
189
  callback()
190
190
  return
191
191
  }
@@ -292,7 +292,7 @@ export default class DatagridViewComponent extends React.Component<
292
292
  this.setState({ editingCell: null, savingCell: false })
293
293
  })
294
294
  }).catch(error => {
295
- alert(T("Error saving data"))
295
+ alert(T`Error saving data`)
296
296
  console.error(error)
297
297
  })
298
298
  })
@@ -36,7 +36,7 @@ export default class ExprCellComponent extends React.Component<ExprCellComponent
36
36
 
37
37
  renderImage(id: any) {
38
38
  const url = this.props.dataSource.getImageUrl(id)
39
- return R("a", { href: url, key: id, target: "_blank", style: { paddingLeft: 5, paddingRight: 5 } }, "Image")
39
+ return R("a", { href: url, key: id, target: "_blank", style: { paddingLeft: 5, paddingRight: 5 } }, T`Image`)
40
40
  }
41
41
 
42
42
  render() {
@@ -159,7 +159,7 @@ export default class FindReplaceModalComponent extends React.Component<
159
159
  const rows = await this.props.dataSource.performQuery(query)
160
160
 
161
161
  // Confirm
162
- if (!confirm(T("Replace {0} values? This cannot be undone.", rows.length))) {
162
+ if (!confirm(T`Replace ${rows.length} values? This cannot be undone.`)) {
163
163
  return
164
164
  }
165
165
 
@@ -173,7 +173,7 @@ export default class FindReplaceModalComponent extends React.Component<
173
173
  }))
174
174
  )
175
175
 
176
- alert(T("Successfully replaced {0} values", rows.length))
176
+ alert(T`Successfully replaced ${rows.length} values`)
177
177
  this.setState({ open: false })
178
178
  this.props.onUpdate()
179
179
  } catch (error) {
@@ -257,7 +257,7 @@ export default class FindReplaceModalComponent extends React.Component<
257
257
  return R(
258
258
  "div",
259
259
  null,
260
- R("h3", null, T("Working...")),
260
+ R("h3", null, T`Working...`),
261
261
  R(
262
262
  "div",
263
263
  { className: "progress" },
@@ -272,12 +272,12 @@ export default class FindReplaceModalComponent extends React.Component<
272
272
  R(
273
273
  "div",
274
274
  { key: "replace", className: "mb-3" },
275
- R("label", null, T("Column with data to replace") + ": "),
275
+ R("label", null, T`Column with data to replace` + ": "),
276
276
  R(ReactSelect, {
277
277
  options: replaceColumnOptions,
278
278
  value: _.findWhere(replaceColumnOptions, { value: this.state.replaceColumn }) || null,
279
279
  onChange: (opt: any) => this.setState({ replaceColumn: opt.value }),
280
- placeholder: T("Select Column..."),
280
+ placeholder: T`Select Column...`,
281
281
  styles: {
282
282
  // Keep menu above fixed data table headers
283
283
  menu: style => _.extend({}, style, { zIndex: 2 })
@@ -293,7 +293,7 @@ export default class FindReplaceModalComponent extends React.Component<
293
293
  return R(
294
294
  "div",
295
295
  { key: "with", className: "mb-3" },
296
- R("label", null, T("Value to replace data with") + ": "),
296
+ R("label", null, T`Value to replace data with` + ": "),
297
297
  R(ExprComponent, {
298
298
  schema: this.props.schema,
299
299
  dataSource: this.props.dataSource,
@@ -304,7 +304,7 @@ export default class FindReplaceModalComponent extends React.Component<
304
304
  enumValues: exprUtils.getExprEnumValues(replaceExpr) || undefined,
305
305
  idTable: exprUtils.getExprIdTable(replaceExpr) || undefined,
306
306
  preferLiteral: true,
307
- placeholder: T("(Blank)"),
307
+ placeholder: T`(Blank)`,
308
308
  refExpr: replaceExpr
309
309
  })
310
310
  )
@@ -315,7 +315,7 @@ export default class FindReplaceModalComponent extends React.Component<
315
315
  R(
316
316
  "div",
317
317
  { key: "condition", className: "mb-3" },
318
- R("label", null, T("Only in rows that (optional)") + ":"),
318
+ R("label", null, T`Only in rows that (optional)` + ":"),
319
319
  R(ExprComponent, {
320
320
  schema: this.props.schema,
321
321
  dataSource: this.props.dataSource,
@@ -323,11 +323,11 @@ export default class FindReplaceModalComponent extends React.Component<
323
323
  value: this.state.conditionExpr,
324
324
  onChange: value => this.setState({ conditionExpr: value }),
325
325
  types: ["boolean"],
326
- placeholder: T("All Rows")
326
+ placeholder: T`All Rows`
327
327
  })
328
328
  ),
329
329
 
330
- R("div", { key: "preview" }, R("h4", null, T("Preview")), this.renderPreview())
330
+ R("div", { key: "preview" }, R("h4", null, T`Preview`), this.renderPreview())
331
331
  )
332
332
  }
333
333
 
@@ -340,7 +340,7 @@ export default class FindReplaceModalComponent extends React.Component<
340
340
  ModalPopupComponent,
341
341
  {
342
342
  size: "large",
343
- header: T("Find/Replace"),
343
+ header: T`Find/Replace`,
344
344
  footer: [
345
345
  R(
346
346
  "button",
@@ -350,7 +350,7 @@ export default class FindReplaceModalComponent extends React.Component<
350
350
  onClick: () => this.setState({ open: false }),
351
351
  className: "btn btn-secondary"
352
352
  },
353
- T("Cancel")
353
+ T`Cancel`
354
354
  ),
355
355
  R(
356
356
  "button",
@@ -361,7 +361,7 @@ export default class FindReplaceModalComponent extends React.Component<
361
361
  onClick: () => this.performReplace(),
362
362
  className: "btn btn-primary"
363
363
  },
364
- T("Apply")
364
+ T`Apply`
365
365
  )
366
366
  ]
367
367
  },
@@ -66,7 +66,7 @@ export default class OrderBysDesignerComponent extends React.Component<OrderBysD
66
66
  onClick: this.handleAdd
67
67
  },
68
68
  R("span", { className: "fas fa-plus" }),
69
- " " + T("Add Ordering")
69
+ " " + T`Add Ordering`
70
70
  )
71
71
  )
72
72
  }
@@ -111,7 +111,7 @@ class OrderByDesignerComponent extends React.Component<OrderByDesignerComponentP
111
111
  "div",
112
112
  { className: "col-3" },
113
113
  <Checkbox inline value={this.props.orderBy.direction === "desc"} onChange={this.handleDirectionChange}>
114
- {T("Reverse")}
114
+ {T`Reverse`}
115
115
  </Checkbox>
116
116
  ),
117
117
  R(
package/src/globals.d.ts CHANGED
@@ -1,2 +1,8 @@
1
+ import type { LocalizeString } from "ez-localize";
2
+
1
3
  /** Global translate function */
2
- declare function T(str: string, ...args: any): string
4
+ declare global {
5
+ const T: LocalizeString
6
+ }
7
+
8
+ export {}
package/src/languages.ts CHANGED
@@ -795,8 +795,8 @@ export const languages: {
795
795
  },
796
796
  {
797
797
  "code": "tet",
798
- "name": "Tetun",
799
- "en": "Tetun"
798
+ "name": "Tetum",
799
+ "en": "Tetum"
800
800
  },
801
801
  {
802
802
  "code": "tg",
@@ -224,17 +224,17 @@ class BlocksDisplayComponent extends React.Component<BlocksDisplayComponentProps
224
224
  <PaletteItemComponent
225
225
  createItem={this.createBlockItem({ type: "widget", widgetType: "Text", design: { style: "title" } })}
226
226
  title={<i className="fa fa-font" />}
227
- subtitle="Title"
227
+ subtitle={T`Title`}
228
228
  />
229
229
  <PaletteItemComponent
230
230
  createItem={this.createBlockItem({ type: "widget", widgetType: "Text", design: {} })}
231
231
  title={<i className="fa fa-align-left" />}
232
- subtitle="Text"
232
+ subtitle={T`Text`}
233
233
  />
234
234
  <PaletteItemComponent
235
235
  createItem={this.createBlockItem({ type: "widget", aspectRatio: 1.4, widgetType: "Image", design: {} })}
236
236
  title={<i className="fa fa-picture-o" />}
237
- subtitle="Image"
237
+ subtitle={T`Image`}
238
238
  />
239
239
  <PaletteItemComponent
240
240
  createItem={this.createBlockItem({
@@ -244,7 +244,7 @@ class BlocksDisplayComponent extends React.Component<BlocksDisplayComponentProps
244
244
  design: {}
245
245
  })}
246
246
  title={<i className="fa fa-bar-chart" />}
247
- subtitle="Chart"
247
+ subtitle={T`Chart`}
248
248
  />
249
249
  {!this.props.disableMaps && (
250
250
  <PaletteItemComponent
@@ -260,13 +260,13 @@ class BlocksDisplayComponent extends React.Component<BlocksDisplayComponentProps
260
260
  }
261
261
  })}
262
262
  title={<i className="fa fa-map-o" />}
263
- subtitle="Map"
263
+ subtitle={T`Map`}
264
264
  />
265
265
  )}
266
266
  <PaletteItemComponent
267
267
  createItem={this.createBlockItem({ type: "widget", aspectRatio: 1.4, widgetType: "TableChart", design: {} })}
268
268
  title={<i className="fa fa-table" />}
269
- subtitle="Table"
269
+ subtitle={T`Table`}
270
270
  />
271
271
  <PaletteItemComponent
272
272
  createItem={this.createBlockItem({ type: "widget", widgetType: "PivotChart", design: {} })}
@@ -275,7 +275,7 @@ class BlocksDisplayComponent extends React.Component<BlocksDisplayComponentProps
275
275
  height={24}
276
276
  src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAb0lEQVRIx91VQQrAIAwzo/7/ydllG0MQS21EzMW2ICFtoyBZlLDn/LOgySPAG1xFDDmBtZI6efoMvODozkyL2IlTCOisfS2KrqG0RXus6fkEVBIw08khE62aQY0ogMdEswqwYouwvQ8s+4M576m4Ae/tET/u1taEAAAAAElFTkSuQmCC"
277
277
  />}
278
- subtitle="Pivot"
278
+ subtitle={T`Pivot`}
279
279
  />
280
280
  <PaletteItemComponent
281
281
  createItem={this.createBlockItem({
@@ -285,7 +285,7 @@ class BlocksDisplayComponent extends React.Component<BlocksDisplayComponentProps
285
285
  design: {}
286
286
  })}
287
287
  title={<i className="fa fa-calendar" />}
288
- subtitle="Calendar"
288
+ subtitle={T`Calendar`}
289
289
  />
290
290
  <PaletteItemComponent
291
291
  createItem={this.createBlockItem({
@@ -295,12 +295,12 @@ class BlocksDisplayComponent extends React.Component<BlocksDisplayComponentProps
295
295
  design: {}
296
296
  })}
297
297
  title={<i className="fa fa-th" />}
298
- subtitle="Mosaic"
298
+ subtitle={T`Mosaic`}
299
299
  />
300
300
  <PaletteItemComponent
301
301
  createItem={this.createBlockItem({ type: "spacer", aspectRatio: 2 })}
302
302
  title={<i className="fa fa-square-o" />}
303
- subtitle="Spacer"
303
+ subtitle={T`Spacer`}
304
304
  />
305
305
  <PaletteItemComponent
306
306
  createItem={this.createBlockItem({
@@ -310,16 +310,16 @@ class BlocksDisplayComponent extends React.Component<BlocksDisplayComponentProps
310
310
  design: {}
311
311
  })}
312
312
  title={<i className="fa fa-youtube-play" />}
313
- subtitle="Video"
313
+ subtitle={T`Video`}
314
314
  />
315
315
  <PaletteItemComponent
316
316
  createItem={this.createBlockItem({
317
317
  type: "widget",
318
318
  widgetType: "TOC",
319
- design: { numbering: false, borderWeight: 2, header: "Contents" }
319
+ design: { numbering: false, borderWeight: 2, header: T`Contents` }
320
320
  })}
321
321
  title={<i className="fa fa-list-ol" />}
322
- subtitle="TOC"
322
+ subtitle={T`TOC`}
323
323
  />
324
324
  {this.props.onClipboardChange && (
325
325
  <ClipboardPaletteItemComponent
@@ -4,6 +4,7 @@ const R = React.createElement
4
4
  import uuid from "uuid"
5
5
  import LayoutManager, { RenderLayoutOptions } from "../LayoutManager"
6
6
  import BlocksDisplayComponent from "./BlocksDisplayComponent"
7
+ import { LayoutBlock } from "./blockUtils"
7
8
 
8
9
  export default class BlocksLayoutManager extends LayoutManager {
9
10
  /**
@@ -46,9 +47,9 @@ export default class BlocksLayoutManager extends LayoutManager {
46
47
  }
47
48
 
48
49
  // Gets all widgets in items as array of { id, type, design }
49
- getAllWidgets(items: any): { id: string; type: string; design: any }[] {
50
+ getAllWidgets(items: LayoutBlock): { id: string; type: string; design: any }[] {
50
51
  if (items.type === "widget") {
51
- return [{ id: items.id, type: items.widgetType, design: items.design }]
52
+ return [{ id: items.id, type: items.widgetType!, design: items.design }]
52
53
  }
53
54
 
54
55
  if (items.blocks) {
@@ -22,7 +22,7 @@ class ClipboardPaletteItemComponent extends React.Component<ClipboardPaletteItem
22
22
  }
23
23
 
24
24
  handleClear = () => {
25
- if (confirm("Clear clipboard?")) {
25
+ if (confirm(T`Clear clipboard?`)) {
26
26
  return this.props.onClipboardChange(null)
27
27
  }
28
28
  }
@@ -43,13 +43,13 @@ class ClipboardPaletteItemComponent extends React.Component<ClipboardPaletteItem
43
43
  { className: "title", key: "title" },
44
44
  this.props.isOver ? R("i", { className: "fa fa-clone" }) : R("i", { className: "fa fa-clipboard" })
45
45
  ),
46
- R("div", { className: "subtitle", key: "subtitle" }, this.props.isOver ? "Copy" : "Clipboard"),
46
+ R("div", { className: "subtitle", key: "subtitle" }, this.props.isOver ? T`Copy` : T`Clipboard`),
47
47
  this.props.cantPasteMessage
48
48
  ? R("div", { className: "tooltiptext" }, this.props.cantPasteMessage)
49
49
  : R(
50
50
  "div",
51
51
  { className: "tooltiptext" },
52
- "Clipboard allows copying widgets for pasting on this dashboard or another dashboard. Drag a widget on to this clipboard to copy it."
52
+ T`Clipboard allows copying widgets for pasting on this dashboard or another dashboard. Drag a widget on to this clipboard to copy it.`
53
53
  ),
54
54
  this.props.clipboard
55
55
  ? R("div", { className: "clearclipboard", onClick: this.handleClear }, R("i", { className: "fa fa-trash-o" }))
@@ -59,38 +59,38 @@ export default class AddLayerComponent extends React.Component<AddLayerComponent
59
59
 
60
60
  const newLayers = [
61
61
  {
62
- label: "Marker Layer",
63
- name: "Untitled Layer",
62
+ label: T`Marker Layer`,
63
+ name: T`Untitled Layer`,
64
64
  type: "Markers",
65
65
  design: {}
66
66
  },
67
67
  {
68
- label: "Radius (circles) Layer",
69
- name: "Untitled Layer",
68
+ label: T`Radius (circles) Layer`,
69
+ name: T`Untitled Layer`,
70
70
  type: "Buffer",
71
71
  design: {}
72
72
  },
73
73
  {
74
- label: "Choropleth Layer",
75
- name: "Untitled Layer",
74
+ label: T`Choropleth Layer`,
75
+ name: T`Untitled Layer`,
76
76
  type: "AdminChoropleth",
77
77
  design: {}
78
78
  },
79
79
  {
80
- label: "Cluster Layer",
81
- name: "Untitled Layer",
80
+ label: T`Cluster Layer`,
81
+ name: T`Untitled Layer`,
82
82
  type: "Cluster",
83
83
  design: {}
84
84
  },
85
85
  {
86
- label: "Grid Layer",
87
- name: "Untitled Layer",
86
+ label: T`Grid Layer`,
87
+ name: T`Untitled Layer`,
88
88
  type: "Grid",
89
89
  design: {}
90
90
  },
91
91
  {
92
- label: "Custom Tile Url (advanced)",
93
- name: "Untitled Layer",
92
+ label: T`Custom Tile Url (advanced)`,
93
+ name: T`Untitled Layer`,
94
94
  type: "TileUrl",
95
95
  design: {}
96
96
  }
@@ -103,7 +103,7 @@ export default class AddLayerComponent extends React.Component<AddLayerComponent
103
103
  "button",
104
104
  { type: "button", "data-bs-toggle": "dropdown", className: "btn btn-primary dropdown-toggle" },
105
105
  R("span", { className: "fas fa-plus" }),
106
- " Add Layer"
106
+ ` ${T`Add Layer`}`
107
107
  ),
108
108
  R(
109
109
  "ul",
@@ -37,8 +37,8 @@ export default class AdminScopeAndDetailLevelComponent extends React.Component<A
37
37
 
38
38
  render() {
39
39
  const basicDetailLevelOptions = [
40
- { value: 0, label: "Countries" },
41
- { value: 1, label: "Level 1 (State/Province/District)" }
40
+ { value: 0, label: T`Countries` },
41
+ { value: 1, label: T`Level 1 (State/Province/District)` }
42
42
  ]
43
43
 
44
44
  return R(
@@ -47,7 +47,7 @@ export default class AdminScopeAndDetailLevelComponent extends React.Component<A
47
47
  R(
48
48
  "div",
49
49
  { className: "mb-3" },
50
- R("label", { className: "text-muted" }, "Region to Map"),
50
+ R("label", { className: "text-muted" }, T`Region to Map`),
51
51
  R(RegionSelectComponent, {
52
52
  region: this.props.scope,
53
53
  onChange: this.handleScopeChange,
@@ -60,7 +60,7 @@ export default class AdminScopeAndDetailLevelComponent extends React.Component<A
60
60
  return R(
61
61
  "div",
62
62
  { className: "mb-3" },
63
- R("label", { className: "text-muted" }, "Detail Level"),
63
+ R("label", { className: "text-muted" }, T`Detail Level`),
64
64
  R(DetailLevelSelectComponent, {
65
65
  scope: this.props.scope,
66
66
  scopeLevel: this.props.scopeLevel,
@@ -75,7 +75,7 @@ export default class AdminScopeAndDetailLevelComponent extends React.Component<A
75
75
  return R(
76
76
  "div",
77
77
  { className: "mb-3" },
78
- R("label", { className: "text-muted" }, "Detail Level"),
78
+ R("label", { className: "text-muted" }, T`Detail Level`),
79
79
  R(ReactSelect, {
80
80
  value: _.findWhere(basicDetailLevelOptions, { value: this.props.detailLevel }) || null,
81
81
  options: basicDetailLevelOptions,
@@ -56,7 +56,7 @@ export default class BaseLayerDesignerComponent extends React.Component<BaseLaye
56
56
  return R(
57
57
  "div",
58
58
  { className: "mb-3", style: { paddingTop: 10 } },
59
- R("label", { className: "text-muted" }, R("span", null, `Opacity: ${Math.round(opacity * 100)}%`)),
59
+ R("label", { className: "text-muted" }, R("span", null, T`Opacity: ${Math.round(opacity * 100)}%`)),
60
60
  R(
61
61
  "div",
62
62
  { style: { padding: "10px" } },
@@ -76,7 +76,7 @@ export default class BaseLayerDesignerComponent extends React.Component<BaseLaye
76
76
  return R(
77
77
  "div",
78
78
  { className: "mb-3" },
79
- R("label", { className: "text-muted" }, "Background Map"),
79
+ R("label", { className: "text-muted" }, T`Background Map`),
80
80
 
81
81
  R(
82
82
  "div",
@@ -84,16 +84,16 @@ export default class BaseLayerDesignerComponent extends React.Component<BaseLaye
84
84
  R(
85
85
  "div",
86
86
  null,
87
- this.renderBaseLayer("cartodb_positron", "Light"),
88
- this.renderBaseLayer("cartodb_dark_matter", "Dark"),
89
- this.renderBaseLayer("bing_road", "Roads"),
90
- this.renderBaseLayer("bing_aerial", "Satellite"),
91
- this.renderBaseLayer("blank", "Blank"),
87
+ this.renderBaseLayer("cartodb_positron", T`Light`),
88
+ this.renderBaseLayer("cartodb_dark_matter", T`Dark`),
89
+ this.renderBaseLayer("bing_road", T`Roads`),
90
+ this.renderBaseLayer("bing_aerial", T`Satellite`),
91
+ this.renderBaseLayer("blank", T`Blank`),
92
92
  " ",
93
93
  R(
94
94
  PopoverHelpComponent,
95
95
  { placement: "bottom" },
96
- "Blank map backgrounds work best with chloropleth map layers"
96
+ T`Blank map backgrounds work best with chloropleth map layers`
97
97
  )
98
98
  ),
99
99
 
@@ -633,7 +633,7 @@ marker-fill: ` +
633
633
  // Scope to item
634
634
  if (ids.length > 0) {
635
635
  results.scope = {
636
- name: `Selected ${ids.length} Circle(s)`,
636
+ name: T`Selected ${ids.length} Circle(s)`,
637
637
  filter,
638
638
  filterExpr,
639
639
  data: ids
@@ -893,15 +893,15 @@ marker-fill: ` +
893
893
  const exprValidator = new ExprValidator(schema)
894
894
 
895
895
  if (!design.table) {
896
- return "Missing table"
896
+ return T`Missing table`
897
897
  }
898
898
 
899
899
  if (design.radius == null) {
900
- return "Missing radius"
900
+ return T`Missing radius`
901
901
  }
902
902
 
903
903
  if (!design.axes || !design.axes.geometry) {
904
- return "Missing axes"
904
+ return T`Missing axes`
905
905
  }
906
906
 
907
907
  let error = axisBuilder.validateAxis({ axis: design.axes.geometry })
@@ -911,7 +911,7 @@ marker-fill: ` +
911
911
 
912
912
  // Check type of axis (prevents blank axes)
913
913
  if (axisBuilder.getAxisType(design.axes.geometry) != "geometry") {
914
- return "Geometry axis required"
914
+ return T`Geometry axis required`
915
915
  }
916
916
 
917
917
  error = axisBuilder.validateAxis({ axis: design.axes.color })
@@ -73,7 +73,7 @@ export default class BufferLayerDesignerComponent extends React.Component<Buffer
73
73
  return R(
74
74
  "div",
75
75
  { className: "mb-3" },
76
- R("label", { className: "text-muted" }, R("i", { className: "fa fa-database" }), " ", "Data Source"),
76
+ R("label", { className: "text-muted" }, R("i", { className: "fa fa-database" }), " ", T`Data Source`),
77
77
  R(
78
78
  "div",
79
79
  { style: { marginLeft: 10 } },
@@ -93,7 +93,7 @@ export default class BufferLayerDesignerComponent extends React.Component<Buffer
93
93
  return
94
94
  }
95
95
 
96
- const title = R("span", null, R("span", { className: "fas fa-map-marker-alt" }), " Circle Centers")
96
+ const title = R("span", null, R("span", { className: "fas fa-map-marker-alt" }), " ", T`Circle Centers`)
97
97
 
98
98
  const filters = _.clone(this.props.filters) || []
99
99
 
@@ -130,7 +130,7 @@ export default class BufferLayerDesignerComponent extends React.Component<Buffer
130
130
  return R(
131
131
  "div",
132
132
  { className: "mb-3" },
133
- R("label", { className: "text-muted" }, "Radius (meters)"),
133
+ R("label", { className: "text-muted" }, T`Radius (meters)`),
134
134
  ": ",
135
135
  React.createElement(NumberInputComponent, {
136
136
  value: this.props.design.radius,
@@ -154,7 +154,7 @@ export default class BufferLayerDesignerComponent extends React.Component<Buffer
154
154
  value: this.props.design.unionShapes,
155
155
  onChange: this.handleUnionShapesChange
156
156
  },
157
- "Combine circles (advanced)"
157
+ T`Combine circles (advanced)`
158
158
  )
159
159
  )
160
160
  }
@@ -181,7 +181,7 @@ export default class BufferLayerDesignerComponent extends React.Component<Buffer
181
181
  ? R(
182
182
  "div",
183
183
  { className: "mb-3" },
184
- R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }), "Circle Color"),
184
+ R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }), T`Circle Color`),
185
185
 
186
186
  R(
187
187
  "div",
@@ -197,7 +197,7 @@ export default class BufferLayerDesignerComponent extends React.Component<Buffer
197
197
  R(
198
198
  "div",
199
199
  { className: "mb-3" },
200
- R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }), "Color By Data"),
200
+ R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }), T`Color By Data`),
201
201
 
202
202
  R(AxisComponent, {
203
203
  schema: this.props.schema,
@@ -221,7 +221,7 @@ export default class BufferLayerDesignerComponent extends React.Component<Buffer
221
221
  return R(
222
222
  "div",
223
223
  { className: "mb-3" },
224
- R("label", { className: "text-muted" }, "Circle Opacity (%)"),
224
+ R("label", { className: "text-muted" }, T`Circle Opacity (%)`),
225
225
  ": ",
226
226
  React.createElement(Rcslider, {
227
227
  min: 0,
@@ -243,7 +243,7 @@ export default class BufferLayerDesignerComponent extends React.Component<Buffer
243
243
  return R(
244
244
  "div",
245
245
  { className: "mb-3" },
246
- R("label", { className: "text-muted" }, R("span", { className: "fas fa-filter" }), " Filters"),
246
+ R("label", { className: "text-muted" }, R("span", { className: "fas fa-filter" }), T`Filters`),
247
247
  R(
248
248
  "div",
249
249
  { style: { marginLeft: 8 } },
@@ -1642,10 +1642,10 @@ export default class ChoroplethLayer extends Layer<ChoroplethLayerDesign> {
1642
1642
 
1643
1643
  if (design.regionMode === "indirect") {
1644
1644
  if (!design.table) {
1645
- return "Missing table"
1645
+ return T`Missing table`
1646
1646
  }
1647
1647
  if (!design.adminRegionExpr || exprUtils.getExprType(design.adminRegionExpr) !== "id") {
1648
- return "Missing admin region expr"
1648
+ return T`Missing admin region expr`
1649
1649
  }
1650
1650
 
1651
1651
  error = axisBuilder.validateAxis({ axis: design.axes.color || null })
@@ -1676,7 +1676,7 @@ export default class ChoroplethLayer extends Layer<ChoroplethLayerDesign> {
1676
1676
  }
1677
1677
 
1678
1678
  if (design.detailLevel == null) {
1679
- return "Missing detail level"
1679
+ return T`Missing detail level`
1680
1680
  }
1681
1681
 
1682
1682
  return null