({ reported }: CrashScreenOptions)
| 12 | } |
| 13 | |
| 14 | export const sidecarCrashHtml = ({ reported }: CrashScreenOptions): string => `<!doctype html> |
| 15 | <html> |
| 16 | <head> |
| 17 | <meta charset="utf-8" /> |
| 18 | <title>Executor</title> |
| 19 | <style> |
| 20 | :root { color-scheme: dark; } |
| 21 | body { |
| 22 | margin: 0; |
| 23 | min-height: 100vh; |
| 24 | display: grid; |
| 25 | place-items: center; |
| 26 | background: #0a0a0a; |
| 27 | color: #fafafa; |
| 28 | font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; |
| 29 | } |
| 30 | .card { max-width: 26rem; padding: 2rem; text-align: center; } |
| 31 | .icon { font-size: 2rem; margin-bottom: 0.75rem; } |
| 32 | h1 { font-size: 1.15rem; font-weight: 600; margin: 0 0 0.5rem; } |
| 33 | p { font-size: 0.875rem; color: #a1a1aa; line-height: 1.5; margin: 0 0 1.5rem; } |
| 34 | .row { display: flex; gap: 0.6rem; justify-content: center; } |
| 35 | button { |
| 36 | padding: 0.55rem 1.1rem; |
| 37 | border-radius: 6px; |
| 38 | border: 1px solid transparent; |
| 39 | background: #fafafa; |
| 40 | color: #0a0a0a; |
| 41 | font: inherit; |
| 42 | font-size: 0.875rem; |
| 43 | cursor: pointer; |
| 44 | white-space: nowrap; |
| 45 | } |
| 46 | button.secondary { background: transparent; color: #fafafa; border-color: #3f3f46; } |
| 47 | #status { margin-top: 1.25rem; min-height: 1.2em; font-size: 0.8rem; color: #a1a1aa; } |
| 48 | .reset-row { margin-top: 1.75rem; font-size: 0.75rem; color: #71717a; } |
| 49 | .reset-row a { color: #f87171; text-decoration: underline; cursor: pointer; } |
| 50 | </style> |
| 51 | </head> |
| 52 | <body> |
| 53 | <main class="card"> |
| 54 | <div class="icon">⚠️</div> |
| 55 | <h1>The local Executor server stopped unexpectedly</h1> |
| 56 | <p> |
| 57 | Your data is safe.${reported ? " A crash report was sent automatically so this can get fixed." : ""} |
| 58 | Restart the server to keep working. |
| 59 | </p> |
| 60 | <div class="row"> |
| 61 | <button id="restart">Restart server</button> |
| 62 | <button id="update" class="secondary">Check for updates</button> |
| 63 | <button id="export" class="secondary">Export diagnostics</button> |
| 64 | </div> |
| 65 | <p id="status"></p> |
| 66 | <p class="reset-row"> |
| 67 | Still won't start after restarting? |
| 68 | <a id="reset" href="#">Reset data</a> |
| 69 | clears a damaged database to get the app running again. |
| 70 | </p> |
| 71 | </main> |
no outgoing calls
no test coverage detected