_numbersInput(evt) {
      const char = evt.key;
      const bufferStr = this._keyboardBuffer + char;
      const bufferNum = parseInt(bufferStr);
      const entity = this._entities[this._activeIndex];
      let activeClock = this._clockComponent(this._activeIndex);
      if (!entity || !entity.attributes) {
        return;
      }
      if (bufferNum > entity.attributes.max) {
        // value accumulated in the buffer (old entry + new entry) is greater than the clock maximum value,
        // so assign old entry to the current clock and then switch to the next clock, and add new entry as an old value
        activeClock && activeClock._setSelectedValue(parseInt(this._keyboardBuffer));
        this._switchNextClock();
        this._keyboardBuffer = char;
        activeClock = this._clockComponent(this._activeIndex);
        activeClock && activeClock._setSelectedValue(parseInt(char));
        this._resetCooldown(true);
      } else {
        // value is less than clock's max value, so add new entry to the buffer
        this._keyboardBuffer = bufferStr;
        activeClock && activeClock._setSelectedValue(parseInt(this._keyboardBuffer));
        if (this._keyboardBuffer.length === 2 || parseInt(`${this._keyboardBuffer}0`) > entity.attributes.max) {
          // if buffer length is 2, or buffer value + one more (any) number is greater than clock's max value
          // there is no place for more entry - just set buffer as a value, and switch to the next clock
          this._resetCooldown(this._keyboardBuffer.length !== 2);
          this._keyboardBuffer = "";
          this._switchNextClock();
        }
      }
    }
Handles direct numbers entry.

@param {event} evt Event object