message: Fixed msn calculation in deltamanager
diff: @@ -45,9 +45,6 @@ export class DeltaManager extends EventEmitter implements IDeltaManager {
  private updateHasBeenRequested = false;
  private updateSequenceNumberTimer: any;
  - // Flag indicating whether the client has only received messages
  - private readonly = true;
  -
  // The minimum sequence number and last sequence number received from the server
  private minSequenceNumber = 0;
  @@ -164,7 +161,6 @@ export class DeltaManager extends EventEmitter implements IDeltaManager {
  type,
  };
  - this.readonly = false;
  this.stopSequenceNumberUpdate();
  this._outbound.push(message);
  }
  @@ -181,7 +177,6 @@ export class DeltaManager extends EventEmitter implements IDeltaManager {
  type,
  };
  - this.readonly = false;
  this._outbound.push(message);
  }
  @@ -376,7 +371,7 @@ export class DeltaManager extends EventEmitter implements IDeltaManager {
  // allows the server to know our true reference sequence number and be able to correctly update the minimum
  // sequence number (MSN). We don't ackowledge other message types similarly (like a min sequence number update)
  // to avoid ackowledgement cycles (i.e. ack the MSN update, which updates the MSN, then ack the update, etc...).
  - if (message.type === protocol.OperationType) {
  + if (message.type === protocol.ObjectOperation) {
  this.updateSequenceNumber();
  }
  @@ -439,11 +434,6 @@ export class DeltaManager extends EventEmitter implements IDeltaManager {
  * Acks the server to update the reference sequence number
  */
  private updateSequenceNumber() {
  - // Exit early for readonly clients. They don't take part in the minimum sequence number calculation.
  - if (this.readonly) {
  - return;
  - }
  -
  // The server maintains a time based window for the min sequence number. As such we want to periodically
  // send a heartbeat to get the latest sequence number once the window has moved past where we currently are.
  if (this.heartbeatTimer) {
  