jww-parser-mbt 2025.12.3 → 2025.12.6

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
@@ -361,7 +361,6 @@ function $makebytes(a, b) {
361
361
  const moonbitlang$core$builtin$$JSArray$push = (arr, val) => {
362
362
  arr.push(val);
363
363
  };
364
- const moonbitlang$core$builtin$$MyInt64$convert_to_double_u = (a) => (a.hi >>> 0) * 4294967296 + (a.lo >>> 0);
365
364
  const moonbitlang$core$builtin$$try_init_wasm_helper = function() {
366
365
  try {
367
366
  return new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([
@@ -995,58 +994,58 @@ const f4ah6o$jww_parser$core$$default$46$record$47$742 = {
995
994
  protect: 0,
996
995
  name: ""
997
996
  };
998
- const f4ah6o$jww_parser$core$$parse$46$constr$47$1004 = 8;
999
- const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1041 = {
997
+ const f4ah6o$jww_parser$core$$parse$46$constr$47$1012 = 8;
998
+ const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1049 = {
1000
999
  _0: "CONTINUOUS",
1001
1000
  _1: "Solid line",
1002
1001
  _2: ""
1003
1002
  };
1004
- const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1042 = {
1003
+ const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1050 = {
1005
1004
  _0: "DASHED",
1006
1005
  _1: "Dashed",
1007
1006
  _2: ""
1008
1007
  };
1009
- const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1043 = {
1008
+ const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1051 = {
1010
1009
  _0: "DOTTED",
1011
1010
  _1: "Dotted",
1012
1011
  _2: ""
1013
1012
  };
1014
- const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1044 = {
1013
+ const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1052 = {
1015
1014
  _0: "DASHDOT",
1016
1015
  _1: "Dash dot",
1017
1016
  _2: ""
1018
1017
  };
1019
- const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1045 = {
1018
+ const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1053 = {
1020
1019
  _0: "DOT2",
1021
1020
  _1: "Dot (small)",
1022
1021
  _2: ""
1023
1022
  };
1024
- const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1046 = {
1023
+ const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1054 = {
1025
1024
  _0: "DASHDOT2",
1026
1025
  _1: "Dash dot (small)",
1027
1026
  _2: ""
1028
1027
  };
1029
- const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1047 = {
1028
+ const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1055 = {
1030
1029
  _0: "DASHDOTDOT",
1031
1030
  _1: "Dash dot dot",
1032
1031
  _2: ""
1033
1032
  };
1034
- const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1048 = {
1033
+ const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1056 = {
1035
1034
  _0: "DIVIDE",
1036
1035
  _1: "Divide",
1037
1036
  _2: ""
1038
1037
  };
1039
- const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1049 = {
1038
+ const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1057 = {
1040
1039
  _0: "CENTER",
1041
1040
  _1: "Center",
1042
1041
  _2: ""
1043
1042
  };
1044
- const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1050 = {
1043
+ const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1058 = {
1045
1044
  _0: "BORDER",
1046
1045
  _1: "Border",
1047
1046
  _2: ""
1048
1047
  };
1049
- const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1051 = {
1048
+ const f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1059 = {
1050
1049
  _0: "HIDDEN",
1051
1050
  _1: "Hidden",
1052
1051
  _2: ""
@@ -1684,12 +1683,6 @@ function moonbitlang$core$uint64$$UInt64$extend_uint(value) {
1684
1683
  function moonbitlang$core$uint$$UInt$to_uint64(self) {
1685
1684
  return moonbitlang$core$uint64$$UInt64$extend_uint(self);
1686
1685
  }
1687
- function moonbitlang$core$double$$Double$convert_uint64(value) {
1688
- return moonbitlang$core$builtin$$MyInt64$convert_to_double_u(value);
1689
- }
1690
- function moonbitlang$core$uint64$$UInt64$to_double(self) {
1691
- return moonbitlang$core$double$$Double$convert_uint64(self);
1692
- }
1693
1686
  function moonbitlang$core$uint64$$UInt64$to_int(self) {
1694
1687
  return self.lo;
1695
1688
  }
@@ -1892,9 +1885,6 @@ function moonbitlang$core$bytes$$Bytes$makei$25$(length, value) {
1892
1885
  }
1893
1886
  return arr;
1894
1887
  }
1895
- function moonbitlang$core$byte$$Byte$to_uint64(self) {
1896
- return moonbitlang$core$uint$$UInt$to_uint64(self);
1897
- }
1898
1888
  function moonbitlang$core$builtin$$Eq$equal$9$(self, other) {
1899
1889
  if (self.length !== other.length) return false;
1900
1890
  else {
@@ -9596,19 +9586,11 @@ function f4ah6o$jww_parser$core$$Reader$read_dword(self) {
9596
9586
  const b3 = f4ah6o$jww_parser$core$$Reader$read_byte(self);
9597
9587
  return b0 | b1 << 8 | b2 << 16 | b3 << 24;
9598
9588
  }
9599
- function f4ah6o$jww_parser$core$$Reader$read_uint64(self) {
9600
- const b0 = moonbitlang$core$byte$$Byte$to_uint64(f4ah6o$jww_parser$core$$Reader$read_byte(self));
9601
- const b1 = moonbitlang$core$byte$$Byte$to_uint64(f4ah6o$jww_parser$core$$Reader$read_byte(self));
9602
- const b2 = moonbitlang$core$byte$$Byte$to_uint64(f4ah6o$jww_parser$core$$Reader$read_byte(self));
9603
- const b3 = moonbitlang$core$byte$$Byte$to_uint64(f4ah6o$jww_parser$core$$Reader$read_byte(self));
9604
- const b4 = moonbitlang$core$byte$$Byte$to_uint64(f4ah6o$jww_parser$core$$Reader$read_byte(self));
9605
- const b5 = moonbitlang$core$byte$$Byte$to_uint64(f4ah6o$jww_parser$core$$Reader$read_byte(self));
9606
- const b6 = moonbitlang$core$byte$$Byte$to_uint64(f4ah6o$jww_parser$core$$Reader$read_byte(self));
9607
- const b7 = moonbitlang$core$byte$$Byte$to_uint64(f4ah6o$jww_parser$core$$Reader$read_byte(self));
9608
- return moonbitlang$core$builtin$$BitOr$lor$10$(moonbitlang$core$builtin$$BitOr$lor$10$(moonbitlang$core$builtin$$BitOr$lor$10$(moonbitlang$core$builtin$$BitOr$lor$10$(moonbitlang$core$builtin$$BitOr$lor$10$(moonbitlang$core$builtin$$BitOr$lor$10$(moonbitlang$core$builtin$$BitOr$lor$10$(b0, moonbitlang$core$builtin$$Shl$shl$10$(b1, 8)), moonbitlang$core$builtin$$Shl$shl$10$(b2, 16)), moonbitlang$core$builtin$$Shl$shl$10$(b3, 24)), moonbitlang$core$builtin$$Shl$shl$10$(b4, 32)), moonbitlang$core$builtin$$Shl$shl$10$(b5, 40)), moonbitlang$core$builtin$$Shl$shl$10$(b6, 48)), moonbitlang$core$builtin$$Shl$shl$10$(b7, 56));
9609
- }
9610
- function f4ah6o$jww_parser$core$$Reader$read_double(self) {
9611
- return moonbitlang$core$uint64$$UInt64$to_double(f4ah6o$jww_parser$core$$Reader$read_uint64(self));
9589
+ function f4ah6o$jww_parser$core$Reader$read_double(self) {
9590
+ const buffer = /* @__PURE__ */ new ArrayBuffer(8);
9591
+ const view = new DataView(buffer);
9592
+ for (let i = 0; i < 8; i++) view.setUint8(i, self.data[self.pos++]);
9593
+ return view.getFloat64(0, true);
9612
9594
  }
9613
9595
  function f4ah6o$jww_parser$core$$Reader$read_bytes(self, n) {
9614
9596
  if ((self.data.length - self.pos | 0) < n) return moonbitlang$core$bytes$$Bytes$from_array({
@@ -9700,34 +9682,34 @@ function f4ah6o$jww_parser$core$$read_cstring(reader) {
9700
9682
  function f4ah6o$jww_parser$core$$parse_entity_by_class(class_name, reader, version) {
9701
9683
  if (class_name === "CDataSen") return new $64$f4ah6o$47$jww_parser$47$core$46$Entity$Line({
9702
9684
  base: f4ah6o$jww_parser$core$$parse_entity_base(reader, version),
9703
- start_x: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9704
- start_y: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9705
- end_x: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9706
- end_y: f4ah6o$jww_parser$core$$Reader$read_double(reader)
9685
+ start_x: f4ah6o$jww_parser$core$Reader$read_double(reader),
9686
+ start_y: f4ah6o$jww_parser$core$Reader$read_double(reader),
9687
+ end_x: f4ah6o$jww_parser$core$Reader$read_double(reader),
9688
+ end_y: f4ah6o$jww_parser$core$Reader$read_double(reader)
9707
9689
  });
9708
9690
  else if (class_name === "CDataEnko") return new $64$f4ah6o$47$jww_parser$47$core$46$Entity$Arc({
9709
9691
  base: f4ah6o$jww_parser$core$$parse_entity_base(reader, version),
9710
- center_x: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9711
- center_y: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9712
- radius: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9713
- start_angle: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9714
- arc_angle: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9715
- tilt_angle: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9716
- flatness: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9692
+ center_x: f4ah6o$jww_parser$core$Reader$read_double(reader),
9693
+ center_y: f4ah6o$jww_parser$core$Reader$read_double(reader),
9694
+ radius: f4ah6o$jww_parser$core$Reader$read_double(reader),
9695
+ start_angle: f4ah6o$jww_parser$core$Reader$read_double(reader),
9696
+ arc_angle: f4ah6o$jww_parser$core$Reader$read_double(reader),
9697
+ tilt_angle: f4ah6o$jww_parser$core$Reader$read_double(reader),
9698
+ flatness: f4ah6o$jww_parser$core$Reader$read_double(reader),
9717
9699
  is_full_circle: f4ah6o$jww_parser$core$$Reader$read_dword(reader) !== 0
9718
9700
  });
9719
9701
  else if (class_name === "CDataTen") {
9720
9702
  const base = f4ah6o$jww_parser$core$$parse_entity_base(reader, version);
9721
- const x = f4ah6o$jww_parser$core$$Reader$read_double(reader);
9722
- const y = f4ah6o$jww_parser$core$$Reader$read_double(reader);
9703
+ const x = f4ah6o$jww_parser$core$Reader$read_double(reader);
9704
+ const y = f4ah6o$jww_parser$core$Reader$read_double(reader);
9723
9705
  const is_temporary = f4ah6o$jww_parser$core$$Reader$read_dword(reader) !== 0;
9724
9706
  let code = 0;
9725
9707
  let angle = 0;
9726
9708
  let scale = 1;
9727
9709
  if (base.pen_style === 100) {
9728
9710
  code = f4ah6o$jww_parser$core$$Reader$read_dword(reader);
9729
- angle = f4ah6o$jww_parser$core$$Reader$read_double(reader);
9730
- scale = f4ah6o$jww_parser$core$$Reader$read_double(reader);
9711
+ angle = f4ah6o$jww_parser$core$Reader$read_double(reader);
9712
+ scale = f4ah6o$jww_parser$core$Reader$read_double(reader);
9731
9713
  }
9732
9714
  return new $64$f4ah6o$47$jww_parser$47$core$46$Entity$Point({
9733
9715
  base,
@@ -9740,28 +9722,28 @@ function f4ah6o$jww_parser$core$$parse_entity_by_class(class_name, reader, versi
9740
9722
  });
9741
9723
  } else if (class_name === "CDataMoji") return new $64$f4ah6o$47$jww_parser$47$core$46$Entity$Text({
9742
9724
  base: f4ah6o$jww_parser$core$$parse_entity_base(reader, version),
9743
- start_x: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9744
- start_y: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9745
- end_x: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9746
- end_y: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9725
+ start_x: f4ah6o$jww_parser$core$Reader$read_double(reader),
9726
+ start_y: f4ah6o$jww_parser$core$Reader$read_double(reader),
9727
+ end_x: f4ah6o$jww_parser$core$Reader$read_double(reader),
9728
+ end_y: f4ah6o$jww_parser$core$Reader$read_double(reader),
9747
9729
  text_type: f4ah6o$jww_parser$core$$Reader$read_dword(reader),
9748
- size_x: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9749
- size_y: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9750
- spacing: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9751
- angle: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9730
+ size_x: f4ah6o$jww_parser$core$Reader$read_double(reader),
9731
+ size_y: f4ah6o$jww_parser$core$Reader$read_double(reader),
9732
+ spacing: f4ah6o$jww_parser$core$Reader$read_double(reader),
9733
+ angle: f4ah6o$jww_parser$core$Reader$read_double(reader),
9752
9734
  font_name: f4ah6o$jww_parser$core$$read_cstring(reader),
9753
9735
  content: f4ah6o$jww_parser$core$$read_cstring(reader)
9754
9736
  });
9755
9737
  else if (class_name === "CDataSolid") {
9756
9738
  const base = f4ah6o$jww_parser$core$$parse_entity_base(reader, version);
9757
- const point1_x = f4ah6o$jww_parser$core$$Reader$read_double(reader);
9758
- const point1_y = f4ah6o$jww_parser$core$$Reader$read_double(reader);
9759
- const point4_x = f4ah6o$jww_parser$core$$Reader$read_double(reader);
9760
- const point4_y = f4ah6o$jww_parser$core$$Reader$read_double(reader);
9761
- const point2_x = f4ah6o$jww_parser$core$$Reader$read_double(reader);
9762
- const point2_y = f4ah6o$jww_parser$core$$Reader$read_double(reader);
9763
- const point3_x = f4ah6o$jww_parser$core$$Reader$read_double(reader);
9764
- const point3_y = f4ah6o$jww_parser$core$$Reader$read_double(reader);
9739
+ const point1_x = f4ah6o$jww_parser$core$Reader$read_double(reader);
9740
+ const point1_y = f4ah6o$jww_parser$core$Reader$read_double(reader);
9741
+ const point4_x = f4ah6o$jww_parser$core$Reader$read_double(reader);
9742
+ const point4_y = f4ah6o$jww_parser$core$Reader$read_double(reader);
9743
+ const point2_x = f4ah6o$jww_parser$core$Reader$read_double(reader);
9744
+ const point2_y = f4ah6o$jww_parser$core$Reader$read_double(reader);
9745
+ const point3_x = f4ah6o$jww_parser$core$Reader$read_double(reader);
9746
+ const point3_y = f4ah6o$jww_parser$core$Reader$read_double(reader);
9765
9747
  let color = 0;
9766
9748
  if (base.pen_color === 10) color = f4ah6o$jww_parser$core$$Reader$read_dword(reader);
9767
9749
  return new $64$f4ah6o$47$jww_parser$47$core$46$Entity$Solid({
@@ -9778,30 +9760,30 @@ function f4ah6o$jww_parser$core$$parse_entity_by_class(class_name, reader, versi
9778
9760
  });
9779
9761
  } else if (class_name === "CDataBlock") return new $64$f4ah6o$47$jww_parser$47$core$46$Entity$Block({
9780
9762
  base: f4ah6o$jww_parser$core$$parse_entity_base(reader, version),
9781
- ref_x: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9782
- ref_y: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9783
- scale_x: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9784
- scale_y: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9785
- rotation: f4ah6o$jww_parser$core$$Reader$read_double(reader),
9763
+ ref_x: f4ah6o$jww_parser$core$Reader$read_double(reader),
9764
+ ref_y: f4ah6o$jww_parser$core$Reader$read_double(reader),
9765
+ scale_x: f4ah6o$jww_parser$core$Reader$read_double(reader),
9766
+ scale_y: f4ah6o$jww_parser$core$Reader$read_double(reader),
9767
+ rotation: f4ah6o$jww_parser$core$Reader$read_double(reader),
9786
9768
  def_number: f4ah6o$jww_parser$core$$Reader$read_dword(reader)
9787
9769
  });
9788
9770
  else if (class_name === "CDataSunpou") {
9789
9771
  f4ah6o$jww_parser$core$$parse_entity_base(reader, version);
9790
9772
  const line_base = f4ah6o$jww_parser$core$$parse_entity_base(reader, version);
9791
- const start_x = f4ah6o$jww_parser$core$$Reader$read_double(reader);
9792
- const start_y = f4ah6o$jww_parser$core$$Reader$read_double(reader);
9793
- const end_x = f4ah6o$jww_parser$core$$Reader$read_double(reader);
9794
- const end_y = f4ah6o$jww_parser$core$$Reader$read_double(reader);
9773
+ const start_x = f4ah6o$jww_parser$core$Reader$read_double(reader);
9774
+ const start_y = f4ah6o$jww_parser$core$Reader$read_double(reader);
9775
+ const end_x = f4ah6o$jww_parser$core$Reader$read_double(reader);
9776
+ const end_y = f4ah6o$jww_parser$core$Reader$read_double(reader);
9795
9777
  f4ah6o$jww_parser$core$$parse_entity_base(reader, version);
9796
- f4ah6o$jww_parser$core$$Reader$read_double(reader);
9797
- f4ah6o$jww_parser$core$$Reader$read_double(reader);
9798
- f4ah6o$jww_parser$core$$Reader$read_double(reader);
9799
- f4ah6o$jww_parser$core$$Reader$read_double(reader);
9778
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9779
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9780
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9781
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9800
9782
  f4ah6o$jww_parser$core$$Reader$read_dword(reader);
9801
- f4ah6o$jww_parser$core$$Reader$read_double(reader);
9802
- f4ah6o$jww_parser$core$$Reader$read_double(reader);
9803
- f4ah6o$jww_parser$core$$Reader$read_double(reader);
9804
- f4ah6o$jww_parser$core$$Reader$read_double(reader);
9783
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9784
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9785
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9786
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9805
9787
  f4ah6o$jww_parser$core$$read_cstring(reader);
9806
9788
  f4ah6o$jww_parser$core$$read_cstring(reader);
9807
9789
  if (version >>> 0 >= 420) {
@@ -9811,10 +9793,10 @@ function f4ah6o$jww_parser$core$$parse_entity_by_class(class_name, reader, versi
9811
9793
  const _ = _tmp;
9812
9794
  if (_ < 2) {
9813
9795
  f4ah6o$jww_parser$core$$parse_entity_base(reader, version);
9814
- f4ah6o$jww_parser$core$$Reader$read_double(reader);
9815
- f4ah6o$jww_parser$core$$Reader$read_double(reader);
9816
- f4ah6o$jww_parser$core$$Reader$read_double(reader);
9817
- f4ah6o$jww_parser$core$$Reader$read_double(reader);
9796
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9797
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9798
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9799
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9818
9800
  _tmp = _ + 1 | 0;
9819
9801
  continue;
9820
9802
  } else break;
@@ -9824,8 +9806,8 @@ function f4ah6o$jww_parser$core$$parse_entity_by_class(class_name, reader, versi
9824
9806
  const _ = _tmp$2;
9825
9807
  if (_ < 4) {
9826
9808
  f4ah6o$jww_parser$core$$parse_entity_base(reader, version);
9827
- f4ah6o$jww_parser$core$$Reader$read_double(reader);
9828
- f4ah6o$jww_parser$core$$Reader$read_double(reader);
9809
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9810
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9829
9811
  f4ah6o$jww_parser$core$$Reader$read_dword(reader);
9830
9812
  _tmp$2 = _ + 1 | 0;
9831
9813
  continue;
@@ -9843,16 +9825,17 @@ function f4ah6o$jww_parser$core$$parse_entity_by_class(class_name, reader, versi
9843
9825
  }
9844
9826
  function f4ah6o$jww_parser$core$$parse_entity_with_pid_tracking(reader, version, pid_to_class, next_pid) {
9845
9827
  const class_id = f4ah6o$jww_parser$core$$Reader$read_word(reader);
9846
- let _bind;
9828
+ let class_name = "";
9829
+ let updated_next_pid = next_pid;
9847
9830
  if (class_id === 65535) {
9848
9831
  f4ah6o$jww_parser$core$$Reader$read_word(reader);
9849
9832
  const name_bytes = f4ah6o$jww_parser$core$$Reader$read_bytes(reader, f4ah6o$jww_parser$core$$Reader$read_word(reader));
9850
9833
  let name_chars = "";
9851
- const _end158 = name_bytes.length;
9834
+ const _end161 = name_bytes.length;
9852
9835
  let _tmp = 0;
9853
9836
  while (true) {
9854
9837
  const i = _tmp;
9855
- if (i < _end158) {
9838
+ if (i < _end161) {
9856
9839
  const _tmp$2 = name_chars;
9857
9840
  $bound_check(name_bytes, i);
9858
9841
  const _p = name_bytes[i];
@@ -9861,13 +9844,10 @@ function f4ah6o$jww_parser$core$$parse_entity_with_pid_tracking(reader, version,
9861
9844
  continue;
9862
9845
  } else break;
9863
9846
  }
9864
- const class_name = name_chars;
9865
- if (next_pid < 65536) moonbitlang$core$array$$Array$set$13$(pid_to_class, next_pid, class_name);
9866
- _bind = {
9867
- _0: class_name,
9868
- _1: pid_to_class,
9869
- _2: (next_pid >>> 0) + 1 | 0
9870
- };
9847
+ class_name = name_chars;
9848
+ const pid = updated_next_pid;
9849
+ if (pid < 65536) moonbitlang$core$array$$Array$set$13$(pid_to_class, pid, class_name);
9850
+ updated_next_pid = (pid >>> 0) + 1 | 0;
9871
9851
  } else if (class_id === 32768) return {
9872
9852
  entity: void 0,
9873
9853
  pid_to_class,
@@ -9877,29 +9857,36 @@ function f4ah6o$jww_parser$core$$parse_entity_with_pid_tracking(reader, version,
9877
9857
  const class_pid = class_id & 32767;
9878
9858
  if (class_pid < 65536) {
9879
9859
  const name = moonbitlang$core$array$$Array$at$13$(pid_to_class, class_pid);
9880
- if (name === "") return {
9860
+ if (name === "") {
9861
+ f4ah6o$jww_parser$core$$parse_entity_base(reader, version);
9862
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9863
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9864
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9865
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9866
+ return {
9867
+ entity: void 0,
9868
+ pid_to_class,
9869
+ next_pid: (next_pid >>> 0) + 1 | 0
9870
+ };
9871
+ }
9872
+ class_name = name;
9873
+ } else {
9874
+ f4ah6o$jww_parser$core$$parse_entity_base(reader, version);
9875
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9876
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9877
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9878
+ f4ah6o$jww_parser$core$Reader$read_double(reader);
9879
+ return {
9881
9880
  entity: void 0,
9882
9881
  pid_to_class,
9883
9882
  next_pid: (next_pid >>> 0) + 1 | 0
9884
9883
  };
9885
- _bind = {
9886
- _0: name,
9887
- _1: pid_to_class,
9888
- _2: next_pid
9889
- };
9890
- } else return {
9891
- entity: void 0,
9892
- pid_to_class,
9893
- next_pid: (next_pid >>> 0) + 1 | 0
9894
- };
9884
+ }
9895
9885
  }
9896
- const _class_name = _bind._0;
9897
- const _updated_p2c = _bind._1;
9898
- const _updated_next_pid = _bind._2;
9899
9886
  return {
9900
- entity: f4ah6o$jww_parser$core$$parse_entity_by_class(_class_name, reader, version),
9901
- pid_to_class: _updated_p2c,
9902
- next_pid: (_updated_next_pid >>> 0) + 1 | 0
9887
+ entity: f4ah6o$jww_parser$core$$parse_entity_by_class(class_name, reader, version),
9888
+ pid_to_class,
9889
+ next_pid: (updated_next_pid >>> 0) + 1 | 0
9903
9890
  };
9904
9891
  }
9905
9892
  function f4ah6o$jww_parser$core$$parse_entity_list(data, offset, version) {
@@ -9922,6 +9909,7 @@ function f4ah6o$jww_parser$core$$parse_entity_list(data, offset, version) {
9922
9909
  while (true) {
9923
9910
  const _ = _tmp$2;
9924
9911
  if (_ < count) {
9912
+ if ((reader.data.length - reader.pos | 0) < 4) break;
9925
9913
  const result = f4ah6o$jww_parser$core$$parse_entity_with_pid_tracking(reader, version, pid_to_class, next_pid);
9926
9914
  const _x = result.entity;
9927
9915
  if (_x === void 0) {
@@ -10054,19 +10042,19 @@ function f4ah6o$jww_parser$core$$parse_block_def_list(data, offset, version) {
10054
10042
  }
10055
10043
  function f4ah6o$jww_parser$core$$set_layer_names(layer_groups) {
10056
10044
  const result = moonbitlang$core$array$$Array$new$46$inner$11$(0);
10057
- const _end218 = layer_groups.length;
10045
+ const _end234 = layer_groups.length;
10058
10046
  let _tmp = 0;
10059
10047
  while (true) {
10060
10048
  const g_idx = _tmp;
10061
- if (g_idx < _end218) {
10049
+ if (g_idx < _end234) {
10062
10050
  const lg = moonbitlang$core$array$$Array$at$11$(layer_groups, g_idx);
10063
10051
  const group_name = lg.name === "" ? `Group${moonbitlang$core$int$$Int$to_string$46$inner(g_idx, 10)}` : lg.name;
10064
10052
  const layers = moonbitlang$core$array$$Array$new$46$inner$12$(0);
10065
- const _end226 = lg.layers.length;
10053
+ const _end242 = lg.layers.length;
10066
10054
  let _tmp$2 = 0;
10067
10055
  while (true) {
10068
10056
  const l_idx = _tmp$2;
10069
- if (l_idx < _end226) {
10057
+ if (l_idx < _end242) {
10070
10058
  const l = moonbitlang$core$array$$Array$at$12$(lg.layers, l_idx);
10071
10059
  const layer_name = l.name === "" ? `${moonbitlang$core$int$$Int$to_string$46$inner(g_idx, 10)}-${moonbitlang$core$int$$Int$to_string$46$inner(l_idx, 10)}` : l.name;
10072
10060
  moonbitlang$core$array$$Array$push$12$(layers, {
@@ -10094,7 +10082,7 @@ function f4ah6o$jww_parser$core$$set_layer_names(layer_groups) {
10094
10082
  }
10095
10083
  function f4ah6o$jww_parser$core$$parse(data) {
10096
10084
  if (data.length < 8) return f4ah6o$jww_parser$core$$Document$default();
10097
- if (moonbitlang$core$builtin$$op_notequal$9$(moonbitlang$core$bytes$$Bytes$from_array(moonbitlang$core$array$$Array$sub$46$inner$3$(moonbitlang$core$bytes$$Bytes$to_array(data), 0, f4ah6o$jww_parser$core$$parse$46$constr$47$1004)), $bytes_literal$1)) return f4ah6o$jww_parser$core$$Document$default();
10085
+ if (moonbitlang$core$builtin$$op_notequal$9$(moonbitlang$core$bytes$$Bytes$from_array(moonbitlang$core$array$$Array$sub$46$inner$3$(moonbitlang$core$bytes$$Bytes$to_array(data), 0, f4ah6o$jww_parser$core$$parse$46$constr$47$1012)), $bytes_literal$1)) return f4ah6o$jww_parser$core$$Document$default();
10098
10086
  const reader = f4ah6o$jww_parser$core$$Reader$new(moonbitlang$core$bytes$$Bytes$from_array(moonbitlang$core$array$$Array$sub$46$inner$3$(moonbitlang$core$bytes$$Bytes$to_array(data), 8, data.length)));
10099
10087
  const version = f4ah6o$jww_parser$core$$Reader$read_dword(reader);
10100
10088
  const memo = f4ah6o$jww_parser$core$$read_cstring(reader);
@@ -10107,7 +10095,7 @@ function f4ah6o$jww_parser$core$$parse(data) {
10107
10095
  if (_g_idx < 16) {
10108
10096
  const state = f4ah6o$jww_parser$core$$Reader$read_dword(reader);
10109
10097
  const write_layer = f4ah6o$jww_parser$core$$Reader$read_dword(reader);
10110
- const scale = f4ah6o$jww_parser$core$$Reader$read_double(reader);
10098
+ const scale = f4ah6o$jww_parser$core$Reader$read_double(reader);
10111
10099
  const protect = f4ah6o$jww_parser$core$$Reader$read_dword(reader);
10112
10100
  const layers = moonbitlang$core$array$$Array$new$46$inner$12$(0);
10113
10101
  let _tmp$2 = 0;
@@ -10197,17 +10185,17 @@ function f4ah6o$jww_parser$dxf$$ltype_table() {
10197
10185
  output = `${output}2\nLTYPE\n`;
10198
10186
  output = `${output}70\n11\n`;
10199
10187
  const ltypes = [
10200
- f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1041,
10201
- f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1042,
10202
- f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1043,
10203
- f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1044,
10204
- f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1045,
10205
- f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1046,
10206
- f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1047,
10207
- f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1048,
10208
10188
  f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1049,
10209
10189
  f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1050,
10210
- f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1051
10190
+ f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1051,
10191
+ f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1052,
10192
+ f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1053,
10193
+ f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1054,
10194
+ f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1055,
10195
+ f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1056,
10196
+ f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1057,
10197
+ f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1058,
10198
+ f4ah6o$jww_parser$dxf$$ltype_table$46$tuple$47$1059
10211
10199
  ];
10212
10200
  const _len = ltypes.length;
10213
10201
  let _tmp = 0;