Make ion-picker scroll both ways

I am using the ion-picker component in my software platform.
However you can only seem to scroll 1 way and not the other way. My picker is for time so if I want to select the 55th minuet in an hour I/users have to scroll all the way through instead of just scrolling the shortest way.

Is this possible? See my current implementation below:

  async presentPicker(field = '', isFlightTime = false, flightTimeType = '') {
    const hhmm = (this.usrPref.userPrefs.timeUnitHHMM).toString();


    const hourNormal = {
      name: 'hour',
      options: [
        {text: '00', value: '00'},
        {text: '01', value: '01'},
        {text: '02', value: '02'},
        {text: '03', value: '03'},
        {text: '04', value: '04'},
        {text: '05', value: '05'},
        {text: '06', value: '06'},
        {text: '07', value: '07'},
        {text: '08', value: '08'},
        {text: '09', value: '09'},
        {text: '10', value: '10'},
        {text: '11', value: '11'},
        {text: '12', value: '12'},
        {text: '13', value: '13'},
        {text: '14', value: '14'},
        {text: '15', value: '15'},
        {text: '16', value: '16'},
        {text: '17', value: '17'},
        {text: '18', value: '18'},
        {text: '19', value: '19'},
        {text: '20', value: '20'},
        {text: '21', value: '21'},
        {text: '22', value: '22'},
        {text: '23', value: '23'},
      ]
    };

    const hourDecimal = {
      name: 'hour',
      options: [
        {text: '0', value: '0'},
        {text: '1', value: '1'},
        {text: '2', value: '2'},
        {text: '3', value: '3'},
        {text: '4', value: '4'},
        {text: '5', value: '5'},
        {text: '6', value: '6'},
        {text: '7', value: '7'},
        {text: '8', value: '8'},
        {text: '9', value: '9'},
        {text: '10', value: '10'},
        {text: '11', value: '11'},
        {text: '12', value: '12'},
        {text: '13', value: '13'},
        {text: '14', value: '14'},
        {text: '15', value: '15'},
        {text: '16', value: '16'},
        {text: '17', value: '17'},
        {text: '18', value: '18'},
        {text: '19', value: '19'},
        {text: '20', value: '20'},
        {text: '21', value: '21'},
        {text: '22', value: '22'},
        {text: '23', value: '23'},
      ]
    };

    const minNormal =
      {
        name: 'min',
        options: [
          {text: '00', value: '00'},
          {text: '01', value: '01'},
          {text: '02', value: '02'},
          {text: '03', value: '03'},
          {text: '04', value: '04'},
          {text: '05', value: '05'},
          {text: '06', value: '06'},
          {text: '07', value: '07'},
          {text: '08', value: '08'},
          {text: '09', value: '09'},
          {text: '10', value: '10'},
          {text: '11', value: '11'},
          {text: '12', value: '12'},
          {text: '13', value: '13'},
          {text: '14', value: '14'},
          {text: '15', value: '15'},
          {text: '16', value: '16'},
          {text: '17', value: '17'},
          {text: '18', value: '18'},
          {text: '19', value: '19'},
          {text: '20', value: '20'},
          {text: '21', value: '21'},
          {text: '22', value: '22'},
          {text: '23', value: '23'},
          {text: '24', value: '24'},
          {text: '25', value: '25'},
          {text: '26', value: '26'},
          {text: '27', value: '27'},
          {text: '28', value: '28'},
          {text: '29', value: '29'},
          {text: '30', value: '30'},
          {text: '31', value: '31'},
          {text: '32', value: '32'},
          {text: '33', value: '33'},
          {text: '34', value: '34'},
          {text: '35', value: '35'},
          {text: '36', value: '36'},
          {text: '37', value: '37'},
          {text: '38', value: '38'},
          {text: '39', value: '39'},
          {text: '40', value: '40'},
          {text: '41', value: '41'},
          {text: '42', value: '42'},
          {text: '43', value: '43'},
          {text: '44', value: '44'},
          {text: '45', value: '45'},
          {text: '46', value: '46'},
          {text: '47', value: '47'},
          {text: '48', value: '48'},
          {text: '49', value: '49'},
          {text: '50', value: '50'},
          {text: '51', value: '51'},
          {text: '52', value: '52'},
          {text: '53', value: '53'},
          {text: '54', value: '54'},
          {text: '55', value: '55'},
          {text: '56', value: '56'},
          {text: '57', value: '57'},
          {text: '58', value: '58'},
          {text: '59', value: '59'},

        ]
      };

    const minDec = {
      name: 'min',
      options: [
        {text: '0', value: '0'},
        {text: '1', value: '1'},
        {text: '2', value: '2'},
        {text: '3', value: '3'},
        {text: '4', value: '4'},
        {text: '5', value: '5'},
        {text: '6', value: '6'},
        {text: '7', value: '7'},
        {text: '8', value: '8'},
        {text: '9', value: '9'},
      ]
    };

    let hour;
    let min;

    if (hhmm == '1' || isFlightTime) {
      hour = hourNormal;
      min = minNormal;
    } else {
      hour = hourDecimal;
      min = minDec;
    }

    const picker = await this.pickerController.create({
      mode: "md",
      buttons: [
        {
          text: 'Confirm',
          handler: (selected) => {
            if (field) {
              if (hhmm == '1' || isFlightTime) {
                if (isFlightTime) {
                  switch (flightTimeType) {
                    case 'depTime':
                      this.contextDepTime = selected.hour.value + ':' + selected.min.value;
                      break
                    case 'arrTime':
                      this.contextArrTime = selected.hour.value + ':' + selected.min.value;
                      break
                    case 'depDutyTime':
                      this.contextDepDutyTime = selected.hour.value + ':' + selected.min.value;
                      break
                    case 'arrDutyTime':
                      this.contextArrDutyTime = selected.hour.value + ':' + selected.min.value;
                      break
                  }
                } else {
                  this.flightData[field] = selected.hour.value + ':' + selected.min.value;
                }
              } else {
                this.flightData[field] = this.conversion.decToHM(parseFloat(selected.hour.value + '.' + selected.min.value));
              }
            }
          },
        }
      ],
      columns: [hour, min]
    });
    await picker.present();
  }