@itentialopensource/adapter-microsoft_graph 1.0.1 → 1.1.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 (46) hide show
  1. package/.eslintignore +0 -1
  2. package/.jshintrc +3 -0
  3. package/AUTH.md +20 -16
  4. package/CALLS.md +63 -28
  5. package/CHANGELOG.md +16 -0
  6. package/CONTRIBUTING.md +1 -160
  7. package/ENHANCE.md +2 -2
  8. package/README.md +31 -22
  9. package/SUMMARY.md +2 -2
  10. package/SYSTEMINFO.md +15 -5
  11. package/adapter.js +159 -330
  12. package/adapterBase.js +538 -873
  13. package/changelogs/changelog.md +6 -0
  14. package/metadata.json +52 -0
  15. package/package.json +22 -25
  16. package/pronghorn.json +475 -143
  17. package/propertiesSchema.json +444 -40
  18. package/refs?service=git-upload-pack +0 -0
  19. package/report/adapter-openapi.json +14709 -0
  20. package/report/adapter-openapi.yaml +9744 -0
  21. package/report/adapterInfo.json +8 -8
  22. package/report/updateReport1691507370664.json +120 -0
  23. package/report/updateReport1692202407231.json +120 -0
  24. package/report/updateReport1694460353234.json +120 -0
  25. package/report/updateReport1695667793473.json +120 -0
  26. package/sampleProperties.json +66 -3
  27. package/test/integration/adapterTestBasicGet.js +1 -1
  28. package/test/integration/adapterTestConnectivity.js +91 -42
  29. package/test/integration/adapterTestIntegration.js +130 -2
  30. package/test/unit/adapterBaseTestUnit.js +395 -292
  31. package/test/unit/adapterTestUnit.js +306 -109
  32. package/utils/adapterInfo.js +1 -1
  33. package/utils/addAuth.js +1 -1
  34. package/utils/artifactize.js +1 -1
  35. package/utils/checkMigrate.js +1 -1
  36. package/utils/entitiesToDB.js +1 -0
  37. package/utils/findPath.js +1 -1
  38. package/utils/methodDocumentor.js +57 -22
  39. package/utils/modify.js +13 -15
  40. package/utils/packModificationScript.js +1 -1
  41. package/utils/taskMover.js +309 -0
  42. package/utils/tbScript.js +3 -10
  43. package/utils/tbUtils.js +2 -3
  44. package/utils/testRunner.js +1 -1
  45. package/utils/troubleshootingAdapter.js +1 -3
  46. package/workflows/README.md +0 -3
package/pronghorn.json CHANGED
@@ -62,47 +62,22 @@
62
62
  "title": "action",
63
63
  "type": "string"
64
64
  }
65
- }
66
- ],
67
- "output": {
68
- "name": "result",
69
- "type": "object",
70
- "description": "A JSON Object containing status, code and the result",
71
- "schema": {
72
- "title": "result",
73
- "type": "object"
74
- }
75
- },
76
- "roles": [
77
- "admin"
78
- ],
79
- "route": {
80
- "verb": "POST",
81
- "path": "/iapUpdateAdapterConfiguration"
82
- },
83
- "task": true
84
- },
85
- {
86
- "name": "iapFindAdapterPath",
87
- "summary": "Provides the ability to see if a particular API path is supported by the adapter",
88
- "description": "Provides the ability to see if a particular API path is supported by the adapter",
89
- "input": [
65
+ },
90
66
  {
91
- "name": "apiPath",
92
- "type": "string",
93
- "info": "The API Path you want to check - make sure to not include base path and version",
94
- "description": "The API Path you want to check - make sure to not include base path and version",
67
+ "name" : "replace",
68
+ "type": "boolean",
69
+ "info": "True to replace entire mock data, false to merge/append",
70
+ "required": false,
95
71
  "schema": {
96
- "title": "apiPath",
97
- "type": "string"
98
- },
99
- "required": true
72
+ "title": "replace",
73
+ "type" : "boolean"
74
+ }
100
75
  }
101
76
  ],
