@tak-ps/node-cot 12.17.1 → 12.19.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 (129) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/lib/cot.js +1 -1
  3. package/dist/lib/cot.js.map +1 -1
  4. package/dist/lib/data-package.js +64 -16
  5. package/dist/lib/data-package.js.map +1 -1
  6. package/dist/lib/types/feature.js +3 -9
  7. package/dist/lib/types/feature.js.map +1 -1
  8. package/dist/lib/types/iconset.js +12 -4
  9. package/dist/lib/types/iconset.js.map +1 -1
  10. package/dist/lib/types/types.js +7 -6
  11. package/dist/lib/types/types.js.map +1 -1
  12. package/dist/lib/xml/basemap.js +1 -1
  13. package/dist/lib/xml/basemap.js.map +1 -1
  14. package/dist/lib/xml/iconset.js +29 -2
  15. package/dist/lib/xml/iconset.js.map +1 -1
  16. package/dist/package.json +1 -1
  17. package/dist/tsconfig.tsbuildinfo +1 -1
  18. package/lib/cot.ts +1 -1
  19. package/lib/data-package.ts +70 -17
  20. package/lib/types/feature.ts +3 -8
  21. package/lib/types/iconset.ts +14 -4
  22. package/lib/types/types.ts +8 -6
  23. package/lib/xml/basemap.ts +2 -2
  24. package/lib/xml/iconset.ts +36 -3
  25. package/lib/xml-document.ts +1 -1
  26. package/package.json +1 -1
  27. package/tsconfig.json +1 -0
  28. package/dist/test/basemaps.test.js +0 -16
  29. package/dist/test/basemaps.test.js.map +0 -1
  30. package/dist/test/chat.test.js +0 -97
  31. package/dist/test/chat.test.js.map +0 -1
  32. package/dist/test/cot-fileshare.test.js +0 -89
  33. package/dist/test/cot-fileshare.test.js.map +0 -1
  34. package/dist/test/cot-itak.test.js +0 -95
  35. package/dist/test/cot-itak.test.js.map +0 -1
  36. package/dist/test/cot-mma.test.js +0 -108
  37. package/dist/test/cot-mma.test.js.map +0 -1
  38. package/dist/test/cot-polyline.test.js +0 -98
  39. package/dist/test/cot-polyline.test.js.map +0 -1
  40. package/dist/test/cot-range-and-bearing.test.js +0 -98
  41. package/dist/test/cot-range-and-bearing.test.js.map +0 -1
  42. package/dist/test/cot-routes.test.js +0 -466
  43. package/dist/test/cot-routes.test.js.map +0 -1
  44. package/dist/test/cot-types.test.js +0 -7
  45. package/dist/test/cot-types.test.js.map +0 -1
  46. package/dist/test/cot-uas-tool.test.js +0 -286
  47. package/dist/test/cot-uas-tool.test.js.map +0 -1
  48. package/dist/test/cot-video.test.js +0 -196
  49. package/dist/test/cot-video.test.js.map +0 -1
  50. package/dist/test/cot_is.test.js +0 -353
  51. package/dist/test/cot_is.test.js.map +0 -1
  52. package/dist/test/data-package.test.js +0 -234
  53. package/dist/test/data-package.test.js.map +0 -1
  54. package/dist/test/diff.test.js +0 -73
  55. package/dist/test/diff.test.js.map +0 -1
  56. package/dist/test/flow-tags.test.js +0 -19
  57. package/dist/test/flow-tags.test.js.map +0 -1
  58. package/dist/test/force-delete.js +0 -46
  59. package/dist/test/force-delete.js.map +0 -1
  60. package/dist/test/from_geojson.test.js +0 -287
  61. package/dist/test/from_geojson.test.js.map +0 -1
  62. package/dist/test/newlines.test.js +0 -79
  63. package/dist/test/newlines.test.js.map +0 -1
  64. package/dist/test/reversal-geojson.test.js +0 -15
  65. package/dist/test/reversal-geojson.test.js.map +0 -1
  66. package/dist/test/reversal-proto.test.js +0 -54
  67. package/dist/test/reversal-proto.test.js.map +0 -1
  68. package/dist/test/stream.js +0 -10
  69. package/dist/test/stream.js.map +0 -1
  70. package/dist/test/taskings-mission.test.js +0 -140
  71. package/dist/test/taskings-mission.test.js.map +0 -1
  72. package/dist/test/util.test.js +0 -25
  73. package/dist/test/util.test.js.map +0 -1
  74. package/dist/test/validation.test.js +0 -13
  75. package/dist/test/validation.test.js.map +0 -1
  76. package/test/basemaps/Bing_Hybrid.xml +0 -12
  77. package/test/basemaps/Bing_Maps.xml +0 -10
  78. package/test/basemaps/USGSBasemap.xml +0 -10
  79. package/test/basemaps/USGSImageryOnly.xml +0 -10
  80. package/test/basemaps/USGSImageryTopo.xml +0 -10
  81. package/test/basemaps/USGSShadedRelief.xml +0 -10
  82. package/test/basemaps/opentopomap.xml +0 -10
  83. package/test/basemaps.test.ts +0 -19
  84. package/test/chat.test.ts +0 -103
  85. package/test/cot-fileshare.test.ts +0 -92
  86. package/test/cot-itak.test.ts +0 -100
  87. package/test/cot-mma.test.ts +0 -111
  88. package/test/cot-polyline.test.ts +0 -103
  89. package/test/cot-range-and-bearing.test.ts +0 -100
  90. package/test/cot-routes.test.ts +0 -468
  91. package/test/cot-types.test.ts +0 -8
  92. package/test/cot-uas-tool.test.ts +0 -295
  93. package/test/cot-video.test.ts +0 -204
  94. package/test/cot_is.test.ts +0 -431
  95. package/test/data-package.test.ts +0 -314
  96. package/test/diff.test.ts +0 -80
  97. package/test/fixtures/archived.geojson +0 -20
  98. package/test/fixtures/attachments.geojson +0 -20
  99. package/test/fixtures/basic.geojson +0 -19
  100. package/test/fixtures/circle.geojson +0 -30
  101. package/test/fixtures/color.geojson +0 -21
  102. package/test/fixtures/fileshare.geojson +0 -28
  103. package/test/fixtures/geofence.geojson +0 -25
  104. package/test/fixtures/hae.geojson +0 -19
  105. package/test/fixtures/icon.geojson +0 -20
  106. package/test/fixtures/linestring.geojson +0 -28
  107. package/test/fixtures/marti-mission.geojson +0 -22
  108. package/test/fixtures/metadata.geojson +0 -24
  109. package/test/fixtures/mission-layer.geojson +0 -31
  110. package/test/fixtures/mission.geojson +0 -25
  111. package/test/fixtures/polygon.geojson +0 -33
  112. package/test/fixtures/props.geojson +0 -22
  113. package/test/fixtures/sensor.geojson +0 -31
  114. package/test/fixtures/video-connection.geojson +0 -27
  115. package/test/fixtures/video.geojson +0 -24
  116. package/test/flow-tags.test.ts +0 -21
  117. package/test/force-delete.ts +0 -50
  118. package/test/from_geojson.test.ts +0 -323
  119. package/test/newlines.test.ts +0 -83
  120. package/test/packages/AttachmentInManifest.zip +0 -0
  121. package/test/packages/COMilePosts.zip +0 -0
  122. package/test/packages/CameraCOTs.zip +0 -0
  123. package/test/packages/QuickPic.zip +0 -0
  124. package/test/reversal-geojson.test.ts +0 -19
  125. package/test/reversal-proto.test.ts +0 -60
  126. package/test/stream.ts +0 -10
  127. package/test/taskings-mission.test.ts +0 -148
  128. package/test/util.test.ts +0 -34
  129. package/test/validation.test.ts +0 -13
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../lib/types/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../lib/types/types.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@ export class Basemap extends XMLDocument {
16
16
  * Return a Basemap from a string XML representation
17
17
  */
18
18
  static parse(input) {
19
- const basemap = super.check(input, checkBasemap);
19
+ const basemap = super.check(String(input), checkBasemap);
20
20
  return new Basemap(basemap);
21
21
  }
22
22
  to_json() {
@@ -1 +1 @@
1
- {"version":3,"file":"basemap.js","sourceRoot":"","sources":["../../../lib/xml/basemap.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,4BAA4B,CAAC;AAC7C,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAE7C,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAChD,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,MAAM,YAAY,GAAG,CAAC,IAAI,GAAG,CAAC;IAC1B,SAAS,EAAE,IAAI;IACf,WAAW,EAAE,IAAI;IACjB,eAAe,EAAE,IAAI;CACxB,CAAC,CAAC;KACE,OAAO,CAAC,aAAa,CAAC,CAAC;AAI5B;;GAEG;AACH,MAAM,OAAO,OAAQ,SAAQ,WAAwB;IACjD;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,KAAa;QACtB,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAc,KAAK,EAAE,YAAY,CAAC,CAAC;QAC9D,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IAED,OAAO;QASH,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe;YAAE,MAAM,IAAI,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,sBAAsB,CAAC,CAAC;QAChF,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG;YAAE,MAAM,IAAI,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,oCAAoC,CAAC,CAAC;QAElG,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YACrF,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK;YACvC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;YACtG,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;YACtG,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YACjG,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YACvG,eAAe,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;SACzH,CAAA;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"basemap.js","sourceRoot":"","sources":["../../../lib/xml/basemap.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,4BAA4B,CAAC;AAC7C,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAE7C,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAChD,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,MAAM,YAAY,GAAG,CAAC,IAAI,GAAG,CAAC;IAC1B,SAAS,EAAE,IAAI;IACf,WAAW,EAAE,IAAI;IACjB,eAAe,EAAE,IAAI;CACxB,CAAC,CAAC;KACE,OAAO,CAAC,aAAa,CAAC,CAAC;AAI5B;;GAEG;AACH,MAAM,OAAO,OAAQ,SAAQ,WAAwB;IACjD;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,KAAsB;QAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAc,MAAM,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,CAAC;QACtE,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IAED,OAAO;QASH,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe;YAAE,MAAM,IAAI,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,sBAAsB,CAAC,CAAC;QAChF,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG;YAAE,MAAM,IAAI,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,oCAAoC,CAAC,CAAC;QAElG,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YACrF,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK;YACvC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;YACtG,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;YACtG,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YACjG,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YACvG,eAAe,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;SACzH,CAAA;IACL,CAAC;CACJ"}
@@ -1,5 +1,5 @@
1
1
  import XMLDocument from '../xml-document.js';
2
- import IconsetSchema from '../types/iconset.js';
2
+ import IconsetSchema, { IconsetAttributes, IconAttributes } from '../types/iconset.js';
3
3
  import AJV from 'ajv';
4
4
  const checkIconset = (new AJV({
5
5
  allErrors: true,
@@ -15,8 +15,35 @@ export class Iconset extends XMLDocument {
15
15
  * Return an Iconset from a string XML representation
16
16
  */
17
17
  static parse(input) {
18
- const basemap = super.check(input, checkIconset);
18
+ const basemap = super.check(String(input), checkIconset);
19
19
  return new Iconset(basemap);
20
20
  }
21
+ get uid() {
22
+ return this.raw.iconset._attributes.uid;
23
+ }
24
+ get name() {
25
+ return this.raw.iconset._attributes.name;
26
+ }
27
+ icons() {
28
+ const icons = new Set();
29
+ for (const icon of Array.isArray(this.raw.iconset.icon) ? this.raw.iconset.icon : [this.raw.iconset.icon]) {
30
+ icons.add(icon._attributes);
31
+ }
32
+ return icons;
33
+ }
34
+ to_json() {
35
+ const iconset = {
36
+ uid: this.raw.iconset._attributes.uid,
37
+ version: this.raw.iconset._attributes.version,
38
+ name: this.raw.iconset._attributes.name,
39
+ skip_resize: this.raw.iconset._attributes.skip_resize === undefined ? false : this.raw.iconset._attributes.skip_resize,
40
+ default_group: this.raw.iconset._attributes.default_group,
41
+ default_friendly: this.raw.iconset._attributes.default_friendly,
42
+ default_hostile: this.raw.iconset._attributes.default_hostile,
43
+ default_neutral: this.raw.iconset._attributes.default_neutral,
44
+ default_unknown: this.raw.iconset._attributes.default_unknown
45
+ };
46
+ return iconset;
47
+ }
21
48
  }
22
49
  //# sourceMappingURL=iconset.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"iconset.js","sourceRoot":"","sources":["../../../lib/xml/iconset.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAE7C,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAChD,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,MAAM,YAAY,GAAG,CAAC,IAAI,GAAG,CAAC;IAC1B,SAAS,EAAE,IAAI;IACf,WAAW,EAAE,IAAI;IACjB,eAAe,EAAE,IAAI;CACxB,CAAC,CAAC;KACE,OAAO,CAAC,aAAa,CAAC,CAAC;AAI5B;;GAEG;AACH,MAAM,OAAO,OAAQ,SAAQ,WAAwB;IACjD;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,KAAa;QACtB,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAc,KAAK,EAAE,YAAY,CAAC,CAAC;QAC9D,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;CACJ"}
1
+ {"version":3,"file":"iconset.js","sourceRoot":"","sources":["../../../lib/xml/iconset.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAE7C,OAAO,aAAa,EAAE,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,MAAM,YAAY,GAAG,CAAC,IAAI,GAAG,CAAC;IAC1B,SAAS,EAAE,IAAI;IACf,WAAW,EAAE,IAAI;IACjB,eAAe,EAAE,IAAI;CACxB,CAAC,CAAC;KACE,OAAO,CAAC,aAAa,CAAC,CAAC;AAI5B;;GAEG;AACH,MAAM,OAAO,OAAQ,SAAQ,WAAwB;IACjD;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,KAAsB;QAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAc,MAAM,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,CAAC;QACtE,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,GAAG;QACH,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC;IAC5C,CAAC;IAED,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC;IAC7C,CAAC;IAED,KAAK;QACD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAiC,CAAC;QACvD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAE,EAAE,CAAC;YAC1G,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAChC,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,OAAO;QACH,MAAM,OAAO,GAAqC;YAC9C,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG;YACrC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO;YAC7C,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI;YACvC,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW;YACtH,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,aAAa;YACzD,gBAAgB,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,gBAAgB;YAC/D,eAAe,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,eAAe;YAC7D,eAAe,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,eAAe;YAC7D,eAAe,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,eAAe;SAChE,CAAC;QAEF,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ"}
package/dist/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tak-ps/node-cot",
3
3
  "type": "module",
4
- "version": "12.17.1",
4
+ "version": "12.19.0",
5
5
  "description": "Lightweight JavaScript library for parsing and manipulating TAK messages",
6
6
  "author": "Nick Ingalls <nick@ingalls.ca>",
7
7
  "main": "dist/index.js",
@@ -1 +1 @@
1
- {"root":["../index.ts","../test/basemaps.test.ts","../test/chat.test.ts","../test/cot-fileshare.test.ts","../test/cot-itak.test.ts","../test/cot-mma.test.ts","../test/cot-polyline.test.ts","../test/cot-range-and-bearing.test.ts","../test/cot-routes.test.ts","../test/cot-types.test.ts","../test/cot-uas-tool.test.ts","../test/cot-video.test.ts","../test/cot_is.test.ts","../test/data-package.test.ts","../test/diff.test.ts","../test/flow-tags.test.ts","../test/force-delete.ts","../test/from_geojson.test.ts","../test/newlines.test.ts","../test/reversal-geojson.test.ts","../test/reversal-proto.test.ts","../test/stream.ts","../test/taskings-mission.test.ts","../test/util.test.ts","../test/validation.test.ts","../lib/chat.ts","../lib/cot.ts","../lib/data-package.ts","../lib/fileshare.ts","../lib/force-delete.ts","../lib/sensor.ts","../lib/xml-document.ts"],"version":"5.7.2"}
1
+ {"root":["../index.ts","../test/basemaps.test.ts","../test/chat.test.ts","../test/cot-fileshare.test.ts","../test/cot-itak.test.ts","../test/cot-mma.test.ts","../test/cot-polyline.test.ts","../test/cot-range-and-bearing.test.ts","../test/cot-routes.test.ts","../test/cot-types.test.ts","../test/cot-uas-tool.test.ts","../test/cot-video.test.ts","../test/cot_is.test.ts","../test/data-package.test.ts","../test/diff.test.ts","../test/flow-tags.test.ts","../test/force-delete.ts","../test/from_geojson.test.ts","../test/newlines.test.ts","../test/reversal-geojson.test.ts","../test/reversal-proto.test.ts","../test/stream.ts","../test/taskings-mission.test.ts","../test/util.test.ts","../test/validation.test.ts","../lib/chat.ts","../lib/cot.ts","../lib/data-package.ts","../lib/fileshare.ts","../lib/force-delete.ts","../lib/sensor.ts","../lib/xml-document.ts","../lib/xml/basemap.ts","../lib/xml/iconset.ts"],"version":"5.7.2"}
package/lib/cot.ts CHANGED
@@ -993,8 +993,8 @@ export default class CoT {
993
993
  if (feature.properties.contact) {
994
994
  cot.event.detail.contact = {
995
995
  _attributes: {
996
+ ...feature.properties.contact,
996
997
  callsign: feature.properties.callsign || 'UNKNOWN',
997
- ...feature.properties.contact
998
998
  }
999
999
  };
1000
1000
  }
@@ -54,6 +54,11 @@ const checkManifest = (new AJV({
54
54
 
55
55
  /**
56
56
  * Helper class for creating and parsing static Data Packages
57
+ * @class
58
+ *
59
+ * @prop path The local path to the Data Package working directory
60
+ * @prop destroyed Indcates that the DataPackage has been destroyed and all local files removed
61
+ * @prop version DataPackage schema version - 2 is most common
57
62
  */
58
63
  export class DataPackage {
59
64
  path: string;
@@ -69,6 +74,10 @@ export class DataPackage {
69
74
  [k: string]: boolean | string | undefined;
70
75
  }
71
76
 
77
+ /**
78
+ * @param uid Unique ID of the Data Package
79
+ * @param name Human Readable name of the DataPackage
80
+ */
72
81
  constructor(uid?: string, name?: string) {
73
82
  this.path = os.tmpdir() + '/' + randomUUID();
74
83
  this.destroyed = false;
@@ -146,9 +155,21 @@ export class DataPackage {
146
155
 
147
156
 
148
157
  /**
149
- * Return a DataPackage version of an unparsed Data Package Zip
158
+ * Return a DataPackage version of a raw Data Package Zip
159
+ *
160
+ * @public
161
+ * @param input path to zipped DataPackage on disk
162
+ * @param [opts] Parser Options
163
+ * @param [opts.strict] By default the DataPackage must contain a manifest file, turning strict mode off will generate a manifest based on the contents of the file
150
164
  */
151
- static async parse(input: string): Promise<DataPackage> {
165
+ static async parse(input: string | URL, opts?: {
166
+ strict?: boolean
167
+ }): Promise<DataPackage> {
168
+ input = input instanceof URL ? decodeURIComponent(input.pathname) : input;
169
+
170
+ if (!opts) opts = {};
171
+ if (opts.strict === undefined) opts.strict = true;
172
+
152
173
  const pkg = new DataPackage();
153
174
 
154
175
  const zip = new StreamZip.async({
@@ -158,33 +179,53 @@ export class DataPackage {
158
179
 
159
180
  const preentries = await zip.entries();
160
181
 
161
- if (!preentries['MANIFEST/manifest.xml']) throw new Err(400, null, 'No MANIFEST/manifest.xml found in Data Package');
182
+ if (opts.strict && !preentries['MANIFEST/manifest.xml']) {
183
+ throw new Err(400, null, 'No MANIFEST/manifest.xml found in Data Package');
184
+ }
162
185
 
163
186
  await fsp.mkdir(pkg.path + '/raw', { recursive: true });
164
187
  await zip.extract(null, pkg.path + '/raw/');
165
188
 
166
- const xml = xmljs.xml2js(String(await fsp.readFile(pkg.path + '/raw/MANIFEST/manifest.xml')), { compact: true })
189
+ if (preentries['MANIFEST/manifest.xml']) {
190
+ const xml = xmljs.xml2js(String(await fsp.readFile(pkg.path + '/raw/MANIFEST/manifest.xml')), { compact: true })
167
191
 
168
- checkManifest(xml);
169
- if (checkManifest.errors) throw new Err(400, null, `${checkManifest.errors[0].message} (${checkManifest.errors[0].instancePath})`);
170
- const manifest = xml as Static<typeof Manifest>;
192
+ checkManifest(xml);
193
+ if (checkManifest.errors) throw new Err(400, null, `${checkManifest.errors[0].message} (${checkManifest.errors[0].instancePath})`);
194
+ const manifest = xml as Static<typeof Manifest>;
171
195
 
172
- pkg.version = manifest.MissionPackageManifest._attributes.version;
196
+ pkg.version = manifest.MissionPackageManifest._attributes.version;
173
197
 
174
- if (Array.isArray(manifest.MissionPackageManifest.Contents.Content)) {
175
- pkg.contents = manifest.MissionPackageManifest.Contents.Content;
176
- } else {
177
- pkg.contents = [ manifest.MissionPackageManifest.Contents.Content ];
178
- }
198
+ if (Array.isArray(manifest.MissionPackageManifest.Contents.Content)) {
199
+ pkg.contents = manifest.MissionPackageManifest.Contents.Content;
200
+ } else {
201
+ pkg.contents = [ manifest.MissionPackageManifest.Contents.Content ];
202
+ }
179
203
 
180
- for (const param of manifest.MissionPackageManifest.Configuration.Parameter) {
181
- pkg.settings[param._attributes.name] = param._attributes.value;
204
+ for (const param of manifest.MissionPackageManifest.Configuration.Parameter) {
205
+ if (['onReceiveImport', 'onReceiveDelete'].includes(param._attributes.name) && typeof param._attributes.value === 'string') {
206
+ pkg.settings[param._attributes.name] = param._attributes.value === 'false' ? false : true;
207
+ } else {
208
+ pkg.settings[param._attributes.name] = param._attributes.value;
209
+ }
210
+ }
211
+ } else {
212
+ pkg.settings.name = path.parse(input).name;
213
+ pkg.settings.uid = await this.hash(input);
214
+ pkg.setEphemeral();
215
+
216
+ for (const [key, value] of Object.entries(preentries)) {
217
+ if (value.isDirectory) continue;
218
+ pkg.#addContent(
219
+ key,
220
+ await pkg.hash(key)
221
+ );
222
+ }
182
223
  }
183
224
 
184
225
  return pkg;
185
226
  }
186
227
 
187
- #addContent(zipEntry: string, uid: string, name: string, ignore = false): void {
228
+ #addContent(zipEntry: string, uid: string, name?: string, ignore = false): void {
188
229
  if (this.destroyed) throw new Err(400, null, 'Attempt to access Data Package after it has been destroyed');
189
230
 
190
231
  // TODO: Seen in the wild but not currently implemented here:
@@ -196,7 +237,7 @@ export class DataPackage {
196
237
  Parameter: [{
197
238
  _attributes: { name: 'uid', value: uid },
198
239
  },{
199
- _attributes: { name: 'name', value: name }
240
+ _attributes: { name: 'name', value: name ?? path.parse(zipEntry).base }
200
241
  }]
201
242
  });
202
243
  }
@@ -337,6 +378,18 @@ export class DataPackage {
337
378
  return this.#attachments(cots, opts);
338
379
  }
339
380
 
381
+ async getFileBuffer(path: string): Promise<Buffer> {
382
+ if (this.destroyed) throw new Err(400, null, 'Attempt to access Data Package after it has been destroyed');
383
+
384
+ try {
385
+ await fsp.access(`${this.path}/raw/${path}`)
386
+ } catch (err) {
387
+ throw new Err(400, err instanceof Error ? err : new Error(String(err)), 'Could not access file in Data Package');
388
+ }
389
+
390
+ return await fsp.readFile(`${this.path}/raw/${path}`);
391
+ }
392
+
340
393
  /**
341
394
  * Get any file from a Package
342
395
  */
@@ -5,6 +5,7 @@ import {
5
5
  ShapeEllipseAttributes,
6
6
  GeofenceAttributes,
7
7
  StatusAttributes,
8
+ ContactAttributes,
8
9
  PrecisionLocationAttributes,
9
10
  VideoConnectionEntryAttributes,
10
11
  MartiDestAttributes,
@@ -76,10 +77,7 @@ export const InputProperties = Type.Object({
76
77
  metadata: Type.Optional(Type.Record(Type.String(), Type.Unknown())),
77
78
  archived: Type.Optional(Type.Boolean()),
78
79
  geofence: Type.Optional(GeofenceAttributes),
79
- contact: Type.Optional(Type.Object({
80
- phone: Type.Optional(Type.String()),
81
- endpoint: Type.Optional(Type.String())
82
- })),
80
+ contact: Type.Optional(ContactAttributes),
83
81
  shape: Type.Optional(Type.Object({
84
82
  ellipse: Type.Optional(ShapeEllipseAttributes)
85
83
  })),
@@ -138,10 +136,7 @@ export const Properties = Type.Object({
138
136
  metadata: Type.Optional(Type.Record(Type.String(), Type.Unknown())),
139
137
  archived: Type.Optional(Type.Boolean()),
140
138
  geofence: Type.Optional(GeofenceAttributes),
141
- contact: Type.Optional(Type.Object({
142
- phone: Type.Optional(Type.String()),
143
- endpoint: Type.Optional(Type.String())
144
- })),
139
+ contact: Type.Optional(ContactAttributes),
145
140
  shape: Type.Optional(Type.Object({
146
141
  ellipse: Type.Optional(ShapeEllipseAttributes)
147
142
  })),
@@ -2,18 +2,28 @@ import { Type } from '@sinclair/typebox';
2
2
 
3
3
  export const IconsetAttributes = Type.Object({
4
4
  uid: Type.String(),
5
- version: Type.String(),
5
+ version: Type.Integer(),
6
6
  name: Type.String(),
7
7
  default_group: Type.Optional(Type.String()),
8
8
  default_friendly: Type.Optional(Type.String()),
9
9
  default_hostile: Type.Optional(Type.String()),
10
10
  default_neutral: Type.Optional(Type.String()),
11
11
  default_unknown: Type.Optional(Type.String()),
12
- skip_resize: Type.Boolean({ default: false }),
12
+ skip_resize: Type.Optional(Type.Boolean()),
13
+ })
14
+
15
+ export const IconAttributes = Type.Object({
16
+ name: Type.String(),
17
+ type2525b: Type.Optional(Type.String())
18
+ });
19
+
20
+ export const Icon = Type.Object({
21
+ _attributes: IconAttributes
13
22
  })
14
23
 
15
24
  export default Type.Object({
16
25
  iconset: Type.Object({
17
- _attributes: IconsetAttributes
18
- })
26
+ _attributes: IconsetAttributes,
27
+ icon: Type.Union([Type.Array(Icon), Icon])
28
+ }),
19
29
  })
@@ -378,13 +378,15 @@ export const Uid = Type.Object({
378
378
  })
379
379
  })
380
380
 
381
+ export const ContactAttributes = Type.Object({
382
+ phone: Type.Optional(Type.String()),
383
+ name: Type.Optional(Type.String()),
384
+ callsign: Type.String(),
385
+ endpoint: Type.Optional(Type.String())
386
+ })
387
+
381
388
  export const Contact = Type.Object({
382
- _attributes: Type.Object({
383
- phone: Type.Optional(Type.String()),
384
- name: Type.Optional(Type.String()),
385
- callsign: Type.String(),
386
- endpoint: Type.Optional(Type.String())
387
- })
389
+ _attributes: ContactAttributes
388
390
  })
389
391
 
390
392
  export const MartiDestAttributes = Type.Object({
@@ -20,8 +20,8 @@ export class Basemap extends XMLDocument<BasemapType> {
20
20
  /**
21
21
  * Return a Basemap from a string XML representation
22
22
  */
23
- static parse(input: string): Basemap {
24
- const basemap = super.check<BasemapType>(input, checkBasemap);
23
+ static parse(input: string | Buffer): Basemap {
24
+ const basemap = super.check<BasemapType>(String(input), checkBasemap);
25
25
  return new Basemap(basemap);
26
26
  }
27
27
 
@@ -1,6 +1,6 @@
1
1
  import XMLDocument from '../xml-document.js';
2
2
  import type { Static } from '@sinclair/typebox'
3
- import IconsetSchema from '../types/iconset.js';
3
+ import IconsetSchema, { IconsetAttributes, IconAttributes } from '../types/iconset.js';
4
4
  import AJV from 'ajv';
5
5
 
6
6
  const checkIconset = (new AJV({
@@ -19,8 +19,41 @@ export class Iconset extends XMLDocument<IconsetType> {
19
19
  /**
20
20
  * Return an Iconset from a string XML representation
21
21
  */
22
- static parse(input: string): Iconset {
23
- const basemap = super.check<IconsetType>(input, checkIconset);
22
+ static parse(input: string | Buffer): Iconset {
23
+ const basemap = super.check<IconsetType>(String(input), checkIconset);
24
24
  return new Iconset(basemap);
25
25
  }
26
+
27
+ get uid() {
28
+ return this.raw.iconset._attributes.uid;
29
+ }
30
+
31
+ get name() {
32
+ return this.raw.iconset._attributes.name;
33
+ }
34
+
35
+ icons(): Set<Static<typeof IconAttributes>> {
36
+ const icons = new Set<Static<typeof IconAttributes>>();
37
+ for (const icon of Array.isArray(this.raw.iconset.icon) ? this.raw.iconset.icon : [ this.raw.iconset.icon ]) {
38
+ icons.add(icon._attributes);
39
+ }
40
+
41
+ return icons;
42
+ }
43
+
44
+ to_json(): Static<typeof IconsetAttributes> {
45
+ const iconset: Static<typeof IconsetAttributes> = {
46
+ uid: this.raw.iconset._attributes.uid,
47
+ version: this.raw.iconset._attributes.version,
48
+ name: this.raw.iconset._attributes.name,
49
+ skip_resize: this.raw.iconset._attributes.skip_resize === undefined ? false : this.raw.iconset._attributes.skip_resize,
50
+ default_group: this.raw.iconset._attributes.default_group,
51
+ default_friendly: this.raw.iconset._attributes.default_friendly,
52
+ default_hostile: this.raw.iconset._attributes.default_hostile,
53
+ default_neutral: this.raw.iconset._attributes.default_neutral,
54
+ default_unknown: this.raw.iconset._attributes.default_unknown
55
+ };
56
+
57
+ return iconset;
58
+ }
26
59
  }
@@ -12,7 +12,7 @@ export default class XMLDocument<T> {
12
12
  constructor(raw: T) {
13
13
  this.raw = raw;
14
14
  }
15
-
15
+
16
16
  static check<U>(input: string, check: ValidateFunction<unknown>): U {
17
17
  const xml = xmljs.xml2js(input, { compact: true })
18
18
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tak-ps/node-cot",
3
3
  "type": "module",
4
- "version": "12.17.1",
4
+ "version": "12.19.0",
5
5
  "description": "Lightweight JavaScript library for parsing and manipulating TAK messages",
6
6
  "author": "Nick Ingalls <nick@ingalls.ca>",
7
7
  "main": "dist/index.js",
package/tsconfig.json CHANGED
@@ -27,6 +27,7 @@
27
27
  "index.ts",
28
28
  "test/**/*",
29
29
  "lib/*.ts",
30
+ "lib/xml/*.ts",
30
31
  "lib/schema.json"
31
32
  ]
32
33
  }
@@ -1,16 +0,0 @@
1
- import fs from 'node:fs/promises';
2
- import path from 'node:path';
3
- import test from 'tape';
4
- import { Basemap } from '../index.js';
5
- import { fileURLToPath } from 'node:url';
6
- for (const fixturename of await fs.readdir(new URL('./basemaps/', import.meta.url))) {
7
- test(`Basemap Test: ${fixturename}`, async (t) => {
8
- const fixture = String(await fs.readFile(path.join(path.parse(fileURLToPath(import.meta.url)).dir, 'basemaps/', fixturename)));
9
- const container = await Basemap.parse(fixture);
10
- t.ok(container.raw.customMapSource.name._text.length);
11
- const json = container.to_json();
12
- t.ok(json.name && json.name.length);
13
- t.end();
14
- });
15
- }
16
- //# sourceMappingURL=basemaps.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"basemaps.test.js","sourceRoot":"","sources":["../../test/basemaps.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,KAAK,MAAM,WAAW,IAAI,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;IAClF,IAAI,CAAC,iBAAiB,WAAW,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC7C,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;QAC/H,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAE/C,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAErD,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC;QACjC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEpC,CAAC,CAAC,GAAG,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1,97 +0,0 @@
1
- import test from 'tape';
2
- import { DirectChat } from '../index.js';
3
- test('DirectChat - Basic', (t) => {
4
- const cot = new DirectChat({
5
- to: {
6
- uid: '123456',
7
- callsign: 'Alpha Operator'
8
- },
9
- from: {
10
- uid: '654321',
11
- callsign: 'Bravo Operator'
12
- },
13
- message: 'Direct Message Test'
14
- });
15
- t.equals(cot.is_chat(), true);
16
- t.ok(cot.raw.event._attributes.uid);
17
- cot.raw.event._attributes.uid = '123';
18
- if (!cot.raw.event.detail) {
19
- t.fail('No Detail Section');
20
- }
21
- else {
22
- t.ok(cot.raw.event.detail['_flow-tags_']);
23
- delete cot.raw.event.detail['_flow-tags_'];
24
- t.equals(typeof cot.raw.event._attributes.time, 'string');
25
- cot.raw.event._attributes.time = '2024-04-01';
26
- t.equals(typeof cot.raw.event._attributes.start, 'string');
27
- cot.raw.event._attributes.start = '2024-04-01';
28
- t.equals(typeof cot.raw.event._attributes.stale, 'string');
29
- cot.raw.event._attributes.stale = '2024-04-01';
30
- if (!cot.raw.event.detail.__chat) {
31
- t.fail('No Chat Section');
32
- }
33
- else {
34
- t.equals(typeof cot.raw.event.detail.__chat._attributes.messageId, 'string');
35
- cot.raw.event.detail.__chat._attributes.messageId = '123';
36
- }
37
- if (!cot.raw.event.detail.remarks || !cot.raw.event.detail.remarks._attributes) {
38
- t.fail('No Remarks Section');
39
- }
40
- else {
41
- t.equals(typeof cot.raw.event.detail.remarks._attributes.time, 'string');
42
- cot.raw.event.detail.remarks._attributes.time = '123';
43
- }
44
- t.deepEquals(cot.raw, {
45
- event: {
46
- _attributes: {
47
- uid: '123',
48
- version: '2.0',
49
- type: 'b-t-f',
50
- how: 'h-g-i-g-o',
51
- time: '2024-04-01',
52
- stale: '2024-04-01',
53
- start: '2024-04-01'
54
- },
55
- point: {
56
- _attributes: { lat: '0.000000', lon: '0.000000', hae: '0.0', ce: '9999999.0', le: '9999999.0' }
57
- },
58
- detail: {
59
- __chat: {
60
- _attributes: {
61
- parent: 'RootContactGroup',
62
- groupOwner: 'false',
63
- messageId: '123',
64
- chatroom: 'Alpha Operator',
65
- id: '123456',
66
- senderCallsign: 'Bravo Operator'
67
- },
68
- chatgrp: {
69
- _attributes: {
70
- uid0: "654321",
71
- uid1: "123456",
72
- id: "123456"
73
- }
74
- }
75
- },
76
- link: {
77
- _attributes: {
78
- uid: '654321',
79
- type: 'a-f-G',
80
- relation: 'p-p'
81
- }
82
- },
83
- remarks: {
84
- _attributes: {
85
- source: '654321',
86
- to: '123456',
87
- time: '123'
88
- },
89
- _text: 'Direct Message Test'
90
- }
91
- }
92
- }
93
- });
94
- }
95
- t.end();
96
- });
97
- //# sourceMappingURL=chat.test.js.map