UNPKG

rxjs-tslint-rules

Version:
42 lines (41 loc) 1.63 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var Lint = require("tslint"); var peer = require("../support/peer"); var Rule = (function (_super) { tslib_1.__extends(Rule, _super); function Rule() { return _super !== null && _super.apply(this, arguments) || this; } Rule.prototype.apply = function (sourceFile) { return this.applyWithWalker(new Walker(sourceFile, this.getOptions())); }; Rule.metadata = { deprecationMessage: peer.v6 && !peer.compat ? peer.v6NotNeededMessage : undefined, description: "Disallows importation from 'rxjs/operator'.", options: null, optionsDescription: "Not configurable.", requiresTypeInfo: false, ruleName: "rxjs-no-operator", type: "functionality", typescriptOnly: false }; Rule.FAILURE_STRING = "Importation from 'rxjs/operator' is forbidden"; return Rule; }(Lint.Rules.AbstractRule)); exports.Rule = Rule; var Walker = (function (_super) { tslib_1.__extends(Walker, _super); function Walker() { return _super !== null && _super.apply(this, arguments) || this; } Walker.prototype.visitImportDeclaration = function (node) { var moduleSpecifier = node.moduleSpecifier.getText(); if (/^['"]rxjs\/operator\//.test(moduleSpecifier)) { this.addFailureAtNode(node.moduleSpecifier, Rule.FAILURE_STRING); } _super.prototype.visitImportDeclaration.call(this, node); }; return Walker; }(Lint.RuleWalker));