WordPress/WordPress

View on GitHub
wp-includes/js/clipboard.js

Summary

Maintainability
F
1 mo
Test Coverage

Function 686 has 213 lines of code (exceeds 25 allowed). Consider refactoring.
Open

/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXPORTS
Severity: Major
Found in wp-includes/js/clipboard.js - About 1 day to fix

    File clipboard.js has 427 lines of code (exceeds 250 allowed). Consider refactoring.
    Open

    /*!
     * clipboard.js v2.0.11
     * https://clipboardjs.com/
     *
     * Licensed MIT © Zeno Rocha
    Severity: Minor
    Found in wp-includes/js/clipboard.js - About 6 hrs to fix

      Function Clipboard has 99 lines of code (exceeds 25 allowed). Consider refactoring.
      Open

      var Clipboard = /*#__PURE__*/function (_Emitter) {
        _inherits(Clipboard, _Emitter);
      
        var _super = _createSuper(Clipboard);
      
      
      Severity: Major
      Found in wp-includes/js/clipboard.js - About 3 hrs to fix

        Function 370 has 49 lines of code (exceeds 25 allowed). Consider refactoring.
        Open

        /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
        
        var is = __webpack_require__(879);
        var delegate = __webpack_require__(438);
        
        
        Severity: Minor
        Found in wp-includes/js/clipboard.js - About 1 hr to fix

          Function 279 has 48 lines of code (exceeds 25 allowed). Consider refactoring.
          Open

          /***/ (function(module) {
          
          function E () {
            // Keep this empty so it's easier to inherit from
            // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)
          Severity: Minor
          Found in wp-includes/js/clipboard.js - About 1 hr to fix

            Function 438 has 33 lines of code (exceeds 25 allowed). Consider refactoring.
            Open

            /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
            
            var closest = __webpack_require__(828);
            
            /**
            Severity: Minor
            Found in wp-includes/js/clipboard.js - About 1 hr to fix

              Function 817 has 32 lines of code (exceeds 25 allowed). Consider refactoring.
              Open

              /***/ (function(module) {
              
              function select(element) {
                  var selectedText;
              
              
              Severity: Minor
              Found in wp-includes/js/clipboard.js - About 1 hr to fix

                Function ClipboardActionDefault has 31 lines of code (exceeds 25 allowed). Consider refactoring.
                Open

                var ClipboardActionDefault = function ClipboardActionDefault() {
                  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
                  // Defines base properties passed from constructor.
                  var _options$action = options.action,
                      action = _options$action === void 0 ? 'copy' : _options$action,
                Severity: Minor
                Found in wp-includes/js/clipboard.js - About 1 hr to fix

                  Function select has 29 lines of code (exceeds 25 allowed). Consider refactoring.
                  Open

                  function select(element) {
                      var selectedText;
                  
                      if (element.nodeName === 'SELECT') {
                          element.focus();
                  Severity: Minor
                  Found in wp-includes/js/clipboard.js - About 1 hr to fix

                    Consider simplifying this complex logical expression.
                    Open

                    if (typeof Element !== 'undefined' && !Element.prototype.matches) {
                        var proto = Element.prototype;
                    
                        proto.matches = proto.matchesSelector ||
                                        proto.mozMatchesSelector ||
                    Severity: Major
                    Found in wp-includes/js/clipboard.js - About 40 mins to fix

                      Function delegate has 5 arguments (exceeds 4 allowed). Consider refactoring.
                      Open

                      function delegate(elements, selector, type, callback, useCapture) {
                      Severity: Minor
                      Found in wp-includes/js/clipboard.js - About 35 mins to fix

                        Function _delegate has 5 arguments (exceeds 4 allowed). Consider refactoring.
                        Open

                        function _delegate(element, selector, type, callback, useCapture) {
                        Severity: Minor
                        Found in wp-includes/js/clipboard.js - About 35 mins to fix

                          Avoid too many return statements within this function.
                          Open

                          function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
                          Severity: Major
                          Found in wp-includes/js/clipboard.js - About 30 mins to fix

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

                            (function webpackUniversalModuleDefinition(root, factory) {
                                if(typeof exports === 'object' && typeof module === 'object')
                                    module.exports = factory();
                                else if(typeof define === 'function' && define.amd)
                                    define([], factory);
                            Severity: Major
                            Found in wp-includes/js/clipboard.js and 1 other location - About 1 mo to fix
                            wp-includes/js/dist/compose.js on lines 196..1074

                            Duplicated Code

                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                            Tuning

                            This issue has a mass of 5772.

                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                            Refactorings

                            Further Reading

                            There are no issues that match your filters.

                            Category
                            Status