@tak-ps/node-tak 11.15.0 → 11.17.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.
package/CHANGELOG.md CHANGED
@@ -10,6 +10,14 @@
10
10
 
11
11
  ## Version History
12
12
 
13
+ ### v11.17.0 - 2025-12-02
14
+
15
+ - :tada: Allow setting keywords when creating or updating Missions
16
+
17
+ ### v11.16.0 - 2025-12-02
18
+
19
+ - :tada: Mission Updates
20
+
13
21
  ### v11.15.0 - 2025-11-30
14
22
 
15
23
  - :tada: Introduce Listing Mission Invites
@@ -29,7 +29,7 @@ export declare const Mission: import("@sinclair/typebox").TObject<{
29
29
  path: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
30
30
  classification: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
31
31
  tool: import("@sinclair/typebox").TString;
32
- keywords: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnknown>;
32
+ keywords: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
33
33
  creatorUid: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
34
34
  createTime: import("@sinclair/typebox").TString;
35
35
  externalData: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnknown>;
@@ -184,6 +184,7 @@ export declare const MissionListInput: import("@sinclair/typebox").TObject<{
184
184
  export declare const MissionCreateInput: import("@sinclair/typebox").TObject<{
185
185
  name: import("@sinclair/typebox").TString;
186
186
  group: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>, import("@sinclair/typebox").TString]>>;
187
+ keywords: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
187
188
  creatorUid: import("@sinclair/typebox").TString;
188
189
  description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
189
190
  chatRoom: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
@@ -199,7 +200,19 @@ export declare const MissionCreateInput: import("@sinclair/typebox").TObject<{
199
200
  inviteOnly: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
200
201
  allowDupe: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
201
202
  }>;
202
- export declare const MissionInvite: import("@sinclair/typebox").TObject<{}>;
203
+ export declare const MissionUpdateInput: import("@sinclair/typebox").TObject<{
204
+ creatorUid: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
205
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
206
+ keywords: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
207
+ chatRoom: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
208
+ baseLayer: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
209
+ bbox: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
210
+ path: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
211
+ classification: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
212
+ tool: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
213
+ expiration: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
214
+ inviteOnly: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
215
+ }>;
203
216
  export declare const GUIDMatch: RegExp;
204
217
  export declare const TAKList_Mission: import("@sinclair/typebox").TObject<{
205
218
  version: import("@sinclair/typebox").TString;
@@ -213,7 +226,7 @@ export declare const TAKList_Mission: import("@sinclair/typebox").TObject<{
213
226
  path: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
214
227
  classification: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
215
228
  tool: import("@sinclair/typebox").TString;
216
- keywords: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnknown>;
229
+ keywords: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
217
230
  creatorUid: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
218
231
  createTime: import("@sinclair/typebox").TString;
219
232
  externalData: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnknown>;
@@ -265,7 +278,7 @@ export declare const TAKList_Mission: import("@sinclair/typebox").TObject<{
265
278
  export declare const TAKList_MissionInvites: import("@sinclair/typebox").TObject<{
266
279
  version: import("@sinclair/typebox").TString;
267
280
  type: import("@sinclair/typebox").TString;
268
- data: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{}>>;
281
+ data: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
269
282
  messages: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
270
283
  nodeId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
271
284
  }>;
@@ -457,6 +470,12 @@ export default class MissionCommands extends Commands {
457
470
  * Check if you have access to a given mission
458
471
  */
459
472
  access(name: string, opts?: Static<typeof MissionOptions>): Promise<boolean>;
473
+ /**
474
+ * Update Mission
475
+ *
476
+ * {@link https://docs.tak.gov/api/takserver/redoc#tag/mission-api/operation/createMissionAllowDupe TAK Server Docs}.
477
+ */
478
+ update(name: string, body: Static<typeof MissionUpdateInput>, opts?: Static<typeof MissionOptions>): Promise<Static<typeof Mission>>;
460
479
  /**
461
480
  * Get mission by its Name
462
481
  *
@@ -32,7 +32,7 @@ export const Mission = Type.Object({
32
32
  path: Type.Optional(Type.String()),
33
33
  classification: Type.Optional(Type.String()),
34
34
  tool: Type.String(),
35
- keywords: Type.Array(Type.Unknown()),
35
+ keywords: Type.Array(Type.String()),
36
36
  creatorUid: Type.Optional(Type.String()),
37
37
  createTime: Type.String(),
38
38
  externalData: Type.Array(Type.Unknown()),
@@ -147,6 +147,7 @@ export const MissionListInput = Type.Object({
147
147
  export const MissionCreateInput = Type.Object({
148
148
  name: Type.String(),
149
149
  group: Type.Optional(Type.Union([Type.Array(Type.String()), Type.String()])),
150
+ keywords: Type.Optional(Type.Array(Type.String())),
150
151
  creatorUid: Type.String(),
151
152
  description: Type.Optional(Type.String({ default: '' })),
152
153
  chatRoom: Type.Optional(Type.String()),
@@ -162,10 +163,22 @@ export const MissionCreateInput = Type.Object({
162
163
  inviteOnly: Type.Optional(Type.Boolean({ default: false })),
163
164
  allowDupe: Type.Optional(Type.Boolean({ default: false })),
164
165
  });
165
- export const MissionInvite = Type.Object({});
166
+ export const MissionUpdateInput = Type.Object({
167
+ creatorUid: Type.Optional(Type.String()),
168
+ description: Type.Optional(Type.String()),
169
+ keywords: Type.Optional(Type.Array(Type.String())),
170
+ chatRoom: Type.Optional(Type.String()),
171
+ baseLayer: Type.Optional(Type.String()),
172
+ bbox: Type.Optional(Type.String()),
173
+ path: Type.Optional(Type.String()),
174
+ classification: Type.Optional(Type.String()),
175
+ tool: Type.Optional(Type.String()),
176
+ expiration: Type.Optional(Type.Integer()),
177
+ inviteOnly: Type.Optional(Type.Boolean()),
178
+ });
166
179
  export const GUIDMatch = new RegExp(/^[{]?[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[}]?$/);
167
180
  export const TAKList_Mission = TAKList(Mission);
168
- export const TAKList_MissionInvites = TAKList(MissionInvite);
181
+ export const TAKList_MissionInvites = TAKList(Type.String());
169
182
  export const TAKList_MissionChange = TAKList(MissionChange);
170
183
  export const TAKList_MissionSubscriber = TAKList(MissionSubscriber);
171
184
  export const TAKItem_MissionSubscriber = TAKItem(MissionSubscriber);
@@ -523,6 +536,46 @@ export default class MissionCommands extends Commands {
523
536
  return false;
524
537
  }
525
538
  }
539
+ /**
540
+ * Update Mission
541
+ *
542
+ * {@link https://docs.tak.gov/api/takserver/redoc#tag/mission-api/operation/createMissionAllowDupe TAK Server Docs}.
543
+ */
544
+ async update(name, body, opts) {
545
+ let mission = await this.get(name, {}, opts);
546
+ const url = new URL(`/Marti/api/missions/guid/${encodeURIComponent(mission.name)}`, this.api.url);
547
+ const bodyParams = {
548
+ creatorUid: body.creatorUid ?? mission.creatorUid,
549
+ description: body.description ?? mission.description,
550
+ chatRoom: body.chatRoom ?? mission.chatRoom,
551
+ baseLayer: body.baseLayer ?? mission.baseLayer,
552
+ bbox: body.bbox ?? mission.bbox,
553
+ path: body.path ?? mission.path,
554
+ classification: body.classification ?? mission.classification,
555
+ tool: body.tool ?? mission.tool,
556
+ expiration: body.expiration ?? mission.expiration,
557
+ inviteOnly: body.inviteOnly ?? mission.inviteOnly
558
+ };
559
+ let q;
560
+ for (q in bodyParams) {
561
+ if (body[q] !== undefined) {
562
+ url.searchParams.append(q, String(body[q]));
563
+ }
564
+ }
565
+ url.searchParams.append('allowDupe', 'false');
566
+ const missions = await this.api.fetch(url, {
567
+ method: 'POST'
568
+ });
569
+ if (!missions.data.length)
570
+ throw new Error('Create Mission didn\'t return a mission or an error');
571
+ mission = missions.data[0];
572
+ if (body.keywords && body.keywords.length) {
573
+ mission = await this.#putKeywords(mission.name, body.keywords, {
574
+ token: mission.token
575
+ });
576
+ }
577
+ return mission;
578
+ }
526
579
  /**
527
580
  * Get mission by its Name
528
581
  *
@@ -571,13 +624,33 @@ export default class MissionCommands extends Commands {
571
624
  body.group = body.group.join(',');
572
625
  let q;
573
626
  for (q in body) {
574
- if (body[q] !== undefined && q !== 'name') {
627
+ if (body[q] !== undefined && ['name', 'keywords'].includes(q)) {
575
628
  url.searchParams.append(q, String(body[q]));
576
629
  }
577
630
  }
578
631
  const missions = await this.api.fetch(url, {
579
632
  method: 'POST'
580
633
  });
634
+ if (!missions.data.length)
635
+ throw new Error('Create Mission didn\'t return a mission or an error');
636
+ let mission = missions.data[0];
637
+ if (body.keywords && body.keywords.length) {
638
+ mission = await this.#putKeywords(mission.name, body.keywords, {
639
+ token: mission.token
640
+ });
641
+ }
642
+ return mission;
643
+ }
644
+ /**
645
+ * Update Mission Keywords
646
+ */
647
+ async #putKeywords(name, keywords, opts) {
648
+ const url = new URL(`/Marti/api/missions/${this.#encodeName(name)}/keywords`, this.api.url);
649
+ const missions = await this.api.fetch(url, {
650
+ method: 'PUT',
651
+ headers: this.#headers(opts),
652
+ body: keywords
653
+ });
581
654
  if (!missions.data.length)
582
655
  throw new Error('Create Mission didn\'t return a mission or an error');
583
656
  const mission = missions.data[0];
@@ -1 +1 @@
1
- {"version":3,"file":"mission.js","sourceRoot":"","sources":["../../../lib/api/mission.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mission.js","sourceRoot":"","sources":["../../../lib/api/mission.ts"],"names":[],"mappings":"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"}
@@ -37,7 +37,7 @@ export const Mission = Type.Object({
37
37
  path: Type.Optional(Type.String()),
38
38
  classification: Type.Optional(Type.String()),
39
39
  tool: Type.String(),
40
- keywords: Type.Array(Type.Unknown()),
40
+ keywords: Type.Array(Type.String()),
41
41
  creatorUid: Type.Optional(Type.String()),
42
42
  createTime: Type.String(),
43
43
  externalData: Type.Array(Type.Unknown()),
@@ -168,6 +168,7 @@ export const MissionListInput = Type.Object({
168
168
  export const MissionCreateInput = Type.Object({
169
169
  name: Type.String(),
170
170
  group: Type.Optional(Type.Union([Type.Array(Type.String()), Type.String()])),
171
+ keywords: Type.Optional(Type.Array(Type.String())),
171
172
  creatorUid: Type.String(),
172
173
  description: Type.Optional(Type.String({ default: '' })),
173
174
  chatRoom: Type.Optional(Type.String()),
@@ -184,14 +185,24 @@ export const MissionCreateInput = Type.Object({
184
185
  allowDupe: Type.Optional(Type.Boolean({ default: false })),
185
186
  });
186
187
 
187
- export const MissionInvite = Type.Object({
188
-
188
+ export const MissionUpdateInput = Type.Object({
189
+ creatorUid: Type.Optional(Type.String()),
190
+ description: Type.Optional(Type.String()),
191
+ keywords: Type.Optional(Type.Array(Type.String())),
192
+ chatRoom: Type.Optional(Type.String()),
193
+ baseLayer: Type.Optional(Type.String()),
194
+ bbox: Type.Optional(Type.String()),
195
+ path: Type.Optional(Type.String()),
196
+ classification: Type.Optional(Type.String()),
197
+ tool: Type.Optional(Type.String()),
198
+ expiration: Type.Optional(Type.Integer()),
199
+ inviteOnly: Type.Optional(Type.Boolean()),
189
200
  });
190
201
 
191
202
  export const GUIDMatch = new RegExp(/^[{]?[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[}]?$/);
192
203
 
193
204
  export const TAKList_Mission = TAKList(Mission);
194
- export const TAKList_MissionInvites = TAKList(MissionInvite);
205
+ export const TAKList_MissionInvites = TAKList(Type.String());
195
206
  export const TAKList_MissionChange = TAKList(MissionChange);
196
207
  export const TAKList_MissionSubscriber = TAKList(MissionSubscriber);
197
208
  export const TAKItem_MissionSubscriber = TAKItem(MissionSubscriber);
@@ -661,6 +672,59 @@ export default class MissionCommands extends Commands {
661
672
  }
662
673
  }
663
674
 
675
+ /**
676
+ * Update Mission
677
+ *
678
+ * {@link https://docs.tak.gov/api/takserver/redoc#tag/mission-api/operation/createMissionAllowDupe TAK Server Docs}.
679
+ */
680
+ async update(
681
+ name: string,
682
+ body: Static<typeof MissionUpdateInput>,
683
+ opts?: Static<typeof MissionOptions>
684
+ ): Promise<Static<typeof Mission>> {
685
+ let mission = await this.get(name, {}, opts);
686
+
687
+ const url = new URL(`/Marti/api/missions/guid/${encodeURIComponent(mission.name)}`, this.api.url)
688
+
689
+ const bodyParams: Static<typeof MissionUpdateInput> = {
690
+ creatorUid: body.creatorUid ?? mission.creatorUid,
691
+ description: body.description ?? mission.description,
692
+ chatRoom: body.chatRoom ?? mission.chatRoom,
693
+ baseLayer: body.baseLayer ?? mission.baseLayer,
694
+ bbox: body.bbox ?? mission.bbox,
695
+ path: body.path ?? mission.path,
696
+ classification: body.classification ?? mission.classification,
697
+ tool: body.tool ?? mission.tool,
698
+ expiration: body.expiration ?? mission.expiration,
699
+ inviteOnly: body.inviteOnly ?? mission.inviteOnly
700
+ };
701
+
702
+ let q: keyof Static<typeof MissionUpdateInput>;
703
+ for (q in bodyParams) {
704
+ if (body[q] !== undefined) {
705
+ url.searchParams.append(q, String(body[q]));
706
+ }
707
+ }
708
+
709
+ url.searchParams.append('allowDupe', 'false');
710
+
711
+ const missions = await this.api.fetch(url, {
712
+ method: 'POST'
713
+ });
714
+
715
+ if (!missions.data.length) throw new Error('Create Mission didn\'t return a mission or an error');
716
+
717
+ mission = missions.data[0];
718
+
719
+ if (body.keywords && body.keywords.length) {
720
+ mission = await this.#putKeywords(mission.name, body.keywords, {
721
+ token: mission.token
722
+ });
723
+ }
724
+
725
+ return mission;
726
+ }
727
+
664
728
  /**
665
729
  * Get mission by its Name
666
730
  *
@@ -718,7 +782,7 @@ export default class MissionCommands extends Commands {
718
782
 
719
783
  let q: keyof Static<typeof MissionCreateInput>;
720
784
  for (q in body) {
721
- if (body[q] !== undefined && q !== 'name') {
785
+ if (body[q] !== undefined && ['name', 'keywords'].includes(q)) {
722
786
  url.searchParams.append(q, String(body[q]));
723
787
  }
724
788
  }
@@ -729,6 +793,35 @@ export default class MissionCommands extends Commands {
729
793
 
730
794
  if (!missions.data.length) throw new Error('Create Mission didn\'t return a mission or an error');
731
795
 
796
+ let mission = missions.data[0];
797
+
798
+ if (body.keywords && body.keywords.length) {
799
+ mission = await this.#putKeywords(mission.name, body.keywords, {
800
+ token: mission.token
801
+ });
802
+ }
803
+
804
+ return mission;
805
+ }
806
+
807
+ /**
808
+ * Update Mission Keywords
809
+ */
810
+ async #putKeywords(
811
+ name: string,
812
+ keywords: string[],
813
+ opts?: Static<typeof MissionOptions>
814
+ ): Promise<Static<typeof Mission>> {
815
+ const url = new URL(`/Marti/api/missions/${this.#encodeName(name)}/keywords`, this.api.url);
816
+
817
+ const missions = await this.api.fetch(url, {
818
+ method: 'PUT',
819
+ headers: this.#headers(opts),
820
+ body: keywords
821
+ });
822
+
823
+ if (!missions.data.length) throw new Error('Create Mission didn\'t return a mission or an error');
824
+
732
825
  const mission = missions.data[0];
733
826
 
734
827
  return mission;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tak-ps/node-tak",
3
3
  "type": "module",
4
- "version": "11.15.0",
4
+ "version": "11.17.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",