@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.mjs CHANGED
@@ -222,6 +222,9 @@ var DateTimeUtils = class {
222
222
  * @returns
223
223
  */
224
224
  static timestampToString(time) {
225
+ if (isNaN(time)) {
226
+ return "";
227
+ }
225
228
  const date = new Date(time * 1e3);
226
229
  if (time < 86400) {
227
230
  return date.toISOString().slice(11, 19);
@@ -469,6 +472,9 @@ var ResultFormatter = class {
469
472
  });
470
473
  }
471
474
  static eta(decodeResult, time) {
475
+ if (isNaN(time)) {
476
+ return;
477
+ }
472
478
  decodeResult.raw.eta_time = time;
473
479
  decodeResult.formatted.items.push({
474
480
  type: "time",
@@ -580,6 +586,9 @@ var ResultFormatter = class {
580
586
  });
581
587
  }
582
588
  static groundspeed(decodeResult, value) {
589
+ if (isNaN(value)) {
590
+ return;
591
+ }
583
592
  decodeResult.raw.groundspeed = value;
584
593
  decodeResult.formatted.items.push({
585
594
  type: "aircraft_groundspeed",
@@ -589,6 +598,9 @@ var ResultFormatter = class {
589
598
  });
590
599
  }
591
600
  static airspeed(decodeResult, value) {
601
+ if (isNaN(value)) {
602
+ return;
603
+ }
592
604
  decodeResult.raw.airspeed = value;
593
605
  decodeResult.formatted.items.push({
594
606
  type: "airspeed",
@@ -598,6 +610,9 @@ var ResultFormatter = class {
598
610
  });
599
611
  }
600
612
  static mach(decodeResult, value) {
613
+ if (isNaN(value)) {
614
+ return;
615
+ }
601
616
  decodeResult.raw.mach = value;
602
617
  decodeResult.formatted.items.push({
603
618
  type: "mach",
@@ -635,6 +650,9 @@ var ResultFormatter = class {
635
650
  });
636
651
  }
637
652
  static heading(decodeResult, value) {
653
+ if (isNaN(value)) {
654
+ return;
655
+ }
638
656
  decodeResult.raw.heading = value;
639
657
  decodeResult.formatted.items.push({
640
658
  type: "heading",
@@ -653,6 +671,9 @@ var ResultFormatter = class {
653
671
  });
654
672
  }
655
673
  static out(decodeResult, time) {
674
+ if (isNaN(time)) {
675
+ return;
676
+ }
656
677
  decodeResult.raw.out_time = time;
657
678
  decodeResult.formatted.items.push({
658
679
  type: "time",
@@ -662,6 +683,9 @@ var ResultFormatter = class {
662
683
  });
663
684
  }
664
685
  static off(decodeResult, time) {
686
+ if (isNaN(time)) {
687
+ return;
688
+ }
665
689
  decodeResult.raw.off_time = time;
666
690
  decodeResult.formatted.items.push({
667
691
  type: "time",
@@ -671,6 +695,9 @@ var ResultFormatter = class {
671
695
  });
672
696
  }
673
697
  static on(decodeResult, time) {
698
+ if (isNaN(time)) {
699
+ return;
700
+ }
674
701
  decodeResult.raw.on_time = time;
675
702
  decodeResult.formatted.items.push({
676
703
  type: "time",
@@ -680,6 +707,9 @@ var ResultFormatter = class {
680
707
  });
681
708
  }
682
709
  static in(decodeResult, time) {
710
+ if (isNaN(time)) {
711
+ return;
712
+ }
683
713
  decodeResult.raw.in_time = time;
684
714
  decodeResult.formatted.items.push({
685
715
  type: "time",
@@ -689,6 +719,9 @@ var ResultFormatter = class {
689
719
  });
690
720
  }
691
721
  static engineStart(decodeResult, time) {
722
+ if (isNaN(time)) {
723
+ return;
724
+ }
692
725
  decodeResult.raw.engine_start_time = time;
693
726
  decodeResult.formatted.items.push({
694
727
  type: "time",
@@ -698,6 +731,9 @@ var ResultFormatter = class {
698
731
  });
699
732
  }
700
733
  static engineStop(decodeResult, time) {
734
+ if (isNaN(time)) {
735
+ return;
736
+ }
701
737
  decodeResult.raw.engine_stop_time = time;
702
738
  decodeResult.formatted.items.push({
703
739
  type: "time",
@@ -707,6 +743,9 @@ var ResultFormatter = class {
707
743
  });
708
744
  }
709
745
  static day(decodeResult, day) {
746
+ if (isNaN(day)) {
747
+ return;
748
+ }
710
749
  decodeResult.raw.day = day;
711
750
  decodeResult.formatted.items.push({
712
751
  type: "day",
@@ -716,6 +755,9 @@ var ResultFormatter = class {
716
755
  });
717
756
  }
718
757
  static month(decodeResult, month) {
758
+ if (isNaN(month)) {
759
+ return;
760
+ }
719
761
  decodeResult.raw.month = month;
720
762
  decodeResult.formatted.items.push({
721
763
  type: "month",
@@ -725,6 +767,9 @@ var ResultFormatter = class {
725
767
  });
726
768
  }
727
769
  static departureDay(decodeResult, day) {
770
+ if (isNaN(day)) {
771
+ return;
772
+ }
728
773
  decodeResult.raw.departure_day = day;
729
774
  decodeResult.formatted.items.push({
730
775
  type: "day",
@@ -734,6 +779,9 @@ var ResultFormatter = class {
734
779
  });
735
780
  }
736
781
  static arrivalDay(decodeResult, day) {
782
+ if (isNaN(day)) {
783
+ return;
784
+ }
737
785
  decodeResult.raw.arrival_day = day;
738
786
  decodeResult.formatted.items.push({
739
787
  type: "day",
@@ -897,6 +945,9 @@ var ResultFormatter = class {
897
945
  });
898
946
  }
899
947
  static timestamp(decodeResult, value) {
948
+ if (isNaN(value)) {
949
+ return;
950
+ }
900
951
  decodeResult.raw.message_timestamp = value;
901
952
  decodeResult.formatted.items.push({
902
953
  type: "time",
@@ -4027,8 +4078,13 @@ var Label_4A_DIS = class extends DecoderPlugin {
4027
4078
  }
4028
4079
  decode(message, options = {}) {
4029
4080
  const decodeResult = this.initResult(message, "Latest New Format");
4030
- decodeResult.decoded = true;
4031
4081
  const fields = message.text.split(",");
4082
+ if (fields.length < 3 || !fields[1] || fields[1].length < 3 || !fields[2]) {
4083
+ decodeResult.decoded = false;
4084
+ this.setDecodeLevel(decodeResult, decodeResult.decoded);
4085
+ return decodeResult;
4086
+ }
4087
+ decodeResult.decoded = true;
4032
4088
  ResultFormatter.timestamp(
4033
4089
  decodeResult,
4034
4090
  DateTimeUtils.convertHHMMSSToTod(fields[1].substring(2) + "00")
@@ -6654,13 +6710,11 @@ var Label_QQ = class extends DecoderPlugin {
6654
6710
  };
6655
6711
  ResultFormatter.unknown(decodeResult, message.text.substring(42, 45));
6656
6712
  ResultFormatter.position(decodeResult, pos);
6657
- if (decodeResult.remaining.text !== "---") {
6658
- ResultFormatter.groundspeed(
6659
- decodeResult,
6660
- Number(message.text.substring(45, 48))
6661
- );
6713
+ const gsField = message.text.substring(45, 48);
6714
+ if (decodeResult.remaining.text !== "---" && gsField !== "---") {
6715
+ ResultFormatter.groundspeed(decodeResult, Number(gsField));
6662
6716
  } else {
6663
- ResultFormatter.unknown(decodeResult, message.text.substring(45, 48));
6717
+ ResultFormatter.unknown(decodeResult, gsField);
6664
6718
  }
6665
6719
  ResultFormatter.unknown(decodeResult, message.text.substring(48));
6666
6720
  } else {