index.js
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.