function sanitizeRecord()

in source/functions/preprocess-function/index.js [497:520]


function sanitizeRecord(record, providerConfig) {
  var filtered = _.pickBy(record, function (value,key) { 
      if(!_.isPlainObject(value)) {
          return value !== '' && value !== null && value !== undefined
        } else if(_.isEmpty(value)) {
          return false;
        } else {
          var preSanitized = sanitizeRecord(value, providerConfig);
          return !_.isEmpty(preSanitized); 
        }
  });
  return _.cloneDeepWith(filtered, function (v,k) { 
    //return v !== filtered && _.isPlainObject(v) ? sanitizeRecord(v, providerConfig) : undefined; 
    if(v !== filtered && _.isPlainObject(v)) {
      if(providerConfig.mapping[k]!=null && providerConfig.mapping[k].type=='AWSJSON') {
        return JSON.stringify(v);
      } else {
        return sanitizeRecord(v, providerConfig);
      }
    } else {
      return undefined;
    }
  });
};