Pārlūkot izejas kodu

Remove jQueryNotDelegatedEvents offenders and send user to filtered timeline

Gaël Métais 10 gadi atpakaļ
vecāks
revīzija
5e3748315c

+ 5 - 15
front/src/views/rule.html

@@ -71,21 +71,6 @@
                         function <b>{{offender.functionName}}</b> used {{offender.count}} times
                     </div>
 
-                    <div ng-if="policyName === 'jQueryNotDelegatedEvents'">
-                        function <b>{{offender.functionName}}</b> used on {{offender.contextLength}} DOM elements without event delegation
-                        <div class="offenderButton" ng-if="offender.backtrace.length == 0">no backtrace</div>
-                        <div class="offenderButton opens" ng-if="offender.backtrace.length > 0">
-                            backtrace
-                            <div class="backtrace">
-                                <div ng-repeat="obj in offender.backtrace track by $index">
-                                    <span ng-if="obj.functionName">{{obj.functionName}}()</span>
-                                    <url-link url="obj.file" max-length="60"></url-link>
-                                    line {{obj.line}}
-                                </div>
-                            </div>
-                        </div>
-                    </div>
-
                     <div ng-if="policyName === 'documentWriteCalls'">
                         <b>{{offender.writeFn}}</b>
                         <span ng-if="offender.from">
@@ -219,6 +204,11 @@
         Please open the <a href="/result/{{runId}}/timeline#filter=queryWithoutResults">JS timeline, filtered by "Queries without results"</a>
     </div>
 
+    <div ng-if="policyName === 'jQueryNotDelegatedEvents'">
+        <h3>{{rule.value}} offenders</h3>
+        Please open the <a href="/result/{{runId}}/timeline#filter=eventNotDelegated">JS timeline, filtered by "Events not delegated"</a>
+    </div>
+
     <div ng-if="!rule && rule !== null" class="notFound">
         <h2>404</h2>
         Rule "{{policyName}}"" not found

+ 1 - 1
lib/metadata/policies.js

@@ -358,7 +358,7 @@ var policies = {
         "isOkThreshold": 1,
         "isBadThreshold": 100,
         "isAbnormalThreshold": 180,
-        "hasOffenders": true
+        "hasOffenders": false
     },
     "cssParsingErrors": {
         "tool": "phantomas",

+ 0 - 6
lib/tools/jsExecutionTransformer.js

@@ -25,7 +25,6 @@ var jsExecutionTransformer = function() {
             metrics.jQueryNotDelegatedEvents = 0;
 
             offenders.jQueryFunctionsUsed = [];
-            offenders.jQueryNotDelegatedEvents = [];
         }
 
         try {
@@ -40,11 +39,6 @@ var jsExecutionTransformer = function() {
 
                     if (isABindWithoutEventDelegation(node, contextLength)) {
                         metrics.jQueryNotDelegatedEvents += contextLength;
-                        offenders.jQueryNotDelegatedEvents.push({
-                            functionName: node.data.type.substring(9),
-                            contextLength: contextLength,
-                            backtrace: offendersHelpers.backtraceToArray(node.data.backtrace)
-                        });
                         node.warning = true;
                         node.eventNotDelegated = true;
                     }