Updated Drupal to 8.6. This goes with the following updates because it's possible...
[yaffs-website] / web / core / misc / states.js
index 4fd2052a4398ac58a46b241a1a484686285bfe70..7b451b07dec9c55526461602ac7860ae7738dee0 100644 (file)
 
   Drupal.states = states;
 
+  function invert(a, invertState) {
+    return invertState && typeof a !== 'undefined' ? !a : a;
+  }
+
+  function _compare2(a, b) {
+    if (a === b) {
+      return typeof a === 'undefined' ? a : true;
+    }
+
+    return typeof a === 'undefined' || typeof b === 'undefined';
+  }
+
+  function ternary(a, b) {
+    if (typeof a === 'undefined') {
+      return b;
+    }
+    if (typeof b === 'undefined') {
+      return a;
+    }
+
+    return a && b;
+  }
+
   Drupal.behaviors.states = {
     attach: function attach(context, settings) {
       var $states = $(context).find('[data-drupal-states]');
 
   states.Dependent.prototype = {
     initializeDependee: function initializeDependee(selector, dependeeStates) {
-      var state = void 0;
-      var self = this;
-
-      function stateEventHandler(e) {
-        self.update(e.data.selector, e.data.state, e.value);
-      }
+      var _this2 = this;
 
       this.values[selector] = {};
 
-      for (var i in dependeeStates) {
-        if (dependeeStates.hasOwnProperty(i)) {
-          state = dependeeStates[i];
+      Object.keys(dependeeStates).forEach(function (i) {
+        var state = dependeeStates[i];
 
-          if ($.inArray(state, dependeeStates) === -1) {
-            continue;
-          }
+        if ($.inArray(state, dependeeStates) === -1) {
+          return;
+        }
 
-          state = states.State.sanitize(state);
+        state = states.State.sanitize(state);
 
-          this.values[selector][state.name] = null;
+        _this2.values[selector][state.name] = null;
 
-          $(selector).on('state:' + state, { selector: selector, state: state }, stateEventHandler);
+        $(selector).on('state:' + state, { selector: selector, state: state }, function (e) {
+          _this2.update(e.data.selector, e.data.state, e.value);
+        });
 
-          new states.Trigger({ selector: selector, state: state });
-        }
-      }
+        new states.Trigger({ selector: selector, state: state });
+      });
     },
     compare: function compare(reference, selector, state) {
       var value = this.values[selector][state.name];
 
         value = invert(value, this.state.invert);
 
-        this.element.trigger({ type: 'state:' + this.state, value: value, trigger: true });
+        this.element.trigger({
+          type: 'state:' + this.state,
+          value: value,
+          trigger: true
+        });
       }
     },
     verifyConstraints: function verifyConstraints(constraints, selector) {
 
   states.Trigger.prototype = {
     initialize: function initialize() {
-      var _this2 = this;
+      var _this3 = this;
 
       var trigger = states.Trigger.states[this.state];
 
         trigger.call(window, this.element);
       } else {
         Object.keys(trigger || {}).forEach(function (event) {
-          _this2.defaultTrigger(event, trigger[event]);
+          _this3.defaultTrigger(event, trigger[event]);
         });
       }
 
         var value = valueFn.call(this.element, e);
 
         if (oldValue !== value) {
-          this.element.trigger({ type: 'state:' + this.state, value: value, oldValue: oldValue });
+          this.element.trigger({
+            type: 'state:' + this.state,
+            value: value,
+            oldValue: oldValue
+          });
           oldValue = value;
         }
       }, this));
 
       states.postponed.push($.proxy(function () {
-        this.element.trigger({ type: 'state:' + this.state, value: oldValue, oldValue: null });
+        this.element.trigger({
+          type: 'state:' + this.state,
+          value: oldValue,
+          oldValue: null
+        });
       }, this));
     }
   };
       }
     }
   });
-
-  function ternary(a, b) {
-    if (typeof a === 'undefined') {
-      return b;
-    } else if (typeof b === 'undefined') {
-      return a;
-    }
-
-    return a && b;
-  }
-
-  function invert(a, invertState) {
-    return invertState && typeof a !== 'undefined' ? !a : a;
-  }
-
-  function _compare2(a, b) {
-    if (a === b) {
-      return typeof a === 'undefined' ? a : true;
-    }
-
-    return typeof a === 'undefined' || typeof b === 'undefined';
-  }
 })(jQuery, Drupal);
\ No newline at end of file