stylesheet-loader
Version:
Stylesheet loader.
49 lines • 2.35 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var chalk_1 = require("chalk");
var BoxModelPropTypes_1 = require("./BoxModelPropTypes");
var FlexboxPropTypes_1 = require("./FlexboxPropTypes");
var TextStylePropTypes_1 = require("./TextStylePropTypes");
var ColorPropTypes_1 = require("./ColorPropTypes");
var CSSTransitionPropTypes_1 = require("./CSSTransitionPropTypes");
var promptMessage_1 = require("./promptMessage");
var particular_1 = require("./particular");
var Validation = /** @class */ (function () {
function Validation() {
}
Validation.validate = function (camelCaseProperty, prop, value, selectors, position, log) {
if (selectors === void 0) { selectors = ''; }
if (position === void 0) { position = {}; }
if (!log)
return {};
if (allStylePropTypes[camelCaseProperty]) {
var error = allStylePropTypes[camelCaseProperty](value, prop, selectors);
if (error) {
var message = "line: " + position.start.line + ", column: " + position.start.column + " - " + error.message;
console.warn(chalk_1.default.yellow.bold(message));
promptMessage_1.pushWarnMessage(message);
}
return error;
}
else if (!particular_1.default[camelCaseProperty]) {
var message = "line: " + position.start.line + ", column: " + position.start.column + " - \"" + prop + ": " + value + "\" is not valid in \"" + selectors + "\" selector";
console.warn(chalk_1.default.yellow.bold(message));
promptMessage_1.pushWarnMessage(message);
}
};
Validation.addValidStylePropTypes = function (stylePropTypes) {
// eslint-disable-next-line guard-for-in
for (var prop in stylePropTypes) {
allStylePropTypes[prop] = stylePropTypes[prop];
}
};
return Validation;
}());
var allStylePropTypes = {};
Validation.addValidStylePropTypes(BoxModelPropTypes_1.default);
Validation.addValidStylePropTypes(FlexboxPropTypes_1.default);
Validation.addValidStylePropTypes(TextStylePropTypes_1.default);
Validation.addValidStylePropTypes(ColorPropTypes_1.default);
Validation.addValidStylePropTypes(CSSTransitionPropTypes_1.default);
exports.default = Validation;
//# sourceMappingURL=Validation.js.map