@tak-ps/node-tak 12.2.1 → 12.4.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.
@@ -25,10 +25,10 @@ jobs:
25
25
  runs-on: ubuntu-latest
26
26
  steps:
27
27
  - name: Checkout
28
- uses: actions/checkout@v4
28
+ uses: actions/checkout@v6
29
29
  - name: Setup Pages
30
30
  uses: actions/configure-pages@v5
31
- - uses: actions/setup-node@v4
31
+ - uses: actions/setup-node@v6
32
32
  with:
33
33
  node-version: 22
34
34
  registry-url: https://registry.npmjs.org/
@@ -37,7 +37,7 @@ jobs:
37
37
  - name: npm run doc
38
38
  run: npm run doc
39
39
  - name: Upload artifact
40
- uses: actions/upload-pages-artifact@v3
40
+ uses: actions/upload-pages-artifact@v4
41
41
  with:
42
42
  path: './docs/'
43
43
  - name: Deploy to GitHub Pages
@@ -31,12 +31,8 @@ jobs:
31
31
  - name: npm publish
32
32
  run: npm publish --provenance --access public
33
33
 
34
- - name: Get tag
35
- id: tag
36
- uses: dawidd6/action-get-tag@v1
37
-
38
34
  - name: Generate CHANGELOG
39
- run: grep -Pzo "### ${{steps.tag.outputs.tag}}(?s).*?(?=###)" CHANGELOG.md > RELEASE
35
+ run: grep -Pzo "### ${{ github.ref_name }}(?s).*?(?=###)" CHANGELOG.md > RELEASE
40
36
 
41
37
  - name: Github Release
42
38
  uses: softprops/action-gh-release@v2
@@ -16,11 +16,11 @@ jobs:
16
16
  runs-on: ubuntu-latest
17
17
  if: github.event.pull_request.draft == false
18
18
  steps:
19
- - uses: actions/checkout@v4
19
+ - uses: actions/checkout@v6
20
20
  with:
21
21
  ref: ${{ github.event.pull_request.head.sha }}
22
22
 
23
- - uses: actions/setup-node@v4
23
+ - uses: actions/setup-node@v6
24
24
  with:
25
25
  node-version: 22
26
26
  registry-url: https://registry.npmjs.org/
package/CHANGELOG.md CHANGED
@@ -10,6 +10,14 @@
10
10
 
11
11
  ## Version History
12
12
 
13
+ ### v12.3.1 - 2025-03-18
14
+
15
+ - :arrow_up: Update pinned node-cot dep
16
+
17
+ ### v12.3.0 - 2025-03-18
18
+
19
+ - :rocket: Enable Flow Stripping Option
20
+
13
21
  ### v12.2.1 - 2025-03-13
14
22
 
15
23
  - :rocket: Switch to using body to avoid URL encoding issues
package/dist/index.d.ts CHANGED
@@ -73,6 +73,13 @@ export type TAKOptions = {
73
73
  * @default 64 */
74
74
  socketBatchSize?: number;
75
75
  };
