## Launch Checklist
This adds information about how to translate Maputnik and how to get in
touch with people who have translated in the past.
@keichan34, @jieme, @lhapaipai - I need your approval for this so that
people in the future will know to contact you in case text is being
added and they need help translating it.
CC: @ianthetechie
I've also changed the word "Language" in the upper part of the screen so
that it won't be translated in case you accidentally switch language,
and you need to switch back.
I've also fixed some RTL issues in the CSS and updated the maplibre
components labels when the language changes.
Adds lint to CI and fixes errors.
I'm not sure I'm fully proud of all the solutions there.
But there's no lint issues and the lint is being checked as part of the
CI.
---------
Co-authored-by: Yuri Astrakhan <yuriastrakhan@gmail.com>
This does the following:
1. Moves the WDIO code from javascript to typescript
2. Moves to use files that are `cy.ts` instead of `index.js`
3. Replace e2e to use cypress
4. Introduce back some skipped tests
This is in continue to the conversation here:
https://github.com/HarelM/editor/pull/3
Before:
```
"spec" Reporter:
------------------------------------------------------------------
[chrome 120.0.6099.71 linux #0-0] Running: chrome (v120.0.6099.71) on linux
[chrome 120.0.6099.71 linux #0-0] Session ID: ee9a87bcfce007ac7721929c6e6234d0
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] » /test/functional/index.js
[chrome 120.0.6099.71 linux #0-0] maputnik
[chrome 120.0.6099.71 linux #0-0] history
[chrome 120.0.6099.71 linux #0-0] - undo/redo
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] layers
[chrome 120.0.6099.71 linux #0-0] ops
[chrome 120.0.6099.71 linux #0-0] ✓ delete
[chrome 120.0.6099.71 linux #0-0] ✓ duplicate
[chrome 120.0.6099.71 linux #0-0] ✓ hide
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] background
[chrome 120.0.6099.71 linux #0-0] ✓ add
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] modify
[chrome 120.0.6099.71 linux #0-0] layer
[chrome 120.0.6099.71 linux #0-0] - expand/collapse
[chrome 120.0.6099.71 linux #0-0] ✓ id
[chrome 120.0.6099.71 linux #0-0] ✓ min-zoom
[chrome 120.0.6099.71 linux #0-0] ✓ max-zoom
[chrome 120.0.6099.71 linux #0-0] ✓ comments
[chrome 120.0.6099.71 linux #0-0] - color
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] filter
[chrome 120.0.6099.71 linux #0-0] - expand/collapse
[chrome 120.0.6099.71 linux #0-0] - compound filter
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] paint
[chrome 120.0.6099.71 linux #0-0] - expand/collapse
[chrome 120.0.6099.71 linux #0-0] - color
[chrome 120.0.6099.71 linux #0-0] - pattern
[chrome 120.0.6099.71 linux #0-0] - opacity
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] json-editor
[chrome 120.0.6099.71 linux #0-0] - expand/collapse
[chrome 120.0.6099.71 linux #0-0] - modify
[chrome 120.0.6099.71 linux #0-0] - parse error
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] fill
[chrome 120.0.6099.71 linux #0-0] ✓ add
[chrome 120.0.6099.71 linux #0-0] - change source
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] line
[chrome 120.0.6099.71 linux #0-0] ✓ add
[chrome 120.0.6099.71 linux #0-0] - groups
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] symbol
[chrome 120.0.6099.71 linux #0-0] ✓ add
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] raster
[chrome 120.0.6099.71 linux #0-0] ✓ add
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] circle
[chrome 120.0.6099.71 linux #0-0] ✓ add
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] fill extrusion
[chrome 120.0.6099.71 linux #0-0] ✓ add
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] groups
[chrome 120.0.6099.71 linux #0-0] ✓ simple
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] map
[chrome 120.0.6099.71 linux #0-0] zoom level
[chrome 120.0.6099.71 linux #0-0] - via url
[chrome 120.0.6099.71 linux #0-0] - via map controls
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] modals
[chrome 120.0.6099.71 linux #0-0] open
[chrome 120.0.6099.71 linux #0-0] ✓ close
[chrome 120.0.6099.71 linux #0-0] - upload
[chrome 120.0.6099.71 linux #0-0] ✓ load from url
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] shortcuts
[chrome 120.0.6099.71 linux #0-0] ✓ open/close
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] export
[chrome 120.0.6099.71 linux #0-0] ✓ close
[chrome 120.0.6099.71 linux #0-0] - download
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] sources
[chrome 120.0.6099.71 linux #0-0] - active sources
[chrome 120.0.6099.71 linux #0-0] - public source
[chrome 120.0.6099.71 linux #0-0] - add new source
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] inspect
[chrome 120.0.6099.71 linux #0-0] ✓ toggle
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] style settings
[chrome 120.0.6099.71 linux #0-0] ✓ name
[chrome 120.0.6099.71 linux #0-0] ✓ owner
[chrome 120.0.6099.71 linux #0-0] ✓ sprite url
[chrome 120.0.6099.71 linux #0-0] ✓ glyphs url
[chrome 120.0.6099.71 linux #0-0] ✓ maptiler access token
[chrome 120.0.6099.71 linux #0-0] ✓ thunderforest access token
[chrome 120.0.6099.71 linux #0-0] ✓ style renderer
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] sources
[chrome 120.0.6099.71 linux #0-0] - toggle
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] screenshots
[chrome 120.0.6099.71 linux #0-0] ✓ front_page
[chrome 120.0.6099.71 linux #0-0] ✓ open
[chrome 120.0.6099.71 linux #0-0] ✓ export
[chrome 120.0.6099.71 linux #0-0] ✓ sources
[chrome 120.0.6099.71 linux #0-0] ✓ style settings
[chrome 120.0.6099.71 linux #0-0] ✓ inspect
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] accessibility
[chrome 120.0.6099.71 linux #0-0] skip links
[chrome 120.0.6099.71 linux #0-0] ✓ skip link to layer list
[chrome 120.0.6099.71 linux #0-0] ✓ skip link to layer editor
[chrome 120.0.6099.71 linux #0-0] ✓ skip link to map view
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] keyboard
[chrome 120.0.6099.71 linux #0-0] shortcuts
[chrome 120.0.6099.71 linux #0-0] ✓ ESC should unfocus
[chrome 120.0.6099.71 linux #0-0] ✓ '?' should show shortcuts modal
[chrome 120.0.6099.71 linux #0-0] ✓ 'o' should show open modal
[chrome 120.0.6099.71 linux #0-0] ✓ 'e' should show export modal
[chrome 120.0.6099.71 linux #0-0] ✓ 'd' should show sources modal
[chrome 120.0.6099.71 linux #0-0] ✓ 's' should show settings modal
[chrome 120.0.6099.71 linux #0-0] - 'i' should change map to inspect mode
[chrome 120.0.6099.71 linux #0-0] ✓ 'm' should focus map
[chrome 120.0.6099.71 linux #0-0] ✓ '!' should show debug modal
[chrome 120.0.6099.71 linux #0-0]
[chrome 120.0.6099.71 linux #0-0] 44 passing (58.8s)
[chrome 120.0.6099.71 linux #0-0] 23 skipped
```
After:
```
accessibility
skip links
- skip link to layer list
- skip link to layer editor
- skip link to map view
history
✓ undo/redo (4894ms)
keyboard
shortcuts
✓ ESC should unfocus (1912ms)
✓ '?' should show shortcuts modal (458ms)
✓ 'o' should show open modal (710ms)
✓ 'e' should show export modal (692ms)
✓ 'd' should show sources modal (588ms)
✓ 's' should show settings modal (894ms)
✓ 'i' should change map to inspect mode (804ms)
✓ 'm' should focus map (837ms)
✓ '!' should show debug modal (607ms)
layers
ops
✓ delete (4313ms)
✓ duplicate (1780ms)
✓ hide (1862ms)
background
✓ add (1675ms)
modify
layer
- expand/collapse
✓ id (3735ms)
✓ min-zoom (2209ms)
✓ max-zoom (2127ms)
✓ comments (2515ms)
✓ color (2022ms)
filter
- expand/collapse
- compound filter
paint
- expand/collapse
- color
- pattern
- opacity
json-editor
- expand/collapse
- modify
- parse error
fill
✓ add (1831ms)
- change source
line
✓ add (1844ms)
✓ groups (687ms)
symbol
✓ add (2035ms)
raster
✓ add (1814ms)
circle
✓ add (1867ms)
fill extrusion
✓ add (1963ms)
groups
✓ simple (2653ms)
map
zoom level
✓ via url (2279ms)
✓ via map controls (733ms)
modals
open
✓ close (2519ms)
- upload
✓ load from url (1557ms)
shortcuts
✓ open/close (1136ms)
export
✓ close (755ms)
- download
sources
- active sources
- public source
- add new source
inspect
✓ toggle (1020ms)
style settings
✓ name (1085ms)
✓ owner (1060ms)
✓ sprite url (1214ms)
✓ glyphs url (1553ms)
✓ maptiler access token (1111ms)
✓ thunderforest access token (1102ms)
✓ style renderer (922ms)
sources
- toggle
Spec Tests Passing Failing Pending Skipped
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ ✔ accessibility.cy.ts 52ms 3 - - 3 - │
├────────────────────────────────────────────────────────────────────────────────────────────────┤
│ ✔ history.cy.ts 00:06 1 1 - - - │
├────────────────────────────────────────────────────────────────────────────────────────────────┤
│ ✔ keyboard.cy.ts 00:10 9 9 - - - │
├────────────────────────────────────────────────────────────────────────────────────────────────┤
│ ✔ layers.cy.ts 00:39 28 17 - 11 - │
├────────────────────────────────────────────────────────────────────────────────────────────────┤
│ ✔ map.cy.ts 00:04 2 2 - - - │
├────────────────────────────────────────────────────────────────────────────────────────────────┤
│ ✔ modals.cy.ts 00:16 18 12 - 6 - │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
✔ All specs passed! 01:18 61 41 - 20 -
```
---------
Co-authored-by: Yuri Astrakhan <yuriastrakhan@gmail.com>