102
77
  "output": {
103
78
  "name": "result",
104
79
  "type": "object",
105
- "description": "A JSON Object containing the result",
80
+ "description": "A JSON Object containing status, code and the result",
106
81
  "schema": {
107
82
  "title": "result",
108
83
  "type": "object"
@@ -113,7 +88,7 @@
113
88
  ],
114
89
  "route": {
115
90
  "verb": "POST",
116
- "path": "/iapFindAdapterPath"
91
+ "path": "/iapUpdateAdapterConfiguration"
117
92
  },
118
93
  "task": true
119
94
  },
@@ -202,6 +177,41 @@
202
177
  },
203
178
  "task": true
204
179
  },
180
+ {
181
+ "name": "iapFindAdapterPath",
182
+ "summary": "Provides the ability to see if a particular API path is supported by the adapter",
183
+ "description": "Provides the ability to see if a particular API path is supported by the adapter",
184
+ "input": [
185
+ {
186
+ "name": "apiPath",
187
+ "type": "string",
188
+ "info": "The API Path you want to check - make sure to not include base path and version",
189
+ "description": "The API Path you want to check - make sure to not include base path and version",
190
+ "schema": {
191
+ "title": "apiPath",
192
+ "type": "string"
193
+ },
194
+ "required": true
195
+ }
196
+ ],
197
+ "output": {
198
+ "name": "result",
199
+ "type": "object",
200
+ "description": "A JSON Object containing the result",
201
+ "schema": {
202
+ "title": "result",
203
+ "type": "object"
204
+ }
205
+ },
206
+ "roles": [
207
+ "admin"
208
+ ],
209
+ "route": {
210
+ "verb": "POST",
211
+ "path": "/iapFindAdapterPath"
212
+ },
213
+ "task": true
214
+ },
205
215
  {
206
216
  "name": "iapTroubleshootAdapter",
207
217
  "summary": "Runs troubleshoot script for adapter",
@@ -221,7 +231,11 @@
221
231
  "name": "persistFlag",
222
232
  "type": "boolean",
223
233
  "info": "Whether the input properties should be saved",
224
- "required": true
234
+ "required": true,
235
+ "schema": {
236
+ "title": "persistFlag",
237
+ "type": "boolean"
238
+ }
225
239
  }
226
240
  ],
