@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.
- package/lib/ColorComponent.d.ts +1 -1
- package/lib/ColorComponent.js +2 -2
- package/lib/CustomColorsContext.d.ts +1 -1
- package/lib/DateRangeComponent.js +10 -10
- package/lib/LocaleContextInjector.js +2 -2
- package/lib/MWaterAddRelatedFormComponent.js +8 -8
- package/lib/MWaterAddRelatedIndicatorComponent.d.ts +0 -1
- package/lib/MWaterAddRelatedIndicatorComponent.js +6 -6
- package/lib/MWaterAssetSystemsListComponent.d.ts +3 -3
- package/lib/MWaterAssetSystemsListComponent.js +4 -3
- package/lib/MWaterCompleteTableSelectComponent.d.ts +33 -34
- package/lib/MWaterCompleteTableSelectComponent.js +39 -38
- package/lib/MWaterCustomTablesetListComponent.d.ts +3 -3
- package/lib/MWaterCustomTablesetListComponent.js +5 -4
- package/lib/MWaterGlobalFiltersComponent.js +4 -4
- package/lib/MWaterLoaderComponent.d.ts +5 -5
- package/lib/MWaterLoaderComponent.js +1 -1
- package/lib/MWaterMetricsTableListComponent.d.ts +3 -3
- package/lib/MWaterMetricsTableListComponent.js +4 -3
- package/lib/MWaterResponsesFilterComponent.js +4 -4
- package/lib/MWaterTableSelectComponent.d.ts +1 -1
- package/lib/MWaterTableSelectComponent.js +5 -5
- package/lib/PopoverComponent.d.ts +4 -4
- package/lib/UIComponents.d.ts +5 -2
- package/lib/axes/AxisBuilder.js +42 -43
- package/lib/axes/AxisColorEditorComponent.d.ts +4 -4
- package/lib/axes/AxisColorEditorComponent.js +25 -60
- package/lib/axes/AxisComponent.d.ts +2 -3
- package/lib/axes/AxisComponent.js +20 -20
- package/lib/axes/BinsComponent.js +6 -6
- package/lib/axes/CategoryMapComponent.d.ts +2 -1
- package/lib/axes/CategoryMapComponent.js +7 -5
- package/lib/axes/ColorPaletteCollectionComponent.js +9 -9
- package/lib/axes/RangesComponent.js +12 -12
- package/lib/compressJson.js +1 -1
- package/lib/dashboards/DashboardComponent.d.ts +2 -0
- package/lib/dashboards/DashboardComponent.js +15 -8
- package/lib/dashboards/DashboardUtils.js +2 -3
- package/lib/dashboards/DashboardViewComponent.js +4 -4
- package/lib/dashboards/FontStyleEditor.js +8 -8
- package/lib/dashboards/LayoutOptionsComponent.js +102 -75
- package/lib/dashboards/SettingsModalComponent.d.ts +3 -4
- package/lib/dashboards/SettingsModalComponent.js +54 -40
- package/lib/dashboards/WidgetComponent.d.ts +0 -1
- package/lib/dashboards/WidgetComponent.js +1 -2
- package/lib/dashboards/layoutOptions.js +11 -7
- package/lib/datagrids/DatagridComponent.d.ts +1 -8
- package/lib/datagrids/DatagridComponent.js +14 -13
- package/lib/datagrids/DatagridDesignerComponent.js +18 -18
- package/lib/datagrids/DatagridQueryBuilder.d.ts +4 -4
- package/lib/datagrids/DatagridUtils.js +2 -2
- package/lib/datagrids/DatagridViewComponent.js +4 -4
- package/lib/datagrids/ExprCellComponent.js +1 -1
- package/lib/datagrids/FindReplaceModalComponent.js +17 -17
- package/lib/datagrids/OrderBysDesignerComponent.js +2 -2
- package/lib/languages.js +2 -2
- package/lib/layouts/DecoratedBlockComponent.js +2 -2
- package/lib/layouts/blocks/BlocksDisplayComponent.js +13 -13
- package/lib/layouts/blocks/BlocksLayoutManager.d.ts +2 -1
- package/lib/layouts/blocks/ClipboardPaletteItemComponent.js +3 -3
- package/lib/layouts/blocks/HorizontalBlockComponent.js +3 -3
- package/lib/layouts/blocks/blockUtils.js +4 -5
- package/lib/mWaterLoader.js +1 -1
- package/lib/maps/AddLayerComponent.js +13 -13
- package/lib/maps/AdminScopeAndDetailLevelComponent.js +5 -5
- package/lib/maps/BaseLayerDesignerComponent.js +2 -2
- package/lib/maps/BufferLayer.js +7 -7
- package/lib/maps/BufferLayerDesignerComponent.js +8 -8
- package/lib/maps/ChoroplethLayer.js +6 -6
- package/lib/maps/ChoroplethLayerDesigner.js +16 -16
- package/lib/maps/ClusterLayer.js +3 -3
- package/lib/maps/ClusterLayerDesignerComponent.js +5 -5
- package/lib/maps/DetailLevelSelectComponent.d.ts +11 -1
- package/lib/maps/DetailLevelSelectComponent.js +3 -3
- package/lib/maps/DirectMapDataSource.js +1 -2
- package/lib/maps/EditHoverOver.js +7 -5
- package/lib/maps/EditPopupComponent.js +2 -2
- package/lib/maps/GridLayer.js +5 -5
- package/lib/maps/GridLayerDesigner.js +15 -15
- package/lib/maps/LayerSwitcherComponent.js +1 -2
- package/lib/maps/LeafletMapComponent.d.ts +1 -1
- package/lib/maps/LeafletMapComponent.js +1 -1
- package/lib/maps/LegendComponent.js +1 -1
- package/lib/maps/MWaterServerLayer.d.ts +0 -1
- package/lib/maps/MWaterServerLayer.js +1 -1
- package/lib/maps/MapComponent.js +8 -8
- package/lib/maps/MapControlComponent.js +1 -1
- package/lib/maps/MapDesignerComponent.js +16 -16
- package/lib/maps/MapFiltersDesignerComponent.js +2 -2
- package/lib/maps/MapLayerViewDesignerComponent.js +8 -8
- package/lib/maps/MapUtils.js +6 -7
- package/lib/maps/MapViewComponent.js +1 -2
- package/lib/maps/MarkerSymbolSelectComponent.js +3 -3
- package/lib/maps/MarkersLayer.js +6 -7
- package/lib/maps/MarkersLayerDesignerComponent.js +22 -22
- package/lib/maps/PopupFilterJoinsEditComponent.js +4 -4
- package/lib/maps/PopupFilterJoinsUtils.js +2 -3
- package/lib/maps/RasterMapViewComponent.d.ts +3 -3
- package/lib/maps/RasterMapViewComponent.js +4 -4
- package/lib/maps/RegionSelectComponent.d.ts +1 -3
- package/lib/maps/RegionSelectComponent.js +1 -2
- package/lib/maps/ScopeAndDetailLevelComponent.js +3 -3
- package/lib/maps/TileUrlLayer.d.ts +1 -1
- package/lib/maps/TileUrlLayer.js +3 -3
- package/lib/maps/VectorMapViewComponent.js +6 -7
- package/lib/maps/ZoomLevelsComponent.js +5 -5
- package/lib/maps/mapSymbols.d.ts +1 -1
- package/lib/maps/mapSymbols.js +51 -50
- package/lib/maps/mapboxUtils.js +2 -3
- package/lib/maps/maps.d.ts +0 -1
- package/lib/maps/vectorMaps.js +14 -15
- package/lib/memoizedDebounce.js +1 -2
- package/lib/quickfilter/DateExprComponent.d.ts +4 -0
- package/lib/quickfilter/DateExprComponent.js +17 -16
- package/lib/quickfilter/IdArrayQuickfilterComponent.js +1 -1
- package/lib/quickfilter/QuickfilterUtils.js +1 -2
- package/lib/quickfilter/QuickfiltersComponent.d.ts +23 -2
- package/lib/quickfilter/QuickfiltersComponent.js +2 -2
- package/lib/quickfilter/QuickfiltersDesignComponent.js +8 -8
- package/lib/quickfilter/TextLiteralComponent.d.ts +35 -2
- package/lib/quickfilter/TextLiteralComponent.js +6 -6
- package/lib/richtext/DropdownPaletteItem.js +1 -1
- package/lib/richtext/ExprItemsHtmlConverter.js +8 -10
- package/lib/richtext/FontColorPaletteItem.js +7 -7
- package/lib/richtext/ItemsHtmlConverter.js +0 -1
- package/lib/richtext/RichTextComponent.d.ts +1 -0
- package/lib/richtext/RichTextComponent.js +33 -29
- package/lib/valueFormatter.js +18 -19
- package/lib/wellknown.js +2 -3
- package/lib/widgets/IFrameWidgetComponent.d.ts +9 -1
- package/lib/widgets/IFrameWidgetComponent.js +3 -3
- package/lib/widgets/ImageUploaderComponent.js +5 -5
- package/lib/widgets/ImageWidget.js +2 -2
- package/lib/widgets/ImageWidgetComponent.d.ts +9 -1
- package/lib/widgets/ImageWidgetComponent.js +20 -20
- package/lib/widgets/ImagelistCarouselComponent.js +1 -1
- package/lib/widgets/MapWidget.js +2 -2
- package/lib/widgets/MarkdownWidget.d.ts +1 -1
- package/lib/widgets/MarkdownWidget.js +1 -1
- package/lib/widgets/TOCWidget.js +11 -12
- package/lib/widgets/WidgetScopesViewComponent.js +1 -1
- package/lib/widgets/charts/Chart.js +1 -1
- package/lib/widgets/charts/ChartViewComponent.js +9 -9
- package/lib/widgets/charts/ChartWidgetComponent.js +4 -4
- package/lib/widgets/charts/calendar/CalendarChart.js +4 -4
- package/lib/widgets/charts/calendar/CalendarChartDesignerComponent.js +7 -7
- package/lib/widgets/charts/calendar/CalendarChartViewComponent.js +3 -3
- package/lib/widgets/charts/imagemosaic/ImageMosaicChart.d.ts +18 -5
- package/lib/widgets/charts/imagemosaic/ImageMosaicChart.js +3 -4
- package/lib/widgets/charts/imagemosaic/ImageMosaicChartDesignerComponent.js +5 -5
- package/lib/widgets/charts/imagemosaic/ImageMosaicChartViewComponent.d.ts +5 -19
- package/lib/widgets/charts/imagemosaic/ImageMosaicChartViewComponent.js +66 -70
- package/lib/widgets/charts/imagemosaic/ImagePopupComponent.js +1 -1
- package/lib/widgets/charts/layered/LayeredChart.d.ts +1 -1
- package/lib/widgets/charts/layered/LayeredChart.js +9 -9
- package/lib/widgets/charts/layered/LayeredChartCompiler.d.ts +8 -8
- package/lib/widgets/charts/layered/LayeredChartCompiler.js +15 -15
- package/lib/widgets/charts/layered/LayeredChartDesignerComponent.js +33 -33
- package/lib/widgets/charts/layered/LayeredChartLayerDesignerComponent.js +16 -16
- package/lib/widgets/charts/layered/LayeredChartUtils.js +1 -2
- package/lib/widgets/charts/layered/LayeredChartViewComponent.js +4 -4
- package/lib/widgets/charts/pivot/IntersectionDesignerComponent.js +18 -17
- package/lib/widgets/charts/pivot/PivotChart.d.ts +1 -1
- package/lib/widgets/charts/pivot/PivotChart.js +12 -4
- package/lib/widgets/charts/pivot/PivotChartDesignerComponent.d.ts +5 -5
- package/lib/widgets/charts/pivot/PivotChartDesignerComponent.js +10 -10
- package/lib/widgets/charts/pivot/PivotChartLayoutComponent.js +5 -5
- package/lib/widgets/charts/pivot/PivotChartQueryBuilder.d.ts +1 -1
- package/lib/widgets/charts/pivot/PivotChartQueryBuilder.js +5 -6
- package/lib/widgets/charts/pivot/PivotChartUtils.js +11 -12
- package/lib/widgets/charts/pivot/PivotChartViewComponent.js +9 -9
- package/lib/widgets/charts/pivot/SegmentDesignerComponent.d.ts +30 -30
- package/lib/widgets/charts/pivot/SegmentDesignerComponent.js +28 -26
- package/lib/widgets/charts/table/OrderingsComponent.js +2 -2
- package/lib/widgets/charts/table/TableChart.js +3 -3
- package/lib/widgets/charts/table/TableChartDesignerComponent.js +17 -17
- package/lib/widgets/charts/table/TableChartViewComponent.js +3 -3
- package/lib/widgets/text/ExprInsertModalComponent.d.ts +2 -3
- package/lib/widgets/text/ExprInsertModalComponent.js +2 -14
- package/lib/widgets/text/ExprItemEditorComponent.js +4 -4
- package/lib/widgets/text/ExprUpdateModalComponent.d.ts +2 -3
- package/lib/widgets/text/ExprUpdateModalComponent.js +3 -15
- package/lib/widgets/text/TextComponent.js +3 -3
- package/lib/widgets/text/TextWidget.d.ts +1 -1
- package/lib/widgets/text/TextWidgetComponent.js +11 -11
- package/lib/widgets/text/TextWidgetDesign.d.ts +2 -1
- package/lib/widgets/text/TextWidgetDesign.js +1 -2
- package/package.json +3 -3
- package/src/ColorComponent.tsx +2 -2
- package/src/DateRangeComponent.ts +10 -10
- package/src/LocaleContextInjector.tsx +1 -1
- package/src/MWaterAddRelatedFormComponent.ts +7 -7
- package/src/MWaterAddRelatedIndicatorComponent.ts +5 -5
- package/src/MWaterAssetSystemsListComponent.tsx +3 -3
- package/src/MWaterCompleteTableSelectComponent.tsx +36 -35
- package/src/MWaterCustomTablesetListComponent.tsx +4 -4
- package/src/MWaterGlobalFiltersComponent.ts +4 -4
- package/src/MWaterLoaderComponent.ts +1 -1
- package/src/MWaterMetricsTableListComponent.tsx +3 -3
- package/src/MWaterResponsesFilterComponent.ts +6 -6
- package/src/MWaterTableSelectComponent.tsx +6 -7
- package/src/axes/AxisBuilder.ts +42 -44
- package/src/axes/AxisColorEditorComponent.tsx +178 -0
- package/src/axes/AxisComponent.ts +20 -20
- package/src/axes/BinsComponent.tsx +6 -6
- package/src/axes/CategoryMapComponent.ts +10 -10
- package/src/axes/ColorPaletteCollectionComponent.tsx +3 -3
- package/src/axes/RangesComponent.ts +14 -14
- package/src/dashboards/DashboardComponent.tsx +21 -9
- package/src/dashboards/DashboardViewComponent.tsx +3 -3
- package/src/dashboards/FontStyleEditor.tsx +8 -8
- package/src/dashboards/LayoutOptionsComponent.tsx +74 -74
- package/src/dashboards/SettingsModalComponent.tsx +134 -107
- package/src/dashboards/layoutOptions.tsx +5 -1
- package/src/datagrids/DatagridComponent.ts +65 -62
- package/src/datagrids/DatagridDesignerComponent.tsx +17 -17
- package/src/datagrids/DatagridUtils.ts +2 -2
- package/src/datagrids/DatagridViewComponent.ts +3 -3
- package/src/datagrids/ExprCellComponent.ts +1 -1
- package/src/datagrids/FindReplaceModalComponent.ts +13 -13
- package/src/datagrids/OrderBysDesignerComponent.tsx +2 -2
- package/src/globals.d.ts +7 -1
- package/src/languages.ts +2 -2
- package/src/layouts/blocks/BlocksDisplayComponent.tsx +13 -13
- package/src/layouts/blocks/BlocksLayoutManager.ts +3 -2
- package/src/layouts/blocks/ClipboardPaletteItemComponent.ts +3 -3
- package/src/maps/AddLayerComponent.ts +13 -13
- package/src/maps/AdminScopeAndDetailLevelComponent.ts +5 -5
- package/src/maps/BaseLayerDesignerComponent.ts +8 -8
- package/src/maps/BufferLayer.ts +5 -5
- package/src/maps/BufferLayerDesignerComponent.ts +8 -8
- package/src/maps/ChoroplethLayer.ts +3 -3
- package/src/maps/ChoroplethLayerDesigner.tsx +16 -16
- package/src/maps/ClusterLayer.ts +3 -3
- package/src/maps/ClusterLayerDesignerComponent.ts +5 -5
- package/src/maps/DetailLevelSelectComponent.ts +3 -3
- package/src/maps/EditHoverOver.tsx +5 -5
- package/src/maps/EditPopupComponent.ts +2 -2
- package/src/maps/GridLayer.ts +5 -5
- package/src/maps/GridLayerDesigner.tsx +15 -16
- package/src/maps/MWaterServerLayer.ts +1 -1
- package/src/maps/MapComponent.ts +6 -6
- package/src/maps/MapControlComponent.ts +1 -1
- package/src/maps/MapDesignerComponent.tsx +20 -20
- package/src/maps/MapFiltersDesignerComponent.tsx +3 -3
- package/src/maps/MapLayerViewDesignerComponent.ts +9 -9
- package/src/maps/MarkerSymbolSelectComponent.ts +4 -5
- package/src/maps/MarkersLayerDesignerComponent.ts +22 -22
- package/src/maps/PopupFilterJoinsEditComponent.ts +4 -4
- package/src/maps/RasterMapViewComponent.ts +2 -2
- package/src/maps/RegionSelectComponent.ts +1 -2
- package/src/maps/ScopeAndDetailLevelComponent.ts +3 -3
- package/src/maps/TileUrlLayer.tsx +3 -3
- package/src/maps/VectorMapViewComponent.tsx +5 -5
- package/src/maps/ZoomLevelsComponent.ts +6 -6
- package/src/maps/mapSymbols.ts +49 -49
- package/src/maps/vectorMaps.tsx +2 -2
- package/src/quickfilter/DateExprComponent.ts +19 -18
- package/src/quickfilter/IdArrayQuickfilterComponent.ts +1 -1
- package/src/quickfilter/QuickfiltersComponent.ts +1 -1
- package/src/quickfilter/QuickfiltersDesignComponent.tsx +9 -9
- package/src/quickfilter/TextLiteralComponent.ts +4 -4
- package/src/richtext/DropdownPaletteItem.tsx +1 -1
- package/src/richtext/ExprItemsHtmlConverter.ts +8 -10
- package/src/richtext/ItemsHtmlConverter.ts +0 -1
- package/src/richtext/RichTextComponent.tsx +31 -31
- package/src/valueFormatter.ts +14 -14
- package/src/widgets/IFrameWidgetComponent.ts +3 -3
- package/src/widgets/ImageUploaderComponent.tsx +5 -5
- package/src/widgets/ImageWidget.ts +2 -2
- package/src/widgets/ImageWidgetComponent.ts +26 -26
- package/src/widgets/ImagelistCarouselComponent.ts +2 -2
- package/src/widgets/MapWidget.ts +1 -1
- package/src/widgets/MarkdownWidget.ts +1 -1
- package/src/widgets/TOCWidget.ts +13 -14
- package/src/widgets/WidgetScopesViewComponent.ts +1 -1
- package/src/widgets/charts/Chart.ts +1 -1
- package/src/widgets/charts/ChartViewComponent.ts +4 -4
- package/src/widgets/charts/ChartWidgetComponent.tsx +3 -3
- package/src/widgets/charts/calendar/CalendarChart.ts +4 -4
- package/src/widgets/charts/calendar/CalendarChartDesignerComponent.ts +7 -7
- package/src/widgets/charts/calendar/CalendarChartViewComponent.tsx +2 -2
- package/src/widgets/charts/imagemosaic/ImageMosaicChart.ts +25 -8
- package/src/widgets/charts/imagemosaic/ImageMosaicChartDesignerComponent.ts +5 -5
- package/src/widgets/charts/imagemosaic/ImageMosaicChartViewComponent.tsx +128 -0
- package/src/widgets/charts/layered/LayeredChart.ts +9 -9
- package/src/widgets/charts/layered/LayeredChartCompiler.ts +45 -45
- package/src/widgets/charts/layered/LayeredChartDesignerComponent.tsx +39 -39
- package/src/widgets/charts/layered/LayeredChartLayerDesignerComponent.tsx +18 -19
- package/src/widgets/charts/layered/LayeredChartViewComponent.ts +1 -1
- package/src/widgets/charts/pivot/IntersectionDesignerComponent.tsx +22 -23
- package/src/widgets/charts/pivot/PivotChart.ts +15 -5
- package/src/widgets/charts/pivot/PivotChartDesignerComponent.tsx +12 -12
- package/src/widgets/charts/pivot/PivotChartLayoutComponent.tsx +5 -5
- package/src/widgets/charts/pivot/PivotChartQueryBuilder.ts +7 -8
- package/src/widgets/charts/pivot/PivotChartViewComponent.tsx +6 -6
- package/src/widgets/charts/pivot/SegmentDesignerComponent.tsx +30 -30
- package/src/widgets/charts/table/OrderingsComponent.tsx +2 -2
- package/src/widgets/charts/table/TableChart.ts +3 -3
- package/src/widgets/charts/table/TableChartDesignerComponent.ts +16 -16
- package/src/widgets/charts/table/TableChartViewComponent.ts +2 -2
- package/src/widgets/text/{ExprInsertModalComponent.ts → ExprInsertModalComponent.tsx} +18 -20
- package/src/widgets/text/ExprItemEditorComponent.tsx +4 -4
- package/src/widgets/text/{ExprUpdateModalComponent.ts → ExprUpdateModalComponent.tsx} +18 -20
- package/src/widgets/text/TextComponent.tsx +2 -2
- package/src/widgets/text/TextWidgetComponent.tsx +10 -10
- package/src/widgets/text/TextWidgetDesign.ts +3 -1
- package/src/axes/AxisColorEditorComponent.ts +0 -210
- package/src/widgets/charts/imagemosaic/ImageMosaicChartViewComponent.ts +0 -117
|
@@ -135,28 +135,28 @@ export default class ChoroplethLayerDesigner extends React.Component<{
|
|
|
135
135
|
renderRegionMode() {
|
|
136
136
|
return (
|
|
137
137
|
<div className="mb-3">
|
|
138
|
-
<label className="text-muted">Mode</label>
|
|
138
|
+
<label className="text-muted">{T`Mode`}</label>
|
|
139
139
|
<div style={{ marginLeft: 10 }}>
|
|
140
140
|
<ui.Radio
|
|
141
141
|
inline
|
|
142
142
|
radioValue="plain"
|
|
143
143
|
value={this.props.design.regionMode}
|
|
144
144
|
onChange={this.handleRegionModeChange}>
|
|
145
|
-
Single Color
|
|
145
|
+
{T`Single Color`}
|
|
146
146
|
</ui.Radio>
|
|
147
147
|
<ui.Radio
|
|
148
148
|
inline
|
|
149
149
|
radioValue="indirect"
|
|
150
150
|
value={this.props.design.regionMode}
|
|
151
151
|
onChange={this.handleRegionModeChange}>
|
|
152
|
-
Color By Data
|
|
152
|
+
{T`Color By Data`}
|
|
153
153
|
</ui.Radio>
|
|
154
154
|
<ui.Radio
|
|
155
155
|
inline
|
|
156
156
|
radioValue="direct"
|
|
157
157
|
value={this.props.design.regionMode}
|
|
158
158
|
onChange={this.handleRegionModeChange}>
|
|
159
|
-
Advanced
|
|
159
|
+
{T`Advanced`}
|
|
160
160
|
</ui.Radio>
|
|
161
161
|
</div>
|
|
162
162
|
</div>
|
|
@@ -173,7 +173,7 @@ export default class ChoroplethLayerDesigner extends React.Component<{
|
|
|
173
173
|
<div className="mb-3">
|
|
174
174
|
<label className="text-muted">
|
|
175
175
|
<i className="fa fa-database" />
|
|
176
|
-
{
|
|
176
|
+
{T` Data Source`}
|
|
177
177
|
</label>
|
|
178
178
|
<TableSelectComponent
|
|
179
179
|
schema={this.props.schema}
|
|
@@ -196,14 +196,14 @@ export default class ChoroplethLayerDesigner extends React.Component<{
|
|
|
196
196
|
|
|
197
197
|
return (
|
|
198
198
|
<div className="mb-3">
|
|
199
|
-
<label className="text-muted">Regions Type</label>
|
|
199
|
+
<label className="text-muted">{T`Regions Type`}</label>
|
|
200
200
|
<div style={{ marginLeft: 8 }}>
|
|
201
201
|
<select
|
|
202
202
|
value={regionsTable}
|
|
203
203
|
onChange={ev => this.handleRegionsTableChange(ev.target.value)}
|
|
204
204
|
className="form-select">
|
|
205
|
-
<option value="admin_regions">Administrative Regions (from mWater global database)</option>
|
|
206
|
-
<option disabled
|
|
205
|
+
<option value="admin_regions">{T`Administrative Regions (from mWater global database)`}</option>
|
|
206
|
+
<option disabled>{T`── Custom regions (special regions uploaded for specific purposes) ──`}</option>
|
|
207
207
|
{options.map(opt => (
|
|
208
208
|
<option value={opt.value}>{opt.label}</option>
|
|
209
209
|
))}
|
|
@@ -230,7 +230,7 @@ export default class ChoroplethLayerDesigner extends React.Component<{
|
|
|
230
230
|
<div className="mb-3">
|
|
231
231
|
<label className="text-muted">
|
|
232
232
|
<i className="fas fa-map-marker-alt" />
|
|
233
|
-
{
|
|
233
|
+
{T` Location`}
|
|
234
234
|
</label>
|
|
235
235
|
<div style={{ marginLeft: 8 }}>
|
|
236
236
|
<ExprComponent
|
|
@@ -277,7 +277,7 @@ export default class ChoroplethLayerDesigner extends React.Component<{
|
|
|
277
277
|
"div",
|
|
278
278
|
{ className: "mb-3" },
|
|
279
279
|
<ui.Checkbox value={this.props.design.displayNames} onChange={value => this.handleDisplayNamesChange(value)}>
|
|
280
|
-
Display Region Names
|
|
280
|
+
{T`Display Region Names`}
|
|
281
281
|
</ui.Checkbox>
|
|
282
282
|
)
|
|
283
283
|
}
|
|
@@ -291,7 +291,7 @@ export default class ChoroplethLayerDesigner extends React.Component<{
|
|
|
291
291
|
return R(
|
|
292
292
|
"div",
|
|
293
293
|
{ className: "mb-3" },
|
|
294
|
-
R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }),
|
|
294
|
+
R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }), T`Fill Color`),
|
|
295
295
|
|
|
296
296
|
R(
|
|
297
297
|
"div",
|
|
@@ -332,7 +332,7 @@ export default class ChoroplethLayerDesigner extends React.Component<{
|
|
|
332
332
|
R(
|
|
333
333
|
"div",
|
|
334
334
|
{ className: "mb-3" },
|
|
335
|
-
R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }),
|
|
335
|
+
R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }), T`Color By Data`),
|
|
336
336
|
|
|
337
337
|
R(AxisComponent, {
|
|
338
338
|
schema: this.props.schema,
|
|
@@ -384,7 +384,7 @@ export default class ChoroplethLayerDesigner extends React.Component<{
|
|
|
384
384
|
R(
|
|
385
385
|
"div",
|
|
386
386
|
{ className: "mb-3" },
|
|
387
|
-
R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }),
|
|
387
|
+
R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }), T`Color By Data`),
|
|
388
388
|
|
|
389
389
|
R(AxisComponent, {
|
|
390
390
|
schema: this.props.schema,
|
|
@@ -432,7 +432,7 @@ export default class ChoroplethLayerDesigner extends React.Component<{
|
|
|
432
432
|
R(
|
|
433
433
|
"label",
|
|
434
434
|
{ className: "text-muted" },
|
|
435
|
-
`Fill Opacity: ${(this.props.design.fillOpacity * this.props.design.fillOpacity * 100).toFixed(0)}%`
|
|
435
|
+
T`Fill Opacity: ${(this.props.design.fillOpacity * this.props.design.fillOpacity * 100).toFixed(0)}%`
|
|
436
436
|
),
|
|
437
437
|
": ",
|
|
438
438
|
R(Rcslider, {
|
|
@@ -450,7 +450,7 @@ export default class ChoroplethLayerDesigner extends React.Component<{
|
|
|
450
450
|
return R(
|
|
451
451
|
"div",
|
|
452
452
|
{ className: "mb-3" },
|
|
453
|
-
R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }),
|
|
453
|
+
R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }), T`Border Color`),
|
|
454
454
|
|
|
455
455
|
R(
|
|
456
456
|
"div",
|
|
@@ -472,7 +472,7 @@ export default class ChoroplethLayerDesigner extends React.Component<{
|
|
|
472
472
|
return R(
|
|
473
473
|
"div",
|
|
474
474
|
{ className: "mb-3" },
|
|
475
|
-
R("label", { className: "text-muted" }, R("span", { className: "fas fa-filter" }),
|
|
475
|
+
R("label", { className: "text-muted" }, R("span", { className: "fas fa-filter" }), T`Filters`),
|
|
476
476
|
R(
|
|
477
477
|
"div",
|
|
478
478
|
{ style: { marginLeft: 8 } },
|
package/src/maps/ClusterLayer.ts
CHANGED
|
@@ -810,11 +810,11 @@ export default class ClusterLayer extends Layer<ClusterLayerDesign> {
|
|
|
810
810
|
const exprValidator = new ExprValidator(schema)
|
|
811
811
|
|
|
812
812
|
if (!design.table) {
|
|
813
|
-
return
|
|
813
|
+
return T`Missing table`
|
|
814
814
|
}
|
|
815
815
|
|
|
816
816
|
if (!design.axes || !design.axes.geometry) {
|
|
817
|
-
return
|
|
817
|
+
return T`Missing axes`
|
|
818
818
|
}
|
|
819
819
|
|
|
820
820
|
let error = axisBuilder.validateAxis({ axis: design.axes.geometry })
|
|
@@ -824,7 +824,7 @@ export default class ClusterLayer extends Layer<ClusterLayerDesign> {
|
|
|
824
824
|
|
|
825
825
|
// Check type of axis (prevents blank axes)
|
|
826
826
|
if (axisBuilder.getAxisType(design.axes.geometry) != "geometry") {
|
|
827
|
-
return
|
|
827
|
+
return T`Geometry axis required`
|
|
828
828
|
}
|
|
829
829
|
|
|
830
830
|
// Validate filter
|
|
@@ -54,7 +54,7 @@ export default class ClusterLayerDesignerComponent extends React.Component<Clust
|
|
|
54
54
|
return R(
|
|
55
55
|
"div",
|
|
56
56
|
{ className: "mb-3" },
|
|
57
|
-
R("label", { className: "text-muted" }, R("i", { className: "fa fa-database" }), " ",
|
|
57
|
+
R("label", { className: "text-muted" }, R("i", { className: "fa fa-database" }), " ", T`Data Source`),
|
|
58
58
|
R(
|
|
59
59
|
"div",
|
|
60
60
|
{ style: { marginLeft: 10 } },
|
|
@@ -74,7 +74,7 @@ export default class ClusterLayerDesignerComponent extends React.Component<Clust
|
|
|
74
74
|
return
|
|
75
75
|
}
|
|
76
76
|
|
|
77
|
-
const title = R("span", null, R("span", { className: "fas fa-map-marker-alt" }), " Locations to Cluster
|
|
77
|
+
const title = R("span", null, R("span", { className: "fas fa-map-marker-alt" }), " ", T`Locations to Cluster`)
|
|
78
78
|
|
|
79
79
|
const filters = _.clone(this.props.filters) || []
|
|
80
80
|
|
|
@@ -115,7 +115,7 @@ export default class ClusterLayerDesignerComponent extends React.Component<Clust
|
|
|
115
115
|
return R(
|
|
116
116
|
"div",
|
|
117
117
|
{ className: "mb-3" },
|
|
118
|
-
R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }),
|
|
118
|
+
R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }), T`Text Color`),
|
|
119
119
|
|
|
120
120
|
R(
|
|
121
121
|
"div",
|
|
@@ -136,7 +136,7 @@ export default class ClusterLayerDesignerComponent extends React.Component<Clust
|
|
|
136
136
|
return R(
|
|
137
137
|
"div",
|
|
138
138
|
{ className: "mb-3" },
|
|
139
|
-
R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }),
|
|
139
|
+
R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }), T`Marker Color`),
|
|
140
140
|
|
|
141
141
|
R(
|
|
142
142
|
"div",
|
|
@@ -158,7 +158,7 @@ export default class ClusterLayerDesignerComponent extends React.Component<Clust
|
|
|
158
158
|
return R(
|
|
159
159
|
"div",
|
|
160
160
|
{ className: "mb-3" },
|
|
161
|
-
R("label", { className: "text-muted" }, R("span", { className: "fas fa-filter" }),
|
|
161
|
+
R("label", { className: "text-muted" }, R("span", { className: "fas fa-filter" }), T`Filters`),
|
|
162
162
|
R(
|
|
163
163
|
"div",
|
|
164
164
|
{ style: { marginLeft: 8 } },
|
|
@@ -59,7 +59,7 @@ export default class DetailLevelSelectComponent extends React.Component<
|
|
|
59
59
|
// Execute query
|
|
60
60
|
return props.dataSource.performQuery(query, (err: any, rows: any) => {
|
|
61
61
|
if (err) {
|
|
62
|
-
alert(
|
|
62
|
+
alert(T`Error loading detail levels`)
|
|
63
63
|
return
|
|
64
64
|
}
|
|
65
65
|
|
|
@@ -84,7 +84,7 @@ export default class DetailLevelSelectComponent extends React.Component<
|
|
|
84
84
|
// Execute query
|
|
85
85
|
return props.dataSource.performQuery(query, (err: any, rows: any[]) => {
|
|
86
86
|
if (err) {
|
|
87
|
-
alert(
|
|
87
|
+
alert(T`Error loading detail levels`)
|
|
88
88
|
return
|
|
89
89
|
}
|
|
90
90
|
|
|
@@ -113,7 +113,7 @@ export default class DetailLevelSelectComponent extends React.Component<
|
|
|
113
113
|
onChange: (opt: any) => this.props.onChange(opt.value)
|
|
114
114
|
})
|
|
115
115
|
} else {
|
|
116
|
-
return R("div", { className: "text-muted" }, R("i", { className: "fa fa-spinner fa-spin" }),
|
|
116
|
+
return R("div", { className: "text-muted" }, R("i", { className: "fa fa-spinner fa-spin" }), T` Loading...`)
|
|
117
117
|
}
|
|
118
118
|
}
|
|
119
119
|
}
|
|
@@ -54,11 +54,11 @@ const EditHoverOver: React.FC<EditHoverOverProps> = props => {
|
|
|
54
54
|
return (
|
|
55
55
|
<>
|
|
56
56
|
<button className="btn btn-link" onClick={() => setEditing(true)}>
|
|
57
|
-
<span className="fa fa-pencil" /> Customize Hoverover
|
|
57
|
+
<span className="fa fa-pencil" /> {T`Customize Hoverover`}
|
|
58
58
|
</button>
|
|
59
59
|
{props.design.hoverOver && (
|
|
60
60
|
<button className="btn btn-link" onClick={handleRemovePopup}>
|
|
61
|
-
<span className="fa fa-times" /> Remove Hover over
|
|
61
|
+
<span className="fa fa-times" /> {T`Remove Hover over`}
|
|
62
62
|
</button>
|
|
63
63
|
)}
|
|
64
64
|
|
|
@@ -68,8 +68,8 @@ const EditHoverOver: React.FC<EditHoverOverProps> = props => {
|
|
|
68
68
|
<table className="table">
|
|
69
69
|
<thead>
|
|
70
70
|
<tr>
|
|
71
|
-
<th>Label</th>
|
|
72
|
-
<th>Value</th>
|
|
71
|
+
<th>{T`Label`}</th>
|
|
72
|
+
<th>{T`Value`}</th>
|
|
73
73
|
<th></th>
|
|
74
74
|
</tr>
|
|
75
75
|
</thead>
|
|
@@ -98,7 +98,7 @@ const EditHoverOver: React.FC<EditHoverOverProps> = props => {
|
|
|
98
98
|
])
|
|
99
99
|
}>
|
|
100
100
|
<span className="fa fa-plus" />
|
|
101
|
-
Add item
|
|
101
|
+
{T`Add item`}
|
|
102
102
|
</button>
|
|
103
103
|
)}
|
|
104
104
|
</ModalWindowComponent>
|
|
@@ -56,7 +56,7 @@ export default class EditPopupComponent extends React.Component<EditPopupCompone
|
|
|
56
56
|
"a",
|
|
57
57
|
{ className: "btn btn-link", onClick: () => this.setState({ editing: true }) },
|
|
58
58
|
R("i", { className: "fa fa-pencil" }),
|
|
59
|
-
|
|
59
|
+
T` Customize Popup`
|
|
60
60
|
),
|
|
61
61
|
|
|
62
62
|
this.props.design.popup
|
|
@@ -64,7 +64,7 @@ export default class EditPopupComponent extends React.Component<EditPopupCompone
|
|
|
64
64
|
"a",
|
|
65
65
|
{ className: "btn btn-link", onClick: this.handleRemovePopup },
|
|
66
66
|
R("i", { className: "fa fa-times" }),
|
|
67
|
-
|
|
67
|
+
T` Remove Popup`
|
|
68
68
|
)
|
|
69
69
|
: undefined,
|
|
70
70
|
|
package/src/maps/GridLayer.ts
CHANGED
|
@@ -718,19 +718,19 @@ export default class GridLayer extends Layer<GridLayerDesign> {
|
|
|
718
718
|
const exprValidator = new ExprValidator(schema)
|
|
719
719
|
|
|
720
720
|
if (!design.shape) {
|
|
721
|
-
return
|
|
721
|
+
return T`Missing shape`
|
|
722
722
|
}
|
|
723
723
|
if (!design.table) {
|
|
724
|
-
return
|
|
724
|
+
return T`Missing table`
|
|
725
725
|
}
|
|
726
726
|
if (!design.geometryExpr || exprUtils.getExprType(design.geometryExpr) !== "geometry") {
|
|
727
|
-
return
|
|
727
|
+
return T`Missing geometry expr`
|
|
728
728
|
}
|
|
729
729
|
if (!design.size || !design.sizeUnits) {
|
|
730
|
-
return
|
|
730
|
+
return T`Missing size`
|
|
731
731
|
}
|
|
732
732
|
if (!design.colorAxis) {
|
|
733
|
-
return
|
|
733
|
+
return T`Missing color axis`
|
|
734
734
|
}
|
|
735
735
|
|
|
736
736
|
error = axisBuilder.validateAxis({ axis: design.colorAxis as Axis })
|
|
@@ -94,7 +94,7 @@ export default class GridLayerDesigner extends React.Component<{
|
|
|
94
94
|
renderShape() {
|
|
95
95
|
return (
|
|
96
96
|
<div className="mb-3">
|
|
97
|
-
<label className="text-muted">Grid Type</label>
|
|
97
|
+
<label className="text-muted">{T`Grid Type`}</label>
|
|
98
98
|
<div style={{ marginLeft: 10 }}>
|
|
99
99
|
<ui.Toggle<"square" | "hex" | undefined>
|
|
100
100
|
allowReset={false}
|
|
@@ -102,8 +102,8 @@ export default class GridLayerDesigner extends React.Component<{
|
|
|
102
102
|
onChange={this.handleShapeChange}
|
|
103
103
|
size="sm"
|
|
104
104
|
options={[
|
|
105
|
-
{ value: "hex", label:
|
|
106
|
-
{ value: "square", label:
|
|
105
|
+
{ value: "hex", label: T`Hexagonal` },
|
|
106
|
+
{ value: "square", label: T`Square` }
|
|
107
107
|
]}
|
|
108
108
|
/>
|
|
109
109
|
</div>
|
|
@@ -114,7 +114,7 @@ export default class GridLayerDesigner extends React.Component<{
|
|
|
114
114
|
renderSize() {
|
|
115
115
|
return (
|
|
116
116
|
<div className="mb-3">
|
|
117
|
-
<label className="text-muted">Size</label>
|
|
117
|
+
<label className="text-muted">{T`Size`}</label>
|
|
118
118
|
<div style={{ marginLeft: 10 }}>
|
|
119
119
|
<div style={{ display: "inline-block" }}>
|
|
120
120
|
<ui.NumberInput decimal={true} value={this.props.design.size} onChange={this.handleSizeChange} />
|
|
@@ -127,15 +127,14 @@ export default class GridLayerDesigner extends React.Component<{
|
|
|
127
127
|
onChange={this.handleSizeUnitsChange}
|
|
128
128
|
size="sm"
|
|
129
129
|
options={[
|
|
130
|
-
{ value: "pixels", label:
|
|
131
|
-
{ value: "meters", label:
|
|
130
|
+
{ value: "pixels", label: T`Pixels` },
|
|
131
|
+
{ value: "meters", label: T`Meters (approximate)` }
|
|
132
132
|
]}
|
|
133
133
|
/>
|
|
134
134
|
</div>
|
|
135
135
|
|
|
136
136
|
<PopoverHelpComponent placement="bottom">
|
|
137
|
-
Pixel grids always appear to be the same size when zoomed. Meters are for a fixed-size grid and have limits
|
|
138
|
-
on how far the user can zoom out.
|
|
137
|
+
{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.`}
|
|
139
138
|
</PopoverHelpComponent>
|
|
140
139
|
</div>
|
|
141
140
|
</div>
|
|
@@ -147,7 +146,7 @@ export default class GridLayerDesigner extends React.Component<{
|
|
|
147
146
|
<div className="mb-3">
|
|
148
147
|
<label className="text-muted">
|
|
149
148
|
<i className="fa fa-database" />
|
|
150
|
-
{
|
|
149
|
+
{T` Data Source`}
|
|
151
150
|
</label>
|
|
152
151
|
<TableSelectComponent
|
|
153
152
|
schema={this.props.schema}
|
|
@@ -170,7 +169,7 @@ export default class GridLayerDesigner extends React.Component<{
|
|
|
170
169
|
<div className="mb-3">
|
|
171
170
|
<label className="text-muted">
|
|
172
171
|
<i className="fas fa-map-marker-alt" />
|
|
173
|
-
{
|
|
172
|
+
{T` Location`}
|
|
174
173
|
</label>
|
|
175
174
|
<div style={{ marginLeft: 8 }}>
|
|
176
175
|
<ExprComponent
|
|
@@ -210,7 +209,7 @@ export default class GridLayerDesigner extends React.Component<{
|
|
|
210
209
|
R(
|
|
211
210
|
"div",
|
|
212
211
|
{ className: "mb-3" },
|
|
213
|
-
R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }),
|
|
212
|
+
R("label", { className: "text-muted" }, R("span", { className: "fas fa-tint" }), T`Color By Data`),
|
|
214
213
|
|
|
215
214
|
R(AxisComponent, {
|
|
216
215
|
schema: this.props.schema,
|
|
@@ -232,7 +231,7 @@ export default class GridLayerDesigner extends React.Component<{
|
|
|
232
231
|
return R(
|
|
233
232
|
"div",
|
|
234
233
|
{ className: "mb-3" },
|
|
235
|
-
R("label", { className: "text-muted" },
|
|
234
|
+
R("label", { className: "text-muted" }, T`Fill Opacity (%)`),
|
|
236
235
|
": ",
|
|
237
236
|
R(Rcslider, {
|
|
238
237
|
min: 0,
|
|
@@ -248,7 +247,7 @@ export default class GridLayerDesigner extends React.Component<{
|
|
|
248
247
|
renderBorderStyle() {
|
|
249
248
|
return (
|
|
250
249
|
<div className="mb-3">
|
|
251
|
-
<label className="text-muted">Border Style</label>
|
|
250
|
+
<label className="text-muted">{T`Border Style`}</label>
|
|
252
251
|
<div style={{ marginLeft: 10 }}>
|
|
253
252
|
<ui.Toggle<"none" | "color" | undefined>
|
|
254
253
|
allowReset={false}
|
|
@@ -256,8 +255,8 @@ export default class GridLayerDesigner extends React.Component<{
|
|
|
256
255
|
onChange={this.handleBorderStyleChange}
|
|
257
256
|
size="sm"
|
|
258
257
|
options={[
|
|
259
|
-
{ value: "none", label:
|
|
260
|
-
{ value: "color", label:
|
|
258
|
+
{ value: "none", label: T`None` },
|
|
259
|
+
{ value: "color", label: T`Line` }
|
|
261
260
|
]}
|
|
262
261
|
/>
|
|
263
262
|
</div>
|
|
@@ -273,7 +272,7 @@ export default class GridLayerDesigner extends React.Component<{
|
|
|
273
272
|
return R(
|
|
274
273
|
"div",
|
|
275
274
|
{ className: "mb-3" },
|
|
276
|
-
R("label", { className: "text-muted" }, R("span", { className: "fas fa-filter" }),
|
|
275
|
+
R("label", { className: "text-muted" }, R("span", { className: "fas fa-filter" }), T` Filters`),
|
|
277
276
|
R(
|
|
278
277
|
"div",
|
|
279
278
|
{ style: { marginLeft: 8 } },
|
|
@@ -90,7 +90,7 @@ interface LoadingLegendState {
|
|
|
90
90
|
class LoadingLegend extends React.Component<LoadingLegendProps, LoadingLegendState> {
|
|
91
91
|
constructor(props: any) {
|
|
92
92
|
super(props)
|
|
93
|
-
this.state = { html:
|
|
93
|
+
this.state = { html: T`Loading...` }
|
|
94
94
|
}
|
|
95
95
|
|
|
96
96
|
componentDidMount() {
|
package/src/maps/MapComponent.ts
CHANGED
|
@@ -15,7 +15,7 @@ import { JsonQLFilter } from "../JsonQLFilter"
|
|
|
15
15
|
import QuickfilterCompiler from "../quickfilter/QuickfilterCompiler"
|
|
16
16
|
import QuickfiltersComponent from "../quickfilter/QuickfiltersComponent"
|
|
17
17
|
import { getCompiledFilters, getFilterableTables } from "./MapUtils"
|
|
18
|
-
import { LocaleContext } from "@mwater/expressions-ui
|
|
18
|
+
import { LocaleContext } from "@mwater/expressions-ui"
|
|
19
19
|
|
|
20
20
|
export interface MapComponentProps {
|
|
21
21
|
schema: Schema
|
|
@@ -123,7 +123,7 @@ export default class MapComponent extends React.Component<MapComponentProps, Map
|
|
|
123
123
|
className: `fa ${this.state.zoomLocked ? "fa-lock red" : "fa-unlock green"}`,
|
|
124
124
|
style: { marginRight: 5 }
|
|
125
125
|
}),
|
|
126
|
-
R(PopoverHelpComponent, { placement: "bottom" },
|
|
126
|
+
R(PopoverHelpComponent, { placement: "bottom" }, T`Changes to zoom level wont be saved in locked mode`)
|
|
127
127
|
),
|
|
128
128
|
R(
|
|
129
129
|
"a",
|
|
@@ -133,7 +133,7 @@ export default class MapComponent extends React.Component<MapComponentProps, Map
|
|
|
133
133
|
onClick: this.handleUndo
|
|
134
134
|
},
|
|
135
135
|
R("span", { className: "fas fa-caret-left" }),
|
|
136
|
-
R("span", { className: "hide-600px" },
|
|
136
|
+
R("span", { className: "hide-600px" }, T` Undo`)
|
|
137
137
|
),
|
|
138
138
|
" ",
|
|
139
139
|
R(
|
|
@@ -144,7 +144,7 @@ export default class MapComponent extends React.Component<MapComponentProps, Map
|
|
|
144
144
|
onClick: this.handleRedo
|
|
145
145
|
},
|
|
146
146
|
R("span", { className: "fas fa-caret-right" }),
|
|
147
|
-
R("span", { className: "hide-600px" },
|
|
147
|
+
R("span", { className: "hide-600px" }, T` Redo`)
|
|
148
148
|
)
|
|
149
149
|
]
|
|
150
150
|
: undefined,
|
|
@@ -153,11 +153,11 @@ export default class MapComponent extends React.Component<MapComponentProps, Map
|
|
|
153
153
|
"a",
|
|
154
154
|
{ key: "showQuickfilters", className: "btn btn-link btn-sm", onClick: this.handleShowQuickfilters },
|
|
155
155
|
R("span", { className: "fa fa-filter" }),
|
|
156
|
-
R("span", { className: "hide-600px" },
|
|
156
|
+
R("span", { className: "hide-600px" }, T` Show Quickfilters`)
|
|
157
157
|
)
|
|
158
158
|
: undefined,
|
|
159
159
|
this.props.extraTitleButtonsElem,
|
|
160
|
-
R("a", { key: "toggleDesign", className: "btn btn-link btn-sm", onClick: this.handleToggleDesignPanel, alt:
|
|
160
|
+
R("a", { key: "toggleDesign", className: "btn btn-link btn-sm", onClick: this.handleToggleDesignPanel, alt: T`Toggle design panel` },
|
|
161
161
|
this.getDesign().hideDesignPanel ?
|
|
162
162
|
R("span", { className: "fas fa-angle-double-left" })
|
|
163
163
|
: R("span", { className: "fas fa-angle-double-right" }))
|
|
@@ -34,7 +34,7 @@ export default class MapControlComponent extends React.Component<MapControlCompo
|
|
|
34
34
|
R(
|
|
35
35
|
"div",
|
|
36
36
|
{ className: "mb-3" },
|
|
37
|
-
R("label", { className: "text-muted" },
|
|
37
|
+
R("label", { className: "text-muted" }, T`Map Style`),
|
|
38
38
|
|
|
39
39
|
R(BaseLayerDesignerComponent, {
|
|
40
40
|
design: this.props.design,
|
|
@@ -83,11 +83,11 @@ export default class MapDesignerComponent extends React.Component<MapDesignerCom
|
|
|
83
83
|
R(
|
|
84
84
|
"span",
|
|
85
85
|
{ className: "text-muted" },
|
|
86
|
-
|
|
86
|
+
T`Automatic zoom `,
|
|
87
87
|
R(
|
|
88
88
|
PopoverHelpComponent,
|
|
89
89
|
{ placement: "left" },
|
|
90
|
-
|
|
90
|
+
T`Automatically zoom to the complete data whenever the map is loaded or the filters change`
|
|
91
91
|
)
|
|
92
92
|
)
|
|
93
93
|
),
|
|
@@ -101,21 +101,21 @@ export default class MapDesignerComponent extends React.Component<MapDesignerCom
|
|
|
101
101
|
R(
|
|
102
102
|
"span",
|
|
103
103
|
{ className: "text-muted" },
|
|
104
|
-
|
|
105
|
-
R(PopoverHelpComponent, { placement: "left" },
|
|
104
|
+
T`Show Layer Switcher `,
|
|
105
|
+
R(PopoverHelpComponent, { placement: "left" }, T`Show a control in the map allowing switching layers`)
|
|
106
106
|
)
|
|
107
107
|
),
|
|
108
108
|
|
|
109
109
|
R(
|
|
110
110
|
ui.FormGroup,
|
|
111
|
-
{ label:
|
|
111
|
+
{ label: T`Initial Legend Display`, labelMuted: true },
|
|
112
112
|
R(ui.Select, {
|
|
113
113
|
value: this.props.design.initialLegendDisplay || "open",
|
|
114
114
|
onChange: this.handleInitialLegendDisplayChange,
|
|
115
115
|
options: [
|
|
116
|
-
{ value: "open", label:
|
|
117
|
-
{ value: "closed", label:
|
|
118
|
-
{ value: "closedIfSmall", label:
|
|
116
|
+
{ value: "open", label: T`Open` },
|
|
117
|
+
{ value: "closed", label: T`Closed` },
|
|
118
|
+
{ value: "closedIfSmall", label: T`Open if wide enough` }
|
|
119
119
|
],
|
|
120
120
|
style: { width: "auto" }
|
|
121
121
|
})
|
|
@@ -128,7 +128,7 @@ export default class MapDesignerComponent extends React.Component<MapDesignerCom
|
|
|
128
128
|
R(
|
|
129
129
|
"a",
|
|
130
130
|
{ onClick: this.handleConvertToClusterMap, className: "btn btn-link btn-sm" },
|
|
131
|
-
|
|
131
|
+
T`Convert to cluster map`
|
|
132
132
|
)
|
|
133
133
|
)
|
|
134
134
|
: undefined,
|
|
@@ -140,7 +140,7 @@ export default class MapDesignerComponent extends React.Component<MapDesignerCom
|
|
|
140
140
|
R(
|
|
141
141
|
"a",
|
|
142
142
|
{ onClick: this.handleConvertToMarkersMap, className: "btn btn-link btn-sm" },
|
|
143
|
-
|
|
143
|
+
T`Convert to markers map`
|
|
144
144
|
)
|
|
145
145
|
)
|
|
146
146
|
: undefined,
|
|
@@ -172,7 +172,7 @@ export default class MapDesignerComponent extends React.Component<MapDesignerCom
|
|
|
172
172
|
const tabs: TabbedComponentTab[] = [
|
|
173
173
|
{
|
|
174
174
|
id: "layers",
|
|
175
|
-
label: [R("i", { className: "fa fa-bars" }),
|
|
175
|
+
label: [R("i", { className: "fa fa-bars" }), T` Layers`],
|
|
176
176
|
elem: R(MapLayersDesignerComponent, {
|
|
177
177
|
schema: this.props.schema,
|
|
178
178
|
dataSource: this.props.dataSource,
|
|
@@ -184,7 +184,7 @@ export default class MapDesignerComponent extends React.Component<MapDesignerCom
|
|
|
184
184
|
},
|
|
185
185
|
{
|
|
186
186
|
id: "filters",
|
|
187
|
-
label: [R("i", { className: "fa fa-filter" }),
|
|
187
|
+
label: [R("i", { className: "fa fa-filter" }), T` Filters`],
|
|
188
188
|
elem: R(MapFiltersDesignerComponent, {
|
|
189
189
|
schema: this.props.schema,
|
|
190
190
|
dataSource: this.props.dataSource,
|
|
@@ -194,7 +194,7 @@ export default class MapDesignerComponent extends React.Component<MapDesignerCom
|
|
|
194
194
|
},
|
|
195
195
|
{
|
|
196
196
|
id: "options",
|
|
197
|
-
label: [R("i", { className: "fa fa-cog" }),
|
|
197
|
+
label: [R("i", { className: "fa fa-cog" }), T` Options`],
|
|
198
198
|
elem: this.renderOptionsTab()
|
|
199
199
|
}
|
|
200
200
|
]
|
|
@@ -202,7 +202,7 @@ export default class MapDesignerComponent extends React.Component<MapDesignerCom
|
|
|
202
202
|
if (this.props.enableQuickfilters) {
|
|
203
203
|
tabs.splice(2, 0, {
|
|
204
204
|
id: "quickfilters",
|
|
205
|
-
label: [R("i", { className: "fa fa-bolt" }), " ", T
|
|
205
|
+
label: [R("i", { className: "fa fa-bolt" }), " ", T`Quickfilters`],
|
|
206
206
|
elem: R(
|
|
207
207
|
"div",
|
|
208
208
|
{ style: { marginBottom: 200 } },
|
|
@@ -282,11 +282,11 @@ class AttributionComponent extends React.Component<AttributionComponentProps, At
|
|
|
282
282
|
? this.renderEditor()
|
|
283
283
|
: this.props.text
|
|
284
284
|
? R("span", { onClick: this.handleTextClick, style: { cursor: "pointer" } }, this.props.text)
|
|
285
|
-
: R("a", { onClick: this.handleTextClick, className: "btn btn-link btn-sm" },
|
|
285
|
+
: R("a", { onClick: this.handleTextClick, className: "btn btn-link btn-sm" }, T`+ Add attribution`)
|
|
286
286
|
)
|
|
287
287
|
|
|
288
288
|
if (this.props.text || this.state.editing) {
|
|
289
|
-
elem = R("div", { className: "mb-3" }, R("label", { className: "text-muted" },
|
|
289
|
+
elem = R("div", { className: "mb-3" }, R("label", { className: "text-muted" }, T`Attribution`), elem)
|
|
290
290
|
}
|
|
291
291
|
|
|
292
292
|
return elem
|
|
@@ -320,7 +320,7 @@ class AdvancedOptionsComponent extends React.Component<AdvancedOptionsComponentP
|
|
|
320
320
|
R(
|
|
321
321
|
"a",
|
|
322
322
|
{ className: "btn btn-link btn-sm", onClick: () => this.setState({ expanded: true }) },
|
|
323
|
-
|
|
323
|
+
T`Advanced options...`
|
|
324
324
|
)
|
|
325
325
|
)
|
|
326
326
|
}
|
|
@@ -328,17 +328,17 @@ class AdvancedOptionsComponent extends React.Component<AdvancedOptionsComponentP
|
|
|
328
328
|
return R(
|
|
329
329
|
"div",
|
|
330
330
|
{ className: "mb-3" },
|
|
331
|
-
R("label", { className: "text-muted" },
|
|
331
|
+
R("label", { className: "text-muted" }, T`Advanced`),
|
|
332
332
|
|
|
333
333
|
R(
|
|
334
334
|
"div",
|
|
335
335
|
null,
|
|
336
|
-
R("span", { className: "text-muted" },
|
|
336
|
+
R("span", { className: "text-muted" }, T`Maximum Zoom Level: `),
|
|
337
337
|
" ",
|
|
338
338
|
R(NumberInputComponent, {
|
|
339
339
|
small: true,
|
|
340
340
|
style: { display: "inline-block" },
|
|
341
|
-
placeholder:
|
|
341
|
+
placeholder: T`None`,
|
|
342
342
|
value: this.props.design.maxZoom,
|
|
343
343
|
onChange: (v: any) => this.props.onDesignChange(_.extend({}, this.props.design, { maxZoom: v }))
|
|
344
344
|
})
|
|
@@ -46,11 +46,11 @@ export default class MapFiltersDesignerComponent extends React.Component<MapFilt
|
|
|
46
46
|
R(
|
|
47
47
|
"label",
|
|
48
48
|
{ className: "text-muted" },
|
|
49
|
-
|
|
49
|
+
T`Filters `,
|
|
50
50
|
R(
|
|
51
51
|
PopoverHelpComponent,
|
|
52
52
|
{ placement: "left" },
|
|
53
|
-
|
|
53
|
+
T`Filters all layers in the map. Individual layers can be filtered by clicking on Customize...`
|
|
54
54
|
)
|
|
55
55
|
),
|
|
56
56
|
|
|
@@ -73,7 +73,7 @@ export default class MapFiltersDesignerComponent extends React.Component<MapFilt
|
|
|
73
73
|
? R(
|
|
74
74
|
"div",
|
|
75
75
|
{ className: "mb-3" },
|
|
76
|
-
R("label", { className: "text-muted" },
|
|
76
|
+
R("label", { className: "text-muted" }, T`Global Filters `),
|
|
77
77
|
|
|
78
78
|
R(
|
|
79
79
|
"div",
|