code: function prepareData() {
              updateModifiedOn.call(this);
              convertGeoPoints.call(this);
  
              return this.entityData;
  
              //--------------------------
  
              /**
               * If the schema has a "modifiedOn" property we automatically
               * update its value to the current dateTime
              */
              function updateModifiedOn() {
                  if ({}.hasOwnProperty.call(this.schema.paths, 'modifiedOn')) {
                      this.entityData.modifiedOn = new Date();
                  }
              }
  
              /**
               * If the entityData has some property of type 'geoPoint'
               * and its value is an js object with "latitude" and "longitude"
               * we convert it to a datastore GeoPoint.
              */
              function convertGeoPoints() {
                  if (!{}.hasOwnProperty.call(this.schema.__meta, 'geoPointsProps')) {
                      return;
                  }
  
                  this.schema.__meta.geoPointsProps.forEach((property) => {
                      if ({}.hasOwnProperty.call(_this.entityData, property)
                          && _this.entityData[property] !== null
                          && _this.entityData[property].constructor.name !== 'GeoPoint') {
                          _this.entityData[property] = _this.gstore.ds.geoPoint(_this.entityData[property]);
                      }
                  });
              }
          }
docs: Process some basic formatting to the entity data before save
  - automatically set the modifiedOn property to current date (if exists on schema)
  - convert object with latitude/longitude to Datastore GeoPoint