1 | const { PACKAGE_NAME } = require('./config');
|
2 |
|
3 | class LoaderException extends Error {
|
4 | constructor(message = '') {
|
5 | super(`${PACKAGE_NAME} exception. ${message}`);
|
6 |
|
7 | this.name = this.constructor.name;
|
8 |
|
9 |
|
10 | if (typeof Error.captureStackTrace === 'function') {
|
11 | Error.captureStackTrace(this, this.constructor);
|
12 | } else {
|
13 | this.stack = (new Error(message)).stack;
|
14 | }
|
15 | }
|
16 | }
|
17 |
|
18 | class InvalidSvg extends LoaderException {
|
19 | constructor(content) {
|
20 | super(`\n\n${content}`);
|
21 | }
|
22 | }
|
23 |
|
24 | class ExtractPluginMissingException extends LoaderException {
|
25 | constructor() {
|
26 | super(`${PACKAGE_NAME} in extract mode requires the corresponding plugin`);
|
27 | }
|
28 | }
|
29 |
|
30 | class InvalidRuntimeException extends LoaderException {}
|
31 |
|
32 | class RemainingLoadersInExtractModeException extends LoaderException {
|
33 | constructor() {
|
34 | super(`Some loaders will be applied after ${PACKAGE_NAME} in extract mode`);
|
35 | }
|
36 | }
|
37 |
|
38 | exports.LoaderException = LoaderException;
|
39 | exports.InvalidSvg = InvalidSvg;
|
40 | exports.ExtractPluginMissingException = ExtractPluginMissingException;
|
41 | exports.InvalidRuntimeException = InvalidRuntimeException;
|
42 | exports.RemainingLoadersInExtractModeException = RemainingLoadersInExtractModeException;
|