227
241
  "output": {
@@ -250,7 +264,11 @@
250
264
  "output": {
251
265
  "name": "result",
252
266
  "type": "boolean",
253
- "description": "Whether healthcheck passed or failed"
267
+ "description": "Whether healthcheck passed or failed",
268
+ "schema": {
269
+ "title": "result",
270
+ "type": "boolean"
271
+ }
254
272
  },
255
273
  "roles": [
256
274
  "admin"
@@ -331,64 +349,85 @@
331
349
  "task": true
332
350
  },
333
351
  {
334
- "name": "genericAdapterRequest",
335
- "summary": "Makes the requested generic call",
336
- "description": "Makes the requested generic call",
352
+ "name": "iapDeactivateTasks",
353
+ "summary": "Deactivate the inputted tasks",
354
+ "description": "Deactivate the inputted tasks",
337
355
  "input": [
338
356
  {
339
- "name": "uriPath",
340
- "type": "string",
341
- "info": "the path of the api call - do not include the host, port, base path or version",
342
- "description": "the path of the api call",
343
- "schema": {
344
- "title": "uriPath",
345
- "type": "string"
346
- },
347
- "required": true
348
- },
349
- {
350
- "name": "restMethod",
351
- "type": "string",
352
- "info": "the rest method (GET, POST, PUT, PATCH, DELETE)",
353
- "description": "the rest method (GET, POST, PUT, PATCH, DELETE)",
354
- "schema": {
355
- "title": "restMethod",
356
- "type": "string"
357
- },
358
- "required": true
359
- },
360
- {
361
- "name": "queryData",
362
- "type": "object",
363
- "info": "the query parameters to be put on the url (optional)",
364
- "description": "the query parameters to be put on the url (optional)",
357
+ "name": "tasks",
358
+ "type": "array",
359
+ "description": "Tasks to deactivate",
365
360
  "schema": {
366
- "title": "queryData",
367
- "type": "object"
368
- },
369
- "required": false
370
- },
361
+ "title": "tasks",
362
+ "type": "array"
363
+ }
364
+ }
365
+ ],
366
+ "output": {
367
+ "name": "result",
368
+ "type": "object",
369
+ "description": "A JSON Object containing success status",
370
+ "schema": {
371
+ "title": "result",
372
+ "type": "object"
373
+ }
374
+ },
375
+ "roles": [
376
+ "admin"
377
+ ],
378
+ "route": {
379
+ "verb": "POST",
380
+ "path": "/iapDeactivateTasks"
381
+ },
382
+ "task": true
383
+ },
384
+ {
385
+ "name": "iapActivateTasks",
386
+ "summary": "Activate the inputted tasks",
387
+ "description": "activate the inputted tasks",
388
+ "input": [
371
389
  {
372
- "name": "requestBody",
373
- "type": "object",
374
- "info": "the payload to be sent with the request (optional)",
375
- "description": "the payload to be sent with the request (optional)",
390
+ "name": "tasks",
391
+ "type": "array",
392
+ "description": "Tasks to activate",
376
393
  "schema": {
377
- "title": "requestBody",
378
- "type": "object"
379
- },
380
- "required": false
381
- },
394
+ "title": "tasks",
395
+ "type": "array"
396
+ }
397
+ }
398
+ ],
399
+ "output": {
400
+ "name": "result",
401
+ "type": "object",
402
+ "description": "A JSON Object containing success status",
403
+ "schema": {
404
+ "title": "result",
405
+ "type": "object"
406
+ }
407
+ },
408
+ "roles": [
409
+ "admin"
410
+ ],
411
+ "route": {
412
+ "verb": "POST",
413
+ "path": "/iapActivateTasks"
414
+ },
415
+ "task": true
416
+ },
417
+ {
418
+ "name": "iapPopulateEntityCache",
419
+ "summary": "Populate the cache for the given entities",
420
+ "description": "Populate the cache for the given entities",
421
+ "input": [
382
422
  {
383
- "name": "addlHeaders",
384
- "type": "object",
385
- "info": "additional headers to be put on the call (optional)",
386
- "description": "additional headers to be put on the call (optional)",
423
+ "name": "entityTypes",
424
+ "type": "array",
425
+ "info": "the entity type(s) to populate",
426
+ "required": true,
387
427
  "schema": {
388
- "title": "addlHeaders",
389
- "type": "object"
390
- },
391
- "required": false
428
+ "title": "entityTypes",
429
+ "type": "array"
430
+ }
392
431
  }
393
432
  ],
394
433
  "output": {
@@ -405,69 +444,34 @@
405
444
  ],
406
445
  "route": {
407
446
  "verb": "POST",
408
- "path": "/genericAdapterRequest"
447
+ "path": "/iapPopulateEntityCache"
409
448
  },
410
449
  "task": true
411
450
  },
412
451
  {
413
- "name": "genericAdapterRequestNoBasePath",
414
- "summary": "Makes the requested generic call",
415
- "description": "Makes the requested generic call",
452
+ "name": "iapRetrieveEntitiesCache",
453
+ "summary": "Retrieves data from cache for specified entity type",
454
+ "description": "Retrieves data from cache for specified entity type",
416
455
  "input": [
417
456
  {
418
- "name": "uriPath",
419
- "type": "string",
420
- "info": "the path of the api call - do not include the host, port, base path or version",
421
- "description": "the path of the api call",
422
- "schema": {
423
- "title": "uriPath",
424
- "type": "string"
425
- },
426
- "required": true
427
- },
428
- {
429
- "name": "restMethod",
457
+ "name": "entityType",
430
458
  "type": "string",
431
- "info": "the rest method (GET, POST, PUT, PATCH, DELETE)",
432
- "description": "the rest method (GET, POST, PUT, PATCH, DELETE)",
459
+ "info": "entity of which to retrieve",
460
+ "required": true,
433
461
  "schema": {
434
- "title": "restMethod",
462
+ "title": "entityType",
435
463
  "type": "string"
436
- },
437
- "required": true
438
- },
439
- {
440
- "name": "queryData",
441
- "type": "object",
442
- "info": "the query parameters to be put on the url (optional)",
443
- "description": "the query parameters to be put on the url (optional)",
444
- "schema": {
445
- "title": "queryData",
446
- "type": "object"
447
- },
448
- "required": false
449
- },
450
- {
451
- "name": "requestBody",
452
- "type": "object",
453
- "info": "the payload to be sent with the request (optional)",
454
- "description": "the payload to be sent with the request (optional)",
455
- "schema": {
456
- "title": "requestBody",
457
- "type": "object"
458
- },
459
- "required": false
464
+ }
460
465
  },
461
466
  {
462
- "name": "addlHeaders",
467
+ "name": "options",
463
468
  "type": "object",
464
- "info": "additional headers to be put on the call (optional)",
465
- "description": "additional headers to be put on the call (optional)",
469
+ "info": "settings of which data to return and how to return it",
470
+ "required": false,
466
471
  "schema": {
467
- "title": "addlHeaders",
472
+ "title": "options",
468
473
  "type": "object"
469
- },
470
- "required": false
474
+ }
471
475
  }
