mirror of
https://github.com/gristlabs/grist-core.git
synced 2024-10-27 20:44:07 +00:00
5ef889addd
Summary: This moves enough server material into core to run a home server. The data engine is not yet incorporated (though in manual testing it works when ported). Test Plan: existing tests pass Reviewers: dsagal Reviewed By: dsagal Differential Revision: https://phab.getgrist.com/D2552
24 lines
592 B
TypeScript
24 lines
592 B
TypeScript
import {OpenDocMode} from 'app/common/DocListAPI';
|
|
|
|
interface ErrorDetails {
|
|
status?: number;
|
|
accessMode?: OpenDocMode;
|
|
}
|
|
|
|
/**
|
|
*
|
|
* An error with a human-readable message and a machine-readable code.
|
|
* Makes it easier to change the human-readable message without breaking
|
|
* error handlers.
|
|
*
|
|
*/
|
|
export class ErrorWithCode extends Error {
|
|
public accessMode?: OpenDocMode;
|
|
public status?: number;
|
|
constructor(public code: string, message: string, details: ErrorDetails = {}) {
|
|
super(message);
|
|
this.status = details.status;
|
|
this.accessMode = details.accessMode;
|
|
}
|
|
}
|