JaxsonWang/WP-Editor.MD

View on GitHub
assets/CodeMirror/addon/hint/xml-hint.js

Summary

Maintainability
C
1 day
Test Coverage

Showing 7 of 7 total issues

Function getHints has 95 lines of code (exceeds 25 allowed). Consider refactoring.
Open

function getHints(cm, options) {
var tags = options && options.schemaInfo;
var quote = (options && options.quoteChar) || '"';
var matchInMiddle = options && options.matchInMiddle;
if (!tags) return;
Severity: Major
Found in assets/CodeMirror/addon/hint/xml-hint.js - About 3 hrs to fix

    Consider simplifying this complex logical expression.
    Open

    if (!tag && !tagInfo || tagType) {
    if (tagName)
    prefix = token.string;
    replaceToken = tagType;
    var context = inner.mode.xmlCurrentContext ? inner.mode.xmlCurrentContext(inner.state) : []
    Severity: Critical
    Found in assets/CodeMirror/addon/hint/xml-hint.js - About 1 hr to fix

      Avoid deeply nested control flow statements.
      Open

      if (tags.hasOwnProperty(name) && name != "!top" && name != "!attrs" && (!prefix || matches(name, prefix, matchInMiddle)))
      result.push("<" + name);
      Severity: Major
      Found in assets/CodeMirror/addon/hint/xml-hint.js - About 45 mins to fix

        Avoid deeply nested control flow statements.
        Open

        if (line.length > token.end && line.charAt(token.end) == quote) token.end++; // include a closing quote
        Severity: Major
        Found in assets/CodeMirror/addon/hint/xml-hint.js - About 45 mins to fix

          Avoid too many return statements within this function.
          Open

          return {
          list: result,
          from: replaceToken ? Pos(cur.line, tagStart == null ? token.start : tagStart) : cur,
          to: replaceToken ? Pos(cur.line, token.end) : cur
          };
          Severity: Major
          Found in assets/CodeMirror/addon/hint/xml-hint.js - About 30 mins to fix

            Similar blocks of code found in 132 locations. Consider refactoring.
            Open

            (function(mod) {
            if (typeof exports == "object" && typeof module == "object") // CommonJS
            mod(require("../../lib/codemirror"));
            else if (typeof define == "function" && define.amd) // AMD
            define(["../../lib/codemirror"], mod);
            Severity: Major
            Found in assets/CodeMirror/addon/hint/xml-hint.js and 131 other locations - About 2 hrs to fix
            assets/CodeMirror/addon/comment/comment.js on lines 4..209
            assets/CodeMirror/addon/comment/continuecomment.js on lines 4..114
            assets/CodeMirror/addon/dialog/dialog.js on lines 6..161
            assets/CodeMirror/addon/display/autorefresh.js on lines 4..47
            assets/CodeMirror/addon/display/fullscreen.js on lines 4..41
            assets/CodeMirror/addon/display/panel.js on lines 4..129
            assets/CodeMirror/addon/display/placeholder.js on lines 4..63
            assets/CodeMirror/addon/display/rulers.js on lines 4..51
            assets/CodeMirror/addon/edit/closebrackets.js on lines 4..191
            assets/CodeMirror/addon/edit/continuelist.js on lines 4..101
            assets/CodeMirror/addon/edit/matchbrackets.js on lines 4..150
            assets/CodeMirror/addon/edit/trailingspace.js on lines 4..27
            assets/CodeMirror/addon/fold/brace-fold.js on lines 4..105
            assets/CodeMirror/addon/fold/comment-fold.js on lines 4..59
            assets/CodeMirror/addon/fold/foldcode.js on lines 4..157
            assets/CodeMirror/addon/fold/indent-fold.js on lines 4..48
            assets/CodeMirror/addon/fold/markdown-fold.js on lines 4..49
            assets/CodeMirror/addon/fold/xml-fold.js on lines 4..184
            assets/CodeMirror/addon/hint/anyword-hint.js on lines 4..41
            assets/CodeMirror/addon/hint/javascript-hint.js on lines 4..159
            assets/CodeMirror/addon/hint/show-hint.js on lines 4..466
            assets/CodeMirror/addon/lint/coffeescript-lint.js on lines 8..47
            assets/CodeMirror/addon/lint/css-lint.js on lines 8..40
            assets/CodeMirror/addon/lint/javascript-lint.js on lines 4..63
            assets/CodeMirror/addon/lint/json-lint.js on lines 8..40
            assets/CodeMirror/addon/lint/lint.js on lines 4..255
            assets/CodeMirror/addon/lint/yaml-lint.js on lines 4..41
            assets/CodeMirror/addon/mode/multiplex.js on lines 4..131
            assets/CodeMirror/addon/mode/overlay.js on lines 13..90
            assets/CodeMirror/addon/mode/simple.js on lines 4..216
            assets/CodeMirror/addon/runmode/runmode.js on lines 4..72
            assets/CodeMirror/addon/scroll/annotatescrollbar.js on lines 4..122
            assets/CodeMirror/addon/scroll/scrollpastend.js on lines 4..48
            assets/CodeMirror/addon/scroll/simplescrollbars.js on lines 4..152
            assets/CodeMirror/addon/search/searchcursor.js on lines 4..296
            assets/CodeMirror/addon/selection/active-line.js on lines 4..72
            assets/CodeMirror/addon/selection/mark-selection.js on lines 10..119
            assets/CodeMirror/addon/selection/selection-pointer.js on lines 4..98
            assets/CodeMirror/addon/tern/tern.js on lines 46..719
            assets/CodeMirror/addon/wrap/hardwrap.js on lines 4..145
            assets/CodeMirror/keymap/emacs.js on lines 4..418
            assets/CodeMirror/mode/apl/apl.js on lines 4..174
            assets/CodeMirror/mode/asciiarmor/asciiarmor.js on lines 4..74
            assets/CodeMirror/mode/asn.1/asn.1.js on lines 4..204
            assets/CodeMirror/mode/asterisk/asterisk.js on lines 20..220
            assets/CodeMirror/mode/clike/clike.js on lines 4..935
            assets/CodeMirror/mode/clojure/clojure.js on lines 4..292
            assets/CodeMirror/mode/cobol/cobol.js on lines 8..255
            assets/CodeMirror/mode/coffeescript/coffeescript.js on lines 8..359
            assets/CodeMirror/mode/commonlisp/commonlisp.js on lines 4..124
            assets/CodeMirror/mode/crystal/crystal.js on lines 4..433
            assets/CodeMirror/mode/css/css.js on lines 4..831
            assets/CodeMirror/mode/cypher/cypher.js on lines 7..151
            assets/CodeMirror/mode/d/d.js on lines 4..223
            assets/CodeMirror/mode/diff/diff.js on lines 4..47
            assets/CodeMirror/mode/dtd/dtd.js on lines 11..142
            assets/CodeMirror/mode/dylan/dylan.js on lines 4..352
            assets/CodeMirror/mode/ebnf/ebnf.js on lines 4..195
            assets/CodeMirror/mode/ecl/ecl.js on lines 4..206
            assets/CodeMirror/mode/eiffel/eiffel.js on lines 4..160
            assets/CodeMirror/mode/elm/elm.js on lines 4..243
            assets/CodeMirror/mode/erlang/erlang.js on lines 18..619
            assets/CodeMirror/mode/fcl/fcl.js on lines 4..173
            assets/CodeMirror/mode/forth/forth.js on lines 6..180
            assets/CodeMirror/mode/fortran/fortran.js on lines 4..188
            assets/CodeMirror/mode/gas/gas.js on lines 4..345
            assets/CodeMirror/mode/gherkin/gherkin.js on lines 19..178
            assets/CodeMirror/mode/go/go.js on lines 4..187
            assets/CodeMirror/mode/groovy/groovy.js on lines 4..233
            assets/CodeMirror/mode/haskell/haskell.js on lines 4..268
            assets/CodeMirror/mode/haxe/haxe.js on lines 4..515
            assets/CodeMirror/mode/http/http.js on lines 4..113
            assets/CodeMirror/mode/idl/idl.js on lines 4..290
            assets/CodeMirror/mode/javascript/javascript.js on lines 4..930
            assets/CodeMirror/mode/jinja2/jinja2.js on lines 4..146
            assets/CodeMirror/mode/julia/julia.js on lines 4..425
            assets/CodeMirror/mode/livescript/livescript.js on lines 9..280
            assets/CodeMirror/mode/lua/lua.js on lines 8..159
            assets/CodeMirror/mode/mathematica/mathematica.js on lines 8..176
            assets/CodeMirror/mode/mbox/mbox.js on lines 4..129
            assets/CodeMirror/mode/meta.js on lines 4..220
            assets/CodeMirror/mode/mirc/mirc.js on lines 6..193
            assets/CodeMirror/mode/mllike/mllike.js on lines 4..359
            assets/CodeMirror/mode/modelica/modelica.js on lines 6..245
            assets/CodeMirror/mode/mscgen/mscgen.js on lines 12..175
            assets/CodeMirror/mode/mumps/mumps.js on lines 8..148
            assets/CodeMirror/mode/nginx/nginx.js on lines 4..178
            assets/CodeMirror/mode/ntriples/ntriples.js on lines 32..195
            assets/CodeMirror/mode/octave/octave.js on lines 4..139
            assets/CodeMirror/mode/oz/oz.js on lines 4..252
            assets/CodeMirror/mode/pascal/pascal.js on lines 4..121
            assets/CodeMirror/mode/perl/perl.js on lines 7..837
            assets/CodeMirror/mode/pig/pig.js on lines 10..178
            assets/CodeMirror/mode/properties/properties.js on lines 4..78
            assets/CodeMirror/mode/protobuf/protobuf.js on lines 4..69
            assets/CodeMirror/mode/puppet/puppet.js on lines 4..220
            assets/CodeMirror/mode/python/python.js on lines 4..399
            assets/CodeMirror/mode/q/q.js on lines 4..139
            assets/CodeMirror/mode/r/r.js on lines 4..190
            assets/CodeMirror/mode/rpm/rpm.js on lines 4..109
            assets/CodeMirror/mode/ruby/ruby.js on lines 4..298
            assets/CodeMirror/mode/sas/sas.js on lines 24..303
            assets/CodeMirror/mode/scheme/scheme.js on lines 8..265
            assets/CodeMirror/mode/shell/shell.js on lines 4..152
            assets/CodeMirror/mode/sieve/sieve.js on lines 4..193
            assets/CodeMirror/mode/smalltalk/smalltalk.js on lines 4..168
            assets/CodeMirror/mode/smarty/smarty.js on lines 8..225
            assets/CodeMirror/mode/solr/solr.js on lines 4..104
            assets/CodeMirror/mode/sparql/sparql.js on lines 4..180
            assets/CodeMirror/mode/spreadsheet/spreadsheet.js on lines 4..112
            assets/CodeMirror/mode/sql/sql.js on lines 4..474
            assets/CodeMirror/mode/stex/stex.js on lines 9..264
            assets/CodeMirror/mode/stylus/stylus.js on lines 6..771
            assets/CodeMirror/mode/tcl/tcl.js on lines 6..139
            assets/CodeMirror/mode/tiddlywiki/tiddlywiki.js on lines 20..308
            assets/CodeMirror/mode/tiki/tiki.js on lines 4..312
            assets/CodeMirror/mode/toml/toml.js on lines 4..88
            assets/CodeMirror/mode/ttcn-cfg/ttcn-cfg.js on lines 4..214
            assets/CodeMirror/mode/ttcn/ttcn.js on lines 4..283
            assets/CodeMirror/mode/turtle/turtle.js on lines 4..162
            assets/CodeMirror/mode/vb/vb.js on lines 4..275
            assets/CodeMirror/mode/vbscript/vbscript.js on lines 15..350
            assets/CodeMirror/mode/velocity/velocity.js on lines 4..201
            assets/CodeMirror/mode/verilog/verilog.js on lines 4..676
            assets/CodeMirror/mode/vhdl/vhdl.js on lines 5..189
            assets/CodeMirror/mode/webidl/webidl.js on lines 4..195
            assets/CodeMirror/mode/xml/xml.js on lines 4..413
            assets/CodeMirror/mode/xquery/xquery.js on lines 4..448
            assets/CodeMirror/mode/yacas/yacas.js on lines 7..204
            assets/CodeMirror/mode/yaml/yaml.js on lines 4..120
            assets/CodeMirror/mode/z80/z80.js on lines 4..116

            Identical blocks of code found in 3 locations. Consider refactoring.
            Open

            if (token.end > cur.ch) {
            token.end = cur.ch;
            token.string = token.string.slice(0, cur.ch - token.start);
            }
            Severity: Major
            Found in assets/CodeMirror/addon/hint/xml-hint.js and 2 other locations - About 1 hr to fix
            assets/CodeMirror/addon/hint/javascript-hint.js on lines 43..46
            assets/CodeMirror/addon/hint/sql-hint.js on lines 262..265

            There are no issues that match your filters.

            Category
            Status