@stylable/core
Version:
CSS for Components
29 lines (25 loc) • 829 B
text/typescript
import postcss from 'postcss';
export type DiagnosticType = 'error' | 'warning';
export interface Diagnostic {
type: DiagnosticType;
node: postcss.Node;
message: string;
options: postcss.NodeErrorOptions;
}
export class Diagnostics {
constructor(public reports: Diagnostic[] = []) {}
public add(
type: DiagnosticType,
node: postcss.Node,
message: string,
options: postcss.NodeErrorOptions = {}
) {
this.reports.push({ type, node, message, options });
}
public error(node: postcss.Node, message: string, options?: postcss.NodeErrorOptions) {
this.add('error', node, message, options);
}
public warn(node: postcss.Node, message: string, options?: postcss.NodeErrorOptions) {
this.add('warning', node, message, options);
}
}