76
+ export type WriteOptions = {
77
+ /** Remove any existing flow tags and replace them with a fresh
78
+ * `NodeCoT-*` entry before serializing to XML.
79
+ * Useful when re-submitting CoTs back to TAK Server over 8089.
80
+ * @default false */
81
+ stripFlow?: boolean;
82
+ };
76
83
  export default class TAK extends EventEmitter {
77
84
  id: number | string;
78
85
  type: string;
@@ -128,7 +135,7 @@ export default class TAK extends EventEmitter {
128
135
  *
129
136
  * @param cots Array of CoT objects to send
130
137
  */
131
- write(cots: CoT[]): Promise<void>;
138
+ write(cots: CoT[], opts?: WriteOptions): Promise<void>;
132
139
  /**
133
140
  * Wait until all queued CoTs have been flushed to the socket.
134
141
  *
package/dist/index.js CHANGED
@@ -10,6 +10,12 @@ export const REGEX_CONTROL = /[\u000B-\u001F\u007F-\u009F]/g;
10
10
  export const REGEX_EVENT = /(<event[ >][\s\S]*?<\/event>)([\s\S]*)/;
11
11
  const DEFAULT_WRITE_QUEUE_SIZE = 10_000;
12
12
  const DEFAULT_SOCKET_BATCH_SIZE = 64;
13
+ function cloneCoT(cot) {
14
+ const cloned = new CoT(JSON.parse(JSON.stringify(cot.raw)));
15
+ cloned.metadata = JSON.parse(JSON.stringify(cot.metadata));
16
+ cloned.path = cot.path;
17
+ return cloned;
18
+ }
13
19
  export default class TAK extends EventEmitter {
14
20
  id;
15
21
  type;
@@ -281,13 +287,13 @@ export default class TAK extends EventEmitter {
281
287
  *
282
288
  * @param cots Array of CoT objects to send
283
289
  */
284
- async write(cots) {
290
+ async write(cots, opts = {}) {
285
291
  for (let i = 0; i < cots.length;) {
286
292
  if (this.destroyed)
287
293
  return;
288
294
  // Serialize upfront and push XML strings into the ring buffer
289
295
  while (i < cots.length &&
290
- this.queue.push(CoTParser.to_xml(cots[i]))) {
296
+ this.queue.push(CoTParser.to_xml(opts.stripFlow ? cloneCoT(cots[i]) : cots[i], opts.stripFlow ? { resetFlow: true } : undefined))) {
291
297
  i++;
292
298
  }
293
299
  // Kick process to start draining
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import test from 'tape';
2
2
  import { EventEmitter } from 'node:events';
3
3
  import TAK, { CoT } from '../index.js';
4
+ import { CoTParser } from '@tak-ps/node-cot';
4
5
  function createTAK(opts = {}) {
5
6
  return new TAK(new URL('ssl://localhost:8089'), { cert: 'test', key: 'test' }, opts);
6
7
  }
@@ -211,6 +212,50 @@ test('write - caller can safely modify array after write returns', async (t) =>
211
212
  t.equals(tak.queue.length, 0, 'queue empty');
212
213
  t.end();
213
214
  });
215
+ test('write - stripFlow replaces existing flow tags in outbound XML', async (t) => {
216
+ const tak = createTAK();
217
+ const writeCalls = [];
218
+ tak.client = createFakeSocket({
219
+ write(...args) {
220
+ writeCalls.push(args[0]);
221
+ return true;
222
+ },
223
+ });
224
+ const cot = await CoTParser.from_geojson({
225
+ id: '123',
226
+ type: 'Feature',
227
+ path: '/',
228
+ properties: {
229
+ type: 'a-f-G',
230
+ how: 'm-g',
231
+ callsign: 'BasicTest',
232
+ center: [1.1, 2.2, 0],
233
+ time: '2023-08-04T15:17:43.649Z',
234
+ start: '2023-08-04T15:17:43.649Z',
235
+ stale: '2023-08-04T15:17:43.649Z',
236
+ flow: {
237
+ 'TAK-Server-test': '2026-03-08T04:48:00Z'
238
+ },
239
+ metadata: {}
240
+ },
241
+ geometry: {
242
+ type: 'Point',
243
+ coordinates: [1.1, 2.2, 0]
244
+ }
245
+ });
246
+ await tak.write([cot], { stripFlow: true });
247
+ t.equals(writeCalls.length, 1, 'socket.write was called');
248
+ t.notOk(writeCalls[0].includes('TAK-Server-test='), 'server flow tag removed from outbound XML');
249
+ t.ok(writeCalls[0].includes('NodeCoT-'), 'node-cot flow tag added to outbound XML');
250
+ const outbound = CoTParser.from_xml(writeCalls[0]);
251
+ const outboundFlow = outbound.raw.event.detail?.['_flow-tags_'];
252
+ t.ok(outboundFlow, 'outbound CoT contains flow tags');
253
+ t.equal(Object.keys(outboundFlow || {}).length, 1, 'outbound CoT flow object is reset to one initial tag');
254
+ t.notOk(outboundFlow?.['TAK-Server-test'], 'outbound CoT flow object clears prior TAK Server tags');
255
+ const feat = await CoTParser.to_geojson(cot);
256
+ t.equal(feat.properties.flow?.['TAK-Server-test'], '2026-03-08T04:48:00Z', 'original CoT remains unchanged');
257
+ t.end();
258
+ });
214
259
  test('destroy - sets destroyed and clears ping interval', (t) => {
215
260
  const tak = createTAK();
216
261
  tak.pingInterval = setInterval(() => { }, 60000);
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline.test.js","sourceRoot":"","sources":["../../test/pipeline.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pipeline.test.js","sourceRoot":"","sources":["../../test/pipeline.test.ts"],"names":[],"mappings":"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"}
package/index.ts CHANGED
@@ -86,9 +86,25 @@ export type TAKOptions = {
86
86
  socketBatchSize?: number;
87
87
  };
88
88
 
89
+ export type WriteOptions = {
90
+ /** Remove any existing flow tags and replace them with a fresh
91
+ * `NodeCoT-*` entry before serializing to XML.
92
+ * Useful when re-submitting CoTs back to TAK Server over 8089.
93
+ * @default false */
94
+ stripFlow?: boolean;
95
+ };
96
+
89
97
  const DEFAULT_WRITE_QUEUE_SIZE = 10_000;
90
98
  const DEFAULT_SOCKET_BATCH_SIZE = 64;
91
99
 
100
+ function cloneCoT(cot: CoT): CoT {
101
+ const cloned = new CoT(JSON.parse(JSON.stringify(cot.raw)));
102
+ cloned.metadata = JSON.parse(JSON.stringify(cot.metadata));
103
+ cloned.path = cot.path;
104
+
105
+ return cloned;
106
+ }
107
+
92
108
  export default class TAK extends EventEmitter {
93
109
  id: number | string;
94
110
  type: string;
@@ -394,14 +410,17 @@ export default class TAK extends EventEmitter {
394
410
  *
395
411
  * @param cots Array of CoT objects to send
396
412
  */
397
- async write(cots: CoT[]): Promise<void> {
413
+ async write(cots: CoT[], opts: WriteOptions = {}): Promise<void> {
398
414
  for (let i = 0; i < cots.length; ) {
399
415
  if (this.destroyed) return;
400
416
 
401
417
  // Serialize upfront and push XML strings into the ring buffer
402
418
  while (
403
419
  i < cots.length &&
404
- this.queue.push(CoTParser.to_xml(cots[i]))
420
+ this.queue.push(CoTParser.to_xml(
421
+ opts.stripFlow ? cloneCoT(cots[i]) : cots[i],
422
+ opts.stripFlow ? { resetFlow: true } : undefined,
423
+ ))
405
424
  ) {
406
425
  i++;
407
426
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tak-ps/node-tak",
3
3
  "type": "module",
4
- "version": "12.2.1",
4
+ "version": "12.4.0",
5
5
  "description": "Lightweight JavaScript library for communicating with TAK Server",
6
6
  "author": "Nick Ingalls <nick@ingalls.ca>",
7
7
  "main": "dist/index.js",
@@ -39,7 +39,7 @@
39
39
  "xml-js": "^1.6.11"
40
40
  },
41
41
  "peerDependencies": {
42
- "@tak-ps/node-cot": "^14.20.0"
42
+ "@tak-ps/node-cot": "^v14.30.1"
43
43
  },
44
44
  "devDependencies": {
45
45
  "@eslint/js": "^10.0.1",
@@ -1,6 +1,7 @@
1
1
  import test from 'tape';
2
2
  import { EventEmitter } from 'node:events';
3
3
  import TAK, { CoT } from '../index.js';
4
+ import { CoTParser } from '@tak-ps/node-cot';
4
5
 
5
6
  function createTAK(opts: { writeQueueSize?: number; socketBatchSize?: number } = {}): TAK {
6
7
  return new TAK(new URL('ssl://localhost:8089'), { cert: 'test', key: 'test' }, opts);
@@ -256,6 +257,58 @@ test('write - caller can safely modify array after write returns', async (t) =>
256
257
  t.end();
257
258
  });
258
259
 
260
+ test('write - stripFlow replaces existing flow tags in outbound XML', async (t) => {
261
+ const tak = createTAK();
262
+ const writeCalls: string[] = [];
263
+ tak.client = createFakeSocket({
264
+ write(...args: unknown[]) {
265
+ writeCalls.push(args[0] as string);
266
+ return true;
267
+ },
268
+ });
269
+
270
+ const cot = await CoTParser.from_geojson({
271
+ id: '123',
272
+ type: 'Feature',
273
+ path: '/',
274
+ properties: {
275
+ type: 'a-f-G',
276
+ how: 'm-g',
277
+ callsign: 'BasicTest',
278
+ center: [1.1, 2.2, 0],
279
+ time: '2023-08-04T15:17:43.649Z',
280
+ start: '2023-08-04T15:17:43.649Z',
281
+ stale: '2023-08-04T15:17:43.649Z',
282
+ flow: {
283
+ 'TAK-Server-test': '2026-03-08T04:48:00Z'
284
+ },
285
+ metadata: {}
286
+ },
287
+ geometry: {
288
+ type: 'Point',
289
+ coordinates: [1.1, 2.2, 0]
290
+ }
291
+ });
292
+
293
+ await tak.write([cot], { stripFlow: true });
294
+
295
+ t.equals(writeCalls.length, 1, 'socket.write was called');
296
+ t.notOk(writeCalls[0].includes('TAK-Server-test='), 'server flow tag removed from outbound XML');
297
+ t.ok(writeCalls[0].includes('NodeCoT-'), 'node-cot flow tag added to outbound XML');
298
+
299
+ const outbound = CoTParser.from_xml(writeCalls[0]);
300
+ const outboundFlow = outbound.raw.event.detail?.['_flow-tags_'];
301
+
302
+ t.ok(outboundFlow, 'outbound CoT contains flow tags');
303
+ t.equal(Object.keys(outboundFlow || {}).length, 1, 'outbound CoT flow object is reset to one initial tag');
304
+ t.notOk(outboundFlow?.['TAK-Server-test'], 'outbound CoT flow object clears prior TAK Server tags');
305
+
306
+ const feat = await CoTParser.to_geojson(cot);
307
+ t.equal(feat.properties.flow?.['TAK-Server-test'], '2026-03-08T04:48:00Z', 'original CoT remains unchanged');
308
+
309
+ t.end();
310
+ });
311
+
259
312
  test('destroy - sets destroyed and clears ping interval', (t) => {
260
313
  const tak = createTAK();
261
314
  tak.pingInterval = setInterval(() => {}, 60000);