arx-convert 5.0.0

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.
Files changed (145) hide show
  1. package/LICENSE +674 -0
  2. package/README.md +142 -0
  3. package/dist/bin/convert.d.ts +2 -0
  4. package/dist/bin/convert.js +145 -0
  5. package/dist/bin/convert.js.map +1 -0
  6. package/dist/bin/helpers.d.ts +18 -0
  7. package/dist/bin/helpers.js +160 -0
  8. package/dist/bin/helpers.js.map +1 -0
  9. package/dist/common/BinaryIO.d.ts +64 -0
  10. package/dist/common/BinaryIO.js +293 -0
  11. package/dist/common/BinaryIO.js.map +1 -0
  12. package/dist/common/Color.d.ts +25 -0
  13. package/dist/common/Color.js +45 -0
  14. package/dist/common/Color.js.map +1 -0
  15. package/dist/common/Light.d.ts +47 -0
  16. package/dist/common/Light.js +78 -0
  17. package/dist/common/Light.js.map +1 -0
  18. package/dist/common/TextIO.d.ts +4 -0
  19. package/dist/common/TextIO.js +16 -0
  20. package/dist/common/TextIO.js.map +1 -0
  21. package/dist/common/constants.d.ts +71 -0
  22. package/dist/common/constants.js +230 -0
  23. package/dist/common/constants.js.map +1 -0
  24. package/dist/common/helpers.d.ts +18 -0
  25. package/dist/common/helpers.js +62 -0
  26. package/dist/common/helpers.js.map +1 -0
  27. package/dist/common/types.d.ts +27 -0
  28. package/dist/common/types.js +3 -0
  29. package/dist/common/types.js.map +1 -0
  30. package/dist/dlf/DLF.d.ts +25 -0
  31. package/dist/dlf/DLF.js +63 -0
  32. package/dist/dlf/DLF.js.map +1 -0
  33. package/dist/dlf/DlfHeader.d.ts +30 -0
  34. package/dist/dlf/DlfHeader.js +87 -0
  35. package/dist/dlf/DlfHeader.js.map +1 -0
  36. package/dist/dlf/Fog.d.ts +27 -0
  37. package/dist/dlf/Fog.js +64 -0
  38. package/dist/dlf/Fog.js.map +1 -0
  39. package/dist/dlf/InteactiveObject.d.ts +18 -0
  40. package/dist/dlf/InteactiveObject.js +41 -0
  41. package/dist/dlf/InteactiveObject.js.map +1 -0
  42. package/dist/dlf/PathHeader.d.ts +27 -0
  43. package/dist/dlf/PathHeader.js +64 -0
  44. package/dist/dlf/PathHeader.js.map +1 -0
  45. package/dist/dlf/Pathway.d.ts +17 -0
  46. package/dist/dlf/Pathway.js +40 -0
  47. package/dist/dlf/Pathway.js.map +1 -0
  48. package/dist/dlf/Scene.d.ts +16 -0
  49. package/dist/dlf/Scene.js +36 -0
  50. package/dist/dlf/Scene.js.map +1 -0
  51. package/dist/ftl/FTL.d.ts +10 -0
  52. package/dist/ftl/FTL.js +115 -0
  53. package/dist/ftl/FTL.js.map +1 -0
  54. package/dist/ftl/FtlHeader.d.ts +12 -0
  55. package/dist/ftl/FtlHeader.js +24 -0
  56. package/dist/ftl/FtlHeader.js.map +1 -0
  57. package/dist/fts/Anchor.d.ts +12 -0
  58. package/dist/fts/Anchor.js +35 -0
  59. package/dist/fts/Anchor.js.map +1 -0
  60. package/dist/fts/AnchorData.d.ts +20 -0
  61. package/dist/fts/AnchorData.js +31 -0
  62. package/dist/fts/AnchorData.js.map +1 -0
  63. package/dist/fts/Cell.d.ts +12 -0
  64. package/dist/fts/Cell.js +32 -0
  65. package/dist/fts/Cell.js.map +1 -0
  66. package/dist/fts/EPData.d.ts +19 -0
  67. package/dist/fts/EPData.js +22 -0
  68. package/dist/fts/EPData.js.map +1 -0
  69. package/dist/fts/FTS.d.ts +28 -0
  70. package/dist/fts/FTS.js +88 -0
  71. package/dist/fts/FTS.js.map +1 -0
  72. package/dist/fts/FtsHeader.d.ts +18 -0
  73. package/dist/fts/FtsHeader.js +45 -0
  74. package/dist/fts/FtsHeader.js.map +1 -0
  75. package/dist/fts/Polygon.d.ts +29 -0
  76. package/dist/fts/Polygon.js +49 -0
  77. package/dist/fts/Polygon.js.map +1 -0
  78. package/dist/fts/Portal.d.ts +19 -0
  79. package/dist/fts/Portal.js +32 -0
  80. package/dist/fts/Portal.js.map +1 -0
  81. package/dist/fts/PortalPolygon.d.ts +29 -0
  82. package/dist/fts/PortalPolygon.js +59 -0
  83. package/dist/fts/PortalPolygon.js.map +1 -0
  84. package/dist/fts/Room.d.ts +12 -0
  85. package/dist/fts/Room.js +27 -0
  86. package/dist/fts/Room.js.map +1 -0
  87. package/dist/fts/RoomData.d.ts +16 -0
  88. package/dist/fts/RoomData.js +29 -0
  89. package/dist/fts/RoomData.js.map +1 -0
  90. package/dist/fts/RoomDistance.d.ts +17 -0
  91. package/dist/fts/RoomDistance.js +27 -0
  92. package/dist/fts/RoomDistance.js.map +1 -0
  93. package/dist/fts/SceneHeader.d.ts +21 -0
  94. package/dist/fts/SceneHeader.js +45 -0
  95. package/dist/fts/SceneHeader.js.map +1 -0
  96. package/dist/fts/SceneInfo.d.ts +16 -0
  97. package/dist/fts/SceneInfo.js +26 -0
  98. package/dist/fts/SceneInfo.js.map +1 -0
  99. package/dist/fts/TextureContainer.d.ts +16 -0
  100. package/dist/fts/TextureContainer.js +27 -0
  101. package/dist/fts/TextureContainer.js.map +1 -0
  102. package/dist/fts/TextureVertex.d.ts +21 -0
  103. package/dist/fts/TextureVertex.js +34 -0
  104. package/dist/fts/TextureVertex.js.map +1 -0
  105. package/dist/fts/UniqueHeader.d.ts +15 -0
  106. package/dist/fts/UniqueHeader.js +25 -0
  107. package/dist/fts/UniqueHeader.js.map +1 -0
  108. package/dist/fts/Vertex.d.ts +19 -0
  109. package/dist/fts/Vertex.js +23 -0
  110. package/dist/fts/Vertex.js.map +1 -0
  111. package/dist/helpers.d.ts +1 -0
  112. package/dist/helpers.js +6 -0
  113. package/dist/helpers.js.map +1 -0
  114. package/dist/index.d.ts +5 -0
  115. package/dist/index.js +14 -0
  116. package/dist/index.js.map +1 -0
  117. package/dist/llf/LLF.d.ts +14 -0
  118. package/dist/llf/LLF.js +44 -0
  119. package/dist/llf/LLF.js.map +1 -0
  120. package/dist/llf/LightingHeader.d.ts +11 -0
  121. package/dist/llf/LightingHeader.js +26 -0
  122. package/dist/llf/LightingHeader.js.map +1 -0
  123. package/dist/llf/LlfHeader.d.ts +20 -0
  124. package/dist/llf/LlfHeader.js +53 -0
  125. package/dist/llf/LlfHeader.js.map +1 -0
  126. package/dist/tea/NewKeyFrame.d.ts +16 -0
  127. package/dist/tea/NewKeyFrame.js +33 -0
  128. package/dist/tea/NewKeyFrame.js.map +1 -0
  129. package/dist/tea/OldKeyFrame.d.ts +22 -0
  130. package/dist/tea/OldKeyFrame.js +30 -0
  131. package/dist/tea/OldKeyFrame.js.map +1 -0
  132. package/dist/tea/TEA.d.ts +26 -0
  133. package/dist/tea/TEA.js +82 -0
  134. package/dist/tea/TEA.js.map +1 -0
  135. package/dist/tea/TeaHeader.d.ts +20 -0
  136. package/dist/tea/TeaHeader.js +29 -0
  137. package/dist/tea/TeaHeader.js.map +1 -0
  138. package/dist/tsconfig.tsbuildinfo +1 -0
  139. package/dist/types.d.ts +33 -0
  140. package/dist/types.js +19 -0
  141. package/dist/types.js.map +1 -0
  142. package/dist/utils.d.ts +3 -0
  143. package/dist/utils.js +9 -0
  144. package/dist/utils.js.map +1 -0
  145. package/package.json +54 -0
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NewKeyFrame = void 0;
4
+ const constants_1 = require("../common/constants");
5
+ const node_buffer_1 = require("node:buffer");
6
+ const BinaryIO_1 = require("../common/BinaryIO");
7
+ const OldKeyFrame_1 = require("./OldKeyFrame");
8
+ class NewKeyFrame {
9
+ static readFrom(binary) {
10
+ return {
11
+ num_frame: binary.readInt32(),
12
+ flag_frame: binary.readInt32(),
13
+ info_frame: binary.readString(256, constants_1.KEEP_ZERO_BYTES),
14
+ master_key_frame: binary.readInt32() !== 0,
15
+ key_frame: binary.readInt32() !== 0,
16
+ key_move: binary.readInt32() !== 0,
17
+ key_orient: binary.readInt32() !== 0,
18
+ key_morph: binary.readInt32() !== 0,
19
+ time_frame: binary.readInt32(),
20
+ };
21
+ }
22
+ static accumulateFrom(json) {
23
+ const buffer = node_buffer_1.Buffer.alloc(NewKeyFrame.sizeOf());
24
+ const binary = new BinaryIO_1.BinaryIO(buffer.buffer);
25
+ // TODO
26
+ return buffer;
27
+ }
28
+ static sizeOf() {
29
+ return OldKeyFrame_1.OldKeyFrame.sizeOf() + BinaryIO_1.BinaryIO.sizeOfString(256);
30
+ }
31
+ }
32
+ exports.NewKeyFrame = NewKeyFrame;
33
+ //# sourceMappingURL=NewKeyFrame.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NewKeyFrame.js","sourceRoot":"","sources":["../../src/tea/NewKeyFrame.ts"],"names":[],"mappings":";;;AAAA,mDAAqD;AACrD,6CAAoC;AACpC,iDAA6C;AAE7C,+CAA2D;AAS3D,MAAa,WAAW;IACtB,MAAM,CAAC,QAAQ,CAAC,MAAgB;QAC9B,OAAO;YACL,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE;YAC7B,UAAU,EAAE,MAAM,CAAC,SAAS,EAAE;YAC9B,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,2BAAe,CAAC;YACnD,gBAAgB,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC;YAC1C,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC;YACnC,QAAQ,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC;YAClC,UAAU,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC;YACpC,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC;YACnC,UAAU,EAAE,MAAM,CAAC,SAAS,EAAE;SAC/B,CAAA;IACH,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,IAAY;QAChC,MAAM,MAAM,GAAG,oBAAM,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAA;QACjD,MAAM,MAAM,GAAG,IAAI,mBAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAE1C,OAAO;QAEP,OAAO,MAAM,CAAA;IACf,CAAC;IAED,MAAM,CAAC,MAAM;QACX,OAAO,yBAAW,CAAC,MAAM,EAAE,GAAG,mBAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;IAC1D,CAAC;CACF;AA3BD,kCA2BC"}
@@ -0,0 +1,22 @@
1
+ /// <reference types="node" />
2
+ import { Buffer } from 'node:buffer';
3
+ import { BinaryIO } from '../common/BinaryIO';
4
+ import { ArxTEA } from './TEA';
5
+ /**
6
+ * @see https://github.com/arx/ArxLibertatis/blob/1.2.1/src/animation/AnimationFormat.h#L91
7
+ */
8
+ export type ArxOldKeyFrame = {
9
+ num_frame: number;
10
+ flag_frame: number;
11
+ master_key_frame: boolean;
12
+ key_frame: boolean;
13
+ key_move: boolean;
14
+ key_orient: boolean;
15
+ key_morph: boolean;
16
+ time_frame: number;
17
+ };
18
+ export declare class OldKeyFrame {
19
+ static readFrom(binary: BinaryIO): ArxOldKeyFrame;
20
+ static accumulateFrom(json: ArxTEA): Buffer;
21
+ static sizeOf(): number;
22
+ }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OldKeyFrame = void 0;
4
+ const node_buffer_1 = require("node:buffer");
5
+ const BinaryIO_1 = require("../common/BinaryIO");
6
+ class OldKeyFrame {
7
+ static readFrom(binary) {
8
+ return {
9
+ num_frame: binary.readInt32(),
10
+ flag_frame: binary.readInt32(),
11
+ master_key_frame: binary.readInt32() !== 0,
12
+ key_frame: binary.readInt32() !== 0,
13
+ key_move: binary.readInt32() !== 0,
14
+ key_orient: binary.readInt32() !== 0,
15
+ key_morph: binary.readInt32() !== 0,
16
+ time_frame: binary.readInt32(),
17
+ };
18
+ }
19
+ static accumulateFrom(json) {
20
+ const buffer = node_buffer_1.Buffer.alloc(OldKeyFrame.sizeOf());
21
+ const binary = new BinaryIO_1.BinaryIO(buffer.buffer);
22
+ // TODO
23
+ return buffer;
24
+ }
25
+ static sizeOf() {
26
+ return BinaryIO_1.BinaryIO.sizeOfInt32Array(8);
27
+ }
28
+ }
29
+ exports.OldKeyFrame = OldKeyFrame;
30
+ //# sourceMappingURL=OldKeyFrame.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OldKeyFrame.js","sourceRoot":"","sources":["../../src/tea/OldKeyFrame.ts"],"names":[],"mappings":";;;AAAA,6CAAoC;AACpC,iDAA6C;AAiB7C,MAAa,WAAW;IACtB,MAAM,CAAC,QAAQ,CAAC,MAAgB;QAC9B,OAAO;YACL,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE;YAC7B,UAAU,EAAE,MAAM,CAAC,SAAS,EAAE;YAC9B,gBAAgB,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC;YAC1C,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC;YACnC,QAAQ,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC;YAClC,UAAU,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC;YACpC,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC;YACnC,UAAU,EAAE,MAAM,CAAC,SAAS,EAAE;SAC/B,CAAA;IACH,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,IAAY;QAChC,MAAM,MAAM,GAAG,oBAAM,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAA;QACjD,MAAM,MAAM,GAAG,IAAI,mBAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAE1C,OAAO;QAEP,OAAO,MAAM,CAAA;IACf,CAAC;IAED,MAAM,CAAC,MAAM;QACX,OAAO,mBAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAA;IACrC,CAAC;CACF;AA1BD,kCA0BC"}
@@ -0,0 +1,26 @@
1
+ /// <reference types="node" />
2
+ import { ArxTeaHeader } from './TeaHeader';
3
+ import { Buffer } from 'node:buffer';
4
+ import { ArxNewKeyFrame } from './NewKeyFrame';
5
+ import { ArxOldKeyFrame } from './OldKeyFrame';
6
+ import { ArxQuaternion, ArxVector3 } from '../common/types';
7
+ export type ArxTEA = {
8
+ header: Omit<ArxTeaHeader, 'numberOfKeyFrames' | 'numberOfGroups'>;
9
+ keyframes: ArxKeyFrame[];
10
+ };
11
+ /**
12
+ * @see https://github.com/arx/ArxLibertatis/blob/1.2.1/src/animation/AnimationFormat.h#L124
13
+ */
14
+ export type ArxTheaSample = {
15
+ name: string;
16
+ size: number;
17
+ };
18
+ export type ArxKeyFrame = (ArxNewKeyFrame | ArxOldKeyFrame) & {
19
+ translate?: ArxVector3;
20
+ quat?: ArxQuaternion;
21
+ sample?: ArxTheaSample;
22
+ };
23
+ export declare class TEA {
24
+ static load(decompressedFile: Buffer): ArxTEA;
25
+ static save(json: ArxTEA): Buffer;
26
+ }
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ var __rest = (this && this.__rest) || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
+ t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
+ t[p[i]] = s[p[i]];
10
+ }
11
+ return t;
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.TEA = void 0;
15
+ const TeaHeader_1 = require("./TeaHeader");
16
+ const node_buffer_1 = require("node:buffer");
17
+ const BinaryIO_1 = require("../common/BinaryIO");
18
+ const constants_1 = require("../common/constants");
19
+ const NewKeyFrame_1 = require("./NewKeyFrame");
20
+ const OldKeyFrame_1 = require("./OldKeyFrame");
21
+ class TEA {
22
+ static load(decompressedFile) {
23
+ const file = new BinaryIO_1.BinaryIO(decompressedFile.buffer);
24
+ const _a = TeaHeader_1.TeaHeader.readFrom(file), { numberOfKeyFrames, numberOfGroups } = _a, header = __rest(_a, ["numberOfKeyFrames", "numberOfGroups"]);
25
+ if (header.version < 2014) {
26
+ throw new Error(`Invalid TEA version ${header.version}`);
27
+ }
28
+ const data = {
29
+ header: header,
30
+ keyframes: [],
31
+ };
32
+ for (let i = 0; i < numberOfKeyFrames; i++) {
33
+ console.log(i, file.position);
34
+ let keyframe;
35
+ if (header.version >= 2015) {
36
+ keyframe = NewKeyFrame_1.NewKeyFrame.readFrom(file);
37
+ }
38
+ else {
39
+ keyframe = OldKeyFrame_1.OldKeyFrame.readFrom(file);
40
+ }
41
+ data.keyframes.push(keyframe);
42
+ if (keyframe.key_move) {
43
+ keyframe.translate = file.readVector3();
44
+ }
45
+ if (keyframe.key_orient) {
46
+ file.position += 8; // theo angle
47
+ keyframe.quat = file.readQuat();
48
+ }
49
+ if (keyframe.key_morph) {
50
+ file.position += 16; // thea morph
51
+ }
52
+ for (let j = 0; j < numberOfGroups; j++) {
53
+ // theo groupanim
54
+ const group = {
55
+ key: file.readInt32() !== 0,
56
+ angle: file.readString(8, constants_1.KEEP_ZERO_BYTES),
57
+ quat: file.readQuat(),
58
+ translate: file.readVector3(),
59
+ zoom: file.readVector3(),
60
+ };
61
+ // TODO: create groups and fill it in with group data
62
+ }
63
+ const numberOfSamples = file.readInt32();
64
+ if (numberOfSamples !== -1) {
65
+ const sample = {
66
+ name: file.readString(256, constants_1.KEEP_ZERO_BYTES),
67
+ size: file.readInt32(),
68
+ };
69
+ keyframe.sample = sample;
70
+ file.position += sample.size;
71
+ }
72
+ console.log(keyframe);
73
+ }
74
+ file.position += 4; // num_sfx?
75
+ return data;
76
+ }
77
+ static save(json) {
78
+ return node_buffer_1.Buffer.concat([]);
79
+ }
80
+ }
81
+ exports.TEA = TEA;
82
+ //# sourceMappingURL=TEA.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TEA.js","sourceRoot":"","sources":["../../src/tea/TEA.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,2CAAqD;AACrD,6CAAoC;AACpC,iDAA6C;AAC7C,mDAAqD;AACrD,+CAA2D;AAC3D,+CAA2D;AAsB3D,MAAa,GAAG;IACd,MAAM,CAAC,IAAI,CAAC,gBAAwB;QAClC,MAAM,IAAI,GAAG,IAAI,mBAAQ,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAA;QAElD,MAAM,KAAmD,qBAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAA3E,EAAE,iBAAiB,EAAE,cAAc,OAAwC,EAAnC,MAAM,cAA9C,uCAAgD,CAA2B,CAAA;QAEjF,IAAI,MAAM,CAAC,OAAO,GAAG,IAAI,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,uBAAuB,MAAM,CAAC,OAAO,EAAE,CAAC,CAAA;SACzD;QAED,MAAM,IAAI,GAAW;YACnB,MAAM,EAAE,MAAM;YACd,SAAS,EAAE,EAAE;SACd,CAAA;QAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,iBAAiB,EAAE,CAAC,EAAE,EAAE;YAC1C,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;YAC7B,IAAI,QAAqB,CAAA;YACzB,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI,EAAE;gBAC1B,QAAQ,GAAG,yBAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;aACtC;iBAAM;gBACL,QAAQ,GAAG,yBAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;aACtC;YACD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAE7B,IAAI,QAAQ,CAAC,QAAQ,EAAE;gBACrB,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;aACxC;YAED,IAAI,QAAQ,CAAC,UAAU,EAAE;gBACvB,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAA,CAAC,aAAa;gBAChC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAA;aAChC;YAED,IAAI,QAAQ,CAAC,SAAS,EAAE;gBACtB,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAA,CAAC,aAAa;aAClC;YAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,EAAE,CAAC,EAAE,EAAE;gBACvC,iBAAiB;gBACjB,MAAM,KAAK,GAAG;oBACZ,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC;oBAC3B,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,2BAAe,CAAC;oBAC1C,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE;oBACrB,SAAS,EAAE,IAAI,CAAC,WAAW,EAAE;oBAC7B,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE;iBACzB,CAAA;gBACD,qDAAqD;aACtD;YAED,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,EAAE,CAAA;YAExC,IAAI,eAAe,KAAK,CAAC,CAAC,EAAE;gBAC1B,MAAM,MAAM,GAAkB;oBAC5B,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,2BAAe,CAAC;oBAC3C,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE;iBACvB,CAAA;gBACD,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAA;gBACxB,IAAI,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAA;aAC7B;YAED,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;SACtB;QAED,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAA,CAAC,WAAW;QAE9B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,IAAY;QACtB,OAAO,oBAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IAC1B,CAAC;CACF;AAxED,kBAwEC"}
@@ -0,0 +1,20 @@
1
+ /// <reference types="node" />
2
+ import { Buffer } from 'node:buffer';
3
+ import { BinaryIO } from '../common/BinaryIO';
4
+ import { ArxTEA } from './TEA';
5
+ /**
6
+ * @see https://github.com/arx/ArxLibertatis/blob/1.2.1/src/animation/AnimationFormat.h#L82
7
+ */
8
+ export type ArxTeaHeader = {
9
+ ident: string;
10
+ version: number;
11
+ name: string;
12
+ numberOfFrames: number;
13
+ numberOfGroups: number;
14
+ numberOfKeyFrames: number;
15
+ };
16
+ export declare class TeaHeader {
17
+ static readFrom(binary: BinaryIO): ArxTeaHeader;
18
+ static accumulateFrom(json: ArxTEA, uncompressedSize: number): Buffer;
19
+ static sizeOf(): number;
20
+ }
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TeaHeader = void 0;
4
+ const constants_1 = require("../common/constants");
5
+ const node_buffer_1 = require("node:buffer");
6
+ const BinaryIO_1 = require("../common/BinaryIO");
7
+ class TeaHeader {
8
+ static readFrom(binary) {
9
+ return {
10
+ ident: binary.readString(20),
11
+ version: binary.readUint32(),
12
+ name: binary.readString(256, constants_1.KEEP_ZERO_BYTES),
13
+ numberOfFrames: binary.readInt32(),
14
+ numberOfGroups: binary.readInt32(),
15
+ numberOfKeyFrames: binary.readInt32(),
16
+ };
17
+ }
18
+ static accumulateFrom(json, uncompressedSize) {
19
+ const buffer = node_buffer_1.Buffer.alloc(TeaHeader.sizeOf());
20
+ const binary = new BinaryIO_1.BinaryIO(buffer.buffer);
21
+ // TODO
22
+ return buffer;
23
+ }
24
+ static sizeOf() {
25
+ return (BinaryIO_1.BinaryIO.sizeOfString(20) + BinaryIO_1.BinaryIO.sizeOfUint32() + BinaryIO_1.BinaryIO.sizeOfString(256) + BinaryIO_1.BinaryIO.sizeOfInt32Array(3));
26
+ }
27
+ }
28
+ exports.TeaHeader = TeaHeader;
29
+ //# sourceMappingURL=TeaHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TeaHeader.js","sourceRoot":"","sources":["../../src/tea/TeaHeader.ts"],"names":[],"mappings":";;;AAAA,mDAAqD;AACrD,6CAAoC;AACpC,iDAA6C;AAe7C,MAAa,SAAS;IACpB,MAAM,CAAC,QAAQ,CAAC,MAAgB;QAC9B,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5B,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE;YAC5B,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,2BAAe,CAAC;YAC7C,cAAc,EAAE,MAAM,CAAC,SAAS,EAAE;YAClC,cAAc,EAAE,MAAM,CAAC,SAAS,EAAE;YAClC,iBAAiB,EAAE,MAAM,CAAC,SAAS,EAAE;SACtC,CAAA;IACH,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,IAAY,EAAE,gBAAwB;QAC1D,MAAM,MAAM,GAAG,oBAAM,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAA;QAC/C,MAAM,MAAM,GAAG,IAAI,mBAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAE1C,OAAO;QAEP,OAAO,MAAM,CAAA;IACf,CAAC;IAED,MAAM,CAAC,MAAM;QACX,OAAO,CACL,mBAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,GAAG,mBAAQ,CAAC,YAAY,EAAE,GAAG,mBAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,mBAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAChH,CAAA;IACH,CAAC;CACF;AA1BD,8BA0BC"}
@@ -0,0 +1 @@
1
+ {"program":{"fileNames":["../node_modules/typescript/lib/lib.es6.d.ts","../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.dom.iterable.d.ts","../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../node_modules/typescript/lib/lib.scripthost.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../src/common/types.ts","../src/common/constants.ts","../src/common/TextIO.ts","../src/fts/Vertex.ts","../src/fts/TextureContainer.ts","../src/fts/Polygon.ts","../src/common/helpers.ts","../src/common/BinaryIO.ts","../src/common/Color.ts","../src/common/Light.ts","../src/dlf/DlfHeader.ts","../src/dlf/Fog.ts","../src/dlf/InteactiveObject.ts","../src/dlf/PathHeader.ts","../src/dlf/Pathway.ts","../src/dlf/Scene.ts","../src/dlf/DLF.ts","../src/fts/AnchorData.ts","../src/fts/Anchor.ts","../src/fts/SceneInfo.ts","../src/fts/Cell.ts","../src/fts/FtsHeader.ts","../src/fts/TextureVertex.ts","../src/fts/PortalPolygon.ts","../src/fts/Portal.ts","../src/fts/EPData.ts","../src/fts/RoomData.ts","../src/fts/Room.ts","../src/fts/RoomDistance.ts","../src/fts/SceneHeader.ts","../src/fts/UniqueHeader.ts","../src/fts/FTS.ts","../src/llf/LightingHeader.ts","../src/llf/LlfHeader.ts","../src/llf/LLF.ts","../src/ftl/FtlHeader.ts","../src/ftl/FTL.ts","../src/tea/TeaHeader.ts","../src/tea/OldKeyFrame.ts","../src/tea/NewKeyFrame.ts","../src/tea/TEA.ts","../src/index.ts","../src/types.ts","../src/utils.ts","../node_modules/minimist-lite/index.d.ts","../node_modules/yaml/dist/parse/line-counter.d.ts","../node_modules/yaml/dist/errors.d.ts","../node_modules/yaml/dist/doc/applyReviver.d.ts","../node_modules/yaml/dist/log.d.ts","../node_modules/yaml/dist/nodes/toJS.d.ts","../node_modules/yaml/dist/nodes/Scalar.d.ts","../node_modules/yaml/dist/nodes/Collection.d.ts","../node_modules/yaml/dist/nodes/YAMLMap.d.ts","../node_modules/yaml/dist/nodes/YAMLSeq.d.ts","../node_modules/yaml/dist/schema/types.d.ts","../node_modules/yaml/dist/schema/Schema.d.ts","../node_modules/yaml/dist/doc/createNode.d.ts","../node_modules/yaml/dist/nodes/addPairToJSMap.d.ts","../node_modules/yaml/dist/nodes/Pair.d.ts","../node_modules/yaml/dist/schema/tags.d.ts","../node_modules/yaml/dist/options.d.ts","../node_modules/yaml/dist/stringify/stringify.d.ts","../node_modules/yaml/dist/nodes/Node.d.ts","../node_modules/yaml/dist/parse/cst-scalar.d.ts","../node_modules/yaml/dist/parse/cst-stringify.d.ts","../node_modules/yaml/dist/parse/cst-visit.d.ts","../node_modules/yaml/dist/parse/cst.d.ts","../node_modules/yaml/dist/nodes/Alias.d.ts","../node_modules/yaml/dist/doc/Document.d.ts","../node_modules/yaml/dist/doc/directives.d.ts","../node_modules/yaml/dist/compose/composer.d.ts","../node_modules/yaml/dist/parse/lexer.d.ts","../node_modules/yaml/dist/parse/parser.d.ts","../node_modules/yaml/dist/public-api.d.ts","../node_modules/yaml/dist/schema/yaml-1.1/omap.d.ts","../node_modules/yaml/dist/schema/yaml-1.1/set.d.ts","../node_modules/yaml/dist/visit.d.ts","../node_modules/yaml/dist/index.d.ts","../src/bin/helpers.ts","../src/bin/convert.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts"],"fileInfos":["721cec59c3fef87aaf480047d821fb758b3ec9482c4129a54631e6e25e432a31",{"version":"8730f4bf322026ff5229336391a18bcaa1f94d4f82416c8b2f3954e2ccaae2ba","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","4b421cbfb3a38a27c279dec1e9112c3d1da296f77a1a85ddadf7e7a425d45d18","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9",{"version":"3aafcb693fe5b5c3bd277bd4c3a617b53db474fe498fc5df067c5603b1eebde7","affectsGlobalScope":true},{"version":"f3d4da15233e593eacb3965cde7960f3fddf5878528d882bcedd5cbaba0193c7","affectsGlobalScope":true},{"version":"7fac8cb5fc820bc2a59ae11ef1c5b38d3832c6d0dfaec5acdb5569137d09a481","affectsGlobalScope":true},{"version":"097a57355ded99c68e6df1b738990448e0bf170e606707df5a7c0481ff2427cd","affectsGlobalScope":true},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"5f406584aef28a331c36523df688ca3650288d14f39c5d2e555c95f0d2ff8f6f","affectsGlobalScope":true},{"version":"22f230e544b35349cfb3bd9110b6ef37b41c6d6c43c3314a31bd0d9652fcec72","affectsGlobalScope":true},{"version":"7ea0b55f6b315cf9ac2ad622b0a7813315bb6e97bf4bb3fbf8f8affbca7dc695","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"eb26de841c52236d8222f87e9e6a235332e0788af8c87a71e9e210314300410a","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"5e5e095c4470c8bab227dbbc61374878ecead104c74ab9960d3adcccfee23205","affectsGlobalScope":true},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"2768ef564cfc0689a1b76106c421a2909bdff0acbe87da010785adab80efdd5c","affectsGlobalScope":true},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true},{"version":"f4d0db7c6862173eacb80e23b838ae847a2a9e76c9e230f76f1ea5bb3dcfe43e","signature":"04225f21cf786e6692cd7dd675d86ca2171ca8cc78d8b8649828313852af1c39"},{"version":"37c06c4fb8c86414b7dc9c2e6d6288ca219fe33c79decd3c3fc52ac9a5740039","signature":"24ce33542d3760d3f0a29ec27649916b18cad272e54229f42fa3129093e7adab"},{"version":"f9c79415a28f44375d9aeeaa27078c4b99a48a1247b2fd8124d1594076029f32","signature":"56c0ea62f72480429d843e1333f38f0b7b2cafe343203230b16501d96354cfd9"},{"version":"fbbb8c3f18a31e50aa175348a1cf55290de38e98b56b4ab902e828654370f857","signature":"db27faad52391b8add333c479589979e1d189686933a3e988fb31379703a7353"},{"version":"00714b9d98bf0016499d97d1e361fcbdaa9e8243e2ed4c61632823a764a6da7d","signature":"72a4a72543809eabfe19f4f91360cc9b17ae3e1eed1d47dd8d537949026c235a"},{"version":"54b305142b1bae64f8c786b357a106023c175b7db4e15b1fbd3e8cfd8415f1ee","signature":"2914787be1cc32f04a4b6e77a8f270f988bf4576ff804a752249165dcb70a7d1"},{"version":"e818908408f27a44f6fbecd13158fbd63cd95692e0c3c6f73c9f34f4ad391ca3","signature":"48921879f4282648de6657f270cf405716885436306f07118312a3787c212226"},{"version":"9a016264e762bf9340516836055af2feae2c42738f4a65a16740b31e9237652e","signature":"4b697b4ebfdd528c87152cd398b19a358b1023916e5d37ffa315f77b14793a0e"},{"version":"07f885391953a01d209602bb1515d8f2549f729e32cc28e69cffbd513f25f132","signature":"c7566e8713f98601a79f81966d02a6c7bc1c31e3695dd1512f101a3545be9807"},{"version":"55d95431f8deaf3a4dd11520d25a4d40458f9da77028a1431b9bb859c0edaed3","signature":"f96ea3385404b6bbb7e9a636d5a8325e86be2243323def9872b313ec396e83bf"},{"version":"ae112fa4155f4651abfde2f522a070464b4b541df4c6a08e70c41a5871539d7c","signature":"c32afef19594a107ff69eb2d8138096ebd1b2fe84292b1a8c2a6bd4a2eaab608"},{"version":"d5c5f471c430b14405b8a4000b3f99d3c7a6dee28fde107accc59f5f9e994974","signature":"b0a74e955a0dbfec193051b9164b524c3ffb1aee0468eb287344a4a40217fd4f"},{"version":"91a4fa0a165e77848c3a426788035a0dda541e6a478fc25542eda3053606eb58","signature":"09cc471cb4cb3933e792770d456c70c0dbf8aaf701539c23c8281fedf6391e32"},{"version":"a519007c8ee5854262ed2f6cd61ba33fdd16dd967918b3aa527dc149a1e76bbe","signature":"0dc404f2b09055bc120d38eecda5aa82ffb33b43bfd5e6303f0f6d1b87a5ca86"},{"version":"d5d795eb7c62416bc459363416e6cd5fdfe7f25145ac3a0f986f23d593a4b45c","signature":"e2dec80c16f9d18c160ede346d3249055686a9b32848f25d650e940d88b2ea5e"},{"version":"27b8eb0f583a188dde890c4bb3f68cdda598c20d0d8c4cbbb1150f1faad0c6c8","signature":"c8f74b8a163db7a8779e2326ffdd047015120e59cf98037d6c8175ff5f019039"},{"version":"acdabcc743df769e91f9752f63ff8fef5051b5f3d5d017ed751c6ad792841820","signature":"8bcc3f025550f9187bad83f28ebc39babe8aa6afc44a50040bf8fa99556470d2"},{"version":"e56dc6068a426212be3d97a13b6ed0b6d59db83d163b7dc2aac2e6cf68a6e4bb","signature":"4b715e90a7763cb5482b593b1a9a7e5548c0d0e7f35e7ab3edc6e1b6c6ca6cac"},{"version":"eb847475dee63e282d7cc46e4ac20ff2c14d117c68d51292d4a234ed8ab8eedc","signature":"05a1d5bc501eafa520fde3d0bc0a8f33a6350d523c44e82d355b9d9d01a84941"},{"version":"cad7f2dcafea9cea7f4f954fceb8ce938fc6ee7cfd6f3d0b9638959070401299","signature":"6aa4a0afa562bfb3695eda80984f910af43a9fd86d0dcaf56f3dd8fdc37662a7"},{"version":"33a53c9cad85bf04c7a07395ee1aca3048d2ba1fb63c9c156d58c0ad9555ae79","signature":"430f0516d5ff8428ac49bcb6ce8292f66fbc47b27e434406e0de32dbfa19ce1b"},{"version":"e4a714adb073410b1cbd3e4c357bf61be10349ed2dbc41c0803f5b9a6b25785e","signature":"1b67c07436f14b440b7347103f15e73afb72d9fbfaedd1c9115a96c8807db0d6"},{"version":"2af698ef2d3441199f0796d74db2f061b45f9bfcd2b31ae59eb3e8fac65417ac","signature":"a7a14c2286ff790518e36e4983747dd718b59eefe2ca0024a81ba01bde900809"},{"version":"2502dbdfb2e4467ab9ccc061fc1235bb5f4350c22b6b7e71fb702d1ca677e777","signature":"b3e333bf78c8cebddc3b251abc5ba2f27930ec9ebc76861c53ca0bd9f5074c7f"},{"version":"2ab920b0e3348ee961141be6fc9a210c5f1ea38441aa8619d69849c151d31e00","signature":"edafd1391f1c27035dd8da6526b03ac735d9b82b642f8208776c863b8fe9d314"},{"version":"2d19749766faf1382cc9725623e222b6f88d7e0937c426722fff54ab2f845a87","signature":"70eb27c87573a04667e60cbb8c2e8ba89a9e79df9854c6ee8af848b28a2d27d8"},{"version":"21ef44960a3d458ceab991dac638863e476665767b2c4c4fc0f26623468b227d","signature":"69ea785d20457a878ac751f43444d041e6bdf1453795141bb8cd8eb26c3fe5ad"},{"version":"322e8525c6c9873f4ada3187ec400111d92a0088a6da4b078df0869999e99156","signature":"60760aed6dd23950fa5fb9c7a592fcef69a21b9166af6d85777ad37f2ca42920"},{"version":"b9d7460eae1ff1d10fdca240f273cb06b453f723c63f0033d6b970c588e60fca","signature":"05bfc335276536eb7eeae8463924a697222e2e5463d0a51bc983e75ac6b0a408"},{"version":"f7bd14111e1c8215cdd6306368df61f082237518e471a75158111aff85a4c555","signature":"99760deb11d393d8e7c431c13ce105cd7e28a0f0ba9aae85ed9cbeb3fc2d5493"},{"version":"e0747978087d7156f984d996a58eb586ffedd6e411b5f5e0a66637a8d8676e31","signature":"eaf75929d6b3f21b869939797467088ea0b502af8ce273fda39a68a617e5a5f5"},{"version":"b6ea23cdf2b750a31c3fcf207fedf418c43500760d5f5d0db368ed88fe87419f","signature":"36ed1095c8815a9ec51d2fceb72498061b3098e1ee3b5c5fded64ce715260144"},{"version":"7b99cca9d37504b31d31f20b656490b6d734bdf0b58e4cd0fcb68bb5e44cfcc1","signature":"e7e387a74d5abf2777f287bb2c858d10cc3fa8c69a9dc046e21505266e149e86"},{"version":"def4ba0d5c0eda5ff36591277c49552f695da014c9bad6bf6671be8069a40b2d","signature":"b055c989d768441817ae9f689b23a11639509d05f2ddc8637422705f5b4b6097"},{"version":"9d8c0c073a5622b291cb40a0379ca78404005e5ce62d34375900bd0ab6bd5edd","signature":"9dd909ffbb43a97e4f89a7f8b5353b265256a4a1b5823bdae0981d866fa0f2bf"},{"version":"34d0d74e09f5c2fd65d2e3862ff482f103674772ddae6e00bd441a66a1300dd9","signature":"3edd98f53b82cd7a4d6882aa3003ef57aaf18af0c9b50f9fcc846bcee163f286"},{"version":"382b294c7647e7f159b07863870871f4f2822626f91e8e928dffbbde9c709563","signature":"8ea240f12ed4c3ba8de0afeb6e8e490bd94e8948f3f4e4bc5a100157328e93a9"},{"version":"3764667fba0e56de583daf9fbf8b1cdc2e891b1d717717cfa0957db52d5bc68b","signature":"f58c28bda6d6420f66967d7c12933cd8deb9a10e5164e6d8e65f6c3d17c84e23"},{"version":"8fad92c6e64e132b08ec3d193bdf42e3f01c5a8fef04c6e3a65d4f32bc0ab347","signature":"f42bd34ea947fafb587c73711058621f408b592bd14afa48dba367a5b290840e"},{"version":"aae8fa22b684cf6a5d54ba34c081998a71d4e9f2de84deea3c0a887aaf1a8a8d","signature":"1c654a2ec509a0d782024bbe3ab9a11f94ef56a441b789f7710b1f73a537331d"},{"version":"4484b1eb5302a2ca26d69b2f766b8a86932acb237cdc89dd141d600ad505d0cd","signature":"574bfda213c835eecfbfd3bc5a03e4e1ce55c224f7dfef75447599de2c4f8e75"},{"version":"a7c442a4dd0f6212db70468f89c1702476618a08d5ab1503ded96732bf4dcba7","signature":"0b1131a9c4f6c629f1f46a5d5f74c1d38b63fb8d078bc226bf39c681bc92e59d"},{"version":"fd58d925ab0c878b8a1432979e6fac3ec6735c97446fd59f12b13a95fb5e6a34","signature":"232f9b696355bf228077445ff85d8c0c5b1fff4a0c0667d127b1c90e4af81e4a"},{"version":"32c7249252f746f1c1c46e379981d360ac880efe9d96910a464e3d1d91f50208","signature":"5a38cb26bb0bccc7511f46e4dc46a6b3088a9a4d1896f5c49e746c7efd1173e9"},"f45a31ff499c535733fff759ef39ef806268e6b345187302f17d84aa4c760e53","3dfcd0a3bfa70b53135db3cf2e4ddcb7eccc3e4418ce833ae24eecd06928328f","ed05b0475f45612ba60ec24d8d7ce267b1f430cc7d29803b34c59c50682ac39a","e110d49f8da0887aaf35aa39da8381d98c01d08ca59802851c4663be5e1a68d0","4abaa0c56f377b000a6258395bf5ddfaace4632ecc15c1fddb2ed2d630d01c25","2bb86e343b4109c784b11070735fa881af5c870a409a3b87b13800ca2afef421","fc9d4e784c9e7569911d8a6a01e1de90617942639c7c260beffdef1548b1ce06","37c1aeea4ec8df37bbe5d96bda46831acab3f70b2001ec9f51cb3146a101de89","6f9a621fe133fe4ffa19005a23f0e924a1f2dc2c2c4c10c647ca7d5a0840f683","df486e591f21d229d75df323fb9cf34f4b5cdbccee6a9b42227be738a13755d6","dcba47d8aae2966859192252382e76793104c16c615f2445bd3b9e1191082ae0","ae8189514ed306971ac9aa7d917487ee51dc3590aa5735f23c1d71811c373ea6","6de9d8858034d3197c1525e1c29c942cf7912f807d4d7f14dea247b7c05b59b0","394b4927dcc6eda44eb759f395da17b6e07f4daf272216b5cfc92eb32239f561","1adcc285d2d477ec6c51d0282d891fdf9d04a5fa8dfa479eab153ae17376f1b4","198f902c2fde1b362cb300f6fdbddc41613016352515c513e3b72810c06d0af8","fa42fa946bb5743076ef0b586281e2be5c282f5a102264c8f9a83996ff389cc0","2e19ef4f8860aecc4ca8dded229119910618f6615628da668ee1d730ca71a853","ebdafee23f4e1cec975aade893b7b68714c0e26cf6a3bbf98e7479b366432833","960923ce078ecfef6e5c34468cdba5c552b064c0db7cb0fdd3eafd1bb9d3d7e9","42f034630b3a866d4a88b37cf0f8357b36af2f7298b319d536b7413ba99f979b","defc90cd8bd3948b6584baad669b67528b8bf8374de012524ecc10fb290de00f","ea1b9887cd95358de9134117114674515cae5fd371fd7013a8ba4ccf19e1f570","052854468e3d8142f440fa9a0da1d743abef903dff09597025d07703c25b601e","293f78a187f91b0b9713e9aacce90e9fda4a88cea9fe6a8aa190ff45d9b48f28","325994b6f6c7598c73bbd0294bf1e3f1e229772669b3c8a08fe3170442f600b8","42003247f4b72318ce5dbe1929d59bc22717f435343ba49b91b5a021ca67ea31","843563f951d16e850a0be806010f630a4a71f0a55810bb9aced67c6d7774bf2f","9af1c478e5403b39b922df9132d779bc6e1ef88cafec17fcecf26356d90ecbd6","a95a6135f2d195c93d930ba01049c33579328e55612477c0ae5652429d3974ad","24ead5861f4400218aeaafa477082022f244e3df46d18831411f3a47fc3ff515","65ce9342063fcf793e7baea7526a5a9a2f6ce05dea0cf4ae726d02eae2b98fa3","927f1e5782f00bae2cf8bcb0d7fae24e161e56f6469c5b5c83844be0d38eadc0","5a1755f317ac2c0d708fbf7c1dbf076ba3a31f624c534b44275c9c43033fdc2e",{"version":"244f400a66f2f197fd6eab8940bab706924ac250d22e6ea07e90a41cdaa0a788","signature":"50b3d9991854a67d73c5c21acfbcac1ff507e0551c0a34ef1a00b2a5c0f8e95d"},{"version":"3bc6b5c04737b1ea079c804f5f110d5919b624492f9fbc24a83ab83a8da9b587","signature":"56d175a186f63a2b930b5355482b04520c24893fde6aa7e45742b55b0a38eea1"},"7e771891adaa85b690266bc37bd6eb43bc57eecc4b54693ead36467e7369952a","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"ca72190df0eb9b09d4b600821c8c7b6c9747b75a1c700c4d57dc0bb72abc074c","affectsGlobalScope":true},"21a167fec8f933752fb8157f06d28fab6817af3ad9b0bdb1908a10762391eab9",{"version":"bb65c6267c5d6676be61acbf6604cf0a4555ac4b505df58ac15c831fcbff4e3e","affectsGlobalScope":true},"0c0cee62cb619aed81133b904f644515ba3064487002a7da83fd8aa07b1b4abd","5a94487653355b56018122d92392beb2e5f4a6c63ba5cef83bbe1c99775ef713",{"version":"d5135ad93b33adcce80b18f8065087934cdc1730d63db58562edcf017e1aad9b","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","afcc1c426b76db7ec80e563d4fb0ba9e6bcc6e63c2d7e9342e649dc56d26347f","bb9c4ffa5e6290c6980b63c815cdd1625876dadb2efaf77edbe82984be93e55e","75ecef44f126e2ae018b4abbd85b6e8a2e2ba1638ebec56cc64274643ce3567b","f30bb836526d930a74593f7b0f5c1c46d10856415a8f69e5e2fc3db80371e362","14b5aa23c5d0ae1907bc696ac7b6915d88f7d85799cc0dc2dcf98fbce2c5a67c","5c439dafdc09abe4d6c260a96b822fa0ba5be7203c71a63ab1f1423cd9e838ea",{"version":"6b526a5ec4a401ca7c26cfe6a48e641d8f30af76673bad3b06a1b4504594a960","affectsGlobalScope":true},{"version":"816ad2e607a96de5bcac7d437f843f5afd8957f1fa5eefa6bba8e4ed7ca8fd84","affectsGlobalScope":true},"cec36af22f514322f870e81d30675c78df82ae8bf4863f5fd4e4424c040c678d","d903fafe96674bc0b2ac38a5be4a8fc07b14c2548d1cdb165a80ea24c44c0c54","b01a80007e448d035a16c74b5c95a5405b2e81b12fabcf18b75aa9eb9ef28990","04eb6578a588d6a46f50299b55f30e3a04ef27d0c5a46c57d8fcc211cd530faa","dbe5aa5a5dd8bd1c6a8d11b1310c3f0cdabaacc78a37b394a8c7b14faeb5fb84","2c828a5405191d006115ab34e191b8474bc6c86ffdc401d1a9864b1b6e088a58",{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true},"d076fede3cb042e7b13fc29442aaa03a57806bc51e2b26a67a01fbc66a7c0c12","7c013aa892414a7fdcfd861ae524a668eaa3ede8c7c0acafaf611948122c8d93","b0973c3cbcdc59b37bf477731d468696ecaf442593ec51bab497a613a580fe30",{"version":"4989e92ba5b69b182d2caaea6295af52b7dc73a4f7a2e336a676722884e7139d","affectsGlobalScope":true},{"version":"b3624aed92dab6da8484280d3cb3e2f4130ec3f4ef3f8201c95144ae9e898bb6","affectsGlobalScope":true},"5153a2fd150e46ce57bb3f8db1318d33f6ad3261ed70ceeff92281c0608c74a3","210d54cd652ec0fec8c8916e4af59bb341065576ecda039842f9ffb2e908507c","36b03690b628eab08703d63f04eaa89c5df202e5f1edf3989f13ad389cd2c091","0effadd232a20498b11308058e334d3339cc5bf8c4c858393e38d9d4c0013dcf","25846d43937c672bab7e8195f3d881f93495df712ee901860effc109918938cc","fd93cee2621ff42dabe57b7be402783fd1aa69ece755bcba1e0290547ae60513","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff","69ee23dd0d215b09907ad30d23f88b7790c93329d1faf31d7835552a10cf7cbf","44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","23b89798789dffbd437c0c423f5d02d11f9736aea73d6abf16db4f812ff36eda","213fc4f2b172d8beb74b77d7c1b41488d67348066d185e4263470cbb010cd6e8",{"version":"970a90f76d4d219ad60819d61f5994514087ba94c985647a3474a5a3d12714ed","affectsGlobalScope":true},"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","4c8525f256873c7ba3135338c647eaf0ca7115a1a2805ae2d0056629461186ce","3c13ef48634e7b5012fcf7e8fce7496352c2d779a7201389ca96a2a81ee4314d","5d0a25ec910fa36595f85a67ac992d7a53dd4064a1ba6aea1c9f14ab73a023f2",{"version":"f0900cd5d00fe1263ff41201fb8073dbeb984397e4af3b8002a5c207a30bdc33","affectsGlobalScope":true},{"version":"f7db71191aa7aac5d6bc927ed6e7075c2763d22c7238227ec0c63c8cf5cb6a8b","affectsGlobalScope":true},"06d7c42d256f0ce6afe1b2b6cfbc97ab391f29dadb00dd0ae8e8f23f5bc916c3","ec4bd1b200670fb567920db572d6701ed42a9641d09c4ff6869768c8f81b404c","e59a892d87e72733e2a9ca21611b9beb52977be2696c7ba4b216cbbb9a48f5aa",{"version":"da26af7362f53d122283bc69fed862b9a9fe27e01bc6a69d1d682e0e5a4df3e6","affectsGlobalScope":true},"8a300fa9b698845a1f9c41ecbe2c5966634582a8e2020d51abcace9b55aa959e",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"e9a8d4274033cb520ee12d6f68d161ba2b9128b87399645d3916b71187032836"],"options":{"allowSyntheticDefaultImports":true,"declaration":true,"esModuleInterop":true,"module":1,"noImplicitAny":true,"outDir":"./","skipLibCheck":true,"sourceMap":true,"strict":true,"target":2},"fileIdsList":[[127,173],[130,173],[131,136,164,173],[132,143,144,151,161,172,173],[132,133,143,151,173],[134,173],[135,136,144,152,173],[136,161,169,173],[137,139,143,151,173],[138,173],[139,140,173],[143,173],[141,143,173],[143,144,145,161,172,173],[143,144,145,158,161,164,173],[173,177],[173],[146,151,161,172,173],[143,144,146,147,151,161,169,172,173],[146,148,161,169,172,173],[127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179],[143,149,173],[150,172,173],[139,143,151,161,173],[152,173],[153,173],[130,154,173],[155,171,173,177],[156,173],[157,173],[143,158,159,173],[158,160,173,175],[131,143,161,162,163,164,173],[131,161,163,173],[161,162,173],[164,173],[165,173],[143,167,168,173],[167,168,173],[136,151,161,169,173],[170,173],[151,171,173],[131,146,157,172,173],[136,173],[161,173,174],[173,175],[173,176],[131,136,143,145,154,161,172,173,175,177],[161,173,178],[93,107,109,113,115,116,173],[93,97,99,100,102,105,107,109,114,116,173],[101,102,109,115,173],[115,173],[92,173],[92,93,97,99,100,101,102,105,106,107,109,113,114,115,117,118,119,120,121,122,123,173],[96,97,99,100,108,109,113,115,173],[102,109,173],[97,99,100,105,108,113,114,115,173],[96,97,99,100,102,103,104,108,109,113,114,173],[96,109,113,173],[96,97,98,102,105,108,109,113,173],[96,99,105,173],[108,109,115,173],[92,94,95,97,101,102,105,106,109,116,173],[93,97,109,113,173],[113,173],[110,111,112,173],[94,107,109,115,117,173],[101,105,107,109,173],[101,107,173],[97,99,100,102,103,107,108,109,173],[96,100,101,124,173],[96,97,99,101,102,105,108,173],[107,114,115,173],[97,99,100,105,109,114,115,173],[88,91,124,125,173],[48,124,131,144,153,173],[47,48,49,53,173],[54,131,173],[47,53,54,55,173],[48,173],[47,173],[47,48,50,52,173],[53,54,56,57,58,59,60,61,62,131,173],[47,48,53,54,63,131,173],[47,53,54,55,131,173],[47,53,54,131,173],[47,53,54,55,63,173],[53,54,131,173],[54,82,131,173],[54,83,173],[54,64,131,173],[47,54,65,131,173],[52,53,54,66,131,173],[48,51,52,53,54,65,67,68,71,74,75,76,77,131,173],[48,53,54,78,131,173],[47,48,50,51,53,54,131,173],[54,70,131,173],[47,53,54,69,131,173],[53,54,72,73,131,173],[53,54,74,131,173],[47,54,131,173],[47,48,53,54,78,131,173],[54,67,131,173],[47,54,55,131,173],[63,78,81,83,87,173],[53,54,55,56,79,80,131,173],[54,55,173],[48,53,54,81,131,173],[48,54,85,87,131,173],[54,87,131,173],[47,48,54,84,85,86,131,173],[48,54,87,131,173],[47,48,50,51,52,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,173],[47,48,53,173],[48,131],[47],[54,131],[47,54,55],[47,50,52],[56,57,58,59,60,61,62,131],[47,54,63,131],[47,54,55,131],[47,54,131],[47,54,55,63],[82,131],[54,83],[54,64,131],[47,54,65,131],[52,54,131],[51,52,65,67,68,71,74,75,76,77,131],[54,78,131],[47,48,50,54,131],[54,70,131],[47,54,69,131],[54,72,131],[54,74,131],[47,54,78,131],[54,67,131],[63,78,81,83,87],[55,56,80,131],[54,55],[54,81,131],[54,85,87,131],[54,87,131],[47,84,85,86,131],[47,48,50,51,52,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81],[47,48,53]],"referencedMap":[[127,1],[128,1],[130,2],[131,3],[132,4],[133,5],[134,6],[135,7],[136,8],[137,9],[138,10],[139,11],[140,11],[142,12],[141,13],[143,12],[144,14],[145,15],[129,16],[179,17],[146,18],[147,19],[148,20],[180,21],[149,22],[150,23],[151,24],[152,25],[153,26],[154,27],[155,28],[156,29],[157,30],[158,31],[159,31],[160,32],[161,33],[163,34],[162,35],[164,36],[165,37],[166,17],[167,38],[168,39],[169,40],[170,41],[171,42],[172,43],[173,44],[174,45],[175,46],[176,47],[177,48],[178,49],[91,17],[9,17],[10,17],[14,17],[13,17],[3,17],[15,17],[16,17],[17,17],[18,17],[19,17],[20,17],[21,17],[22,17],[4,17],[5,17],[26,17],[23,17],[24,17],[25,17],[27,17],[28,17],[29,17],[6,17],[30,17],[31,17],[32,17],[33,17],[7,17],[37,17],[34,17],[35,17],[36,17],[38,17],[8,17],[39,17],[44,17],[45,17],[40,17],[41,17],[42,17],[43,17],[2,17],[1,17],[46,17],[12,17],[11,17],[117,50],[115,51],[94,17],[103,52],[116,53],[93,54],[124,55],[95,17],[114,56],[98,57],[109,58],[105,59],[97,60],[99,61],[100,61],[104,62],[96,63],[107,64],[110,65],[111,66],[112,66],[113,67],[118,17],[92,17],[119,66],[120,68],[102,69],[106,70],[101,71],[121,72],[122,73],[108,74],[123,75],[126,76],[125,77],[54,78],[55,79],[56,80],[49,81],[48,82],[53,83],[47,17],[63,84],[57,85],[58,86],[59,87],[60,88],[61,87],[62,89],[83,90],[82,91],[65,92],[64,93],[67,94],[72,79],[78,95],[68,96],[52,97],[71,98],[70,99],[74,100],[73,101],[75,102],[76,103],[66,104],[51,79],[69,105],[77,79],[50,79],[88,106],[81,107],[79,108],[80,109],[86,110],[85,111],[87,112],[84,113],[89,114],[90,115]],"exportedModulesMap":[[127,1],[128,1],[130,2],[131,3],[132,4],[133,5],[134,6],[135,7],[136,8],[137,9],[138,10],[139,11],[140,11],[142,12],[141,13],[143,12],[144,14],[145,15],[129,16],[179,17],[146,18],[147,19],[148,20],[180,21],[149,22],[150,23],[151,24],[152,25],[153,26],[154,27],[155,28],[156,29],[157,30],[158,31],[159,31],[160,32],[161,33],[163,34],[162,35],[164,36],[165,37],[166,17],[167,38],[168,39],[169,40],[170,41],[171,42],[172,43],[173,44],[174,45],[175,46],[176,47],[177,48],[178,49],[91,17],[9,17],[10,17],[14,17],[13,17],[3,17],[15,17],[16,17],[17,17],[18,17],[19,17],[20,17],[21,17],[22,17],[4,17],[5,17],[26,17],[23,17],[24,17],[25,17],[27,17],[28,17],[29,17],[6,17],[30,17],[31,17],[32,17],[33,17],[7,17],[37,17],[34,17],[35,17],[36,17],[38,17],[8,17],[39,17],[44,17],[45,17],[40,17],[41,17],[42,17],[43,17],[2,17],[1,17],[46,17],[12,17],[11,17],[117,50],[115,51],[94,17],[103,52],[116,53],[93,54],[124,55],[95,17],[114,56],[98,57],[109,58],[105,59],[97,60],[99,61],[100,61],[104,62],[96,63],[107,64],[110,65],[111,66],[112,66],[113,67],[118,17],[92,17],[119,66],[120,68],[102,69],[106,70],[101,71],[121,72],[122,73],[108,74],[123,75],[125,116],[54,117],[55,118],[56,119],[48,117],[53,120],[63,121],[57,122],[58,123],[59,124],[60,125],[61,124],[62,118],[83,126],[82,127],[65,128],[64,129],[67,130],[72,118],[78,131],[68,132],[52,133],[71,134],[70,135],[74,136],[73,137],[75,124],[76,138],[66,139],[51,118],[69,123],[77,118],[50,118],[88,140],[81,141],[79,142],[80,143],[86,144],[85,145],[87,146],[84,145],[89,147],[90,148]],"semanticDiagnosticsPerFile":[127,128,130,131,132,133,134,135,136,137,138,139,140,142,141,143,144,145,129,179,146,147,148,180,149,150,151,152,153,154,155,156,157,158,159,160,161,163,162,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,91,9,10,14,13,3,15,16,17,18,19,20,21,22,4,5,26,23,24,25,27,28,29,6,30,31,32,33,7,37,34,35,36,38,8,39,44,45,40,41,42,43,2,1,46,12,11,117,115,94,103,116,93,124,95,114,98,109,105,97,99,100,104,96,107,110,111,112,113,118,92,119,120,102,106,101,121,122,108,123,126,125,54,55,56,49,48,53,47,63,57,58,59,60,61,62,83,82,65,64,67,72,78,68,52,71,70,74,73,75,76,66,51,69,77,50,88,81,79,80,86,85,87,84,89,90]},"version":"4.9.3"}
@@ -0,0 +1,33 @@
1
+ export type { ArxColor } from './common/Color';
2
+ export type { ArxLight } from './common/Light';
3
+ export type { ArxVector3, ArxRotation, ArxQuaternion } from './common/types';
4
+ export type { ArxPath, ArxDLF } from './dlf/DLF';
5
+ export type { ArxDlfHeader } from './dlf/DlfHeader';
6
+ export type { ArxFog } from './dlf/Fog';
7
+ export type { ArxInteractiveObject } from './dlf/InteactiveObject';
8
+ export type { ArxPathHeader } from './dlf/PathHeader';
9
+ export type { ArxPathway } from './dlf/Pathway';
10
+ export type { ArxScene } from './dlf/Scene';
11
+ export type { ArxAnchor } from './fts/Anchor';
12
+ export type { ArxAnchorData } from './fts/AnchorData';
13
+ export type { ArxCell } from './fts/Cell';
14
+ export type { ArxEPData } from './fts/EPData';
15
+ export type { ArxFTS } from './fts/FTS';
16
+ export type { ArxFtsHeader } from './fts/FtsHeader';
17
+ export type { ArxPolygon } from './fts/Polygon';
18
+ export type { ArxPortal } from './fts/Portal';
19
+ export type { ArxPortalPolygon } from './fts/PortalPolygon';
20
+ export type { ArxRoom } from './fts/Room';
21
+ export type { ArxRoomData } from './fts/RoomData';
22
+ export type { ArxRoomDistance } from './fts/RoomDistance';
23
+ export type { ArxSceneHeader } from './fts/SceneHeader';
24
+ export type { ArxSceneInfo } from './fts/SceneInfo';
25
+ export type { ArxTextureContainer } from './fts/TextureContainer';
26
+ export type { ArxTextureVertex } from './fts/TextureVertex';
27
+ export type { ArxUniqueHeader } from './fts/UniqueHeader';
28
+ export type { ArxVertex } from './fts/Vertex';
29
+ export type { ArxLLF } from './llf/LLF';
30
+ export type { ArxLightingHeader } from './llf/LightingHeader';
31
+ export type { ArxLlfHeader } from './llf/LlfHeader';
32
+ export { ArxPolygonFlags, ArxZoneFlags } from './common/constants';
33
+ export { ArxLightFlags } from './common/Light';
package/dist/types.js ADDED
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ // ----------------
3
+ // types
4
+ // ----------------
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ArxLightFlags = exports.ArxZoneFlags = exports.ArxPolygonFlags = void 0;
7
+ // export type { ArxNewKeyFrame } from './tea/NewKeyFrame'
8
+ // export type { ArxOldKeyFrame } from './tea/OldKeyFrame'
9
+ // export type { ArxKeyFrame, ArxTEA, ArxTheaSample } from './tea/TEA'
10
+ // export type { ArxTeaHeader } from './tea/TeaHeader'
11
+ // ----------------
12
+ // enums
13
+ // ----------------
14
+ var constants_1 = require("./common/constants");
15
+ Object.defineProperty(exports, "ArxPolygonFlags", { enumerable: true, get: function () { return constants_1.ArxPolygonFlags; } });
16
+ Object.defineProperty(exports, "ArxZoneFlags", { enumerable: true, get: function () { return constants_1.ArxZoneFlags; } });
17
+ var Light_1 = require("./common/Light");
18
+ Object.defineProperty(exports, "ArxLightFlags", { enumerable: true, get: function () { return Light_1.ArxLightFlags; } });
19
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";AAAA,mBAAmB;AACnB,SAAS;AACT,mBAAmB;;;AAwCnB,0DAA0D;AAC1D,0DAA0D;AAC1D,sEAAsE;AACtE,sDAAsD;AAEtD,mBAAmB;AACnB,SAAS;AACT,mBAAmB;AAEnB,gDAAkE;AAAzD,4GAAA,eAAe,OAAA;AAAE,yGAAA,YAAY,OAAA;AACtC,wCAA8C;AAArC,sGAAA,aAAa,OAAA"}
@@ -0,0 +1,3 @@
1
+ export { getCellCoords } from './common/helpers';
2
+ export type { TripleOf, QuadrupleOf } from './common/types';
3
+ export { MAP_WIDTH_IN_CELLS, MAP_DEPTH_IN_CELLS } from './common/constants';
package/dist/utils.js ADDED
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MAP_DEPTH_IN_CELLS = exports.MAP_WIDTH_IN_CELLS = exports.getCellCoords = void 0;
4
+ var helpers_1 = require("./common/helpers");
5
+ Object.defineProperty(exports, "getCellCoords", { enumerable: true, get: function () { return helpers_1.getCellCoords; } });
6
+ var constants_1 = require("./common/constants");
7
+ Object.defineProperty(exports, "MAP_WIDTH_IN_CELLS", { enumerable: true, get: function () { return constants_1.MAP_WIDTH_IN_CELLS; } });
8
+ Object.defineProperty(exports, "MAP_DEPTH_IN_CELLS", { enumerable: true, get: function () { return constants_1.MAP_DEPTH_IN_CELLS; } });
9
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;AAAA,4CAAgD;AAAvC,wGAAA,aAAa,OAAA;AAItB,gDAA2E;AAAlE,+GAAA,kBAAkB,OAAA;AAAE,+GAAA,kBAAkB,OAAA"}
package/package.json ADDED
@@ -0,0 +1,54 @@
1
+ {
2
+ "name": "arx-convert",
3
+ "version": "5.0.0",
4
+ "description": "Converts various Arx Fatalis formats to JSON or YAML and back",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "engines": {
8
+ "npm": ">=8.0.0",
9
+ "node": ">=18.0.0"
10
+ },
11
+ "bin": {
12
+ "arx-convert": "dist/bin/convert.js"
13
+ },
14
+ "exports": {
15
+ ".": {
16
+ "default": "./dist/index.js",
17
+ "types": "./dist/index.d.ts"
18
+ },
19
+ "./utils": {
20
+ "default": "./dist/utils.js",
21
+ "types": "./dist/utils.d.ts"
22
+ },
23
+ "./types": {
24
+ "default": "./dist/types.js",
25
+ "types": "./dist/types.d.ts"
26
+ }
27
+ },
28
+ "scripts": {
29
+ "build": "tsc",
30
+ "dev": "tsc --watch",
31
+ "prepublishOnly": "npm run build"
32
+ },
33
+ "repository": {
34
+ "type": "git",
35
+ "url": "git+https://github.com/meszaros-lajos-gyorgy/arx-convert.git"
36
+ },
37
+ "author": "Lajos Meszaros <m_lajos@hotmail.com>",
38
+ "license": "GPL-3.0-or-later",
39
+ "bugs": {
40
+ "url": "https://github.com/meszaros-lajos-gyorgy/arx-convert/issues"
41
+ },
42
+ "homepage": "https://github.com/meszaros-lajos-gyorgy/arx-convert#readme",
43
+ "dependencies": {
44
+ "minimist-lite": "^2.2.1",
45
+ "yaml": "^2.1.3"
46
+ },
47
+ "devDependencies": {
48
+ "@types/node": "^18.11.9",
49
+ "typescript": "^4.9.3"
50
+ },
51
+ "keywords": [
52
+ "arx-fatalis"
53
+ ]
54
+ }