function (tracker, propList) {
  var trackingData = tracker[trackingKeyName];
  propList.forEach(function (name) {
    Object.defineProperty(tracker, name, {
      enumerable: true,
      configurable: true,
      get: function () {
        return trackingData.object[name];
      },
      set: function (x) {
        trackingData.actions.push({
          key: name,
          set: x,
        });
        trackingData.object[name] = x;
      },
    });
  });
}
function (tracker, propList) {
  var trackingData = tracker[trackingKeyName];
  propList.forEach(function (name) {
    Object.defineProperty(tracker, name, {
      enumerable: true,
      configurable: true,
      get: function () {
        return trackingData.object[name];
      },
      set: function (x) {
        trackingData.actions.push({
          key: name,
          set: x,
        });
        trackingData.object[name] = x;
      },
    });
  });
}
function ( tracker , propList ) { var trackingData = tracker [ trackingKeyName ] ; propList . forEach ( function ( name ) { Object . defineProperty ( tracker , name , { enumerable : true , configurable : true , get : function ( ) { return trackingData . object [ name ] ; } , set : function ( x ) { trackingData . actions . push ( { key : name , set : x , } ) ; trackingData . object [ name ] = x ; } , } ) ; } ) ; }
Add assignable properties for tracking.
Add assignable properties for tracking .