Paul Chavard
bf9f29cc71
Fix messagerie scroll to last message
2021-05-20 11:58:54 +02:00
Paul Chavard
69ab7854c2
replace fontawesome with heroicons
2021-04-29 15:20:05 +02:00
Paul Chavard
6e1b4a2067
Update and pin mapbox-gl
2021-04-28 15:34:53 +02:00
Paul Chavard
85b907807a
Improuve ComboMultipleDropdownList style
2021-04-28 12:54:45 +02:00
Paul Chavard
6836191ca5
Improuve commune autocomplete results
2021-04-22 09:59:21 +01:00
Christophe Robillard
6026793c1d
focus to target after toggle
2021-03-17 11:31:51 +01:00
Christophe Robillard
df3bd3a1d2
handle focus during and after upload
2021-03-17 11:31:51 +01:00
Christophe Robillard
43039d1755
add aria-value min, max and now for progressbar upload
2021-03-17 11:31:51 +01:00
Paul Chavard
6f543d3770
Handle invalid GeoJSON in the editor
2021-03-11 15:51:09 +01:00
Paul Chavard
9f8c55969d
Add proper external data API errors handling
2021-03-04 10:16:06 +01:00
Paul Chavard
2c2b392d6c
Fix multiselect labels
...
only add values to new values if it is a new value
2021-02-19 12:08:54 +01:00
Paul Chavard
24f71ccc1a
Improuve multi select
...
In multi select with acceptNewValues option alway keep the new value as the first item in the list to make it easier to add it
2021-02-19 10:53:16 +01:00
Paul Chavard
6756db1013
Update react-query
2021-02-16 18:14:11 +01:00
Paul Chavard
bb49f6e151
replace react-use with use-debounce
...
this is a much lighter dependencie
2021-02-16 18:14:10 +01:00
Paul Chavard
3dae5b5c04
update react
2021-02-16 18:14:10 +01:00
Paul Chavard
df80f5681d
remove react-scroll-to-component
2021-02-16 18:14:10 +01:00
Paul Chavard
1c164c4376
Use jsx extension
2021-02-16 18:14:10 +01:00
Paul Chavard
881820888a
Use stable cache key for useMemo
2021-02-16 16:47:15 +01:00
Christophe Robillard
8b55f67964
accepte nouvelles valeurs pour ComboMultipleDropdownList
2021-02-16 16:47:15 +01:00
Paul Chavard
06e282b839
supprime select2
...
select2 n'est plus utilisé. Il est remplacé par
ComboMultipleDropdownList
2021-02-16 16:47:15 +01:00
Christophe Robillard
e048f48241
create ComboMultipleDropdownList component
2021-02-16 16:47:14 +01:00
Paul Chavard
a503417298
Remove old css and js
2021-02-02 15:26:11 +01:00
Paul Chavard
9f691dce4c
Set external_id from combo search inputs
2021-01-15 11:50:02 +01:00
Paul Chavard
91be115c70
Add annuaire_education champ ui
2021-01-14 17:57:48 +01:00
Paul Chavard
6ca9daab0f
Ensure a combo always autosave value on change
2021-01-14 17:31:37 +01:00
Paul Chavard
075ee9dcde
Fix cadastres layer
2020-12-11 14:47:50 +01:00
Paul Chavard
1af0d30d94
Use new optional layers in maps module
2020-12-10 11:26:16 +01:00
Paul Chavard
eaa9b1c071
Expose all optional layers in TypeDeChamp editor
2020-12-10 11:26:16 +01:00
Christophe Robillard
ddd50993a5
cache pays
2020-12-08 13:09:08 +00:00
Christophe Robillard
12d1a5bece
implement ComboPaysSearch
2020-12-08 13:09:08 +00:00
Paul Chavard
618c81b9a6
Mount react components on page updates
2020-10-15 18:46:12 +02:00
Paul Chavard
ca0ba4ba2d
replace deprecated react-loadable with suspense
2020-10-15 17:30:49 +02:00
Paul Chavard
752ee78c49
Use fetch instead of jQuery
2020-10-13 10:55:10 +02:00
Paul Chavard
70bf9ea92f
remove unused select2 code
2020-10-08 15:26:15 +02:00
Paul Chavard
8a2f079acb
Implement ComboAdresseSearch
2020-10-08 15:26:14 +02:00
Paul Chavard
b6c94a3758
Implement ComboCommunesSearch
2020-10-08 15:26:14 +02:00
Paul Chavard
4217dcd94b
Implement ComboDepartementsSearch
2020-10-08 15:26:14 +02:00
Paul Chavard
2c7ee82d31
Implement ComboRegionsSearch
2020-10-08 15:26:14 +02:00
Paul Chavard
1b57d94d93
Use @reach/combobox instead of select2
2020-10-08 15:26:14 +02:00
Paul Chavard
5df7a729e7
Add a wrapper to catch chart rendering before chartkick is loaded
2020-10-07 11:40:07 +02:00
Paul Chavard
d8852c7dc5
Lazily load trix
2020-10-07 11:40:07 +02:00
Paul Chavard
95eb907090
remove unused javascript
2020-10-07 11:39:57 +02:00
Christophe Robillard
6fd0134b6d
convert to es6 classes
2020-09-22 16:09:15 +02:00
Christophe Robillard
8baaee8810
load expanded buttons only for contact form
2020-09-22 16:09:15 +02:00
Christophe Robillard
5bd4644c2c
fix js lint errors
2020-09-22 16:09:15 +02:00
Christophe Robillard
9be015752a
set input value for question type of contact page
2020-09-22 16:09:15 +02:00
Christophe Robillard
df9a15a224
expand buttons for contact page
2020-09-22 16:09:15 +02:00
Paul Chavard
512cdeb6ff
normalize features on import
2020-09-22 09:12:55 +02:00
kara Diaby
5c68d75107
add titre_identite champ
2020-09-18 14:57:08 +02:00
Christophe Robillard
51c4001a1a
add aria-disclosure for Mon compte button
2020-09-15 18:12:26 +02:00
Paul Chavard
bbcdff0ccf
Use IGN plan v2 and add MNHN data sources
2020-09-15 14:39:02 +02:00
Pierre de La Morinerie
e033ec3404
js: ignore missing DOM element on ProgressBar
...
Currently ProgressBar is used to monitor upload progress of attachments.
But there's two cases where the associated DOM element may be removed:
- In the champs editor, when the list scrolls, DOM elements are removed
and added dynamically by React;
- In the user form, the user might start an upload on a repetition, and
then remove the associated row during the download.
In both those cases, we don't want the missing DOM element to trigger
an error.
2020-09-03 15:03:13 +02:00
kara Diaby
ae61c279af
migrate emails text editor to new interface
2020-09-03 14:42:22 +02:00
Paul Chavard
ec72fdd164
Remove migration service
2020-09-02 11:26:26 +02:00
kara Diaby
1788471664
carto hack : traduce edition buttons in french
2020-09-01 17:41:20 +02:00
Pierre de La Morinerie
ecc4f01c20
autosave: trigger an autosave after removing a row
2020-08-25 15:45:49 +02:00
Pierre de La Morinerie
96037069ff
autosave: remove the repetition row after deletion
...
Before, when autosaving a draft, removing a repetition row would
send `_destroy` inputs to the controller – but not remove the row
from the DOM. This led to the `_destroy` inputs being sent again
on the next autosave request, which made the controller raise
(because the row fields were already deleted before).
To fix this, we let the controller response remove the deleted
row(s) from the DOM.
Doing it using a controller response avoids the need to keep track
of operations on the Javascript side: the controller can easily
know which row was just deleted, and emit the relevant changes for
the DOM. This keeps the autosave requests robust: even if a request
is skipped (e.g. because of a network interruption), the next request
will still contain the relevant informations to succeed, and not let the
form in an unstable state.
Fix #5470
2020-08-25 14:39:34 +02:00
Pierre de La Morinerie
e157a289e1
autosave: factorize some javascript code
2020-08-25 14:39:34 +02:00
Paul Chavard
4c87e547b3
Put IGN map behind a feature flag
2020-07-30 17:22:28 +02:00
Paul Chavard
f1cbc9846e
Add carte ign
2020-07-30 16:58:20 +02:00
Paul Chavard
87a1661cdc
fix prop type error
2020-07-22 11:10:14 +02:00
Pierre de La Morinerie
5949266e89
javascript: silence Crisp warning in Javascript console
2020-06-26 15:57:14 +02:00
kara Diaby
3dacff19d5
[CARTO] fix the GPX and KML imports in order to manage multiples draw types in the same file
2020-06-18 16:28:46 +02:00
Paul Chavard
d9f7d10425
Refactor Map Reader|Editor to handle events from geo areas list
2020-06-09 18:45:45 +02:00
Paul Chavard
95d61c85e1
Dispatch events from geo areas list view
2020-06-09 18:45:45 +02:00
Paul Chavard
901b6e23a8
Remove legacy carto
2020-06-04 16:03:23 +02:00
kara Diaby
f104567619
Add 2 cards style for MapEditor + optim import gpx kml
2020-06-02 13:24:29 +02:00
kara Diaby
1e3a042a69
Add styles without cadastres in mapReader + tutorials pages in MapEditor
2020-05-28 17:50:14 +02:00
kara Diaby
d8ae089e93
[Carto] Improve files import UX + import KML files
2020-05-20 14:17:27 +02:00
kara Diaby
c37b32ac94
fix the search input addresses return box bug [Carto]
2020-05-19 15:34:48 +02:00
Pierre de La Morinerie
833d7a3b59
javascript: ignore most common upload errors also in standard uploads
...
In #5149 , we ignored most common upload errors, but only for
auto-uploads.
This PR ignores those errors also for standard uploads.
2020-05-18 11:50:29 +02:00
Paul Chavard
d44df9cc2a
Fix map apercu
2020-05-14 14:28:54 +02:00
Pierre de La Morinerie
bbc0aa5465
javascript: remove debug code for FileReader errors
2020-05-14 13:29:54 +02:00
Pierre de La Morinerie
86357b65f0
javascript: ignore most common upload errors
2020-05-14 13:29:54 +02:00
Pierre de La Morinerie
4b288038d3
javascript: human-readable message for reading errors during upload
2020-05-14 13:29:54 +02:00
Paul Chavard
03075afa5b
Update javascript dependencies
2020-05-14 13:21:42 +02:00
Pierre de La Morinerie
b5f1d97629
app: disable Turbolinks
...
Fix #5039
2020-05-13 11:04:16 +02:00
Paul Chavard
43a1ead1cb
fix new prettier defaults
2020-05-12 18:18:37 +02:00
kara Diaby
474521c841
Adapt style for Map reader (point, line)
2020-05-12 17:47:28 +02:00
kara Diaby
1cc04092f4
import GPX file in browser [Carto]
2020-05-11 11:36:36 +02:00
Paul Chavard
05e408225b
Implement atomic operations on MapEditor
2020-05-06 16:46:14 +02:00
kara Diaby
9aea1fffee
Migrate the map editor to mapbox-gl with react component
2020-04-27 11:30:32 +02:00
Pierre de La Morinerie
6f4075f38e
javascript: fix FileUploadError stacktraces
...
When subclassing a JS error, most browsers include the constructor
stacktrace :/
This is an issue, because:
- The stacktrace is deeper than it should be
- The stacktrace reaches into a polyfill for which there is not source
map, which causes Sentry to infer the issue grouping from the JS file
name. And the fingerprinted name changes on each release. So for each
release, the stacktrace is different ; and Sentry can't group issues
properly.
2020-04-23 12:27:26 +02:00
Pierre de La Morinerie
ef009f73e2
javascript: report upload FileReader errors to Sentry
...
We have quite a lot of `Error reading file` errors when uploading files.
These errors are generated by ActiveStorage `file_checksum.js` component
but it eats the actual reason of errors.
(See https://github.com/rails/rails/blob/5-2-stable/activestorage/app/javascript/activestorage/file_checksum.js#L38 )
We can't really override the class to generate better errors, as they
are deeply nested in ActiveStorage class hierarchy, and not exported to
external code.
Instead, we hook into the FileReader event handler, to insert a logger
when this error occur. The original event handler will also still be
called as usual.
This is intended to be temporary. The debug code will be removed once
we get a better idea of what is going on.
2020-04-22 11:26:16 +02:00
Paul Chavard
bc8217e030
Carte Editor sends FeatureCollection to the server
2020-04-16 18:29:19 +02:00
Pierre de La Morinerie
769e98f63e
javascript: fix the progress bar removal on success
...
When using auto-attach, the response HTML fragment replaces the progress
bar – so it doesn't need to be removed twice.
2020-04-16 17:02:23 +02:00
Pierre de La Morinerie
647ad3ba10
javascript: consider unknown upload errors as client errors
2020-04-16 12:59:14 +02:00
Pierre de La Morinerie
b006c33ebe
javascript: parse the upload status code correctly
...
Previously the status was "Status: 422" instead of just 422.
2020-04-16 12:54:18 +02:00
Pierre de La Morinerie
b2231e98d5
javascript: don't report connectivity issues to Sentry
2020-04-16 11:20:45 +02:00
Pierre de La Morinerie
55788990da
javascript: add a helpful message on connectivity error
2020-04-16 11:20:45 +02:00
Pierre de La Morinerie
432967bd76
javascript: make Uploader always throw the same kind of errors
...
A DirectUpload may fail for several reasons, and return many types of
errors (string, xhr response, Error objects, etc).
For convenience, wrap all these errors in a FileUploadError object.
- It makes easier for clients of the Uploader class to handle errors;
- It allows to propagate the error code and failure responsability.
2020-04-16 11:20:45 +02:00
Pierre de La Morinerie
d8f3b86b0e
javascript: move auto-upload attachment to the Uploader class
...
Rationale:
- It makes more sense to handle the progress bar updates in a single class;
- This will allow us to unify the error handling.
2020-04-16 11:20:45 +02:00
Paul Chavard
442a6a3cdd
Remove deprecated map reader
2020-04-15 18:07:09 +02:00
Paul Chavard
22604013d0
Expose multiple user selections on champ carte
2020-04-15 18:07:09 +02:00
Paul Chavard
52d2ace823
Remove quartiers prioritaires
2020-04-14 10:29:59 +02:00
Pierre de La Morinerie
61660b1b3b
javascript: remove unused jQuery.active bookkeeping
2020-04-09 17:52:47 +02:00
Pierre de La Morinerie
c633cd0888
javascript: improve Sentry grouping of direct upload errors
...
DirectUpload returns errors as strings, including an HTTP status and a
file name (and without a stack trace).
But Sentry groups issues according to the stack trace, and maybe the
error message in last resort.
So we have an issue: as all DirectUpload errors logged by Sentry are
generated on the same line, with random-looking messages, Sentry groups
them either too or too little aggressively.
Instead of creating all the errors on the same line:
- add some `if`s statements to create them on different lines (and so
with different stack traces),
- strip the file name from the error message.
This allows Sentry to group the errors properly, with meaningful error
messages.
2020-04-09 17:38:44 +02:00
Pierre de La Morinerie
bc1c15b81d
javascript: make DirectUpload errors return true error objects
...
DirectUpload errors are string (instead of error objects). But Sentry
works better if we have true errors, which include the stacktrace.
2020-04-09 12:50:47 +02:00
kara Diaby
d18bc1c421
Improve the mapbox-gl support detection for older browsers
2020-04-09 11:01:20 +02:00
kara Diaby
56e9834389
Revert "Revert "Revert "Revert "feat/4893 - migrate the mapReader to mapbox-gl with react""""
...
This reverts commit 473ed00b6c
.
2020-04-09 11:01:20 +02:00