472
476
  ],
473
477
  "output": {
@@ -484,7 +488,7 @@
484
488
  ],
485
489
  "route": {
486
490
  "verb": "POST",
487
- "path": "/genericAdapterRequestNoBasePath"
491
+ "path": "/iapRetrieveEntitiesCache"
488
492
  },
489
493
  "task": true
490
494
  },
@@ -520,7 +524,7 @@
520
524
  "verb": "POST",
521
525
  "path": "/getDevice"
522
526
  },
523
- "task": true
527
+ "task": false
524
528
  },
525
529
  {
526
530
  "name": "getDevicesFiltered",
@@ -554,7 +558,7 @@
554
558
  "verb": "POST",
555
559
  "path": "/getDevicesFiltered"
556
560
  },
557
- "task": true
561
+ "task": false
558
562
  },
559
563
  {
560
564
  "name": "isAlive",
@@ -588,7 +592,7 @@
588
592
  "verb": "POST",
589
593
  "path": "/isAlive"
590
594
  },
591
- "task": true
595
+ "task": false
592
596
  },
593
597
  {
594
598
  "name": "getConfig",
@@ -632,7 +636,7 @@
632
636
  "verb": "POST",
633
637
  "path": "/getConfig"
634
638
  },
635
- "task": true
639
+ "task": false
636
640
  },
637
641
  {
638
642
  "name": "iapGetDeviceCount",
@@ -655,8 +659,336 @@
655
659
  "verb": "POST",
656
660
  "path": "/iapGetDeviceCount"
657
661
  },
658
- "task": true
662
+ "task": false
659
663
  },
