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
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
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
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
Pierre de La Morinerie
38c0cdc360
javascript: ignore errors of attachments pooler
...
Pooling for attachment status is a background operation. Errors should
not be reported to the user, who didn't even ask for this operation to
take place.
This is why we ignore all errors, whether Javascript exceptions or
network errors.
2020-04-07 12:35:54 +02:00
Pierre de La Morinerie
6417c0d2c0
dossiers: allow auto upload of attachments
2020-03-31 13:09:44 +02:00
Pierre de La Morinerie
a1083ca253
javascript: add some comments to the upload systems
2020-03-31 13:09:17 +02:00
Pierre de La Morinerie
7a27e78452
specs: remove unused wait-for-ajax helper
...
This helper is:
- no longer used;
- buggy (not all requests increment it);
- discouraged (we should instead match an UI change that signals the end
of an ajax request).
Good riddance.
2020-03-31 12:54:49 +02:00
Pierre de La Morinerie
ec2199f7b1
javascript: make utils.ajax() return a promise
...
This allow to use `await ajax(…)`, and still have Rails manage the
request, insert the proper headers and tokens, etc.
2020-03-19 18:28:24 +01:00
Paul Chavard
0b06864f7a
Upgrade core-js
2020-02-24 19:43:07 +01:00
Paul Chavard
5afe158c89
Tweak a bit timeout values for export polling
2020-02-03 15:56:10 +01:00
Paul Chavard
a86129c3a1
Revert "Revert "Update javascript dependencies and add webpack-bundle-analyzer""
...
This reverts commit eddd59e554
.
2020-02-03 14:54:25 +01:00
Paul Chavard
08400cdd4c
Poll for export readiness updates
2020-01-29 22:52:03 +01:00
Keirua
eddd59e554
Revert "Update javascript dependencies and add webpack-bundle-analyzer"
2020-01-29 14:51:55 +01:00
Paul Chavard
7ebebf2e80
Refactor leaflet code for better loading
2020-01-28 16:37:44 +01:00
Paul Chavard
f03cca4386
Search departements by code
2020-01-23 14:12:19 +00:00
Paul Chavard
14295db9ad
Revert "Revert "Merge pull request #4552 from tchak/champ-communes""
...
This reverts commit 4373cb22cb
.
2020-01-14 18:46:07 +01:00
clemkeirua
4373cb22cb
Revert "Merge pull request #4552 from tchak/champ-communes"
...
This reverts commit 4cec26f73a
, reversing
changes made to 0ef25ef36c
.
2020-01-13 16:26:27 +01:00
Paul Chavard
e61e39d345
Remove unused code and tests
2020-01-07 11:52:51 +01:00
Paul Chavard
22aa2d4ee0
Make all location champs autocomplete
2020-01-07 11:52:51 +01:00
Paul Chavard
03326169c5
Always load IntersectionObserver to fix old browsers
...
fix #4614
2019-12-04 16:26:59 +01:00
Paul Chavard
2cf415dc41
Simplify React components loader
2019-11-28 14:45:40 +01:00
Pierre de La Morinerie
6de5c0c9d1
autosave: make requests time out
...
This avoids recent requests being stuck because an older request never
finished.
2019-11-21 14:00:06 +01:00
Pierre de La Morinerie
bff7892ba8
dossiers: autosave drafts
2019-11-21 14:00:06 +01:00
Pierre de La Morinerie
74a9db6580
javascript: make utils resilient to missing elements
2019-11-20 17:36:09 +01:00
Pierre de La Morinerie
bb024d1850
javascript: display a localized message on upload errors
2019-10-24 16:12:56 +02:00
Pierre de La Morinerie
a3057afc22
javascript: report upload errors to Sentry
2019-10-24 16:12:56 +02:00
Nicolas Bouilleaud
c26a701a17
Refactor and redesign publish modal
...
* remove the autocomplete menu
* use ujs to pre-validate the procedure
* tweak the UI
2019-09-17 16:30:48 +02:00
Paul Chavard
86b9ed2079
Run load scripts after ujs responces
2019-08-13 17:03:55 +01:00
Chaïb Martinez
d968e7e6bd
Add some admin usage info for contextual help with crisp
...
Fix #4052
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-15 12:10:56 +02:00
Chaïb Martinez
535d032b73
Send URL page view to Crisp to trigger contextual help
...
Fix #4052
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-07-15 12:10:56 +02:00
Paul Chavard
860588b216
Upgrade javascript dependencies and add actiontext
2019-07-03 11:42:25 +02:00
Pierre de La Morinerie
78f75744e3
javascript: fix payload of ActiveStorage events missing on IE 11
...
Under some circumstances (like dispatching events just before a page
navigation), IE 11 events will be dispatched twice by the browser: once
with the payload, and a second time without.
To prevent these errors, ignore the events if the payload is missing.
2019-06-06 15:00:57 +02:00
Chaïb Martinez
eccd456325
Add crisp
...
Signed-off-by: Chaïb Martinez <chaibax@gmail.com>
2019-06-05 17:41:47 +02:00
Paul Chavard
6d312e1716
spec: refactor wait_for_ajax
to work with out new ajax utils
...
`wait_for_ajax` is not used anymore, but it may be in the future.
2019-06-04 16:30:36 +02:00
Pierre de La Morinerie
f2f16e2580
carte: disable tiles layer during tests
...
During integration tests, we don't want to load the tiles from OSM:
- It hits OSM servers during every test run;
- It it slow (Capybara waits for the tiles to be loaded to proceed);
- It makes test time out when tiles cannot be loaded for some reason.
Fix #3913
2019-06-03 17:24:15 +02:00
Paul Chavard
6797c01b69
Properly handle justificatif_motivation case
2019-05-22 14:11:08 +02:00
Paul Chavard
6a3413018a
Refresh attachments with virus scan result
2019-05-21 14:21:55 +02:00
Paul Chavard
0265c10474
Safari throw if deleting inexistent property
2019-05-14 17:12:27 +02:00
Paul Chavard
c93b1bb276
Add intersection-observer polyfill
2019-05-14 10:55:16 +02:00
clemkeirua
ec2e17032e
suppression de la double confirmation
2019-05-07 08:54:29 +02:00
Paul Chavard
2f633b5d23
Load leaflet from a separate chunk
2019-05-02 14:10:48 +02:00
Paul Chavard
a60943a173
Polyfill insertAdjacentElement and dataset on old browsers
2019-04-09 15:26:42 +02:00
Paul Chavard
4fb889f10a
Send browser support information and format user id
2019-04-04 14:21:32 +02:00
Paul Chavard
8e6e730c80
Send user information to sentry without email
2019-04-04 14:21:32 +02:00
Paul Chavard
b9be186d2c
Sentry should send environment information
2019-04-03 18:19:16 +02:00
Paul Chavard
47694d286e
Revrite types de champ editor using React
2019-04-03 14:38:57 +02:00
Paul Chavard
5a032d344d
Activate React components loader
2019-04-03 14:38:57 +02:00
Paul Chavard
51c79ba6a6
Update webpacker and replace vue with react
2019-04-03 14:38:07 +02:00
Paul Chavard
e71cdcd12c
Move all the trackers to a separate js pack
2019-04-02 17:33:53 +02:00
Pierre de La Morinerie
1f636e4d59
piece_justificative: toggle file upload control
2019-02-19 18:02:27 +01:00
Paul Chavard
5e806aa39e
Add progress bar to model uploads
2019-02-14 17:13:41 +01:00
Paul Chavard
1e8bc3e14c
Refactor upload progress bar
2019-02-14 17:13:41 +01:00
Paul Chavard
235310bcf6
Fix upload progress bar
2019-02-14 17:13:41 +01:00
Pierre de La Morinerie
82fc017430
autocomplete: fix initialization happening several times
2019-02-07 15:29:46 +01:00
Paul Chavard
bb5c90c579
Fix champ address on repetitions
2019-02-07 12:29:27 +01:00
Paul Chavard
2f2aa580f8
Update activestorage.js
2018-12-04 11:37:00 +01:00
Paul Chavard
c492e1cd88
Update webpacker (babel7)
2018-12-04 11:37:00 +01:00
Paul Chavard
d77a5c9f15
More tests and fixes on carte champ
2018-11-30 13:28:30 +01:00
Paul Chavard
febf625dd9
Make difference between error and empty geo json
2018-11-27 12:36:10 +01:00
Paul Chavard
f2e7feec1d
Do not send error json to backend - it doesn’t need it and it creates bad data
2018-11-27 11:45:24 +01:00
Paul Chavard
7ba9624a3f
Fix instructeurs list filter
...
fix #3002
2018-11-20 14:27:32 +01:00
Paul Chavard
5a8a4b393f
Add RPG carte source
2018-10-23 18:13:44 +02:00
Paul Chavard
c8c75fc254
Better handle empty user selection layers
2018-10-23 09:35:25 +02:00
Paul Chavard
8d9f6573da
Rename shared module carto to carte
2018-10-23 09:35:25 +02:00
Paul Chavard
febef735b8
Refactor carto to share more code
2018-10-23 09:35:25 +02:00
gregoirenovel
6658b466cb
address/get → address/suggestions
2018-10-16 09:38:53 +02:00
gregoirenovel
e667cad617
ban → address
2018-10-16 09:38:53 +02:00
simon lehericey
45d63df5ee
Autocomplete.js: debounce input
2018-10-15 21:41:42 +02:00
Paul Chavard
9a4975a2dd
Remove dead carto code
2018-10-14 12:34:44 +02:00
Paul Chavard
485aabf295
carto: export polygon styles
2018-10-14 12:34:44 +02:00
Paul Chavard
e1b068d67c
carto: add initMap method
2018-10-14 12:34:44 +02:00
Paul Chavard
561f9a8164
carto: add drawLayer method
2018-10-14 12:34:44 +02:00
Paul Chavard
6673467117
carto: add createLayer and removeLayer methods
2018-10-14 12:34:44 +02:00
Paul Chavard
3897d4abf4
Refactor messagerie helpers
2018-10-10 15:05:51 +02:00
Paul Chavard
8c16eb4cd0
Use @utils instead of jQuery
2018-10-10 14:55:28 +02:00
Paul Chavard
c343893d00
Expose all utils function as @utils
2018-10-10 14:39:36 +02:00
Paul Chavard
37d424d671
Refactor carto code
2018-10-05 09:55:41 +02:00
Paul Chavard
eda3dd4215
Compile FranceConnect module with webpacker
2018-10-05 09:55:13 +02:00
Paul Chavard
9d19936f82
Move franceconnect kit to webpacker
2018-10-05 09:55:13 +02:00
Paul Chavard
55a9b31b93
Cleanup SIRET champ
2018-09-12 15:53:02 +02:00
Paul Chavard
2f189826ab
Add some usefull polyfills for old browsers
2018-09-11 20:37:08 +02:00
Paul Chavard
8c8e7f3ef3
Patch remote ujs handler with debounced input support
2018-09-06 15:09:02 +01:00
Paul Chavard
72dded2a5a
Fix safari bug
...
Fix #2452
2018-08-31 11:58:33 +01:00
Paul Chavard
3d506a8cdc
Fix autocomplete
2018-08-28 11:04:44 +01:00
Paul Chavard
e1f1827320
Replace typeahead with simpler autocomplete
2018-08-22 17:17:33 +02:00
Paul Chavard
1109a4500f
Add csrf token protection to jQuery initiated requests
2018-08-22 14:13:10 +02:00
Paul Chavard
13470e9781
Remove unused JavaScript
2018-08-14 17:03:00 +02:00
Pierre de La Morinerie
40d0986a82
javascript: transpile activestorage files (instead of copying them)
2018-08-14 11:40:33 +02:00
Paul Chavard
008d84f107
Explicitly import jQuery
2018-08-13 15:17:13 +02:00
Paul Chavard
541df2d961
Add support for in browser sentry
2018-08-13 11:44:32 +02:00
Paul Chavard
e7e616ae5b
Fix transpiling issues in IE
2018-08-09 21:05:07 +02:00