• jochenboesmans's avatar
    Add App-level error boundary, referring users to GitHub issue creation (#1464) · 78e95f60
    jochenboesmans authored
    * Add App-level error boundary, referring users to GitHub issue creation on page crashes. (#1452)
    
    * Class component is used as boundary since catching errors is apparently not yet possible with hooks.
    
    * EventListener in window was removed and replaced by error boundary's error catch, which now fires a GA exception. The fields it passes are slightly different because React uses slightly different error types.
    
    * Pre-filling issues with dynamic data is possible with POST requests to GitHub's API, but the GH web client seems to only support pre-fill based on templates. Therefore users still need to copy error info themselves.
    
    * Prefill GitHub issues with crash data.
    
    * Added package 'react-device-detect' to include device data such as OS, browser etc. in crash report.
    * Included error stack in issue body.
    * Used <code> html tag for displaying stack to user.
    
    * Slightly reduce vertical padding on code block.
    
    * Add ua-parser-js for parsing user agent.
    
    * Revert react-device-detect to ^1.6.2 (which is used for mobile detection etc. in components)
    78e95f60
index.tsx 2.37 KB