Something went wrong. Try again.
[READ-ONLY] Mirror of https://github.com/flo-bit/shapecraft. flo-bit.dev/shapecraft
Something went wrong. Try again.
6.5 kB · 248 lines
TypeScript
at commit da69385e
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249import { FilePosition } from './input.js'
declare namespace CssSyntaxError { /** * A position that is part of a range. */ export interface RangePosition { /** * The column number in the input. */ column: number
/** * The line number in the input. */ line: number }
export { CssSyntaxError_ as default }}
/** * The CSS parser throws this error for broken CSS. * * Custom parsers can throw this error for broken custom syntax using * the `Node#error` method. * * PostCSS will use the input source map to detect the original error location. * If you wrote a Sass file, compiled it to CSS and then parsed it with PostCSS, * PostCSS will show the original position in the Sass file. * * If you need the position in the PostCSS input * (e.g., to debug the previous compiler), use `error.input.file`. * * ```js * // Raising error from plugin * throw node.error('Unknown variable', { plugin: 'postcss-vars' }) * ``` * * ```js * // Catching and checking syntax error * try { * postcss.parse('a{') * } catch (error) { * if (error.name === 'CssSyntaxError') { * error //=> CssSyntaxError * } * } * ``` */declare class CssSyntaxError_ extends Error { /** * Source column of the error. * * ```js * error.column //=> 1 * error.input.column //=> 4 * ``` * * PostCSS will use the input source map to detect the original location. * If you need the position in the PostCSS input, use `error.input.column`. */ column?: number
/** * Source column of the error's end, exclusive. Provided if the error pertains * to a range. * * ```js * error.endColumn //=> 1 * error.input.endColumn //=> 4 * ``` * * PostCSS will use the input source map to detect the original location. * If you need the position in the PostCSS input, use `error.input.endColumn`. */ endColumn?: number
/** * Source line of the error's end, exclusive. Provided if the error pertains * to a range. * * ```js * error.endLine //=> 3 * error.input.endLine //=> 4 * ``` * * PostCSS will use the input source map to detect the original location. * If you need the position in the PostCSS input, use `error.input.endLine`. */ endLine?: number
/** * Absolute path to the broken file. * * ```js * error.file //=> 'a.sass' * error.input.file //=> 'a.css' * ``` * * PostCSS will use the input source map to detect the original location. * If you need the position in the PostCSS input, use `error.input.file`. */ file?: string
/** * Input object with PostCSS internal information * about input file. If input has source map * from previous tool, PostCSS will use origin * (for example, Sass) source. You can use this * object to get PostCSS input source. * * ```js * error.input.file //=> 'a.css' * error.file //=> 'a.sass' * ``` */ input?: FilePosition
/** * Source line of the error. * * ```js * error.line //=> 2 * error.input.line //=> 4 * ``` * * PostCSS will use the input source map to detect the original location. * If you need the position in the PostCSS input, use `error.input.line`. */ line?: number
/** * Full error text in the GNU error format * with plugin, file, line and column. * * ```js * error.message //=> 'a.css:1:1: Unclosed block' * ``` */ message: string
/** * Always equal to `'CssSyntaxError'`. You should always check error type * by `error.name === 'CssSyntaxError'` * instead of `error instanceof CssSyntaxError`, * because npm could have several PostCSS versions. * * ```js * if (error.name === 'CssSyntaxError') { * error //=> CssSyntaxError * } * ``` */ name: 'CssSyntaxError'
/** * Plugin name, if error came from plugin. * * ```js * error.plugin //=> 'postcss-vars' * ``` */ plugin?: string
/** * Error message. * * ```js * error.message //=> 'Unclosed block' * ``` */ reason: string
/** * Source code of the broken file. * * ```js * error.source //=> 'a { b {} }' * error.input.source //=> 'a b { }' * ``` */ source?: string
stack: string
/** * Instantiates a CSS syntax error. Can be instantiated for a single position * or for a range. * @param message Error message. * @param lineOrStartPos If for a single position, the line number, or if for * a range, the inclusive start position of the error. * @param columnOrEndPos If for a single position, the column number, or if for * a range, the exclusive end position of the error. * @param source Source code of the broken file. * @param file Absolute path to the broken file. * @param plugin PostCSS plugin name, if error came from plugin. */ constructor( message: string, lineOrStartPos?: CssSyntaxError.RangePosition | number, columnOrEndPos?: CssSyntaxError.RangePosition | number, source?: string, file?: string, plugin?: string )
/** * Returns a few lines of CSS source that caused the error. * * If the CSS has an input source map without `sourceContent`, * this method will return an empty string. * * ```js * error.showSourceCode() //=> " 4 | } * // 5 | a { * // > 6 | bad * // | ^ * // 7 | } * // 8 | b {" * ``` * * @param color Whether arrow will be colored red by terminal * color codes. By default, PostCSS will detect * color support by `process.stdout.isTTY` * and `process.env.NODE_DISABLE_COLORS`. * @return Few lines of CSS source that caused the error. */ showSourceCode(color?: boolean): string
/** * Returns error position, message and source code of the broken part. * * ```js * error.toString() //=> "CssSyntaxError: app.css:1:1: Unclosed block * // > 1 | a { * // | ^" * ``` * * @return Error position, message and source code. */ toString(): string}
declare class CssSyntaxError extends CssSyntaxError_ {}
export = CssSyntaxError