664
+ {
665
+ "name": "iapExpandedGenericAdapterRequest",
666
+ "summary": "Makes the requested generic call with additional options",
667
+ "description": "Makes the requested generic call with additional options via metadata",
668
+ "input": [
669
+ {
670
+ "name": "metadata",
671
+ "type": "object",
672
+ "info": "metadata for the call (optional)",
673
+ "description": "metadata for the call - allows for many enhancements (optional)",
674
+ "schema": {
675
+ "title": "metadata",
676
+ "type": "object"
677
+ },
678
+ "required": false
679
+ },
680
+ {
681
+ "name": "uriPath",
682
+ "type": "string",
683
+ "info": "the path of the api call - do not include the host, port, base path or version",
684
+ "description": "the path of the api call",
685
+ "schema": {
686
+ "title": "uriPath",
687
+ "type": "string"
688
+ },
689
+ "required": false
690
+ },
691
+ {
692
+ "name": "restMethod",
693
+ "type": "string",
694
+ "info": "the rest method (GET, POST, PUT, PATCH, DELETE)",
695
+ "description": "the rest method (GET, POST, PUT, PATCH, DELETE)",
696
+ "schema": {
697
+ "title": "restMethod",
698
+ "type": "string"
699
+ },
700
+ "required": false
701
+ },
702
+ {
703
+ "name": "pathVars",
704
+ "type": "object",
705
+ "info": "the parameters to be put within the url path (optional)",
706
+ "description": "the parameters to be put within the url path (optional)",
707
+ "schema": {
708
+ "title": "pathVars",
709
+ "type": "object"
710
+ },
711
+ "required": false
712
+ },
713
+ {
714
+ "name": "queryData",
715
+ "type": "object",
716
+ "info": "the query parameters to be put on the url (optional)",
717
+ "description": "the query parameters to be put on the url (optional)",
718
+ "schema": {
719
+ "title": "queryData",
720
+ "type": "object"
721
+ },
722
+ "required": false
723
+ },
724
+ {
725
+ "name": "requestBody",
726
+ "type": "object",
727
+ "info": "the payload to be sent with the request (optional)",
728
+ "description": "the payload to be sent with the request (optional)",
729
+ "schema": {
730
+ "title": "requestBody",
731
+ "type": "object"
732
+ },
733
+ "required": false
734
+ },
735
+ {
736
+ "name": "addlHeaders",
737
+ "type": "object",
738
+ "info": "additional headers to be put on the call (optional)",
739
+ "description": "additional headers to be put on the call (optional)",
740
+ "schema": {
741
+ "title": "addlHeaders",
742
+ "type": "object"
743
+ },
744
+ "required": false
745
+ }
746
+ ],
747
+ "output": {
748
+ "name": "result",
749
+ "type": "object",
750
+ "description": "A JSON Object containing status, code and the result",
751
+ "schema": {
752
+ "title": "result",
753
+ "type": "object"
754
+ }
755
+ },
756
+ "roles": [
757
+ "admin"
758
+ ],
759
+ "route": {
760
+ "verb": "POST",
761
+ "path": "/iapExpandedGenericAdapterRequest"
762
+ },
763
+ "task": true
764
+ },
765
+ {
766
+ "name": "genericAdapterRequest",
767
+ "summary": "Makes the requested generic call",
768
+ "description": "Makes the requested generic call",
769
+ "input": [
770
+ {
771
+ "name": "uriPath",
772
+ "type": "string",
773
+ "info": "the path of the api call - do not include the host, port, base path or version",
774
+ "description": "the path of the api call",
775
+ "schema": {
776
+ "title": "uriPath",
777
+ "type": "string"
778
+ },
779
+ "required": true
780
+ },
781
+ {
782
+ "name": "restMethod",
783
+ "type": "string",
784
+ "info": "the rest method (GET, POST, PUT, PATCH, DELETE)",
785
+ "description": "the rest method (GET, POST, PUT, PATCH, DELETE)",
786
+ "schema": {
787
+ "title": "restMethod",
788
+ "type": "string"
789
+ },
790
+ "required": true
791
+ },
792
+ {
793
+ "name": "queryData",
794
+ "type": "object",
795
+ "info": "the query parameters to be put on the url (optional)",
796
+ "description": "the query parameters to be put on the url (optional)",
797
+ "schema": {
798
+ "title": "queryData",
799
+ "type": "object"
800
+ },
801
+ "required": false
802
+ },
803
+ {
804
+ "name": "requestBody",
805
+ "type": "object",
806
+ "info": "the payload to be sent with the request (optional)",
807
+ "description": "the payload to be sent with the request (optional)",
808
+ "schema": {
809
+ "title": "requestBody",
810
+ "type": "object"
811
+ },
812
+ "required": false
813
+ },
814
+ {
815
+ "name": "addlHeaders",
816
+ "type": "object",
817
+ "info": "additional headers to be put on the call (optional)",
818
+ "description": "additional headers to be put on the call (optional)",
819
+ "schema": {
820
+ "title": "addlHeaders",
821
+ "type": "object"
822
+ },
823
+ "required": false
824
+ }
825
+ ],
826
+ "output": {
827
+ "name": "result",
828
+ "type": "object",
829
+ "description": "A JSON Object containing status, code and the result",
830
+ "schema": {
831
+ "title": "result",
832
+ "type": "object"
833
+ }
834
+ },
835
+ "roles": [
836
+ "admin"
837
+ ],
838
+ "route": {
839
+ "verb": "POST",
840
+ "path": "/genericAdapterRequest"
841
+ },
842
+ "task": true
843
+ },
844
+ {
845
+ "name": "genericAdapterRequestNoBasePath",
846
+ "summary": "Makes the requested generic call",
847
+ "description": "Makes the requested generic call",
848
+ "input": [
849
+ {
850
+ "name": "uriPath",
851
+ "type": "string",
852
+ "info": "the path of the api call - do not include the host, port, base path or version",
853
+ "description": "the path of the api call",
854
+ "schema": {
855
+ "title": "uriPath",
856
+ "type": "string"
857
+ },
858
+ "required": true
859
+ },
860
+ {
861
+ "name": "restMethod",
862
+ "type": "string",
863
+ "info": "the rest method (GET, POST, PUT, PATCH, DELETE)",
864
+ "description": "the rest method (GET, POST, PUT, PATCH, DELETE)",
865
+ "schema": {
866
+ "title": "restMethod",
867
+ "type": "string"
868
+ },
869
+ "required": true
870
+ },
871
+ {
872
+ "name": "queryData",
873
+ "type": "object",
874
+ "info": "the query parameters to be put on the url (optional)",
875
+ "description": "the query parameters to be put on the url (optional)",
876
+ "schema": {
877
+ "title": "queryData",
878
+ "type": "object"
879
+ },
880
+ "required": false
881
+ },
882
+ {
883
+ "name": "requestBody",
884
+ "type": "object",
885
+ "info": "the payload to be sent with the request (optional)",
886
+ "description": "the payload to be sent with the request (optional)",
887
+ "schema": {
888
+ "title": "requestBody",
889
+ "type": "object"
890
+ },
891
+ "required": false
892
+ },
893
+ {
894
+ "name": "addlHeaders",
895
+ "type": "object",
896
+ "info": "additional headers to be put on the call (optional)",
897
+ "description": "additional headers to be put on the call (optional)",
898
+ "schema": {
899
+ "title": "addlHeaders",
900
+ "type": "object"
901
+ },
902
+ "required": false
903
+ }
904
+ ],
905
+ "output": {
906
+ "name": "result",
907
+ "type": "object",
908
+ "description": "A JSON Object containing status, code and the result",
909
+ "schema": {
910
+ "title": "result",
911
+ "type": "object"
912
+ }
913
+ },
914
+ "roles": [
915
+ "admin"
916
+ ],
917
+ "route": {
918
+ "verb": "POST",
919
+ "path": "/genericAdapterRequestNoBasePath"
920
+ },
921
+ "task": true
922
+ },
923
+ {
924
+ "name": "iapRunAdapterLint",
925
+ "summary": "Run the adapter lint script to return the results",
926
+ "description": "Run the adapter lint script to return the results",
927
+ "input": [],
928
+ "output": {
929
+ "name": "result",
930
+ "type": "string",
931
+ "description": "A string containing the run results",
932
+ "schema": {
933
+ "title": "result",
934
+ "type": "string"
935
+ }
936
+ },
937
+ "roles": [
938
+ "admin"
939
+ ],
940
+ "route": {
941
+ "verb": "GET",
942
+ "path": "/iapRunAdapterLint"
943
+ },
944
+ "task": true
945
+ },
946
+ {
947
+ "name": "iapRunAdapterTests",
948
+ "summary": "Run the adapter test scripts (baseunit and unit) to return the results",
949
+ "description": "Run the adapter test scripts (baseunit and unit) to return the results",
950
+ "input": [],
951
+ "output": {
952
+ "name": "result",
953
+ "type": "object",
954
+ "description": "A JSON Object containing status, code and the result",
955
+ "schema": {
956
+ "title": "result",
957
+ "type": "object"
958
+ }
959
+ },
960
+ "roles": [
961
+ "admin"
962
+ ],
963
+ "route": {
964
+ "verb": "GET",
965
+ "path": "/iapRunAdapterTests"
966
+ },
967
+ "task": true
968
+ },
969
+ {
970
+ "name": "iapGetAdapterInventory",
971
+ "summary": "Provide inventory information abbout the adapter",
972
+ "description": "Provide inventory information abbout the adapter",
973
+ "input": [],
974
+ "output": {
975
+ "name": "result",
976
+ "type": "object",
977
+ "description": "A JSON Object containing status, code and the result",
978
+ "schema": {
979
+ "title": "result",
980
+ "type": "object"
981
+ }
982
+ },
983
+ "roles": [
984
+ "admin"
985
+ ],
986
+ "route": {
987
+ "verb": "GET",
988
+ "path": "/iapGetAdapterInventory"
989
+ },
990
+ "task": true
991
+ },
660
992
  {
661
993
  "name": "getapplications",
662
994
  "summary": "Get applications",