From d407949138141e6a38ef79d7efa01a8fca9a4f0c Mon Sep 17 00:00:00 2001 From: Yohan Boniface Date: Fri, 10 May 2024 08:10:57 +0200 Subject: [PATCH 1/3] chore: be more explicit on browser modes --- umap/static/umap/js/modules/schema.js | 6 +++--- umap/static/umap/js/umap.js | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/umap/static/umap/js/modules/schema.js b/umap/static/umap/js/modules/schema.js index 07e520bb..93ab6ae3 100644 --- a/umap/static/umap/js/modules/schema.js +++ b/umap/static/umap/js/modules/schema.js @@ -295,9 +295,9 @@ export const SCHEMA = { choices: [ ['none', translate('None')], ['caption', translate('Caption')], - ['databrowser', translate('Browser in data mode')], - ['datalayers', translate('Browser in layers mode')], - ['datafilters', translate('Browser in filters mode')], + ['databrowser', translate('Browser: data')], + ['datalayers', translate('Browser: layers')], + ['datafilters', translate('Browser: filters')], ], default: 'none', }, diff --git a/umap/static/umap/js/umap.js b/umap/static/umap/js/umap.js index 7adb9bbc..d3e7c1db 100644 --- a/umap/static/umap/js/umap.js +++ b/umap/static/umap/js/umap.js @@ -1762,17 +1762,17 @@ U.Map = L.Map.extend({ items.push( '-', { - text: L._('See layers'), + text: L._('Browser: layers'), callback: () => this.openBrowser('layers'), }, { - text: L._('Browse data'), + text: L._('Browser: data'), callback: () => this.openBrowser('data'), } ) if (this.options.facetKey) { items.push({ - text: L._('Filter data'), + text: L._('Browser: filters'), callback: () => this.openBrowser('filters'), }) } From 59dbde4f3283cf5ec82dc9928e7cffc0be617789 Mon Sep 17 00:00:00 2001 From: Yohan Boniface Date: Wed, 15 May 2024 18:01:54 +0200 Subject: [PATCH 2/3] chore: make browser labels consistent --- umap/static/umap/js/modules/browser.js | 2 +- umap/static/umap/js/umap.controls.js | 2 +- umap/tests/integration/test_browser.py | 2 +- umap/tests/integration/test_datalayer.py | 2 +- umap/tests/integration/test_edit_datalayer.py | 6 ++-- umap/tests/integration/test_edit_map.py | 2 +- umap/tests/integration/test_facets_browser.py | 2 +- umap/tests/integration/test_import.py | 28 +++++++++---------- umap/tests/integration/test_map.py | 4 +-- umap/tests/integration/test_owned_map.py | 2 +- umap/tests/integration/test_statics.py | 3 +- 11 files changed, 28 insertions(+), 27 deletions(-) diff --git a/umap/static/umap/js/modules/browser.js b/umap/static/umap/js/modules/browser.js index 0ee61fcb..a46f94cf 100644 --- a/umap/static/umap/js/modules/browser.js +++ b/umap/static/umap/js/modules/browser.js @@ -150,7 +150,7 @@ export default class Browser { // https://github.com/Leaflet/Leaflet/pull/9052 DomEvent.disableClickPropagation(container) - DomUtil.createTitle(container, translate('Browse data'), 'icon-layers') + DomUtil.createTitle(container, translate('Browser'), 'icon-layers') const formContainer = DomUtil.createFieldset(container, L._('Filters'), { on: this.mode === 'filters', className: 'filters', diff --git a/umap/static/umap/js/umap.controls.js b/umap/static/umap/js/umap.controls.js index 435f8e3a..ab7d546b 100644 --- a/umap/static/umap/js/umap.controls.js +++ b/umap/static/umap/js/umap.controls.js @@ -510,7 +510,7 @@ U.DataLayersControl = L.Control.Button.extend({ options: { position: 'topleft', className: 'umap-control-browse', - title: L._('See layers'), + title: L._('Open browser'), }, afterAdd: function (container) { diff --git a/umap/tests/integration/test_browser.py b/umap/tests/integration/test_browser.py index 29f35290..bae30603 100644 --- a/umap/tests/integration/test_browser.py +++ b/umap/tests/integration/test_browser.py @@ -178,7 +178,7 @@ def test_data_browser_bbox_filter_should_be_persistent( expect(browser.get_by_text("one point in france")).to_be_hidden() expect(browser.get_by_text("one line in new zeland")).to_be_hidden() expect(browser.get_by_text("one polygon in greenland")).to_be_hidden() - page.get_by_title("See layers").click() + page.get_by_title("Open browser").click() expect(browser.get_by_text("one point in france")).to_be_visible() expect(browser.get_by_text("one line in new zeland")).to_be_hidden() expect(browser.get_by_text("one polygon in greenland")).to_be_hidden() diff --git a/umap/tests/integration/test_datalayer.py b/umap/tests/integration/test_datalayer.py index ed3ffc52..b1d35341 100644 --- a/umap/tests/integration/test_datalayer.py +++ b/umap/tests/integration/test_datalayer.py @@ -27,7 +27,7 @@ def test_honour_displayOnLoad_false(map, live_server, datalayer, page): layers_off = page.locator(".umap-browser .datalayer.off") expect(layers).to_have_count(1) expect(layers_off).to_have_count(1) - page.get_by_role("button", name="See layers").click() + page.get_by_role("button", name="Open browser").click() page.get_by_label("Zoom in").click() expect(markers).to_be_hidden() page.get_by_title("Show/hide layer").click() diff --git a/umap/tests/integration/test_edit_datalayer.py b/umap/tests/integration/test_edit_datalayer.py index 7a629656..9792a5e9 100644 --- a/umap/tests/integration/test_edit_datalayer.py +++ b/umap/tests/integration/test_edit_datalayer.py @@ -54,7 +54,7 @@ def test_cancel_deleting_datalayer_should_restore( live_server, openmap, datalayer, page ): page.goto(f"{live_server.url}{openmap.get_absolute_url()}?edit") - page.get_by_title("See layers").click() + page.get_by_title("Open browser").click() layers = page.locator(".umap-browser .datalayer") markers = page.locator(".leaflet-marker-icon") expect(layers).to_have_count(1) @@ -63,7 +63,7 @@ def test_cancel_deleting_datalayer_should_restore( page.once("dialog", lambda dialog: dialog.accept()) page.locator(".panel.right").get_by_title("Delete layer").click() expect(markers).to_have_count(0) - page.get_by_role("button", name="See layers").click() + page.get_by_role("button", name="Open browser").click() expect(page.get_by_text("test datalayer")).to_be_hidden() page.once("dialog", lambda dialog: dialog.accept()) page.get_by_role("button", name="Cancel edits").click() @@ -73,7 +73,7 @@ def test_cancel_deleting_datalayer_should_restore( def test_can_clone_datalayer(live_server, openmap, login, datalayer, page): page.goto(f"{live_server.url}{openmap.get_absolute_url()}?edit") - page.get_by_title("See layers").click() + page.get_by_title("Open browser").click() layers = page.locator(".umap-browser .datalayer") markers = page.locator(".leaflet-marker-icon") expect(layers).to_have_count(1) diff --git a/umap/tests/integration/test_edit_map.py b/umap/tests/integration/test_edit_map.py index abe9d7a8..802c6412 100644 --- a/umap/tests/integration/test_edit_map.py +++ b/umap/tests/integration/test_edit_map.py @@ -170,7 +170,7 @@ def test_sortkey_impacts_datalayerindex(map, live_server, page): page.goto(f"{live_server.url}{map.get_absolute_url()}") # By default, features are sorted by name (Third, Second, First) - page.get_by_role("button", name="See layers").click() + page.get_by_role("button", name="Open browser").click() page.get_by_role("heading", name="Show/hide layer").locator("i").click() first_listed_feature = page.locator(".umap-browser .datalayer ul > li").nth(0) diff --git a/umap/tests/integration/test_facets_browser.py b/umap/tests/integration/test_facets_browser.py index 4ba0b2c5..059363ce 100644 --- a/umap/tests/integration/test_facets_browser.py +++ b/umap/tests/integration/test_facets_browser.py @@ -267,7 +267,7 @@ def test_facets_search_are_persistent_when_closing_panel(live_server, page, map) expect(panel.locator("summary")).to_have_attribute("data-badge", " ") expect(page.locator(".umap-control-browse")).to_have_attribute("data-badge", " ") panel.get_by_role("button", name="Close").click() - page.get_by_role("button", name="See layers").click() + page.get_by_role("button", name="Open browser").click() expect(panel.get_by_label("Min")).to_have_value("13") expect(panel.get_by_label("Min")).to_have_attribute("data-modified", "true") expect(panel.get_by_label("odd")).to_be_checked() diff --git a/umap/tests/integration/test_import.py b/umap/tests/integration/test_import.py index de7fd972..39cdd9c5 100644 --- a/umap/tests/integration/test_import.py +++ b/umap/tests/integration/test_import.py @@ -55,7 +55,7 @@ def test_umap_import_from_file(live_server, tilelayer, page): expect(page.locator(".umap-main-edit-toolbox .map-name")).to_have_text( "Carte sans nom" ) - page.get_by_title("See layers").click() + page.get_by_title("Open browser").click() layers = page.locator(".umap-browser .datalayer") expect(layers).to_have_count(2) nonloaded = page.locator(".umap-browser .datalayer.off") @@ -65,7 +65,7 @@ def test_umap_import_from_file(live_server, tilelayer, page): def test_umap_import_from_textarea(live_server, tilelayer, page, settings): settings.UMAP_ALLOW_ANONYMOUS = True page.goto(f"{live_server.url}/map/new/") - page.get_by_role("button", name="See layers").click() + page.get_by_role("button", name="Open browser").click() page.get_by_title("Import data").click() textarea = page.locator(".umap-upload textarea") path = Path(__file__).parent.parent / "fixtures/test_upload_data.umap" @@ -92,7 +92,7 @@ def test_umap_import_from_textarea(live_server, tilelayer, page, settings): def test_import_geojson_from_textarea(tilelayer, live_server, page): page.goto(f"{live_server.url}/map/new/") - page.get_by_title("See layers").click() + page.get_by_title("Open browser").click() layers = page.locator(".umap-browser .datalayer") markers = page.locator(".leaflet-marker-icon") paths = page.locator("path") @@ -117,7 +117,7 @@ def test_import_geojson_from_textarea(tilelayer, live_server, page): def test_import_kml_from_textarea(tilelayer, live_server, page): page.goto(f"{live_server.url}/map/new/") - page.get_by_title("See layers").click() + page.get_by_title("Open browser").click() layers = page.locator(".umap-browser .datalayer") markers = page.locator(".leaflet-marker-icon") paths = page.locator("path") @@ -142,7 +142,7 @@ def test_import_kml_from_textarea(tilelayer, live_server, page): def test_import_gpx_from_textarea(tilelayer, live_server, page): page.goto(f"{live_server.url}/map/new/") - page.get_by_title("See layers").click() + page.get_by_title("Open browser").click() layers = page.locator(".umap-browser .datalayer") markers = page.locator(".leaflet-marker-icon") paths = page.locator("path") @@ -167,7 +167,7 @@ def test_import_gpx_from_textarea(tilelayer, live_server, page): def test_import_osm_from_textarea(tilelayer, live_server, page): page.goto(f"{live_server.url}/map/new/") - page.get_by_title("See layers").click() + page.get_by_title("Open browser").click() layers = page.locator(".umap-browser .datalayer") markers = page.locator(".leaflet-marker-icon") expect(markers).to_have_count(0) @@ -187,7 +187,7 @@ def test_import_osm_from_textarea(tilelayer, live_server, page): def test_import_csv_from_textarea(tilelayer, live_server, page): page.goto(f"{live_server.url}/map/new/") - page.get_by_title("See layers").click() + page.get_by_title("Open browser").click() layers = page.locator(".umap-browser .datalayer") markers = page.locator(".leaflet-marker-icon") expect(markers).to_have_count(0) @@ -207,7 +207,7 @@ def test_import_csv_from_textarea(tilelayer, live_server, page): def test_can_import_in_existing_datalayer(live_server, datalayer, page, openmap): page.goto(f"{live_server.url}{openmap.get_absolute_url()}") - page.get_by_title("See layers").click() + page.get_by_title("Open browser").click() layers = page.locator(".umap-browser .datalayer") markers = page.locator(".leaflet-marker-icon") expect(markers).to_have_count(1) @@ -226,7 +226,7 @@ def test_can_import_in_existing_datalayer(live_server, datalayer, page, openmap) def test_can_replace_datalayer_data(live_server, datalayer, page, openmap): page.goto(f"{live_server.url}{openmap.get_absolute_url()}") - page.get_by_title("See layers").click() + page.get_by_title("Open browser").click() layers = page.locator(".umap-browser .datalayer") markers = page.locator(".leaflet-marker-icon") expect(markers).to_have_count(1) @@ -246,7 +246,7 @@ def test_can_replace_datalayer_data(live_server, datalayer, page, openmap): def test_can_import_in_new_datalayer(live_server, datalayer, page, openmap): page.goto(f"{live_server.url}{openmap.get_absolute_url()}") - page.get_by_title("See layers").click() + page.get_by_title("Open browser").click() layers = page.locator(".umap-browser .datalayer") markers = page.locator(".leaflet-marker-icon") expect(markers).to_have_count(1) @@ -350,7 +350,7 @@ def test_import_geometry_collection(live_server, page, tilelayer): ], } page.goto(f"{live_server.url}/map/new/") - page.get_by_title("See layers").click() + page.get_by_title("Open browser").click() layers = page.locator(".umap-browser .datalayer") markers = page.locator(".leaflet-marker-icon") paths = page.locator("path") @@ -386,7 +386,7 @@ def test_import_multipolygon(live_server, page, tilelayer): }, } page.goto(f"{live_server.url}/map/new/") - page.get_by_title("See layers").click() + page.get_by_title("Open browser").click() layers = page.locator(".umap-browser .datalayer") paths = page.locator("path") expect(paths).to_have_count(0) @@ -418,7 +418,7 @@ def test_import_multipolyline(live_server, page, tilelayer): ], } page.goto(f"{live_server.url}/map/new/") - page.get_by_title("See layers").click() + page.get_by_title("Open browser").click() layers = page.locator(".umap-browser .datalayer") paths = page.locator("path") expect(paths).to_have_count(0) @@ -437,7 +437,7 @@ def test_import_multipolyline(live_server, page, tilelayer): def test_import_csv_without_valid_latlon_headers(tilelayer, live_server, page): page.goto(f"{live_server.url}/map/new/") - page.get_by_title("See layers").click() + page.get_by_title("Open browser").click() layers = page.locator(".umap-browser .datalayer") markers = page.locator(".leaflet-marker-icon") page.get_by_title("Import data").click() diff --git a/umap/tests/integration/test_map.py b/umap/tests/integration/test_map.py index 5bbc128f..761490bd 100644 --- a/umap/tests/integration/test_map.py +++ b/umap/tests/integration/test_map.py @@ -169,7 +169,7 @@ def test_remote_layer_should_not_be_used_as_datalayer_for_created_features( } datalayer.save() page.goto(f"{live_server.url}{openmap.get_absolute_url()}?edit") - toggle = page.get_by_role("button", name="See layers") + toggle = page.get_by_role("button", name="Open browser") expect(toggle).to_be_visible() toggle.click() layers = page.locator(".umap-browser .datalayer h5") @@ -184,7 +184,7 @@ def test_remote_layer_should_not_be_used_as_datalayer_for_created_features( expect(marker).to_have_count(1) # A new datalayer has been created to host this created feature # given the remote one cannot accept new features - page.get_by_title("See layers").click() + page.get_by_title("Open browser").click() expect(layers).to_have_count(2) diff --git a/umap/tests/integration/test_owned_map.py b/umap/tests/integration/test_owned_map.py index d197ff0d..430026fe 100644 --- a/umap/tests/integration/test_owned_map.py +++ b/umap/tests/integration/test_owned_map.py @@ -236,7 +236,7 @@ def test_can_change_owner(map, live_server, login, user): def test_can_delete_datalayer(live_server, map, login, datalayer): page = login(map.owner) page.goto(f"{live_server.url}{map.get_absolute_url()}?edit") - page.get_by_title("See layers").click() + page.get_by_title("Open browser").click() layers = page.locator(".umap-browser .datalayer") markers = page.locator(".leaflet-marker-icon") expect(layers).to_have_count(1) diff --git a/umap/tests/integration/test_statics.py b/umap/tests/integration/test_statics.py index 2d29f759..5fad8a09 100644 --- a/umap/tests/integration/test_statics.py +++ b/umap/tests/integration/test_statics.py @@ -40,7 +40,8 @@ def test_javascript_have_been_loaded( expect(page).to_have_url(re.compile(r".*#7/48\..+/13\..+")) expect(page).to_have_url(re.compile(r".*/fr/")) # Should be in French, so hashed locale file has been loaded correctly - button = page.get_by_role("button", name="Voir les calques") + # FIXME when labels are chosen and translations pulled from transifex + button = page.get_by_role("button", name="Open browser") expect(button).to_be_visible() button.click() layers = page.locator(".umap-browser .datalayer") From 191fb6d8537ad4cb94870d1f23bc6f831d42ca1a Mon Sep 17 00:00:00 2001 From: Yohan Boniface Date: Tue, 21 May 2024 16:29:38 +0200 Subject: [PATCH 3/3] =?UTF-8?q?chore:=20reviewing=20labels=20with=20Aur?= =?UTF-8?q?=C3=A9lie?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- umap/static/umap/js/modules/browser.js | 2 +- umap/static/umap/js/umap.controls.js | 2 +- umap/static/umap/js/umap.js | 10 +++++----- umap/tests/integration/test_edit_datalayer.py | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/umap/static/umap/js/modules/browser.js b/umap/static/umap/js/modules/browser.js index a46f94cf..4a024cfc 100644 --- a/umap/static/umap/js/modules/browser.js +++ b/umap/static/umap/js/modules/browser.js @@ -150,7 +150,7 @@ export default class Browser { // https://github.com/Leaflet/Leaflet/pull/9052 DomEvent.disableClickPropagation(container) - DomUtil.createTitle(container, translate('Browser'), 'icon-layers') + DomUtil.createTitle(container, translate('Data browser'), 'icon-layers') const formContainer = DomUtil.createFieldset(container, L._('Filters'), { on: this.mode === 'filters', className: 'filters', diff --git a/umap/static/umap/js/umap.controls.js b/umap/static/umap/js/umap.controls.js index ab7d546b..0417319d 100644 --- a/umap/static/umap/js/umap.controls.js +++ b/umap/static/umap/js/umap.controls.js @@ -992,7 +992,7 @@ U.AttributionControl = L.Control.Attribution.extend({ }) } if (captionMenus) { - const link = L.DomUtil.add('a', '', container, ` — ${L._('About')}`) + const link = L.DomUtil.add('a', '', container, ` — ${L._('Open caption')}`) L.DomEvent.on(link, 'click', L.DomEvent.stop) .on(link, 'click', this._map.openCaption, this._map) .on(link, 'dblclick', L.DomEvent.stop) diff --git a/umap/static/umap/js/umap.js b/umap/static/umap/js/umap.js index d3e7c1db..2601b1fb 100644 --- a/umap/static/umap/js/umap.js +++ b/umap/static/umap/js/umap.js @@ -1611,7 +1611,7 @@ U.Map = L.Map.extend({ L.DomUtil.createButton( 'umap-about-link flat', container, - L._('About'), + L._('Open caption'), this.openCaption, this ) @@ -1762,23 +1762,23 @@ U.Map = L.Map.extend({ items.push( '-', { - text: L._('Browser: layers'), + text: L._('Open browser'), callback: () => this.openBrowser('layers'), }, { - text: L._('Browser: data'), + text: L._('Browse data'), callback: () => this.openBrowser('data'), } ) if (this.options.facetKey) { items.push({ - text: L._('Browser: filters'), + text: L._('Filter data'), callback: () => this.openBrowser('filters'), }) } items.push( { - text: L._('About'), + text: L._('Open caption'), callback: this.openCaption, }, { diff --git a/umap/tests/integration/test_edit_datalayer.py b/umap/tests/integration/test_edit_datalayer.py index 9792a5e9..3ef0fd44 100644 --- a/umap/tests/integration/test_edit_datalayer.py +++ b/umap/tests/integration/test_edit_datalayer.py @@ -191,7 +191,7 @@ def test_deleting_datalayer_should_remove_from_browser_and_layers_list( page.goto(f"{live_server.url}{openmap.get_absolute_url()}?edit") panel = page.locator(".panel.left") edit_panel = page.locator(".panel.right") - page.get_by_title("See layers").click() + page.get_by_title("Open browser").click() page.get_by_role("link", name="Manage layers").click() expect(panel.get_by_text("test datalayer")).to_be_visible() expect(edit_panel.get_by_text("test datalayer")).to_be_visible()