@airframes/acars-decoder 1.9.1 → 1.9.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -259,6 +259,9 @@ var DateTimeUtils = class {
259
259
  * @returns
260
260
  */
261
261
  static timestampToString(time) {
262
+ if (isNaN(time)) {
263
+ return "";
264
+ }
262
265
  const date = new Date(time * 1e3);
263
266
  if (time < 86400) {
264
267
  return date.toISOString().slice(11, 19);
@@ -506,6 +509,9 @@ var ResultFormatter = class {
506
509
  });
507
510
  }
508
511
  static eta(decodeResult, time) {
512
+ if (isNaN(time)) {
513
+ return;
514
+ }
509
515
  decodeResult.raw.eta_time = time;
510
516
  decodeResult.formatted.items.push({
511
517
  type: "time",
@@ -617,6 +623,9 @@ var ResultFormatter = class {
617
623
  });
618
624
  }
619
625
  static groundspeed(decodeResult, value) {
626
+ if (isNaN(value)) {
627
+ return;
628
+ }
620
629
  decodeResult.raw.groundspeed = value;
621
630
  decodeResult.formatted.items.push({
622
631
  type: "aircraft_groundspeed",
@@ -626,6 +635,9 @@ var ResultFormatter = class {
626
635
  });
627
636
  }
628
637
  static airspeed(decodeResult, value) {
638
+ if (isNaN(value)) {
639
+ return;
640
+ }
629
641
  decodeResult.raw.airspeed = value;
630
642
  decodeResult.formatted.items.push({
631
643
  type: "airspeed",
@@ -635,6 +647,9 @@ var ResultFormatter = class {
635
647
  });
636
648
  }
637
649
  static mach(decodeResult, value) {
650
+ if (isNaN(value)) {
651
+ return;
652
+ }
638
653
  decodeResult.raw.mach = value;
639
654
  decodeResult.formatted.items.push({
640
655
  type: "mach",
@@ -672,6 +687,9 @@ var ResultFormatter = class {
672
687
  });
673
688
  }
674
689
  static heading(decodeResult, value) {
690
+ if (isNaN(value)) {
691
+ return;
692
+ }
675
693
  decodeResult.raw.heading = value;
676
694
  decodeResult.formatted.items.push({
677
695
  type: "heading",
@@ -690,6 +708,9 @@ var ResultFormatter = class {
690
708
  });
691
709
  }
692
710
  static out(decodeResult, time) {
711
+ if (isNaN(time)) {
712
+ return;
713
+ }
693
714
  decodeResult.raw.out_time = time;
694
715
  decodeResult.formatted.items.push({
695
716
  type: "time",
@@ -699,6 +720,9 @@ var ResultFormatter = class {
699
720
  });
700
721
  }
701
722
  static off(decodeResult, time) {
723
+ if (isNaN(time)) {
724
+ return;
725
+ }
702
726
  decodeResult.raw.off_time = time;
703
727
  decodeResult.formatted.items.push({
704
728
  type: "time",
@@ -708,6 +732,9 @@ var ResultFormatter = class {
708
732
  });
709
733
  }
710
734
  static on(decodeResult, time) {
735
+ if (isNaN(time)) {
736
+ return;
737
+ }
711
738
  decodeResult.raw.on_time = time;
712
739
  decodeResult.formatted.items.push({
713
740
  type: "time",
@@ -717,6 +744,9 @@ var ResultFormatter = class {
717
744
  });
718
745
  }
719
746
  static in(decodeResult, time) {
747
+ if (isNaN(time)) {
748
+ return;
749
+ }
720
750
  decodeResult.raw.in_time = time;
721
751
  decodeResult.formatted.items.push({
722
752
  type: "time",
@@ -726,6 +756,9 @@ var ResultFormatter = class {
726
756
  });
727
757
  }
728
758
  static engineStart(decodeResult, time) {
759
+ if (isNaN(time)) {
760
+ return;
761
+ }
729
762
  decodeResult.raw.engine_start_time = time;
730
763
  decodeResult.formatted.items.push({
731
764
  type: "time",
@@ -735,6 +768,9 @@ var ResultFormatter = class {
735
768
  });
736
769
  }
737
770
  static engineStop(decodeResult, time) {
771
+ if (isNaN(time)) {
772
+ return;
773
+ }
738
774
  decodeResult.raw.engine_stop_time = time;
739
775
  decodeResult.formatted.items.push({
740
776
  type: "time",
@@ -744,6 +780,9 @@ var ResultFormatter = class {
744
780
  });
745
781
  }
746
782
  static day(decodeResult, day) {
783
+ if (isNaN(day)) {
784
+ return;
785
+ }
747
786
  decodeResult.raw.day = day;
748
787
  decodeResult.formatted.items.push({
749
788
  type: "day",
@@ -753,6 +792,9 @@ var ResultFormatter = class {
753
792
  });
754
793
  }
755
794
  static month(decodeResult, month) {
795
+ if (isNaN(month)) {
796
+ return;
797
+ }
756
798
  decodeResult.raw.month = month;
757
799
  decodeResult.formatted.items.push({
758
800
  type: "month",
@@ -762,6 +804,9 @@ var ResultFormatter = class {
762
804
  });
763
805
  }
764
806
  static departureDay(decodeResult, day) {
807
+ if (isNaN(day)) {
808
+ return;
809
+ }
765
810
  decodeResult.raw.departure_day = day;
766
811
  decodeResult.formatted.items.push({
767
812
  type: "day",
@@ -771,6 +816,9 @@ var ResultFormatter = class {
771
816
  });
772
817
  }
773
818
  static arrivalDay(decodeResult, day) {
819
+ if (isNaN(day)) {
820
+ return;
821
+ }
774
822
  decodeResult.raw.arrival_day = day;
775
823
  decodeResult.formatted.items.push({
776
824
  type: "day",
@@ -934,6 +982,9 @@ var ResultFormatter = class {
934
982
  });
935
983
  }
936
984
  static timestamp(decodeResult, value) {
985
+ if (isNaN(value)) {
986
+ return;
987
+ }
937
988
  decodeResult.raw.message_timestamp = value;
938
989
  decodeResult.formatted.items.push({
939
990
  type: "time",
@@ -4064,8 +4115,13 @@ var Label_4A_DIS = class extends DecoderPlugin {
4064
4115
  }
4065
4116
  decode(message, options = {}) {
4066
4117
  const decodeResult = this.initResult(message, "Latest New Format");
4067
- decodeResult.decoded = true;
4068
4118
  const fields = message.text.split(",");
4119
+ if (fields.length < 3 || !fields[1] || fields[1].length < 3 || !fields[2]) {
4120
+ decodeResult.decoded = false;
4121
+ this.setDecodeLevel(decodeResult, decodeResult.decoded);
4122
+ return decodeResult;
4123
+ }
4124
+ decodeResult.decoded = true;
4069
4125
  ResultFormatter.timestamp(
4070
4126
  decodeResult,
4071
4127
  DateTimeUtils.convertHHMMSSToTod(fields[1].substring(2) + "00")
@@ -6691,13 +6747,11 @@ var Label_QQ = class extends DecoderPlugin {
6691
6747
  };
6692
6748
  ResultFormatter.unknown(decodeResult, message.text.substring(42, 45));
6693
6749
  ResultFormatter.position(decodeResult, pos);
6694
- if (decodeResult.remaining.text !== "---") {
6695
- ResultFormatter.groundspeed(
6696
- decodeResult,
6697
- Number(message.text.substring(45, 48))
6698
- );
6750
+ const gsField = message.text.substring(45, 48);
6751
+ if (decodeResult.remaining.text !== "---" && gsField !== "---") {
6752
+ ResultFormatter.groundspeed(decodeResult, Number(gsField));
6699
6753
  } else {
6700
- ResultFormatter.unknown(decodeResult, message.text.substring(45, 48));
6754
+ ResultFormatter.unknown(decodeResult, gsField);
6701
6755
  }
6702
6756
  ResultFormatter.unknown(decodeResult, message.text.substring(48));
6703
6757
  } else {