Replace newTranslatableError with UserFriendlyError (#10440
* Introduce UserFriendlyError * Replace newTranslatableError with UserFriendlyError * Remove ITranslatableError * Fix up some strict lints * Document when we/why we can remove * Update matrix-web-i18n Includes changes to find `new UserFriendlyError`, see https://github.com/matrix-org/matrix-web-i18n/pull/6 * Include room ID in error * Translate fallback error * Translate better * Update i18n strings * Better re-use * Minor comment fixes
This commit is contained in:
Vendored
+21
@@ -187,6 +187,11 @@ declare global {
|
||||
}
|
||||
|
||||
interface Error {
|
||||
// Standard
|
||||
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error/cause
|
||||
cause?: unknown;
|
||||
|
||||
// Non-standard
|
||||
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error/fileName
|
||||
fileName?: string;
|
||||
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error/lineNumber
|
||||
@@ -195,6 +200,22 @@ declare global {
|
||||
columnNumber?: number;
|
||||
}
|
||||
|
||||
// We can remove these pieces if we ever update to `target: "es2022"` in our
|
||||
// TypeScript config which supports the new `cause` property, see
|
||||
// https://github.com/vector-im/element-web/issues/24913
|
||||
interface ErrorOptions {
|
||||
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error/cause
|
||||
cause?: unknown;
|
||||
}
|
||||
|
||||
interface ErrorConstructor {
|
||||
new (message?: string, options?: ErrorOptions): Error;
|
||||
(message?: string, options?: ErrorOptions): Error;
|
||||
}
|
||||
|
||||
// eslint-disable-next-line no-var
|
||||
var Error: ErrorConstructor;
|
||||
|
||||
// https://github.com/microsoft/TypeScript/issues/28308#issuecomment-650802278
|
||||
interface AudioWorkletProcessor {
|
||||
readonly port: MessagePort;
|
||||
|
||||
Reference in New Issue
Block a user